I am a little confused here while implementing driver/seqr/monitor.
I have a parameterized sequence_item. This is a value parameter.
So, do I need to have sequencer, driver and monitor also parameterized?
Is there an example I can look at that shows sequence_item and corresponding driver/sequencer/monitor?
In reply to verif_learner:
This really depends on how you want your parameterizations to flow. Suppose you had this sequence item:
class sqi #(int I,J) extends uvm_sequence_item;
...
endclass
You could have an unparameterized driver with:
class mydriver2020 extends uvm_driver#(sqi#(20,20));
...
endclass
class mydriver420 extends uvm_driver#(sqi#(4,20));
...
endclass
Now mydriver2020 and mydriver420 handling fixed sqi items, and that might be OK if the driver code is significantly different for each parameterization. But if you can parameterize your driver code, even if only some of them, you can write
class mydriver20#(int II extends uvm_driver#(sqi#(II,20));
...
endclass