Skip to content

Commit

Permalink
Bug fixes in the AXI agent
Browse files Browse the repository at this point in the history
Signed-off-by: Alae Eddine Ez zejjari <[email protected]>
  • Loading branch information
AEzzejjari committed Mar 3, 2023
1 parent bbedad1 commit 3df5d52
Show file tree
Hide file tree
Showing 3 changed files with 21 additions and 7 deletions.
8 changes: 6 additions & 2 deletions lib/uvm_agents/uvma_axi/src/seq/uvma_axi_b_seq.sv
Original file line number Diff line number Diff line change
Expand Up @@ -148,13 +148,17 @@ task uvma_axi_b_seq_c::body();
if(b_preresp_item.b_ready) begin

foreach(req_requette[i,j]) begin
req_requette[selected_id][j] = req_requette[selected_id][j+1];
if(j < req_requette[selected_id].size()-1) begin
req_requette[selected_id][j] = req_requette[selected_id][j+1];
end
end
req_requette[selected_id] = new[aw_id_tr[selected_id] - 1] (req_requette[selected_id]);
aw_id_tr[selected_id]--;

foreach(status[i]) begin
status[i] = status[i+1];
if(i < status.size()-1) begin
status[i] = status[i+1];
end
end
status = new[status.size() - 1] (status);

Expand Down
8 changes: 6 additions & 2 deletions lib/uvm_agents/uvma_axi/src/seq/uvma_axi_r_seq.sv
Original file line number Diff line number Diff line change
Expand Up @@ -115,15 +115,19 @@ task uvma_axi_r_seq_c::body();
if(resp_item.r_last == 1'b1) begin

foreach(req_requette[i,j]) begin
req_requette[selected_id][j] = req_requette[selected_id][j+1];
if(j < req_requette[selected_id].size()-1) begin
req_requette[selected_id][j] = req_requette[selected_id][j+1];
end
end
req_requette[selected_id] = new[ar_id_tr[selected_id] - 1] (req_requette[selected_id]);

ar_id_tr[selected_id]--;

selected_indice = select_first_id(status, selected_id);
foreach(status[j]) begin
status[selected_indice + j] = status[selected_indice + j + 1];
if(selected_indice + j < status.size()-1) begin
status[selected_indice + j] = status[selected_indice + j + 1];
end
end
status = new[status.size() - 1] (status);

Expand Down
12 changes: 9 additions & 3 deletions lib/uvm_agents/uvma_axi/src/seq/uvma_axi_w_seq.sv
Original file line number Diff line number Diff line change
Expand Up @@ -138,20 +138,26 @@ task uvma_axi_w_seq_c::body();

if(write_data_req[0].w_last) begin
foreach(req_requette[i]) begin
req_requette[i] = req_requette[(i + aw_latency[0]) +1];
if(i < req_requette.size() - aw_latency[0] - 1) begin
req_requette[i] = req_requette[(i + aw_latency[0]) +1];
end
end
req_requette = new[req_requette.size() - (1 + aw_latency[0])] (req_requette);

foreach(aw_latency[i]) begin
aw_latency[i] = aw_latency[i + 1];
if(i < aw_latency.size() - 1) begin
aw_latency[i] = aw_latency[i + 1];
end
end
aw_latency = new[aw_latency.size() - 1] (aw_latency);

status =0;
end

foreach(write_data_req[i]) begin
write_data_req[i] = write_data_req[i+1];
if(i < write_data_req.size() - 1) begin
write_data_req[i] = write_data_req[i+1];
end
end
write_data_req = new[write_data_req.size() - 1] (write_data_req);
if(write_data_req.size() == 0) begin
Expand Down

0 comments on commit 3df5d52

Please sign in to comment.