In den vergangenen Jahren hat die Technologie der integrierten Schaltungen immer komplexere und gleichzeitig auch immer kleinere Bauteilstrukturen hervorgebracht. Dieser Fortschritt wird durch computerunterstützte Entwurfs- und Simulationstechniken bei der Technologieentwicklung (Technology Computer Aided Design, TCAD) ermöglicht und verlangt nach stetiger Entwicklung immer komplexerer Modelle und Simulationsverfahren. Der Entwurf entsprechender Computerprogramme und Modellbibliotheken erfordert zunehmend die Zusammenarbeit von Entwicklergruppen aus Ingenieuren, die tiefgreifendes Wissen auf physikalischem, technologischem oder informatischem Gebiet in die Simulatorentwicklung einbringen.
Die Forderung nach immer schnellerer Verfügbarkeit neuer Modelle und
Simulatoren bedingt die Entwicklung geeigneter Software und
Modellmanagementstrukturen, die eine Reihe von Anforderungen zu erfüllen
haben: Der Einsatz in existierenden und aus vielen Quellcodeteilen in
unterschiedlichen Programmiersprachen bestehenden Programmen soll
ohne einschneidende Kompromisse gleichermaßen unterstützt werden wie
vollständige Neuentwicklungen mit modernen objekt-orientierten
Methoden. Es müssen Schnittstellen sowohl für die Entwickler
physikalischer Modelle als auch für die Implementierung der Kernteile von
TCAD Anwendungen angeboten werden, die sowohl die Forderungen von
Physikern und Informatikern nach einfacher Programmierung erfüllen, als
auch leistungsfähige Methoden zur Abstraktion von komplexen
Lösungsstrategien für Informatiker anbieten. Notwendig ist auch die
Bereitstellung von
[2]Mechanismen für die rasche Entwicklung
von Prototypen, die danach ohne Aufwand in fertige Produkte integriert
werden können. Nicht zuletzt wird vielfach nach einer Vereinfachung der
Verwaltung von Modellparametern sowie der entsprechenden Dokumentation
verlangt.
Die vorliegende Dissertation beschreibt eine neu entwickelte objekt-orientierte Programmbibliothek (Algorithm Library), die zur Lösung der oben beschriebenen Problematik dient. Basierend auf einer C++ Klassenbibliothek zur Abstraktion von Algorithmen und Modellen sowie ihrer Parameter und Dokumentation, werden Entwurfsstrategien und Lösungsansätze beschrieben, die die objekt-orientierte Entwicklung von TCAD Programmen gestatten. Eine speziell für diese Klassenbibliothek optimierte objekt-orientierte Programmiersprache gestattet die uneingeschränkte Neu- und Weiterentwicklung von Algorithmen und Modellen. Programme auf der Basis dieser Klassenbibliothek verfügen sowohl über einen Interpreter als auch über einen Compiler für diese neue Sprache, die gleichermaßen die Entwicklung von Prototypen von neuen Algorithmen und Modellen und die Bildung von Modellbibliotheken vollständig entwickelter und getesteter Programmteile gestatten.
Die Anwendung der beschriebenen Programmbibliothek wird im Detail anhand
eines TCAD Prozeßsimulators demonstriert, der mit einer Reihe von
Schnittstellen für die Entwicklung von Modellen für Diffusionsprozesse
ausgestattet ist. Zwei Beispiele veranschaulichen die Verwendung der oben
erwähnten Programmiersprache als auch das Konzept des Prozeßsimulators.
Kurzbeschreibungen weiterer Anwendungen der
[4]Algorithm Library sowie ein
Ausblick auf zukünftige Entwicklungsmöglichkeiten beschließen diese Arbeit.