PatentDe  


Dokumentenidentifikation DE10018988B4 06.07.2006
Titel Hochgeschwindigkeits-Pipelinevorrichtung und Verfahren zum Erzeugen von Steuersignalen dafür
Anmelder Samsung Electronics Co., Ltd., Suwon, Kyonggi, KR
Erfinder Nam, Kyung Woo, Seoul/Soul, KR
Vertreter Viering, Jentschura & Partner, 80538 München
DE-Anmeldedatum 17.04.2000
DE-Aktenzeichen 10018988
Offenlegungstag 22.03.2001
Veröffentlichungstag der Patenterteilung 06.07.2006
Veröffentlichungstag im Patentblatt 06.07.2006
IPC-Hauptklasse G11C 11/407(2006.01)A, F, I, 20060123, B, H, DE
IPC-Nebenklasse G11C 11/4076(2006.01)A, L, I, 20060123, B, H, DE   

Beschreibung[de]

Die Erfindung betrifft eine Daten-Pipelinevorrichtung sowie Verfahren zum Erzeugen von Steuersignalen für Daten-Pipelines.

Herkömmlicherweise weist ein synchroner dynamischer Speicher mit beliebiger Zugriffsart (Synchronous Dynamic Random Access Memory, SDRAM) eine Daten-Pipeline auf, welche von einer Mehrzahl von Registern in Stufen unterteilt ist. Die Zugriffszeit oder totale Übertragungszeit der Daten-Pipeline bedingt typischerweise die Zugriffszeit des SDRAM. Daher hängt die Zugriffszeit von dem Zeitverlauf der Pipeline-Steuersignale ab, welche die Pipeline-Register betätigen. Bei der herkömmlichen Struktur erzeugt ein interner Pipeline-Steuersignalgenerator die Pipeline-Steuersignale aus einem Referenz-Taktsignal. Typischerweise kann die Daten-Pipeline nicht in Stufen gleicher Übertragungszeiten unterteilt werden. Daher weisen das Referenz-Taktsignal und die Pipeline-Steuersignale eine Periode auf, welche länger ist, als die längste Übertragungszeit einer beliebigen Stufe der Daten-Pipeline.

Der Pipeline-Steuersignalgenerator erzeugt die Pipeline-Steuersignale mittels Verzögerungsschaltkreisen, welche jeweils eine unterschiedliche Verzögerungszeit aufweisen. Die Verzögerungszeit jedes Verzögerungsschaltkreises weist Variationsgrenzen für den Zeitverlauf der Pipeline-Steuersignale auf. Die Grenzen berücksichtigen erwartete Variationen der Betriebstemperatur und der Versorgungsspannung. Außerdem ist die Grenze in jeder Stufe eine Akkumulation der Grenzen vorheriger Stufen, da jede der folgenden Stufen der Daten-Pipeline an das zuvor abgelaufene angepaßt sein muß. Die akkumulierten Grenzen erhöhen die Verzögerung der Daten-Pipeline und verringern die Leistung bei einer Anwendung, wie beispielsweise in einem SDRAM.

In US 3 959 781 wird ein Direktzugriffsspeichersystem offenbart, bei welchem eine dynamische Speicherung verwendet wird, wobei jede Zelle ein einzelnes aktives Element aufweist. Der Speicher verwendet MOS-Technologie und wird auf einem Silizium-Substrat angeordnet.

Aus US 5 815 462 sind eine synchrone Halbleiter-Speichervorrichtung und ein synchrones Speichermodul bekannt, bei welchen ein erstes Taktsignal zum Steuern der Eingabe eines externen Signals und zum Steuern des internen Betriebs sowie ein zweites Taktsignal zum Steuern der Datenausgabe an separate Taktsignal-Eingangsknoten angelegt werden.

Erfindungsgemäß werden eine Hochgeschwindigkeits-Pipelinevorrichtung sowie Verfahren zum Erzeugen von Steuersignalen für Daten-Pipelines geschaffen. Insbesondere können bevorzugte Ausführungsformen der Erfindung die erforderlichen Grenzen bei Mehrfach-Phasen-Taktsignalen durch kaskadiertes Erzeugen der Mehrfach-Phasen-Taktsignalen minimieren.

Eine Vorrichtung gemäß einer bevorzugten Ausführungsform der Erfindung weist n Daten-Pipeline-Stufen mit entsprechenden Übertragungszeiten (T1, ..., Tn) auf. Jede Übertragungszeit T1, ..., Tn ist kürzer als die Periode P eines Referenz-Taktsignals. Mindestens eine der Übertragungszeiten weicht von einer anderen der Übertragungszeiten ab. Die Vorrichtung weist n (n ist eine natürliche Zahl) Datenpfad-Schaltkreise oder Stufen, n Register, und einen Steuersignal-Erzeugungsschaltkreis auf. Die Datenpfad-Schaltkreise sind in Kaskade zwischen einen Eingangsanschluß und einen Ausgangsanschluß geschaltet. Die Register sind an die Eingangsanschlüsse entsprechender Datenpfad-Schaltkreise geschaltet und führen von einer vorhergehenden Stufe oder dem Eingangsanschluß kommende Daten zu. Der Steuersignal-Erzeugungsschaltkreis erzeugt ein erstes Pipeline-Steuersignal in Antwort auf das Referenz-Taktsignal sowie andere Pipeline-Steuersignale aufeinanderfolgend auf andere Pipeline-Steuersignale. Der Steuersignal-Erzeugungsschaltkreis versieht die n Pipeline-Register mit den n Pipeline-Steuersignalen. Daher ist die gesamte Übertragungszeit der Daten von dem Eingangsanschluß zu dem Ausgangsanschluß im wesentlichen gleich der Summe der einzelnen Übertragungszeiten.

Nach einer bevorzugten Ausführungsform der Erfindung weist der Steuersignal-Erzeugungsschaltkreis einen ersten Impulsgenerator und einen zweiten Impulsgenerator auf. Der erste Impulsgenerator erzeugt ein (n)-tes Pipeline-Steuersignal, welches relativ zu dem Referenz-Taktsignal verzögert ist und der zweite Impulsgenerator erzeugt ein (n – 1)-tes Pipeline-Steuersignal durch Verzögern des (n)-ten Pipeline-Steuersignals. Der zweite Impulsgenerator weist typischerweise einen damit verbundenen Verzögerungsschaltkreis auf, welcher die Verzögerung des (n–1)-ten Pipeline-Steuersignals steuert. Zusätzliche Impulsgeneratoren und Verzögerungsschaltkreise können in absteigender Reihenfolge und in Kaskade angeschlossen sein, um weitere Pipeline-Steuersignale durch Verzögern anderer Pipeline-Steuersignale zu erzeugen.

Nach einer anderen bevorzugten Ausführungsform der Erfindung weist der Steuersignal-Erzeugungsschaltkreis einen ersten Impulsgenerator auf, welcher das Referenz-Taktsignal eingibt und ein (n)-tes Pipeline-Steuersignal mit Pulsen einer Pulsbreite w1 erzeugt. Ein zweiter Impulsgenerator erzeugt eine (n – 1)-tes Pipeline-Steuersignal mit Pulsen mit einer Pulsbreite w2 in Reaktion auf fallende Flanken der aktiven Bereiche des (n)-ten Pipeline-Steuersignals.

Ein Verfahren nach einer bevorzugten Ausführungsform der Erfindung weist Erzeugen eines Pipeline-Steuersignals mit Impulsen, welche relativ zu Übergängen in einem Referenzsignal verzögert sind sowie Erzeugen anderer Pipeline-Steuersignale durch Verzögern anderer Pipeline-Steuersignale auf. Das Verfahren kann außerdem Erzeugen einer Mehrzahl von Pipeline-Steuersignalen aufweisen, wobei jedes Pipeline-Steuersignal durch Verzögern eines anderen Pipeline-Steuersignals erzeugt wird. Aktive Bereiche jedes Pipeline-Steuersignals können entweder mit den steigenden oder den fallenden Flanken der aktiven Bereiche anderer der Steuersignale synchronisiert werden.

Die Erfindung wird nachfolgend anhand bevorzugter Ausführungsformen unter Bezugnahme auf die Zeichnung näher erläutert. In der Zeichnung zeigen:

1 ein Blockschaltbild, aus welchem eine drei-stufige Pipeline-Vorrichtung mit Pipeline-Registern ersichtlich ist, welche Eingangs- und Ausgangs-Latches aufweisen,

2 ein Zeitverlaufs-Diagramm, aus welchem der Betrieb der Pipeline-Vorrichtung aus 1 ersichtlich ist, wenn jede Stufe der Pipeline die gleiche Übertragungszeit aufweist,

3 ein Zeitverlaufs-Diagramm, aus welchem der Betrieb der Pipeline-Vorrichtung aus 1 ersichtlich ist, wenn die Stufen unterschiedliche Übertragungszeiten aufweisen,

4 ein Schaltbild, aus welchem ein Steuersignal-Erzeugungsschaltkreis ersichtlich ist, welcher Pipeline-Steuersignale direkt aus einem Referenz-Taktsignal erzeugt,

5 ein Zeitverlaufs-Diagramm, aus welchem der Betrieb des Steuersignal-Erzeugungsschaltkreises aus 4 ersichtlich ist,

6 ein Schaltbild, aus welchem ein Steuersignal-Erzeugungsschaltkreis nach einer bevorzugten Ausführungsform der Erfindung ersichtlich ist,

7 ein Zeitverlaufs-Diagramm, aus welchem der Betrieb des Steuersignal-Erzeugungsschaltkreises aus 6 ersichtlich ist,

8 ein Blockschaltbild, aus welchem eine drei-stufige Pipeline-Vorrichtung ersichtlich ist, welche Pipeline-Register mit Eingangs-Latches aufweist,

9 ein Zeitablauf-Diagramm, aus welchem der Betrieb der Pipeline-Vorrichtung aus 8 ersichtlich ist, wenn jede Stufe eine unterschiedliche Übertragungszeit aufweist,

10 ein Schaltbild einer bevorzugten Ausführungsform des Steuersignal-Erzeugungsschaltkreises aus 8,

11 ein Zeitverlaufs-Diagramm, aus welchem der Betrieb des Steuersignal-Erzeugungsschaltkreises aus 8 ersichtlich ist,

12 ein Schaltbild, aus welchem eine andere bevorzugte Ausführungsform des Steuersignal-Erzeugungsschaltkreis aus 8 ersichtlich ist, und

13 ein Zeitverlaufs-Diagramm, aus welchem der Betrieb des Steuersignal-Erzeugungsschaltkreises aus 12 ersichtlich ist.

Aus 1 ist eine Pipeline-Vorrichtung ersichtlich, welche eine drei-stufige Daten-Pipeline zwischen einem Eingangsanschluß (einer Speicherzelle 10) und einem Ausgangsanschluß 50 aufweist. Bei der beispielhaften Ausführungsform ist die Pipeline in einem SDRAM ausgebildet und der Eingangsanschluß ist mit einer Speicherzelle 10 verbunden und empfängt Datensignale von dieser. Der Ausgangsanschluß stellt ein Ausgangs-Datensignal bereit, nachdem dieses durch die Daten-Pipeline verarbeitet worden ist. Die Pipeline-Register 22, 32 und 42 sind an Eingangs-Bereichen der zugehörigen Datenpfade oder Stufen 20, 30 bzw. 40 angeordnet. Jeder Datenpfad 20, 30 oder 40 weist logische oder Übertragungs-Leitungen auf, entlang welcher ein eingehendes Datensignal von den zugehörigen Pipeline-Registern 22, 32 oder 42 verarbeitet oder übertragen wird. Wenn sich das Eingangs-Datensignal verändert, wird das Ausgangs-Datensignal von den Datenpfaden 20, 30 oder 40 nach einer Übertragungszeit T1, T2 oder T3, welche von der Logik in dem Datenpfad oder von der Länge der Übertragungsleitungen abhängt, gültig.

Die Pipeline-Register 22, 32 und 42 weisen Eingangs-Latches 22a, 32a und 42a und Ausgangs-Latches 22b, 32b und 42b auf. Jedes Eingangs-Latch 22a, 32a und 42a weist Invertierer INV1 bis INV3 und ein Übertragungsgatter TG1 auf. Jedes Ausgangs-Latch 22b, 32b und 42b weist Invertierer INV4 und INV5 und ein Übertragungsgatter TG2 auf.

Die Pipeline-Register 22, 32 und 42 empfangen entsprechende Pipeline-Steuersignale (auch als Taktsignale bezeichnet) PCLK1, PCLK2 und PCLK3. Mit fallenden Flanken der entsprechenden Taktsignale PCLK1, PCLK2 oder PCLK3 wird jedes Transfergatter TG1 eingeschaltet und jedes Transfergatter TG2 ausgeschaltet. Dementsprechend tritt ein Datensignal von einer vorhergehenden Stufe oder der Speicherzelle 10 durch das Transfergatter TG1 und wird durch den Inverter INV2 invertiert. Jedoch erhalten die Inverter INV4 und INV5 ein zuvor zugeführtes Ausgangssignal und führen dieses dem entsprechenden Datenpfad 20, 30 oder 40 zu. An steigenden Flanken des entsprechenden Taktsignals PCLK1, PCLK2 oder PCLK3 wird das Transfergatter TG1 ausgeschaltet und die Inverter INV1 und INV3 erhalten den neuen Eingangsdatenwert und führen diesen dem Transfergatter TG2 als invertiertes Datensignal zu, welches den neuen Datenwert repräsentiert. Das Transfergatter TG2 wird mit der steigenden Flanke des entsprechenden Taktsignals eingeschaltet, so daß das Ausgangs-Latch 22b, 32b oder 42b das Datensignal von dem Eingangs-Latch 22a, 32a oder 42a invertiert und das neue Datensignal an den Datenpfad 20, 30 oder 40 ausgibt.

Aus 2 ist der Zeitverlauf der Taktsignale PCLK1, PCLK2 und PCLK3 und der Ausgangsdatensignale der Datenpfade 20, 30 und 40 ersichtlich, falls die Übertragungszeiten T1, T2 und T3 der entsprechenden Datenpfade 20, 30 und 40 alle gleich sind (T = T1 = T2 = T3). In diesem Fall ist die Verzögerung der Pipeline-Vorrichtung (das heißt die Zeit zwischen dem Datenausgang von der Speicherzelle 10 und den ersten gültigen Daten an dem Ausgangsanschluß 50) 3T.

Aus 3 ist der Zeitverlauf der Taktsignale PCLK1, PCLK2 und PCLK3 und der Ausgangsdatensignale der Datenpfade 20, 30 und 40 ersichtlich, falls die Übertragungszeit T1 länger als die Übertragungszeiten T2 und T3 ist (T1 > T2 = T3). In dem aus 3 ersichtlichen Beispiel ist die Verzögerung der Pipeline-Vorrichtung von den Pipeline-Steuersignalen abhängig. Mit den Steuersignalen PCLK1, PCLK2 und PCLK3, welche in Phase sind, beträgt die Verzögerung 2T1 + T3. Insbesondere beginnt das Taktsignal PCLK2 mit einem Datenwert durch den Datenpfad 30 nach einer Zeit T1, welche zum Übertragen des Datenwerts auf dem Datenpfad 20 erforderlich ist. Das Taktsignal PCLK3', welches in Phase mit den Taktsignalen PCLK1 und PCLK2 ist, beginnt mit einem Datenwert durch den Datenpfad 40, nach einer vollen Periode P (gleich der Zeit T1) und der früheste Zeitpunkt, zu welchem Daten gültig an dem Ausgangsanschluß 50 vorliegen ist eine Zeit T3 später. Die Übertragungszeit des Datenpfades 30 beträgt T2, und ist kürzer als die Periode P des Taktsignals, und die Daten sind an dem Eingangs-Latch des Registers 42 vor der steigenden Flanke des dritten Taktsignals PCLK3' gültig.

Das Taktsignal PCLK3 weist eine Phase auf, welche einem Taktsignal PCL3' um eine Zeit x voreilt, um ein Ausgangs-Latch nach der Zeit T2 freizugeben. Dementsprechend ergibt sich die Verzögerung mit den Taktsignalen PCLK1, PCLK2 und PCLK3', wie aus 3 ersichtlich, der Pipeline-Vorrichtung zu T1 + T2 + T3, welches die Summe der Übertragungszeiten der Datenpfade 20, 30 und 40 ist. Daher verringert das Steuern des Pipeline-Registers 42 mit dem Taktsignal PCLK3 die Verzögerung der Pipeline-Vorrichtung.

Aus 4 ist ein Schaltbild einer bevorzugten Ausführungsform des Steuersignal-Erzeugungsschaltkreises 60 aus 1 ersichtlich. Wie aus 4 ersichtlich, weist der Steuersignal-Erzeugungsschaltkreis 60 einen Verzögerungsschaltkreis 62, einen ersten Impulsgenerator 64 und einen zweiten Impulsgenerator 66 auf. Der Verzögerungsschaltkreis 62 weist vier Inverter INVA auf, welche in Kaskade verschaltet sind. Jeder Inverter INVA weist einen über einen Pull-Up-Widerstand RPU mit einer Versorgungsspannung VCC verbundenen Spannungseingang und einen Masseanschluß auf, welcher über einen Pull-Down-Widerstand RPD mit einer Erdspannung VSS verbunden ist. Der Verzögerungsschaltkreis 62 weist eine Verzögerungszeit X auf.

Die Impulsgeneratoren 64 und 66 sind im wesentlichen identisch aufgebaut und sehen eine Verzögerungszeit da vor. Jeder der Impulsgeneratoren 64 und 66 weist drei Inverter INVB auf, welche in Kaskade verschaltet sind, und eine UND-Logik mit einem NAND-Gatter NAND1 und einem Inverter INVC. In Reaktion auf steigende Flanken entsprechend eingehender Signale erzeugen die Impulsgeneratoren Signale mit Impulsen, deren Pulsbreite gleich der Verzögerungszeit der drei Inverter INVB ist, welche in Kaskade verschaltet sind.

Aus 5 ist ein Zeitverlauf-Diagramm ersichtlich, aus welchem der Betieb des Steuersignal-Erzeugungsschaltkreises 60 aus 4 ersichtlich ist. Insbesondere empfängt der Verzögerungsschaltkreis 62 ein externes Referenz-Taktsignal EXTCLK und verzögert dieses um die Verzögerungszeit X. Der Impulsgenerator 64 empfängt das verzögerte Referenz-Taktsignal EXTCLK und erzeugt Impulse der Pipeline-Steuersignale PCLK1 und PCLK2. Die Impulse sind synchron, jedoch um eine Zeit x + da relativ zu der steigenden Flanke des Referenz-Taktsignals EXTCLK verzögert.

Der Impulsgenerator 66 empfängt das externe Referenz-Taktsignal EXTCLK und erzeugt das Pipeline-Steuersignal PCLK3 aus dem Referenz-Taktsignal EXTCLK. Impulse des Taktsignals PCKL3 werden um eine Zeit da von der steigenden Flanke des Referenz-Taktsignals EXTCLK verzögert. Dementsprechend eilt die Phase des Pipeline-Steuersignals PCLK3 den Pipeline-Steuersignalen PCLK1 und PCLK2 um die Verzögerungszeit X vor, da das Steuersignal PCLK3 nicht durch den Verzögerungsschaltkreis 62 geleitet wird. (Alternativ hierzu können die Pipeline-Steuersignale PCLK1 und PCLK2 dem Steuersignal PCLK3 um die Zeit P-X voreilen, wobei die Periode P des Referenz-Taktsignals EXT im wesentlichen gleich der längsten Übertragungszeit T1 ist).

Für den Betrieb der Pipeline-Vorrichtung nach den Zeitverläufen aus den 3 und 5 muß die Zeit P-X mindestens die Zeit T2 sein. Jedoch sind die Verzögerungen X und da Variationen aufgrund von Unterschieden in der Betriebsspannung, der Versorgungsspannung und dem Aufbau der Generatoren 64 und 66 unterworfen. Insbesondere ist die in der Verzögerung X vorgesehene Grenze, welche sicherstellt, daß P-X mindestens so lang wie die Übertragungszeit T2 ist, Unterschieden zwischen den Impulsgeneratoren 64 und 66 ausgesetzt. Daher erhöht die erforderliche Grenze der Verzögerungszeit X die Verzögerung der Pipeline-Vorrichtung.

Aus 6 ist ein Schaltbild einer anderen bevorzugten Ausführungsform des Steuersignal-Erzeugungsschaltkreises ersichtlich. Die aus 6 ersichtliche Ausführungsform weist einen ersten Impulserzeugungsschaltkreis 72 und einen zweiten Impulserzeugungsschaltkreis 74 auf.

Der erste Impulserzeugungsschaltkreis 72 ist ein Impulsgenerator, welcher das externe Taktsignal EXTCLK empfängt und das Taktsignal PCLK3 aus 7 erzeugt. Wie aus 7 ersichtlich, weist das Taktsignal PCLK3 von dem Impulserzeugungsschaltkreis 72 Pulse mit einer vorbestimmten Pulsbreite auf, welche synchronisiert, jedoch um eine Zeit da relativ zu der steigenden Flanke des Bezug-Taktsignals EXTCLK verzögert sind.

Der zweite Impulserzeugungsschaltkreis 74 weist einen Verzögerungsschaltkreis 74a und einen Impulsgenerator 74b auf. Der Verzögerungsschaltkreis 74a empfängt das Taktsignal PCLK3 und verzögert das Signal PCLK3 um eine Verzögerungszeit X – da, wobei da die Verzögerungszeit des Impulsgenerators 74b ist. Der Impulsgenerator 74b erzeugt die Taktsignale PCLK1 und PCLK2 aus 7, welche Impulse aufweisen, die mit den steigenden Flanken von Impulsen des verzögerten Taktsignals PCLK3 synchron, jedoch um die Zeit X relativ zu diesen steigenden Flanken verzögert sind. Dementsprechend eilt das Taktsignal PCLK3 den Taktsignalen PCLK1 und PCLK2 um die Verzögerungszeit X voraus. Alternativ hierzu können auch die Taktsignale PCLK1 und PCLK2 dem Taktsignal PCLK3 um die Zeit P-X vorauseilen.

Nach einem Aspekt der Erfindung ist die Zeit P-X, welche für die Übertragung der Daten über den Datenpfad 30 zur Verfügung steht, unabhänig von Unterschieden zwischen den Impulsgeneratoren 72 und 74b. Daher kann die Grenze, welche bei der Verzögerung X zum Berücksichtigen von Unterschieden in Temperatur, Versorgungsspannung und Struktur vorgesehen ist, reduziert werden. Daher kann die Verzögerung X maximiert werden, so daß die Zeit P-X die kürzeste Zeit für die Ausgabe der frühest möglichen gültigen Daten an den Ausgangsanschluß 50 ist.

Durch das oben beschriebene wird eine drei-Stufen Pipeline-Vorrichtung beschrieben. Die Ausführungsformen der Erfindung sind jedoch nicht auf die dreistufigen Vorrichtungen beschränkt. Nach einer bevorzugten Ausführungsform der Erfindung weist eine n-stufige Steuersignal-Erzeugungsschaltkreis eine (n)-te Stufe und eine Mehrzahl von Stufen, welche von der (n)-ten Stufe kaskadiert absteigend an diese angeschlossen sind. Die (n)-te Stufe weist einen Impulsgenerator auf, welcher das Referenz-Taktsignal empfängt und ein (n)-tes Pipeline-Steuersignal erzeugt, welches um eine Verzögerungszeit dn relativ zu dem Referenz-Taktsignal verzögert ist. Jede der anderen Stufen weist einen Verzögerungsschaltkreis und einen Impulsgenerator auf. Die (i-1)-te Stufe empfängt das (i)-te Pipeline-Steuersignal von der (i)-ten Stufe und erzeugt das (i – 1)-te Pipeline-Steuersignal durch Verzögern des (i)-ten Steuersignals.

Die Verzögerungszeit d1 läßt sich durch folgende Formel beschreiben:

Wobei dn die Verzögerungszeit des Referenz-Taktsignals des (n)-ten Pipeline-Steuersignals ist, P die Periode des Referenz-Taktsignals ist und T1 die Übertragungszeiten der n Stufen der Pipeline-Vorrichtung sind.

Aus 8 ist eine andere bevorzugte Ausführungsform einer Pipeline-Vorrichtung mit einem Datenpfad ersichtlich, welcher in drei Stufen zwischen einem Eingangsanschluß und einem Ausgangsanschluß 150 unterteilt ist. Die Datenpipeline wird beispielsweise bei einem SDRAM verwendet und eine Speicherzelle 110 legt ein Datensignal an den Eingangsanschluß an, wenn sie gelesen wird. Die Datenpfade 120, 130 und 140 weisen Übertragungszeiten T1, T2 und T3 auf, welche voneinander unterschiedlich sind. Die Pipeline-Register 122, 132 und 142 sind an Eingangsbereichen der Datenpfade 120, 130 bzw. 140 angeordnet. Bei der Ausführungsform nach 8 sind die Pipeline-Register 122, 132 und 142 als Latches ausgebildet.

Jedes der Latches weist Inverter INV1 bis INV3 und ein Übertragungsgatter TG1 auf.

Die Pipeline-Register 122, 132 und 142 empfangen entsprechende Pipeline-Steuersignale PCLK1, PCLK2 und PCLK3 von dem Steuersignalgeneratorschaltkreis 160.

Wie aus 9 ersichtlich, wird ein Transfergatter TG1 in dem ersten Pipelineregister 122 durch eine erste steigende Flanke des Taktsignals PCLK1 eingeschaltet und das erste Pipeline-Register 122 ist transparent, während das Taktsignal PCLK1 in dem logischen High-Zustand verbleibt. Bei der fallenden Flanke des Taktsignals PCLK1 schaltet das Transfergatter TG1 aus und das erste Pipeline-Register 122 hält einen Datenwert D1 und führt diesen zu. Der erste Datenpfad 120 überträgt den Datenwert D1, welcher für den nächsten Zustand 130 nach der Übertragungszeit T1 gültig wird. Das zweite Pipeline-Register 132 schaltet ein Transfergatter TG1 bei einer steigenden Flanke des Taktsignals PCLK2 ein, bevor der Datenwert D1 von der vorhergehenden Stufe gültig ist. Das zweite Pipeline-Register 132 überträgt den gültigen Datenwert D1 und führt diesen nach einer Zeit T1 zu, wenn eine fallende Flanke des Taktsignals PCLK2 das Übertragungsgatter TG2 in dem zweiten Pipeline-Register 132 ausschaltet. Eine steigende Flanke des Taktsignals PCLK3 schaltet das Transfergatter TG1 in dem dritten Pipeline-Register 142 mindestens eine Zeit T2 nach der steigenden Flanke des Taktsignals PCLK2 ein. Die Zeit zwischen den steigenden Flanken des Taktsignals PCLK3 und der vorgehenden steigenden Flanke des Taktsignals PCLK2 ist um jene Zeitdauer, welche die steigende Flanke des Taktsignals PCLK2 dem Ende der ersten Übertragungszeit T1 vorauseilt, größer als T2. Daher ist der Datenwert D1 von dem Datenpfad 130 bei der steigenden Flanke des Taktsignals PCLK3 gültig. Eine fallende Flanke des Taktsignals PCLK3 schaltet das Übertragungsgatter TG1 in dem dritten Pipeline-Register 142 aus, so daß das dritte Pipeline-Register den gültigen Datenwert hält und diesen zuführt. Das Datensignal von dem Datenpfad 140 wird nach der Übertragungszeit T3 gültig.

Die gesamte Übertragungszeit beträgt T1 + T2 + T3. Dementsprechend können Daten innerhalb der kürzest möglichsten Zeit durch Steuern des ersten bis dritten Pipeline-Registers 122, 132 und 142 mit den Taktsignalen PCLK1, PCLK2 und PCLK3 mit voneinander unterschiedlicher Phase ausgegeben werden.

Aus 10 ist eine Ausführungsform des Steuersignal-Erzeugungsschaltkreises 160 ersichtlich, welcher einen Verzögerungsschaltkreis 162, einen ersten Impulsgenerator 164, einen Verzögerungsschaltkreis 166, einen zweiten Impulsgenerator 168 und einen dritten Impulsgenerator 170 aufweist.

Der Verzögerungsschaltkreis 162 weist vier Inverter INVA auf, welche kaskadiert verschaltet sind. Jeder Inverter INVA weist einen Versorgungsspannungsanschluß, welcher über einen Pull-Up-Widerstand RPU an eine Versorgungsspannung angeschlossen ist, und einen Masseanschluß auf, welcher über einen Pull-Down-Widerstand RPD an eine Erdspannung angeschlossen ist. Der Verzögerungsschaltkreis 162 weist eine Verzögerungszeit X + Y auf. Der Verzögerungsschaltkreis 166 weist zwei Inverter INVD auf, welche dieselbe Konfiguration, wie die Inverter INVA des Verzögerungsschaltkreises 162 aufweisen. Der Verzögerungsschaltkreis 166 weist eine Verzögerungszeit X auf.

Jeder der Impulsgeneratoren 164, 168 und 170 weist drei Inverter INVB auf, welche in Kaskade verschaltet sind und eine UND-Logik, welche ein NAND-Gatter und einen Inverter INVC aufweist. Jeder der Impulsgeneratoren 164, 168 und 170 weist dieselbe Verzögerungszeit da auf. In Reaktion auf eine steigende Flanke eines zugehörigen Eingangssignals erzeugt jeder Impulsgenerator 164, 168 oder 170 einen Impuls oder einen aktiven Bereich in dem zugehörigen Taktsignal PCLK1, PCLK2 oder PCLK3 mit einer Pulsbreite gleich einer Verzögerungszeit der drei Inverter INVB, welche in Kaskade verschaltet sind.

Das Taktsignal PCLK2 eilt dem Taktsignal PCLK1 um die Zeit Y voraus und das Taktsignal PCLK3 eilt dem Taktsignal PCLK2 um die Zeit X voraus.

Wie aus 11 ersichtlich verzögert der Verzögerungsschaltkreis 162 das eingegebene externe Taktsignal, welches das Referenz-Taktsignal EXTCLK ist, um ein Zeit X + Y und legt dann das verzögerte Referenz-Taktsignal an den Impulsgenerator 164 an. Der Impulsgenerator 164 erzeugt einen Impuls in dem Taktsignal PCLK1 nach einer weiteren Verzögerung um da synchron mit einer steigenden Flanke des Signals des Verzögerungsschaltkreis 162. Daher sind steigende Flanken des Taktsignals PCLK1 um x + y + da bezogen auf die steigenden Flanken des Referenz-Taktsignals EXTCLK verzögert.

Der Verzögerungsschaltkreis 166 verzögert ein eingegebenes externes Taktsignal, welches das Referenz-Taktsignal EXTCLK ist, um eine Zeit x und legt das verzögerte Referenz-Taktsignal an den Impulsgenerator 164 an. Der Impulsgenerator 164 erzeugt eine steigende Flanke des Taktsignals PCLK2, welches um eine Zeit da relativ zu einer steigenden Flanke des Referenz-Taktsignals EXTCLK weiter verzögert ist. Daher weist das Taktsignal PCLK2 steigende Flanken auf, welche um die Zeit x + da relativ zu den steigenden Flanken des eingegebenene Impulssignals verzögert sind.

Der Impulsgenerator 170 erzeugt steigende Flanken des Taktsignals PCLK3, welche um die Zeit da relativ zu den steigenden Flanken des eingegebenene externen Taktsignals EXTCLK verzögert sind.

Dementsprechend erzeugt der Steuersignal-Erzeugungsschaltkreis 160 jedes Steuersignal, das heißt die Taktsignale PCLK1, PCLK2 und PCLK3, direkt von einem externen Taktsignal EXTCLK.

Dementsprechend sind die zeitlichen Beziehungen der Taktsignale PCLK1, PCLK2 und PCLK3 zueinander unabhängig voneinander und Variationen aufgrund von Unterschieden der Elemente 162, 164, 166, 168, und 167 unterworfen. Die unterschiedlichen Beziehungen hinsichtlich der Zeitverläufe erfordern große Grenzen, welche Veränderungen in Temperatur und Versorgungsspannung berücksichtigen. Die erforderlichen Grenzen verursachen eine Verzögerung der gesamten Übertragungszeit. Dies verzögert die Ausgabezeit der Daten.

Aus 12 ist eine bevorzugte Ausführungsform des Steuersignal-Erzeugungsschaltkreises 160 ersichtlich, welche Impulserzeugungsschaltkreise 172, 174 und 176 aufweisen. Aus 13 sind die dazugehörigen Zeitverläufe der Taktsignale PCLK1, PCLK2 und PCLK3 ersichtlich, welche von dem Steuersignal-Erzeugungsschaltkreis 160 aus 12 ausgegeben werden.

Wie aus 12 ersichtlich weist jeder der Impuls-Erzeugungsschaltkreise 172, 174 und 176 drei Inverter INV auf, welche in Kaskade verschaltet sind, und eine UND-Logik, welche ein NAND-Gatter und einen Inverter INV aufweist. Jeder der Erzeugungsschaltkreise 172, 174 und 176 sieht eine identische Verzögerungszeit da vor. Der Impulserzeugungsschaltkreis 172 weist eine Pulsbreite w1 auf. Der Impulserzeugungsschaltkreis 174 weist eine Pulsbreite w2 auf. Die Pulsbreiten w1 und w2 sind abhängig von den Verzögerungen der entsprechenden Sätze mit jeweils drei Invertern, welche in Kaskade miteinander verschaltet sind.

Ein Inverter 173 ist zwischen den Impulserzeugungsschaltkreis 172 und den Impulserzeugungsschaltkreis 174 geschaltet. Ein Inverter 175 ist zwischen den Impulserzeugungsschaltkreis 174 und den Impulserzeugungsschaltkreis 176 geschaltet.

Der Impulserzeugungsschaltkreis 172 empfängt ein externes Taktsignal EXTCLK und erzeugt ein Taktsignal PCLK3, welches aktive Bereiche mit den Pulsbreiten w1 aufweist und um die Zeit da relativ zu dem externen Taktsignal verzögert ist. Das Taktsignal PCLK3 ist um eine Zeit d3 verzögert, welche da relativ zu dem externen Taktsignal EXTCLK entspricht.

Der Impulserzeugungsschaltkreis 174 empfängt von dem Inverter 173 eine invertierte Version des Taktsignals PCLK3 und erzeugt ein Taktsignal PCLK2. Der Impulserzeugungsschaltkreis 174 verzögert aktive Bereiche des Taktsignals PCLK2 relativ zu den aktiven Bereichen des Taktsignals PCLK3. Insbesondere ist jede steigende Flanke des Taktsignals PCLK2 mit einer fallenden Flanke des Taktsignals PCLK3 synchronisiert, jedoch um die Zeitdauer da relativ zu dieser verzögert. Daher ist das Taktsignal PCLK2 um eine Zeit X (oder w1 + da) relativ zu dem Taktsignal PCLK3 verzögert. Die Verzögerungszeit d2 des Taktsignal PCLK2 relativ zu dem Referenz-Taktsignal EXTCLK ist gleich 2da + w1.

Der Impulserzeugungsschaltkreis 176 empfängt von dem Inverter 175 eine invertierte Version des Taktsignals PCLK2 und erzeugt das Taktsignal PCLK1. Aktive Bereiche des Taktsignals PCLK1 werden relativ zu den aktiven Bereichen des Taktsignals PCLK2 verzögert. Insbesondere wird jede steigende Flande des Taktsignals PCLK1 relativ zu einer fallenden Flanke des Taktsignals PCLK2 synchronisiert, jedoch um die Zeitdauer da verzögert. Daher ist das Taktsignal PCLK1 um die Zeitdauer Y (oder w2 + da) relativ zu dem Taktsignal PCLK2 verzögert. Das Taktsignal PCLK1 ist relativ zu dem Taktsignal PCLK3 um die Zeitdauer X + Y (oder w1 + w2 + 2·da) verzögert. Die Verzögerung d1 des Taktsignals PCLK1 relativ zu dem Referenz-Taktsignal EXTCLK ist gleich 2da + w1 + w2.

Der aus 12 ersichtliche Steuersignal-Erzeugungsschaltkreis 160 erzeugt das Signal PCLK2 aus dem Signal PCLK3 und das Signal PCLK1 aus dem Signal aus dem PCLK2. Daher gleichen die Signale PCLK1 und PCLK2 automatisch Unterschiede im Signal PCLK3 aus, welche aufgrund von Schwankungen in Temperatur oder Versorgungsspannung verursacht werden könnten. Ähnlich hierzu gleicht das Signal PCLK1 automatisch Unterschiede im Signal PCLK2 aus. Bei der letztgenannten bevorzugten Ausführungsform der Erfindung kann durch Erzeugen von Pipeline-Steuersignalen in Kaskade die Verzögerung X und Y maximiert werden. Die Schaltkreiskonfiguration kann durch Einstellen eines Phasenwinkels unter Berücksichtigung einer Verzögerungszeit eines Verzögerungsschaltkreises vereinfacht werden.

Wie oben beschrieben erzeugt eine Mehrfach-Stufen-Pipeline-Vorrichtung Pipeline-Steuersignale aus dem Referenz-Taktsignal in jeder Stufe in einer absteigenden Reihenfolge in Kaskade, so daß der Phasenwinkel jeder Stufe maximiert sein kann. Dies ermöglicht, daß die frühesten Daten innerhalb der kürzesten der Zeit ausgegeben werden können. Dementsprechend kann eine Speichervorrichtung, welche die Erfindung verwendet, mit hoher Geschwindigkeit betrieben werden.


Anspruch[de]
  1. Pipeline-Vorrichtung, welche aufweist:

    n Datenpfad-Schaltkreise, welche in Kaskade zwischen einen Eingangsanschluss und einen Ausgangsanschluss angeschlossen sind, wobei die n Datenpfad-Schaltkreise Übertragungszeiten (T1, ..., Tn) aufweisen, wobei jede Übertragungszeit geringer oder gleich einer Periode (P) eines Referenz-Taktsignals ist, und mindestens eine der Übertragungszeiten von einer anderen der Übertragungszeiten abweicht,

    n Register, welche an entsprechenden Eingangsanschlüssen der n Datenpfad-Schaltkreise angeordnet sind, wobei jedes Register durch einen entsprechenden der Datenpfad-Schaltkreise geleitete Daten zuführt, und

    einen Steuersignal-Erzeugungsschaltkreis, welcher in Antwort auf das Referenz-Taktsignal n Pipeline-Steuersignale jeweils für die n Pipeline-Register erzeugt, wobei der Steuersignal-Erzeugungsschaltkreis mindestens eines der Pipeline-Steuersignale durch Verzögern eines anderen der n Pipeline-Steuersignale erzeugt.
  2. Pipeline-Vorrichtung nach Anspruch 1, wobei der Steuersignal-Erzeugungsschaltkreis aufweist:

    eine erste Stufe mit einem ersten Impulsgenerator, in welchen das Referenz-Taktsignal eingegeben wird, und welcher ein (n)-tes Pipeline-Steuersignal erzeugt, welches Impulse aufweist, die um eine Verzögerungszeit (dn) relativ zu den Übergängen in dem Referenz-Taktsignal verzögert sind, und

    eine zweite Stufe, welche an das entsprechende (n)-te Pipeline-Steuersignal der ersten Stufe angeschlossen ist, wobei die zweite Stufe einen zweiten Impulsgenerator aufweist, welcher ein (n – 1)-tes Pipeline-Steuersignal erzeugt, das um eine Verzögerungszeit (dn–1 – dn) relativ zu dem ersten Pipeline-Steuersignal verzögert ist.
  3. Pipeline-Vorrichtung nach Anspruch 2, wobei der Steuersignal-Erzeugungsschaltkreis weiter aufweist:

    n – 2 Stufen, welche in Reihe mit den ersten oder zweiten Stufen geschaltet sind, wobei für i zwischen n – 2 und 1 eine (i)-te Stufe ein (i + 1)-tes Pipeline-Steuersignal von einer vorhergehenden Stufe empfängt und ein (i)-tes Pipeline-Steuersignal durch Verzögern des (i + 1)-ten Pipeline-Steuersignals erzeugt.
  4. Pipeline-Vorrichtung nach Anspruch 3, wobei die Verzögerungszeit (dn) sich zu den Übertragungszeiten gemäß nachfolgender Formel verhält:
    wobei d1 eine Verzögerungszeit eines Referenz-Taktsignals eines ersten Pipeline-Steuersignals ist und P eine Periode des Referenz-Taktsignals ist.
  5. Pipeline-Vorrichtung nach Anspruch 2, wobei der erste Impulsgenerator aufweist:

    einen Verzögerungsschaltkreis, von welchem das Referenz-Taktsignal für eine vorbestimmte Zeitdauer verzögerbar ist, und

    einen Logik-Schaltkreis, von welchem das Referenz-Taktsignal eingebbar und kombinierbar ist und ein verzögertes Signal von dem Verzögerungsschaltkreis ausgebbar ist.
  6. Pipeline-Vorrichtung nach Anspruch 2, wobei der zweite Impulsgenerator aufweist:

    einen ersten Verzögerungsschaltkreis, von welchem das (n)-te Pipeline-Steuersignal eingebbar und verzögerbar ist,

    einen zweiten Verzögerungsschaltkreis, von welchem ein Signal von dem ersten Verzögerungsschaltkreis eingebbar und verzögerbar ist, und

    einen Logik-Schaltkreis, von welchem das Signal von dem ersten Verzögerungsschaltkreis und ein Signal von dem zweiten Verzögerungsschaltkreis eingebbar und kombinierbar sind.
  7. Pipeline-Vorrichtung nach Anspruch 1, wobei der Steuersignal-Erzeugungsschaltkreis aufweist:

    eine erste Stufe mit einem ersten Impulsgenerator, von welchem ein Referenz-Taktsignal eingebbar ist und ein (n)-tes Pipeline-Steuersignal mit Pulsen mit einer Pulsbreite (w1) erzeugbar ist, und

    eine zweite Stufe mit einem zweiten Impulsgenerator, von welchem ein zweites Pipeline-Steuersignal mit Pulsen, mit einer Pulsbreite (w2), in Antwort auf fallende Flanken der Impulse des (n)-ten Pipeline-Steuersignals erzeugbar ist.
  8. Verfahren zum Erzeugen von Steuersignalen einer Pipeline-Vorrichtung mit folgenden Schritten:

    Erzeugen eines (n)-ten Pipeline-Steuersignals in Antwort auf ein Referenz-Taktsignal,

    Erzeugen von n – 1 Pipeline-Steuersignalen in Kaskade aus vorausgehenden Pipeline-Steuersignalen, und

    Versorgen von n Pipeline-Registern mit den n Pipeline-Steuersignalen, welche die (n)-ten Pipeline-Steuersignale und die (n – 1)-ten Pipeline-Steuersignale aufweisen, wobei die Pipeline-Steuersignale voneinander abhängen.
  9. Verfahren zum Erzeugen von Steuersignalen einer Pipeline-Vorrichtung, mit folgenden Schritten:

    Erzeugen eines (n)-ten Pipeline-Steuersignals mit einer Pulsbreite wn in Reaktion auf einen Referenz-Taktsignal,

    Erzeugen von n – 1 Pipeline-Steuersignalen in Kaskade von vorhergehenden Pipeline-Steuersignalen, wobei für i zwischen n – 1 und 1 ein (i)-tes Pipeline-Steuersignal aktive Bereiche einer Pulsbreite w(i) aufweist, welche in Reaktion auf fallende Flanken von aktiven Bereichen eines (i + 1)-ten Pipeline-Steuersignals erzeugt werden, und

    Versorgen von n Pipeline-Registern mit n Pipeline-Steuersignalen.
Es folgen 13 Blatt Zeichnungen






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com