Inheritance diagram for class svt_sequencer:
Base class for all SVT model sequencers. As functionality commonly needed for sequencers for SVT models is defined, it will be implemented (or at least prototyped) in this class.
Public Member Functions | |
| function void | build_phase ( uvm_phase phase ) |
| function uvm_agent | find_first_agent ( uvm_sequence_item seq ) |
| function void | get_cfg ( ref svt_configuration cfg ) |
| function bit | get_is_debug_enabled ( ) |
| function bit | get_is_running ( ) |
| task | get_next_item ( output REQ t ) |
| function string | get_suite_name ( ) |
| function void | new ( string name, uvm_component parent, string suite_name = "" ) |
| function void | reconfigure ( svt_configuration cfg ) |
| task | run_phase ( uvm_phase phase ) |
Class Parameters | |
| type | REQ = uvm_sequence_item; |
| type | RSP |
Public Attributes | |
| bit | manage_objection = 1; |
| uvm_report_object | reporter = this; |
Protected Member Functions | |
| function void | change_dynamic_cfg ( svt_configuration cfg ) |
| function void | change_static_cfg ( svt_configuration cfg ) |
| virtual function void | get_dynamic_cfg ( ref svt_configuration cfg ) |
| virtual function void | get_static_cfg ( ref svt_configuration cfg ) |
| function bit | is_valid_cfg_type ( svt_configuration cfg ) |
Protected Attributes | |
| static protected svt_dropping_response_report_catcher | dropping_response_catcher |
| protected bit | is_running |
|
||||||||||||
Build phase
| ||||||||||||
|
|
||
Copies (deep) the dynamic configuration properties from the argument into the configuration object stored in the sequencer. Used internally by reconfigure; not to be called directly.
|
|
||
Copies (deep) the static configuration properties from the argument into the configuration object stored in the sequencer. Used internally by reconfigure; not to be called directly.
|
|
||
Finds the first sequencer that has a `SVT_XVM(agent) for its parent. If p_sequencer parent is a `SVT_XVM(agent), returns that `SVT_XVM(agent). Otherwise continues looking up the sequence's parent sequence chain looking for a p_sequencer which has a `SVT_XVM(agent) as its parent. seq - The sequence that needs to find its agent. Return values - The first agent found by looking through the parent sequence chain. |
|
||||
Returns a reference of the sequencer's configuration object. NOTE: This operation is different than the get_cfg methods for svt_driver and svt_monitor classes. This method returns a reference to the configuration rather than a copy.
| ||||
|
|
||
Copies (deep) the dynamic configuration properties from the configuration object stored in the agent into the argument. If cfg is null, creates configuration object of appropriate type. Used internally by get_cfg; not to be called directly.
|
|
||
Function looks up whether debug is enabled for this component. This mainly acts as a front for svt_debug_opts, caching and reusing the information after the first lookup.
|
|
||
Returns the current setting of is_running, indicating whether the sequencer has been entered the run phase.
Return values - 1 indicates that the sequencer has been started, 0 indicates it has not. |
|
||||
Implementation of port method declared in the `SVT_XVM(seq_item_pull_imp) class. This method is extended in order to write sequence items to FSDB.
t - Sequence item supplied by this sequencer | ||||
|
|
||
Copies (deep) the static configuration properties from the configuration object stored in the agent into the argument. If cfg is null, creates config object of appropriate type. Used internally by get_cfg; not to be called directly.
|
|
||
Returns the model suite name associated with an object.
|
|
||
Expected to return a 1 if the supplied configuration object is of the correct type for the sequencer. Extended classes implementing specific sequencers will provide an extended version of this method and call it directly.
|
|
||||||
CONSTRUCTOR: Create a new sequencer instance, passing the appropriate argument values to the `SVT_XVM(sequencer) parent class.
name - Instance name
parent - Handle to the hierarchical parent
suite_name - Identifies the product suite to which the sequencer object belongs. | ||||||
|
|
||||
Updates the sequencer's configuration with data from the supplied object. This method always results in a call to change_dynamic_cfg. If the sequencer has not been started calling this method also results in a call to change_static_cfg.
| ||||
|
|
||||||
Run phase
| ||||||
|
|
|
UVM/OVM report catcher used to filter the 'Dropping response...sequence not found' message.
|
|
|
Flag that indicates the driver has entered the run phase.
|
|
|
A flag that enables automatic objection management. If this is set to 1 in an extended sequencer class then an objection will be raised when the Run phase is started and dropped when the Run phase is ended. It can be set explicitly or via a bit-type configuration entry on the sequencer named "manage_objection".
If the VIP or testbench provides an override value of '0' then this setting will also be propagated to the contained svt_sequence sequences via the configuration. |
|
|
SVT message macros route messages through this reference
|