-
In
Computerspeichersystemen ist es wichtig, die Zeit zu minimieren,
die nötig
ist, um Daten von einem Speicher, wie z. B. einem Direktzugriffsspeicher (RAM),
zu lesen. Bei Verwendung eines RAM-Arrays mit in sich abgeschlossener
Leseverstärker-Strobe- bzw.
-Übernahmesignal-Zeitgebung
verwenden gegenwärtige
Verfahren einen konservativen Zeitgebungsschätzwert, der aus einer Schaltungssimulation
erhalten wird. Da dies ein konservativer Schätzwert ist, ist die Zeitgebung
langsamer als die, die idealerweise verwendet werden könnte. Ein
weiteres Verfahren besteht darin, die RAM-Leistung zu messen und
die Zeitgebung einmal einzustellen, üblicherweise basierend auf
einer geeigneten Einstellung einer Anzahl von Sicherungen. Ein derartiger
Ansatz geht Prozessabweichungen an, sobald jedoch die Zeitgebung
eingestellt ist, besitzt das RAM-Array nicht die Fähigkeit,
seine Zeitgebung wie nötig
dynamisch zu verändern,
um auf Umgebungsvariationen anzusprechen, wie z. B. Variationen
bei der Spannung, Temperatur oder Rauschen.
-
Die
Aufgabe der vorliegenden Erfindung besteht darin, ein Speicherzugriff-Strobe-Konfigurationsverfahren
oder ein Speicherzugriff-Strobe-Konfigurationssystem mit verbesserten
Charakteristika zu schaffen.
-
Diese
Aufgabe wird durch ein Speicherzugriff-Strobe-Konfigurationsverfahren gemäß Anspruch
1, 17, 19 oder 22 oder ein Speicherzugriff-Strobe-Konfigurationssystem
gemäß Anspruch 9
gelöst.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf
die beigefügten
Zeichnungen näher
erläutert.
Es zeigen:
-
1 ein
exemplarisches dynamisch konfigurierbares Strobe- bzw. Übernahmesignal-System gemäß einem
Ausführungsbeispiel;
-
2 ein
exemplarisches Strobe-Konfigurationsverfahren gemäß einem
Ausführungsbeispiel;
-
3 Zeitgebungsdiagramme,
die auf ein exemplarisches Strobe-Konfigurationsverfahren bezogen
sind;
-
4 ein
Ausführungsbeispiel
eines Strobe-Konfigurationsverfahrens;
-
5 ein
weiteres Ausführungsbeispiel
eines Strobe-Konfigurationsverfahrens;
und
-
6 wiederum
ein weiteres Ausführungsbeispiel
eines Strobe-Konfigurationsverfahrens.
-
Repräsentative
Ausführungsbeispiele
der vorliegenden Patentanmeldung werden nun unter Bezugnahme auf
verschiedene Beispiele beschrieben, wobei gleiche Bezugszeichen
in der gesamten Beschreibung und mehreren Ansichten der Zeichnungen
verwendet werden, um gleiche oder entsprechende Teile anzuzeigen,
und wobei ferner die verschiedenen Elemente nicht notwendigerweise
maßstabsgetreu
gezeichnet sind.
-
Unter
Bezugnahme auf 1 ist ein Diagramm eines Rückkopplungskonfigurations-Strobe- bzw.
-Übernahme-Speichersystems 100 gemäß einem
Ausführungsbeispiel
gezeigt. Ein Zeitgebungssignal 102, typischerweise ein
Taktsignal oder ein beliebiges geeignetes Signal, das einer Phasenverschiebung
unterworfen ist, kann durch ein Phasensteuerungselement, wie z.
B. eine Schaltung 104 einer verzögerten Regelschleife (DLL-Schaltung;
DLL = delay-locked loop), empfangen werden. Das DLL-Modul 104 kann
auf das Taktsignal 102 (das von einem anderen Takt, wie
z. B. einem globalen Takt, z. B. Takt 114, hergeleitet
sein kann) und auf ein bereit gestelltes Phasensteuersignal 105 ansprechen,
um ein phasengesteuertes Strobe-Signal 106 zu erzeugen,
derart, dass die Phase des phasengesteuerten Strobe-Signals 106 um
eine ausgewählte
Phase von einem Referenzsignal, wie z. B. dem Zeitgebungssignal 102,
versetzt ist. Das phasengesteuerte Strobe-Signal 106 wird
durch einen Lesen/Schreiben-(L/S-)Block zum Ermöglichen von Zugriffsoperationen
in Bezug auf einen IC-Block 108 empfangen. Bei einer Implementierung
kann der IC-Block ein Speicher sein, wie z. B. ein statischer Direktzugriffsspeicher
(SRAM) oder eine beliebige andere geeignete adressierbare digitale
Vorrichtung.
-
Ein
statischer Direktzugriffsspeicher kann typischerweise als ein Halbleiter
implementiert sein, der Speicherinhalt behält, wenn kontinuierlich Leistung
zugeführt
wird, typischerweise ohne Auffrischzyklen. Speicherzellen, die Bits
speichern, innerhalb einer SRAM-Vorrichtung können als vier Transistoren implementiert
sein, die zwei kreuzgekoppelte Inverter bilden. Die Speicherzellen
haben zwei stabile Zustände,
die eine logische Eins oder eine logische Null beschreiben. Zwei
Zugriffstransistoren können
dazu dienen, einen Zugriff auf die Speicherzelle während Lese-
und Schreiboperationen zu steuern.
-
Ein
Zugriff auf die in jeder Speicherzelle gespeicherten Daten wird
durch eine Wortleitung unter Steuerung von Zugriffstransistorzuständen ermöglicht.
Die Zugriffstransistoren steuern eine Verbindung einer Speicherzelle
zu einer Bitleitung. In einem typischen SRAM sind eine Bitleitung
und eine inverse Bitleitung vorgesehen, um Rauschspielräume zu verbessern
und unterschiedliche Spannungsmaße zu erlauben. Wenn Daten
von einer Zelle in dem Speicherarray gelesen werden, beginnt die
Zelle, abhängig
von dem Wert der gelesenen Daten die Spannung einer der beiden Bitleitungen
in Richtung Masse (GND) zu ziehen. Die SRAM-Zelle kann sehr klein sein und besitzt üblicherweise
eine moderate Treiberstärke
verglichen mit der relativ größeren Last
der Bitleitungen. Als ein Ergebnis kann die Änderungs rate der Spannung zwischen
den Bitleitungen sehr gering sein. Ein Strobe-Signal wird verwendet,
um eine Zeitgebung für
einen Leseverstärker
anzuzeigen, so dass dieser die Polarität der Bitleitungen erfasst, wenn
eine Spannungsdifferenz ausreichend ist, um die korrekten Daten
anzuzeigen.
-
SRAM-Vorrichtungen
ermöglichen
typischerweise höhere
Geschwindigkeiten bei synchroner Adressierung, wobei die gesamte
Adresse während eines
einzelnen Taktzyklus an die Speichervorrichtung geliefert wird.
Während
eines Lesezugriffs können
die Bitleitungen eines statischen Direktzugriffsspeichers typischerweise
aktiv in einen Hoch- bzw. Niedrigzustand getrieben werden, und zwar
durch Inverter in einer Speicherzelle, was eine Anordnung ist, die
einen hochgeschwindigkeitsmäßigen Datenzugriff
ermöglicht.
Eine derartige Anordnung ermöglicht eine
Differenzsignalisierung, die eine Erfassung kleiner Spannungshübe ermöglicht.
Der Spielraum einer Erfassung des Leseverstärkers macht es erforderlich,
dass die Zeitgebung eines Strobe-Signals ausreichend lang sein muss,
um eine genaue Erfassung zu ermöglichen,
während
die Effizienz es erforderlich macht, dass die Zeitgebung des Strobe-Signals
minimiert wird.
-
Ein
Strobe-Konfigurationsmodul 110 stellt ein Phasenverzögerungssteuersignal 105 an
das DLL-Modul 104 bereit, um die Phasenverzögerung des
phasengesteuerten Strobe-Signals 106 auszuwählen. Das
Strobe-Konfigurationsmodul 110 ist ansprechend auf Steuersignale,
die durch das L/S-Modul 112 bereitgestellt werden, wirksam,
was in 1 als eine vereinfachte Darstellung eines geeigneten Lesen/Schreiben-Schaltungsaufbaus,
eines Zeilen/Spalten-Adressschaltungsaufbaus, eines Leseverstärker-Schaltungsaufbaus
usw., der dem SRAM 108 zugeordnet ist, was als eine Schnittstelle
in Bezug auf einen Speicherdatenzugriff dient, dargestellt ist.
Im Allgemeinen kann das L/S-Modul 112 sowohl Leseoperationen
als auch Schreiboperationen ohne Berücksichtigung einer Reihenfolge
unterbringen. Ein Schreiben/Lesen-Zyklus kann ein Schreiben eines
Bits an einen ausgewählten
Spei cherort und ein darauf folgendes Lesen des an dem ausgewählten Speicherort
gespeicherten Bits aufweisen.
-
Die
Hauptkomponente der DLL 104 ist eine Verzögerungskette,
die eine Mehrzahl von Verzögerungsgattern,
die in Serie geschaltet sind, umfasst. Der Eingang der Kette ist
mit Takt verbunden, der verzögert
werden soll. Bei einer Implementierung kann ein Multiplexer mit
jeder Stufe der Verzögerungskette
verbunden sein, wobei ein geeignetes Selektorsignal eingesetzt werden
kann, um die Verzögerung
zu bewirken.
-
Entsprechend
sollte zu erkennen sein, dass die Verzögerung einer Verzögerungsleitung
durch ein Steuersignal, das an einen Steuereingang der Verzögerungsleitung
angelegt wird, gesteuert werden kann. In der Praxis liegt normalerweise
eine gewisse Verzögerung
zwischen einem extern zugänglichen Eingangsanschluss,
der ein Zeitgebungssignal aufnimmt, und einem Eingang in die Verzögerungsleitung
vor. Ähnlich
liegt normalerweise eine gewisse Verzögerung zwischen einem Ausgang
einer Verzögerungsleitung
und dem Eingang eines Latches vor, sowie zwischen einem Ausgang
eines Latches und einem extern zugänglichen Datenbusanschluss.
Eine Schaltung, die diese Verzögerungen
modelliert, kann dann in einen Rückkopplungspfad
zwischen einen Ausgang einer Verzögerungsleitung und einen Eingang
eines Phasendetektors eingeführt
werden.
-
Eine
Vielzahl von Entwürfen
für Verzögerungsleitungen
kann gemäß den Lehren
hierin verwendet werden. Bei einem Verzögerungsleitungsentwurf kann
sich das Zeitgebungssignal durch eine große Anzahl von Verzögerungselementen,
wie z. B. Inverter, die in Serie zueinander geschaltet sein können, wie
zuvor bereits angemerkt wurde, ausbreiten. Das bestimmte Verzögerungselement,
an das ein Zeitgebungssignal angelegt wird und/oder an dem das Zeitgebungsausgangssignal
genommen wird, wird durch ein Steuersignal eingestellt, um die Anzahl von
Verzögerungselementen
zu variieren, durch die sich das Zeitgebungssignal ausbreitet.
-
Der
Phasendetektor kann ein Fehlersignal mit einem Betrag erzeugen,
der proportional zu der Differenz zwischen der Phase des Zeitgebungssignals
und der Phase des Zeitgebungsausgangssignals ist. Das Fehlersignal
steuert die Verzögerung, mit
der das Zeitgebungssignal mit einer Verzögerungsleitung gekoppelt wird.
So kann das Fehlersignal die Phase des Zeitgebungssignals relativ
zu der Phase des Zeitgebungsausgangssignals steuern.
-
In
Betrieb stellt das Fehlersignal die Verzögerung der Verzögerungsleitung
ein, um den Betrag des Fehlersignals zu minimieren. Wenn das Ausgangszeitgebungssignal
dem Zeitgebungssignal vorauseilt, kann ein Phasendetektor ein Fehlersignal
mit einer Polarität
erzeugen, die die Verzögerung
einer Verzögerungsleitung
erhöht,
um die Differenz zwischen der Phase des Zeitgebungsausgangssignals und
der Phase des Zeitgebungssignals zu reduzieren. Umgekehrt erzeugt,
wenn das Zeitgebungsausgangssignal dem Zeitgebungssignal hinterher
eilt, ein Phasendetektor ein Fehlersignal mit einer Polarität, die die
Verzögerung
der Verzögerungsleitung senkt,
um die Differenz zwischen der Phase des Zeitgebungsausgangssignals
und der Phase des Zeitgebungssignals zu reduzieren. Solange der
Schleifengewinn der Verzögerungsregelschleife
hoch ist, fallen die ansteigende und die abfallende Flanke des Zeitgebungssignals
im Wesentlichen mit der ansteigenden und der abfallenden Flanke
des Zeitgebungsausgangssignals zusammen.
-
Basierend
auf der vorstehenden Erläuterung werden
Fachleute auf dem Gebiet erkennen, dass eine DLL, die mehrere Verzögerungsleitungen
beinhaltet, verwendet werden kann, um mehrere Phasen eines Taktsignals
zu erzeugen, das als ein Leseverstärker-Strobe-Signal in Bezug
auf Speicherzugriffsoperationen wirksam ist, wie im Folgenden im
Detail beschrieben werden wird. Wie oben dargelegt wurde, kann die DLL
einen Phasendetektor mit einem ersten Eingang, der das Zeitgebungssignal
aufnimmt, und einem zweiten Eingang, der das Zeitgebungsausgangssignal
aus dem Ausgang der Verzögerungsregelschleife
aufnimmt, umfassen, wobei der Phasendetektor ein Fehlersignal erzeugt,
das einen Betrag und eine Polarität aufweist, die der Differenz
zwischen der Phase des Zeitgebungssignals und der Phase des Zeitgebungsausgangssignals
entsprechen.
-
Das
Fehlersignal kann z. B. mit jeweiligen Steuereingängen einer
Mehrzahl von Verzögerungsleitungen
gekoppelt sein, die jeweils die gleiche Anzahl und den gleichen
Typ von Verzögerungselementen
umfassen, so dass diese jeweils die gleiche Verzögerung erzeugen. Wenn vier
Verzögerungsleitungen
implementiert sind, kann z. B. das Zeitgebungsausgangssignal an
dem Ausgang der letzten Verzögerungsleitung
auf das Zeitgebungssignal verriegelt werden, wodurch eine Phase
von 360 Grad relativ zu der Phase des Zeitgebungssignals erhalten
werden kann. Als ein Ergebnis weist das Signal an dem Ausgang der
ersten Verzögerungsleitung
eine Phase von 90 Grad auf, wobei das Signal an dem Ausgang der zweiten
Verzögerungsleitung
eine Phase von 180 Grad besitzt und das Signal an dem Ausgang der
dritten Verzögerungsleitung
eine Phase von 270 Grad besitzt. Es ist zu erkennen, dass eine größere oder kleinere
Anzahl von Phasen durch ein Verwenden einer größeren oder kleineren Anzahl
von Verzögerungsleitungen
in einer bestimmten DLL-Anordnung erzeugt werden kann.
-
Gemäß einem
Ausführungsbeispiel
leitet das L/S-Modul 112 einen Schreiben/Lesen-Zyklus unter Verwendung
eines ersten Logikwerts, wie z. B. einer logischen Eins, in Bezug
auf einen beliebigen Ort in dem SRAM 108 ein. Ferner kann
das L/S-Modul 112 einen Schreiben/Lesen-Zyklus unter Verwendung
eines zweiten Logikwerts, wie z. B. einer logischen Null, an dem
gleichen Ort in dem Speicher einleiten. Wie bereits zuvor angemerkt
wurde, weist ein Schreiben/Lesen-Zyklus in dem Kontext der vorliegenden Patentanmeldung
ein Schreiben eines Logikwerts an einen bestimmten Speicherort und
ein Lesen des Werts von diesem Ort auf. Wie in 1 dargestellt ist,
kann der Schreiben/Lesen-Zyklus einen ausgewählten Speicherort 116 zur
Rückkopplung
verwenden, wobei der ausgewählte
Speicherort in Bezug auf bestimmte topologische Beschränkungen
ausgewählt
werden kann, wie z. B. die Entfernung von der Schnittstelle 112,
die hinsichtlich einer Bewegungszeit-Signal-Entfernung bestimmt
wird.
-
Die
Schreiben/Lesen-Zyklen sind wirksam, um Rückkopplungsmessungen in Bezug
auf die Geeignetheit der ausgewählten
phasengesteuerten Strobe-Verzögerungen
bereitzustellen. Wenn die Schreiben/Lesen-Zyklen den gleichen Logikwert
wie den geschriebenen wiedergewinnen, kann die Strobe-Verzögerung wie
ausgewählt
als das Strobe-Signal 106 zum Zugreifen auf den Speicher 108 verwendet
werden. Wenn einer der Schreiben/Lesen-Zyklen einen falschen Logikwert
wiedergewinnt, wobei die Logikwerte nicht übereinstimmen, kann ein Steuersignal
an das Strobe-Konfigurationsmodul 110 geliefert werden,
das wiederum die Phasenverzögerung
des DLL-Moduls passend aktualisieren kann. Wenn z. B. eine logische
Null an den Speicherort 116 geschrieben wird und eine logische
Eins beim Lesen des Speicherorts 116 wiedergewonnen wird,
wird eine fehlende Übereinstimmung
erfasst. Entsprechend wird ein geeignetes Verzögerungssteuersignal 105 durch
das Strobe-Konfigurationsmodul 110 an die DLL 104 geliefert.
-
Unter
Bezugnahme auf 2 ist ein Ausführungsbeispiel
eines dynamischen Strobe-Phasensteuerungsverfahrens 200 gezeigt.
Ein phasengesteuertes Signal mit einer ausgewählten Phase wird bei einem
Funktionsblock 202 erzeugt. Nach dem ersten Schreiben/Lesen-Zyklus
wird ein erster Logikwert an einen ausgewählten Speicherort geschrieben und
ein Leselogikwert (d. h. ein erster Ergebnislogikwert) wird bei
einem Funktionsblock 204 von dem ausgewählten Speicherort gelesen.
An einem Entscheidungsblock 206 wird der Leselogikwert
mit dem ersten Logikwert verglichen. Wenn der gelesene Logikwert
nicht mit dem ersten Logikwert übereinstimmt (d.
h. eine fehlende Übereinstimmung
wird erfasst), fährt
das Verfahren entlang des NEIN-Wegs zu einem Funktionsblock 208 fort,
an dem die Phasenauswahl aktualisiert wird. Wenn der Leselogikwert
mit dem ersten Logikwert übereinstimmt,
fährt das
Verfahren entlang des JA-Wegs zu einem Funktionsblock 210 fort,
an dem ein zweiter Schreiben/Lesen-Zyklus ausgeführt werden kann. Ein zweiter
Logikwert wird bei dem Funktionsblock 210 an einen ausgewählten Speicherort
geschrieben und ein Leselogikwert (d. h. ein zweiter Ergebnislogikwert)
wird von dem ausgewählten
Speicherort gelesen.
-
An
einem Entscheidungsblock 212 wird der zweite Ergebnislogikwert
mit dem zweiten Logikwert verglichen. Wenn der Leselogikwert nicht
mit dem zweiten Logikwert übereinstimmt,
fährt das
Verfahren entlang des NEIN-Wegs zu dem Funktionsblock 208 fort,
an dem die Phasenauswahl aktualisiert wird. Danach wird ein neues
phasengesteuertes Signal unter Verwendung der aktualisierten Phasenauswahl
bei dem Funktionsblock 202 erzeugt. Andererseits fährt, wenn
der Leselogikwert bei Block 212 mit dem zweiten Logikwert übereinstimmt,
das Verfahren entlang des JA-Wegs zu einem Funktionsblock 214 fort,
an dem das ausgewählte
phasengesteuerte Signal als ein phasengesteuertes Strobe-Signal
an die Speicherschaltung geliefert wird.
-
Basierend
auf der vorstehenden Beschreibung wird ein Fachmann auf dem Gebiet
erkennen, dass ein Ausführungsbeispiel
eines Speicherzugriff-Strobe-Konfigurationsverfahrens die folgenden Operationen
aufweisen kann: ein Erzeugen eines Strobe-Signals mit einer ausgewählten Phase;
basierend auf dem Strobe-Signal, Ausführen eines ersten Schreiben/Lesen-Zyklus eines ersten
Logikwerts an einem Speicherort eines Speichers, um einen ersten Ergebnislogikwert
zu erzeugen; und wenn eine fehlende Übereinstimmung zwischen dem
ersten Ergebnislogikwert, der durch den ersten Schreiben/Lesen-Zyklus bereitgestellt
wird, und dem ersten Logikwert vor liegt, Aktualisieren der ausgewählten Phase des
Strobe-Signals und
Wiederholen der Ausführung basierend
auf dem Strobe-Signal mit der aktualisierten Phase. Wahlweise kann
bei einer weiteren Variation das Verfahren folgende zusätzliche
Schritte aufweisen: Ausführen
eines zweiten Schreiben/Lesen-Zyklus eines zweiten Logikwerts an
dem Speicherort, um einen zweiten Ergebnislogikwert zu erzeugen;
und wenn eine fehlende Übereinstimmung zwischen
dem zweiten Ergebnislogikwert, der durch den zweiten Schreiben/Lesen-Zyklus bereitgestellt wird,
und dem zweiten Logikwert vorliegt, Aktualisieren der ausgewählten Phase
des Strobe-Signals
und Wiederholen der Ausführung
des oder der Schreiben/Lesen-Zyklen basierend auf dem Strobe-Signal mit
der aktualisierten Phase. Bei wiederum einem weiteren Ausführungsbeispiel
ist unter Umständen sowohl
der erste als auch der zweite Schreiben/Lesen-Zyklus erforderlich,
derart, dass nur dann, wenn beide Lesevorgängen mit korrekten Werten enden, eine
Kalibrierung oder Abstimmung der Phasenverzögerung als abgeschlossen betrachtet
werden kann.
-
Unter
Bezugnahme auf 3 ist ein exemplarisches Zeitdiagramm 300 gezeigt.
Die Ausgabe einer Speicherspeicherungszelle kann durch die Signale
auf zwei Bitleitungen 302 und 304 dargestellt werden.
Während
einer Leseoperation divergiert die Spannungsdifferenz zwischen den
Bitleitungen 302 und 304 derart, dass eine Schwellenspannung
VT 306 zu einer bestimmten Zeit 308 erzielt
wird, die der minimale Pegel an Trennung ist, der zum genauen Erfassen
eines Datenwerts durch den Leseverstärker erforderlich ist.
-
Eine
Phasenverschiebungsschaltung, wie z. B. eine DLL, stellt eine Folge
von Strobe-Signalen 310-1 bis 310-N bereit, wobei
jedes bereitgestellte Strobe-Signal phasenmäßig von den anderen Strobe-Signalen
verschoben ist. Ein bestimmtes der Strobe-Signale kann basierend
auf dem Strobe-Phasenkonfigurationsverfahren, das oben unter Bezugnahme
auf 2 beschrieben wurde, ausgewählt werden, wobei das ausgewählte Strobe-Signal
mit einer optimalen Phasenverzö gerung
(z. B. mit der kürzesten
Verzögerung)
wirksam ist, die eine genaue Datenspeicherung und -wiedergewinnung
liefert. Zur Darstellung wird ein ausgewähltes, phasengesteuertes Strobe-Signal 312 an
die Leseverstärker
der SRAM-Speicherzellen
geliefert, da deren Auslösung (d.
h. ansteigende Flanke) mit der minimalen Bitleitungstrennung von
VT 306 übereinstimmt.
-
Unter
Bezugnahme auf 4 ist ein Ausführungsbeispiel
eines Schemas 400 zum Konfigurieren einer Speicher-Strobe-Phase ansprechend
auf Fehlersignale vorgesehen. Typischerweise wird, wenn ein Speicher
bei einem Funktionsblock 402 initialisiert wird, ein Strobe-Phasenkonfigurationsverfahren 404 aufgerufen.
Als ein Ergebnis wird ein ausgewähltes,
phasengesteuertes Strobe-Signal bei einem Funktionsblock 406 an
die Speichervorrichtung geliefert. Während eines Betriebs des Speichers
können Fehlersignale,
wie z. B. Fehlerkorrekturcodes (ECC; ECC = error correction code)
bei einem Funktionsblock 408 erfasst werden. Wenn ein Fehlerkorrekturcode
bei einem Entscheidungsblock 410 erfasst wird, fährt das
Verfahren entlang des JA-Wegs fort, um das Strobe-Konfigurations-/Neukonfigurationsverfahren
(d. h. Kalibrierung) an dem Funktionsblock 404 zu wiederholen,
wodurch die gleiche Phase oder eine neue Phase für das Strobe-Signal, das durch
die DLL bereitgestellt wird, ausgewählt werden kann. Wenn bei dem
Entscheidungsblock 410 kein Fehlersignal erfasst wird,
fährt das
Verfahren entlang des NEIN-Wegs fort, um die Bereitstellung des
ausgewählten,
phasengesteuerten Strobe-Signals bei dem Funktionsblock 406 fortzusetzen.
-
Unter
Bezugnahme auf 5 ist ein Ausführungsbeispiel
eines Schemas 500 zum Konfigurieren einer Speicher-Strobe-Phase, nachdem ein
vorbestimmter Zeitraum seit einer Initialisierung einer Speichervorrichtung
verstrichen ist, vorgesehen. Typischerweise wird, wenn der Speicher
bei einem Funktionsblock 502 initialisiert wird, ein Strobe-Phasenkonfigurationsverfahren 504 aufgerufen
und ein ausge wähltes,
phasengesteuertes Strobe-Signal wird entsprechend an die Speichervorrichtung
geliefert (Block 506). Während eines Betriebs des Speichers wird
ein Zähler
für eine
vorbestimmte Anzahl von Zählwerten
inkrementiert (Block 508). Wenn der Zähler bei einem Entscheidungsblock 510 die
vorbestimmte Neukonfigurationsanzahl erreicht, fährt das Verfahren entlang des
JA-Wegs fort, um das Strobe-Konfigurationsverfahren
bei dem Funktionsblock 504 zu wiederholen, wobei die gleiche
Phase oder eine neue Phase für
das Strobe-Signal der DLL ausgewählt
werden kann. Bis die Neukonfigurationszahl bei dem Entscheidungsblock 510 erfasst
wird, fährt das
Verfahren entlang des NEIN-Wegs fort, um die Bereitstellung des
ausgewählten,
phasengesteuerten Strobe-Signals an dem Funktionsblock 506 fortzusetzen.
-
Das
Strobe-Kalibrierungsverfahren kann abhängig von der Veränderlichkeit
der Verarbeitungsumgebung, einschließlich einer Drift bei Betriebstemperaturen
und -spannungen mehr oder weniger häufig durchgeführt werden.
Das Strobe-Kalibrierungsverfahren
kann für
eine vollautomatische Konfiguration und Neukonfiguration ohne Bedienerintervention freigegeben
sein.
-
Unter
Bezugnahme auf 6 ist ein Ausführungsbeispiel
eines Strobe-Konfigurationsverfahren 600 gezeigt, bei dem
die Phase eines Strobe-Signals basierend auf bestimmten Umgebungsvariablen
kalibriert werden kann. Nach der Initialisierung eines Speichers
(Block 601) wird eine Auswahl-Strobe-Verzögerung an einem Funktionsblock 602 gesetzt.
Die Verzögerung
kann durch eine Initialisierungsroutine oder durch ein anderes Strobe-Konfigurationsverfahren
gesetzt werden. Wenn der Speicher in Betrieb ist, wird eine Umgebungsüberwachung
bei einem Funktionsblock 604 durchgeführt. Die Temperatur und Spannungen,
die der Speicher erfährt,
können
z. B. überwacht
werden.
-
Periodisch
oder in zufälligen
Zeiträumen können eine
oder mehrere Umgebungsvariablen gegenüber vorbestimmten Schwellwerten
oder Sollwerten getestet werden. Eine erste Umgebungsvariable (z.
B. die Temperatur) wird an einem Entscheidungsblock 606 getestet.
Wenn die Temperatur mit einer vordefinierten Temperaturschwelle übereinstimmt oder
diese überschreitet,
folgt das Verfahren dem JA-Weg zu einem Funktionsblock 608,
an dem ein Strobe-Konfigurations-/Neukonfigurationsverfahren ausgeführt wird,
um die Phasenverzögerung
geeignet zu kalibrieren. Das Verfahren kehrt dann zu dem Funktionsblock 604 zurück, um mit
der Umgebungsvariablenüberwachung
fortzufahren.
-
Wenn
eine erste Umgebungsvariable (d. h. die gemessene Temperatur) bei
dem Entscheidungsblock 606 ein vorbestimmtes Kriterium
nicht erfüllt, folgt
das Verfahren dem NEIN-Weg
zu einem Entscheidungsblock 610, an dem eine zweite Umgebungsvariable
(z. B. die Betriebsspannung) mit einem vordefinierten Kriterium
verglichen wird. Wenn die gemessene Spannung mit dem vordefinierten
Kriterium übereinstimmt
oder dieses erfüllt,
folgt das Verfahren dem JA-Weg zu dem Funktionsblock 608, an
dem das Strobe-Verzögerungskonfigurations-/Neukonfigurationsverfahren
durchgeführt
wird. Wenn die gemessene Spannung das Kriterium bei Block 610 nicht
erfüllt,
folgt das Verfahren dem NEIN-Weg und kehrt zur Überwachung der Umgebungsvariablen
an dem Funktionsblock 604 zurück.
-
Basierend
auf der vorstehenden detaillierten Beschreibung ist zu erkennen,
dass die hierin dargelegten Ausführungsbeispiele
einen Selbstabstimmmechanismus bereitstellen, der ein dynamisches Verriegeln
eines optimalen Strobe-Signals mit einer geeigneten Phasenverzögerung für die Leseverstärker auf
den Bitleitungen einer Speichervorrichtung unterstützt. Die
Ausführungsbeispiele
sorgen außerdem
für eine
häufige
Aktualisierung der Strobe-Zeitgebung zur Berücksichtigung einer Drift bei
Betriebstemperatur und -spannung. Ferner ermöglichen die Ausführungsbeispiele
die Beseitigung von Sicherungen, die erforderlich sind, um die Strobe-Zeitgebung zu
setzen, sowie der Wafertestzeit, die erforderlich ist, um die Strobe-Zeitgebungseinstellung
zu finden und Sicherungen entsprechend durchzubrennen.
-
Obwohl
die vorliegende Patentanmeldung unter Bezugnahme auf bestimmte exemplarische Ausführungsbeispiele
beschrieben wurde, wird darauf verwiesen, dass die Formen der gezeigten
und beschriebenen Ausführungsbeispiele
lediglich als darstellend behandelt werden sollen. Entsprechend können verschiedene
Veränderungen,
Ersetzungen und Modifizierungen realisiert werden, ohne von dem Schutzbereich
der vorliegenden Anmeldung, wie in den folgenden Ansprüchen dargelegt,
abzuweichen.