Axi4-stream transactions, Master bfm and slave bfm roles, Figure 1-1. master bfm test program role – Altera Mentor Verification IP Altera Edition AMBA AXI4-Stream User Manual
Page 19

Mentor VIP Altera Edition
AXI4-Stream Transactions
Mentor Verification IP AE AMBA AXI4-Stream User Guide, V10.3
19
April 2014
AXI4-Stream Transactions
A complete transaction communicates information between a master and a slave. Transaction
fields, described in the previous section,
, determine what is transferred
and how information is transferred. During the lifetime of a transaction, the roles of the master
and slave ensure that a transaction completes successfully, and that transferred information
adheres to the protocol specification. Information flows from the master to the slave during a
transaction, with the master initiating the transaction.
The AXI4-Stream protocol has a single channel to transfer protocol information. It has a pair of
handshake signals, TVALID and TREADY, that indicate valid information on the channel, and
the acceptance of the information from the channel.
Master BFM and Slave BFM Roles
Note
The following description of a master transaction references SystemVerilog BFM API
tasks. There are equivalent VHDL BFM API procedures that perform the same
functionality.
For a master transaction, the master calls the
task to define the
information to be transferred, and then calls the
task to initiate the
communication of information, as shown in
.
Figure 1-1. Master BFM Test Program Role
task results in the master calling the
task a
multiple number of times, equal to the number of transfers in the transaction.
The slave also creates a transaction by calling the
task to accept the
transfer of information from the master. The transfer is received by the slave calling the
execute_transaction(t) – Master
execute_transfer() – Master
Master BFM
+
Test program
Slave DUT
Transfer Transfer
Transfer
Transfer