Start item waiting for seq_item_port.get_next_item

HI ,
Could you please clarify the below. I have read that start_item wait for grant access to be given by the sequencer.it doesn’t have to depend on the driver’s seq_item_port.get_next_item.

but today I observed it is blocked until driver’s seq_item_port.get_next_item is called.Could you please clarify why it is happening that way.

In reply to srbeeram:

While it is true that start_item() is blocking until the sequencer grants access, the sequencer waits for the driver to be ready to receive the next sequence_item.

The Driver/Sequence API page of the UVM Cookbook explains how and why it is done this way.