EINBLICKE NR.26 OKTOBER 1997
 
FORSCHUNGSMAGAZIN DER CARL VON OSSIETZKY UNIVERSITÄT OLDENBURG
 

Recyclebares Mikrochip-Design

von Wolfgang Nebel

"Ich glaube, es gibt einen weltweiten Bedarf an vielleicht fünf Computern", schätzte IBM-Gründer, Thomas J. Watson, 1943 die Marktchancen für Computer ein. Wieso ist es möglich, daß heute praktisch an jedem Büroarbeitsplatz und in vielen Privathaushalten ein Computer steht, daß weltweit ca. 10 Milliarden Mikrorechner - größtenteils im Verborgenen - in Betrieb sind? Welche Annahmen hat Watson gemacht und welche für ihn unvorhersehbaren Ereignisse haben diese Entwicklung ermöglicht? Dieser Artikel gibt Einblicke in die technologische Entwicklung des Computerentwurfs und seiner Herstellung.

Kernstück eines heutigen Rechners ist sein Mikroprozessor. Dieses 1 - 2 cm² große Siliziumscheibchen beherbergt bis zu 10 Millionen Transistoren, die als kleinste Schalteinheiten die Berechnungen und Speichervorgänge des Computers durchführen. Das elektrische Verhalten der Transistoren hängt von ihrer Geometrie ab und wird durch nichtlineare Differentialgleichungen beschrieben. In Digitalrechnern werden Transistoren jedoch vereinfacht als steuerbare Schalter betrachtet, die je nach Wert am Steuereingang "Gate" die Anschlüsse "Drain" und "Source" miteinander verbinden. Durch die Verbindung mehrerer Transistoren untereinander und mit positiven bzw. negativen Spannungen lassen sich logische Verknüpfungen und Speicher verwirklichen.

Die Realisierung komplexer Funktionen und Abläufe in einem Rechner durch solche einfachen Bauelemente erfordert die Zerlegung der Funktionen in eine Vielzahl von Ja/Nein-Entscheidungen. Es wird deutlich, daß mit der Anzahl der Transistoren die funktionale Mächtigkeit eines Computers steigt, da ja mehr Funktionen zur Verfügung stehen, die unter Umständen gleichzeitig arbeiten können. Die Rechengeschwindigkeit hängt zudem von der Taktfrequenz ab, mit der die funktionalen Einheiten des Rechners betrieben werden. Bei heutigen Mikroprozessoren kann diese bis zu 300 MHz betragen, d.h. die Schaltzustände des Rechners ändern sich bis zu 300 Millionen mal je Sekunde.

Nachdem gezeigt wurde, daß die Transistoren sozusagen der "Rohstoff" der Mikroprozessoren sind, ist es klar, daß Thomas J. Watson 1943 die heutige Entwicklung so nicht vorhersehen konnte, weil der Transistor erst 1947 von drei amerikanischen Wissenschaftlern der Bell Laboratories erfunden wurde, nämlich von Walter Brattain, John Bardeen und William Shockley, die hierfür später den Nobelpreis erhielten. Bis dahin konnten Computer nur mit elektromechanischen Relais oder Elektronenröhren gebaut werden. Der Hauptvorteil der Transistoren gegenüber diesen Bauelementen liegt darin, daß eine große Anzahl von Transistoren auf einer einzigen integrierten Schaltung, dem Mikrochip oder kurz IC, also auf kleinstem Raum kostengünstig und weitgehend automatisiert hergestellt werden können. Ein weiterer Vorteil besteht in dem geringeren Stromverbrauch integrierter Schaltungen gegenüber Röhren und Relais. Die Bedeutung dieses Faktors wird deutlich, wenn man der Anekdote glaubt, nach der in Philadelphia jedesmal die Lichter flackerten, wenn der röhrenbasierte Rechner ENIAC eingeschaltet wurde.

Die Fortschritte in der Herstellungstechnologie sind atemberaubend. Keinem anderen Industriezweig ist es bislang gelungen, mit auch nur annähernd vergleichbarer Geschwindigkeit den Fertigungsprozeß zu verbessern. Auf die Erfindung des Transistors folgte 1958 die Entwicklung der ersten integrierten Schaltungen, also Siliziummodulen, die mehrere Transistoren beherbergen, und 1971 die des ersten Mikroprozessors, des mit 108 kHz getakteten Intel 4004. Dieser beinhaltete bereits ca. 2.300 Transistoren. Der neueste Nachfolger der Intel Prozessorserie, der Pentium II, welcher 1997 auf den Markt kam, besteht aus ca. 7,5 Millionen Transistoren und wird mit bis zu 300 MHz getaktet. Ein Vergleich mit der Automobilindustrie veranschaulicht die Miniaturisierung: Wäre es gelungen, auch die Autos in gleicher Weise zu verkleinern, paßten sämtliche PKW der Bundesrepublik zusammen in eine normale Garage, ihr Gesamtwert entspräche in etwa dem eines Fahrzeugs der Oberklasse und das Gewicht des legendären VW-Käfers wäre - mit entsprechend positivem Effekt auf den Kraftstoffverbrauch - auf 0,2 g geschrumpft. Außerdem wäre die Höchstgeschwindigkeit von 1971 bis 1997 um den Faktor 2.800 auf über 500.000 km/h gestiegen. Ein Ende dieser Entwicklung, oder auch nur eine Verlangsamung, ist für die nächsten 15 Jahre nicht zu erwarten, vielmehr schätzen Technologen, daß im Jahre 2010 Mikroprozessoren mit über 550 Millionen Transistoren auf dem Markt sein werden.

Die weit überwiegende Zahl der eingesetzten Mikroprozessoren arbeiten jedoch nicht in Computern im üblichen Sinne, sondern sie übernehmen - vom Benutzer oft unbemerkt - Steuerungs-, Überwachungs- oder Signalverarbeitungsaufgaben in technischen Systemen. Beispiele sind das Motormanagement eines KFZ, die Steuerung einer Waschmaschine oder eines Videorecorders, die Sprachcodierung in einem Handy oder die Stabilisierung eines Flugzeugs. In der neuesten Generation der Boeing 777 verrichten beispielsweise 1.000 Mikrorechner ihren Dienst. Solche Steuerungen werden als "eingebettete Systeme" bezeichnet. Da im Maschinenbau, dem Automobilbereich und der Telekommunikation die Produktdiversifizierung primär über Komfort-, Sicherheits-, Kosten- und Umweltverträglichkeitseigenschaften erfolgt, dienen die Halbleiter als High-Tech-Rohstoff, der eine nicht ersetzbare Voraussetzung für die Wertschöpfungspyramide der fünf wichtigsten deutschen Wirtschaftsbereiche ist.

Wie entwirft man 7,5 Mio. Transistoren?

Nehmen wir an, daß zur korrekten Konstruktion eines Transistors 10 Minuten notwendig sind und vernachlässigen wir einmal kurz, daß neben dem Entwurf der einzelnen Transistoren deren Organisation zu einem sinnvollen Ganzen das Hauptproblem darstellt, so läßt sich leicht abschätzen, daß für die Entwicklung einer solch komplexen Schaltung etwa 750 Ingenieure und Ingenieurinnen ein Jahr lang arbeiten müßten. Selbst wenn dies organisatorisch und finanziell machbar wäre, wäre das Unterfangen zum Scheitern verurteilt, da wegen der schnellen Veralterung ja innerhalb dieses Jahres bereits eine weitere Rechnergeneration entwickelt werden müßte. Es wird klar, daß solch komplexe Systeme für einen kurzlebigen Markt mit rapidem Preisverfall nur durch weitgehende Automatisierung der arbeitsintensivsten Entwurfsschritte und durch eine angepaßte Organisation entwickelt werden können. So wurden bereits in den 70er Jahren Computerprogramme eingesetzt, um die Fertigungsunterlagen integrierter Schaltungen zu erfassen und zu überprüfen. Mit jedem Fortschritt der Technologie folgten notwendigerweise Fortschritte in den Entwurfsverfahren und -werkzeugen.

Eine meist erfolgreiche Lösungsstrategie für komplexe Probleme ist deren Strukturierung in unabhängig voneinander lösbare Teilprobleme. Dieses Aufteilen erfolgt solange über mehrere Entwurfs- oder Abstraktionsebenen, bis die einzelnen Teilprobleme unmittelbar einer Lösung zugeführt werden können. Dieser Dekompositionsphase schließt sich dann die Assemblierung an, in der die erarbeiteten Teillösungen zu einer Gesamtlösung aggregiert werden. Ziel dieser "divide et impera"-Methode ist die Beherrschung des Organisationsproblems. Wenn auf der untersten dieser Entwurfsebenen immer noch jeder Transistor individuell berechnet werden muß, verkürzt sich die reine Entwicklungszeit nicht, der Prozeß wird lediglich beherrschbar. Zur Reduktion von Entwicklungszeit und -kosten ist darüber hinaus die Wiederverwendung einmal entwickelter Komponenten notwendig. Wenn hierzu jedoch deren innerer Aufbau jedesmal im Detail verstanden werden muß, ist der Gewinn gering. Erst die Wiederverwendung abstrakter Komponenten, von denen man weiß, was sie tun, ohne genau verstanden haben zu müssen, wie sie es tun, kann den erhofften Gewinn an Entwicklungseffizienz bringen. Ein erster Schritt in diese Richtung erfolgte bereits in den 80er Jahren mit dem Einsatz von Zellbibliotheken, die Transistorstrukturen zur Realisierung von Logikfunktionen enthielten. Diese Entwicklung setzte sich zu Beginn dieses Jahrzehnts mit dem Einsatz von Hardware-Beschreibungssprachen und der automatischen Schaltungssynthese auf der Register-Transfer-Ebene fort, so daß mit jeder neuen Technologiegeneration auch ein Anheben der niedrigsten manuell zu bearbeitenden Abstraktionsebene einherging, der Entwickler von Routinearbeit entlastet wurde und seine Kreativität auf den interessanteren Architekturentwurf konzentrieren konnte.

Der "Grüne Punkt" für Ingenieurswissen

Benutzt ein Schaltungsentwickler zur Realisierung einer bestimmten Funktion Logikbausteine aus einer Zellbibliothek anstatt die Funktion selbst von Grund auf neu zu entwickeln, so führt er die einmal zur Erstellung der Bibliothek erbrachte Ingenieursleistung einer Wiederverwertung zu. Das gleiche gilt für den Anwender eines rechnergestützten Schaltungssynthesewerkzeugs, der die Entwicklungsstrategie, die aus der Erfahrung früherer Schaltungsentwickler gewonnen und in dem Werkzeug automatisiert wurde, wiederverwertet. Der Unterschied zur Wiederverwertung im Dualen System Deutschlands liegt darin, daß dort in der Regel hochwertige Rohstoffe zur Herstellung geringwertiger neuer Produkte recycled werden, während im Falle der Mikroelektronik kostbares Know-how zur Entwicklung höherwertiger neuer Produkte wiederverwendet wird. Ziele der Wiederverwendung sind die Verringerung von Entwicklungszeit und -kosten, eine Konzentration der Ingenieurskreativität auf neue Herausforderungen und höhere Produktqualität.

Während die Bedeutung der Wiederverwertung für die ersten Ziele offensichtlich ist, ist dies bei der angestrebten Erhöhung der Produktqualität erklärungsbedürftig. Nachvollziehbar ist, daß bei der Entwicklung integrierter Schaltungen der genannten Komplexitätsklasse unvermeidbar Entwicklungsfehler passieren. Die Umtauschaktion der Pentium-Chips ist ein aktuelles Beispiel. Aus diesem Grund wird der Überprüfung der Korrektheit eines Entwurfs eine hohe Bedeutung beigemessen. Diese Überprüfung erfolgt durch extensive Simulationen der Schaltung und teilweise automatische Beweisführung. Trotz intensiver Rech-nerunterstützung kann jedoch bei einer realistischen Schaltung nie nachgewiesen werden, daß sie fehlerfrei entwickelt wurde, es steigt lediglich das Vertrauen in die Schaltung, wenn trotz langer Simulationen keine weiteren Fehler gefunden wurden. Ab einem bestimmten Grad des Vertrauens wird der Entwurf dann freigegeben. Eine Schaltung, die vieltausendfach in Geräten eingesetzt wurde, ohne daß Fehler aufgetreten sind, die sich also in der praktischen Anwendung bewährt hat, verdient folglich, wenn sie wiederverwertet wird, ein höheres Vertrauen in ihre Korrektheit.

Ein erneuter Vergleich mit der Automobilindustrie mag veranschaulichen, daß eine Steigerung der Wiederverwertungsquote um so komplizierter wird, je ausgereizter ein Entwicklungsprozeß ist. Die erste Phase der Einführung von Wiederverwertung bedeutet beispielsweise, daß lediglich Schrauben, Muttern, Schalter und Bolzen als standardisierte Komponenten benutzt werden. Als nächstes folgen Motor, Getriebe, Achsen, Teile der Inneneinrichtung etc. bevor schließlich ganze Bodengruppen für mehrere Fahrzeuge gemeinsam genutzt (wiederverwertet) werden. Man sieht, je komplexer eine Wiederverwertungskomponente ist, um so eingeschränkter ist ihre Anwendbarkeit für andere als das ursprünglich vorgesehene Produkt. Gleiches gilt für die Wiederverwertung mikroelektronischer Entwürfe. Während Logikgatter so universell sind, daß sie in praktisch jeder Digitalschaltung benötigt werden, trifft dies auf Komponenten höherer Abstraktionsebenen nicht zu. Hier sind die existierenden Komponenten selbst so komplex und auf spezielle Anwendungen zugeschnitten, daß sie nur in Ausnahmefällen allgemein einsetzbar sind. Zudem gibt es zahlreiche Möglichkeiten, diese Funktionseinheiten zu realisieren, die sich aufgrund unterschiedlicher Kosten und Leistungsmerkmale in ihrer Eignung für bestimmte Anwendungen unterscheiden. Als Ausweg bietet sich an, Bausteine dediziert für Wiederverwertbarkeit zu entwickeln oder die Möglichkeit zu schaffen, Wiederverwertungskomponenten an neue Anforderungen anpassen zu können.

Verschärft wird die Problematik dadurch, daß die Fertigungstechnologie der Halbleiterindustrie einer stetigen Weiterentwicklung unterliegt, so daß sich inflexible, auf eine bestimmte Technologie zugeschnittene Module nur über einen kurzen Zeitraum wiederverwenden lassen.

Die Anforderungen an eine Entwurfsmethode, die die Wiederverwertbarkeit komplexer Module fördert, lassen sich somit wie folgt zusammenfassen: Es gilt diese Komponenten so zu beschreiben, daß ihre Funktion ohne Kenntnis des inneren Aufbaus zu verstehen ist, sie automatisch für beliebige Zieltechnologien synthetisiert werden können, sie in flexibler Weise mit anderen Komponenten kommunizieren können und ihre Funktionalität an neue Anforderungen angepaßt werden kann, ohne zuvor überprüfte Eigenschaften in unkontrollierter Weise zu gefährden.

Mit der Einführung von speziellen Programmiersprachen für den Hardwareentwurf, sogenannten Hardware-Beschreibungssprachen, von Synthesewerkzeugen und Simulatoren ähnelt die Mikroelektronikentwicklung vordergründig immer mehr der Softwareerstellung, die ja ebenfalls Programmiersprachen, Compiler und Software-Debugger kennt. Da auch in der Softwarewelt große Softwaresysteme mit mehreren Millionen Zeilen Programmiersprachentext entstehen und auch dort Komplexitätsprobleme, Zeit- und Kostendruck herrschen, liegt es nahe, Entwicklungsmethoden der Softwaretechnik auf ihre Eignung im Hardwarebereich zu prüfen. Zu berücksichtigen sind inhärente Unterschiede beider Domänen, beispielsweise die massive Parallelität der Hardware, unterschiedliche Produktlebenszyklen und die - durch die notwendige Hardwareproduktion - unterschiedliche Kostenstruktur.

Das aktuelle Programmierparadigma der Softwaretechnik ist die objektorientierte Programmierung. Sie erlaubt es, die Eigenschaften von Objekten, die später in einem System zum Einsatz kommen sollen, in Klassen zu spezifizieren. Hierzu gehören auch die Funktionen, Methoden genannt, die ein Objekt ausführen kann. Zur Anwendung eines solchen Objekts ist dann nicht mehr die Kenntnis seines inneren Aufbaus notwendig. Dieser bleibt dem Anwender vielmehr verborgen und der Zugriff auf das Objekt erfolgt ausschließlich über die vereinbarten Methoden. Wird eine Variante eines solchen Objekts benötigt, kann diese durch einen Vererbungsmechanismus als neue Klasse erzeugt werden. Hierbei bleiben die Eigenschaften des Objekts erhalten, die nicht explizit geändert wurden. Der Aufbau eines konkreten Systems erfolgt schließlich dadurch, daß Objekte der zuvor definierten Klassen erzeugt - instantiiert - werden, die dann untereinander Botschaften austauschen und somit gegenseitig ihre Methoden aufrufen und Werte austauschen.

Die grundlegenden Anforderungen an eine Entwurfsmethode für Wiederverwertung im Mikroelektronikentwurf werden von der objektorientierten Programmierung erfüllt. Aus diesem Grunde werden im Institut OFFIS, basierend auf im Fachbereich Informatik der Universität Oldenburg entwickelten Grundlagen objektorientierte Spracherweiterungen für die international standardisierte Hardware-Beschreibungssprache VHDL entwickelt. An dem Forschungsprojekt, das von der Europäischen Union im Rahmen des ESPRIT-Programms gefördert wird, beteiligen sich namhafte Industriefirmen aus dem Telekommunikationsbereich, die Deutsche Telekom AG, France Telecom, die spanische Telefonica und Italtel sowie weitere Forschungsinstitute und CAD-Anbieter. Als erstes Ergebnis des Projekts wird im Herbst dieses Jahres ein Übersetzungsprogramm zur Verfügung stehen, welches Schaltungsbeschreibungen, die in der neuen Sprache Objective VHDL entwickelt wurden, in die Sprache VHDL übersetzen, damit den Anschluß an den industrieüblichen Entwurfsprozeß herstellt und somit die neue objektorientierte, die Wiederverwertbarkeit fördernde Entwurfsmethode einer industriellen Erprobung erschließt.

 

Der Autor

Prof. Dr.-Ing. Wolfgang H. Nebel (40) studierte an der Universität Hannover Elektrotechnik und promovierte am Fachbereich Informatik der Universität Kaiserslautern. Anschließend arbeitete er über sechs Jahre bei der Firma Philips Semiconductors in Hamburg. Hier war er zuletzt Leiter der CAD-Softwareentwicklung. Nebel erhielt Rufe an die Universitäten Linz und Oldenburg. An der Universität Oldenburg leitet er seit 1993 die Abteilung "Entwurf integrierter Schaltungen" am Fachbereich Informatik, ist seit 1996 Dekan des Fachbereichs und engagiert sich im Institut OFFIS sowie dem neu gegründeten Institut für "Komplexe integrierte Systeme und Mikrosensorik". Nebels Forschungsinteressen: Entwurf eingebetteter Systeme unter besonderer Berücksichtigung von Wiederverwertbarkeit und geringem Energieverbrauch. Er ist Mitglied zahlreicher Gremien und wissenschaftlicher Organisationen: u.a. als Vorsitzender der IFIP Special Interest Group VHDL und mehrerer Programmkommitees internationaler Konferenzen.