Axi4 assertion configuration – Altera Mentor Verification IP Altera Edition AMBA AXI3/4TM User Manual
Page 226

Mentor VIP AE AXI3/4 User Guide, V10.2b
208
VHDL AXI3 and AXI4 Master BFMs
Master Assertions
September 2013
-- Get the current value of the assertion bit vector
get_config(AXI_CONFIG_ENABLE_ASSERTION, config_assert_bitvector,
bfm_index, axi_tr_if_0(bfm_index));
-- Assign the AXI_LOCK_CHANGED_BEFORE_AWREADY assertion bit to 0
config_assert_bitvector(AXI_LOCK_CHANGED_BEFORE_AWREADY) := ‘0’;
-- Set the new value of the assertion bit vector
set_config(AXI_CONFIG_ENABLE_ASSERTION, config_assert_bitvector,
bfm_index, axi_tr_if_0(bfm_index));
Note
Do not confuse the AXI_CONFIG_ENABLE_ASSERTION bit vector with the
AXI_CONFIG_ENABLE_ALL_ASSERTIONS global enable/disable.
To re-enable the AXI_LOCK_CHANGED_BEFORE_AWREADY assertion, follow the above
code sequence and assign the assertion in the AXI_CONFIG_ENABLE_ASSERTION bit vector
to 1.
For a complete listing of assertions, refer to
AXI4 Assertion Configuration
By default all built-in assertions are enabled in the master BFM. To globally disable them in the
master BFM, use the
command as the following example illustrates.
set_config(AXI4_CONFIG_ENABLE_ALL_ASSERTIONS,0,bfm_index,
axi4_tr_if_0(bfm_index));
Alternatively, you can disable individual built-in assertions by using a sequence of
and
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));