Re: [ng-spice] New dir structure and questions.


To ng-spice@ieee.ing.uniroma1.it
From Paolo Nenzi <pnenzi@ieee.ing.uniroma1.it>
Date Wed, 27 Oct 1999 09:13:02 +0200 (CEST)
Delivered-To mailing list ng-spice@ieee.ing.uniroma1.it
In-Reply-To <XFMail.991026103501.awilson@mrcmicroe.com >
Mailing-List contact ng-spice-help@ieee.ing.uniroma1.it; run by ezmlm
Reply-To ng-spice@ieee.ing.uniroma1.it



On Tue, 26 Oct 1999, Anthony Wilson wrote:

> I have looked at the new directory structure and like it.  I downloaded the
> tarball(ng-spice.rework2.tar.gz) in the experimental directory.  I got a
> compile error in the ngspice.texi file line 1803.  It complained about 
>"@{^@}",
> once I deleted that everything compiled. It compiled on Suse6.2.\
This string game me the same problem on a Debian 2.1, and I deleted it
too.

> I have been maintaining a version of Spice for the Macintosh
> (http://home.earthlink.net/~wilsona/macspice.html) called MacSpice3f4.  
I know, already be on your page, it seems that your simulator has some
interesting capabilities, where I can find an updated version ?
 
I may clone the directory structure of ng-spice once everything is
stable.
Why not, and please, if you are aware or have fixed some bug in
macspice3f4 that is still open in ng-spice, do not hesitate to tell us. 
  > 
> A couple of areas of ng-spice that I am interested in.  
> As mentioned before, the UI or "framework" part and device models.
The UI interface is not yet (AFAIK) under development. There were rumors
to build various interfaces to the simulators (differente front ends): one
for GNOME, one for KDE, one for ... The real problem is that no real
ng-spice exists now, the ng-spice is a simple rework of the original
Berekeley's spice. As you may have read Arno and me arfe trying to code a
part of ng-spice core: the "vectors manager", routines to performs simple
operations on vectors, store vectors in a sort of database and retrieve
them later.

Device models: this is an open issue. I had started to study dlopen to try
to do something like the following:

All devices are coded as shared libraries in a directory. During
netlist parsing, the inp<> routine checks if a device is available
otherwise it aborts and put out an error: the idea is to
substitute this check with a more complex one: if the device is not in the
simulator, check if it is available as a shared lib and load it (linking
it to the devices table) otherwise abort. This was the initial idea. Then
I agreed that it was better to have a FET library, a bipolar library,
etc.: More devices per library, but the check should almost be the same. 
 
> I would like to know the status of the device model development.  
> Are there any plans on including new models(HFET, EKV, Philips BJT,
> BSIMSOI, etc)?  

<*>EKW: I am waiting for their spice3f4 (or 3e2) code. 
<*>Philips BJT: I have some files from Philips but it is dam complex to
   portthem, so the are at the end of the queue. 
<*>HFET: Where I can find it ?
<*>BSIMSOI: Easy porting, is not yet in the ng-spice simulator but, if you
   need it I can put it. I have already done it, but you will have to
   choose if you prefer the Fully Depletd model, Partially Depleted Model
   or the Dynamic Depletion Model. It is possible to compile all the three
   models in a single simulator source, but I need to modify variables
   names to avoid confilcts and it' a "sed" work. I have done it some
   time ago and had convergency problems with the PD model. It's a boring
   work, but if someone find it useful and wants to have a HUGE simulator
   I can do it.
  
> Who is working on developing shared model support?  I would like to help
> in this area for ng-spice, then maybe incorporate the changes in
> MacSpice.

I was working in that area but now I am busy and can do one thing only. I
am working on the kernel now and have no time to take other tasks.
 
> I also saw mention of a device model API.  Does anyone have any further
> information on this or a pointer for more information?
  I will be more precise as soon as I find the doc (on my backup cds). I
  found it at sematech web site. I will send you the doc.

Regards,
Paolo


Partial thread listing: