Subject: Re: pragmas
From: Shalom Bresticker (Shalom.Bresticker@motorola.com)
Date: Tue Dec 18 2001 - 08:25:47 PST
It occurs to me that this problem can and does occur even in Verilog-1995 with `ifdef and $testplusargs.
That is, if you write +define+XXX on the command line, and you spell XXX wrong, you have a problem to detect it. Today's simulators
and other tools don't tell you that you defined a text macro which is not referenced anywhere, for example.
Similarly, you write +XXX on the command line and test its existence with $testplusargs("XXX"). Again, you're in trouble if you
spell XXX wrong. Tools don't warn you you wrote a plusarg which is not tested in the design.
Still, there is a difference in that these two cases relate to misspellings on the command-line whereas attributes are part of the
code.
Shalom
Adam Krolnik wrote:
> Good morning Shalom;
>
> I often think about this same problem, but in the context
> of scripts that accept arguments to pass to other tools.
> The front script can have no knowledge (so as to be general)
> of what are legal options for a given tool. Thus, if you
> spell something wrong, "oh well".
>
> I would hope that tools recognize attributes/pragmas as informational
> and not issue warnings for unrecognized ones. It is difficult to
> teach people that warning have meaning when tools issue them carelessly
> and have no way to mark them as not a problem. People only (sometimes)
> view errors as something to be dealt with.
>
> Daryl is right that a lint tool could check for attributes not
> known, but then you have to have a 'known' list of attributes and
> try to keep that up to date.
>
> A more pressing problem as we look at implicit connections, generated
> instances, etc. will be answering the question, "is this correct?"
> For people who have written code generators based on implicit connection
> rules, generation scripts, etc. they have the resultant code to
> visually check for errors. By bringing these processes into verilog
> it will be harder to 'visually' check that the connections/instances
> are indeed correct. Maybe the next generation lint tools job will
> be to write out example code showing what is really being done.
>
> Adam Krolnik
> Verification Mgr.
> LSI Logic Corp.
> Plano TX. 75074
-- Shalom Bresticker Shalom.Bresticker@motorola.com Principal Staff Engineer Tel: +972 9 9522268 Motorola Semiconductor Israel, Ltd. Fax: +972 9 9522890 POB 2208, Herzlia 46120, ISRAEL Cell: +972 50 441478
This archive was generated by hypermail 2b28 : Tue Dec 18 2001 - 08:26:42 PST