ISSUE 75

Number 75
Category errata
Synopsis Table 30 omits nested concatenations
State lrmdraft
Class errata-discuss
Arrival-DateJul 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