Ensures that the value of a specified expression is TRUE in a specified window between a start event and an end event.
assert_window
[#(severity_level, property_type, msg, coverage_level )]
instance_name (clk, reset_n, start_event, test_expr, end_event );
The assert_window
assertion checker checks the expression start_event at each rising edge of clk to determine if it should open an event window at the start of the next cycle. If start_event is sampled TRUE, at each subsequent rising edge of clk, the checker evaluates end_event and test_expr. If a sampled value of test_expr is not TRUE, then the assertion fails. If end_event is TRUE, the checker closes the event window and returns to the state of monitoring start_event at the next rising edge of clk.
The checker is useful for ensuring proper changes in structures after various events. For example, it can be used to check that multiple-cycle operations with enabling conditions function properly with the same data. It can be used to check that single-cycle operations function correctly with data loaded at different cycles. It also can be used to verify synchronizing conditions that require date to be stable after an initial triggering event.
|
window_open
|
A change check was initiated.
|
|
window_close
|
A change check lasted the full num_cks cycles.
|
assert_change, assert_time, assert_unchange, assert_win_change, assert_win_unchange
Ensures that the bus grant is not deasserted during a write cycle.
© Accellera Organization, Inc. 2005 All Rights Reserved. |
Standard OVL V1.1a |