Subject: [sv-cc] a few comments/issues import, packages.
From: Francoise Martinolle (fm@cadence.com)
Date: Tue Jan 20 2004 - 07:59:49 PST
Issues/questions:
30.1 Instance diagram
vpiUnit: bool
The note uses the term compilation unit in an inappropriate manner.
A $unit package is a compilation unit scope which contains all the global 
declarations.
a package is not a compilation unit.
In section 18.3 in the SV 3.1a LRM:
I found the following definitions:
18.3 Compilation unit support
SystemVerilog supports separate compilation using compiled units. The 
following terms and definitions are
provided:
— compilation unit: a collection of one or more SystemVerilog source files 
compiled together
— compilation-unit scope: a scope that is local to the compilation unit. It 
contains all declarations that lie outside
of any other scope
— $unit: the name used to explicitly access the identifiers in the 
compilation-unit scope
I suggest to change note 4:
4. Compilation units are represented as packages that have a vpiUnit 
property set to TRUE. Such implicitly declared packages shall have 
implementation dependent names.
  to say:
4. Compilation unit scopes are packages that have a vpiUnit property set to 
TRUE. Such implicitly declared packages shall have implementation dependent 
names.
Secondly in section 18.3, there is a sentence that PLI should provide 
iteration over the compilation units.
Access to the items in a compilation-unit scope can be accessed using the 
PLI, which must
provide an iterator to traverse all the compilation units.
However in the VPI proposal we have no way to access all the compilation units.
Would'nt we want to know where a compilation unit started and ended (source 
files)?
The current proposal allows to iterate over packages and find all the 
implicit packages, but from a module you cannot find out the compilation 
units it depends upon.
There is an import iteration which returns the items which are made 
directly visible inside a module but that is not sufficient. We should have 
an additional iteration to return the dependent units.
This archive was generated by hypermail 2b28 : Tue Jan 20 2004 - 08:08:35 PST