Need to Use Variable in Assertions ## Delay

In reply to muneebullashariff:

In what scenarios do we need to use parameterized delays and when do we need to use this variable delay (workaround)?

  1. Parameterized delays or repeat operators are typically used when configurations or modes can change prior to a simulation run, but are stable (no change) during the simulation. Modes can be things like low/hi power mode (affects response times), Design A vs Design B (e.g., fast or slow multiplier or IP), interface spec changes (may affect when expected information is received).
  2. Dynamic variable that define delays, though not often used, can be used as a substitute for parameterized delays when within a simulation run one may want to test different configurations or modes. Another example may be when the testbench informs the test interface the length of a message; this is done as a setup prior to the transmission or receipt of the message. The assertion can then may use of the value of that variable to adjust for the verification process.

Ben Cohen
http://www.systemverilog.us/ ben@systemverilog.us