From: Anders Nordstrom (andersn@bcarsb82)
Date: Fri Aug 22 1997 - 08:54:56 PDT
Subject: BTF - BE29 - illegal example of specparam_assignment
Behavioral Task Force - Errata Submission
Assigned Enhancement Request Number: BE29
Errata Name (Description): illegal example of specparam_assignment
Section: 14.5.10
Date Submitted: 970701
Requestor: Paul Graham
Status: Submitted (priority not yet assigned)
Errors found in the Verilog LRM (IEEE 1364-1995).
Details:
A code example given in this section includes the following:
specparam tPLHc = 4:6:9, ...
Annex A includes the following syntax:
specparam_declaration ::=
specparam list_of_specparam_assignments ;
list_of_specparam_assignments ::=
specparam_assignment { , specparam_assignment }
specparam_assignment ::=
specparam_identifier = constant_expression
| pulse_control_specparam
constant_expression ::=
constant_primary
| unary_operator constant_primary
| constant_expression binary_operator constant_expression
| constant_expression ? constant_expression : constant_expression
| string
constant_primary ::=
number
| parameter_identifer
| constant_concatenation
| constant_multiple_concatenation
According to the BNF, the expression on the RHS of a specparam_assignment
must be a constant_expression. A constant_expression is either a
constant_primary, a unary, binary, or ternary operation, or a string.
Clearly 4:6:9 is not a unary, binary, or ternary operation, or a string, so
it must be a constant_primary. Yet it cannot be a constant_primary, for it
is not a number, a paramater_identifier, or a concatenation.
It seems that to accomodate the example, the syntax must be changed to
specparam_assignment ::=
specparam_identifier = constant_mintypmax_expression
| pulse_control_specparam
By the way, I could not find a syntax rule for constant_expression within
the body of the LRM, but only in Annex A.
<p>+-----------------------------------------------------------------------+
| Anders Nordstrom |
| Senior ASIC Designer |
| Northern Telecom Ltd. Email: andersn@nortel.ca |
| P.O. Box 3511 Station C Phone: 613-763-9186 |
| Ottawa, Ontario K1Y 4H7 Fax: 613-763-2626 |
+-----------------------------------------------------------------------+
This archive was generated by hypermail 2.1.4
: Mon Jul 08 2002 - 12:54:41 PDT
and
sponsored by Boyd Technology, Inc.