property = MaxRising(condition=..., check=..., nRisingMax=1).y;
In every duration where the Boolean input condition is true, the number of rising edges of the Boolean input check is not allowed to exceed parameter nRisingMax. The default for nRisingMax=1 (so at most one rising edge). Property output y is initialized to Undecided if condition=false, and is initialized to Satisfied if condition=true. When condition becomes true (so entering a duration), property output y = Satisfied, as long as the number of rising edges ≤ nRisingMax. If condition is true and the number of rising edges > nRisingMax, output y = Violated. If condition is false, output y = Undecided.
Violated, Undecided, and Satisfied are elements of enumeration Property.
This block is demonstrated with the following example:
results in
simulation result |