avt_analysis_channel

The avt_analysis_channel is used to connect any OVM component with an analysis port or export to any VMM component via a vmm_channel.

The adapter operates in two different modes.

OVM analysis port to VMM channelConnect any OVM component with an analysis port to this adapter’s analysis_export.  The adapter will convert all incoming OVM transactions to a VMM transaction and put it to the vmm_channel.
VMM channel to OVM analysis exportConnect the adapter’s analysis_port to one or more OVM components with an analysis export.  The adapter will get any transaction put into the vmm_channel, convert them to an OVM transaction, and broadcast it out the analysis port.

Users should connect either the analysis_export or analysis_port, not both.

See also the avt_analysis_channel example.

Summary
avt_analysis_channel
The avt_analysis_channel is used to connect any OVM component with an analysis port or export to any VMM component via a vmm_channel.
Class Hierarchy
ovm_component
avt_analysis_channel
Class Declaration
class avt_analysis_channel #(
   type OVM = int,
    VMM = int,
    OVM2VMM = avt_converter #(OVM,VMM),
    VMM2OVM = avt_converter #(VMM,OVM)
) extends ovm_component
Ports
analysis_exportThe adapter may receive OVM transactions via this analysis export.
analysis_portVMM transactions received from the channel are converted to OVM transactions and broadcast out this analysis port.
Methods
newCreates a new avt_analysis_channel with the given name and optional parent; the optional chan argument provides the handle to the vmm_channel being adapted.
runIf the analysis_port is connected, the run task will continually get VMM transactions from the vmm_channel and end the converted transactions out the analysis_port.
writeThe write method, called via the analysis_export, converts an incoming OVM transaction to its VMM counterpart, then sneaks the converted transaction to the vmm_channel.
Variables
chanThe vmm_channel instance being adapted; if not supplied in its new constructor, the adapter will create one.

analysis_export

The adapter may receive OVM transactions via this analysis export.  The

analysis_port

VMM transactions received from the channel are converted to OVM transactions and broadcast out this analysis port.

new

function new (string name,  
ovm_component parent = null,
vmm_channel_typed #(VMM) chan = null)

Creates a new avt_analysis_channel with the given name and optional parent; the optional chan argument provides the handle to the vmm_channel being adapted.  If no channel is given, the adapter will create one.

run

virtual task run()

If the analysis_port is connected, the run task will continually get VMM transactions from the vmm_channel and end the converted transactions out the analysis_port.

write

function void write(OVM ovm_t)

The write method, called via the analysis_export, converts an incoming OVM transaction to its VMM counterpart, then sneaks the converted transaction to the vmm_channel.

chan

vmm_channel_typed #(VMM) chan

The vmm_channel instance being adapted; if not supplied in its new constructor, the adapter will create one.

Incoming transactions from the analysis_export will be converted to VMM and put to this channel.

If the analysis_port is connected, transaction injected into the channel are fetched, converted, and sent out the analysis_port.

class avt_analysis_channel #(type OVM = int,
 VMM = int,
 OVM2VMM = avt_converter #(OVM,VMM),
 VMM2OVM = avt_converter #(VMM,OVM)) extends ovm_component
The avt_analysis_channel is used to connect any OVM component with an analysis port or export to any VMM component via a vmm_channel.
function new (string name,  
ovm_component parent = null,
vmm_channel_typed #(VMM) chan = null)
Creates a new avt_analysis_channel with the given name and optional parent; the optional chan argument provides the handle to the vmm_channel being adapted.
virtual task run()
If the analysis_port is connected, the run task will continually get VMM transactions from the vmm_channel and end the converted transactions out the analysis_port.
VMM transactions received from the channel are converted to OVM transactions and broadcast out this analysis port.
function void write(OVM ovm_t)
The write method, called via the analysis_export, converts an incoming OVM transaction to its VMM counterpart, then sneaks the converted transaction to the vmm_channel.
The adapter may receive OVM transactions via this analysis export.
vmm_channel_typed #(VMM) chan
The vmm_channel instance being adapted; if not supplied in its new constructor, the adapter will create one.
This example shows how to use the vmm_analysis_adapter to connect VMM xactors to OVM components with analysis ports and exports.