Section 17.7.3, page 246 (IEEE Std 1800™-2005)
Replace
The use of these functions is
not limited to assertion features; they can be used as expressions in
procedural
code as
well. The clocking event, although optional as an explicit argument to the functions,
is required for
their semantics. The clocking
event is used to sample the value of the argument expression.
With
The use of these functions is
not limited to assertion features; they can be used as expressions in
procedural code as well. The clocking event, although optional as an explicit
argument to the functions $past, $rose, $stable and
$fell, is required for their semantics. The clocking event is used to
sample the value of the argument expression.
The
function $sampled does not use a clocking event, although one can be optionally
provided. The optional clocking event is ignored, and its use is deprecated.
The value of $sampled is updated in the preponed scheduling region.
Replace
Function $sampled returns the sampled value of the expression with respect to
the last occurrence of the clocking event. When $sampled is invoked prior to the occurrence of the first clocking
event, the value of X is returned. The use of $sampled in assertions, although allowed, is redundant, as the result
of the function is identical to the sampled value of the expression itself used
in the assertion.
With
The $sampled function returns the value of the expression sampled in the
preponed region of the simulation time step in which the function is called. No
clocking event is ever inferred. The value is stable throughout the simulation
step.
When $sampled is invoked prior to the occurrence of the first clocking event, the
value of X is returned. The sampled value in the preponed region at time 0 of an expression
is the value assigned in the declaration of the variable if the expression is a
variable or in the absence of such an assignment it is the default value of the
type. For example, if $sampled(y) is called at time 0, and y is of type logic, the value returned is X.
The use of $sampled in assertions, although allowed, is redundant, as the result
of the function is identical to the sampled value of the expression itself used
in the assertion.
Page
247
Replace
When these
functions are called at or before the first clock tick of the clocking event,
the results are computed by comparing the current sampled value of the expression
to X.
With
When these functions are called
at or before the first clock tick of the clocking event, the results are
computed by comparing the current sampled value of the expression to X the value assigned in the declaration of the variable
if the argument is a variable or in the absence of such an assignment it is the
default value of the type of the argument expression.
Page
248
Replace
A clock
tick is based on clocking_event. If the specified clock tick in the past is
before the start of simulation, the returned value from the $past function is a value of X.
With
A clock tick
is based on clocking_event. If the specified clock tick in the past is before
the start of simulation, the returned value from the $past function is a value of X the value assigned
in the declaration of the variable if the argument is a variable or in the
absence of such an assignment it is the default value of the type of the
argument expression.