Re: [sv-ac] passing constant value in actual argument

From: Surya Pratik Saha <spsaha_at_.....>
Date: Wed Nov 01 2006 - 07:08:34 PST
Hi ED,
I don't agree your statement. With consecutive_repetition operator, only constant expression is allowed. But 'n' is not a constant expression. If an argument is allowed, then LRM should mention that, as it mentioned for coverage group open range list.
See LRM section: 18.4 Defining coverage points

The open_range_list used to specify the set of values associated with a bin shall be constant expressions, instance constants (for classes only), or non-ref arguments to the coverage group.

Similar type of statement should be given for consecutive_repetition operator too.
Regards
Surya.


Eduard Cerny wrote:
In my view it is a vlaid definition and instance. The actual parameters
are  substituted and then checked.

ed

  
-----Original Message-----
From: owner-sv-ac@eda.org [mailto:owner-sv-ac@eda.org] On 
Behalf Of Soumya Jyoti Wadader
Sent: Wednesday, November 01, 2006 7:06 AM
To: sv-ac@eda.org
Subject: [sv-ac] passing constant value in actual argument 

Hi , 
     I have a quary regarding passing argument .

Please consider this case:

sequence seq(a, b, n);
!a ##1 a[*n] ##1 b[*n];
endsequence

property p1;
@(posedge clk)
(reset ##1 !reset)|=> seq(out[1], out[2], 2);
endproperty

assert property (p1);

Is it a valid case? my doubt is  in sequence expression of 
the sequnce 
'seq' 'n' should be constant, in this case 'n' is getting 
constant value 
from the actual argument in property expression, so this is valid 
case,am I correct? Please comment on my understanding from LRM.

Thanks
Soumya

    


  
Received on Wed Nov 1 07:08:49 2006

This archive was generated by hypermail 2.1.8 : Wed Nov 01 2006 - 07:08:53 PST