VL 0433 L608 Integrierte digitale Schaltungen H.Klar Foliensatz 6: Latches und Register 04.02.2014 1 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7 Latches, Flipflops und Register 4.7.1 Einleitung Auf einem Chip müssen die Daten nicht nur verarbeitet sondern auch gespeichert werden. Hierfür stehen eine Vielzahl von Speicherelementen zur Verfügung. Gegenwärtig werden fast ausschließlich getaktete Logikschaltungen, das sind synchrone Schaltungen, zum Beispiel in Mikroprozessoren eingesetzt. Das getaktete Speicherelement, sei es ein Paar von „level sensitve latches“ oder ein flankengesteuertes Flip-Flop, ist daher wahrscheinlich das am häufigsten analysierte und diskutierte Schaltelement in einem Mikroprozessordesign. Diese Behauptung ist gerechtfertigt, da die getakteten Speicherelemente helfen, die Daten zum richtigen Zeitpunkt einer weiteren Verarbeitung zu zuführen. Sie synchronisieren gleichzeitig arbeitende Logikpfade, die unterschiedliche Laufzeiten aufweisen. Getaktete Speicherelemente unterteilen Pipeline-Schaltungen. Sie speichern den gegenwärtigen Zustand und verhindern, daß dieser Zustand zu früh weitergeleitet wird. Jeder Logikpfad beginnt und endet mit einem getaktetem Speicherelement. Daher ist die Latenzzeit, das heißt die Gatterlaufzeit, des getakteten Speicherelements für die Taktperiode und damit für die Taktfrequenz von überragender Bedeutung. 04.02.2014 2 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bei dem Entwurf eines Logikchips ist die Entscheidung ob ein Einphasen-Taktsystem oder ob zwei nichtüberlappende oder gar mehrere Taktphasen verwendet werden und wie diese Signale auf dem Chip verteilt werden von grundlegender Bedeutung (siehe Kapitel 5). Von dieser Entscheidung hängt der Entwurf der getakteten Speicherelemente ab. Es sind sich zum Teil widersprechende Anforderungen zu erfüllen. Zum Beispiel sollte die Latenzzeit des Speicherelements und die Belastung der Takttreiberschaltungen gering sein. Natürlich wird zusätzlich eine geringe Verlustleistung angestrebt. Die Schaltungen sollten robust sein, das heißt die Funktion sollte möglichst unabhängig von Herstellungstoleranzen, Temperaturschwankungen und Schwankungen der Versorgungsspannung sein. Besonders wichtig ist, daß keine „races“ auftreten, das heißt, daß in der Phase, in der der Ausgang des Speicherelements unabhängig von den Daten am Eingang sein soll, dies auch wirklich unter allen zulässigen Unständen gewährleistet wird. Andernfalls treten „races“ auf. Es sollte angestrebt werden, daß Logikfunktionen zusätzlich in die Speicherelemente eingebaut werden können. In diesem Kapitel werden zunächst nur die wichtigsten Grundschaltungen für getaktete Speicherelemente behandelt. Es werden ein Einphasen-Taktsystem, ein komplementäres EinPhasen-Taktsystem, zwei nichtüberlappende Taktphasen oder zwei nichtüberlappende, komplementäre Taktphasen (pseudo Vier-Phasen-Takt) vorausgesetzt, wie sie in Bild 4.7.0 dargestellt sind. Im Kapitel 5 werden die Vor- und Nachteile der verschiednen Taktsystem besprochen. In Bild 4.7.0b wird angezeigt, daß der inverse Takt ⍕, der lokal oder zentral aus dem Takt Φ abgeleitet wird, in Bezug auf den Takt Φ Schwankungen unterworfen sein kann. 04.02.2014 3 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.0 Taktsysteme a. Ein-Phasen-Takt b. komplementärer Ein-Phasen-Takt c. nicht überlappender Zwei-Phasen-Takt d. komplementärer Zwei-Phasen-Takt 04.02.2014 4 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Man spricht von statischen oder von dynamischen Speicherelementen. Statische Speicherelemente haben im Kern eine bistabile Schaltung, das sind zwei mitgekoppelte Inverter oder Gatter. Diese Schaltungen bewahren ihre Information solange die Versorgungsspannung eingeschaltet ist. Dynamische Speicher bewahren die Information in Form von Ladung für eine kurze Zeitspanne, vielleicht für Millisekunden auf einer Kapazität. Die logische Null entspricht einer entladenen Kapazität, während die auf die positive Versorgungsspannung aufgeladene Kapazität einer logischen Eins entspricht. Unglücklicherweise ist keine Kapazität ideal. Leckströme sind immer vorhanden. Eine gespeicherte Ladung kann daher nur für eine begrenzte Zeit bewahrt werden. Wenn für lange Zeit die Information erhalten werden soll, muß periodisch die gespeicherte Ladung erneuert werden (refresh-Zyklen). In der Literatur über sequentielle Schaltungen findet man oft mehrdeutige Definitionen für Latches, Flip-Flops und Register. In diesem Buch wird strikt an folgenden Definitionen festgehalten [184]. 04.02.2014 5 ! VL 0433 L608 Integrierte digitale Schaltungen H.Klar Ein Latch ist ein Bauelement, das zwei Eingänge C und D, sowie einen Ausgang Q hat. Oft wird auch der komplementäre Ausgang Q‘ generiert. Die Bezeichnung der Eingänge mit den Buchstaben C und D drückt aus, daß am Eingang D üblicherweise ein Datensignal angelegt wird, während am C-Eingang ein Taktsignal eingespeist wird. Wenn bei einem positiven Latch C=1, dann folgt der Ausgang Q dem Wert des Eingangs D. Mit der fallenden Flanke des Signals C wird der zu dieser Zeit gültige Wert von D übernommen und der Ausgang bleibt von da an konstant solange gilt C=0. Bei einem negativen Latch folgt der Ausgang dem Eingang für C=0 und der Eingangswert wird mit der steigenden Flanke des Signals C übernommen. In der Literatur nennt man die beiden Schaltungen auch „level sensitive latch“. Ein flankengesteuertes Register hat die gleichen Ein- und Ausgänge wie ein Latch. Aber der Ausgang Q wechselt nur seinen Zustand bei der ansteigenden, der abfallenden oder bei beiden Flanken des C-Pulses. Das heißt bei ansteigenden oder abfallenden Flanken des CPulses übernimmt der Ausgang Q das Signal, das zu diesem Zeitpunkt am Eingang D anliegt. Zu allen anderen Zeitpunkten bleibt der Ausgang Q konstant. Jede bistabile Schaltung, die mittels Mitkopplung von Invertern oder Gattern gebildet wird, nennt man Flip-Flop. Flip-Flops können die Funktion eines Latches oder eines Registers haben. 04.02.2014 6 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.2 Einfache dynamische Latches In der MOS-Technologie ist das Gate durch eine isolierende Schicht vom leitenden Kanal getrennt, das heißt die Eingangsadmittanz ist kapazitiv. Diese Tatsache wird in der dynamischen Schaltungstechnik genutzt um auf einfache Weise logische Zustände vorübergehend zu speichern. Allgemein werden der dynamischen Schaltungstechnik ein geringer Patzbedarf und eine hohe Schaltgeschwindigkeit zugeschrieben. In Bild 4.7.1 ist ein dynamisches Latch, bestehend aus einem Inverter und einem n-Kanal-Transistor, der als Transfer-Transistor dient, abgebildet. Wenn das Taktsignal Φ auf hohem Potential liegt, wird der gewünschte Spannungswert eingeschrieben. Der Ausgang Q folgt dem Eingangssignal D. Mit der fallenden Flanke des Taktsignals Φ wird das Eingangssignal D auf der Eingangskapazität Cein gespeichert, da nun der Transfertransistor sperrt. Die Eingangskapazität Cein setzt sich aus den Gate-Soure- und Gate-Drain-Kapazitäten des Inverters, aus den Überlappkapazitäten und aus der ausgangsseitigen Sperrschichtkapazität und der Gate-Drain-Kapazität des Transfertransistors zusammen. Zu beachten ist, daß wegen der Sperr- und Leckströme die gespeicherte Ladung allmählich wieder abfließt. 04.02.2014 7 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.1 Dynamisches Latch mit einem Transfer-Gatter (positives Latch). 04.02.2014 8 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die Schaltung nach Bild 4.7.1 ist sehr gut geeignet eine logische Null einzuschreiben. Es wird angenommen, daß in einer vorhergehenden Taktphase die Eingangskapazität Cein auf den Wert UDD aufgeladen wurde. Nun soll während Φ=UDD eine logische Null eingeschrieben werden. Während des gesamten Entladevorgangs bleibt die Gate-Source-Spannung des n-KanalTransistors konstant auf dem Wert UDD, da die Gate-Source-Spannung von der Differenz UDD-Uin gegeben ist. Erst wenn die Drain-Source-Spannung Null ist, fließt kein Drainstrom. Der Entladevorgang ist damit beendet. Cein wird vollständig entladen. Soll dagegen eine logische Eins eingeschrieben werden, das heißt eine gespeicherte Null soll überschrieben werden, bewirkt der Transfertransistor eine Pegelreduktion. In diesem Fall hat Uin den Wert UDD und bestimmt das Potential des Drainanschlusses. Source liegt an Masse. Wenn am Gate ebenfalls UDD anliegt, fließt über den Transfertransistor Strom und die Speicherkapazität Cein wird aufgeladen. Das heißt, die Gate-Source-Spannung des Transfertransistors nimmt ab. Wenn die Gate-Source-Spannung des Transfertransistors den Wert der Einsatzspannung UTn des Transfertransistors erreicht, sperrt dieser Transistor. Daraus folgt, daß die Speicherkapazität Cein maximal auf den Wert UDD-UTn aufgeladen werden kann. Dies verringert den zur Verfügung stehenden Signalhub und damit die Störsicherheit. Auch deswegen wird der Inverter angeschlossen; er soll den Signalpegel regenerieren. 04.02.2014 9 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Das Latch von Bild 4.7.1 ist ein positives Latch. Ersetzt man den n-Kanal-Transistor durch einen p-Kanal-Transistor handelt es sich um ein negatives Latch. Nur während Φ=0 folgt der Ausgang dem Eingang. Wie leicht einzusehen ist, hat des negative Latch den Nachteil, das nun eine logische Null nicht vollständig eingeschrieben werden kann. Die Speicherkapazität Cein kann nur auf den Wert |UTp| entladen werden. Dagegen kann nun eine logische Eins vollständig eingeschrieben werden. 04.02.2014 10 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Schaltet man beide Transistortypen parallel, wie es in Bild 4.7.2 gezeigt ist, und legt die richtigen Taktsignale an die Gates, wird mittels des n-Kanal-Transistors der Low-Pegel und mittels des p-Kanal-Transistors der High-Pegel vollständig eingeschrieben. Die Schaltung mit nur einem Transistor nach Bild 4.7.1 nennt man “Transfer-Gatter” und die Schaltung mit den parallel liegenden Transistoren wird “Transmissions-Gatter” genannt. Der Inverter sollte auch beim Transmissions-Gatter verwendet werden. Zum einem stellt er den wesentlichen Beitrag zur Speicherkapazität Cein. Außerdem kann das Ausgangssignal mit dem Inverter besser zu den anderen Gatter verteilt werden. Zusätzlich schirmt der Inverter den speichernden Knoten von Störsignalen auf der Ausgangsleitung ab. Bild 4.7.3 enthält die Schaltung eines negativen Latch mit Transmissions-Gatter. Die Schaltsymbole beider Latches sind in den Bildern 4.7.4a und b dargestellt. 04.02.2014 11 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.2 Dynamisches positives Latch mit einem Transmissions-Gatter 04.02.2014 12 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.2b Schaltsymbol 04.02.2014 13 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.3 Negatives Latch mit Transmission-Gatter 04.02.2014 14 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.4 Schaltsymbole eines a. positiven Latch; b. negativen Latch 04.02.2014 15 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die Signalverläufe des Bildes 4.7.5 beschreiben das zeitliche Verhalten eines positiven Latch. Wenn das Eingangssignal D vor der steigenden Flanke des Taktsignals gültig ist, wird die Latenzzeit tCQ des Latch definiert durch die zeitliche Verzögerung zwischen der ansteigenden Flanke des Taktes und der Zeit, an der das Ausgangssignal Q gültig wird. Wenn dagegen das Eingangssignal wechselt, während das Taktsignal Eins ist, das heißt, wenn das Latch transparent ist, wird die Latenzzeit tDQ (Verzögerungszeit) bestimmt von der Zeit zwischen dem Eingangssignalwechsel und der Zeit, zu der Q gültig wird. Ein kurze Zeitspanne vor und nach der fallenden Flanke des Signals Φ muß das Eingangssignal D stabil sein. Wegen der Herstellungstoleranzen und wegen anderer Störeinflüsse kann die Flanke des Taktsignals früher oder später als geplant eintreffen. Somit helfen die in Bild 4.7.5 gezeigten „set-up“- und „hold“-Zeiten (tsu und th), einen sicheren Betrieb zu gewährleisten. „Set-up“-Zeiten geben an, wie lange vor dem Signalwechsel eines Referenzsignals das betrachtete Signal stabil bleiben muß; während die „hold“-Zeiten bestimmen, wie lange nach einem Signalwechsel des Referenzsignals das betrachtete Signal konstant sein muß. 04.02.2014 16 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.5 Signalverläufe und charakteristische Zeiten eines Latch. 04.02.2014 17 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die bisher besprochenen Latches sind sehr einfach aufgebaut und benötigen deswegen wenig Platz. Deswegen sind sie sehr populär. Allerdings weisen sie einige Schwachstellen auf, die für bestimmte Anwendungen nicht tolerierbar sind. In Bild 4.7.6 sind die Schwachstellen eingezeichnet. 04.02.2014 18 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.6 Schwachstellen des einfachen dynamischen Latch in der Haltephase 1 Störsignale am Eingang 2 Leckströme und Sperrströme 3 Treffer eines Alphapartikels 4 kapazitive Kopplung von Störsignalen auf dem speichernden Knoten 5 Schwankungen der Versorgungsspannung 04.02.2014 19 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Zunächst handelt es sich um dynamische Schaltungen. Man darf also ohne besondere Vorkehrungen das Taktsignal nicht anhalten. Bei bestimmten Programmschritten sind manchmal vorübergehend ganze Schaltungsblöcken zum Beispiel von Mikroprozessoren ohne Aufgabe. In diesen Zeiten würde man gerne diese Blöcke um Verlustleistung zu sparen von der Versorgungsspannung abtrennen oder wenigstens das Taktsignal anhalten. Beides ist mit reinen dynamischen Latches nicht möglich. Man muß vorübergehend die Informationen in statischen Latches speichern. 04.02.2014 20 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Während der Haltephase soll eine logische Eins gespeichert sein und am Eingang des Latch soll eine Null anliegen. Wenn man weiter annimmt, daß der Treiber für das Eingangssignal weit entfernt ist, kann es vorkommen, daß ein negativer Signalwechsel von Eins nach Null in der Umgebung das Datensignal am Eingang des Transmission-Gatteres auf Grund von kapazitiven Koppelungen unter Null Volt drückt und der n-Kanal-Transistor des Transmissions-Gatters zumindest teilweise zu leiten beginnt. Somit kann der speichernde Knoten entladen werden. Vermeiden läßt sich dieser Effekt, wenn das Datensignal und der Takt an den Gates von zwei unterschiedlichen Transistoren und nicht am selben Transistor angreifen. Allerdings handelt man sich dadurch andere Nachteile ein (siehe Bild 4.7.9). Werden Sourcepotentiale von n-Kanal-Tranistoren unter Masse gedrückt, werden in Sperrichtung betriebene Dioden teilweise in Vorwärtsrichtung umgepolt. Daher werden zusätzlich Elektronen in das Substrat injiziert, die benachbarte Knoten, die eine Eins speichern, zumindest teilweise entladen. Masseleitungen weisen ebenfalls einen Widerstand auf. Es bilden sich deswegen auf dem Chip unterschiedliche Massepotentiale aus. Gewünscht wird eine Gate-Sorce-Spannung von Null, aber tatsächliche existiert eine kleine Spannungsdifferenz. Arbeiten die Transistoren im Unterschwellenbereich, so bewirkt eine Änderung der effektiven Gate-Source-Spannung um 60 mV eine Änderung des Drainstroms um etwa den Faktor 10. 04.02.2014 21 ! VL 0433 L608 Integrierte digitale Schaltungen H.Klar Mit fortschreitender Strukturverkleinerung werden die Abstände zwischen Leiterbahnen verringert. Gleichzeitig werden die Höhen der Leiterbahnen wegen „electromigration“ vergrößert. Insgesamt nehmen bei gleichbleibenden Isoliermaterial die Koppelkapazitäten um den Faktor S2 zu (siehe Kapitel 3.2.5), wenn die Leitungslänge konstant bleibt. In der Haltephase ist der „freischwebende“ Knoten, der die Information in Form von Ladung speichert, weder mit Masse noch mit der Versorgungsspannung UDD verbunden. Daher ist dieser Knoten sehr empfindlich im Hinblich auf kapazitive Kopplungen zu Signalen in der Umgebung. Dies schränkt die erzielbare Störsicherheit ein. Die Platzierung von speichernden Elementen soll keine besonderen Einschränkungen unterliegen, daher empfiehlt es sich für die Kapazität des speichernden Knoten Cein einen genügend großen Wert festzulegen. 04.02.2014 22 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Der „freischwebende“ Knoten ist auch Alphastrahlen ausgesetzt. Die Alphastrahlung geht von kleinsten Spuren radioaktiver Elemente aus, hauptsächlich Uran und Thorium, die im Gehäusematerial und in den Leitungen enthalten sind. Weiter löst die Höhenstrahlung im Silizium Kernprozesse aus, bei denen Alphateilchen emittiert werden. Ein Alphapartikel (Heliumkern, bestehend aus zwei Protonen und zwei Neutronen) erzeugt beim Durchgang durch Silizium Elektronen-Lochpaare. Die Elektronen werden von benachbarten positiv vorgespannten pn-Übergängen angezogen. An freischwebenden Knoten verursachen die gesammelten Ladungen einen Spannungsabfall, der die gespeicherte Information verfälscht. Da der Fehler nur vorübergehend auftritt spricht man von „soft error“. Auch dieser Mechanismus bedingt, daß die Kapazität des speichernden Knotens Cein einen minimalen Wert nicht unterschreiten darf. Im Zusammenhang mit dynamischen Speicherschaltungen wird die Wirkung von Alphastrahlen eingehend behandelt (siehe Kapitel 6.4.5). Eine weitere Störung des dynamischen Latches wird hervorgerufen durch Schwankungen der Versorgungsspannung. Ändert sich während der Haltphase die Versorgungsspannung, so ändert sich die relative Lage des Potentials des speichernden Knotens zu den charakteristischen Spannungen des nachfolgenden Inverters, wie zum Beispiel der Schaltschwelle. Wieder kommt es zu einer Einschränkung der Störsicherheit. 04.02.2014 23 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.3 Einfache dynamische Register Bei einem Latch folgt der Ausgang dem Eingangssignal D während das Taktsignal einen hohen oder einen niedrigen Wert aufweist. Dagegen soll bei einem Register der Ausgang Q möglichst nur zu einem bestimmten Zeitpunkt, der entweder von der fallenden Flanke oder der ansteigenden Flanke des Taktsignals bestimmt wird, dem Eingangssignal D folgen. Folgt der Ausgang dem Eingang mit der positiven Flanke des Taktsignals spricht man von einem positiven flankengesteuerten Register. Wenn die Übernahme des Eingangsignals mit der negativen Flanke erfolgt, nennt man das Register negativ flankengesteuert. Bild 4.7.7a zeigt die Schaltung eines einfachen dynamischen Registers, das aus zwei Latches besteht und von einem Taktsignal Φ gesteuert wird. Das erste Latch, das sogenannte Master-Latch ist ein negatives Latch, während des zweite Latch – das Slave-Latch – ein positives Latch ist. 04.02.2014 24 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.7 einfaches dynamisches Register bestehend aus Master- und Slave-Latch. a. Schaltbild b. Schaltsymbol 04.02.2014 25 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.7 einfaches dynamisches Register bestehend aus Master- und Slave-Latch c. typische Verläufe der Signale. 04.02.2014 26 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die Schaltung arbeitet wie folgt. Für Φ=0 ist das Master-Latch transparent. Der Ausgang IS folgt dem Eingangssignal D. Dies wird jedoch vom Slave-Latch ignoriert, da es sich in der Haltephase befindet. Somit bleibt der Ausgang Q konstant. Mit der steigenden Flanke des Taktsignals Φ wird das Master-Latch undurchlässig und hält nun den Zustand von IS konstant. Inzwischen ist das Slave-Latch transparent geworden. Der Ausgang Q folgt dem konstanten Signal von IS. Obwohl das Slave-Latch, solange das Taktsignal Φ seinen Wert hält, transparent ist, kann das Ausgangssignal Q nicht wechseln, da IS seinen Wert beibehält. Somit wird das Ausgangssignal Q nur einmal während einer Taktperiode mit der steigenden Flanke des Taktsignals erneuert. Das Schaltsymbol eines Registers ist in Bild 4.7.7b dargestellt. Typische Verläufe der Signale und charakteristische Zeiten wie tCQ, tDQ, tDC (in diesem Fall gilt tDC=tsu) und „set-up“- und „hold“Zeiten sind in Bild 4.7.7c eingezeichnet. „Set-up“- und „hold“-Zeiten werden gerade noch eingehalten. 04.02.2014 27 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.7 einfaches dynamisches Register bestehend aus Master- und Slave-Latch d. überlappende Taktphasen 04.02.2014 28 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Das Register nach Bild 4.7.7a hat neben den bereits besprochenen prinzipiellen Schwachstellen der Latches, aus denen es aufgebaut ist, noch zusätzlich eine weitere Schwachstelle. Für Φ=0 leitet der n-Kanal-Transistor des Transmissions-Gatter T1. Mit der steigenden Flanke des Taktes wird zuerst der n-Kanal-Transistor des Transmissions-Gatter T2 eingeschaltet und um die Gatterlaufzeit des Inverters 3 verzögert der n-Kanal-Transistor des TransmissionsGatters T1 abgeschaltet. Die beiden Taktphasen Φ und Φ überlappen sich (1-1 Überlappung, siehe Bild 4.7.7d). Während der Überlappzeit, dies ist die Gatterlaufzeit des Inverters 3, sind also beide Latches transparent. Falls die Gatterlaufzeit des Inverters 3 größer ist als die Summe der Laufzeiten der Transmissionsgatter 1 und 2 plus der Gatterlaufzeit des Inverters 1 können nicht erwünschte Signale vom Eingang D zum Ausgang Q gelangen und den Zustand des Registers stören („race“-Problem). Dieser Effekt ist besonders zu beachten, wenn die Taktflanken sich nur langsam ändern. Auch aus diesem Grund wird eine „hold“-Zeit benötigt, während der das angelegte Signal konstant bleiben muß. Die „set-up“-Zeit soll auch gewährleisten, daß das Eingangsignal über die RC-Schaltung sicher eingelesen werden kann. Ähnliche Verhältnisse stellen sich bei einem 1→0 Wechsel des Taktsignals ein. Man spricht nun von einer 0-0 Überlappung. In dem Beispiel von Bild 4.7.7a wird die Überlappzeit wieder vom Inverter 3 verursacht. Der p-Kanal-Transistor der Transmission-Gatters T1 wird sofort leitend. Der p-Kanal-Transistor des Transmission-Gatters T2 leitet aber vorübergehend auch. Wieder existiert ein „race“-Problem, das nun aber nicht durch „set-up-“ oder „hold“-Zeiten vermieden werden kann, da diese Zeiten mit der positiven Flanke des Taktsignals verbunden sind. Es muß eine zusätzliche 04.02.2014 29 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bedingung eingehalten werden: t püberlapp0 0 t pT1 t pInv1 t pT 2 (4.7.1a) Verwendet man anstatt eines Einphasen-Taktsignal Φ zwei nicht überlappende Taktphasen ΦM und ΦS, wie es die Bilder 4.7.8 und 4.7.0 zeigen, kann das „race“-Problem vermieden werden. Man muß nur die Zeitdauer zwischen der fallenden Flanke des einen Taktes und der ansteigenden Flanke des nachfolgenden Taktes genügend groß wählen, so daß auch bei verschobenen Taktsignalen und bei Taktsignalen mit langsamen Flanken die Nichtüberlappung der beiden Taktphasen gewährleistet ist. In Bild 4.7.8 wird das eingehende Datensignal mit der fallenden Flanke des Taktes ΦM bewertet. Der Signalwechsel am Ausgang des Registers erfolgt um eine RC-Zeitkonstante verzögert mit der steigenden Flanke von ΦS. Tatsächlich werden immer Transmission-Gatter verwendet, so daß ein komplementärer ZweiPhasen-Takt nach Bild 4.7.0d eingesetzt werden muß. 04.02.2014 30 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.8 dynamisches Register, das mit zwei nicht überlappenden Taktphasen geschaltet wird. a. Schaltplan b. zeitliche Verläufe der nicht überlappenden Taktsignale 04.02.2014 31 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.4 Verriegelungsschaltung und modifiziertes Svensson Latch Es wurde festgestellt, daß es wünschenswert wäre, wenn das Datensignal und der Takt an unterschiedlichen Transistoren angreifen. Die Verriegelungsschaltung (C2MOS-Schaltung) nach Bild 4.7.9 erfüllt diese Bedingung. Die Verriegelungsschaltung ist prinzipiell wie ein CMOS-Inverter aufgebaut. Zusätzlich befindet sich ein n-Kanal-Transistor im „pull-down“-Pfad und ein p-Kanal-Transistor im „pull-up“-Pfad. Liegt das Taktsignal Φ an hohem Potential, leiten die beiden inneren Transistoren. Die Schaltung wirkt wie ein Inverter. Für Φ=0 V werden jedoch die Pfade zu den Versorgungspotentialen unterbrochen. Die auf der Lastkapazität CL gespeicherte Ladung ist nun isoliert und kann vom Eingangssignal nicht mehr beeinflußt werden. Die Verriegelungsschaltung ist ebenfalls ein dynamisches Latch. In Kapitel 4.5.3 wurde bereits hingewiesen, daß die Verriegelungsschaltung als Tristate-Treiber sehr gut geeignet ist. Im Vergleich zu den Schaltungen nach den Bildern 4.5.4 und 4.5.5 benötigt die Verriegelungsschaltung als Tristate-Treiber nur halb so viele Transistoren. Mit mindestens zwei Tristate-Treibern kann ein Multiplexer realisiert werden. Auch wenn man einrechnet, daß die die Transistoren der Verriegelungsschaltung wegen der Serienschaltung doppelt so weit ausgelegt werden (dies wird später erklärt), bleibt ein Vorteil. Das Schaltsymbol der Verriegelungsschaltung zeigt Bild 4.7.9b. 04.02.2014 32 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.9a Latch realisiert mittels der Verriegelungsschaltung (C2MOS-Schaltung). 04.02.2014 33 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.9b Schaltsymbol der Verriegelungsschaltung. 04.02.2014 34 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Aus zwei Latches kann wiederum ein Register gebildet werden. Die Schaltung nach Bild 4.7.9c ist ein positiv flankengesteuertes Register. Der Vorteil dieses Registers ist, daß es, solange die Taktflanken genügend steil sind, unempfindlicher gegenüber 0-0 und 1-1 Taktüberlappungen ist. Bei einer 0-0 Taktüberlappung, die entsteht, weil das Taktsignal Φquer nicht sofort dem 1→0 Wechsel des Taktsignals Φ folgen kann, sind die „pull-down“-Pfade M1, M3 und M7, M5 gesperrt. Der Zwischenknoten X kann während der Überlappung nur einen 0→1 Wechsel durchführen. Voraussetzung ist, daß in der Überlapphase das Datensignal ebenfalls von Eins nach Null wechselt. Jedoch gelangt dieser Signalwechsel nicht an den Ausgang Q, da der Transistor M7 sperrt. Am Ende der Überlappphase wechselt Φquer nach 1. Nun sperren die Transistoren M7 und M8 und bringen das zweite Latch in den Haltemodus. Jeder Eingangssignalwechsel während einer 0-0 Überlappung gelangt nicht an den Ausgang Q. Die Randbedingung 4.7.1a entfällt bei Register, die mit Verriegelungsschaltungen realisiert werden. 04.02.2014 35 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.9c Register realisiert mit Verriegelungsschaltungen. 04.02.2014 36 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Der Fall einer 1-1 Überlappung, das heißt das Taktsignal wechselt von 0→1, ist etwas komplizierter. Während der Überlappungsphase leiten die Transistoren M3 und M7, das heißt der Knoten X kann, wenn D gleichzeitig von 0→1 wechselt, einen 1→0 Wechsel durchführen. Da M8 sperrt, gelangt dieser Signalwechsel zunächst nicht an den Ausgang Q. Aber sobald die Überlappphase vorbei ist, leitet der Transistor M8 und die Null des Knotens X ändert unerwünschterweise den Ausgang Q. Wie im Falle des „race“-.Problems von Register mit Transmission-Gatter, wird diese Problem mittels „set-up-“ und „hold“- Zeitbedingungen für die Eingangsdaten D gelöst. Verriegelungsschaltungen sind unempfindlicher gegen Taktüberlappungen, da entweder nur die „pull-up“-oder die „pull-down“-Pfade der Register leitend werden. Um diese Eigenschaft zu erhalten, sollten keine invertierenden Logikblöcke mit kurzen Laufzeiten zwischen den beiden Latches geschaltet werden. Jedoch, wie in [172] festgestellt wird, falls die Anstiegs- oder die Abfallzeiten der Taktflanken etwa das Fünffache der Registerlaufzeit aufweisen, leiten vorüber gehend sowohl die “pull-up”- als auch die “pull-down”-Pfade. Es existiert nun ein leitender Pfad vom Eingang des Registers zum Ausgang. Die daraus folgende Einschränkung bezüglich der zulässigen Taktflanken muß beim Design der Schaltung sorgfältig bedacht werden. 04.02.2014 37 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Aus der Beschreibung der Wirkungsweise der Verriegelungsschaltung gehen sofort die Nachteile dieser Schaltung hervor. Der speichernde Knoten wird nun von der Lastkapazität gebildet. Unter Umständen muß das Ausgangssignal Q zu entfernten Gatter geleitet werden. Damit ist das Problem der Störsignaleinkopplung auf den freischwebenden Knoten während der Haltephase erhöht. Man müßte mit einen zusätzlichen Inverter den speichernden Knoten schützen. Dadurch erhöht sich die Anzahl der benötigten Transistoren für ein Latch aber um 50 %. Im „pull-up“- und im „pull-down“-Pfad sind zwei Transistoren in Serie geschaltet. Bei einer vereinfachten Betrachtung kann ein Transistor als Widerstand aufgefaßt werden. Eine Serienschaltung von Transistoren ist also äquivalent zu einer Serienschaltung von Widerständen. Die RC-Zeitkonstante und damit die Gatterlaufzeit wird dadurch mindestens um den Faktor zwei erhöht. Als Ausgleich könnte man die Weite der in Serie geschalteten Transistoren verdoppeln, was aber die Belastung der treibenden Gatter und damit die Verlustleistung erhöht. Die Transistoren des Transmissions-Gatter liegen dagegen parallel. Deswegen weist das Latch nach Bild 4.7.2 eine entsprechend kleinere Gatterlaufzeit auf. 04.02.2014 38 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Beim Entwurf der Verriegelungsschaltung ist darauf zu achten, daß die Transistoren, die von den Taktsignalen bzw. von den Enable-Signalen gesteuert werden, direkt mit dem Ausgang verbunden sind. Sonst kann die Ausgangsspannung aufgrund von „charge sharing“-Effekten verfälscht sein. In die falsch entworfene Verriegelungsschaltung (Abb. 4.7.10b) sind parasitäre Kapazitäten eingezeichnet. Die parasitären Kondensatoren setzen sich aus GateSource-, Gate-Drain- und Diffusionskapazitäten zusammen. Eine typische Signalfolge zeigt Abb. 4.7.10a. Mit Einschalten des Taktsignals ( Φ= 1) zieht der Pull-up-Zweig den Ausgang wie gewünscht auf UDD. Gleichzeitig wird aber der Knoten 1 entladen. Wird nun das Taktsignal wieder abgeschaltet, so behält der Ausgang das hohe Potential. Ein nachfolgender Wechsel des Eingangssignals, der keinen Einfluß auf den Ausgang haben sollte, bewirkt eine leitende Verbindung zwischen dem Ausgang und dem Knoten 1. Zwischen den Kapazitäten Cp1 und CL kommt es zu einem Ladungsausgleich („charge sharing“), der die Ausgangsspannung verringert. 04.02.2014 39 VL 0433 L608 Bild 4.7.10 04.02.2014 Integrierte digitale Schaltungen H.Klar Zeitdiagramm zur Erklärung des „charge sharing“-Effektes. a. Signalverläufe, b. falsch entworfene Verriegelungsschaltung 40 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bei einem ungünstigen Verhältnis der Kapazitäten ist die Störsicherheit nicht mehr gewährleistet. Die Schaltung nach Bild 4.7.9c zeigt diesen Effekt nicht, da bei gleicher Signalfolge der Knoten 1 auf hohes Potential gezogen wird. Die bisher besprochenen Latches sind sehr einfach aufgebaut und benötigen deswegen wenig Platz. Deswegen waren sie in der Vergangenheit populär. Moderne Technologien weisen eine hohe Variabilität bezüglich einiger Transistorparameter auf. Besonders gilt dies für die Einsatzspannung. Wenn die Einsatzspannung betragsmäßig zu klein wird, fließt in dem betroffenen Latch im Haltemodus ein zu großer Unterschwellenstrom und der speichernde Knoten kann ganz oder teilweise entladen werden. Ein einziges Latch mit diesem Fehler entwertet einen ganzen Chip. Da moderne Chips Millionen oder gar Milliarden an Latches aufweisen, ist die Wahrscheinlichkeit für diesen Fehler zu hoch (siehe Kapitel 6.4.3.6). Deswegen werden derartige Latches in einem komplexen Chip, der in einer modernen Technologien (< 90 nm) realisiert werden soll, vermieden. 04.02.2014 41 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die Register nach den Bildern 4.7.7 und 4.7.8 benötigen entweder einen zusätzlichen Inverter um das invertierte Taktsignal zu erzeugen oder basieren auf einen nicht überlappenden ZweiPhasen-Takt. Daher suchte man nach Latches und Register, die mit nur einen Taktsignal betrieben werden können. 1987 wurden ausgehend von der Verriegelungsschaltung dynamische Latches und Register vorgeschlagen, die nur ein Taktsignal benötigten [193]. Man nannte diese Schaltungen unter anderem nach ihrem Erfinder Svensson-Latches. Von D. Dobberpuhl und von anderen wurden 1992 Verbesserungen an diesen TSPC- (True Single Phase Clocked) Latches und Register, wie sie auch genannt werden, vorgenommen [194]. Bild 4.7.11 zeigt modifizierte positive und negative Latches nach [194], die im Mikroprozessor Alpha 21064 verwendet wurden. 04.02.2014 42 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.11a modifizierte positive und negative Svensson-Latches [194] 04.02.2014 43 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Das positive modifizierte Svensson-Latch arbeitet wie folgt: Für Φ=1 ist das Latch transparent und es verhält sich wie zwei in Reihe geschaltete Inverter. Für Φ=0 werden die „pull down“Pfade N1/N3 und N2/N4 unterbrochen. Falls während Φ=1 am Ausgang S/Q eine logische Null gespeichert wurde, hält der p-Kanal-Transistor P5 den Zwischenknoten IB auf einer logischen „Eins“. In der ursprünglichen Schaltung nach C. Svensson fehlte der Transistor P5. Dies hatte zur Folge, daß eine Abnahme des Potentials des Knoten IB um eine Einsatzspannung aufgrund von Störsignalen den Transistor P2 aktivierte. Somit konnte der Zustand des Latches zerstört werden. Wenn während Φ=1 am Ausgang eine „Eins“ gespeichert wurde, ist während der Haltephase der „pull-down“-Pfad N2/N4 unterbrochen und das Datensignal D kann während Φ=0 den Ausgang nicht ändern, obwohl das Potential des Knoten IB Werte zwischen Masse und UDD aufweisen kann. Entsprechendes gilt für das negative Latch nach Bild 4.7.11b. Schaltet man die beiden Latches in Reihe (zuerst das positive Latch) erhält man ein Register, das mit der negativen Flanke des Taktsignals Φ den Zustand am Ausgang ändert. 04.02.2014 44 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Das TSPC-Latch bietet die interessante Möglichkeit Logikfunktionen zusätzlich zur speichernden Wirkung einzubauen, wie Bild 4.7.11b zeigt. An Stelle der Transistoren P1 und N1 des Latch nach Bild 4.7.11a, werden nun die „pull-up“- beziehungsweise die „pull-down“-Pfade von komplementären CMOS-Logikgattern eingesetzt. In Bild 4.7.11c ist ein TSPC-Latch mit einer eingebetteten logischen And-Funktion dargestellt. In dem man die logische Funktion in ein Latch einbettet, kann man insgesamt die Laufzeit, das heißt die Laufzeit des Logikblock plus die Laufzeit des Latches, reduzieren. Diese Methode wurde exzessiv beim Entwurf des Mikroprozessors EV4 DEC Alpha eingesetzt [195]. 04.02.2014 45 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Pull-Up-Pfad Pull-Down-Pfad Bild 4.7.11b positives TSPC-Latch mit eingebetteter Logik 04.02.2014 46 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.11c TSPC-Latch mit eingebetteter AND-Funktion 04.02.2014 47 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Leider haben TSPC- Latches und -Register auch gravierende Nachteile. Zunächst ist festzustellen, daß die modifizierten Svensson-Register vierzehn Transistor benötigen. Acht Transistoren, jeweils vier n-Kanal- und vier p-Kanal-Transistoren, liegen in zweifachen Serienschaltungen und müssen deswegen mit der doppelten Weite ausgestattet werden. Das Taktsignal greift an zwei n- und an zwei p-Kanal-Transistoren an, die in den Serienschaltungen liegen. Üblicherweise versucht man minimal dimensionierte Transistoren einzusetzen. Das heißt, daß die n-Kanal-Transistoren mit minimal zulässigern Weiten und Längen dimensioniert werden. Wegen der geringeren Beweglichkeit der Löcher müssen die p-Kanal-Transistoren mit einer zwei bis dreifachen Weite, im Vergleich zu den n-Kanal-Transistoren, ausgelegt werden. Befinden sich die Transistoren in einer zweifachen Serienschaltungen, müssen die Weiten der jeweiligen Transistoren verdoppelt werden, um eine hohe Schaltgeschwindigkeit zu erzielen (siehe auch Kapitel 4.8.2.1.2). Daher weisen die modifizierten Svensson-Register eine hohe Lastkapazität für das Taktsignal auf. Das Register nach Bild 4.7.7 enthält nur zehn Transistoren, wobei die n-Kanal-Transistoren minimal dimensioniert sein können. Die p-Kanal-Transistoren sind, wegen der geringeren Beweglichkeit der Löcher, zwei- bis dreimal soweit ausgelegt als die entsprechenden n-KanalTransistoren. Das Taktsignal liegt an zwei n-Kanal- und an zwei p-Kanal-Transistoren. Im 04.02.2014 48 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Im Vergleich zu der Schaltung nach Bild 4.7.11 ist die Belastung durch die angeschlossenen Transistoren halbiert. Das dynamische Register mit zwei Taktphasen (Bild 4.7.8) benötigt nur acht Transistoren, wenn man Transmission-Gatter einsetzt. Die Belastung der Taktsignale gleicht derjenigen des Registers nach Bild 4.7.7. Weiter zeigen die die modifizierten Svensson-Register, ähnlich wie die Verriegelungsschaltungen, Fehlverhalten, wenn die Taktsignale lange Flanken aufweisen. Langsam veränderliche Taktflanken bewirken, daß sowohl die mit den Taktsignalen verbunden n-KanalTransistoren wie auch die p-Kanal-Transistoren leiten. Daraus ergeben sich undefinierte Zustände, die zu „races“ führen können. Die Flanken der Taktsignale müssen also sorgfältig kontrolliert werden. Wenn notwendig müssen lokale „Repeater“ (Inverter) zur Signalverbesserung eingesetzt werden. Schließlich speichern die Svensson-Latches, wie die Verriegelungsschaltungen, die Information in Form von Ladungen auf der Lastkapazität CL und nicht auf einer internen Kapazität, die von einem nachfolgenden Inverter geschützt ist. Somit sind diese Latches und Register empfindlicher im Hinblick auf Einkoppelungen von Störsignalen. 04.02.2014 49 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die Rückholtransistoren P5 oder N5 bewirken eine große Unempfindlichkeit dieser Latches gegenüber extrem unwahrscheinliche Ausreißer zum Beispiel bezüglich der Einsatzspannung. Wegen den genannten Nachteilen haben sich die Svensson-Latches und Register im allgemeinen nicht durchgesetzt. Jedoch für sehr zeitkritische Logikpfade sollten derartige Register und Latches wegen der kleinen Verzögerungszeit in Betracht gezogen werden. 04.02.2014 50 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.5 Bootstrap-Schaltung Das Transmissions-Gatter nach Bild 4.7.2 benötigt mehr Fläche als ein Transfer-Gatter. Manchmal steht die zusätzliche Fläche nicht zur Verfügung. In diesen Fällen wird eine andere Lösung benötigt. Besonders schwerwiegend ist dieses Problem für den Entwurf von hochkomplexen dynamischen Speichern (DRAM), da aus Kostengründen in den Speicherzellen kein zusätzlicher Platz für den zweiten Transistor aufgewendet werden soll. Trotzdem soll die auf der Kapazität gespeicherte Ladung möglichst groß sein, damit das Nutzsignal gegenüber Störungen immun wird. Im Zellenfeld eines DRAM werden die n-Kanal-Transfertransistoren mittels Wortleitungen geschaltet. Mit Bootstrap-Schaltungen (Münchhausen-Schaltungen) gelingt es die Wortleitungen auf ein Potential größer als UDD+UTn zuziehen, so daß der volle Signalhub UDD in die Zelle eingeschrieben werden kann. Bootstrap wird nach wie vor eingesetzt und besitzt für einige Anwendungen eine durchaus große praktische Relevanz, z.B. in Low-Voltage Zeitdiskreten Mixed-SignalSchaltungen, nicht mehr jedoch im DRAM wie hier angegeben. 04.02.2014 51 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Mit der in Bild 4.7.12 dargestellten Schaltung gelingt dies. Der Knoten I ist über die Kapazität CBoot mit dem Taktsignal Φ verbunden. Außerdem liegt der Knoten I mit einem als Diode geschalteten Transistor an UDD. Für Φ=0 lädt der Transistor M2 den Knoten I auf ein Potential von UDD-UT . Wird das Taktsignal auf das Potential UDD angehoben, steigt die Spannung am Knoten I ebenfalls an, da nun M2 sperrt (UGS2<0). Der Knoten I und damit die Gatespannung von M1 erreicht maximal den Wert 2UDD-UTn. Nun kann die Kapazität auf den vollen Hub UDD geladen werden. Der Bootstrap-Effekt beruht also darauf, daß zunächst eine Kapazität aufgeladen wird, wobei eine Platte des Kondensators an 0 V gelegt wird. Im nächsten Schritt wird die zweite Platte isoliert und die andere Platte auf ein höheres Potential, zum Beispiel UDD gebracht. Damit steht nun für eine Taktphase am isolierten Knoten eine Spannung von etwa 2UDD zur Verfügung. Zu prüfen ist, ob Zuverlässigkeitsprobleme auftreten. Wenn zum Beispiel eine logische Null eingeschrieben werden soll, wird das dünne Gateoxyd des Transistors M1 in Bild 4.7.12 zeitweilig mit einer Spannung von etwa 2·UDD belastet. Dies kann im Laufe des Betriebs zu Ausfällen führen. 04.02.2014 52 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.12 Bootstrap-Schaltung 04.02.2014 26.10.11 53 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.6 Statische Latches und Register 4.7.6.1 Einleitung Statische Speicherelemente benutzen eine Mitkopplung um eine bistabile Schaltung zu realisieren. Eine bistabile Schaltung hat nur zwei stabile Zustände, die eine logische „Eins“ beziehungsweise eine logische „Null“ repräsentieren. Charakteristisch für statische Speicher ist, daß sie ihre Information bewahren solange die Versorgungsspannung aufrecht erhalten wird. Bei einer nicht zu großen Störung wird auf Grund der Mitkopplung das gespeicherte Signal erneuert, indem der Versorgungsspannungsquelle Leistung entnommen wird. Mit dynamischen Latches, wie sie in Kapitel 4.7.2 beschrieben sind, ist eine Signalerneuerung während der Haltephase nicht möglich. 04.02.2014 54 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.6.2 Flip-Flop Die einfachste Form eines statischen Flip-Flops enthält zwei mitgekoppelte Inverter (Bild 4.7.13a und b). Das linke Bild in 4.7.13c zeigt die Übertragungskennlinie des Inverters I1, während das rechte Bild die Kennlinie von Inverter I2 darstellt. Da aufgrund der Mitkopplung der Ausgang des einen Inverters den Eingang des anderen steuert, können die beiden Ordinaten zusammengefaßt werden. Indem die Abszisse der einen Kennlinie auf die Abszisse der anderen Kennlinie geklappt wird, erhält man, wie es in Bild 4.7.13d gezeigt ist, die beiden stabilen Zustände und den instabilen Zustand des Flip-Flops. Die Punkte U1=0 V, U2=UDD und U1=UDD, U2=0 V sind stabil, weil in diesen Fällen die Schleifenverstärkung und damit auch die Beträge der Verstärkungen der einzelnen Inverter kleiner als eins sind. Der dritte Punkt (U1=U2=UDD/2 für symmetrische Inverter) ist instabil, da die Beträge der Inverterverstärkungen größer als eins sind und die Schaltung eine Mitkopplung aufweist. Jede noch so kleine Störung, die zum Beispiel durch Rauschen hervorgerufen wird, führt dazu, daß das Flip-Flop vom instabilen Punkt in einen der beiden stabilen Punkten fällt. Mittels der Spannung U1 und U2 kann der Zustand des Fllip-Flops von außen eingeschrieben werden. Vgl. Foliensatz 5, Folien 17 ff. 04.02.2014 55 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Für die Erklärung des Kippvorganges vom instabilen Zustand aus wird angenommen, daß eine kleine Störung eine höhere Spannung U1 am Eingang des Inverter I2 bewirkt. Nun fließt im „pull-down“- Zweig dieses Inverters ein größerer Strom, der die Eingangskapazität des Inverters I1 entlädt und somit die Ausgangsspannung U2 erniedrigt. Auf Grund der Kennlinie des Inverters I2 bedeutet dies, daß die Spannung U1 vergrößert wird. Wegen der Mitkopplung wird die ursprüngliche Ursache verstärkt. Mit einer größeren Aussteuerung startet erneut der Kreislauf. Erst wenn der stabile Punkte erreicht ist, endet der Prozeß, da dann die Schleifenverstärkung kleiner als eins ist. Vgl. Foliensatz 5, Folien 17 ff. 04.02.2014 56 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.13 statisches Flip-Flop a. Logikschaltbild, b. Transistorschaltbild, Vgl. Foliensatz 5, Folien 17 ff. 04.02.2014 57 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.13 statisches Flip-Flop c. Ableitung der Übertragungskennlinie d. Kleinsignalersatzschaltbild Vgl. Foliensatz 5, Folien 17 ff. 04.02.2014 58 Integrierte digitale Schaltungen VL 0433 L608 H.Klar Im nächsten Schritt soll nun der zeitliche Ablauf des Kippvorgangs näher untersucht werden. Das Flip-Flop habe den Gleichgewichtszustand des instabilen Punktes. Zum Zeitpunkt t=0 wird nun eine kleine Störung ΔU0=U2-U1 angenommen. Ein vereinfachtes Kleinsignalersatzschaltbild für das Flip-Flop im instabilen Punkt zeigt Bild 4.7.13d. Für die Steilheit gm beziehungsweise den Ausgangswiderstand r0 gilt: gm g mn g mp (4.7.1b) r o ron // rop (4.7.2) Aus den Strombilanzen an den Ausgängen folgt: g m u1 u2 r0 CL du2 dt 0 (4.7.3) g m u2 u1 r0 CL du1 dt 0 (4.7.4) 04.02.2014 59 Integrierte digitale Schaltungen VL 0433 L608 H.Klar Subtrahiert man die beiden letzten Gleichungen, erhält man: d u (t ) dt 1 u (t ) CL 1 gm r0 u (t ) u2 (t ) u1 (t ) (4.7.5) (4.7.6) Die Lösung der Differentialgleichung 4.7.5 lautet: u (t ) ΔU0 U 0 exp gm 1 r0 t CL (4.7.7) Störung zum Zeitpunkt t=0 04.02.2014 3.11.10 60 Integrierte digitale Schaltungen VL 0433 L608 H.Klar Die Gleichung 4.7.7 beweist, daß für die Instabilität eine Anfangsstörung ΔU0≠0 und eine Verstärkung v =gm·r0>1 notwendig sind. Für die Zeit tp, die benötigt wird, um eine Spannungsdifferenz ΔUend zu erreichen, erhält man näherungsweise: tp tp CL ln g m 1 / r0 1 u ln U end U0 U end U0 1 CL ln gm ln vd 0 U end U0 (4.7.8) u Für vd =gm·r0>>1 Die Gatterlaufzeit tp nähert sich unendlich, wenn ΔU0 immer kleiner wird (Bild 4.7.14) Soll das Flip-Flop innerhalb einer vorgegebenen Zeit „entscheiden“, muß die anfängliche Aussteuerung genügend groß sein. Wenn genügend Zeit vorhanden ist, fällt das Flip-Flop immer in einen der beiden stabilen Zustände. Es gilt dann: ΔUend=UDD 04.02.2014 61 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.14 zeitlicher Verlauf des Kippvorgangs 04.02.2014 62 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Ein Vergleich der Gleichung 4.7.8 mit der Gleichung 4.3.7h2 des Kapitels 4.3.3.2, die das lineare Einschwingverhalten einer Differenzstufe mit Stromspiegel als aktiver Last beschreibt, zeigt, weil in Gleichung 4.7.8 die Verstärkung vd0 durch den Logarithmus wesentlich gedämpft wird, daß mit bistabilen Schaltungen am schnellsten Signale vergrößert werden können. Allerdings geht dabei die Information über die Größe des Eingangssignals verloren. Daher eignen sich bistabile Schaltungen besonders gut als Kerne von Komparatoren. 04.02.2014 63 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Das Flip-Flop nach Bild 4.7.13 bildet die Basis für ein statisches Latch, wie es in Bild 4.7.16a dargestellt ist. Das Latch besteht aus einer Differenzstufe mit Ohm‘schen Lasten, die als Vorverstärker dient, und dem Flip-Flop. Der Vorverstärker besteht aus den Transistoren M1 – M3 und den beiden Lastwiderständen. Das Flip-Flop enthält die Transistoren M6 bis M8. Der Vorverstärker trennt das Flip-Flop von den Zuleitungen und damit auch von deren Kapazitäten. Vorverstärker und Flip-Flop bilden ein Latch, das mit der fallenden Flanke des Taktsignals den Eingangswert übernimmt. Zusätzlich hat diese Schaltung den Vorteil, daß das Fallen des Flip-Flops kaum die Eingangssignale beeinflußt. Um die, im Verhältnis zu den n-Kanal-Transistoren, langsamen p-Kanal-Transistoren zu vermeiden, werden Ohm‘sche Widerstände eingesetzt. Sollen aus Platzgründen doch p-KanalTransistoren verwendet werden, müßten deren Gates und Drains kurzgeschlossen sein. Die Schaltung nach Bild 4.7.16a stellt auch eine einfache Komparatorschaltung dar. 04.02.2014 64 Integrierte digitale Schaltungen VL 0433 L608 H.Klar UDD UDD RL RL Uaus,D M2 M3 U in,D M7 M6 M1 M8 Bild 4.7.16a Latch mit einem Flip-Flop und einen Vorverstärker 04.02.2014 65 Integrierte digitale Schaltungen VL 0433 L608 H.Klar Die Funktionsweise des Vorverstärkers wurde bereits im Kapitel 4.6.3.1 erläutert. Es gilt bei kleinen Frequenzen: uoutD (4.6.7b) uindD g m 2,3 RL vd 0 RL ist der Lastwiderstand. 3 dB 1 RL CL gm vd 0 C L (4.6.7c) Um eine hohe 3dB-Grenzfrequenz ω3dB zu erreichen, sollte die Verstärkung vd0 klein sein. Betrachtet man nur das Flip-Flop, so sieht man, daß eine kurze Gatterlaufzeit durch eine kleine Lastkapazität und eine große Steilheit der Transistoren M6 und M7 erzielt werden kann. Kleine Lastkapazitäten können mit kleinen Transistoren erreicht werden. Aber man würde damit auch deren Steilheit gm minimieren. Man behilft sich, indem man, wie bei der Differenzstufe, einen Fußpunkttransistor (M8) einfügt. Man kann nun gleichzeitig kleine Lastkapazitäten, die von der Dimensionierung der Transistoren M6 und M7 abhängen und große Steilheiten, die vom 04.02.2014 66 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Querstrom bestimmt sind, erzielen. Ist das Flip-Flop gefallen, fließt der Drainstrom ID8 des Fußpunkttransistors M8 entweder über den linken Lastwiderstand oder über den Rechten. Der jeweils andere Ausgangsknoten liegt an UDD. Der Signalhub beträgt ID8∙RL. Der Ausgangssignalhub ist reduziert. Dies und der Einsatz von Ohm‘schen Widerständen ergibt kurze Gatterlaufzeiten. Im Zusammenhang mit der „Current Mode Logic“ (CML) wird dieses Thema im Kapitel 4.8.2.4 vertieft dargestellt. Zusätzlich zu den bisherigen Überlegungen müssen noch die Herstellungstoleranzen berücksichtigt werden. Im Kapitel 2.3.4.5, Gleichungen 2.3.5a und b, wurde gezeigt, daß die Varianz der Einsatzspannung UT und des Verstärkungsfaktors umgekehrt proportional zur Gatefläche ist. Soll ein minimales Eingangssignal ΔU0 sicher bewertet werden, muß die Offsetspannung aufgrund der Herstellungstoleranzen kleiner sein als das zu bewertende Signal ΔU0. Dem entsprechend müssen die Gateflächen der Transistoren dimensioniert werden, was die Geschwindigkeit des Kippvorgangs beeinflußt. In Kapitel 4.6.3.1 wurde die Offsetspannung einer Differenzstufe mit Ohm‘schen Lasten abgeleitet, siehe Gleichung 4.6.14d. Auch hier hilft die Schaltung nach Bild 4.7.16a das Problem zu entschärfen, indem während Φ=1 das eingehende Signal entsprechend verstärkt wird. Das statische Latch ist im Hinblick auf extrem seltene stochastische Ausreißer, zum Beispiel bezüglich der Einsatzspannung unempfindlich, da trotz Abweichungen für jeden Knoten immer eine niederohmige Verbindung entweder zu UDD oder USS besteht. Dies ist ein weiterer wichtiger Vorteil von statischen Schaltungen. 04.02.2014 67 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die Schaltung nach Bild 4.7.16a ist eine einfache Komparatorschaltung und stellt ein Latch dar. Eine sehr beliebte Komparatorschaltung, die als Register wirkt, ist in Bild 4.7.16c dargestellt. Die neue Schaltung benötigt keinen Vorverstärker; daher die große Beliebtheit. Auf den ersten Blick fällt auf, daß nun vier Transistoren gestapelt sind, während in der Schaltung nach Bild 4.7.16a nur zwei Transistoren und ein Widerstand, der durch einen Transistor ersetzt werden kann, übereinander liegen. Jeder Transistor sollte im Sättigungsbereich arbeiten. Deswegen ist es für kleine Versorgungsspannungen vorteilhaft nur wenige Transistoren zu stapeln. In den beiden Zweigen der Bewerterschaltung befinden sich nun sechs anstatt vier Transistoren. Dies erhöht die Unsymmetrie auf Grund von Herstellungstoleranzen zwischen den beiden Zweigen. Die Offsetspannung wird größer. Für Φ=0 sperrt der Transistor M1, während die Transistoren M6 und M9 leiten. In dieser Phase liegen die beiden Ausgangsknoten an UDD. Daraus folgt, daß die Sourceanschlüsse von M4 und M5 eine Spannung von UDD-UTn haben. Entsprechend gilt für die Sourcepotentiale von M2 und M3: UDD-2·UTN. Wenn das Taktsignal von Null nach Eins wechselt, beginnt die Bewertungsphase. Für D=1 zieht der Transistor M2 Strom, während der Transistor M3 sperrt. Somit sollte nur der Ausgangsknoten Q entladen werden. Jedoch wegen den p-KanalTransistor M10 fließt auch im rechten Zweig ein Strom. Da M10 ein kleines W/L-Verhältnis aufweist, ist dieser Strom sehr klein. Der Ausgangsknoten Q im linken Zweig wird schneller entladen als der Ausgangsknoten Q nicht im rechten Zweig. Das Flip-Flop fällt. Die Rückwirkung auf die Eingangsdatenleitungen ist ähnlich gering wie bei der Schaltung nach Bild 4.7.16 a . Mit abnehmender Ausgangspannung Q 04.02.2014 68 VL 0433 L608 Integrierte digitale Schaltungen H.Klar wird die Gate-Source-Spannung von M8 größer. Der Transistor M8 zieht den Ausgang Q quer wieder nach UDD zurück. Der Ausgang Q des linken Zweigs wird nach Masse entladen. Damit das Register für Φ=1 seinen Zustand beibehält, auch wenn das Datensignal wieder wechselt, wird der Transistor M10 eingesetzt. Da nach einem Datenwechsel nun der Transistor M2 sperrt, hält der p-Kanal-Transistor M10 die leitende Verbindung vom Ausgangsknoten Q über M3 nach Masse aufrecht. Während der Haltephase bewirken stochastische Ausreißer der Einsatzspannung von M1 keine Fehler, da die p-Kanal-Transistoren M6 und M9 einen Pegelwechsel der Ausgänge verhindern. 04.02.2014 69 VL 0433 L608 Integrierte digitale Schaltungen H.Klar M 10 p-Kanal Bild 4.7.16c Konventionelle Komparatorschaltung, die ein Register darstellt [219]. 04.02.2014 70 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.6.3 Bewerterschaltung (sense amplifier) In dynamischen Speichern (siehe Kapitel 6.5) werden Schaltungen benötigt, die die kleinen Signale der Bitleitungen bewerten, regenerieren und zurückschreiben können. Differenzverstärker sind für für diese Aufgabe ungeeignet, da sie das Eingangssignal unverändert lassen. Außerdem sind Differenzverstärker zu langsam, wie im letzten Kapitel gezeigt wurde. Daher verwendet man eine Schaltung, die aus dem Flip-Flop mit Fußpunkttransistor (Bild 4.7.15) hervorgeht. Bild 4.7.17 stellt eine vereinfachte Bewerterschaltung dar, an Hand der das Prinzip erläutert wird[ 50,196]. Die beiden Lastkapazitäten repräsentieren die Bitleitungen. Die beiden Knoten I und II sind sowohl die Eingänge wie auch die Ausgänge der Schaltung. Mit der Bewerterschaltung sollen kleine Spannungsunterschiede an Lastkapazitäten erkannt werden. Entsprechend der Polarität der Spannungsdifferenz soll eine der beiden Lastkapazitäten auf null Volt entladen werden, während die Spannung der anderen zunächst möglichst unverändert bleiben und am Ende nach UDD gezogen werden soll.. Die Bewerterschaltung ist eine dynamische Schaltung. Somit kann Verlustleistung gespart werden. In der Vorladephase liegt das Signale ΦL an UDD und ΦS an Masse. Der Transistor M5 sperrt also. Da in den beiden Zweigen der Schaltung kein Querstrom fließen kann, weisen die Knoten I und II die Spannung U0=UDD -UTn auf, während Knoten III das Potential UDD-2UTn hat. 04.02.2014 71 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.17 Vereinfachtes Transistorschaltbild einer Bewerterschaltung. 04.02.2014 2.11.11 72 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die Vorgänge während der Bewertungsphase (ΦL=0 V,ΦS=UDD) können besser erklärt werden, wenn zunächst zwischen den Lastkapazitäten keine Differenzspannung ΔU angenommen wird. Die beiden Zweige der Schaltung seien identisch. Es soll kein Rauschen und keine Störung vorhanden sein. Im idealen Gleichtaktbetrieb (ΔU =0) teilt sich der Strom des Fußpunkttransistors M1, der als ideale Stromquelle angenommen wird, zu gleichen Teilen auf beide Seiten auf. Die Gate-Source-Spannungen der Transistoren M1 und M2 sind mit diesen Annahmen identisch und weisen konstante Werte auf. Das heißt die Spannungen der Knoten I, II und III werden mit der gleichen Rate kleiner. Es läßt sich eine Gleichtaktspannung uC(t) definieren. uC (t ) 1 (u1 (t ) u2 (t )) 2 Im nächsten Schritt wird nun zu Begin der Bewertungsphase eine kleine Aussteuerung ΔU von etwa 100 bis 200 mV angenommen. Diese Spannungsänderung wird von der ausgewählten Speicherzelle verursacht. Es sei die Spannung u1(t) um diesen Betrag größer als u2(t). Deswegen zieht der Transistor M2 mehr Strom als M1, das heißt der Knoten II wird schneller als der Knoten I entladen. Wie vorher als eine ideale Gleichtaktaussteuerung angenommen wurde, folgt uS(t) dem Gleichtaktsignal uC(t). Diesem Vorgang ist eine Differenzspannung ΔU =u1-u2 überlagert, die während des Kippvorgangs verstärkt wird. 04.02.2014 73 VL 0433 L608 Bild 4.7.18 04.02.2014 Integrierte digitale Schaltungen H.Klar Eingangs- und Ausgangssignale, Gleichtaktspannung und Sourcepotentiale der Transistoren M1 und M2 in Abhängigkeit von der Zeit [196]. 74 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die Spannungen u1(t) und u2(t) werden kleiner und die Differenz u1-u2 wird gleichzeitig größer. Schließlich wird der Transistor M1 gesperrt. Etwa zu dieser Zeit wird der Takt ΦL aktiviert (ΦL=UDD). Was bewirkt, daß der Knoten I nach UDD gezogen wird, da der Transistor M1 sperrt. Bei geeigneter Dimensionierung der Transistoren M1 bis M4 wird der Knoten II weiter entladen. Allerdings wird der Knoten II nicht vollständig entladen. In diesem Zustand befindet sich Transistor M2 im Triodenbereich. Daher wird im „pull-up“-Zweig an Stelle der Transistoren M3 und M4 eine zweite Bewerterschaltung eingesetzt. Diese zweite Bewerterschaltung besteht aus zwei kreuzgekoppelten p-Kanal-Transistorenund einem weiteren gesteuerten Fußpunkttransistor. Die zweite Bewerterschaltung aus p-Kanal-Transistoren ist ein Spiegelbild der anderen Bewerterschaltung aus n-Kanal-Transistoren. Üblicherweise werden die beiden Fußpunkttransistoren zeitlich versetzt aktiviert [243]. Das heißt zunächst vergrößert die Bewerterschaltung aus n-Kanal-Transistoren die Eingangsdifferenzspannung. Später wird die zweite Bewerterschaltung zusätzlich aktiviert; Die Konten I und II werden nun auf UDD, beziehungsweise auf Masse gezogen. Nun kann die Information der Zelle , die beim Auslesen zerstört wurde, wieder zurück in die Zelle geschrieben werden. 04.02.2014 75 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Da das Eingangssignal während des Bewertungsvorgangs verändert wird, ist die Bewerterschaltung kein Verstärker im strengen Wortsinn. Trotzdem wird diese Schaltung häufig „sense amplifier“ genannt. Die Schaltgeschwindigkeit der Bewerterschaltung hängt von der Größe der Lastkapazitäten ab. Deswegen werden oft Transfertransistoren benutzt, um zu Beginn der Bewertungsphase den „sense amplifier“ von den langen Bitleitungen zu trennen. 04.02.2014 76 VL 0433 L608 Integrierte digitale Schaltungen H.Klar In [286] wird vorgeschlagen die beide Bewerterschaltungen möglichst gleichzeitig zu aktivieren. Dies ist nur möglich, wenn die beiden Fußpunkttransistoren keine Stromquellen darstellen. Sondern sie sollen eine niederohmige Verbindung zu der jeweiligen Versorgungsleitung sicherstellen. Im eingeschalteten Zustand sollen diese Widerstände etwa ein Zehntel des Widerstands von M1 oder M2 betragen, wenn diese im Triodenbereich arbeiten. Das gleichzeitiges Aktivieren könnte drei Vorteile haben. Offensichtlich ist, daß wegen den beiden Bewerterschaltungen sich das maßgebliche gm verdoppelt, während die kapazitive Belastung der Knoten I und II nahezu unverändert bleibt. Somit wird der Kippvorgang beschleunigt. Die Lastkapazitäten an den Knoten I und II sind wegen Herstellungstoleranzen und wegen Spannungsabhängigkeiten nicht identisch. Das gleichzeitige Aktivieren hilft die Auswirkung der unsymmetrischen Belastung zu minimieren. Schließlich konnte in [286] gezeigt werden, daß die lokalen Schwankungen der Einsatzspannungen von benachbarten Transistoren sich weniger auf die Ausbeute auswirken, als es bei zeitlich versetzter Aktivierung der Fall wäre. Dies ist eine interessante Idee. Es bleibt abzuwarten, ob sie sich in der Praxis bewährt. 04.02.2014 77 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.6.4 Einschreiben von Daten Bild 4.7.13 stellt die einfachste Form eines Flip-Flops dar. Es stellt sich aber die Frage, wie Information von außen gegen die Rückkopplung eingeschrieben werden kann. Das Problem ist, wenn mittels eines Inverters nur von einer Seite des Flip-Flops ein neues Datum eingeschrieben werden soll, das heißt das gespeicherte Datum soll geändert werden, der Inverter im Rückkoppelpfad dagegen arbeitet. Es arbeiten immer ein n-Kanal-Transistor im „pull down“-Pfad gegen einen p-Kanal-Transistor im „pull up“-Pfad. Es können nicht Signale von beiden Seiten eingeschrieben werden, da die andere Seite das Ausgangssignal liefern soll. In den Elektroniklehrbüchern finden man sehr häufig Schaltungen für Daten-Latches, die aus RS-Flip-Flops aufgebaut sind. Wie es in Bild 4.7.19 dargestellt ist, wird nun das Flip-Flop aus zwei Nand-Gattern aufgebaut. Die beiden anderen Nand-Gatter und der Inverter dienen zur Ansteuerung des Latches. Während Φ=0 haben beide Eingänge des Latches ein hohes Potential (R=S=1). Somit bewahrt das Flip-Flop seinen gespeicherten Zustand. Für Φ=1 ist das Latch transparent; der Ausgang folgt dem Eingangssignal. Mit S=0 wird das Latch gesetzt (Q=1). Mit R=0 wird das Latch zurückgesetzt (Q=0). Der Inverter wird benötigt um den verbotenen Zustand R=0, S=0) zu vermeiden. Das Schreiben der Daten wird durch die logische Funktion der Gatter ermöglicht. 04.02.2014 78 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.19 Nand basiertes D-Latch 04.02.2014 79 VL 0433 L608 Integrierte digitale Schaltungen H.Klar In der integrierten Schaltungstechnik vermeidet man derartige Schaltungen, obwohl sie mit einfachen CMOS-Gatter realisierbar sind. Der Hauptgrund ist, daß die Lastkapazitäten an den Ausgängen der Nand-Gatter, die rückgekoppelt sind, im Vergleich zu denen in Flip-Flops, die aus Invertern aufgebaut sind, sehr groß sind. Somit ändert das Flip-Flop aus Nand-Gatter nur relativ langsam seinen Zustand. Es sollten daher nur Flip-Flops eingesetzt werden, die aus Inverter bestehen. Oft wird eine Kombination aus dynamischen Latch und Flip-Flop, das aus Invertern aufgebaut ist, verwendet. Aus Latches ergibt sich wieder ein Register. Für die Schaltung nach Bild 4.20a gilt, daß wegen des Inverters I0 am Eingang und wegen der Flip-Flops (I1/I2 beziehungsweise I3/I4) die wichtigsten Nachteile des rein dynamischen Registers nach Bild 4.7.7 vermieden werden. Die Schaltungen sind unempfindlicher gegen kapazitiven Kopplungen auf die Eingangsleitungen. Wegen den statischen Flip-Flops gibt es nun keine frei schwebenden Knoten. 04.02.2014 80 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.20a pseudo-statisches Register für Ein-Phasen-Taktsysteme. Aus dem zentralen Taktsignal ΦZ werden für jedes Register die beiden Taktphasen abgeleitet 04.02.2014 81 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Aber jedes mal, wenn die Daten in die pseudo-statischen Latches eingeschrieben werden sollen, stellt sich das Problem, daß die Inverter in den Rückkoppelpfaden gegen die Inverter in den Vorwärtspfaden arbeiten. Daher müssen die Inverter in den Rückkoppelpfaden (I1 und I3 in Bild 4.7.20a) mit einer geringeren Treiberfähigkeit als die Inverter im Vorwärtspfad ausgestattet werden. 04.02.2014 82 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Erreicht wird dies indem man die Transistoren der Inverter in den Rückkoppelpfaden mit kleineren W/L-Verhältnissen, als die anderen Transistoren, dimensioniert. Trotz Temperaturschwankungen, Herstellungstoleranzen und Schwankungen der Versorgungsspannung müssen die Flip-Flops sicher und ausreichend schnell fallen. Es sollte ein Puls mit der Dauer von zwei Inverterlaufzeiten ausreichen, um das Flip-Flop zum Kippen zu bringen. Das Designproblem kann auf Kosten einer erhöhten Zahl an Transistoren entschärft werden, wie Bild 4.7.20c zeigt. Während der Einschreibvorgänge werden nun die jeweilige Rückkoppelpfade unterbrochen. Somit ist das Einschreiben wesentlich einfacher. Man kann die Inverter nun gleich dimensionieren. In der jeweiligen Haltephase sind die Rückkoppelpfade aktiv. 04.02.2014 83 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.20c Pseudo-statisches Register mit unterbrechenbaren Rückkoppelpfaden mittels Transmission-Gatter 04.02.2014 84 VL 0433 L608 Integrierte digitale Schaltungen H.Klar . Vergleicht man den ersten Inverter I0 und das darauf folgende Transmission-Gatter mit der Verriegelungsschaltung (C2MOS-Schaltung) nach Bild 4.7.9a, ergeben sich Ähnlichkeiten. Beide Schaltungen benötigen für die gleiche Funktion vier Transistoren. Man kann also in Bild 4.7.20c einen Inverter und das nachfolgende Transmission-Gatter im Rückkoppelpfad durch eine Verriegelungsschaltung ersetzen (Bild 4.7.20d). Da die Verriegelungsschaltung hier als Tristate-Treiber wirkt, ist ihr Einsatz sinnvoll. Die Schaltungen der Bilder 4.7.20a bis d wurden für Ein-Phasen-Taktsysteme dargestellt. Entsprechende Schaltungen für ZweiPhasen-Taktsysteme lassen sich daraus leicht ableiten. Die Register, wie sie in den Bildern 4.7.20 c und d dargestellt sind, findet man häufig in Standardzellenbibliotheken. 04.02.2014 85 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.20d pseudo-statisches Register mit Verriegelungsschaltungen 04.02.2014 86 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Das Einschreiben von Daten in ein Flip-Flop ist problematisch. Im Kapitel 6.4 über SRAM-Zellen wird das Problem erneut behandelt. 4.7.6.5 Alternative Registertypen Bisher wurden vorrangig Register behandelt, die aus Latches nach dem Master-Slave-Prinzip aufgebaut werden. Die Ausnahme war die Schaltung nach Bild 4.7.16c. Dieses Register war der Ausgangspunkt für weitere Entwicklungen. 4.7.6.5.1 Auf Bewerterschaltung (Sense-Amplifier) basierte Register Variationen des Registertyps nach Bild 4.7.16c wurden zahlreich in der dritten Generation des Alpha Prozessors sowie in den „strong arm“-Prozessoren von DEC eingesetzt [197,198]. Bild 4.7.21 zeigt eine mögliche Realisierung. Diese Schaltung soll das Einschreiben von Daten auch bei PVT, das heißt, wenn Herstellungstoleranz en und Schwankungen der Temperatur und der Versorgungsspannungen zu berücksichtigen sind, erleichtern. Das Register ist aus zwei Schaltungsblöcken aufgebaut. Der erste Block dient dazu, dem zweiten Block die richtigren Ansteuersignale zu generieren. Der zweite Block besteht aus einem einfachen Flip-Flop und aus einer Steuerungsschaltung, die nur n-Kanal-Transistoren enthält. Ein neuer Zustand wird gleichzeitig von beiden Seiten des Flip-Flops eingeschrieben. 04.02.2014 87 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.21 Register mit echten Einphasentakt [197]. 04.02.2014 88 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die Wirkungsweise der Schaltung wird nun beschrieben. Wenn das Taktsignal CLK einer logischen Null entspricht, werden die Knoten I und IB auf UDD aufgeladen. Daraus folgt, daß die Knoten DMR und DMRB an Masse liegen. Alle Transistoren der Ansteuerungsschaltung N8/ N10 beziehungsweise N9/ N11 sperren. Das Flip-Flop, das aus kreuzgekoppelten Invertern besteht, hält seinen Wert. Mit der steigenden Taktflanke kann ein neues Datum eingeschrieben werden. Mit dem Eingangssignal D, beziehungsweise mit dem komplementären Signal DB werden die Transistoren N2 und N3 ein- oder ausgeschaltet. Dadurch werden die Potentiale der Sourceanschlüsse der kreuzgekoppelten Transistoren N4 und N5 entsprechend moduliert. Die Knoten I und IB werden unterschiedlich schnell entladen. Im Laufe der Zeit werden die Entladestöme immer unterschiedlicher, da der Zweig mit der höheren Entladerate verhindert, daß der andere Zweig entladen wird. Schließlich wird einer der Knoten I oder IB vollständig entladen, während der andere Knoten entweder mit dem Transistor P3 oder P4 auf UDD gezogen wird. Damit sich ein Datenwechsel am Eingang nach einer sehr kurzen Haltezeit tH sich nicht auswirken kann, werden die Transistoren N6 und N7, die sehr kleine W/L-Verhältnisse haben und damit „hochohmig“ sind, eingesetzt. Diesen Transistoren bewirken, daß der entladene Knoten auch nach einem Wechsel des Eingangssignals entladen bleibt. 04.02.2014 89 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Für D=0 wird der Knoten I entladen. Während der Knoten IB seinen Wert beibehält.. Wenn der Knoten I Masse erreicht, liegt der Knoten DMRB an UDD, während der Knoten DMR sein Potential bewahrt. Mit dem Signal DMRB wird der Transistor N10 aktiviert und der Ausgang QB wird auf hohes Potential geladen. Gleichzeitig zieht der Transistor N11 den Ausgang Q nach Masse. Das Flip-Flop wird gesetzt. Für D=1 gilt Entsprechendes. Mit der fallenden Taktflanke speichert das Flip-Flop seinen Wert, während die Bewerterschaltung, die aus den Transistoren P1, P2, N1 bis N7 besteht, vorgeladen wird. Dieses Register zeichnet sich durch kurze Latenz- und Haltezeiten aus. Nachteilig ist die relativ hohe Verlustleistung, die verbraucht wird, da Innerhalb eines Zyklus einer der beiden internen Knoten I oder IB von UDD nach Masse und wieder zurückgeschaltet wird. Dieses Register benötigt fünfundzwanzig Transistoren. Das sind mindestens doppelt so viele Transistoren, als alle bisher besprochenen Register aufweisen. 04.02.2014 90 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.6.5.2 Pulsregister Mit Pulsen läßt sich ebenfalls ein Register realisieren. Die Grundidee ist einen kurzen Puls mit der steigenden oder der fallenden Taktflanke zu generieren. Dieser Puls wird als Taktsignal für das Einschreiben von Daten in ein Flip-Flop eingesetzt. In Bild 4.7.22 wird eine Variante des Pulsregisters gezeigt, die im K6 Mikroprozessor von AMD vorrangig eingesetzt wurde [199]. In diesem Fall ist der Pulsgenerator in das Register integriert. Für CLK=0 sperren die Transistoren N1 und N3. Dagegen leitet der Transistor P1 und lädt den Knoten IB auf UDD. Der Knoten S ist von Knoten IB entkoppelt und hält zusammen mit dem Ausgang des FlipFlops seinen vorherigen Zustand. Das Signal CLKB ist das um drei Inverterlaufzeiten verzögertes und invertiertes Taktsignal CLK. Mit der steigenden Taktflanke werden die Transistoren N1 und N3 aktiviert während die Transistoren N2 und N4 für eine kurze Zeit, die von der Laufzeit der drei Inverter bestimmt wird, leitend bleiben. Während dieses Intervalls ist die Schaltung transparent und der Ausgang S beziehungsweise QB folgt dem Eingang D. 04.02.2014 91 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die Zeit in der das Register transparent ist, bestimmt auch die Haltezeit th (hold time). Dieses Zeitfester muß weit genug sein, so daß Daten vom Eingang zum Ausgang gelangen können. Bei dieser Schaltung kann die „set-up“-Zeit tsu auch negativ sein. Dies ist immer dann der Fall, wenn die Zeit in der das Register transparent ist, größer ist als die Laufzeit der Signale vom Eingang zum Ausgang. Das ist eine sehr attraktive Eigenschaft. Die Eingangssignale können auch noch nach der steigenden Taktflanke eintreffen. Die vorhergehende Taktphase kann etwas länger dauern. Nachteilig ist wieder die hohe Verlustleistung und die große Anzahl der benötigten Transistoren 04.02.2014 92 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.22 Typisches Pulsregister [199]. 04.02.2014 93 VL 0433 L608 Integrierte digitale Schaltungen H.Klar 4.7.7 Metastabilität Der Datenaustausch zwischen digitalen Untereinheiten wird bei synchronen Schaltungen mittels eines zentralen Taktsignals geregelt. Bei mesochronen Systemen haben die Taktsignale zwar eine gemeinsame Frequenz aber unterschiedliche Phasen. Oft müssen aber Daten zwischen Systemen oder Untereinheiten ausgetauscht werden, die keinen gemeinsamen Takt aufweisen. Es tritt das Problem von asynchronen Schnittstellen auf. An der asynchronen Schnittstelle wird mit einem Latch ,Register oder Flip-Flop und einem lokalen Taktsignal ein eingehendes Datensignal zu einem bestimmten Zeitpunkt bewertet. Es kann passieren, daß das Taktsignal einen Bewertungsvorgang auslöst, obwohl das Eingangssignal gerade seinen Wert ändert. Ein metastabiler Zustand tritt auf, wenn das speichernde Schaltelement, wegen des zu kleinen Eingangssignals, innerhalb der zur Verfügung stehenden Zeit T keine logischen Ausgangswerte, sei es eine „Null “ oder eine „Eins“, ausbilden kann. Somit laufen möglicherweise keine gültigen digitalen Signale durch die anschließenden Schaltungen. Man spricht auch von Synchronisationsfehler. Da das Eingangssignal und das Taktsignal von zufälligen Störungen beeinflußt werden, kann der Fehler nur minimiert aber nie gänzlich ausgeschlossen werden [220 und 221]. 04.02.2014 Metastabilität 94 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Das Bild auf der nächsten Seite zeigt ein Beispiel. Das Eingangssignal ändert sich während es mit der fallenden Flanke des Taktsignals des empfangenden Registers abgetastet wird. Der geringe Anfangsunterschied reicht möglicherweise nicht aus, so daß das Register innerhalb der zur Verfügung stehenden Zeit tp<T (T Taktperiode) nicht eindeutig entscheiden kann. Das heißt der Ausgang des Registers weist am Ende der zur Verfügung stehenden Zeit keine dem Eingangssignal entsprechende logische „Eins“ oder „Null“ auf. 04.02.2014 Metastabilität 95 VL 0433 L608 Bild 4.7.23 Integrierte digitale Schaltungen H.Klar Abtastung der Eingangsdaten D bei asynchroner Datenübertragung mit der fallenden Flanke des Taktsignals Φ. δ ΔU0Gr fT fD T0 04.02.2014 Zeitbereich der Metastabilität Spannungsbereich der Metastabilität Taktfrequenz Frequenz des Datensignals Ansieg- oder Abfallzeit des Datensignals Metastabilität 96 Integrierte digitale Schaltungen VL 0433 L608 H.Klar Für die zeitabhängige Ausgangsdifferenzspannung während des Bewertungsvorgangs eines Registers, das mit einem Flipflops realisiert wird, erhält man nach Gleichung 4.7.7: u (t ) U 0 exp U0 U 01 U 02 g m r0 vd 0 u 1/ 04.02.2014 gm g m / CL 1 r0 t CL U 0 exp t (4.7.7a) Anfangsdifferenzspannung, entsteht durch die Abtastung Spannungsverstärkung eines Inverters unity-gain-Frequenz 97 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Für die einzelnen Knotenspannungen der Schaltung nach Bild 4.7.13 ergibt sich für die Spannungen u1 und u2, die auf den instabilen (metastabilen) Punkt UM bezogen sind: u1 (t ) U M u2 (t ) U M U0 t exp 2 U0 t exp 2 (4.7.7b) (4.7.7c) mit U0 / 2 uin1 (0) U M UM 04.02.2014 uin1,2(0) Anfangswerte (4.7.7d) uin2 (0) Metastabilität 98 Integrierte digitale Schaltungen VL 0433 L608 H.Klar Die Gatterlaufzeit tp des Flip-Flops berechnet sich zu: CL tp gm U end U0 r0 1 ln U end U0 ln U end U0 (4.7.8) Differenzspannung am Ende des Bewertevorganges, z.B. Differenzspannung zwischen „0“ und „1“ Anfangsdifferenzspannung Für ∆U0=∆Uend ist wegen der Kleinsignalrechnung tp=0. 04.02.2014 Metastabilität 99 Integrierte digitale Schaltungen VL 0433 L608 H.Klar Verwendet man anstatt eines Flip-Flops ein dynamisches Latch oder Register nach den Bildern 4.7.20 oder wie es im Kapitel 4.7.2 beschrieben ist, sollte man darauf achten, daß auf jeden Fall ein Inverter mit der Verstärkung vd0 vorhanden ist, der ein minimales Eingangsignal genügend verstärken kann. Allerdings benötigen derartige Schaltungen mehr Zeit bis die speichernde Schaltung den richtigen Endwert bei kleinen Eingangssignalen liefern kann, da die Zeitkonstante τ nun von der 3dB Grenzfrequenz ω3dB gegeben ist. Es gilt für die Gatterlaufzeit tpd eines dynamischen Latches oder Register mit einem Inverter zur Verstärkung des Eingangsignals: t pd CL gm U end U0 1 u vd 0 1 vd 0 (4.7.11) 3 dB Die Gatterlaufzeit des dynamischen Latches oder Register ist näherungsweise um die Kleinsignalverstärkung vd0 größer als die entsprechende Gatterlaufzeit eines Flip-Flops. Deshalb sollten an asynchronen Schnittstellen immer Flip-Flops zur Bewertung der Eingangsignale eingesetzt werden. Die nachfolgenden Überlegungen gelten zunächst nur für Flip-Flops. Will man die Ergebnisse auf dynamische Latches und Register übertragen, man muß die richtige Zeitkonstante auswählen. 04.02.2014 100 Integrierte digitale Schaltungen VL 0433 L608 H.Klar Bei linearen Anstiegs- und Abfallflanken des Datensignals und für ΔUend=UIH-UIL nach Bild 4.1.1, folgt aus Gleichung 4.7.8 und Bild 4.7.23 für die minimal benötigte Zeit trG um die Metastabilität zu vermeiden: t rG e * 0 T U 0Gr U end U 0Gr U IH U IL U IH U IL T0 U DD T0* (4.7.12a) (4.7.12b) Damit die Metastabilität sicher vermieden wird, muß dem Flip-Flop genügend Zeit t>tGr für die Entscheidung gegeben werden. Der Bereich an Eingangsspannungen ΔU0Gr, der Metastabilität verursacht, nimmt exponentiell mit der Wartezeit t ab. 04.02.2014 101 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Aus Gleichung 4.7.12a ergibt sich der Zusammenhang zwischen der Gatterlaufzeit tp des FlipFlops und dem Abtastzeitpunkt. Δt sei der zeitliche Abstand des Abtastzeitpunktes vom metastabilen Punkt tmeta, der bei Flip-Flops mit symmetrischen Invertern im Spannungsbereich bei UM=UDD/2 liegt. Es gilt näherungsweise: tp e t T0 / 2 U0 U end (4.7.13a) ∆t zeitlicher Abstand des Abtastvorgangs zum metastabilen Punkt tmeta 04.02.2014 102 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Daraus folgt: ln T0 / 2 ln t tp / (4.7.13b) Bild 4.7.24 zeigt in halblogarithmischer Darstellung die Abhängigkeit der Gatterlaufzeit tp des FlipFlops vom zeitlichen Abstand Δt des Abtastvorgangs von der Zeit tmeta bei der die Abtastung am meatastabilen Punkt erfolgen würde. Entsprechend Gleichung 4.7.13b erhält man eine Gerade . mit der Steigung τ. Der Schnittpunkt mit der x-Achse liegt bei T0/2. 04.02.2014 103 VL 0433 L608 Bild 4.7.24 04.02.2014 Integrierte digitale Schaltungen H.Klar Abhängigkeit der Gatterlaufzeit tp des Flip-Flops in halblogarithmischer Darstellung vom zeitlichen Abstand ∆t des Abtastvorgangs zum metastabilen Punkt tmeta Metastabilität 104 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Obwohl der Gleichung 4.7.13b nur eine vereinfachte Kleinsignalbetrachtung zu Grunde liegt, beschreibt diese Gleichung tendenziell die Verhältnisse richtig, wie Experimente bestätigen. Wenn dem Flip-Flop ein neues Datum eingeschrieben werden soll, das heißt ein vorhandenes Datum soll überschrieben werden, ist die Gatterlaufzeit tp, auch wenn der volle Eingangssignalhub zur Verfügung steht, nicht Null, sondern weist einen konstanten Wert auf . Die Bilder 4.7.25 a und b zeigen im linearen Maßstab realistischere Abhängigkeiten der Gatterlaufzeit tp vom zeitlichen Abstand Δt. Bild 4.7.25b enthält die Größen von Bild 4.7.23, wie δ, To und τ. Da das Flip-Flop am Ausgang Spannungswerte für eine logische “Null“ oder „Eins“ liefern soll, . . wäre eine Großsignalrechung angebracht. Dies gilt um so mehr, da es sich um eine Exponentialfunktion handelt. Es sollten genaue Simulationen, die auch Parameterschwankungen, Variationen der Versorgungsspannung und Temperaturschwankungen berücksichtigen, durchgeführt werden, wenn es gilt Zahlenwerte für die Zeitkonstante τ und für die Gatterlaufzeit tp zu finden. 04.02.2014 105 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Bild 4.7.25 . Im linearen Maßstab Zeit tp für die Entscheidung in Abhängigkeit vom Abstand Δt des Abtastzeitpunkt zum metastabilen Punkt tmeta [221]. In Bild 4.7.25b sind auch die Größen von Bild 4.7.23 eingezeichnet. 04.02.2014 Metastabilität 106 VL 0433 L608 Integrierte digitale Schaltungen H.Klar Die Datensignale sind statistisch unabhängig von dem Taktsignal. Deswegen errechnet sich die Wahrscheinlichkeit für das Auftreten eines metastabilen Zustandes zu: P fD (4.7.14a) Für die Wahrscheinlichkeit, daß innerhalb einer Sekunde ein Fehler auftritt (Bitfehlerrate), erhält man: P f D f CL (4.7.14b) Mit Gleichung 4.7.12a folgt daraus: t rG P f D f CL T0* e (4.7.14c) trG Wartezeit, Zeit die dem Flip-Flop zur Entscheidung zur Verfügung steht. 04.02.2014 Metastabität 107 Integrierte digitale Schaltungen VL 0433 L608 H.Klar Schließlich erhält man für die Zeit zwischen zwei Fehlern: MTBF 1 t rG (4.7.14d) f CL f D T0* e Eine wesentliche Größe für MTBF (mean time between failures) ist für Flip-Flops die „unitygain“-Frequenz ωu=1/τ, die von der zur Verfügung stehenden Technologie und der Verlustleitung abhängt. Fehler, die durch Metastabilität verursacht sind, sind nur sehr schwer zu identifizieren. Auch wenn man die mittlere Zeit zwischen zwei Fehlern sehr groß wählt, werden Fehler nicht gänzlich verhindert. Daher sollte die Anzahl der asynchronen Schnittsellen, die Synchronisierer benötigen, möglichst klein gehalten werden. Nach [172] sind ein bis zwei Synchonisierer pro System zulässig. 04.02.2014 Metastabität 108