DE102004009958B3 - Schaltungsanordnung zur Latenzregelung - Google Patents

Schaltungsanordnung zur Latenzregelung Download PDF

Info

Publication number
DE102004009958B3
DE102004009958B3 DE102004009958A DE102004009958A DE102004009958B3 DE 102004009958 B3 DE102004009958 B3 DE 102004009958B3 DE 102004009958 A DE102004009958 A DE 102004009958A DE 102004009958 A DE102004009958 A DE 102004009958A DE 102004009958 B3 DE102004009958 B3 DE 102004009958B3
Authority
DE
Germany
Prior art keywords
data
data path
clock
latency
circuit arrangement
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.)
Expired - Fee Related
Application number
DE102004009958A
Other languages
English (en)
Inventor
Rex Kho
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
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 Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE102004009958A priority Critical patent/DE102004009958B3/de
Priority to US11/069,789 priority patent/US7102940B2/en
Application granted granted Critical
Publication of DE102004009958B3 publication Critical patent/DE102004009958B3/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4096Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4076Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1039Read-write modes for single port memories, i.e. having either a random port or a serial port using pipelining techniques, i.e. using latches between functional memory parts, e.g. row/column decoders, I/O buffers, sense amplifiers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1069I/O lines read out arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2272Latency related aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Dram (AREA)

Abstract

Gegenstand der Erfindung ist eine Schlatungsanordnung zur Regelung einer Latenz, deren Sollwert eine ganze Zahl n von Perioden T eines Bezugstaktes der Frequenz f¶c¶ ist, die ab einem Datenübertragungsbefehl verstreichen sollen, bis die aus einer Datenquelle (10) zu übertragenden Daten am Ende (40) des zu durchlaufenden Datenpfades erscheinen, der eine Kette von Übertragungselementen mit festen Laufzeiten enthält. Die Frequenz f¶c¶ soll in einem Bereich von 1/T¶max¶ bis 1/T¶min¶ einstellbar sein, mit T¶min¶ mindestens gleich жf¶/n und жf¶ gleich der Summe der festen Laufzeiten im Datenpfad. Erfindungsgemäß ist der Datenpfad in n aufeinander folgende Abschnitte (S1...n) unterteilt, deren jeder an seinem Eingang ein taktgesteuertes Abtastelement (FF#1...n) zur Übernahme der zu übertragenden Daten enthält und eine Durchlaufzeit hat, die deutlich kürzer als T¶min¶ ist, wobei die durchlaufzeit жn¶ des letzten Abschnittes (Sn) auch deutlich größer als null ist. Die Abtastelemente werden mit einer um T-жn¶) verzögerten Version des Bezugstaktes taktgesteuert.

Description

  • Die Erfindung bezieht sich allgemein auf die taktgesteuerte Übertragung von Daten und betrifft speziell eine Schaltungsanordnung zur Regelung der Latenzzeit der Datenübertragung, gemäß dem Oberbegriff des Patentanspruchs 1. Bevorzugtes, jedoch nicht ausschließliches Anwendungsgebiet der Erfindung ist die Übertragung gelesener Speicherinformation innerhalb eines Speicherbausteins vom Ausgangspuffer einer Speicherbank zum Datenausgang des Bausteins.
  • In Datenverarbeitungssystemen wird gewöhnlich ein Bezugstakt als Zeitnormal zur Steuerung der Betriebsvorgänge verwendet. Dementsprechend werden die Zeitmarken, die in einer Steuereinrichtung zur Koordinierung des Betriebsablaufs gesetzt werden, nicht als Einheiten der absoluten Zeit (wie z.B. Mikro- oder Nanosekunden) definiert, sondern als Einheiten des Bezugstaktes, d.h. als Anzahl von Taktperioden. Somit können Variationen der Taktfrequenz zugelassen werden, ohne die Spezifikationen der Steuereinrichtung ändern zu müssen. Zu diesen Spezifikationen gehört auch die Vorgabe der sogenannten "Latenz" für den Vorgang einer Datenübertragung über einen Datenpfad. Diese Latenz wird vorgegeben als eine ganze Anzahl "n" von Taktperioden, die ab dem Zeitpunkt eines Übertragungsbefehls verstreichen sollen, bis das zu übertragende Datum am Ende des Datenpfades erscheint.
  • Es ist aber zu berücksichtigen, dass praktisch jeder Datenpfad Elemente enthält, die aus physikalischen Gründen eine unvermeidliche und im Wesentlichen feste "absolute" Zeitverzögerung (Laufzeit) der übertragenen Daten bewirken. Hierzu gehören z.B. elektrische Bauelemente mit unvermeidlichen Ansprech- und Transferzeiten (wie etwa Inverter und Verstär ker) und verzögernde Übertragungsleitungen. Die Summe "τf" dieser festen absoluten Laufzeiten im Datenpfad bestimmt die untere Grenze nmi n für die Wahl der oben definierten Latenz n bei gegebener Periodendauer T des Bezugstaktes, denn das Produkt n·T darf nicht kleiner sein als τf: τf <= n·T. Gl(1)
  • Ist hingegen die Latenz n vorgegeben, dann bestimmt der absolute Zeitwert τf die untere Grenze Tmin für die Periodendauer T des Bezugstaktes (und somit die obere Grenze fcmax = 1/Tmin für die Wahl der Bezugstaktfrequenz fc).
  • Um eine gewünschte Latenz n genau einzuhalten, muss zwischen einem Bezugs-Zeitpunkt t0, zu dem die Übertragung eines Datums (oder eines Burst aufeinander folgender Daten) befohlen wird, und dem Zeitpunkt tn, zu dem das Datum am ausgangsseitigen Ende des Datenpfades erscheint, eine Zeitspanne τg verstreichen, die genau gleich einer ganzen Zahl n von Taktperioden T der Taktfrequenz fc ist. Es besteht also die Forderung: tn – t0 = τg = n·T. Gl(2)
  • Natürlich kann man nicht davon ausgehen, dass die feste Laufzeit τf des Datenpfades genau dem Produkt n·T entspricht. Die Laufzeit τf wird vielmehr irgendein Bruchteil von n·T sein, der sich mit dem Wert T (also abhängig von der Taktfrequenz fc) ändert. Es muss also dafür gesorgt werden, dass die Daten eine von T abhängige zusätzliche Verzögerung erfahren, um die Differenz zwischen n·T und τf auszugleichen. Nachstehend sei zunächst anhand der 1 und 2 beschrieben, wie dies bisher gemäß dem Stand der Technik erreicht wurde.
  • 1 zeigt das Schema einer Schaltungsanordnung zur Latenzregelung gemäß dem Stand der Technik;
  • 2 zeigt Zeitdiagramme zur Veranschaulichung der Ar beitsweise der Schaltungsanordnung nach 1 bei verschiedenen Taktfrequenzen.
  • Die 1 zeigt links oben die Quelle 10 der zu übertragenden Daten, bei der es sich z.B. um den Datenpuffer an den Datenanschlüssen einer Speicherbank in einem DRAM-Baustein handelt, der auf einem Halbleiterchip integriert ist. Das Akronym "DRAM" bezeichnet bekanntlich einen dynamischen Schreib-Lese-Speicher mit wahlfreiem direktem Zugriff (Dynamic Random Access Memory). Im Lesebetrieb gelangen die aus den jeweils adressierten Speicherzellen gelesenen Daten in diesen Puffer 10, um auf Befehl vom Ausgang des Puffers zu einem Kontaktstück 50 übertragen zu werden. Dieses Kontaktstück, üblicherweise als "Pad" bezeichnet, ist mit einem zugeordneten externen Datenanschluss des Chip (nicht gezeigt) verdrahtet.
  • Das Pad 50 bildet das Ende eines Datenpfades, der am Ausgang der Datenquelle 10 beginnt und Übertragungselemente enthält, welche die Daten um jeweils eine feste Zeit verzögern. Bei dem genannten Beispiel der Datenübertragung vom Lesedatenpuffer 10 einer Speicherbank zum Pad 50 sind diese Übertragungselemente fester Laufzeit z.B. diverse Zweige eines Systems von Busleitungen, Elemente einer Datensteuerlogik zum Lenken der Daten über ausgewählte Zweige des Bus-Systems und, als letztes Glied vor dem Pad 50, ein Sendetreiber (Off Chip Driver OCD) zum Verstärken der Daten, bevor sie über das Pad 50 zum externen Datenanschluss des Chip übertragen werden. Auch zwischen einzelnen Zweigen oder Abschnitten des Bus-Systems können Datenverstärker vorgesehen sein, die ebenfalls jeweils eine feste Verzögerung bewirken. Zu diesen Elementen, die in der 1 nicht einzeln sondern summarisch als Block 40 dargestellt sind, kommt gemäß der 1 noch ein Multiplexer 30 hinzu, der ebenfalls eine feste Verzögerung bringt und eine spezielle Rolle bei der Latenzregelung spielt, die weiter unten noch beschrieben wird. Alle diese genannten Elemente bewirken zusammengenommen die oben erwähnte feste Ver zögerungszeit τf
  • Die feste Verzögerungszeit τf kann, je nach dem gewählten Wert n und je nach der benutzten Taktfrequenz fc = 1/T kleiner als T oder gleich T oder größer als T sein. Um die Gesamtverzögerung τg von der Datenquelle 10 bis zum Pad 50 genau auf den Wert n·T zu bringen, wird gemäß dem Stand der Technik eine zusätzliche Verzögerung eingeführt, die sich zusammensetzt aus einem ersten Anteil p·T entsprechend einem ganzzahligen Vielfachen p der Taktperiode T und einem zweiten Anteil q·T entsprechend einem Bruchteil q der Taktperiode T, gemäß den folgenden Gleichungen: p = INT(n – τf/T) >= 0, Gl(3) q = (n – τf/T) – INT(n – τf/T), Gl(4)wobei INT den ganzzahligen Anteil des in Klammern nachgestellten Argumentes bedeutet.
  • Der Anteil p·T der Zusatzverzögerung wird dadurch eingeführt, dass am Eingang des Datenpfades eine passende Anzahl von Schieberregisterstufen eingefügt wird, die mit der Frequenz fc des Bezugstaktes taktgesteuert werden. Der Anteil q·T der Zusatzverzögerung wird dadurch eingeführt, dass die Phase der Taktsteuerung der Schieberegisterstufen um ein entsprechendes Maß gegenüber dem Bezugstakt verzögert wird.
  • Gemäß der 1 wird aus dem Bezugstaktsignal CLK(0) eine verschobene Version CLK(0-τf) abgeleitet, die um genau das feste Zeitmaß τf in negativer Richtung gegenüber dem Original zeitverschoben ist. Dies erfolgt mittels einer DLL 60 ("Delay Locked Loop", d.h. verzögerungs-synchronierte Schleife), die in ihrer Rückkopplungsstrecke eine Nachbildung 70 der Kette aller Elemente (inklusive des Multiplexers 30) enthält, welche insgesamt die feste absolute Verzögerung τf verursachen. Die Bestandteile dieser Nachbildung, können reale Kopien der betreffenden Elemente des Datenpfades sein, oder es können Ersatzschaltungen mit äquivalenter fester Laufzeit sein (letzteres wird aus Platzgründen insbesondere für die Nachbildung von Busleitungslängen praktiziert). Da bei der Bildung dieser Kopien bzw. Ersatzschaltungen Ungenauigkeiten (z.B. Streuungen von Chip zu Chip) auftreten können, werden sie in der Praxis so konstruiert, dass sie einen Abschnitt 71 bilden, dessen Verzögerung mit Sicherheit etwas kleiner als τf ist und dem ein einstellbares Verzögerungselement 72 nachgeschaltet ist, um die Gesamtverzögerung genau auf den Wert τf justieren zu können.
  • In einer Latenzkontroll-Logik 80 wird unter Vergleich der beiden Taktsignale CLK(0) und CLK(0-τf) und unter Berücksichtigung der gewünschten Latenz n der ganzzahlige Anteil p der Differenz zwischen n und τf/T gemäß der obigen Gl(3) ermittelt.
  • Das verschobene Bezugstaktsignal CLK(0-τf) wird außerdem zur Taktung eines Schieberegisters 20 verwendet. Dies hat den Effekt, dass die Taktung der Daten entlang dem Schieberegister mit der Frequenz fc = 1/T des Bezugstaktes erfolgt, jedoch mit einer Taktphase, welche gegenüber der Phase des Bezugstaktes CLK(0) effektiv um den in Gl(4) definierten Bruchteil q der Taktperiode T verzögert erscheint.
  • Das Schieberegister 20 ist in 1 als Kette aufeinander folgender D-Flipflops (Daten-Flipflops) FF#1, FF#2, ... dargestellt. Der Eingang der ersten Stufe FF#1 ist direkt an den Ausgang der Datenquelle 10 angeschlossen, und am Ausgang jeder Stufe befindet sich eine Anzapfung. Die Anzapfungen führen zu den Eingängen des Multiplexers 30. Die Latenzkontroll-Logik 80 steuert, abhängig vom ermittelten Wert p, den Multiplexer 30 derart, dass er die (p+1)-te Anzapfung des Schieberegisters 20 auswählt, um die Kette der ersten bis (p+1)-ten Stufe des Registers in den Datenpfad einzufügen.
  • Somit erfahren die übertragenen Daten eine Gesamtverzögerung τg = q·T + p·T + τf. Gl(5)
  • Setzt man die Werte für p und q aus Gl(3) und Gl(4) in Gl(5) ein, kommt man exakt zur obigen Gl(2). Die gestellte Forderung wird also erfüllt.
  • Die Arbeitsweise der in 1 gezeigten Schaltungsanordnung wird im Folgenden anhand der Zeitdiagramme (a) bis (c) in 2 näher erläutert, und zwar für drei verschiedene Taktfrequenzen fc. Alle drei Diagramme (a) bis (c) gelten für den Beispielsfall n = 4; das heißt, die Dauer vom Zeitpunkt t0 des Übertragungsbefehls bis zum Zeitpunkt t0 der Ankunft des ersten Datums eines zu übertragenden Datenburst am Pad 50 soll genau vier Taktperioden betragen. In jedem Diagramm sind über der gleichen Zeitachse das Bezugstaktsignal CLK(0) und das verschobene Taktsignal CLK(0-τf) dargestellt. Die steigenden Flanken der Taktsignale seien die "aktiven" Flanken und markieren jeweils den Anfang einer Taktperiode der Dauer T = 1/fc. Am Bezugstaktsignal CLK(0) sind diese Taktflanken in den Diagrammen mit jeweils einem kleinen Pfeil und einer daneben stehenden laufenden Nummer markiert.
  • Im oberen Diagramm (a) der 2 ist der Fall veranschaulicht, dass die Taktfrequenz fc einen Wert hat, bei dem die feste Verzögerungszeit τf des Datenpfades deutlich kürzer ist als eine Taktperiode T, nämlich 0,833 T. Demnach bewirkt die DLL 60 (1), dass das Taktsignal CLK(0-τf) gegenüber dem Bezugstaktsignal CLK(0) um 0,833 T nach links verschoben erscheint. Die Latenzkontroll-Logik 80 ermittelt gemäß der Gl(3) für n = 4 und τf/T = 0,833 T den Ganzzahlwert p = 3. Somit wählt die Logik 80 über den Multiplexer 30 die Anzapfung am Ausgang der vierten Stufe FF#4 des Schieberegisters 20 aus. Für den Bruchteil q ergibt sich gemäß Gl(4) der Wert 0,167.
  • Der Übertragungsbefehl RDD wird zum Zeitpunkt t0 synchron mit einer Flanke des Bezugstaktes CLK(0) gegeben und sorgt dafür, dass ab diesem Zeitpunkt eine Verbindung zwischen dem Bezugstaktsignal CLK(0) und einem Takteingang der Datenquelle 10 und eine Verbindung zwischen dem verschobenen Taktsignal CLK(0-τf) und den Taktanschlüssen des Schieberegisters 20 hergestellt wird. Dies ist in 1 durch ein UND-Gatter 11 in der Takt-Zuleitung zur Datenquelle und ein UND-Gatter 21 in der Takt-Zuleitung zum Register 20 symbolisiert. Das erste Datum gelangt zum Zeitpunkt t0 an den Eingang der ersten Registerstufe FF#1 und wird mit der als nächstes folgenden aktiven Flanke des Taktsignals CLK(0-τf) zum Ausgang dieser Stufe übertragen. Diese Flanke erscheint eine Zeitspanne q·T = 0,167 T später als t0. Nach weiteren p = 3 Taktperioden erscheint das Datum an der "ausgewählten" Anzapfung am Ausgang der Registerstufe FF#4 und erscheint dann, nach der weiteren Verzögerung τf, zum Zeitpunkt tn am Pad 50. Es ergibt sich also von t0 bis tn die gewünschte Gesamtlaufzeit τg = 0,167 T + 3·T + 0,833·T = 4·T.
  • Im mittleren Diagramm (b) der 2 ist der Fall veranschaulicht, dass die Taktfrequenz fc doppelt so hoch ist wie im Falle des Diagramms (a). Die feste Verzögerungszeit τf des Datenpfades ist nun deutlich länger als eine Taktperiode T, nämlich 1,666 T. Demnach bewirkt die DLL 60 (1), dass das Taktsignal CLK(0-τf) gegenüber dem Bezugstaktsignal CLK(0) um 1,666 T nach links verschoben erscheint. Die Latenzkontroll-Logik 80 ermittelt gemäß der Gl(3) für n = 4 und τf/T = 1,666 T den Ganzzahlwert p = 2. Somit wählt die Logik 80 über den Multiplexer 30 die Anzapfung am Ausgang der dritten Stufe FF#3 des Schieberegisters 20 aus. Für den Bruchteil q ergibt sich gemäß Gl(4) der Wert 0,333. Auch in diesem Fall ergibt sich die gewünschte Gesamtlaufzeit, allerdings in anderer Aufteilung: τg = 0,333 T + 2·T + 1,666·T = 4·T.
  • Es ist leicht einzusehen, dass mit der bekannten Schaltungs anordnung eine gewünschte Gesamtlaufzeit von genau n·T bei beliebigen Werten für T, n und τf theoretisch erreicht werden kann, sofern T·n nicht kleiner ist τf. Ein kritischer Punkt bei der beschriebenen bekannten Methode der Latenzregelung ist jedoch die Latenzkontroll-Logik, welche die Ganzzahl p gemäß der obigen Gl(3) ermittelt. Diese Logik hat Entscheidungsprobleme, wenn der Quotient τf/T gleich einer ganzen Zahl ist oder einen ganzen Zahl sehr nahe kommt. Eine solche Situation ergibt sich immer dann, wenn die Taktfrequenz fc einen Wert hat, bei welchem die Taktperiode T = 1/fc gleich τf oder einem ganzzahligen Vielfachen davon ist oder solchen Werten sehr nahe kommt.
  • Dieses Problem ist im Diagramm (c) für den Beispielsfall einer Frequenz fc veranschaulicht, bei welcher τf nur ganz wenig kleiner als 1·T ist. Hier können geringste Instabilitäten in der Taktfrequenz und/oder in den Elementen der Latenzkontroll-Logik bewirken, dass τf/T manchmal als < 1 und manchmal als > 1 bewertet wird. Es besteht dann die Gefahr, dass der ermittelte Wert von p ungewollte Sprünge macht (im gezeigten Fall zwischen p = 3 und p = 2), was seinerseits dazu führt, dass die Latenz vorübergehend vom gewünschten Wert n wegspringt. Um diese Gefahr zu mindern, enthalten herkömmliche Latenzkontroll-Logiken komplizierte Schaltungen, um die zugeführten Taktsignale hin und her zu schieben und dadurch eine Hysterese einzubauen. Die Praxis hat jedoch gezeigt, dass trotz dieser Maßnahmen die Gefahr von Latenzsprüngen bisher nicht vollständig beseitigt werden konnte.
  • Die Aufgabe der Erfindung besteht darin, eine Schaltungsanordnung zu Latenzregelung vorzusehen, die ungewollte Latenzsprünge zuverlässig vermeidet. Diese Aufgabe wird erfindungsgemäß durch die im Patentanspruch 1 angegebenen Merkmale gelöst.
  • Demnach wird die Erfindung realisiert an einer Schaltungsanordnung zur Regelung einer Latenz, die definiert ist als eine ganze Zahl n von Perioden T eines Bezugstaktes der Frequenz fc und die ab einem Datenübertragungsbefehl verstreichen soll, bis die aus einer Datenquelle zu übertragenden Daten am Ende des zu durchlaufenden Datenpfades erscheinen, der eine Kette von Übertragungselementen mit absoluten Laufzeiten enthält, wobei die Frequenz fc in einem Bereich von 1/Tmax bis 1/Tmin einstellbar sein soll, mit Tmin mindestens gleich τf/n und mit τf gleich der Summe der festen Laufzeiten im Datenpfad. Erfindungsgemäß ist der Datenpfad in n aufeinander folgende Abschnitte unterteilt, deren jeder an seinem Eingang ein taktgesteuertes Abtastelement zur Übernahme der zu übertragenden Daten enthält und eine Durchlaufzeit hat, die deutlich kürzer als Tmin ist, wobei die Durchlaufzeit τn des letzten Abschnittes auch deutlich größer als null ist. Ferner ist eine Einrichtung vorgesehen zur Taktsteuerung der Abtastelemente mit einer um T-τn verzögerten Version des Bezugstaktes.
  • Die vorstehend und im Patentanspruch 1 benutzte Formulierung "deutlich größer als null" ist in dem Sinne zu verstehen, dass τn immer eindeutig meßbar und reproduzierbar größer sein muß als null, also um ein Maß, das größer ist als der Toleranz- bzw. Streubereich der Meß- und Einstellparameter.
  • Im Betrieb der erfindungsgemäßen Schaltungsanordnung benötigen die Daten für den Lauf durch die ersten n-1 Abschnitte des Datenpfades immer genau die ganze Zahl n-1 von Taktperioden T, dank der abschnittsweisen Taktsteuerung, die eine Pipeline-Architektur bildet. Nur die Durchlaufzeit τn im letzten Abschnitt bleibt als nicht-ganzahliger Bruchteil von T. Somit muss nur die Differenz T-τn ermittelt werden, um die Taktsteuerung um dieses Maß zu verzögern, damit die Gesamtverzögerung genau n·T beträgt.
  • Die erfindungsgemäße Schaltungsanordnung braucht also nie eine kritische Entscheidung darüber zu treffen, wie groß der ganzzahlige Anteil von Taktperioden T in einer festen Verzögerungszeit ist. Latenzsprünge, die auf Fehlentscheidungen in dieser Sache beruhen, können also nicht auftreten. Deswegen bedarf es auch keiner komplizierten Latenzkontroll-Logik wie beim Stand der Technik.
  • Ein weiterer Vorteil der Erfindung ist, dass zur Einstellung der Verzögerung der Taktsteuerung am Datenpfad nicht die Laufzeit des gesamten Datenpfades sondern nur die Laufzeit τn des letzten Abschnittes gemessen bzw. nachgebildet werden muss. Dies vermindert den Schaltungsaufwand und erhöht auch die Genauigkeit.
  • Die erfindungsgemäße Unterteilung des Datenpfades ergibt eine Pipeline-Struktur. In bekannten Fällen werden Pipelines verwendet, um diskrete Verarbeitungs- oder Schaltschritte, die ohnehin zeitlich nacheinander ablaufen müssen, zu synchronieren. Dies gehört auch zum Stand der Technik bei der Synchronisierung des Lesedatenpfades in einem SDRAM (vgl. z.B. IEEE J.of.Sol.St.Circ. 32/1 (1997), p.92–99). Dort bedarf es einer Synchronisation des Auslesevorgangs an einer Speicherzelle mit gleichzeitig erfolgenden Auslesevorgängen an anderen Speicherzellen. Deswegen ist die Übergabe der Lesedaten von einem Leitungssystem innerhalb des SDRAM auf das nächste Leitungssystem notgedrungen taktzusteuern. Diese "Pipelinisierung" muss in jedem Fall erfolgen, auch dann, wenn die Summe der absoluten Leitungsverzögerungen immer kleiner ist als die Taktperiode. Es wird hierdurch nicht nahegelegt, bei einer Schaltungsanordnung zur Latenzregelung eine Pipelinisierung in der erfindungsgemäßen Weise zu nutzen, nämlich indem man die Phase der Taktsteuerung der Pipeline um eine Zeit verzögert, die gleich der Taktperiode T minus der Durchlaufzeit der Daten durch den letzten Abschnitt ist.
  • Besondere und vorteilhafte Ausführungsformen der Erfindung sind in den Unteransprüchen gekennzeichnet.
  • Zur Erläuterung der Erfindung werden nachstehend Ausführungsbeispiele anhand weiterer Zeichnungen näher beschrieben.
  • 3 zeigt das Schema eines ersten Ausführungsbeispiels form einer erfindungsgemäßen Schaltungsanordnung zur Latenzregelung auf einen festen Wert n;
  • 4 zeigt Zeitdiagramme zur Veranschaulichung der Arbeitsweise der Schaltungsanordnung nach 3 bei verschiedenen Taktfrequenzen;
  • 5 zeigt das Schema eines zweiten Ausführungsbeispiels einer erfindungsgemäßen Schaltungsanordnung zur Latenzregelung auf wählbare Werte n.
  • Das in 3 gezeigte Ausführungsbeispiel ist ausgelegt zur Regelung der Latenz n = 4 (Anzahl ganzer Taktperioden) der Datenübertragung zwischen einer Datenquelle 10, die ähnlich wie im Falle der 1 ein Lesedatenpuffer an einer Speicherbank eines DRAM-Bausteins sein kann, und einem Ort 50, der ähnlich wie im Falle der 1 ein Pad für einen externen Datenanschluss des Bausteins sein kann. Der Datenpfad von der Datenquelle 10 zum Pad 50 ist unterteilt in n = 4 aufeinander folgende Abschnitte S1 bis Sn, deren jeder ein taktge steuertes Daten-Abtastelement in Form eines D-Flipflops enthält. Diese Flipflops sind mit den Symbolen FF#1 bis FF#n bezeichnet, entsprechend der Nummerierung der Abschnitte S1 bis Sn.
  • Der Datenpfad enthält auch die Kette der üblichen Übertragungselemente, welche die Daten um jeweils eine feste Zeit verzögern. Bei dem genannten Beispiel der Datenübertragung von einem Lesedatenpuffer 10 zu einem Pad 50 sind diese Übertragungselemente z.B. die oben erwähnten Busleitungs-Abschnitte, Verstärker, etc., die zusammengenommen die oben erwähnte feste Verzögerungszeit τf bewirken. Die besagte Kette, die beim Stand der Technik gemäß 1 eine zusammenhängende Struktur bildet, ist bei der erfindungsgemäßen Anordnung in eine Mehrzahl m von Teilblöcken 140-1, 140-2,..., 140-m aufgeteilt, in m verschiedenen Abschnitten des Datenpfades.
  • Die Positionen der Flipflops FF#1...n entlang des Datenpfades sind so gewählt, dass folgende Bedingungen erfüllt sind:
    • (1) jeder der Abschnitte S1...n beginnt mit einem Flipflop;
    • (2) die Laufzeit der Daten in jedem Abschnitt ist kleiner ist als Tmin = 1/fcmax, wobei fcmax die höchste gewünschte Taktfrequenz ist;
    • (3) der letzte Abschnitt Sn enthält den letzten der Teilblöcke, so dass die Laufzeit τn dieses Abschnittes deutlich größer als null ist.
  • Von den Werten Tmin und τf hängt es ab, wie groß die Mindestanzahl mmin der Teilblöcke 140 ist (also die Mindestanzahl derjenigen Abschnitte, in denen Anteile der fest verzögernden Übertragungselemente enthalten sein müssen). Da jeder Abschnitt auch ein Flipflop enthält, muss auch die "Transferzeit" τFF des jeweils zugeordneten Flipflops in die Laufzeit jedes der Abschnitte S1...n eingerechnet werden. Diese Transferzeit ist immer wesentlich kürzer als Tmi n Somit gilt folgende Beziehung: mmin = INT((τf + n·τFF)/Tmin)+1. Gl(6)
  • Natürlich darf die tatsächliche Anzahl m der Teilblöcke 140 größer als mmin sein (höchsten gleich n). Die Anzahl der Teilblöcke und deren jeweilige Länge (Laufzeit) kann innerhalb der genannten Grenzen beliebig gewählt werden. Wenn m kleiner ist als n, dann sind n-m Abschnitte des Datenpfades "leer" in dem Sinne, dass sie keinen Teilblock der fest verzögernden Übertragungselemente des Datenpfades sondern nur das jeweils zugeordnete Flipflop enthalten. Beim Ausführungsbeispiel nach 3 ist der Fall n = 4 und m = 3 zugrunde gelegt. Die Positionen der Flipflops FF#1...n entlang des Datenpfades sind gemäß der 3 so gewählt, dass die m Teilblöcke 140-1 bis 140-m in den letzten m Abschnitten des Datenpfades liegen und somit der erste Abschnitt S1 "leer" ist.
  • Erfindungsgemäß werden die Flipflops FF#1...n im Datenpfad gemäß der 3 mit einem Taktsignal gesteuert, das gegenüber dem Bezugstakt CLK(0) um T-τn verzögert ist, wobei T die Periodendauer des Bezugstaktes ist. Hierzu wird aus dem Bezugstaktsignal CLK(0) eine verschobene Version CLK(0-τn) abgeleitet, die um genau das feste Zeitmaß τn in negativer Richtung gegenüber dem Original zeitverschoben ist. Dies erfolgt mittels einer DLL 60, die in ihrer Rückkopplungsstrecke eine Nachbildung 170 nur des letzten Abschnittes Sn des Datenpfades enthält. Die Bestandteile dieser Nachbildung, können reale Kopien der betreffenden Elemente des Datenpfades sein, oder es können Ersatzschaltungen mit äquivalenter fester Laufzeit sein (letzteres wird aus Platzgründen insbesondere für die Nachbildung von Busleitungslängen praktiziert). Da bei der Bildung dieser Kopien bzw. Ersatzschaltungen Ungenauigkeiten (z.B. Streuungen von Chip zu Chip) auftreten können, werden sie in der Praxis so konstruiert, dass sie einen Abschnitt 171 bilden, dessen Verzögerung mit Sicherheit etwas kleiner als τn ist und dem ein einstellbares Verzögerungselement 172 nachgeschaltet ist, um die Gesamtverzögerung genau auf den Wert τn justieren zu können.
  • Die Arbeitsweise der in 3 gezeigten Schaltungsanordnung wird im Folgenden anhand der Zeitdiagramme (a) und (b) in 4 näher erläutert, und zwar für zwei verschiedene Taktfrequenzen fc. In jedem Diagramm sind über der gleichen Zeitachse das Bezugstaktsignal CLK(0) und das verschobene Taktsignal CLK(0-τn) dargestellt. Die steigenden Flanken der Taktsignale seien die "aktiven" Flanken und markieren jeweils den Anfang einer Taktperiode der Dauer T = 1/fc. Am Bezugstaktsignal CLK(0) sind diese Taktflanken in den Diagrammen mit jeweils einem kleinen Pfeil und einer daneben stehenden laufenden Nummer markiert.
  • Im oberen Diagramm (a) der 4 ist der Fall veranschaulicht, dass die Taktfrequenz fc relativ hohen Wert hat. Im Diagramm (b) der 4 ist der Fall einer wesentlich niedrigeren (nur halb so hohen) Taktfrequenz veranschaulicht. In beiden Fällen läuft das gleiche Schema ab:
    Der Übertragungsbefehl RDD wird zum Zeitpunkt t0 synchron mit einer Flanke des Bezugstaktes CLK(0) gegeben und sorgt dafür, dass ab diesem Zeitpunkt eine Verbindung zwischen dem Bezugstaktsignal CLK(0) und einem Takteingang der Datenquelle 10 und eine Verbindung zwischen dem verschobenen Taktsignal CLK(0-τn) und den Taktanschlüssen der Flipflops FF#1...n hergestellt wird. Dies ist in 3 durch ein UND-Gatter 11 in der Takt-Zuleitung zur Datenquelle und ein UND-Gatter 21 in der Takt-Zuleitung zu den Flipflops symbolisiert. Das erste Datum gelangt zum Zeitpunkt t0 an den Eingang des ersten Flipflops FF#1 und wird mit der als nächstes folgenden aktiven Flanke des Taktsignals CLK(0-τf), die um eine Zeitspanne (T-τn) später erscheint, zum Zeitpunkt t0 + T – τn in den ersten Abschnitt S1 des Datenpfades übertragen. Nach einer weiteren Verzögerung um die Zeitspanne τ1 im ersten Abschnitt S1 erscheint das Datum am Eingang des zweiten Flipflops FF#2. Die Übertragung in den zweiten Abschnitt erfolgt jedoch erst mit der nächsten Flanke des Taktsignals CLK(0-τn), also zum Zeitpunkt t0 + 2T – τn. Nach einer anschließenden weiteren Verzögerung um die Zeitspanne τ2 im zweiten Abschnitt S2 erscheint das Datum am Eingang des dritten Flipflops FF#3. Die Übertragung in den dritten Abschnitt S3 erfolgt jedoch erst mit der nächsten Flanke des Taktsignals CLK(0-τn), also zum Zeitpunkt t0 + 3T – τn. Nach einer anschließenden weiteren Verzögerung um die Zeitspanne τ3 im dritten Abschnitt S3 erscheint das Datum am Eingang des letzten Flipflops FF#n. Die Übertragung in den letzten Abschnitt Sn erfolgt jedoch erst mit der nächsten Flanke des Taktsignals CLK(0-τn), also zum Zeitpunkt t0 + n·T – τn. Nach einer anschließenden weiteren Verzögerung um die Zeitspanne τn im letzten Abschnitt Sn erscheint das Datum zum Zeitpunkt tn = t0 + n·T am Pad 50 am Ende des Datenpfades.
  • Dies entspricht genau der geforderten Beziehung gemäß der obigen Gl(2). Wie leicht zu erkennen ist, gilt dies für beliebige Taktfrequenzen fc, vorausgesetzt keiner der Abschnitte S1...n hat eine längere Laufzeit als 1/fc. Das gewünschte Ergebnis wird mit wesentlich einfacheren Mitteln erreicht als beim Stand der Technik. Man braucht weder eine aufwändige Latenzkontroll-Logik zur Ermittlung des Ganzzahl-Anteils eines Zahlenwertes noch einen Multiplexer zur Auswahl von Schieberegister-Anzapfungen abhängig von dem ermittelten Ganzzahl-Anteil. Somit besteht auch nicht die Gefahr von Latenzsprüngen.
  • Auch ist es bei der erfindungsgemäßen Schaltungsanordnung einfacher als bisher, die notwendige Verschiebung des Taktsignals zur Steuerung der Flipflops genau zu erreichen. Es ist keine Nachbildung des gesamten Datenpfades erforderlich, sondern nur eine Nachbildung der Laufzeit des letzten Abschnittes. Dies erfordert nicht nur weniger Schaltungsaufwand, sondern ist auch präziser zu realisieren. Mögliche Streuungen in der nachgebildeten Laufzeit sind, absolut gesehen, weit geringer, so dass die Mittel zur Justierung einen viel kleineren absoluten Dynamikbereich benötigen, was die Feinheit der Justierung verbessert.
  • Beim Ausführungsbeispiel nach 3 ist der erste Abschnitt S1 des Datenpfades "leer" (d.h. er enthält außer den zugeordneten Flipflop keine weiteren Bestandteile des Datenpfades), während die Abschnitte S2, S3 und Sn des Datenpfades "gefüllt" sind (d.h. sie enthalten neben dem jeweils zugeordneten Flipflop andere Bestandteile des Datenpfades). Wie bereits oben angedeutet wurde, kann die Unterteilung des Datenpfades auch anders vorgenommen werden. Man kann die Anzahl m der gefüllten Abschnitte größer (bis höchstens gleich n) oder kleiner (mindestens gleich 2) machen, vorausgesetzt, jeder der Abschnitte hat eine Laufzeit kleiner als 1/fcmax. Je größer m ist, desto kürzer wird man die Laufzeiten der gefüllten Abschnitte machen können und desto höher wird man fcmax wählen können.
  • Die leeren Abschnitte, sofern benötigt (also im Falle m < n), kann man an beliebigen Stellen des Datenpfades vor dem letzten Abschnitt einfügen. Wenn man jedoch einen oder mehrere oder alle leeren Abschnitte am Anfang des Datenpfades positioniert, ergibt sich vorteilhafterweise die Möglichkeit, den Latenz-Wert n sehr einfach zu variieren. Dies sei nachstehend an einem Ausführungsbeispiel anhand der 5 näher erläutert:
    Beim Beispiel nach 5 ist die Anzahl m der "gefüllten" Abschnitte des Datenpfades zwischen der Datenquelle 10 und dem Pad 50 gleich 3. Diese Abschnitte sind die letzten drei Abschnitte Sn-2, Sn-1, Sn des Datenpfades und entsprechen im dargestellten Fall den drei letzten Abschnitten S2, S3, Sn der Anordnung nach 3. Die Anordnung nach 5 unterscheidet sich von der Anordnung nach 3 nur dadurch, dass Mittel vorgesehen sind, um vor den m gefüllten Abschnitten eine wählbare Anzahl von leeren Abschnitten in den Datenpfad einzufügen, um die Latenz n innerhalb eines Wertebereiches von m bis zu irgendeinem gewünschten Maximum nmax einstellen zu können.
  • Zu diesem Zweck ist gemäß der 5 der Ausgang der Datenquelle 10 mit dem Eingang einer Kette von Daten-Flipflops FF#1...r verbunden ist, die ein r-stufiges Schieberegister 120 bilden, das mit dem verschobenen Taktsignal CLK(0-τn) taktgesteuert wird. Am Eingang der ersten Stufe FF#1 und am Ausgang jeder Stufe FF#1...r ist jeweils eine Anzapfung vorgesehen, die durch Schließen (d.h. Leitendmachung) einer jeweils zugeordneten Schaltstrecke wahlweise mit dem Eingang des ersten gefüllten Datenpfad-Abschnittes (der Abschnitt Sn-2 im dargestellten Fall m = 3) verbunden werden kann. Die Schaltstrecken sind mit K0 (für die Anzapfung am Eingang der ersten Registerstufe FF#1) und weiter mit K1 bis Kr bezeichnet (für die Anzapfungen an den Ausgängen der Stufen FF#1...r). Die Anzahl r der Stufen ist gleich nmax – m.
  • Zur Einstellung der Latenz auf einen gewünschten Wert n wird genau diejenige Schaltstrecke Ki der Schaltstrecken K0...r geschlossen, deren Ordnungszahl i innerhalb der Reihenfolge 0...r gleich n – m ist. Ist m = 3 und soll n = 4 sein, dann wird die Schaltstrecke K1 geschlossen, so dass nur das erste Flipflop FF#1 als leerer Datenpfad-Abschnitt eingefügt wird. Es ergibt sich dann effektiv die gleiche Schaltung, wie sie in 3 dargestellt ist. Soll n = 3 sein, dann wird die Schaltstrecke K0 geschlossen, so dass kein zusätzlicher Abschnitt eingefügt wird und der Datenpfad nur die drei gefüllten Abschnitte Sn-2, Sn-1, Sn enthält. Soll n = 6 sein, dann wird die Schaltstrecke K3 geschlossen, so dass die Kette der drei Flipflops FF#1, FF#2, FF#3 als drei leere Abschnitte eingefügt wird. In ähnlicher Weise kann für die Latenz n jeder beliebige Wert von m bis nmax eingestellt werden.
  • Die Schaltstrecken K0...r können durch beliebige Schaltelemente realisiert werden, z.B. durch Schmelzbrücken (Fuse-Elemente), die elektrisch oder mittels Laser "geschossen" werden können, oder durch offene Kontaktstrecken, die durch Metallisierung geschlossen werden können. Es können auch elektronische Schalteinrichtungen verwendet werden, z.B. ein Multiplexer, der durch ein geeignetes Schaltsignal gesteuert werden kann, um die jeweils gewünschte Anzapfung des Registers 120 auszuwählen. Letzteres ist vorteilhaft, wenn man die gewählte Latenz-Einstellung nicht permanent beibehalten möchte. Die Laufzeit der Daten in der Schalteinrichtung darf jedoch nicht länger sein als 1/fcmax minus der Flipflop-Transferzeit τFF, weil ansonsten die Bedingung, dass keiner der Abschnitte des Datenpfades eine Laufzeit < 1/fcmax hat, nicht erfüllt wird.
  • In den Figuren sind die datenführenden Verbindungsleitungen als fette Linien gezeichnet. Hiermit soll angedeutet werden, dass diese Leitungen mehradrig sein können, um einen Mehrbit-Datenstrom in Parallelform zu übertragen. Für diesen Fall muss man sich jedes gezeigte Element im Datenpfad und an den Enden des Datenpfades als Parallelschaltung mehrerer gleichartiger Elemente denken.
  • Die 3 und 5 sind rein schematische Darstellungen, in denen alle vorkommenden Laufzeiten zeichnerisch auf diskrete Blöcke "zusammengezogen" sind, während die Verbindungsleitungen für Daten und Taktsignale als verzögerungsfrei zu denken sind. In der Praxis werden Laufzeitunterschiede in den Zuführungen der Taktsignale dadurch vermieden, dass alle Taktleitungen von der jeweiligen Taktquelle zu den taktgesteuerten Elementen gleich lang bemessen werden, z.B. durch Verzweigung mittels so genannter "H-Bäume".
  • Während das bevorzugte Anwendungsgebiet der Erfindung die Latenzregelung der Lesedatenpfade in Speicherbausteinen (insbesondere in DRAMs) ist, liegen auch Anwendungen der Latenzregelung auf anderen Gebieten oder in anderen Einrichtungen der Datenverarbeitung innerhalb des Bereichs der Erfindung.
  • 10
    Datenquelle (Lesedatenpuffer)
    11
    UND-Gatter
    20
    Schieberegister
    21
    UND-Gatter
    30
    Multiplexer
    40
    Verzögernde Datenpfad-Elemente
    50
    Datenanschluß-Pad
    60
    DLL (Delay Locked Loop)
    70
    Datenpfad-Nachbildung
    71
    Fester Teil der Datenpfad-Nachbildung
    72
    Verzögerungs-Justiereinrichtung
    80
    Latenzkontroll-Logik
    120
    Schieberegister
    140
    Verzögernde Datenpfad-Elemente
    170
    Datenpfadabschnitt-Nachbildung
    171
    Fester Teil der Datenpfadabschnitt-Nachbildung
    172
    Verzögerungs-Justiereinrichtung

Claims (5)

  1. Schaltungsanordnung zur Regelung einer Latenz, die auf eine ganze Zahl n von Perioden T eines Bezugstaktes der Frequenz fc zu justieren ist, die ab einem Datenübertragungsbefehl verstreichen soll, bis die aus einer Datenquelle (10) zu übertragenden Daten am Ende (50) des zu durchlaufenden Datenpfades erscheinen, der eine Kette von Übertragungselementen mit absoluten Laufzeiten enthält, wobei die Frequenz fc in einem Bereich von 1/Tmax bis 1/Tmin einstellbar sein soll, mit Tmi n mindestens gleich τf/n und τf gleich der Summe der absoluten Laufzeiten im Datenpfad, dadurch gekennzeichnet dass der Datenpfad in n aufeinander folgende Abschnitte (S1...n) unterteilt ist, deren jeder an seinem Eingang ein taktgesteuertes Abtastelement (FF#1...n) zur Übernahme der zu übertragenden Daten enthält und eine Durchlaufzeit hat, die deutlich kürzer als Tmin ist, wobei die Durchlaufzeit τn des letzten Abschnittes (Sn) auch deutlich größer als null ist, und dass eine Einrichtung (60, 170) vorgesehen ist zur Taktsteuerung der Abtastelemente mit einer um die Durchlaufzeit τf des letzten Abschnitts (Sn) vor zur legten, also einer um T-τn voverzögerten Version des Bezugstaktes.
  2. Schaltungsanordnung nach Anspruch 1, dadurch gekennzeichnet, dass die Abtastelemente (FF#1...n) Daten-Flipflops sind.
  3. Schaltungsanordnung nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass mit dem Ausgang der Datenquelle (10) der Eingang einer Kette von mehreren Abtastelementen (FF#1...r) verbunden ist, die als mehrstufiges Schieberegister (120) geschaltet sind und deren Taktsteuerung mit der um T-τn verzögerten Version des Bezugstaktes angesteuert wird; und dass eine Schalteinrichtung (K0...r) vorgesehen ist, um eine wählbare Anzahl i >= 0 der ersten Stufen des Schieberegisters (120) als ersten bis i-ten Abschnitt in den Datenpfad einzufügen.
  4. Schaltungsanordnung nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der Datenpfad der Pfad ist, der die aus einer Speicherbank eines Speicherbausteins gelesenen Daten zu den Pads (50) für die externen Datenanschlüsse des Speicherbausteins überträgt.
  5. Verwendung einer Schaltungsanordnung nach einem der Ansprüche 1 bis 3 für einen Speicherbaustein, in welchem die aus einer Speicherbank gelesenen Daten unter Taktsteuerung über einen laufzeitbehafteten Datenpfad zu den Pads für die externen Datenanschlüsse übertragen werden, zur Regelung der Latenz der Datenübertragung über den besagten Datenpfad.
DE102004009958A 2004-03-01 2004-03-01 Schaltungsanordnung zur Latenzregelung Expired - Fee Related DE102004009958B3 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102004009958A DE102004009958B3 (de) 2004-03-01 2004-03-01 Schaltungsanordnung zur Latenzregelung
US11/069,789 US7102940B2 (en) 2004-03-01 2005-03-01 Circuit arrangement for latency regulation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102004009958A DE102004009958B3 (de) 2004-03-01 2004-03-01 Schaltungsanordnung zur Latenzregelung

Publications (1)

Publication Number Publication Date
DE102004009958B3 true DE102004009958B3 (de) 2005-09-22

Family

ID=34877210

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102004009958A Expired - Fee Related DE102004009958B3 (de) 2004-03-01 2004-03-01 Schaltungsanordnung zur Latenzregelung

Country Status (2)

Country Link
US (1) US7102940B2 (de)
DE (1) DE102004009958B3 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7411862B2 (en) * 2006-11-15 2008-08-12 Qimonda Ag Control signal training
US10410698B2 (en) * 2017-12-07 2019-09-10 Micron Technology, Inc. Skew reduction of a wave pipeline in a memory device
CN117744564A (zh) * 2023-12-14 2024-03-22 海光云芯集成电路设计(上海)有限公司 时序电路设计方法、时序电路、电子设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10208715A1 (de) * 2002-02-28 2003-09-18 Infineon Technologies Ag Latenz-Zeitschalter für ein S-DRAM

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5796673A (en) * 1994-10-06 1998-08-18 Mosaid Technologies Incorporated Delay locked loop implementation in a synchronous dynamic random access memory
JP3607439B2 (ja) * 1996-11-11 2005-01-05 株式会社日立製作所 半導体集積回路装置
US5978284A (en) * 1997-08-22 1999-11-02 Micron Technology, Inc. Synchronous memory with programmable read latency
KR100304705B1 (ko) * 1999-03-03 2001-10-29 윤종용 포스티드 카스 레이턴시 기능을 가지는 동기식 반도체 메모리 장치 및 카스 레이턴시 제어 방법
KR100311044B1 (ko) * 1999-10-05 2001-10-18 윤종용 클럭 주파수에 따라 레이턴시 조절이 가능한 레이턴시 결정 회로 및 레이턴시 결정 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10208715A1 (de) * 2002-02-28 2003-09-18 Infineon Technologies Ag Latenz-Zeitschalter für ein S-DRAM

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Sunaga, et.al.: An eight-bit prefetch circuit for high-bandwidth DRAM's IEEE Journal of Solid-State Circuits Volume: 32, Nr.1, Jan. 1997 *

Also Published As

Publication number Publication date
US7102940B2 (en) 2006-09-05
US20050213417A1 (en) 2005-09-29

Similar Documents

Publication Publication Date Title
DE102006020857A1 (de) Integrierter Halbleiterspeicher zur Synchronisierung eines Signals mit einem Taktsignal
DE19854730A1 (de) LCD-Quellentreiber
DE102006030377A1 (de) Verzögerungsregelschleifenschaltung
DE102006049909A1 (de) ZQ-Eichergebnis rückkoppelnde DLL-Schaltung und dieselbe enthaltende Halbleitervorrichtung
DE102007044110A1 (de) Verfahren und Schaltung zum Einstellen der Phasenverschiebung
DE10101553C1 (de) Halbleiterspeicher mit Verzögerungsregelkreis
DE10049029B4 (de) Schaltung und Verfahren zur Latenzbestimmung, Pufferschaltung mit variabler Latenz und Speicherbauelement
DE102005044333A1 (de) Master-Slave Flip-Flop für den Einsatz in synchronen Schaltungen und Verfahren zum Reduzieren von Stromspitzen beim Einsatz von Master-Slave Flip-Flops in synchronen Schaltungen
DE102015106701A1 (de) Verzögerungsleitungsschaltung
DE10235740A1 (de) Register, das zum Korrespondieren mit einem Breitfrequenzband geeignet ist, und Signalerzeugungsverfahren, das dasselbe verwendet
DE10320792B3 (de) Vorrichtung zur Synchronisation von Taktsignalen
DE102007053128B3 (de) Störimpulsfreier Zweiweg-Taktumschalter
DE10130123B4 (de) Verzögerungsregelkreis zur Erzeugung komplementärer Taktsignale
DE102004009958B3 (de) Schaltungsanordnung zur Latenzregelung
DE102007024955B4 (de) Register mit prozess-, versorgungsspannungs- und temperaturschwankungsunabhängigem Laufzeitverzögerungspfad
DE10149585A1 (de) Integrierbare, steuerbare Verzögerungseinrichtung, Verwendung einer Verzögerungseinrichtung sowie Verfahren zum Betrieb einer Verzögerungseinrichtung
DE102006012968A1 (de) Verfahren zum Erhöhen einer Dateneinrichtungs- und Haltespanne im Fall von nicht symmetrischen PVT
DE102006002735B3 (de) Vorrichtung zur Korrektur des Tastverhältnisses in einem Taktsignal
DE102005030594A1 (de) Schaltung und Verfahren zum Einstellen einer Schwellendrift über eine Temperatur bei einem CMOS-Empfänger
EP1148647A2 (de) Schaltungsanordnung zum Empfang von wenigstens zwei digitalen Signalen
DE10149584A1 (de) Verzögerungsregelkreis
DE19953323B4 (de) SDRAM-Speicherbaustein und CAS-Verzögerungssteuerschaltung
DE10004108C1 (de) Schaltungsanordnung zur Generierung eines Ausgangs-Taktsignals mit optimierter Signalgenerierungszeit
EP1668778B1 (de) Verzögerungsregelkreis
DE102004010562B4 (de) Schnittstellenvorrichtung und Verfahren zur Synchronisation von Daten

Legal Events

Date Code Title Description
8100 Publication of patent without earlier publication of application
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee