[source]

Class uvm_pkg::uvm_reg_item

uvm_pkg::uvm_reg_item + bd_kind : string + element : uvm_object + element_kind : uvm_elem_kind_e + extension : uvm_object + fname : string + kind : uvm_access_e + lineno : int + local_map : uvm_reg_map + map : uvm_reg_map + offset : uvm_reg_addr_t + parent : uvm_sequence_base + path : uvm_path_e + prior : int + status : uvm_status_e + type_name : string + value[] : uvm_reg_data_t + __m_uvm_field_automation(): void + convert2string(): string + create(): uvm_object + do_copy(): void + get_object_type(): uvm_object_wrapper + get_type(): type_id + get_type_name(): string uvm_pkg::uvm_object uvm_pkg::uvm_reg_map uvm_pkg::uvm_sequence_base element local_map map parent extension

Collaboration Diagram of uvm_reg_item

CLASS

uvm_reg_item

Defines an abstract register transaction item. No bus-specific information is present, although a handle to a uvm_reg_map is provided in case a user wishes to implement a custom address translation algorithm.

Variables

Name

Type

Description

element_kind

uvm_elem_kind_e

Variable

element_kind

Kind of element being accessed

REG, MEM, or FIELD. See uvm_elem_kind_e.

element

uvm_object

Variable

element

A handle to the RegModel model element associated with this transaction. Use element_kind to determine the type to cast to: uvm_reg, uvm_mem, or uvm_reg_field.

kind

uvm_access_e

Variable

kind

Kind of access

READ or WRITE.

value

uvm_reg_data_t

Variable

value

The value to write to, or after completion, the value read from the DUT. Burst operations use the values property.

offset

uvm_reg_addr_t

Variable

offset

For memory accesses, the offset address. For bursts, the starting offset address.

status

uvm_status_e

Variable

status

The result of the transaction

IS_OK, HAS_X, or ERROR.

See uvm_status_e.

local_map

uvm_reg_map

Variable

local_map

The local map used to obtain addresses. Users may customize address-translation using this map. Access to the sequencer and bus adapter can be obtained by getting this map's root map, then calling uvm_reg_map::get_sequencer and uvm_reg_map::get_adapter.

map

uvm_reg_map

Variable

map

The original map specified for the operation. The actual map used may differ when a test or sequence written at the block level is reused at the system level.

path

uvm_path_e

Variable

path

The path being used

or .

parent

uvm_sequence_base

Variable

parent

The sequence from which the operation originated.

prior

int

Variable

prior

The priority requested of this transfer, as defined by uvm_sequence_base::start_item.

extension

uvm_object

Variable

extension

Handle to optional user data, as conveyed in the call to write(), read(), mirror(), or update() used to trigger the operation.

bd_kind

string

Variable

bd_kind

If path is UVM_BACKDOOR, this member specifies the abstraction kind for the backdoor access, e.g. "RTL" or "GATES".

fname

string

Variable

fname

The file name from where this transaction originated, if provided at the call site.

lineno

int

Variable

lineno

The file name from where this transaction originated, if provided at the call site.

Constraints

Name

Description

max_values

TODO

parameterize

Constructors

new(string name = "")

Function

new

Create a new instance of this type, giving it the optional name .

Parameters:

name (string)

Functions

convert2string()

Function

convert2string

Returns a string showing the contents of this transaction.

do_copy(uvm_object rhs)

Function

do_copy

Copy the rhs object into this object. The rhs object must derive from uvm_reg_item.

Parameters:

rhs (uvm_object)