I have 2 sequencers that I am using in a fork…join_none. Now I have to override both the base sequences when I am running the test, how can I achieve that?
I have +uvm_set_type_override=base_sequence1,user_sequence in my run script.
Can I add another +uvm_set_type_override=base_sequence2,user_sequence?
Are you using 2 sequenceRs or sequences in your fork…join_none?
Did you try to have multiple command line arguments: +uvm_set_type_override
one per each override?
It should work fine, since you are overriding 2 different base_sequences1/2.
@MichaelP I am using 2 sequencers in fork…join_none. I tried to override in my run script, but it would need me to run the base sequences all the time. Is it possible to run only 1 sequencer at a time and run the other one as a reactive component.
in my run_script - …/simv -l sim.log +uvm_set_type_override=base_seq1,user_seq +uvm_set_type_override=base_seq2,user_seq
Errors I am seeing when trying to run only 1 sequencer at a time -
UVM_ERROR @ 0 ns: reporter [UVM_CMDLINE_PROC] Invalid setting for +uvm_set_type_override=base_seq2, setting must specify <requested_type>,<override_type>[,]
Did you pay attention that your <override_type> in both cases is user_seq?
What is the inheritance tree of: user_seq?
Could you please add the code of user_seq?
And I think you are missing “” in the create method, see code below:
seq1 = base_seq1::type_id::create(“seq1”);
seq2 = base_seq2::type_id::create(“seq2”);
Please try it, the first argument of create method is name of type string.
And I think you are missing “” in the create method, see code below:
seq1 = base_seq1::type_id::create(“seq1”);
seq2 = base_seq2::type_id::create(“seq2”);
Please try it, the first argument of create method is name of type string.