property = MinRising(condition=..., check=..., nRisingMin=1).y;
In every duration where the Boolean input condition is true, a minimum number of nRisingMin edges of the Boolean input check must occur. The default for nRisingMin=1 (so at least one rising edge). Property output y is initialized to Undecided. When condition becomes true (so entering a duration), property output y = Undecided, as long as the number of rising edges < nRisingMin. If condition is true and the number of rising edges ≥ nRisingMin, output y = Satisfied. If at the end of a true condition phase the number of rising edges in this phase < nRisingMin, y = Violated.
Violated, Undecided, and Satisfied are elements of enumeration Property.
This block is demonstrated with the following example:
results in
simulation result |