Execute_transfer(), Example, Procedure for each transfer within – Altera Mentor Verification IP Altera Edition AMBA AXI4-Stream User Manual

Page 117

Advertising
background image

VHDL Master BFM

execute_transfer()

Mentor Verification IP AE AMBA AXI4-Stream User Guide, V10.3

117

April 2014

execute_transfer()

This procedure executes a master transfer that is uniquely identified by the transaction_id
argument previously created by the

create_master_transaction()

procedure. This transfer may

be blocking (default) or nonblocking, as defined by the transaction operation_mode field.

It sets the TVALID protocol signal at the appropriate time defined by the transaction
valid_delay field and sets the transfer_done array index element field to 1 when the transfer is
complete.

If this is the last transfer of the transaction, then it sets the transaction_done field to 1 and
returns the last argument set to 1 to indicate the whole transaction is complete.

Example

-- Create a master transaction containing 3 transfers
-- Creation returns tr_id to identify the transaction.
create_master_transaction(3, tr_id, bfm_index,
axi4stream_tr_if_0(bfm_index));

....

-- Execute the first transfer of the packet for the
-- tr_id transaction.
execute_transfer(tr_id, 0, bfm_index, axi4stream_tr_if_0(bfm_index));

-- Execute the second transfer of the packet for the
-- tr_id transaction.
execute_transfer(tr_id, 1, bfm_index, axi4stream_tr_if_0(bfm_index));

Prototype

procedure execute_transfer
(

transaction_id : in integer;
index : in integer; --optional
bfm_id : in integer;
signal tr_if : inout axi4stream_vhd_if_struct_t

);

Arguments

transaction_id

Transaction identifier. Refer to

Overloaded Procedure Common

Arguments

” on page 87 for more details.

index

(Optional) Data phase (beat) number.

bfm_id

BFM identifier. Refer to

Overloaded Procedure Common Arguments

on page 87 for more details.

tr_if

Transaction signal interface. Refer to

Overloaded Procedure Common

Arguments

” on page 87 for more details.

Returns

None

Advertising