Re: [sv-bc] question about the proposal

From: Brad Pierce <Brad.Pierce@synopsys.com>
Date: Wed Feb 02 2005 - 13:33:37 PST

Francoise,

The following link has an example of the problem --

     http://www.eda.org/sv-bc/hm/1705.html

 module m;
    parameter a = 1, b = 2;
    typedef struct { byte a, b;} F1;
    typedef struct { F1 f1; byte f2 [10:0];} S1;
    initial begin
      S1 y = {default:{a:20, b:4, default:'0}};
    end
 endmodule

See also --

    http://www.eda.org/sv-bc/hm/2030.html

-- Brad

-----Original Message-----
From: owner-sv-bc@eda.org [mailto:owner-sv-bc@eda.org]On Behalf Of Greg
Jaxon
Sent: Wednesday, February 02, 2005 10:05 AM
To: Francoise Martinolle
Cc: sv-bc@eda.org
Subject: Re: [sv-bc] question about the proposal

I think we just have not yet found the right verbiage to express
what we mean. There are two ways context influences an expression.
1) "Type" information can influence constructors,
2) "packed width" information can influence operator sizing.

With default:value, I believe others have become comfortable with
letting the width of each otherwise unmatched field separately
affect the width of a fresh copy of the value expression. I think
that's like "punning" - to make one expression mean two different
things, but I've lost that fight.

However, the notion of "punning" must have irritated folks when
it came to writing default:'{a:1, b:2} and letting this match up
sometimes to one substructure with fields named a & b, sometimes to
another such substructure, and sometimes to an array, for which
a & b are constant expression index positions.

So in short, we intend that "type" should not be imposed on
the default's value (that much must be self-determined). But
so far we're willing to let width affect the operator sizing.

Greg

Francoise Martinolle wrote:
> Why is a default correspondence not considered as an assignment like
> context?
>
> Francoise
> '
Received on Wed Feb 2 13:33:39 2005

This archive was generated by hypermail 2.1.8 : Wed Feb 02 2005 - 13:35:08 PST