UVM Sequencer

UVM Sequencer

  • The sequencer controls the flow of request and response sequence items between sequences and the driver
  • Sequencer and driver uses TLM Interface to communicate transactions
  • uvm_sequencer and uvm_driver base classes have seq_item_export and seq_item_port defined respectively. User needs to connect them using TLM connect method.

Example:

driver.seq_item_port.connect(sequencer.seq_item_export);

A sequencer can be written by extending the uvm_sequencer parameterized with the seq_item type.

uvm sequencer
uvm sequencer

UVM Sequencer Code

class mem_sequencer extends uvm_sequencer#(mem_seq_item);

   `uvm_sequencer_utils(mem_sequencer)
     
  function new (string name, uvm_component parent);
    super.new(name, parent);
  endfunction : new

endclass : mem_sequencer

❮ Previous Next ❯