RE: [sv-ac] New mantis item #1769 - elaboration-time assert and error message tasks

From: Eduard Cerny <Eduard.Cerny_at_.....>
Date: Mon Apr 16 2007 - 18:29:02 PDT
Hello Stu,

please see my comments below.

ed
 

> -----Original Message-----
> From: Stuart Sutherland [mailto:stuart@sutherland-hdl.com] 
> Sent: Monday, April 16, 2007 8:48 PM
> To: 'Eduard Cerny'; 'Lisa Piper'; sv-ac@eda-stds.org
> Subject: RE: [sv-ac] New mantis item #1769 - elaboration-time 
> assert and error message tasks
> 
> Ed,
> 
> I like this feature.  Some minor comments:
> 
> 1) The first code example has a typo, the "m%" should be "%m".:
> 
>    else $error("Parameter N = %0d is out of valid range in 
> module instance
> m%", N);
> 
> Also the code wraps in an awkward place.  Can we shorten the 
> message to fit
> on one line?

I will change that.

> 
> 2) In the second example with generate, you have:
> 
>    for (genvar i = 0; i < $bits(vect); i++) begin : Loop
> 
> I don't have time to research this at the moment, but please 
> double check
> that genvar can be declared as part of the for-loop.  The 
> declaration within
> the loop is an automatic variable, and I believe genvars need 
> to be static.

I believe that this is correct. See, e.g., page 537 of the merged LRM.

> 
> 3) In the third paragraph, you have:
> 
>   "If either of the elaboration-action blocks is omitted the 
> compiler may
> issue a default message..."
> 
> The "may" means issuing a message is completely optional, and 
> left up to the
> implementation.  Is this what you intended?  Personally, I 
> would expect that
> a tool "shall" issue a default message.

I thought it could be optional, but I can change it to "shall exectute
$error with a default message."

> 
> 4) I don't understand what is meant by the fourth paragraph
> 
>    if assert is missing in front of a pass_elaboration_action it is
> equivalent to writing
>    assert(1'b1) pass_elaboration_action;
> 
> It sounds like it is ok to leave out the "assert" keyword.  
> Is that what you
> intended?  It would help to show the actual code before show 
> the code that
> it is equivalent to.

Yes, this is the case. The first example has this situation. Should I
add something?



>  
> Stu
> ~~~~~~~~~~~~~~~~~~~~~~~~~
> Stuart Sutherland
> Sutherland HDL, Inc.
> stuart@sutherland-hdl.com
> 503-692-0898
>  
> 
> > -----Original Message-----
> > From: owner-sv-ac@server.eda.org 
> > [mailto:owner-sv-ac@server.eda.org] On Behalf Of Eduard Cerny
> > Sent: Monday, April 16, 2007 7:28 AM
> > To: Lisa Piper; sv-ac@server.eda-stds.org
> > Cc: Eduard Cerny
> > Subject: RE: [sv-ac] New mantis item #1769 - elaboration-time 
> > assert and error message tasks
> > 
> >  Hello,
> > 
> > I tried to take into account all the suggestions... Please see the
> > attached proposal, also deposited on mantis.
> > 
> > Best regards,
> > 
> > ed
> > 
> > > -----Original Message-----
> > > From: Lisa Piper [mailto:piper@cadence.com] 
> > > Sent: Friday, April 06, 2007 5:58 PM
> > > To: Eduard Cerny
> > > Subject: RE: [sv-ac] New mantis item #1769 - elaboration-time 
> > > assert and error message tasks
> > > 
> > > Hi Ed,
> > > 
> > > I've talked to a few people around here and we also don't see 
> > > a problem
> > > with using the existing language.  A tool could choose to evaluate
> > > immediate assertions that contain only constants at elab 
> > time without
> > > the need for the additional constructs in the language.  
> > > 
> > > Lisa
> > > 
> > > -----Original Message-----
> > > From: Eduard Cerny [mailto:Eduard.Cerny@synopsys.com] 
> > > Sent: Friday, April 06, 2007 12:02 PM
> > > To: Lisa Piper; Eduard Cerny
> > > Subject: RE: [sv-ac] New mantis item #1769 - elaboration-time 
> > > assert and
> > > error message tasks
> > > 
> > > To be frank I did not like either of the prefixes. Dave or Brad
> > > suggested to use the exiting names, e.g., $error, and if 
> > they are left
> > > standing outside procedural cotext after elaboration then 
> > execute them
> > > immediately. I contered by saying that they have more 
> > restrictions on
> > > the arguments, but we could do that with a note that in this 
> > > usage, only
> > > constant_expressions can be used.
> > > 
> > > ed
> > > 
> > > > -----Original Message-----
> > > > From: Lisa Piper [mailto:piper@cadence.com] 
> > > > Sent: Friday, April 06, 2007 10:42 AM
> > > > To: Eduard Cerny
> > > > Subject: RE: [sv-ac] New mantis item #1769 - elaboration-time 
> > > > assert and error message tasks
> > > > 
> > > > How about $elab_..
> > > > 
> > > > Lisa
> > > > 
> > > > -----Original Message-----
> > > > From: Eduard Cerny [mailto:Eduard.Cerny@synopsys.com] 
> > > > Sent: Friday, April 06, 2007 9:36 AM
> > > > To: Lisa Piper; Eduard Cerny
> > > > Cc: sv-ac@eda-stds.org
> > > > Subject: RE: [sv-ac] New mantis item #1769 - elaboration-time 
> > > > assert and
> > > > error message tasks
> > > > 
> > > > Hi Lisa,
> > > > 
> > > > You are right, we should not assume "let", I will 
> change the text
> > > > accordingly. 
> > > > 
> > > > About the names - what do you suggest? 
> > > > 
> > > > ed 
> > > > 
> > > > > -----Original Message-----
> > > > > From: Lisa Piper [mailto:piper@cadence.com] 
> > > > > Sent: Friday, April 06, 2007 9:23 AM
> > > > > To: Eduard Cerny
> > > > > Cc: sv-ac@eda-stds.org
> > > > > Subject: RE: [sv-ac] New mantis item #1769 - elaboration-time 
> > > > > assert and error message tasks
> > > > > 
> > > > > Hi Ed,
> > > > > 
> > > > > In this proposal, you should not assume the let_declaration 
> > > > > exists yet.
> > > > > It appears twice in the syntax section. I also think it would 
> > > > > be good to
> > > > > show the example of 1620.  
> > > > > 
> > > > > I see compile and elaboration as two distinct steps. This 
> > > > > says it is an
> > > > > elaboration-time check, but the names of the system 
> > tasks tend to
> > > > > suggest compile-time ($comp_...).  Why is this?
> > > > > 
> > > > > Lisa
> > > > > 
> > > > > -----Original Message-----
> > > > > From: owner-sv-ac@eda.org [mailto:owner-sv-ac@eda.org] On 
> > > Behalf Of
> > > > > Eduard Cerny
> > > > > Sent: Thursday, March 29, 2007 10:10 AM
> > > > > To: sv-ac@eda-stds.org
> > > > > Subject: [sv-ac] New mantis item #1769 - elaboration-time 
> > > assert and
> > > > > error message tasks
> > > > > 
> > > > > Hello,
> > > > > 
> > > > > I have created a new mantis item and deposited a proposal for
> > > > > elaboration-time assertions and error tasks. Attached 
> here too.
> > > > > 
> > > > > Best regards,
> > > > > ed
> > > > > 
> > > > > -- 
> > > > > 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 Apr 16 18:29:25 2007

This archive was generated by hypermail 2.1.8 : Mon Apr 16 2007 - 18:29:29 PDT