RE: [sv-ec] RE: [sv-ac] Seuence Instance passed as an argument to sequence

From: Korchemny, Dmitry <dmitry.korchemny_at_.....>
Date: Mon Feb 04 2008 - 06:09:34 PST
Hi Surya,

Yes, property instance may be passed as an argument to another property
(but not sequence) instance.

Regards,
Dmitry

-----Original Message-----
From: owner-sv-ac@server.eda.org [mailto:owner-sv-ac@server.eda.org] On
Behalf Of Surya Pratik Saha
Sent: Monday, February 04, 2008 4:03 PM
To: Korchemny, Dmitry
Cc: danielm; john.havlicek@freescale.com; sarani@cal.interrasystems.com;
sv-ec@server.eda.org; sv-ac@server.eda.org
Subject: Re: [sv-ec] RE: [sv-ac] Seuence Instance passed as an argument
to sequence

Hi Dmitry,
I have understood that a sequence instance can be passed as argument to 
property instance. But what about passing a property instance?
I think that also should pass. Please confirm.
Consider the following e.g:

module seqInstantiation9 (clk, reset, out);

input clk, reset;
output out;
wire clk, reset;
reg [3:0] out;

always @(posedge clk)
    begin
	    if (reset)
		   out <= 0;
		else
		   out <= out +1;
	end	

property S;
out[0] ##1 !out[0] ##1 out[0];
endproperty

property seq(s, a, b);
reset ##1 a[*2] ##1 !b[*2];
endproperty

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

assert property (p1);

endmodule


Regards
Surya



-------- Original Message  --------
Subject: Re:[sv-ec] RE: [sv-ac] Seuence Instance passed as an argument 
to sequence
From: Korchemny, Dmitry <dmitry.korchemny@intel.com>
To: danielm <danielm@aldec.com.pl>, john.havlicek@freescale.com, 
spsaha@cal.interrasystems.com
Cc: sarani@cal.interrasystems.com, sv-ec@eda.org, sv-ac@eda.org
Date: Monday, February 04, 2008 6:36:27 PM
> Hi Daniel, 
>
> This is a gray area of the LRM, I haven't found in the LRM that this
> construct is forbidden, but I am not completely sure about it.
>
> Regards,
> Dmitry
>
> -----Original Message-----
> From: owner-sv-ac@server.eda.org [mailto:owner-sv-ac@server.eda.org]
On
> Behalf Of danielm
> Sent: Friday, February 01, 2008 5:16 PM
> To: john.havlicek@freescale.com; spsaha@cal.interrasystems.com
> Cc: Korchemny, Dmitry; sarani@cal.interrasystems.com;
> sv-ec@server.eda.org; sv-ac@server.eda.org
> Subject: RE: [sv-ec] RE: [sv-ac] Seuence Instance passed as an
argument
> to sequence
>
> I've an idea to extend SVA syntax to allow writing more flexible code.
>
> Lets look at an example:
> sequence s1(x,y); x ##1 y;endseqeuence  
> sequence s2(x,y); x [*2] #1 y;endseqeuence  
>
> property  P(ss,xx,yy); ss(xx,yy) |=> consequent; endproperty
>
> The property P in above case become powerful template - we may use
very
> different seqeunces in P:
> assert property P(s1,a,b);
> assert property P(s2,a,b);
>
> Etc....
>
>
> Does 1800-2008 support above codes?
> If no what are you thinking about such extension?
>
>
> DANiel
>
> -----Original Message-----
> From: owner-sv-ac@server.eda.org [mailto:owner-sv-ac@server.eda.org]
On
> Behalf Of John Havlicek
> Sent: Thursday, January 31, 2008 2:48 PM
> To: spsaha@cal.interrasystems.com
> Cc: dmitry.korchemny@intel.com; sarani@cal.interrasystems.com;
> sv-ec@server.eda.org; sv-ac@server.eda.org
> Subject: Re: [sv-ec] RE: [sv-ac] Seuence Instance passed as an
argument
> to
> sequence
>
> Hi Surya:
>
> If you think about it, when an actual argument is substituted for a
> reference to a formal argument, the thing being replaced is just the
> reference, i.e. and identifier.  In your example the instance "s1"
> would be substituted for the reference "s" to the formal argument,
which
> is
> just an identifier.
>
> The spirit of this list is really to enumerate examples of syntactic
> entities that could be replaced by references to formal arguments, but
> that
> is not what the text says.
>
> Also, the phrase "can replace" should be interpreted as stating the
> possibility or permission of the cases rather than as stating that the
> list
> of cases is exhaustive.
>
> This part of the LRM has been heavily criticized and is being
rewritten
> entirely in proposals for the 2008 standard.
>
> J.H.
>
>   
>> X-Authentication-Warning: server.eda.org: majordom set sender to 
>> owner-sv-ac@eda.org using -f
>> Date: Thu, 31 Jan 2008 11:30:29 +0530
>> From: Surya Pratik Saha <spsaha@cal.interrasystems.com>
>> Cc: Sarani Roy <sarani@cal.interrasystems.com>, sv-ec@eda.org, 
>> sv-ac@eda.org
>> X-InterraSystems-MailScanner-Information: Please contact the ISP for 
>> more information
>> X-InterraSystems-MailScanner: Found to be clean
>> X-InterraSystems-MailScanner-From: spsaha@cal.interrasystems.com
>> X-Spam-Status: No, No, No
>> X-eda.org-MailScanner: Found to be clean, Found to be clean
>> Sender: owner-sv-ac@eda.org
>> X-eda.org-MailScanner-Information: Please contact the ISP for more 
>> information
>> X-eda.org-MailScanner-From: owner-sv-ac@server.eda.org
>> X-OriginalArrivalTime: 31 Jan 2008 06:01:23.0793 (UTC) 
>> FILETIME=[B5677C10:01C863CE]
>>
>> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
>>     
>
>   
>> <head>
>>   <meta content="text/html;charset=ISO-8859-1" 
>> http-equiv="Content-Type"> </head> <body bgcolor="#ffffff" 
>> text="#000000"> Hi,<br> As per SV LRM 1800-2005, (section 17.6 
>> Declaring sequences):<br> <br> <b>An actual argument can replace any 
>> of the following:<br>  Identifier<br>  Expression<br>  Event 
>> control expression<br>  Upper delay range or repetition range if the

>> actual argument is $<br> <br> </b>A sequence instance is not part of 
>> normal expression. So as per LRM the case is illegal.<br> <pre 
>> class="moz-signature" cols="72">Regards Surya </pre> <br> <br>
>> -------- Original Message&nbsp; --------<br>
>> Subject: [sv-ec] RE: [sv-ac] Seuence Instance passed as an argument
to
>>     
>
>   
>> sequence<br>
>> From: Korchemny, Dmitry <a class="moz-txt-link-rfc2396E" 
>>
href="mailto:dmitry.korchemny@intel.com">&lt;dmitry.korchemny@intel.co
>> m&gt;</a><br>
>> To: Sarani Roy <a class="moz-txt-link-rfc2396E" 
>>
href="mailto:sarani@cal.interrasystems.com">&lt;sarani@cal.interrasyst
>> ems.com&gt;</a>, <a class="moz-txt-link-abbreviated" 
>> href="mailto:sv-ec@eda.org">sv-ec@eda.org</a>,
>> <a class="moz-txt-link-abbreviated" 
>> href="mailto:sv-ac@eda.org">sv-ac@eda.org</a><br>
>> Date: Wednesday, January 30, 2008 6:22:38 PM<br> <blockquote  
>>
>>     
>
cite="mid:1100CE41B4EF3244A33BDFA3DE99CC2A608288@hasmsx412.ger.corp.inte
> l.co
> m"
>   
>>  type="cite">
>>   <pre wrap="">Yes, this is correct.
>>
>> Dmitry.
>>
>> -----Original Message-----
>> From: <a class="moz-txt-link-abbreviated" 
>>
href="mailto:owner-sv-ac@server.eda.org">owner-sv-ac@server.eda.org</a
>>     
>>> [<a class="moz-txt-link-freetext" 
>>>       
>>
href="mailto:owner-sv-ac@server.eda.org">mailto:owner-sv-ac@server.eda
>> .org</a>] On Behalf Of Sarani Roy
>> Sent: Wednesday, January 30, 2008 2:21 PM
>> To: <a class="moz-txt-link-abbreviated" 
>> href="mailto:sv-ec@server.eda.org">sv-ec@server.eda.org</a>; <a 
>> class="moz-txt-link-abbreviated" 
>> href="mailto:sv-ac@server.eda.org">sv-ac@server.eda.org</a>
>> Subject: [sv-ac] Seuence Instance passed as an argument to sequence
>>
>> Hi,
>>
>> Is this a valid scenario:
>>
>> sequence s1;
>>  @(posedge clk) irdy ##1 !trdy ##1 !devsel;  endsequence
>>
>>  sequence seq (s,trans,grant,n);
>>  @(posedge clk) s ##1 trans ##1 grant[*n];  endsequence
>>
>>  property p1;
>>  @(posedge clk)
>>  reset |=&gt; seq(s1,next_state==3'b111,stop,4) ##1 frame[*2];  
>> endproperty
>>  
>>  assert property(p1);
>>
>> Most of the standard tools are passing.
>>
>> Thanks,
>> Sarani
>>
>>
>>
>>   </pre>
>> </blockquote>
>> <br>
>> </body>
>> <br />--
>> <br />This message has been scanned for viruses and <br />dangerous 
>> content by <a 
>> href="http://www.mailscanner.info/"><b>MailScanner</b></a>, and is
<br
>>     
>
>   
>> />believed to be clean.
>> </html>
>>
>>     
>
> --
> This message has been scanned for viruses and dangerous content by
> MailScanner, and is believed to be clean.
>
>
>   





-- 
This message has been scanned for viruses and
dangerous content by MailScanner, 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 Mon Feb 4 06:16:19 2008

This archive was generated by hypermail 2.1.8 : Mon Feb 04 2008 - 06:16:50 PST