UVM sequence

Hi,

Please tell in which UVM phase, the body() function of the sequence exectues.
Does it executes in the run phase?

Thanks
Shankar

In reply to shankar_logic:

It does not make sense to ask which phase a sequence executes in. A sequence executes when its body() method gets called - t’s not tied to any phase. Calling the start() method essentially puts a sequence object in a sequencer queue, and the sequencer uses a variety of arbitration schemes to select a sequence and call its body() method.

In reply to dave_59:

Hi Dave,
I would like to ask a scenario where I am struck which is related to the subject of this question.

After starting the sequence , it doesn’t come out of it. Specifically saying, it is a ral_sequence to write. From the waveform, I can confirm that the transaction is successful, and i expect the sequence to come out of it. On further debugging inside uvm bases classes, i found that it is hanging inside uvm_sequence_base.svh (sequencer.wait_for_item_done) and inside uvm_sequencer_base::wait_for_item_done in statement wait( m_wait_for_item_sequence_id == sequence_id );

Any suggestion how to resolve this issue?

Thanks,
Debashis

In reply to debashis_paul:

It Looks like you do not execute item_done() in your Driver. This is requested if you are using get_next_item.