RE: [sv-bc] Type of a concat expression

From: Steven Sharp <sharp@cadence.com>
Date: Mon Jun 14 2010 - 11:44:15 PDT

>From: "Rich, Dave" <Dave_Rich@mentor.com>

>The LRM says in many places that if any scalar bit of a packed
>expression is 4-state, the entire packed expression is considered
>4-state.

I think it goes further than this. 11.3.4 states that "Operators may be
applied to 2-state values or to a mixture of 2-state and 4-state values.
The result is the same as if all values were treated as 4-state values."
It goes on to point out that while most operations on 2-state values
produce results in the 2-state value set, there are exceptions.

This is talking about how the values are computed rather than the types,
but if the values are treated as 4-state, then the type must be 4-state.
Operators applied to 2-state values are treated the same way as when
there are 4-state values. So the result of any operator applied to
vector values is considered 4-state.

There is an exception in the description of the streaming operators.
These give rules for when the result is 2-state versus 4-state. I don't
know whether there is any reason for specifying this, or whether the
author simply didn't realize that there was no need for it and that the
description was inconsistent with all the other operators.

Steven Sharp | Architect | Cadence

P: 508.459.1436 M: 774.535.4149 www.cadence.com

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
Received on Mon Jun 14 11:44:36 2010

This archive was generated by hypermail 2.1.8 : Mon Jun 14 2010 - 11:46:26 PDT