Komplexe Schaltwerke - ASIC-Entwicklung

Inhaltsverzeichnis

1. Einleitung

2. Leistungsabschätzung

2.1. Einleitung

2.2. Ein einfaches Abschätzungsmodell

2.3. Abschätzen der Schaltaktivität

6. Zusammenfassung

7. Literaturverzeichnis

1. Einleitung

Der Leistungsverbrauch einer elektronischen Schaltung ist f√ľr viele Anwendungen ein wichtiges Thema. Die in den letzten Jahren stark zugenommene Nachfrage an portablen bzw. mobilen elektronischen Ger√§ten, allen voran Mobiltelefone, Laptops und √§hnliches, verlangen eine Optimierung der Leistungsentnahme. Ein weiterer wichtiger Grund f√ľr einen geringen Leistungsverbrauch in integrierten Schaltungen liegt darin, dass es ein gro√ües Problem moderner Mikrochips ist, die Verlustleistung abzuf√ľhren um zu vermeiden, dass der Chip zu hei√ü wird.

In dieser Arbeit versuchen wir daher einige zentrale Aspekte dieses Themas zu beleuchten. Zuerst wird eine Einf√ľhrung in die Absch√§tzung des Leistungsverbrauchs gegeben, die anderen Kapitel sind in dieser Ver√∂ffentlichung nicht vorhanden. Bei Interesse senden Sie bitte eine email an mich.

Im Folgenden soll nun ein kurzer Einblick in diese Thematik und eine einfache Vorstellung der oben genannten Verfahren gegeben werden.

2. Leistungsabschätzung

2.1. Einleitung

Das erste Kapitel dieser Arbeit behandelt die Absch√§tzung der verbrauchten Leistung in Digitalschaltungen. Man erkennt, dass unter wenigen, aber meist erf√ľllten Annahmen der Leistungsverbrauch grundlegend von der Schaltaktivit√§t abh√§ngt und diese daher untersucht werden muss.

2.2. Ein einfaches Abschätzungsmodell

Der Leistungsverbrauch in CMOS-Technologie hängt grundlegend von der Schaltaktivität ab.

Mit drei vereinfachenden Annahmen kann ein sehr einfacher Zusammenhang zwischen dem logischen Netzwerk und der verbrauchten Leistung hergestellt werden. Diese Annahmen lauten [MDG97]:

Die einzigen Kapazit√§ten die in der Schaltung auftreten befinden sich am Ausgang. Der Strom flie√üt nur von VDD in die Ausgangskapazit√§t oder von der Ausgangskapazit√§t zur Masse. Alle √Ąnderungen der Ausgangsspannung sind Spr√ľnge von VDD zur Masse oder umgekehrt.

Diese Voraussetzungen sind in der Regel bei gut konstruierten Schaltkreisen erf√ľllt und stellen somit keine gro√üe Beschr√§nkung der Allgemeinheit dar. Es ergibt sich nun folgender, vereinfachter Zusammenhang [MDG97]:

(2.1)

wobei Pavg die mittlere Verlustleistung, Cload die Ausgangskapazität, VDD die Versorgungsspannung, Tcyc die globale Taktperiodendauer, N die Anzahl der Zustandsänderungen des Ausgangs pro Taktzyklus und IL die Leckströme darstellt. Alle Parameter außer N sind direkt durch die Technologie der Schaltung vorgegeben. N hängt sowohl von der logischen Schaltung als auch von der Sequenz der Zustände der Eingangsleitungen ab.

Wie man sieht hat der erste Term der rechten Seite quadratische Abh√§ngigkeit von der Versorgungsspannung und ist somit f√ľr den Gro√üteil der Verlustleistung verantwortlich. Der zweite Term macht den Einflu√ü von Leckstr√∂men sichtbar, die aber nur bei Niedrigstleistungssystemen ins Gewicht fallen. Weiters nimmt mit steigender Taktfrequenz die verbrauchte Leistung zu und ist damit auch f√ľr eine wachsende W√§rmeentwicklung verantwortlich [Wol94].

Um den Leistungsverbrauch abzuschätzen besteht die Aufgabe daher vor allem darin, N abzuschätzen.

2.3. Abschätzen der Schaltaktivität

So mancher, welcher sich mit diesem Thema noch nicht auseinandergesetzt hat, mag jetzt vielleicht meinen, dass N ja nur Null oder Eins sein kann, da ein mehrmaliges Schalten während eines Taktzyklus ja nicht möglich sei. Dem ist zu erwidern, dass es bei mehrstufigen Netzen aufgrund unterschiedlicher Gatterlaufzeiten zu einem oftmaligen Schalten des Ausgangs kommen kann (races).

Folgendes Beispiel soll dies erläutern:

Abbildung 2.1: einfache Logikschaltung Abbildung 2.2: Zeitdiagramm der Schaltung aus Abb. 2.1

Abbildung 2.1 zeigt eine einfache Digitalschaltung wobei das UND- und das ODER-Gatter eine doppelt so lange Gatterlaufzeit haben wie das NICHT-Gatter. Wie man in Abbildung 2.2 gut erkennen kann, kommt es aufgrund der unterschiedlichen Laufzeiten zu einem doppelten Schalten des Ausgangs, obwohl das allein aus der boolschen Funktion nicht erkennbar ist.

Bezeichnet man mit f1(t) den Ausgang des Netzwerkes f1 zur Zeit t, so findet ein Schaltvorgang e unter folgender Beschreibung statt [DKW90]:

e = f1(t) √Ö f1(t-1) (√Ö bezeichnet den logischen exklusiv-ODER Operator)

Das bedeutet, es findet ein Schaltvorgang statt, wenn ein √úbergang von logisch 1 auf 0 oder umgekehrt erfolgt.

Man kann nun jedes beliebige Netzwerk analysieren. F√ľr die Schaltung aus Abbildung 2.1 ergibt sich unter der vereinfachenden Annahme dass alle Gatterlaufzeiten genau eine Zeiteinheit betragen:

X1(t) = E1(t-1) √ô E2(t-1)

X2(t) = √ėE3(t-1)

A1(t) = (E1(t-2) √ô E2(t-2)) √ö √ėE3(t-2)

Die Schaltaktivität ergibt sich dann aus

eA1 = A1(t) √Ö A1(t-1)

eA1 = ((E1(t-2) √ô E2(t-2)) √ö √ėE3(t-2)) √Ö ((E1(t-3) √ô E2(t-3)) √ö √ėE3(t-3))

Es ist zu beachten, dass eine Zeiteinheit nicht einer Taktperiode entspricht.

Um die gesamte Anzahl der Zustandswechsel N w√§hrend einer Taktperiode zu erhalten, muss die errechnete Funktion e √ľber alle Zeiteinheiten w√§hrend einer Taktperiode summiert werden.

Man kann dieses Modell auch recht einfach auf unterschiedliche Gatterlaufzeiten erweitern, indem man die Zeiteinheiten feiner w√§hlt und jedem Gatter eine charakteristische Anzahl von Zeiteinheiten f√ľr dessen Verz√∂gerung zuordnet [DKW90].

Um den konkreten Leistungsverbrauch einer Schaltung auszurechnen, kann man dieses Modell f√ľr eine gegebene Folge von Eingangsvektoren durchrechnen. Ist die Folge der Eingangsvektoren nicht bekannt, kann man f√ľr die einzelnen Zust√§nde deren Wahrscheinlichkeiten verwenden (im einfachsten Fall f√ľr jede Eingangsleitung 0,5). Oft ist man jedoch auch an der Absch√§tzung der maximalen Verlustleistung interessiert, was dann zu einem Maximierungsproblem f√ľhrt. Ich verweise daf√ľr auf die weiterf√ľhrende Literatur [DKW90], [MDG97].

6. Zusammenfassung

Das zentrale Thema der Leistungsreduktion in ICs gewinnt zunehmend an Bedeutung. Art und Effizienz der Optimierung h√§ngen dabei stark von der Funktion der Teilschaltung und der jeweiligen Signalstatistik ab. Die hier pr√§sentierten Methoden und Verfahren zeigen gut, welche vielf√§ltigen M√∂glichkeiten auf diesem Gebiet bestehen. Doch eine singul√§re Betrachtungsweise ist zu vermeiden. Nur eine Kombination verschiedenster Verfahren wird es in Zukunft m√∂glich machen, eine Verringerung der Leistungsaufnahme soweit voranzutreiben, dass k√ľnftige Produkte der (Unterhaltungs-) Elektronik nur einen Bruchteil des heutigen Leistungsbedarfs ben√∂tigen, und das bei geringerem Platzbedarf und h√∂herer Funktionalit√§t.

7. Literaturverzeichnis

[AlM94] Alidina, M., Monteiro, J., Devadas, S.: Precomputation-Based Sequential Logic Optimization for Low Power.

IEEE Transactions on VLSI Systems, Vol.2, No.4, S. 426 - 435, Dec 1994

[BeM94] Benini, L., De Micheli, G.: Saving Power by Synthesizing Gated Clocks for Sequential Circuits.

IEEE Design & Test of Computers, Vol.11, No.1, S. 32 - 41, Spring 1994

[BeM95] Benini, L., De Micheli, G.: State Assignment for Low Power Dissipation.

IEEE Journal of Solid-state Circuits, Vol. 30, No. 3, S. 258 - 267, March 1995

[BeM96] Benini, L., De Micheli, G.: Automatic Synthesis of Low Power Gated-Clock Finite-State Machines.

IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, Vol. 15, No. 6, S. 630 - 642, June 1996

[Cha95] Chandrakasan, A. P., et al.: Optimizing Power Using Transformations.

IEEE transactions on CAD of IC and systems, Vol. 14, No. 1, S. 12 - 31, 1995

[DKW90] Devadead, S., Keutzer, K., White, J.: Estimation of average switching activity in combinational and sequential circuits.

In proceedings of the custom integrated circuits conference, S. 19.7.1 - 19.7.6, May 1990

[Koe97] Koegst, M., Franke, G., R√ľlke, S., Feske, K.: Ber√ľcksichtigung der Leistungs-aufnahme bei der Synthese digitaler Automaten. Tagungsband Austrochip 1997,

Universitätsverlag Rudolf Trauner; S. 41 - 48, 1997

[MeB96] Meißner, E., Berthold, J.: Methoden zur Leistungsreduktion bei Low-Power-CMOS-Schaltungen am Beispiel einer Speicherarchitektur mit Adreßarithmetik.

ITG-Fachbericht Nr. 138, "Mikroelektronik"; VDE Verlag, S. 19 - 23, 1996

[MDG97] Monteiro, J., Devadas, S., Ghosh, A., Keutzer, K., White, J.: Estimation of average switching activity in combinational logic circuits using symbolic simulation.

In IEEE transactions on computer-aided design of integrated circuits and systems, vol. 16, S. 121 - 127, January 1997

[MoO98] Monteiro, J., Oliveira, A.: Finite state machine decomposition for low power.

In DAC '98. Proceedings of the 35th annual conference on Design automation conference, S. 758 - 763, 1998

[RoP93] Roy, K., Prasad, S. C.: Circuit Activity Based Logic Synthesis for Low Power Reliable Operations.

IEEE Transactions on very large scale integration Systems, Vol. 1, No. 4, S. 503 - 513, December 1993

[SSB96] Schumann, D., v. Schwerin, A., Berthold, J.: Minimierung der IC-Verlust-leistung durch CMOS-Prozeßoptimierung.

ITG-Fachbericht Nr. 138, "Mikro-elektronik"; VDE Verlag, S. 179 - 182, 1996

[Wol94] Wolf, W.: Modern VLSI Design - A systems approach. Prentice Hall International Editions, S. 108 - 112, 1994

1281 Worte in "deutsch"  als "hilfreich"  bewertet