Number | 75
|
Category | errata
|
Synopsis | Table 30 omits nested concatenations
|
State | lrmdraft
|
Class | errata-discuss
|
Arrival-Date | Jul 18 2002
|
Originator | "Krzysztof Kozminski" <Krzysztof.A.Kozminski@nsc.com>
|
Release | 2001b: 6 (Table 30), 9.2
|
Environment |
See also #77, 198, 236. |
Description |
There is a discrepancy between section A.8.1, and Table 30 in section 6. According to Section A.8.1, a net_concatenation may contain other net_concatenations as its elements, e,g: { a, b, { C, D} } is a valid net_concatenation, thus also a valid net_lvalue, and therefore it is legal for it to occur on the LHS of a continuous assignment. However, Table 30 in section 6 explicitly omits nested concatenations from legal LHS of continuous assignment, allowing only plain concatenations of nets, bit selects, part selects and indexed part selects. Perhaps the list of valid LHS in Table 30 should be rephrased similarly to the language in section 12.3.9.2, which explicitly permits nesting of concatenations. KK |
Fix |
1. In Table 30, CHANGE last lines in right-hand column of both rows to say, "Concatenation or nested concatenation of any of the above LHS". 2. Also, MOVE line "Memory word" after line "Indexed part select of a vector reg, integer, or time variable". 3. In 9.2, para. 2, dashed item 5, CHANGE from: "Concatenation of any of the above: a concatenation of any of the previous four forms can be specified, which effectively partitions the result of the right-hand side expression and assigns the partition parts, in order, to the various parts of the concatenation." TO: "Concatenation or nested concatenation of any of the above: a concatenation or nested concatenation of any of the previous four forms can be specified, which effectively partitions the result of the right-hand side expression and assigns the partition parts, in order, to the various parts of the concatenation or nested concatenation." 4. Widen right-hand column of table to be large enough to prevent line wraps. |
Audit-Trail |
From: Shalom Bresticker <Shalom.Bresticker@motorola.com> To: btf-bugs@boyd.com Cc: Krzysztof Kozminski <Krzysztof.A.Kozminski@nsc.com> Subject: Re: errata/75: Errata to 1364-2001 standard Date: Wed, 24 Jul 2002 14:13:34 +0300 This is true for procedural assignments as well as continuous assignments. Stefen, Please classify this as affecting Section 6, Table 30. Reword the erratum title as "Table 30 omits nested concatenations". And it would be nice if you could delete the HTML junk from the detailed description. Thanks, Shalom Krzysztof Kozminski wrote: > There is a discrepancy between section A.8.1, and Table 30 in section 6. > > According to Section A.8.1, a net_concatenation may contain other > net_concatenations as its elements, e,g: > > { a, b, { C, D} } > > is a valid net_concatenation, thus also a valid net_lvalue, and > therefore it is legal for it to occur on the LHS of a continuous > assignment. It also passes Verilog-XL. > However, Table 30 in section 6 explicitly omits nested > concatenations from legal LHS of continuous assignment, allowing only > plain concatenations of nets, bit selects, part selects and indexed > part selects. > > Perhaps the list of valid LHS in Table 30 should be rephrased similarly > to the language in section 12.3.9.2, which explicitly permits nesting > of concatenations. -- Shalom Bresticker Shalom.Bresticker@motorola.com Design & Reuse Methodology Tel: +972 9 9522268 Motorola Semiconductor Israel, Ltd. Fax: +972 9 9522890 POB 2208, Herzlia 46120, ISRAEL Cell: +972 50 441478 "The devil is in the details." |
Unformatted |
|
Hosted by Boyd Technology