Re: [ng-spice-devel] ACS with the "free" Borland compiler


To ng-spice-devel@ieee.ing.uniroma1.it, "Gillespie, Alan" <Alan.Gillespie@analog.com>
From Al Davis <aldavis@ieee.org>
Date Tue, 3 Apr 2001 15:48:49 -0800
Delivered-To mailing list ng-spice-devel@ieee.ing.uniroma1.it
In-Reply-To <CF654D964573D311A1CA0090278A36FF4CBDF8@EDIN_EXM1 >
Mailing-List contact ng-spice-devel-help@ieee.ing.uniroma1.it; run by ezmlm
References <CF654D964573D311A1CA0090278A36FF4CBDF8@EDIN_EXM1 >
Reply-To ng-spice-devel@ieee.ing.uniroma1.it

On Tue, 03 Apr 2001, Gillespie, Alan wrote:
> I've been reading the manual for ACS, and I've
> come to the conclusion that there are four things
> that make ACS problematic for actual use -
>
> No .nodeset command,
> No .IC command,
> No BJT model,
> No way to store results in a compact binary file,
>  for use with a post-processor.

Let's call it a "to-do" list.  Mine is much bigger than that.

None of these should be hard to do.  Remember, my emphasis has been 
research, as an attempt for someone who is not affiliated with any 
kind or research institution to do some research.  As such, many 
features that are important to a user, but boring from a research 
perspective, have slid.

All 4 of these are good ones for someone other than me to do.  They 
are simple conceptually, yet require the knowledge of ACS internals.  
It is a good learning experience.  You get to study a non-spice 
mixed-mode simulator, object-oriented programming, C++, .....


> Presumably, the lack of a BJT model should be fixed
> soon after the model compiler is working, although
> I suspect it will still be a non-trivial task to
> "define" a BJT in whatever language the compiler
> uses.

The hardest part is untangling the spaghetti code in the Spice model. 
 This, too, is a good learning experience for someone who wants to 
really understand modeling in simulators.  This untangling needs to 
be done for Spice, too, if you want to move forward.  The monolithic 
models are a major obstacle to moving forward on the algorithms.


> I think you can mostly get round the lack of a .IC
> card using ideal switches and some voltage sources,
> although this would get very painful if you needed
> to set a lot of nodes.

ACS does support initial conditions on capacitors and inductors.  
Still, the .IC command is a good idea, and should not be hard to do.


> Finally, the binary output capability is essential
> for me, 'cos I make so many mistakes in my big
> circuits that I don't know, beforehand, which signals
> I'll need to look at.

Again, should be easy to do.  I am not convinced that it should be 
binary.  We really need a good postprocessor.  Still, you will need 
to select, but you could select a bunch of probes by wildcard.

Spice needs to be able to probe stuff other than node voltages!

What do you do when different nodes in the same circuit are 
calculated at different times?

Partial thread listing: