Re: BTF - B05 - Answers to Adam's Questions

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.