[source]

Class 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

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

Kind of element being accessed

REG, MEM, or FIELD. See uvm_elem_kind_e.

element

uvm_object

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

Kind of access

READ or WRITE.

value

uvm_reg_data_t

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

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

status

uvm_status_e

The result of the transaction

IS_OK, HAS_X, or ERROR.

See uvm_status_e.

local_map

uvm_reg_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

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

The path being used

<UVM_FRONTDOOR> or <UVM_BACKDOOR>.

parent

uvm_sequence_base

The sequence from which the operation originated.

prior

int

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

extension

uvm_object

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

bd_kind

string

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

fname

string

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

lineno

int

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

Constraints

Name

Description

max_values

TODO

parameterize

Constructors

function new ( string name ) [source]

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

Functions

virtual function string convert2string ( ) [source]

Returns a string showing the contents of this transaction.

virtual function void do_copy ( uvm_object rhs ) [source]

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