[sv-ec] Re: [sv-bc] Issues on Queue Operators

From: Brad Pierce <Brad.Pierce_at_.....>
Date: Sun May 28 2006 - 00:04:28 PDT
-----Original Message-----
From: owner-sv-bc@eda.org [mailto:owner-sv-bc@eda.org] On Behalf Of
Steven Sharp
Sent: Saturday, May 27, 2006 7:48 PM
To: sv-bc@eda.org; srakshit@cal.interrasystems.com
Subject: Re: [sv-bc] Issues on Queue Operators


>From: Sharmistha Rakshit <srakshit@cal.interrasystems.com>

>1. Here it has been stated
>    "The empty array literal {} is used to denote an empty queue."
>my query :: Should this empty  array literal syntax not be treated as
an 
>assignment pattern and
>          be preceded by an apostrophe( ' ) ?

Yes, I believe so.

>2.
>Further , for the example given in section 5.14.1 to explain Queue 
>Operators ( which are not applicable to normal arrays )
>    q ={q,6} ;
>    q = {e,q};
>    q = { q[0:pos-1], e, q[pos,$] };
>    q = { q[0:pos], e, q[pos+1,$] };
>
>Now, we can't have a unsized constant as a member of concat expression
.
>should the RHS be treated as concatenation or  assignment pattern  ?

Since it is also illegal to use concatenation on anything but integral
types, these clearly need to be changed to be assignment patterns.
However, even then they do not appear to be legal.  They seem to assume
that a queue will be flattened into a list of its elements when used
inside an assignment pattern.

>3.Is the following case valid ?
>
>module T; 
>     int b[4:0];
>    int c;
>    int a[4:0] = '{b[3:0],c} ;
>endmodule

This appears to be the same issue I filed in Mantis item 801.  It is
my understanding that this is not valid.  The RHS is not an assignment
pattern containing 5 elements that can be assigned to ints.  Instead,
it is an assignment pattern containing 2 elements.  The first element
is an array of 4 ints, and the second is a single int.  The first
element
cannot legally be assigned to an int, so this is illegal.

Steven Sharp
sharp@cadence.com
Received on Sun May 28 00:04:10 2006

This archive was generated by hypermail 2.1.8 : Sun May 28 2006 - 00:04:37 PDT