Re: Urgent BTF feedback needed

From: Shalom Bresticker (shalom@msil.sps.mot.com)
Date: Tue Jun 22 1999 - 01:01:56 PDT


BAD MSG:
Hi, Stuart.
ontent-Length: 3895
X-Lines: 100
X-Status: $$$$
X-UID: 0000000969
Status: RO

>> >>The BNF says it is illegal to assign/deassign or force/release an integer,
>> >>time or real data type.

It is clear to me that the BNF is not intended to declare such actions illegal.

I'll explain.

In general, of course, the BNF does not declare anything to be illegal.
It defines what is legal, and everything else is illegal.

The following refers, unless stated otherwise, to the hyper-linked 1998 BNF that Adam Krolnik sent on July 21, 1998.

assign/desassign and force/release appear in the following:

procedural_continuous_assignments ::=
          assign reg_assignment ;
        | deassign reg_assignment ;
        | force reg_assignment ;
        | force net_assignment ;
        | release reg_lvalue ;
        | release net_lvalue ;

Referenced are the following:

reg_assignment ::= reg_lvalue = expression
reg_lvalue ::=
          reg_identifier
        | reg_identifier [ expression ]
        | reg_identifier [ msb_constant_expression : lsb_constant_expression ]
        | reg_concatenation
reg_identifier ::= identifier

<p>Point 1: Note that reg_identifier ::= identifier, so that strictly speaking,
an integer, time, or real variable could be used.

Point 2: More importantly, if reg_identifier really does mean reg and only reg,
then a regular blocking assignment is also bad, because its BNF is:

blocking_assignment ::= reg_lvalue = [ delay_or_event_control ] expression

>From this, we see that reg_lvalue and reg_identifier were intended to refer also to integer, time, and real variables,
as in the definition:

reg_type ::= reg | integer | real | realtime | time

I'll leave it to other BTF gurus to decide whether and how it is necessary to change the BNF,
but in my opinion, there is no doubt that it is intended to be permitted,
just as you say that the simulators do, which is also an additional argument that it is OK.

Regards,
Shalom Bresticker

******************************************************************************
Shalom Bresticker email: shalom@msil.sps.mot.com
Motorola Semiconductor Israel, Ltd. Tel #: +972 9 9522268
P.O.B. 2208, Herzlia 46120, ISRAEL Fax #: +972 9 9522444
http://www.motorola-semi.co.il/
******************************************************************************

<p> >> From owner-btf@boyd.com Mon Jun 21 16:23:07 1999
>> Date: Mon, 21 Jun 1999 01:57:44 -0700
>> To: Stuart Sutherland <stuart@sutherland.com>
>> From: Stuart Sutherland <stuart@sutherland.com>
>> Subject: Re: Urgent BTF feedback needed
>> Cc: btf@boyd.com, howardj@model.com (Howard Johnson - 503-641-1340),
>> ram@model.com (Randy Misustin - 503-641-1340),
>> spear@viewlogic.com (Chris Spear)
>>
>> BTF,
>>
>> The PLI task force still needs an URGENT answer on this...
>>
>> Thanks,
>>
>> Stu
>>
>> >
>> >I sent the following message the BTF a week ago, but have not received any
>> >response or even an acknowledgement. Could you please have someone look at
>> >this and provide us at least some initial feedback?
>>
>> >I could not locate your earlier e-mail so this is the first I have seen on
>> >this. Anders, did you get an e-mail from the PLI task force?
>>
>> >>The PLI task force is meeting as I type. We have found a possible errata
>> >>in the BNF. The PLI standard currently matches the BNF, but all major
>> >>Verilog simulators behave differently.
>> >>
>> >>The BNF says it is illegal to assign/deassign or force/release an integer,
>> >>time or real data type.
>> >>
>> >>Is this correct?
>>
>>
>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> Stuart Sutherland Sutherland HDL Inc.
>> stuart@sutherland.com 22805 SW 92nd Place
>> phone: 503-692-0898 Tualatin, OR 97062



This archive was generated by hypermail 2.1.4 : Mon Jul 08 2002 - 12:53:28 PDT and
sponsored by Boyd Technology, Inc.