In reply to chr_sue:
Hi ,
I was trying to write the code for the scenario of simultaneous write and read . As per your suggestion I instantiated the same agent and added an extra uvm_sequence. So I have two uvm_sequence , one is driving on one agent which is having sequential write and read operations[writing 10 data and then reading them back] , second is driving on second agent which contains simultaneous write and read operations.
repeat(10) begin
fork
uvm_do_with(req, {kind == amd_apb_transaction::write;});
uvm_do_with(req, {kind == amd_apb_transaction::read;});
join
end
In this manner what I am seeing in the waveform that it’s not doing write and read simultaneously. It’s writing first and then reading. Is my understanding correct here ? What can possibly go wrong here ?