-
Die
vorliegende Erfindung betrifft eine integrierte elektronische Vorrichtung
zur Erzeugung von Taktsignalen für
DDR-Speicherbausteine.
-
Auf
einem typischen gebufferten DIMM-(Dual In Line Memory Module) Board
sind eine Anzahl von Speichermodulen und ein Speicherbuffer angeordnet.
Der Speicherbuffer stellt die Schnittstelle zwischen dem Speicher-Controller
und den über
das Board verteilten Speichermodulen dar. Die Speichermodule (zum
Beispiel DRAMs) benötigen
eine bestimmte und genaue Taktung an ihren Daten-, Adress- und Takteingängen. Da
die Speicherboards (DIMM-Boards) hinsichtlich der zahlreichen Drähte eine
dichte Leitungsführung
haben, stellt die Bereitstellung einer geeigneten und genauen Taktung
der Daten- und Adresssignale sowie der entsprechenden Taktsignale
hohe Anforderungen an die Speicherbuffer. Wenn die Speicherbuffer
die Anforderungen nicht erfüllen
können,
kann die Taktung an den Eingängen der
Speicherbausteine von der Taktung an den entsprechenden Ausgängen der
Steuervorrichtungen abweichen, was die Gesamtleistung des Speichersystems
beeinträchtigen
kann. Um die Taktungsanforderungen zu erfüllen, verschieben herkömmliche Lösungen die
Phase der Taktsignale. Dafür
werden Phasenregelkreise (PLLs) mit Phasenmischern oder Verzögerungsregelkreise
(DLLs) verwendet, um die Phasenbeziehung eines Taktsignals in Bezug
auf ein Datensignal zu optimieren. PLLs und DLLs verbrauchen jedoch
eine erhebliche Fläche
auf dem Chip. Des Weiteren bereiten der Leistungsverbrauch und die
in den Speicherbuffervorrichtungen erzeugte Wärme bei höherem Datendurchsatz der Speicherbuffervorrichtungen
Probleme.
-
US 2005/0218956 A1 offenbart
ein System und ein Verfahren zur Takterzeugung für DIMM-Boards. Mittels eines
herkömmlichen
Verzögerungsschaltkreis
soll ein pseudosynchrones Phasenverhältnis zwischen Taktsignalen
verschiedener Taktdomains aufrecht erhalten werden, wenn sich die Zeitverzögerung des
variablen Verzögerungsschaltkreises ändert, der
eines der Taktsignale ausgibt. Eine einfache Möglichkeit, die Phase von Taktsignalen
in Bezug auf ein Datensignal zu optimieren, wie dies etwa bei einem
Phasenregelkreis möglich
ist, läßt sich
hieraus jedoch nicht entnehmen.
-
Es
ist ein Ziel der vorliegenden Erfindung, eine elektronische Vorrichtung
zur Erzeugung von Taktsignalen für
DDR-Speicherbausteine auf DIMM-Boards bereitzustellen, die dazu
geeignet sind, die Taktungsanforderungen flexibel zu erfüllen, die
klein ist und einen niedrigeren Leistungsverbrauch bei gleichzeitig
geringerem Flächenverbrauch hat.
-
Eine
elektronische Vorrichtung zur Erzeugung von Taktsignalen für DDR-Speicherbausteine auf
DIMM-Boards gemäß der vorliegenden
Erfindung ist wie folgt konzipiert. Die elektronische Vorrichtung ist
so eingerichtet, dass sie Daten- und
Taktsignale zu und/oder von einer Mehrzahl von Speicherbausteinen
auf einem DIMM-Board überträgt. Die
elektronische Vorrichtung enthält
ein Datenbuffermittel zur Bufferung von Daten, einen Taktteiler
zur Teilung eines ersten Taktsignals, das eine erste Taktfrequenz aufweist,
zur Erzeugung eines zweiten Taktsignals, das eine zweite Taktfrequenz
aufweist, wobei die erste Taktfrequenz ein ganzzahliges Vielfaches
der zweiten Taktfrequenz ist, und ein Schieberegister, das mehrere
Flipflops enthält.
Die Flipflops empfangen das erste Taktsignal an ihren Takteingängen. Das
Schieberegister empfängt
das zweite Taktsignal als Dateneingangssignal. In dem Schieberegister
ist der Datenausgang eines vorhergehenden Flipflops mit dem Dateneingang
eines folgenden Flipflops gekoppelt, um als Reaktion auf das erste
Taktsignal das zweite Taktsignal durch das Schieberegister zu verschieben,
wodurch eine Mehrzahl von verschobenen Taktsignalen an den Ausgängen der
Flipflops erzeugt wird, und ein Multiplexer ist mit den Ausgängen der Flipflops
gekoppelt, um ein verschobenes Taktsignal auszuwählen, das als Ausgangstaktsignal
für die Übertragung
der gebufferten Daten an einen Speicherbaustein dient.
-
Dementsprechend
nutzt ein Speicherbuffer gemäß der vorliegenden
Erfindung das Vorhandensein von zwei unterschiedlichen Taktsignalen (erstes
und zweites Taktsignal) mit verschiedenen Taktfrequenzen aus, um
ein entsprechendes phasenverschobenes Taktausgangssignal zu erzeugen,
das für
die Datenübertragung
der gebufferten Daten verwendet wird. Taktteiler und Schieberegister
wurden allgemein als ungeeignet für die Erzeugung eines Takts
mit hoher Geschwindigkeit und hoher Präzision erachtet, da sich der
durch jedes Flipflop eingebrachte Jitter summiert. Der summierte
Jitter der vorhergehenden Flipflops in dem Taktteiler und dem Schieberegister
kann dann in dem Ausgangstaktsignal in Erscheinung treten, wodurch
das Taktsignal ungeeignet für
Hochgeschwindigkeitsanwendungen wird. Jedoch überwindet die vorliegende Erfindung
dieses Vorurteil auf Grund der Erkenntnis, dass das erste Taktsignal
einen ausreichend geringen Jitter haben kann.
-
Das
erste Taktsignal wird in einem Taktteiler verarbeitet, dessen Frequenz
ein Bruchteil der Frequenz des ersten Taktsignals ist. An Stelle
der Verwendung einer PLL- oder DLL-Architektur zur Erzeugung eines
phasenverschobenen Taktsignals mit einer optimalen Phasenbeziehung
zu den zu übertragenden
Daten nutzt die vorliegende Erfindung ein Schieberegister, das entsprechend
mit dem ersten und dem zweiten Takt gekoppelt ist. Jedes Flipflop des
Schieberegisters wird durch den ersten Takt getaktet und erzeugt
an seinem Ausgang eine phasenverschobene Version des zweiten Taktsignals,
die für jedes
Flipflop in Bezug auf das zweite Taktsignal um einen Taktzyklus
des ersten Takts verzögert
ist. Die so erzeugten phasenverschobenen Taktsignale werden einem
Multiplexer zugeführt,
der so eingerichtet ist, dass er ein phasenverschobenes Taktsignal
auswählt,
das für
die Datenübertragung
der gebufferten Daten zu verwenden ist. Abhängig von den entsprechenden
Anforderungen an eine bestimmte Datenübertragung kann ein optimales
Taktsignal ausgewählt werden.
Da der Speicherbuffer gemäß der vorliegenden
Erfindung keine PLLs oder DLLs benötigt, werden der Leistungsverbrauch
und die Wärmeerzeugung
im Vergleich zu herkömmlichen
Lösungen
erheblich verringert. Die von dem Schieberegister verbrauchte Chipfläche ist
wesentlich kleiner als die von einem PLL oder einem DLL benötigte Fläche.
-
Die
elektronische Vorrichtung, und insbesondere das Schieberegister,
gemäß der vorliegenden Erfindung
können
vorzugsweise so eingerichtet sein, dass es differenzielle Signale
empfängt,
verarbeitet und ausgibt. Dementsprechend könnte das erste Taktsignal ein
differenzielles Taktsignal sein, und die Flipflops des Schieberegisters
sind vorzugsweise so eingerichtet, dass sie durch das differenzielle
erste Taktsignal getaktet werden. Des Weiteren kann das zweite Taktsignal
ein differenzielles Taktsignal sein, und die Mehrzahl der Flipflops
des Schieberegisters kann so eingerichtet sein, dass sie das zweite
Taktsignal als differenzielles Datensignal verarbeiten. Eine erste
Gruppe der Flipflops des Schieberegisters kann so gekoppelt sein,
dass sie als Reaktion auf eine steigende Flanke des ersten Taktsignals
arbeitet, und eine zweite Gruppe der Flipflops des Schieberegisters
kann so gekoppelt sein, dass sie als Reaktion auf eine abfallende
Flanke des ersten Taktsignals arbeitet, indem einfach die differenziellen
ersten Taktsignale an den Takteingängen der zweiten Gruppe von Flipflops
miteinander vertauscht werden. Ein Inverter, der eine unerwünschte Phasenverschiebung
einbringen würde,
wird nicht benötigt.
Des weiteren wird gemäß diesem
Aspekt der vorliegenden Erfindung lediglich eine halbe Periode des
schnellen Taktsignals zur Erzeugung der phasenverschobenen Ableitungen
des zweiten Taktsignals verwendet, was die Granularität auf die
Hälfte
der Taktperiode des ersten Taktsignals reduziert (d. h. ½ UI, wobei
UI ein Einheitsintervall ist). Durch die Verwendung von differenziellen
Flipflops werden jegliche zusätzliche
unerwünschte
Phasenverschiebungen bzw. zeitlicher Versatz auf Grund von Invertern
(oder anderen zusätzlichen
Gattern) zur Erzeugung von invertierten Taktsignalen vermieden.
Des Weiteren gestattet die Verwendung von Flipflops mit differenziellen
Takt- und Dateneingangssignalen und differenziellen Datenausgangssignalen
die Erzeugung der phasenverschobenen Ausgangstaktsignale durch lediglich
die Hälfte
der Anzahl von Flipflops. Falls nötig, kann die elektronische
Vorrichtung gemäß der vorliegenden Erfindung
ferner ein Takterzeugungsmittel zur Wiederherstellung des ersten
Taktsignals aus den Eingabedaten enthalten.
-
Gemäß einem
anderen Aspekt der vorliegenden Erfindung enthält die elektronische Vorrichtung
ferner eine Schaltung zur Erzeugung eines dritten Taktsignals und
eines vierten Taktsignals von dem ersten Taktsignal, wobei das dritte
Taktsignal und das vierte Taktsignal sich nicht überlappende Taktsignale sind.
Des Weiteren enthält
die elektronische Vorrichtung gemäß der vorliegenden Erfindung ein
spezielles Flipflop, das eine erste Hauptstufe zur Speicherung eines
ersten Binärwerts
als Reaktion auf das dritte Taktsignal und eine zweite Hauptstufe zur
Speicherung eines zweiten Binärwerts
als Reaktion auf das vierte Taktsignal und eine Nebenstufe enthält, die
mit der ersten und der zweiten Hauptstufe gekoppelt ist, um entweder
den ersten oder den zweiten Binärwert
als Reaktion auf ein fünftes
Taktsignal, das die doppelte Frequenz des Eingangstakts aufweist,
zu empfangen und zu speichern. Dieser Aspekt der Erfindung betrifft
Speicherbausteine mit doppelter Datenrate (DDR).
-
In
die Speicherbausteine zu schreibende Daten müssen in einem Schreib-FIFO für Speicherbufferanwendungen
gespeichert werden. Typischerweise gibt es zwei Banken von Speicher-FIFOs
(zum Beispiel eine Bank für
gerade und eine andere Bank für
ungerade Taktzyklen), die durch den zweiten Takt und einen invertierten
zweiten Takt betrieben werden. Die in dem FIFO gespeicherten geraden
und ungeraden Daten werden mit der doppelten Kernfrequenz (Frequenz
des zweiten Takts) erneut abgetastet, was normalerweise einen Multiplexer
erfordert, dessen Auswahlleitung durch den Kerntakt und durch ein mit
doppelter Frequenz betriebenes Flipflop gesteuert wird. Dieser herkömmliche
Ansatz erfordert einen zusätzlichen
Takt mit der doppelten Taktfrequenz des Kerntakts. Des Weiteren
bringt der herkömmliche
Ansatz eine zusätzliche
Latenzzeit ein. Der Ansatz gemäß der vorliegenden
Erfindung, insbesondere eine neue Doppel-Flipflop-Architektur, verringert
die Latenzzeit jedoch um mindestens sechs Einheitsintervalle (UI),
wobei ein Einheitsintervall die Länge einer Taktperiode des ersten
Taktsignals ist. Diesen Vorteil erreicht man durch die neue Architektur
des Flipflops gemäß der vorliegenden
Erfindung. Dementsprechend werden zwei Hauptstufen durch zwei sich
nicht überlappende
Taktsignale getaktet, so dass Einzelbitwerte abwechselnd in die
beiden Hauptstufen eingetaktet werden. Ein Takt mit der doppelten
Frequenz des Eingangstakts wird dazu verwendet, die Daten von einer
beliebigen der beiden Hauptstufen in die einzelne Nebenstufe zu
takten, die mit beiden Hauptstufen gekoppelt ist.
-
Das
erste Taktsignal muss in Bezug auf die Datensignale quellenzentriert
sein. Datensignale in dem Kontext der vorliegenden Erfindung schließen Befehls- und Adresssignale
sowie Strobesignale o. ä. ein.
Der interne Kerntakt des Speicherbuffers ist vorzugsweise einer
der durch das Schieberegister erzeugten verschobenen Taktsignale.
Der Multiplexer ist vorzugsweise als Tristate-Lösung, bestehend aus einer Mehrzahl
von Tristate-Buffern, implementiert. Die Tristate-Buffer sind so implementiert,
dass sie alle dieselbe Phasenverschiebung in die entsprechenden
Taktsignale einbringen. Dies wird typischerweise durch Anpassung
des Aufbaus und der Drahtlänge
der Zusammenschaltungen der Tristate-Buffer bewerkstelligt.
-
Alle
Taktsignale werden über
einen globalen Taktbaum mit minimalem zeitlichen Versatz und minimaler
Zwischenschaltungsverzögerung
sowie über ausgeglichene
Buffer, die keine Tastverhältnisstörung einbringen,
an die Schnittstelle geleitet. Eines der verschobenen Taktsignale
wird als Kerntakt verwendet, der die Daten wie zum Beispiel Befehls-
und Adresssignale oder Strobesignale erzeugt.
-
Die
vorliegende Erfindung betrifft ebenfalls ein System für die digitale
Datenverarbeitung. Das System enthält zumindest ein DIMM-Board
mit (z. B. DDR) Speichermodulen und eine elektronische Vorrichtung
zur Erzeugung von Taktsignalen und zur Bufferung von Daten. Die
elektronische Vorrichtung ist wie obenstehend beschrieben konfiguriert
und enthält
ein Schieberegister, um unter Verwendung des ersten Takts eine Mehrzahl
von Taktsignalen von einem zweiten Takt abzuleiten, wobei der erste
Takt eine Taktfrequenz hat, die ein ganzzahliges Vielfaches des
zweiten Takts ist. Die Beziehung zwischen den Frequenzen des ersten
und des zweiten Takts kann ebenso Bruchteile des ersten Takts enthalten, vorzugsweise
eine halbe Periode des ersten Takts. Dies kann zum Beispiel durch
Verwendung von steigenden und abfallenden Flanken des ersten Takts bewerkstelligt
werden.
-
Gemäß der vorliegenden
Erfindung wird ebenfalls ein Verfahren zur Bufferung von Daten und zur
Erzeugung von Taktsignalen für
eine Mehrzahl von Speichermodulen auf einem DIMM-Board bereitgestellt.
Das Verfahren gemäß der vorliegenden
Erfindung enthält
die Bufferung von Eingabedaten für die
Speichermodule, die Teilung des ersten Takts (z. B. durch eine positive
ganze Zahl), um ein zweites Taktsignal zu erhalten, und die Ableitung
einer Mehrzahl von Taktsignalen von den zweiten Taktsignalen durch
sequentielles Verschieben des zweiten Signals über ein Schieberegister unter
Verwendung der steigenden und/oder abfallenden Flanken des ersten Taktsignals.
-
Die
bevorzugten Ausführungsformen
der vorliegenden Erfindung werden untenstehenden unter Bezugnahme
auf die beigefügten
Zeichnungen ausführlicher
beschrieben. Es zeigen:
-
1 ein
vereinfachtes Schaubild einer Ausführungsform der vorliegenden
Erfindung,
-
2 eine
vereinfachte schematische Darstellung und ein Zeitdiagramm eines
Schieberegisters gemäß einer
Ausführungsform
der vorliegenden Erfindung,
-
3 eine
vereinfachte schematische Darstellung eines differenziellen Schieberegisters
gemäß einer
Ausführungsform
der vorliegenden Erfindung,
-
4 eine
schematische Darstellung eines herkömmlichen Erzeugers einer doppelten
Datenrate,
-
5 ein
Schaubild eines Flipflops gemäß der vorliegenden
Erfindung auf oberster Ebene,
-
6 eine
detaillierte schematische Darstellung eines Flipflops gemäß der vorliegenden
Erfindung, und
-
7 eine
Taktsignalauswahlschaltung gemäß der vorliegenden
Erfindung.
-
1 zeigt
ein vereinfachtes Schaubild einer elektronischen Vorrichtung gemäß der vorliegenden
Erfindung. Der Dateneingang empfängt
Daten von einem Speicher-Controller (nicht gezeigt). Die Eingabedaten
D_IN haben eine Busbreite von n2. Der erste Takt CLK1 ist ein Hochgeschwindigkeitstakt.
Die Eingabedaten D_IN umfassen alle Arten von Daten, Adressinformationen
und Steuerinformationen, die mit den Speichermodulen auf dem DIMM-Board
auszutauschen sind. Der erste Takt CLK1 wird durch einen Taktteiler
in Block DIV-SH in ein zweites Taktsignal CLK20 (nicht gezeigt)
mit einer niedrigeren Frequenz geteilt. Die Frequenz des ersten
Taktsignals CLK1 ist typischerweise ein ganzzahliges Vielfaches
der Frequenz des zweiten Taktsignals CLK20. Des Weiteren gibt es
ein internes Schieberegister in Block DIV-SH, das den untenstehend
in Bezug auf die 2 und 3 beschriebenen gleicht.
Das Schieberegister stellt eine Mehrzahl von phasenverschobenen
Ableitungen des zweiten Taktsignals bereit, die durch n1 Auswahlsignale
SEL ausgewählt
werden. Gemäß dem Auswahlsignal
SEL, haben die Taktsignale CLKXY und CLK_OUT die bestimmte Phase
einer (oder in dem Fall eines Busses mehrerer) der phasenverschobenen
Ableitungen des Takts CLK20.
-
Das
Taktsignal CLKXY wird als Kerntakt verwendet. CLKXY hat dieselbe
Frequenz wie CLK20 und eine bestimmte Phasenbeziehung in Bezug auf CLK20
und CLK1. Die Phase von CLKXY wird durch eines oder mehrere der
Auswahlsignale SEL ausgewählt.
Ebenfalls werden die phasenverschobenen Taktsignale an den Ausgangsanschlüssen CLK_OUT durch
die Auswahlsignale SEL ausgewählt.
Der DIG genannte Block stellt alle Arten von zusätzlicher digitaler Logik, Buffern
oder Kombinationslogik dar, die zwischen den Eingang D_IN und den
Ausgangsbuffer BUF2 gekoppelt werden können. Je nach der bestimmten
Architektur einer elektronischen Vorrichtung kann die Busbreite
für Daten,
Befehls- und Adresssignale variieren. Dementsprechend stellen die
Bezugszahlen n1, n2, n3, n4 und m lediglich jede mögliche Konfiguration
dar.
-
2 zeigt
das Schieberegister gemäß einem
Aspekt der vorliegenden Erfindung ausführlicher und kann zur Erklärung der
Grundfunktionalität
verwendet werden. Dementsprechend wird das Eingangstaktsignal CLK20
dem Dateneingang D des ersten Flipflops FF1 zugeführt. Das
erste Taktsignal CLK1 mit einer Frequenz, die ein ganzzahliges Vielfaches
der Frequenz des zweiten Taktsignals ist, wird den Takteingängen der
Flipflops zugeführt.
Die Flipflops FF1, FF2, FF3 und FF4 sind in einer typischen Schieberegisterkonfiguration
gekoppelt. Jeder Ausgang eines vorhergehenden Flipflops (z. B. Q
von FF1) ist mit einem Dateneingang D eines folgenden Flipflops
(z. B. D von FF2) verbunden. Auf diese Art werden mehrere phasenverschobene
Taktsignale CLK21, CLK22, CLK23 und CLK24 erzeugt, von denen jedes
in Bezug auf ein vorhergehendes Taktsignal um einen Taktzyklus verschoben
ist.
-
3 zeigt
eine vereinfachte schematische Darstellung eines differenziellen
Schieberegisters gemäß einer
Ausführungsform
der vorliegenden Erfindung. Das differenzielle Schieberegister besteht aus
sechs Flipflops FF1 bis FF6. Sämtliche
Flipflops empfangen die differenziellen Taktsignale CLK1 und CLK1Z,
wobei CLK1Z die invertierte Version von CLK1 ist. Wenn einem Bezugszeichen
eines Taktsignals ein Z angehängt
wird, weist dies darauf hin, dass es sich hierbei um die invertierte
Version des Taktsignals mit dem Bezugszeichen ohne Z handelt. Die Frequenz
der differenziellen Taktsignale CLK20, CLK20Z ist wesentlich kleiner
als die Frequenz von CLK1. In der vorliegenden Ausführungsform
kann die Frequenz von CLK1 vorzugsweise sechs Mal die Frequenz von
CLK20 betragen. CLK20 kann von CLK1 durch einen Taktteiler (nicht
gezeigt) abgeleitet werden. Der in 3 gezeigte
Schaltkreis dient dazu, zwölf
Ableitungen CLK21–CLK32
des langsameren Takts CLK20 bereitzustellen. Die Flipflops FF1,
FF2 und FF3 werden durch die steigende Flanke von CLK1 getaktet,
während
FF4, FF5 und FF6 durch die abfallende Flanke von CLK1 (d. h. die
steigende Flanke von CLK1Z) getaktet werden. Dies wird erreicht,
indem die differenziellen Taktsignale CLK1, CLK1Z an den Takteingängen der
beiden Gruppen von Flipflops einfach miteinander getauscht werden. Es
wird kein zusätzlicher
Inverter benötigt.
Somit ist die Verwendung der differenziellen Taktsignale CLK und
CLKZ in einem volldifferenziellen Ansatz zum Beispiel für DDR-Anwendungen besonders
nützlich, da
die Laufzeitverzögerung
eines einzelnen Inverters (oder eines beliebigen anderen einzelnen
Gatters) eine zusätzliche
und unerwünschte
Phasenverschiebung in dem Bereich von mehreren Prozent der Periode
der Taktsignale einbringen würde.
Da die steigenden und abfallenden Flanken des schnellen CLK verwendet
werden, werden die Ableitungen CLK21–CLK32 in Bezug aufeinander
um die Hälfte der
Periode von CLK1 (1/2 UI) verschoben. Somit wird die Granularität des Phasenschiebers
um 1/2 UI des schnellen Takts CLK1 verringert. Vorzugsweise kann
CLK20 invertiert werden, bevor es dem Eingang des in 3 gezeigten
Phasenschiebers zugeführt wird.
Dies kann hilfreich dabei sein, die Verzögerungen (einschließlich der
Vorbereitungs- und Haltezeiten und der Laufzeitverzögerungen
usw.) der Flipflops zu kompensieren. Der in 3 gezeigte
Phasenschieber kann vorzugsweise in der in 1 gezeigten
DIV-SH-Stufe verwendet werden. Der Phasenschieber kann angepasst
werden, wenn eine unterschiedliche Anzahl von phasenverschobenen
Taktableitungen benötigt
werden.
-
4 zeigt
eine vereinfachte schematische Darstellung von im Stand der Technik
verwendeten elektronischen Vorrichtungen für die Datenausgabe mit doppelter
Datenrate. In dem Speicherbuffer müssen die in die Speicherbausteine
zu schreibenden Daten für
die verschiedenen Speicherbufferanwendungen in einem Schreib-FIFO
gespeichert werden. Es gibt typischerweise zwei Bänke von Schreib-FIFOs
FF03 und FFE3, die durch den Kerntakt und den invertieren Kerntakt
betrieben werden. Die in FF03 und FFE3 gespeicherten Daten werden durch
den Multiplexer MUX abwechselnd dem Ausgangsanschluss (bzw. den
Ausgangsanschlüssen) D_DDR
mit einem Kerntakt CLKR, dessen Frequenz das Doppelte der Frequenz
der für
die FIFOs verwendeten Taktsignale CLKO und CLKE beträgt, zugeführt. Somit
erfordert der in 4 gezeigte Ansatz einen zusätzlichen
Takt mit der doppelten Frequenz der Kerntaktfrequenz und fügt eine
Latenzzeit hinzu.
-
5 zeigt
ein vereinfachtes Schaubild eines Flipflops gemäß einem Aspekt der vorliegenden Erfindung.
Wie in dem herkömmlichen
Ansatz werden dem Flipflop zwei komplementäre Taktsignale CLK_EVEN und
CLK_ODD zugeführt.
Des Weiteren werden dem Flipflop entsprechende Daten D_EVEN und
D_ODD zugeführt.
Das Flipflop oder eine zusätzliche
Schaltung erzeugt zwei sich nicht überlappende Taktsignale CLK3
und CLK4, wie durch die Signalverläufe unter dem Flipflop veranschaulicht
wird. Die Daten D_EVEN und D_ODD sind entweder in Bezug auf CLK3
oder CLK4 quellenzentriert.
-
6 zeigt
eine ausführlichere
schematische Darstellung des Flipflops gemäß 5. Die erste
Hauptstufe enthält
zwei Übertragungsgatter
T1 und T3, die durch entsprechende Taktsignale CKT1, CKT1Z getaktet
werden, wobei CKT1Z der in Bezug auf CKT1 invertierte Takt ist.
Des Weiteren enthält
die erste Hauptstufe die Inverter INV1 und den getakteten Inverter
INV1C. Die zweite Hauptstufe enthält die beiden Übertragungsgatter
T0, T2 und den Inverter INV2 sowie den getakteten Inverter INV2C.
Die Nebenstufe enthält
die Inverter INV3 und den getakteten Inverter INV3C. Die Nebenstufe
ist über
die Übertragungsgatter
T3 und T2 mit den Ausgängen
der beiden Hauptstufen gekoppelt. Jede der Hauptstufen empfängt entsprechende
Daten D1 und D0, von denen, wie in Bezug auf 5 erklärt, die
einen die geraden und die anderen die ungeraden Daten sind. Dementsprechend
speichert die erste Hauptstufe die über den Eingangsanschluss D1
empfangenen Daten, und die zweite Hauptstufe speichert die über D0 empfangenen
Daten. Die Taktsignale CKT1Z, CKT1, CKT0Z, CKTO werden, wie in 5 gezeigt,
von dem dritten und dem vierten Taktsignal CLK3 bzw. CLK4 abgeleitet.
Die Takterzeugungsschaltung zur Erzeugung der sich nicht überlappenden
Takte CLK3 und CLK4 ist nicht gezeigt. Des Weiteren wird durch den
Inverter INV4 eine invertierte Version des Taktsignals CLRZ erzeugt.
Die Inverter INV5–INV8
werden für
die Taktsignale CKT1, CKT1Z, CKT0, CKT0Z verwendet. Im Vergleich
zu der in 4 gezeigten Lösung nach
dem Stand der Technik spart das Flipflop gemäß der vorliegenden Erfindung
eine erhebliche Fläche
auf dem Chip ein. Jedes der in 5 gezeigten
Flipflops enthält
zumindest eine Haupt- und eine Nebenstufe. Die vorliegende Erfindung
stellt dieselbe oder sogar eine bessere Funktionalität in Bezug
auf Geschwindigkeit und Verlustleistung bereit und spart den Multiplexer,
die Steuerlogik und die Signale für den Multiplexer und eine
Nebenstufe ein.
-
7 zeigt
einen Tristate-Buffer gemäß der vorliegenden
Erfindung. Dementsprechend werden die Taktsignale CLK20, CLK21,
CLK22, CLK23 und CLK24 einer entsprechenden Anzahl von Tristate-Buffern
zugeführt,
die jeweils einen Auswahleingang SEL20, SEL21, SEL22, SEL23 bzw.
SEL24 aufweisen. Das Ausgangssignal CLK_OUT wird in Abhängigkeit
von den Auswahlsignalen aus den phasenverschobenen Takteingangssignalen CLK20–CLK24 ausgewählt. Die
Tristate-Buffer der Taktsignale, die nicht ausgewählt werden,
können
in einen hohen Impedanzzustand gesetzt werden. Der Tristate-Buffer
kann vorzugsweise in dem DIV-SH-Block gemäß 1 verwendet
werden. Der Tristate-Buffer kann für jede bestimmte Anzahl von phasenverschobenen
Ableitungen der Taktsignale angepasst werden.