Hi,
Lets say there are 5 sequences (seq1, seq2, seq3, seq4, seq5) and all the sequences from seq2 to seq5 should run only after running seq1.
Is there any way in ovm to run seq1 followed by seq2/seq3/seq4/seq5 w/o creating without creating virtual sequence.
what I am trying to ask is, can I inform to virtual sequencer to run the default sequence before running the actual sequence (which would mentioned in the testcase through set_config_string)
Thanks,
siva.

Multiple ways:
Use a virtual sequence - no need to use a virtual sequencer. See: http://verificationacademy.com/uvm-ovm/Sequences/Virtual
Construct a test base class with a run method to run seq1, then extend it to run any mix of seqs2-5.
In the base class:
task run;
seq1 s = seq1::type_id::create("s");
s.start(sqr);
endtask: run
In the extended class:
task run;
seq2 s2;
seq3 s3;
seq4 s4;
seq5 s5;
string choice;
super.run;
// get_config_string for choice
case (choice)
SEQ2: begin
s2 = seq2::type_id::create("s2");
s2.start(sqr);
end
etc
Don't rely on the built-in sequencer library with default sequences, it is very difficult to control.
Thanks for the valuable information.
The link provided is helpful when for a SoC based verification environment.
Since IP level testcase are not re-usable at SoC. I want to have something w.r.t virtual sequence i.e.
in virtual sequence:
--------------------
`ovm_do_on (seq1);
`ovm_do_on (choice);
Can I pass the selection of choice from run command???
Hi,
You can pass the selection of "choice" from command line.
You need to use $value$plusargs attribute.
Look into the latest sv lrm to get into more details.
Regards,
Vaibhav