David,
there are a few errata from sv-cc:
- we need to add 1 extra diagram. This new diagram should come just before the
expressions diagram (31.40, page 446)
The new diagram is a copy of simple expression diagram from IEEE-1364 (26.6.25)
with one addition: immediately after the variables reference in the simple
expression class, add "ref obj" (inside solid enclosure).
[To editors: This errata is needed to permit the representation of reference objects used
in expressions.]
- in the typedef diagram (31.12, page 419) correct note 1 to read as follows:
1) if the vpiTypedef is TRUE and the typedef creates an alias of another typedef, then
the vpiTypedefAlias shall return a non null handle which represents the handle to
the aliased typedef.
Ex:
typedef enum bit [0:2] {red, yellow, blue} primary_colors;
typdef primary_colors colors;
If "h1" is a handle to the typespec colors, its vpiType shall return a vpiEnumTypespec,
the vpiTypedef property shall be true, the vpiName property shall return "colors", the
vpiTypedefAlias shall return a handle "h2" to the typespec "primary_colors" of vpiType
vpiEnumTypespec.
The vpiTypedef property shall be false for h2 and its vpiTypedefAlias shall return null.
- add a new note to the typedef diagram (31.12, on notes page 420) reading:
6) if a type is defined as an alias of another type, it inherits the vpiType of this other type.
Ex:
typedef time my_time;
my_time t;
The vpiTypespec of the variable named "t" shall return a handle h1 to the typespec "my_time"
whose vpiType shall be a vpiTimeTypespec.
The vpiTypedefAlias applied to handle h1 shall return a typespec handle h2 to the predefined
type "time".
- in the typedef diagram (31.12, page 419)
correct the iteration to range (at the bottom left of the diagram). Currently this relation
is 1 to many from "void typespec".
It should be a 1 to many relation from "array typespec" (basically move the
source of the arrow up from void typespec to array typespec)
- in the instance arrays diagram (31.14, page 421)
the relation to range (on lhs of the diagram) should be an iterator, rather than
a 1-to-1 relation.
Correct the notes underneath instance array to read as follows
1- param assignments can only be obtained from non-primitive instance arrays
2- to obtain all the dimensions of a multi-dimensional array, you must use the
range iterator. Using the vpiLeftRange/vpiRightRange properties will only
return the last dimension of a multi-dimensional array
==============================================================================
Joao Geada, PhD Principal Engineer Verif Tech Group
Synopsys, Inc TEL: (508) 263-8083
377 Simarano Drive, Suite 300, FAX: (508) 263-8069
Marlboro, MA 01752, USA
==============================================================================
Received on Fri Apr 16 17:33:21 2004
This archive was generated by hypermail 2.1.8 : Fri Apr 16 2004 - 17:34:30 PDT