V
valtih1978
Guest
In the
http://rti.etf.bg.ac.rs/rti/ri5rvl/tutorial/TUTORIAL/IEEE/HTML/1076_12.HTM#12.6.3
I read
<blockquote>
For any implicit signal S'Stable(T), the current value of the signal
(and likewise the current state of the corresponding driver) is modified
if and only if one of the following statements is true:
-- An event has occurred on S in this simulation cycle.
-- The driver of S'Stable(T) is active.
If an event has occurred on signal S, then S'Stable(T) is updated by
assigning the value FALSE to the variable representing the current value
of S'Stable(T), and the driver of S'Stable(T) is assigned the waveform
TRUE after T. Otherwise, if the driver of S'Stable(T) is active, then
S'Stable(T) is updated by assigning the current value of the driver to
the variable representing the current value of S'Stable(T). Otherwise,
neither the variable nor the driver is modified. </blockquote>
Suppose I have activity at S at 0 an 0.5 ns. The first activity makes
S'Stable(1) FALSE in (0, 1 ns) and TRUE after 1 ns on. Second activity
comes at 0.5 ns. I expect that S'Stable will be FALSE up to 1.5 ns.
However, there is S'Stable=>TRUE schedule at 1.0 ns. I do not see
anything in the LRM (or it was a Tutorial?) than cleans up this
schedule. So, when I am 1 ns since start, S'Stable(1 ns) will report
TRUE, despite event half second before.
http://rti.etf.bg.ac.rs/rti/ri5rvl/tutorial/TUTORIAL/IEEE/HTML/1076_12.HTM#12.6.3
I read
<blockquote>
For any implicit signal S'Stable(T), the current value of the signal
(and likewise the current state of the corresponding driver) is modified
if and only if one of the following statements is true:
-- An event has occurred on S in this simulation cycle.
-- The driver of S'Stable(T) is active.
If an event has occurred on signal S, then S'Stable(T) is updated by
assigning the value FALSE to the variable representing the current value
of S'Stable(T), and the driver of S'Stable(T) is assigned the waveform
TRUE after T. Otherwise, if the driver of S'Stable(T) is active, then
S'Stable(T) is updated by assigning the current value of the driver to
the variable representing the current value of S'Stable(T). Otherwise,
neither the variable nor the driver is modified. </blockquote>
Suppose I have activity at S at 0 an 0.5 ns. The first activity makes
S'Stable(1) FALSE in (0, 1 ns) and TRUE after 1 ns on. Second activity
comes at 0.5 ns. I expect that S'Stable will be FALSE up to 1.5 ns.
However, there is S'Stable=>TRUE schedule at 1.0 ns. I do not see
anything in the LRM (or it was a Tutorial?) than cleans up this
schedule. So, when I am 1 ns since start, S'Stable(1 ns) will report
TRUE, despite event half second before.