Skip to content

Commit

Permalink
Updates to prepare ngspice-38
Browse files Browse the repository at this point in the history
  • Loading branch information
holvo committed Oct 23, 2022
1 parent 638a09b commit 8cec3a6
Show file tree
Hide file tree
Showing 5 changed files with 69 additions and 50 deletions.
3 changes: 0 additions & 3 deletions COPYING
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,6 @@ its source code, test and example files except for the files listed below.

************** files with licenses different to 'Modified BSD' ****************

* ngspice/contrib
GPL, Public Domain

* ngspice/m4
unnamed, compatible to DFSG

Expand Down
7 changes: 7 additions & 0 deletions DEVICES
Original file line number Diff line number Diff line change
Expand Up @@ -69,6 +69,7 @@ Table of contents
13.4 HICUM0 Bipolar Model
13.5 Mextram Bipolar Model
14. XSPICE code models
15. Digital Building Blocks (U instances)

------------------

Expand Down Expand Up @@ -870,3 +871,9 @@ will be updated every time the device specific code is altered or changed to ref
Web site at: http://mextram.ewi.tudelft.nl/ and http://mextram.sourceforge.net/

14. XSpice code models, see ngspice manual chapt. 12

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.
80 changes: 47 additions & 33 deletions FAQ
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Ngspice F.A.Q.Version 2.7 (ngspice-37 release)
Ngspice F.A.Q.Version 2.8 (ngspice-38 release)

Maintained by Holger Vogt
Last update: May 11 2022
Last update: Oct 23 2022

This document contains the Frequently Asked Questions (and Answers)
for ngspice project.
Expand Down Expand Up @@ -151,7 +151,7 @@
and Cider. The ngspice manual today contains description of all
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).
(see https://ngspice.sourceforge.io/tutorials.html).


1.7 Legal issues
Expand Down Expand Up @@ -208,37 +208,40 @@
web server and then moved to sourceforge. Sourceforge provides an
archiving service that cam be accessed via the summary page:

http://sourceforge.net/p/ngspice/mailman/
https://sourceforge.net/p/ngspice/mailman/


1.11 Where can I get a copy of ngspice?

You can download ngspice from:
You can download ngspice source code or MS Windows executables from:

http://sourceforge.net/projects/ngspice/files/ng-spice-rework/
https://sourceforge.net/projects/ngspice/files/ng-spice-rework/

Nearly all distributions for MINGW, Cygwin, Linux, macOS and
others offer install-ready copies of ngspice.


1.12 Where should I look on the World Wide Web for ngspice stuff?

Look at the official Ngpice Web Page:

http://ngspice.sourceforge.net
https://ngspice.sourceforge.io


1.13 Where should I look on the World Wide Web for Spice documentation?

There is a detailed ngspice manual available at:
http://ngspice.sourceforge.net/docs.html
https://ngspice.sourceforge.io/docs.html

Others docs are assembled at:
http://ngspice.sourceforge.net/literature.html
https://ngspice.sourceforge.io/literature.html


1.14 Are there some (official) tutorials available?

Yes, they are, for ngspice, ngspice within KiCAD and on eletro-thermal
simulation. You may find them at:
http://ngspice.sourceforge.net/tutorials.html
https://ngspice.sourceforge.io/tutorials.html



Expand All @@ -249,35 +252,46 @@

The latest version released is:

* ngspice-37 (released on May 22 2022)
* ngspice-38 (released on Oct 30 2022)


2.2. What are the latest features in the current release?

- New features:
+ Reduce XSPICE memory consumption dramatically
(> factor of 10).
+ Add source stepping to B source
+ Add 'esave' command to save only specific event nodes.
+ Accept '.temp=125' or .temp='param'.
+ Enable output redirection for meas command.
+ Use total current for diffcap calculation in diode model.
+ Speed output and reduces file size when plotting large
result vectors (Windows).
+ Enable RKM notation also for inductors (e.g. 1u2 for 1.2u).
+ Add S parameter simulation (command '.sp').
+ Add new flag 'digitop' for the 'plot' command.
+ Add a flag 'alle' (all event nodes) to the plot command.
+ New code model d_pwm: hybrid oscillator (analg control in,
digital out) with PWM.
+ Make "nogrid" plotting option work.
+ Add current measurement for all nodes of a device,
e.g. .probe i(Q1) will measure Ic, Ib, Ie (and Is).
+ .probe P(dev): Add measurement of power dissipation in a device.
+ Add new flags -type and -flags to command devhelp.
+ Add multiplier flag 'm' to behavioral capacitor and inductor.
+ Re-enable dc sweep after transient sim.
+ When plotting the phase, standard now is "Radiant".
+ Add Lundin's geometry correction to the inductance formula.
+ New variable keep#branch to write the current to raw file
in the old fashion 1 v1#branch current
+ Translate PSPICE U instances into equivaalent XSPICE code models.
+ New configure flag --enable-shortcheck to enable a shortened make check
(only BSIM3 and BSIM4).
+ B source will accept parameters in statistical functions like agauss.
+ WinGUI: Add a button 'Stop' to stop a simulation in intercative
or control mode.
+ Update to the .probe p (power measurement) and .probe alli commands.
+ Update to XSPICE aswitch and pswitch.
+ Make FROM/TO work in TRIG/TARG and WHEN variants of .meas/meas command.
+ Limits to exp function, allow 0 for log (returning -1e99), used
when starting iterations.
+ Insert XSPICE bridging devices automatically when an analogue node
has the same name as an XSPICE event node.
+ New options savecurrents_bsim3, savecurrents_bsim4, savecurrents_mos1.
+ pwlts: a pwl v/i source with time input, smoothing and limiting
functions.
+ New functions to the Code Model Library: cm_get_node_name()
and cm_probe_node().
+ XSPICE: Add bidirectional digital/analog bridge.
+ Search for .spiceinit firstly in a user defined directory named in env
SPICE_USERINIT_DIR, then in the current directory, then in HOME, then
in USERPROFILE.
+ If compatmode is lt, change the pow(x,y) and x**y functions:
If x < 0, output only if y is integer number, otherwise output 0.
+ Add a limit of 0.999 to bipolar parameters mje, mjc, and mjs.

- Bug fixes:
+ many bugs fixed and code improvements (see bugs 557 and up)
+ many bugs fixed and code improvements (see bugs 583 and up)
+ making error messages more verbose
+ memory leaks removed

Expand All @@ -303,7 +317,7 @@
feature-request and bugs trackers. You can use them or subscribe to
mailing lists and post there. The former is preferred since almost
it allows to track all necessary actions upon a bug. The web site at
http://ngspice.sourceforge.net/bugrep.html will give you more details.
https://ngspice.sourceforge.io/bugrep.html will give you more details.


2.6. How can I join the development?
Expand Down
16 changes: 8 additions & 8 deletions INSTALL
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Table of contents

1 Ngspice installation (LINUX)
1.1 Prerequisites
1.2 Install from tarball (e.g. ngspice-36.tar.gz)
1.2 Install from tarball (e.g. ngspice-38.tar.gz)
1.3 Install from git repository
1.4 ngspice as a shared library
1.5 Advanced Install
Expand All @@ -28,7 +28,7 @@ Table of contents
8 Operation Controls
9 NGSPICE COMPILATION UNDER WINDOWS OS
9.1 How to make ngspice with MINGW and MSYS
9.2 make ngspice with MS Visual Studio 2019
9.2 make ngspice with MS Visual Studio 2019 or 2022
9.3 make ngspice with pure CYGWIN
9.4 ngspice console app with MINGW or CYGWIN
9.5 cross compiling ngspice for Windows from LINUX
Expand Down Expand Up @@ -133,7 +133,7 @@ This file describes the procedures to install ngspice from sources.
sections titled 'Install from tarball' and 'Advanced Install'.

Download ngspice sources from the git repository as described on the sourceforge project page
(see http://ngspice.sourceforge.net/download.html and click on the git link)
(see https://ngspice.sourceforge.io/download.html and click on the git link)

Now change directories in to the top-level source directory (where this
INSTALL file can be found).
Expand Down Expand Up @@ -240,7 +240,7 @@ This file describes the procedures to install ngspice from sources.
--with-editline=yes
Enables the use of the BSD editline library (libedit) instead
of readline.
See http://www.thrysoee.dk/editline/
See https://www.thrysoee.dk/editline/

1.5.2 Options Specific to Enable Ngspice as a shared library

Expand Down Expand Up @@ -505,7 +505,7 @@ This file describes the procedures to install ngspice from sources.
$ make install

However, to compile code extracted from the git repository the procedure is
a little different. Firstly install git, e.g. from http://git-scm.com/download/win
a little different. Firstly install git, e.g. from https://git-scm.com/download/win
To obtain ngspice, you may do the following:

Open the git command window. Go to a directory of your choice, e.g. D:\Spice
Expand Down Expand Up @@ -576,7 +576,7 @@ This file describes the procedures to install ngspice from sources.
script compile_min_shared.sh.


9.2 make ngspice with MS Visual Studio 2019
9.2 make ngspice with MS Visual Studio 2019 and 2022

ngspice may be compiled with MS Visual Studio 2019 or newer.

Expand Down Expand Up @@ -700,7 +700,7 @@ cross-compile-shared.sh.

10.2 Compile NGSPICE manually from a tarball
1. Install an X11 interface (like Xquartz)
2. Install MacPorts from http://www.macports.org
2. Install MacPorts from https://www.macports.org
3. Execute this command:
sudo port install autoconf automake libtool bison flex ncurses
readline fontconfig freetype libomp xorg-libXaw
Expand All @@ -713,7 +713,7 @@ cross-compile-shared.sh.

10.3 Compile NGSPICE manually from git
1. Install an X11 interface (like Xquartz)
2. Install MacPorts from http://www.macports.org
2. Install MacPorts from https://www.macports.org
3. Execute this command:
sudo port install automake autoconf libtool bison flex ncurses xorg-libXaw
readline fontconfig freetype libomp SM ICE
Expand Down
13 changes: 7 additions & 6 deletions README
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,10 @@ 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.

Cider couples Spice3f5 circuit level simulator to DSIM device simulator
to provide greater simulation accuracy of critical devices. DSIM
devices are described in terms of their structures and materials.
Cider couples Spice3f5 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
and simulation of digital components through an embedded event driven
Expand Down Expand Up @@ -62,6 +63,6 @@ WEB SITEs:
--------

This project is hosted on Sourceforge.net.
The home page is http://ngspice.sourceforge.net
The page offering source code and user interaction is
http://sourceforge.net/projects/ngspice
The home page is https://ngspice.sourceforge.io
The page offering source code, MS Windows executables, and user interaction is
https://sourceforge.net/projects/ngspice

0 comments on commit 8cec3a6

Please sign in to comment.