Hi Manisha,
If instead of |=> operaotr, 'or' is present, how then it will be parased?
@(posedge clk) ((a ##1 (@(posedge clk1) s1)) or (@(posedge clk2) s2));
or
@(posedge clk) ((a ##1 (@(posedge clk1) s1) or (@(posedge clk2) s2)));
Please can you explain.
"Kulshrestha, Manisha" wrote:
Surya,The precedence rules apply when there is conflict. In this case there is no conflict (as you already stated that a property expression can not be after ##1), so the parser will resolve it as:@(posedge clk) ((a ##1 (@(posedge clk1) s1)) |=> (@(posedge clk2) s2));Manisha-------- Original Message --------
From: owner-sv-ac@eda.org [mailto:owner-sv-ac@eda.org] On Behalf Of Surya Pratik Saha
Sent: Wednesday, March 08, 2006 1:53 AM
To: sv-ac@eda.org
Subject: [sv-ac] [Fwd: Clock flow in SV assertion]
Subject: Clock flow in SV assertion Date: Wed, 08 Mar 2006 10:28:44 +0530 From: Surya Pratik Saha <spsaha@cal.interrasystems.com> To: "sv-bc@eda.org" <sv-bc@eda.org>, sv-ac@eda.org Hi,
Some days ago I asked the precedence of @ operator in assertion rule. I did not get well defined answer, however by reading the clock flow section, it is understood that @ has the weakest precedence.Considering the fact the given e.g. in LRM (page no. 282, e.g. d)
@(posedge clk) a ##1 @(posedge clk1) s1 |=> @(posedge clk2) s2;
will be parsed as:
@(posedge clk) a ##1 (@(posedge clk1) s1 |=> @(posedge clk2) s2);
So (@(posedge clk1) s1 |=> @(posedge clk2) s2) will become a property expression.
But as per assertion BNF, ## operator can not have property expression in RHS. So the e.g. given in LRM is wrong.
Please confirm.
-- Regards Surya.
-- Regards Surya.Received on Wed Mar 8 19:55:53 2006
This archive was generated by hypermail 2.1.8 : Wed Mar 08 2006 - 19:57:39 PST