Returns 1 if this component has a child with the given name, 0 otherwise.
function int has_child ( string name )
Check if memory has coverage model(s)
virtual function bit has_coverage( uvm_reg_cvr_t models )
Check if register has coverage model(s)
virtual function bit has_coverage( uvm_reg_cvr_t models )
Check if block has coverage model(s)
virtual function bit has_coverage( uvm_reg_cvr_t models )
Returns 1 if any sequence running on this sequencer is ready to supply a transaction, 0 otherwise.
virtual function bit has_do_available()
Indicates whether a sequence item is available for immediate processing.
virtual function bit has_do_available()
Check if a HDL path is specified
function bit has_hdl_path ( string kind = "" )
Check if a HDL path is specified
function bit has_hdl_path ( string kind = "" )
Check if a HDL path is specified
function bit has_hdl_path ( string kind = "" )
Check if a HDL path is specified
function bit has_hdl_path ( string kind = "" )
Returns 1 if this sequence has a lock, 0 otherwise.
function bit has_lock()
Returns 1 if the sequence refered to in the parameter currently has a lock on this sequencer, 0 otherwise.
function bit has_lock( uvm_sequence_base sequence_ptr )
Check if any field in the register has a reset value specified for the specified reset kind.
virtual function bit has_reset( string kind = "HARD", bit delete = 0 )
Check if the field has a reset value specified
virtual function bit has_reset( string kind = "HARD", bit delete = 0 )
Indicates whether the print_header function should be called when printing an object.
bit header = 1
This string should be prepended to the value of an integral type when a radix of UVM_HEX is used for the radix of the integral object.
string hex_radix = "'h"
Return the unique ID of this TLM extension type.
static function this_type ID()
An associative array holding the number of occurences for each unique report ID.
protected int id_count[string]
Indicates whether adjust_name should print the identifier.
bit identifier = 1
This bit is used to specify whether or not an object’s reference should be recorded when the object is recorded.
bit identifier = 1
Dynamically implement, resize or relocate a virtual register array
virtual function bit implement( longint unsigned n, uvm_mem mem = null, uvm_reg_addr_t offset = 0, int unsigned incr = 0 )
Regions already allocated in the managed address space
uvm_mem_region in_use[$]
Specify which coverage model that must be included in various block, register or memory abstraction class instances.
static function void include_coverage( string scope, uvm_reg_cvr_t models, uvm_object accessor = null )
Increment the time value by the specified number of scaled time unit
function void incr( real t, time scaled, real secs = 1.0e-9 )
Set, get, or increment the counter for reports with the given id.
function void incr_id_count( string id )
function void incr_quit_count()
function void incr_severity_count( uvm_severity severity )
This knob specifies the number of spaces to use for level indentation.
int indent = 2
Initalize a new access record
function void init_access_record ( inout uvm_resource_types:: access_t access_record )
Inserts the item at the given index in the queue.
virtual function void insert ( int index, T item )
returns 1 if the containing uvm_phase refers to the same phase as the phase argument, 0 otherwise
function bit is( uvm_phase phase )
Returns 1 if the transaction has been started but has not yet been ended.
function bit is_active ()
returns 1 if the containing uvm_phase refers to a phase that is later than the phase argument, 0 otherwise
function bit is_after( uvm_phase phase )
Returns 1 if the auditing facility is on and 0 if it is off.
static function bit is_auditing()
Indicates if wait_for_change() method is implemented
virtual function bit is_auto_updated( uvm_reg_field field )
Returns 1 if the containing uvm_phase refers to a phase that is earlier than the phase argument, 0 otherwise
function bit is_before( uvm_phase phase )
Returns a bit indicating whether this sequence is currently prevented from running due to another lock or grab.
function bit is_blocked()
Returns 1 if the sequence referred to by sequence_ptr is currently locked out of the sequencer.
function bit is_blocked( uvm_sequence_base sequence_ptr )
Returns 1 if register is currently being read or written.
function bit is_busy()
Returns 1 if the child sequence is a child of the parent sequence, 0 otherwise.
function bit is_child ( uvm_sequence_base parent, uvm_sequence_base child )
DMI hint.
virtual function bit is_dmi_allowed()
Returns 1 when there are no entries in the FIFO, 0 otherwise.
virtual function bit is_empty()
Returns 1 if the callback is enabled, 0 otherwise.
function bit is_enabled()
function bit is_export ()
pure virtual function bit is_export()
Returns 1 when the number of entries in the FIFO is equal to its size, 0 otherwise.
virtual function bit is_full()
Returns 1 if any sequence currently has a lock or grab on this sequencer, 0 otherwise.
virtual function bit is_grabbed()
Check if this block has an absolute path
function bit is_hdl_path_root ( string kind = "" )
Returns 1 if this port is of the type given by the method name, 0 otherwise.
function bit is_imp ()
These function determine the type of port.
pure virtual function bit is_imp()
Return TRUE if this memory is in the specified address map
function bit is_in_map ( uvm_reg_map map )
Returns 1 if this register is in the specified address map
function bit is_in_map ( uvm_reg_map map )
Return TRUE if this virtual register array is in the specified address map
function bit is_in_map ( uvm_reg_map map )
Check if this field can be written individually, i.e.
function bit is_indv_accessible ( uvm_path_e path, uvm_reg_map local_map )
Returns 1 on items and 0 on sequences.
virtual function bit is_item()
This function may be called on any sequence_item or sequence.
virtual function bit is_item()
Check if access policy is a built-in one.
virtual function bit is_known_access( uvm_reg_map map = null )
Return TRUE if the model is locked.
function bit is_locked()
This method is used during unpack operations to peek at the next 4-bit chunk of the pack data and determine if it is 0.
virtual function bit is_null ()
Indicates whether the event has been triggered or been reset.
virtual function bit is_off ()
Indicates whether the event has been triggered since it was last reset.
virtual function bit is_on ()
function bit is_port ()
pure virtual function bit is_port()
If is_quit_count_reached returns 1, then the quit counter has reached the maximum.
function bit is_quit_count_reached()
Returns true if the current value of the m_command variable is UVM_TLM_READ_COMMAND.
virtual function bit is_read()
Retruns one if this resource has been set to read-only, zero otherwise
function bit is_read_only()
Returns 1 if recording is currently on, 0 otherwise.
function bit is_recording_enabled()
The default is_relevant implementation returns 1, indicating that the sequence is always relevant.
virtual function bit is_relevant()
Return TRUE if the current value of the m_response_status variable is not UVM_TLM_OK_RESPONSE
virtual function bit is_response_error()
Return TRUE if the current value of the m_response_status variable is UVM_TLM_OK_RESPONSE
virtual function bit is_response_ok()
Returns 1 if the tracing facility is on and 0 if it is off.
static function bit is_tracing()
Returns 1 if the tracing facility is on and 0 if it is off.
static function bit is_tracing()
Returns 1 if this port has no maximum on the number of implementation ports this port can connect to.
function bit is_unbounded ()
Indicates if the field value is volatile
virtual function bit is_volatile()
Returns true if the current value of the m_command variable is UVM_TLM_WRITE_COMMAND.
virtual function bit is_write()
Immediately issues the message which is currently being processed.
protected function void issue()
Indicates that the request is completed to the sequencer.
virtual function void item_done( input T2 t = null )
jumps all active phases of this domain to to-phase if there is a path between active-phase and to-phase
function void jump( uvm_phase phase )
Jump to a specified phase.
function void jump( uvm_phase phase )
Make all schedules jump to a specified phase, even if the jump target is local.
static function void jump_all( uvm_phase phase )
This function will kill the sequence, and cause all current locks and requests in the sequence’s default sequencer to be removed.
function void kill()
Kind of access: READ or WRITE.
uvm_access_e kind
Kind of access: READ or WRITE.
rand uvm_access_e kind
The knob object provides access to the variety of knobs associated with a specific printer instance.
uvm_printer_knobs knobs = new
Returns the last valid (enabled) callback of the callback type (or a derivative) that is in the queue of the context object.
function CB last()
Returns the key of the last item stored in the pool.
virtual function int last ( ref KEY key )
Returns the last request item by default.
function REQ last_req( int unsigned n = 0 )
Returns the last response item by default.
function RSP last_rsp( int unsigned n = 0 )
Number of addresses required
int unsigned len
The file name from where this transaction originated, if provided at the call site.
int lineno
The local map used to obtain addresses.
uvm_reg_map local_map
Region location mode
rand uvm_mem_mam::locality_e locality
Requests a lock on the specified sequencer.
task lock( uvm_sequencer_base sequencer = null )
Requests a lock for the sequence specified by sequence_ptr.
virtual task lock( uvm_sequence_base sequence_ptr )
Lock a model and build the address map.
virtual function void lock_model()
Looks for a component with the given hierarchical name relative to this component.
function uvm_component lookup ( string name )
Lookup resources by name.
function uvm_resource_types::rsrc_q_t lookup_name( string scope = "", string name, uvm_resource_base type_handle = null, bit rpterr = 1 )
Looks for all the resources whose name matches the regular expression argument and whose scope matches the current scope.
function uvm_resource_types::rsrc_q_t lookup_regex( string re, scope )
This utility function answers the question, for a given name, scope,and type_handle, what are all of the resources with a matching name (where the resource name may be a regular expression), a matching scope (where the resoucre scope may be a regular expression), and a matching type?
function uvm_resource_types::rsrc_q_t lookup_regex_names( string scope, string name, uvm_resource_base type_handle = null )
This is a utility function that answers the question: For a given scope, what resources are visible to it?
function uvm_resource_types::rsrc_q_t lookup_scope( string scope )
Lookup resources by type.
function uvm_resource_types::rsrc_q_t lookup_type( string scope = "", uvm_resource_base type_handle )
Address for the bus operation.
rand bit [63:0] m_address
Indicates valid m_data array elements.
rand byte unsigned m_byte_enable[]
The number of elements in the m_byte_enable array.
rand int unsigned m_byte_enable_length
Bus operation type.
rand uvm_tlm_command_e m_command
Data read or to be written.
rand byte unsigned m_data[]
DMI mode is not yet supported in the UVM TLM2 subset.
rand bit m_dmi
The number of bytes to be copied to or from the m_data array, inclusive of any bytes disabled by the m_byte_enable attribute.
rand int unsigned m_length
Status of the bus operation.
rand uvm_tlm_response_status_e m_response_status
Hierarchical mode only needs to be set for intermediate components, not for uvm_root or a leaf component.
function void m_set_hier_mode ( uvm_object obj )
Number of bytes transferred on each beat.
rand int unsigned m_streaming_width
The uvm_main_phase phase implementation method.
virtual task main_phase( uvm_phase phase )
Memory allocation manager
uvm_mem_mam mam
The original map specified for the operation.
uvm_reg_map map
The map used to convert a bus address to the corresponding register or memory handle.
uvm_reg_map map
Using the regular expression facility, determine if this resource is visible in a scope.
function bit match_scope( string s )
Maximum address offset in the managed address space
bit [63:0] max_offset
This is a file descriptor, or multi-channel descriptor, that specifies where the print output should be directed.
int mcd = UVM_STDOUT
The memory to be tested
uvm_mem mem
The memory to be tested
uvm_mem mem
The memory to test; must be assigned prior to starting sequence.
uvm_mem mem
The sequence used to test one memory
protected uvm_mem_single_access_seq mem_seq
The sequence used to test one memory
protected uvm_mem_single_walk_seq mem_seq
The sequence used to test one memory
protected uvm_mem_shared_access_seq mem_seq
This function is a user-definable callback function that is called after the sequence item has been randomized, and just before the item is sent to the driver.
virtual function void mid_do( uvm_sequence_item this_item )
Minimum address offset in the managed address space
bit [63:0] min_offset
Read the register and update/check its mirror value
virtual task mirror( output uvm_status_e status, input uvm_check_e check = UVM_NO_CHECK, input uvm_path_e path = UVM_DEFAULT_PATH, input uvm_reg_map map = null, input uvm_sequence_base parent = null, input int prior = -1, input uvm_object extension = null, input string fname = "", input int lineno = 0 )
Update the mirrored values
virtual task mirror( output uvm_status_e status, input uvm_check_e check = UVM_NO_CHECK, input uvm_path_e path = UVM_DEFAULT_PATH, input uvm_sequence_base parent = null, input int prior = -1, input uvm_object extension = null, input string fname = "", input int lineno = 0 )
Read the field and update/check its mirror value
virtual task mirror( output uvm_status_e status, input uvm_check_e check = UVM_NO_CHECK, input uvm_path_e path = UVM_DEFAULT_PATH, input uvm_reg_map map = null, input uvm_sequence_base parent = null, input int prior = -1, input uvm_object extension = null, input string fname = "", input int lineno = 0 )
Mirrors the given register rg using uvm_reg::mirror, supplying ‘this’ as the parent argument.
virtual task mirror_reg( input uvm_reg rg, output uvm_status_e status, input uvm_check_e check = UVM_NO_CHECK, input uvm_path_e path = UVM_DEFAULT_PATH, input uvm_reg_map map = null, input int prior = -1, input uvm_object extension = null, input string fname = "", input int lineno = 0 )
This string is reset to an empty string when a comparison is started.
string miscompares = ""
Region allocation mode
rand uvm_mem_mam::alloc_mode_e mode
Block abstraction this sequence executes on, defined only when this sequence is a user-defined test sequence.
uvm_reg_block model
The number of bits of uvm_reg_item::value being transferred by this transaction.
int n_bits
Number of bytes in each memory location
rand int unsigned n_bytes
Executes the given request and returns the response in the given output argument.
virtual function bit nb_transport( input T1 req, output T2 rsp )
Implementation of the backward path.
virtual function uvm_tlm_sync_e nb_transport_bw( T t, ref P p, input uvm_tlm_time delay )
Forward path call.
virtual function uvm_tlm_sync_e nb_transport_fw( T t, ref P p, input uvm_tlm_time delay )
Returns 1 if any of the fields need updating
virtual function bit needs_update()
Check if DUT registers need to be written
virtual function bit needs_update()
Check if the abstract model contains different desired and mirrored values.
virtual function bit needs_update()
Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.
function new ( string name, uvm_component parent )
Creates an instance of a specialization of this class.
function new( string name, uvm_component parent = null, TRANSFORMER transformer = null )
Instantiate the export.
function new ( string name, uvm_component parent = null )
Creates a new barrier object.
function new ( string name = "", int threshold = 0 )
Create a new instance of a bottom-up phase.
function new( string name )
Creates an instance that holds two built-in type values.
function new ( string name = "" )
Creates a new uvm_callback object, giving it an optional name.
function new( string name = "uvm_callback" )
Creates a new callback iterator object.
function new( T obj )
Creates an instance that holds a handle to two objects.
function new ( string name = "", T1 f = null, T2 s = null )
Creates a new component with the given leaf instance name and handle to to its parent.
function new ( string name, uvm_component parent )
Create a new instance of a phase domain.
function new( string name )
Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.
function new ( string name, uvm_component parent )
Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.
function new ( string name = "env", uvm_component parent = null )
Creates a new event object.
function new ( string name = "" )
Creates a new callback object.
function new ( string name = "" )
Creates a new heartbeat instance associated with cntxt.
function new( string name, uvm_component cntxt, uvm_callbacks_objection objection = null )
Creates a new instance of uvm_line_printer.
function new()
Create a new instance and type-specific configuration
function new ( string name, longint unsigned size, int unsigned n_bits, string access = "RW", int has_coverage = UVM_NO_COVERAGE )
Create a new manager instance
function new( string name, uvm_mem_mam_cfg cfg, uvm_mem mem = null )
Creates a new instance of the class with the given name.
function new( string name = "uvm_mem_walk_seq" )
Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.
function new ( string name, uvm_component parent )
Creates a new uvm_object with the given instance name.
function new ( string name = "" )
Creates a new pool with the given name.
function new ( string name = "" )
Creates a new objection instance.
function new( string name = "" )
Create a new phase node, with a name and a note of its type name - name of this phase type - task, topdown func or bottomup func
function new( string name = "uvm_phase", uvm_phase_type phase_type = UVM_PHASE_SCHEDULE, uvm_phase parent = null )
Creates a new pool with the given name.
function new ( string name = "" )
The first two arguments are the normal uvm_component constructor arguments.
function new ( string name, uvm_component parent, uvm_port_type_e port_type, int min_size = 0, int max_size = 1 )
Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.
function new ( string name, uvm_component parent )
Standard component constructor that creates an instance of this class using the given name and parent, if any.
function new ( string name, uvm_component parent = null )
Creates a new queue with the given name.
function new ( string name = "" )
Creates a new instance of a specialization of this class.
function new( string name, uvm_component parent )
Create a new instance and type-specific configuration
function new ( string name = "", int unsigned n_bits, int has_coverage )
Create a new instance of this type, giving it the optional name.
function new( string name = "" )
Create an instance of this class
function new( string name = "" )
Create a new instance and type-specific configuration
function new( string name = "", int has_coverage = UVM_NO_COVERAGE )
Create a new field instance
function new( string name = "uvm_reg_field" )
Creates an instance of a FIFO register having size elements of n_bits each.
function new( string name = "reg_fifo", int unsigned size, int unsigned n_bits, int has_cover )
Create a new instance
function new ( string name = "" )
Constructor, new object givne optional name.
function new( string name = "" )
Create an instance of this class
function new( string name = "uvm_reg_indirect", int unsigned n_bits, int has_cover )
Create a new instance of this type, giving it the optional name.
function new( string name = "" )
Create a new instance
function new( string name = "uvm_reg_map" )
Create a new instance of this type, giving it the optional name and parent.
function new ( string name, uvm_component parent )
Create a new instance, giving it the optional name.
function new ( string name = "uvm_reg_sequence_inst" )
Create a new report object.
function new( string name = "uvm_report_catcher" )
Creates and initializes a new uvm_report_handler object.
function new()
Creates a new report object with the given name.
function new( string name = "" )
Creates the central report server, if not already created.
function new()
constructor for uvm_resource_base.
function new( string name = "", string s = "*" )
Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.
function new ( string name, uvm_component parent )
Creates and initializes a new sequence object.
function new ( string name = "uvm_sequence" )
The constructor for uvm_sequence_base.
function new ( string name = "uvm_sequence" )
The constructor method for uvm_sequence_item.
function new ( string name = "uvm_sequence_item" )
Standard component constructor that creates an instance of this class using the given name and parent, if any.
function new ( string name, uvm_component parent = null )
Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent.
function new ( string name, uvm_component parent )
Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.
function new ( string name, uvm_component parent )
Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.
function new ( string name, uvm_component parent )
Creates a new instance of uvm_table_printer.
function new()
Create a new instance of a task-based phase
function new( string name )
Creates and initializes an instance of this class using the normal constructor arguments for uvm_component: name is the name of the instance, and parent is the handle to the hierarchical parent, if any.
function new ( string name, uvm_component parent )
This is the standard uvm_component constructor.
function new( string name , uvm_component parent = null )
Construct a new instance of this socket
function new( string name, uvm_component parent )
Construct a new instance of this socket imp is a reference to the class implementing the b_transport() method.
function new ( string name, uvm_component parent, IMP imp = null )
creates a new extension object.
function new( string name = "" )
function new( string name = "" )
The name and parent are the normal uvm_component constructor arguments.
function new( string name, uvm_component parent = null, int size = 1 )
The name and parent are the normal uvm_component constructor arguments.
function new( string name, uvm_component parent = null )
Create a new instance of the generic payload.
function new( string name = "" )
Construct a new instance of this socket imp is a reference to the class implementing the nb_transport_bw() method.
function new( string name, uvm_component parent, IMP imp = null )
Construct a new instance of this socket imp is a reference to the class implementing the nb_transport_fw() method.
function new ( string name, uvm_component parent, IMP imp = null )
The name and parent are the standard uvm_component constructor arguments.
function new ( string name, uvm_component parent = null, int request_fifo_size = 1, int response_fifo_size = 1 )
Create a new canonical time value.
function new( string name = "uvm_tlm_time", real res = 0 )
The name and parent are the standard uvm_component constructor arguments.
function new ( string name, uvm_component parent = null )
Create a new instance of a top-down phase
function new( string name )
Creates a new transaction object.
function new ( string name = "", uvm_component initiator = null )
Creates a new instance of uvm_tree_printer.
function new()
Create a new instance and type-specific configuration
function new( string name, int unsigned n_bits )
Create a new virtual field instance
function new( string name = "uvm_vreg_field" )
Returns the next valid (enabled) callback of the callback type (or a derivative) that is in the queue of the context object.
function CB next()
Returns the key of the next item in the pool.
virtual function int next ( ref KEY key )
Returns the number of uniquely keyed items stored in the pool.
virtual function int num ()
This string should be prepended to the value of an integral type when a radix of UVM_OCT is used for the radix of the integral object.
string oct_radix = "'o"
For memory accesses, the offset address.
rand uvm_reg_addr_t offset