Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
SPICE
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Program features and structure == SPICE became popular because it contained the analyses and models needed to design integrated circuits of the time, and was robust enough and fast enough to be practical to use.<ref name="SPICE4">Nagel, L., [http://www.cs.sandia.gov/nacdm/talks/Nagal_Larry_NACDM2004.pdf Is it Time for SPICE4?] {{webarchive |url=https://web.archive.org/web/20060926034314/http://www.cs.sandia.gov/nacdm/talks/Nagal_Larry_NACDM2004.pdf |date=September 26, 2006 }}, 2004 Numerical Aspects of Device and Circuit Modeling Workshop, June 23–25, 2004, Santa Fe, New Mexico. Retrieved on 2007-11-10</ref> Precursors to SPICE often had a single purpose: The BIAS<ref>{{cite journal |author=McCalla and Howard |title=BIAS-3: A program for nonlinear D.C. analysis of bipolar transistor circuits |journal=IEEE Journal of Solid-State Circuits |volume=6 |number=1 |date=February 1971 |pages=14–19 |doi=10.1109/JSSC.1971.1050153 |bibcode=1971IJSSC...6...14M }}</ref> program, for example, did simulation of bipolar transistor circuit operating points; the SLIC<ref>{{cite journal |first1=T.E. |last1=Idleman |first2=F.S. |last2=Jenkins |first3=W.J. |last3=McCalla |first4=D.O. |last4=Pederson |title=SLIC: A simulator for linear integrated circuits| journal=IEEE Journal of Solid-State Circuits |volume=6 |number=4 |date=August 1971 |pages=188–203 |doi=10.1109/JSSC.1971.1050168 |bibcode=1971IJSSC...6..188I }}</ref> program did only small-signal analyses. SPICE combined operating point solutions, transient analysis, and various small-signal analyses with the circuit elements and device models needed to successfully simulate many circuits. === Analyses === SPICE2 includes these analyses: * AC analysis ([[linear]] [[small-signal model|small-signal]] frequency domain analysis) * DC analysis (nonlinear [[quiescent point]] calculation) * DC transfer curve analysis (a sequence of nonlinear operating points calculated while sweeping an input voltage or current, or a circuit parameter) * Noise analysis (a small signal analysis done using an adjoint matrix technique which sums uncorrelated noise currents at a chosen output point) * [[Transfer function]] analysis (a small-signal input/output gain and impedance calculation) * Transient analysis (time-domain large-signal solution of nonlinear differential algebraic equations) Since SPICE is generally used to model circuits with [[nonlinear element]]s, the small signal analyses are necessarily preceded by a [[quiescent point]] calculation at which the circuit is linearized. SPICE2 also contains code for other small-signal analyses: [[sensitivity analysis]], [[Pole–zero plot|pole-zero analysis]], and [[small-signal]] [[distortion]] analysis. Analysis at various temperatures is done by automatically updating semiconductor model parameters for temperature, allowing the circuit to be simulated at temperature extremes. Other circuit simulators have since added many analyses beyond those in SPICE2 to address changing industry requirements. Parametric sweeps were added to analyze circuit performance with changing manufacturing tolerances or operating conditions. Loop gain and stability calculations were added for analog circuits. [[Harmonic balance]] or time-domain steady state analyses were added for RF and switched-capacitor circuit design. However, a public-domain circuit simulator containing the modern analyses and features needed to become a successor in popularity to SPICE has not yet emerged.<ref name="SPICE4"/> It is very important to use appropriate analyses with carefully chosen parameters. For example, application of linear analysis to nonlinear circuits should be justified separately. Also, application of transient analysis with default simulation parameters can lead to qualitatively wrong conclusions on circuit dynamics.<ref>{{cite book |first=Giovanni |last=Bianchi |title=2015 7th International Congress on Ultra Modern Telecommunications and Control Systems and Workshops (ICUMT) |arxiv=1506.02484| date = 2015 |chapter= Limitations of PLL simulation: hidden oscillations in SPICE analysis |pages=79–84 |doi=10.1109/ICUMT.2015.7382409 |isbn=978-1-4673-9283-9 |s2cid=7140415 }}</ref> === Device models === SPICE2 includes many semiconductor device [[transistor models|compact models]]: three levels of [[MOSFET]] model, a combined [[Ebers-Moll model|Ebers–Moll]] and [[Gummel–Poon model|Gummel–Poon bipolar model]], a [[JFET]] model, and a model for a [[diode|junction diode]]. In addition, it had many other elements: resistors, capacitors, inductors (including [[Inductance#Coupled inductors|coupling]]), independent [[voltage source|voltage]] and [[current source]]s, ideal [[transmission line]]s, active components and voltage and current controlled sources. SPICE3 added more sophisticated MOSFET models, which were needed due to advances in semiconductor technology. In particular, the [[BSIM]] family of models were added, which were also developed at UC Berkeley. Commercial and industrial SPICE simulators have added many other device models as technology advanced and earlier models became inadequate. To attempt standardization of these models so that a set of model parameters may be used in different simulators, an industry working group was formed, the [[Compact Model Council]],<ref>{{cite web|url=http://www.geia.org/index.asp?bid=597 |title=CMC - Compact Model Council |publisher=GEIA |url-status=dead |archive-url=https://web.archive.org/web/20110511071827/http://www.geia.org/index.asp?bid=597 |archive-date=May 11, 2011 }}</ref> to choose, maintain and promote the use of standard models. The standard models today include [http://www-device.eecs.berkeley.edu/bsim/?page=BSIM3 BSIM3], [http://www-device.eecs.berkeley.edu/bsim/?page=BSIM4 BSIM4], [https://web.archive.org/web/20150224064144/http://www-device.eecs.berkeley.edu/bsim/?page=BSIMSOI BSIMSOI], [https://web.archive.org/web/20071017140132/http://pspmodel.asu.edu/ PSP], [http://www.iee.et.tu-dresden.de/iee/eb/hic_new/hic_start.html HICUM], and [https://www.eng.auburn.edu/~niuguof/mextram/index.html MEXTRAM]. Spice can use device models from foundry [[Process design kit|PDKs]]. ===Input and output: Netlists, schematic capture and plotting=== SPICE2 takes a text [[netlist]] as input and produces line-printer listings as output, which fits with the computing environment in 1975. These listings are either columns of numbers corresponding to calculated outputs (typically voltages or currents), or line-printer [[ASCII art|character "plots"]]. SPICE3 retains the netlist for circuit description, but allows analyses to be controlled from a [[command line interpreter|command-line]] interface similar to the [[C shell]]. SPICE3 also added basic [[X Window System|X]] plotting, as [[UNIX]] and engineering [[workstation]]s became common. Vendors and various free software projects have added [[schematic capture]] [[Frontend and backend|frontends]] to SPICE, allowing a [[schematic diagram]] of the circuit to be drawn and the netlist to be automatically generated and transferred to various SPICE backends. Also, [[graphical user interface]]s were added for selecting the simulations to be done and manipulating the voltage and current output vectors. In addition, very capable graphing utilities have been added to see waveforms and graphs of parametric dependencies. Several free versions of these extended programs are available.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)