@@ -31,7 +31,7 @@ module VX_afu_wrap #(
31
31
`ifdef PLATFORM_MERGED_MEMORY_INTERFACE
32
32
`REPEAT (1 , GEN_AXI_MEM , REPEAT_COMMA ),
33
33
`else
34
- `REPEAT (`PLATFORM_MEMORY_BANKS , GEN_AXI_MEM , REPEAT_COMMA ),
34
+ `REPEAT (`PLATFORM_MEMORY_NUM_BANKS , GEN_AXI_MEM , REPEAT_COMMA ),
35
35
`endif
36
36
// AXI4-Lite slave interface
37
37
input wire s_axi_ctrl_awvalid,
@@ -58,11 +58,7 @@ module VX_afu_wrap #(
58
58
59
59
output wire interrupt
60
60
);
61
- `ifdef PLATFORM_MERGED_MEMORY_INTERFACE
62
- localparam M_AXI_MEM_ADDR_WIDTH = `PLATFORM_MEMORY_ADDR_WIDTH + $clog2 (`PLATFORM_MEMORY_BANKS );
63
- `else
64
- localparam M_AXI_MEM_ADDR_WIDTH = `PLATFORM_MEMORY_ADDR_WIDTH ;
65
- `endif
61
+ localparam M_AXI_MEM_ADDR_WIDTH = `PLATFORM_MEMORY_ADDR_WIDTH - $clog2 (C_M_AXI_MEM_NUM_BANKS );
66
62
67
63
typedef enum logic [1 : 0 ] {
68
64
STATE_IDLE = 0 ,
@@ -71,8 +67,8 @@ module VX_afu_wrap #(
71
67
STATE_DONE = 3
72
68
} state_e ;
73
69
74
- localparam PENDING_SIZEW = 12 ; // max outstanding requests size
75
- localparam C_M_AXI_MEM_NUM_BANKS_SW = `CLOG2 (C_M_AXI_MEM_NUM_BANKS + 1 );
70
+ localparam PENDING_WR_SIZEW = 12 ; // max outstanding requests size
71
+ localparam NUM_MEM_BANKS_SIZEW = `CLOG2 (C_M_AXI_MEM_NUM_BANKS + 1 );
76
72
77
73
wire m_axi_mem_awvalid_a [C_M_AXI_MEM_NUM_BANKS ];
78
74
wire m_axi_mem_awready_a [C_M_AXI_MEM_NUM_BANKS ];
@@ -108,11 +104,11 @@ module VX_afu_wrap #(
108
104
`ifdef PLATFORM_MERGED_MEMORY_INTERFACE
109
105
`REPEAT (1 , AXI_MEM_TO_ARRAY , REPEAT_SEMICOLON );
110
106
`else
111
- `REPEAT (`PLATFORM_MEMORY_BANKS , AXI_MEM_TO_ARRAY , REPEAT_SEMICOLON );
107
+ `REPEAT (`PLATFORM_MEMORY_NUM_BANKS , AXI_MEM_TO_ARRAY , REPEAT_SEMICOLON );
112
108
`endif
113
109
114
110
reg [`CLOG2 (`RESET_DELAY + 1 )- 1 : 0 ] vx_reset_ctr;
115
- reg [PENDING_SIZEW - 1 : 0 ] vx_pending_writes;
111
+ reg [PENDING_WR_SIZEW - 1 : 0 ] vx_pending_writes;
116
112
reg vx_reset = 1 ; // asserted at initialization
117
113
wire vx_busy;
118
114
@@ -200,7 +196,7 @@ module VX_afu_wrap #(
200
196
end
201
197
202
198
wire [C_M_AXI_MEM_NUM_BANKS - 1 : 0 ] m_axi_wr_req_fire, m_axi_wr_rsp_fire;
203
- wire [C_M_AXI_MEM_NUM_BANKS_SW - 1 : 0 ] cur_wr_reqs, cur_wr_rsps;
199
+ wire [NUM_MEM_BANKS_SIZEW - 1 : 0 ] cur_wr_reqs, cur_wr_rsps;
204
200
205
201
for (genvar i = 0 ; i < C_M_AXI_MEM_NUM_BANKS ; ++ i) begin : g_m_axi_wr_req_fire
206
202
VX_axi_write_ack axi_write_ack (
@@ -224,14 +220,14 @@ module VX_afu_wrap #(
224
220
`POP_COUNT (cur_wr_reqs, m_axi_wr_req_fire);
225
221
`POP_COUNT (cur_wr_rsps, m_axi_wr_rsp_fire);
226
222
227
- wire signed [C_M_AXI_MEM_NUM_BANKS_SW : 0 ] reqs_sub = (C_M_AXI_MEM_NUM_BANKS_SW + 1 )'(cur_wr_reqs) -
228
- (C_M_AXI_MEM_NUM_BANKS_SW + 1 )'(cur_wr_rsps);
223
+ wire signed [NUM_MEM_BANKS_SIZEW : 0 ] reqs_sub = (NUM_MEM_BANKS_SIZEW + 1 )'(cur_wr_reqs) -
224
+ (NUM_MEM_BANKS_SIZEW + 1 )'(cur_wr_rsps);
229
225
230
226
always @ (posedge clk) begin
231
227
if (reset) begin
232
228
vx_pending_writes <= '0 ;
233
229
end else begin
234
- vx_pending_writes <= vx_pending_writes + PENDING_SIZEW ' (reqs_sub);
230
+ vx_pending_writes <= vx_pending_writes + PENDING_WR_SIZEW ' (reqs_sub);
235
231
end
236
232
end
237
233
@@ -270,7 +266,7 @@ module VX_afu_wrap #(
270
266
.ap_ready (ap_ready),
271
267
.ap_idle (ap_idle),
272
268
.interrupt (interrupt),
273
-
269
+
274
270
.ap_ctrl_read (ap_ctrl_read),
275
271
276
272
`ifdef SCOPE
0 commit comments