Die Simulation des Zeitverhaltens elektrischer Schaltungen auf der
Ebene analoger Strom- und Spannungsverläufe (Circuit Simulation) ist
einer der wichtigsten Schritte der Entwurfsverifikation integrierter
Schaltkreise. Circuit Simulation ersetzt hier die früher bei
diskreter Technologie übliche Vorgehensweise des iterierten
Abänderns und Ausmessens eines Schaltungsprototypen. Ein Circuit
Simulation Algorithmus erstellt dabei zunächst ein mathematisches
Modell der zu simulierenden Schaltung, ein i.a. nichtlineares,
implizites, algebraisches Differentialgleichungssystem, welches die
Physik der Bauelemente und die Topologie der Schaltung beschreibt. Die
eigentliche ,,Simulation``besteht in der numerischen Berechnung einer
Lösung dieses Gleichungssystems. Direkte Simulationsalgorithmen
diskretisieren die Differentialgleichungen mittels einer
Integrationsformel und lösen in jedem Simulationszeitpunkt ein
nichtlineares Gleichungssystem. Diese, aufgrund der hohen
Unbekanntenzahl rechenintensive Vorgehensweise führt zu einem
Verhältnis von bis
zwischen Simulationsdauer und
simulierter Realzeit. Relaxationsalgorithmen, die ein entkoppeltes
Lösen der Gleichungen ermöglichen, führen auf
Parallelarchitekturen zwar zu einer Beschleunigung um den Faktor 100
bis 200. Im praktischen Einsatz liegt aber dennoch die Obergrenze
für die Komplexität simulierbarer Schaltungen bei 5.000 bis 10.000
Transistoren. Die steigende Komplexität integrierter Schaltkreise
und der Wunsch IC's mit
bis
Transistoren nicht nur
modulweise simulieren zu können, erfordert Beschleunigungen um den
Faktor 1.000 bis 10.000 gegenüber der direkten Technik. Ein Vorstoß
in diesen Leistungsbereich kann unter Beibehalt der Genauigkeit nur
mit dem Einsatz hochparalleler Algorithmen auf speziellen
Parallelarchitekturen (Simulation Engines) erfolgen.
Gegenstand der Forschungsarbeiten ist daher die Entwicklung eines Circuit Simulation Algorithmus für eine Ereignisflußarchitektur, die ihr hohes Leistungspotential bereits in den Bereichen Logik- und Fehlersimulation im Simulationsrechner MuSiC unter Beweis stellen konnte. In einem zweiten Schritt gilt es dann die Struktur und Architektur eines Spezialprozessors für die effiziente Ausführung des Algorithmus zu entwerfen.
Circuit Simulation auf einer Ereignisflußarchitektur erfordert eine Datenflußgraphdarstellung des die Schaltung modellierenden Differentialgleichungssystems einschließlich des darauf operierenden Lösungsalgorithmus. Hierzu wurde ein auf einer Bondgraphdarstellung einer elektrischen Schaltung arbeitender, neuer Algorithmus entworfen. Wesentlicher Vorteil und Unterschied dieses Ansatzes gegenüber anderen Algorithmen ist, daß die Schaltung nicht basierend auf den Kirchhoffschen Knotengleichungen repräsentiert wird, sondern als hierarchisches System von Serien- und Parallelschaltungen. Hieraus resultiert ein hoher Grad feinkörniger Parallelität auf Zweipolebene:
Simulationsergebnisse einer ersten, noch rein datengetriebenen Version des Algorithmus, die auf eine 256-Prozessor Version von MuSiC hochgerechnet wurden, bestätigen dies: Eine 700 MOS-Transistorschaltung wird gegenüber direkter Technik problemlos um den Faktor 600 beschleunigt simuliert. Der Übergang zu änderungsgetriebener Abarbeitung läßt eine weitere Leistungssteigerung um den Faktor 10 bis 20 erwarten.