From c982263e99a4d213f3f0ad03f5d6e5309c1e0dc6 Mon Sep 17 00:00:00 2001 From: Luca Rufer Date: Tue, 30 Jun 2026 11:37:50 +0200 Subject: [PATCH] [Testing] Fix random waiting in obi_test --- src/test/obi_test.sv | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/test/obi_test.sv b/src/test/obi_test.sv index 90a49ef..6c330ef 100644 --- a/src/test/obi_test.sv +++ b/src/test/obi_test.sv @@ -250,7 +250,10 @@ package obi_test; repeat (n_rsps) begin wait (a_queue.size() > 0); a_addr = this.a_queue.pop_front(); - rand_wait(RMinWaitCycles, RMaxWaitCycles); + + if (ObiCfg.UseRReady) begin + rand_wait(RMinWaitCycles, RMaxWaitCycles); + end drv.recv_r(r_rdata, r_rid, r_err, r_optional); end endtask @@ -361,6 +364,7 @@ package obi_test; automatic logic [ ObiCfg.IdWidth-1:0] a_aid; automatic obi_a_optional_t a_optional; + rand_wait(AMinWaitCycles, AMaxWaitCycles); this.drv.recv_a(a_addr, a_we, a_be, a_wdata, a_aid, a_optional); this.a_queue.push_back(a_addr); this.id_queue.push_back(a_aid); @@ -382,6 +386,7 @@ package obi_test; r_rid = this.id_queue.pop_front(); rand_success = std::randomize(r_rdata); assert(rand_success); rand_success = std::randomize(r_optional); assert(rand_success); + rand_wait(RMinWaitCycles, RMaxWaitCycles); this.drv.send_r(r_rdata, r_rid, r_optional); end endtask