
SystemVerilog AXI3 and AXI4 Master BFMs
execute_write_data_burst()
Mentor VIP AE AXI3/4 User Guide, V10.2b
53
September 2013
execute_write_data_burst()
This task executes a write data burst previously created by the create_write_transaction() task.
This burst can be blocking (default) or nonblocking, defined by the transaction operation_mode
field.
If the transaction gen_write_strobes field is set, this task automatically corrects any previously
set write_strobes field array elements. If the gen_write_strobes field is not set then any
previously assigned write_strobes field array elements will be passed through onto the WSTRB
protocol signals, which can result in a protocol violation if the WSTRB signals are not correctly
set. Refer to “Automatic Correction of Byte Lane Strobes” on page 197 for more details.
It calls the execute_write_data_phase() task for each beat of the data burst, with the length of
the burst defined by the transaction burst_length field.
AXI3 Example
// Declare a local variable to hold the transaction record.
axi_transaction write_trans;
// Create a write transaction with start address of 0 and assign
// it to the local write_trans variable.
write_trans = bfm.create_write_transaction(0);
....
// Execute the write_trans transaction.
bfm.execute_write_data_burst(write_trans);
AXI4 Example
// Declare a local variable to hold the transaction record.
axi4_transaction write_trans;
// Create a write transaction with start address of 0 and assign
// it to the local write_trans variable.
write_trans = bfm.create_write_transaction(0);
....
// Execute the write_trans transaction.
bfm.execute_write_data_burst(write_trans);
Prototype
// * = axi | axi4
task automatic execute_write_data_burst
(
*_transaction trans
);
Arguments trans
The *_transaction record.
Returns
None
Comentarios a estos manuales