ngspice-26: update documentation
This commit is contained in:
parent
b19641dcc2
commit
8c99ec76f4
21
ANALYSES
21
ANALYSES
|
|
@ -8,9 +8,10 @@ This file lists the analyses currently implemented into ngspice.
|
||||||
Table of Contents
|
Table of Contents
|
||||||
|
|
||||||
1 Noise analysis (NOISE)
|
1 Noise analysis (NOISE)
|
||||||
|
1.1 Small signal noise
|
||||||
|
1.2 Transient noise
|
||||||
2 Operating point analysis (OP)
|
2 Operating point analysis (OP)
|
||||||
3 Operating point sweep Analysis (DC)
|
3 Operating point sweep Analysis (DC)
|
||||||
3.1 Enhancements
|
|
||||||
4 Pole-zero analysis (PZ)
|
4 Pole-zero analysis (PZ)
|
||||||
5 Small-Signal distortion analysis (DISTO)
|
5 Small-Signal distortion analysis (DISTO)
|
||||||
6 Small Signal frequency response analysis (AC)
|
6 Small Signal frequency response analysis (AC)
|
||||||
|
|
@ -23,6 +24,8 @@ Table of Contents
|
||||||
|
|
||||||
1 Noise analysis (NOISE)
|
1 Noise analysis (NOISE)
|
||||||
|
|
||||||
|
1.1 Small signal noise
|
||||||
|
|
||||||
The noise analysis does analysis device-generated noise for the given
|
The noise analysis does analysis device-generated noise for the given
|
||||||
circuit. When provided with an input source and an output port, the analysis
|
circuit. When provided with an input source and an output port, the analysis
|
||||||
calculates the noise contributions of each device (and each noise generator
|
calculates the noise contributions of each device (and each noise generator
|
||||||
|
|
@ -32,6 +35,12 @@ Table of Contents
|
||||||
range - the calculated value of the noise corresponds to the spectral density
|
range - the calculated value of the noise corresponds to the spectral density
|
||||||
of the circuit variable viewed as a stationary gaussian stochastic process.
|
of the circuit variable viewed as a stationary gaussian stochastic process.
|
||||||
|
|
||||||
|
1.2 Transient noise
|
||||||
|
|
||||||
|
Time domain noise analysis during transient simulation is enabled by
|
||||||
|
providing voltage (and current) source options with white, 1/f and
|
||||||
|
random telegraph signal noise signals.
|
||||||
|
|
||||||
|
|
||||||
2 Operating point analysis (OP)
|
2 Operating point analysis (OP)
|
||||||
|
|
||||||
|
|
@ -44,11 +53,8 @@ Table of Contents
|
||||||
The operating point sweep analysis determines the values of output
|
The operating point sweep analysis determines the values of output
|
||||||
variables while one or two specified independent voltage or current source is
|
variables while one or two specified independent voltage or current source is
|
||||||
stepped over a user-specified range and the dc output variables are stored
|
stepped over a user-specified range and the dc output variables are stored
|
||||||
for each sequential source value.
|
for each sequential source value. Resistance and temperature sweep are
|
||||||
|
included.
|
||||||
3.1 Enhancements
|
|
||||||
|
|
||||||
Added resistance and temperature sweep.
|
|
||||||
|
|
||||||
|
|
||||||
4 Pole-zero analysis (PZ)
|
4 Pole-zero analysis (PZ)
|
||||||
|
|
@ -57,7 +63,8 @@ Table of Contents
|
||||||
ac transfer function. The program first computes the dc operating point and
|
ac transfer function. The program first computes the dc operating point and
|
||||||
then determines the linearized, small-signal models for all the nonlinear
|
then determines the linearized, small-signal models for all the nonlinear
|
||||||
devices in the circuit. This circuit is then used to find the poles and zeros
|
devices in the circuit. This circuit is then used to find the poles and zeros
|
||||||
of the transfer function.
|
of the transfer function. Unfortunately this code is (since its inception in
|
||||||
|
spice3) not free of bugs.
|
||||||
|
|
||||||
|
|
||||||
5 Small-Signal distortion analysis (DISTO)
|
5 Small-Signal distortion analysis (DISTO)
|
||||||
|
|
|
||||||
3
AUTHORS
3
AUTHORS
|
|
@ -7,12 +7,12 @@ releasing patches to the original code through the Internet.
|
||||||
|
|
||||||
The following people have contributed in some way:
|
The following people have contributed in some way:
|
||||||
|
|
||||||
@verbatim
|
|
||||||
Vera Albrecht,
|
Vera Albrecht,
|
||||||
Cecil Aswell,
|
Cecil Aswell,
|
||||||
Giles C. Billingsley,
|
Giles C. Billingsley,
|
||||||
Phil Barker,
|
Phil Barker,
|
||||||
Steven Borley,
|
Steven Borley,
|
||||||
|
Krzysztof Blaszkowski,
|
||||||
Stuart Brorson,
|
Stuart Brorson,
|
||||||
Mansun Chan,
|
Mansun Chan,
|
||||||
Wayne A. Christopher,
|
Wayne A. Christopher,
|
||||||
|
|
@ -68,7 +68,6 @@ Michael Widlok,
|
||||||
Charles D.H. Williams,
|
Charles D.H. Williams,
|
||||||
Antony Wilson,
|
Antony Wilson,
|
||||||
and many others...
|
and many others...
|
||||||
@end verbatim
|
|
||||||
|
|
||||||
If someone helped in the development and has not been inserted in this list
|
If someone helped in the development and has not been inserted in this list
|
||||||
then this omission was unintentional. If you feel you should be on this list
|
then this omission was unintentional. If you feel you should be on this list
|
||||||
|
|
|
||||||
36
COPYING
36
COPYING
|
|
@ -1,47 +1,51 @@
|
||||||
12345678901234567890123456789012345678901234567890123456789012345678901234567890
|
12345678901234567890123456789012345678901234567890123456789012345678901234567890
|
||||||
Ngspice-25
|
Ngspice 26
|
||||||
Copyright (c) 2012,
|
Copyright (c) 2014,
|
||||||
All rights reserved.
|
All rights reserved.
|
||||||
|
|
||||||
|
|
||||||
Foreword:
|
Foreword:
|
||||||
Spice's name was originally chosen at the University of California, Berkeley.
|
The name 'Spice' (Simulation Program with Integrated Circuit Emphasis)
|
||||||
As it is the basis of almost all circuit simulators, the major part of the
|
was originally chosen at the University of California, Berkeley. The
|
||||||
|
original Berkeley code is covered under the modified BSD license and
|
||||||
|
thus sets the basis for all other code added.
|
||||||
|
As Spice is the basis of almost all circuit simulators, the major part of the
|
||||||
analogue and mixed signals simulation's code is designed to fit with it.
|
analogue and mixed signals simulation's code is designed to fit with it.
|
||||||
The *spices (generic name for its forks) are heterogeneous in many points due
|
The *spices (generic name for its forks) are heterogeneous in many points due
|
||||||
to the work of researchers, electronic designers, software editors, etc.
|
to the work of researchers, electronic designers, software editors, etc.
|
||||||
The Ngspice team tries to collect work from the different sources and
|
The Ngspice team tries to collect work from the different sources and
|
||||||
contribute new functionalities. Thus, the material we manipulate is
|
contribute new functionalities. Thus, the material we manipulate is
|
||||||
heterogeneous in licenses. Keeping the licenses as is, is the way to live with
|
heterogeneous in licenses. Keeping the licenses as is, but also keep it
|
||||||
that diversity. For release 25 as well, we choose not to relicense.
|
compatible with the new BSD license, is the way to live with that diversity.
|
||||||
|
|
||||||
Copyleft is a fundamental question in FOSS development. The choice of a
|
Copyleft is a fundamental question in FOSS development. The choice of a
|
||||||
copylefted contribution, or a non copylefted contribution is an important
|
copylefted contribution, or a non copylefted contribution is an important
|
||||||
choice that should be respected. Ngspice branch as a whole will not be covered
|
choice that should be respected. Ngspice branch as a whole will not be covered
|
||||||
by a specific license. The Ngspice team wants to encourage contributions to
|
by a specific license. The Ngspice team wants to encourage contributions to
|
||||||
ngspice. We let each new developper choose its position regarding copyleft,
|
ngspice. We let each new developer choose its position regarding copyleft,
|
||||||
as we respect the position of the former developpers. In order to keep things
|
as we respect the position of the former developers. In order to keep things
|
||||||
clear ngspice team proposes to follow the following guidelines:
|
clear ngspice team proposes to follow the following guidelines:
|
||||||
|
|
||||||
Each piece of code should be kept under its original contributor's license.
|
Each piece of code should be kept under its original contributor's license.
|
||||||
As for any project, modifications made in sources covered by a less
|
As for any project, modifications made in sources covered by a less
|
||||||
restrictive license can be covered by a more restrictive license, such as
|
restrictive license can be covered by a more restrictive license than new BSD.
|
||||||
GPL. We do not encourage it.
|
We do not encourage it.
|
||||||
|
|
||||||
If you feel to add code in a file under a different license than the rest of
|
If you feel to add code in a file under a different license than the rest of
|
||||||
the file, please use comments to mark the boundaries of the modification, and
|
the file, please use comments to mark the boundaries of the modification, and
|
||||||
edit the comments at the begining of the file with correct license and
|
edit the comments at the beginning of the file with correct license and
|
||||||
copyright information.
|
copyright information.
|
||||||
|
|
||||||
We encourage restrictive licenses to be chosen only for new functionalities,
|
We encourage restrictive licenses to be chosen only for new functionalities,
|
||||||
written in distinct files, leading to distinct libraries that links depending
|
written in distinct files, leading to distinct libraries that link depending
|
||||||
on a specific configure flag.
|
on a specific configure flag.
|
||||||
|
|
||||||
We encourage non proliferation of licenses (e.g. choosing either GPL, LGPL or
|
We encourage non proliferation of licenses (e.g. choosing either LGPL or
|
||||||
new BSD).
|
new BSD). GPL is not suitable for code to be directly linked into ngspice,
|
||||||
|
but may be used in shared object libraries only.
|
||||||
|
|
||||||
This heterogenous license status makes it difficult to know which license
|
This heterogeneous license status requires some effort to keep track on licenses
|
||||||
applies. Please take care of knowing which license aplies to the code you are
|
applied. Please take care of knowing which license applies to the code you are
|
||||||
editing, or conveying and not to commit license infringements, especially to
|
editing, or conveying and not to commit license infringements, especially to
|
||||||
GPL and LGPL which are quite restrictive.
|
GPL and LGPL which are quite restrictive.
|
||||||
|
|
||||||
|
|
|
||||||
3
DEVICES
3
DEVICES
|
|
@ -66,6 +66,7 @@ Table of contents
|
||||||
13.3 HICUM0 Bipolar Model
|
13.3 HICUM0 Bipolar Model
|
||||||
13.4 HICUM2 Bipolar Model
|
13.4 HICUM2 Bipolar Model
|
||||||
13.5 Mextram Bipolar Model
|
13.5 Mextram Bipolar Model
|
||||||
|
14. XSPICE code models
|
||||||
|
|
||||||
------------------
|
------------------
|
||||||
|
|
||||||
|
|
@ -849,3 +850,5 @@ will be updated every time the device specific code is altered or changed to ref
|
||||||
Status: TO BE TESTED
|
Status: TO BE TESTED
|
||||||
|
|
||||||
Web site at: http://mextram.ewi.tudelft.nl/ and http://mextram.sourceforge.net/
|
Web site at: http://mextram.ewi.tudelft.nl/ and http://mextram.sourceforge.net/
|
||||||
|
|
||||||
|
14. XSpice code models, see ngspice manual chapt. 12
|
||||||
|
|
|
||||||
134
FAQ
134
FAQ
|
|
@ -1,6 +1,6 @@
|
||||||
Ngspice F.A.Q.Version 1.9 (rework-25 release)
|
Ngspice F.A.Q.Version 2.0 (ngspice 26 release)
|
||||||
Maintained by Paolo Nenzi, Holger Vogt
|
Maintained by Paolo Nenzi, Holger Vogt
|
||||||
Last update: 22-12-2012
|
Last update: 02-01-2014
|
||||||
|
|
||||||
This document contains the Frequently Asked Questions (and Answers)
|
This document contains the Frequently Asked Questions (and Answers)
|
||||||
for ngspice project.
|
for ngspice project.
|
||||||
|
|
@ -11,17 +11,18 @@
|
||||||
|
|
||||||
1. INTRODUCTION AND GENERAL INFORMATION
|
1. INTRODUCTION AND GENERAL INFORMATION
|
||||||
1.1 What is ngspice?
|
1.1 What is ngspice?
|
||||||
1.2 What is tclspice ?
|
1.2 What is sharedspice?
|
||||||
1.3 Why resurrecting Berkeley's Spice?
|
1.3 What is tclspice ?
|
||||||
1.4 What is the project's goal?
|
1.4 Why resurrecting Berkeley's Spice?
|
||||||
1.5 What you are going to do?
|
1.5 What is the project's goal?
|
||||||
1.6 Legal issues
|
1.6 What you are going to do?
|
||||||
1.7 What mailing lists exist for ngspice?
|
1.7 Legal issues
|
||||||
1.8 Are the mailing lists archived anywhere?
|
1.8 What mailing lists exist for ngspice?
|
||||||
1.9 What newsgroups exist for ngspice?
|
1.9 Are the mailing lists archived anywhere?
|
||||||
1.10 Where can I get a copy of ngspice?
|
1.10 What newsgroups exist for ngspice?
|
||||||
1.11 Where should I look on the World Wide Web for ngspice stuff?
|
1.11 Where can I get a copy of ngspice?
|
||||||
1.12 Where should I look on the World Wide Web for Spice documentation?
|
1.12 Where should I look on the World Wide Web for ngspice stuff?
|
||||||
|
1.13 Where should I look on the World Wide Web for Spice documentation?
|
||||||
|
|
||||||
2. DEVELOPMENT
|
2. DEVELOPMENT
|
||||||
2.1 What is the current version?
|
2.1 What is the current version?
|
||||||
|
|
@ -52,8 +53,9 @@
|
||||||
|
|
||||||
1.1 What is ngspice ?
|
1.1 What is ngspice ?
|
||||||
|
|
||||||
Ngspice is a mixed-level/mixed-signal circuit simulator based on three
|
Ngspice is a mixed-level/mixed-signal circuit simulator, based on three
|
||||||
open source software packages: Spice3f5, Cider1b1 and Xspice:
|
open source software packages: Spice3f5, Cider1b1 and Xspice, and
|
||||||
|
including many bug fixes and enhancements:
|
||||||
|
|
||||||
- Spice3 is a widely used circuit simulator. It was developed by the
|
- Spice3 is a widely used circuit simulator. It was developed by the
|
||||||
University of California at Berkeley (UCB), by "a cast of thousand"
|
University of California at Berkeley (UCB), by "a cast of thousand"
|
||||||
|
|
@ -73,20 +75,28 @@
|
||||||
|
|
||||||
The NG prefix has lot of meanings: Next Generation, New Good, etc.
|
The NG prefix has lot of meanings: Next Generation, New Good, etc.
|
||||||
Choose or invent the one you prefer. The heart of the project is the
|
Choose or invent the one you prefer. The heart of the project is the
|
||||||
ngspice program.
|
ngspice program, with its tremendous advancements.
|
||||||
|
|
||||||
|
|
||||||
1.2 What is tclspice ?
|
1.2 What is sharedspice ?
|
||||||
|
|
||||||
Tclspice is a circuit simulator that embeds ngspice and provides a
|
Sharedspice is an interface option to ngspice. It compiles the simulator
|
||||||
tcl/tk interface to the user. Tclspice is both a batch and interactive
|
into a shared object (or dynamic link library), providing full control
|
||||||
simulator and a building block for simulator applications. Analyses can
|
of ngspice to any suitable controlling program (GUI, optimizer,
|
||||||
be run from a tcl script and vector plotted or post processed using tcl
|
development system, etc., to be provided by the user).
|
||||||
or a small GUI can be built to analyze a circuit or a set of circuits.
|
|
||||||
|
|
||||||
|
1.3 What is tclspice ?
|
||||||
|
|
||||||
|
Tclspice is a another interface option of ngspice, providing a tcl/tk
|
||||||
|
interface to the user. Tclspice is both a batch and interactive simulator
|
||||||
|
and a building block for simulator applications. Analyses can be run
|
||||||
|
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.
|
Tclspice is obtained compiling ngspice activating an additional option.
|
||||||
|
|
||||||
|
|
||||||
1.3 Why resurrecting Berkeley's Spice?
|
1.4 Why resurrecting Berkeley's Spice?
|
||||||
|
|
||||||
Berkeley's Spice can be considered the father of most circuit
|
Berkeley's Spice can be considered the father of most circuit
|
||||||
simulators available today. It is an old but still good piece of
|
simulators available today. It is an old but still good piece of
|
||||||
|
|
@ -99,7 +109,7 @@
|
||||||
its source code in the past made this simulator the de-facto standard.
|
its source code in the past made this simulator the de-facto standard.
|
||||||
|
|
||||||
|
|
||||||
1.4 What is the project's goal?
|
1.5 What is the project's goal?
|
||||||
|
|
||||||
Ngspice is both a maintenance and enhancement project. It is a maintenance
|
Ngspice is both a maintenance and enhancement project. It is a maintenance
|
||||||
project because it aims to provide the free EDA community the best spice3
|
project because it aims to provide the free EDA community the best spice3
|
||||||
|
|
@ -110,7 +120,7 @@
|
||||||
capabilities) and user interface are other goals.
|
capabilities) and user interface are other goals.
|
||||||
|
|
||||||
|
|
||||||
1.5 What you are going to do?
|
1.6 What you are going to do?
|
||||||
|
|
||||||
An official roadmap for ngspice was never drawn. Contributions made by
|
An official roadmap for ngspice was never drawn. Contributions made by
|
||||||
developers drive ngspice development and the roadmap is built day by
|
developers drive ngspice development and the roadmap is built day by
|
||||||
|
|
@ -119,7 +129,7 @@
|
||||||
|
|
||||||
+ Compatibility: Ngspice should be compatible with commercial products,
|
+ Compatibility: Ngspice should be compatible with commercial products,
|
||||||
thus allowing people to use the netlist generated for such tools. As
|
thus allowing people to use the netlist generated for such tools. As
|
||||||
most of the commercial simulators avaiable tracked each other in netlist
|
most of the commercial simulators available tracked each other in netlist
|
||||||
language, this should not be an impossible task. The most important goal
|
language, this should not be an impossible task. The most important goal
|
||||||
here is to provide a reliable support for model libraries coming from
|
here is to provide a reliable support for model libraries coming from
|
||||||
foundries.
|
foundries.
|
||||||
|
|
@ -135,28 +145,29 @@
|
||||||
Spice3f manual, available on the Internet has been used as the basis
|
Spice3f manual, available on the Internet has been used as the basis
|
||||||
for the new manual. It will be constantly improved during ngspice
|
for the new manual. It will be constantly improved during ngspice
|
||||||
development and integrated with the documentation accompanying Xspice
|
development and integrated with the documentation accompanying Xspice
|
||||||
and Cider. This is a very time consuming task and probably the
|
and Cider. The ngspice manual today contains description of all
|
||||||
documentation will always be left slightly behind.
|
features ngspice is offering. It is however not a tutorial of ngspice
|
||||||
|
usage, but there are now several good ones available on the internet
|
||||||
|
(see http://ngspice.sourceforge.net/tutorials.html).
|
||||||
|
|
||||||
|
|
||||||
1.6 Legal issues
|
1.7 Legal issues
|
||||||
|
|
||||||
Ngspice, starting from release rework-18 is released under BSD/LGPL
|
The ngspice base license is new BSD, as provided by UCB. For some parts
|
||||||
license. Part of the code are covered by other compatible licenses:
|
of the code other compatible licences apply. Please see file COPYING
|
||||||
spice3 and cider are BSD, xspice is Public Domain and TCLSPICE is
|
for details.
|
||||||
LGPL and the copyright is of their respective owners (need to write better)
|
|
||||||
|
|
||||||
|
|
||||||
1.7. What mailing lists exist for ngspice?
|
1.8 What mailing lists exist for ngspice?
|
||||||
|
|
||||||
There are two general mailing lists dedicated to the ngspice project.
|
There are two general mailing lists dedicated to the ngspice project.
|
||||||
|
|
||||||
Users mailing list: <ngspice-users@lists.sourceforge.net>
|
Users mailing list: <ngspice-users@lists.sourceforge.net>
|
||||||
This list is for ngspice users, examples, problems, bug reports
|
This list is for ngspice users. Examples, problems, bug reports
|
||||||
and general discussion on ngspice can be sent here.
|
and general discussion on ngspice can be sent here.
|
||||||
|
|
||||||
Developers mailing list: <ngspice-devel@lists.sourceforge.net>
|
Developers mailing list: <ngspice-devel@lists.sourceforge.net>
|
||||||
The list dedicated to ngspice development. Developers shold
|
The list is dedicated to ngspice development. Developers should
|
||||||
subscribe here, to follow the program development. May be used
|
subscribe here, to follow the program development. May be used
|
||||||
to send patches, and technical discussion on ngspice.
|
to send patches, and technical discussion on ngspice.
|
||||||
|
|
||||||
|
|
@ -176,64 +187,49 @@
|
||||||
http://www.gnu.org/software/mailman/mailman-member
|
http://www.gnu.org/software/mailman/mailman-member
|
||||||
|
|
||||||
|
|
||||||
1.8. Are the mailing lists archived anywhere ?
|
1.9 Are the mailing lists archived anywhere ?
|
||||||
|
|
||||||
Yes, the lists are archived. There are two places where to look for
|
Yes, the lists are archived. There are two places where to look for
|
||||||
archives. The project started on the IEEE Central and South Italy
|
archives. The project started on the IEEE Central and South Italy
|
||||||
web server and then moved to sourceforge. Sourceforge provides an
|
web server and then moved to sourceforge. Sourceforge provides an
|
||||||
archiving service that cam be accessed via the summary page:
|
archiving service that cam be accessed via the summary page:
|
||||||
|
|
||||||
http://sourceforge.net/projects/ngspice
|
http://sourceforge.net/p/ngspice/mailman/
|
||||||
|
|
||||||
(look for the "Lists" link). Old messages from the pre-sourceforge
|
|
||||||
age are available at:
|
|
||||||
|
|
||||||
http://ngspice.sourceforge.net/lists.html
|
|
||||||
|
|
||||||
|
|
||||||
1.9. What newsgroups exist for ngspice?
|
|
||||||
|
|
||||||
There is no ngspice specific newsgroup. Anyway ngspice threads appear
|
1.10 What newsgroups exist for ngspice?
|
||||||
on newsgroups dedicated to circuit simulation and electronic design.
|
|
||||||
An (incomplete) list is:
|
|
||||||
|
|
||||||
sci.electronics.cad
|
There is no ngspice specific newsgroup. Sourceforge offers additional
|
||||||
comp.lsi.cad
|
discussion groups for ngspice, please see
|
||||||
|
|
||||||
|
http://sourceforge.net/p/ngspice/discussion/
|
||||||
|
|
||||||
|
ngspice threads may appear on newsgroups dedicated to circuit
|
||||||
|
simulation and electronic design.
|
||||||
|
|
||||||
|
|
||||||
1.10. Where can I get a copy of ngspice?
|
1.11 Where can I get a copy of ngspice?
|
||||||
|
|
||||||
You can download ngspice from:
|
You can download ngspice from:
|
||||||
|
|
||||||
http://sourceforge.net/projects/ngspice
|
http://sourceforge.net/projects/ngspice/files/ng-spice-rework/
|
||||||
|
|
||||||
|
|
||||||
1.11. Where should I look on the World Wide Web for ngspice stuff?
|
1.12 Where should I look on the World Wide Web for ngspice stuff?
|
||||||
|
|
||||||
Look at the official Ngpice Web Page:
|
Look at the official Ngpice Web Page:
|
||||||
|
|
||||||
http://ngspice.sourceforge.net
|
http://ngspice.sourceforge.net
|
||||||
|
|
||||||
|
|
||||||
1.12. Where should I look on the World Wide Web for Spice documentation?
|
1.13 Where should I look on the World Wide Web for Spice documentation?
|
||||||
|
|
||||||
There is a detailed ngspice manual available at:
|
There is a detailed ngspice manual available at:
|
||||||
http://ngspice.sourceforge.net/docs.html
|
http://ngspice.sourceforge.net/docs.html
|
||||||
|
|
||||||
There are a lot of Internet sites that have information on spice. The
|
Others docs are assembled at:
|
||||||
best way is to ask your preferred search engine. Some interesting
|
http://ngspice.sourceforge.net/literature.html
|
||||||
sites are:
|
|
||||||
|
|
||||||
Pages on Spice:
|
|
||||||
http://bwrc.eecs.berkeley.edu/Classes/IcBook/SPICE/
|
|
||||||
http://embedded.eecs.berkeley.edu/pubs/downloads/spice/index.htm
|
|
||||||
http://newton.ex.ac.uk/teaching/CDHW/Electronics2/userguide/index.html#toc
|
|
||||||
|
|
||||||
Xspice Page:
|
|
||||||
http://users.ece.gatech.edu/~mrichard/Xspice
|
|
||||||
|
|
||||||
Cider Page:
|
|
||||||
http://embedded.eecs.berkeley.edu/pubs/downloads/cider/index.htm
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -244,7 +240,7 @@
|
||||||
|
|
||||||
The latest version released is:
|
The latest version released is:
|
||||||
|
|
||||||
* ngspice-rework-25 (released on 04/01/2013)
|
* ngspice-26 (released on 04/01/2013)
|
||||||
|
|
||||||
|
|
||||||
2.2. What are the latest features in the current release?
|
2.2. What are the latest features in the current release?
|
||||||
|
|
@ -288,7 +284,7 @@
|
||||||
2.3. What does it look like?
|
2.3. What does it look like?
|
||||||
|
|
||||||
Ngspice, as the original Spice3 (and Xspice and Cider) is a command
|
Ngspice, as the original Spice3 (and Xspice and Cider) is a command
|
||||||
line simulator.
|
line simulator, but with a graphics output capability.
|
||||||
|
|
||||||
|
|
||||||
2.4. Who are the authors of ngspice?
|
2.4. Who are the authors of ngspice?
|
||||||
|
|
|
||||||
38
INSTALL
38
INSTALL
|
|
@ -5,7 +5,7 @@ Table of contents
|
||||||
|
|
||||||
1 Ngspice installation (LINUX)
|
1 Ngspice installation (LINUX)
|
||||||
1.1 Prerequisites
|
1.1 Prerequisites
|
||||||
1.2 Install from tarball (e.g. ngspice-25.tar.gz)
|
1.2 Install from tarball (e.g. ngspice-26.tar.gz)
|
||||||
1.3 Install from git repository
|
1.3 Install from git repository
|
||||||
1.4 Advanced Install
|
1.4 Advanced Install
|
||||||
1.4.1 Most useful options
|
1.4.1 Most useful options
|
||||||
|
|
@ -41,7 +41,7 @@ This file describes the procedures to install ngspice from sources.
|
||||||
bison, flex, and X11 headers and libs.
|
bison, flex, and X11 headers and libs.
|
||||||
|
|
||||||
If you want to compile the source from the git repository you need
|
If you want to compile the source from the git repository you need
|
||||||
additional software: autoconf, automake, libtool, texinfo.
|
additional software: autoconf, automake, libtool, texinfo, readline.
|
||||||
|
|
||||||
The following software may be needed when enabling additional features:
|
The following software may be needed when enabling additional features:
|
||||||
editline, tcl/tk, adms
|
editline, tcl/tk, adms
|
||||||
|
|
@ -51,14 +51,14 @@ This file describes the procedures to install ngspice from sources.
|
||||||
information on ngspice and its usage.
|
information on ngspice and its usage.
|
||||||
|
|
||||||
|
|
||||||
1.2 Install from tarball (e.g. ngspice-25.tar.gz)
|
1.2 Install from tarball (e.g. ngspice-26.tar.gz)
|
||||||
|
|
||||||
This covers installation from a release distribution (for example
|
This covers installation from a release distribution (for example
|
||||||
ngspice-25.tar.gz, the so called tar ball).
|
ngspice-26.tar.gz, the so called tar ball).
|
||||||
|
|
||||||
After downloading the tar ball to a local directory unpack it using:
|
After downloading the tar ball to a local directory unpack it using:
|
||||||
|
|
||||||
$ tar -zxvf ngspice-25.tar.gz
|
$ tar -zxvf ngspice-26.tar.gz
|
||||||
|
|
||||||
Now change directories in to the top-level source directory (where this
|
Now change directories in to the top-level source directory (where this
|
||||||
INSTALL file can be found).
|
INSTALL file can be found).
|
||||||
|
|
@ -99,12 +99,12 @@ This file describes the procedures to install ngspice from sources.
|
||||||
|
|
||||||
This section describes how to install from source code taken directly
|
This section describes how to install from source code taken directly
|
||||||
from the git repository. It is intended for those who want to use the most
|
from the git repository. It is intended for those who want to use the most
|
||||||
recent enahancements of ngspice and for developers. For user install
|
recent enhancements of ngspice and for developers. For user install
|
||||||
instructions using source from a released distributions, please see the
|
instructions using source from a released distributions, please see the
|
||||||
sections titled 'Install from tarball' and 'Advanced Install'.
|
sections titled 'Install from tarball' and 'Advanced Install'.
|
||||||
|
|
||||||
Download ngspice sources from the git repository as described on the sourceforge project page
|
Download ngspice sources from the git repository as described on the sourceforge project page
|
||||||
(see http://sourceforge.net/projects/ngspice/ and click on the git link)
|
(see http://ngspice.sourceforge.net/download.html and click on the git link)
|
||||||
|
|
||||||
Now change directories in to the top-level source directory (where this
|
Now change directories in to the top-level source directory (where this
|
||||||
INSTALL file can be found).
|
INSTALL file can be found).
|
||||||
|
|
@ -115,7 +115,7 @@ This file describes the procedures to install ngspice from sources.
|
||||||
$ ./autogen.sh
|
$ ./autogen.sh
|
||||||
$ mkdir debug
|
$ mkdir debug
|
||||||
$ cd debug
|
$ cd debug
|
||||||
$ ../configure --enable-maintainer-mode
|
$ ../configure --with-x --with-readline=yes
|
||||||
$ make
|
$ make
|
||||||
$ sudo make install
|
$ sudo make install
|
||||||
|
|
||||||
|
|
@ -123,7 +123,7 @@ This file describes the procedures to install ngspice from sources.
|
||||||
that can be passed to ./configure to customise the build and installation.
|
that can be passed to ./configure to customise the build and installation.
|
||||||
|
|
||||||
Preferred arguments to ./configure to obtain a comfortably working ngspice may be
|
Preferred arguments to ./configure to obtain a comfortably working ngspice may be
|
||||||
--with-readline=yes and --disable-debug (for smaller and speed optimized
|
--with-readline=yes and --disable-debug (for a smaller and speed optimized
|
||||||
executable).
|
executable).
|
||||||
|
|
||||||
A fully featured ngspice on LINUX may be obtained with the following commands:
|
A fully featured ngspice on LINUX may be obtained with the following commands:
|
||||||
|
|
@ -134,8 +134,8 @@ This file describes the procedures to install ngspice from sources.
|
||||||
$ make 2>&1 | tee make.log
|
$ make 2>&1 | tee make.log
|
||||||
$ sudo make install
|
$ sudo make install
|
||||||
|
|
||||||
If a problem is found with the build proccess, please submit a report to
|
If a problem is found with the build process, please submit a report to
|
||||||
the Ngspice development team. Please provide information about your system
|
the ngspice development team. Please provide information about your system
|
||||||
and any ./configure arguments you are using, together with any error
|
and any ./configure arguments you are using, together with any error
|
||||||
messages. Ideally you would have tried to fix the problem yourself first.
|
messages. Ideally you would have tried to fix the problem yourself first.
|
||||||
If you have fixed the problem then the development team will love to hear
|
If you have fixed the problem then the development team will love to hear
|
||||||
|
|
@ -451,8 +451,8 @@ Most of the options now following are not well maintained, are not tested or eve
|
||||||
to the standard install (FLEX and BISON have to be made available in MSYS).
|
to the standard install (FLEX and BISON have to be made available in MSYS).
|
||||||
Some links are given below which describe the procedures.
|
Some links are given below which describe the procedures.
|
||||||
|
|
||||||
Installing from the tarball, e.g. ngspice-25.tar.gz, is now simple: After
|
Installing from the tarball, e.g. ngspice-26.tar.gz, is now simple: After
|
||||||
expanding, you may just run ./compile_min.sh from the ngspice-25 directory.
|
expanding, you may just run ./compile_min.sh from the ngspice-26 directory.
|
||||||
|
|
||||||
The default installation location of ngspice is the Windows path
|
The default installation location of ngspice is the Windows path
|
||||||
C:\spice. The install path can be altered by passing --prefix=NEWPATH
|
C:\spice. The install path can be altered by passing --prefix=NEWPATH
|
||||||
|
|
@ -466,14 +466,14 @@ Most of the options now following are not well maintained, are not tested or eve
|
||||||
The procedure of compiling a distribution (for example, a tarball from
|
The procedure of compiling a distribution (for example, a tarball from
|
||||||
the ngspice website), is as follows:
|
the ngspice website), is as follows:
|
||||||
|
|
||||||
$ cd ngspice-25
|
$ cd ngspice-26
|
||||||
$ mkdir release
|
$ mkdir release
|
||||||
$ cd release
|
$ cd release
|
||||||
$ ../configure --with-wingui ...and other options
|
$ ../configure --with-wingui ...and other options
|
||||||
$ make
|
$ make
|
||||||
$ make install
|
$ make install
|
||||||
|
|
||||||
The useful options are:
|
The most useful options are:
|
||||||
--enable-xspice
|
--enable-xspice
|
||||||
--enable-cider
|
--enable-cider
|
||||||
--disable-debug (-O2 optimization, no debug information)
|
--disable-debug (-O2 optimization, no debug information)
|
||||||
|
|
@ -486,9 +486,10 @@ Most of the options now following are not well maintained, are not tested or eve
|
||||||
$ make install
|
$ make install
|
||||||
|
|
||||||
However, to compile code extracted from the git repository the procedure is
|
However, to compile code extracted from the git repository the procedure is
|
||||||
a little different. To obtain ngspice, you may do the following:
|
a little different. Firstly install git, e.g. from http://git-scm.com/download/win
|
||||||
|
To obtain ngspice, you may do the following:
|
||||||
|
|
||||||
Go to a directory of your choice, e.g. D:\Spice
|
Open the git command window. Go to a directory of your choice, e.g. D:\Spice
|
||||||
$ cd /d/Spice
|
$ cd /d/Spice
|
||||||
|
|
||||||
Issue the command for downloading ngspice:
|
Issue the command for downloading ngspice:
|
||||||
|
|
@ -562,7 +563,8 @@ Most of the options now following are not well maintained, are not tested or eve
|
||||||
vngspice.sln (project starter) and
|
vngspice.sln (project starter) and
|
||||||
vngspice.vcproj (project contents)
|
vngspice.vcproj (project contents)
|
||||||
allows to compile and link ngspice with MS Visual Studio 2008.
|
allows to compile and link ngspice with MS Visual Studio 2008.
|
||||||
The project is probably not compatible with Visual Studio 2005.
|
Newer Visual Studio versions will translate the project files
|
||||||
|
into their compatible format (tested with MS Visual Studio 2010).
|
||||||
|
|
||||||
/visualc/include contains a dedicated config.h file. It contains the
|
/visualc/include contains a dedicated config.h file. It contains the
|
||||||
preprocessor definitions required to properly compile the code.
|
preprocessor definitions required to properly compile the code.
|
||||||
|
|
|
||||||
29
NEWS
29
NEWS
|
|
@ -1,3 +1,32 @@
|
||||||
|
Ngspice-26, Jan 4th, 2014
|
||||||
|
============
|
||||||
|
|
||||||
|
- New features:
|
||||||
|
+ fft command may (optionally) use fftw3 library
|
||||||
|
+ add nint() rounding function
|
||||||
|
+ usage of 'temper' in behavioral devices
|
||||||
|
+ check for soa (safe operating area) in several device models
|
||||||
|
+ library processing rewritten completely to enhance ngspice
|
||||||
|
compatibility (.lib)
|
||||||
|
+ include file processing rewritten to allow nesting and various
|
||||||
|
absolute and relative path names (.inc)
|
||||||
|
+ asinh, acosh, atanh functions
|
||||||
|
+ shared ngspice option added: ngspice optionally compiles as
|
||||||
|
a shared object or dynamic link library
|
||||||
|
+ use a hash table to massively speeding up finding a model
|
||||||
|
+ implement a very basic .if/.else block
|
||||||
|
+ implement a signed power function `pwr' for controlled sources
|
||||||
|
+ implement multiplier `m' in F, G source
|
||||||
|
+ apply Area Calculation Method (ACM) to the bsim3v3.3 model
|
||||||
|
+ implement `tc1', `tc2' instance parameters
|
||||||
|
|
||||||
|
- Bug fixes:
|
||||||
|
+ many, many ... please see
|
||||||
|
http://sourceforge.net/p/ngspice/ngspice/ci/master/tree/
|
||||||
|
and check the 'history' button on the upper right.
|
||||||
|
+ removed memory leaks
|
||||||
|
|
||||||
|
|
||||||
Ngspice-25, Jan 4th, 2013
|
Ngspice-25, Jan 4th, 2013
|
||||||
============
|
============
|
||||||
|
|
||||||
|
|
|
||||||
10
README
10
README
|
|
@ -13,11 +13,11 @@ Cider couples Spice3f5 circuit level simulator to DSIM device simulator
|
||||||
to provide greater simulation accuracy of critical devices. DSIM
|
to provide greater simulation accuracy of critical devices. DSIM
|
||||||
devices are described in terms of their structures and materials.
|
devices are described in terms of their structures and materials.
|
||||||
|
|
||||||
Xspice is an extension to Spice3C1 that provides code modeling support
|
Xspice is an extension to Spice3C1 that provides code modelling support
|
||||||
and simulation of digital components through an embedded event driven
|
and simulation of digital components through an embedded event driven
|
||||||
algorithm.
|
algorithm.
|
||||||
|
|
||||||
Ngspice is, anyway, a little more than the simple sum of the packages
|
Ngspice is, anyway, much more than the simple sum of the packages
|
||||||
above, as many people contributed to the project with their experience,
|
above, as many people contributed to the project with their experience,
|
||||||
their bug fixes and their improvements. If you are interested, browse
|
their bug fixes and their improvements. If you are interested, browse
|
||||||
the site and discover what ngspice offers and what needs. If you think
|
the site and discover what ngspice offers and what needs. If you think
|
||||||
|
|
@ -45,12 +45,6 @@ MAILING LISTS:
|
||||||
<ngspice-devel-subscribe@lists.sourceforge.net>
|
<ngspice-devel-subscribe@lists.sourceforge.net>
|
||||||
|
|
||||||
|
|
||||||
OBSOLETE MAILING LISTS:
|
|
||||||
-------------
|
|
||||||
* ngspice-bugs@list.sourceforge.net:
|
|
||||||
This list is no longer used by the ngspice maintainers. Bug reports should
|
|
||||||
go to the ngspice bug tracker.
|
|
||||||
|
|
||||||
|
|
||||||
WEB SITEs:
|
WEB SITEs:
|
||||||
--------
|
--------
|
||||||
|
|
|
||||||
|
|
@ -19,6 +19,13 @@
|
||||||
*Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.*
|
*Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.*
|
||||||
*********************************************************************************
|
*********************************************************************************
|
||||||
|
|
||||||
|
WARNING!
|
||||||
|
|
||||||
|
The text in this document has been prepared in 2006 and is partially outdated.
|
||||||
|
It is provided here only for reference and may provide some (historical)
|
||||||
|
information.
|
||||||
|
|
||||||
|
|
||||||
Welcome to tclspice README_tcl
|
Welcome to tclspice README_tcl
|
||||||
|
|
||||||
This file acompanies ngspice sources starting with ngspice-rework-18. It
|
This file acompanies ngspice sources starting with ngspice-rework-18. It
|
||||||
|
|
@ -57,7 +64,7 @@ tk : the graphical extension of tcl, to represent data graphically and for GUIs
|
||||||
blt : BLT toolkit gives number handling and plotting features to tcl/tk
|
blt : BLT toolkit gives number handling and plotting features to tcl/tk
|
||||||
|
|
||||||
The most tested configuration is the latest:
|
The most tested configuration is the latest:
|
||||||
tclspice-25
|
tclspice-26
|
||||||
tcl 8.4
|
tcl 8.4
|
||||||
tk 8.4
|
tk 8.4
|
||||||
blt 2.4
|
blt 2.4
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,11 @@
|
||||||
SPICE 2 POLY CODEMODEL
|
SPICE 2 POLY CODEMODEL
|
||||||
|
|
||||||
|
WARNING!
|
||||||
|
|
||||||
|
The text in this document has been prepared in 2003 and is outdated. It is
|
||||||
|
provided here only for reference and may provide some (historical)
|
||||||
|
information.
|
||||||
|
|
||||||
SPICE2 POLY attributes are now available for controlled sources. To
|
SPICE2 POLY attributes are now available for controlled sources. To
|
||||||
use POLY attributes, configure tclspice/ngspice with the
|
use POLY attributes, configure tclspice/ngspice with the
|
||||||
--enable-xspice flag set as described above. After compilation of
|
--enable-xspice flag set as described above. After compilation of
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue