Subject: Re: [sv-bc] SV3.1 request for clarification
From: Dave Rich (David.Rich@synopsys.com)
Date: Fri Aug 08 2003 - 11:06:33 PDT
Hi Jonathan,
Good catches
1) You are correct. In one of the later 3.1 drafts, we made it illegal
to have regular variables on inout ports. This appears to be one of the
spots in the BNF I missed.
2) Also correct. The BNF should have been someting like *struct
*[*packed*[signing]] ...
Jonathan Bromley wrote:
>hi, I hope this is not an intrusion.
>
>I have some queries on the SV3.1 LRM that have arisen as I've
>been creating presentation and reference material. If they are
>the result of my misunderstanding, please accept my apologies.
>On the other hand, if they reflect genuine ambiguities in the
>LRM, I hope clarifications can be fed in to 3.1a.
>
>
>1) Variables on inout ports
>~~~~~~~~~~~~~~~~~~~~~~~~~~~
>It's clear that you cannot have regular variables either
>as, or connected to, an inout port - you need ref port
>to do that. However, the LRM syntax says...
> inout_declaration ::=
> inout [ port_type ] list_of_port_identifiers
> | inout data_type list_of_variable_identifiers
>Is there any example of the second usage that makes sense?
>
>
>2) What does it mean to sign an unpacked struct or union?
>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>The ability to sign a packed struct or union is obviously
>meaningful and useful. However, I can find no reference in
>the LRM to the meaning or utility of signing an unpacked
>struct, yet it appears to be possible from the syntax. What
>is the effect of "struct [un]signed {...}" ??
>
>
>Thanks in advance
>
>
-- -- David.Rich@Synopsys.com Technical Marketing Consultant http://www.SystemVerilog.org tele: 650-584-4026 cell: 510-589-2625
This archive was generated by hypermail 2b28 : Fri Aug 08 2003 - 11:09:12 PDT