Get_write_data_phase(), Axi3 example – Altera Mentor Verification IP Altera Edition AMBA AXI3/4TM User Manual
Page 141

SystemVerilog AXI3 and AXI4 Monitor BFMs
get_write_data_phase()
Mentor VIP AE AXI3/4 User Guide, V10.2b
123
September 2013
get_write_data_phase()
This blocking task gets a write data phase previously created by the
function.The get_write_data_phase() sets the data_beat_done
array index element field to 1 when the phase completes. If this is the last phase (beat) of the
burst, then it returns the transaction last argument set to 1 to indicate the whole burst is
complete.
AXI3 Example
// Declare a local variable to hold the transaction record.
axi_transaction write_trans;
// Create a monitor transaction and assign it to the local
// write_trans variable.
write_trans = bfm.create_monitor_transaction();
....
// Get the write data phase for the first beat of the
// write_trans transaction.
bfm.get_write_data_phase(write_trans, 0, last);
// Get the write data phase for the second beat of the
// write_trans transaction.
bfm.get_write_data_phase(write_trans, 1, last);
Prototype
// * = axi | axi4
task automatic get_write_data_phase
(
*_transaction trans
,
int index = 0, // Optional
output bit last
);
Arguments
trans
The *_transaction record.
index
(Optional) Data phase (beat) number.
Returns
last
Flag to indicate that this data phase is the last in the burst.