Hi Dimitry, I would like to discuss this issue in today's meeting. Please include it in the agenda. Thanks. Manisha From: owner-sv-ac@server.eda.org [mailto:owner-sv-ac@server.eda.org] On Behalf Of Kulshrestha, Manisha Sent: Thursday, May 29, 2008 12:06 AM To: sv-ac@server.eda.org Subject: [sv-ac] question about using sampled value functions in async aborts Hi, Here is an example from the LRM (D4) where $rose is being used in the expression in disable iff. Suppose a is true all the time. As per mantis 1698 and some other new mantis items related to sampled value functions, the value of $rose will become true one simulation tick after b changes (if b becomes 1 and $past on b was 0). Since simulation tick is going to be a very low number and may depend on simulation resolution, this property may abort at different times in different simulators. Does that sound reasonable ? assert property ( @(posedge clk) disable iff (a && $rose(b, @(posedge clk))) trigger |=> test_expr ); A similar thing will happen with accept_on and reject_on as they use sampled value of the expression. Somehow usage of sampled values in asynchronous aborts seems little bit odd. Suppose reset signal goes high at clock edge, it will not have any impact on the property evaluation till the next simulation tick. It may depend on the simulator's resolution, when a property passes or fails. I remember we wanted to avoid glitches so we introduced sampled values in accept_on and reject_on. But I have some concerns about the side effect of that. What do you guys think ? Thanks. Manisha -- This message has been scanned for viruses and dangerous content by MailScanner <http://www.mailscanner.info/> , and is believed to be clean. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Sun Jun 29 21:56:10 2008
This archive was generated by hypermail 2.1.8 : Sun Jun 29 2008 - 21:56:59 PDT