UVM : How does UVM driver drive's two different Seq_item in Serial manner using a single sequencer

Consider Two sequence Items and sequences

  1. SPI sequence item and SPI sequence
  2. Ethernet Sequence Item and Ethernet Sequence

We have only one Sequencer that is " class Bus_sequencer extends Uvm_sequencer " and also only one driver “class bus_driver extends UVM_Driver” .

Here both seq_items ( SPI and Ethernet) go through same sequencer and my driver should produce a serialized output . For example “SPISequence,ETHSequence,ETHSequence,SPISequence”

In reply to ritheshraj:

Each sequence_item and sequence should be associated with their respective agent. You should have an SPI agent and an Ethernet agent. Each agent will have their own independent sequencer and driver which knows how to process their sequence_item.

You will need a virtual sequence which co-ordinates the interleaving of the SPISequence and ETHSequence on their agent’s sequencers.