axi4stream_mst_driver

AXI4STREAM Master Driver Object. The driver receives transactions from the user environment and drives stream interface. It returns a completed transaction when the transaction is accepted when the transaction's driver_return_item_policy is set to XIL_AXI4STREAM_AT_ACCEPT_RETURN.

Information
class member

axi4stream_vif_proxy `XIL_AXI4STREAM_PARAM_ORDER vif_proxy; AXI4STREAM VIF Proxy Class.

xil_seq_item_pull_port #(axi4stream_transaction,axi4stream_transaction) seq_item_port; provides method to send transaction to axi4stream_mst_driver.

Functions
new

function new( |
input | string | name | = | "unnamed_axi4stream_mst_driver"
| );

Constructor to create a new axi4stream master driver

set_vif

function void set_vif( |
axi4stream_vif_proxy ` | XIL_AXI4STREAM_PARAM_ORDER | vif
| );

Assigns the virtual interface of the driver.

set_forward_progress_timeout_value

function void set_forward_progress_timeout_value( |
input | xil_axi4stream_uint | value
| );

Sets the number of cycles that the driver will wait until it will flag a watch dog error. Setting this to a very large value will cause a hung simulation to continue for a longer time. Setting this to a very small number may not allow the slave to respond.

get_forward_progress_timeout_value
function xil_axi4stream_uint get_forward_progress_timeout_value();

Returns the current value of the forward_progress_timeout_value.

is_driver_idle
function xil_axi4stream_boolean_t is_driver_idle();

When the driver is actively processing a transaction this function will return FALSE.

run_phase
task run_phase();

Start control processes for operation

stop_phase
virtual task stop_phase();

Stops all control processes.

send

task send( |
input | axi4stream_transaction | t
| );

Send axi4stream transaction object to the driver

create_transaction

virtual function axi4stream_transaction create_transaction ( |
string | name | = | "unnamed_transaction"
| );

Returns an axi4stream transaction that has been "newed"