Hello,
please find here below some comments, I hope these will help.
As per xbus example in the OVM examples library, I have been applying default sequences to some of the masters >through “set_config_string” on “default_sequence” string.
I would say in a different way, using “default_sequence” you are assign the default sequence to be
used by the sequencer (not on the driver), with a sequence defined in the sequence library.
The driver will consume them, applying the data items from the transaction to the interface.
What happens if am NOT assigning any sequence as “default sequence” to a driver?
Which sequence from my sequence library will be used?
The default value for default_sequence is ovm_random_sequence.
On sequencer there are three built-in sequences: ovm_random_sequence, ovm_exhaustive_sequence, and
ovm_simple_sequence.
User-defined sequences (the ones coming from sequence library) are loaded into the sequencer’s sequence
queue prior to the run simulation phase. Upon entering the run phase, the sequencer starts
the default_sequence and the transactions start flowing.
You can configure the default sequence to be any user-defined sequence or built-in sequence.
Lets’ say I have only three sequences in my sequence library & there are ten masters(drviers)
in my env each with a sequencer. How does the default sequence mechanism works here?
See above for default sequence.
If you have some masters and you like to assign a specific sequence to a specific master, use the
set_config_string on your test. Please take a look on xbus/examples/test_lib.sv, the example show how
to set the default sequence to xbus_demo_sve0.xbus0.masters[0].sequencer with “read_modify_write_seq”
from the master sequence library.
Is it possible to assign same sequence to more than one driver?
See above, you will not assign the sequence to the driver, but to the sequencer.
How can I add sequence to “ovm_simple_sequence”?
This sequence is a built-in sequence which is pre-loaded into the sequencer;
it calls the `ovm_do(item), where item is a property on omv_sequence.
You can use the set_config_string to use the simple sequence a default sequence.
Thanks in advance.
You are very welcomed, I hope this will help,
Riccardo