SPICE is very different than UCSD. The later is for schematic capture and board design
- full components like IC packages. Think of it's most famous use - the boards that
Ken created for the chess machine - Belle. The former is for low level circuit design -
transistor level of a chip. For instance the standard SPICE benchmark is the internals of
the 741 op-amp or the 555 timer.
BTW at the time, Tom was my housemate. Don Pederson (aka dop) was my second reader as he
was for Tom. My thesis was an Array processor for BSD used to run TQ's thesis -
SPICE3 (we were both students of Richard Newton who had been one of dop's students
years before)
Anyway SPICE1 was actually started in the late 1960's by dop. Ellis Cohen wrote
SPICE2 for the CDC 6400 in the mid 70's, added some new device models and created
really novel bit of self modifying Fortran the compiled the inner loop.
You are correct it was really the first widely available FOSS code - an idea that you
correctly note dop created. He used to say he went in the back door to all the firms in
the Bay Area and had there secrets because he helped them and was not selling his
research. If we took money then we would be like any other salesman.
For SPICE3, Tom pulled the system into modules and made it so different models could be
added, made it callable from other tools and rewrote it into C from Fortran.
It's interesting both versions are still generally available and have different
followings.
In the end spice is basically a program that solves systems of simultaneous differential
equations with many many variables using linear algebra. Very slick system.
Clem
Sent from my iPhone
On Dec 31, 2015, at 6:58 PM, Jeremy C. Reed
<reed(a)reedmedia.net> wrote:
On Thu, 31 Dec 2015, Larry McVoy wrote:
Any chance this was code that turned into the Ousterhout stuff, I think it
was called spice?
While I am not involved with it at all, I did interview a couple
developers toward my BSD history book. (The following is from my 3BSD
"Welcome to Virtual Vax/UNIX" chapter.)
\textsc{Spice} 2\index{SPICE}, the Simulation Program with Integrated
Circuit Emphasis, was another program that benefited from the VAX work.
This Fortran program predicted the electrical characteristics of an
integrated circuit. Spearheaded by professor Donald O.
Pederson\index{Pederson, Donald O.}, who helped establish a fabrication
lab --- the first integrated circuit fabrication facility at any
university\cite{donpederson2005} --- in the 1960's, it was developed by
the integrated circuits group of the Electronics Research Laboratory and
the Electrical Engineering department [at University of California at
Berkeley] in the mid 1970's.
To many it is considered the first significant open source program.
The program was available free of charge, for
not-for-profit uses to any interested party.
% above CITE archives/1970s/3bsd/usr/src/cmd/spice/roots.f
Its source code was distributed for the cost of writing the
tape and copying the documentation, so it was decided to
include it on the BSD distribution tape as well.\cite{tom-quarles-1}
\textsc{Spice} was originally developed to run as a batch program in
punched-card form on the university's CDC 6400 system outputting to a
132-column line printer, but its default allocation of 400,000 double
precision numbers in an array wouldn't work with the PDP-11. It was
later ported to many operating systems and machines that had adequate
memory and floating point capabilities, such as VMS and Unix on the
VAX.\cite{tom-quarles-1}
The program shipped with BSD provided general-purpose circuit
simulation for nonlinear DC, nonlinear transient, and linear AC
analyses. Circuits could contain resistors, capacitors, inductors,
mutual inductors, independent voltage and current sources, four
types of dependent sources, transmission lines, and the four most
common semiconductor devices: diodes, bjts, jfets, and
mosfets.\cite{spice-vax-guide-1979}
% ALSO same in archives/1970s/3bsd/usr/man/man1/spice.1
Virtually every electronic chip --- even today --- used \textsc{Spice}
or one of its derivatives at critical stages during its
design.\cite{donpederson2005} In fact, its name has become
a verb in the industry: ``let's \textsc{Spice} that circuit
and see if it works!''