pipeline refactoring - fmax >= 222 mhz
This commit is contained in:
@@ -24,11 +24,9 @@ module VX_matrix_arbiter #(
|
||||
|
||||
reg [N-1:1] state [0:N-1];
|
||||
wire [N-1:0] pri [0:N-1];
|
||||
|
||||
genvar i, j;
|
||||
|
||||
for (i = 0; i < N; i++) begin
|
||||
for (j = 0; j < N; j++) begin
|
||||
|
||||
for (genvar i = 0; i < N; i++) begin
|
||||
for (genvar j = 0; j < N; j++) begin
|
||||
if (j > i) begin
|
||||
assign pri[j][i] = requests[i] && state[i][j];
|
||||
end
|
||||
@@ -43,13 +41,12 @@ module VX_matrix_arbiter #(
|
||||
assign grant_onehot[i] = requests[i] && !(| pri[i]);
|
||||
end
|
||||
|
||||
for (i = 0; i < N; i++) begin
|
||||
for (j = i + 1; j < N; j++) begin
|
||||
for (genvar i = 0; i < N; i++) begin
|
||||
for (genvar j = i + 1; j < N; j++) begin
|
||||
always @(posedge clk) begin
|
||||
if (reset) begin
|
||||
state[i][j] <= 0;
|
||||
end
|
||||
else begin
|
||||
end else begin
|
||||
state[i][j] <= (state[i][j] || grant_onehot[j]) && !grant_onehot[i];
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user