DE102012202747B4 - Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung - Google Patents

Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung Download PDF

Info

Publication number
DE102012202747B4
DE102012202747B4 DE102012202747.5A DE102012202747A DE102012202747B4 DE 102012202747 B4 DE102012202747 B4 DE 102012202747B4 DE 102012202747 A DE102012202747 A DE 102012202747A DE 102012202747 B4 DE102012202747 B4 DE 102012202747B4
Authority
DE
Germany
Prior art keywords
trigger
clock
transistor
signal
flop circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102012202747.5A
Other languages
English (en)
Other versions
DE102012202747A1 (de
Inventor
William J. Dally
Jonah M. Alben
John W. Poulton
Yang Francis Ge
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nvidia Corp
Original Assignee
Nvidia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nvidia Corp filed Critical Nvidia Corp
Publication of DE102012202747A1 publication Critical patent/DE102012202747A1/de
Application granted granted Critical
Publication of DE102012202747B4 publication Critical patent/DE102012202747B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/353Generators characterised by the type of circuit or by the means used for producing pulses by the use, as active elements, of field-effect transistors with internal or external positive feedback
    • H03K3/356Bistable circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/36Generators characterised by the type of circuit or by the means used for producing pulses by the use, as active elements, of semiconductors, not otherwise provided for
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/01Details
    • H03K3/012Modifications of generator to improve response time or to decrease power consumption
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/353Generators characterised by the type of circuit or by the means used for producing pulses by the use, as active elements, of field-effect transistors with internal or external positive feedback
    • H03K3/356Bistable circuits
    • H03K3/356104Bistable circuits using complementary field-effect transistors
    • H03K3/356113Bistable circuits using complementary field-effect transistors using additional transistors in the input circuit
    • H03K3/356121Bistable circuits using complementary field-effect transistors using additional transistors in the input circuit with synchronous operation

Abstract

Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300; 350), welche aufweist: eine Trigger-Unterschaltung, die eine Rücksetz-Trigger-Unterschaltung und eine Setz-Trigger-Unterschaltung aufweist, die sich einen ersten taktaktivierten Transistor (301; 351) teilen, wobei die Trigger-Unterschaltung konfiguriert ist, um entweder ein erstes Triggersignal (ar) oder ein zweites Triggersignal (as) scharf zu schalten, wenn ein Eingangssignal (d) zu der Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300; 350) bei einem unterschiedlichen Pegel als ein Pegel eines Ausgangssignals (Q), das durch die Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300; 350) erzeugt wird, ist; und eine Auffangregister-Unterschaltung, die einen zweiten taktaktivierten Transistor (318; 368) aufweist und konfiguriert ist, um den Pegel des Ausgangssignals (Q) zu ändern, wenn entweder das erste Triggersignal (ar) oder das zweite Triggersignal (as) scharf geschaltet ist und ein Taktsignal (Clk) von einem ersten Pegel zu einem zweiten Pegel übergeht, und den Pegel des Ausgangssignals (Q) aufrechterhält, wenn weder das erste Triggersignal (ar) noch das zweite Triggersignal (as) scharf geschaltet sind.

Description

  • Hintergrund der Erfindung
  • Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich im Allgemeinen auf digitale Flip-Flop-Schaltungen und insbesondere auf eine Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (dual-trigger low-energy flip-flop circuit), die vollständig statisch und unempfindlich auf Herstellungsprozessvariationen ist.
  • Beschreibung der verwandten Technik
  • Verlustleistung ist ein signifikantes Problem in herkömmlichen integrierten Schaltungen. Ein großer Anteil der Leistung, die in herkömmlichen digitalen integrierten Schaltungen verbraucht wird, wird in dem Taktnetzwerk verbraucht. Die Menge an Energie, die durch Flip-Flops aufgrund von Datenübergängen (data transitions) verbraucht wird, ist gering, da der Aktivitätsfaktor, der Anteil an Zeit, bei dem die Dateneingabe des Flip-Flops umschaltet, ist recht klein, üblicherweise ungefähr 5–10%. Im Gegensatz dazu ist die Takteingabelast und Taktenergie eine zunehmend wichtige Metrik, die zu beachten ist, wenn die Energie bestimmt wird, die durch die Auffangregister (latches) und Flip-Flops in einer herkömmlichen integrierten Schaltung verbraucht wird. Reduzieren der taktgeschalteten Kapazität um einen gegebenen Betrag erzeugt zehn Mal die Leistungseinsparung verglichen mit dem Reduzieren der datengeschalteten Kapazität um denselben Betrag.
  • 1 stellt eine herkömmliche Flip-Flop-Schaltung 100 dar. Die Flip-Flop-Schaltung 100 weist 26 Transistoren auf, einschließlich der Inverter, die verwendet werden, um clkN und clkP zu erzeugen. Jedes der Taktsignale, clkP hat eine Last von vier Transistorvorrichtungen und clkN hat eine Last von sechs Transistorvorrichtungen. Zu jedem Taktübergang schalten zwölf Transistorgates (und entsprechende Leitungen (wires)) um, einschließlich der Gates, die mit dem clk-Signal gekoppelt sind.
  • 2 stellt eine andere herkömmliche Flip-Flop-Schaltung 200 dar, die manchmal als das StrongArm-Flip-Flop bezeichnet wird. Verglichen mit der Flip-Flop-Schaltung 100 ist die Gesamttaktlast, die an Clk 220 der Flip-Flop-Schaltung 200 dargestellt wird, nur drei Transistorvorrichtungen. Die Gesamtanzahl von Transistoren in der Flip-Flop-Schaltung 200 ist zwanzig, wobei jedes NAND-Gatter vier Transistoren aufweist. Jedoch schaltet die Hälfte der internen Knoten jeden Taktzyklus um. Die internen Knoten weisen die Gatter auf, die mit Clk 220 und dem Knoten 210 gekoppelt sind. Der Knoten 210 ist mit vier Transistorgates und mit drei Transistorsources oder -drains gekoppelt. Die Gesamtanzahl von internen Knoten, die jeden Taktzyklus umschaltet, ist sieben Gatter und zehn Transistorsources oder -drains oder das Äquivalent der ungefähr siebzehn Gatelasten. Angenommen, Eingang d ist hoch (high) und alle der internen Knoten sind anfänglich hoch (high) (Vdd oder ein Vt-Spannungsabfall unter Vdd). Wenn der Clk 220 auf high schaltet, schalten sowohl Source als auch Drain des Eingangstransistors 201 auf niedrig (low), schalten sowohl Source als auch Drain des Transistors 202 auf low, schaltet das Drain des Transistors 203 auf low, schalten beide Seiten des Überbrückungstransistors (bridging transistor) 204 low, schalten sowohl Source als auch Drain des Eingangstransistors 205 auf low und schaltet Source des Transistors 206 auf low.
  • Die Druckschrift US 7,265,596 B2 offenbart eine Datenhalteschaltung zum Halten eines Datensignals im Takt eines Taktsignals. Die Datenhalteschaltung weist eine Haltezeitverzögerungseinheit, eine Dateneingabesteuereinheit und eine Datenhalteeinheit auf. Die Haltezeitverzögerungseinheit dient zum Erzeugen eines ersten Taktsignals durch Verzögern des Taktsignals um eine Haltezeit des Datensignals und eines invertierten ersten Taktsignals als ein zweites Taktsignal. Die Dateneingabesteuereinheit ist zum Erzeugen eines ersten Datenübergangserkennungssignals in Antwort auf das erste Taktsignal und einen ersten Übergangszeitablauf des Datensignals und eines zweiten Datenübergangserkennungssignals in Antwort auf das zweite Taktsignal und einen zweiten Übergangszeitablauf des Datensignals eingerichtet. Die Datenhalteeinheit ist zum Beginnen des Haltens des Datensignals in Antwort auf das erste Datenübergangserkennungssignal und zum Beenden des Haltens des Datensignals in Antwort auf das zweite Datenübergangserkennungssignal ausgestaltet.
  • In der Druckschrift US 7,872,514 B2 werden Halteschaltungen sowie Taktsignalteilerschaltungen mit aufeinanderfolgend verbundenen Halteschaltungen vorgeschlagen. Eine jede Halteschaltung sieht ein D-Flipflop mit Halte-Takteingang, Dateneingang und Datenausgang vor. Ein Differenzdetektor ist mit dem D-Flipflop gekoppelt, und weist einen Differenzausgang auf, welcher ein Differenzsignal bereitstellt, wenn sich ein Datum am Eingang von einem Datum am Ausgang unterscheidet. Eine jede Halteschaltung weist ein flankengesteuertes Gate mit Gate-Takteingang, einen mit dem Halte-Takteingang gekoppelten Ausgang und einen mit dem Differenzausgang des Differenzdetektors gekoppelten Gate-Steuereingang auf. Wenn im Betrieb sowohl ein Übergang des am Gate-Takteingang angebotenen Taktsignals durch das taktflankengesteuerte Gate erkannt wird und das Differenzsignal an dem Gate-Steuereingang anliegt, dann wird das taktflankengesteuerte Gate es einer Flanke eines an dem Gate-Takteingang angebotenen Taktsignals erlauben, am Halte-Takteingang angebotene Logikwerte zu bestimmen. Als Ergebnis wird das Datum am Eingang zum Ausgang übertragen.
  • Was in der Technik benötigt wird, ist daher eine Flip-Flop-Schaltung, die die Energie reduziert, die durch das Reduzieren der Anzahl von internen Knoten, die während eines Taktzykluses umschalten, konsumiert wird. Zusätzlich sollte die Flip-Flop-Schaltung unabhängig von Herstellungsprozessvariationen funktionieren, indem nicht auf Größenbeziehungen zwischen unterschiedlichen Transistoren in der Flip-Flop-Schaltung vertraut wird.
  • Zusammenfassung der Erfindung
  • Diese Aufgaben werden erfindungsgemäß durch eine Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung mit den Merkmalen des Patentanspruchs 1 gelöst. Die abhängigen Ansprüche definieren bevorzugte und vorteilhafte Ausführungsformen der Erfindung.
  • Eine Ausführungsform der vorliegenden Erfindung legt eine Technik zum Erfassen und Speichern eines Pegels eines Eingangssignals unter Verwendung einer Dopptrigger-Niedrigenergie-Flip-Flop-Schaltung, die vollständig statisch und unempfindlich auf Herstellungsprozessvariationen ist, dar. Die Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung stellt nur drei Transistorgatelasten zu dem Taktsignal dar und keiner der internen Knoten schaltet um, wenn das Eingangssignal konstant bleibt. Eines der Taktsignale kann ein Niedrigfrequenz-„Wärtertakt” („keeper clock”) sein, der weniger oft umschaltet als die anderen zwei Taktsignale, das zu zwei Transistorgates eingegeben wird.
  • Verschiedene Ausführungsformen der Erfindung weisen eine Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung auf, die eine Trigger-Unterschaltung und eine Auffangregister-Unterschaltung aufweist. Die Trigger-Unterschaltung weist eine Rücksetz-Trigger-Unterschaltung und eine Setz-Trigger-Unterschaltung auf, die sich einen ersten taktaktivierten (clock-activated) Transistor teilen, wobei die Trigger-Unterschaltung konfiguriert ist, um entweder ein erstes Triggersignal oder ein zweites Triggersignal scharf zu schalten, wenn ein Eingangssignal zu der Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung bei einem unterschiedlichen Pegel als ein Pegel eines Ausgangssignals ist, das durch die Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung erzeugt wird. Die Auffangregister-Unterschaltung (latch sub-circuit) weist einen zweiten taktaktivierten Transistor auf und ist konfiguriert, den Pegel des Ausgangssignals zu ändern, wenn entweder das erste Triggersignal oder das zweite Triggersignal scharf geschaltet sind und ein Taktsignal von einem ersten Pegel zu einem zweiten Pegel übergeht, und den Pegel des Ausgangssignals aufrechtzuerhalten, wenn weder das erste Triggersignal noch das zweite Triggersignal scharf geschaltet sind.
  • Ein Vorteil der offenbarten Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung ist, dass die Transistorvorrichtungslast auf dem Taktsignal auf nur drei Transistorgates reduziert ist. Daher wird die Taktenergie signifikant reduziert verglichen mit Flip-Flop-Schaltungen, die größere Lasten auf dem Taktsignal haben. Zusätzlich sind die internen Knoten während stabilen Zuständen der Schaltung high oder low angesteuert, um ein vollständig statisches Design zu erzeugen, das nicht auf Größenbeziehungen zwischen den unterschiedlichen Transistoren vertraut, wie beispielsweise Transistoren, die als Abfühlverstärker konfiguriert sind. Daher ist der Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltungsbetrieb robust, auch wenn die Charakteristika der Transistoren aufgrund des Herstellungsprozesses variieren. Die benötigte Eingangssignalhaltezeit ist auch ziemlich kurz, nur eine einzelne Gateverzögerung folgend der steigenden Taktflanke.
  • Kurze Beschreibung der Zeichnungen
  • Damit die Weise, in der die oben genannten Merkmale der vorliegenden Erfindung im Detail verstanden werden können, kann eine genauere Beschreibung der Erfindung, oben kurz zusammengefasst, mit Bezug auf Ausführungsformen erhalten werden, von denen manche in den angehängten Zeichnungen dargestellt sind. Es sollte jedoch beachtet werden, dass die angehängten Zeichnungen nur übliche Ausführungsformen dieser Erfindung darstellen und daher nicht als ihren Schutzumfang beschränkend zu berücksichtigen sind, da die Erfindung in andere gleich effektive Ausführungsformen aufgenommen werden kann.
  • 1 stellt eine herkömmliche Flip-Flop-Schaltung gemäß dem Stand der Technik dar;
  • 2 stellt eine andere herkömmliche Flip-Flop-Schaltung gemäß dem Stand der Technik dar;
  • 3A stellt eine Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung gemäß einer Ausführungsform der Erfindung dar;
  • 3B stellt eine andere Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung in Übereinstimmung mit einem oder mehreren Aspekten der vorliegenden Erfindung dar;
  • 4 ist ein Übergangsplandiagramm, das gültige Übergänge für die Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung für jede Kombination von Eingangssignalen zeigt, in Übereinstimmung mit einem oder mehreren Aspekten der vorliegenden Erfindung;
  • 5 ist ein Blockdiagramm, das einen Prozessor/Chip darstellt, der die Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung gezeigt in 3A und 3B in Übereinstimmung mit einem oder mehreren Aspekten der vorliegenden Erfindung aufweist; und
  • 6 ist ein Blockdiagramm, das ein Computersystem darstellt, das konfiguriert ist, um einen oder mehrere Aspekte der vorliegenden Erfindung zu implementieren.
  • Detaillierte Beschreibung
  • In der folgenden Beschreibung werden verschiedene spezifische Details dargelegt, um ein gründlicheres Verständnis der vorliegenden Erfindung bereitzustellen. Jedoch wird dem Fachmann ersichtlich sein, dass die vorliegende Erfindung ohne ein oder mehrere dieser spezifischen Details praktiziert werden kann. In anderen Instanzen wurden gut bekannte Merkmale nicht beschrieben, um ein Verschleiern der vorliegenden Erfindung zu vermeiden.
  • 3A stellt eine Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung 300 gemäß einer Ausführungsform der Erfindung dar. Die Flip-Flop-Schaltung 300 ist ein vollständig statisches, taktenergieeffizientes Flip-Flop, das nur drei Lasten zu dem Takt darstellt und nicht von Transistorvorrichtungsgrößenbeziehungen abhängt. Wie in 3A gezeigt, sind Transistoren 304, 305, 306, 324, 317, 316, 322, 323, 311, 325, 309 und 310 NMOS-Vorrichtungen und Transistoren 303, 302, 301, 312, 313, 314, 315, 319, 320, 321, 307 und 308 sind PMOS-Vorrichtungen. Die Flip-Flop-Schaltung 300 weist vier Hauptunterschaltungen, eine Rücksetz-Trigger-Unterschaltung, eine Setz-Trigger-Unterschaltung, einen Ausgangspuffer und ein AND-OR-INVERTER(AOI)-RS(Rücksetz-Setz)-Auffangregister auf. Transistoren 301, 302, 303, 304, 305, 306, 324 und Inverter 327 sind konfiguriert, um die Rücksetz-Trigger-Unterschaltung zu bilden. Transistoren 301, 307, 308, 309, 310, 311, 325 und Inverter 328 sind konfiguriert, um die Setz-Trigger-Unterschaltung zu bilden. Man beachte, dass der Transistor 301 zwischen der Rücksetz-Trigger-Unterschaltung und der Setz-Trigger-Unterschaltung geteilt wird.
  • Wenn das Eingangssignal d 333 sich auf einen Pegel ändert, der unterschiedlich zu dem Pegel des Ausgangs Q 337 ist, wenn der Clk 330 low ist, wird eine der zwei Triggerschaltungen „scharf geschaltet” („armed”), das heißt konfiguriert, um den Ausgang Q 337 bei der nächsten steigenden Flanke des Clk 330 zu setzen oder zurückzusetzen. Wenn d 333 den Wert erneut ändert, so dass d 333 derselbe Pegel wie Q 337 ist, während der Clk 330 immer noch low ist, wird die scharf geschaltete Triggerschaltung entschärft.
  • Die Rücksetz-Trigger-Unterschaltung bringt das Scharfschalt-Rücksetzsignal, ar 332, in einen aktiven Zustand, in dem ar 332 auf einen high-Pegel gezogen wird, wenn das Eingangssignal d 333 low ist und Q 337 high ist und der Clk 330 low ist. Das Zurücksetzen wird getriggert, um das Ausgangssignal Q 337 auf einen low-Pegel zu zwingen, wenn der Clk 330 von high auf low übergeht. Die Setz-Trigger-Unterschaltung bringt das Scharfschalt-Setzsignal, as 336, in einen aktiven Zustand, in dem as 336 bis auf einen high-Pegel gezogen wird, wenn das Eingangssignal dN 334 (Komplement von d 333) low-Q ist und Q 337 high ist und der Takt low ist. Das Setzen wird getriggert, um das Ausgangssignal Q 337 auf einen high-Pegel zu zwingen, wenn der Takt 230 von low auf high übergeht. Man beachte, dass die ar 332 und as 336 Signale niemals simultan in den aktiven Zustand gebracht werden. Wenn das Eingangssignal d 333 und das Ausgangssignal Q 337 auf demselben Pegel sind, sind sowohl ar 332 als auch as 336 low.
  • Transistoren 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322 und 323 sind konfiguriert, um die AOI-RS-Auffangregisterschaltung zu bilden. Inverter 329 ist konfiguriert, um den Ausgang des AOI-RS-Auffangregisters zwischenzuspeichern und den Flip-Flop-Ausgang Q 337 zu erzeugen. Im Gegensatz zu den Trigger-Unterschaltungen, die aktiviert sind, wenn der Clk 330 low ist, ist die AOI-RS-Auffangregisterschaltung aktiviert, wenn der Clk 330 high ist. Transistoren 314 und 320 sind Isolationstransistoren, die als Hochziehvorrichtungen (pull-up devices) konfiguriert sind, und Transistoren 324 und 325 sind Isolationstransistoren, die als Herunterziehvorrichtungen (pull-down devices) konfiguriert sind.
  • Wenn entweder die Rücksetz-Trigger-Unterschaltung oder die Setz-Trigger-Unterschaltung scharf geschaltet sind, wenn der Clk 330 ansteigt, wird ein Zustandsübergang getriggert. Insbesondere, wenn as 336 in den aktiven Zustand gebracht ist, wenn Clk 330 ansteigt, wird die Auffangregister-Unterschaltung gesetzt, indem der Knoten sN 331 über den taktaktivierten Herunterziehtransistor 318 und Transistor 323 auf low gezogen wird. Wenn as 336 ansteigt, wird Transistor 319 abgeschaltet, um den Fluss von Strom durch den Transistor 319 und 321 zu deaktivieren und Leistung von dem Knoten sN 331 zu entfernen. Sobald der Knoten sN 331 heruntergezogen wurde, kann der Dateneingang dN 334 sich sicher ändern. Somit ist die Haltezeitanforderung für den Eingang dN 334 die Verzögerung, um den Knoten sN 331 durch den Transistor 323 und den taktaktivierten Transistor 318 herunterzuziehen, folgend der steigenden Flanke des Taktes 330. Wenn der Knoten sN 331 low wird, wird der Knoten s 326 mittels der Transistoren 315 und 313 heraufgezogen. Da der Zustandsübergang durch as 336 getriggert wurde, ist garantiert, dass das Signal ar 332 low ist. Sobald s 326 high wird, wird as 336 heruntergezogen. Jedoch kann as 336 bereits aufgrund einer Änderung in dN 334 zu low übergegangen sein.
  • Das Triggern eines Rücksetzens verläuft auf ähnliche Weise. Wenn ar 332 high ist, wenn Clk 330 ansteigt, wird Knoten s 326 heruntergezogen, was im Gegenzug Knoten sN 331 heraufzieht, was im Gegenzug ar 332 herunterzieht. Insbesondere, wenn ar 332 in den aktiven Zustand gebracht ist, wenn Clk 330 ansteigt, wird die Auffangregister-Unterschaltung zurückgesetzt, indem Knoten s 326 über den taktaktivierten Pull-Down-Transistor 318 und Transistor 317 auf low gezogen wird. Wenn ar 332 ansteigt, wird Transistor 313 abgeschaltet, um den Fluss von Strom durch Transistor 313 und 315 zu deaktivieren und Leistung von dem Knoten s 326 zu entfernen. Sobald der Knoten s 326 heruntergezogen ist, kann der Dateneingang d 333 sich sicher ändern. Somit ist die Haltezeitanforderung für den Eingang d 333 die Verzögerung zum Herunterziehen des Knotens s 326 durch den Transistor 317 und den taktaktivierten Transistor 318, folgend der ansteigenden Flanke des Takts 330. Wenn der Knoten s 326 low wird, wird sN 331 mittels der Transistoren 321 und 320 heraufgezogen. Da der Zustandsübergang durch ar 332 getriggert wurde, ist garantiert, dass das Signal as 336 low ist. Sobald sN 331 high wird, wird ar 332 auf low gezogen.
  • Jedoch kann ar 332 bereits aufgrund einer Änderung in d 333 zu low übergegangen sein.
  • Der Transistor 312 empfängt ein Wärtertaktsignal, kClk 332. Der Transistor 312 ist konfiguriert als ein Wärtertransistor, der arbeitet, um einen kleinen Betrag an Ladung wiederherzustellen, der aus dem gemeinsamen Knoten der Transistoren 313 und 314 und dem gemeinsamen Knoten der Transistoren 319 und 320 entweicht. Daher ist es nicht notwendig, kClk 332 jeden Taktzyklus zu aktivieren. Es ist ausreichend für das Wärtertaktsignal KCLK, einmal alle N Zyklen auf low zu gehen, wobei N klein genug ist, so dass eine Ladung an den gemeinsamen Knoten wiederhergestellt wird. Ein Wert, N von 100, würde für die meisten Bedingungen ausreichen und würde darin resultieren, dass die Wärtertaktlast nur 1% der Energie einer Taktlast verbraucht, die jeden Zyklus umschaltet. Das Wärtertaktsignal kClk 312 sollte hoch genug in dem Taktbaum gesteuert werden, so dass die Taktlast eines ODER-Gatters, das verwendet wird, um das Wärtertaktsignal kClk 312 zu erzeugen, über viele Flip-Flop-Schaltungen 300 amortisiert werden kann. Das Wärtertaktsignal kClk 332 kann unter Verwendung einer Taktansteuerungsschaltung erzeugt werden, die in Patentanmeldung Seriennummer 13/008,894 (Anwalts-Docket-Nummer NVDA/SC-10-0317-US1), eingereicht am 18. Januar 2011, mit dem Titel „Low Energy Flip-Flops” beschrieben ist.
  • Die Transistoren 314 und 320 sind Isolationstransistoren, die jeweils zu den s 326 und sN 331 AOI-Gates hinzugefügt werden, um zu ermöglichen, dass der taktaktivierte Heraufziehtransistor 312 durch die kreuzgekoppelten Inverter geteilt wird, die durch die Transistoren 315, 316, 321 und 322 gebildet werden. Wenn as 336 low ist, zieht der Transistor 319 sN 331 hinauf. Wenn as 336 high ist und der Clk 330 low ist, wird sN 331 durch den Isolationstransistor 320 und den taktaktivierten Pull-Up-Transistor 312 heraufgezogen. In dem übrigen Zustand, wenn as 336 high ist und der Clk 330 high ist, wird der Knoten sN 331 heruntergezogen. Ähnlich, wenn ar 332 low ist, zieht der Transistor 313 s 326 hinauf. Wenn ar 332 high ist und der Clk 330 low ist, wird s 326 durch den Isolationstransistor 314 und den taktaktivierten Heraufziehtransistor 312 heraufgezogen. In dem übrigen Zustand, wenn ar 332 high ist und der Clk 330 high ist, wird Knoten s 326 heruntergezogen.
  • Transistoren 324 und 325 sind Isolationstransistoren, die ar 332 und As 326 isolieren, wenn der Takt 330 low ist. Entweder d 333 oder dN 334 werden in den aktiven Zustand gebracht, um jeweils den Isolationstransistor 325 oder 324 zu aktivieren. Wenn dN 334 high ist und ar 332 low ist, wird ar 332 an dem niedrigen Pegel gehalten, indem as durch die Transistoren 306, 324 und 318 heruntergezogen wird, solange Clk 330 high bleibt. Ähnlich, wenn d 333 high ist und as 336 low ist, wird as 336 bei dem niedrigen Pegel gehalten, indem es durch Transistoren 311, 325 und 318 heruntergezogen wird, solange Clk 330 high ist. Wenn die Isolationstransistoren 324 und 325 entfernt werden, könnte Strom zwischen ar 332 und as 336 durchlaufen, wenn der taktaktivierte Transistor 318 deaktiviert ist (Takt 330 low ist), was auf einen sauberen Betrieb der Auffangregister-Unterschaltung störend einwirkt.
  • 3B stellt eine andere Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung 350 gemäß einem oder mehreren Aspekten der vorliegenden Erfindung dar. Wie in 3B gezeigt, sind Transistoren 354, 355, 356, 374, 367, 366, 372, 373, 361, 375, 359 und 360 NMOS-Vorrichtungen und Transistoren 353, 352, 351, 362, 363, 364, 365, 369, 370, 371, 357 und 358 PMOS-Vorrichtungen. Wie die Flip-Flop-Schaltung 300 weist die Flip-Flop-Schaltung 350 vier Hauptunterschaltungen, eine Rücksetz-Trigger-Unterschaltung, eine Setz-Trigger-Unterschaltung, einen Ausgangspuffer und ein AND-OR-Inverter(AOI)-RS(Rücksetz-Setz)-Auffangregister, auf. Transistoren 351, 352, 353, 354, 355, 356, 374 und Inverter 377 sind konfiguriert, um die Rücksetz-Trigger-Unterschaltung zu bilden, die dieselbe Funktion wie die Rücksetz-Trigger-Unterschaltung der Flip-Flop-Schaltung 300 durchführt. Transistoren 351, 357, 358, 359, 360, 361, 375 und Inverter 378 sind konfiguriert, um die Setz-Trigger-Unterschaltung zu bilden, die dieselbe Funktion wie die Setz-Trigger-Unterschaltung der Flip-Flop-Schaltung 300 durchführt. Man beachte, dass der taktaktivierte Herunterziehtransistor 351 zwischen der Rücksetz-Trigger-Unterschaltung und der Setz-Trigger-Unterschaltung geteilt wird. Die Eingangssignale d 383 und dN 384, clk 385 und kClk 387 führen ähnliche Funktionen durch, wie jeweils die vorher beschriebenen Eingangssignale d 333, dN 334, clk 330 und kClk 332. Ähnlich arbeiten die Signale ar 382 und as 386 und Knoten s 376 und sN 381 in einer ähnlichen Weise wie jeweils Signale ar 332 und as 336 und Knoten s 326 und sN 331 der Flip-Flop-Schaltung 300. Transistoren 374 und 375 sind Isolationstransistoren, die dieselben Funktionen wie die vorher beschriebenen Transistoren 324 und 325 durchführen.
  • Der primäre Unterschied zwischen der Flip-Flop-Schaltung 350 und der Flip-Flop-Schaltung 300 ist, dass die Isolationstransistoren 314 und 320 in der Flip-Flop-Schaltung 350 weggelassen werden, und Isolationstransistoren 365 und 371 zu der Flip-Flop-Schaltung 350 hinzugefügt werden. Das Gate und Drain von Transistor 371 sind parallel gekoppelt mit dem Gate und Drain von Transistor 370. Diese Verdoppelung stellt zwei Sourceanschlüsse bereit, einen am Transistor 371 und einen am Transistor 370, die sN 381 heraufziehen, wenn s 376 low ist. Aufteilen dieser Sourceanschlüsse isoliert das Drain des Transistors 369 von dem Drain des taktaktivierten Heraufziehtransistors 362. Ähnlich sind das Gate und Drain des Transistors 364 parallel mit dem Gate und Drain des Transistors 365 gekoppelt, und Transistor 365 ist konfiguriert, das Drain des Transistors 363 von dem geteilten taktaktivierten Heraufziehtransistor 362 zu isolieren. Ein Schließen der Transistoren 364 und 370 ermöglicht, dass die Isolationstransistoren 365 und 371 den taktaktivierten Heraufziehtransistor 362 teilen. Ohne die Isolationstransistoren 365 und 371 würde ein zusätzlicher taktaktivierter Heraufziehtransistor benötigt werden, was die Taktlast der Auffangregisterschaltung 350 erhöht.
  • 4 ist ein Übergangsplandiagramm (transition map diagram) 400, das gültige Übergänge für die Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung 300 oder 350 für jede Kombination von Eingangssignalen zeigt, in Übereinstimmung mit einem oder mehreren Aspekten der vorliegenden Erfindung. Das Verhalten der Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltungen 300 und 350 kann verstanden werden, indem jede der Flip-Flop-Schaltungen als eine asynchrone endliche Zustandsmaschine betrachtet wird, und den Zustandsübergängen auf dem Übergangsplan 400 gefolgt wird. Der Übergangsplan 400 stellt die Zustände der Eingangsvariablen (d und clk) auf der horizontalen Achse und die Zustandsvariablen (as, ar und s) auf der vertikalen Achse dar. Alle horizontalen Übergänge sind Eingangsimpulse. Alle vertikalen Übergänge sind die Antwort der Flip-Flop-Schaltung 300 oder 350 auf den Eingangsimpuls.
  • Die Flip-Flop-Schaltung 300 oder 350 hat acht stabile Zustände, die mit 401, 402, 403, 404, 405, 406, 407 und 408 benannt sind. Es gibt sechs vorübergehende Zustände, die mit 411, 412, 413, 414, 415 und 416 benannt sind, die den Zustand der Schaltung nach einer Eingangsänderung aber vor der Antwort der Schaltung auf diese Änderung widerspiegeln. Es gibt zwei vorübergehende Zustände, die mit 409 und 410 benannt sind, die einen Zustandsübergang ohne einen Eingangsimpuls widerspiegeln.
  • Betrachte Starten bei Zustand 401 mit clk = d = q = 0. Wie bei allen stabilen Zuständen gibt es zwei Möglichkeiten, clk kann sich ändern oder d kann sich ändern (wie bei allen Flip-Flops garantieren die Einstellungs- und Haltezeit-Beschränkungen die grundlegende Modusannahme für die Flip-Flop-Schaltung 300 und 350). Wenn clk in dem Zustand 401 ansteigt, geht die Flip-Flop-Schaltung 300 oder 350 zu Zustand 407 ohne Antwort von der Flip-Flop-Schaltung 300 oder 350 über. Wenn d im Zustand 401 ansteigt, geht es zu Zustand 402 weiter und die Flip-Flop-Schaltung 300 oder 350 bringt as in den aktiven Zustand, wodurch der Setz-Trigger scharf geschaltet wird. Im Zustand 402 werden die Daten, die zurück auf null übergehen, die Flip-Flop-Schaltung 300 oder 350 zu Zustand 401 zurückschicken, was den Setz-Trigger entschärft. Wenn Daten umschalten, während der Takt low ist, kann die Flip-Flop-Schaltung 300 oder 350 um die Schleife zwischen Zuständen 401 und 402 kreisen.
  • Wenn der clk ansteigt, während die Flip-Flop-Schaltung 300 oder 350 im Zustand 402 ist, antwortet die Flip-Flop-Schaltung 300 oder 350, indem s in den aktiven Zustand gebracht wird, wodurch das Setzen getriggert wird. Die Flip-Flop-Schaltung 300 oder 350 geht von dem Zustand 402 zu dem vorübergehenden Zustand 410 über und geht unmittelbar zu dem Zustand 403 über, da das Ansteigen von s veranlasst, dass as fällt. Wenn die Flip-Flop-Schaltung 300 oder 350 in dem Zustand 403 ist und der Takt fällt, geht die Flip-Flop-Schaltung 300 oder 350 zu dem Zustand 405 über. Der Zustand 405 ist analog zu Zustand 401, aber mit d = s = 1.
  • Die Rücksetz-Sequenz tritt auf, wenn die Flip-Flop-Schaltung 300 oder 350 von Zustand 405, wenn d = 1 und q = 1, zu Zustand 406 übergeht, wenn d fällt, was den Rücksetz-Trigger scharf schaltet. Im Zustand 406 werden die Daten, die zurück auf 1 übergehen, die Flip-Flop-Schaltung 300 oder 350 zu Zustand 405 zurückschicken, was den Rücksetz-Trigger entschärft. Wenn Daten umschalten, während der Takt low ist, kann die Flip-Flop-Schaltung 300 oder 350 um die Schleife zwischen den Zuständen 405 und 406 kreisen. Wenn der clk ansteigt, während die Flip-Flop-Schaltung 300 oder 350 in dem Zustand 406 ist, antwortet die Flip-Flop-Schaltung 300 oder 350, indem s negiert wird, wodurch das Rücksetzen getriggert wird. Die Flip-Flop-Schaltung 300 oder 350 geht von dem Zustand 406 zu dem vorübergehenden Zustand 409 über und geht unmittelbar zu dem Zustand 407 über, da das Fallen von s veranlasst, dass ar fällt. Wenn die Flip-Flop-Schaltung 300 oder 350 in dem Zustand 407 ist und der Takt fällt, geht die Flip-Flop-Schaltung 300 oder 350 zu Zustand 401 über.
  • Wenn s = d = 0, veranlassen Eingangsänderungen, dass Übergänge zwischen Zuständen 401, 407 und 408 ohne Antwort in der Flip-Flop-Schaltung 300 oder 350 auftreten. Ähnlich, wenn s = d = 1, veranlassen Eingangsänderungen, dass Übergänge zwischen Zuständen 403, 404 und 405 ohne Antwort in der Flip-Flop-Schaltung 300 oder 350 auftreten. Nur wenn clk low ist und d ungleich s, geht die Flip-Flop-Schaltung 300 oder 350 zu dem scharf geschalteten Zustand 402 oder 408 über. Wenn die Flip-Flop-Schaltung 300 oder 350 in einem scharf geschalteten Zustand ist, wenn clk ansteigt, findet der geeignete Trigger statt – Setzen oder Zurücksetzen der Flip-Flop-Schaltung 300 oder 350, indem auf Zustand 403 jeweils über den vorübergehenden Zustand 410 oder Zustand 407 über den vorübergehenden Zustand 409 übergegangen wird.
  • Eine Analyse der Flip-Flop-Schaltung 300 oder 350 zeigt, dass alle Hauptknoten (as, ar, s und sN) entweder durch high oder low in jedem der acht stabilen Zustände 401, 402, 403, 404, 405, 406, 407 und 408 angesteuert werden. Somit ist die Flip-Flop-Schaltung 300 oder 350 vollständig statisch. Der Knoten as ist kurzzeitig während des vorübergehenden Zustandes 413 (auf dem Weg zu dem vorübergehenden Zustand 410) ungesteuert. Ähnlich ist Knoten ar kurzzeitig während des vorübergehenden Zustandes 416 (auf dem Weg zu dem vorübergehenden Zustand 409) ungesteuert. Jedoch, da diese vorübergehenden Zustände 413 und 416 für nur ein oder zwei Gate-Verzögerungen bestehen, sind schwimmende Knoten (floating nodes) in diesen Zuständen keine Besorgnis. Alle Knoten in den vorübergehenden Zuständen 411, 412, 413 und 415 sind gesteuert.
  • 5 ist ein Blockdiagramm, das einen Prozessor/Chip 540 darstellt, der die Flip-Flop-Schaltung 300 von 3A oder die Flip-Flop-Schaltung 350 von 3B aufweist, in Übereinstimmung mit einem oder mehreren Aspekten der vorliegenden Erfindung. I/O-Schaltungen 565 können Kontaktstellen und andere I/O spezifische Schaltungen aufweisen, um Signale zu senden und von anderen Vorrichtungen in einem System zu empfangen. Ausgangssignal 555 wird durch I/O-Schaltungen 565 basierend auf Signalen erzeugt, die durch die I/O-Schaltungen 565 empfangen werden. Das Eingangssignal 551 wird durch die I/O-Schaltungen 565 empfangen und zu der ersten Flip-Flop-Schaltung 300 oder 350 zur Speicherung eingegeben. Die I/O-Schaltungen 565 stellen auch Taktsignale zu den Flip-Flop-Schaltungen 300 oder 350 bereit. Die Schaltnetze (combinational circuits) 570 empfangen den Ausgang, der durch die erste Flip-Flop-Schaltung 300 oder 350 erzeugt wird, und erzeugen eine kombinatorische Ausgabe, die durch die zweite Flip-Flop-Schaltung 300 oder 350 empfangen wird. Die zweite Flip-Flop-Schaltung 300 oder 350 speichert die kombinatorische Ausgabe und erzeugt eine Ausgabe, die zu den Schaltnetzen 572 eingegeben wird. Der Ausgang der Schaltnetze 572 wird durch die dritte Flip-Flop-Schaltung 300 oder 350 empfangen und gespeichert. Die dritte Flip-Flop-Schaltung 300 oder 350 erzeugt eine Ausgabe, die zu den I/O-Schaltungen 565 bereitgestellt wird. Die Flip-Flop-Schaltungen 300 oder 350 können verwendet werden, um Signale für mehrere Taktzyklen zu speichern oder Signale über eine Leitung zu leiten, die sich so häufig wie jeder Taktzyklus ändern.
  • Systemüberblick
  • 6 ist ein Blockdiagramm, das ein Computersystem 100 darstellt, das konfiguriert, einen oder mehrere Aspekte der vorliegenden Erfindung zu implementieren. Das Computersystem 600 weist eine Zentralverarbeitungseinheit (CPU) 602 und einen Systemspeicher 604 auf, die über einen Buspfad durch eine Speicherbridge 605 kommunizieren. Die Speicherbridge 605 kann in die CPU 602 wie in 6 gezeigt integriert sein. Alternativ kann die Speicherbridge 605 eine herkömmliche Vorrichtung, zum Beispiel ein North Bridge Chip, sein, die über einen Bus mit der CPU 602 verbunden ist. Die Speicherbridge 605 ist über einen Kommunikationspfad 606 (zum Beispiel einen Hypertransportlink) mit einer I/O(Input/Output)-Bridge 607 verbunden. Die I/O-Bridge 607, die zum Beispiel ein South Bridge Chip sein kann, empfängt eine Benutzereingabe von einer oder mehreren Benutzereingabevorrichtungen 608 (zum Beispiel Tastatur, Maus) und leitet die Eingabe an die CPU 602 über den Pfad 606 und die Speicher-Bridge 605 weiter. Ein paralleles Verarbeitungsuntersystem 612 ist mit der Speicher-Bridge 605 über einen Bus oder einen anderen Kommunikationspfad 613 (zum Beispiel einen PCI-Express, Accelerated Graphics Port oder Hypertransportlink) gekoppelt; in einer Ausführungsform ist das parallele Verarbeitungsuntersystem 612 ein Graphikuntersystem, das Pixel zu einer Anzeigevorrichtung 610 (zum Beispiel einem herkömmlichen CRT- oder LCD-basierten Monitor) liefert. Eine Systemfestplatte 614 ist auch mit der I/O-Bridge 607 verbunden. Ein Switch 616 stellt Verbindungen zwischen der I/O-Bridge 607 und anderen Komponenten wie einem Netzwerkadapter 618 und verschiedenen Erweiterungskarten 620 und 621 bereit. Andere Komponenten (nicht explizit gezeigt), einschließlich USB oder anderen Schnittstellenverbindungen, CD-Laufwerken, DVD-Laufwerken, Filmaufnahmevorrichtungen und ähnliches, können auch mit der I/O-Bridge 607 verbunden werden. Kommunikationspfade, die die verschiedenen Komponenten in 6 verbinden, können unter Verwendung irgendwelcher geeigneter Protokolle implementiert werden, wie PCI (Peripheral Component Interconnect), PCI-Express (PCI-E), AGP (Accelerated Graphics Port), Hypertransport, oder irgendwelchen anderen Bus- oder Punkt-zu-Punkt-Kommunikationsprotokoll(en), und Verbindungen zwischen unterschiedlichen Vorrichtungen können unterschiedliche Protokolle verwenden, wie es in der Technik bekannt ist.
  • In einer Ausführungsform integriert das parallele Verarbeitungsuntersystem 612 Schaltkreise, die zur Graphik- und Videoverarbeitung optimiert sind, einschließlich beispielsweise Videoausgabeschaltkreisen, und bildet eine Graphikverarbeitungseinheit (GPU). In einer anderen Ausführungsform integriert das parallele Verarbeitungsuntersystem 612 Schaltkreise, die für allgemeine Verarbeitung optimiert sind, während die zugrunde liegende Rechnerarchitektur bewahrt wird, wie hierin detaillierter beschrieben ist. In wiederum einer anderen Ausführungsform kann das parallele Verarbeitungsuntersystem 612 mit einem oder mehreren anderen Systemelementen integriert werden, wie der Speicher-Bridge 605, CPU 602 und I/O-Bridge 607, um ein System auf dem Chip (SoC) zu bilden. Ein oder mehrere der CPU 602, des parallelen Verarbeitungsuntersystems 612, der I/O-Bridge 607 und dem Switch 616 können eine Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung 300 oder 350 aufweisen.
  • Es wird anerkannt werden, dass das hierin gezeigte System beispielhaft ist, und dass Variationen und Modifikationen möglich sind. Die Verbindungstopologie, einschließlich der Anzahl und Anordnungen von Bridges, kann wie gewünscht modifiziert werden. Beispielsweise ist in manchen Ausführungsformen der Systemspeicher 604 mit der CPU 602 direkt statt über eine Bridge verbunden, und andere Vorrichtungen kommunizieren mit dem Systemspeicher 602 über die Speicher-Bridge 605 und die CPU 602. In anderen alternativen Topologien ist das parallele Verarbeitungsuntersystem 602 mit der I/O-Bridge 607 oder direkt mit der CPU 602 verbunden, statt mit der Speicher-Bridge 605. In wiederum anderen Ausführungsformen können eine oder mehrere der CPU 602, der I/O-Bridge 607, des parallelen Verarbeitungsuntersystems 612 und der Speicher-Bridge 605 in ein oder mehrere Chips integriert sein. Die bestimmten Komponenten, die hierin gezeigt sind, sind optional; beispielsweise kann irgendeine Anzahl von Erweiterungskarten oder peripheren Vorrichtungen unterstützt werden. In manchen Ausführungsformen ist der Switch 616 entfernt und der Netzwerkadapter 618 und Erweiterungskarten 620, 621 verbinden direkt mit der I/O-Bridge 607.
  • In Summe ist die Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung 300 oder 350 vollständig statisch, da alle Knoten high oder low während allen stabilen Zuständen der Schaltungen gesteuert werden. Die Flip-Flop-Schaltung ist energiearm (low-energy), da die internen Knoten nur umschalten, wenn die Daten sich ändern und die Belastung des Takts nur drei Transistor-Gates ist. Die Haltezeit ist ziemlich kurz, da sich die Dateneingaben d und dN eine Gate-Verzögerung folgend der steigenden Flanke des Takts ändern können. Zusätzlich vertrauen die energiearmen Doppeltrigger-Flip-Flop-Schaltungen 300 und 350 nicht auf Größenbeziehungen zwischen den unterschiedlichen Transistoren, um sauber zu funktionieren. Daher ist der Flip-Flop-Schaltungsbetrieb robust, auch wenn die Charakteristika der Transistoren aufgrund des Herstellungsprozesses variieren.
  • Eine Ausführungsform der Erfindung kann als ein Programmprodukt zur Verwendung mit einem Computersystem implementiert werden. Das Programm (die Programme) des Programmprodukts definieren Funktionen der Ausführungsformen (einschließlich der hierin beschriebenen Methoden) und können auf einer Vielzahl von computerlesbaren Speichermedien enthalten sein. Beispielhafte computerlesbare Speichermedien weisen auf, aber sind nicht beschränkt auf: (i) nicht beschreibbare Speichermedien (zum Beispiel Nur-Lesespeicher-Vorrichtungen innerhalb eines Computers wie CD-ROM-Festplatten, die durch ein CD-ROM-Laufwerk lesbar sind, Flash-Speicher, ROM-Chips oder irgendeine andere Art von nicht flüchtigem Festkörper-Halbleiterspeicher), auf denen Informationen permanent gespeichert sind; und (ii) beschreibbare Speichermedien (zum Beispiel Disketten innerhalb eines Diskettenlaufwerks oder Festplatten oder irgendeine andere Art von Festkörperzufallszugriffs-Halbleiterspeichern), auf denen veränderbare Informationen gespeichert sind.
  • Die Erfindung wurde oben mit Bezug auf spezifische Ausführungsformen beschrieben. Der Fachmann wird jedoch verstehen, dass verschiedene Modifikationen und Veränderungen daran gemacht werden können, ohne von dem breiteren Sinn und Schutzumfang der Erfindung, wie in den angehängten Ansprüchen dargelegt, abzuweichen. Die vorhergehende Beschreibung und Zeichnungen sind daher in einem veranschaulichenden statt einem einschränkenden Sinn zu betrachten.

Claims (11)

  1. Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300; 350), welche aufweist: eine Trigger-Unterschaltung, die eine Rücksetz-Trigger-Unterschaltung und eine Setz-Trigger-Unterschaltung aufweist, die sich einen ersten taktaktivierten Transistor (301; 351) teilen, wobei die Trigger-Unterschaltung konfiguriert ist, um entweder ein erstes Triggersignal (ar) oder ein zweites Triggersignal (as) scharf zu schalten, wenn ein Eingangssignal (d) zu der Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300; 350) bei einem unterschiedlichen Pegel als ein Pegel eines Ausgangssignals (Q), das durch die Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300; 350) erzeugt wird, ist; und eine Auffangregister-Unterschaltung, die einen zweiten taktaktivierten Transistor (318; 368) aufweist und konfiguriert ist, um den Pegel des Ausgangssignals (Q) zu ändern, wenn entweder das erste Triggersignal (ar) oder das zweite Triggersignal (as) scharf geschaltet ist und ein Taktsignal (Clk) von einem ersten Pegel zu einem zweiten Pegel übergeht, und den Pegel des Ausgangssignals (Q) aufrechterhält, wenn weder das erste Triggersignal (ar) noch das zweite Triggersignal (as) scharf geschaltet sind.
  2. Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300) gemäß Anspruch 1, wobei die Auffangregister-Unterschaltung des Weiteren einen dritten taktaktivierten Transistor (312) aufweist, der mit einem ersten Isolationstransistor (314) und einem zweiten Isolationstransistor (320) gekoppelt ist.
  3. Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300; 350) gemäß Anspruch 1, wobei die Trigger-Unterschaltung aufweist: die Rücksetz-Trigger-Unterschaltung, die konfiguriert ist, das erste Triggersignal (ar) scharf zu schalten, wenn das Eingangssignal (d) bei einem low-Pegel ist und der Pegel des Ausgangssignals (Q) high ist; und die Setz-Trigger-Unterschaltung, die konfiguriert ist, das zweite Triggersignal (as) scharf zu machen, wenn das Eingangssignal (d) bei einem high-Pegel ist und der Pegel des Ausgangssignals (Q) low ist.
  4. Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300; 350) gemäß Anspruch 1, wobei die Auffangregister-Unterschaltung aufweist: einen ersten Isolationstransistor (324; 374), der mit dem zweiten taktaktivierten Transistor (318; 368) gekoppelt ist und konfiguriert ist, um das erste Triggersignal (ar) herunterzuziehen, wenn das Eingangssignal (d) bei einem low-Pegel ist und der zweite taktaktivierte Transistor (318; 368) aktiviert ist, und einen zweiten Isolationstransistor (325; 375), der mit dem zweiten taktaktivierten Transistor (318; 368) gekoppelt ist und konfiguriert ist, um das zweite Triggersignal (as) herunterzuziehen, wenn das Eingangssignal (d) bei einem high-Pegel ist und der zweite taktaktivierte Transistor (318; 368) aktiviert ist.
  5. Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300; 350) gemäß Anspruch 1, wobei der erste taktaktivierte Transistor (301; 351) konfiguriert ist, um die Trigger-Unterschaltung zu aktivieren, wenn der Takt (Clk) bei dem ersten Pegel ist, wobei der zweite taktaktivierte Transistor (318) konfiguriert ist, um die Auffangregister-Unterschaltung zu aktivieren, wenn das Taktsignal (Clk) bei dem zweiten Pegel ist.
  6. Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300; 350) gemäß Anspruch 1, wobei ein dritter taktaktivierter Transistor (312; 362) konfiguriert ist, um die Auffangregister-Unterschaltung zu aktivieren, wenn das Taktsignal (kClk) bei dem ersten Pegel ist.
  7. Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300) gemäß Anspruch 1, welche ferner aufweist: einen ersten Isolationstransistor (314), der eine Source aufweist, die mit einem taktaktivierten Heraufziehtransistor (312) gekoppelt ist, und welcher ein Gate hat, das mit einem ersten Triggersignal (ar) gekoppelt ist; einen zweiten Isolationstransistor (320), der eine Source hat, die mit dem taktaktivierten Heraufziehtransistor (312) gekoppelt ist, und welcher ein Gate hat, das mit einem zweiten Triggersignal (as) gekoppelt ist, wobei nur eines von dem zweiten Triggersignal (as) und dem ersten Triggersignal (ar) zur selben Zeit aktiviert ist; einen dritten Transistor (313), der ein Drain hat, das mit einem Drain des ersten Isolationstransistors (314) gekoppelt ist, und ein Gate, das mit einem Komplement des ersten Triggersignals (ar) gekoppelt ist; und einen vierten Transistor (319), der ein Drain hat, das mit einem Drain des zweiten Isolationstransistors (320) gekoppelt ist, und ein Gate, das mit einem Komplement des zweiten Triggersignals (as) gekoppelt ist.
  8. Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300) gemäß Anspruch 7, wobei das erste Triggersignal (ar) ein Rücksetztrigger ist, der ein Ausgangssignal (Q) der Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300) zurücksetzt.
  9. Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300) gemäß Anspruch 7, wobei das zweite Triggersignal (as) ein Setztrigger ist, der ein Ausgangssignal (Q) der Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300) setzt.
  10. Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300) gemäß Anspruch 7, welche weiterhin aufweist: einen dritten Isolationstransistor (324), der mit dem zweiten taktaktivierten Transistor (318) gekoppelt ist, und konfiguriert ist, um das erste Triggersignal (ar) herunterzuziehen, wenn ein Eingangssignal (d) bei einem low-Pegel ist und der zweite taktaktivierte Transistor (318) aktiviert ist, und einen vierten Isolationstransistor (325), der mit dem zweiten taktaktivierten Transistor (318) gekoppelt ist, und konfiguriert ist, um das zweite Triggersignal (as) herunterzuziehen, wenn das Eingangssignal (d) bei einem high-Pegel ist und der zweite taktaktivierte Transistor (318) aktiviert ist.
  11. Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung (300) gemäß Anspruch 7, wobei der erste Isolationstransistor (314) als ein Teil eines ersten Inverters konfiguriert ist und der zweite Isolationstransistor (320) als ein Teil eines zweiten Inverters konfiguriert ist, und ein Ausgang (326) des ersten Inverters mit einem Eingang des zweiten Inverters gekoppelt ist und ein Ausgang des zweiten Inverters (331) mit einem Eingang des ersten Inverters gekoppelt ist.
DE102012202747.5A 2011-02-23 2012-02-22 Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung Active DE102012202747B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/033,426 US8487681B2 (en) 2011-02-23 2011-02-23 Dual-trigger low-energy flip-flop circuit
US13/033,426 2011-02-23

Publications (2)

Publication Number Publication Date
DE102012202747A1 DE102012202747A1 (de) 2012-08-23
DE102012202747B4 true DE102012202747B4 (de) 2016-11-03

Family

ID=45939864

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102012202747.5A Active DE102012202747B4 (de) 2011-02-23 2012-02-22 Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung

Country Status (4)

Country Link
US (2) US8487681B2 (de)
KR (2) KR101317056B1 (de)
DE (1) DE102012202747B4 (de)
GB (1) GB2488418B (de)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8365049B2 (en) * 2008-12-15 2013-01-29 Lsi Corporation Soft-error detection for electronic-circuit registers
US8487681B2 (en) * 2011-02-23 2013-07-16 Nvidia Corporation Dual-trigger low-energy flip-flop circuit
ITTO20120289A1 (it) * 2012-04-02 2013-10-03 St Microelectronics Srl Circuito per comunicazioni asincrone, sistema e procedimento relativi
US8841953B2 (en) * 2013-02-22 2014-09-23 Nvidia Corporation Low clock energy double-edge-triggered flip-flop circuit
KR102060073B1 (ko) * 2013-03-04 2019-12-27 삼성전자 주식회사 반도체 회로
US9379705B2 (en) 2014-02-21 2016-06-28 Samsung Electronics Co., Ltd. Integrated circuit and semiconductor device including the same
US9438208B2 (en) * 2014-06-09 2016-09-06 Qualcomm Incorporated Wide-band duty cycle correction circuit
US9647671B2 (en) 2015-01-22 2017-05-09 Wright State University High performance phase frequency detectors
US9923552B2 (en) 2016-07-20 2018-03-20 Nxp B.V. Latch circuitry
US11018653B1 (en) 2020-05-04 2021-05-25 Apple Inc. Low voltage clock swing tolerant sequential circuits for dynamic power savings
KR102357862B1 (ko) * 2020-09-14 2022-02-07 광운대학교 산학협력단 저전압에서 동작하는 펄스 트리거 플립 플롭 및 이의 동작 방법
KR20220112096A (ko) 2021-02-03 2022-08-10 삼성전자주식회사 저전력 플립플랍
US11863190B1 (en) 2022-12-30 2024-01-02 Steve Dao Multi-bit flip-flops utilizing shared clock elements

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7265596B2 (en) * 2005-03-31 2007-09-04 Hynix Semiconductor Inc. Data latch circuit of semiconductor device
US7872514B2 (en) * 2008-12-20 2011-01-18 Motorola, Inc. Latch circuit and clock signal dividing circuit

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100457336B1 (ko) 1997-09-23 2005-01-17 삼성전자주식회사 더블 에지 트리거 플립 플롭 회로
TW419825B (en) * 1998-08-26 2001-01-21 Toshiba Corp Flip-flop circuit with clock signal control function and clock control signal
US6426652B1 (en) * 2001-05-14 2002-07-30 Sun Microsystems, Inc. Dual-edge triggered dynamic logic
US6822478B2 (en) * 2001-07-03 2004-11-23 Texas Instruments Incorporated Data-driven clock gating for a sequential data-capture device
US6977528B2 (en) 2002-09-03 2005-12-20 The Regents Of The University Of California Event driven dynamic logic for reducing power consumption
JP5224657B2 (ja) 2005-06-29 2013-07-03 株式会社東芝 半導体集積回路装置
JP4820586B2 (ja) * 2005-06-29 2011-11-24 ルネサスエレクトロニクス株式会社 半導体集積回路装置
DE102005056278B4 (de) * 2005-11-25 2008-04-10 Infineon Technologies Ag Flip-Flop-Vorrichtung und Verfahren zum Speichern und Ausgeben eines Datenwerts
DE102005060394B4 (de) * 2005-12-16 2012-10-11 Infineon Technologies Ag Schaltungsanordnung und Verfahren zum Betreiben einer Schaltungsanordnung
KR20070071041A (ko) * 2005-12-29 2007-07-04 주식회사 하이닉스반도체 플립-플롭 회로
US7405606B2 (en) * 2006-04-03 2008-07-29 Intellectual Ventures Fund 27 Llc D flip-flop
JP4224094B2 (ja) * 2006-09-27 2009-02-12 株式会社東芝 半導体集積回路装置
US8339170B1 (en) * 2009-12-08 2012-12-25 Marvell Israel (M.I.S.L.) Ltd. Latching signal generator
US8742796B2 (en) * 2011-01-18 2014-06-03 Nvidia Corporation Low energy flip-flops
US8373483B2 (en) * 2011-02-15 2013-02-12 Nvidia Corporation Low-clock-energy, fully-static latch circuit
US8487681B2 (en) * 2011-02-23 2013-07-16 Nvidia Corporation Dual-trigger low-energy flip-flop circuit
US8436669B2 (en) * 2011-04-27 2013-05-07 Nvidia Corporation Single-trigger low-energy flip-flop circuit

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7265596B2 (en) * 2005-03-31 2007-09-04 Hynix Semiconductor Inc. Data latch circuit of semiconductor device
US7872514B2 (en) * 2008-12-20 2011-01-18 Motorola, Inc. Latch circuit and clock signal dividing circuit

Also Published As

Publication number Publication date
GB2488418B (en) 2018-04-04
KR101360582B1 (ko) 2014-02-10
GB201202866D0 (en) 2012-04-04
KR101317056B1 (ko) 2013-10-11
US8487681B2 (en) 2013-07-16
KR20130058719A (ko) 2013-06-04
DE102012202747A1 (de) 2012-08-23
US20120212271A1 (en) 2012-08-23
KR20120096907A (ko) 2012-08-31
US8604855B2 (en) 2013-12-10
US20130278315A1 (en) 2013-10-24
GB2488418A (en) 2012-08-29

Similar Documents

Publication Publication Date Title
DE102012202747B4 (de) Doppeltrigger-Niedrigenergie-Flip-Flop-Schaltung
KR101394873B1 (ko) 단일 트리거 저 에너지 플립 플롭 회로
DE102012202241A1 (de) Vollständig statische Niedrig-Takt-Energie-Latch-Schaltung
DE102012212549B4 (de) Vorrichtung mit einem Datenerhaltungsmodus und einem Datenverarbeitungsmodus
DE102012112352A1 (de) Scan-Flip-Flop, Verfahren davon und Vorrichtung mit demselben
DE102004055006B4 (de) Flipflop mit zusätzlicher Zustandsspeicherung bei Abschaltung
DE102005056278B4 (de) Flip-Flop-Vorrichtung und Verfahren zum Speichern und Ausgeben eines Datenwerts
DE102005060394A1 (de) Schaltungsanordnung und Verfahren zum Betreiben einer Schaltungsanordnung
DE102016116717A1 (de) Scan-Ketten-Schaltung, die eine Injektion eines logischen Selbsttestmusters während der Laufzeit unterstützt
DE102004009693A1 (de) Technik zum Kombinieren eines Abtasttests und eines eingebauten Speicherselbsttests
DE102016100276A1 (de) Zelle mit internem clock-gating
DE112013007486T5 (de) Speicherzelle mit Retention unter Verwendung eines resistiven Speichers
DE112015003632T5 (de) Dynamisches spielraumeinstellen zum steuern von anwendungsspezifischen schaltungen und speichern
DE69533567T2 (de) Vorrichtung und Verfahren zum Auffinden von False-Timing-Paths in digitalen Schaltkreisen
DE102013113981B4 (de) Kleinflächiger Niedrigleistungs-Datenbeibehaltungsflop
DE102012111414B4 (de) Master-Slave-Speicherschaltung
DE102012222581B4 (de) Schnellbypass-Speicherschaltkreis
DE102007006385A1 (de) Schaltkreis-Anordnung, Elektronische Einrichtung, Elektrisches Gerät und Verfahren zum Betreiben einer Schaltkreis-Anordnung
DE102020118818A1 (de) Flipflop, master-slave-flipflop und betriebsverfahren dafür
DE102013114341A1 (de) Ein System, ein Verfahren und ein Computerprogrammprodukt zur automatischen Zwei-Phasen-Taktung
DE112016002871T5 (de) Halbleitervorrichtung
DE10121165B4 (de) Verfahren und Vorrichtung zum Initialisieren einer asynchronen Latch-Kette
DE102018120348A1 (de) Selbsttaktende abasteinrichtung mit reduzierter metastabilität
EP1430320A2 (de) Elektronischer baustein und verfahren zu dessen qualifizierungsmessung
DE102004009144B4 (de) Logikzelle und Verfahren zum Durchführen einer Dual-Rail-Logikoperation und Speichermedium

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: KRAUS & WEISERT PATENTANWAELTE PARTGMBB, DE

R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final