Re: [sv-ec] Comments on Ext-7


Subject: Re: [sv-ec] Comments on Ext-7
From: Arturo Salz (Arturo.Salz@synopsys.com)
Date: Fri Nov 21 2003 - 15:44:15 PST


Jay,

I agree with you that the current statements are inaccurate and should be
changed. Nothing executes in the Reactive region. BTW, that statement was
simply attempting to state the obvious: that the process resumes execution
after processing the Observe region in which the sequence is evaluated, just
like code that resides in the Reactive region. It was only reiterating the
partial
ordering of the language.
I'd like to point out that this implies that a sequence using another
sequence as
a clocking event would be evaluated after another loop through the Active,
Inactive, and NBA regions. This behavior, although very regular from the
point
of view of the scheduler, may not be evident to users. The LRM needs to make
that clear, and that's was the intent of the original statement.
I believe the semantics you are suggesting represent a departure from the
current
scheduling-semantics by turning the Observe region into an iterative region,
and
my understanding is that it was not. That is, the effect of any assertion
evaluation
would be to trigger something in the Reactive region. Perhaps you feel that
this is
a minor point and the current definition supports this behavior LRM does say
that.
The only difference between the proposal as written and the change you
propose
is that statements outside a program would then execute before any code in
the a
program block (i.e., in the Reactive region), whereas the current proposal
implies
that their execution would be intermingled. Note that when used in a program
block,
these constructs are well behaved and I believe there is no disagreement on
their use
or their semantics.

I also wonder why you say the event is scheduled in the Inactive region
instead
of the Active region (even though there may be no observable difference).

    Arturo

----- Original Message -----
From: "Jay Lawrence" <lawrence@cadence.com>
To: "sv-ec@server.eda.org" <sv-ec@eda.org>
Sent: Friday, November 21, 2003 9:58 AM
Subject: [sv-ec] Comments on Ext-7

Page 1 - resumption of the process
----------------------------------

The sentence: "When the process unblocks it resumes execution in the
Reactive region following the end point.". Should be removed. The effect
of scheduling the process is determined by the kind of object waiting on
the event, not the event being waited for. If the event expression is in
a program it will be scheduled in the reactive region. If the event
expression is in an always block it will be scheduled in the Inactive
region. In a sick-case, this event expression could be used as the
clocking expression on another assertion and it would be scheduled for
the observe region.

Section 17.15 - The expect statement
------------------------------------

The sentence: "The statement following the expect shall execute in the
Reactive region
following the success of the property, or the first failed attempt. In
either case, the specified property terminates its evaluation when the
process unblocks." Should be removed.
For the same reason as the comment above. The scheduling is determined
by the type of blocking process, not the type of the blocking event.

===================================
Jay Lawrence
Senior Architect
Functional Verification
Cadence Design Systems, Inc.
(978) 262-6294
lawrence@cadence.com
===================================



This archive was generated by hypermail 2b28 : Fri Nov 21 2003 - 15:45:15 PST