DE10212642A1 - Speichersteuerung mit 1X/MX-Lesefähigkeit - Google Patents
Speichersteuerung mit 1X/MX-LesefähigkeitInfo
- Publication number
- DE10212642A1 DE10212642A1 DE10212642A DE10212642A DE10212642A1 DE 10212642 A1 DE10212642 A1 DE 10212642A1 DE 10212642 A DE10212642 A DE 10212642A DE 10212642 A DE10212642 A DE 10212642A DE 10212642 A1 DE10212642 A1 DE 10212642A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- memory
- signal
- takeover
- equalization
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
Abstract
Verfahren und Vorrichtungen zum Empfangen von Daten von einem Speicher, wobei die Daten einem Übernahmesignal zugeordnet sind, sind hierin offenbart. Im allgemeinen liefern die Verfahren und Vorrichtungen eine Speichersteuerung mit einer Einrichtung zum Empfangen von Daten mit unterschiedlichen Raten. Daten können durch eine Speichersteuerung mit unterschiedlichen Raten empfangen werden, weil die Speichersteuerung beispielsweise in Umgebungen verwendet wird, wo dieselbe direkt an eine Anzahl von Speichermodulen angeschlossen ist, und/oder in Umgebungen, wo dieselbe über einen Zwischenchip an eine Anzahl von Speichermodulen angeschlossen ist. Der Zwischenchip kann beispielsweise Multiplexer umfassen, die Daten von zwei oder mehreren Speicherbankmodulen empfangen und dann die Daten in einen oder mehrere Datenströme multiplexen, die dann zu der Speichersteuerung übertragen werden, mit zweimal der Rate, mit der die Speichermodule in jeder Bank Daten zu der Speichersteuerung übertragen könnten.
Description
Die Erfindung bezieht sich auf das Gebiet der Speicher
steuerungen.
Der Zweck einer Speichersteuerung ist es, Speicherzugriffs
anforderungen zu empfangen und auszuführen (d. h. Anforde
rungen, Daten von einer Anzahl von Speichermodulen zu lesen
und auf dieselben zu schreiben). Eine Speicherzugriffsan
forderung wird typischerweise durch eine zentrale Verarbei
tungseinheit (CPU = central processing unit) ausgelöst,
aber kann auch durch ein Eingabe/Ausgabegerät (I/O-Gerät)
ausgelöst werden.
In der Vergangenheit wurden die meisten Speichersteuerungen
entworfen, um auf Speichermodule zuzugreifen, die über ge
meinsame Taktdatenübertragungen gelesen und geschrieben
werden. Das heißt, Datenbits werden zwischen einer Spei
chersteuerung und einer Anzahl von Speichermodulen in Syn
chronisation mit den Anstiegsflanken des internen Takts der
Speichersteuerung übertragen. Es gibt jedoch derzeit Bemü
hungen, Speichersteuerungen zu entwerfen, die in der Lage
sind, Doppeldatenraten-(DDR-)Speichermodule zu entwerfen.
Ein DDR-Speichermodul ist eines, das über quellensynchrone
Datenübertragungen gelesen und geschrieben wird. Das heißt,
Datenbits werden zwischen einer Speichersteuerung und einer
Anzahl von Speichermodulen in Synchronisation mit den An
stiegs- und Abfallflanken eines Übernahmesignals oder
"Strobe"-Signals übertragen, wobei das Übernahmesignal
durch die Komponente erzeugt wird, die die Daten liefert.
Das Übernahmesignal wird dann durch die Komponente verwen
det, die die Daten zum Zweck des Erfassens der Daten emp
fängt. Somit wird ein Übernahmesignal durch die Speicher
steuerung während einer Schreiboperation übertragen, und
ein Übernahmesignal wird durch ein Speichermodul während
einer Leseoperation übertragen.
Es ist die Aufgabe der vorliegenden Erfindung, Schaltungs
anordnungen, Doppeldatenraten-Speichersteuerungen, ein Com
putersystem und ein Verfahren zum Empfangen von Daten mit
verbesserten Charakteristika zu schaffen.
Diese Aufgabe wird durch eine Schaltungsanordnung gemäß An
spruch 1, eine Doppeldatenraten-Speichersteuerung gemäß An
spruch 15, ein Verfahren zum Empfangen von Daten gemäß An
spruch 16 und ein Computersystem gemäß Anspruch 23 gelöst.
Wie es für den Fachmann auf diesem Gebiet bekannt ist, be
wirkt die Komplexität der Speichersteuerungen, daß diesel
ben sehr aufwendige Komponenten zum Entwerfen, Entwickeln
und Prüfen sind. Die Erfinder liefern daher nachfolgend ei
ne Beschreibung einer Speichersteuerung mit einer größeren
Anzahl von Funktionsmodi. Durch Liefern einer Speicher
steuerung mit einer größeren Anzahl von Funktionsmodi kann
ein Hersteller einer anwendungsspezifischen integrierten
Schaltung (ASIC = application specific integrated circuit)
eine größere Anzahl von Rechenanwendungen mit einer einzi
gen Speichersteuerung erfüllen, und somit durch Entwickeln,
Bauen und Testen einer geringeren Anzahl von Speichersteue
rungen Zeit und Aufwand sparen. Aus der Perspektive der
Computerherstellung ermöglicht die Verwendung einer gemein
samen Speichersteuerung bei einer Vielzahl von Computersy
stemen, daß maschinenabhängiger Code, gedruckte Schaltungs
platinenentwürfe, usw. von einem Computersystem zu dem
nächsten übertragen werden können.
Gemäß der Erfindung sind neue Verfahren und Vorrichtung,
die sich auf Speichersteuerungen beziehen, hierin offen
bart. Ein Teil der Verfahren und Vorrichtungen bezieht sich
auf das Lesen einer Speichersteuerung von Daten von einer
Anzahl von Speichermodulen.
Im allgemeinen liefern die Verfahren und Vorrichtungen ei
ner Speichersteuerung mit einer Einrichtung zum Empfangen
von Daten mit unterschiedlichen Raten (z. B. einer 1x- und
einer Mx-Rate). Daten können durch eine Speichersteuerung
mit unterschiedlichen Raten empfangen werden, weil die
Speichersteuerung beispielsweise in Umgebungen verwendet
wird, wo dieselbe direkt an eine Anzahl von Speichermodulen
angeschlossen ist, und/oder in Umgebungen, wo dieselbe über
einen Zwischenchip an eine Anzahl von Speichermodulen ange
schlossen ist. Der Zwischenchip kann beispielsweise Multi
plexer umfassen, die Daten von einer oder mehreren Spei
chermodulbänken empfangen, und dann die Daten in einen oder
mehrere Datenströme multiplexen, die dann mit der doppelten
Rate zu der Speichersteuerung übertragen werden, wie die
Speichermodule in jeder Bank Daten zu der Speichersteuerung
übertragen könnten.
Obwohl die Erfindung nicht auf DDR-Umgebungen begrenzt ist,
liefert ein Ausführungsbeispiel der Erfindung eine Doppel
datenraten-Speichersteuerung, die eine Einrichtung zum Emp
fangen von Daten und Übernahmesignalen bei 1x-
Doppeldatenraten-Speichergeschwindigkeit und eine Einrich
tung zum Empfangen von Daten und Übernahmesignalen bei Mx-
Doppeldatenraten-Speichergeschwindigkeit umfaßt (wobei M ≧
2 und x eine herkömmliche Rate ist, mit der DDR-Daten durch
eine Empfängerschaltungsanordnung empfangen werden).
Ein weiteres Ausführungsbeispiel der Erfindung liefert eine
Speichersteuerungsempfängerschaltungsanordnung mit einer
Datenanschlußfläche und einer Übernahmesignalanschlußfläche
(wobei die Anschlußflächen Teil einer Schnittstelle bilden
können, die eine Mehrzahl von Daten- und Übernahmesignalan
schlußflächen umfaßt). P Speicherelemente (z. B. Latches; P
≧ 2) sind gekoppelt, um Daten von der Datenanschlußfläche
zu empfangen. Die P Speicherelemente werden durch jeweilige
Werte eines Zählwerts gesteuert, der vorzugsweise ein P-
Bit-Zählwert ist, bei dem ein Zustand logisch hoch ist. Der
Zählwert wird durch einen Zähler ansprechend auf Übernahme
signalflanken, die an einer Übernahmesignalanschlußfläche
empfangen werden, aktualisiert. Auf diese Weise arbeiten
die P Speicherelemente in dem Taktbereich von Speichermodu
len und/oder Zwischenchips, die an die Empfängerschaltungs
anordnung angeschlossen sind. Eine Entzerrungsmultiplexstu
fe ist zum Empfangen von Daten von den P Speicherelementen
vorgesehen. Anders als die P Speicherelemente empfängt die
Entzerrungsmultiplexstufe jedoch Steuersignale, die in ei
nem Taktbereich der Empfängerschaltungsanordnung erzeugt
werden (d. h. einem Taktbereich der Speichersteuerung, von
der die Empfängerschaltungsanordnung einen Teil bildet).
Falls P gleich vier ist, und die Multiplexstufe zwei Ent
zerrungsmultiplexer umfaßt, die Daten von den P Speicher
elementen empfangen, dann kann ein erster der Entzerrungs
multiplexer mit Steuersignalen versehen werden, die sich
mit einer 1x-Rate ändern, wodurch es Datenbits, die mit ei
ner 1x-Rate empfangen werden, ermöglicht wird, sich durch
den ersten Entzerrungsmultiplexer auszubreiten. Wenn 2x-
Daten durch die Empfängerschaltungsanordnung empfangen wer
den, können beide der Entzerrungsmultiplexer mit Steuersi
gnalen versehen werden, die sich mit einer 1x-Rate ändern,
wodurch es Datenbits, die mit einer 2x-Rate empfangen wer
den, ermöglicht wird, sich abwechselnd durch den ersten und
den zweiten Entzerrungsmultiplexer auszubreiten (d. h. auf
einanderfolgende Datenbits werden abwechselnd aus einem der
Entzerrungsmultiplexer ausgetaktet).
Ein drittes Ausführungsbeispiel der Erfindung liefert ein
Verfahren zum Empfangen von Daten in einer Speichersteue
rung. Das Verfahren beginnt mit dem Empfangen von Daten
bits, die an eine Datenanschlußfläche einer Speichersteue
rung gesendet werden, in die jeweiligen P Speicherelemente
(wobei wieder P ≧ 2 ist). Die Datenbits werden ansprechend
auf einen Zählwert von Übernahmesignalkanten empfangen, die
an einer Übernahmesignalanschlußfläche der Speichersteue
rung empfangen werden. Während Daten, die in den P Spei
cherelementen gespeichert werden, zu einer Anzahl von Ent
zerrungsmultiplexern ausgegeben werden, werden Steuersigna
le für die Entzerrungsmultiplexer in einem Taktbereich der
Speichersteuerung erzeugt.
Ein Vorteil der Speichersteuerung und Empfängerschaltungs
anordnung, die hierin offenbart wurde, liegt darin, daß
sich dieselbe unter Verwendung von relativ einfacher Hard
ware an das Empfangen von 1x- oder Mx- (z. B. 2x-) Daten
anpaßt. Durch Bereitstellen einer Speichersteuerung, die
Daten in einem 1x- und einem Mx-Modus lesen kann, kann eine
universellere Speichersteuerung hergestellt werden, die ei
ne Skalierbarkeit hat, um den Bereich der Marktsegmente,
die durch die Speichersteuerung abgedeckt werden, mit nur
einer geringen Erhöhung bei den Herstellungskosten zu ver
größern.
Ein weiterer Vorteil der offenbarten Schaltungsanordnung
liegt darin, daß dieselbe höhere Bandbreiten und Systeme
mit höherer Kapazität unterstützen kann.
Ein weiterer Vorteil der offenbarten Schaltungsanordnung
liegt darin, daß sich erhöhende Werte von P erhöhte Zeiten
zum Entzerren von Daten liefern, die in einer Datenan
schlußfläche empfangen werden (d. h. erhöhte Zeiten zum
Übertragen von Steuerung der Daten von einem Taktbereich
eines Speichermoduls oder Zwischenchips zu einem Taktbe
reich der Speichersteuerung). Somit werden größere Schwan
kungen bei der Datenlesezeit toleriert.
Die wichtigen Vorteile und Aufgaben des obigen und anderer
Ausführungsbeispiele der Erfindung werden in der nachfol
genden Beschreibung, den Zeichnungen und den Ansprüchen nä
her erklärt oder werden daraus offensichtlich.
Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung
werden nachfolgend Bezug nehmend auf die beiliegenden
Zeichnungen näher erläutert. Es zeigen:
Fig. 1 ein Computersystem;
Fig. 2 ein erstes beispielhaftes Ausführungsbeispiel der
Speichersteuerung von Fig. 1, wobei die Speicher
steuerung zum Zweck der Datenübertragung in einem
1x-Modus direkt an eine Mehrzahl von Speichermo
dulen angeschlossen ist;
Fig. 3 ein zweites beispielhaftes Ausführungsbeispiel
der Speichersteuerung von Fig. 1, wobei die Spei
chersteuerung zum Zweck der Datenübertragungen in
einem 2x-Modus über einen Zwischenchip an eine
Mehrzahl von Speichermodulen angeschlossen ist;
Fig. 4 Speichersteuerungstreiberschaltungsanordnung, die
in der Lage ist, Daten in einem 1x-Modus oder ei
nem 2x-Modus zu treiben;
Fig. 5 ein bevorzugtes Ausführungsbeispiel der Ausgabe
mischschaltungsanordnung, die in Fig. 4 gezeigt
ist;
Fig. 6 eine Schwankung der Speichersteuerungstreiber
schaltungsanordnung von Fig. 4, wobei die Schal
tungsanordnung zum Auslösen einer Schreibphasen
verzögerung vorgesehen ist;
Fig. 7 ein bevorzugtes Ausführungsbeispiel einer Takt
schaltung, die viele der Taktsignale erzeugt, die
in Fig. 8, 12-19 und 21-26 erscheinen;
Fig. 8 ein bevorzugtes Ausführungsbeispiel einer Spei
chersteuerungstreiberschaltungsanordnung, die ei
ne Datentreiberschaltungsanordnung und eine ent
sprechende Übernahmesignaltreiberschaltungsanord
nung umfaßt;
Fig. 9 stellt ein Speichersubsystem dar, einschließlich
eines dritten beispielhaften Ausführungsbeispiels
der Speichersteuerung von Fig. 1, wobei die Spei
chersteuerung eine Mehrzahl von entsprechenden
Übernahmesignal- und Datenanschlußflächen umfaßt;
Fig. 10 eine beispielhafte Weise des In-Übereinstimmung-
Bringens einer Übernahmesignal- und einer Daten
anschlußfläche, um den Schreibvorgang einer Spei
chersteuerung auf x4-, x8- oder x16-DIMM zu un
terstützen;
Fig. 11 ein Speicherabbild zum Verfolgen, ob x4-, x8-
oder x16-DIMM an die Daten- und Übernahmesignal
anschlußflächen einer Speichersteuerung
angeschlossen sind;
Fig. 12 ein bevorzugtes Ausführungsbeispiel einer Schal
tung zum Senden der act_stb[0 : 1]-Signale (siehe
Fig. 8) an die unteren Anschlußflächen der Spei
chersteuerung von Fig. 9;
Fig. 13 ein bevorzugtes Ausführungsbeispiel einer Schal
tung zum Liefern der act_stb[0 : 1]-Signale (siehe
Fig. 8) an die oberen Übernahmesignalanschlußflä
chen der Speichersteuerung von Fig. 9;
Fig. 14 Schreibzeitgebungen der Treiberschaltungsanord
nung von Fig. 8, wenn dieselbe im 1x-Modus mit
ausgerichteten Schreibübernahmesignalen wpd = 0
und long_wpre = 0 konfiguriert ist;
Fig. 15 Schreibzeitgebungen der Treiberschaltungsanord
nung von Fig. 8, wenn dieselbe im 1x-Modus mit
ausgerichteten Schreibübernahmesignalen wpd = 0
und long_wpre = 1 konfiguriert ist;
Fig. 16 Schreibzeitgebungen der Treiberschaltungsanord
nung von Fig. 8, wenn dieselbe im 2x-Modus mit
verzögerten Schreibübernahmesignalen wpd = 0 und
long_wpre = 0 konfiguriert ist;
Fig. 17 Schreibzeitgebungen der Treiberschaltungsanord
nung von Fig. 8, wenn dieselbe im 2x-Modus mit
verzögerten Schreibübernahmesignalen wpd = 0 und
long_wpre = 1 konfiguriert ist;
Fig. 18 ein bevorzugtes Ausführungsbeispiel einer Daten
empfängerschaltungsanordnung einer Speichersteue
rung;
Fig. 19 ein erstes bevorzugtes Ausführungsbeispiel einer
Übernahmesignalempfängerschaltungsanordnung einer
Speichersteuerung;
Fig. 20 ein zweites bevorzugtes Ausführungsbeispiel einer
Übernahmesignalempfängerschaltungsanordnung einer
Speichersteuerung;
Fig. 21 eine Steuerung-Speicher-Steuerung-Leseweg
schleife;
Fig. 22 Lesezeitgebungen der in Fig. 18, 19 und 28 ge
zeigten Empfängerschaltungsanordnung, wenn die
selbe im 1x-Modus mit rpd = 0 konfiguriert ist;
Fig. 23 nähere Einzelheiten des "frühen" 1x-Modus-
Lesefalls, der in Fig. 22 dargestellt ist;
Fig. 24 nähere Einzelheiten des "späten" 1x-Modus-
Lesefalls, der in Fig. 22 dargestellt ist;
Fig. 25 Lesezeitgebungen der in den Fig. 18, 19 und 28
gezeigten Empfängerschaltungsanordnung, wenn die
selbe im 2x-Modus mit rpd = 0 konfiguriert ist;
Fig. 26 nähere Einzelheiten des "frühen" 2x-Modus-
Lesefalls, der in Fig. 25 dargestellt ist;
Fig. 27 nähere Einzelheiten des "späten" 2x-Modus-
Lesefalls, der in Fig. 25 dargestellt ist;
Fig. 28 ein bevorzugtes Ausführungsbeispiel einer Schal
tung zum Senden des set_alt_n-Signals, das in der
Speichersteuerungsempfängerschaltungsanordnung
von Fig. 18 erscheint; und
Fig. 29 eine Beziehung zwischen der Kern- und der An
schlußflächenschaltungsanordnung der Speicher
steuerung von Fig. 1.
Eine Speichersteuerung 100 mit einer größeren Anzahl von
Funktionsmodi ist in Fig. 1-3 dargestellt. Die Speicher
steuerung 100 ist vorzugsweise eine Doppeldatenraten-
(DDR-)Speichersteuerung, muß es aber nicht sein. Eine DDR-
Speichersteuerung 100 ist eine, die in der Lage ist, mit
DDR-synchronen dynamischen Direktzugriffsspeichern (SDRAM)
zu kommunizieren. Siehe beispielsweise den JEDEC Standard
Nr. 79, herausgegeben im Juni 2000, der hierin nachfolgend
als die "JEDEC DDR SDRAM Spezifikation" bezeichnet wird.
Fig. 1 stellt ein beispielhaftes Computersystem 124 dar,
bei dem die Speichersteuerung 100 verwendet werden kann.
Das Computersystem 124 umfaßt eine Anzahl von zentralen
Verarbeitungseinheiten 102 (CPU), die über einen Systembus
106 mit der Speichersteuerung 100 verbunden sind. Wie es in
Fig. 1 gezeigt ist, bildet die Speichersteuerung 100 vor
zugsweise ein Teil einer integrierten Speicher- und Einga
be/Ausgabe(I/O)-Steuerung (MIOC) 100. Die MIOC 100 emp
fängt Zugriffanforderungen über den Systembus 106 und
adressiert dann Speichermodule 104 und/oder I/O-Geräte
112-122, um die Speicherzugriffsanforderungen zu verarbeiten.
Abgerufene Daten werden dann nach Bedarf zurückgesendet.
Ankommende Speicherzugriffsanforderungen, die von den I/O-
Geräten 112-122 empfangen werden, können ebenfalls durch
die MIOC verarbeitet werden. Wie es in der Technik bekannt
ist, umfassen Speicher- und I/O-Zugriffsanforderungen typi
scherweise Leseanforderungen und Schreibanforderungen. Die
MIOC 100 ist über einen Speicherbus 108 mit einer Anzahl
von Speichermodulen 104 gekoppelt und ist über lokale
Busse, Schnittstellen, usw. 110 (z. B. einen lokalen Peri
pheriekomponentenverbindungsbus (PCI; PCI = peripheral com
ponent interconnect) oder eine integrierte Geräteelektro
nikschnittstelle (IDE; IDE = integrated device electronics)
mit den I/O-Geräten 112-122 gekoppelt. Die Speichermodule
können beispielsweise eine Anzahl von DDR Dual-in-Line
Speichermodulen (DIMMs) umfassen. Ein DIMM ist eine Samm
lung von RAM-Elementen (z. B. DDR-SDRAMs) mit einer festen
Datenbreite (normalerweise 64 oder 72 Bit). I/O-Geräte kön
nen eines oder mehrere der folgenden und auch andere Geräte
umfassen: Laufwerke 112 (z. B. Festplatten, CD-ROM-
Laufwerke, Disketten-Laufwerke), Tore 114 (z. B. USB, par
allel, seriell), eine Tastatur 116, eine Maus 118 und/oder
andere Zeigegeräte, eine Anzeige 120 und einen Drucker 122.
Es ist wichtig, erneut anzumerken, daß Fig. 1 nur ein bei
spielhaftes Ausführungsbeispiel eines Computersystems 124
liefert, bei dem die nachfolgend beschriebene Speicher
steuerung 100 verwendet werden kann, und somit soll das
Computersystem 124 von Fig. 1 die Erfindung und/oder deren
geeignete Verwendung nicht beschränken. Es ist außerdem
wichtig, anzumerken, daß sich ein Großteil der folgenden
Beschreibung nur auf eine "Speichersteuerung" 100 bezieht.
Ein Durchschnittsfachmann auf diesem Gebiet wird jedoch
leicht erkennen, daß die Merkmale einer Speichersteuerung,
die nachfolgend offenbart werden, leicht für die Verwendung
bei einer in Fig. 1-3 dargestellten Speichersteuerung 100,
die Teil der integrierten "Speicher- und I/O-Steuerung" 100
ist, angepaßt werden können.
In Fig. 2 ist die MIOC 100 von Fig. 1 so gezeigt, daß sie
über einen 1x-Bus 200 (z. B. einen 1x-DDR-Bus) direkt mit
einer Anzahl von Speichermodulen 104 gekoppelt ist. Wie es
hierin definiert ist, ist ein 1x-DDR-Bus 200 ein Speicher
bus, der in einem herkömmlichen DDR-Modus arbeitet, bei dem
Daten in Synchronisation mit beiden Flanken eines Übernah
mesignals übertragen werden.
Ein Merkmal der hierin offenbarten Speichersteuerung 100
ist, daß dieselbe Daten auf nicht-homogene Speichermodule
104 schreiben und von denselben lesen kann. Zum Verständnis
dessen, was mit "nicht-homogenen Speichermodule" gemeint
ist, ist ein wenig Hintergrund nötig.
Die Speichermodule 104 sind in einer Vielzahl von Konfigu
rationen erhältlich, wobei die populärste die Dual-in-Line-
Speichermodul-(DIMM-)Konfiguration ist. Andere Konfigura
tionen, von denen es viele gibt, umfassen die Single-in-
Line-Speichermodul-(SIMM-)Konfiguration und die Small-
Outline-DIMM-(SO-DIMM-)Konfiguration.
Eine gemeinsame Charakteristik der vorher erwähnten Spei
chermodulkonfigurationen ist, daß jede eine gedruckte
Schaltungsplatine mit einer Mehrzahl von Direktzugriffs
speicher-(RAM-)Elementen umfaßt, die darauf befestigt
sind. Gleichartig zu den verschiedenen Konfigurationen von
Speichermodulen können RAM-Elemente ebenfalls eine Vielzahl
von Konfigurationen aufweisen, wobei die populärste die
SDRAM-Konfiguration ist. Es gibt jedoch derzeit Bestrebun
gen in der Industrie, zu Speichermodulen überzugehen, die
mit DDR-SDRAM-Elementen bestückt sind. Fig. 9 stellt bei
spielhaft eine Mehrzahl von DIMMs 104a, 104b, 104c dar, die
mit DDR-SDRAM-Elementen 910, 912, 914 bestückt sind.
DDR-SDRAM-Elemente sind derzeit in drei Datenbreiten er
hältlich, wobei Elemente mit zusätzlichen Datenbreiten vor
geschlagen sind. Die derzeit verfügbaren Datenbreiten sind
4, 8 und 16 Bits. Wie es in der JEDEC DDR SDRAM-
Spezifikation erörtert wurde, ist ein 4-Bit-breiter DDR-
SDRAM als ein x4-DDR-SDRAM bekannt und ist durch seine Er
zeugung/seinen Empfang von vier Datensignalen ansprechend
auf ein einziges Übernahmesignal charakterisiert. Gleichar
tig dazu ist ein 8-Bit-breiter DDR-SDRAM als ein x8-DDR-
SDRAM bekannt und ist durch die Erzeugung/dem Empfang von
acht Datensignalen ansprechend auf ein einziges Übernahme
signal charakterisiert; und ein Sechzehn-Bit-breiter DDR-
SDRAM ist als ein x16-DDR-SDRAM bekannt und ist durch seine
Erzeugung/seinen Empfang von sechzehn Datensignalen anspre
chend auf ein Paar von Übernahmesignalen charakterisiert.
Wie es für den Fachmann auf diesem Gebiet bekannt ist, ist
die Schnittstelle eines x16-DDR-SDRAM ähnlich wie die eines
x8-DDR-SDRAM, da ansprechend auf jedes der Übernahmesignale
eines x16-DDR-SDRAM acht Datensignale erzeugt/empfangen
werden.
Bei einem typischen Computersystem ist eine Speichersteue
rung 100 in der Lage, auf eine Anzahl von gleichen Spei
chermodulen zuzugreifen, die in eine Mehrzahl von Sockeln
902-908 an der Hauptplatine des Computersystems eingefügt
sind. Oft füllt ein Computerhersteller eine Anzahl der Soc
kel 902-908 mit einer Anzahl von gleichen Speichermodulen,
und weist dann den Endbenutzer des Computersystems an, daß
bereits geladene Speichermodule hinzugefügt werden können,
entfernt oder ausgetauscht, solange alle Speichermodule des
Computers von einer spezifizierten homogenen Modul- und
RAM-Konfiguration sind (z. B. DIMM, die aus SDRAM beste
hen). Falls ein Speichermodul nicht in der spezifizierten
Modul- und RAM-Konfiguration ist, ist die Speichersteuerung
des Computersystems nicht in der Lage, mit dem Speichermo
dul zu kommunizieren, und bei einigen Fällen kann das
nicht-homogene Speichermodul und/oder die Speichersteuerung
selbst beschädigt sein. Die Speichererweiterungsoptionen
eines Computerbenutzers sind daher auf eine spezielle Kon
figuration von Speichermodul begrenzt. Es wäre jedoch wün
schenswert, wenn ein Computerbenutzer beim Erweitern seines
oder ihres Computerspeichers mehr Flexibilität hätte.
Folglich ist hierin eine Speichersteuerung 100 offenbart,
die in der Lage ist, nicht-homogene Speichermodule 104 zu
lesen und zu schreiben. Die Speichermodule 104 sind nicht-
homogen, da sie RAM-Elemente mit unterschiedlichen Daten
breiten umfassen. Beispielsweise können zwei Speichermodule
x8-DDR-SDRAMs umfassen, ein drittes Speichermodul kann x4-
DDR-SDRAMs umfassen, und ein viertes Speichermodul kann
x16-DDR-SDRAMs umfassen. Die offenbarte Speichersteuerung
100 kommuniziert mit den nicht-homogenen Speichermodulen
104 durch Speichern und Zugreifen auf ein Speicherabbild
1100 (Fig. 11) von RAM-Element-Datenbreiten, wobei für je
des der Speichermodule 104 eines Computersystems eine RAM-
Element-Datenbreite gespeichert ist. Ein Zugriff auf das
Speicherabbild 1100 wird vor jedem Lese- und Schreibzyklus
"fliegend", d. h. im Betrieb, durchgeführt. Wenn somit einem
Schreibvorgang auf einen x4-DDR-SDRAM, der an einem ersten
Speichermodul 104a plaziert ist, ein Schreibvorgang auf ein
x8-DDR-SDRAM folgt, der auf einem zweiten Speichermodul
104b positioniert ist, kann die Speichersteuerung 100 die
Schreibvorgänge nacheinanderfolgend durchführen durch 1)
Zugreifen auf das Speicherabbild 1100 vor jeder Schreibope
ration und dann 2) Rekonfigurieren der Daten- und Übernah
mesignaltreiberschaltungsanordnung nach Bedarf.
Um die Kommunikation der Speichersteuerung mit einer Mehr
zahl von nicht-homogenen Speichermodulen 104 zu ermögli
chen, muß auf der Platinenebene lediglich berücksichtigt
werden, daß ausreichend Daten- und Übernahmesignalleitwege
vorgesehen sind, für den Zweck des Ermöglichens einer elek
trischen Verbindung von einem Erweiterungssockel zu Spei
chermodulen 104, die aus RAM-Elementen mit variierender Da
tenbreite bestehen. Wenn somit die offenbarte Speicher
steuerung 100 in einer DDR-SDRAM-Umgebung entworfen wird,
kann ein Computerhersteller 1) weniger Übernahmesignale
zu/von einer Speichersteuerung 100 leiten und einem Compu
terbenutzer die Fähigkeit zuweisen, in seinem Computersy
stem 124 gleichzeitig DIMMs zu verwenden, die aus x8- und
x16-DDR-SDRAMs bestehen oder 2) einige zusätzliche Übernah
mesignale zu/von einer Speichersteuerung 100 zu leiten und
einem Computerbenutzer die Fähigkeit zuweisen, in seinem
Computersystem 124 gleichzeitig DIMMs zu verwenden, die aus
x4-, x8- und x16-DDR-SDRAMs 104 bestehen. In beiden Fällen
wird einem Computerbenutzer mehr Flexibilität gegeben,
DIMMs zu mischen und übereinzustimmen, als derzeit vorgese
hen ist.
Eine Speichersteuerung 100, die nicht-homogene Speichermo
dule 104 lesen und schreiben kann (d. h. Speichermodule,
die aus RAM-Elementen mit nicht-homogener Datenbreite be
stehen) ist dadurch vorteilhaft, daß dieselbe einen Compu
terbenutzer mit einer Vielzahl von Speichererweiterungsop
tionen versieht. Beispielsweise sind x4-DDR-SDRAMs halb so
breit aber zweimal so tief wie x8- und x16-DDR-SDRAMs. So
mit kann man die Computerspeicherkapazität verdoppeln, in
dem DIMMs verwendet werden, die mit x4-DDR-SDRAMs bestückt
sind, statt DIMMs, die mit x8- oder x16-DDR-SDRAMs bestückt
sind. Wenn man jedoch bedenkt, daß DIMMs, die aus x8-DDR-
SDRAM bestehen, derzeit weniger teuer sind, möchte man
vielleicht zugunsten der geringeren Kosten eine Leistungs
ebene opfern. Ferner möchte ein Benutzer vielleicht DIMMs
mit höherer Kapazität, die aus x4-DDR-SDRAMs bestehen, zu
seinem oder ihrem Computersystem hinzufügen, aber nach wie
vor die bestehenden x8 oder x16 DDR-SDRAM behalten und ver
wenden, die mit seinem oder ihrem Computersystem geliefert
wurden.
Ohne die hierin offenbarte Speichersteuerung 100 kann die
Speicherkapazität eines Computersystems, das nur DIMMs ak
zeptiert, die aus x8- und/oder x16-DDR-SDRAMs bestehen, nur
durch eine Erhöhung bei der Anzahl von Lasten pro Speicher
datenbit erhöht werden (z. B. verdoppeln oder vervierfachen
der Anzahl von Lasten). Dadurch kann die gleiche Speicher
kapazität, die in einem x4-System erreicht werden kann, in
einem x8/x16 System erreicht werden. Ein Problem ist je
doch, daß bei mehr Lasten pro Bit die maximale Betriebsfre
quenz jedes DIMM verringert ist. Eine größere Speicherkapa
zität daher mit einer Leistungseinbuße erreicht. Speicher
operationen, die durch die hierin offenbarte Speichersteue
rung 100 eingeleitet werden, sind keinen solchen Leistungs
einbußen unterworfen.
Ein weiteres Merkmal der hierin offenbarten Speichersteue
rung 100 ist, daß dieselbe Übernahmesignale und Daten (ent
weder in einem 1x-Modus oder einem Mx-Modus) erzeugen, d. h.
schreiben kann (wobei M ≧ 2 und x eine Basisrate ist, mit
der Daten gelesen und geschrieben werden). Gleichartig dazu
kann dieselbe Daten und Übernahmesignale entweder in einem
1x-Modus oder in einem Mx-Modus empfangen (d. h. lesen).
In dem 1x-Modus ist die Speichersteuerung 100 direkt an ei
ne Mehrzahl von Speichermodulen 104 angeschlossen, wie es
in Fig. 2 dargestellt ist. In dem Mx-Modus ist die Spei
chersteuerung 100 jedoch über einen Bus 300, der bei einer
Mx-Geschwindigkeit arbeitet, an einen oder mehrere Zwi
schenchips 302 angeschlossen. In dem Mx-Modus treten Lese-
und Schreibvorgänge zwischen der Speichersteuerung 100 und
Zwischenchips 300 mit einer Mx-Rate auf. Lese- und Schreib
vorgänge zwischen den Zwischenchips 302 und den Speichermo
dulen 104 treten jedoch weiterhin mit einer 1x-Rate auf.
Der Vorteil des Verwendens der Zwischenchips 302 ist, daß
man erneut die Speicherkapazität eines Systems verdoppeln
kann - diesmal durch 1) Verwenden der Zwischenchips 302, um
2x-Daten zu empfangen, und dann die 2x-Raten auf eine 1x-
Weise auf zwei Bänke von Speichermodulen 104 zu verteilen,
oder durch 2) Verwenden der Zwischenchips 302, um 1x-Daten
von zwei Bänken von Speichermodulen 104 zu empfangen, und
dann die Daten zu multiplexen, um dieselben mit einer 2x-
Rate zu einer Speichersteuerung 100 zu senden.
Die Verwendung der Zwischenchips 302 ermöglicht es eben
falls, die Bandbreite eines Speichersystems zu verdoppeln.
Die Speichersteuerung 100, die hierin offenbart ist, lie
fert ferner eine Fähigkeit zum Verzögern von Lese- und
Schreibzyklen durch eine einzige Phase des internen Taktes
der Speichersteuerung. Zusätzlich zum Ermöglichen, daß Le
se- und Schreibzyklen mit einer Vollzyklusauflösung abge
stimmt werden, können Lese- und Schreibzyklen zusätzlich
mit einer Halbzyklusauflösung abgestimmt werden. Lese- und
Schreibzyklen können daher entweder an einer Anstiegs- oder
einer Abfalltaktflanke des internen Taktes der Speicher
steuerung beginnen. Dieses Merkmal liefert einen Grad an
Abstimmbarkeit für die Speichersteuerung 100.
Während einem Speicherlesezyklus besteht eine Notwendig
keit, eine Schwankung bei der Steuerung-Speicher-Steuerung-
Schleifenverzögerung (d. h. Leseschleifenverzögerung) zu
erklären. In Fig. 21 ist beispielsweise eine Mehrzahl von
Speichermodulen 104 über gemeinsame Daten- (DQ) und Über
nahmesignal-(DQS)Busse mit einer Speichersteuerung 100
gekoppelt. Nicht nur ist eine Mehrzahl von Speichermodulen
104 mit den Daten- und Übernahmesignalbussen gekoppelt,
sondern jedes der Speichermodule 104 kann Zeitgebungs
schwankungen innerhalb erlaubter Bereiche zeigen (z. B. in
nerhalb der Bereiche, die in der JEDEC DDR SDRAM-
Spezifikation vorgesehen sind). Ferner können Kopien eines
Taktsignals, die zu jedem der Mehrzahl von Speichermodulen
104 verteilt werden, bezüglich zueinander versetzt bzw.
verzerrt werden.
Als eine Folge der obigen Unregelmäßigkeiten können Lesean
forderungen, die an unterschiedliche Speichermodule gesen
det werden (mit ihren variierten Zeitgebungscharakteristika
und versetzten Takten) verschieden lange benötigen, um zu
der Steuerung 100 zurückzukehren. Als Folge gibt es eine
Schwankung bei der Leseschleifenverzögerung, die erklärt
werden muß, wenn bestimmt wird, wann der Empfang von Daten-
und Übernahmesignalen an einer Speichersteuerung 100 akti
viert und deaktiviert wird. Eine solche Verzögerung kann
nur erklärt werden durch Sicherstellen, daß eine Speicher
steuerung 100 Daten und Übernahmesignale ansprechend auf
eine kürzestmögliche Schleifenverzögerung (d. h. der Fall
eines frühen Empfangs) und einer längstmöglichen Schleifen
verzögerung (d. h. der Fall eines späten Empfangs) angemes
sen empfängt.
Die Daten- und Übernahmesignalbusse für die Speichermodule
104 unter der JEDEC-DDR-SDRAN-Spezifikation haben eine be
merkenswerte Charakteristik. Die Bezugsspannung für jede
Busleitung ist gleich wie die Endspannung der Busleitung.
Was dies bedeutet ist, daß als Folge des Rauschens die
Übernahmesignalanschlußflächen einer Speichersteuerung 100
fehlerhaften "0" zu "1" und "1" zu "0"-Übergängen unter
worfen sind, wenn die entsprechenden Busleitungen derselben
tristatemäßig betrieben werden. Falls diese Übergänge nicht
erklärt werden, können sie fälschlicherweise als aktive
Übernahmesignalflanken interpretiert werden, was zu einer
potentiellen Datenverfälschung führt.
Die hierin offenbarte Speichersteuerung 100 löst das obige
Problem durch Zählen von ankommenden Übernahmesignalflan
ken, die an einer Übernahmesignalanschlußfläche empfangen
werden, und dann durch Verwenden eines Zählwerts der Über
nahmesignalflanken, um eine Mehrzahl von Datenzwischenspei
chern zu steuern, die mit einer Datenanschlußfläche gekop
pelt sind. Wenn ein Zählwert, der eine erwartete Anzahl von
ankommenden Übernahmesignalflanken darstellt, erreicht ist,
wird kein weiteres Zählen durchgeführt, und ein Rauschen,
das als Folge des tristatemäßigen Betreibens eines Übernah
mesignalbusses erzeugt wird, wird daran gehindert, zusätz
liche Daten in die Vielzahl von Datenlatches zwischenzu
speichern.
Fig. 4 stellt ein erstes bevorzugtes Ausführungsbeispiel
der Treiberschaltungsanordnung 400 für eine Speichersteue
rung 100 dar. Die Treiberschaltungsanordnung 400 umfaßt ei
ne Datenanschlußfläche (DQ4), zwei Datenausbreitungsschal
tungen 402, 404, eine Multiplexstufe 406 und eine Ausgabe
mischschaltungsanordnung 408. Ein erster Datenstrom 410
wird zu jeder der Datenausbreitungsschaltungen 402, 408 ge
sendet, und ein zweiter Datenstrom 412 wird optional zu der
zweiten der beiden Datenausbreitungsschaltungen 404 gelie
fert. Die zweite Datenausbreitungsschaltung 404 empfängt
entweder den ersten oder den zweiten Datenstrom 410, 412
über die Multiplexstufe 406, die in Fig. 4 aus einem einzi
gen Multiplexer besteht. Der Multiplexer 406 wird durch ein
2x-Modussignal (data2xn1x) gesteuert, die es ermöglicht,
daß der erste Datenstrom 410 mit dem Ausgang des Multiple
xers in einem 1x-Betriebsmodus gekoppelt ist, und es ermög
licht, daß der zweite Datenstrom 412 mit dem Ausgang des
Multiplexers in einem 2x-Betriebsmodus gekoppelt ist. In
jedem Modus breiten sich Daten durch jede der Datenausbrei
tungsschaltungen 402, 404 zu der Ausgabemischschaltungsan
ordnung 408 aus, und an diesem Punkt werden die beiden Da
tenausbreitungsschaltungen 402, 404 abwechselnd mit der Da
tenanschlußfläche gekoppelt, um dadurch entweder einen 1x-
oder 2x-Datenbitstrom zu erzeugen. Einzelheiten der Aus
gangsmischschaltungsanordnung 408 werden später in dieser
Beschreibung erörtert.
Funktional arbeitet die in Fig. 4 dargestellte Treiber
schaltungsanordnung 400 wie folgt. In dem 1x-Modus wird der
gleiche Datenstrom 410 an jede der Datenausbreitungsschal
tungen 402, 404 geliefert. Als Folge erscheint ein Daten
bit, das sich durch die erste Datenausbreitungsschaltung
402 ausbreitet, an der Datenanschlußfläche, wenn die Ausga
bemischschaltungsanordnung 408 die erste Datenausbreitungs
schaltung 402 mit der Datenanschlußfläche koppelt. Das
gleiche Datenbit erscheint dann wieder an der Datenan
schlußfläche, wenn die Ausgabemischschaltungsanordnung 408
später die zweite Datenausbreitungsschaltung 404 mit der
Datenanschlußfläche koppelt. Als Folge werden Datenbits mit
der gleichen Rate an der Datenanschlußfläche erscheinen,
mit der sie an die Treiberschaltungsanordnung 400 gesendet
werden (d. h. in einem 1x-Modus).
In dem 2x-Betriebsmodus der Treiberschaltungsanordnung von
Fig. 4 wird ein erster Datenstrom 410 an die erste Daten
ausbreitungsschaltung 402 geliefert, und ein zweiter Daten
strom 412 wird an die zweite Datenausbreitungsschaltung 404
geliefert. Der erste Datenstrom 410 kann beispielsweise die
Bits 0, 2, 4, . . . eines Datenstroms umfassen, während der
zweite Datenstrom 412 beispielsweise die Bits 1, 3, 5 . . .
eines Datenstroms umfassen kann. Als Folge breiten sich un
terschiedliche Datenbits durch die erste und zweite Daten
ausbreitungsschaltung 402, 404 aus, und die Ausgabemisch
schaltungsanordnung 404 erzeugt einen 2x-Datenstrom von
Bits 0, 1, 2 . . . an der Datenanschlußfläche. Man beachte,
daß der Ausgangsdatenstrom als ein 2x-Datenstrom betrachtet
wird, weil derselbe Datenbits mit zweimal der Rate von je
dem der Dateneingabeströme 410, 412 der Treiberschaltungs
anordnung erzeugt.
Ein beispielhaftes Ausführungsbeispiel der Ausgabemisch
schaltungsanordnung 408 ist in Fig. 5 offenbart. Die Schal
tungsanordnung 408 umfaßt 2 D-Typ-Flip-Flops 500, 502, die
jeweils Daten von einer der zwei Datenausbreitungsschaltun
gen 402, 404 von Fig. 4 empfängt. Die Flip-Flops 500, 502
sind alternativ auf der positiven und negativen Kante eines
Takts IOBCK getaktet. Das Ausgangssignal jedes Flip-Flop
500, 502 wird jeweils durch einen Tristate-Puffer 504, 506
empfangen. Jeder Puffer 504, 506 empfängt außerdem den Takt
IOBCK und wird in Synchronisation mit seinem entsprechenden
Flip-Flop 500, 502 betrieben. Wenn somit Daten aus dem
Flip-Flop 500 getaktet werden, ermöglicht es der Puffer 504
den Daten, durch die Datenanschlußfläche DQ4 zu verlaufen
und der Puffer 506 wird tristatemäßig betrieben. Gleichar
tig dazu, wenn Daten aus dem Flip-Flop 502 getaktet werden,
ermöglicht es der Puffer 506 den Daten, durch die Datenan
schlußfläche DQ4 zu verlaufen, und der Puffer 504 wird tri
statemäßig betrieben. Die beiden Flip-Flops 500, 502 und
die Puffer 504, 506 liefern daher abwechselnd Daten zu der
Datenanschlußfläche DQ4. Jedes entsprechende Flip-Flop und
jeder entsprechende Puffer in Fig. 5 sind ein Beispiel ei
nes tristatemäßig betreibbaren Weges, auf den in den An
sprüchen Bezug genommen wird.
Es ist anzumerken, daß die Ausgabemischschaltungsanordnung
408 statt den Flip-Flops 500, 502 und den Puffern 504, 506
auch einen Multiplexer umfassen könnte. Die in Fig. 5 auf
geführte Anordnung wird jedoch bevorzugt, weil die C → Q-
Zeit minimiert ist. In der Tat ist es vorzuziehen, die C →
Q-Zeit durch Integrieren der Funktionalität der Puffer 504,
506 in die Flip-Flops 500, 502 noch weiter zu minimieren.
Fig. 6 stellt ein zweites bevorzugtes Ausführungsbeispiel
einer Treiberschaltungsanordnung 600 für eine Speicher
steuerung 100 dar. Wie die in Fig. 4 dargestellte Treiber
schaltungsanordnung 400 umfaßt die Treiberschaltungsanord
nung 600 von Fig. 6 eine Datenanschlußfläche (DQ4), zwei
Datenausbreitungsschaltungen 602, 604, eine Multiplexstufe
606 und eine Ausgabemischschaltungsanordnung 608. Die Trei
berschaltungsanordnung 600 umfaßt jedoch zusätzlich eine
Phasenverzögerungsschaltung 614 und einen ersten und einen
zweiten Phasenverzögerungsmultiplexer 616, 618. Der Zweck
der zusätzlichen Phasenverzögerungsschaltungsanordnung
614-618 ist es, das Erscheinen der Daten an der Datenanschluß
fläche zu verzögern und dadurch eine "Schreibphasenverzöge
rung" auszulösen, wie sie erforderlich sein kann, um ein
System für einen maximalen Spielraum abzustimmen. Die Fä
higkeit, einen Schreibvorgang unter Verwendung der Phasen
verzögerungsschaltungsanordnung 614-618 zu verzögern, ver
sieht die Treiberschaltungsanordnung 600 daher mit einem
Abstimmungsmerkmal.
Der erste Phasenverzögerungsmultiplexer 616 empfängt sowohl
den ersten als auch den zweiten Datenstrom 610, 612 und
wählt ansprechend auf das data2xn1x-Signal entweder den er
sten 610 oder den zweiten 612 Datenstrom für die Ausgabe zu
der Phasenverzögerungsschaltung 614 aus. Der zweite Phasen
verzögerungsmultiplexer 618 empfängt Daten, die von der er
sten Datenausbreitungsschaltung 602 und der Phasenverzöge
rungsschaltung 614 ausgegeben werden, und bestimmt, welche
Daten ansprechend auf das Exklusiv-ODER 620 (XOR) des da
ta2xn1x-Signals mit einem Schreibphasenverzögerungssignal
(wpd-Signal = write phase delay signal) zu der Ausgabe
mischschaltungsanordnung 608 ausgegeben werden. Man beach
te, daß das data2xn1x-Signal in dem 2x-Modus aktiviert ist,
und in dem 1x-Modus nicht aktiviert ist. Die Ausrichtung
der wpd-Signalschalter ändert sich jedoch abhängig von dem
Zustand des data2xn1x-Signals. In dem 1x-Modus ist das wpd-
Signal für eine Schreibphasenverzögerung aktiviert, und für
keine Schreibphasenverzögerung nicht aktiviert. In dem 2x-
Modus ist das wpd-Signal für keine Schreibphasenverzögerung
aktiviert, und für den Zweck des Auslösens einer Schreib
phasenverzögerung nicht aktiviert.
Es ist anzumerken, daß in Fig. 6 der Multiplexstufenmulti
plexer 606 nicht mehr durch das data2xn1x-Signal gesteuert
wird, sondern statt dessen durch das UND 622 des data2xn1x-
Signal und das wpd-Signal gesteuert wird.
Funktional arbeitet die Treiberschaltungsanordnung 600 von
Fig. 6 wie folgt. Sowohl in dem 1x- und dem 2x-Modus ohne
Schreibphasenverzögerung (wpd = 0 in 1x-Modus; wpd = 1 in
2x-Modus) breiten sich Daten durch die erste und die zweite
Datenausbreitungsschaltung 602, 604 aus, wobei sich die Da
ten zuerst durch die erste Datenausbreitungsschaltung 602
und die Ausgabemischschaltungsanordnung 608 ausbreiten. So
wohl in dem 1x- und dem 2x-Modus mit einer Schreibphasen
verzögerung (wpd = 1 in 1x-Modus; wpd = 0 in 2x-Modus)
breiten sich Daten durch die zweite Datenausbreitungsschal
tung 604 und die Phasenverzögerungsschaltung 614 aus, wobei
sich Daten zuerst durch die zweite Datenausbreitungsschal
tung 604 und die Ausgabemischschaltungsanordnung 608 aus
breiten. Es ist anzumerken, daß mit einer Schreibphasenver
zögerung entweder in dem 1x- oder dem 2x-Modus Daten sich
nach wie vor in die Phasenverzögerungsschaltung 614 aus
breiten können. Wenn jedoch keine Schreibphasenverzögerung
angezeigt ist, breiten sich die Daten, die sich in die Pha
senverzögerungsschaltung 614 ausbreiten, nicht durch den
zweiten Phasenverzögerungsmultiplexer 618 und auf die Da
tenanschlußfläche DQ4 aus.
Ein Durchschnittsfachmann auf diesem Gebiet wird leicht
verstehen, wie jede der in Fig. 4 und 6 offenbarten Trei
berschaltungsanordnungen 400, 600 extrapoliert werden kann,
um eine Treiberschaltungsanordnung zu liefern, die in der
Lage ist, entweder in einem 1x- oder einem Nx-Modus zu ar
beiten. Bezüglich des Extrapolierens der Schaltungsanord
nung von Fig. 6 für N < 2 wird man erkennen, daß nur eine
einzige Phasenverzögerungsschaltung 614 benötigt wird, un
abhängig von der Anzahl von Ausbreitungsschaltungen 602,
604, die der Treiberschaltungsanordnung 600 hinzugefügt
sind.
Ein Durchschnittsfachmann auf diesem Gebiet wird ebenfalls
erkennen, wie eine extrapolierte Treiberschaltungsanordnung
(wobei N eine gerade Zahl 2 ist) verwendet werden kann,
um einen Mx-Datenstrom zu unterstützen, bei dem 1 < M ≦ N.
Fig. 7 und 8 stellen ein verbessertes Ausführungsbeispiel
800 der Treiberschaltungsanordnung von Fig. 6 dar, bei der
die Datenanschlußfläche DQ4 tristatemäßig betrieben werden
kann, und bei der ein Übernahmesignal, daß an einer Über
nahmesignalanschlußfläche DQS 18 erzeugt wird, mit dem Da
tenausgang an der Datenanschlußfläche synchronisiert ist.
Fig. 7 stellt ein bevorzugtes Ausführungsbeispiel einer
Taktschaltung 700 dar, die viele der Taktsignale erzeugt,
die nicht nur in Fig. 8, sondern auch in Fig. 12-20 und 22-27
erscheinen. Die Taktschaltung 700 wird durch einen Kern
takt, MCK, einer Speichersteuerung betrieben. Die Takt
schaltung wiederum gibt die Takte IOBCK, MUX_CLK und IOSCK
aus. Der Takt IOBCK ist lediglich eine gepufferte Version
des MCK-Takts (gepuffert durch einen Puffer 702). Der Takt
MUX_CLK wird durch einen Puffer 704 gepuffert, aber wird
entweder mit der Rate des MCK-Takts erzeugt (d. h. wenn der
Multiplexer 706 für 1x-Modusbetrieb konfiguriert ist), oder
mit der Hälfte der Rate des MCK-Takts (d. h. als in Ergeb
nis des Dividierers 708, durch den der MCK-Takt verläuft,
wenn der Multiplexer 706 für 2x-Modusbetrieb konfiguriert
ist). Der Takt MUX_CLK kann entweder an einen Multiplexer
chip 302 oder ein Speichermodul 104 geliefert werden (siehe
Fig. 2 und 3). Falls der Multiplexer 710 für 1x-
Modusbetrieb konfiguriert ist, ist der Takt IOSCK equiva
lent zu dem Takt MCK. Wenn jedoch der Multiplexer 710 für
2x-Modusbetrieb konfiguriert ist, stellt der Takt IOSCK ei
ne Version von MCK dar, die um eine 1/4-Periode verzögert
ist (d. h. als ein Ergebnis der 1/4-
Periodenverzögerungsschaltungsanordnung 712). Der Takt
IOSCK ermöglicht es der Treiberschaltungsanordnung von Fig.
8, geeignete 2x-Modusübernahmesignale an ein bevorzugtes
Ausführungsbeispiel eines Zwischenchips 302 zu liefern
(Fig. 3).
Die in Fig. 8 dargestellte Treiberschaltungsanordnung 800
hat viele Ähnlichkeiten mit der in Fig. 6 dargestellten
Treiberschaltungsanordnung 600. Die Übereinstimmung der
Komponenten zwischen Fig. 6 und 8 ist wie folgt. Die erste
Datenausbreitungsschaltung 602 in Fig. 6 entspricht einem
einfachen Drahtleitweg 802 in Fig. 8; die zweite Datenaus
breitungsschaltung 604 entspricht einem ersten D-Typ-Flip-
Flop 804, und die Phasenverzögerungsschaltung 614 ent
spricht einem zweiten D-Typ-Flip-Flop 806. Die Übereinstim
mung von anderen Komponenten von Fig. 6 ist in Fig. 8 durch
die Verwendung von gleichen Bezugszeichen angezeigt.
Die in Fig. 8 dargestellte Ausgabemischschaltungsanordnung
ist ähnlich zu derjenigen, die in Fig. 5 offenbart ist, und
umfaßt zwei D-Typ-Flip-Flops 808, 810 und zwei Puffer 809,
811, die tristatemäßig betrieben werden.
Falls Daten alternativ durch einen Datenweg geschrieben und
gelesen werden können (z. B. den Datenweg DQ4), kann die
Fähigkeit, den Schreibweg der Anschlußfläche während Lese
vorgängen tristatemäßig zu betreiben, wünschenswert sein.
Somit umfaßt Fig. 8 einen Tristate-Puffer 812 zwischen der
Ausgabemischschaltungsanordnung 808, 810 und der Datenan
schlußfläche. Der Zustand des Puffers 812 wird während dem
Beginn und der Beendigung von Schreibvorgängen unter Ver
wendung von zwei Signalen geändert: trist_d und wpd. Der
Zweck des wpd-Signals wurde bereits oben erörtert. Das
trist_d-Signal wird an einen Multiplexer 814 gesendet,
nachdem eine Verzögerung durch ein oder zwei D-Typ-Flip-
Flops 816, 818 ausgelöst wurde. Diese Flip-Flops 816, 818
sind ähnlich aufgebaut und getaktet wie die Flip-Flops 804,
810 die in der Ausgabemischschaltungsanordnung und dem
zweiten Datenausbreitungsweg gefunden werden. Der Zustand
des Multiplexers 814 wird durch das wpd-Signal gesteuert,
so daß das trist_d-Signal den Tristate-Puffer 812 in Syn
chronisation mit der Anfangsdatenausgabe der Ausgabemisch
schaltungsanordnung entweder von dem ersten Datenausbrei
tungsweg 802 oder dem zweiten Datenausbreitungsweg 804 öff
net (d. h. wenn wpd aktiviert ist (wpd = 1 in 1x-Modus; wpd
= 0 in dem 2x-Modus), wobei die Datenausgabe an der An
schlußfläche DQ4 durch die Hälfte der Periode des Takts
IOBCK verzögert ist).
Die JEDEC-DDR-SDRAM-Spezifikation legt fest, daß Daten syn
chron mit einem Übernahmesignal übertragen werden müssen.
Als Folge ist die Treiberschaltungsanordnung von Fig. 8 mit
einer Übernahmesignalanschlußfläche (DQS18) und einer Logik
824-834 zum Erzeugen eines Übernahmesignals versehen, die
angemessen mit dem 1x- oder 2x-Daten übereingestimmt wird,
die an den DQS18-Datenanschlußflächen vorgesehen sind.
Die Schaltungsanordnung 836, 838, 840, die ähnlich ist wie
diejenige, die den Tristate-Puffer 812 aktiviert, der mit
der Datenanschlußfläche DQS gekoppelt ist, kann verwendet
werden, um den Tristate-Puffer 822 zu betreiben, damit der
Übernahmesignalanschlußfläche DQS18 gekoppelt ist. Aufgrund
von Zeitgebungsüberlegungen, die später in dieser Beschrei
bung beschrieben werden, wird die Schaltungsanordnung je
doch durch das wpd-Signal und durch ein trist_s-Signal ge
steuert, das getrennt von dem aber ähnlich wie das trist_d-
Signal funktioniert.
Ein Übernahmesignal wird durch Liefern eines Paars von Si
gnalen, act_stb[0] und act_stb[1], an die Übernahmesignal
treiberschaltungsanordnung 824-834 erzeugt. In dem 2x-Modus
ohne Schreibphasenverzögerung wird für die Dauer eines
Schreibzyklusses act_stb[0] tief gezwungen und act_stb[1]
hoch gezwungen. Die act_stb[0 : 1]-Signale werden dann je
weils durch ein erstes und zweites Paar von D-Typ-Flip-
Flops 824/826, 832/834 getaktet. Die act_stb[0 : 1]-Signale
werden durch das erste Paar von Flip-Flops 824, 826 paral
lel getaktet, aber das act_stb[1]-Signal wird zuerst durch
das zweite Paar von Flip-Flops 832, 834 getaktet. Durch In
vertieren der act_stb[0 : 1]-Signale während einem 2x-Modus
Schreibvorgang mit Schreibphasenverzögerung hält das erste
Takten des Flip-Flops 834 den DQS18-Ausgang für einen zu
sätzlichen halben Taktzyklus (d. h. eine Phase) niedrig,
und verzögert das Erscheinen eines Übernahmesignals an dem
DQS18-Ausgang für einen halben Takt.
Es ist anzumerken, daß bei der Datentreiberschaltungsanord
nung nach jedem Flip-Flop 832, 834 ein tristatemäßig be
treibbarer Puffer 833, 835 folgt.
Die Zustände von act_stb[0] und act_stb[1] sind daher wäh
rend einem 2x-Schreibvorgang statisch. Dies ist jedoch bei
dem 1x-Modus nicht der Fall.
In dem 1x-Modus schaltet jedes der act_stb[0 : 1]-Signale mit
einer 1x-Rate hin und her, und eine Schreibphasenverzöge
rung wird lediglich durch Verzögern des ersten Anstiegs von
jedem der act_stb[0 : 1]-Signale implementiert.
Schaltungen, die sowohl verwendet werden können zum 1) Er
zeugen der act_stb[0]- und act_stb[1]-Signale und 2) zum
Implementieren zusätzlicher Übernahmesignalfunktionalität,
die nachfolgend beschrieben wird, werden in dem nächsten
Abschnitt dieser Beschreibung erörtert.
Die JEDEC-DDR-SDRAM-Spezifikation spezifiziert, daß DDR-
SDRAM als x4-, x8- oder x16-Elemente aufgebaut sein können.
Schreibvorgänge auf x4-DDR-SDRAMs erfordern ein Übernahme
signal für jeden Satz von vier Datensignalen (d. h. ein
4 : 1-Daten/Übernahmesignalverhältnis), während Schreibvor
gänge auf x8- und x16-DDR-SDRAM ein Übernahmesignal für je
den Satz von acht Datensignalen erfordern (d. h. ein 8 : 1-
Daten/Übernahmesignalverhältnis).
In der Vergangenheit wurden DDR-Speichersteuerungen entwor
fen, um mit einem Typ von DDR-Speichermodul zu kommunizie
ren (d. h. einem Satz von homogenen Speichermodulen, die
nur aus x4, x8 oder x16 DDR-SDRAM bestehen). Eine DDR-
Speichersteuerung würde jedoch eine größere Flexibilität
bieten, insbesondere, wenn ein Computerbenutzer seinen oder
ihren Computerspeicher erweitern möchte, sofern die Spei
chersteuerung in der Lage wäre, mit Speichermodulen zu kom
munizieren, die aus RAM-Elementen mit nicht-homogener Da
tenbreite bestehen. Um diesen Bedarf zu decken, ist die in
Fig. 7-13 dargestellte Speichersteuerung in der Lage, auf
Speichermodule zu schreiben, die aus RAM-Elementen mit
nicht-homogener Datenbreite bestehen (z. B. DIMMs, die aus
x4-DDR-SDRAM bestehen, DIMMs, die aus x8-DDR-SDRAM beste
hen, und DIMMs, die aus x16-DDR-SDRAMs bestehen).
Fig. 9 stellt eine beispielhafte Umgebung dar, in der die
Speichersteuerung 100 arbeiten kann. Es ist anzumerken, daß
die Speichersteuerung 100 über gemeinsame Daten- und Über
nahmesignalleitungen mit einer Mehrzahl von Sockeln 902-908
gekoppelt ist. Ein erster Sockel 902 hält ein DIMM 104a,
das aus x4-DDR-SDRAM besteht; ein zweiter Sockel 904 hält
ein DIMM 104b, das aus x8-DDR-SDRAM besteht, und ein drit
ter der Sockel 906 hält ein DIMM 104b, das aus x16-DDR-
SDRAM 910-914 besteht.
In Fig. 9 ist die Speichersteuerung 100 mit einer Mehrzahl
von Übernahmesignalanschlußflächen dargestellt, von denen
jede eine Mehrzahl von Datenanschlußflächen zugeordnet ist.
Beispielhaft, und um einen nahtlosen Betrieb mit bestehen
den DDR-DIMMs zu ermöglichen, ist jede Übernahmesignalan
schlußfläche zugeordnet zu vier Datenanschlußflächen ge
zeigt (z. B. Übernahmesignalanschlußfläche DQS0 entspricht
den Datenanschlußflächen DQ0-DQ3 und die Übernahmesignalan
schlußfläche DQS18 entspricht den Datenanschlußflächen
DQ4-DQ7). Obwohl in Fig. 9 nur zwei Übernahmesignal- und acht
Datenanschlußflächen dargestellt sind, kann die Speicher
steuerung 100 beispielsweise 36 Übernahmesignalanschlußflä
chen und 144 Datenanschlußflächen umfassen.
Wie nachfolgend näher beschrieben wird, erzeugt/empfängt
die Speichersteuerung 100 an jeder ihrer Daten- und An
schlußflächen Signale, wenn dieselbe mit DIMMs kommuni
ziert, die aus x4-DDR-SDRAM bestehen. Folglich gibt es eine
4 : 1-Entsprechung zwischen Daten- und Übernahmesignalen,
wenn die Speichersteuerung 100 mit DIMMs kommuniziert, die
aus x4-DDR-SDRAMs bestehen. Wenn die Speichersteuerung 100
jedoch mit DIMMs kommuniziert, die aus x8- oder x16-DDR-
SDRAMs bestehen, erzeugt/empfängt dieselbe Daten an jeder
ihrer Datenanschlußflächen, aber erzeugt/empfängt Übernah
mesignale nur an den niedrigeren Übernahmesignalanschluß
flächen (d. h. Übernahmesignalanschlußflächen DQS0-DQS17).
Folglich gibt es eine 8 : 1-Entsprechung zwischen Daten- und
Übernahmesignalen, wenn die Speichersteuerung mit DIMMs
kommuniziert, die aus x8- oder x16-DDR-SDRAMs bestehen.
Fig. 10 stellt ein beispielhaftes Abbilden von Übernahmesi
gnalanschlußflächen auf Datenanschlußflächen für die Spei
chersteuerung von Fig. 9 dar, abhängig davon, ob die Spei
chersteuerung 100 Daten zu DIMMs treibt, die aus x4- oder
x8/x16-DDR-SDRAMs bestehen. Es ist anzumerken, daß die obe
ren Übernahmesignalanschlußflächen der Speichersteuerung
während Schreibvorgängen auf DIMM, die aus x8- oder x16-DDR-
SDRAM bestehen, niedrig gehalten werden.
Eine Bestimmung dessen, ob Daten auf ein DIMM geschrieben
werden, das aus x4- oder x8/x16-DDR-SDRAM besteht, kann
durch Beibehalten eines Speicherabbilds 1100 (Fig. 11) in
der Speichersteuerung von Fig. 9 durchgeführt werden. Ein
solches Abbild 1100 kann eine Tabelle von entsprechenden
DIMM-Positionen 1104 (z. B. Sockeln) und DIMM-Typen umfas
sen, wobei die Typen beispielsweise folgendes spezifizie
ren: 1) Anzeigen von RAM-Element-Datenbreiten 1106 für eine
Anzahl von DIMMs oder 2) Anzeigen von Da
ten/Übernahmesignalverhältnissen für eine Anzahl von DIMMs.
Die Anzeigen können beispielsweise einen Wert Ax für jedes
Speichermodul x umfassen, das mit der Speichersteuerung 100
gekoppelt ist.
Die Werte Ax, die in dem Speicherabbild gespeichert sind,
können verschieden dargestellt werden. Für die Zwecke des
Kommunizierens mit den DIMMs 104, die aus x4-, x8- und x16-
DDR-SDRAMs bestehen, kann jeder Wert Ax aus einem einzigen
binären Bit bestehen, wobei die beiden Werte desselben die
Daten/Übernahmesignalverhältnisse darstellen, die erforder
lich sind, um x4- und x8/x16-DDR-SDRAMs zu lesen bzw. zu
schreiben. Eine logische "1" kann beispielsweise ein 4 : 1-
Daten/Übernahmesignalverhältnis darstellen, wie es für
DIMMs erforderlich ist, die aus x4-DDR-SDRAMs bestehen, und
eine logische "0" kann ein 8 : 1-
Daten/Übernahmesignalverhältnis darstellen.
Alternativ könnte jeder Wert Ax ein binäres Äquivalent ei
nes tatsächlichen Daten/Übernahmesignalverhältnisses sein.
Ein 4 : 1-Daten/Übernahmesignalverhältnis könnte in dem Spei
cherabbild als der Wert "0100" gespeichert werden, während
ein 8 : 1-Daten/Übernahmesignal in dem Speicherabbild 1100
als der Wert "1000" gespeichert werden könnte. Unter der
Voraussetzung der Daten/Übernahmesignalverhältnisse, die
durch x4-, x8- und x16-DDR-SDRAM angenommen werden, ist die
Speicherung von Vier-Bit-Werten in einem Speicherabbild
1100 unnötig. Die Anwendung der obigen Prinzipien auf
Nicht-DDR-Umgebungen und/oder auf zukünftige DDR-Umgebungen
könnte das Speichern von binären Äquivalenten von Da
ten/Übernahmesignalverhältnissen wünschenswerter machen.
Jeder Wert Ax könnte ebenfalls die Datenbreite von RAM-
Elementen 910-914, die auf einem DIMM 104c befestigt sind,
sein (oder darstellen). Falls RAM-Elemente mit unterschied
licher Datenbreite jedoch die gleichen Da
ten/Übernahmesignalverhältnisse aufweisen, wie in dem Fall
von x8- und x16-DDR-SDRAMs kann die Größe von Ax-Werten re
duziert werden, falls jeder Ax lediglich das Da
ten/Übernahmesignalverhältnis von RAM-Elementen darstellt,
die auf einem DIMM befestigt sind.
Das Speicherabbild (Speicher-Map) 1100 kann beibehalten
werden durch Auslösen desselben beim Urladen oder der Re
konfiguration eines Computersystems 124. Bei einem bevor
zugten Ausführungsbeispiel wird eine RAM-Element-
Datenbreite von jedem Speichermodul gelesen, das mit der
Speichersteuerung 100 gekoppelt ist, und jede RAM-Element-
Datenbreite wird dann verwendet, um einen Wert zu erzeugen,
der in dem Speicherabbild 1100 gespeichert wird. Alterna
tiv, obwohl nicht bevorzugt, können die Datenbreiten, die
von den Speichermodulen 104 (oder Darstellungen derselben)
gewonnen werden, direkt in dem Speicherabbild 100 gespei
chert werden. Falls die Speichermodule 104, die mit der
Speichersteuerung 100 gekoppelt sind, DDR-Speichermodule
sind, kann jedes Speichermodul eine DDR-SDRAM-Datenbreite
in einem Seriell-Präsenzerfassungs-ROM 916 beibehalten, der
auf dem Speichermodul positioniert ist. Falls die Speicher
steuerung 100 eine Seriell-Präsenzerfassungssequenz in den
Speichermodulen 104 ausführt, kann eine DDR-SDRAM-
Datenbreite, die in einem ROM von jedem Speichermodul ge
speichert ist, gelesen werden, in einen geeigneten Wert Ax
umgewandelt werden und in dem Speicherabbild 1100 gespei
chert werden.
Das Speicherabbild 1100 kann ebenfalls beibehalten werden,
durch Versehen desselben mit einem Wert Ax für jedes Spei
chermodul über eine Benutzerschnittstelle (z. B. das Bios-
SETUP-Dienstprogramm eines Computersystems).
Während einem Schreibzyklus wird das Speicherabbild 1100
durch die gesamte oder einen Teil einer Speicheradresse
adressiert, und ein adressierter Wert Ax wird von dem Spei
cherabbild 1100 ausgegeben. Der ausgegebene Wert wird dann
verwendet, um "fliegend" zu Bestimmen 1) wie viele Übernah
mesignale durch die Speichersteuerung 100 erzeugt werden
müssen, und 2) wo die Übernahmesignale erzeugt werden müs
sen (d. h. an welchen Übernahmesignalanschlußflächen).
Während Schreibzyklen der Speichersteuerung 100 werden
adressierte Werte Ax durch eine Übernahmesignaltreiber
schaltungsanordnung empfangen, die zwei oder mehr Teilsätze
von Übernahmesignaltreiberschaltungen umfaßt, wobei jede
Übernahmesignaltreiberschaltung wie in Fig. 8 dargestellt
konfiguriert sein kann. Die Teilsätze von Übernahmesignal
treiberschaltungen sind so konfiguriert, daß zumindest ei
ner der Teilsätze ansprechend auf nur einen Abschnitt der
Werte Ax Übernahmesignale erzeugt. Falls beispielsweise je
der Wert Ax aus einem einzigen binären Bit besteht, kann
ein Teilsatz von Übernahmesignaltreiberschaltungen nur
Übernahmesignale erzeugen, wenn Ax = 1 ist, wobei der ande
re Teilsatz von Übernahmesignaltreiberschaltungen für beide
Werte von Ax Übernahmesignale erzeugen kann. Mit Bezugnahme
auf Fig. 10 werden Übernahmesignale immer an niedrigeren
Übernahmesignalanschlußflächen erzeugt, aber Übernahmesi
gnale werden nur an oberen Übernahmesignalanschlußflächen
erzeugt, wenn das Speicherabbild eine logische "1" ausgibt
(d. h. wenn Ax eine logische "1" ist). Auf diese Weise wer
den an allen Übernahmesignalanschlußflächen Übernahmesigna
le erzeugt, wenn ein adressierter Wert Ax ein 4 : 1-
Übernahmesignalverhältnis anzeigt, und Übernahmesignale
werden nur an der Hälfte der Übernahmesignalanschlußflächen
erzeugt (d. h. einen Teilsatz von Übernahmesignalanschluß
flächen, die aus den niedrigeren Übernahmesignalanschluß
flächen bestehen), wenn Ax ein 8 : 1-
Übernahmesignalverhältnis anzeigt.
Das Speicherabbild 1100 bildet vorzugsweise Teil eines grö
ßeren Speicheradressrouters (MAR = memory address router)
1102. Der MAR 1102 kann andere Informationen bezüglich des
Typs und des Aufbaus der Speichermodule 104 umfassen, die
mit der Speichersteuerung 100 gekoppelt sind, zusätzlich zu
einer Unterstützungsschaltungsanordnung. Wenn der MAR 1102
mit einer Speicheradresse versehen ist, wird auf das Spei
cherabbild 1100 und andere Tabellen zugegriffen, um den
DIMM-Sockel und die DIMM-Bank zu bestimmen, in der sich die
Adresse befindet. Eine Zeilen- und Spaltenadresse in dem
adressierten DIMM wird ebenfalls bestimmt. Gleichzeitig
wird auf ein Daten/Übernahmesignalverhältnis zugegriffen,
so daß die Übernahmesignalanschlußflächen der in Fig. 9
dargestellten Speichersteuerung 100 zum Schreiben oder Emp
fangen von Daten von dem DIMM-Typ, der adressiert wird, ge
eignet konfiguriert werden können.
Die Treiberschaltungsanordnung für die verschiedenen in
Fig. 9 gezeigten Daten- und Übernahmesignalanschlußflächen
kann wie in Fig. 8 gezeigt implementiert werden. Bei einer
solchen Implementierung sind es die act_stb[0]- und
act_stb[1]-Signale, die bestimmen, ob, wann und wie ein Si
gnal an einer Übernahmesignalanschlußfläche erzeugt wird.
Es wird daher eine Schaltungsanordnung zum Erzeugen von
zwei Sätzen der act_stb[0]- und act_stb[1]-Signale benö
tigt. Eine Schaltungsanordnung 1200 zum Erzeugen des Satzes
von act_stb[0]- und act_stb[1]-Signalen, die benötigt wer
den, um die niedrigeren Übernahmesignalanschlußflächen
(d. h. Anschlußflächen DQS0-DQS17) der Speichersteuerung von
Fig. 9 zu konfigurieren, ist in Fig. 12 dargestellt, und
eine Schaltungsanordnung 1300 zum Erzeugen der act_stb[0]-
und act_stb[1]-Signale, die benötigt werden, um die oberen
Übernahmesignalanschlußflächen (d. h. Anschlußflächen
DQS18-DQS35) der Speichersteuerung von Fig. 9 zu konfigu
rieren, ist in Fig. 13 dargestellt. In Fig. 12 wurden die
act_stb[0]- und act_stb[1]-Signale von Fig. 8 jeweils umbe
nannt in act_stb_low[0] und act_stb_low[1]. Gleichartig da
zu wurden in Fig. 13 die act_stb[0]- und act_stb[1]-Signale
von Fig. 8 jeweils in act_stb_up[0] und act_stb_up[1] umbe
nannt.
Es ist anzumerken, daß die in Fig. 12 und 13 dargestellte
Schaltungsanordnung 1200, 1300 in der Lage ist, in mehreren
Modi zu arbeiten, einschließlich den 1x- oder 2x-Modus, und
Modi mit oder ohne Schreibphasenverzögerung. Zusätzlich
können x4- und x8-Schreibmodi, entweder mit oder ohne eine
lange Schreibpräambel erreicht werden. Falls eine Speicher
steuerung 100 mit weniger Funktionalität erwünscht wird,
wird ein Durchschnittsfachmann auf diesem Gebiet leicht
verstehen, wie in den Schaltungen von Fig. 12 und 13 Gatter
zu eliminieren sind, um dadurch Funktionalität zu elimenie
ren, die für eine bestimmte Anwendung nicht benötigt wird.
Der Betrieb der Schaltungsanordnung von Fig. 12 in dem 1x-
Modus wird nun beschrieben. In dem 1x-Modus wird das da
ta2xn1x-Signal in einen niedrigen Zustand getrieben, und
die Aktivierung des write_m_active-Signal beginnt die Er
zeugung der act_stb_low[0 : 1]-Signale. Wenn das data2xn1x-
Signal in einen niedrigen Zustand getrieben wird, geben die
Multiplexer 1202, 1204, 1226, die dadurch gesteuert werden,
die Daten aus, die an deren "0"-Eingängen empfangen wird.
Wenn das write_m_active-Signal aktiviert ist, beginnt
act_stb_low[0] mit einer Frequenz des Takts MCK hin- und
herzuschalten, was ein Signal mit der Frequenz MCK/2 er
gibt, aufgrund der Anordnung des Gatters 1206, des Multi
plexers 1202, des D-Typ-Flip-Flop 1208 und des Rückkopp
lungswegs 1210. Gleichartig dazu bewirkt die Aktivierung
des write_m_active-Signals, daß act_stb_low[1], hin- und
herschaltet. Aus Zeitgebungsüberlegungen wird ein Gatter
1212 in den act_stb_low[1]-Weg eingefügt. Das Gatter 1212
empfängt das Rückkopplungssignal 1210 und das wri
te_m_active-Signal, und wenn das write_m_active-Signal hoch
ist, gibt es das Rückkopplungssignal 1210 und eine Version
desselben, die durch ein Flip-Flop 1214 verzögert wird, zu
den Eingängen eines zusätzlichen Multiplexers 1216 aus. Der
Multiplexer 1216 wird durch das wpd-Signal gesteuert, um
das Rückkopplungssignal 1210 durch den act_stb_low[1]-
Ausgang mit oder ohne Verzögerung auszubreiten. In dem Fall
von keiner Schreibphasenverzögerung breitet sich
act_stb_low[1] zunächst zu der Übernahmesignalanschlußflä
che DQS18 aus (siehe Fig. 8). Andernfalls breitet sich
act_stb_low[0] zuerst durch die Übernahmesignalanschlußflä
che aus. Somit bewirkt die Aktivierung des wpd-Signals, daß
eine Halbzyklus-Schreibphasenverzögerung ausgelöst wird.
Die Schaltungsanordnung von Fig. 12 arbeitet in dem 2x-
Modus wie folgt. Das data2xn1x-Signal wird in einen hohen
Zustand getrieben, und die Multiplexer 1202, 1204, 1226,
die dadurch gesteuert werden, geben die Daten aus, die an
ihren "1"-Eingängen empfangen werden. Durch das Flip-Flop
1218 und das Gatter 1220 wird act_stb_low[0] aktiviert,
wenn write_m_active_2x hoch ist und wpd niedrig ist (d. h.
wenn es einen 2x-Schreibvorgang mit einer Schreibphasenver
zögerung gibt). Durch ein Gatter 1222 und ein Flip-Flop
1224 wird act_stb_low[1] aktiviert, wenn write_m_active_2x
und wpd beide hoch sind (d. h. wenn es einen 2x-
Schreibvorgang ohne Schreibphasenverzögerung gibt).
Es ist anzumerken, daß die Schaltungsanordnung von Fig. 12
nicht in der Lage ist, eine lange Schreibpräambel zu errei
chen. Statt dessen kann eine lange Schreibpräambel an einer
niedrigeren Übernahmesignalanschlußfläche erreicht werden,
entweder in dem 1x- oder 2x-Modus, durch Aktivieren des
trist_s-Signals einen Zyklus früher (siehe Fig. 8).
Zusammenfassend erzeugt die Schaltungsanordnung von Fig. 12
Ausgangssignale, die im 1x-Modus hin- und herschaltet, und
erzeugt Ausgangssignale, die statische Gegenteile im 2x-
Modus sind. Die hin- und herschaltenden Ausgangssignale
werden durch die Schaltungsanordnung von Fig. 8 verwendet,
um ein 1x-Übernahmesignal zu erzeugen, und die statischen
Ausgangssignale werden durch die Schaltungsanordnung von
Fig. 8 verwendet, um ein 2x-Übernahmesignal zu erzeugen.
Der Betrieb von Fig. 13 im 1x-Modus wird nachfolgend be
schrieben. In dem 1x-Modus wird das data2xn1x-Signal in ei
nen niedrigen Zustand getrieben, und die Aktivierung des
write_m_active-Signals ermöglicht die Erzeugung von
act_stb_up[0 : 1]-Signalen. Act_stb_up[0 : 1]-Signale werden
jedoch nur erzeugt, wenn ein Schreibvorgang auf ein DIMM
durchgeführt wird, das aus x4-DDR-SDRAM besteht. Wenn auf
DIMMs geschrieben wird, die aus x8- oder x16-DDR-SDRAMs be
stehen, werden die act_stb_up[0 : 1]-Signale in einen niedri
gen Zustand getrieben, so daß an den oberen Übernahmesi
gnalanschlußflächen der Speichersteuerung von Fig. 9 keine
Übernahmesignale erzeugt werden. Somit muß Fig. 13 bezüg
lich einem x4-Schreibvorgang in dem 1x-Modus und einem
x8/x16-Schreibvorgang in dem 1x-Modus analysiert werden.
Während einem x4-Schreibvorgang in dem 1x-Modus wird das
data2xn1x-Signal in einen niedrigen Zustand getrieben, und
der Multiplexer 1302, der dadurch gesteuert wird, gibt die
Daten aus, die an dem "0"-Eingang desselben empfangen wer
den. Wenn das write_m_active-Signal aktiviert ist, ist die
Erzeugung der act_stb_up[0 : 1]-Signale möglich, aber nur
falls das zweite Eingangssignal zu dem UND-Gatter 1304 ak
tiviert ist. Während einem 1x-Schreibvorgang jeder Art wird
das reset_L-Signal hochgehalten. Somit wird das zweite Ein
gangssignal zu dem UND-Gatter 1304 nur aktiviert, wenn das
Ausgangssignal des Multiplexers 1306 hoch ist. Das Aus
gangssignal des Multiplexers 1306 kann nur aktiviert wer
den, wenn das Signal write_x4 aktiviert ist (da der Multi
plexer 1306 durch das Ausgangssignal des Multiplexers 1334
gesteuert wird). Das write_x4-Signal wird daher verwendet,
um anzuzeigen, ob ein Schreibvorgang auf ein DIMM durchge
führt wird, das aus x4- oder x8/x16-DDR-SDRAM besteht, und
somit spricht das write_x4-Signal auf Werte Ax an, die von
dem Speicherabbild 1100 ausgegeben werden. Falls ein
Schreibvorgang auf ein DIMM durchgeführt wird, das aus x4-
DDR-SDRAM besteht, ist das write_x4-Signal aktiviert, und
es für die Schaltungsanordnung von Fig. 13 möglich,
act_stb_up[0 : 1]-Signale zu erzeugen. Wenn andererseits ein
Schreibvorgang auf DIMMs durchgeführt wird, die aus x8-
oder x16-DDR-SDRAMs bestehen, ist das write_x4-Signal deak
tiviert, und die Ausgangssignale act_stb_up[0 : 1] werden
niedrig gehalten.
Der Betrieb der Schaltungsanordnung von Fig. 13 während ei
nem x4-Schreibvorgang in dem 1x-Modus schreitet wie folgt
fort. Mit dem data2xn1x-Signal niedrig, write_m_active hoch
und write_x4 hoch, bleiben die act_stb[0 : 1]-Signale nied
rig, bis das Schreibsignal aktiviert ist. Nach der Aktivie
rung des Schreibsignals breitet sich das Schreibsignal
durch einen Weg aus, der die Multiplexer 1308 und 1306, das
ODER-Gatter 1310, das D-Typ-Flip-Flop 1312, die UND-Gatter
1304 und 1314, den Multiplexer 1302, das D-Typ-Flip-Flop
1316 und das UND-Gatter 1318 umfaßt, um dadurch das Aus
gangssignal act_stb_up[0] zu aktivieren. Das Schreibsignal
breitet sich aus durch den Multiplexer 1320 und das UND-
Gatter 1322 aus, um dadurch das Ausgangssignal
act_stb_up[1] zu aktivieren. Danach, und solange die Ein
gangssignale in die Schaltung 1300 den Zustand nicht ändern
(außer Takt MCK) schalten die act_stb_up[0 : 1]-Signale auf
grund des Vorliegens des Rückkopplungswegs 1324 hin und
her.
Ein x4-Schreibvorgang in dem 1x-Modus kann durch einen hal
ben MCK-Zyklus verzögert werden, durch Aktivieren des wpd-
Signals. Die Aktivierung des wpd-Signals bewirkt eine halbe
Zyklusübernahmesignalverzögerung indem bewirkt wird, daß
das Eingangssignal 1326 in den Multiplexer 1320 durch das
D-Typ-Flip-Flop 1328 verzögert wird.
Ein x4-Schreibvorgang in dem 1x-Modus kann ebenfalls einer
langen Schreibpräambel unterworfen werden. Eine Schreibprä
ambel ist eine Zeitperiode vor der Erzeugung eines Übernah
mesignals, während der eine Übernahmesignalanschlußfläche
in einem niedrigen Zustand gehalten wird. Eine solche Prä
ambel kann durch Aktivieren des long_wpre-Signals verlän
gert werden, wodurch bewirkt wird, daß das write- und das
write_x4-Signal jeweils durch ein Paar von D-Typ-Flip-Flops
1330, 1332 verzögert werden. Anders als die Aktivierung des
wpd-Signals, das nur eine erste Anstiegsflanke des
act_stb_up[1]-Ausgangssignals verzögert, verzögert die Ak
tivierung des long_wpre-Signals die ersten Anstiegskanten
von beiden act_stb_up[0 : 1]-Signalen.
Wie es bereits früher in dieser Beschreibung erwähnt wurde,
führt ein x8/x16-Schreibvorgang in dem 1x-Modus dazu, daß
die act_stb_up[0 : 1]-Signale niedrig gehalten werden, da
obere Anschlußflächen für einen x8/x16-Schreibvorgang nicht
notwendig sind. Die oberen Anschlußflächen werden durch
Niedrighalten des write_x4-Signals niedrig gehalten.
Die Schaltungsanordnung von Fig. 13 arbeitet in dem 2x-
Modus wie folgt. Das data2xn1x-Signal wird in einen hohen
Zustand getrieben, und die Gatter 1318 und 1322 werden de
aktiviert. Als Folge werden act_stb_up[0] und act_stb_up[1]
in dem 2x-Modus immer niedrig gehalten. Der Grund dafür,
daß die act_stb_up[0 : 1]-Signale in dem 2x-Modus nicht er
zeugt werden, liegt darin, daß eine Auswahl getroffen wur
de, Zwischenchips 302 (Fig. 3) einfacher zu machen, indem
immer auf dieselben geschrieben wird, als ob sie x8-DIMMs
wären. Somit werden weniger Signale zu den Zwischenchips
302 geleitet, und wenn nötig, erzeugen die Zwischenchips
302 die zusätzlichen Übernahmesignale, die sie benötigen,
um auf x4-DIMMs zu schreiben.
Fig. 14-17 stellen Schreibzeitgebungen der in Fig. 7, 8, 12
und 13 dargestellten Speichersteuerungstreiberschaltungsan
ordnung dar.
In Fig. 14 wird DQ4_PAD_ON in dem gleichen Zyklus akti
viert, in dem DQ4 getrieben wird. Wie es in Fig. 8 gezeigt
ist, ist DQ4_PAD_ON das Signal, das den Tristate-Puffer ak
tiviert, der mit der DQ4-Anschlußfläche gekoppelt ist.
Gleichartig dazu ist DQS18_PAD_ON das Signal, das den Tri
state-Puffer aktiviert, der mit der DQS18-Anschlußfläche
gekoppelt ist. W1, Wbl-1 und Wbl stellen aufeinanderfolgen
de Bits eines Datenworts dar, das an der DQ4-Anschlußfläche
erscheint. Fig. 14 stellt den Fall dar, bei dem long_wpre =
0 ist, und spezifiziert somit eine Schreibpräambel 1400 von
einem MCK-Taktzyklus. Fig. 14 nimmt außerdem an, daß wpd =
0 ist. Falls wpd aktiviert wäre, dann würden sich die
DQS18, DQS18_PAD_ON, DQ4, und DQ4_PAD_ON-Signale alle zu
dem rechten halben MCK-Zyklus verschieben (d. h. eine Pha
se). Die Signale, die durch Pfeile mit trk_pad_owd verbun
den sind, werden alle durch die Aktivierung von trk_pad_owd
gesteuert, und weisen daher eine feste Zeitgebung bezüglich
zueinander auf. Das trk_pad_owd-Signal ist ein Signal, das
bewirkt, daß eine Speichersteuerungsanschlußfläche,
"Schreibdaten ausgibt". Das Signal wird in dem Kern der
Speichersteuerung 100 erzeugt und zu einer Anschlußflächen
steuerzustandsmaschine 2900 (Fig. 29) geliefert, zum Zweck
des Erzeugens der Signale trist_d und trist_s (Fig. 8).
Fig. 14 bezieht sich auf die Schreibzeitgebungen einer
niedrigeren Übernahmesignalanschlußfläche (d. h. eine Über
nahmesignalanschlußfläche, die konfiguriert ist, um auf
DIMMs zu schreiben, die aus x4- und x8/x16-DDR-SDRAM beste
hen). Eine obere Übernahmesignalanschlußfläche (d. h. eine
Übernahmesignalanschlußfläche, die nur konfiguriert ist, um
auf DIMMs zu schreiben, die aus x4-DDR-SDRAMs bestehen)
würde die DQS18-Leitung tief halten, wenn Schreibvorgänge
auf DIMMs auftreten, die aus x8/x16-DDR-SDRAMs bestehen.
Fig. 15 ist ähnlich wie Fig. 14, aber mit einer langen
Schreibpräambel (d. h. long_wpre = 1). Somit ist eine
Schreibpräambel 1500 von zwei MCK-Taktzyklen angezeigt.
In Fig. 16 aktiviert DQ4_PAD_ON auf dem gleichen Zyklus,
auf dem DQ4 getrieben wird. w1, w2, . . . w8 stellen nachfol
gende Bits eines Datenworts dar, das an der DQ4-
Anschlußfläche erscheint. Fig. 16 stellt den Fall dar, bei
dem long_wpre = 0 ist, und spezifiziert somit eine Schreib
präambel 1600 von 0,75 MCK-Taktzyklen. Eine 0,75-MCK-
Zykluspostambel ist ebenfalls vorgesehen. Fig. 16 nimmt
ebenfalls an, daß wpd = 0 ist. Falls wpd aktiviert wäre,
dann würden die DQS18, DQS18_PAD_ON, DQ4, und DQ4_PAD_ON-
Signale sich alle zu den rechten halben MCK-Zyklus ver
schieben (d. h. eine Phase). Die Signale, die durch Pfeile
mit trk_pad_owd verbunden sind, werden alle durch die Akti
vierung von trk_pad_owd gesteuert, und weisen daher eine
feste Zeitgebung bezüglich zueinander auf. Fig. 16 bezieht
sich auf Schreibzeitgebungen einer niedrigeren Übernahmesi
gnalanschlußfläche. Eine obere Übernahmesignalanschlußflä
che würde die DQWS18-Leitung tief halten, wenn Schreibvor
gänge auf DIMMs auftreten, die aus x8- oder x16-DDR-SDRAMs
bestehen.
Fig. 17 ist ähnlich wie Fig. 16 aber mit einer langen
Schreibpräambel (d. h. long_wpre = 1). Somit ist eine
Schreibpräambel 1700 von 1,75 MCK-Taktzyklen angezeigt.
Fig. 18 stellt ein bevorzugtes Ausführungsbeispiel einer
Empfängerschaltungsanordnung 1800 für eine Doppeldatenra
ten-Speichersteuerung 100 (Fig. 9) dar. Die Empfängerschal
tungsanordnung 1800 umfaßt eine Datenanschlußfläche (DQ4),
vier transparente Dateneingabelatches 1802, 1804, 1806,
1808, Übernahmesignalverteilungsschaltungsanordnung 1810,
1812 (zum Verteilen von Übernahmesignalen zu den Datenein
gabelatches 1802-1808 durch einen Zählwert von Übernahmesi
gnalflanken, wodurch eine Einrichtung zum Lesen von Daten
von einem DIMM, das aus x4-, x8- oder x16-DDR-SDRAMs be
steht, geliefert wird), ein Paar von 4 : 1-
Entzerrmultiplexern 1814, 1816 (d. h. Entzerrmultiplexstu
fe) und Multiplexerauswahllogik 1818-1846 zum Versehen der
Entzerrungsmultiplexer 1814, 1816 mit einem geeigneten Satz
von Steuersignalen (abhängig davon, ob die Empfängerschal
tungsanordnung 1800 für einen Lesevorgang im 1x-Modus oder
Mx(z. B. 2x)-Modus) konfiguriert ist. Es ist anzumerken,
daß die in Fig. 18 offenbarte Anschlußfläche vorzugsweise
gleich ist wie die in Fig. 8 offenbarte Datenanschlußflä
che, und somit eine bidirektionale Datenanschlußfläche ist.
Die vier Dateneingabelatches 1802-1808 empfangen jeweils
den gesamten Datenstrom, der an der Datenanschlußfläche DQ4
erscheint. Die Dateneingabelatches werden jedoch einer nach
dem anderen transparent gemacht, sequentiell und anspre
chend auf ein Übernahmesignal, das an einer Übernahmesi
gnalanschlußfläche DQS18 empfangen wird (Fig. 19), so daß
1) ein erstes Datenbit in das Latch 1802 zwischengespei
chert wird, ansprechend auf eine erste ankommende Übernah
mesignalflanke, die an der DQS18-
Übernahmesignalanschlußfläche empfangen wird, 2) ein zwei
tes Datenbit in das Latch 1804 zwischengespeichert wird,
ansprechend auf eine zweite ankommende Übernahmesignalflan
ke, die an der DQS18-Anschlußfläche empfangen wird, 3) ein
drittes Datenbit in das Latch 1806 zwischengespeichert
wird, ansprechend auf eine dritte ankommende Übernahmesi
gnalflanke, die an der DQS18-Anschlußfläche empfangen wird,
4) ein viertes Datenbit in das Latch 1808 zwischengespei
chert wird, ansprechend auf eine vierte ankommende Übernah
mesignalflanke, die an der DQS18-Anschlußfläche empfangen
wird, und dann 5) neue Datenbits sequentiell erneut in die
Latches 1802-1808 zwischengespeichert werden, beginnend mit
Latch 1802, falls zusätzliche Datenbits an der DQ4-
Anschlußfläche empfangen werden müssen.
Die Erzeugung der Signale S1-S4 (oder wie in Fig. 18 er
sichtlich ist, die Signale S1_alt-S4_alt), werden in einem
späteren Abschnitt dieser Beschreibung beschrieben. Für die
Zwecke dieses Abschnitts der Beschreibung ist es nun not
wendig, zu verstehen, daß ein Satz von Steuerimpulsen, wie
z. B. die Signale S1-S4 zum Zwischenspeichern von Daten in
die jeweiligen Dateneingabelatches 1802-1808 vorgesehen
sind. Unabhängig davon, ob die Empfängerschaltungsanordnung
1800 konfiguriert ist, um in einem 1x- oder 2x-Modus zu ar
beiten, und unabhängig davon, ob die Daten von einem DIMM
empfangen werden, das aus x4-DDR-SDRAMs, x8/x16-DDR-SDRAMs
besteht, oder von einem Zwischenchip 302, werden die Steu
ersignale S1-S4 sequentiell aktiviert, ansprechend auf an
kommende Übernahmesignalflanken, die an einer Übernahmesi
gnalanschlußfläche empfangen werden. Die S1-S4-Taktimpulse
werden daher mit einer 1x- oder 2x-DDR-Taktrate erzeugt,
abhängig von der Rate, mit der Übernahmesignalflanken an
einer entsprechenden Übernahmesignalanschlußfläche empfan
gen werden.
Wie es in Fig. 18 dargestellt ist, ist jedes der transpa
renten Dateneingabelatches 1802-1808 mit Eingängen eines
ersten und eines zweiten 4 : 1-Entzerrmultiplexers 1814, 1816
gekoppelt. In dem 1x-Modus ist der Ausgang des zweiten Ent
zerrmultiplexers 1816 jedoch bedeutungslos und wird igno
riert. Wie aus der Figur ersichtlich ist, hält die Deakti
vierung des data2xn1x-Signals die Steuereingänge des zwei
ten Entzerrmultiplexers 1816 während einem 1x-
Moduslesevorgang konstant.
Bei einem 1x-Modus-Bündel von vier Lesevorgängen werden
vier Datenbits jeweils in die Dateneingabelatches 1802-1808
getaktet. Aufgrund der Multiplexerauswahllogik, die vier D-
Typ-Flip-Flops 1824, 1830, 1844, 1846, drei Gatter 1818,
1820, 1826 und zwei Multiplexer 1822, 1828 umfaßt, werden
die Dateneingänge des ersten Entzerrmultiplexers 1814 se
quentiell mit dem Ausgang des Multiplexers in der Reihen
folge 0, 2, 1, 3 gekoppelt. Der erste Entzerrmultiplexer
1814 gibt daher Datenbits sequentiell aus, in der Reihen
folge, in der die an der DQ4-Datenanschlußfläche empfangen
werden. Jedes Ausgangssignal des ersten Entzerrmultiplexers
1814 wird in den Kerntaktbereich der Speichersteuerung von
Fig. 9 getaktet, auf einer Anstiegsflanke des IOBCK-Takt
der Steuerung (d. h. getaktet durch das D-Typ-Flip-Flop
1848 mit einer 1x-DDR-Rate).
Die Steuersignale, die durch die Multiplexerauswahllogik
1824, 1830, 1844, 1846, 1818, 1820, 1826, 1822, 1828 in dem
1x-Modus erzeugt werden, werden in den Ansprüchen manchmal
als ein erster Satz von Steuersignalen bezeichnet.
Es ist anzumerken, daß die Dateneingabelatches 1802-1808 in
dem Zeitbereich eines Übernahmesignals arbeiten, das an ei
ner Übernahmesignalanschlußfläche empfangen wird, die der
Datenanschlußfläche DQ4 entspricht (z. B. der Übernahmesi
gnalanschlußfläche DQS18). Die Entzerrmultiplexer 1814,
1816 arbeiten jedoch in dem Taktbereich der Speichersteue
rung 100. Aufgrund des Zwischenspeicherns von Daten in vier
Dateneingabelatches 1802-1808 ist die Speichersteuerung 100
(und insbesondere die Multiplexerauswahllogik 1818-1846 zum
Steuern der Entzerrmultiplexer 1814, 1816) mit eine 49571 00070 552 001000280000000200012000285914946000040 0002010212642 00004 49452m Fen
ster versehen, das gleich ist wie 1,5 Perioden eines ankom
menden Übernahmesignals, um Daten aus einem Dateneingabe
latch zu takten und in den Kern der Speichersteuerung 100
zu takten. Ein Durchschnittsfachmann auf diesem Gebiet wird
leicht verstehen, daß die Anzahl von Dateneingabelatches
1802-1808, die in der Empfängerschaltungsanordnung von Fig.
18 vorgesehen sind, auf P Latches extrapoliert werden kön
nen, wobei P ≧ 2 ist, um dadurch eine kürzere oder längere
Periode zum Übertragen von Daten von dem Übernahmesignalbe
reich eines ankommenden Übernahmesignals zu dem Taktbereich
der Speichersteuerung 100 zu liefern. Es ist außerdem of
fensichtlich, daß statt der transparenten Dateneingabelat
ches 1802-1808 andere Arten von Speicherelementen verwendet
werden können (z. B. D-Typ-Flip-Flops).
Ein 1x-Modus-Bündel von acht Lesevorgängen arbeitet ähnlich
wie ein 1x-Modus-Bündel von vier Lesevorgängen, wobei zwei
Sätze von vier Datenbits in den Dateneingabelatches 1802-1808
zwischengespeichert werden. Die Dateneingänge des er
sten Entzerrmultiplexers 1814 sind daher in der Reihenfolge
0, 2, 1, 3, 0, 2, 1, 3 mit dem Ausgang desselben gekoppelt.
In dem 2x-Modus werden alle Lesevorgänge vorzugsweise als
Bündel von acht ausgeführt. Die Dateneingabelatches
1802-1808 werden daher transparent gemacht, ähnlich wie ein 1x-
Modus-Bündel von acht Lesevorgängen, aber mit zweimal der
Rate. In dem 2x-Modus sind jedoch beide Entzerrmultiplexer
1814, 1816 aktiv, wobei die Eingänge derselben in der fol
genden Reihenfolge aktiv sind:
Eingang 0, Multiplexer 1814
Eingang 0, Multiplexer 1816
Eingang 1, Multiplexer 1814
Eingang 2, Multiplexer 1816
Eingang 0, Multiplexer 1814
Eingang 0, Multiplexer 1816
Eingang 1, Multiplexer 1814
Eingang 2, Multiplexer 1816
Es ist anzumerken, daß die Steuersignale für beide Multi
plexer 1814, 1816 den Zustand in Synchronisation mit dem
Speichersteuerungstakt IOBCK ändern, aber daß die Steuersi
gnale des Multiplexers 1816 den Zustand um einen halben
IOBCK-Taktzyklus phasenverschoben mit den Steuersignalen
für den Multiplexer 1814 ändern.
In dem 2x-Modus umfaßt die Multiplexerauswahllogik, die die
beiden Entzerrmultiplexer 1814, 1816 steuert, fünf D-Typ-
Flip-Flops 1824, 1830, 1836, 1842, 1844, vier Gatter 1832,
1834, 1838, 1840 und zwei Multiplexer 1822, 1828. Die Steu
ersignale, die durch die Multiplexerauswahllogik 1824,
1830, 1836, 1842, 1844, 1832, 1834, 1838, 1840, 1822, 1828
in dem 2x-Modus erzeugt werden, werden in den Ansprüchen
manchmal als ein zweiter Satz von Steuersignalen bezeich
net. Es ist anzumerken, daß unabhängig davon, ob Datenbits
durch die Schaltungsanordnung 1800 von Fig. 18 in dem 1x-
oder 2x-Modus empfangen werden, jedes der Steuersignale,
die durch die Multiplexerauswahllogik 1818-1846 erzeugt
werden, mit einer 1x-Rate erzeugt werden kann, obwohl die
Entzerrmultiplexer 1814, 1816 zusammen effektiv Daten mit
einer 2x-Rate erzeugen.
Aufgrund der beiden abwechselnd getakteten D-Typ-Flip-Flops
1850, 1852, die mit dem Ausgang des zweiten Entzerrmulti
plexers 1816 gekoppelt sind, werden gerade und ungerade 2x-
Datenbits zu dem Kern der Speichersteuerung 100 parallel
ausgegeben. Diese Tatsache ist lediglich eine Entwurfsaus
wahl und wird aus Gründen der Vollständigkeit der Beschrei
bung des bevorzugten Ausführungsbeispiels geliefert.
Die Empfängerschaltungsanordnung von Fig. 18 kann über ein
UND-Gatter 1854 aktiviert und deaktiviert werden. Das UND-
Gatter 1854 wird über den Ausgang eines Multiplexers 1856
aktiviert und deaktiviert, der das Signal DQ4_RCV_ON nach
einem ½ oder 1 Zyklus des Takts IOBCK ausgibt (wie es durch
ein Paar von in Kaskaden angeordneten D-Typ-Flip-Flops
1858, 1860 und den Zustand des Lesephasenverzögerungs-
Signals (rpd-Signal) bestimmt ist). Der Zweck des UND-
Gatters 1854 und seiner zugeordneten Logik 1856-1860 ist
es, die stromabwärtige Empfängerschaltungsanordnung 1802-1808,
1814, 1816, 1848-1852 von Rauschen abzuschirmen, das
Vorliegen könnte, wenn der Bus, der mit der Datenanschluß
fläche DQ4 gekoppelt ist, im Ruhezustand ist und tristate
mäßig betrieben wird.
Während einem Speicherlesezyklus gibt es die Notwendigkeit,
eine Schwankung bei der Steuerung-Speicher-Steuerung-
Schleifenverzögerung (d. h. Leseschleifenverzögerung) zu
erklären. In Fig. 21 ist beispielsweise eine Mehrzahl von
Speichermodulen 104 über gemeinsame Daten-(DQ) und Übernah
mesignal-(DQS)Busse mit einer Speichersteuerung 100 verbun
den. Die Mehrzahl der Speichermodule 104 ist nicht nur mit
den Daten- und Übernahmesignalbussen verbunden, sondern je
des der Speichermodule 104 kann Zeitgebungsschwankungen in
nerhalb erlaubter Bereiche zeigen (z. B. innerhalb der Be
reiche, die in der JEDEC-DDR-SDRAM-Spezifikation vorgesehen
sind). Ferner können Kopien eines Taktsignales, die zu je
der der Mehrzahl von Speichermodulen 104 verteilt sind, be
züglich zueinander versetzt werden.
Als eine Folge der obigen Unregelmäßigkeiten können Lesean
forderungen, die zu unterschiedlichen Speichermodulen (mit
ihren verschiedenen Zeitgebungscharakteristika und versetz
ten Takten) gesendet werden, verschieden lang benötigen, um
zu der Steuerung zurückzukehren, und es gibt eine Schwan
kung bei der Leseschleifenverzögerung, die erklärt werden
muß, wenn bestimmt wird, wann der Empfang von Daten und
Übernahmesignalen bei einer Speichersteuerung 100 aktiviert
und deaktiviert wird. Eine solche Verzögerung kann nur er
klärt werden, indem sichergestellt wird, daß eine Speicher
steuerung 100 Daten und Übernahmesignale ansprechend auf
eine kürzestmögliche Schleifenverzögerung (d. h. der Fall
eines frühen Empfangs) und eine längstmögliche Schleifen
verzögerung (d. h. der Fall eines späten Empfangs) angemes
sen empfangen wird.
Die Daten- und Übernahmesignalbusse für die Speichermodule
104 unter der JEDEC-DDR-SDRAM-Spezifikation haben eine be
merkenswerte Charakteristik. Die Bezugsspannung für jede
Busleitung ist gleich wie die Endspannung der Busleitung.
Was dies bedeutet ist, daß als Folge des Rauschens die
Übernahmesignalanschlußflächen einer Speichersteuerung 100
fehlerhaften "0" zu "1" und "1" zu "0"-Übergängen unterwor
fen sind, wenn deren entsprechende Busleitungen tristatemä
ßig betrieben werden. Falls dieselben nicht erklärt werden,
können diese Übergänge fälschlicherweise als aktive Über
nahmesignalflanken interpretiert werden, wodurch es zu ei
ner potentiellen Datenverfälschung kommen kann.
Die JEDEC-DDR-SDRAM-Spezifikation versucht, dieses Problem
durch Bereitstellen einer "Lesepräambel" und einer "Lesepo
stambel" zu bewältigen. Die Lesepräambel liefert eine Zeit
periode vor der ersten ankommenden Übernahmesignalflanke,
während der eine Übernahmesignalanschlußfläche niedrig
gehalten wird. Gleichartig dazu liefert die Lesepostambel
eine Zeitperiode nach der letzten ankommenden Übernahmesi
gnalflanke, während der eine Übernahmesignalanschlußfläche
niedrig gehalten wird. Als Folge können Übernahmesignal
flanken etwas zu spät oder etwas zu früh an einer Übernah
mesignalanschlußfläche ankommen, und nach wie vor in die
Periode fallen, die eine Speichersteuerung 100 der Rückkehr
eines Lesezyklus zuweist. Es können sich jedoch nach wie
vor Probleme ergeben, wenn die Schwankung zwischen früh und
spät ankommenden Übernahmesignalflanken hoch ist.
Fig. 22 stellt einen DDR-Lesezyklus in dem 1x-Modus dar
(data2xn1x = 0) mit keiner Lesephasenverzögerung (rpd = 0)
wie es in der Empfängerschaltungsanordnung 1800, 2000 von
Fig. 18 und 20 ersichtlich ist. Man beachte, daß die
Schwankung zwischen den Signalen DQS18 (früh) und DQS18
(spät), die jeweils die früheste und späteste erwartete An
kunft von Übernahmesignalflanken an der Übernahmesignalan
schlußfläche DQS18 darstellen (d. h. den "Fall eines frühen
Empfangs" und den "Fall eines späten Empfangs"). Man beach
te außerdem, daß der "0" zu Tristate-
Übernahmesignalübergang in dem Fall eines frühen Empfangs
auftritt, bevor die letzte Übernahmesignalflanke in dem
Fall eines späten Empfangs empfangen wird. Außer wenn im
Voraus genau vorhergesagt werden kann, wann Übernahmesigna
le an einer Übernahmesignalanschlußfläche empfangen werden
(d. h. früh oder spät) und eine solche Vorhersage mit per
fekter Genauigkeit durchgeführt werden kann, kann daher der
Empfänger einer Übernahmesignalanschlußfläche nicht in al
len Fällen tristatemäßig betrieben werden, sowohl 1) nach
dem Empfang einer letzten Übernahmesignalflanke und 2) be
vor ein ankommendes Übernahmesignal tristatemäßig betrieben
wird. Wie es für einen Fachmann auf diesem Gebiet leicht zu
verstehen ist, ist die Vorhersage, wann Übernahmesignale an
einer Übernahmesignalanschlußfläche empfangen werden, äu
ßerst schwierig, da eine solche Vorhersage nicht nur von
den Drahtleitwegen zwischen einer Steuerung 100 und einem
Speicher 104, und auch der Zeit, die benötigt wird, um auf
eine spezielle Speicheradresse in einem Speichermodul zu
zugreifen, abhängt, sondern auch von der Temperatur, dem
Taktabstand, Speicherzugriffsgeschwindigkeiten, usw. Eine
Möglichkeit zum Verhindern, daß das tristatemäßige Betrei
ben des Übernahmesignals ein Rauschen erzeugt, das als ak
tive Übernahmesignalkanten interpretiert wird, wird daher
benötigt. Die Fig. 18, 19 und 20 stellen eine solche Ein
richtung dar.
In Fig. 18 sind vier Dateneingabelatches 1802-1808 gekop
pelt, um Daten von einer Datenanschlußfläche DQ4 zu empfan
gen. Die vier Latches 1802-1808 werden jeweils durch Werte
eines Zählwerts gesteuert. In Fig. 18 werden die vier Lat
ches 1802-1808 beispielsweise durch ein vier Bit-Zählwert,
bei dem ein Zustand logisch hoch ist, gesteuert, der die
Bits S1, S2, S3 und S4 umfaßt. Dieser Zählwert kann durch
den Zähler 1900 erzeugt werden, der in Fig. 19 dargestellt
ist, ansprechend auf gepufferte Übernahmesignalflanken, die
von einem Empfänger 2030 ausgegeben werden, der mit der
Übernahmesignalanschlußfläche DQS18 gekoppelt ist. Der Zäh
ler wird gesteuert durch die Zählersteuerlogik 1902, die
einen Block Kombinationslogik 1904 und einen Abschnitt der
Kernlogik 1908 der Speichersteuerung umfaßt. Die Kombinati
onslogik 1904 empfängt ein Steuersignal (DQS18_start),
Rückkopplung 1906 von dem Zähler 1900 und das Freigabesi
gnal DQS18_RCV_ON. Das Freigabesignal DQS18_RCV_ON wird so
wohl zu der Kombinationslogik 1904 der Zählersteuerlogik
1902 als auch zu dem Empfänger 2030 gesendet, der die Über
nahmesignalflanken puffert, die an der Übernahmesignalan
schlußfläche DQS18 empfangen werden, so daß die in Fig. 19
gezeigte Übernahmesignalempfängerschaltungsanordnung global
aktiviert werden kann, ähnlich zu der Art und Weise, auf
die die Datenempfängerschaltungsanordnung von Fig. 18 akti
viert wird.
Die primären Steuereingangssignale der Kombinationslogik
sind das Steuersignal DQS18_start und die Zählerrückkopp
lung 1906. Angenommen, daß 1) DQS18_RCV_ON aktiviert ist
und 2) der Zähler 1900 zurückgestellt ist, dann bestimmt
das Steuersignal DQS18_start, wann der Zähler 1900 akti
viert ist. Bei einem ersten bevorzugten Ausführungsbeispiel
ist das Steuersignal DQS18_start lediglich ein Impuls mit
fester Breite, der vor jedem Lesezyklus der Speichersteue
rung 100 erzeugt wird. Bei diesem ersten bevorzugten Aus
führungsbeispiel wird von jedem Übernahmesignal, das bei
DQS18 empfangen wird, angenommen, daß es die gleiche Anzahl
von Flanken aufweist. Bei einem zweiten bevorzugten Ausfüh
rungsbeispiel umfaßt das Steuersignal DQS18_start eine
Startbedingung (z. B. eine Abfallflanke) und eine Stoppbe
dingung (z. B. eine Anstiegsflanke), wobei die Zeitgebung
der Start- und Stoppbedingungen schwanken, abhängig von der
Anzahl von Übernahmesignalflanken, die erwartungsgemäß wäh
rend einem aktuellen Lesezyklus empfangen werden. Auf diese
Weise kann die Kernlogik 1908 die Start- und Stoppbedingun
gen zeitlich abstimmen, abhängig davon, ob ein aktueller
Lesezyklus beispielsweise 1) ein DDR-Bündel von vier oder
ein Bündel von acht Lesezyklen ist, oder 2) ein 2x-Modus-
oder ein Mx-Modus-DDR-Lesezyklus (M ≧ 2) ist. Das letztere
Ausführungsbeispiel des Steuersignals DQS18_start liefert
daher eine Speichersteuerung 100 mit größerer Leseflexibi
lität.
Fig. 20 stellt ein bevorzugtes und detaillierteres Ausfüh
rungsbeispiel der in Fig. 19 dargestellten Schaltungsanord
nung dar, bei dem die Signale S1-S4 durch einen Überlauf
zähler 2002-2012 erzeugt werden, der seinen Vier-Bit-
Zählwert, bei dem ein Zustand logisch hoch ist, ansprechend
auf jede Übernahmesignalflanke, die an der Übernahmesignal
anschlußfläche DQS18 empfangen wird, inkrementiert. Der
Überlaufzähler 2002-2012 wird durch die Zählersteuerlogik
2014-2028 aktiviert und zurückgesetzt, die mit den
DQS18_tff_rise_rst und DQS18_tff_fall_rst-Eingängen des
Zählers 2002-2012 gekoppelt ist. Während einem Lesezyklus
erzeugt die Zählersteuerlogik 2014-2028 eine Startbedingung
bei DQS18_tff_start (eine Abfallflanke in Fig. 20), um da
durch das Zählen der Übernahmesignalflanken des Zählers zu
aktivieren. Dies unter der Annahme, daß der Zähler
2002-2012 bereits zurückgesetzt ist. Die Zählersteuerlogik
2014-2028 unterstützt dann beim Zurücksetzen des Zählers
2002-2012 durch Erzeugen einer Stoppbedingung (eine Anstiegs
flanke in Fig. 20) bei DQS18_tff_start.
Wie nachfolgend näher erklärt werden wird, dient die Start
bedingung dazu, den Zähler 2002-2012 asynchron bezüglich
der Übernahmesignalflanken zu aktivieren, die an den Über
nahmesignalanschlußflächen DQS18 empfangen werden.
Der Zähler 2002-2012 ist ebenfalls asynchron zurückgesetzt
bezüglich der Übernahmesignalflanken, die an den Übernahme
signalanschlußflächen DQS18 empfangen werden. Der Zähler
2002-2012 wird ansprechend auf die Stoppbedingung und Zäh
lerrückkopplung rückgesetzt. Es ist anzumerken, daß bei
Fig. 22 die Stoppbedingung in der Mitte eines Lesezyklus
erzeugt wird, und während dem Zählen der letzten vier Über
nahmesignalflanken (d. h. der letzten P Übernahmesignal
flanken in den Ansprüchen) des Lesezyklus durch einen Zäh
ler. Aufgrund der Zählerrückkopplung, die an den Eingängen
der Logikgatter 2014 und 2018 der Zählersteuerlogik
2014-2028 empfangen werden, setzt der Zähler 2002-2012 jedoch
das Zählen der letzten vier Übernahmesignalflanken eines
empfangenen Übernahmesignals fort, bevor derselbe in einen
Rücksetzzustand eintritt - selbst wenn der Zähler 2002-2012
bereits ein Stoppbedingung empfangen hat. Die Stoppbedin
gung stoppt daher den Zähler 2002-2012 nicht unmittelbar,
sondern hindert eher den Zähler 2002-2012 daran, an den
letzten vier Übernahmesignalflanken eines empfangenen Über
nahmesignals vorbei zu zählen. Wie in Kürze verständlich
werden wird, zählt der Zähler 2002-2012 die letzten vier
Übernahmesignalflanken unabhängig davon, wo er sich bei
seiner Zählung befindet, wenn eine Stoppbedingung erzeugt
wird. Somit beendet der Zähler das Zählen der letzten vier
Übernahmesignalflanken eines Übernahmesignals beenden und
hört dann mit dem Zählen auf, unabhängig davon, ob der Zäh
ler 2002-2012 eine, zwei oder drei der letzten vier Über
nahmesignalflanken gezählt hat, wenn eine Stoppbedingung
erzeugt wird. Solange die letzten vier Übernahmesignalflan
ken von DQS18 (früh) die letzten vier Übernahmesignalflan
ken von DQS18 (spät) überlappen, kann folglich eine Zeit
gefunden werden, um DQS18_tff_start, so zu aktivieren, daß
1) alle Übernahmesignalflanken gezählt werden und 2) der
Zähler 2002-2012 zurückgesetzt wird, bevor ein Übernahmesi
gnalbus tristatemäßig betrieben wird.
In Fig. 20 umfaßt der Überlaufzähler zwei Zustandselemente
2002, 2004. Die Zustandselemente sind vorzugsweise T-Flip-
Flops 2002, 2004, die einen arithmetischen binären Zählwert
erzeugen (SA : SB). Der Zähler umfaßt außerdem eine Kombi
nationslogik 2006-2012, die den vorher erwähnten arithmeti
schen binären Zählwert in einen binären Vier-Bit-Zählwert
umwandelt, bei dem ein Zustand logisch hoch ist.
Das erste der beiden Flip-Flops 2002 erzeugt Ausgangssigna
le SA und SA' und wird durch Übernahmesignalanstiegsflanken
getaktet. Das zweite der beiden Flip-Flops 2004 erzeugt
Ausgangssignale SB und SB' und wird durch Übernahmesignal
abfallflanken getaktet.
Stromabwärts von den beiden Flip-Flops 2002, 2004 des Zäh
lers umfaßt die Kombinationslogik, die den arithmetischen
binären Zählwert der Flip-Flops in einen binären Zählwert
umwandelt, bei dem ein Zustand logisch hoch ist, vier UND-
Gatter 2006-2012. Die Eingänge der vier UND-Gatter
2006-2012 sind mit verschiedenen der Ausgänge SA, SA', SB und
SB' verbunden, so daß die UND-Gatter 2006-2012 ihre Aus
gangssignale S1-S4 auf sequentielle Weise und überlaufartig
aktivieren.
Falls das Flip-Flop 2002, das das Ausgangssignal SA er
zeugt, als das niederwertige Flip-Flop des Zählers
2002-2012 angesehen wird, dann wird der binäre Zählwert, der von
den Flip-Flops 2002, 2004 des Zählers erzeugt wird, die
folgende Sequenz annehmen: 0, 1, 3, 2, 0, 1, 3, 2, 0, . . ..
Somit ist die Reihenfolge des Zählwerts des Zählers nicht
so wichtig wie die beständige und wiederholende Natur des
Zählwerts des Zählers. Obwohl der in Fig. 20 gezeigte Zäh
ler ein Überlaufzähler 2002-2012 ist, kann der Zähler auch
andere Formen annehmen. Beispielsweise könnte der Zähler
zusätzliche Zustandselemente 2002, 2004 umfassen, oder Aus
gabelogik 2006-2012 zum Zählen aller Übernahmesignalflanken
eines Übernahmesignals, ohne während einer bestimmten Zäh
lung überlaufen zu müssen.
Die Zählersteuerlogik 2014-2028, die den Zähler aktiviert
und zurücksetzt, umfaßt ein Paar von UND-Gattern 2014,
2018, die jeweils über ein optionales Paar von ODER-Gattern
2016, 2020 mit den Rücksetzeingängen der beiden Flip-Flops
2002, 2004 gekoppelt sind. Der Zweck der optionalen ODER-
Gatter 2016, 2020 wird in Kürze beschrieben. Durch ein er
stes UND- und ODER-Gatter 2014, 2016 ist der erste Rück
setzeingang des ersten Flip-Flops durch folgende Gleichung
definiert:
SA'.DQS18_tff_start (wobei "." eine logische UND-
Operation anzeigt).
Durch ein zweites UND- und ODER-Gatter 2018, 2020 wird der
Rücksetzeingang des zweiten Flip-Flops durch die folgende
Gleichung bestimmt:
SA'.SB'.
Somit empfängt jedes der UND-Gatter 2014, 2018 Rückkopplung
von dem Zähler 2002-2012 (d. h. "Zählerrückkopplung"). Das
erste UND-Gatter 2014 empfängt jedoch auch die Start- und
Stoppbedingungen, die bei DQS18_tff_start erzeugt werden.
Die Start- und Stoppbedingungen, die das jeweilige Aktivie
ren und Zurücksetzen des Zählers 2002-2012 unterstützen,
werden auf der einzigen Signalleitung erzeugt, die mit
DQS18_tff_start etikettiert ist. Eine Startbedingung wird
durch eine Anstiegsflanke bei DQS18_tff_start bezeichnet,
und eine Stoppbedingung wird durch eine Anstiegsflanke bei
DQS18_tff_start bezeichnet. Die Start- und Stoppbedingungen
werden durch eine Logik erzeugt, die einen Multiplexer
2028, ein UND-Gatter 2026 und zwei alternativ getaktete D-
Typ-Flip-Flops 2022, 2024 umfaßt. Die Flip-Flops 2022, 2024
und das UND-Gatter 2026 sind gekoppelt, so daß der Multi
plexer 2028 das Signal stb_reset an jedem seiner Eingänge
empfängt, aber Änderungen bei dem stb_reset-Signal an sei
nem "0"-Eingang ½ IOBCK-Zyklus, nachdem derselbe Änderungen
bei dem stb_reset-Signal an seinem "1"-Eingang empfängt,
empfängt. Der Zustand des Multiplexers 2028 wird durch das
Lesephasenverzögerungssignal (rpd) gesteuert, und als Folge
wird eine Änderung bei stb_reset bei DQS18_tff_start ½
IOBCK-Zyklus später reflektiert, wenn es eine Lesephasen
verzögerung gibt (d. h. wenn rpd = 1).
Während einem Lesezyklus empfängt jedes der beiden ODER-
Gatter 2008, 2012 der Zählersteuerlogik eine logische "0",
die von dem Inversen des DQS18_RCV_ON-Signals abgeleitet
ist. Man wird bemerken, daß DQS18_RCV_ON das Signal ist,
das den Empfänger 2030 steuert, der mit der DQS18-
Übernahmesignalanschlußfläche gekoppelt ist. DQS18_RCV_ON
ist daher während einem Lesezyklus aktiviert, und zwischen
Lesezyklen deaktiviert. Durch Koppeln von DQS18_RCV_ON mit
den beiden ODER-Gattern 2008, 2012 des Zählers über einen
Wandler 2032 wird eine zusätzliche Sicherheitsmaßnahme ge
liefert, um sicherzustellen, daß keines der Ausgangssignale
des Zählers (z. B. S1-S4) unbeabsichtigt aktiviert wird.
Ferner kann die Aktivierung von DQS18_RCV_ON verwendet wer
den, um den Zähler 2002-2012 beim Einschalten zurückzuset
zen.
Der Zustand des Signals DQS18_RCV_ON wird ähnlich gesteuert
wie der Zustand des Signals DQS18_tff_start. Das heißt, der
Zustand von DQS18_RCV_ON wird durch zwei abwechselnd getak
tete D-Typ-Flip-Flops 2034, 2036 gesteuert, die mit den
Eingängen eines Multiplexers 2038 gekoppelt sind, wobei der
Multiplexer durch das rpd-Signal gesteuert wird. Somit wird
eine Änderung bei dem Zustand von DQS18_RCV_ON um ½ IOBCK-
Zyklus verzögert, wenn es eine Lesephaseverzögerung gibt.
Ein Fachmann auf diesem Gebiet wird leicht verstehen, daß
die Schaltungsanordnung von Fig. 18 und 20 extrapoliert
werden kann, um Datenbits und Übernahmesignalflanken zu
empfangen, die aus einem Mehrfachen von P Datenbits und
Übernahmesignalflanken bestehen. Bei einer solchen Extrapo
lation wird der Zähler 2002-2012 erweitert, um einen P Bit-
Zählwert zu erzeugen, bei dem ein Zustand logisch hoch ist.
Gleichartig dazu kann die Anzahl von Dateneingabelatches
1802-1808 auf P Latches ausgeweitet werden. Somit ist in
Fig. 18 und 20 P = 4.
Der Betrieb der Empfängerschaltungsanordnung 2000, die in
Fig. 20 dargestellt ist, kann durch Bezugnahme auf Fig.
22-27 besser verstanden werden. Fig. 22 liefert einen Ver
gleich von verschiedenen Signalzeitgebungen für Früh- und
Spätfallesevorgänge in einem 1x-Modus mit keiner Lesepha
senverzögerung (rpd = 0). Gleichartig dazu liefert Fig. 25
einen Vergleich von verschiedenen Signalzeitgebungen für
Früh- und Spätfallesevorgängen in einem 2x-Modus mit keiner
Lesephasenverzögerung (rpd = 0). Fig. 23, 24, 26 und 27
zeigen folgendes:
Fig. 23: Signalzeitgebungen in einem 1x-Modus, früher
Fall, rpd = 0
Fig. 24: Signalzeitgebungen in einem 1x-Modus, später
Fall, rpd = 0
Fig. 26: Signalzeitgebungen in einem 2x-Modus, früher
Fall, rpd = 0
Fig. 27: Signalzeitgebungen in einem 2x-Modus, später
Fall, rpd = 0
Mit Bezugnahme auf Fig. 22 ist der Kerntakt, MCK, der in
Fig. 9, 18 und 20 dargestellten Speichersteuerung 100 ge
zeigt. Die Signale trk_ird und trk_srd werden zu einer An
schlußflächensteuerzustandmaschine 2900 (Fig. 29) gesendet,
die jeweils das stb_reset-Signal erzeugt, das zu dem Flip-
Flop 2022 gesendet wird, und auch das rcv_on-Signal, das zu
Flip-Flops 2034 gesendet wird. Die trk_srd und trk_ird
bestimmen daher den Anstieg und Abfall von verschiedenen
Übernahmesignalempfängerschaltungsanordnungssignalen. Ob
wohl in Fig. 29 nicht gezeigt, empfängt die Anschlußflä
chensteuerzustandsmaschine ebenfalls Signale, die anzeigen,
ob ein aktueller Lesezyklus einen 1x- oder einen 2x-Modus
und ein Bündel von vier oder ein Bündel von Acht-Modus
annimmt. Diese zusätzlichen Signale bestimmen wiederum wann
stb_reset und rcv_on aktiviert sind.
Wie es in Fig. 22 dargestellt ist, bestimmt die Aktivierung
des trk_ird-Signals den Anstieg von DQS18_RCV_ON und den
Abfall von DQS18_tff_start (wobei der Abfall von
DQS18_tff_start die vorher erwähnte Startbedingung dar
stellt). Falls der Zähler 2002-2012 zurückgesetzt ist (wie
es sein sollte, wenn trk_ird aktiviert ist), dann bestimmt
die Aktivierung von trk_ird auch den Abfall von
DQS18_tff_rise_rst.
Es ist anzumerken, daß der Abfall von DQS18_RCV_ON die Emp
fängerschaltungsanordnung von Fig. 20 im allgemeinen akti
viert, aber nicht den Zähler 2002-2012 der Schaltungsanord
nung aktiviert. Mit dem Abfall von DQS18_tff_start und
DQS18_tff_rise_rst einen Zyklus nach dem Anstieg von
DQS18_RCV_ON ist der Zähler 2002-2012 jedoch in einem Zu
stand plaziert, bei dem er bereit ist, das Zählen von Über
nahmesignalflanken zu beginnen, sobald dieselben empfangen
werden (d. h. der Zähler 2002-2012 wird ansprechend auf ei
ne Startbedingung und eine Zählerrückkopplung) asynchron
aktiviert.
Vorzugsweise wird der Zähler 2002-2012 zu einer Zeit akti
viert, die zwischen i) einen spätesten Zeitpunkt, wenn die
Zählersteuerlogik 2014-2028 erwartet, daß ein Übernahmesi
gnalbus, der mit einer Übernahmesignalanschlußfläche DQS18
gekoppelt ist, den Tristat verläßt, und ii) einen frühesten
Zeitpunkt, wenn die Zählersteuerlogik 2014-2028 erwartet,
daß die Flanken eines Übernahmesignals an der Übernahmesi
gnalanschlußfläche DQS18 empfangen werden, fällt. Somit ist
bezüglich dem Empfang von Übernahmesignalen der Übernahme
signalempfängerschaltungsanordnung, die der JEDEC-DDR-
SDRAM-Spezifikation entspricht, der Zähler 2002-2012 vor
zugsweise zu einem Zeitpunkt aktiviert, bei dem die Zähler
steuerlogik 2014-2028 erwartet, daß sowohl DQS18 (früh) als
auch DQS18 (spät) sich in ihrem Präambelzustand befinden.
Auf diese Weise werden fälschlicherweise Übergänge bei der
Übernahmesignalanschlußfläche DQS18 als Ergebnis von Tri
state-Rauschen durch den Zähler 2002-2012 nicht als aktive
Übernahmesignalflanken interpretiert.
Die Aktivierung des trk_srd-Signals bestimmt den Anstieg
von DQS18_tff_start, und auch den Abfall von DQS18_RCV_ON
(dieser Abfall deaktiviert die Übernahmesignalempfänger
schaltungsanordnung 200 von Fig. 20 vollständig). Der An
stieg von DQS18_ tff_start und der Abfall von DQS18_RCV_ON
schwanken bei der Zeitgebung, abhängig davon, ob ein Lese
zyklus ein Bündel von vier oder ein Bündel von Acht-Zyklus
ist, wie es durch die Anschlußflächensteuerzustandsmaschine
2900 gesteuert wird. Wie während der Erörterung der Be
schreibung eines 2x-Modus-Lesezyklus angemerkt wird, ist
die Zeitgebung des trk_srd-Steuerimpulses in einem 2x-Modus
fest, als Folge einer Entscheidung darüber, daß nur Bündel
von acht Lesevorgängen in dem 2x-Modus unterstützt werden.
Es ist anzumerken, daß während einem 1x-Modus-Bündel von
vier Lesezyklen DQS18_tff_start zeitlich abgestimmt werden
kann, um zu jeder Zeit zwischen der ersten Anstiegsflanke
von DQS18(spät)- und dem Ende der DQS18(früh)-Postambel
anzusteigen. Solange DQS18_tff_start während dieser Periode
ansteigt, zählt der Zähler 2002-2012 jedes einzelne aktive
Übernahmesignal, das bei DQS18 empfangen wird, und stellt
sich dann ansprechend auf den Anstieg von DQS18_tff_start
(d. h. eine Stoppbedingung) und eine Zählerrückkopplung
asynchron selbst zurück. Phantomübernahmesignalflanken, die
als Ergebnis von Rauschen erzeugt werden, während DQS18
tristatemäßig betrieben wird, werden daher nicht durch den
Zähler 2002-2012 gezählt. Folglich werden die vier Daten
eingabelatches 1802-1808, die mit dem Datenweg DQ4 gekop
pelt sind, nicht unabsichtlich getaktet.
Der Abfall von DQS18_tff_start, der Abfall von
DQS18_tff_rise_rst und der Anstieg von DQS18_RCV_ON werden
alle in dem Taktbereich der Speichersteuerung 100 ausge
löst. Alle anderen Anstiegs- und Abfallflanken innerhalb
der Übernahmesignalempfängerschaltungsanordnung 2000 werden
von Übernahmesignalflanken ausgelöst, die an der DQS18-
Übernahmesignalanschlußfläche empfangen werden, und werden
daher in dem Übernahmesignalbereich der Speichermodule 104
oder den Zwischenchips 302 ausgelöst, an die die DQS18-
Übernahmesignalanschlußfläche befestigt ist.
Wie es in Fig. 22 gezeigt ist, wird die erste Abfallflanke
von DQS18_tff_fall_rst von dem Empfang einer ersten Über
nahmesignalflanke des Zählers von Fig. 20 ausgelöst. Danach
zählt der Zähler 2002-2012 weiterhin Übernahmesignalflan
ken, bis zu dem Zeitpunkt, zu dem DQS18_tff_start-Signal
aktiviert ist. Nach diesem Punkt und beim Erreichen von
Zählwert "3" (d. h. die dritte der letzten vier Übernahme
signalflanken) wird der Anstieg von DQS18_tff_rise_rst an
sprechend auf eine Zählerrückkopplung asynchron ausgelöst.
Gleichartig dazu und beim Erreichen von dem Zählwert "2"
wird der Anstieg von DQS18_tff_fall_rst als eine Folge der
Zählerrückkopplung asynchron ausgelöst. Sobald
DQS18_tff_rise_rst und DQS18_tff_fall_rst ansteigen, werden
sie daran gehindert, abzufallen, solange DQS18_tff_start
hoch gehalten wird (d. h. bis ein nächster Lesezyklus aus
gelöst wird).
Der Vollständigkeit halber stellt Fig. 22 den Empfang von
Daten an der Datenanschlußfläche DQ4 (Fig. 18) in dem "Fall
eines frühen Empfangs" und dem "Fall eines späten Empfangs"
dar, (d. h. DQ4 (früh) und DQ4 (spät)). Fig. 22 stellt au
ßerdem die Periode dar, über die die DQ4 Datenanschlußflä
che zum Empfangen von Daten aktiviert ist (bezeichnet durch
die Aktivierung des Signals DQ4_RCV_ON).
Fig. 23 stellt Signalzeitgebungen in dem frühen 1x-Modus-
Lesefall ohne Lesephasenverzögerung dar (rpd = 0). Es ist
anzumerken, daß die überlappenden Aktivierungen und Deakti
vierungen der Flip-Flop Ausgangssignale SA und SB zu einer
Erzeugung von S1-S4-Signalen mit nachfolgenden Impulsen
führen. Jeder S1-S4-Impuls wird mit der Frequenz eines an
kommenden Übernahmesignals erzeugt, das an der übernahmesi
gnalanschlußfläche DQS18 empfangen wird.
Fig. 24 stellt Signalzeitgebungen in dem späten 1x-Modus-
Lesefall ohne Lesephasenverzögerung dar (rpd = 0).
Mit Bezugnahme auf Fig. 25 ist erneut der Kerntakt, MCK,
der Speichersteuerung 100 gezeigt, die in Fig. 9, 18 und 20
dargestellt ist.
Wie in Fig. 25 dargestellt ist, bestimmt die Aktivierung
des trk_ird-Signals den Anstieg von DQS18_RCV_ON und den
Abfall von DQS18_tff_start (wobei der Abfall von
DQS18_tff_start die vorher erwähnte Startbedingung dar
stellt). Falls der Zähler zurückgesetzt ist (wie er sein
sollte, wenn trk_ird aktiviert ist), bestimmt die Aktivie
rung von trk_ird auch den Abfall von DQS18_tff_rise_rst.
Es ist anzumerken, daß der Abfall von DQS18_RCV_ON die
Übernahmesignalempfängerschaltungsanordnung 2000 von Fig.
20 allgemein aktiviert, aber nicht den Zähler 2002-2012 der
Schaltungsanordnung aktiviert. Mit dem Abfall von
DQS18_tff_start und DQS18_tff_rise_rst einen Zyklus nach
dem Anstieg von DQS18_RCV_ON wird der Zähler 2002-2012 je
doch in einen Zustand plaziert, in dem er bereit ist, um
das Zählen von Übernahmesignalflanken zu beginnen, sobald
dieselben empfangen werden (d. h. der Zähler 2002-2012 wird
ansprechend auf eine Startbedingung und eine Zählerrück
kopplung) asynchron aktiviert.
Vorzugsweise wird der Zähler 2002-2012 zu einem Zeitpunkt
aktiviert, der zwischen i) einen spätesten Zeitpunkt, wenn
die Zählersteuerlogik 2014-2028 erwartet, daß ein Übernah
mesignalbus, der mit der Übernahmesignalanschlußfläche
DQS18 gekoppelt ist, den Tristate verläßt, und ii) einem
frühesten Zeitpunkt, wenn die Zählersteuerlogik 2014-2028
erwartet, daß Flanken eines Übernahmesignals an der Über
nahmesignalanschlußfläche DQS18 empfangen werden, fällt.
Somit wird bezüglich dem Empfang der Übernahmesignale durch
die Übernahmesignalempfängerschaltungsanordnung, die der
JEDEC-DDR-SDRAM-Spezifikation entspricht, der Zähler
2002-2012 vorzugsweise zu einem Zeitpunkt aktiviert, bei dem die
Zählersteuerlogik 2014-2028 erwartet, daß sowohl DQS18
(früh) als auch DQS18 (spät) in ihren jeweiligen Präambel
zustand sind. Auf diese Weise werden fehlerhafte Übergänge
bei der Übernahmesignalanschlußfläche DQS18 als ein Ergeb
nis von Tristat-Rauschen durch den Zähler 2002-2012 nicht
als aktive Übernahmesignalflanken interpretiert.
Die Aktivierung des trk_srd-Signals bestimmt den Anstieg von
DQS18_tff_start und auch den Abfall von DQS18_RCV_ON (die
ser Abfall deaktiviert die Übernahmesignalempfängerschal
tungsanordnung 2000 von Fig. 20 in ihrer Gesamtheit). Da
die Speichersteuerung 100 in dem 2x-Modus nicht direkt mit
dem Speicher 104 kommuniziert, nehmen 2x-Lesevorgänge vor
zugsweise immer ein Bündel von acht-Form an, und somit wei
sen der Anstieg von DQS18_tff_start und der Abfall von
DQS18_RCV_ON in dem 2x-Modus feste Zeitgebungen auf.
Es ist anzumerken, daß während einem 2x-Modus-Lesezyklus
DQS18_tff_start zeitlich abgestimmt sein kann, um zu jeder
Zeit zwischen der dritten Anstiegsflanke von DQS18(spät)-
und dem Ende der DQS18(früh)-Postambel anzusteigen. Solan
ge DQS18_tff_start während dieser Periode ansteigt, zählt
der Zähler 2002-2012 jedes einzelne aktive Übernahmesignal,
das bei DQS18 empfangen wird, und setzt sich dann anspre
chend auf den Anstieg von DQS18_tff_start (d. h. eine
Stoppbedingung) und eine Zählerrückkopplung asynchron zu
rück. Phantomübernahmekanten, die als eine Folge von Rau
schen erzeugt werden, wenn DQS18 (früh) tristatemäßig be
trieben wird, werden daher von dem Zähler 2002-2012 nicht
gezählt. Folglich werden die vier Dateneingabelatches
1802-1808, die mit der Datenanschlußfläche DQ4 gekoppelt sind,
nicht unbeabsichtigt getaktet.
Wie in dem 1x-Modus werden der Anstieg von DQS18_RCV_ON,
der Abfall von DQS18_tff_start und der Abfall von
DQS18_tff_rise_rst alle in dem Taktbereich der Speicher
steuerung 100 ausgelöst. Alle anderen Anstiegs- und Abfall
flanken in der Übernahmesignalempfängerschaltungsanordnung
2000 werden von Übernahmesignalflanken ausgelöst, die an
der DQS18-Übernahmesignalanschlußfläche empfangen werden,
und werden daher in dem Übernahmesignalbereich der Spei
chermodule 104 oder der Zwischenchips 302 ausgelöst, an die
die DQS18-Übernahmesignalanschlußfläche angeschlossen ist.
Wie es in Fig. 25 gezeigt ist, wird die erste Abfallflanke
von DQS18_tff_fall_rst von dem Empfang des Zählers in Fig.
20 einer ersten Abfallflanke ausgelöst. Danach zählt der
Zähler 2002-2012 weiterhin Übernahmesignalflanken, bis zu
dem Zeitpunkt, zu dem das DQS18_tff_start-Signal aktiviert
ist. Nach diesem Punkt und beim Erreichen des Zählwerts "3"
(d. h. dem dritten der letzten vier Übernahmesignalflanken)
wird der Anstieg von DQS18_tff_rise_rst ansprechend auf ei
ne Zählerrückkopplung asynchron ausgelöst. Gleichartig dazu
und beim Erreichen des Zählwerts "2" wird der Anstieg von
DQS18_tff_fall_rst als eine Folge von Zählerrückkopplung
asynchron ausgelöst. Sobald DQS18_tff_rise_rst und
DQS18_tff_fall_rst ansteigen, werden sie daran gehindert
abzufallen, solange DQS18_tff_start hoch gehalten wird
(d. h. bis ein nächster Lesezyklus ausgelöst wird).
Der Vollständigkeit halber stellt Fig. 25 den Empfang von
Daten an der Datenanschlußfläche DQ4 (Fig. 18) in dem "Fall
eines frühen Empfangs" und dem "Fall eines späten Empfangs"
dar (d. h. DQ4 (früh) und DQ4 (spät)). Fig. 22 stellt au
ßerdem die Periode dar, im Verlauf derer die DQ4-
Datenanschlußfläche zum Empfangen von Daten aktiviert ist
(bezeichnet durch die Aktivierung des Signals DQ4_RCV_ON).
Fig. 26 stellt Signalzeitgebungen in dem frühen 2x-Modus-
Lesefall dar, mit keiner Lesephasenverzögerung (rpd = 0).
Es ist anzumerken, daß die überlappenden Aktivierungen und
Deaktivierungen der Flip-Flop-Ausgänge SA und SB zu einer
Erzeugung von S1-S4-Signalen mit wiederholenden und aufein
anderfolgenden Impulsen führen. Jeder Impuls wird mit der
Frequenz eines Übernahmesignals erzeugt, das an der DQS18-
Übernahmesignalanschlußfläche empfangen wird, und jeder Im
puls speichert ein neues Datenbit (d. h. r1, r2, r3, r4,
r5, r6, r7 oder r8) in der DQ4-Empfängerschaltungsanordnung
1800 zwischen (siehe Fig. 18).
Fig. 27 stellt Signalzeitgebungen in dem späten 2x-Modus-
Lesefall mit keiner Lesephasenverzögerung dar (rpd = 0).
Durch das in Fig. 11 dargestellte Speicherabbild 1100 sind
die Daten/Übernahmesignalpaare, die in Fig. 9 und 10 darge
stellt sind, und die Steuerschaltungsanordnungen 1810,
1812, 2800-2806, die in Fig. 18 und 28 dargestellt sind
(wobei diese Steuerschaltungsanordnungen noch erörtert
wird), ist die Speichersteuerung 100, die in Fig. 9 darge
stellt ist, in der Lage, Daten von den Speichermodulen 104
zu lesen, die aus RAM-Elementen mit nicht-homogener Daten
breite bestehen (z. B. DIMMs, die aus x4-DDR-SDRAMs beste
hen, DIMMs, die aus x8-DDR-SDRAMs bestehen und DIMMs, die
aus x16-DDR-SDRAMs bestehen).
Wie vorher bezüglich den Schreibvorgängen von DIMM 104 er
örtert wurde, die aus RAM-Elementen mit nicht-homogener Da
tenbreite bestehen, speichert das Speicherabbild 1100 eine
Anzeige eines Daten/Übernahmesignalverhältnisses (z. B. ei
nen Wert Ax) für jedes Speichermodul x, das mit der Spei
chersteuerung 100 gekoppelt ist. Während einem Lesezyklus
der Speichersteuerung 100 wird ein adressierter Wert Ax von
dem Speicherabbild 1100 ausgegeben, und zu der Steuerschal
tungsanordnung 1810, 1812, 2800-2806 geliefert, die den Da
tenempfang bei einem Teilsatz der Datenanschlußflächen der
Speichersteuerung steuert. In Fig. 18 ist die Steuerschal
tungsanordnung so gezeigt, daß sie eine Anzahl von Multi
plexern 1812 umfaßt, von denen jeder einen adressierten
Wert Ax (in der Form eines Signals set_alt_n) als ein Steu
ereingangssignal empfängt.
Im allgemeinen steuert die Steuerschaltungsanordnung 1810,
1812, 2800-2806 den Datenempfang an einem Teilsatz der Da
tenanschlußflächen der Speichersteuerung, wie es in vorher
gehenden Abschnitten dieser Beschreibung erörtert wird. Das
heißt, ein Zählwert von Übernahmesignalflanken, die an ei
ner Übernahmesignalanschlußfläche der Speichersteuerung
(z. B. DQS18) empfangen werden, wird verwendet, um die Daten
speicherelemente (z. B. Datenlatches 1802-1808) zu steuern,
die mit einem oder mehreren Anschlußflächen der Speicher
steuerung (z. B. DQ4-DQ7; Fig. 9 und 18) gekoppelt sind.
Beispielsweise können vier Dateneingabelatches 1802-1808
mit jeder Datenanschlußfläche einer Speichersteuerung 100
gekoppelt sein, und die Bits einer Vier-Bit-, Ein-Zustand-
Übernahmesignalflanke können verwendet werden, um die je
weiligen Latches 1802-1808 zu steuern. Gleichartig dazu
kann jedes Bit eines Vier-Bit-Übernahmesignalzählwerts, bei
dem ein Zustand logisch hoch ist, entsprechende Dateneinga
belatches 1802-1808 steuern, die mit jeder der Anzahl von
Datenanschlußflächen (z. B. Anschlußfläche DQ4-DQ7) ge
koppelt sind.
Obwohl der obige Absatz ein bevorzugtes und vorher be
schriebenes Verfahren zum Steuern des Empfangs von Daten an
einer Anzahl von Datenanschlußflächen zusammengefaßt hat,
kann das vorher erwähnte Verfahren zum Steuern des Daten
empfangs ohne den Multiplexer 1812 durchgeführt werden, der
die Daten- und Übernahmesignalempfängerschaltungen koppelt,
die in Fig. 18 und 20 dargestellt sind. Die zusätzliche
Funktionalität, die durch den Multiplexer 1812 geliefert
wird, der die Datenempfängerschaltung 1800 von Fig. 18 und
die Übernahmesignalempfängerschaltung 200 von Fig. 20 kop
pelt, ist die Fähigkeit, eine Datenempfängerschaltung 1800
zwei oder mehreren unterschiedlichen Übernahmesignalempfän
gerschaltungen 2000 zuzuordnen. Auf diese Weise kann der
Empfang von Daten bei einigen der Datenanschlußflächen der
Speichersteuerung durch eine Mehrzahl von unterschiedlichen
Übernahmesignalen gesteuert werden, und eine Funktionali
tät, wie z. B. die Fähigkeit, von DIMMs zu lesen, die aus
x4-, x8- und x16-DDR-SDRAM bestehen, ist vorgesehen.
In Fig. 18 kann der Empfang von Daten an der Datenanschluß
fläche DQ4 ansprechend auf ein Übernahmesignal gesteuert
werden, das an der Übernahmesignalanschlußfläche DQS18 emp
fangen wird, oder ein Übernahmesignal, das an einer anderen
Übernahmesignalanschlußfläche empfangen wird. Mit Bezugnah
me auf die Zuordnungen von Daten- und Übernahmesignalan
schlußflächen, die in Fig. 10 geliefert werden, kann man
erkennen, daß ein Lesevorgang von einem DIMM, das aus x4-
DDR-SDRAM besteht, eine Zuordnung zwischen der Datenan
schlußfläche DQ4 und der Übernahmesignalanschlußfläche
DQS18 erfordert, während ein Lesevorgang von einem DIMM,
das aus x8- oder x16-DDR-SDRAMs besteht, eine Zuordnung
zwischen der Datenanschlußfläche DQ4 und der Übernahmesi
gnalanschlußfläche DQS18 erfordert. Somit ist der Übernah
mesignalflankenzählwert, der aus den Bits S1_alt-S4_alt in
Fig. 18 besteht, ein Zählwert von Übernahmesignalflanken,
der an der Übernahmesignalanschlußfläche DQS18 erzeugt
wird.
Wenn die in Fig. 18 und 20 dargestellte Schaltungsanordnung
1800, 2000 auf einen größeren Maßstab extrapoliert wird,
wird ein Fachmann auf diesem Gebiet erkennen, daß die Spei
chersteuerung 100 von Fig. 9 mit einer Fähigkeit versehen
ist, DIMMs 104 zu lesen, die aus nicht-homogenen DDR-SDRAMs
bestehen, durch 1) Liefern einer festen Korrelation zwi
schen einer ersten Hälfte der Datenanschlußflächen der
Speichersteuerung (DQ0-DQ3, DQ8-DQ11, DQ16-19, . . .) und den
niedrigeren Übernahmesignalanschlußflächen der Speicher
steuerung (DQS0-DQS17) und 2) Liefern einer programmierba
ren Korrelation zwischen einer zweiten Hälfte der Datenan
schlußflächen der Speichersteuerung (DQ4-DQ7, DQ12-DQ15,
DQ20-23, . . .) und den oberen (DQS18-DQS35) und niedrigeren
(DQS0-DQS17) Übernahmesignalanschlußflächen der Speicher
steuerung. In dem letzteren Fall wird die programmierbare
Korrelation durch eine Steuerschaltungsanordnung bestimmt,
die beispielsweise eine Mehrzahl von Multiplexern 1812 um
faßt, die adressierte Werte von Ax (die in Fig. 18 als Si
gnal set_alt_n erscheinen) von dem Speicherabbild 1100 emp
fängt. Falls ein adressierter Wert Ax eine logische "1"
ist, dann werden die Daten- und Übernahmesignalanschlußflä
chen auf eine Weise zugeordnet, die es ermöglicht, Daten
von DIMMs zu lesen, die aus x4-DDR-SDRAMs bestehen (d. h.
ein Zählwert (Bits S1-S4), der an dem ersten Dateneingang
des Multiplexers empfangen wird, wird zu dem Multiplexer
1812 weitergeleitet). Falls ein adressierter Wert Ax eine
logische "0" ist, werden die Daten- und Übernahmesignalan
schlußflächen auf eine Weise zugeordnet, die es ermöglicht,
Daten von DIMMs zu lesen, die aus x8- oder x16-DDR-SDRAMs
bestehen (d. h. ein Zählwert (Bits S1_alt-S4_alt), der an
dem zweiten Dateneingang des Multiplexers empfangen wird,
wird durch den Multiplexer 1812 geleitet).
Bei einem bevorzugten Ausführungsbeispiel ist das kritische
Signal zum Steuern des Multiplexers 1812 das set_alt_n-
Signal. Eine mögliche Ableitung dieses Signals ist in Fig.
28 dargestellt. Nachdem reset_L während dem Systemrückset
zen kurz in einen niedrigen Zustand getrieben wird, wird
reset_L hochgehalten. Die Auswahl eines primären oder al
ternativen Übernahmesignalflankenzählwerts für den Zweck
des Steuerns der Dateneingabelatches 1802-1808 wird daher
durch Signale read_tri und read_tri_x4 bestimmt. Während
einem Lesevorgang eines DIMM, das aus x4-DDR-SDRAM besteht,
werden sowohl read_tri als auch read_tri_x4 aktiviert, und
der Multiplexer 2800, das ODER-Gatter 2802 und die D-Typ-
Flip-Flops 2804 und 2806 aktivieren das Signal set_alt_n.
Während einem Lesevorgang eines DIMM, das aus x8- oder x16-
DDR-SDRAM besteht, ist read_tri_x4 jedoch deaktiviert, um
dadurch das set_alt_n-Signal zu deaktivieren. Auf diese
Weise kann die Speichersteuerung von Fig. 9 konfiguriert
werden, um Daten von DIMM zu lesen, die aus x4-, x8- und x16-
DDR-SDRAM bestehen. Das read_tri_x4-Signal kann beispiels
weise ein adressierter Wert Ax oder eine Ableitung dessel
ben sein.
Obwohl die Speichersteuerung 100, die oben beschrieben
wird, in der Lage ist, mit DIMM 104 zu kommunizieren, die
aus DDR-SDRAM mit zwei unterschiedlichen Da
ten/Übernahmesignalverhältnisse bestehen (d. h. ein 4 : 1-
und ein 8 : 1-Verhältnis) können die hierin offenbarten Leh
ren angepaßt werden, um eine noch größere Flexibilität zum
Lesen von Speichermodulen 104 zu liefern, die aus RAM-
Elementen mit nicht-homogener Datenbreite bestehen. Bei
spielsweise kann die Steuerschaltungsanordnung 1810, 1812,
2800-2806 zum Zuordnen von Daten und Übernahmesignaltrei
berschaltungen 1800, 2000 Multiplexer umfassen, die Daten
auf der Basis von Übernahmesignalen empfangen, die an mehr
als zwei Übernahmesignalanschlußflächen empfangen werden
(z. B. Übernahmesignalflankenzählwerte auf der Basis von
Übernahmesignalen, die an mehr als zwei Übernahmesignalan
schlußflächen empfangen werden). Ferner kann der Teilsatz
von Datenanschlußflächen einer Speichersteuerung, die eine
feste Korrelation mit den Übernahmesignalanschlußflächen
der Speichersteuerung aufweisen, größer, kleiner oder sogar
nicht vorhanden sein.
Claims (29)
1. Speichersteuerungsempfängerschaltungsanordnung, die
folgende Merkmale aufweist:
- a) eine Datenanschlußfläche und eine Übernahmesi gnalanschlußfläche;
- b) P Speicherelemente, die gekoppelt sind, um Daten von der Datenanschlußfläche zu empfangen (P ≧ 2), wobei die P Speicherelemente durch jeweilige Wer te einer Zählung gesteuert werden;
- c) einen Zähler, wobei der Zähler die Zählung an sprechend auf Übernahmesignalflanken von Übernah mesignalen aktualisiert, die an der Übernahmesi gnalanschlußfläche empfangen werden; und
- d) eine Entzerrmultiplexstufe, wobei die Entzerrmul tiplexstufe Daten von den P Speicherelementen empfängt, und die Entzerrmultiplexstufe Steuersi gnale empfängt, die in einem Taktbereich der Speichersteuerungsempfängerschaltungsanordnung erzeugt werden.
2. Speichersteuerungsempfängerschaltungsanordnung gemäß
Anspruch 1, bei der jedes der P Speicherelemente ein
Latch ist.
3. Speichersteuerungsempfängerschaltungsanordnung gemäß
Anspruch 1, bei der jedes der P Speicherelemente ein
Flip-Flop ist.
4. Speichersteuerungsempfängerschaltungsanordnung gemäß
einem der Ansprüche 1 bis 3, bei der die Speicher
steuerungsempfängerschaltungsanordnung Datenbits
liest, die an der Datenanschlußfläche entweder mit ei
ner 1x- oder einer Mx-Rate (M ≧ 2) empfangen werden,
wobei die Empfängerschaltungsanordnung ferner eine
Multiplexerauswahllogik umfaßt, wobei die Multiplexer
auswahllogik folgendes erzeugt:
- a) einen ersten Satz von Steuersignalen, die zu der Entzerrmultiplexstufe geliefert werden, wenn Da tenbits an der Datenanschlußfläche mit einer 1x- Rate empfangen werden; und
- b) einen zweiten Satz von Steuersignalen, die zu der Entzerrmultiplexstufe geliefert werden, wenn Da tenbits an der Datenanschlußfläche mit einer Mx- Rate empfangen werden.
5. Speichersteuerungsempfängerschaltungsanordnung gemäß
Anspruch 4, bei der M = 2 ist.
6. Speichersteuerungsempfängerschaltungsanordnung gemäß
einem der Ansprüche 1 bis 5, bei der die Speicher
steuerungsempfängerschaltungsanordnung Datenbits
liest, die an der Datenanschlußfläche entweder mit ei
ner 1x- oder einer 2x-Rate empfangen werden, und bei
der:
- a) die Entzerrmultiplexstufe einen ersten und einen zweiten Entzerrmultiplexer umfaßt, wobei der er ste Entzerrmultiplexer Daten von jedem der P Speicherelemente empfängt, und der zweite Ent zerrmultiplexer Daten von zumindest P/2 der P Speicherelemente empfängt; und
- b) die Steuersignale, die durch die Entzerrmulti plexstufe empfangen werden, bewirken, daß sich Datenbits, die in jedem der P Speicherelemente gespeichert sind, jeweils durch den ersten Ent zerrmultiplexer ausbreiten, wenn Datenbits an der Datenanschlußfläche mit einer 1x-Rate empfangen werden, und bewirken, daß sich Datenbits, die in geraden und ungeraden Sätzen der P Speicherele mente gespeichert sind, jeweils durch den ersten und den zweiten Entzerrmultiplexer ausbreiten, wenn Datenbits an der Datenanschlußfläche mit ei ner 2x-Rate empfangen werden.
7. Speichersteuerungsempfängerschaltungsanordnung gemäß
einem der Ansprüche 1 bis 6, bei der der Zähler ein
Überlaufzähler ist, der die Zählung als eine P-Bit-
Zählung mit einem logisch hohen Zustand erzeugt.
8. Speichersteuerungsempfängerschaltungsanordnung gemäß
einem der Ansprüche 1 bis 7, die ferner Zählersteuer
logik umfaßt, wobei die Zählersteuerlogik den Zähler
aktiviert, bevor jedes Übernahmesignal empfangen wird,
durch Erzeugen von Startbedingungen asynchron bezüg
lich der empfangenen Übernahmesignale, wobei die Zäh
lersteuerlogik jeden Zähler zurücksetzt, nachdem jedes
Übernahmesignal empfangen wird, durch i) Empfangen ei
ner Rückkopplung von dem Zähler, ii) Erzeugen von
Stoppbedingungen, und iii) ansprechend auf die Rück
kopplungs- und die Stoppbedingungen, Zurücksetzen des
Zählers asynchron bezüglich der empfangenen
Übernahmesignale.
9. Speichersteuerungsempfängerschaltungsanordnung gemäß
Anspruch 8, bei der die Start- und Stoppbedingungen
auf einer einzigen Signalleitung erzeugt werden.
10. Speichersteuerungsempfängerschaltungsanordnung gemäß
Anspruch 8 oder 9, bei der die Zählersteuerlogik die
Stoppbedingung zu einem Zeitpunkt erzeugt, der dadurch
definiert ist, ob ein nächster Lesezyklus folgendes
sein wird:
- a) ein Doppeldatenratenbündel von vier Lesezyklen; oder
- b) ein Doppeldatenratenbündel von acht Lesezyklen.
11. Speichersteuerungsempfängerschaltungsanordnung gemäß
Anspruch 8, bei der die Zählersteuerlogik die Stoppbe
dingung zu einem Zeitpunkt erzeugt, der dadurch defi
niert ist, ob ein nächster Lesezyklus folgendes sein
wird:
- a) ein 1x-Modus-Doppeldatenraten-Lesezyklus; oder
- b) ein Mx-Modus-Doppeldatenraten-Lesezyklus (M ≧ 2).
12. Speichersteuerungsempfängerschaltungsanordnung gemäß
einem der Ansprüche 8 bis 11, bei der:
- a) der Zähler ein Überlaufzähler ist, der ein erstes und zweites Zustandselement umfaßt, die jeweils abwechselnd durch Anstiegs- und Abfallflanken von Übernahmesignalen getaktet sind, die an der Über nahmesignalanschlußfläche empfangen werden; und
- b) die Zählersteuerlogik ein erstes und zweites Lo
gikgatter umfaßt,
- a) wobei das erste Logikgatter das erste Zu standselement ansprechend auf eine Rückkopp lung von dem ersten Zustandselement, der Startbedingung und der Stoppbedingung akti viert und rücksetzt; und
- b) das zweite Logikgatter das zweite Zustands element ansprechend auf eine Rückkopplung von dem ersten und dem zweiten Zustandsele ment aktiviert und zurücksetzt.
13. Speichersteuerungsempfängerschaltungsanordnung gemäß
Anspruch 12, bei der:
- a) das erste Zustandselement ein T-Flip-Flop ist, das die Ausgangssignale SA und SA' erzeugt;
- b) das zweite Zustandselement ein T-Flip-Flop ist, das die Ausgangsignale SB und SB' erzeugt;
- c) das erste Zustandselement ein zurückgesetztes Eingangssignal empfängt, das ein logisches UND von SA' und einer einzigen Signalleitung dar stellt, auf der die Start- und Stoppbedingungen erzeugt werden; und
- d) das zweite Zustandselement ein zurückgesetztes Eingangssignal empfängt, das ein logisches UND von SA' und SB' darstellt.
14. Speichersteuerungsempfängerschaltungsanordnung gemäß
einem der Ansprüche 1 bis 13, bei der P = 4 ist.
15. Doppeldatenraten-Speichersteuerung, die folgende Merk
male umfaßt:
- a) eine Einrichtung zum Empfangen von Daten und Übernahmesignalen mit einer 1x-Doppeldatenraten- Speichergeschwindigkeit; und
- b) eine Einrichtung zum Empfangen von Daten und Übernahmesignalen mit einer Mx-Doppeldatenraten- Speichergeschwindigkeit (M ≧ 2).
16. Verfahren zum Empfangen von Daten in einer Speicher
steuerung, das folgende Schritte umfaßt:
- a) Empfangen von Datenbits, die einer Datenanschluß fläche der Speichersteuerung vorgelegt werden, in jeweilige P Speicherelemente (P ≧ 2), ansprechend auf eine Zählung von Übernahmesignalflanken, die an einer Übernahmesignalanschlußfläche der Spei chersteuerung empfangen werden;
- b) Ausgeben von Daten, die in den P Speicherelemen ten gespeichert sind, zu einer Anzahl von Ent zerrmultiplexern; und
- c) Erzeugen von Steuersignalen für die Entzerrmulti plexer in einem Taktbereich der Speichersteue rung.
17. Verfahren gemäß Anspruch 16, bei dem:
- a) die Datenbits und Übernahmesignalflanken, die je weils an den Daten- und Übernahmesignalanschluß flächen empfangen werden, durch die Speicher steuerung entweder mit einer 1x- oder einer 2x- Rate empfangen werden; und
- b) der Taktbereich der Speichersteuerung ein 2x- Taktbereich ist.
18. Verfahren gemäß Anspruch 16 oder 17, bei dem P = 4
ist.
19. Verfahren gemäß einem der Ansprüche 16 bis 18, bei dem
das Erzeugen von Steuersignalen für die Entzerrmulti
plexer das Erzeugen von Steuersignalen umfaßt, die je
weils mit einer 1x-Rate wechseln, unabhängig davon, ob
Datenbits und Übernahmesignalflanken jeweils an den
Daten- und Übernahmesignalanschlußflächen mit einer
1x- oder einer 2x-Rate empfangen werden.
20. Verfahren gemäß einem der Ansprüche 16 bis 19, bei dem
die Anzahl von Entzerrmultiplexern einen ersten und
zweiten Entzerrmultiplexer umfaßt, von denen der erste
Daten von jedem der P Speicherelemente empfängt, und
der zweite Daten von zumindest P/2 der P Speicherele
mente umfaßt, wobei das Verfahren ferner folgende
Schritte umfaßt:
- a) wenn die Daten- und Übernahmesignalanschlußflä chen jeweils Datenbits und Übernahmesignalflanken mit einer 1x-Rate empfangen, Liefern der erzeug ten Steuersignale zu dem ersten Entzerrmultiple xer mit einer 1x-Rate, und Ausbreiten der Daten durch den ersten Entzerrmultiplexer mit einer 1x- Rate; und
- b) wenn die Daten- und Übernahmesignalanschlußflä chen jeweils Datenbits und Übernahmesignalflanken mit einer 2x-Rate empfangen, Liefern von Sätzen von den erzeugten Steuersignalen zu jedem der er sten und zweiten Entzerrmultiplexer mit einer 1x- Rate, und Ausbreiten von Daten durch jeden der ersten und zweiten Entzerrmultiplexer mit einer 1x-Rate.
21. Verfahren gemäß einem der Ansprüche 16 bis 20, bei dem
die Zählung eine P-Bit-Zählung mit einem logisch hohen
Zustand ist.
22. Verfahren gemäß einem der Ansprüche 16 bis 21, bei dem
jedes der P Speicherelemente ein Latch ist.
23. Computersystem (124), das folgende Merkmale aufweist:
- a) eine CPU (102);
- b) eine Speichersteuerung (100), die mit der CPU (102) gekoppelt ist;
- c) eine I/O-Steuerung, die mit der CPU gekoppelt ist;
- d) eine Anzahl von I/O-Geräten (112-122), die mit der I/O-Steuerung gekoppelt sind; und
- e) eine Anzahl von Speichermodulen (104), die mit der Speichersteuerung (100) gekoppelt sind;
wobei die Speichersteuerung (100) eine Mehrzahl von
Daten- und Übernahmesignalanschlußflächen umfaßt, mit
denen eine Empfängerschaltungsanordnung zum Empfangen
von Daten und Übernahmesignalen von den Speichermodu
len gekoppelt ist; und
wobei die Empfängerschaltungsanordnung für entspre chende Daten- und Übernahmesignalanschlußflächen fol gendes umfaßt:
wobei die Empfängerschaltungsanordnung für entspre chende Daten- und Übernahmesignalanschlußflächen fol gendes umfaßt:
- a) P Speicherelemente, die gekoppelt sind, um Daten von der Datenanschlußfläche zu empfan gen (P ≧ 2), wobei die P Speicherelemente durch jeweilige Werte einer Zählung gesteu ert werden;
- b) einen Zähler, wobei der Zähler eine Zählung ansprechend auf Übernahmesignalflanken von Übernahmesignalen aktualisiert, die an der Übernahmesignalanschlußfläche empfangen wer den; und
- c) eine Entzerrmultiplexstufe, wobei die Ent zerrmultiplexstufe Daten von den P Speicher elementen empfängt, und die Entzerrmulti plexstufe Steuersignale empfängt, die in ei nem Taktbereich der Speichersteuerungsemp fängerschaltungsanordnung erzeugt werden.
24. Computersystem gemäß Anspruch 23, bei dem jedes der P
Speicherelemente ein Latch ist.
25. Computersystem gemäß Anspruch 23 oder 24, bei dem die
Speichersteuerungsempfängerschaltungsanordnung Daten
bits liest, die an einer der Datenanschlußflächen ent
weder mit einer 1x- oder einer Mx-Rate (M ≧ 2) empfan
gen werden, wobei die Empfängerschaltungsanordnung
ferner eine Multiplexerauswahllogik umfaßt, wobei die
Multiplexerauswahllogik folgendes erzeugt:
- a) einen ersten Satz von Steuersignalen, die zu der Entzerrmultiplexstufe geliefert werden, wenn an der Datenanschlußfläche Datenbits mit einer 1x- Rate empfangen werden; und
- b) einen zweiten Satz von Steuersignalen, die zu der Entzerrmultiplexstufe geliefert werden, wenn Da tenbits an der Datenanschlußfläche mit einer Mx- Rate empfangen werden.
26. Computersystem gemäß Anspruch 25, wobei M = 2 ist.
27. Computersystem gemäß einem der Ansprüche 23 bis 26,
bei dem P = 4 ist.
28. Computersystem gemäß einem der Ansprüche 23 bis 27,
bei dem die Speichersteuerung und die I/O-Steuerung
eine integrierte Speicher- und I/O-Steuerung bilden.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US828604 | 2001-04-07 | ||
US09/828,604 US6633965B2 (en) | 2001-04-07 | 2001-04-07 | Memory controller with 1×/M× read capability |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10212642A1 true DE10212642A1 (de) | 2002-10-17 |
DE10212642B4 DE10212642B4 (de) | 2009-04-02 |
Family
ID=25252253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10212642A Expired - Fee Related DE10212642B4 (de) | 2001-04-07 | 2002-03-21 | Empfängerschaltungsanordnung für eine Speichersteuerung und Verfahren zum Empfangen von Daten in einer Speichersteuerung |
Country Status (2)
Country | Link |
---|---|
US (3) | US6633965B2 (de) |
DE (1) | DE10212642B4 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004057232A1 (de) * | 2004-11-26 | 2006-06-01 | Infineon Technologies Ag | Verfahren zum Betreiben einer Halbleiterspeichervorrichtung und Halbleiterspeichersystem |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6625702B2 (en) * | 2001-04-07 | 2003-09-23 | Hewlett-Packard Development Company, L.P. | Memory controller with support for memory modules comprised of non-homogeneous data width RAM devices |
US6889335B2 (en) * | 2001-04-07 | 2005-05-03 | Hewlett-Packard Development Company, L.P. | Memory controller receiver circuitry with tri-state noise immunity |
US6633965B2 (en) * | 2001-04-07 | 2003-10-14 | Eric M. Rentschler | Memory controller with 1×/M× read capability |
US6678811B2 (en) * | 2001-04-07 | 2004-01-13 | Hewlett-Packard Development Company, L.P. | Memory controller with 1X/MX write capability |
US20030053578A1 (en) * | 2001-09-18 | 2003-03-20 | Sun Microsystems, Inc. | Synchronous receiver |
US8509391B2 (en) * | 2002-06-20 | 2013-08-13 | Numerex Corp. | Wireless VoIP network for security system monitoring |
US9054893B2 (en) | 2002-06-20 | 2015-06-09 | Numerex Corp. | Alarm system IP network with PSTN output |
US6819599B2 (en) * | 2002-08-01 | 2004-11-16 | Micron Technology, Inc. | Programmable DQS preamble |
US7177224B2 (en) * | 2003-05-21 | 2007-02-13 | Micron Technology, Inc. | Controlling multiple signal polarity in a semiconductor device |
WO2005015564A1 (en) * | 2003-08-06 | 2005-02-17 | Netlist, Inc. | Non-standard dual in-line memory modules with more than two ranks of memory per module and multiple serial-presence-detect devices to simulate multiple modules |
US6930932B2 (en) * | 2003-08-27 | 2005-08-16 | Hewlett-Packard Development Company, L.P. | Data signal reception latch control using clock aligned relative to strobe signal |
US7178048B2 (en) * | 2003-12-23 | 2007-02-13 | Hewlett-Packard Development Company, L.P. | System and method for signal synchronization based on plural clock signals |
KR100546403B1 (ko) * | 2004-02-19 | 2006-01-26 | 삼성전자주식회사 | 감소된 메모리 버스 점유 시간을 가지는 시리얼 플레쉬메모리 컨트롤러 |
US7269708B2 (en) * | 2004-04-20 | 2007-09-11 | Rambus Inc. | Memory controller for non-homogenous memory system |
US7120084B2 (en) * | 2004-06-14 | 2006-10-10 | Marvell International Ltd. | Integrated memory controller |
US7196948B1 (en) * | 2005-03-07 | 2007-03-27 | Sun Microsystems, Inc . | Method and apparatus for data capture on a bi-directional bus |
JP4423453B2 (ja) * | 2005-05-25 | 2010-03-03 | エルピーダメモリ株式会社 | 半導体記憶装置 |
US8121237B2 (en) | 2006-03-16 | 2012-02-21 | Rambus Inc. | Signaling system with adaptive timing calibration |
US20070260778A1 (en) * | 2006-04-04 | 2007-11-08 | Ming-Shiang Lai | Memory controller with bi-directional buffer for achieving high speed capability and related method thereof |
US7623404B2 (en) * | 2006-11-20 | 2009-11-24 | Freescale Semiconductor, Inc. | Memory device having concurrent write and read cycles and method thereof |
JP4325685B2 (ja) * | 2007-02-21 | 2009-09-02 | セイコーエプソン株式会社 | メモリを制御するメモリコントローラ、メモリモジュール、メモリの制御方法、および、コンピュータ。 |
US7590789B2 (en) * | 2007-12-07 | 2009-09-15 | Intel Corporation | Optimizing clock crossing and data path latency |
US8467486B2 (en) | 2007-12-14 | 2013-06-18 | Mosaid Technologies Incorporated | Memory controller with flexible data alignment to clock |
US8781053B2 (en) * | 2007-12-14 | 2014-07-15 | Conversant Intellectual Property Management Incorporated | Clock reproducing and timing method in a system having a plurality of devices |
US7929361B2 (en) * | 2008-03-31 | 2011-04-19 | Advanced Micro Devices, Inc. | Circuit using a shared delay locked loop (DLL) and method therefor |
US7869287B2 (en) * | 2008-03-31 | 2011-01-11 | Advanced Micro Devices, Inc. | Circuit for locking a delay locked loop (DLL) and method therefor |
US7872937B2 (en) * | 2008-03-31 | 2011-01-18 | Globalfoundries Inc. | Data driver circuit for a dynamic random access memory (DRAM) controller or the like and method therefor |
US7924637B2 (en) | 2008-03-31 | 2011-04-12 | Advanced Micro Devices, Inc. | Method for training dynamic random access memory (DRAM) controller timing delays |
TW200947217A (en) * | 2008-05-09 | 2009-11-16 | Asustek Comp Inc | Computer system and method for processing data signal of memory interface thereof |
US8402259B2 (en) * | 2009-11-30 | 2013-03-19 | International Business Machines Corporation | Accelerating wake-up time of a system |
KR101093000B1 (ko) * | 2010-05-28 | 2011-12-12 | 주식회사 하이닉스반도체 | 반도체 메모리 장치 및 그 동작 방법 |
US9875209B2 (en) | 2013-05-06 | 2018-01-23 | Qualcomm Incorporated | Synchronous data-link throughput enhancement technique based on data signal duty-cycle and phase modulation/demodulation |
KR101845382B1 (ko) * | 2013-09-25 | 2018-05-18 | 인텔 코포레이션 | 분배 변환기를 갖는 메모리 제어기 |
US9385724B1 (en) * | 2013-10-03 | 2016-07-05 | Altera Corporation | Methods for operating configurable storage and processing blocks at double and single data rates |
KR102147228B1 (ko) * | 2014-01-23 | 2020-08-24 | 삼성전자주식회사 | 타겟 모듈의 라이트 레벨링을 제어하는 라이트 레벨링 제어 회로 및 그에 따른 라이트 레벨링 제어방법 |
US10241942B2 (en) * | 2016-06-28 | 2019-03-26 | Mediatek Inc. | Method and apparatus for memory access |
DE102017112416A1 (de) | 2017-06-06 | 2018-12-06 | Liebherr-Verzahntechnik Gmbh | Vorrichtung und Verfahren zum Anfasen eines innenverzahnten Werkstücks |
DE102017112450A1 (de) | 2017-06-06 | 2018-12-06 | Liebherr-Verzahntechnik Gmbh | Vorrichtung und Verfahren zum Anfasen eines innenverzahnten Werkstücks |
US10418090B1 (en) * | 2018-06-21 | 2019-09-17 | Micron Technology, Inc. | Write signal launch circuitry for memory drive |
Family Cites Families (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US172079A (en) * | 1876-01-11 | Improvement in grinding-disks | ||
US46163A (en) * | 1865-01-31 | Improvement in making bonnet-binding | ||
US3837A (en) * | 1844-11-26 | Tillott cole | ||
US54135A (en) * | 1866-04-24 | Improvement in watches | ||
US147896A (en) * | 1874-02-24 | Improvement in devices for paring horses hoofs | ||
US6570944B2 (en) * | 2001-06-25 | 2003-05-27 | Rambus Inc. | Apparatus for data recovery in a synchronous chip-to-chip system |
US5983328A (en) * | 1987-03-13 | 1999-11-09 | Texas Instruments Incorporated | Data processing device with time-multiplexed memory bus |
US5522064A (en) * | 1990-10-01 | 1996-05-28 | International Business Machines Corporation | Data processing apparatus for dynamically setting timings in a dynamic memory system |
US5255241A (en) * | 1991-05-20 | 1993-10-19 | Tandem Computers Incorporated | Apparatus for intelligent reduction of worst case power in memory systems |
JP2599539B2 (ja) | 1991-10-15 | 1997-04-09 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 直接メモリ・アクセス装置及びルック・アヘッド装置 |
JPH07504773A (ja) * | 1992-03-18 | 1995-05-25 | セイコーエプソン株式会社 | マルチ幅のメモリ・サブシステムをサポートするためのシステム並びに方法 |
US5418924A (en) * | 1992-08-31 | 1995-05-23 | Hewlett-Packard Company | Memory controller with programmable timing |
TW390446U (en) * | 1992-10-01 | 2000-05-11 | Hudson Soft Co Ltd | Information processing system |
US5809340A (en) * | 1993-04-30 | 1998-09-15 | Packard Bell Nec | Adaptively generating timing signals for access to various memory devices based on stored profiles |
US5548783A (en) * | 1993-10-28 | 1996-08-20 | Dell Usa, L.P. | Composite drive controller including composite disk driver for supporting composite drive accesses and a pass-through driver for supporting accesses to stand-alone SCSI peripherals |
US5727005A (en) * | 1994-08-31 | 1998-03-10 | Le; Chinh H. | Integrated circuit microprocessor with programmable memory access interface types |
US5701438A (en) * | 1995-09-29 | 1997-12-23 | Intel Corporation | Logical relocation of memory based on memory device type |
US5906003A (en) * | 1996-04-17 | 1999-05-18 | Cirrus Logic, Inc. | Memory device with an externally selectable-width I/O port and systems and methods using the same |
KR100238242B1 (ko) * | 1997-04-22 | 2000-01-15 | 윤종용 | 반도체 메모리장치의 동작 제어장치 |
US5974499A (en) * | 1997-04-23 | 1999-10-26 | Micron Technology, Inc. | Memory system having read modify write function and method |
US6175891B1 (en) | 1997-04-23 | 2001-01-16 | Micron Technology, Inc. | System and method for assigning addresses to memory devices |
US5905391A (en) | 1997-07-14 | 1999-05-18 | Intel Corporation | Master-slave delay locked loop for accurate delay or non-periodic signals |
JP3386705B2 (ja) * | 1997-12-25 | 2003-03-17 | 株式会社東芝 | 半導体記憶装置およびそのバーストアドレスカウンタ |
US6005412A (en) * | 1998-04-08 | 1999-12-21 | S3 Incorporated | AGP/DDR interfaces for full swing and reduced swing (SSTL) signals on an integrated circuit chip |
US6009533A (en) * | 1998-06-02 | 1999-12-28 | Via-Cyrix, Inc. | Speculative bus cycle acknowledge for 1/2X core/bus clocking |
JPH11353228A (ja) * | 1998-06-10 | 1999-12-24 | Mitsubishi Electric Corp | メモリモジュールシステム |
KR100578112B1 (ko) * | 1998-10-16 | 2006-07-25 | 삼성전자주식회사 | 메모리 클럭 신호를 제어하는 컴퓨터 시스템 및그 방법 |
JP3259696B2 (ja) * | 1998-10-27 | 2002-02-25 | 日本電気株式会社 | 同期型半導体記憶装置 |
JP2000148656A (ja) * | 1998-11-09 | 2000-05-30 | Mitsubishi Electric Corp | メモリシステム |
JP2000163965A (ja) * | 1998-11-27 | 2000-06-16 | Mitsubishi Electric Corp | 同期型半導体記憶装置 |
US6370630B1 (en) * | 1999-03-19 | 2002-04-09 | Ati International Srl | Method and apparatus for controlling data flow in a data processor |
KR100322530B1 (ko) * | 1999-05-11 | 2002-03-18 | 윤종용 | 반도체 메모리 장치의 데이터 입력 회로 및 데이터 입력 방법 |
US6414868B1 (en) | 1999-06-07 | 2002-07-02 | Sun Microsystems, Inc. | Memory expansion module including multiple memory banks and a bank control circuit |
KR100296913B1 (ko) | 1999-06-28 | 2001-07-12 | 박종섭 | 반도체메모리장치의 데이터스트로브신호 출력버퍼 |
US6144598A (en) * | 1999-07-06 | 2000-11-07 | Micron Technology, Inc. | Method and apparatus for efficiently testing rambus memory devices |
US6615345B1 (en) * | 1999-07-29 | 2003-09-02 | Micron Technology, Inc. | System and method for regulating data capture in response to data strobe using preamble, postamble and strobe signature |
US6694416B1 (en) * | 1999-09-02 | 2004-02-17 | Micron Technology, Inc. | Double data rate scheme for data output |
US6466491B2 (en) * | 2000-05-19 | 2002-10-15 | Fujitsu Limited | Memory system and memory controller with reliable data latch operation |
JP2002007200A (ja) | 2000-06-16 | 2002-01-11 | Nec Corp | メモリ制御装置及び動作切替方法並びにインターフェース装置、半導体集積チップ、記録媒体 |
US6553450B1 (en) | 2000-09-18 | 2003-04-22 | Intel Corporation | Buffer to multiply memory interface |
US6532525B1 (en) * | 2000-09-29 | 2003-03-11 | Ati Technologies, Inc. | Method and apparatus for accessing memory |
US6525565B2 (en) * | 2001-01-12 | 2003-02-25 | Xilinx, Inc. | Double data rate flip-flop |
US6678811B2 (en) * | 2001-04-07 | 2004-01-13 | Hewlett-Packard Development Company, L.P. | Memory controller with 1X/MX write capability |
US6625702B2 (en) * | 2001-04-07 | 2003-09-23 | Hewlett-Packard Development Company, L.P. | Memory controller with support for memory modules comprised of non-homogeneous data width RAM devices |
US6633965B2 (en) | 2001-04-07 | 2003-10-14 | Eric M. Rentschler | Memory controller with 1×/M× read capability |
US6889335B2 (en) * | 2001-04-07 | 2005-05-03 | Hewlett-Packard Development Company, L.P. | Memory controller receiver circuitry with tri-state noise immunity |
US6424198B1 (en) | 2001-08-09 | 2002-07-23 | International Business Machines Corporation | Memory clock generation with configurable phase advance and delay capability |
US6806733B1 (en) * | 2001-08-29 | 2004-10-19 | Altera Corporation | Multiple data rate interface architecture |
TW550563B (en) * | 2002-02-01 | 2003-09-01 | Silicon Integrated Sys Corp | Memory data receiver and method |
KR100543913B1 (ko) * | 2003-05-31 | 2006-01-23 | 주식회사 하이닉스반도체 | Sdr/ddr 모드를 지원하는 콤보형 동기식 디램 |
-
2001
- 2001-04-07 US US09/828,604 patent/US6633965B2/en not_active Expired - Fee Related
-
2002
- 2002-03-21 DE DE10212642A patent/DE10212642B4/de not_active Expired - Fee Related
-
2003
- 2003-10-14 US US10/685,940 patent/US7103793B2/en not_active Expired - Fee Related
- 2003-10-14 US US10/685,929 patent/US6990562B2/en not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004057232A1 (de) * | 2004-11-26 | 2006-06-01 | Infineon Technologies Ag | Verfahren zum Betreiben einer Halbleiterspeichervorrichtung und Halbleiterspeichersystem |
US7499371B2 (en) | 2004-11-26 | 2009-03-03 | Infineon Technologies Ag | Semiconductor memory system with a variable and settable preamble f |
DE102004057232B4 (de) * | 2004-11-26 | 2013-04-11 | Qimonda Ag | Verfahren zum Betreiben einer Halbleiterspeichervorrichtung und Halbleiterspeichersystem |
Also Published As
Publication number | Publication date |
---|---|
US7103793B2 (en) | 2006-09-05 |
US20020147892A1 (en) | 2002-10-10 |
DE10212642B4 (de) | 2009-04-02 |
US20040133757A1 (en) | 2004-07-08 |
US6990562B2 (en) | 2006-01-24 |
US6633965B2 (en) | 2003-10-14 |
US20040158688A1 (en) | 2004-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10212642A1 (de) | Speichersteuerung mit 1X/MX-Lesefähigkeit | |
DE10209398A1 (de) | Speichersteuerung mit einer Unterstützung für Speichermodule aus RAM-Bauelementen mit inhomogener Datenbreite | |
DE112007002619B4 (de) | Speichersteuerung mit einer Speicherverbindung mit zwei Betriebsmodi | |
DE10235739B4 (de) | Register, das auf einem Speichermodul montiert ist sowie Verwendung eines Registers in einem Speichermodul | |
DE69826863T2 (de) | Verfahren und vorrichtung zur abstimmung eines zur verrieglung digitaler signalen gebrauchten taktsignals und speichervorrichtung die sie verwendet | |
DE102012204991B4 (de) | Speichereinrichtungen, Systeme und Verfahren unter Verwendung einer Befehls/Adressenkalibrierung | |
DE102006035612B4 (de) | Speicherpuffer, FB-DIMM und Verfahren zum Betrieb eines Speicherpuffers | |
DE60027038T2 (de) | Bussystem optimierung | |
DE602004007674T3 (de) | Integrierte Schaltung mit bimodalem Daten-Strobe | |
DE102005051478B4 (de) | Flashdatenspeichervorrichtung | |
DE102005050595B4 (de) | Speichersystem, Speichervorrichtung und Verfahren dafür | |
DE102006028683B4 (de) | Parallele Datenpfadarchitektur | |
DE69838852T2 (de) | Verfahren und vorrichtung zur kopplung von signalen zwischen zwei schaltungen, in verschiedenen taktbereichen arbeitend | |
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) | |
DE69906793T2 (de) | Verfahren und anordnung für hochgeschwindigkeitsdatenerfassung mit korrektur der bit-zu-bit-zeitgebung und speicheranordnung unter verwendung derselben | |
US7103790B2 (en) | Memory controller driver circuitry having a multiplexing stage to provide data to at least N-1 of N data propagation circuits, and having output merging circuitry to alternately couple the N data propagation circuits to a data pad to generate either a 1x or Mx stream of data | |
DE69829987T2 (de) | E/a bus mit schnellen 16-bit zerteilten transaktionen | |
DE102007060805B4 (de) | Speichersteuerung und Computersystem mit derselben sowie Verfahren zur Steuerung eines Speichers | |
DE102008015544A1 (de) | Verfahren und Vorrichtung zur Kalibrierung der Schreibzeit in einem Speicher-System | |
DE112007002605T5 (de) | Speichersystem mit seriellem Hochgeschwindigkeitspuffer | |
DE60214992T2 (de) | Mehrbit-prefetch-ausgangsdatenweg | |
US6889335B2 (en) | Memory controller receiver circuitry with tri-state noise immunity | |
DE112004001660T5 (de) | Echotakt auf Speichersystem mit Warteinformationen | |
DE10235740A1 (de) | Register, das zum Korrespondieren mit einem Breitfrequenzband geeignet ist, und Signalerzeugungsverfahren, das dasselbe verwendet | |
DE60011629T2 (de) | Speicher mit mehrfachen datenraten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8127 | New person/name/address of the applicant |
Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE |
|
8364 | No opposition during term of opposition | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20121002 |