svt_notify Class Reference

Inheritance diagram for class svt_notify:

List of all members.


Detailed Description

Base class for a shared notification service that may be needed by some protocol suites. An example of where this may be used would be in a layered protocol, where timing information between the protocol layers needs to be communicated.



Public Member Functions

function int  configure ( int notification_id = -1, svt_notify :: sync_e sync = ONE_SHOT )
function int  configure_event_notify ( int notification_id = -1, svt_notify :: sync_e sync = ONE_SHOT, ovm_event xvm_ev = null )
function int  configure_named_notify ( string name, int notification_id = -1, svt_notify :: sync_e sync = ONE_SHOT, int skip_file = 0 )
function int  get_notification_id ( string name )
function string  get_notification_name ( int notification_id )
function void  indicate ( int notification_id, ovm_object status = null )
function int  is_configured ( int notification_id )
function bit  is_on ( int notification_id )
function void  log_to_logger ( int log_file_id, bit notifications_described, svt_logger logger )
function void  mcd_skip_next ( int notification_id, int log_file_id )
function void  new ( ovm_report_object reporter, string suite_name, ovm_object_string_pool event_pool = null )
function void  reset ( int notification_id = -1, svt_notify :: reset_e rst_typ = HARD )
function ovm_sequence_item  status ( int notification_id )
task   wait_for_off ( int notification_id )

Public Attributes

ovm_report_object  reporter 

Member Typedefs

 typedef enum  reset_e 
 typedef enum  sync_e 


Member Function Documentation

  function int
 svt_notify::configure

 (  int notification_id = -1, svt_notify :: sync_e sync = ONE_SHOT  ) 


Method used to configure a notification in the style associated with VMM. Used to provide VMM style notification capabilities in UVM/OVM.

  function int
 svt_notify::configure_event_notify

 (  int notification_id = -1, svt_notify :: sync_e sync = ONE_SHOT, ovm_event xvm_ev = null  ) 


Method used to configure a notification in the style associated with VMM, while associating the notification to a specific UVM/OVM event. Used to provide VMM style notification capabilities in UVM/OVM, tied to well known specific UVM/OVM events.

  function int
 svt_notify::configure_named_notify

 (  string name , int notification_id = -1, svt_notify :: sync_e sync = ONE_SHOT, int skip_file = 0  ) 


Method used to configure a notification and to establish a string identifier which can be used to obtain the numeric identifier for the notification.

  function int
 svt_notify::get_notification_id

 (  string name  ) 


Gets the notification Id associated with the indicated name, as specified via a previous call to configure_named_notify.

name - Name associated with the notification.

Return values - Notification ID which can be used to access the named notification.

  function string
 svt_notify::get_notification_name

 (  int notification_id  ) 


Gets the name associated with the indicated notification ID, as specified via a previous call to configure_named_notify.

notification_id - ID associated with the notification.

Return values - Notification name which has been specified.

  function void
 svt_notify::indicate

 (  int notification_id , ovm_object status = null  ) 


Method used to trigger a notification event.

  function int
 svt_notify::is_configured

 (  int notification_id  ) 


Method used to check whether the indicated notification has been configured.

  function bit
 svt_notify::is_on

 (  int notification_id  ) 


Method used to identify whether the indification notification is currently on.

  function void
 svt_notify::log_to_logger

 (  int log_file_id , bit notifications_described , svt_logger logger  ) 


Internal method used to log notifications.

  function void
 svt_notify::mcd_skip_next

 (  int notification_id , int log_file_id  ) 


Internal method used to log notifications.

  function void
 svt_notify::new

 (  ovm_report_object reporter , string suite_name , ovm_object_string_pool event_pool = null  ) 


CONSTRUCTOR: Creates a new instance of the svt_notify class.

reporter - Reporter object to route messages through.

suite_name - Passed in to identify the model suite.

event_pool -

  function void
 svt_notify::reset

 (  int notification_id = -1, svt_notify :: reset_e rst_typ = HARD  ) 


Method used to reset an edge event.

  function ovm_sequence_item
 svt_notify::status

 (  int notification_id  ) 


Method used to get the `SVT_XVM(object) associated with the indicated notification.

  task
 svt_notify::wait_for_off

 (  int notification_id  ) 


Method used to wait for the indicate notification to go to OFF.

Member Attribute Documentation

 ovm_report_object  attribute
 svt_notify::reporter


SVT message macros route messages through this reference

Member Typedef Documentation

 typedef enum  svt_notify::reset_e

Enum used to provide compatibility layer for supporting vmm_notify reset types in UVM/OVM.

SOFT
HARD

 typedef enum  svt_notify::sync_e

Enum used to provide compatibility layer for supporting vmm_notify notify types in UVM/OVM.

ONE_SHOT(2)
BLAST(3)
ON_OFF(5)