From: Adam Krolnik (adamk@cyrix.com)
Date: Tue Dec 08 1998 - 12:46:02 PST
Good afternoon cliff:
Thanks for responding to my questions and providing a few other examples to
show how configurations can solve a problem that today is difficult to do.
I have a comment about the definition of library directories and library files.
We should not talk about compiled vs. intepreted in the spec. Your definitions
select reasonable requirements but are an unnecessary detail for someone trying
to use configurations and libraries. But what I feel is necessary is to describe
what actually a library directory and a library file are.
There is no specification of how library directories are actually specified,
searched, etc. I.e. Here are some differences in the -y, -v switch
implementation.
1. What does it mean to have more than module in a file that was found
by library searching. For the modules not named after the file, do they
get read in an used, or should they be ignored and the remaining modules
get searched for by library searching?
2. Does the order of the modules in that file influence the outcome of the
first question.
2. What has precedence in searching? A library file or a library directory?
3. Do parameters get considered as criteria for matching a module being
searched for during library searching? I.e. Should one prefer a module
with parameters or without parameters for a module instantiated without
parameter overrides? Should two modules be selected if some instances
override their parameters and some don't?
4. The order of the libraries being searched should also be defined. I.e.
Are libraries searched in the order listed in the configuration file?
Are libraries specified in a sub configuration searched before the
libraries listed in the (upper) outer configuration? This is the
wanted method for specifying alternate libraries for a specific
part of a system. If we have views, would a sub configuration
be able to override the general view? E.g. General view selects
RTLish stuff. A sub configuration uses behavioral - then general view
says use 'gate'. Should the sub configuration also use gate? or stay
with behavioral.
WRT environment variables, I withdraw my criticism. Is it possible to make
a file that describes the location of libraries - i.e. names a library
and where to search it such that one could include this file and then
just use the libraries. This would be yet another way to do things without
using environment variables - something I would try to do since getting
everyone's environment similar seems to me to be fragile IMHO.
Another topic I just thought of. We use plusargs and preprocessor defines
in some of our source. Would configurations be able to set (and clear)
these switches'?
One problem I see with configuration files is there is no way to
specify locations of files relative to the configuration file location.
Your examples are done where all the configuration files are in 1 place.
What could be done where one wants to say 'use that ASIC over there' and
specifies a path to it's configuration file. It would be useful
for the configuration file to be able to say 'get all the these files
from this local directory or relative to this directory.'
I would rather see a sub statement for specifying specific modules to
be added to a library rather than the file:module+module.
E.g
usefile <file>, <file>
uselibfile <file> select <mod1>, <mod2>;
uselibdir <directory>, <directory>;
uselibdir <directory> extension <ext1>, <ext2>, <ext3>;
<p>I also would like it if one could also include
"usemodule <mod1>" which is similar to 'usefile' - Find the
named modules and include them in the simulation. Leave them
at the top level if not instantiated.
<p><p><p> Adam Krolnik
Verification Engineer
Cyrix - NSC.
Richardson TX. 75085
This archive was generated by hypermail 2.1.4
: Mon Jul 08 2002 - 12:53:02 PDT
and
sponsored by Boyd Technology, Inc.