Abstract | Lange Zeit beschränkten sich die Optimierungsverfahren beim Entwurf höchstintegrierter Schaltungen auf Schnelligkeit, geringen Flächenbedarf und minimale Kosten von Schaltkreisen. In Folge dessen wurden immer schnellere und kleinere Schaltungen mit entsprechend wachsender Integrationsdichte entwickelt, die allerdings eine erhöhte Wärmeentwicklung aufwiesen. Hohe Temperaturen beeinträchtigen jedoch die Zuverlässigkeit von Schaltkreisen. Ein Weg, die hohe Wärmeentwicklung zu minimieren, besteht in der Senkung der Leistungsaufnahme. Zusätzlich trägt die hohe Verbreitung von tragbaren Geräten wie Laptops und Mobiltelefonen dazu bei, dass die Minimierung des Leistungsverbrauchs mittlerweile einen ähnlich hohen Stellenwert einnimmt wie die Minimierung des Flächenbedarfs sowie die Schnelligkeit von Schaltkreisen.
Um eine Schaltung zu entwickeln, die einen möglichst geringen Energiebedarf hat, ist eine genaue Abschätzung des Energieaufwands unentbehrlich. Am exaktesten sind Schaltungssimulatoren auf der physikalischen Ebene (wie z.B. Spice), welche die Spannungs- und Stromverläufe analog untersuchen. Allerdings haben diese Simulatoren bei größeren Schaltungen einen enormen Speicherbedarf und eine inakzeptabel hohe Laufzeit. Im Vergleich dazu sind Simulatoren, die Schaltkreise auf der logischen Gatterebene untersuchen, zwar etwas ungenauer, aber um Größenordnungen schneller und das bei viel geringerem Speicherbedarf. Außerdem ermöglichen sie die Abschätzung des Energieaufwands in einem früheren Stadium der Entwicklung, unabhängig von der Zieltechnologie. Ziel der Logiksimulatoren ist die Berechnung der zeitlichen Verläufe aller Signale in einer Schaltung. Aus den Signalverläufen lässt sich die Anzahl an aufgetretenen Transitionen ermitteln und daraus der durchschnittliche Energiebedarf des Schaltkreises.
Im Zuge der vorliegenden Arbeit wurde ein Schaltungssimulator entwickelt, der die Schaltaktivität aller Signale mit Hilfe einer Kombination aus probabilistischen und logischen Methoden auf Basis Binärer Entscheidungsdiagramme (BDD: binary decision diagram) ermittelt. Zur Ermittlung der Schaltwahrscheinlichkeit wird für jedes Gatter seine Transitionsfunktion als BDD aufgebaut. Dabei werden BDD-Knoten korrelierter Signale angrenzend im BDD angeordnet. Sie bilden sogenannte Korrelationsschichten. Die Wahrscheinlichkeit der Transitionsfunktion wird anschließend anhand des BDDs ausgewertet: Innerhalb von Korrelationsschichten wird logisch und an den Schichtgrenzen probabilistisch simuliert. Weiter wurde ein Verfahren zur Beschleunigung der Simulation auf Kosten der Genauigkeit implementiert. Hierbei wird der Aufbau der BDDs nach Erreichen einer gewissen Schaltungstiefe abgebrochen.
Die in dieser Arbeit vorgestellte probabilistisch-logische Folgesignal-Simulation führt gegenüber vergleichbaren Simulationsverfahren, wie der Simulation nach Farid N. Najm und P. H. Schneider, zu deutlich besseren Ergebnissen. Es hat sich gezeigt, dass Berücksichtigung von Signalkorrelationen unabdingbar ist. Deren Vernachlässigung führt zu großen Fehlern.
|