|
Software
for Simulation
and Design
Circuit
Simulation | Schematic
Capture | Layout
| Systems
| Technology
| Manufacturing
| Miscellaneous
Prof.
Dr.-Ing. Holger Vogt
14/07/2009
On this
web
page I would like to present you some information on freely
available software for setting up a design
environment for integrated circuits. It is a personal
selection, therefore a little bit biased and not
complete. I have also to confess that we, my coworkers at
EBS and myself are not capable to support the usage
of the software mentioned. However, due to many
people using and improving it, there will be lots of
information and maybe also support available on the
internet. Of course we also cannot provide any
warranty for the software mentioned.
If
you start
developing a (not to complex) integrated circuit, firstly
there have to be system considerations. After fixing
a specification, a schematic has to be devised and
entered into the computer ( Schematic capture
). The resulting circuit will be simulated, optimized
and finally transferred into data for manufacturing (
Layout ). Fabrication may then follow with a
manufacturing process in the cleanroom of a
semiconductor fab. For supporting all these steps
free software is available, which has been developed
mostly at universities all around the world. The
result might not be a complete integrated design
environment. But if you like to learn about circuit
design, process development and manufacturing and
create small circuit, a heterogeneous environment,
which you may assemble from the following is still
useful.
Circuit
simulation
The classic
simulation tool for circuit design is the
program SPICE, developed at the University of California at
Berkeley. Here you will find the Download of DuSpice,a
version of SPICE3f5 for MS Windows (98, NT) as a self
extracting file DuSpiceWin.exe
with 1.576 MB size or as a Zip-File, 1.534 MB. This program version is based on the original
spice3f4 code from Berkeley, but includes the most recent
Berkeley MOS models (BSIM3v3.3.0, BSIM4.6.4, BSIMSOI3.2 and
BSIMSOI4.1 for SOI devices) and the surface potential
control based model HiSIM1.2.0 from STARC, Yokohama. Input
has to be given via the standard ASCII text file, output is
another text file or the standard SPICE binary
file. Plotting is available either from inside the program,
for the most important simulations also you may also plot
via an EXCEL file (coming with appropriate
macros). Accompanying parameters describing transistors
also stem from Berkeley’s and Yokohama’s web pages.
Transient noise simulation now is supported by an noise generator
option to current and voltage sources.
Schematic
Capture
To enter a
circuit diagram into the computer, a dedicated drawing
program is useful, which includes appropriate
libraries to enter the schematic. If this program
also generates a SPICE input file directly from the
schematic, then you may immediately start your design,
simulate and improve it. Here I recommend
Xcircuit, which is available for LINUX, UNIX and
MS Windows. A version for native Windows is
available at:
http://www.geocities.com/sw286000.
Layout
To
be
converted to an IC, the circuit concept, schematic or system
description has to be transferred into a layout. You
will need a complex graphics tool for doing so. Two
programs available for free will be presented here:
- LASI
is a tool
originally written for Windows, which is under
continuous development.
- MAGIC
again was originally developed at Berkeley. Different
versions have been assembled and unified recently to
Version 7.1, which is available for LINUX, UNIX
(source code) or Windows. Before starting
under Windows, you will need an extra XServer (see
below).
Both
programs are mighty tools. Besides layout they
support design rule check (DRC), circuit libraries,
SPICE deck generation etc.. They need a setup, which
describes the underlying technology and they require
some training. Both addresses also provide technology setups
(e.g. for MOSIS). You may find other free layout editors at http://layout.sourceforge.net/links/index.html,
for
example
Layout-Editor or Glade.
System
design
The
design
of electronic circuits and systems at a higher abstraction
level is currently done with dedicated high level
languages, e.g. VHDL (
http://tech-www.informatik.uni-hamburg.de/vhdl/).
You
will
need a compiler which is typically part of a large
commercial software package. A promising approach is the
idea to enhance standard C++ by classes and libraries,
which allow the description and simulation of
hardware. Electronic systems which include both
hardware and software (Codesign) are ideally described
with this approach. The learning phase to use these
languages is not to difficult if you have C++ know
how. To mention here is SystemC,
which may
be
downloaded free of charge as a supplement to C++ under
LINUX, UNIX or MS Windows.
Technology
and
devices
Before
you
start and expensive manufacturing run for process
development (this is my original profession at IMS, see http://www.ims.fraunhofer.de),
it is
absolutely useful to simulate the technology, its dopant
distribution and thickness and behavior of all
layers. Quick results are obtainable with a one
dimensional technology simulator, which
realistically simulates and plots doping density, diffusion
and
oxidation. As an input you will need the process
schedule (the run sheet). A 1D tool is called
TESIM, which is the source of several commercial simulators. A native
windows version of TESIM
is available here (zip file, 776 kB). Unfortunately the manual is
currently only available in German (If you like to translate it to
english, please let me know). Another famous simulator is SUPREM III
from Stanford university .
To obtain
simulation results of modern short channel
devices, you will need at least two dimensional
simulation. Firstly the 2D dopant and layer profile is
required. A UNIX variant of SUPREM IV
also from Stanford is available as open source. I do
not know of a Windows port of this program. You will find
however LINIUX patches at http://mysite.verizon.net/dave_clark/stanford.html.
For UNIX, LINUX
and Windows (with CygWin ) there is the tool FLOOPS
available.
2D device
simulators will use the 2D dopant and layer distribution as
input. They solve the semiconductor equations (Poisson- und
continuity equations) on an optimized grid by numerical
integration. Two sources have to be mentioned here. MINIMOS
was developed at Wien university with the goal to
simulate MOS transistors. Another well known software called
PISCES stems from Stanford university (its Windows version
is at
http://home.comcast.net/~john.faricelli/tcad.htm).
I
have to concede that up to now I did not test the software
mentioned in this chapter personally. Therefore any input
or comment from outside is very welcome.
Manufacturing
The
enormous, seemingly never ending progress of semiconductor
technology depends very heavily on the immense
progress of the semiconductor manufacturing know how
and the machines and fabrication sites
involved. Currently smallest feature size in
manufacturing approaches 100 nm, to be undercut
in the very near future. In the lab transistors with
25 nm channel length still behave reasonably. A
manufacturing site with this capability is a very
large undertaking, costing above 1 Billion
US$. Appropriate planning and fab optimization is
therefore mandatory. Economy and engineering have to
be managed concurrently. This is reflected also in the
literature, which summarized excellently at http://www.jkrconsult.com/capbib.htm
Currently I am
developing a simulator called FabSim,
which calculates the throughput of a (semiconductor) fab. As
input it takes planned or available machines, the run sheets
of processes installed and the lots to be started. Discrete
cycle time simulation describes the fab behavior. Lots are
started, they move through the fab, using their dedicated
process sequence and the appropriate machines and finally
are put out as wafers ready. Please visit
http://www.fabsim.com if you need more
information. On this web site you also will find a Windows
test version of FabSim and FabSim Interactive for
download. These tools are limited to five machine groups,
but otherwise are complete including all input files and a
short manual.
Miscellaneous
During the development for
various projects
sometimes software is created, which does not fit to the above
categories, but nevertheless may be useful for other applications. A
first example is Films.
This program will determine the optical behavior (transmission,
reflection) of transparent or absorbing thin film stacks on various
substrates like silicon, glass, or air. You may calculate parameters
for optical filters, antireflective coatings or complete Fabry-Perot
resonators. EXCEL is used for plotting, the data may also saved in a
file for further evaluation.
Remarks
on the
software cited on this web site
The sources for
software download which I have
cited often refer to Windows versions. Of course
most programs are also available for UNIX (which was
often the operating system during program development) or
LINUX.
SPICE
Meanwhile for
SPICE there exist several web sites which offer downloads of
free and non-limited simulators and of software
cooperating with SPICE:
http://www.fe.uni-lj.si/spice,
http://www.winspice.co.uk,
http://www.soi.tec.ufl.edu/soispice.html,
http://www.linear.com/designtools/software/switchercad.jsp,
http://www.comefly.us/,
http://tclspice.sourceforge.net/ (outdated, see ngspice below),
http://ngspice.sourceforge.net/.
GnuCap
is about to be developed as a replacement for Spice.
LAYOUT
For MAGIC under
Windows you will need an Xserver.
System
design
Miscellaneous
|