From: Michael McNamara (mac@verisity.com)
Date: Mon Aug 11 2003 - 17:21:09 PDT
Precedence: bulk
My position is that 3.11.2 holds the precise text needed; it is just
that without an index or table of contents, people don't find this.
One addtion that would help would be text in 12.2 that points to
3.11.2.
Steven Sharp writes:
> Like Mac, I interpret all of the text about overriding parameters as not
> applying to localparams because they are not technically parameters.
> There is no need for a special rule about skipping localparams for
> overrides, any more than there is a special rule about skipping regs
> or nets for overrides; the overrides simply don't apply to any objects
> other than parameters, which means that they don't apply to localparams.
> This results in skipping them when overriding by position (just as you
> would skip any other non-parameter declaration), and producing an error
> when overriding by name (just as you would produce an error for any other
> attempt to override a name that is not a parameter).
>
> However, this argument is weakened by the practice of using the term
> parameter elsewhere to refer to both parameters and localparams. It
> would have been too much work to change all the old references to
> parameters to say "parameters and localparams". It was a lot easier
> to just say that localparams act like parameters except in regard to
> overrides.
>
> Unfortunately, the description of that exception can be misinterpreted
> as meaning that you can try to override localparams just like parameters,
> but it produces an error when you do. Nor are the engineers working
> on ModelSim the only ones who have come to this conclusion. The
> engineer implementing localparams in NC-Verilog came to this same wrong
> conclusion, and I had to correct them. This indicates that the text
> needs some clarification.
>
> Steven Sharp
> sharp@cadence.com
This archive was generated by hypermail 2.1.4
: Mon Aug 11 2003 - 16:53:03 PDT
and
sponsored by Boyd Technology, Inc.