Systemverilog monitor api, Example 5-3, Shows how to disable – Altera Mentor Verification IP Altera Edition AMBA AXI4-Stream User Manual

Page 59

Advertising
background image

SystemVerilog Monitor BFM

SystemVerilog Monitor API

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

59

April 2014

Example 5-3. Monitor BFM Individual Assertion Enable/Disable

// Define a local bit vector to hold the value of the assertion bit vector
bit [255:0] config_assert_bitvector;

// Get the current value of the assertion bit vector
config_assert_bitvector =
bfm.get_config(AXI4STREAM_CONFIG_ENABLE_ASSERTION);

// Assign the AXI4STREAM_TLAST_CHANGED_BEFORE_TREADY assertion bit to 0
config_assert_bitvector[AXI4STREAM_TLAST_CHANGED_BEFORE_TREADY] = 0;

// Set the new value of the assertion bit vector
bfm.set_config(AXI4STREAM_CONFIG_ENABLE_ASSERTION,
config_assert_bitvector);

Note

Do not confuse the AXI4STREAM_CONFIG_ENABLE_ASSERTION bit vector with
the AXI4STREAM_CONFIG_ENABLE_ALL_ASSERTIONS global enable/disable.

To re-enable the AXI4STREAM_TLAST_CHANGED_BEFORE_TREADY assertion, follow
the code sequence in

Example 5-3

and assign the assertion within the

AXI4STREAM_CONFIG_ENABLE_ASSERTION bit vector to 1.

For a complete listing of AXI4-Stream assertions, refer to

Assertions

” on page 205.

SystemVerilog Monitor API

This section describes the SystemVerilog monitor BFM API.

Each task and function available within the monitor BFM API is detailed with the exception of
the set*() and get*() tasks that operate on the

Transaction Record

. The simple rule for the task

name is set_ or get_ followed by the name of the transaction field to be accessed. Refer to

Transaction Record

” on page 23 for details of transaction field names

Note

The monitor BFM API is the axi4stream/bfm//mgc_axi4stream_monitor.sv file packaged
within the Mentor

Verification IP Altera Edition.

Advertising