|
Software
für
Simulation und Design
Schaltungssimulation
|
Schematic Capture |
Layout
| Systeme
|
Technologie |
Fertigung
|
Verschiedenes
Prof. Dr.-Ing. Holger Vogt
14.07.2009
Auf dieser Seite
möchte ich Ihnen einige Tipps für frei
verfügbare Software geben, mit deren Hilfe Sie sich eine
Designumgebung zum Entwurf
integrierter Schaltungen aufbauen können. Es ist eine
persönliche Auswahl, daher
sicherlich nicht vollständig. Außerdem muss ich
bekennen, dass ich und die
Mitarbeiter von EBS nicht in der Lage sind, die Nutzung dieser Software
durch Rat und Tat zu unterstützen. Es hat sich jedoch durch
die freie
Verfügbarkeit eine Menge unterstützender Literatur
angesammelt, so dass Sie über das Internet dort sicherlich
Hilfe finden werden. Ferner
können wir natürlich auch keine
Gewährleistung für die
genannte Software übernehmen.
Beim Entwurf einer
integrierten Schaltung spielen zunächst Überlegungen
zum
System eine Rolle, es erfolgt die Erstellung eines Schaltplans und
dessen
Eingabe ( Schematic capture ), die Simulation der Schaltung und ihre
Umsetzung in Daten für die Herstellung ( Layout ). Vor der
Herstellung steht
die Entwicklung der Fertigungstechnologie, der Bauelemente und der
zugehörigen Fertigungsstätte. Zu allen Themenpunkten
ist Software,
überwiegend an Universitäten entstanden. Das Resultat
ist natürlich keine
integrierte Designumgebung, die alle Komponenten unter einem Dach
vernetzt. Zu Übungszwecken und für kleine Schaltungen
ist eine heterogene
Umgebung durchaus nützlich, wie Sie sie aus den folgenden
Anmerkungen
zusammenstellen können.
Schaltungssimulation
Der Klassiker unter den
Simulationswerkzeugen ist das
Programm SPICE, das von der Universität von Kalifornien in
Berkeley
entwickelt wurde. Hier ist ein Download von DuSpice, einer Version von
SPICE3f5 für MS Windows (98, NT, XP) möglich
(selbstextrahierende Datei DuSpiceWin.exe, 1,576 MB, oder als Zip-File, 1,534
MB). Sie basiert auf dem SPICE3f4-Originalcode der Universität
in Berkeley,
enthält aber die neuesten MOS-Modelle aus Berkeley
(BSIM3v3.3.0, BSIM4.6.4,
für SOI-Transistoren BSIMSOI3.2 und BSIMSOI4.1) und das Modell
HiSIM1.2.0
von STARC aus Yokohama. Die Eingabe erfolgt über eine
Textdatei, zur Ausgabe
ist ein Plot innerhalb des Programms, für die wichtigsten
Simulationen aber
auch über EXCEL möglich. Parameter zur Beschreibung
der Bauelemente stammen
ebenfalls aus Berkeley und Yokohama. Eine Rauschquelle für
transiente Rauschsimulation ist als Option zu den Spannungs- und
Stromquellen neu eingebaut.
Schematic
Capture
Zur Eingabe einer Schaltung
ist ein spezielles Zeichenprogramm sinnvoll, das
mit geeigneten Bibliotheken die Schaltplanerstellung
unterstützt. Wenn nun
dieses Programm auch die Erstellung einer SPICE-Eingabedatei aus dem
Schaltplan heraus ermöglicht, steht einem Schaltungsdesign mit
zugehöriger
Überprüfung und Optimierung durch Simulation nichts
mehr im Weg. Hier möchte
ich das Programm
Xcircuit empfehlen, das für LINUX, UNIX und MS
Windows zur Verfügung
steht. Eine Version für "native" Windows ist
verfügbar unter:
http://www.geocities.com/sw286000.
Layout
Zur Umsetzung in ein IC muss
aus dem Schaltungskonzept, aus dem Schaltplan
oder aus der Systembeschreibung ein Layout erzeugt werden. Hierzu sind
komplexe graphische Wekzeuge notwendig. Zwei dieser Tools, die im
Internet
frei verfügbar sind, möchte ich hier vorstellen:
- LASI
ist ein
originär für Windows geschriebenes Tool, das
ständig weiterentwickelt wird.
- MAGIC
wurde ursprünglich wiederum in Berkeley
entwickelt. Verschiedene Versionen wurde kürzlich zur Version
7.1
zusammengefasst und sind für LINUX, UNIX (Sourcecode)
oder Windows
(ausführbare Datei) verfügbar.
Unter Windows
ist zuvor die Installation eines Xservers notwendig (siehe unten).
Beide Werkzeuge sind sehr
mächtig (neben Layout: DRC,
Zellenkataloge,
SPICE-Dateien...), bedürfen eines Setup , um die
unterstützte Technologie zu
beschreiben, und benötigen eine Einarbeitung. Unter den
genannten Adressen
ist jeweils ein Setup verfügbar (z.B. für MOSIS).
Weitere freie
Layout-Editoren sind unter
http://layout.sourceforge.net/links/index.html zu finden,
z.B.
Layout-Editor oder Glade.
Systementwurf
Der Entwurf von Schaltungen
auf einem höheren Abstraktionsniveau wird zur
Zeit mit speziellen Sprachen, z.B. VHDL (
http://tech-www.informatik.uni-hamburg.de/vhdl/)
durchgeführt. Dazu sind
Compiler notwendig, die Bestandteil der großen kommerziellen
Softwarepakete
sind. Vielversprechend ist ein neuer Ansatz, C++ um Klassen und
Bibliotheken
zu erweitern, die eine Hardware-Beschreibung gestatten.
Außerdem kann man
mit diesen Tools Systeme entwicklen, die Hardware und Software nutzen
(Codesign). Die Einarbeitung ist bei vorhandener C++-Kenntnis nicht
aufwendig. Hervorzuheben ist hier SystemC,
das kostenlos
als Ergänzung zu C++ unter LINUX und MS Windows geladen werden
kann.
Technologie
und Bauelemente
Bevor man zur
Technologieentwicklung aufwendig einen Halbleiterprozess fährt
(das ist meine eigene Profession im IMS, siehe http://www.ims.fraunhofer.de),
ist
es sinnvoll, die resultierenden Dotierstoffverteilungen und
Schichtdicken zu
simulieren. Schnelle Ergebnisse erhält man mit einem
eindimensionalen
Technologiesimulator, der Dotierung, Diffusion und Oxidation
realistisch
darstellt. Als Eingabe dient der Prozesslaufplan (die Laufkarte). Als
Simulator ist hier TESIM zu nennen, ein 1D-Prozesssimulator, der Basis
meherer kommerzieller Tools geworden ist. Eine Version von TESIM
für Windows ist hier zu finden (zip-File, 776 kB). Das
TESIM-Manual ist zur Zeit allerdings nur in
Deutsch verfügbar. Eine andere Software ist SUPREM3
aus Stanford.
Will man das Verhalten
moderner Kurzkanaltransistoren verstehen und
optimieren, ist eine mindestens zweidimensionale Simulation notwendig.
Die
Voraussetzung für die Bauelementesimulation ist nun, die
zweidimensionale
Dotierstoffverteilung herzustellen (d.h. zu simulieren). Hier besteht
als
freies Programm die UNIX-Variante von SUPREM IV
ebenfalls aus
Stanford. Eine Windows-Portierung diese Programms ist mir nicht
bekannt. Allerdings gibt es Patches für LINUX unter (
http://mysite.verizon.net/dave_clark/stanford.html).
Für UNIX, LINUX
und Windows (unter cygwin) gibt es das Programm
FLOOPS.
Auf diese Ergebnisse setzen
zweidimensionale Bauelemente-Simulatoren
auf. Die Halbleitergleichungen (Poisson- und
Kontinuitätsgleichungen) werden
auf einem optimierten Gitter diskretisiert und numerisch
gelöst. Zwei
Quellen sind hier zu nennen. Aus Wien stammt ein Programm MINIMOS,
das mit dem
Ziel der MOS-Bauelemente-Simulation entwickelt wurde. Eine andere
bekannte
Software namens PISCES entstand in Stanford (Windows-Version unter
http://home.comcast.net/~john.faricelli/tcad.htm).
Die in diesem Abschnitt
genannten Programme habe ich bisher nicht
selbst probiert. Daher wäre ich für weitere Inputs
und Kommentare sehr
dankbar.
Fertigung
Der rasante, einfach nicht
enden wollende Fortschritt in der
Halbleitertechnik ist ganz wesentlich durch den immensen Fortschritt
der
Fertigungstechnologien und der zugehörigen Fertigungsanlagen
bedingt. Zur
Zeit nähert sich die kleinste Strukturabmessung in der
Fertigung der
100 nm-Grenze, die sicherlich bald unterschritten
wird. MOS-Transistoren laufen noch bei 25 nm
Kanallänge mit
zufriedenstellenden Ergebnissen. Fertigungsstätten mit diesen
Fähigkeiten
sind Großinvestitionen, die mehr als 1 Milliarde $ kosten.
Daher kommt der
optimalen Planung und Ausnutzung solcher Einrichtungen große
Bedeutung
zu. Wirtschafts- und Ingenieurwissenschaften gehen hier ein wichtiges
Bündnis ein. Dies spiegelt sich auch in der Literatur wider,
die exzellent
zusammengefasst ist unter
http://www.jkrconsult.com/capbib.htm.
Bei mir ist ein
Simulationsprogramm, genannt FabSim, in Arbeit, mit dem der
Durchsatz einer (Halbleiter-)Fabrik berechnet werden kann. Als Input
dienen
die geplanten oder vorhandenen Maschinen, die Laufkarten der
installierten
Prozesse und die geplanten Wafer-Starts. Mittels zeitdiskreter
Simulation
werden die Lose eingeschleust, gemäß der Laufkarten
durch alle Maschinen
hindurchbewegt und schließlich ausgeschleust. Für
weitere Infos siehe
http://www.fabsim.com. Dort ist auch ein
Download einer auf 5 Maschinengruppen beschränkten
Demo-Version von
FabSim oder FabSim Interactive möglich.
Verschiedenes
Im Laufe vieler Projekte
entsteht manchmal
Software, die nicht einer der obigen Kategorie zuzuordnen ist, aber
dennoch nützlich sein kann. Ein erstes Beispiel ist Films.
Dieses Programm erlaubt die Berechnung der optischen Eigenschaften
(Transmission, Absorption) von dünnen, optisch transparenten
Filmen auf Substraten wie Silizium oder Glas. Damit lassen sich
Parameter für optische Filter, Antireflexschichten, aber auch
Fabry-Perot-Resonatoren berechnen. EXCEL wird zum Plotten genutzt, die
Daten lassen sich aber auch zur Auswertung in eine Datei schreiben.
Anmerkungen zur
Software
Die genannten Quellen
für Software zum Download beziehen sich
häufig auf die Windows-Versionen. Selbstverständlich
sind die meisten auch
für UNIX (oft das ursprüngliche Betriebssystem) oder
LINUX
verfügbar.
SPICE
Für SPICE existieren
mittlerweile mehrere Webseiten mit kostenlosem Download
eines unlimitierten Simulators oder mit SPICE kooperierender Software,
Anleitungen und Manuals:
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
wird aktive als Nachfolge von Spice entwickelt.
Layout
Für MAGIC unter
Windows ist ein
Xserver notwendig.
Systementwurf
Sonstiges
|