
VHDL AXI3 and AXI4 Monitor BFMs
VHDL Monitor API
Mentor VIP AE AXI3/4 User Guide, V10.2b
491
September 2013
AXI4 Assertion Configuration
By default, all built-in assertions are enabled in the monitor BFM. To globally disable them in
the monitor BFM, use the set_config() command as the following example illustrates:
set_config(AXI4_CONFIG_ENABLE_ALL_ASSERTIONS,0,bfm_index,
axi4_tr_if_0(bfm_index));
Alternatively, you a disable individual built-in assertions by using a sequence of get_config()
and set_config() commands on the respective assertion. For example, to disable assertion
checking for the AWLOCK signal changing between the AWVALID and AWREADY handshake
signals, use the following sequence of commands:
-- Define a local bit vector to hold the value of the assertion bit vector
variable config_assert_bitvector : std_logic_vector(AXI4_MAX_BIT_SIZE-1
downto 0);
-- Get the current value of the assertion bit vector
get_config(AXI4_CONFIG_ENABLE_ASSERTION, config_assert_bitvector,
bfm_index, axi4_tr_if_0(bfm_index));
-- Assign the AXI4_LOCK_CHANGED_BEFORE_AWREADY assertion bit to 0
config_assert_bitvector(AXI4_LOCK_CHANGED_BEFORE_AWREADY) := ‘0’;
-- Set the new value of the assertion bit vector
set_config(AXI4_CONFIG_ENABLE_ASSERTION, config_assert_bitvector,
bfm_index, axi4_tr_if_0(bfm_index));
Do not confuse the AXI4_CONFIG_ENABLE_ASSERTION bit vector with the
AXI4_CONFIG_ENABLE_ALL_ASSERTIONS global enable/disable.
To re-enable the AXI4_LOCK_CHANGED_BEFORE_AWREADY assertion, following the
above code sequence, assign the assertion in the AXI4_CONFIG_ENABLE_ASSERTION bit
vector to 1.
For a complete listing of assertions, refer to “AXI4 Assertions” on page 678.
VHDL Monitor API
This section describes the VHDL Monitor API.
Comentários a estes Manuais