RE: [sv-bc] part selects on arbitrary expressions

From: Michael \(Mac\) McNamara <mcnamara_at_.....>
Date: Wed Mar 07 2007 - 14:52:58 PST
1364 defines the type of bit and part selects to be unsigned scalars and
vectors, respectively (Section 4.5.1 of 1364-2001-C), This section also
defines the type of a concatenate operation to be unsigned. 

Extending part selects to operate on complex types would require
evaluation of its implication on this as well.  But the good news is the
type of part and bit selects are currently well defined.

-----Original Message-----
From: owner-sv-bc@eda.org [mailto:owner-sv-bc@eda.org] On Behalf Of Brad
Pierce
Sent: Wednesday, March 07, 2007 2:11 PM
To: sv-bc@eda-stds.org
Subject: Re: [sv-bc] part selects on arbitrary expressions

A type reference such as type(A[7:4]) can be used in a comparison
controlling a generate (as described in 6.10 and 6.9.1).  And it appears
to be legal to ask for $left(type(A[7:4])).  Plus, there's always the
$typename() function of 22.2.

So the meaning of a legal SV program could easily depend on knowing the
exact type of the result of a part-select.  It's not in general enough
to only know the size of that type.

If the LRM has not fully specified the result types of part-selects yet,
that's a serious gap.

Likewise for the result types of the arithmetic operators.

-- Brad




--
This message has been scanned for viruses and dangerous content by
MailScanner, and is believed to be clean.



-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Wed Mar 7 14:53:21 2007

This archive was generated by hypermail 2.1.8 : Wed Mar 07 2007 - 14:53:31 PST