ISSUE 535

Number 535
Notify-List
Category errata
Synopsis errors in $width, 15.3.4 and 15.5
State lrmdraft
Class errata-simple
Arrival-DateFeb 05 2004
Originator sharp@cadence.com (Behavioral Task Force)
Release
Environment
Description
Section 15.3.4 states that the threshold argument is
optional. The BNF does not match this. The text also
says that if you have a notifier argument, then you
need the comma in front of the optional threshold,
which implies that you can have a null threshold
argument as a placeholder if you want a notifier after
it. But later text states that if the notifier is
present, a non-null threshold value must be present.
This is inconsistent. It appears that the earlier
text about the comma is wrong, or at least misleading.

In the $width in example 1 in 15.5, the threshold argument
is missing entirely, with neither a null or zero value
supplied. This is illegal by any interpretation of the
earlier text.
Fix

1. In 15.3.4, Syntax 15-12, and in A.7.5.1,
CHANGE the BNF of $width from

$width_timing_check ::=
$width ( controlled_reference_event , timing_check_limit
, threshold [ , [ notify_reg ] ] ) ;

TO

$width_timing_check ::=
$width ( controlled_reference_event , timing_check_limit
[ , threshold [ , notify_reg ] ] ) ;

The following are bold: "$width", the parentheses, commas,
and semicolon.


2. In 15.3.4, DELETE the paragraph

"If the comma before the threshold is present,
the comma before the notifier shall also be present,
even though both arguments are optional."


3. In 15.5, Example 1, CHANGE

$width( posedge clk, 16, notify_reg ) ;

TO

$width( posedge clk, 16, 0, notify_reg ) ;

Audit-Trail
From: Shalom.Bresticker@motorola.com
To: etf-bugs@boyd.com
Cc:
Subject: Re: errata/535: errors in $width, 15.3.4 and 15.5
Date: Sun, 8 Feb 2004 14:24:52 +0200 (IST)

Based on VXL and NCV documentations (which are not completely consistent),
the BNF should be corrected FROM

$width_timing_check ::=
$width ( controlled_reference_event , timing_check_limit , threshold [ , [ notify_reg ] ] ) ;

TO

$width_timing_check ::=
$width ( controlled_reference_event , timing_check_limit [ , threshold [ , notify_reg ] ] ) ;

This means that the following forms are legal:

$width ( controlled_reference_event , timing_check_limit ) ;
$width ( controlled_reference_event , timing_check_limit , threshold ) ;
$width ( controlled_reference_event , timing_check_limit , threshold , notify_reg ) ;

The sentence

"If the comma before the threshold is present,
the comma before the notifier shall also be present,
even though both arguments are optional."

is wrong and should be deleted.


The sentences

"The threshold argument shall be included if the notifier argument is required.
It is permissible to not specify both the threshold and notifier arguments,
making the default value for the threshold zero (0). If the notifier is present,
a non-null value for the threshold shall also be present."

are correct and should not be changed.


The usage of $width in example 1 in 15.5 and should be fixed,
even though the incorrect example appears also in the VXL and NCV docs.

Note that the last line in 15.3.4 explicitly shows
"$width ( negedge clr, lim, notif );" as illegal.


Shalom


On Thu, 5 Feb 2004 sharp@cadence.com wrote:

> >Number: 535
> >Notify-List:
> >Category: errata
> >Originator: sharp@cadence.com (Behavioral Task Force)
> >Environment:
> >Description:
>
> Section 15.3.4 states that the threshold argument is
> optional. The BNF does not match this. The text also
> says that if you have a notifier argument, then you
> need the comma in front of the optional threshold,
> which implies that you can have a null threshold
> argument as a placeholder if you want a notifier after
> it. But later text states that if the notifier is
> present, a non-null threshold value must be present.
> This is inconsistent. It appears that the earlier
> text about the comma is wrong, or at least misleading.
>
> In the $width in example 1 in 15.5, the threshold argument
> is missing entirely, with neither a null or zero value
> supplied. This is illegal by any interpretation of the
> earlier text.
>

--
Shalom Bresticker Shalom.Bresticker@motorola.com
Design, Verification & Reuse Methodology Tel: +972 9 9522268
Motorola Semiconductor Israel, Ltd. Fax: +972 9 9522890
POB 2208, Herzlia 46120, ISRAEL Cell: +972 50 441478


Fix replaced by Shalom.Bresticker@motorola.com on Mon Feb 9 06:02:36 2004

1. In 15.3.4, Syntax 15-12, and in A.7.5.1,
CHANGE the BNF of $width from

$width_timing_check ::=
$width ( controlled_reference_event , timing_check_limit
, threshold [ , [ notify_reg ] ] ) ;

TO

$width_timing_check ::=
$width ( controlled_reference_event , timing_check_limit
[ , threshold [ , notify_reg ] ] ) ;

The following are bold: "$width", the parentheses, commas,
and semicolon.


2. In 15.3.4, DELETE the paragraph

"If the comma before the threshold is present,
the comma before the notifier shall also be present,
even though both arguments are optional."


3. In 15.5, Example 1, CHANGE

$width( posedge clk, 16, notify_reg ) ;

TO

$width( posedge clk, 16, 0, notify_reg ) ;



From: Shalom.Bresticker@freescale.com
To: etf-bugs@boyd.com
Cc:
Subject: Re: errata/535: PROPOSAL - errors in $width, 15.3.4 and 15.5
Date: Tue, 11 May 2004 11:50:29 +0300 (IDT)

I fixed this in Syntax 15-1 as well.

Shalom


> 1. In 15.3.4, Syntax 15-12, and in A.7.5.1,
> CHANGE the BNF of $width

> TO
>
> $width_timing_check ::=
> $width ( controlled_reference_event , timing_check_limit
> [ , threshold [ , notify_reg ] ] ) ;

Unformatted


Hosted by Boyd Technology