Update the Information files for ngspice-43
This commit is contained in:
parent
1fef3835c9
commit
cf9b889bb2
6
ANALYSES
6
ANALYSES
|
|
@ -1,5 +1,3 @@
|
|||
12345678901234567890123456789012345678901234567890123456789012345678901234567890
|
||||
|
||||
ANALYSES
|
||||
========
|
||||
|
||||
|
|
@ -46,7 +44,9 @@ Table of Contents
|
|||
2 Operating point analysis (OP)
|
||||
|
||||
The operating point analysis determines the dc operating point of the
|
||||
circuit with inductors shorted and capacitors opened.
|
||||
circuit with inductors shorted and capacitors opened. If a simple matrix
|
||||
solution fails, two versions of gmin stepping may be followed by source
|
||||
stepping and finally an OP search by a transient simulation.
|
||||
|
||||
|
||||
3 Operating point sweep Analysis (DC)
|
||||
|
|
|
|||
1
AUTHORS
1
AUTHORS
|
|
@ -15,6 +15,7 @@ Phil Barker,
|
|||
Steven Borley,
|
||||
Krzysztof Blaszkowski,
|
||||
Stuart Brorson,
|
||||
Árpád Bűrmen,
|
||||
Alessio Cacciatori,
|
||||
Mansun Chan,
|
||||
Wayne A. Christopher,
|
||||
|
|
|
|||
6
BUGS
6
BUGS
|
|
@ -30,9 +30,3 @@ OPEN BUGS:
|
|||
algorithms, does not give correct results for all tested input files.
|
||||
The effort to correct that issue seems to be large.
|
||||
|
||||
|
||||
* voltage (and current) controlled switches need better timing
|
||||
|
||||
The controlled switches (SW, CSW), which still stem from the original
|
||||
spice3f5 implementation, sometimes lead to wrong results when on and off
|
||||
ramp times differ considerably.
|
||||
|
|
|
|||
6
DEVICES
6
DEVICES
|
|
@ -827,16 +827,16 @@ will be updated every time the device specific code is altered or changed to ref
|
|||
13.8 r2_cmc
|
||||
|
||||
More models are available at https://github.com/dwarning/VA-Models,
|
||||
user compiled models are possible as well (See ngspice manual, chapter 13).
|
||||
user compiled models are possible as well (See ngspice manual, chapter 9).
|
||||
|
||||
|
||||
14. XSpice code models
|
||||
|
||||
more than 100 models are available, please see ngspice manual chapt. 12
|
||||
more than 100 models are available, please see ngspice manual chapt. 8
|
||||
|
||||
15. Digital Building Blocks (U instances)
|
||||
|
||||
U instances are digital primitives which may be used (in proper combination) to
|
||||
model digital devices, e.g. from the 74xx or 40xx families. ngspice maps them
|
||||
onto XSPICE models, which allows a fast event based simulation. Please see the
|
||||
ngspice manual, chapter 14.
|
||||
ngspice manual, chapter 10.
|
||||
|
|
|
|||
12
FAQ
12
FAQ
|
|
@ -96,7 +96,7 @@
|
|||
from a tcl script and vector plotted or post processed using tcl. A small
|
||||
GUI may be built by the user to analyze a circuit or a set of circuits.
|
||||
Tclspice is obtained compiling ngspice activating an additional option.
|
||||
This has not been used and tested for recently.
|
||||
This has not been used and tested for some time now.
|
||||
|
||||
|
||||
1.4 Why resurrecting Berkeley's Spice?
|
||||
|
|
@ -135,7 +135,7 @@
|
|||
most of the commercial simulators available tracked each other in netlist
|
||||
language, this should not be an impossible task. The most important goal
|
||||
here is to provide a reliable support for model libraries coming from
|
||||
foundries.
|
||||
foundries. Some compatibility switches are available.
|
||||
|
||||
+ Compact models: The interest in using ngspice is intimately connected
|
||||
to the available models. To provide the latest models available for
|
||||
|
|
@ -256,7 +256,7 @@
|
|||
|
||||
The latest version released is:
|
||||
|
||||
ngspice-41 (released on Aug 13 2023)
|
||||
ngspice-43 (released on July 14 2024)
|
||||
|
||||
|
||||
2.2. What are the latest features in the current release?
|
||||
|
|
@ -308,8 +308,8 @@
|
|||
|
||||
3.1. What systems are supported?
|
||||
|
||||
Ngspice is written in C, and uses some GNU extensions. You may use
|
||||
a GNU C compiler and a LINUX environment to compile it. Ngspice can
|
||||
Ngspice is written in C, C++, and uses some GNU extensions. You may use
|
||||
a GNU C/C++ compiler and a LINUX environment to compile it. Ngspice can
|
||||
be compiled under Windows using the mingw or cygwin environment as
|
||||
well as MS Visual Studio. It will readily compile on macOS.
|
||||
FreeBSD or Solaris will do, but are not officially supported.
|
||||
|
|
@ -356,7 +356,7 @@
|
|||
|
||||
4.4. Disclaimer and Copyright
|
||||
|
||||
Copyright: Holger Vogt, 2023
|
||||
Copyright: Holger Vogt, 2024
|
||||
License: Creative Commons Attribution Share-Alike (CC-BY-SA) v4.0.
|
||||
This document is provided as is. The information in it is not
|
||||
warranted to be correct: you use it at your own risk.
|
||||
|
|
|
|||
81
INSTALL
81
INSTALL
|
|
@ -56,7 +56,7 @@ This file describes the procedures to install ngspice from sources.
|
|||
library and ngspice as a tcl/tk library.
|
||||
|
||||
Compilation to 64 bit is recommended and available per default in
|
||||
the ./compile_linux.sh compule script. 32 bit might be possible,
|
||||
the ./compile_linux_new.sh compile script. 32 bit might be possible,
|
||||
but is not tested.
|
||||
|
||||
The following software must be installed in your system to compile
|
||||
|
|
@ -64,7 +64,8 @@ This file describes the procedures to install ngspice from sources.
|
|||
output):
|
||||
bison, flex, X11 headers and libs, Xaw, Xmu, Xext, Xft, FontConfig,
|
||||
Xrender, freetype headers and readline.
|
||||
Typically one needs the headers (e.g. libX11-devel) and the libs (e.g. libX11-6).
|
||||
Typically one needs the headers (e.g. libX11-devel) and the libs (e.g. libX11-6)
|
||||
of the packages mentioned above.
|
||||
|
||||
ngspice as a shared library (no graphics and no command-line interfaces)
|
||||
will need bison and flex only.
|
||||
|
|
@ -73,11 +74,11 @@ This file describes the procedures to install ngspice from sources.
|
|||
internal fft algorithms.
|
||||
|
||||
If you want to compile the source from the git repository, or if you want to
|
||||
use the compile script ./compile_linux.sh, you will need additional software:
|
||||
use the compile script ./compile_linux_new.sh, you will need additional software:
|
||||
autoconf, automake, libtool.
|
||||
|
||||
The following software may be needed when enabling additional features:
|
||||
editline, tcl/tk.
|
||||
editline (as a replacement for readline), tcl/tk (when compiling tclspice).
|
||||
|
||||
Please have a look at the current ngspice manual, downloadable at
|
||||
http://ngspice.sourceforge.net/docs.html, which gives you much more
|
||||
|
|
@ -86,20 +87,20 @@ This file describes the procedures to install ngspice from sources.
|
|||
For compiling ngspice as a shared library, see section 1.4.
|
||||
|
||||
|
||||
1.2 Install from tarball (e.g. ngspice-41.tar.gz)
|
||||
1.2 Install from tarball (e.g. ngspice-43.tar.gz)
|
||||
|
||||
This covers installation from a release distribution (for example
|
||||
ngspice-41.tar.gz, the so called tar ball).
|
||||
ngspice-43.tar.gz, the so called tar ball).
|
||||
|
||||
After downloading the tar ball to a local directory, unpack it by command:
|
||||
|
||||
$ tar -zxvf ngspice-41.tar.gz
|
||||
$ tar -zxvf ngspice-43.tar.gz
|
||||
|
||||
Now change directories in to the top-level source directory (where this
|
||||
INSTALL file can be found).
|
||||
|
||||
The most comfortable way to compile ngspice is running the compile script
|
||||
compile_linux.sh within the terminal window by ./compile_linux.sh. The
|
||||
compile_linux.sh within the terminal window by ./compile_linux_new.sh. The
|
||||
script has to be declared as 'executable', and admin
|
||||
rights are required to allow the installation of ngspice.
|
||||
|
||||
|
|
@ -110,32 +111,28 @@ This file describes the procedures to install ngspice from sources.
|
|||
|
||||
$ mkdir release
|
||||
$ cd release
|
||||
$ ../configure --with-x --with-readline=yes --disable-debug
|
||||
$ ../configure --with-x
|
||||
$ make
|
||||
$ sudo make install
|
||||
|
||||
The default install directory for executables is /usr/local/bin, the XSPICE
|
||||
code models will be installed in /usr/local/lib/ngspice. Some distros use lib64
|
||||
instead.
|
||||
|
||||
A simple ../configure might be sufficient for a basic ngspice, but the preferred
|
||||
arguments to ../configure are
|
||||
--with-x --with-readline=yes and --disable-debug
|
||||
providing you with a comfortably working ngspice.
|
||||
|
||||
See the section 1.5 titled 'Advanced Install' for instructions about additional arguments
|
||||
that can be passed to ../configure to customise the build and installation.
|
||||
instead. The following options are now included automatically: readline, openmp,
|
||||
osdi, xspice. Only CIDER has to be selected as an extra option.
|
||||
|
||||
A fully featured ngspice on LINUX may be obtained with the following commands:
|
||||
$ mkdir release
|
||||
$ cd release
|
||||
$ ../configure --with-x --enable-xspice --disable-debug --enable-cider --with-readline=yes --enable-predictor --enable-osdi --enable-openmp
|
||||
$ ../configure --with-x --enable-cider --enable-predictor
|
||||
$ make 2>&1 | tee make.log
|
||||
$ sudo make install
|
||||
|
||||
To remove the executables and libraries from the install directory, you may call
|
||||
$ sudo make uninstall
|
||||
|
||||
To disable one of the already inlcuded options, you may call --with-readline=no, or
|
||||
--disable-openmp, --disable-osdi, --disable-xspice
|
||||
|
||||
|
||||
1.3 Install from the git repository
|
||||
|
||||
|
|
@ -155,7 +152,7 @@ This file describes the procedures to install ngspice from sources.
|
|||
directory, so to e.g. maintain separate debug and release versions.
|
||||
|
||||
The most comfortable way to compile ngspice is running the compile script
|
||||
compile_linux.sh within the terminal window by ./compile_linux.sh. Admin
|
||||
compile_linux_new.sh within the terminal window by ./compile_linux_new.sh. Admin
|
||||
rights are required to allow the installation included in the script.
|
||||
|
||||
If you want to copile ngspice manually, you may run
|
||||
|
|
@ -163,7 +160,7 @@ This file describes the procedures to install ngspice from sources.
|
|||
$ ./autogen.sh
|
||||
$ mkdir debug
|
||||
$ cd debug
|
||||
$ ../configure --with-x --with-readline=yes
|
||||
$ ../configure --with-x
|
||||
$ make
|
||||
$ sudo make install
|
||||
|
||||
|
|
@ -178,7 +175,7 @@ This file describes the procedures to install ngspice from sources.
|
|||
$ ./autogen.sh
|
||||
$ mkdir release
|
||||
$ cd release
|
||||
$ ../configure --with-x --enable-xspice --disable-debug --enable-cider --with-readline=yes --enable-openmp --enable-predictor --enable-osdi
|
||||
$ ../configure --with-x --enable-cider --enable-predictor
|
||||
$ make 2>&1 | tee make.log
|
||||
$ sudo make install
|
||||
|
||||
|
|
@ -189,7 +186,7 @@ This file describes the procedures to install ngspice from sources.
|
|||
1.4 ngspice as a shared library
|
||||
|
||||
The relevant configure options for the ngspice shared library are:
|
||||
$ --with-ngshared --enable-xspice --disable-debug --enable-cider --enable-osdi --enable-openmp
|
||||
$ --with-ngshared --enable-cider
|
||||
|
||||
Typically the two aliases libngspice.so, libngspice.so.0 and the compiled
|
||||
library libngspice.so.0.0.1 are made. The install locations depend on
|
||||
|
|
@ -217,15 +214,7 @@ This file describes the procedures to install ngspice from sources.
|
|||
|
||||
1.5.1 Most useful options:
|
||||
|
||||
--enable-osdi
|
||||
Add the OSDI interface to ngspice. This interface allow to dynamically
|
||||
load compiled Veriloag-A compact models. Compiling is done with
|
||||
OpenVAF. Thus for the first time ngspice has access to modern
|
||||
device models like BSOMBULK or BSIM_CMG.
|
||||
|
||||
--enable-cider
|
||||
Cider is a mixed-level simulator that couples Spice3 and DSIM
|
||||
to simulate devices from their technological parameters.
|
||||
(the following are already included)
|
||||
|
||||
--enable-xspice
|
||||
Enable XSpice enhancements,
|
||||
|
|
@ -240,11 +229,18 @@ This file describes the procedures to install ngspice from sources.
|
|||
Parallelization is done by OpenMP, for MOS models in BSIM3.3.0
|
||||
BSIM4.6.0 and and BSOI4 only. See the ngspice manual for details.
|
||||
|
||||
--disable-debug
|
||||
This option will remove the '-g' option passed to the compiler
|
||||
and add -O2 optimization (instead of default O0).
|
||||
This speeds up simulating significantly, and is recommended for
|
||||
normal use.
|
||||
--enable-osdi
|
||||
Add the OSDI interface to ngspice. This interface allow to dynamically
|
||||
load compiled Veriloag-A compact models. Compiling is done with
|
||||
OpenVAF. Thus for the first time ngspice has access to modern
|
||||
device models like BSOMBULK or BSIM_CMG.
|
||||
|
||||
|
||||
(the following have to be selected to become available)
|
||||
|
||||
--enable-cider
|
||||
Cider is a mixed-level simulator that couples Spice3 and DSIM
|
||||
to simulate devices from their technological parameters.
|
||||
|
||||
--enable-oldapps
|
||||
The old apllications ngsconvert ngproc2mod ngmultidec and ngmakeidx
|
||||
|
|
@ -254,11 +250,11 @@ This file describes the procedures to install ngspice from sources.
|
|||
Disable using fftw fast fourier transform library. Use internal
|
||||
fft instead. Default is 'yes'.
|
||||
|
||||
|
||||
--with-editline=yes
|
||||
Enables the use of the BSD editline library (libedit) instead
|
||||
of readline.
|
||||
See https://www.thrysoee.dk/editline/
|
||||
(requires --with-readline=no)
|
||||
|
||||
--enable-shortcheck
|
||||
Enables a 'make check' with strongly reduced runtime. Besides some
|
||||
|
|
@ -494,7 +490,7 @@ This file describes the procedures to install ngspice from sources.
|
|||
automake, libtool, FLEX and BISON, all available with pacman in MSYSS2).
|
||||
Some links are given below which describe the procedures.
|
||||
|
||||
Installing from the tarball, e.g. ngspice-36.tar.gz, is simple: After
|
||||
Installing from the tarball, e.g. ngspice-43.tar.gz, is simple: After
|
||||
expanding, you may just run ./compile_min.sh from the ngspice directory.
|
||||
|
||||
The default installation location of ngspice is the Windows path
|
||||
|
|
@ -517,16 +513,11 @@ This file describes the procedures to install ngspice from sources.
|
|||
$ make
|
||||
$ make install
|
||||
|
||||
The most useful options are:
|
||||
--enable-xspice
|
||||
--enable-cider
|
||||
--disable-debug (-O2 optimization, no debug information)
|
||||
|
||||
A fully featured ngspice on Windows may be obtained with the following commands:
|
||||
$ ./autogen.sh
|
||||
$ mkdir release
|
||||
$ cd release
|
||||
$ ../configure --with-wingui --enable-cider --disable-debug --enable-openmp --enable-xspice --enable-osdi
|
||||
$ ../configure --with-wingui --enable-cider --disable-debug
|
||||
$ make install
|
||||
|
||||
However, to compile code extracted from the git repository the procedure is
|
||||
|
|
|
|||
43
NEWS
43
NEWS
|
|
@ -1,3 +1,44 @@
|
|||
Ngspice-43, July 14th, 2024
|
||||
============
|
||||
- New features:
|
||||
+ Update to VBIC model: Enable self-heating in AC sim.
|
||||
+ Enable single terminal n devices (Verilog-A modules)
|
||||
+ Add path or filepath (without file name) to variable sourcepath,
|
||||
when calling command 'source'
|
||||
+ B source pwl, enable monotonic negative growth of abscissa values.
|
||||
+ Enable coupling of more than 2 inductots in a single line:
|
||||
K1 L1 L2 L3 L4 L5 0.99
|
||||
+ Enable reading library search paths from env. variables like
|
||||
.lib "$ENVS1/$ENVS2/libraries/sky130_fd_pr/latest/models/sky130.lib.spice" tt
|
||||
+ Add '.save nosub' to suppress storing the node vectors from inside
|
||||
of subcircuits.
|
||||
+ Transform nested braces {{}} into {()} also in .param statements
|
||||
+ Save path to .include file, add it to the search paths
|
||||
for loading the next .include file.
|
||||
+ In ./configure, the following options are now standard:
|
||||
non-debug, osdi, xspice, readline, klu, openmp
|
||||
+ in case of netlist errors, try identifying the file and line number
|
||||
of its origin.
|
||||
+ Add diode model parameters, Level 3, for diode breakdown voltage
|
||||
as used in sky130 PDK
|
||||
+ New environmental variable NGSPICE_OSDI_DIR may contain
|
||||
a path for *.osdi files (compiled Verilog-A models)
|
||||
+ optran 0 0 0 0 0 uic may be used to load initial conditions (.ic=xxx
|
||||
statements) without starting an op iteration.
|
||||
+ Add variable ps_scan_gates_optimize (default 1). If < 1, then turn off
|
||||
the optimizations in scan_gates.
|
||||
+ new exported function ngSpice_nospinit() to set variable no_spinit
|
||||
+ Update to JFET model (add emission coefficient)
|
||||
+ MOS models 1...3: updated noise code
|
||||
+ Update to fft window functions, scaling etc.
|
||||
+ Add transformer model with params on the .subckt line
|
||||
+ timing .model statements at the global level for subckts with U* instances
|
||||
+ variable 'rsdiode' sets RS of a diode, if not given in the .model line.
|
||||
+ Update the AM voltage/current sources: enable amplitude
|
||||
modulation, carrier suppression.
|
||||
+ Remove some ADMS remnants.
|
||||
|
||||
|
||||
Ngspice-42, Dec 24th, 2023
|
||||
============
|
||||
- New features:
|
||||
|
|
@ -27,7 +68,6 @@ Ngspice-42, Dec 24th, 2023
|
|||
+ Add scripts for running the paranoia tests in parallel on Linux with valgrind.
|
||||
|
||||
|
||||
|
||||
Ngspice-41, Aug 13th, 2023
|
||||
============
|
||||
- New features:
|
||||
|
|
@ -61,6 +101,7 @@ Ngspice-41, Aug 13th, 2023
|
|||
which have occurred mostly due to incomplete or faulty inputs.
|
||||
+ Memory leaks for CIDER removed
|
||||
|
||||
|
||||
Ngspice-40, Mar 31st, 2023
|
||||
============
|
||||
- New features:
|
||||
|
|
|
|||
11
README
11
README
|
|
@ -5,16 +5,17 @@ Ngspice is a mixed-level/mixed-signal circuit simulator. Its code
|
|||
is based on three open source software packages: Spice3f5, Cider1b1
|
||||
and Xspice.
|
||||
|
||||
Spice3 does not need any introduction, is the most popular circuit
|
||||
simulator. In over 30 years of its life Spice3 has become a de-facto
|
||||
standard for simulating circuits.
|
||||
Spice3 does not need any introduction, it is the ancestor of many
|
||||
commercial or open source circuit simulators. In over 30 years
|
||||
since its existence it has set several de-facto standards for
|
||||
simulating circuits.
|
||||
|
||||
Cider couples Spice3f5 circuit level simulator to a device simulator
|
||||
Cider couples the Spice3 circuit level simulator to a device simulator
|
||||
to provide greater simulation accuracy of critical devices. So you may
|
||||
create device models for diodes, bipolar, JFet and MOSFETs derived
|
||||
from their cross-sectional structures and materials.
|
||||
|
||||
Xspice is an extension to Spice3C1 that provides code modelling support
|
||||
Xspice is an extension to Spice3 that provides code modelling support
|
||||
and simulation of digital components through an embedded event driven
|
||||
algorithm.
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue