DE60315165T2 - Verfahren und vorrichtung zum einstellen und kompensieren der leselatenz in einem hochgeschwindigkeits-dram - Google Patents
Verfahren und vorrichtung zum einstellen und kompensieren der leselatenz in einem hochgeschwindigkeits-dram Download PDFInfo
- Publication number
- DE60315165T2 DE60315165T2 DE60315165T DE60315165T DE60315165T2 DE 60315165 T2 DE60315165 T2 DE 60315165T2 DE 60315165 T DE60315165 T DE 60315165T DE 60315165 T DE60315165 T DE 60315165T DE 60315165 T2 DE60315165 T2 DE 60315165T2
- Authority
- DE
- Germany
- Prior art keywords
- read
- data
- memory device
- signal
- circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital 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/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
- G11C11/4096—Input/output [I/O] data management or control circuits, e.g. reading or writing circuits, I/O drivers or bit-line switches
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital 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/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/4076—Timing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/106—Data output latches
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1066—Output synchronization
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
- G11C7/222—Clock generating, synchronizing or distributing circuits within memory device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2272—Latency related aspects
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2281—Timing of a read operation
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Dram (AREA)
- Radar Systems Or Details Thereof (AREA)
- Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
- Memory System (AREA)
Description
- Gebiet der Erfindung
- Die vorliegende Erfindung bezieht sich auf DRAM-Schaltungen und insbesondere auf eine Schaltung und ein Verfahren zum Sicherstellen, dass korrekte Daten mit einer korrekten Leselatenz aus einem Hochgeschwindigkeits-DRAM ausgegeben werden.
- Hintergrund der Erfindung
- Ein typisches DRAM-Speichersystem hat eine externe DRAM-Steuerung, welche Lese- und Schreibanforderungen an eine DRAM-Speichervorrichtung richtet. Bei einer Leseanforderung erwartet die Steuerung, dass Daten in der Speichervorrichtung mit einer vorbestimmten Leselatenz, die üblicherweise aus einer vorbestimmten Anzahl externer Systemtaktzyklen, z.B. acht externen Taktzyklen, nach Ausgabe einer Leseanforderung von der Steuerung besteht, auf einem Datenbus zur Verfügung stehen. Intern hat die DRAM-Speichervorrichtung ihr eigenes Taktsystem, welches das externe Taktsignal empfängt und aus dem externen Takt mehrere unterschiedliche interne Taktsignale zum internen Betrieb der Speichervorrichtung entwickelt.
- Das interne Taktsignal einer bekannten Hochgeschwindigkeits-Speichervorrichtung erzeugt mindestens zwei Taktbereiche. Der erste Taktbereich stellt die Zeitsteuerung dar, die in dem Großteil der logischen Schaltungen und zum Ansteuern des Speicherfeldkerns verwendet wird. Die Zeitsteuerung für den ersten Bereich wird aus einem gepufferten externen freilaufenden Systemtakt erzeugt. Die Phase des Taktsignals im ersten Bereich relativ zum externen Takt hängt von einem Taktempfänger und von Taktbaumverzögerungen ab. Der zweite Bereich, der ebenfalls vom externen Systemtakt abgeleitet wird, repräsentiert die Zeitsteuerung eines zeitlich rückversetzten Lesetakts. Dieser Taktbereich wird durch eine Delay Lock Loop (DLL) erzeugt. Dieser zweite Taktbereich erzeugt einen Lesetakt zum Betreiben von Datenlesezwischenspeichern. Der Lesetakt wird in einem gewünschten Phasenverhältnis zum externen Systemtakt an den Lesezwischenspeicher geliefert. Der zweite Taktbereich gleicht Verzögerungen im Datenausgabepfad (Do) aus, um ein Lesetaktsignal zu erzeugen, das die Ausgabedatenzwischenspeicher betreibt, um eine spezifische Phasenausrichtung mit dem externen Systemtakt zu erzielen. Keiner dieser beiden Taktbereiche spiegelt insbesondere bei hohen Betriebsfrequenzen die Zeitsteuerung des externen Systemtakts getreulich wieder, und die Zeitsteuerung der Taktsignale in den beiden Bereichen kann sich während des Betriebs der Speichervorrichtung aufgrund von Variationen im Prozess, in der Spannung und der Temperatur (PVT) gegenseitig überkreuzen. Das kann dahingehend ein Problem verursachen, dass ein Taktbereich, der zum Liefern von Lesedaten an einen Ausgabezwischenspeicher verantwortlich ist, verursachen kann, dass diese Daten zu einer anderen Zeit geliefert werden, als derjenigen, zu welcher der zeitlich rückversetzte Lesetakt zum Zwischenspeichern dieser Daten am Zwischenspeicher vorhanden ist.
- Um eine spezifizierte Leselatenz zu treffen, muss die Speichervorrichtung dazu fähig sein, nach Empfang eines Lesebefehls Taktsignale zu zählen und den Ausgabezwischenspeicher zu aktivieren, um Ausgabedaten mit dem zeitlich rückversetzten Lesetakt zu genau der Zeit zwischenzuspeichern, die zum Erzeugen der spezifizierten Leselatenz nötig ist. Dies ist schwierig, wenn der erste und der zweite Taktbereich einander ständig überkreuzen.
- Da die zeitliche Rückversetzung des Lesetakts relativ zur Datenverfügbarkeit unbestimmt wird, ist es sehr schwierig, den Lesetakt zu steuern und eine korrekte Datenausgabe und eine in externen Taktzyklen gemessen spezifische Leselatenz zu garantieren.
- Das
US-Patent Nr. 6,240,042 bezieht sich auf das Synchronisieren von Ausgabedaten und Datentaktsignalen unter der Verwendung interner verschachtelter Taktsignale in einem DRAM, die mit einem externen Takt synchronisiert sind. Eine Delay Locked Loop ist mit einem externen Taktsignal synchronisiert und erzeugt interne verschachtelte Taktsignale. Diese werden hinsichtlich ihrer Verzögerung exakt mit dem externen Taktsignal in Übereinstimmung gebracht, während sie sich durch die Zeitsteuerungsschaltungen ausbreiten, so dass sie mit dem Latenz- und dem Burst-Längenauswahlsignal gekoppelt sind. - Ein Datentaktsignal wird unter Verwendung der verschachtelten Taktsignale erzeugt. Das Datentaktsignal und die Daten werden über Pfade mit vergleichbaren Anzahlen und Typen von Verzögerungselementen gekoppelt, um Ausgangsdaten mit einem vorbestimmten Verhältnis mit dem externen Taktsignal zu liefern.
- Zusammenfassung der Erfindung
- Die vorliegende Erfindung liefert ein Verfahren und eine Vorrichtung zum Kompensieren einer Unsicherheit und von Variationen in der zeitlichen Rückversetzung des Lesetaktes relativ zu einem Datenstrom, um eine korrekte Datenausgabe mit einer spezifizierten, in externen Taktzyklen gemessenen Leselatenz zu erhalten.
- Bei der vorliegenden Erfindung wird ein Startsignal von dem externen Systemtaktbereich zum internen Lesetaktbereich übertragen, so dass das Startsignal zum Lesetakt ein festes Zeitsteuerungsverhältnis hat. Das Startsignal verfolgt alle Veränderungen in der Lesetaktzeitsteuerung und wird dazu verwendet zu garantieren, dass Lesedaten aus einem Speicherfeld und ein Lesetakt am Ausgang einer Speichervorrichtung entsprechend synchronisiert sind.
- Das Startsignal wird nach Empfang eines Lesebefehls von einem Befehlsdecodierer erzeugt und durch eine Verzögerungsleitung geleitet, die der Delay Locked Loop (DLL)-Verzögerungsleitung untergeordnet ist, die zum zeitlichen Rückversetzen des Lesetakts verwendet wird. Nach dem Gelangen durch die untergeordnete Verzögerungsleitung hat das Startsignal dann dieselbe Phase und zeitliche Rückversetzung relativ zum externen Takt wie der Lesetakt.
- Ein Zähler wird mit einem von einem Modusregister und einem Offset-Register gelieferten Wert vorgeladen. Dieser Wert repräsentiert eine gewünschte Leselatenz minus eine gemessene Verzögerung im zur Verfügung Stellen eines Lesetaktsignals durch DLL, Taktbaum, Ausgabezwischenspeicher und Ausgabetreiber. Der Zähler zählt dann nach Empfang des Startsignals unter Verwendung des Lesetakts bis zu einem spezifizierten Wert. Der tatsächliche Zählwert, der in den Zähler vorgeladen wird, kann ferner um einen oder mehrere Zählschritte versetzt werden, um Decodierungs- oder andere eventuell auftretende Verzögerungen innerhalb der Speichervorrichtung zu berücksichtigen. Wenn der Zähler den spezifizierten Wert erreicht, dann teilt er dies der Ausgabeschaltung mit, welche die Lesedaten und den Lesetakt empfängt, um synchron die Lesedaten zwischenzuspeichern und die Lesedaten mit einer spezifizierten Leselatenz auszugeben.
- Daher wird, auch wenn die zeitliche Rückversetzung des Lesetaktausgangssignals variiert und über eine Taktzyklusgrenze hin- und hergeht, das Startsignal sich damit mitbewegen, wodurch der Betrieb des Daten- und des Lesetaktes synchronisiert bleiben.
- Die vorhergehenden und weiteren Merkmale und Vorteile der Erfindung werden aus der detaillierten Beschreibung der beispielhaften Ausführungsformen der Erfindung ersichtlich, die unten im Zusammenhang mit den beiliegenden Zeichnungen gegeben wird.
- Kurze Beschreibung der Zeichnungen
-
1 ist ein Blockdiagramm einer ersten Ausführungsform einer Speichervorrichtung, welche die vorliegende Erfindung einsetzt; -
2 ist ein Blockdiagramm der ersten Ausführungsform, wobei zusätzliche Schaltungen gezeigt sind, die während der Initialisierung verwendet werden; -
3 ist ein Blockdiagramm, das eine Modifikation an einem Teil der Schaltung von1 in einer zweiten Ausführungsform der Erfindung zeigt; und -
4 ist ein Blockdiagramm, das eine Speichervorrichtung nach den1 und2 darstellt, die in einem Prozessorsystem implementiert ist. - Detaillierte Beschreibung der Erfindung
- Die vorliegende Erfindung kompensiert eine Unsicherheit und Variation in der zeitlichen Rückversetzung des Lesetaktes in einem DRAM dadurch, dass Daten an die Ausgabezwischenspeicher geliefert werden, die in entsprechender Weise mit dem zeitlich rückversetzten Lesetakt abgestimmt sind, um sicherzustellen, dass die Daten mit einer spezifizierten Leselatenz entsprechend an den Datenbus geliefert werden.
-
1 veranschaulicht den Betriebsteil einer ersten Ausführungsform der Erfindung als Teil einer Speichervorrichtung100 . Eine externe Speichersteuerung160 liefert einen externen Systemtakt XWCLK an die Speichervorrichtung100 auf der externen Taktleitung116 und Befehls- und Adresssignale auf dem Befehls/Adressbus112 . Speicherfelddaten werden zwischen der Steuerung160 und der Speichervorrichtung100 über einen Multi-Bit-Datenbus ausgetauscht, der in1 mit einer Datenleitung108 des Buses dargestellt ist. Da die Erfindung insbesondere auf die Zeitsteuerung von Lesevorgängen gerichtet ist, die innerhalb der Speichervorrichtung100 stattfinden, ist dargestellt, dass die Datenleitung108 ausgewählte Lesedaten von einem Speicherfeld170 über eine Datenpipeline104 an einen Lesezwischenspeicher124 an einen Leitungstreiber126 an die Leitung108 und in die Speichersteuerung160 liefert. Die Datenpipeline104 enthält einen Serialisierer zum Umwandeln parallel gelieferter Felddaten in serielle Daten zur Lieferung an den DQ-Pfad108 . - Die Speichervorrichtung
100 enthält ferner einen Taktpuffer117 zum Puffern des externen Systemtakts XWCLK, einen Befehls-/Adresspuffer119 zum Puffern von Befehls- und Adresssignalen, die auf dem Befehls- und Adressbus112 erscheinen, sowie einen Befehlsdecodierer (CMD)121 zum Decodieren von der Speichersteuerung160 eintreffender Befehle. Ein vom Decodierer121 decodierter Lesebefehl wird zum Initialisieren eines Lesevorgangs auf dem Speicherfeld170 verwendet und leitet über die Steuerungslogik der Speichervorrichtung100 einen Lesevorgang ein, die in1 als Leselogik123 dargestellt ist, die das Speicherfeld170 betreibt, um von einer oder mehreren der Speicheradressen, die von der Steuerung160 spezifiziert sind, Daten auszulesen, die vom Adressdecodierer125 decodiert werden. Die Leselogik wird von einem gepufferten externen Systemtaktsignal XWCLK angesteuert. - Der gepufferte externe Takt wird ebenfalls an den Befehlsdecodierer (CMD) und Adressdecodierer angelegt, um die Befehls- und Adressdaten in entsprechender Weise von der Speichersteuerung
160 zu lesen. Der gepufferte externe Takt wird ebenfalls an eine Delay Lock Loop120 angelegt, die in Kombination mit dem Taktbaum127 zusätzliche interne Taktsignale für die Speichervorrichtung100 erzeugt, wovon eines das Lesetaktsignal auf der Leitung129 ist. Wie oben erörtert, ist der von der Delay Lock Loop120 und dem Taktbaum127 erzeugte Lesetakt um die Verzögerung im Ausgabepfad zeitlich zurückversetzt. Eine bestimmte Flanke des Lesetaktsignals wird gewählt, um den Ausgabelesezwischenspeicher124 anzusteuern, um für bestimmte Lesedaten aus dem Feld170 eine spezifizierte Leselatenz zu erzielen. - Um sicherzustellen, dass die Lesedaten und das Lesetaktsignal in einem korrekt zeitgesteuerten Verhältnis beim Lesezwischenspeicher
124 eintreffen, und zwar unabhängig von PVT- oder anderen Zeitsteuerungsvariationen, wird ein Lesestartsignal verwendet. Das Lesestartsignal wird vom Befehlsdecodierer121 auf der Leitung118 ausgegeben, wenn ein Lesebefehl decodiert wird. Das Lesestartsignal wird an eine untergeordnete Verzögerungsschaltung132 angelegt, die der Zeitsteuerung der Delay Lock Loop120 untergeordnet ist. Das Ausgangssignal der untergeordneten Verzögerung132 wird an ein Taktbaummodell133 angelegt, das einstellbar sein kann, um vom Lesetakt durch den Taktbaum127 erfahrene Verzögerungen nachzubilden. Daher werden jegliche Zeitsteuerungsvariationen, die dem von der DLL120 erzeugten Lesetaktsignal auf der Leitung129 verliehen werden, dem Lesestartsignal174 ebenfalls verliehen. Als Folge hiervon unterliegt das Lesestartsignal denselben PVT- oder anderen Zeitsteuerungsvariationen, die auch das Lesetaktsignal auf der Leitung129 erfährt und ist hinsichtlich Ausgangspfadverzögerungen um dieselbe Zeit rückversetzt wie das Lesetaktsignal auf der Leitung129 . Das Lesestartsignal wird als ein verzögertes Startsignal auf der Leitung174 aus dem Taktbaummodell133 ausgegeben. - Das verzögerte Startsignal auf der Leitung
174 wird an einen Abwärtszähler148 angelegt, der mit einer aus einem Modusregister144 stammenden spezifizierten Lesedatenlatenz geladen ist. Die spezifizierte Latenz liegt in der Form einer Anzahl von Taktzyklen vor und kann zur Zeit der Herstellung in der Speichervorrichtung100 fest eingestellt werden oder kann auch ein Wert sein, der bei der Initialisierung über die Befehlsdecodierung beim Decodierer121 von der Speichersteuerung160 in das Modusregister144 einprogrammiert wird. Ferner, wenn zusätzliche Offsets benötigt werden, um Verzögerungen in anderen Vorgängen der Speichervorrichtung100 zu berücksichtigen, können sie von dem vom Modusregister144 kommenden und in den Zähler148 geladenen Latenzwert abgezogen werden. Die Offsets können von einer eigenen Offsetschaltung145 stammen oder in den im Modusregister144 gespeicherten ursprünglichen Latenzdaten mit berücksichtigt werden. - Der Abwärtszähler
148 ist auf diese Weise mit einer Anzahl von Lesetaktzyklen geladen, die nach dem Erscheinen des verzögerten Startsignals auf der Leitung174 erfolgen müssen, um eine spezifizierte Leselatenz für die Speichervorrichtung100 zu erreichen. Das Startsignal auf der Leitung174 ermöglicht es dem Abwärtszähler148 , unter der Verwendung des Lesetaktsignals auf der Leitung129 von seinem Anfangswert abwärts zu zählen. Wenn dann der Zähler148 einen vorbestimmten Zählwert, z.B. 0, erreicht, so gibt der Zähler148 die Datenpipeline104 frei, so dass Daten vom Feld170 den Lesezwischenspeicher124 in entsprechender Zeitsteuerung relativ zum Lesetakt auf der Leitung129 erreichen, um eine spezifizierte Leselatenz zu garantieren. - Die veranschaulichte Erfindung stellt sicher, dass unabhängig davon, welche PVT- oder anderen Zeitsteuerungsvariationen im Lesetakt erscheinen, diese auch im verzögerten Startsignal auf der Leitung
174 erscheinen, so dass die Daten und das Lesetaktsignal, die an den Ausgangszwischenspeicher124 geliefert werden, miteinander entsprechend synchronisiert sind, um sicherzustellen, dass die spezifizierte Leselatenz eingehalten wird. - Wie erwähnt, veranschaulicht
1 einen Offset, der von einer Offsetschaltung145 an den Abwärtszähler148 geliefert wird. Der Offset dient zur Berücksichtigung inhärenter Verzögerungen beim Erscheinen des Lesetaktsignals für bestimmte Lesedaten. Daher gibt es eine inhärente Verzögerung bei der Erzeugung des Lesetaktsignals beim Lesezwischenspeicher124 nach Empfang des Lesebefehls durch den Befehls(CMD)-Decodierer121 . Diese Verzögerung wird von der Delay Lock Loop120 , dem Taktbaum127 und anderen Schaltungsverzögerungen im Lesetaktsignalpfad erzeugt. Daher kann es nach Empfang eines Lesebefehls zum Beispiel fünf externe Systemtaktzyklen dauern, bis ein Lesetaktsignal für adressierte Lesedaten am Lesezwischenspeicher124 erscheint. Diese Verzögerungen, gemessen in einer ganzen Zahl externer Taktzyklen, z.B. fünf externe Taktzyklen, werden von der Offsetschaltung145 an den Abwärtszähler148 geliefert und werden von der absoluten Leselatenz, die vom Modusregister144 geliefert wird, abgezogen. Daher liefert, während das Modusregister144 anfänglich mit der von der Steuerung160 erwarteten absoluten Leselatenz eingestellt ist, z.B. acht externe Taktzyklen XWCLK, die Offsetschaltung einen hiervon zu subtrahierenden Wert, z.B. fünf Taktoffsets, der auf den inhärenten Verzögerungen beim Erzeugen des Lesetaktsignals für bestimmte zu lesende Daten basiert. Die Abwärtszählerschaltung148 speichert das Nettoergebnis, z.B. drei Taktzyklen, für eine absolute Leselatenz von acht Taktzyklen und eine Lesetaktsignalverzögerung von fünf Taktzyklen. - Wenn der Abwärtszähler
148 die drei Lesetaktzyklen nach dem Erscheinen des Startsignals zählt (insgesamt acht Lesetaktzyklen sind dann nach einem Lesebefehl vergangen), so liefert der achte Lesetaktzyklus die Daten auf die Ausgabekontakte, so dass insgesamt acht Lesetaktzyklen, die acht externen Systemtaktzyklen entsprechen, erfolgt sind. Der Zähler148 gibt den Start der Datenpipeline104 frei, welche für die Dauer eines Lesedatenbursts weiter betrieben wird. - Der von der Offsetschaltung
145 gelieferte Offsetwert kann bei einer Systeminitialisierung leicht von dem in2 dargestellten System bestimmt werden.2 gleicht1 , zeigt jedoch zusätzlich eine Zeituhr128 , eine I/O-Pfad-Modellschaltung158 und einen Schalter146 zum gezielten Anlegen eines Eingabeimpulses an die DLL120 . Während einer Initialisierungsperiode empfängt die Zeituhr128 , nachdem die DLL120 angeschlossen wurde, ein DLL-Anschlusssignal und sendet über den Schalter146 ein Impulssignal durch die DLL120 und beginnt mit dem Zählen des externen Taktsignals XWCLK auf der Leitung116 . Die Zeituhr128 beendet das Zählen des externen Taktsignals, wenn sie von der I/O-Pfad-Modellschaltung158 ein Eingangssignal empfängt, das erzeugt wird, wenn das angelegte Impulssignal auf der Leitung129 erscheint. Die I/O-Pfad-Modellschaltung158 stellt die Zeitsteuerung des eintreffenden Lesetaktsignals unter Berücksichtigung erwarteter PVT-Variationen ein und liefert das eingestellte Lesetaktsignal an die Zeituhr128 , wodurch veranlasst wird, dass die Zeituhr128 das Zählen externer Taktsignale beendet. Der in der Zeituhr enthaltene Zählwert ist der Offset in externen Taktsignalen, welcher die Verzögerung beim Erzeugen des Lesetaktsignals repräsentiert, nachdem ein Lesebefehl ausgegeben wird. Dieser Offsetwert wird in der Offsetschaltung145 zur Verwendung beim Versetzen der von der Steuerung160 im Modusregister144 eingestellten Leselatenz gespeichert. - Wie aus dem obigen hervorgeht, stellt die durch die Ausführungsform der
1 und2 beispielhaft angegebene Erfindung sicher, dass der korrekte Lesetakt für die Lesedaten zur selben Zeit beim Zwischenspeicher124 ist, wie die Lesedaten vom Datenfeld170 beim Zwischenspeicher zu der spezifizierten Leselatenz erscheinen, selbst wenn PVT- oder andere Zeitsteuerungsvariationen vorhanden sind, die das Lesetaktsignal betreffen. Ein Lesestartsignal, das durch eine untergeordnete Verzögerungsschaltung geleitet wird, welches dieselbe Verzögerung und dieselben Zeitsteuerungseinstellungen auf das Startsignal anwendet, wie diejenigen, die bei der Herstellung des Lesetakts inhärent sind, wird zum Synchronisieren von Daten, die von dem Feld durch den Ausgabepfad gelangen, mit der Ankunftszeit des Lesetakts verwendet. - Auch wenn das System anhand eines Beispiels beschrieben wurde, bei dem der Abwärtszähler
148 auf einen Wert 0 herunterzählt und dann die Datenpipelineschaltung104 aktiviert, können auch inhärente Verzögerungen, wie zum Beispiel beim Starten der Datenpipeline104 oder beim Decodieren von Betriebslesebefehlen inhärent sein. Daher kann es in solchen Situationen sein, dass der Abwärtszähler148 nicht ganz auf den Wert 0 herabzählt, bevor er die Datenpipeline104 füllt, sondern anstatt dessen auf einen Wert herunterzählt, der derartige Verzögerungen berücksichtigt. Zum Beispiel beginnt der Abwärtszähler, wenn er vom verzögerten Startsignal freigegeben wird, unter der Verwendung der beispielhaften absoluten Leselatenz von acht externen Taktzyklen und mit einem Offset von fünf Taktzyklen zum Erzeugen des Lesetaktes mit dem Zählen bei drei und zählt vielleicht auf einen Zählwert von eins herunter, wenn es bei der Lesebefehlsdecodierung oder beim Start der Ausgabepipeline104 eine Verzögerung von einem externen Taktzyklus gibt. - Alternativ dazu kann eine beliebige Ausgabepfadverzögerung in der Offsetschaltung
145 berücksichtigt werden, die einen Offsetwert liefert, der die Datenpfadverzögerung berücksichtigt. - Auf welchen Wert der Zähler
148 auch immer herunterzählt, halten der Abwärtszähler148 oder dem Abwärtszähler148 zugeordnete zusätzliche Schaltungen bei Erreichen dieses Wertes den Datenpfad für die Dauer eines Lesedatenbursts offen und werden danach mit einem neuen aus dem Modusregister144 und der Offsetschaltung145 stammenden Zählwert für die nächste Leseoperation zurückgesetzt. -
3 zeigt eine Modifikation der Ausführungsform von1 , wobei der Abwärtszähler148 anstatt dessen, dass er die Datenpipeline104 aktiviert, ein Freigabesignal EN an den Lesezwischenspeicher124 sendet, um die Datenausgabe aus dem Feld mit dem Lesetakt auf der Leitung129 zu synchronisieren. Ansonsten gleicht die Ausführungsform von3 exakt der von1 . Bei der Modifikation von3 wird das Freigabesignal geliefert, wenn der Zähler148 von seinem vorgeladenen Wert auf einen Wert 0 oder einen anderen Wert, wenn zusätzliche Verzögerungen berücksichtigt werden müssen, herunterzählt. Das Freigabesignal wird auch vom Abwärtszähler oder einer anderen diesem zugeordneten Logik über so viele Lesetaktzyklen aufrechterhalten, wie für einen Datenausgabeburst benötigt werden. Hiernach wird der Zähler148 erneut geladen und für einen nächsten Lesevorgang rückgesetzt. Wiederum liefert die Ausführungsform von3 wie auch die Ausführungsform von1 , eine Synchronisierung der Lesedaten und des Lesetaktes im Ausgabepfad. -
4 zeigt ein beispielhaftes Verarbeitungssystem500 , das eine DRAM-Speichervorrichtung100 gemäß den Ausführungsformen der vorliegenden Erfindung, die in den1 -3 offenbart sind, verwendet.4 stellt eine beispielhafte PC- oder Workstation-Architektur dar. Das Verarbeitungssystem500 enthält einen oder mehrere Prozessoren501 , die mit einem lokalen Bus504 gekoppelt sind. Eine Speichersteuerung160 und eine primäre Busbrücke503 sind ebenfalls an den lokalen Bus504 angeschlossen. Das Verarbeitungssystem500 kann mehrere Speichersteuerungen160 und/oder mehrere primäre Busbrücken503 aufweisen. Die Speichersteuerung160 und die primäre Busbrücke503 können als ein einziges Gerät506 integriert sein. - Die Speichersteuerung
160 ist ebenfalls mit einem oder mehreren Speicherbussen507 gekoppelt. Jeder Speicherbus akzeptiert Speicherkomponenten508 , die mindestens eine Speichervorrichtung100 enthalten. Die Speicherkomponenten508 können eine Speicherkarte oder ein Speichermodul sein. Beispiele von Speichermodulen sind Single Inline Memory Modules (SIMMs) und Dual Inline Memory Modules (DIMMs). Die Speicherkomponenten508 können eine oder mehrere zusätzliche Vorrichtungen509 enthalten. Zum Beispiel könnte bei einem SIMM oder einem DIMM die zusätzliche Vorrichtung509 ein Konfigurationsspeicher, wie zum Beispiel ein SPD-Speicher (Serial Presence Detect) sein. Die Speichersteuerung502 kann auch mit einem Cache-Speicher505 verbunden sein. Der Cache-Speicher505 kann dabei der einzige Cache-Speicher im Verarbeitungssystem sein. Als Alternative hierzu können auch andere Vorrichtungen, wie zum Beispiel Prozessoren501 , ebenfalls Cache-Speicher enthalten, die mit dem Cache-Speicher505 eine Cache-Hierarchie bilden können. Wenn das Verarbeitungssystem500 Peripheriegeräte oder Controller enthält, bei denen es sich um Bus-Master handelt oder die Direct Memory Access (DMA) unterstützen, kann die Speichersteuerung160 auch ein Cache-Kohärenzprotokoll implementieren. Wenn die Speichersteuerung160 mit einer Vielzahl von Speicherbussen516 verbunden ist, kann jeder Speicherbus516 parallel betrieben werden, oder es können auch andere Adressbereiche auf andere Speicherbusse507 abgebildet werden. - Die primäre Busbrücke
503 ist mit mindestens einem Peripheriebus510 verbunden. Verschiedene Vorrichtungen wie zum Beispiel Peripheriegeräte oder zusätzliche Busbrücken, können mit dem Peripheriebus510 verbunden sein. Diese Vorrichtungen können eine Speichersteuerung511 , eine sonstige I/O-Vorrichtung514 , eine sekundäre Busbrücke515 , ein Multimediaprozessor518 und eine Schnittstelle520 für Altgeräte sein. Die primäre Busbrücke503 kann auch mit einem oder mehreren speziellen Hochgeschwindigkeits-Ports522 verbunden sein. Bei einem PC kann der spezielle Port zum Beispiel der AGP-Port (Accelerated Graphics Port) sein, der zum Verbinden einer Hochleistungsvideokarte mit dem Verarbeitungssystem500 verwendet wird. - Die Speichersteuerung
511 verbindet eine oder mehrere Speichervorrichtungen513 über den Speicherbus512 mit dem Peripheriebus510 . Zum Beispiel kann die Speichersteuerung511 eine SCSI-Steuerung sein, und die Speichervorrichtungen513 können SCSI-Platten sein. Die I/O-Vorrichtung514 kann ein beliebiges Peripheriegerät sein. Zum Beispiel kann die I/O-Vorrichtung514 eine LAN-Schnittstelle, wie zum Beispiel eine Ethernet-Karte sein. Die sekundäre Busbrücke kann zum Bilden einer Schnittstelle zum Anbinden zusätzlicher Geräte über einen anderen Bus an das Verarbeitungssystem verwendet werden. Zum Beispiel kann die sekundäre Busbrücke eine USB-Steuerung (Universal Serial Bus) sein, die zum Anschließen von USB-Geräten517 an das Verarbeitungssystem500 verwendet wird. Der Multimediaprozessor518 kann eine Soundkarte, eine Videoaufzeichnungskarte oder eine beliebige andere Art Medienschnittstelle sein, die auch mit zusätzlichen Geräten, wie zum Beispiel Lautsprechern519 , verbunden sein kann. Die Schnittstelle520 für Altgeräte wird zum Anschließen von alten Geräten, wie zum Beispiel älteren Tastaturen und Mäusen, an das Verarbeitungssystem500 verwendet. - Das in
4 gezeigte Verarbeitungssystem500 ist lediglich ein beispielhaftes Verarbeitungssystem, mit dem die Erfindung verwendet werden kann.4 zeigt zwar eine Verarbeitungsarchitektur, die für einen Allzweckrechner, wie zum Beispiel einen PC oder eine Workstation, besonders geeignet ist, doch versteht es sich, dass wohlbekannte Modifikationen vorgenommen werden können, um das Verarbeitungssystem500 so zu konfigurieren, dass es für die Verwendung in einer Vielzahl von Anwendungen besser einsetzbar wird. Zum Beispiel können viele elektronische Geräte, die eine Verarbeitung benötigen, unter der Verwendung einer einfacheren Architektur implementiert werden, die auf eine CPU501 zurückgreift, die mit Speicherkomponenten508 und/oder Speicherpuffervorrichtungen504 gekoppelt ist. Diese elektronischen Geräte können zum Beispiel Audio-/Videoprozessoren und -rekorder, Spielkonsolen, digitale Fernsehgeräte, verdrahtete oder drahtlose Telefone, Navigationsgeräte (einschließlich eines Systems, das auf GPS (Global Positioning System) und/oder Trägheitsnavigation basiert) sowie Digitalkameras und/oder -rekorder sein, sind hierauf jedoch nicht eingeschränkt. Bei den Modifikationen kann es sich zum Beispiel um das Weglassen unnötiger Komponenten, das Hinzufügen spezialisierter Geräte oder Schaltungen und/oder die Integration einer Vielzahl von Geräten handeln. - Die vorliegende Erfindung wurde zwar anhand spezifischer beispielhafter Ausführungsformen beschrieben und veranschaulicht, doch versteht es sich, dass viele Modifikationen und Ersetzungen vorgenommen werden können, ohne dass dadurch vom Geist und Umfang der Erfindung abgewichen wird. Demgemäß ist die vorliegende Erfindung nicht durch die vorhergehende Beschreibung, sondern lediglich durch den Umfang der beiliegenden Ansprüche eingeschränkt.
Claims (58)
- Verfahren zum Betreiben einer Speichervorrichtung (
100 ), wobei das Verfahren umfasst: Erzeugen eines internen Lesetaktsignals (129 ) aus einem externen Taktsignal (116 ) unter der Verwendung eines ersten Signalverarbeitungspfads (117 ;120 ;127 ), wobei der erste Signalverarbeitungspfad Variationen in der Zeitsteuerung des erzeugten Lesetaktsignals (129 ) verursacht; Erzeugen eines Lesestartsignals (118 ) in Reaktion auf einen empfangenen Lesebefehl; Leiten des Lesestartsignals (118 ) durch einen zweiten Signalverarbeitungspfad (132 ;133 ), der die vom ersten Signalverarbeitungspfad verursachten Variationen in der Zeitsteuerung des erzeugten Lesetaktsignals (129 ) nachbildet, und wobei ein verzögertes Startsignal (174 ) erzeugt wird; und Ausgeben gelesener Daten (108 ) in Reaktion auf das verzögerte Startsignal (174 ) und das Lesetaktsignal (129 ). - Verfahren nach Anspruch 1, wobei das verzögerte Startsignal (
174 ) die Ausgabe gelesener Daten (108 ) durch den Lesetakt an einem Lesezwischenspeicher (124 ) mit einer vorbestimmten Leselatenz synchronisiert. - Verfahren nach Anspruch 2, wobei die vorbestimmte Leselatenz aus einer vorbestimmten Anzahl externer Taktzyklen nach Ausgabe eines Lesebefehls durch eine Speichersteuerung (
160 ) besteht. - Verfahren nach Anspruch 3, ferner umfassend das Verwenden des verzögerten Startsignals (
174 ) zum Freigeben eines Zählens von Lesetaktzyklen bis zu einem vorbestimmten Wert; und Veranlassen, dass Lesedaten von einem Speicherfeld (170 ) durch eine Datenschaltung zu dem Zwischenspeicher (124 ) gelangen, wenn der vorbestimmte Wert erreicht wird. - Verfahren nach Anspruch 3, ferner umfassend das Verwenden des verzögerten Startsignals (
174 ) zum Freigeben eines Zählens von Lesetaktzyklen bis zu einem vorbestimmten Wert; und Veranlassen, dass der Lesezwischenspeicher (124 ) freigegeben wird, wenn der vorbestimmte Wert erreicht wird. - Verfahren nach Anspruch 4 oder Anspruch 5, ferner umfassend: Setzen eines Anfangswerts in einem Zähler (
148 ); Freigeben des Zählers (148 ) mit dem verzögerten Startsignal (174 ) zum Zählen von Lesetaktzyklen ab dem Anfangswert zu dem vorbestimmten Wert. - Verfahren nach Anspruch 6, wobei der Anfangswert aus ersten Daten, welche die vorbestimmte Leselatenz repräsentieren, und zweiten Daten bestimmt wird, welche die Zeit repräsentieren, die ein Lesetakt (
129 ) benötigt, um nach Ausgabe eines Lesebefehls durch die Speichersteuerung (160 ) am Ausgang des ersten Signalverarbeitungspfads zur Verfügung zu stehen. - Verfahren nach Anspruch 7, wobei die ersten und die zweiten Daten in der Speichervorrichtung (
100 ) gespeichert sind. - Verfahren nach Anspruch 8, wobei die ersten Daten in einem Modusregister (
144 ) der Speichervorrichtung gespeichert sind. - Verfahren nach Anspruch 9, wobei die zweiten Daten in einer Offsetschaltung (
145 ) der Speichervorrichtung gespeichert sind. - Verfahren nach Anspruch 9, wobei die ersten Daten von der Speichersteuerung (
160 ) an das Modusregister (144 ) geliefert werden. - Verfahren nach Anspruch 10, ferner umfassend das Feststellen der Zeit, die ein Lesetaktsignal (
129 ) benötigt, um nach Ausgabe eines Lesebefehls durch den ersten Verarbeitungspfad zu gelangen, und Speichern der festgestellten Zeit als Taktzyklen des externen Taktes in der Offsetschaltung (145 ). - Verfahren nach Anspruch 1, ferner umfassend das Unterordnen des zweiten Signalverarbeitungspfads dem ersten Signalverarbeitungspfad zum Erzeugen der Nachbildung.
- Verfahren nach Anspruch 13, wobei der erste Signalverarbeitungspfad eine erste Delay Lock Loop (
120 ) und der zweite Signalverarbeitungspfad eine Verzögerungsschaltung (132 ) aufweist, die der ersten Delay Lock Loop (120 ) untergeordnet ist. - Verfahren nach Anspruch 1, wobei die Zeitsteuerungsvariationen Variationen sind, die von einem Herstellungsvorgang, der Spannung und/oder der Temperatur verursacht werden.
- Verfahren nach Anspruch 1, ferner umfassend: Verwenden des externen Taktsignals (
116 ) als ein Eingangssignal an eine erste Delay Lock Loop (120 ) zum Erzeugen des internen Lesetaktsignals (129 ); Leiten des Lesestartsignals durch eine Verzögerungsschaltung (132 ), die der ersten Delay Lock Loop untergeordnet ist, zum Erzeugen des verzögerten Startsignals (174 ); und Verwenden des verzögerten Startsignals (174 ) und des internen Lesetaktsignals (129 ) zum Ausgeben von Lesedaten aus einem Speicherfeld (170 ) der Speichervorrichtung (100 ). - Verfahren nach Anspruch 16, wobei der Schritt des Verwendens umfasst: Verwenden des verzögerten Signals (
174 ) zum Freigeben des Zählens von Lesetaktzyklen bis zu einem vorbestimmten Zählwert; Freigeben einer Datenschaltung (104 ), die Felddaten an einen Ausgabezwischenspeicher (124 ) liefert, wenn der Zähler (148 ) den vorbestimmten Wert erreicht; und Zwischenspeichern der gelieferten Daten mit dem Lesetaktsignal (129 ). - Verfahren nach Anspruch 16, wobei der Schritt des Verwendens umfasst: Verwenden des verzögerten Signals (
174 ) zum Freigeben des Zählens von Lesetaktzyklen bis zu einem vorbestimmten Zählwert; Freigeben eines Ausgabezwischenspeichers (124 ), wenn der Zähler den vorbestimmten Wert erreicht; und Zwischenspeichern der gelieferten Daten mit dem Lesetaktsignal (129 ). - Verfahren nach Anspruch 17 oder Anspruch 18, wobei das Zählen derart ist, dass der Ausgabezwischenspeicher (
124 ) Lesedaten (108 ) mit einer vorbestimmten Leselatenz an einen Ausgabebus liefert. - Verfahren nach Anspruch 19, wobei das Zählen bis zu dem vorbestimmten Wert bei einem voreingestellten Wert beginnt, der mindestens teilweise gemäß der vorbestimmten Leselatenz bestimmt wird.
- Verfahren nach Anspruch 20, wobei der voreingestellte Wert auf der vorbestimmten Leselatenz, versetzt um mindestens die Zeit, die ein Lesetaktsignal (
129 ) benötigt, um nach Ausgabe eines Lesebefehls durch einen die Delay Lock Loop (120 ) aufweisenden Signalverarbeitungspfad (117 ;120 ;127 ) zu gelangen, basiert. - Verfahren nach Anspruch 21, wobei die vorbestimmte Leselatenz ferner durch eine zusätzliche Verzögerung versetzt ist, die im Betrieb der Speichervorrichtung (
100 ) inhärent ist. - Verfahren nach Anspruch 22, wobei die zusätzliche Verzögerung mindestens teilweise durch das Dekodieren eines Sendebefehls verursacht wird.
- Verfahren nach Anspruch 22, wobei die zusätzliche Verzögerung mindestens teilweise durch das Aktivieren eines Datenpfads verursacht wird.
- Verfahren nach Anspruch 16, wobei die Delay Lock Loop (
120 ) und die Verzögerungsschaltung (132 ) den gleichen induzierten Signalzeitsteuerungsvariationen unterliegen. - Verfahren nach Anspruch 25, wobei die induzierten Signalzeitsteuerungsvariationen durch Variationen eines Herstellungsvorgangs, der Spannung und/oder der Temperatur hervorgerufen werden.
- Speichervorrichtung (
100 ), umfassend: einen ersten Signalverarbeitungspfad (117 ;120 ;127 ) zum Erzeugen eines internen Lesetaktsignals (129 ) aus einem externen Taktsignal (116 ), wobei der erste Signalverarbeitungspfad dem Lesetaktsignal (116 ) Zeitsteuerungsvariationen verleiht; einen zweiten Signalverarbeitungspfad (132 ;133 ) zum Erzeugen eines verzögerten Startsignals (174 ) aus einem empfangenen Lesebefehl, wobei der zweiten Signalverarbeitungspfad die Zeitsteuerungsvariationen dem verzögerten Startsignal (174 ) verleiht; und eine Datenflusssteuerungsschaltung zum Ausgeben von Lesedaten (108 ) in Reaktion auf das verzögerte Startsignal (174 ) und das Lesetaktsignal (129 ). - Speichervorrichtung nach Anspruch 27, wobei die Datenflusssteuerungsschaltung umfasst: einen Lesezwischenspeicher (
124 ); eine Schaltung zum Liefern von Lesedaten von einem Speicherfeld (170 ) an den Lesezwischenspeicher (124 ); und eine Schaltung zum Synchronisieren der Ausgabe der Lesedaten (108 ) über den Zwischenspeicher (124 ) mit dem Lesetakt eine vorbestimmte Anzahl von Lesetaktzyklen nach der Erzeugung des verzögerten Startsignals (174 ). - Speichervorrichtung nach Anspruch 28, wobei die Freigabeschaltung umfasst: einen Zähler (
148 ) zum Zählen einer vorbestimmten Anzahl von Lesetaktzyklen, wobei der Zähler (148 ) durch das verzögerte Startsignal freigegeben wird; wobei die Lieferungsschaltung freigegeben wird, wenn die vorbestimmte Anzahl von Lesetaktzyklen gezählt ist. - Speichervorrichtung nach Anspruch 28, wobei die Freigabeschaltung umfasst: einen Zähler (
148 ) zum Zählen einer vorbestimmten Anzahl von Lesetaktzyklen, wobei der Zähler (148 ) durch das verzögerte Startsignal (174 ) freigegeben wird; wobei der Lesezwischenspeicher (124 ) freigegeben wird, wenn die vorbestimmte Anzahl von Lesetaktzyklen gezählt ist. - Speichervorrichtung nach Anspruch 29 oder Anspruch 30, wobei die vorbestimmte Anzahl von Lesetaktzyklen der Zeit entspricht, die benötigt wird, um Lesedaten mit einer vorbestimmten Leselatenz an Ausgabekontakte der Speichervorrichtung (
100 ) zu liefern. - Speichervorrichtung nach Anspruch 29 oder Anspruch 30, ferner mit Schaltungen zum Vorladen des Zählers (
148 ) mit einem spezifischen Zählwert, wobei der Zähler (148 ) die vorbestimmte Anzahl von Lesetaktzyklen ab dem spezifischen Zählwert zählt. - Speichervorrichtung nach Anspruch 32, wobei der spezifische Zählwert mit der Anzahl von Lesetaktzyklen zusammenhängt, die benötigt wird, um eine spezifizierte Leselatenz für die Speichervorrichtung (
100 ) zu erzeugen. - Speichervorrichtung nach Anspruch 33, wobei der spezifische Zählwert auf der spezifizierten Leselatenz, versetzt um die Zeit, die ein Lesetakt (
129 ) benötigt, um nach Ausgabe eines Lesebefehls von einer Speichersteuerung (160 ) am Ausgang des ersten Signalverarbeitungspfads zur Verfügung zu stehen, basiert. - Speichervorrichtung nach Anspruch 34, wobei der spezifizierte Zählwert auf der spezifizierten Leselatenz, ferner versetzt um eine zusätzliche Verzögerung innerhalb der Speichervorrichtung (
100 ), basiert. - Speichervorrichtung nach Anspruch 35, wobei die zusätzliche Verzögerung mindestens teilweise durch das Decodieren eines Lesebefehls verursacht wird.
- Speichervorrichtung nach Anspruch 35, wobei die zusätzliche Verzögerung mindestens teilweise durch eine Aktivierungszeit der Schaltung zum Liefern von Lesedaten an den Ausgabezwischenspeicher (
124 ) verursacht wird. - Speichervorrichtung nach Anspruch 33, wobei die Vorladeschaltung ein Modusregister (
144 ) zum Liefern eines ersten Zählwerts, der mit einer spezifizierten Leselatenz zusammenhängt, an den Zähler (148 ) umfasst. - Speichervorrichtung nach Anspruch 38, wobei der erste Zählwert eine spezifizierte Leselatenz ist und die Vorladeschaltung ferner eine Offsetschaltung (
145 ) zum Liefern eines zweiten Zählwerts an den Zähler (148 ) umfasst, der mit der Zeit zusammenhängt, die ein Lesetakt (129 ) benötigt, um nach Ausgabe eines Lesebefehls am Ausgang des ersten Signalverarbeitungspfads zur Verfügung zu stehen, wobei der Zähler (148 ) mit der Differenz zwischen dem ersten und dem zweiten Zählwert vorgeladen ist. - Speichervorrichtung nach Anspruch 39, wobei der Zähler (
148 ) mit der Differenz, ferner versetzt um einen Zählwert, der mit der Zeit zusammenhängt, die Lesedaten (108 ) benötigen, um durch die Lieferungsschaltung und den Lesezwischenspeicher (124 ) zu Ausgangskontakten der Speichervorrichtung zu gelangen, vorgeladen ist. - Speichervorrichtung nach Anspruch 27, wobei der erste Verarbeitungspfad eine Delay Lock Loop (
120 ) umfasst. - Speichervorrichtung nach Anspruch 41, wobei der zweite Verarbeitungspfad eine Verzögerungsschaltung (
132 ) aufweist, die der Delay Lock Loop (120 ) untergeordnet ist. - Speichervorrichtung nach Anspruch 27, ferner umfassend: eine Delay Lock Loop (
120 ) zum Erzeugen des internen Lesetaktsignals (129 ) aus einem externen Taktsignal (116 ); eine Verzögerungsschaltung (132 ), die mit der Delay Lock Loop (120 ) synchronisiert ist, zum Erzeugen des verzögerten Startsignals (174 ) aus einem Startsignal (118 ), das in Reaktion auf den Empfang des Lesebefehls erzeugt wird; einen Lesedatenzwischenspeicher (124 ); eine Datendurchleitschaltung zum Durchleiten von Daten von einem Speicherfeld (170 ) zu dem Lesedatenzwischenspeicher (124 ); und eine Freigabeschaltung, die auf das verzögerte Startsignal (174 ) anspricht, damit von der Datendurchleitschaltung stammende Daten durch das Lesetaktsignal (129 ) ausgelesen werden können, nachdem eine vorbestimmte Anzahl von Zyklen des Lesetaktsignals gezählt ist. - Speichervorrichtung nach Anspruch 43, wobei die Verzögerungsschaltung (
132 ) der Delay Lock Loop (120 ) untergeordnet ist. - Speichervorrichtung nach Anspruch 43, wobei die Datendurchleitschaltung eine Datenpipelineschaltung (
104 ) ist. - Speichervorrichtung nach Anspruch 45, wobei die Datenpipelineschaltung (
104 ) einen Parallel-Seriell-Wandler aufweist. - Speichervorrichtung nach Anspruch 43, wobei die Freigabeschaltung das Auslesen von Lesedaten bei dem Lesezwischenspeicher (
124 ) mit der Zeitsteuerung des Lesetaktsignals (129 ) synchronisiert. - Speichervorrichtung nach Anspruch 47, wobei die Freigabeschaltung und das Lesetaktsignal (
129 ) Daten mit einer spezifizierten Leselatenz an einen Ausgang der Speichervorrichtung (100 ) liefern. - Speichervorrichtung nach Anspruch 43, wobei die Freigabeschaltung einen Zähler (
148 ) umfasst, der mit einem ersten Wert vorgeladen ist, zum Zählen von Lesetaktzyklen ab dem ersten Wert zu einem zweiten Wert und zum Freigeben des Auslesens der Daten durch das Lesetaktsignal (129 ), wenn der zweite Wert erreicht wird. - Speichervorrichtung nach Anspruch 49, wobei der Zähler (
148 ) ein Abwärtszähler ist. - Prozessorsystem, das einen Prozessor sowie die Speichervorrichtung (
100 ) nach einem der Ansprüche 27 bis 34 oder der Ansprüche 43 bis 50 zum Austauschen von Daten mit dem Prozessor umfasst. - Prozessorsystem nach Anspruch 51, in Abhängigkeit von Anspruch 34, wobei der spezifizierte Zählwert auf der spezifizierten Leselatenz, ferner versetzt um eine zusätzliche Zeit, die eine Aktivierungsverzögerung der Schaltung zum Liefern von Lesedaten repräsentiert, basiert.
- Prozessorsystem nach Anspruch 51, in Abhängigkeit von Anspruch 34, wobei der spezifizierte Zählwert auf der spezifizierten Leselatenz, ferner versetzt um eine Verzögerung beim Decodieren eines Lesebefehls, basiert.
- Prozessorsystem nach Anspruch 51, in Abhängigkeit von Anspruch 32, wobei die Vorladeschaltung ein Modusregister (
144 ) zum Liefern eines ersten Zählwerts, der mit einer spezifizierten Leselatenz zusammenhängt, an den Zähler (148 ) umfasst. - Prozessorsystem nach Anspruch 54, wobei der erste Zählwert eine spezifizierte Leselatenz ist, und die Vorladeschaltung ferner eine Offsetschaltung (
145 ) zum Liefern eines zweiten Zählwerts umfasst, der mit der Zeit zusammenhängt, die ein Lesetakt benötigt, um nach Ausgabe eines Lesebefehls am Ausgang des ersten Signalverarbeitungspfads zur Verfügung zu stehen, wobei der Zähler (148 ) mit der Differenz zwischen dem ersten und dem zweiten Zählwert vorgeladen wird. - Prozessorsystem nach Anspruch 55, wobei der Zähler (
148 ) mit der Differenz, ferner versetzt um einen Zählwert, der mit der Zeit zusammenhängt, die Lesedaten benötigen, um durch die Lieferschaltung und den Lesezwischenspeicher (124 ) zu Ausgangskontakten der Speichervorrichtung (100 ) zu gelangen, vorgeladen ist. - Prozessorsystem nach Anspruch 51, wobei der erste Verarbeitungspfad eine Delay Lock Loop (
120 ) umfasst. - Prozessorsystem nach Anspruch 56, wobei der zweite Verarbeitungspfad eine Verzögerungsschaltung (
132 ) aufweist, die der Delay Lock Loop (120 ) untergeordnet ist.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US230221 | 2002-08-29 | ||
US10/230,221 US6687185B1 (en) | 2002-08-29 | 2002-08-29 | Method and apparatus for setting and compensating read latency in a high speed DRAM |
PCT/US2003/026641 WO2004021352A1 (en) | 2002-08-29 | 2003-08-27 | Method and apparatus for setting and compensating read latency in a high speed dram |
Publications (2)
Publication Number | Publication Date |
---|---|
DE60315165D1 DE60315165D1 (de) | 2007-09-06 |
DE60315165T2 true DE60315165T2 (de) | 2008-04-17 |
Family
ID=30443782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE60315165T Expired - Lifetime DE60315165T2 (de) | 2002-08-29 | 2003-08-27 | Verfahren und vorrichtung zum einstellen und kompensieren der leselatenz in einem hochgeschwindigkeits-dram |
Country Status (10)
Country | Link |
---|---|
US (1) | US6687185B1 (de) |
EP (1) | EP1537582B1 (de) |
JP (1) | JP4322209B2 (de) |
KR (1) | KR100607764B1 (de) |
CN (1) | CN100446116C (de) |
AT (1) | ATE368285T1 (de) |
AU (1) | AU2003260069A1 (de) |
DE (1) | DE60315165T2 (de) |
TW (1) | TWI239534B (de) |
WO (1) | WO2004021352A1 (de) |
Families Citing this family (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7058799B2 (en) * | 2001-06-19 | 2006-06-06 | Micron Technology, Inc. | Apparatus and method for clock domain crossing with integrated decode |
US6930949B2 (en) * | 2002-08-26 | 2005-08-16 | Micron Technology, Inc. | Power savings in active standby mode |
US6762974B1 (en) * | 2003-03-18 | 2004-07-13 | Micron Technology, Inc. | Method and apparatus for establishing and maintaining desired read latency in high-speed DRAM |
US7177224B2 (en) * | 2003-05-21 | 2007-02-13 | Micron Technology, Inc. | Controlling multiple signal polarity in a semiconductor device |
US20050190193A1 (en) * | 2004-03-01 | 2005-09-01 | Freker David E. | Apparatus and a method to adjust signal timing on a memory interface |
DE102004015868A1 (de) | 2004-03-31 | 2005-10-27 | Micron Technology, Inc. | Rekonstruktion der Signalzeitgebung in integrierten Schaltungen |
KR100840441B1 (ko) | 2004-03-31 | 2008-06-20 | 마이크론 테크놀로지, 인크. | 집적 회로들에서의 신호 타이밍의 재구성 |
WO2005114106A1 (en) * | 2004-05-12 | 2005-12-01 | Northrop Grumman Corporation | System and method for aligning multiple navignation components |
US7065001B2 (en) * | 2004-08-04 | 2006-06-20 | Micron Technology, Inc. | Method and apparatus for initialization of read latency tracking circuit in high-speed DRAM |
US7660187B2 (en) * | 2004-08-04 | 2010-02-09 | Micron Technology, Inc. | Method and apparatus for initialization of read latency tracking circuit in high-speed DRAM |
KR100625296B1 (ko) | 2004-12-30 | 2006-09-19 | 주식회사 하이닉스반도체 | 고주파수 동작을 위한 동기식 반도체 장치의 레이턴시제어장치 및 그 제어방법 |
US7272054B2 (en) * | 2005-07-08 | 2007-09-18 | Micron Technology, Inc. | Time domain bridging circuitry for use in determining output enable timing |
US7526704B2 (en) * | 2005-08-23 | 2009-04-28 | Micron Technology, Inc. | Testing system and method allowing adjustment of signal transmit timing |
KR100665232B1 (ko) * | 2005-12-26 | 2007-01-09 | 삼성전자주식회사 | 동기식 반도체 메모리 장치 |
KR100805007B1 (ko) * | 2006-03-22 | 2008-02-20 | 주식회사 하이닉스반도체 | 데이터 출력 속도를 증가시키는 파이프 래치 회로와 이를포함하는 반도체 메모리 장치, 및 그 데이터 출력 동작방법 |
EP2007060B1 (de) * | 2006-04-05 | 2015-01-28 | Panasonic Corporation | Wechselbarer speicherbaustein, phasensynchronisierungsverfahren, phasensynchronisierungsprogramm, dieses aufzeichnendes medium und host-endgerät |
TWI305651B (en) * | 2006-09-11 | 2009-01-21 | Nanya Technology Corp | Latency counter having frequency detector and latency counting method thereof |
JP2008108417A (ja) * | 2006-10-23 | 2008-05-08 | Hynix Semiconductor Inc | 低電力dram及びその駆動方法 |
US7716510B2 (en) | 2006-12-19 | 2010-05-11 | Micron Technology, Inc. | Timing synchronization circuit with loop counter |
KR100866958B1 (ko) | 2007-02-08 | 2008-11-05 | 삼성전자주식회사 | 고속 dram의 정확한 독출 레이턴시를 제어하는 방법 및장치 |
US7656745B2 (en) * | 2007-03-15 | 2010-02-02 | Micron Technology, Inc. | Circuit, system and method for controlling read latency |
JP5687412B2 (ja) | 2009-01-16 | 2015-03-18 | ピーエスフォー ルクスコ エスエイアールエルPS4 Luxco S.a.r.l. | 半導体記憶装置及びそのリード待ち時間調整方法、メモリシステム、並びに半導体装置 |
US7969813B2 (en) * | 2009-04-01 | 2011-06-28 | Micron Technology, Inc. | Write command and write data timing circuit and methods for timing the same |
US8117483B2 (en) * | 2009-05-13 | 2012-02-14 | Freescale Semiconductor, Inc. | Method to calibrate start values for write leveling in a memory system |
KR101027686B1 (ko) * | 2009-07-30 | 2011-04-12 | 주식회사 하이닉스반도체 | 반도체 메모리 장치 |
US8984320B2 (en) | 2011-03-29 | 2015-03-17 | Micron Technology, Inc. | Command paths, apparatuses and methods for providing a command to a data block |
US8509011B2 (en) | 2011-04-25 | 2013-08-13 | Micron Technology, Inc. | Command paths, apparatuses, memories, and methods for providing internal commands to a data path |
US8901938B2 (en) * | 2012-02-01 | 2014-12-02 | Nanya Technology Corp. | Delay line scheme with no exit tree |
US8552776B2 (en) | 2012-02-01 | 2013-10-08 | Micron Technology, Inc. | Apparatuses and methods for altering a forward path delay of a signal path |
US9166579B2 (en) | 2012-06-01 | 2015-10-20 | Micron Technology, Inc. | Methods and apparatuses for shifting data signals to match command signal delay |
US9054675B2 (en) | 2012-06-22 | 2015-06-09 | Micron Technology, Inc. | Apparatuses and methods for adjusting a minimum forward path delay of a signal path |
US9047237B2 (en) * | 2012-08-03 | 2015-06-02 | Cypress Semiconductor Corporation | Power savings apparatus and method for memory device using delay locked loop |
US9329623B2 (en) | 2012-08-22 | 2016-05-03 | Micron Technology, Inc. | Apparatuses, integrated circuits, and methods for synchronizing data signals with a command signal |
US8913448B2 (en) | 2012-10-25 | 2014-12-16 | Micron Technology, Inc. | Apparatuses and methods for capturing data in a memory |
KR102011135B1 (ko) * | 2012-12-11 | 2019-08-14 | 삼성전자주식회사 | 모바일 장치 및 그것의 스왑을 통한 데이터 관리 방법 |
US9734097B2 (en) | 2013-03-15 | 2017-08-15 | Micron Technology, Inc. | Apparatuses and methods for variable latency memory operations |
US9727493B2 (en) | 2013-08-14 | 2017-08-08 | Micron Technology, Inc. | Apparatuses and methods for providing data to a configurable storage area |
US9183904B2 (en) | 2014-02-07 | 2015-11-10 | Micron Technology, Inc. | Apparatuses, memories, and methods for facilitating splitting of internal commands using a shared signal path |
US9508417B2 (en) | 2014-02-20 | 2016-11-29 | Micron Technology, Inc. | Methods and apparatuses for controlling timing paths and latency based on a loop delay |
US9530473B2 (en) | 2014-05-22 | 2016-12-27 | Micron Technology, Inc. | Apparatuses and methods for timing provision of a command to input circuitry |
US9531363B2 (en) | 2015-04-28 | 2016-12-27 | Micron Technology, Inc. | Methods and apparatuses including command latency control circuit |
US9813067B2 (en) | 2015-06-10 | 2017-11-07 | Micron Technology, Inc. | Clock signal and supply voltage variation tracking |
US9865317B2 (en) | 2016-04-26 | 2018-01-09 | Micron Technology, Inc. | Methods and apparatuses including command delay adjustment circuit |
US9601170B1 (en) | 2016-04-26 | 2017-03-21 | Micron Technology, Inc. | Apparatuses and methods for adjusting a delay of a command signal path |
US9997220B2 (en) | 2016-08-22 | 2018-06-12 | Micron Technology, Inc. | Apparatuses and methods for adjusting delay of command signal path |
US10224938B2 (en) | 2017-07-26 | 2019-03-05 | Micron Technology, Inc. | Apparatuses and methods for indirectly detecting phase variations |
CN110018789B (zh) * | 2019-03-26 | 2022-03-25 | 记忆科技(深圳)有限公司 | 动态适配NAND的Tr和Tprom时间的方法、装置及存储介质 |
CN111028873B (zh) * | 2019-12-19 | 2022-03-01 | 西安紫光国芯半导体有限公司 | 一种用于dram物理接口的自适应读通路延迟计算方法及电路 |
US11171654B1 (en) * | 2021-05-13 | 2021-11-09 | Qualcomm Incorporated | Delay locked loop with segmented delay circuit |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1147864C (zh) * | 1995-08-31 | 2004-04-28 | 株式会社东芝 | 半导体存储装置 |
US5923611A (en) * | 1996-12-20 | 1999-07-13 | Micron Technology, Inc. | Memory having a plurality of external clock signal inputs |
CN1223439A (zh) * | 1997-11-14 | 1999-07-21 | 三菱电机株式会社 | 具有阻止无效数据输出的功能的同步型半导体存储器 |
JP2000067583A (ja) * | 1998-08-25 | 2000-03-03 | Mitsubishi Electric Corp | 同期型半導体記憶装置 |
US6240042B1 (en) * | 1999-09-02 | 2001-05-29 | Micron Technology, Inc. | Output circuit for a double data rate dynamic random access memory, double data rate dynamic random access memory, method of clocking data out from a double data rate dynamic random access memory and method of providing a data strobe signal |
JP3807593B2 (ja) * | 2000-07-24 | 2006-08-09 | 株式会社ルネサステクノロジ | クロック生成回路および制御方法並びに半導体記憶装置 |
KR100378191B1 (ko) * | 2001-01-16 | 2003-03-29 | 삼성전자주식회사 | 고주파 동작을 위한 레이턴시 제어회로 및 제어방법과이를구비하는 동기식 반도체 메모리장치 |
JP2002298580A (ja) * | 2001-03-28 | 2002-10-11 | Mitsubishi Electric Corp | 半導体記憶装置 |
-
2002
- 2002-08-29 US US10/230,221 patent/US6687185B1/en not_active Expired - Lifetime
-
2003
- 2003-08-27 EP EP03791767A patent/EP1537582B1/de not_active Expired - Lifetime
- 2003-08-27 DE DE60315165T patent/DE60315165T2/de not_active Expired - Lifetime
- 2003-08-27 AU AU2003260069A patent/AU2003260069A1/en not_active Abandoned
- 2003-08-27 WO PCT/US2003/026641 patent/WO2004021352A1/en active IP Right Grant
- 2003-08-27 KR KR1020057003551A patent/KR100607764B1/ko not_active IP Right Cessation
- 2003-08-27 JP JP2004532998A patent/JP4322209B2/ja not_active Expired - Fee Related
- 2003-08-27 CN CNB038247186A patent/CN100446116C/zh not_active Expired - Fee Related
- 2003-08-27 AT AT03791767T patent/ATE368285T1/de not_active IP Right Cessation
- 2003-08-29 TW TW092123962A patent/TWI239534B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
TW200418045A (en) | 2004-09-16 |
EP1537582B1 (de) | 2007-07-25 |
JP2006514760A (ja) | 2006-05-11 |
WO2004021352A1 (en) | 2004-03-11 |
DE60315165D1 (de) | 2007-09-06 |
CN100446116C (zh) | 2008-12-24 |
TWI239534B (en) | 2005-09-11 |
KR100607764B1 (ko) | 2006-08-01 |
CN1695199A (zh) | 2005-11-09 |
AU2003260069A1 (en) | 2004-03-19 |
ATE368285T1 (de) | 2007-08-15 |
JP4322209B2 (ja) | 2009-08-26 |
KR20050086411A (ko) | 2005-08-30 |
EP1537582A1 (de) | 2005-06-08 |
US6687185B1 (en) | 2004-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60315165T2 (de) | Verfahren und vorrichtung zum einstellen und kompensieren der leselatenz in einem hochgeschwindigkeits-dram | |
DE10084993B3 (de) | Ausgabeschaltung für einen mit doppelter Datenrate arbeitenden dynamischen Speicher mit wahlfreiem Zugriff (DDR DRAM), ein mit doppelter Datenrate arbeitender dynamischer Speicher mit wahlfreiem Zugriff (DDR DRAM), ein Verfahren zum getakteten Auslesen von Daten aus mit doppelter Datenrate arbeitenden dynamischen Speicher mit wahlfreiem Zugriff (DDR DRAM) | |
DE102008015544B4 (de) | Verfahren und Vorrichtung zur Kalibrierung des Schreib-Timings in einem Speicher-System | |
DE60205877T2 (de) | Verfahren zur synchronisation der auslesezeit eines hochgeschwindigkeitsspeichers | |
DE602004007674T3 (de) | Integrierte Schaltung mit bimodalem Daten-Strobe | |
DE102006020857A1 (de) | Integrierter Halbleiterspeicher zur Synchronisierung eines Signals mit einem Taktsignal | |
DE19852986B4 (de) | Schaltungsanordnung und Verfahren zur Datenmaskierung | |
DE69906793T2 (de) | Verfahren und anordnung für hochgeschwindigkeitsdatenerfassung mit korrektur der bit-zu-bit-zeitgebung und speicheranordnung unter verwendung derselben | |
DE19839570B4 (de) | Synchrones Halbleiterspeicherbauteil mit programmierbarer Latenzzeit | |
DE102006020773B4 (de) | Halbleiterspeicherbauelement und zugehöriges Latenzsignalerzeugungsverfahren | |
DE60214992T2 (de) | Mehrbit-prefetch-ausgangsdatenweg | |
DE102006028683B4 (de) | Parallele Datenpfadarchitektur | |
DE102005050595A1 (de) | Speichersystem, Speichervorrichtung, Speichersteuervorrichtung und Verfahren dafür | |
DE102005010906A1 (de) | Taktsignalerzeugungsvorrichtung zur Verwendung in einer Halbleiterspeichervorrichtung und ihr Verfahren | |
DE10361677A1 (de) | Halbleitereinrichtung zur Domäne-Kreuzung | |
DE102014107661A1 (de) | Kontinuierliches Einstellen einer Präambel-Freigabe-Zeitsteuerung in einer Schnittstelle einer Speichereinrichtung mit doppelter Datenrate | |
DE102004050080A1 (de) | Halbleiterspeichervorrichtung mit Spaltenadresspfad darin zur Energieverbrauchsreduzierung | |
DE102004031450B4 (de) | Verzögerungsregelkreis-Vorrichtung | |
DE10206060A1 (de) | Speichersystem mit Stichleitungskonfiguration und zugehöriges Datenübertragungsverfahren | |
DE10102626B4 (de) | Halbleiterspeicherbauelement, Puffer und zugehörige Signalübertragungsschaltung | |
DE102006052338A1 (de) | Schreibzugriff und nachfolgender Lesezugriff auf einen Speicherbaustein | |
DE10208716B4 (de) | Steuerschaltung für ein S-DRAM | |
DE10208715A1 (de) | Latenz-Zeitschalter für ein S-DRAM | |
DE10335069A1 (de) | Synchrone Halbleiterspeichervorrichtung, die ein Einstellen des Datenausgabezeitablaufs ermöglicht | |
DE102006060803B4 (de) | Schreib-Burst-Stoppfunktion in einem leistungsarmen DDR-SDRAM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |