User guide

14-16
Negative Timing Checks
? ? ? * : ? : x ;
endtable
endprimitive
In this example, if you include the +neg_tchk compile-time option,
the $width timing check uses the delayed version of signal clk,
named d_clk, and the following sequence of events occurs:
1. At time 311 the delayed version of the clock transitions to 1,
causing output q to toggle to 1.
2. At time 312 the narrow pulse on the clock causes a width violation:
"test1.v", 31: Timing violation in top.dff1
$width( posedge clk:300, : 301, limit: 5);
The timing violation message looks like it occurs at time 301 but
you do not see it until time 312.
3. Also at time 312, reg notif toggles from X to 1. This changes
output q from 1 to X. There are no subsequent changes on output
q.
Figure 14-2 Other Timing Checks Using the Delayed Versions