[sv-ac] Samppled value functions

From: Korchemny, Dmitry <dmitry.korchemny_at_.....>
Date: Tue May 29 2007 - 04:42:24 PDT
Hi all,

 

There is some inconsistency between the LRM body and the formal
semantics. According to LRM (clause 16.8.3):

 

A value change function detects the change in the sampled value of an
expression. The clocking event is

used to obtain the sampled value of the argument expression at a clock
tick prior to the current simulation

time unit. Here, the current simulation time unit refers to the
simulation time unit in which the function is

evaluated. This sampled value is compared against the value of the
expression determined at the Preponed

time of the current simulation time unit. The result of a value change
expression is true or false and can be

used as a boolean expression.

- $rose returns true if the LSB of the expression changed to 1.
Otherwise, it returns false.

- $fell returns true if the LSB of the expression changed to 0.
Otherwise, it returns false.

- $stable returns true if the value of the expression did not change.
Otherwise, it returns false.

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.

 

while according to the formal semantics (annex F.4), all these functions
return false when called before the first tick of the clocking event.

 

Thanks,

Dmitry


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Tue May 29 04:42:59 2007

This archive was generated by hypermail 2.1.8 : Tue May 29 2007 - 04:43:58 PDT