Origins of SPICE
Program with Integrated Circuit Emphasis) is a general purpose
circuit simulation program that is used by electrical engineers in
the design of integrated circuits. Although SPICE was released to
“friendly users” in the fall of 1971, the rest of the
world didn't learn about it until Professor Donald O. Pederson of
the University of California, Berkeley presented our SPICE paper at
the Sixteenth Midwest Symposium on Circuit Theory on April 12, 1973.
I don't think anyone had
a clue of the impact of that paper or the computer program it
described. While we all had modest expectations for SPICE, what
happened was truly phenomenal. Within a few years, SPICE had
achieved acceptance at almost all electrical engineering schools and
had started a cottage industry to supply SPICE derivatives to the
rapidly expanding integrated circuit industry.
SPICE was the latest of
circuit simulation programs to be developed at UC Berkeley and
followed in the steps of BIAS, SLIC, TIME, and CANCER, as well as
numerous other lesser known programs. The first version, SPICE 1,
was a follow on to CANCER (Computer Analysis of Nonlinear Circuits,
Excluding Radiation) which was announced in a paper presented by
Professor Ronald A. Rohrer at the 1971 International Solid State
Circuits Conference. CANCER was developed in an era when many
circuit simulation programs were developed by large corporations
with government contracts and were required to have a simulation
capability that could evaluate the radiation hardness of a circuit.
The name CANCER was a bold statement that this program never would
simulate radiation and was not funded by the defense industry. It
was, after all, developed at Berkeley in the sixties!
CANCER began as a class
project of a series of courses taught by Ron Rohrer. The course was
about circuit simulation, and Ron, always an innovative teacher,
figured we would learn a lot more by doing than by listening to him
lecture. The rule was that as long as Don Pederson approved of the
program, we all passed. My classmates in this unique learning
experience were Bob Berry, Shi-Ping Fan, Frank Jenkins, Jesse
Pipkin, Steve Ratner, and Lynn Weber. I was put in charge of showing
the program to Don Pederson and gaining his approval, probably
because I had worked closely with Don in the past and everybody
wanted to pass this course.
Ron Rohrer's class
project idea was a smashing success. We developed a sparse matrix
solver that allowed us to simulate circuits orders of magnitude
larger than previous programs could handle. The use of implicit
integration algorithms provided a much more robust transient
analysis capability. Like BIAS and SLIC, CANCER had built-in models
for semiconductor devices, so the user need only provide a set of
model parameters as opposed to providing FORTRAN routines to model
the devices. We also introduced adjoint solution methods to allow
rapid sensitivity analysis and noise analysis.
When the course was over, Don
Pederson gave his hearty approval, we all passed, and CANCER became
my Master's project. The program was used heavily in undergraduate
and graduate courses at Berkeley, largely because of Don Pederson's
wholehearted support, and that gave me plenty of opportunity to
improve the robustness of the algorithms for circuit simulation. Ron
Rohrer and I spent many hours brainstorming and improving the
program. Ron left Berkeley to work in industry about the time I
finished my Master's project. There was still much to do, and I
began my doctoral studies with Don Pederson as my thesis advisor.
The name CANCER was not the most
popular in the industry, mainly because of the medical implications,
so my first job was to find a new name, and that's how SPICE 1 was
born. My doctoral
research enabled me to pursue vigorously the algorithms of circuit
simulation and to completely rewrite the original CANCER code to
create the second version, SPICE 2. During this work, I had the
privilege of having Ellis Cohen as an office mate. Ellis is the
unspoken hero of SPICE. He was much more computer oriented, and
taught me a lot about data structures, memory management, and
program architecture. I finished my doctoral research
at the end of 1974, and Ellis took the lead in improving the version
of SPICE that I developed (SPICE 2B) to the industry standard SPICE
2G6, which was released in 1983.
The CANCER Paper
W. Nagel and Ronald A. Rohrer, “Computer Analysis of
Nonliinear Circuits, Excluding
IEEE Journal of Solid
State Circuits, vol
SC-6, pp. 166-192.
The Very First SPICE
W. Nagel and D. O. Pederson, “SPICE
(Simulation Program with Integrated Circuit Emphasis), “
No. ERL-M382, University of California, Berkeley, Apr. 1973.
W. Nagel., “SPICE2: A
Computer Program to Simulate Semiconductor Circuits,”
No. ERL-M520, University of California, Berkeley, May 1975.
Articles on the Early
History of SPICE
W. Nagel, “The Life of SPICE,” presented at Bipolar
Circuits and Technology Meeting (BCTM),
MN, September 30, 1996.
W. Nagel, “Y2K - A SPICE Odyssey,” presented at 2000 FSA
Jose, CA, October 12, 2000.
- A SPICE Odyssey.pdf
Laurence W., “The Life of SPICE,” presented at a meeting
of the Princeton ACM and IEEE
Society, Princeton, NJ, January 15, 2004.
ACM and IEEE Computer Society 20040115.pdf
W. Nagel, “Is It Time For SPICE4?” presented at the 2004
Numerical Aspects of Device
Circuit Modeling Workshop (NACDM), Santa Fe, NM, June 23-25, 2004.
It Time For SPICE4.pdf
W. Nagel, “Donald O. Pederson: Professor, Visionary, Friend,”
presented at the CANDE
Santa Cruz, CA, September 9, 2005.
W. Nagel, “The Life of SPICE,” presented at a meeting of
the Consultants Network of
Valley, Santa Clara, CA, June 9, 2009.
Network of Silicon Valley 20090609.pdf
W. Nagel, “The Life of SPICE,” presented at ENGR10
class, Chabot College,
CA, October 25, 2011.
Some other useful
SPICE Page (UC Berkeley)
Brief History of SPICE
SPICE versions with
source code available
and SPICE3 at UC Berkeley
SPICE3 with updates and XSPICE extensions
ngspice and Tcl scripting
at Georgia Tech