The library implements some public API beyond what is documented in 1800.2.
uvm_sequencer_base | |
The library implements some public API beyond what is documented in 1800.2. | |
Variables | |
wait_for_sequences_count | Controls the number of wait_for_sequences calls when selecting next sequence. |
Macros | |
UVM_DISABLE_AUTO_ITEM_RECORDING | Performs the same function as the deprecated 1800.2 define UVM_DISABLE_RECORDING, globally turning off automatic item recording when defined by the user. |
Controls the number of wait_for_sequences calls when selecting next sequence.
By default, the sequencers will wait for 1 wait_for_sequences call when selecting a new sequence. When stacking sequencers, this will cause a problem as the single call in a low level sequencer is absorbed by the next call in the higher level sequencer(s). This problem can be avoided by setting the value of “wait_for_sequences_count” to a value higher than 1 for the lower level sequencer(s) using the config database, e.g.:
uvm_config_db#(int)::set(this, "path.to.sequencer", "wait_for_sequences_count", 4);
Setting wait_for_sequences_count less than 1 will be ignored.
Note: Each successively lower sequencer in a stack will require a higher wait_for_sequences_count value in order to absorb all potential wait_for_sequences() counts in each higher level of the stack.
Note: Increasing this value will decrease the efficiency of the sequencer in the event of a get/get_next_item/peek/try_next_item call when no items are actually available. As such, care should be taken to avoid unnecessarily increasing the value.
@uvm-accellera The details of this API are specific to the Accellera implementation, and are not being considered for contribution to 1800.2
Performs the same function as the deprecated 1800.2 define UVM_DISABLE_RECORDING, globally turning off automatic item recording when defined by the user.
@uvm-accellera