HOME
UP
  PREV
NEXT (ABD - PSL Four-Level Syntax Structure)
PSL Assertion, General Structure
The general structure of a PSL assertion has the following parts:
- A name or label that can be used for diagnostic output.
- A verification directive, such as assert.
- When to check, such as always or eventually!.
- The property to be checked: a state expression or a temporal logic expression.
- A qualifying guard, such as a clock edge or enable signal at which time we expect
the assertion to hold.
- always a; // Predicate a holds all the time.
- never a; // The same as always not(a);
- eventually! a; // Predicate a will hold at some point in the future
- next a ; // Predicate a will hold in the next clock cycle (or other interval as qualified by the guard).
The always operator is the most frequently used one and it
specifies that the following property expression should hold at all (qualified) times.
The 'assert' keyword can be replaced with 'cover' and instead of errors being reported statistics on hold and fail are accumulated.