-
Gebiet der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf ein verbessertes binäres Kalibrierungsverfahren,
das zum Kalibrieren einer Zeitabstimmung von Steuerungs- und Datensignalen
in Hochfrequenz-DRAM-Speichervorrichtungen nützlich ist, die auf positiv
und negativ gehenden Flanken eines Taktsignals Daten getaktet empfangen.
-
Erörterung des Standes der Technik
-
Speichergeräte entwickeln
sich ständig
in der Richtung einer höheren
Geschwindigkeit und einer höheren
Speicherdichte. Zu diesem Zweck wurden dynamische Speichervorrichtungen
mit wahlfreiem Zugriff (DRAM) aus einfachen DRAM-Vorrichtungen zu
EDO, dann zu SRAM, dann zu DDR-SDRAM
und zu SLDRAM entwickelt, von denen die Letzteren in der Industrie
großes
Interesse erregen. SLDRAM hat eine hohe aufrecht erhaltbare Bandbreite,
eine kurze Latenz, niedrige Leistungsaufnahme, Erweiter- und Aktualisierbarkeit
durch den Benutzer und unterstützt
große
hierarchische Speicheranwendungen. Außerdem sieht sie eine Vielzahl unabhängiger Bänke, eine
schnelle LESE-/SCHREIB-Bus-turn-around-Zyklus und die Fähigkeit
für einen
kleinen, vollständig über eine
Leitung geleiteten Burst.
-
Eine
Eigenschaft von SLDRAM ist, dass sie sowohl positiv als auch negativ
gehenden Flanken eines Taktzyklus zum LESEN und zum SCHREIBEN von
Daten in die Speicherzellen und zum Empfangen von Befehls- und FLAG-Daten
von einer Speichersteuerung verwendet.
-
Ein Überblick
von SLDRAM-Vorrichtungen findet sich in der Beschreibung mit dem
Titel "SLDRAM Architectural
and Functional Overview" von
Gillingham, 1997 SLDRAM Consortium (29. August 1997), auf dessen
Offenbarungsgehalt hier Bezug genommen wird.
-
Wegen
der erforderlichen hohen Geschwindigkeit des Betriebs von SLDRAM
und anderen zeitgenössischen
Speichervorrichtungen ist die Systemzeitabstimmung und die Ausgangssignal-Ansteuerungspegel-Kalibrierung bei
der Systeminitialisierung, wie zum Beispiel beim Hochfahren oder
Rücksetzen,
ein sehr wichtiger Aspekt des Betriebs solcher Vorrichtungen zum
Ausgleichen großer
Variationen in den einzelnen Geräteparametern.
-
Eines
der mehreren Kalibrierungsverfahren, die in aktuellen SLDRAM-Vorrichtungen angewendet werden,
ist eine Zeitabstimmungssynchronisierung von Taktsignalen CCLK (Command
Clock Signal) und DCLK (Data Clock Signal), wobei Daten auf Pfaden
CA für
eintreffende Befehle und dem FLAG-Pfad (für das CCLK-Signal) sowie auf
den Datenpfaden DQ (für
das DCLK-Signal)
geliefert werden, sodass eintreffende Daten korrekt abgetastet werden.
Aktuell erzielt eine Speichersteuerung diese Zeitabstimmungskalibrierung
bei der Systeminitialisierung durch Senden kontinuierlicher CCLK-
und DCLK-Übergänge auf
diesen Taktpfaden und durch Senden umgekehrter und nicht umgekehrter
Versionen einer sich wiederholenden 15-Bit-Pseudozufalls-SYNC-Sequenz "111101011001000" jeweils auf den
Datenpfaden DQ, den Befehlspfaden CA und dem FLAG-Pfad. Das SLDRAM
erkennt diese Pseudozufallssequenz durch zwei aufeinander folgende
Einsen „1", die auf dem FLAG-Bit
erscheinen und ermittelt eine optimale relative interne Verzögerung für CCLK und
DCLK zum optimalen Abtasten des bekannten Bitmusters. Diese optimale
Verzögerung
wird durch Einstellen der zeitlichen Positionen der empfangenen
Datenbits erzielt, um eine gewünschte
Bitausrichtung relativ zum Takt zu erreichen. Dies wird bewerkstelligt
durch Einstellen einer Verzögerung
im empfangenden Pfad der empfangenen Daten, bis die empfangenen
Daten durch den Takt richtig abgetastet und intern erkannt werden.
Nachdem die Synchronisation erreicht wurde, das heißt, die
entsprechenden Verzögerungen
auf den Datenempfangspfaden eingestellt wurden, hört die Speichersteuerung
damit auf, das SYNC-Muster zu senden, und der SLDRAM kann, nachdem
alle Kalibrierungen abgeschlossen sind, zum normalen Speicher-LESE-
und -SCHREIB-Zugriff verwendet werden.
-
Die
oben beschriebene Zeitabstimmungskalibrierung, die beim Hochfahren
und Rücksetzen
durchgeführt
wird, hat sich in den meisten Umständen zwar als angemessen funktionierend
herausgestellt, doch besteht ein Problem dahingehend, dass aktuelle
SLDRAM-Vorrichtungen eintreffende Daten sowohl auf positiv als auch
negativ gehenden Übergängen der
Taktsignale CCLK und DCLK empfangen. Als eine Folge hiervon ist
es, selbst wenn eine Zeitabstimmungskalibrierung erzielt wird, nicht
klar, ob eine Ausrichtung auf der positiv oder der negativ gehenden
Taktflanke erreicht wurde. Das heißt, dass das 15-Bit-Synchronisierungsmuster keine
Zeitabstimmungssignatur aufweist. Es wäre vorzuziehen, wenn die Datenzeitabstimmung
immer entweder auf der positiv oder auf der negativ gehenden Flanke
ausgerichtet würde,
z. B. auf der positiv gehenden Flanke, um die Befehls-Bit-Logikschaltung
zu vereinfachen. Wenn Schaltungskonstrukteure die Befehls-Bit-Logikschaltung
aufgrund der Annahme vereinfachen, dass die Ausrichtung entweder
auf der positiv oder der negativ gehenden Flanke, z. B. der positiv
gehenden Flanke, des Taktsignals erzielt wird, kann das Erzielen
einer Zeitabstimmungssynchronisation unter der Verwendung des aktuellen
15-Bit-Pseudozufallsmusters nicht garantieren, dass die Synchronisation
hinsichtlich der korrekten, z. B. der positiv gehenden, Taktflanke
erzielt wurde. Wenn die Synchronisation zum Beispiel auf der negativ
gehenden Flanke eines Taktsignals erzielt wurde, kann es sein, dass,
wenn die Schaltung auf Grund der Annahme konstruiert wurde, dass die
Synchronisation auf einer positiv gehenden Flanke erreicht wird,
wenn die Daten später
während
des Speicherzugriffs abgetastet werden, die Datenabtastung um ein
Bit verschoben ist. Weil das 15-Bit-Pseudozufallsmuster während des
Kalibrierungsvorgangs jedoch wiederholt wird, gibt es sich abwechselnde
Zeiten, während
deren es auf dem korrekten Taktübergang,
z. B. den positiv gehenden, korrekt synchronisiert ist, und dann wieder
inkorrekt, z. B. mit einem negativ gehenden Übergang, synchronisiert ist,
und es gibt keinen Mechanismus, um bei Abschluss des Kalibrierungsvorgangs
zu erkennen, ob die Synchronisation beim positiv oder beim negativ
gehenden Übergang
des Taktes erzielt wurde. Auf diese Weise kann es sein, dass die
Synchronisation in der falschen Phase beziehungsweise Flanke des
Taktsignals erreicht wurde, was zu einem inkorrekten Abtasten der
Daten während
Speicherzugriffsoperationen führt
oder eine zusätzliche
komplizierte Schaltung nötig macht,
um sicherzustellen, dass eintreffende Daten mit der entsprechenden
Phase des Taktes synchronisiert werden.
-
Zum Überwinden
einiger der Nachteile, die im 15-Bit-Synchronisationsmuster inhärent sind,
wurde ein 2N-Bit-Synchronisationsmuster
vorgeschlagen. Weil das 2N-Bit-Synchronisationsmuster
eine gerade Anzahl von Bits aufweist, kann die Kalibrierungslogik
an einer gewünschten
Phase des entsprechenden Taktes eine Datensynchronisation erzielen.
Das Synchronisationsmuster ist vorzugsweise ein 2N-Bit-Muster,
das durch Addieren eines zusätzlichen
Bits zu einem 2N-1-Pseudozufalls Bitmuster
erzeugt wird. Das verwendete Synchronisationsbitmuster ist vorzugsweise
16 Bit lang.
-
Während das
2N-Bit-Synchronisationsmuster gegenüber dem
2N-1-Bit-Synchronisationsmuster
Vorteile aufweist, braucht es immer noch eine bestimmte Zeit, um
die Synchronisation, die auch als Kalibrierung bezeichnet wird,
aller eintreffenden Datenpfade zu erreichen. Darüber hinaus ist es selbst mit
einem 2N-Bit-Synchronisationsmuster immer
noch möglich,
dass es nach einem Kalibrieren aller eintreffenden Datenpfade immer
noch keine parallele Ausrichtung der Datenbits über alle eintreffenden Datenpfade
hinweg gibt, insbesondere, wenn der Bereich einer möglichen
Zeitabstimmungskompensation die Datenpfade größer als ein Bit-Zyklus ist.
Außerdem
ist es immer noch möglich,
für einige
der Datenpfade eine Synchronisation an der unerwünschten Flanke des Taktsignals
zu erreichen.
-
In
der
US-A-6,041,419 wird
ein Datenpfad unter der Verwendung eines Bitkalibrierungsmusters (10100101)
mit zwei m-Bit-Datenwörtern
(1010; 0101) kalibriert, wobei das zweite m-Bit-Datenwort die Umkehrung
des ersten m-Bit-Datenwortes
ist, das erste m-Bit-Daten-Wort gesendet wird und dann verglichen
wird, ob das empfangene zweite m-Bit-Datenwort das empfangene umgekehrte
erste m-Bit-Datenwort ist. Das Ergebnis wird zum Ändern der
Zeitverzögerungen
im Datenpfad verwendet, solange noch keine Übereinstimmung erreicht wurde.
-
Zusammenfassung der Erfindung
-
Die
vorliegende Erfindung ist in Anspruch 1 definiert. Sie verwendet
das 2N-Bit-Synchronisationsmuster in einer einzigartigen
Weise, um eine schnellere und zuverlässigere Kalibrierung der Datenpfade
zu erreichen. Da eine gerade Anzahl von Taktzyklen verwendet wird,
um das 2N-Bit-Synchronisationsmuster getaktet einzugeben,
kann die Phase des Taktsignals durch die bekannte Reihenfolge der
Bits, die empfangen werden, erschlossen werden. Typischerweise ist
bei einem DDR-SLDRAM-Speichergerät
die niedrigste gemeinsame Daten-Burst-Rate vier (4) Datenbits. Das
heißt,
dass vier Datenbits gleichzeitig seriell auf einem Datenpfad gesendet
werden. Wenn das 2N-Bit-Synchronisationsmuster
mit einer bekannten Taktphasenbeziehung von einer Speichersteuerung
an eine Speichervorrichtung gesendet wird, kann die Daten-zu-Takt-Phasenausrichtung unter
der Verwendung einer einfachen Dekodierungslogik bestimmt werden,
um die nächsten
vier Bits aus den gerade eben erfassten vier Bits vorherzusagen.
Wenn das folgende Vier-Bit-Muster mit dem vorhergesagten Muster
nicht übereinstimmt,
dann schlägt
die aktuelle Daten-zu-Takt-Ausrichtung für eine bestimmte Verzögerungswerteinstellung
im Datenpfad, an dem die Ausrichtungen durchgeführt wird, fehl und die Verzögerung wird
im Datenpfad auf einen neuen Wert eingestellt.
-
Dieser
Vorgang wird wiederholt, bis die Dekodierungslogik die nächsten vier
Bits korrekt vorhersagt, was anzeigt, dass der aktuell für den Datenpfad
eingestellte Verzögerungswert
korrekt ist. In der Praxis verwendet die vorliegende Erfindung dieses
Vorhersageverfahren über
alle möglichen
Werte der Verzögerung
in einem Datenpfad und entwickelt einen „Fenster" akzeptabler Verzögerungswerte, die zu einer
korrekten Vorhersage der nächsten
vier Bits des Synchronisationsmusters führt. Dann wird ein Verzögerungswert
eingestellt, der in der oder in der Nähe der Mitte des Fensters der
akzeptablen Verzögerungswerte
ist.
-
Die
Erfindung stellt auch sicher, dass eine Datenausrichtung auf eine
gewünschte
Flanke des Taktsignals, z. B. eine positiv gehende Flanke, erfolgt,
indem ein Fehlschlagen aller vorhergesagten Vier-Bit-Muster, die
einer unerwünschten
Flanke, z. B. einer negativ gehenden Flanke, das Taktsignals entsprechen,
erzwungen wird.
-
Kurze Beschreibung der Zeichnungen
-
Die
Vorteile und Merkmale der Erfindung werden aus der folgenden detaillierten
Beschreibung der Erfindung besser verständlich, die anhand der beiliegenden
Zeichnungen erfolgt. Es zeigt:
-
1 eine
SLDRAM-Bus-Topologie, mit der die Erfindung verwendet werden kann;
-
2 einen
Teil des in 1 gezeigten SLDRAM-Moduls;
-
3 ein
vereinfachtes Zeitabstimmungsdiagramm, das einen Teil der Zeitabstimmungssignale
veranschaulicht, die beim Betrieb der Schaltung von 2 verwendet
werden;
-
4 eine
graphische Darstellung eines Beispiels des zum Synchronisieren des
in 1 gezeigten SLDRAM-Systems verwendeten Synchronisationsverfahrens;
-
5 ein
Muster akzeptabler Verzögerungswerte
zur Synchronisation, das in der vorliegenden Erfindung verwendet
wird;
-
6 eine
repräsentative
Schaltung zum Erzeugen eines 2N-16-Bit-Codes,
der in der vorliegenden Erfindung verwendet wird;
-
7 ein
Taktsignal und einen zugeordneten 2N-16-Bit-Code,
der in der vorliegenden Erfindung verwendet wird;
-
8 eine
Datenempfang- und -vergleichsschaltung, die in der vorliegenden
Erfindung verwendet wird; und
-
9 ein
prozessorbasiertes System, das einem SLDRAM-Speicher verwendet,
der Kalibrierungsstrukturen und Verarbeitungsmethoden gemäß der vorliegenden
Erfindungen verwendet.
-
Detaillierte Beschreibung
der bevorzugten Ausführungsformen
-
Beispielhafte
Ausführungsformen
der Erfindung werden nun anhand eines SLDRAM-Speichersystems beschrieben.
Die vorliegende Erfindung ist jedoch auch auf andere Typen von Speichersystemen
anwendbar. Ein beispielhaftes SLDRAM-System, das die Erfindung einsetzen
kann, ist in 1 gezeigt. Es weist eine Vielzahl
von SLDRAM-Modulen 11a...11n auf, auf die von einer Speichersteuerung 13 zugegriffen
wird und die von dieser gesteuert werden. Die Speichersteuerung 13 sieht
eine Befehlsverbindung zu jedem der SLDRAM-Module 11a...11n vor,
die ein Taktsignal CCLK auf umgekehrten und nicht umgekehrten Taktsignalpfaden,
ein 1-Bit-FLAG-Signal sowie einen 10-Bit- Befehlsbus-CAO-9 enthält. Zusätzlich werden
von der Speichersteuerung 13 SLDRAM-Eingabe/Ausgabe-Signale
SO, SI in einer Prioritätskettenanordnung
an die SLDRAM-Module 11a...11n geliefert. Zusätzlich sind
zwischen der Speichersteuerung 13 und jedem der SLDRAM-Module 11a...11n ein
bidirektionaler Datenbus DQO-17 sowie bidirektionale Datentakte
DCLKO und DCLK1 vorgesehen. Der Takt DCLKO wird zum Takten von Eingabe/Ausgabe-Daten in die SLDRAM-Module beziehungsweise
aus diesen heraus verwendet, wobei für diesen Prozess auch der DCLK1-Signalpfad
unterbrechend verwendet wird.
-
2 veranschaulicht
einen vereinfachten relevanten Teil eines der SLDRAM-Module 11a...11n.
Es weist eine Steuerlogikschaltung 21, Zwischenspeicher 23, 25, 49, 59,
Verzögerungsvorrichtungen 27, 29, 31, 55, 57,
bei denen es sich um Umlaufverzögerungsvorrichtungen
handeln kann, Puffer 35, 37, 39, 33, 45, 47, 51, 53,
eine Verzögerungssynchronisationsschleife 41,
einen Multiplexer 43, Pipelineschaltungen 61, 63, SRAM-Eingabe/Ausgabe-Schaltungen 65 und 67 und
entsprechende Speicherbänke
Bank0 und Bank1 69, 71 auf. Es wird darauf hingewiesen,
dass in 2 zwar zwei Speicherbänke gezeigt
sind, dies jedoch nur veranschaulichenden Charakter hat, da jede
beliebige Anzahl von Speicherbänken
verwendet werden kann.
-
Die
Steuerlogikschaltung 28 empfängt und analysiert Befehle
auf dem CAO-9-Bus
und steuert die Eingabe/Ausgabe-Zugriffsoperationen (E/A) der Speicherbänke 69, 71.
Die Steuerlogikschaltung 21 empfängt auch das FLAG-Signal und das Taktsignal
CCLK.
-
Die
Signale auf jedem der Befehlsbuspfade CA0-9 werden durch entsprechende
einstellbare Umlaufverzögerungsschaltungen 27 und
in entsprechende Zwischenspeicher 23 geleitet, wo die Signale
durch ein CCLK-Signal
zwischengespeichert, von einem Puffer 39 gepuffert, von
einer Verzögerungsschaltung 31 verzögert und
von einem Puffer 33 gepuffert werden.
-
Das
Signal CCLK gelangt auch vom Puffer 39 in eine Verzögerungssynchronisationsschleifenschaltung 41,
die einen Multiplexer 43 mit 16 Taktsignalen versorgt.
Der Multiplexer liefert 18 Takt-Ausgangssignale über entsprechende Puffer 45 an
18 Zwischenspeicher 49, die die von den Speicherbänken 69, 71 ausgegebene
Daten zwischenspeichern. Die von den Speicherbänken 69, 71 ausgegebenen
Daten gelangen in SRAMS 65, 67, die als Eingabe/Ausgabe-Puffer
(E/A-Puffer) dienen und gelangen durch die Pipeline-Schaltung 61,
bevor sie in die Zwischenspeicher 49 geladen werden. Die
in den Zwischenspeichern 49 zwischengespeicherten Ausgangsdaten
werden an entsprechende Pufferverstärker 47 geliefert,
und gelangen von dort über
dem Datenbus DQ zurück
in die Speichersteuerung 13.
-
Daten,
die in die Speicherbänke 69, 71 einzugeben
sind, werden von der Speichersteuerung 13 auf dem DQ-Datenbus
zu Verfügung
gestellt, durch Gatterpuffer 51 durch Umlaufverzögerungsschaltung 57 auf jedem
Pfad des Datenbusses in Zwischenspeicher 59 und durch die
Pipeline-Schaltung 63 geführt. Von der Pipeline-Schaltung 63 gelangen
Eingabedaten auf dem DQ-Bus
in den Puffer SRAM 65, 67 und in eine Speicherbank 69, 71.
-
Die
Steuerlogikschaltung 21 gibt auch einen Freischaltungsbefehl
RXEN aus, und zwar immer dann, wenn die Speichersteuerung über einen
SCHREIB-Befehl in
den Daten auf dem Befehlsbus CAO-9 eine Speicherzugriffs-SCHREIB-Operation
angibt. Der Befehl RXEN schaltet die Dateneingabepuffer 51 und
einen Datentakteingabepuffer 53 frei. Der Datentakt DCLK
gelangt durch den Gate-Puffer 53, durch eine Verzögerungsschaltung 55 und
wird zum Steuern des Zwischenspeichers 59 zum Zwischenspeichern
auf dem Datenbus DQ eintreffender Daten verwendet.
-
Um
eine richtige Zeitabstimmung der verschiedenen Speicheroperationen,
die von den SLDRAM-Modulen 11a...11n durchgeführt werden,
sicherzustellen, muss die Schaltung von 2 synchronisiert
werden, um sicherzustellen, dass die eintreffenden Daten relativ
zu den Taktsignalen CCLK und DCLK entsprechend zeitgesteuert werden.
Zu diesem Zweck wird auf jeden der Dateneingabepfade CAO-9 und FLAG
ein 2N-Bit-Synchronisationsmuster angelegt,
während
das Datenmuster vom verzögerten
Taktsignal CCLK in den Zwischenspeichern 23 und 25 abgetastet
wird. Ein in dieser Anmeldung beschriebenes spezifisches 16-Bit-Synchronisationsmuster
ist „1111010110010000".
-
Die
vorliegende Erfindung versucht nicht festzustellen, ob das gesamte
16-Bit-Synchronisationsmuster
korrekt empfangen wurde, sondern versucht, die nächste Sequenz von M Bits im
16-Bit-Synchronisationsmuster aus einer vorhergehenden M-Bit-Sequenz
vorherzusagen. Wenn die nächste
Bit-Sequenz ein oder mehrmals zuverlässig korrekt vorhergesagt werden
kann, dann wird das Synchronisationsmuster korrekt empfangen und
die Kalibrierung erreicht. Wenn die nächste M-Bit-Sequenz nicht ein
oder mehrmals zuverlässig korrekt
vorhergesagt werden kann, dann wurde das Synchronisationsmuster
nicht korrekt empfangen und wurde die Kalibrierung nicht erreicht,
und ein Verzögerungswert
im kalibriert werdenden Datenpfad wird geändert und wiederum die Synchronisation
versucht, indem aus einer vorhergehenden M-Bit-Sequenz die nächste M-Bit-Sequenz vorhergesagt
wird. Dieser Prozess wird für
alle möglichen
Verzögerungswerte
wiederholt, während
die Steuerlogikschaltung diejenigen Verzögerungswerte nachverfolgt,
bei denen eine Datenpfadkalibrierung erreicht wird. Die Steuerungslogikschaltung 21 sucht
dann als einen letztendlichen Verzögerungswert einen solchen aus,
der in der oder in der Nähe
der Mitte derjenigen Verzögerungswerte
ist, die zu einer Datenpfadkalibrierung führten.
-
Die
Erfindung stellt auch sicher, dass eine Synchronisation auf einem
gewünschten
positiv oder negativ gehenden Übergang
des Taktes, z. B. einem positiv gehenden Übergang, erzielt wird, indem
sicher gestellt wird, dass die nächste
M-Bit-Sequenzvorhersage der Muster, die dem unerwünschten
Taktübergang,
z. B. einen negativ gehenden Übergang,
zugeordnet sind, eine inkorrekte Vorhersage („erzwungener Fehlschlag") ist, wodurch immer
eine fehlende Kalibrierung erzeugt wird.
-
Zum
Veranschaulichen dieses Kalibrierungsvorgangs erfolgt nun eine Beschreibung
der auf dem FLAG-Pfad erscheinenden Daten, wobei es sich versteht,
dass derselbe Kalibrierungsprozess auch auf jedem Pfad des Befehlsbusses
CAO-9 und jedem Empfangspfad des Datenbusses DQ durchgeführt wird,
auch wenn eine Kalibrierung der DQ-Bus-Datenpfade relativ zum DCLK-Datenabtasttaktsignal
(Strobe) durchgeführt
wird. 3 veranschaulicht ein vereinfachtes Zeitabstimmungsdiagramm
des Taktsignals CCLK, des FLAG-Signals, des Befehlsbussignals CA/CMD,
eines Datenbussignals DQ/DBUS und eines Datenabtasttaktsignals DCLK.
Wie gezeigt, werden vier Bits (M = 4) von Daten auf einem DQ-Pfad
des Datenbusses (DBUS) in vier aufeinander folgenden positiv und
negativ gehenden Übergängen des
Datenabtasttaktsignals DCLK getaktet, nachdem ein anfänglicher
PRÄAMBEL-Teil
des DCLK erscheint. Die auf den Befehlssignalpfaden CAO-9 und auf
dem FLAG-Pfad vorhandenen Daten werden in der gleichen Weise durch
vier aufeinander folgende positiv und negativ gehende Übergänge des
Befehlstaktsignals CCLK getaktet. Das Synchronisationsmuster „1111010110010000" und seine Beziehung
zum Taktsignal CCLK (und zu DCLK) ist in 7 veranschaulicht. Diese
Signale werden von der Speichersteuerung 13 an jedes Speichermodul 11a...11n gesendet.
-
Zurückkommend
auf 2 ist dort zu sehen, dass die auf dem FLAG-Signalpfad ankommenden
Daten durch die Laufzeitverzögerungsschaltung 29 gelangen
und im Zwischenspeicher 25 vom Befehlstaktsignal CCLK zwischengespeichert
werden. Diese Daten werden dann an die Steuerlogikschaltung 21 seriell
angelegt. Während
der Kalibrierungsperiode wird das bekannte 2N-Bit-Synchronisationsmuster
von der Speichersteuerung 13 (1) an den
FLAG-Pfad zusammen mit dem frei laufenden Taktsignal CCLK (7)
angelegt. Der betreffende Teil der Steuerlogikschaltung 21 zum
Erhalten der Kalibrierung ist in 8 dargestellt
und nachfolgend beschrieben.
-
Die
Steuerlogikschaltung
21 enthält ein Vier-Bit-Daten-Empfangregister
101,
einen Negativ-Sequenz-Detektor
103, einen Folge-Zustands-Generator
107,
eine Anfangswert-Logikschaltung
105, einen Komparator
109,
einen Zeitabstimmungsgenerator
111 und eine Logikschaltung
113.
Vor der Beschreibung des Betriebs der Schaltung von
8 wird
zuerst das angewendete Synchronisationsmuster und seine Beziehung zum
Taktsignal CCLK (oder DCLK) anhand von
7 erörtert. Wie
gezeigt ist, wird das Synchronisationsmuster auf positiv und negativ
gehende Flanken des Taktsignals (CCLK oder DCLK) eingerichtet. Diese Vier-Bit-Muster,
die an den positiv gehenden Übergängen des
Taktsignals initiiert werden, sowie die unmittelbar folgenden nächsten Vier-Bit-Muster
sind in Tabelle 1 gezeigt. Tabelle 1
Aktueller
Vier-Bit-Wert | Nächster Vier-Bit-Wert |
(1)
0000 | 1111 |
(2)
1111 | 0101 |
(3)
0101 | 1001 |
(4)
1001 | 0000 |
(5)
1101 | 0110 |
(6)
0110 | 0100 |
(7)
0100 | 0011 |
(8)
0011 | 1101 |
-
Diese
Vier-Bit-Muster, die an negativ gehenden Übergängen des Taktsignals initiiert
werden, und die unmittelbar folgenden nächsten Vier-Bit-Muster sind
in der folgenden Tabelle 2 gezeigt. Tabelle 2
Aktueller
Vier-Bit-Wert | Nächster Vier-Bit-Wert |
(1)
1110 | 1011 |
(2)
1011 | 0010 |
(3)
0010 | 0001 |
(4)
0001 | 1110 |
(5)
1010 | 1100 |
(6)
1100 | 1000 |
(7)
1000 | 0111 |
(8)
0111 | 1010 |
-
Ein
Aspekt der vorliegenden Erfindung besteht darin, eine Kalibrierung
eines Datenpfads durch Vergleichen einer M-Bit-Sequenz, die von
einer unmittelbar vorhergehenden M-Bit-Sequenz vorhergesagt wird, mit
der als Nächstes
eintreffenden M-Bit-Sequenz zu erzielen. Zum Durchführen dieses
Vergleichs werden mehrere M-Bit-Sequenzen, die auf einem Datenpfad
erscheinen, mit vorhergesagten M-Bit-Sequenzen verglichen, die aus
einer unmittelbar vorhergehenden M-Bit-Sequenz erzeugt wurden. Wenn
die vorhergesagte M-Bit-Sequenz
mit der als Nächstes
eintreffenden M-Bit-Sequenz übereinstimmt,
dann wurde für
den kalibriert werdenden Datenpfad die Kalibrierung erreicht. Wenn
die vorhergesagte M-Bit-Sequenz mit der als Nächstes eintreffenden M-Bit-Sequenz nicht übereinstimmt,
dann wurde die Kalibrierung nicht erreicht und ändert die Steuerlogikschaltung 21 einen
Verzögerungswert
im kalibriert werdenden Datenpfad und sucht wieder nach einer Übereinstimmung
zwischen der vorhergesagten und der als Nächstes eintreffenden M-Bit-Sequenz.
Zum Erzielen eines zuverlässigeren
Betriebs wird die Kalibrierung angezeigt, wenn dieser Vorhersage-
und Vergleichsprozess für
mehrere M-Bit-Sequenzen, die auf dem Datenpfad erscheinen, eine Übereinstimmung
ergibt. Das heißt,
wenn wiederholte Vergleiche eine Übereinstimmung ergeben, so
stellt sich heraus, dass der gegenwärtige Verzögerungswert eine Kalibrierung
hervorbringt.
-
In
einer bevorzugten Ausführungsform
geht die Steuerlogikschaltung 21 tatsächlich schrittweise durch alle
möglichen
Verzögerungswerte
für den
kalibriert werdenden Datenpfad hindurch, wobei diejenigen Verzögerungswerte
registriert werden, die eine Kalibrierung hervorrufen, und wird
dann als ein letztendlicher Verzögerungswert
für den
Datenpfad derjenige Verzögerungswert
herausgesucht, der in der oder in der Nähe der Mitte derjenigen Verzögerungswerte
liegt, die eine Kalibrierung hervorgebracht haben.
-
Ein
weiterer Aspekt der Erfindung besteht darin, dass sichergestellt
wird, dass die Kalibrierung in vorbestimmte Weise entweder auf dem
positiv oder auf dem negativ gehenden Übergang, z. B. der positiv
gehenden Flanke des Taktsignals, auftritt. Dies wird erzielt, indem
gültige
vorhergesagte Werte für
diejenigen M-Bit-Sequenzen generiert werden, die dem vorbestimmten
Taktübergang,
z. B. dem positiv gehenden Übergang,
zugeordnet sind, und ungültige
vorhergesagte Werte für
diejenigen M-Bit-Sequenzen generiert werden, die dem anderen Taktübergang,
z. B. dem negativ gehenden Übergang,
zugeordnet sind. Da die Taktübergänge, bei
denen keine Kalibrierung gewünscht
wird, immer eine ungültige
als Nächstes
vorhergesagte Sequenz haben werden, wird eine Kalibrierung auf diese
Taktflanke niemals erreicht werden.
-
Erneut
Bezug nehmend auf zu 8, wird ein Datenpfad, z. B.
FLAG, gezeigt, an dem eine Kalibrierung ausgeführt wird. Es wird darauf hingewiesen,
dass die Eingabedaten in das Datenempfangregister 101 vom
Eingangszwischenspeicher für
den FLAG-Datenpfad, d. h. Zwischenspeicher 25 in 2,
entnommen werden. Außerdem
gehen wir im Beispiel der vorliegenden Erfindung davon aus, dass
die Daten in einem Burst von vier (4) Bits (M = 4) eintreffen, woher
die vier Stufen des Datenempfangregisters 101 herrühren. Nachdem eine
Vier-Bit-Sequenz des Synchronisationsmusters im Register 101 gespeichert
wurde, untersucht ein Negativ-Sequenz-Detektor 103 die
gespeicherten vier Bits, um zu sehen, ob sie einer Bitsequenz entsprechen,
die an einem unerwünschten Übergang
des Taktsignals beginnt, auf dem das System nicht kalibriert werden
sollte. Im gegebenen Beispiel gehen wir davon aus, dass die Kalibrierung
auf einem positiv gehenden Übergang
des Taktsignals erzielt werden sollte. Demgemäß sendet der Detektor 103,
wenn er eine Bitsequenz erkennt, die mit einem Wert in der linken
Spalte von Tabelle 2 oben übereinstimmt,
die einem negativ gehenden Taktübergang
zugeordnet ist, ein „FEHLSCHLAG"-Signal an den Folge-Zustands-Generator 107.
Der Folge-Zustands-Generator 107 empfängt auch
die aktuelle Bitsequenz, die im Register 101 gespeichert
ist, und sagt aus dieser Bitsequenz voraus, wie die nächste Vier-Bit-Sequenz
beschaffen sein sollte.
-
Die
Tabellen 1 und 2 zeigen die 16 Möglichkeiten
für die
Vier-Bit-Sequenz im Register 101 sowie jeweils die nächste vorhergesagte
Vier-Bit-Sequenz. Wenn der Folge-Zustands-Generator 107 vom
Detektor 103 kein „FEHLSCHLAG"-Signal empfängt, erzeugt er eine korrekt
vorhergesagte Sequenz. Wenn zum Beispiel die aktuelle Vier-Bit-Sequenz „1111" ist (Tabelle 1),
erzeugt der Folge-Zustands-Generator 107 das
Muster „0101" als die nächste vorhergesagte
Sequenz. Wenn auf der anderen Seite der Folge-Zustands-Generator 107 vom
Detektor 103 ein „FEHLSCHLAG"-Signal empfängt, erzeugt
er eine inkorrekte vorhergesagte Sequenz. Wenn zum Beispiel die
aktuelle Vier-Bit-Sequenz „1011" ist (Tabelle 2),
sollte die als Nächstes
korrekt vorhergesagte Bitsequenz „0010" sein; das „FEHLSCHLAG"-Signal lässt den
Generator 107 jedoch ein Vier-Bit-Muster erzeugen, das
nicht „0010" ist, wodurch sichergestellt
wird, dass die Kalibrierung des Datenpfads nicht erreicht wird.
-
Der
Folge-Zustands-Generator 107 wird als ein Vier-Bit-Schieberegister
wie dasjenige realisiert, das in 6 gezeigt
ist. Der Anfangswert, der vom Folge-Zustands-Generator 107 von
der Anfangswert-Logik 105 empfangen wird, führt dazu,
dass sein Ausgangssignal dasselbe wiederholte 2N-Bitmuster
in M-Bit-Sequenzen ist,
außer
dass es in der Phase um eine M-Bit-Sequenz gegenüber derjenigen voraus ist,
die auf dem kalibriert werdenden Datenpfad erscheint. Zum Beispiel
kann die Anfangswert-Logik 105 den Folge-Zustands-Generator 107 dazu
bringen, ein anfängliches
Ausgangssignal „0101" oder die erste M-Bit-Sequenz nach der
anfänglichen
Sequenz „1111" hervorzubringen.
Hiernach ist der Folge-Zustands-Generator 107, der genauso
funktioniert wie das das Kalibrierungsmuster erzeugende Schieberegister,
dem Kalibrierungsmuster immer um M Bits voraus. Das Ausgangssignal
des Folge-Zustands-Generators wird an die Vergleichsschaltung 109 sowie auch
an die Speichersteuerung 13 zurückgesendet (1).
Die Übertragung
an die Speichersteuerung 13 ist zur Kalibrierung der Steuerung 13 nötig.
-
Die
Vergleichsschaltung 109 vergleicht die vorhergesagte nächste Bitsequenz,
die vom Generator 107 empfangen wird, mit der als Nächstes eintreffenden
oder nun aktuellen Vier-Bit-Sequenz im Register 101. Wenn
es eine Übereinstimmung
der verglichenen Daten gibt, so zeigt dies an, dass die auf dem
kalibriert werdenden Datenpfad eintreffenden Daten mit der korrekten
Flanke des Taktsignals entsprechend zeitgesteuert sind. Wenn keine Übereinstimmung
vorherrscht, dann zeigt dies an, dass die Kalibrierung nicht erreicht
wurde. Das Vergleichsergebnis wird an eine Logikschaltung 113.
angelegt, die, wenn eine Übereinstimmung
vorliegt, den Verzögerungswert
für die
Umlaufverzögerung,
im vorliegenden Beispiel z. B. die Umlaufverzögerung 29, für den FLAG-Datenpfad
vormerkt. Wie bemerkt, steuert in einer bevorzugten Ausführungsform
die Logikschaltung 113 die Umlaufverzögerung tatsächlich so, dass sie schrittweise
alle möglichen
Verzögerungswerte durchgeht,
wobei die Logikschaltung 113 vermerkt, welcher dieser Verzögerungswerte
eine Kalibrierung des Datenpfads erzeugt. Nachdem alle Verzögerungswerte
schrittweise durchgegangen wurden, stellt die Logikschaltung 113 dann
einen letztendlichen Verzögerungswert
für die
Umlaufverzögerung,
z. B. die Umlaufverzögerung 29,
ein, deren Verzögerungswert
in der oder in der Nähe
der Mitte des Bereichs von Verzögerungswerten
ist, die eine Signalpfadkalibrierung erzeugten.
-
8 zeigt
auch eine Anfangswert-Logikschaltung 105, die dazu verwendet
wird, einen Mustergenerator innerhalb des Folge-Zustands-Generators 107 mit
einem Anfangswert zu versorgen, sodass der letztere dasselbe Synchronisationsmuster
erzeugen kann, das an dem kalibriert werdenden Datenpfad eintrifft.
Der Detektor 103 und die Vergleichschaltung 109 empfangen
auch freischaltende „SCHREIB-KALIBRIER"-Signale, die von
der Steuerlogikschaltung 21 erzeugt werden, wenn eine Datenpfadkalibrierung
benötigt
wird. Der Zeitabstimmungsgenerator 111 empfängt das
eintreffende Taktsignal (im vorliegenden Beispiel CCLK) und stimmt
den Betrieb des Generators 107 und der Vergleichsschaltung 109 zeitlich
ab.
-
Es
wurde zwar eine beispielhafte Ausführungsform der vorliegenden
Erfindung anhand der Kalibrierung auf eine positiv gehende Flanke
des Taktsignals beschrieben, doch kann sie auch auf eine negativ
gehende Flanke des Taktsignals kalibriert werden, wobei in diesem
Fall die Muster in der linken Spalte von Tabelle 1 Detektor 103 erfasst
werden, um ein „FEHLSCHLAG"-Signal zu erzeugen, und daher zum Erzeugen ungültiger Vier-Bit-Muster
im Generator 107 verwendet werden, während die Vier-Bit-Muster in
der linken Spalte von Tabelle 2 für die Vorhersage des als Nächstes eintreffenden
Vier-Bit-Musters
verwendet werden.
-
Die
Vier-Bit-Muster in der linken Spalte von Tabelle 2 können ebenfalls
in einem anderen Aspekt der vorliegenden Erfindung verwendet werden,
der Zeitabstimmungskalibrierung einer Speichersteuerung 13,
die in 1 gezeigt ist. Die folgende Erörterung geht davon aus, dass
eine ähnliche
Steuerlogikschaltung zu derjenigen, die in 8 gezeigt
ist, in der Speichersteuerung 13 enthalten ist. Dies ist
jedoch nicht nötig,
sondern es sind auch andere Verfahren zum Kalibrieren der Speichersteuerung
und des Verfahrens gemäß der vorliegenden
Erfindung möglich.
Zum Sicherstellen der richtigen Zeitabstimmung von Speicheroperationen,
die von den SLDRAM-Modulen 11a...11n durchgeführt werden,
muss die Speichersteuerung 13 so kalibriert werden, dass
Signale, wie z. B. SCHREIB- oder LESE-Daten, relativ zu den Taktsignalen
CCLK und DCLK entsprechend zeitgesteuert werden. Zu diesem Zweck
wird ein 2N-Bit-Synchronisationsmuster des
Typs, der in der US-Patentanmeldung
mit der Seriennummer___, eingereicht am___ (Anwaltsaktenzeichen
M4065.0269) beschrieben ist, bei einer Speichervorrichtung beim
Folge-Zustands-Generator 107 (8) erzeugt,
und an jeden der Datenpfade zurück
zur Speichersteuerung 13 angelegt. Wie bemerkt, ist ein
spezifisches 16-Bit-Synchronisationsmuster, das in dieser Anmeldung
beschrieben wird, „1111010110010000."
-
Unter
Bezugnahme auf 8 wird während der Kalibrierung der
Speichersteuerung eine M-Bit-Sequenz des 2N-Bit-Synchronisationsmusters
beim Folge-Zustands-Generators 107 erzeugt und an die Speichersteuerung 13 zurückgesendet.
Die Speichersteuerung 13 kann eine ähnliche Steuerlogikschaltung
zu derjenigen, die in 8 gezeigt ist, enthalten, um
ihre entsprechenden Umlaufverzögerungen
so einzustellen, um ihre eigene Zeitabstimmung mit den Taktsignalen
CCLK und DCLK für
jeden ihrer entsprechenden Befehlspfade CA0-9, Datenpfade DQ0-17
und den FLAG-Pfad zu synchronisieren.
-
4 veranschaulicht
die Datenhüllkurve
für aufeinander
folgende Bits das 2N-Bit-Synchronisationsmusters zusammen
mit den Taktsignalen CCLK, welche die Daten im Zwischenspeicher 25 zwischenspeichern.
Die relative Zeitabstimmung der Datenhüllkurve und des Steuerdatentakts
CCLK wird als zehn Möglichkeiten
CCLK 1 bis 10 gezeigt, das heißt
als zehn mögliche
Verzögerungswerte
für die
Umlaufverzögerung 29. Der
Anfang und das Ende der Datenhüllkurve
ist dort, wo die Daten auf dem FLAG-Pfad instabil sind, was zu einer
fehlerhaften Abtastung der Daten führen kann. Wie gezeigt ist,
erfolgt ein zuverlässiges
Empfangen der Daten an den relativen Zeitabstimmungsorten C4... C7, während ein
unzuverlässiges
Datenempfangen an den relativen Zeitorten C1...C3 sowie C8...C10 erfolgt. Diese sind in der Steuerlogikschaltung 21 als
Verzögerungswerte
D4... D7 dargestellt,
wo die vorhergesagten vier Bits des Synchronisationsmusters mit
den neu eintreffenden vier Bits übereinstimmten. 5 zeigt,
wie dies in der Steuerlogikschaltung 21 dargestellt ist,
wo Verzögerungswerte
D1... D3 und D8... D10 einen logischen
Zustand „0" zeigen, der angibt,
dass die Sequenzübereinstimmung
nicht erkannt wurde, und einen logischen Zustand "1" für
Verzögerungswerte
D4... D7, was eine entsprechende Übereinstimmung
der vorhergesagten und als Nächstes
empfangenen Vier-Bit-Sequenzen anzeigt. Es versteht sich, dass der
Einfachheit halber zwar nur zehn relative Verzögerungszustände der Daten zum Befehlstaktsignal
CCLK dargestellt sind, in der Praxis jedoch viel mehr mögliche Verzögerungsstufen
für die
Umlaufzeitverzögerung 29 und
das in 5 gezeigte Verzögerungszustandsmuster vorliegen
können.
-
Nachdem
das in 5 gezeigte Verzögerungszustandsmuster von der
Steuerlogikschaltung 21 entwickelt wurde, wählt sie
als eine letztendliche Verzögerung
für die
Umlaufverzögerung 29 einen
Verzögerungswert
aus, der ungefähr
in der Mitte derjenigen Verzögerungswerte,
z. B. D4... D7,
liegt, die für
die verglichenen Vier-Bit-Sequenzen eine Übereinstimmung ergab. In dem
gezeigten Beispiel wurde D5... D6 als die letztendliche Verzögerung ausgewählt. Nachdem
dieser Wert für
die Umlaufverzögerung 29 eingestellt
wurde, wurde der FLAG-Datenpfad kalibriert.
-
Derselbe
Kalibrierungsvorgang wird auch auf jeden der CMD-Datenpfade CA0-9 und auf jeden der Datenpfade
des DQ-Busses angewendet, außer
dass für
den Letzteren der Datentakt DCLK zum Zwischenspeichern der Daten
im Zwischenspeicher 59 verwendet wird, der in jedem der
Datenpfade des DQ-Datenbusses
vorhanden ist, weshalb die Datenpfade des DQ-Datenbusses relativ
zum DCLK-Taktsignal ausgerichtet sind.
-
Eine
Schaltung zum Erzeugen und Vorhersagen eines 2N-Bitmusters,
wobei N = 4 ist, zum Erzeugen eines sich wiederholenden 16-Bit-Musters,
ist in 6 gezeigt. Sie enthält ein Vier-Stufen-Schieberegister 151 mit
vier Bitpositionen <0><1><2><3>,
ein NICHT-ODER-Gatter 153 mit drei Eingängen, die jeweils mit <0><1><2>-Ausgängen des
Schieberegisters 151 verbunden sind, ein Exklusiv-ODER-Gatter 155,
dessen zwei Eingänge
mit dem Ausgang <3> des Schieberegisters 151 beziehungsweise
dem Ausgang des NICHT-ODER-Gatters 153 verbunden
sind, sowie ein Exklusiv-ODER-Gatter 157, von dem ein Paar
Eingänge mit
dem Ausgang des Exklusiv-ODER-Gatters 155 beziehungsweise
dem Ausgang der ersten Stufe <0> des Schieberegisters 151 verbunden
sind. Das Ausgangssignal des Exklusiv-ODER-Gatters 157 wird
an einen Eingang der Stufe <0> des Schieberegisters 151 angelegt.
Das Taktsignal CLK wird an das Schieberegister 151 als
Eingangssignal angelegt. Das Schieberegister 151 kann anfänglich als
Anfangswerte auf den Stufen <0><1><2><3> mit
lauter Nullen „0" als Anfangswerte
eingestellt werden, und erzeugt dann das sich wiederholende 16-Bit-Muster „1111010110010000". Anstelle des Erzeugens
des sich wiederholenden Bitmusters mit einer Schaltung kann das
Muster auch in der Speichersteuerung 13 (1)
und dem Folge-Zustands-Generator 107 (8)
gespeichert sein und während
der Kalibrierung wiederholt ausgelesen werden.
-
Auch
wenn die vorliegende Erfindung unter Bezugnahme auf eine M-Bit-Sequenz beschrieben
wurde, bei der M = 4 ist, um die nächste Vier-Bit-Sequenz vorherzusagen,
so handelt es sich dabei lediglich um ein Beispiel, wie die Erfindung
umgesetzt werden kann. Die Erfindung kann mit einer beliebigen Anzahl
von Bits verwendet werden, die kleiner als 2N Bits
des sich wiederholenden Synchronisationsmusters sind, wobei geradzahlige
Bitsequenzen bevorzugt werden.
-
Die
Kalibrierung eines Datenpfads, wie sich oben beschrieben wurde,
kann auch so durchgeführt
werden, dass phasengleiche und phasenungleiche Nebensprechkomponenten
an nebeneinander liegende Datenpins und/oder Datenpfade angelegt
werden. Auf diese Weise kann die Kalibrierung unter Bedingungen
erreicht werden, die die Bedingungen des tatsächlichen Einsatzes näher wiedergeben.
So wird zum Beispiel, wenn ein bestimmter Datenpfad, z. B. FLAG,
wie anhand von 8 beschrieben, kalibriert wird,
dasselbe Muster an nebeneinander liegende Datenpins und/oder Pfade,
z. B. ein benachbarter Pfad des CA0-9-Busses, phasengleich und/oder
phasenungleich angelegt.
-
Außerdem ist
es möglich,
unter der Verwendung der oben beschriebenen Techniken mehrere Datenpfade
gleichzeitig zu kalibrieren, wobei die verbleibenden nicht kalibriert
werdenden Datenpfade phasengleiche und/oder phasenungleiche Kalibrierungssignale
verwenden. Zum Beispiel kann die Hälfte der Datenpfade als „Opfer" bezeichnet werden
und unter der Verwendung des oben anhand der 4 bis 8 beschriebenen
Verfahrens gleichzeitig kalibriert werden, während die verbleibende Hälfte der
Datenpfade als Rauschquellen bezeichnet werden kann.
-
Die
Kalibrierung erfolgt dann gleichzeitig an den „Opfer"-Datenpfaden, während die Rauschquellendatenpfade
alternierende phasengleiche und phasenungleiche Kalibrierungssignale
empfangen. Nach der Kalibrierung der „Opfer" werden dann die Pins und/oder Datenpfade
der „Opfer" und der „Rauschquellen" umgekehrt und die
Kalibrierung nun an den neuen „Opfern" durchgeführt, während die
anderen Datenpfade, wie oben beschrieben, als Rauschquellen verwendet
werden.
-
Eine
Speichervorrichtung, welche die Kalibrierungsstruktur enthält und wie
oben beschrieben betrieben wird, kann in einem prozessorbasierten
System des in 9 gezeigten Typs verwendet werden.
Das prozessorbasierte System 90 enthält einen Prozessor 94,
eine Speicherschaltung 96, und eine E/A (Eingabe/Ausgabe)-Vorrichtung 92.
Die Speicherschaltung 96 kann eine SLDRAM-Speicherschaltung
oder ein anderer Typ einer Speicherschaltung sein, die die Kalibrierungsstruktur
enthält,
die wie oben beschrieben gemäß der vorliegenden
Erfindung betrieben wird. Zusätzlich
kann der Prozessor 94 selbst ein integrierter Prozessor
sein, der auf dem Chip integrierte Speichervorrichtungen verwendet,
welche die Kalibrierungsstruktur der vorliegenden Erfindung enthalten.
Ferner kann die Speichersteuerung 13 (1)
vom Prozessor 94 getrennt sein, oder kann mit dem Prozessor 94 zusammen
mit anderen Elementen der oben beschriebenen erfindungsgemäßen Speicherschaltung 96 integriert
sein, oder der Prozessor 94 kann selbst als die Speichersteuerung 13 fungieren.
-
In
der vorhergehenden Erörterung
wurde die Vorrichtung und das Verfahren der vorliegenden Erfindung
anhand einer Speichervorrichtung beschrieben, die Daten zwei Mal
pro Taktzyklus taktet (d. h. Daten liest oder schreibt): nämlich sowohl
auf der steigenden als auch auf der fallenden Flanke des Taktes.
Die vorliegende Erfindung kann jedoch auch in einer beliebigen Speichervorrichtung
eingesetzt werden, in der eine Kalibrierung durchgeführt wird,
einschließlich
Vorrichtungen, die Daten nur ein Mal pro Taktzyklus takten, zum
Beispiel entweder unter der Verwendung der steigenden oder der fallenden
Flanke des Taktes.
-
Die
vorliegende Erfindung wurde zwar anhand beispielhafter Ausführungsformen
beschreiben und veranschaulicht, doch sind viele Variationen möglich und
können Äquivalente
eingesetzt werden, ohne dass dadurch vom Geist und vom Umfang der
Erfindung abgewichen wird.
-
Demgemäß versteht
sich die vorliegende Erfindung nicht als durch die vorhergehende
Beschreibung sondern lediglich durch den Umfang der beiliegenden
Ansprüche
eingeschränkt.