uvm_reg_indirect_data

Indirect data access abstraction class

Models the behavior of a register used to indirectly access a register array, indexed by a second address register.

This class should not be instantiated directly.  A type-specific class extension should be used to provide a factory-enabled constructor and specify the n_bits and coverage models.

Summary
uvm_reg_indirect_data
Indirect data access abstraction class
Class Hierarchy
uvm_reg_indirect_data
Class Declaration
class uvm_reg_indirect_data extends uvm_reg
Methods
newCreate an instance of this class
configureConfigure the indirect data register.

new

function new( string  name  =  "uvm_reg_indirect",
int  unsigned  n_bits,   
int  has_cover    )

Create an instance of this class

Should not be called directly, other than via super.new().  The value of n_bits must match the number of bits in the indirect register array.

configure

function void configure ( uvm_reg  idx,   
uvm_reg  reg_a[],   
uvm_reg_block  blk_parent,   
uvm_reg_file  regfile_parent  =  null )

Configure the indirect data register.

The idx register specifies the index, in the reg_a register array, of the register to access.  The idx must be written to first.  A read or write operation to this register will subsequently read or write the indexed register in the register array.

The number of bits in each register in the register array must be equal to n_bits of this register.

See uvm_reg::configure() for the remaining arguments.

The uvm_void class is the base class for all UVM classes.
virtual class uvm_object extends uvm_void
The uvm_object class is the base class for all UVM data and hierarchical classes.
virtual class uvm_reg extends uvm_object
Register abstraction base class
class uvm_reg_indirect_data extends uvm_reg
Indirect data access abstraction class
function new( string  name  =  "uvm_reg_indirect",
int  unsigned  n_bits,   
int  has_cover    )
Create an instance of this class
function void configure ( uvm_reg  idx,   
uvm_reg  reg_a[],   
uvm_reg_block  blk_parent,   
uvm_reg_file  regfile_parent  =  null )
Configure the indirect data register.
function void configure ( uvm_reg_block  blk_parent,   
uvm_reg_file  regfile_parent  =  null,
string  hdl_path  =  "" )
Instance-specific configuration