SPICE

From Wikipedia, the free encyclopedia

Screen shot of Spice OPUS, a fork of Berkeley SPICE
Screen shot of Spice OPUS, a fork of Berkeley SPICE

SPICE (Simulation Program with Integrated Circuit Emphasis) is a general purpose analog circuit simulator. It is a powerful program that is used in IC and board-level design to check the integrity of circuit designs and to predict circuit behavior.

Contents

[edit] Introduction

Integrated circuits, unlike board-level designs composed of discrete parts, are impossible to breadboard before manufacture. Further, the high costs of photolithographic masks and other manufacturing prerequisites make it essential to design the circuit to be as close to perfect as possible before the integrated circuit is first built. Simulating the circuit with SPICE is the industry-standard way to verify circuit operation at the transistor level before committing to manufacturing an integrated circuit.

Board-level designs can often be breadboarded, but designers may want more information about the circuit than is available from a single mock-up. For instance, performance is affected by component manufacturing tolerances and it is helpful for designers to simulate with SPICE to predict the effect of variations of those values. Even with a breadboard, some aspects may not be accurate compared to the final printed wiring board, such as parasitic resistances and capacitances. In these cases it is common to perform Monte Carlo simulations using SPICE, a task which is impractical using calculations by hand.

Circuit simulation programs, of which SPICE and derivatives are the most prominent, take a text netlist describing the circuit elements (transistors, resistors, capacitors, etc.) and their connections, and translate this description into equations to be solved. The general equations produced are nonlinear differential algebraic equations which are solved using implicit integration methods, Newton's method and sparse matrix techniques.

[edit] Origins

SPICE was developed at the Electronics Research Laboratory of the University of California, Berkeley by Larry Nagel with direction from his research advisor, Prof. Donald Pederson. SPICE1 was largely a derivative of the CANCER program,[1] which Nagel had worked on under Prof. Ronald Rohrer. CANCER was an acronym for "Computer Analysis of Nonlinear Circuits, Excluding Radiation," a hint to Berkeley's liberalism of 1960s: at these times many circuit simulators were developed under the United States Department of Defense contracts that required the capability to evaluate the radiation hardness of a circuit. When Nagel's original advisor, Prof. Rohrer, left Berkeley, Prof. Pederson became his advisor. Pederson insisted that CANCER, a proprietary program, be rewritten enough that restrictions could be removed and the program could be put in the public domain.[2]

SPICE1 was first presented at a conference in 1973.[3] SPICE1 was coded in FORTRAN and used nodal analysis to construct the circuit equations. Nodal analysis has limitations in representing inductors, floating voltage sources and the various forms of controlled sources. SPICE1 had relatively few circuit elements available and used a fixed-timestep transient analysis. The real popularity of SPICE started with SPICE2[4] in 1975. SPICE2, also coded in FORTRAN, was a much-improved program with more circuit elements, variable timestep transient analysis using either trapezoidal or Gear integration, equation formulation via modified nodal analysis[5] (avoiding the limitations of nodal analysis), and an innovative FORTRAN-based memory allocation system developed by another graduate student, Ellis Cohen. The last FORTRAN version of SPICE was 2G.6 in 1983. SPICE3[6] was developed by Thomas Quarles (with A. Richard Newton as advisor) in 1989. It is written in C, uses the same netlist syntax, and added X-Windows plotting.

As an early open source program, SPICE was widely distributed and used. It inspired and served as a basis for many other circuit simulation programs, in academia, in industry, and in commercial products. Its ubiquity became such that "to SPICE a circuit" remains synonymous with circuit simulation.[7] SPICE source code was from the beginning distributed by UC Berkeley for a nominal charge (to cover the cost of magnetic tape). The license includes an acknowledgement clause and distribution restrictions for countries not considered friendly to the USA, nevertheless Berkeley SPICE continues to influence both commercial and academic offshoots of the program. Early commercial versions of SPICE include HSPICE (now owned by Synopsys) and PSPICE (now owned by Cadence Design Systems). The academic spinoffs of SPICE include XSPICE, developed at Georgia Tech, which added mixed analog/digital "code models" for behavioral simulation, and CODECS (UC Berkeley/Oregon State Univ.) which added semiconductor device simulation.

[edit] See also

[edit] References

  1. ^ Nagel, L. W., and Rohrer, R. A., Computer Analysis of Nonlinear Circuits, Excluding Radiation, IEEE Journal of Solid State Circuits, SC-6, Aug. 1971, pp. 166-182
  2. ^ Perry, T., Donald O. Pederson, IEEE Spectrum, June 1998, pp. 22-27.
  3. ^ Nagel, L. W, and Pederson, D. O., SPICE (Simulation Program with Integrated Circuit Emphasis), Memorandum No. ERL-M382, University of California, Berkeley, Apr. 1973
  4. ^ Nagel, Laurence W., SPICE2: A Computer Program to Simulate Semiconductor Circuits, Memorandum No. ERL-M520, University of California, Berkeley, May 1975
  5. ^ Ho, Ruehli, and Brennan, The Modified Nodal Approach to Network Analysis, Proc. 1974 Int. Symposium on Circuits and Systems, San Francisco, Apr. 1974, pp. 505-509
  6. ^ Quarles, Thomas L., Analysis of Performance and Convergence Issues for Circuit Simulation, Memorandum No. UCB/ERL M89/42, University of California, Berkeley, Apr. 1989.
  7. ^ Pescovitz, David. "1972: The release of SPICE, still the industry standard tool for integrated circuit design", Lab Notes: Research from the Berkeley College of Engineering, 2002-05-02. Retrieved on 2007-03-10.

[edit] External links

[edit] Open source versions

[edit] Applications