gnucap-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnucap-devel] Plug and play with with ngspice/hspice syntax and oth


From: al davis
Subject: Re: [Gnucap-devel] Plug and play with with ngspice/hspice syntax and other questions
Date: Fri, 20 Nov 2009 16:51:45 -0500
User-agent: KMail/1.12.2 (Linux/2.6.26-1-amd64; KDE/4.3.2; x86_64; ; )

On Friday 20 November 2009, Anthony Shanks wrote:
> have the global nodes feature been added yet?

This is the "other" email specifically addressing the global 
node issue.

Please don't take these comments as opposition to the concept.  
Rather, there are issues that need to be addressed to make a 
proper implementation.

Since it is strictly input related, all changes would go in the 
spice language plugin, specifically the "lang_spice_in.cc"  and 
"lang_spice_commands.cc" files.

To see what I am concerned about, consider this:

Suppose I am using a subckt model I downloaded from somewhere on 
the net.  It might be for something like an op-amp.  Let's say 
it has 50 components and 20 internal nodes, and I don't 
understand it.  Let's further assume that I am working on some 
kind of signal processing circuit that uses 6 of these op-amps.

Maybe I might be using a TSMC model file with a bunch of "Lib" 
blocks .. an 8 meg file with subckts around those mosfets, with 
internal nodes.  People do use those TSMC models with gnucap.

Now, suppose one of those internal nodes happens to be named 
"foo".

Does saying ".global foo" in the main circuit connect all of 
those "foo"s together?  I think most users would be totally 
confused if this happens.

Saying ".global foo" in both the subcircuit and caller solves 
the problem.  That way it is agreed on both sides. But, I don't 
think this is the way to do it.  Otherwise, how does the 
subcircuit know that the "foo" node has an external connection?

How global is it really?  Truly global? file scope?

When a file is included by an include statement, does the global 
transfer into that file?  What about by a "lib" statement?  What 
about mixed languages?

I think Hspice and Spectre implement it like a preprocessor 
directive, but I don't know because I don't have access to 
either.

I am not arguing, yes or no, whether to do it or not.  There is 
something about the requirement that I don't understand.  There 
are some real implementation issues and I am looking for 
answers.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]