Skip to content

Commit 0121506

Browse files
author
Andrea Belano
committed
[w_buffer] Add missing parameter
1 parent 9bbd99c commit 0121506

File tree

2 files changed

+9
-8
lines changed

2 files changed

+9
-8
lines changed

rtl/redmule_top.sv

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -346,6 +346,7 @@ redmule_w_buffer #(
346346
.DataW ( DataW ),
347347
.FpFormat ( FpFormat ),
348348
.Height ( Height ),
349+
.NumRegs ( NumPipeRegs ),
349350
.UseLatches ( LatchBuffers )
350351
) i_w_buffer (
351352
.clk_i ( clk_acc ),

rtl/w_buffer/redmule_w_buffer.sv

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ module redmule_w_buffer
1313
parameter int unsigned DataW = MaxDataW ,
1414
parameter fp_format_e FpFormat = FP16 ,
1515
parameter int unsigned Height = MaxDim , // Number of PEs per row
16-
parameter int unsigned N_REGS = MaxPipeRegs-1 , // Number of registers per PE
16+
parameter int unsigned NumRegs = MaxPipeRegs-1 , // Number of registers per PE
1717
parameter bit UseLatches = 0 ,
1818
localparam int unsigned BITW = fp_width(FpFormat), // Number of bits for the given format
1919
localparam int unsigned H = Height ,
@@ -28,9 +28,9 @@ module redmule_w_buffer
2828
input logic [DataW-1:0] w_buffer_i
2929
);
3030

31-
localparam int unsigned C = (D+N_REGS)/(N_REGS+1);
32-
localparam int unsigned EL_ADDR_W = $clog2(N_REGS+1);
33-
localparam int unsigned EL_DATA_W = (N_REGS+1)*BITW;
31+
localparam int unsigned C = (D+NumRegs)/(NumRegs+1);
32+
localparam int unsigned EL_ADDR_W = $clog2(NumRegs+1);
33+
localparam int unsigned EL_DATA_W = (NumRegs+1)*BITW;
3434

3535
logic [$clog2(H):0] w_row;
3636

@@ -51,7 +51,7 @@ logic gidx_present;
5151
logic buf_write_en;
5252
logic [$clog2(H)-1:0] buf_write_addr;
5353

54-
logic [H-1:0][$clog2(N_REGS+1)+$clog2(C)+$clog2(H)-1:0] buf_read_addr;
54+
logic [H-1:0][$clog2(NumRegs+1)+$clog2(C)+$clog2(H)-1:0] buf_read_addr;
5555

5656
for (genvar d = 0; d < D; d++) begin : gen_zero_padding
5757
assign w_data[d] = (d < ctrl_i.width && w_row < ctrl_i.height) ? w_buffer_i[(d+1)*BITW-1:d*BITW] : '0;
@@ -64,7 +64,7 @@ redmule_w_buffer_scm #(
6464
.WORD_SIZE ( BITW ),
6565
.ROWS ( H ),
6666
.COLS ( C ),
67-
.ELMS ( N_REGS+1 ),
67+
.ELMS ( NumRegs+1 ),
6868
.USE_LATCHES ( UseLatches )
6969
) i_w_buf (
7070
.clk_i ( clk_i ),
@@ -122,8 +122,8 @@ always_ff @(posedge clk_i or negedge rst_ni) begin : section_counter
122122
end
123123
end
124124

125-
assign el_addr_d = (el_addr_q == N_REGS) ? '0 : el_addr_q + 1;
126-
assign col_addr_d = (el_addr_q == N_REGS) ? (col_addr_q == (C-1) ? '0 : col_addr_q + 1) : col_addr_q;
125+
assign el_addr_d = (el_addr_q == NumRegs) ? '0 : el_addr_q + 1;
126+
assign col_addr_d = (el_addr_q == NumRegs) ? (col_addr_q == (C-1) ? '0 : col_addr_q + 1) : col_addr_q;
127127

128128
// Counter to track the number of shifts per row
129129
always_ff @(posedge clk_i or negedge rst_ni) begin : row_load_counter

0 commit comments

Comments
 (0)