From: sharp@cadence.com
Date: Fri Sep 12 2003 - 14:01:38 PDT
Precedence: bulk
>Number: 467
>Category: errata
>Originator: sharp@cadence.com
>Environment:
>Description:
This is a question, probably not a real erratum.
Looking at the BNF, it appears to allow reg declaration
initializers on reg port declarations, both the combined
reg port declarations inside the module and the ANSI-C
style reg port declarations in the port list.
It does not allow continuous assignments on net declarations
if those are net port declarations, whether those are
combined net port declarations inside the module or ANSI-C
style net port declarations in the port list.
So the BNF allows both
module m (output reg r = 0);
and
module m (r);
output reg r = 0;
But it does not allow either
module m (output wire w = 0);
or
module m (w);
output wire w = 0;
even though it allows
module m (w);
output w;
wire w = 0;
Is this what was intended? I can see some logic to this,
since you can't really assign much besides constants this
way (at least in the ANSI-C style port declarations).
That makes sense for a reg initializer, but is of limited
use for a continuous assignment.
I checked the email archives, but couldn't find anything
related to this.
This archive was generated by hypermail 2.1.4
: Fri Sep 12 2003 - 14:13:42 PDT
and
sponsored by Boyd Technology, Inc.