Inheritance diagram for class svt_xactor:
Class that provides the basic infrastructure common to all SVT transactors.
Public Member Functions | |
| function string | get_instance ( ) |
| function bit | get_is_started ( ) |
| function string | get_object_hiername ( ) |
| function svt_timer | get_recycled_timer ( string inst, svt_err_check check = null, vmm_log log = null ) |
| function string | get_suite_name ( ) |
| function void | get_xactor_cfg ( ref svt_configuration cfg ) |
| function void | inform_notify_cb_exec ( string name, svt_notify notify ) |
| function bit | is_cov_complete ( int kind, ref string report ) |
| virtual function void | monitor_xactor_chan ( int chan_id, bit display_as_note = 0 ) |
| function void | new ( string suite_name, string class_name, svt_configuration cfg = null ) |
| function void | reconfigure ( svt_configuration cfg ) |
| function void | recycle_timer ( ref svt_timer timer ) |
| function void | reset_xactor ( vmm_xactor :: reset_e rst_typ = SOFT_RST ) |
| function void | set_instance ( string inst ) |
| function void | start_xactor ( ) |
| function void | stop_xactor ( ) |
Public Attributes | |
| vmm_log | data_log |
| svt_err_check | err_check = null; |
| svt_logger | logger = null; |
| static svt_err_check | shared_err_check = null; |
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 ) |
| function bit | is_valid_chan ( int chan_id ) |
| function bit | is_valid_xact_type ( int chan_id, svt_data xact ) |
| task | main ( ) |
| function void | monitor_chan ( vmm_channel chan, string xact_type, string chan_name, bit display_as_note = 0 ) |
| function void | monitor_chan_activity ( vmm_channel chan, string xact_type, string chan_name, vmm_channel :: notifications_e chan_activity, bit display_as_note = 0 ) |
| function void | start_cb_exec ( ) |
| function void | stop_cb_exec ( ) |
Protected Attributes | |
| protected bit | is_started |
| protected int | mcd_cb_number = 0; |
| protected int | mcd_id_constructor = 0; |
| protected int | mcd_id_get_xactor_cfg = 0; |
| protected int | mcd_id_reconfigure = 0; |
| protected int | mcd_id_reset_xactor = 0; |
| protected int | mcd_id_start_xactor = 0; |
| protected int | mcd_id_stop_xactor = 0; |
| protected bit | mcd_logging_input_objects_only = 1'b1; |
| protected bit | mcd_logging_on = 1'b0; |
| protected int | mcd_log_file |
| protected int | mcd_n_number = 0; |
| protected bit | mcd_notification_described = 0; |
| protected int | mcd_task_number = 0; |
|
||
Copies (deep) the dynamic configuration properties from the argument into the configuration object stored in the transactor. 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 transactor. Used internally by reconfigure; not to be called directly.
|
|
||
Copies (deep) the dynamic configuration properties from the configuration object stored in the transactor into the argument. If cfg is null, creates configuration object of appropriate type. Used internally by get_xactor_cfg; not to be called directly.
|
|
||||
Returns the instance name associated with this transactor.
| ||||
|
|
||
Returns the current setting of is_started, indicating whether the transactor has been started.
Return values - 1 indicates that the subenv has been started, 0 indicates it has not. |
|
||
Method which returns a string for the instance path of the svt_xactor instance for VMM 1.1.
|
|
||
Method to obtain a previously used timer from recycled_timer for reuse.
inst - The inst name provided to the timer. check - The checker package to be used by the timer, if desired. log - Used to replace the timer's default message report object. Return values - The previously used or newly created timer, ready for use. |
|
||
Copies (deep) the static configuration properties from the configuration object stored in the transactor into the argument. If cfg is null, creates config object of appropriate type. Used internally by get_xactor_cfg; not to be called directly.
|
|
||
Returns the model suite name associated with an object.
|
|
||
Returns a copy of the transactor's configuration object, including the current configuration settings. If cfg is null, creates configuration object of appropriate type.
|
|
||
Callback issued for every svt_notify which supports callback based notification tracking, as well as for the vmm_xactor :: notify field.
This method issues the inform_notify callback. Overriding implementations in extended classes must call the super version of this method.
name - Name identifying the svt_notify if provided, or identifying the transactor if the inform_notify is being issued for the 'notify' field on the transactor. notify - The svt_notify instance that is being provided for use. This field is set to null if the inform_notify is being issued for the 'notify' field on the transactor. |
|
||
|
||
Expected to return a 1 if the supplied configuration object is of the correct type for the transactor. Extended classes implementing specific transactors will provide an extended version of this method and call it directly.
|
|
||
Returns a 1 if the specified channel ID is within the range used by the transactor.
|
|
||
Returns a 1 if the supplied transaction object is of the correct type for the channel with the specified ID.
|
|
||||
VMM main method.
| ||||
|
|
||
Monitors the provided channel, reporting all PUT and GOT activity.
chan - Channel that is to be monitored. xact_type - String representing the channel transaction type. chan_name - String indicating the channel name. display_as_note - Bit indicating whether reporting should occur as a NOTE (display_as_note = 1) or VERBOSE (display_as_note = 0) vmm message. |
|
||
Monitors the provided channel, reporting all channel activity of the type indicated by chan_activity.
chan - Channel that is to be monitored. xact_type - String representing the channel transaction type. chan_name - String indicating the channel name. chan_activity - vmm_channel enum value indicating which channel activity is to be tracked. Currently only supports monitoring of PUT and GOT activity. display_as_note - Bit indicating whether reporting should occur as a NOTE (display_as_note = 1) or VERBOSE (display_as_note = 0) vmm message. |
|
||
Monitors the indicated transactor channel, reporting all PUT and GOT activity.
chan_id - Channel identifier within the range used by the transactor. display_as_note - Bit indicating whether reporting should occur as a NOTE (display_as_note = 1) or VERBOSE (display_as_note = 0) vmm message. |
|
||
CONSTRUCTOR: Create a new transactor instance, passing the appropriate argument values to the vmm_xactor parent class.
suite_name - Identifies the product suite to which the xactor object belongs.
class_name - Sets the class name, which will be returned by the get_name function (provided by vmm_xactor).
cfg - A configuration data object that specifies the initial configuration in use by a derived transactor. At a minimum the inst and stream_id properties of this argument are used in the call to super.new (i.e. in the call that this class makes to vmm_xactor :: new). |
|
||
Updates the transactors configuration with data from the supplied object. This method always results in a call to change_dynamic_cfg. If the transactor has not been started calling this method also results in a call to change_static_cfg.
|
|
||
Method to add this timer to recycled_timer, which is a queue of recycled timers. Timers should only be recycled if the client is sure that the timer is no longer in use, and only if the timer was created via a call to get_recycled_timer.
timer - The timer to be recycled. Passed as a ref so it can be set to null before return. |
|
||||
VMM reset method.
| ||||
|
|
||
Sets the instance name associated with this transactor.
inst - The new instance name to be associated with this subenv. |
|
||
Called by main to allow callbacks to initiate activities. This callback is issued during main so that any processes initiated by this callback will be torn down if reset_xactor is called.
This method issues the start callback. Overriding implementations in extended classes must call the super version of this method. |
|
||||
VMM start_xactor method
| ||||
|
|
||
Called to allow callbacks to suspend activities.
This method issues the stop callback. Overriding implementations in extended classes must call the super version of this method. |
|
||||
VMM stop_xactor method
| ||||
|
|
|
Shared log instance used for internally generated data objects.
|
|
|
Local svt_err_check instance that may be specific to the transactor, or otherwise shared across a subeystem (e.g., subenv).
|
|
|
Flag that indicates the transactor has been started.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Common svt_err_check instance shared by all SVT-based transactors. Individual transactors may alternatively choose to store svt_err_check_stats in a local svt_err_check instance, check_mgr, that may be specific to the transactor, or otherwise shared across a subeystem (e.g., subenv).
|