File tree Expand file tree Collapse file tree 1 file changed +5
-4
lines changed Expand file tree Collapse file tree 1 file changed +5
-4
lines changed Original file line number Diff line number Diff line change @@ -87,15 +87,16 @@ module idma_${identifier} #(
87
87
.devmode_i ( 1'b1 )
88
88
);
89
89
90
+ logic read_happens;
90
91
// DMA backpressure
91
92
always_comb begin : proc_dma_backpressure
92
93
// ready signal
93
94
dma_ctrl_rsp_o[i] = dma_ctrl_rsp[i];
94
- dma_ctrl_rsp_o[i].ready = arb_ready[i];
95
+ dma_ctrl_rsp_o[i].ready = read_happens ? arb_ready[i] : dma_ctrl_rsp [i];
95
96
end
96
97
97
98
// valid signals
98
- logic read_happens;
99
+
99
100
always_comb begin : proc_launch
100
101
read_happens = 1'b0;
101
102
for (int c = 0; c < NumStreams; c++) begin
@@ -159,13 +160,13 @@ module idma_${identifier} #(
159
160
// Disable higher dimensions
160
161
if ( dma_reg2hw[i].conf.enable_nd.q == 0) begin
161
162
% for nd in range(0, num_dim-1):
162
- arb_dma_req[i].d_req[${ nd} ].reps = '0 ;
163
+ arb_dma_req[i].d_req[${ nd} ].reps = $ { " '0 " if nd != num_dim-2 else " 'd1 " } ;
163
164
% endfor
164
165
end
165
166
% for nd in range(1, num_dim-1):
166
167
else if ( dma_reg2hw[i].conf.enable_nd.q == ${ nd} ) begin
167
168
% for snd in range(nd, num_dim-1):
168
- arb_dma_req[i].d_req[${ snd} ].reps = '0 ;
169
+ arb_dma_req[i].d_req[${ snd} ].reps = 'd1 ;
169
170
% endfor
170
171
end
171
172
% endfor
You can’t perform that action at this time.
0 commit comments