Jump to content

Sharing multiple sequence items on a common driver in UVM


Recommended Posts


I've multiple sequence items and I'm trying to share a common driver for all sequence items.

Usually in UVM; I have the following driver model;

class common_driver extends uvm_driver#(abc_seq_item);



Like the above model, I want to share multiple sequence_items in a common driver.

Another thing to remember is; If i run one testcase then only one corresponding sequence_item should be driven by the driver.

If it possible please suggest me the ways to implement it?



Link to comment
Share on other sites

One way is to create a base sequence item and then create extensions of it:

class base_packet extends uvm_sequence_item;

class specific_packet extends base_packet;

then the driver uses the base class, even if the sequence is running with the specific_class:

class this_driver extends uvm_driver #(base_packet);

class sequence_one extends uvm_sequence#(base_packet);

class sequence_two extends uvm_sequence#(specific_packet);

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...