Yes, it definitely makes sense. Once such notion is defined, the bit mapping between the original type and the vector will also be needed to be defined, in both directions. This will help in understanding how the ports of arrays of instances are mapped. Note that there can be some complexities in such definition. For example: 1. Mapping from the bit vector to the original type is ambiguous, when the original type contains packed unions. 2. Note every slice of the vector can be mapped to a single slice of the original type. For example, if we have two dimensional array a[1:0][1:0], which is mapped into a one-dimensional vector a'[3:0], then the slice a'[2:0] doesn't have direct representation using a single slice on "a". 3. If the original type contains a packed struct with one member, should the slice on the vector that slices the whole struct be mapped to the member of the struct, or to the whole struct? Still, it would be much better if the notion of the vector and the definitions of the mapping are defined explicitly, rather than left to the imagination of LRM readers and tool implementers. --Yulik. -----Original Message----- From: owner-sv-bc@server.eda.org [mailto:owner-sv-bc@server.eda.org] On Behalf Of Jonathan Bromley Sent: Wednesday, September 20, 2006 1:05 PM To: sv-bc@server.eda-stds.org Subject: RE: [sv-bc] 19.12.5: array of instances connection to packed array port > I think the phrase could be made more successful if it were phrased in > terms of bit significance, starting from LSB to MSB (indirectly > referring to the vector equivalent Steven mentioned) Would it not be better still if we had an explicit notion of the "equivalent vector" of any packed object? I suspect that would be useful in other situations too. By defining the equivalent vector to have a normalized subscript range [N-1:0] you could make it rather easy to rewrite 19.12.5. I'm not suggesting that "equivalent vector" be defined in 19.12.5, but rather that it be a definition quite early in the LRM that can be used in discussion of *any* packed object. Nor am I suggesting that the equivalent vector be required to exist as a real physical object. It would be only a convenient (and well-defined) fiction in the LRM. -- Jonathan Bromley, Consultant DOULOS - Developing Design Know-how VHDL * Verilog * SystemC * e * Perl * Tcl/Tk * Project Services Doulos Ltd. Church Hatch, 22 Market Place, Ringwood, Hampshire, BH24 1AW, UK Tel: +44 (0)1425 471223 Email: jonathan.bromley@doulos.com Fax: +44 (0)1425 471573 Web: http://www.doulos.com This e-mail and any attachments are confidential and Doulos Ltd. reserves all rights of privilege in respect thereof. It is intended for the use of the addressee only. If you are not the intended recipient please delete it from your system, any use, disclosure, or copying of this document is unauthorised. The contents of this message may contain personal views which are not the views of Doulos Ltd., unless specifically stated.Received on Wed Sep 20 04:08:40 2006
This archive was generated by hypermail 2.1.8 : Wed Sep 20 2006 - 04:08:50 PDT