[sv-ac] SV-AC #1550 - $sampled

From: Eduard Cerny <Eduard.Cerny_at_.....>
Date: Fri Dec 15 2006 - 14:14:38 PST
Hello,

I have not yet split the item into two, as agreed upon during the last
meeting. The reason is that I think that the proposal $past can be
changed so that we could resolve it all under 1550. I added the proposal
for $past in yet another bug note. It contains the following text:

---
The problem with the proposal in the preceding bug note was that if a
task contained a reference to $past and it was called from both active
and reactive region, the implementation was not unique. I think that
this can be corrected as follows:

Regardless where $past(x,,,@clk) is called from, the RTL equivalent is

always @clk past_variable <= $sampled(x);

and executes in the active region.

If $past is called from active, reactive or observed regions, replace
the call by $sampled(past_variable).

In synthesized code which would always execute in the active region,
just remove $sampled from any of the calls. Provided that the model
follows synthesis rules and is not racy, the behavior should be
equivalent to that in the original model using $past. 
---

If you do not see a problem with this kind of formulation, I would work
it into the official proposal.

Best regards,
ed
Received on Fri Dec 15 14:14:45 2006

This archive was generated by hypermail 2.1.8 : Fri Dec 15 2006 - 14:15:05 PST