[source]

Class uvm_pkg::uvm_reg_adapter

uvm_pkg::uvm_reg_adapter + parent_sequence : uvm_sequence_base + provides_responses : bit + supports_byte_enable : bit + bus2reg(): void + get_item(): uvm_reg_item + m_set_item(): void + reg2bus(): uvm_sequence_item uvm_pkg::uvm_reg_tlm_adapter

Inheritance Diagram of uvm_reg_adapter

uvm_pkg::uvm_reg_adapter + parent_sequence : uvm_sequence_base + provides_responses : bit + supports_byte_enable : bit + bus2reg(): void + get_item(): uvm_reg_item + m_set_item(): void + reg2bus(): uvm_sequence_item uvm_pkg::uvm_sequence_base parent_sequence

Collaboration Diagram of uvm_reg_adapter

Class

uvm_reg_adapter

This class defines an interface for converting between uvm_reg_bus_op and a specific bus transaction.

Variables

Name

Type

Description

supports_byte_enable

bit

Variable

supports_byte_enable

Set this bit in extensions of this class if the bus protocol supports byte enables.

provides_responses

bit

Variable

provides_responses

Set this bit in extensions of this class if the bus driver provides separate response items.

parent_sequence

uvm_sequence_base

Variable

parent_sequence

Set this member in extensions of this class if the bus driver requires bus items be executed via a particular sequence base type. The sequence assigned to this member must implement do_clone().

Constructors

new(string name = "")

Function

new

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

Parameters:

name (string)

Functions

reg2bus(uvm_reg_bus_op rw)

Function

reg2bus

Extensions of this class must implement this method to convert the specified uvm_reg_bus_op to a corresponding uvm_sequence_item subtype that defines the bus transaction.

The method must allocate a new bus-specific uvm_sequence_item, assign its members from the corresponding members from the given generic rw bus operation, then return it.

Parameters:

rw (uvm_reg_bus_op)

Return type:

uvm_sequence_item

bus2reg(uvm_sequence_item bus_item, uvm_reg_bus_op rw)

Function

bus2reg

Extensions of this class must implement this method to copy members of the given bus-specific bus_item to corresponding members of the provided bus_rw instance. Unlike reg2bus, the resulting transaction is not allocated from scratch. This is to accommodate applications where the bus response must be returned in the original request.

Parameters:
get_item()

function

get_item

Returns the bus-independent read/write information that corresponds to the generic bus transaction currently translated to a bus-specific transaction. This function returns a value reference only when called in the uvm_reg_adapter::reg2bus() method. It returns null at all other times. The content of the return uvm_reg_item instance must not be modified and used strictly to obtain additional information about the operation.

Return type:

uvm_reg_item