A | |
auto_blocking_master | |
auto_put | |
auto_transport | |
B | |
build | |
C | |
can_get | |
can_peek | |
can_put | |
convert | |
E | |
end_of_elaboration | |
F | |
flush | |
G | |
get | |
get_next_item | |
get_requests | |
get_type_name | |
H | |
has_do_available | |
I | |
indicated | |
insert_vmm_phases | |
item_done | |
M | |
main | |
N | |
new | |
O | |
ovm_build | |
ovm_report | |
P | |
peek | |
put | |
put_response | |
put_responses | |
R | |
report | |
reset_dut | |
run | |
S | |
stop | |
T | |
transport | |
try_get | |
try_next_item | |
try_peek | |
try_put | |
V | |
vmm_cfg_dut | |
vmm_gen_cfg | |
vmm_report | |
vmm_reset_dut | |
W | |
wait_for_ended | |
wait_for_sequences | |
write |
Used by this adapter to send transactions to passive OVM consumers.
virtual task auto_blocking_master()
Used by this adapter to send transactions to passive OVM consumers.
virtual task auto_put()
Used by this adapter to send transactions to passive OVM consumers.
virtual task auto_transport()
Grabs any config settings for the number of transactions to generate and the particular extension of the transaction type to generate.
virtual function void build()
Called as part of a predefined test flow, this function will retrieve the configuration setting for the rsp_is_req that this component’s req_chan variable has been configured with a non-null
virtual function void build()
Calls the underlying VMM env’s build phase.
virtual function void build()
Called as part of a predefined test flow, this function will retrieve the configuration setting for the wait_for_req_ended flag.
virtual function void build()
Returns 1 if a transactions is available to get, 0 otherwise.
virtual function bit can_get()
Returns 1 if a response is available to get, 0 otherwise.
virtual function bit can_get()
Returns 1 if a transaction is available in the req_chan, 0 otherwise.
virtual function bit can_peek()
Returns 1 if a transaction is available in the rsp_chan, 0 otherwise.
virtual function bit can_peek()
Always returns 1 (true) because responses are sneaked into the channel.
virtual function bit can_put ()
Returns 1 if the req_chan can accept a new request.
virtual function bit can_put ()
Converts an OVM apb transaction to a VMM apb transaction, including the transaction/data and sequence/scenario ids.
static function vmm_apb_rw convert( ovm_apb_rw from, vmm_apb_rw to = null )
Normally implemented to convert IN transactions to OUT transactions, the convert function in this class does nothing.
static function OUT convert( IN in, OUT to = null )
Called as part of a predefined test flow, this function will check that this component’s req_chan variable has been configured with a non-null instance of a vmm_channel #(VMM).
virtual function void end_of_elaboration()
Called as part of a predefined test flow, this function will check that this component’s req_chan variable has been configured with a non-null instance of a vmm_channel #(VMM).
virtual function void end_of_elaboration()
This method resets the match and mismatch counts and flushes the internal transaction buffers.
virtual function void flush()
Gets and converts a request from the req_chan vmm_channel.
virtual task get( output OVM_REQ o_req )
Gets a response from the rsp_chan, converts, and returns in the o_rsp output argument.
virtual task get( output OVM_RSP o_rsp )
Peeks and converts a request from the req_chan vmm_channel.
virtual task get_next_item( output OVM_REQ t )
This task continually gets request transactions from the connected sequencer, converts them to an equivalent VMM transaction, and puts to the underlying req_chan vmm_channel.
virtual task get_requests()
Returns the type name, i.e.
virtual function string get_type_name()
Returns the type name, i.e.
virtual function string get_type_name()
Named for its association with OVM sequencer operation, this function will return 1 if there is a transaction available to get from the vmm_channel, req_chan.
virtual function bit has_do_available()
When the INCOMING notification is indicated, the incoming transaction is passed to this function for processing.
virtual function void indicated( vmm_data status )
Called back when the RECEIVED notification in the notify object is indicated, this method converts the VMM data given in the status argument to its OVM counterpart, then send it out the analysis_port to any connected subscribers.
virtual function void indicated( vmm_data status )
A static function that registers the vmm_gen_cfg phase callback with the OVM.
local static function bit insert_vmm_phases()
A non-blocking function indicating an OVM driver is done with the transaction retrieved with a get_next_item or get.
virtual function void item_done( OVM_RSP o_rsp = null )
A process that continually peeks transactions from in_chan, prints it, waits a bit, then pops it off the channel to unblock the producer.
virtual protected task main()
Creates a new instance of ovm_producer.
function new ( string name, ovm_component parent )
Creates a new instance of the apb_scoreboard.
function new( string name = "apb_scoreboard", ovm_component parent = null, vmm_channel_typed #(vmm_apb_rw) vmm_fifo = null, bit always_pull = 0 )
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.
function new ( string name, ovm_component parent = null, vmm_channel_typed #(VMM) chan = null )
Creates an instance of a avt_channel2tlm adaptor, with four optional arguments.
function new ( string name = "avt_channel2tlm", ovm_component parent = null, vmm_channel_typed #(VMM_REQ) req_chan = null, vmm_channel_typed #(VMM_RSP) rsp_chan = null, bit rsp_is_req = 1, int unsigned max_pending_req = 100 )
Creates a new notify-to-analysis adapter with the given name and optional parent; the notify and notification_id together specify the notification instance that this adapter will be sensitive to.
function new ( string name, ovm_component parent = null, vmm_notify notify = null, int notification_id = -1 )
Creates a VMM env container component with the given name and parent.
function new ( string name, ovm_component parent = null, ENV env = null )
Creates the vmm_env proxy class with the given name, parent, and optional vmm_env handle.
function new ( string name, ovm_component parent = null, vmm_env env = null )
Creates a VMM env container component with the given name and parent.
function new ( string name, ovm_component parent = null, ENV env = null )
Creates a new avt_tlm2channel adapter given four optional arguments.
function new ( string name = "avt_tlm2channel", ovm_component parent = null, vmm_channel_typed #(VMM_REQ) req_chan = null, vmm_channel_typed #(VMM_RSP) rsp_chan = null, bit wait_for_req_ended = 0 )
Creates a new instance of an avt_vmm_ovm_env.
function new( string name = "Verif Env" `VMM_ENV_BASE_NEW_EXTERN_ARGS )
Calls into the OVM’s phasing mechanism to complete OVM’s build, connect, and any other user-defined phases up to end_of_elaboration.
virtual function void ovm_build()
Calls into the OVM’s phasing mechanism to complete OVM’s extract, check, and report phases.
virtual task ovm_report()
Peeks (does not consume) and converts a request from the req_chan vmm_channel.
virtual task peek( output OVM_REQ o_req )
Peeks (does not consume) and converts a response from the rsp_chan.
virtual task peek( output OVM_RSP o_rsp )
Called via the blocking_put_port or run process, this process “executes” the transaction by printing a message and waiting a bit of time.
task put ( T tr )
Converts and sneaks a response to the rsp_chan vmm_channel, if defined.
virtual task put ( OVM_RSP o_rsp )
Converts an OVM request to a VMM request and puts it into the req_chan vmm_channel.
virtual task put ( OVM_REQ o_req )
A non-blocking version of put, this function converts and sneaks the given response into the rsp_chan vmm_channel.
virtual function void put_response ( OVM_RSP o_rsp )
This task handles getting responses from the rsp_chan vmm_channel and putting them to the appropriate OVM response port.
virtual task put_responses()
Reports the number of matches and mismatches seen.
virtual function void report()
Calls into the OVM’s phasing mechanism to execute user-defined OVM phases inserted after report_ph, if any.
virtual task report()
Syncs the start of VMM reset_dut with the start of OVM run phase, then forks OVM run phase to run in parallel with reset_dut, config_dut, start, and wait_for_end.
virtual task reset_dut()
If the blocking_get_port is connected, a the run task will continually get from the port and put the transaction for immediate execution.
task run()
Continually fetches OVM-VMM transaction pairs and compares them.
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.
virtual task run()
Called as part of a predefined test flow, the run task forks a process for getting requests from the request channel and sending them to the OVM consumer connection via the blocking put port.
virtual task run()
Calls the underlying VMM env’s reset_dut, cfg_dut, start, and wait_for_end phases, returning when the env’s end-of-test condition has been reached.
virtual task run()
Called as part of a predefined test flow, the run task forks a process for getting requests from the seq_item_port and sending them to the req_chan vmm_channel.
virtual task run()
If the run phase is being stopped, this task waits for the underlying env’s wait_for_end phase to return, then calls the VMM env’s stop and cleanup tasks.
virtual task stop( string ph_name )
Requests the OVM run phase to stop if it is still running, then waits for the OVM run phase to finish.
virtual task stop()
Blocking transport is used to atomically execute the geiven request transaction, req, and return the response in rsp.
task transport ( OVM_REQ o_req, output OVM_RSP o_rsp )
If a transactions is available to get, returns the transaction in the o_req output argument, else returns 0.
virtual function bit try_get( output OVM_REQ o_req )
If a response is available in the rsp_chan, gets and returns the response in the o_rsp output argument and returns 1.
virtual function bit try_get( output OVM_RSP o_rsp )
Waits a number of delta cycles waiting for a request transaction to arrive in the req_chan vmm_channel.
virtual task try_next_item ( output OVM_REQ t )
If a request is available to peek from the req_chan, this function peeks (does not consume) the transaction from the channel, converts, and returns via the o_req output argument.
virtual function bit try_peek( output OVM_REQ o_req )
If a response is available to peek from the rsp_chan, this function peeks (does not consume) the transaction from the channel, converts, and returns via the o_req output argument.
virtual function bit try_peek( output OVM_RSP o_rsp )
Sneak the given response to the response channel, or copy the response to the corresponding request if rsp_is_req is set.
virtual function bit try_put ( OVM_RSP o_rsp )
If the req_chan can accept new requests, converts o_req to its VMM equivalent, injects it into the channel, and returns 1.
virtual function bit try_put ( OVM_REQ o_req )
Calls the underlying VMM env’s cfg_dut phase, provided this phase was enabled in the new constructor.
virtual task vmm_cfg_dut()
Calls the underlying VMM env’s gen_cfg phase.
virtual function void vmm_gen_cfg()
Calls the underlying VMM env’s report method, then stops the reportvmm phase.
virtual task vmm_report()
Calls the underlying VMM env’s reset_dut phase, provided this phase was enabled in the new constructor.
virtual task vmm_reset_dut()
Used to support VMM non-blocking completion models that indicate and return response status via each transaction’s ENDED notification.
virtual task wait_for_ended( VMM_REQ v_req )
Used in the try_next_item method, this method waits a variable number of #0 delays.
virtual task wait_for_sequences()
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.
function void write( OVM ovm_t )
The write method, called via the analysis_export, converts an incoming OVM transaction to its VMM counterpart, then indicates the configured RECEIVE notification, passing the converted data as status.
virtual function void write( OVM t )
Used by active OVM consumers to send back responses.
virtual function void write( OVM_RSP o_rsp )