Re: implicit event expression lists

From: Steven Sharp (sharp@cadence.com)
Date: Thu Feb 07 2002 - 12:43:13 PST


Precedence: bulk

>Certainly named.b could be modified by a hierarchial reference or from
>the PLI; but if that resulted in scheduling the block to be evaluated,
>a new value for b would be calculated based on <something>, and that
>value would be used to fetch the value from the memory, and then would
>be assigned to a. So it is sufficient to be sensitive to
>mem8x10[<something>].

The fact that in this particular example 'b' is always set just before
it is used does not mean that all situations will do so. In general,
it may be necessary to be sensitive to 'b'. And I wouldn't try to
define the sensitivity in terms of some data-flow analysis of the block.
If 'b' gets read inside the block, then 'named.b' needs to be in the
sensitivity. Someone could try optimizing it away when it is unnecessary,
but they risk getting obscure results if the block has side effects
(i.e. doesn't actually just represent combinational logic).

>Are you imagining the senario where 'b' is modifed by some nefarious
>entity between the calculation of b = <something>; and a =
>mem8x10[b];?

Nope, just the scenario where there is not guaranteed to be a definition
of 'b' before all uses of 'b' in the block.

Steven Sharp
sharp@cadence.com



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