4 changed files with 73 additions and 28 deletions
-
13ChangeLog
-
8Makefile.am
-
2src/Makefile.am
-
78src/xspice/README
@ -1,41 +1,79 @@ |
|||
Spice Opus / XSpice code model support. |
|||
-------------------------------------- |
|||
|
|||
Use configure flag --enable-xspice to compile the support in, |
|||
Use configure the flag --enable-xspice to compile xspice support in, |
|||
when you run the ./configure script. |
|||
This creates a new command, "codemodel", which you can |
|||
use to load a codemodel. |
|||
|
|||
Some codemodels are included in the xspice/lib directory |
|||
with some examples in xspice/examples, compiled for linux glibc. |
|||
The command codemodel attempts to load all the codemodels specified in the |
|||
arguments, eg |
|||
"ngspice 1 ->codemodel /usr/lib/spice/analog.cm /usr/lib/spice/spice2poly.cm" |
|||
|
|||
Make sure the the library dir, xspice/lib, is in your LD_LIBRARY_PATH |
|||
enviromental variable, otherwise the libs will not be found! |
|||
( note: the codemodel path must begin with ./ or / to work ) |
|||
|
|||
To create codemodels go to http://www.fe.uni-lj.si/spice/welcome.html |
|||
and download their trial version of spice opus for the codemodel toolkit! |
|||
The codemodels are automatically compiled and then installed in |
|||
${prefix}/lib/spice/ when spice is installed. |
|||
|
|||
TODO: |
|||
Intergrate the ipc stuff from XSpice. |
|||
Create ng-spice capacity to create codemodels (a perl script) |
|||
Ngspice crashes when you try to plot a digital node |
|||
To create your own codemodels: |
|||
|
|||
* Unpack the tclspice source and compile as normal. |
|||
|
|||
* cd src/xspice/icm |
|||
|
|||
* make the directory structure for the new library: |
|||
Create the nested library_name and module_name directories and copy the |
|||
source code to the module_name directories |
|||
|
|||
src/xspice/icm/ <library_name> / |
|||
modpath.lst udnpath.lst |
|||
<module_name> / |
|||
files: |
|||
cfunc.mod ifspec.ifs ( for a device ) |
|||
or |
|||
udnfunc.c ( or a user defined node ) |
|||
|
|||
* For each library create the files modpath.lst and udnpath.lst, which |
|||
contain a list of the user devices and nodes respectivily, in the location |
|||
shown above. |
|||
|
|||
* Edit src/xspice/icm/makedefs.in and alter the CMDIRS line to include |
|||
your library directory. |
|||
|
|||
* Run make in the src/xspice/icm directory. ( the makefile does the rest ) |
|||
|
|||
The codemodel can be then found in |
|||
src/xspice/icm/<library_name>/<library_name>.cm |
|||
|
|||
Stefan Jones |
|||
19/2/2002 |
|||
20020219 |
|||
Edited 20030831 |
|||
|
|||
----------------------------------------- |
|||
SPICE2 POLY codemodel support. |
|||
|
|||
SPICE2 POLY attributes are now available for controlled sources. To |
|||
use POLY attributes, configure tclspice/ngspice with the |
|||
--enable-xspice flag set as described above. After compilation of |
|||
ngspice, cd into $(top_srcdir)/src/xspice/icm and read the README file |
|||
there for instructions about how to get POLY support. (Hint: you have |
|||
to download some stuff from http://www.fe.uni-lj.si/ and edit the |
|||
Makefiles before you can do "make && make install" of the codemodel |
|||
stuff.) |
|||
SPICE2 POLY attributes are now available for controlled sources. |
|||
|
|||
To use POLY attributes, configure and install ( make install-tcl ) |
|||
tclspice/ngspice with the --enable-xspice flag set as described above. |
|||
|
|||
After compilation of ngspice edit |
|||
${prefix}/share/tclspice/scripts/spinit or |
|||
${prefix}/share/ngspice/scripts/spinit |
|||
( depending if you included tcl support or not ) |
|||
|
|||
and uncomment the |
|||
"* codemodel /usr/lib/spice/spice2poly.cm" |
|||
line and edit as required. ( the path to spice2poly.cm may be wrong ) |
|||
( alternativily create a ~/.spiceinit file with the above codemodel line ) |
|||
|
|||
Then read in your SPICE netlist. SPICE 2 POLY attributes in |
|||
controlled sources will be translated into .models invoking the |
|||
spice2poly codemodel. You should be able to run ngspice and simulate |
|||
in the usual way! |
|||
|
|||
Please direct questions/comments/complaints to mailto:sdb@cloud9.net. |
|||
|
|||
6.22.2003 -- SDB. |
|||
|
|||
Edited on 20030831 by Stefan Jones |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue