Quantcast
Channel: UVM Forums RSS Feed
Viewing all articles
Browse latest Browse all 756

Abruptly killing a sequence results in UVM_ERROR

$
0
0

In the body of a virtual sequence I have a sequence running inside fork join, which is then killed by disabling the thread, like so:

 

virtual task body();

....    

    fork:seq_thread

        `uvm_do_on(my_seq, my_seqr)

    join

    @(negedge reset_b );

    disable seq_thread;

...

...

endtask;

 

 

On doing this, we get the following error from the sequencer:

 

[SEQREQZMB] The task responsible for requesting a wait_for_grant on sequencer 'uvm_test_top.env.my_seqr' for sequence 'uvm_test_top.env.soc_v_sequencer.my_vseq.my_seq' has been killed, to avoid a deadlock the sequence will be removed from the arbitration queues.

 

What can I do in my virtual sequence to cleanly kill 'my_seq' when reset_b is asserted ? 

 


Viewing all articles
Browse latest Browse all 756

Trending Articles