RE: [sv-ac] [Fwd: Clock flow in SV assertion]

From: Kulshrestha, Manisha <Manisha_Kulshrestha_at_.....>
Date: Wed Mar 08 2006 - 09:30:55 PST
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

________________________________

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]


  

-------- Original Message -------- 
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.
  
Received on Wed Mar 8 09:31:02 2006

This archive was generated by hypermail 2.1.8 : Wed Mar 08 2006 - 09:32:02 PST