-
HINTERGRUND DER ERFINDUNG
-
1. Gebiet der Erfindung
-
Die
vorliegende Erfindung bezieht sich allgemein auf Halbleiter-Integrationsschaltungsspeicher, und
insbesondere auf einen Halbleiter-Integrationsschaltungsspeicher,
der synchron mit einem Takt arbeitet, und auf ein Verfahren zum
Steuern eines Datenbusses eines derartigen Halbleiter-Speichers.
-
In
letzter Zeit wurde es erforderlich, in Halbleiter-Speicheranordnungen
wie DRAM (dynamische Direktzugriffsspeicher)-Anordnungen in Übereinstimmung
mit der Beschleunigung von CPUs Daten mit höheren Frequenzen einzugeben
und daraus auszugeben, so dass die Datentransferrate erhöht werden kann.
-
Eine
SDRAM (synchrone DRAM)-Anordnung kann mit einer hohen Geschwindigkeit
synchron mit einem von der Außenseite
zugeführten Taktsignal
arbeiten.
-
2. Beschreibung der verwandten
Technik
-
Nun
erfolgt eine Beschreibung eines herkömmlichen Datenbus-Steuerverfahrens
für SDRAMs.
-
1 veranschaulicht
eine Schaltungskonfiguration einer Peripherie einer Speicherzelle
des SDRAM. Die in 1 gezeigte Schaltung enthält einen
Kondensator 201, NMOS (N-Kanal-Metalloxid-Halbleiter)-Transistoren 212, 223 und 224,
und PMOS (P-Kanal-MOS)-Transistoren 213, 221 und 222.
Die PMOS-Transistoren 221 und 222 und die NMOS-Transistoren 223 und 224 bilden
einen Leseverstärker 220.
-
Der
Kondensator 201, der eine Speicherzelle bildet, kann Ein-Bit-Daten
speichern. Die in dem Kondensator 201 gespeicherten Daten
werden wie folgt auf ein Paar von Datenbusleitungen DB und /DB gelesen.
-
Der
in 1 gezeigten Schaltung werden Taktsignale CK und
/CK, ein Steuersignal (R (Lesen) oder W (Schreiben); in diesem Fall
wird R verwendet), und Adressensignale (die eine Reihenadresse und
eine Spaltenadresse enthalten) zugeführt. Das Steuersignal R wird
innerhalb der SDRAM-Anordnung decodiert, und resultiert in einem
Reihenadressen-Strobe-Signal- /RAS
und einem Spaltenadressen-Strobe-Signal /CAS. Das Reihenadressen-Strobe-Signal
/RAS wählt
ein Reihensystem in einer Kernschaltung der SDRAM-Anordnung aus,
das heißt
eine Wortleitung. Das Spaltenadressen-Strobe-Signal /CAS wählt ein
Spaltensystem in der Kernschaltung aus, das heißt den in 1 gezeigten
Leseverstärker 220.
Die Kernschaltung hat eine Vielzahl von Speicherzellen, die in einer
Matrixformation angeordnet sind, und jede Spalte ist mit einem jeweiligen
Leseverstärker
wie dem Leseverstärker 220 versehen.
Daher kann der Leseverstärker 220 Daten abfühlen, die
aus den mit der ausgewählten
Wortleitung verbundenen Speicherzellen gelesen werden.
-
Wenn
das Signal /RAS eingegeben wird, wird ein Bitleitungs-Transfersignal
BLT0 auf einen Niederpegel geschaltet. Zu dieser Zeit ist ein Bitleitungs-Transfersignal
BLT1 auf einem Hochpegel, und die NMOS-Transistoren 203 und 204 sind
beide EIN. So werden die Bitleitungen BL und /BL mit dem Leseverstärker 220 verbunden.
Gleichzeitig wird ein Vorladesignal PR auf den Niederpegel geschaltet, und
die Bitleitung BL wird aus einem vorgeladenen Zustand freigegeben.
-
Ein
Sub-Wortleitungs-Auswahlsignal SW wird aktiviert und wird so auf
den Hochpegel eingestellt, so dass die entsprechende Wortleitung
ausgewählt
werden kann. Daher wird bewirkt, dass der NMOS-Transistor 202,
der als Zellen-Gate funktioniert, leitet, und die in dem Kondensator 201 gespeicherten
Daten werden daraus auf die Bitleitung BL gelesen.
-
Dann
werden Leseverstärker-Treibersignale SA1
und SA2 aktiviert, und so wird bewirkt, dass die NMOS-Transistoren 212 und 213 leiten.
In diesem Zustand werden jeweils die Datenstücke auf den Bitleitungen BL
und /BL vom Leseverstärker 220 über die
NMOS-Transistoren 203 und 204 gelesen. Der Leseverstärker 220 verstärkt die
Datenstücke
auf den Bitleitungen BL und /BL, so dass die Potentialdifferenz
(Amplitude) erhöht
werden kann.
-
Dann
wird ein Spaltenleitungs-Auswahlsignal CL durch das Signal /CAS
auf den Hochpegel geschaltet, und eine der Spalten wird ausgewählt. Die NMOS-Transistoren 210 und 211,
die als Spalten-Gates funktionieren, werden EIN geschaltet, und die
verstärkten
Datenstücke
auf den Bitleitungen BL und /BL werden jeweils auf die Datenbusleitungen DB
und /DB gelesen.
-
Danach
wird ein Vorladebefehl eingegeben, und ein Vorladesignal PR wird
zu einer geeigneten Zeiteinstellung auf den Hochpegel geschaltet.
So werden die NMOS-Transistoren 207, 208 und 209 EIN
geschaltet, und die Bitleitungen BL und /BL werden so auf ein gegebenen
Potential VPR vorgeladen. Daher werden die Bitleitungen BL und /BL
zurückgesetzt,
und sind bereit für
den Empfang des nächsten Steuersignals
(Lesen (R) oder Schreiben (W)).
-
Zur
Zeit des Schreibens von Daten in die ausgewählte Zelle wird die zur oben
angegebenen Lesesequenz umgekehrte Sequenz vorgenommen. Daher werden
Datenstücke
auf den Datenbusleitungen DB und /DB in dem Kondensator 201 gespeichert.
-
Nun
erfolgt mit Bezugnahme auf 2 bis 8 eine
Beschreibung einer Leseoperation und einer Schreiboperation des
herkömmlichen
SDRAM.
-
2 ist
ein Zeitdiagramm eines Betriebs, in dem Datenleseoperationen aufeinanderfolgend
in einer Einzelbank-Anordnung
oder in derselben Bank in einer Anordnung mit mehrfachen Bänken vorgenommen
werden. Es wird angenommen, dass Lesebefehle R0, R1 und R2, die
Steuersignale sind, jeweils voneinander verschiedene Wortleitungen
auswählen.
-
Um
Daten zu lesen, die sich auf eine andere Reihenadresse (andere Wortleitung)
in einer Bank beziehen, ist es notwendig, Daten von mit der ausgewählten Wortleitung
verbundenen Speicherzellen auf Paare von Bitleitungen BL und /BL
zu lesen, und so die Bitleitungen BL und /BL vor dem Lesen vorzuladen.
Daher ist es erforderlich, dass die Lesebefehle R0, R1 und R2 in
gegebenen Zeitintervallen tRC (beispielsweise gleich 22 ns) angelegt
werden. Daten, die ansprechend auf den Lesebefehl aus den Speicherzellen
gelesen werden, werden zu der Zeit (Zugriffszeit) tRAC (beispielsweise
gleich 32 ns) ausgegeben, die notwendig ist, damit Daten ausgegeben werden,
nachdem der Lesebefehl wie R0 eingegeben wird. Die obige Zeit kann
als Latenz definiert werden.
-
3 ist
ein Zeitdiagramm eines Betriebs, in dem Datenschreiboperationen
aufeinanderfolgend in dem herkömmlichen
SDRAM (der Einzelbank-Anordnung oder derselben Bank in der Anordnung
mit mehrfachen Bänken)
vorgenommen werden. Es wird angenommen, dass Schreibbefehle W0,
W1 und W2, die die Steuersignale sind, verschiedene Wortleitungen
auswählen.
-
Um
Daten in verschiedene Reihenadressen (verschiedene Wortleitungen)
in der Bank zu schreiben, wird das Paar von Bitleitungen BL und
/BL vorgeladen, und Datenstücke
auf den Bitleitungen BL und /BL werden in die von der aktivierten
Wortleitung ausgewählte
Speicherzelle geschrieben. In diesem Fall werden jedoch die Schreibbefehle
W0, W1 und W2 in Zeitintervallen tWC (beispielsweise gleich 32 ns)
eingegeben, die notwendig sind, um den Schreibbefehl zu akzeptieren.
Ferner werden Schreibdaten D01 und D02, Schreibdaten D11 und D12,
und Schreibdaten D21 und D22 in Zeitintervallen tWR (beispielsweise
gleich 22 ns) eingegeben, die notwendig sind, um Schreibdaten zu
akzeptieren.
-
4 ist
ein Zeitdiagramm eines Betriebs, in dem in dem herkömmlichen
SDRAM (der Einzelbank-Anordnung oder derselben Bank der Anordnung
mit mehrfachen Bänken)
eine Datenleseoperation vorgenommen wird, und anschließend eine
Datenschreiboperation vorgenommen wird.
-
Daten
Q01 und Q02, die vom Lesebefehl R0 gelesen werden, werden ausgegeben,
wenn die Zugriffszeit tRAC von 32 ns verstreicht, nachdem der Lesebefehl
R0 eingegeben wird, wie in dem in 2 gezeigten
Fall. Daher wird gestattet, dass der Schreibbefehl W0 und Schreibdaten
D01 und D02 eingegeben werden, nachdem die Datenleseoperation ansprechend
auf den Lesebefehl R0 vollendet ist.
-
5 ist
ein Zeitdiagramm eines Betriebs, in dem in dem herkömmlichen
SDRAM (im vorliegenden Fall in der Einzelbank-Anordnung) eine Datenschreiboperation
vorgenommen wird, und anschließend
eine Datenleseoperation vorgenommen wird.
-
Der
dem Schreibbefehl WO folgende Lesebefehl R0 wird eingegeben, wenn
das Zeitintervall tWC (beispielsweise gleich 32 ns), das notwendig
ist, um den nächsten
Befehl zu akzeptieren, und das Zeitintervall tWR (beispielsweise
gleich 22 ns) verstreichen, wie in dem in 3 gezeigten
Fall. Daten Q01 und Q02, die ansprechend auf den Lesebefehl R0 gelesen
werden, werden ausgegeben, wenn die Zugriffszeit tRAC von 32 ns
verstreicht, die notwendig ist, damit assoziierte Daten ansprechend
auf den Lesebefehl R0 gelesen werden, wie in dem in 2 gezeigten
Fall.
-
6 ist
ein Zeitdiagramm eines Betriebs, in dem in dem herkömmlichen
SDRAM (im vorliegenden Fall in der Anordnung mit mehrfachen Bänken) die
Datenleseoperationen seriell in Bezug auf verschiedene Bänke vorgenommen
werden. Es wird angenommen, dass Lesebefehle Ra, Rb, Rc und Rd, die
Steuersignale sind, sich jeweils auf die Bänke a, b, c und d be ziehende
Lesebefehle sind.
-
In
diesem Fall können
die Bänke
a–d unabhängig arbeiten,
wenn Daten auf die Bitleitungen BL und /BL in den jeweiligen Bänken a–d gelesen
werden. Daher können
die Lesebefehle Ra, Rb, Rc und Rd aufeinanderfolgend eingegeben
werden. Lesedaten werden ausgegeben, wenn die Zugriffszeit tRAC von
32 ns verstreicht, nachdem der entsprechende Lesebefehl eingegeben
wird. Beispielsweise werden Lesedaten Qa1 nach der Zugriffszeit
von 32 ns gelesen, die ab der Zeit beginnt, wenn der Lesebefehl
R0 eingegeben wird. Das heißt
es tritt eine Latenz auf, die aus dem Schaltungsbetrieb der Speicherzellenperipherie,
dem Betrieb des Leseverstärkers,
usw., resultiert. Wenn dieselben Lesebefehle, beispielsweise R0,
aufeinanderfolgend eingegeben werden (der erste und vierte Zyklus
in 6), ist es erforderlich, dieselben Lesebefehle
zumindest durch das Zeitintervall tRC (beispielsweise gleich 22
ns) voneinander zu trennen.
-
7 ist
ein Zeitdiagramm eines Betriebs, in dem die Datenschreiboperationen
seriell in Bezug auf verschiedene Bänke in der herkömmlichen SDRAM-Anordnung
(im vorliegenden Fall in der Anordnung mit mehrfachen Bänken) vorgenommen werden.
Es wird angenommen, dass Schreibbefehle Wa, Wb, Wc und Wd, die Steuersignale
sind, sich jeweils auf die Bänke
a, b, c und d beziehende Schreibefehle sind.
-
In
diesem Fall können
die Bänke
a–d unabhängig arbeiten,
wenn Daten in diese geschrieben werden. Daher können die Lesebefehle Ra, Rb,
Rc und Rd aufeinanderfolgend eingegeben werden. Schreibdaten werden
seriell zusammen mit den Schreibbefehlen Wa, Wb, Wc und Wd eingegeben. Wenn
dieselben Schreibbefehle, beispielsweise Wa, aufeinanderfolgend
eingegeben werden (der erste und fünfte Zyklus in 7),
ist es erforderlich, dieselben Schreibbefehle zumindest durch das
Zeitintervall tWC (beispielsweise gleich 32 ns) voneinander zu trennen.
-
8 ist
ein Zeitdiagramm eines Betriebs, in dem die Datenschreiboperation
und die Datenleseoperation seriell in dem herkömmlichen SDRAM (im vorliegenden
Fall in der Anordnung mit mehrfachen Bänken) vorgenommen werden.
-
Die
Datenschreib- und -leseoperationen entsprechen der Kombination der
in 6 und 7 gezeigten Operationen, und
die Operation des Befehls wird vollendet, und dann wird die Operation
des nächsten
Befehls vorgenommen.
-
Die
herkömmliche
Speicheranordnung, die die in 2 bis 5 gezeigten
Operationen vornimmt, hat jedoch die folgenden Nachteile.
-
In
dem in 2 gezeigten Fall, in dem die Datenleseoperationen
aufeinanderfolgend vorgenommen werden, kann der Lesebefehl R1 folgend auf
den Lesebefehl R0 nicht eingegeben werden, bis das Zeitintervall
tRC beispielsweise gleich 22 ns verstreicht, nachdem der Lesebefehl
R0 eingegeben wird. Ferner werden die Daten Q01 und Q02, die durch
den Lesebefehl R0 gelesen werden, ausgegeben, wenn die Zugriffszeit
tRAC von 32 ns verstreicht, nachdem der Lesebefehl R0 eingegeben wird.
Das heißt
die Latenz tritt auf, und der Datenbus ist während der Leer- oder Latenzperiode
von der Datenleseoperation besetzt.
-
In
dem in 3 gezeigten Fall, in dem die Datenschreiboperationen
aufeinanderfolgend vorgenommen werden, kann der Schreibbefehl W1
folgend auf den Schreibbefehl WO nicht eingegeben werden, bis das
Zeitintervall tWC beispielsweise gleich 32 ns verstreicht, nachdem
der Schreibbefehl WO eingegeben wird. Ferner können Schreibdaten D11 und D12, die
mit dem Schreibbefehl W1 assoziiert sind, nicht eingegeben werden,
bis das Zeitintervall tWR beispielsweise gleich 22 ns verstreicht,
nachdem Schreibdaten D01 und D02 eingegeben werden. Das heißt die Latenz
tritt auf, und der Datenbus ist während der Latenzperiode von
den Datenschreiboperationen besetzt.
-
In
dem in 4 gezeigten Fall, in dem die Datenschreiboperation
folgend auf die Datenleseoperation vorgenommen wird, kann der Schreibbefehl W1
nicht eingegeben werden, bis Lesedaten Q01 und Q02 ausgegeben werden,
wenn die Zugriffszeit tRAC von 32 ns verstreicht, nachdem der Lesebefehl R0
eingegeben wird. Das heißt,
der Datenbus ist während
der Latenzperiode gleich der Zugriffszeit von der Datenleseoperation
besetzt.
-
In
dem in 5 gezeigten Fall, in dem die Datenschreiboperation
vorgenommen wird, und anschließend
die Datenleseoperation vorgenommen wird, kann der Lesebefehl R0
nicht eingegeben werden, bis das Zeitintervall tWC beispielsweise
gleich 32 ns verstreicht, nachdem der Lesebefehl W0 eingegeben wird,
und bis das Zeitintervall tWR beispielsweise gleich 22 ns verstreicht,
nachdem die Schreibdaten D01 und D02 eingegeben werden. Daher ist der
Datenbus während
der Latenzperiode von der Schreiboperation besetzt.
-
In
den in 2 bis 5 gezeigten Fällen tritt
die Latenzperiode auf, während
welcher der Datenbus besetzt ist, wie oben beschrieben. Daher kann
die nächste
Operation nicht vorgenommen werden, bis die lange Latenzperiode
verstreicht. Dies verhindert eine Beschleunigung der Datenlese-
und -schreiboperationen.
-
Dieselben
Nachteile wie die oben beschriebenen treten bei den in 6 bis 8 beschriebenen
Operationen auf. Insbesondere in dem in 6 gezeigten
Fall, in dem die Datenleseoperationen seriell in Bezug auf verschiedene
Bänke vorgenommen werden,
werden Lesedaten ansprechend auf die Lesebefehle Ra, Rb, Rc und
Rd jeweils ausgegeben, wenn die Zugriffszeit tRAC von 32 ns verstreicht, nachdem
diese Befehle jeweils eingegeben werden. Daher ist der Datenbus
durch die Serie der Datenleseoperationen besetzt, bis die letzten
Lesedaten Qd1 und Qd2 ausgegeben werden, nachdem der Lesebefehl
Rd eingegeben wird.
-
In
dem in 7 gezeigten Fall, in dem die Datenschreiboperationen
in Bezug auf verschiedene Bänke
vorgenommen werden, ist der Datenbus durch die Serie von Datenschreiboperationen
besetzt, bis das Zeitintervall tWC beispielsweise gleich 32 ns ab
dem letzten Schreibbefehl Wa verstreicht, und bis das Zeitintervall
tWR beispielsweise gleich 22 ns verstreicht, nachdem Schreibdaten
Da1 und Da2 eingegeben werden.
-
In
dem in 8 gezeigten Fall, in dem die Schreib- und Leseoperationen
in Bezug auf verschiedene Bänke
vorgenommen werden, ist der Datenbus durch die Schreib- und Leseoperationen
besetzt, bis die letzten Lesedaten Qc1 und Qc2 ausgegeben werden,
nachdem der erste Schreibbefehl Wa eingegeben wird.
-
Die
in 6 bis 8 gezeigten Operationen sind
schneller als die in 2 bis 5 gezeigten,
haben jedoch insofern einen Nachteil, als der Datenbus durch jede
Operation besetzt wird. Daher ist es weiterhin erforderlich, die
Datenlese- und -schreiboperationen zu beschleunigen.
-
Die
US-5 367 494-A offenbart einen Halbleiter-Integrationsschaltungsspeicher
mit zumindest einer Bank, wobei die oder jede Bank zumindest ein Speicherzellen-Array
aufweist und mit einem ersten Datenbus verbunden ist, welcher Speicher
ferner eine Steuereinrichtung zum Empfangen eines Schreibbefehls
und eines Lesebefehls und zum Steuern einer Datenschreib- oder -leseoperation
an einer entsprechenden Bank umfasst. Die oben angegebenen Probleme
entstehen in dieser Anordnung jedoch nicht, da die Bänke keinen
gemeinsamen Datenbus nutzen.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Es
ist eine allgemeine Aufgabe der vorliegenden Erfindung, einen Halbleiter-Integrationsschaltungsspeicher
und ein Datenbus-Steuerverfahren für diesen vorzusehen, bei denen
die obigen Nachteile eliminiert werden.
-
Eine
spezifischere Aufgabe der vorliegenden Erfindung ist, den Datenbus
effizienter zu nutzen, und so die Datenschreib- und -leseoperationen
zu beschleunigen.
-
Gemäß einem
ersten Aspekt der vorliegenden Erfindung ist ein Halbleiter-Integrationsschaltungsspeicher
vorgesehen, mit zumindest zwei Bänken,
wobei jede Bank zumindest ein Speicherzellen-Array aufweist und
mit einem ersten Datenbus verbunden ist, der von jeder der zumindest
zwei Bänke
gemeinsam genutzt wird, welcher Speicher ferner Steuereinrichtungen
zum Empfangen von durch einen Befehl angezeigten Informationen und
zum Steuern eines Datenschreib- oder
eines externen Lesebetriebs an einer entsprechenden Bank umfasst; dadurch
gekennzeichnet, dass die Steuereinrichtungen Steuerteile umfassen,
die jeweils in jeder Bank vorgesehen sind, wobei jeder Steuerteil
betreibbar ist, einen Datentransfer für den Datenschreibbetrieb über den
ersten Datenbus für
eine Latenzperiode zu gestatten, die vom Empfang eines Lesebefehls
an eine der Bänke
bis zu einer Ausgabe von Daten an den ersten Datenbus von der Bank,
die den Lesebefehl empfangen hat, verläuft.
-
Gemäß einem
zweiten Aspekt der vorliegenden Erfindung ist ein Datenbus-Steuerverfahren
vorgesehen, für
einen Halbleiter-Integrationsschaltungsspeicher mit zumindest zwei
Bänken,
wobei jede Bank zumindest ein Speicherzellen-Array aufweist und
mit einem ersten Datenbus verbunden ist, der von jeder der zumindest
zwei Bänke
gemeinsam genutzt wird; dadurch gekennzeichnet, dass das Verfahren
den Schritt umfasst: (a) in Übereinstimmung mit
einem von einer Bank empfangenen Befehl, Gestatten eines Datentransfers
für den
Datenschreibbetrieb über
den ersten Datenbus für
eine Latenzperiode, die vom Empfang eines externen Lesebefehls an eine
der Bänke
bis zu einer Ausgabe von Daten an den ersten Datenbus von der Bank,
die den Lesebefehl empfangen hat, verläuft.
-
KURZE BESCHREIBUNG DER
ZEICHNUNGEN
-
Andere
Ziele, Merkmale und Vorteile der vorliegenden Erfindung werden durch
die folgende detaillierte Beschreibung besser verständlich,
die in Verbindung mit den beigeschlossenen Zeichnungen zu lesen
ist, in denen:
-
1 ein
Schaltbild einer Speicherzelle und ihrer peripheren Schaltungen
ist;
-
2 ein
Zeitdiagramm einer herkömmlichen
Datenleseoperation ist;
-
3 ein
Zeitdiagramm einer herkömmlichen
Datenschreiboperation ist;
-
4 ein
Zeitdiagramm herkömmlicher
Datenlese- und -schreiboperationen ist;
-
5 ein
Zeitdiagramm herkömmlicher
Datenlese- und -schreiboperationen ist;
-
6 ein
Zeitdiagramm einer herkömmlichen
Datenleseoperation ist;
-
7 ein
Zeitdiagramm einer herkömmlichen
Datenschreiboperation ist;
-
8 ein
Zeitdiagramm herkömmlicher
Datenlese- und -schreiboperationen ist;
-
9 ein
Blockbild eines Halbleiter-Integrationsschaltungsspeichers gemäß einer
ersten Ausführungsform
der vorliegenden Erfindung ist;
-
10 ein
Blockbild eines Halbleiter-Integrationsschaltungsspeichers gemäß einer
zweiten Ausführungsform
der vorliegenden Erfindung ist;
-
11 ein
Blockbild eines Halbleiter-Integrationsschaltungsspeichers gemäß einer
dritten Ausführungsform
der vorliegenden Erfindung ist;
-
12 ein
Blockbild einer Variation der in 11 gezeigten
Konfiguration ist;
-
13 ein
Blockbild eines Halbleiter-Integrationsschaltungsspeichers ist,
der die vorliegende Erfindung nicht verkörpert;
-
14 ein
Blockbild eines Halbleiter-Integrationsschaltungsspeichers ist,
der die vorliegende Erfindung nicht verkörpert;
-
15 ein
Blockbild eines Halbleiter-Integrationsschaltungsspeichers ist,
der die vorliegende Erfindung nicht verkörpert;
-
16 ein
Blockbild eines Halbleiter-Integrationsschaltungsspeichers ist,
der die vorliegende Erfindung nicht verkörpert;
-
17 ein
Zeitdiagramm von Datenlese- und -schreiboperationen in den Speichern
der Ausführungsformen
der vorliegenden Erfindung ist;
-
18 ein
Zeitdiagramm von Datenlese- und -schreiboperationen in den Speichern
der Ausführungsformen
der vorliegenden Erfindung ist;
-
19 ein
Zeitdiagramm von Datenlese- und -schreiboperationen in den Speichern
der Ausführungsformen
der vorliegenden Erfindung ist;
-
20 ein
Zeitdiagramm von Datenlese- und -schreiboperationen in den Speichern
der Ausführungsformen
der vorliegenden Erfindung ist;
-
21 ein
Zeitdiagramm von Datenlese- und -schreiboperationen in den Speichern
der Ausführungsformen
der vorliegenden Erfindung ist;
-
22 ein
Zeitdiagramm von Datenlese- und -schreib operationen in den Speichern
der Ausführungsformen
der vorliegenden Erfindung ist;
-
23 ein
Zeitdiagramm von Datenlese- und -schreiboperationen in den Speichern
der Ausführungsformen
der vorliegenden Erfindung ist;
-
24 ein
Blockbild einer Struktur eines SDRAM ist, der durch die vorliegende
Erfindung konfiguriert wird;
-
25 ein
Blockbild eines in 24 gezeigten Parallel-Seriell-Wandlers
ist;
-
26 den
möglichen
Status von Schaltern einer in 25 gezeigten
Datenbus-Schaltereinheit zeigt;
-
27 ein
Zeitdiagramm ist, das Operationen einer in 25 gezeigten
ersten und zweiten Registereinheit zeigt;
-
28 ein
Zeitdiagramm einer Operation eines Schaltungsteils zwischen einem
4-2-Wandler und einer Verriegelungsschaltung zeigt, die in 25 gezeigt
sind;
-
29A und 29B Beziehungen
zwischen vier Steuertaktsignalen und zwei Ausgangssteuertaktsignalen
zeigt;
-
30 ein
Blockbild eines in 24 gezeigten Seriell-Parallel-Wandlers
ist;
-
31 ein
Zeitdiagramm einer Operation der Variation der dritten Ausführungsform
der vorliegenden Erfindung bis siebenten Ausführungsform davon ist;
-
32 ein
Zeitdiagramm einer Operation der Variation der dritten Ausführungsform
der vorliegenden Erfindung bis siebenten Ausführungsform davon ist;
-
33 ein
Blockbild eines in 24 gezeigten Lese/Schreibpuffers
ist;
-
34 ein
Blockbild eines in 24 und 33 gezeigten
Controllers ist; und
-
35 ein
Zeitdiagramm einer Operation der in 33 und 34 gezeigten
Konfigurationen ist.
-
BESCHREIBUNG DER BEVORZUGTEN
AUSFÜHRUNGSFORMEN
-
9 ist
ein Blockbild eines Halbleiter-Integrationsschaltungsspeichers gemäß einer
ersten Ausführungsform
der vorliegenden Erfindung.
-
Der
in 9 gezeigte Speicher enthält einen Befehlseingabeteil 1,
einen Adresseneingabeteil 2, einen Befehlsdecoder 3,
Bänke 4 und 24,
einen Seriell-Parallel (S/P)-Wandler 5, einen Parallel-Seriell (P/S)-Wandler 6,
und einen Dateneingabe/ausgabeteil 7. Die Bänke 4 und 24 sind
mit dem Dateneingabe/ausgabeteil 7 durch einen gemeinsamen
peripheren oder internen Datenbus 200 verbunden. Der Eingabe/Ausgabeteil 7 ist
mit einem externen oder globalen Datenbus 300 verbunden.
Der Leseverstärker 13 und
der Eingabe/Ausgabe-Datenverriegelungsteil 14 sind
durch einen Kerndatenbus 400 miteinander verbunden. Ähnlich sind
der Leseverstärker 33 und der
Eingabe/Ausgabe-Datenverriegelungsteil 34 durch einen Kerndatenbus 440 miteinander
verbunden. Gemäß der ersten
Ausführungsform
der vorliegenden Erfindung wird eine Datenschreiboperation vorgenommen,
indem die Latenzperiode genutzt wird, die daraus resultiert, dass
eine Datenleseoperation vorgenommen wird.
-
Die
in der ersten Ausführungsform
der vorliegenden Erfindung verwendeten Speicherzellen haben eine
Zellenstruktur des DRAM-Typs. Die Speicherzellen sind in einer Matrixformation
angeordnet und sind in Speicherzellen-Array-Teilen 12 und 32 der
Bänke 4 und 24 enthalten.
Die Speicherzellen-Array-Teile 12 und 32 enthalten
jeweils Leseverstärker.
-
Der
Befehlseingabeteil 1 empfängt von der Außenseite
des Speichers zugeführte
Befehle, wie einen Lesebefehl und einen Schreibbefehl. Der Adresseneingabeteil 2 empfängt eine
von der Außenseite
des Speichers zugeführte
Speicheradresse. Der Befehlsdecoder 3 decodiert den extern
zugeführten
Befehl, und ein decodierter Befehl wird an die Steuerteile 8 und 28 der
Bänke 4 und 24 angelegt. Der
S/P-Wandler 5 konvertiert Schreibdaten, die über den
Dateneingabe/ausgabeteil 7 in serieller Formation eingegeben
werden, in parallele Daten, die den Bänken 4 und 24 zugeführt werden.
Der P/S-Wandler 6 konvertiert aus den Bänken 4 und 24 gelesene
parallele Daten in serielle Daten, die dann an die Außenseite
des Speichers über
den Dateneingabe/ausgabeteil 7 ausgegeben werden.
-
Die
Bank 4 enthält,
zusätzlich
zu dem Steuerteil 8 und dem Speicherzellen-Array 12,
einen Adressenverriegelungsteil 9, einen Spaltendecoder 10,
einen Reihendecoder 11, einen Leseverstärkerteil 13, der eine
Vielzahl von Leseverstärkern
enthält, einen
Eingabe/Ausgabe-Datenverriegelungsteil 14. Der Adressenverriegelungsteil 9 decodiert
die Adresse vom Adresseneingabeteil 2, und verriegelt die
entsprechende Adresse. Der Reihendecoder 11 generiert ein
Wortleitungs-Auswahlsignal,
das Speicherzellen auswählt,
die mit einer von der decodierten Adresse spezifizierten Reihe verbunden
sind. Der Leseverstärkerteil 13 empfängt und
hält, in
den eingebauten Leseverstärkern,
Daten, die aus den durch das Wortleitungs-Auswahlsignal ausgewählten Speicherzellen
in dem Speicherzellen-Array-Teil 12 gelesen werden. Der
Spaltendecoder 10 generiert ein Spaltenleitungs-Auswahlsignal,
das einen spezifischen Leseverstärker
unter den Leseverstärkern
des Leseverstärkerteils 13 auswählt. Der
Eingabe/Ausgabe-Datenverriegelungsteil 14 verriegelt Lesedaten,
die von dem Spaltenleitungs-Auswahlsignal ausgewählt werden, und Schreibdaten,
die extern zugeführt
werden. Der Steuerteil 8 speichert den decodierten Befehlszustand
und steuert die Datenleseoperation und die Datenschreiboperation
der Bank 4, welche Operationen unabhängig von jenen der Bank 24 vorgenommen
werden können.
-
Die
Bank 24 enthält,
zusätzlich
zu dem oben angegebenen Steuerteil 28 und dem Speicherzellen-Array-Teil 32,
einen Adressenverriegelungsteil 29, einen Spaltendecoder 30,
einen Reihendecoder 31, einen Leseverstärkerteil 32, und einen
Eingabe/Ausgabe-Datenverriegelungsteil 34, welche Strukturelemente
gleich sind wie die entsprechenden Elemente der Bank 4.
-
Obwohl
der in 9 gezeigte Speicher zwei Bänke 4 und 24 enthält, kann
er mehr als zwei Bänke enthalten.
-
Nun
erfolgt eine Beschreibung von Betrieben des Speichers gemäß der ersten
Ausführungsform der
vorliegenden Erfindung.
-
17 ist
ein Zeitdiagramm eines Betriebs, in dem eine Datenschreiboperation,
während
der Latenzperiode, die daraus resultiert, dass eine Datenleseoperation
an einer Bank (beispielsweise Bank 4) ausgeführt wird,
in Bezug auf dieselbe Bank vorgenommen wird, wie oben beschrieben.
Es wird angenommen, dass sich ein Lesebefehl R0 und ein Schreibbefehl
WO auf dieselbe Bank (beispielsweise Bank 4) beziehen.
-
Wenn
Daten aus dem Speicherzellen-Array 12 der Bank 4 gelesen
werden, werden Daten aus den mit der ausgewählten Wortleitung verbundenen Speicherzellen
auf die Bitleitungen BL und /BL neu ausgelesen. Aus den Speicherzellen
gelesene Daten Q01 und Q02 werden zum externen Datenbus 300 ausgegeben
(9), wenn die Zugriffszeit tRAC beispielsweise
gleich 32 ns verstreicht, nachdem der Lesebefehl R0 an einem Änderungspunkt
oder zur Zeit 0 des Takts CK (und Takts /CK) verriegelt wird. Die Zugriffszeit
gleich 32 ns ist eine Latenz, die aus der Befehlsdecodieroperation
durch den Befehlsdecoder 3, den Schaltungsoperationen der
Speicherzellenperipherie (insbesondere die Adressenverriegelungsschaltung 9,
der Steuerteil 8, der Spaltendecoder 10, der Reihendecoder 11 und
das Speicherzellen-Array 12) und der Opera tion des Leseverstärkerteils 13 resultiert.
-
Es
ist erforderlich, die Bitleitungen BL und /BL vorzuladen, bevor
der nächste
Befehl eingegeben wird. Daher wird der nächste Befehl eingegeben, wenn
das Zeitintervall tRC von beispielsweise 22 ns verstreicht, nachdem
der Lesebefehl R0 am Taktänderungspunkt
0 eingegeben wird. Das heißt,
der Schreibbefehl WO folgend auf den Lesebefehl R0 wird an einem
Taktänderungspunkt
6 verriegelt, und Daten D01 und D02 werden seriell verriegelt. Es
ist zu beachten, dass die herkömmliche
SDRAM-Anordnung keine Steuerteile aufweist, die jeweils für die Bänke vorgesehen
sind, sondern einen für
die Bänke gemeinsamen
einzelnen Steuerteil hat. Daher verwendet die herkömmliche
SDRAM-Anordnung den Datenbus in einer Zeitteilungsformation für jede Operation,
wie die Lese- oder Schreiboperation. Der externe Datenbus 300 ist
beispielsweise von der Datenleseoperation besetzt, solange die Datenleseoperation
läuft,
das heißt
bis die Daten Q01 und Q02 vollständig
ausgegeben sind.
-
Im
Gegensatz dazu haben die Bänke 4 und 24 die
jeweiligen Steuerteile 8 und 28. Sogar bevor die
Lesedaten Q01 und Q02 an die Außenseite
des Speichers ausgegeben werden (das heißt die Leseoperation läuft), kann
die Datenschreiboperation unter der Steuerung des Steuerteils 8 vorgenommen
werden, der den Eingabe/Ausgabe-Datenverriegelungsteil 14,
den S/P-Wandler 5, den P/S-Wandler 6 und den Dateneingabe/ausgabeteil 7 steuert.
Insbesondere werden die folgenden Operationen während der Latenzperiode vorgenommen,
die Taktänderungspunkte
oder die Zeiten 6–8
enthält.
Zuerst wird ein in dem Dateneingabe/ausgabeteil 7 eingebauter
Eingabepuffer freigegeben. Als Zweites wird der Ausgang des S/P-Wandlers 5 freigegeben
(EIN). Als Drittes wird der Ausgang des P/S-Wandlers 6 gesperrt (AUS).
Ferner werden Schreibdaten D01 und D02 in der Eingabe/Ausgabe-Datenverriegelungs schaltung 14 verriegelt.
Daher können
Daten D01 und D02 in den Speicherzellen-Array-Teil 12 geschrieben
werden, indem die Latenzperiode genutzt wird.
-
Daher
können
die Datenleseoperation und die Datenschreiboperation gleichzeitig
vorgenommen werden. Mit anderen Worten, die Datenschreiboperation
wird innerhalb der Zeit vorgenommen, die für die Datenleseoperation notwendig
ist. Daher ist es möglich,
den externen Datenbus 300 effizient zu nutzen, und die
gesamte Lese- und Schreiboperationszeit zu reduzieren.
-
18 ist
ein Zeitdiagramm eines Betriebs, in dem Datenleseoperationen aufeinanderfolgend
in Bezug auf die Bänke
a und b vorgenommen werden, und eine Datenschreiboperation in Bezug
auf eine andere Bank als die Bänke
a und b (Bank c genannt) vorgenommen wird, indem die Latenzperioden
genutzt werden, die aus sich auf die Bänke a und b beziehenden Datenleseoperationen
resultieren.
-
Ein
sich auf eine Bank a beziehender Lesebefehl Ra und ein sich auf
die Bank b beziehender Lesebefehl werden aufeinanderfolgend eingegeben. Die
Lesebefehle Ra und Rb werden an Taktänderungspunkten 0 bzw. 2 verriegelt.
Um Daten aus den Speicherzellen-Array-Teilen der Bänke a und
b zu lesen, ist es notwendig, Daten aus den ausgewählten Speicherzellen
neu auf die Bitleitungen BL und /BL zu lesen, wie in dem in 17 gezeigten
Fall. Lesedaten Qa1, Qa2, Qb1 und Qb2 werden jeweils zum externen
Datenbus 300 ausgegeben, wenn die Zugriffszeit tRAC von
beispielsweise 32 ns verstreicht, nachdem die Lesebefehle
Ra und Rb verriegelt werden. Das heißt, es bestehen die Latenzperioden,
die aus den Lesebefehlen Ra und Rb resultieren.
-
In
dem in 18 gezeigten Betrieb sind jedoch
die Befehle Ra, Rb und Wc auf die voneinander verschiedenen Bänke a, b
und c gerichtet. Die Bitleitungen BL und /BL in jeder Bank wurden
vorgeladen, wenn der nächste
Befehl eingegeben wird. Daher kann der nächste Befehl eingegeben werden,
unmittelbar nachdem der Lesebefehl an dem Taktänderungspunkt 0 des Takts CK
(/CK) verriegelt wird.
-
Insbesondere
wird der Lesebefehl R0 am Taktänderungspunkt
0 verriegelt, und der Lesebefehl Rb wird am Taktänderungspunkt 2 verriegelt. Schließlich wird
der Schreibbefehl Wc am Taktänderungspunkt
4 verriegelt. Danach werden Daten Dc1 und Dc2 verriegelt.
-
In
dem herkömmlichen
Speicher ist der externe Datenbus durch die Leseoperationen besetzt, bis
Daten durch die Leseoperationen vollständig auf den externen Datenbus
gelesen sind, auch wenn der nächste
Schreibbefehl in Bezug auf eine andere Bank als die Bänke vorgenommen
wird, die den Leseoperationen unterworfen sind. Das heißt, der
externe Datenbus ist durch die Leseoperationen besetzt, und die
Schreiboperation kann nicht vorgenommen werden, bis Daten Qa1, Qa2,
Qb1 und Qb2 zum externen Datenbus ausgegeben werden.
-
Im
Gegensatz dazu kann, in dem in 18 gezeigten
Betrieb, der Steuerteil der Bank c den Eingabe/Ausgabe-Datenverriegelungsteil
der Bank c, den S/P-Wandler 5, den P/S-Wandler 6 und den Dateneingabe/ausgabeteil 7 steuern,
und er nimmt die Datenschreiboperation vor, sogar bevor Daten durch die
vorhergehenden Lesebefehle auf den externen Datenbus 300 gelesen
werden. Insbesondere werden die folgenden Operationen während der
Periode vorgenommen, die die Taktänderungspunkte 4–6 enthält. Der
Eingabepuffer des Dateneingabe/ausgabeteils 7 wird freigegeben.
Der Ausgang des S/P-Wandlers 5 wird EIN geschaltet. Der
Ausgang des P/S-Wandlers 6 wird AUS geschaltet. Schreibdaten
Dc1 und Dc2 werden in dem Eingabe/Ausgabe-Datenverriegelungsteil
der Bank c verriegelt.
-
Daher
können
die Datenleseoperationen und die Daten schreiboperation gleichzeitig
vorgenommen werden. Mit anderen Worten, die Datenschreiboperation
wird in der für
die Datenleseoperationen notwendigen Zeit vorgenommen. Daher ist
es möglich,
den externen Datenbus 300 effizient zu nutzen, und die
gesamte Lese- und Schreiboperationszeit zu reduzieren.
-
19 ist
ein Zeitdiagramm eines Betriebs, in dem eine Datenleseoperation
an der Bank a vorgenommen wird, und die Datenschreiboperationen
aufeinanderfolgend in Bezug auf andere Bänke als die Bank a (beispielsweise
die Bänke
b und c) vorgenommen werden, indem die Latenzperiode genutzt wird,
die aus der obigen Datenleseoperation resultiert.
-
Der
Lesebefehl Ra für
die Bank a wird eingegeben, und wird am Taktänderungspunkt 0 verriegelt. Um
in dem Speicherzellen-Array-Teil der Bank a gespeicherte Daten zu
lesen, ist es notwendig, in den ausgewählten Speicherzellen gespeicherte
Daten neu auf die Bitleitungen BL und /BL zu lesen, wie in dem in 17 gezeigten
Fall. Lesedaten Qa1 und Qa2 werden nach der gegebenen Zeit zum externen Datenbus 300 ausgegeben.
Das heißt,
es besteht die aus der Leseoperation resultierende Latenz aufgrund derselben
Faktoren wie jener des in 17 gezeigten
Falls.
-
Da
in dem in 19 gezeigten Fall die Datenleseoperation
und die Datenschreiboperation in Bezug auf unterschiedliche Bänke vorgenommen werden,
kann der nächste
Befehl eingegeben werden, unmittelbar nachdem der Lesebefehl Ra
am Taktänderungspunkt
0 verriegelt wird, wie in dem in 18 gezeigten
Fall.
-
Daher
wird der Lesebefehl Ra am Taktänderungspunkt
0 verriegelt, und der Schreibbefehl Wb und assoziierte Daten Db1
und Db2 werden am Taktänderungspunkt
2 verriegelt. Schließlich
werden der Schreibbefehl Wc und assoziierte Schreibdaten Dc1 und
Dc2 am Taktänderungspunkt
4 verriegelt.
-
In
dem herkömmlichen
SDRAM wird der externe Datenbus exklusiv von der Leseoperation genutzt,
bis die Lesedaten Qa1 und Qa2 zum externen Datenbus ausgegeben werden.
Daher kann die Schreiboperation nicht vorgenommen werden, bis die
Leseoperation vollendet ist, auch wenn die Schreiboperation auf
eine Bank gerichtet ist, welche von der Bank verschieden ist, die
der Leseoperation unterworfen ist.
-
Im
Gegensatz dazu steuern gemäß der vorliegenden
Erfindung die Steuerteile der Bänke
b und c die jeweiligen Eingabe/Ausgabe-Datenverriegelungsteile,
den S/P-Wandler 5, den P/S-Wandler 6 und den Dateneingabe/ausgabeteil 7,
sogar während die
vorhergehende Datenschreiboperation läuft. Insbesondere werden die
folgenden Operationen während
der Latenzperiode vorgenommen, die die Taktänderungspunkte 2–6 enthält. Der
Eingabepuffer des Dateneingabe/ausgabeteils 7 wird freigegeben. Der
Ausgang des S/P-Wandlers 5 wird EIN geschaltet, wohingegen
der Ausgang des P/S-Wandlers 6 AUS geschaltet wird. Die
Schreibdaten Db1 und Db2 werden in dem Eingabe/Ausgabe-Datenverriegelungsteil
der Bank b verriegelt, und die Schreibdaten Dc1 und Dc2 werden in
dem Eingabe/Ausgabe-Datenverriegelungsteil der Bank c verriegelt.
-
Daher
können
die Datenleseoperationen und die Datenschreiboperation gleichzeitig
vorgenommen werden. Mit anderen Worten, die Datenschreiboperation
wird innerhalb der für
die Datenleseoperationen notwendigen Zeit vorgenommen. Daher ist es
möglich,
den externen Datenbus effizient zu nutzen, und die gesamte Lese-
und Schreiboperationszeit zu reduzieren.
-
20 ist
ein Zeitdiagramm eines Betriebs, in dem eine Datenschreiboperation
an der Bank a und nachfolgende Datenleseoperationen an den Bänken b und
c vorgenommen werden, und eine Datenschreiboperation an einer anderen
Bank als den Bänken
a–c vorgenommen
wird, indem die aus den Da tenleseoperationen resultierenden Latenzperioden
genutzt werden.
-
Der
Schreibbefehl Wa in Bezug auf die Bank a wird eingegeben und wird
am Taktänderungspunkt 0
verriegelt. Dann werden die Lesebefehle Rb und Rc in Bezug auf die
Bänke b
und c an den Taktänderungspunkten
2 bzw. 4 verriegelt. Um die in den Speicherzellen-Array-Teilen der
Bank b und c gespeicherten Daten auf den externen Datenbus 300 zu
lesen, ist es notwendig, wie in dem in 17 gezeigten
Fall, die Daten aus den ausgewählten
Speicherzellen neu auf die Bitleitungen BL und /BL zu lesen. Lesedaten Qb1,
Qb2, Qc1 und Qc2 werden zum externen Datenbus 300 ausgegeben,
nachdem die gegebenen Zeitintervalle verstreichen.
-
In
dem in 20 gezeigten Fall werden die Datenleseoperation
und die Datenschreiboperation mit den unterschiedlichen Bänken vorgenommen. Daher
kann der nächste
Befehl eingegeben werden, unmittelbar nachdem der Schreibbefehl
Wa am Taktänderungspunkt
0 verriegelt wird. Insbesondere werden der Schreibbefehl Wa und
assoziierte Daten Da1 und Da2 am Taktänderungspunkt 0 verriegelt, und
der Lesebefehl Rb wird am Taktänderungspunkt 2
verriegelt. Anschließend
wird der Lesebefehl Rc am Taktänderungspunkt
4 verriegelt. In dem in 20 gezeigten
Fall werden aus den vorigen Lesebefehlen (in 20 nicht
gezeigt) resultierende Lesedaten Qc1, Qc2, Qd1 und Qd2 zwischen
dem Taktänderungspunkt
3 und dem Taktänderungspunkt
7 ausgegeben. Daher werden der Schreibbefehl Wd und assoziierte
Schreibdaten Dd1 und Dd2 am Taktänderungspunkt
8 verriegelt, wenn das Lesen der Daten Qc1, Qc2, Qd1 und Qd2 vollendet
wurde.
-
In
dem herkömmlichen
SDRAM wird der externe Datenbus exklusiv verwendet, und der Schreibbefehl
Wd kann nicht eingegeben werden, bis die Lesedaten Qb1, Qb2, Qc1
und Qc2 vollständig
zum externen Datenbus ausgegeben werden, auch wenn der obige Schreibbefehl
auf eine andere Bank als die in die Leseoperationen involvierten
Bänke gerichtet ist.
-
Im
Gegensatz dazu steuert gemäß der vorliegenden
Erfindung der Steuerteil der Bank d den Eingabe/Ausgabe-Datenverriegelungsteil
der Bank d, den S/P-Wandler 5, den P/S-Wandler 6 und
den Dateneingabe/ausgabeteil 7 und ermöglicht es, die Schreiboperation
vorzunehmen, sogar bevor die Lesedaten Qb1, Qb2, Qc1 und Qc2 zum
externen Datenbus 300 ausgegeben werden. Insbesondere werden
die folgenden Operationen während
der Latenzperioden vorgenommen, die die Taktänderungspunkte 8–10 enthalten.
Der Eingabepuffer des Dateneingabe/ausgabeteils 7 wird
freigegeben. Der Ausgang des S/P-Wandlers 5 wird
EIN geschaltet, und der Ausgang des P/S-Wandlers 6 wird AUS geschaltet. Daher
werden die Schreibdaten Dd1 und Dd2 in dem Eingabe/Ausgabe-Datenverriegelungsteil
der Bank d verriegelt.
-
Daher
können
die Datenleseoperationen und die Datenschreiboperation gleichzeitig
vorgenommen werden. Mit anderen Worten, die Datenschreiboperation
wird innerhalb der für
die Datenleseoperationen notwendigen Zeit vorgenommen. Daher ist es
möglich,
den externen Datenbus effizient zu nutzen, und die gesamte Lese-
und Schreiboperationszeit zu reduzieren.
-
21 ist
ein Zeitdiagramm eines Betriebs, in dem Datenschreiboperationen
in Bezug auf die Bänke
a und b und eine Datenleseoperation in Bezug auf die Bank c seriell
vorgenommen werden, und eine Datenschreiboperation anschließend in
Bezug auf die von den Bänken
a–c verschiedene
Bank d vorgenommen wird.
-
Die
Schreibbefehle Wa und Wb in Bezug auf die Bänke a und b werden seriell
eingegeben und werden an den Taktänderungspunkten 0 bzw. 2 verriegelt.
Der Lesebefehl Rc in Bezug auf die Bank c wird eingegeben und wird
am Taktänderungs punkt
4 verriegelt. Um die in dem Speicherzellen-Array-Teil der Bank c
gespeicherten Daten zu lesen, ist es notwendig, wie in dem in 17 gezeigten
Fall, Daten aus den ausgewählten
Speicherzellen neu auf die Bitleitungen BL und /BL zu lesen. Lesedaten
Qc1 und Qc2 werden zum externen Datenbus 300 nach der gegebenen
Zeit, die in der Latenz resultiert, ausgegeben.
-
In
dem in 21 gezeigten Fall werden die Datenleseoperation
und die Datenschreiboperation jeweils in Bezug auf die unterschiedlichen
Bänke durchgeführt. Daher
kann, wie in dem in 18 gezeigten Fall, der nächste Befehl
eingegeben werden, unmittelbar nachdem der Schreibbefehl Wa am Taktänderungspunkt
0 verriegelt wird.
-
Insbesondere
werden der Schreibbefehl Wa und assoziierte Schreibdaten Da1 und
Da2 am Taktänderungspunkt
0 verriegelt. Anschließend
werden der Schreibbefehl Wd und assoziierte Schreibdaten Db1 und
Db2 am Taktänderungspunkt
2 verriegelt. Dann wird der Lesebefehl Rc am Taktänderungspunkt
4 verriegelt. Während
der Periode zwischen den Zeiten 5 und 7 ist der externe Datenbus 300 von
Lesedaten Qd1 und Qd2 besetzt, die ansprechend auf einen vorhergehenden
Lesebefehl (nicht gezeigt) gelesen werden. So werden am Taktänderungspunkt
8 der Schreibbefehl Wd und assoziierte Daten Da1 und Da2 verriegelt.
-
In
dem herkömmlichen
SDRAM ist der externe Datenbus von der Leseoperation besetzt, bis
die assoziierten Lesedaten Qc1 und Qc2 zum externen Datenbus ausgegeben
werden. Sogar bevor die Lesedaten Qc1 und Qc2 zum externen Datenbus 300 ausgegeben
werden, steuern im Gegensatz dazu die Steuerteile der Bänke d und
a getrennt die jeweiligen Eingabe/Ausgabe-Datenverriegelungsteile, den S/P-Wandler 5,
den P/S-Wandler 6 und den Dateneingabe/ausgabeteil 7,
und nehmen die jeweiligen Datenschreiboperationen vor. Insbesondere
werden die folgenden Operationen unter Verwendung der die Taktänderungspunkte
8–12 enthaltenen
Latenzperiode vorgenommen. Der Eingabepuffer des Dateneingabe/ausgabeteils
wird freigegeben. Der Ausgang des S/P-Wandlers 5 wird EIN
geschaltet, und der Ausgang des P/S-Wandlers 6 wird AUS
geschaltet. Dann werden die Schreibdaten Dd1 und Dd2 in den Eingabe/Ausgabe-Datenverriegelungsteil
der Bank d geschrieben, und die Schreibdaten Da1 und Da2 werden
in den Eingabe/Ausgabe-Datenverriegelungsteil
der Bank a geschrieben.
-
Daher
können
die Datenleseoperationen und die Datenschreiboperation gleichzeitig
vorgenommen werden. Mit anderen Worten, die Datenschreiboperation
wird innerhalb der für
die Datenleseoperationen notwendigen Zeit vorgenommen. Daher ist es
möglich,
den externen Datenbus effizient zu nutzen, und die gesamte Lese-
und Schreiboperationszeit zu reduzieren.
-
22 ist
ein Zeitdiagramm eines Betriebs, in dem Datenleseoperationen in
Bezug auf die Bänke a
und b vorgenommen werden, und Datenschreiboperationen aufeinanderfolgend
in Bezug auf andere Bänke
c und d vorgenommen werden, indem die Latenzperioden genutzt werden,
die aus den Datenleseoperationen resultieren.
-
Die
Lesebefehle Ra und Rb in Bezug auf die Bänke a und b werden seriell
eingegeben, und werden dann an den Taktänderungspunkten 0 bzw. 2 verriegelt.
Um die in den Speicherzellen-Arrays der Bänke a und b gespeicherten Daten
zu lesen, ist es notwendig, wie in dem in 17 gezeigten
Fall, Daten aus den ausgewählten
Speicherzellen neu auf die Bitleitungen BL und /BL zu lesen. Lesedaten
Qa1 und Qa2 und Qb1 und Qb2 werden zum externen Datenbus 300 nach
der gegebenen Zeit, die als Latenz dient, ausgegeben.
-
In
dem in 22 gezeigten Fall werden die Datenlese- und -schreiboperationen
in Bezug auf die unterschiedlichen Bänke vorgenommen. Daher kann,
wie in dem in 18 gezeigten Fall, der nächste Befehl
eingegeben werden, unmittelbar nachdem der Lesebefehl Ra am Taktänderungspunkt
0 verriegelt wird. Insbesondere wird der Lesebefehl Ra am Taktänderungspunkt
0 verriegelt, und anschließend wird
der Lesebefehl Rb am Taktänderungspunkt
2 verriegelt. Dann werden der Schreibbefehl Wc und assoziierte Daten
Dc1 und Dc2 am Taktänderungspunkt
4 verriegelt. Ferner werden der Schreibbefehl Wd und assoziierte
Daten Dd1 und Dd2 am Taktänderungspunkt
6 verriegelt.
-
In
dem herkömmlichen
SDRAM ist der externe Datenbus von den Datenleseoperationen besetzt, bis
die Lesedaten Qa1, Qa2, Qb1 und Qb2 zum externen Datenbus 300 ausgegeben
werden, auch wenn die Datenschreiboperation auf die andere Bank gerichtet
ist.
-
Im
Gegensatz dazu steuern die Steuerteile der Bänke c und d getrennt die jeweiligen
Eingabe/Ausgabe-Datenverriegelungsteile, den S/P-Wandler 5,
den P/S-Wandler 6 und den Dateneingabe/ausgabeteil 7,
und nehmen die jeweiligen Datenschreiboperationen vor, sogar bevor
die Lesedaten Qa1, Qa2, Qb1 und Qb2 zum externen Datenbus 300 ausgegeben
werden. Insbesondere werden die folgenden Operationen während der
die Taktänderungspunkte
4–8 enthaltenen
Latenzperioden vorgenommen. Die Eingabepuffer der Dateneingabe/ausgabeteile
der Bänke
c und d werden freigegeben. Der Ausgang des S/P-Wandlers 5 wird EIN geschaltet,
wohingegen der Ausgang des P/S-Wandlers 6 AUS geschaltet
wird. Dann werden die Schreibdaten Dc1 und Dc2 in den Speicherzellen-Array-Teil
der Bank c geschrieben, und die Schreibdaten Dd1 und Dd2 werden
in den Speicherzellen-Array-Teil der Bank d geschrieben.
-
Daher
können
die Datenleseoperationen und die Datenschreiboperation gleichzeitig
vorgenommen werden. Mit anderen Worten, die Datenschreiboperation
wird innerhalb der für die
Datenleseoperationen notwendigen Zeit vorgenommen. Daher ist es
möglich,
den externen Datenbus effizient zu nutzen, und die gesamte Lese-
und Schreiboperationszeit zu reduzieren.
-
23 ist
ein Zeitdiagramm eines Betriebs, in dem die Datenleseoperationen
in Bezug auf die Bänke
a und c vorgenommen werden, und die Datenschreiboperationen in Bezug
auf die anderen Bänke b
und d vorgenommen werden, indem die aus den Datenleseoperationen
resultierenden Latenzperioden genutzt werden.
-
Der
Lesebefehl Ra in Bezug auf die Bank a wird eingegeben und wird am
Taktänderungspunkt
0 verriegelt. Resultierende Lesedaten Qa1 und Qa2 werden zum externen
Datenbus 300 nach der gegebenen Zeit, die als Latenz dient,
ausgegeben.
-
In
dem in 23 gezeigten Fall werden die Datenlese- und -schreiboperationen
in Bezug auf die unterschiedlichen Bänke vorgenommen. Daher kann,
wie in dem in 18 gezeigten Fall, der nächste Befehl
eingegeben werden, unmittelbar nachdem der Lesebefehl Ra am Taktänderungspunkt
0 verriegelt wird. Insbesondere wird der Lesebefehl Ra am Taktänderungspunkt
0 verriegelt, und anschließend werden
der Schreibbefehl Wb und assoziierte Schreibdaten Db1 und Db2 am
Taktänderungspunkt 2
verriegelt. Dann wird der Lesebefehl Rc am Taktänderungspunkt 4 verriegelt.
Schließlich
werden die Schreibdaten Wd und assoziierte Schreibdaten Dd1 und
Dd2 am Taktänderungspunkt
6 verriegelt.
-
In
dem herkömmlichen
SDRAM ist der externe Datenbus von den Datenleseoperationen besetzt, bis
die Lesedaten Qa1, Qa2, Qb1 und Qb2 zum externen Datenbus ausgegeben
werden, auch wenn die Datenschreiboperation auf die andere Bank
gerichtet ist.
-
Im
Gegensatz dazu steuern die Steuerteile der Bänke b und d getrennt die jeweiligen
Eingabe/Ausgabe-Datenverriege lungsteile, den S/P-Wandler 5,
den P/S-Wandler 6 und den Dateneingabe/ausgabeteil 7,
und nehmen die jeweiligen Datenschreiboperationen vor, sogar bevor
die Lesedaten Qa1, Qa2, Qc1 und Qc2 zum externen Datenbus 300 ausgegeben
werden. Insbesondere werden die folgenden Operationen während der
die Taktänderungspunkte
4–8 enthaltenen
Latenzperioden vorgenommen. Die Eingabepuffer der Dateneingabe/ausgabeteile
der Bänke
b und d werden freigegeben. Der Ausgang des S/P-Wandlers 5 wird EIN geschaltet,
wohingegen der Ausgang des P/S-Wandlers 6 AUS geschaltet
wird. Dann werden die Schreibdaten Db1 und Db2 in den Speicherzellen-Array-Teil
der Bank b geschrieben, und die Schreibdaten Dd1 und Dd2 werden
in den Speicherzellen-Array-Teil der Bank d geschrieben.
-
Daher
können
die Datenleseoperationen und die Datenschreiboperation gleichzeitig
vorgenommen werden. Mit anderen Worten, die Datenschreiboperation
wird innerhalb der für
die Datenleseoperationen notwendigen Zeit vorgenommen. Daher ist es
möglich,
den externen Datenbus effizient zu nutzen, und die gesamte Lese-
und Schreiboperationszeit zu reduzieren.
-
Nun
erfolgt, mit Bezugnahme auf 10, eine
Beschreibung eines Halbleiter-Integrationsschaltungsspeichers gemäß einer
zweiten Ausführungsform
der vorliegenden Erfindung. In 10 erhalten
Teile, die gleich sind wie die in 9 gezeigten,
dieselben Bezugszahlen.
-
Der
in 10 gezeigte Speicher enthält den Befehlseingabeteil 1,
den Adresseneingabeteil 2, den Befehlsdecoder 3,
die Bänke 4 und 24,
eine S/P-Wandlergruppe 5a, eine P/S-Wandlergruppe 6a und eine Dateneingabe/ausgabeteilgruppe 7a.
Die Bänke 4 und 24 und
die Dateneingabe/ausgabeteilgruppe 7a sind durch jeweilige
periphere Datenbusse 200A und 200B verbunden.
Es ist zu beachten, dass die in 9 gezeigten
Bänke 4 und 24 durch
den gemeinsamen peripheren Datenbus 200 mit dem Dateneingabe/ausgabeteil 7 verbunden sind.
-
Die
S/P-Wandlergruppe 5a enthält S/P-Wandler, die jeweils
für die
Bänke 4 und 24 vorgesehen
sind. Ähnlich
enthält
die P/S-Wandlergruppe 6a P/S-Wandler, die jeweils für die Bänke 4 und 24 vorgesehen
sind. Lesedaten von den Bänken 4 und 24 werden
an die jeweiligen P/S-Wandler über
die jeweiligen peripheren Datenbusse 200A und 200B angelegt
und werden dann zum externen Datenbus 300 über die
Dateneingabe/ausgabeteilgruppe 7a ausgegeben. Vom externen
Datenbus 300 kommende Schreibdaten werden an die S/P-Wandler über die Dateneingabe/ausgabeteilgruppe 7a angelegt,
und werden an die Bänke 4 und 24 über die
jeweiligen peripheren Datenbusse 200A und 200B angelegt.
-
Der
in 10 gezeigte Speicher arbeitet auf die gleiche
Weise wie in 17 bis 23 gezeigt, welche
die Betriebe des in 9 gezeigten Speichers zeigen.
Gemäß der zweiten
Ausführungsform der
vorliegenden Erfindung kann jeder der Steuerteile der Bänke getrennt
den jeweiligen peripheren Datenbus 200A oder 200B auswählen, und
die Busentscheidung kann erleichtert werden.
-
Nun
erfolgt, mit Bezugnahme auf 11, eine
Beschreibung einer Halbleiter-Integrationsspeicheranordnung gemäß einer
dritten Ausführungsform
der vorliegenden Erfindung. In 11 erhalten Teile,
die gleich sind wie die in den vorher beschriebenen Figuren gezeigten,
dieselben Bezugszahlen.
-
Der
in 11 gezeigte Speicher enthält den Befehlseingabeteil 1,
den Adresseneingabeteil 2, den Befehlsdecoder 3,
eine Bank 4a, eine Bank 24a, die S/P-Wandlergruppe 5a,
die P/S-Wandlergruppe 6a und die Dateneingabe/ausgabeteilgruppe 7a.
Die peripheren Datenbusse 200A und 200B, die jeweils die
Bänke 4a und 24a mit
den Gruppen 5a und 6a verbinden, sind in periphere
Schreibdatenbusse 200W und 240W zum Transferieren
nur der Schreibdaten und periphere Lesedatenbusse 200R und 240R zum
Transferieren nur der Lesedaten getrennt. So enthält ein Eingabe/Ausgabe-Datenverriegelungsteil 14a der
Bank 4a eine Schreibdaten-spezifische Verriegelung und
eine Lesedaten-spezifische Verriegelung. Ähnlich enthält einen Eingabe/Ausgabe-Datenverriegelungsteil 34a der
Bank 24a eine Schreibdaten-spezifische Verriegelung und
eine Lesedaten-spezifische Verriegelung.
-
Der
in 11 gezeigte Speicher arbeitet auf die gleiche
weise wie in 17 bis 23 gezeigt, welche
die Betriebe des in 9 gezeigten Speichers zeigen.
Gemäß der dritten
Ausführungsform der
vorliegenden Erfindung kann jeder der Steuerteile der Bänke getrennt
den jeweiligen peripheren Datenbus auswählen, und die Busentscheidung
kann weiter erleichtert werden.
-
12 zeigt
eine Variation der dritten Ausführungsform
der vorliegenden Erfindung, die in 11 gezeigt
ist. In 12 erhalten Teile, die gleich sind
wie die in
-
11 gezeigten,
dieselben Bezugszahlen. In der in 12 gezeigten
Konfiguration ist der externe Datenbus 300 in einen externen
Schreibdatenbus 300W und einen externen Lesedatenbus 300R getrennt
(Eingabe/Ausgabe-Trennung), daher verkörpert diese Konfiguration nicht
die vorliegende Erfindung.
-
Die
in 12 gezeigte Konfiguration ermöglicht, dass Lesedaten und
Schreibdaten auf dem externen Lesedatenbus 300R bzw. dem
externen Schreibdatenbus 300W koexistieren. Daher ermöglicht die
in 12 gezeigte Konfiguration, dass die Lese- und
Schreibbefehle willkürlich
angeordnet oder eingegeben werden. Mit anderen Worten, die in 12 gezeigte
Konfiguration akzeptiert eine willkürliche Sequenz von Lese- und
Schreibbefehlen. Im Gegensatz dazu gestatten die erste bis dritte
Ausführungsform
der vorliegenden Erfin dung keine Koexistenz der Schreib- und Lesedaten
auf dem externen Datenbus 300. Das bedeutet, dass die Schreib-
und Lesebefehle in einer zulässigen
Reihenfolge angeordnet sein sollten.
-
31 ist
ein Zeitdiagramm eines Betriebs der in 12 gezeigten
Konfiguration, in dem Datenlese- und -schreiboperationen seriell
in Bezug auf unterschiedliche Bänke
vorgenommen werden. Insbesondere, wie in dem in
-
20 gezeigten
Fall, werden eine Datenschreiboperation an der Bank a und anschließende Datenleseoperationen
an den Bänken
b und c vorgenommen, und eine Datenschreiboperation an der Bank
d, die von den Bänken
a – c
verschieden ist, wird vorgenommen, indem die aus den obigen Datenleseoperationen
resultierenden Latenzperioden genutzt werden.
-
Die
Befehle werden aufeinanderfolgend ohne Null-Operationsperioden (NOP)
angelegt, wie in 31 gezeigt. Dies ist darauf
zurückzuführen, dass
der externe Datenbus 300 in den Schreibdatenbus 300W und
den Lesedatenbus 300R getrennt ist. So wird ermöglicht,
dass die Lesedaten und die Schreibdaten auf dem Schreibdatenbus 300W und dem
Lesedatenbus 300R getragen werden. Beispielsweise existieren
Lesedaten Qa1 und Qa2 auf dem Lesedatenbus 300R, und gleichzeitig
existieren Schreibdaten Da1 und Da2 auf dem Schreibdatenbus 300W.
Daher ist es möglich,
aufeinanderfolgend Lese- und Schreibbefehle an den Speicher anzulegen,
ohne die Befehlssequenz zu berücksichtigen.
-
Im
Gegensatz dazu, wie in 20 gezeigt, ist die Null-Operationsperiode
zwischen dem Lesebefehl Rc und dem Schreibbefehl Wd vorgesehen,
da der externe Datenbus 300 von den Lese- und Schreibbefehlen
in einer Zeitteilungsformation verwendet werden muss. So sind die
Lesedaten und Schreibdaten nicht gleichzeitig auf dem externen Datenbus 300 vorhanden.
-
32 ist
ein Zeitdiagramm eines Betriebs der in
-
12 gezeigten
Konfiguration, in dem eine Datenleseoperation an der Bank a vorgenommen wird,
und Datenschreiboperationen aufeinanderfolgend in Bezug auf die
Bänke b
und c, die von der Bank a verschieden sind, vorgenommen werden,
indem die aus der obigen Datenleseoperation resultierende Latenzperiode
genutzt wird. Der in 32 gezeigte Betrieb entspricht
dem in 19 gezeigten.
-
Lesedaten
Qa1 und Qa2, wie in 32 gezeigt, werden zum Lesedatenbus 300R ausgegeben, und
gleichzeitig werden Schreibdaten Da1, Da2, Db1 und Db2 zum Schreibdatenbus 300W ausgegeben. Im
Gegensatz dazu können
gemäß 19 die Schreibdaten
Da1, Da2, Db1 und Db2 nicht wie in 32 gezeigt
angeordnet werden, sondern müssen nach
den Schreibdaten Qa1 und Qa2 lokalisiert sein. Das bedeutet, dass
es der in 19 gezeigte Betrieb nicht gestattet,
dass die Schreibbefehle wie in 32 gezeigt
angeordnet sind, sondern die Null-Operationsperiode nach dem Lesebefehl
Rd notwendig ist.
-
13 zeigt
eine Konfiguration eines Halbleiter-Integrationsschaltungspeichers,
der, aus demselben Grund wie jener von 12, die
vorliegende Erfindung nicht verkörpert.
In 13 erhalten Teile, die gleich sind wie die in 12 gezeigten,
dieselben Bezugszahlen.
-
Der
in 13 gezeigte Speicher enthält den Befehlseingabeteil 1,
den Adresseneingabeteil 2, den Befehlsdecoder 3,
eine Bank 4b, eine Bank 24b, die S/P-Wandlerteilgruppe 5b,
die P/S-Wandlerteilgruppe 6a und die Dateneingabe/ausgabeteilgruppe 7a.
Wie in der in 12 gezeigten Konfiguration ist
der periphere Datenbus 200, der die Bank 4b und
die Dateneingabe/ausgabeteilgruppe 7a verbindet, in den
peripheren Schreibdatenbus 200W und den peripheren Lesedatenbus 200R getrennt. Ähnlich ist
der periphere Datenbus 240, der die Bank 24b und
die Dateneingabe/ausgabeteilgruppe 7a verbindet, in den
peripheren Schreibdatenbus 240W und den peripheren Lesedatenbus 240R getrennt. Ferner
ist, in der Bank 4b, der Kerndatenbus 400, der einen
Leseverstärkerteil 13a und
einen Eingabe/Ausgabe-Datenverriegelungsteil 14b verbindet,
in einen Kern-Schreibdatenbus 400W und einen Kern-Lesedatenbus 400R getrennt.
Dementsprechend hat der Eingabe/Ausgabe-Datenverriegelungsteil 14b Verriegelungen,
die jeweils Schreib- und Lesedaten transferieren. Ähnlich ist,
in der Bank 24b, der Kerndatenbus 440, der einen
Leseverstärkerteil 33a und einen
Eingabe/Ausgabe-Datenverriegelungsteil 34b verbindet, in
einen Kern-Schreibdatenbus 440W und einen Kern-Lesedatenbus 440R getrennt.
Dementsprechend hat der Eingabe/Ausgabe-Datenverriegelungsteil 34b Verriegelungen,
die jeweils Schreib- und Lesedaten transferieren.
-
Der
externe Datenbus 300 ist in den externen Schreibdatenbus 300W und
den externen Lesedatenbus 300R getrennt. Daher nutzt der
in 13 gezeigte Speicher effizient den externen Schreibdatenbus 300W und
den externen Lesedatenbus 300R auf die gleiche Weise wie
die des in 12 gezeigten Speichers, die
in 31 und 32 gezeigt
sind.
-
14 ist
ein Blockbild eines Halbleiter-Integrationsschaltungsspeichers,
der aus demselben Grund wie jener von 12 die
vorliegende Erfindung nicht verkörpert.
Die Teile, die gleich sind wie die in 13 gezeigten,
erhalten dieselben Bezugszahlen.
-
Der
in 14 gezeigte Speicher enthält den Befehlseingabeteil 1,
den Adresseneingabeteil 2, den Befehlsdecoder 3,
eine Bank 4c, eine Bank 24c, die S/P-Wandlerteilgruppe 5a,
die P/S-Wandlerteilgruppe 6a und die Dateneingabe/ausgabeteilgruppe 7a.
Wie in der in 12 gezeigten Konfiguration ist
der periphere Datenbus, der die Bank 4c und die Dateneingabe/ausgabeteilgruppe 7a verbindet,
in den peripheren Schreibdatenbus 200W und den peripheren
Lesedatenbus 200R getrennt. So hat ein Eingabe/Ausgabe-Datenverriegelungsteil 14c der Bank 4c Verriegelungen,
die jeweils Schreibdaten und Lesedaten verriegeln. Ähnlich ist
der periphere Datenbus 240, der die Bank 24c und
die Dateneingabe/ausgabeteilgruppe 7a verbindet, in den
peripheren Schreibdatenbus 240W und den peripheren Lesedatenbus 240R getrennt.
So hat der Eingabe/Ausgabe-Datenverriegelungsteil 34c der
Bank 24c Verriegelungen, die jeweils Schreibdaten und Lesedaten verriegeln.
-
Die
Bank 4c enthält
eine Vielzahl von Speicherzellen-Array-Teilen 12 und 12', die Sub-Zellenmatrizen
genannt werden können.
Daher enthält
die Bank 4c, zusätzlich
zu dem Spaltendecoder 10, dem Reihendecoder 11 und
dem Leseverstärkerteil 13,
einen Spaltendecoder 10',
einen Reihendecoder 11' und
einen Leseverstärkerteil 13'. Die Teile 10', 11' und 13' sind mit dem
Speicherzellen-Array-Teil 12' assoziiert.
Der Steuerteil 8 der Bank 4c steuert, zusätzlich zu
dem Spaltendecoder 10, dem Reihendecoder 11 und
dem Leseverstärkerteil 13,
den Spaltendecoder 10',
den Reihendecoder 11' und
den Leseverstärkerteil 13'. Der Leseverstärkerteil 13 ist
mit dem Eingabe/Ausgabedatenverriegelungsteil 14c durch
einen gemeinsamen Kerndatenbus verbunden, über den Schreib- und Lesedaten transferiert werden. Ähnlich ist
der Leseverstärkerteil 13' mit dem Eingabe/Ausgabedatenverriegelungsteil 14c über einen
anderen gemeinsamen Datenbus verbunden, über den Schreib- und Lesedaten
transferiert werden.
-
Die
Bank 24c hat dieselbe Konfiguration wie jene der Bank 4c.
Die Bank 24c enthält,
zusätzlich
zu dem Spaltendecoderteil 30, dem Reihendecoderteil 31,
dem Speicherzellen-Array-Teil 32 und
dem Leseverstärkerteil 33,
einen Spaltendecoderteil 30',
einen Reihendecoderteil 31',
einen Speicherzellen-Array-Teil 32' und einen Leseverstärkerteil 33'. Der Eingabe/Ausgabedatenverriegelungsteil 34c ist
mit dem Leseverstärker 33 durch
einen Kerndatenbus 440 verbunden, und ist mit dem Leseverstärker 33' durch einen
Kerndatenbus 440' verbunden.
-
Der
in 14 gezeigte Speicher nutzt effizient den externen
Schreibdatenbus 300W und den externen Lesedatenbus 300R auf
die gleiche Weise wie jene des in 12 gezeigten
Speichers, die in 31 und 32 gezeigt
sind.
-
15 ist
ein Blockbild eines Halbleiter-Integrationsschaltungsspeichers,
der aus demselben Grund wie jener von 12 die
vorliegende Erfindung nicht verkörpert.
In 15 erhalten Teile, die gleich sind wie die in 14 gezeigten,
dieselben Bezugszahlen. Der in 15 gezeigte
Speicher enthält
Bänke 4d und 24d.
Die Bank 4d unterscheidet sich von der in 14 gezeigten
Bank 4c dadurch, dass der für den Leseverstärkerteil 13a vorgesehene Kerndatenbus 400 in
einen Kern-Schreibdatenbus 400W und einen Kern-Lesedatenbus 400R getrennt ist,
und der für
den Leseverstärkerteil 13a' vorgesehene
Kerndatenbus 400' in
einen Kern-Schreibdatenbus 400' und einen Kern-Lesedatenbus 400R' getrennt ist. Ähnlich enthält die Bank 24d Kern-Schreibdatenbusse 440W und 440W' und Kern-Lesedatenbusse 440R und 440R'.
-
Der
in 15 gezeigte Speicher nutzt effizient den externen
Schreibdatenbus 300W und den externen Lesedatenbus 300R auf
die gleiche Weise wie jene des in 12 gezeigten
Speichers, die in 31 und 32 gezeigt
sind.
-
16 ist
ein Blockbild eines Halbleiter-Integrationsschaltungsspeichers,
der aus demselben Grund wie jener von 12 die
vorliegende Erfindung nicht verkörpert.
In 16 erhalten Teile, die gleich sind wie die in 13 gezeigten,
dieselben Bezugszahlen. Der in 16 gezeigte
Speicher enthält
eine Bank 4e und eine Bank 24e. Die Bank 4e enthält einen
Adressenverriegelungsteil 9' und
einen Eingabe/Ausgabe-Datenverriegelungsteil 14e', zusätzlich zu
dem Adressenverriegelungsteil 9 und dem Eingabe/Ausgabe-Datenverriegelungsteil 14e. Ähnlich enthält die Bank 24e einen
Adressenverriegelungsteil 29' und
einen Eingabe/Ausgabe-Datenverriegelungsteil 34e', zusätzlich zu
dem Adressenverriegelungsteil 29 und dem Eingabe/Ausgabe-Datenverriegelungsteil 34e.
-
Wenn
ein Schreibbefehl in die Bank eingegeben wird, aus der gerade Lesedaten
durch den vorhergehenden Lesebefehl gelesen werden, und eine sich
auf den aktuellen Lesebefehl beziehende Leseadresse in dem Adressenverriegelungsteil 9e verriegelt
wird, wird eine Schreibadresse, die dem Schreibbefehl folgend eingegeben
wird, in dem Adressenverriegelungsteil 9e' verriegelt. Ferner werden der Schreibbefehl,
der sich auf die in dem Adressenverriegelungsteil 9e' verriegelte
Schreibadresse bezieht, und assoziierte Schreibdaten temporär in dem
Steuerteil 8 gespeichert. Nachdem die laufende Datenleseoperation
beendet ist, wird die Datenschreiboperation vorgenommen.
-
Der
in 16 gezeigte Speicher nutzt effizient den externen
Schreibdatenbus 300W und den externen Lesedatenbus 300R auf
die gleiche Weise wie jene des in 12 gezeigten
Speichers, die in 31 und 32 gezeigt
sind. Daher ist es möglich,
unterschiedliche Befehle willkürlich
an dieselbe Bank anzulegen, ohne die Operation zu berücksichtigen,
die läuft.
-
24 ist
ein Blockbild eines SDRAM, der ein Beispiel des Halbleiter-Integrationsschaltungsspeichers
der vorliegenden Erfindung ist.
-
Der
SDRAM enthält
eine Vielzahl von Eingabepuffern 51, einen Befehlsdecoder 52,
eine RAS-Generatoreinheit 53, eine Vorladesignal (PRE)-Generatoreinheit 54,
eine Steuereinheit 55, einen Vordecoder 56, einen
Blockdecoder 57, einen Vordecoder 58, ein Modusregister 59,
einen Datenlatenzcontroller 60, einen Wortdecoder 61,
einen Bitleitungs-Transfersignal (BLT)-Decoder 62, eine
Leseverstärker-Treibersignal
(SA)-Generatoreinheit 63, einen 1/4-Decoder 64,
einen Spaltendecoder 65, eine Steuereinheit 66,
einen Lese/Schreibpuffer 67, einen Parallel-Seriell (P/S)-Wandler 68,
einen Ausgabepuffer 69, einen Eingabepuffer 70,
einen Seriell-Parallel (S/P)-Wandler 71 und eine Kernschaltung 72.
Der in 24 gezeigte SDRAM kann beliebige der
oben angegebenen Ausführungsformen
der vorliegenden Erfindung und Variationen davon enthalten.
-
Der
Spaltendecoder 52 und das Modusregister 59 entsprechen
dem oben angegebenen Befehlsdecoder 3. Die Vorladesignal-Generatoreinheit 54, die
RAS-Generatoreinheit 53, die Steuereinheit 55, der
Datenlatenzcontroller 60 und die Steuereinheit 60 entsprechen
den oben angegebenen Steuerteilen 8 und 24.
-
Der
Vordecoder 56, der Blockdecoder 57 und der Vordecoder 58 entsprechen
den Adressenverriegelungsteilen 9 und 29, die
in der ersten bis sechsten Ausführungsform
der vorliegenden Erfindung verwendet werden, und entsprechen den
Adressenverriegelungsteilen 9, 9', 29 und 29', die in der
siebenten Ausführungsform
davon verwendet werden.
-
Der
Wortdecoder 61, der Bitleitungsdecoder 62, die
Leseverstärker-Treibersignal-Generatoreinheit 63 und
der 1/4-Decoder 64 entsprechen
den Reihendecodern 11 und 31, die in der ersten
bis vierten und siebenten Ausführungsform
der vorliegenden Erfindung verwendet werden, und entsprechen den Reihendecodern 11, 11', 31 und 31', die in der
fünften und
sechsten Ausführungsform
davon verwendet werden.
-
Der
Spaltendecoder 65 entspricht den Spaltendecodern 10 und 30,
die in der ersten bis vierten Ausführungsform der vorliegenden
Erfindung verwendet werden, und entspricht den Spaltendecodern 10, 10', 30 und 30', die in der
fünften
und sechsten Ausführungsform
davon verwendet werden.
-
Der
Lese/Schreibpuffer 67 entspricht den Eingabe/Ausgabe-Datenverriegelungsteilen 14 und 34,
die in der ersten und zweiten Ausführungsform der vorliegenden
Erfindung verwendet werden, und entspricht den Eingabe/Ausgabe-Datenverriegelungsteilen
(14a und 34a), (14b und 34b),
(14c und 34c), (14d und 34d),
(14e, 14e', 34e, 34e') in der dritten,
vierten, fünften,
sechsten bzw. siebenten Ausführungsform
davon.
-
Der
P/S-Wandler 68 entspricht dem P/S-Wandler 5, der
in der ersten Ausführungsform der
vorliegenden Erfindung verwendet wird, und der P/S-Wandlergruppe 5a in
der zweiten bis siebenten Ausführungsform
davon. Der S/P-Wandler 71 entspricht dem in der ersten
Ausführungsform
der vorliegenden Erfindung verwendeten S/P-Wandler 6, und der
S/P-Wandlergruppe 6a in der zweiten bis siebenten Ausführungsform
davon.
-
Die
Kernschaltung 72 entspricht den Speicherzellen-Array-Teilen 12 und 32,
und den Leseverstärkerteilen 13 und 33 in
der ersten bis dritten und siebenten Ausführungsform der vorliegenden
Erfindung. Die Speicherzellen-Array-Teile 12 und 32 und die
Leseverstärkerteile 13a und 33a der
vierten Ausführungsform
der vorliegenden Erfindung bilden die Kernschaltung 72.
Die Speicherzellen-Array-Teile 12, 12', 32 und 32' und die Leseverstärkerteile 13, 13', 33 und 33' der fünften Ausführungsform
der vorliegenden Erfindung bilden die Kernschaltung 72.
Die Speicherzellen-Array-Teile 12, 12', 32 und 32' und die Leseverstärkerteile 13a, 13a', 33a und 33a' der sechsten
Ausführungsform
der vorliegenden Erfindung bilden die Kernschaltung 72.
-
Der
in 24 gezeigte SDRAM arbeitet so, dass der externe
Datenbus effizient genutzt werden kann, indem die Dateneingabe und
-ausgabe in jeder Bank getrennt gesteuert werden. Insbesondere werden
die gegebenen Steuersignale, welche ein Aktivierungsbefehl ACT und
ein Lesebefehl RD sind, die auf eine der Bänke des SDRAM gerichtet sind,
in den entsprechenden Eingabepuffer 51 von der Außenseite
des SDRAM eingegeben. Jedes Steuersignal kann durch eine Kombination
der vorherbestimmten Signale definiert werden, wie ein Reihenadressen-Strobe-Signal
/RAS, ein Spaltenadressen-Strobe-Signal /CAS, ein Schreibfreigabesignal
/WE und ein Chipauswahlsignal /CS (diese Signale sind der Einfachheit
halber in 24 nicht veranschaulicht). Dann wird
die Datenleseoperation an der spezifizierten Bank initiiert. Die
in den entsprechenden Eingabepuffer 51 eingegebenen Steuersignale
werden von dem Befehlsdecoder 52 decodiert, und decodierte
Signale steuern die RAS-Generatoreinheit 53 und den Datenlatenzcontroller 60.
Das Reihenadressensignal wird an das Modusregister 59 über den
entsprechenden Eingabepuffer 51 angelegt. Das Spaltenadressensignal
wird an den Vordecoder 58 über den entsprechenden Eingabepuffer 51 angelegt.
-
Die
RAS-Generatoreinheit generiert ein internes Reihenadressen-Strobe-Signal
RASZ ansprechend auf den Empfang des Aktivierungsbefehls ACT. Das
Signal RASZ ist ein Signal, das anweist, dass in dem Speicherzellen-Array
gespeicherte Daten von den Leseverstärkern gelesen werden, und wird
der Steuereinheit 55 zugeführt.
-
Die
Steuereinheit 55 empfängt
das Signal RASZ, und steuert den Wortdecoder 61, den BLT-Decoder 62,
die SA-Generatoreinheit 63 und den 1/4-Decoder 64,
so dass Wortleitungs-Auswahlsignale MW und SW, das Bitleitungs-Transfersignal
BLT und Leseverstärker-Treibersignale
SA1 und SA2 zu geeigneten Zeiteinstellungen generiert werden. Ferner
generiert die Steuereinheit 55 Signale, um dem Controller 66 zugeführt zu werden,
wie im Nachstehenden beschrieben wird.
-
Der
Vordecoder 56 verriegelt und vordecodiert die zugeführte Reihenadresse.
Die vordecodierte Reihenadresse wird dem Blockdecoder 57 und dem
Wortdecoder 61, dem BLT-Decoder 62 und der SA-Generatoreinheit 63 zugeführt. Der
Blockdecoder 57 wählt
einen von einer Vielzahl von Speicherblöcken aus, die in jeder Bank
in der Kernschaltung 72 angeordnet sind. Der Wortdecoder 61,
der BLT-Decoder 62 und die SA-Generatoreinheit 63 arbeiten nur
in dem ausgewählten
Speicherblock, und lesen Daten aus den Speicherzellen durch die
Leseverstärker.
-
Der
Steuereinheit 66 wird der Lesebefehl RD zugeführt, und
so generiert sie ein peripheres Spaltenadressen-Strobe-Signal CASZ. Das
Signal CASZ ist ein Instruktionssignal, das Daten aus den Leseverstärker liest
und die gelesenen Daten an den Lese/Schreibpuffer 67 ausgibt.
Die Steuereinheit 66 steuert den Spaltendecoder 65 und
generiert das Spaltenleitungs-Auswahlsignal CL. Eine detaillierte Konfiguration
der Steuereinheit wird im Nachstehenden beschrieben.
-
Der
Vordecoder 58 verriegelt und vordecodiert die zugeführte Spaltenadresse.
Das vordecodierte Adressensignal wird dem Spaltendecoder 65 zugeführt. Dann
führt der
Spaltendecoder 65 das Spaltenleitungs-Auswahlsignal CL
der von der decodierten Spaltenadresse spezifizierten Spalte zu,
und liest parallele Daten aus den Leseverstärkern, die mit der ausgewählten Spalte
verbunden sind. Die so gelesenen parallelen Daten werden dem Lese/Schreibpuffer 67 zugeführt.
-
Der
Lese/Schreibpuffer 67 verriegelt und verstärkt die
empfangenen parallelen Daten. Dann werden die parallelen Daten vom
P/S-Wandler 68 in serielle Daten konvertiert und werden
an die Außenseite
des SDRAM über
den Ausgabepuffer 69 ausgegeben.
-
Die
so gelesenen Daten werden an den externen Datenbus ausgegeben, wenn
die der Latenzperiode entsprechende gegebe ne Zeit verstreicht, nachdem
der Lesebefehl RD von der Steuereinheit 66 verriegelt wird.
In dem in 24 gezeigten SDRAM wird der
externe Datenbus so gesteuert, wie beschrieben wurde. Insbesondere
sind die Steuereinheiten 55 und 66 in jeder der
Bänke vorgesehen, und
der Latenzcontroller 60 ist vorgesehen, der die Latenz
verwaltet und steuert. Daher wird der externe Datenbus von der laufenden
Datenleseoperation nicht besetzt. Das heißt, die Datenschreiboperation kann
vorgenommen werden, indem die aus der laufenden Datenleseoperation
resultierende Latenzperiode genutzt wird. Es ist auch möglich, gleichzeitig
Lese- und Schreibdaten an den externen Datenbus auszugeben, der
in den Lese- und Schreibdatenbus getrennt ist.
-
Insbesondere
kann der obige Betrieb so erzielt werden, dass die Steuereinheiten 55 und 66 und der
Datenlatenzcontroller 60 den Lese/Schreibpuffer 67,
den P/S-Wandler 68, den S/P-Wandler 71, den Ausgabepuffer 69 und
den Eingabepuffer 70 steuern. Während der aus der Datenleseoperation
resultierenden Latenzperiode wird der Eingabepuffer 70 freigegeben.
Ferner wird der Ausgang des S/P-Wandlers 71 EIN geschaltet,
wohingegen der Ausgang des P/S-Wandlers 68 AUS geschaltet
wird. Von der Außenseite
des SDRAM zugeführte
Schreibdaten werden in dem Lese/Schreibpuffer 67 verriegelt,
und werden dann in die Kernschaltung 72 geschrieben. Ferner
werden der Schreibbefehl WT und die Schreibadresse zusammen mit
den Schreibdaten dem SDRAM zugeführt.
-
25 ist
ein Blockbild des P/S-Wandlers 68, der von den Steuereinheiten 55 und 66 und
dem Datenlatenzcontroller 60 gesteuert wird. Der P/S-Wandler 68 enthält eine
Datenbus-Schaltereinheit 110,
eine erste Registereinheit 120, eine zweite Registereinheit 130,
einen 4-2-Wandler 140, eine Datenausgabe-Zeitschaltung 150,
eine Verriegelungsschaltung 160 und einen Ausgabepuffer 170.
-
Der
Datenbusschalter 110 empfängt parallele Daten, die beispielsweise
aus vier Bits bestehen, vom Lese/Schreibpuffer 67, und ändert eine
Verbindung zwischen einem Vier-Bit-Eingabedatenbus und einem Vier-Bit-Ausgabedatenbus
auf der Basis eines Burst-Längensignals
BL und eines Teils der Spaltenadresse. Die erste Registergruppe 120 ist
mit dem Vier-Bit-Ausgabedatenbus
des Datenbusschalters 110 verbunden. Die zweite Registergruppe 130 ist
mit dem Vier-Bit-Ausgabedatenbus der ersten Registergruppe 120 verbunden.
Der 4-2-Wandler 140 konvertiert die parallelen Vier-Bit-Daten
von der zweiten Registergruppe 130 in parallele Zwei-Bit-Daten.
Die Datenausgabe-Zeitschaltung 150 und die Verriegelungsschaltung 160 dienen
dazu, die parallelen 2-Bit-Daten in serielle 1-Bit-Daten zu konvertieren.
-
Insbesondere
enthält
der Datenbusschalter 110 Schalter sw1n, sw2n sw3n, die
für Datenbusleitungen
d0, d1, d2 und d3 des Vier-Bit-Datenbusses vorgesehen sind, wie
in 25 gezeigt. Ferner enthält der Datenbusschalter 110 einen
Schalter sw24 zur Herstellung einer Verbindung zwischen den Datenbusleitungen
d1 und d3, einen Schalter sw14 zur Herstellung einer Verbindung
zwischen den Datenbusleitungen d0 und d3, einen Schalter sw13 zur Herstellung
einer Verbindung zwischen den Datenbusleitungen d0 und d2, und einen
Schalter sw12 zur Herstellung einer Verbindung zwischen den Datenbusleitungen
d0 und d1. Die obigen Schalter werden von dem Burst-Längensignal
BL und Teilen des Spaltenadressensignals caa0z und caa1z gesteuert.
-
26 ist
eine Darstellung, die Zustände
der Schalter der Datenbus-Schaltereinheit 110 zeigt, welche
Zustände
eingestellt werden, wenn das Burst-Längensignal gleich 1, 2 und
4 ist. Wenn das Burst-Längensignal
BL eine Burst-Länge
von 4 anzeigt, werden die Datenbusleitungen d0–d4 auf der Eingangsseite mit
den Datenbusleitungen d0'–d4' auf der Aus gangsseite
verbunden. Das heißt,
in dem obigen Fall sind die Schalter sw1n, sw2n und sw3n EIN (geschlossen),
und die Schalter sw24, sw14, sw13 und sw12 sind AUS (offen).
-
Wenn
das Burst-Längensignal
BL eine Burst-Länge
von 2 anzeigt, ist der in 25 gezeigte P/S-Wandler
so ausgebildet, dass die über
die Datenbusleitungen d0' und
d1' transferierten
Datensignale zur Außenseite
des SDRAM gesendet werden. Daher wird in diesem Fall ein Paar der
Datenbusleitungen d0 oder d1 oder ein anderes Paar der Datenbusleitungen
d2 und d3 zu den Datenbusleitungen d0' und d1' in Übereinstimmung
mit dem Logikwert des Spaltenadressensignals caa0z gesendet. Insbesondere
wenn die Datenbusleitungen d0 und d1 jeweils mit den Datenbusleitungen
d0' und d1' verbunden werden
sollten, wird das Spaltenadressensignal caa0z auf den Niederpegel
eingestellt. So werden die Schalter sw1n, sw2n und sw3n EIN geschaltet,
wohingegen die Schalter sw24, sw14, sw13 und sw12 AUS geschaltet
werden. Wenn die Datenbusleitungen d2 und d3 jeweils mit den Datenbusleitungen
d0' und d1' verbunden werden
sollten, wird das Spaltenadressensignal caa0z auf den Hochpegel
eingestellt. Daher werden die Schalter sw3n, sw24 und sw13 EIN geschaltet,
und die Schalter sw1n, sw2n, sw14 und sw12 werden AUS geschaltet.
Daher werden die Daten auf der Datenbusleitung d2 zur Datenbusleitung
d0' transferiert,
und die Daten auf der Datenbusleitung d3 werden zur Datenbusleitung
d1' transferiert.
Wenn die Burst-Länge
gleich 2 ist, wird das andere Spaltenadressensignal caa1z nicht
verwendet, um die Schalter der Datenbus-Schaltereinheit 110 zu steuern.
-
Wenn
das Burst-Längensignal
BL eine Burst-Länge
von 1 anzeigt, wird eine der Datenbusleitungen d0–d3 ausgewählt und
zur Datenbusleitung d0' transferiert,
aus der das ausgewählte
Bit an die Außenseite
des SDRAM ausgegeben wird. Die obige Auswahl wird durch die Kombination
der Werte der Spal tenadressensignale caa0z und caa1z vorgenommen.
Insbesondere wenn Daten auf der Datenbusleitung d0 ausgewählt werden,
werden die Spaltenadressensignale caa0z und caa1z beide auf den Niederpegel
eingestellt. Daher werden die Schalter sw1n, sw2n und sw3n EIN geschaltet,
und die Schalter sw24, sw14, sw13 und sw12 werden AUS geschaltet.
In diesem Fall werden Daten auf der Datenbusleitung d0 zur Datenbusleitung
d0' transferiert. Wenn
Daten auf der Datenbusleitung d1 ausgewählt werden, werden die Spaltenadressensignale
caa0z und caa1z jeweils auf den Hoch- und Niederpegel eingestellt.
So werden die Schalter sw2n, sw3n und sw12 EIN geschaltet, und die
Schalter sw1n, sw24, sw14 und sw13 werden AUS geschaltet. So werden die
Daten auf der Datenbusleitung d1 zur Datenbusleitung d0' über den Schalter sw12 transferiert.
Wenn Daten auf der Datenbusleitung d2 oder d3 ausgewählt werden,
werden die Schalter in Übereinstimmung
mit der in 26 gezeigten Tabelle EIN und AUS
geschaltet.
-
Die
parallelen Daten d0',
d1', d2' und d3' werden zur ersten
Registereinheit 120 und zur zweiten Registereinheit 130 transferiert.
Die erste Registereinheit 120 enthält vier verzögerte Flip-Flops
(DFF) 121, 122, 123 und 124,
die Daten in Übereinstimmung
mit einem ersten Steuersignal po0z verriegeln. Das zweite Register 130 enthält vier
verzögerte Flip-Flops
(DFF) 131, 132, 133 und 134,
die Daten in Übereinstimmung
mit einem zweiten Steuersignal po1z verriegeln.
-
27 ist
ein Zeitdiagramm von Betrieben der ersten und zweiten Registereinheit 120 und 130. In 27 bedeutet
d[0, 2] Daten auf den Datenbusleitungen d0' und d2', und d[1, 3] bedeutet Daten auf den
Datenbusleitungen d1' und
d3'.
-
Zur
in 27 gezeigten Zeit t1 erscheinen parallele Daten
auf den Datenbusleitungen d0',
d1', d2' und d3'. Zur Zeit t2 wird
das erste Steuersignal po0z vom Hochpegel auf den Niederpegel gewechselt,
und die Flip-Flops 121–124 der
ersten Registereinheit 120 verriegeln jeweils die Daten
auf den Datenbusleitungen d0'–d3'. Zur Zeit t3 wird
das zweite Steuersignal vom Niederpegel auf den Hochpegel gewechselt,
und die Flip-Flops 131–134 der
zweiten Registereinheit 130 empfangen jeweils den Datenausgang
von den Flip-Flops 121–-124. Zur Zeit t4 werden
die empfangenen Daten in den Flip-Flops 131–134 verriegelt. Dann
wird das erste Steuersignal vom Niederpegel auf den Hochpegel gewechselt, und
die Flip-Flops 121–124 werden
bereit, die nächsten
Daten auf den Datenbusleitungen d0'–d3' zu empfangen. Die
parallelen Daten auf den Datenbusleitungen d0', d1',
d2' und d3' werden, wie oben
beschrieben, sequentiell zur ersten Registereinheit 120 und
zur zweiten Registereinheit 130 transferiert.
-
Die
in der zweiten Registereinheit 130 verriegelten Daten werden
zum 4-2-Wandler 140 gesendet, der die parallelen Vier-Bit-Daten
in parallele Zwei-Bit-Daten konvertiert. Der 4-2-Wandler 140 enthält Flip-Flops
(DFF) 141, 142 und 143, und Ausgabepufferschaltungen 144–147.
Dem 4-2-Wandler 140 werden vier Steuertaktsignale psc1k0z–psclk3z
zugeführt,
die die Ausgabezeiteinstellungen der Ausgabepufferschaltungen 144–147 und
die Datenverriegelungszeiteinstellungen der Flip-Flops 141–143 steuern.
Die Ausgabeleitungen der Ausgabepufferschaltungen 144 und 146 sind
mit einem Knoten dd0 in einer verdrahteten ODER-Verknüpfung verbunden. Ähnlich sind
die Ausgabeleitungen der Ausgabepufferschaltungen 145 und 147 mit
einem Knoten dd1 in der verdrahteten ODER-Verknüpfung verbunden. Wenn Daten
aus der Ausgabepufferschaltung 144 ausgegeben werden, wird
das Ausgabeende der Ausgabepufferschaltung 146 auf den
Hochimpedanz-Zustand eingestellt. wenn Daten aus der Ausgabepufferschaltung 146 ausgegeben
werden, wird das Ausgabeende der Ausgabepuffer- schaltung 144 auf den Hochimpedanz-Zustand
eingestellt. Dann werden Zwei-Bit-Daten von dem 4-2-Wandler 140 zu den
Knoten dd0 und dd1 ausgegeben und werden zur Datenausgabe-Zeitschaltung 150 transferiert.
Die Schaltung 150 enthält
zwei Schalter swdd0 und swdd1, die von den Ausgangssteuertaktsignalen outp0z
und outp1z gesteuert werden. Die Schaltung 150 arbeitet
wie folgt. Der Schalter swdd0 wird geschlossen, so dass das am Knoten
dd0 erscheinende Datenbit zur Verriegelungsschaltung 160 der
nächsten
Stufe transferiert wird. Dann wird der Schalter swdd1 geschlossen,
so dass das am Knoten dd1 erscheinende Datenbit zur Verriegelungsschaltung 160 transferiert
wird. Die Verriegelungsschaltung 160 verriegelt die Eingabedaten,
und wechselt den Pegel der Eingabedaten auf einen geeigneten Pegel.
Dann werden die Daten mit dem konvertierten Pegel, als Ausgabedaten
DQ, an die Außenseite
des SDRAM über
den Ausgabepuffer 170 ausgegeben.
-
28 ist
ein Zeitdiagramm von Betrieben der Sektion zwischen dem 4-2-Wandler 140 und
der Verriegelungsschaltung 160, wenn das Burst-Längensignal
BL eine Burst-Länge
von 4 anzeigt.
-
Im
Initialzustand werden die Lesedaten in den Flip-Flops 131–134 der zweiten Registereinheit 130 verriegelt.
Die Steuertaktsignale psclk0z–psclk3z,
wie in 28 gezeigt, schalten seriell
in dieser Reihenfolge auf den Hochpegel. Wenn das Steuertaktsignal
psclk0z auf den Hochpegel schaltet, werden die vom Flip-Flop 131 empfangenen und
in der Ausgabepufferschaltung 144 gespeicherten Daten daraus
gelesen und werden zum Knoten dd0 ausgegeben. Gleichzeitig werden
die aus dem Flip-Flop 132 ausgegebenen Daten in dem Flip-Flop 141 verriegelt.
Als Nächstes
schaltet das Signal psclk1z auf den Hochpegel, die vom Flip-Flop 141 empfangenen
und in der Ausgabepufferschaltung 145 gespeicherten Daten
werden daraus gelesen und werden zum Knoten d11 ausgegeben.
-
Gleichzeitig
werden die aus dem Flip-Flop 133 ausgegebenen Daten in
dem Flip-Flop 142 verriegelt. Die obige Operation wird
wiederholt, und den Knoten dd0 und dd1 werden abwechselnd neu aus dem
4-2-Wandler 140 gelesene Daten zugeführt, wie in 34 gezeigt.
-
Die
Flip-Flops 141–143 des
4-2-Wandlers 140 sind so vorgesehen, dass die nächsten Daten
in der zweiten Registereinheit 130 verriegelt werden können, während der
4-2-Wandler 140 die 4-2-Konvertierungsoperation vornimmt.
Daher können
Daten seriell über
den Datenausgangsanschluss DQ ohne jede Unterbrechung ausgegeben
werden.
-
Die
Ausgangssteuertaktsignale outp0z und outp1z, die die Operation des
Datenausgabe-Zeitsignals 150 steuern, schalten abwechselnd
auf den Hochpegel, wie in 28 gezeigt.
Wenn die neuen Daten am Knoten dd0 erscheinen, schaltet das Ausgangssteuertaktsignal
outp0z nach einer gegebenen Zeit auf den Hochpegel, und der Schalter
swdd0 wird EIN geschaltet. So werden die Daten am Knoten dd0 zur
Verriegelungsschaltung 160 transferiert. Wenn die neuen
Daten am Knoten dd1 erscheinen, schaltet das Ausgangssteuertaktsignal
outp1z nach der gegebenen Zeit auf den Hochpegel, und der Schalter swdd1
wird EIN geschaltet. So werden die Daten am Knoten dd1 zur Verriegelungsschaltung 160 transferiert.
Die obige Operation wird wiederholt vorgenommen, so dass die Daten
an den Knoten dd0 und dd1 abwechselnd zur Verriegelungsschaltung 160 gesendet
werden können,
und die 2-1-Bitkonvertierung erzielt werden kann.
-
29A und 29B zeigen
den Status der Taktsignale psclk0z–psclk3z und der Ausgangssteuersignale
outp0z und outp1z, die erhalten werden, wenn das Burst-Längensignal
BL eine Burst-Länge von
1, 2 oder 4 anzeigt.
-
Der
in 25 gezeigte P/S-Wandler 68 konvertiert
die Vier-Bit-Daten durch den 4-2-Wandler 140 in die Zwei-Bit-Da ten,
und konvertiert die Zwei-Bit-Daten durch die Datenausgabe-Zeitschaltung 150 und
die Verriegelungsschaltung 160 in die Ein-Bit-Daten. Das
heißt,
die Parallel-Seriell-Konvertierung wird durch die zweistufige Operation
vorgenommen.
-
Es
ist möglich,
den 4-2-Wandler 140 wegzulassen, und die Vier-Bit-Daten
direkt in die Datenausgabe-Zeitschaltung 150 zuzuführen. In
diesem Fall wird die Parallel-Seriell-Konvertierung durch die einstufige Operation
vorgenommen. In diesem Fall enthält
die Datenausgabe-Zeitschaltung 150 vier Schalter, die ansprechend
auf vier Ausgangssteuertaktsignale sequentiell EIN geschaltet werden.
Die einstufige Anordnung ist einfacher als die zweistufige Anordnung.
Es kann jedoch schwieriger werden, die vier Ausgangssteuertaktsignale
zu generieren, wenn die Frequenz der Taktsignale höher wird.
In einem solchen Fall ist die zweistufige Anordnung gegenüber der
einstufigen Anordnung vorteilhaft.
-
30 ist
ein Schaltbild des in 24 gezeigten S/P-Wandlers 71.
Der Wandler 71 besteht aus einer Verriegelungsschaltung 250,
einer Ausgaberegistereinheit 260, einer Impulsgeneratorschaltung 270,
Transfer-Gates 271–274,
einem Inverter 275 und Verriegelungsschaltung en 281–284.
Die Verriegelungsschaltung 250 verriegelt die von der Außenseite
des SDRAM zugeführten
seriellen Daten. Die Registereinheit 260 enthält vier
Flip-Flops (DFF) 261–264,
und verriegelt seriell die in der Verriegelungsschaltung 250 verriegelten
seriellen Daten, so dass parallele Vier-Bit-Daten ausgegeben werden können. Die
Impulsgeneratorschaltung 270 generiert Zeiteinstellungen,
zu denen die Flip-Flops 261–264 jeweils die entsprechenden
Daten verriegeln. Die Transfer-Gates 271–274 steuern
jeweils die entsprechenden Bits der parallelen Vier-Bit-Daten von
der Registereinheit 260. Die Verriegelungsschaltungen 281–284 verriegeln
und verstärken
jeweils die entsprechenden Bits der parallelen Vier-Bit-Daten von
den Transfer-Gates 271–274.
-
Wenn
serielle Daten DI an den P/S-Wandler 71 angelegt werden,
verriegelt die Verriegelungsschaltung 250 seriell die seriellen
Daten DI und sendet sie an das Register 260. Die Impulsgeneratorschaltung 270 leitet
Taktsignale intp1-intp4
von einem Taktsignal, einem Signal, das die Schreiboperation vom
in 24 gezeigten Befehlsdecoder 52 anzeigt,
dem Burst-Längensignal
BL vom Modusregister 59 und den vorherbestimmten Steuersignalen vom
Datenlatenzcontroller 60 und den Steuereinheiten 55 und 56 ab.
Die Taktsignale intp1–intp4
werden in einer Reihenfolge von intp4 -> intp3 -> intp2
-> intp1 auf den Hochpegel
geschaltet.
-
Die
Registereinheit 260 verriegelt die seriellen Daten von
der Verriegelungsschaltung 250 in Übereinstimmung mit den Taktsignalen
intp1–intp4, und
gibt die parallelen Vier-Bit-Daten zu den Transfer-Gates 271–274 aus.
Ein Steuersignal GO wird vom Datenlatenzcontroller oder der Steuereinheit 55 oder 66 an
die Transfer-Gates 271–274 angelegt, und
es wird gestattet, dass die parallelen Vier-Bit-Daten gleichzeitig die Transfer-Gates 271–274 passieren.
Dann werden die so erhaltenen parallelen Vier-Bit-Daten, als Schreibdaten
DB01 – DB04, über die
Verriegelungsschaltungen 281–284 an die Kernschaltung 72 ausgegeben.
-
33 ist
ein Blockbild einer Struktur des in 24 gezeigten
Lese/Schreibpuffers 67, und 34 ist
ein Blockbild einer Struktur des in 24 und 33 gezeigten
Controllers 66. In 33 und 34 erhalten
Teile, die gleich sind wie die in den vorher beschriebenen Figuren,
dieselben Bezugszahlen.
-
Mit
Bezugnahme auf 33 besteht der Lese/Schreibpuffer 67 aus
einem Schreibverstärker 67a,
einem Ausgabeverstärker 67b und
einer Kurzschliefleinheit 67c. Der Schreibverstärker 67a wird von
Signalen WEN, WRT, SBE und GRS, die von der Steuereinheit 66 zugeführt werden,
und Schreibdaten auf dem peripheren Datenbus 75 in einen
Kerndatenbus 74 gesteuert. Der periphere Datenbus 75 ist
mit dem P/S-Wandler 68 und dem S/P-Wandler 71 verbunden,
die in 24 gezeigt sind. Der Kerndatenbus 74 ist
mit dem Speicherzellen-Array (in 33 nicht
gezeigt) verbunden, das in der in 24 gezeigten
Kernschaltung 72 vorgesehen ist. Der Ausgabeverstärker 67a wird
von den Signalen WRT, WBE und GRS gesteuert, die von der Steuereinheit 66 zugeführt werden,
und verstärkt
Daten auf dem Kerndatenbus 74 und schreibt verstärkte Daten in
den peripheren Datenbus 75. Die Kurzschließeinheit 67c schließt ein Paar
von Datenbusleitungen des Datenbusses 74 kurz.
-
Eine
Vielzahl von Auswahlschaltungen 73 ist für jeweilige
Leseverstärker über dazwischen
vorgesehene Datenbusse vorgesehen, und wählt Datenbusleitungen aus,
die Daten von den Leseverstärkern
empfangen.
-
Mit
Bezugnahme auf 34 empfängt die Steuereinheit 66 Steuersignale
WRT, WSW, WRCT, DM, WERP und CLP von der Steuereinheit 55 und generiert
daraus Steuersignale WRT, SBE, WEN und GRS. Das Steuersignal WRT
zeigt an, dass die zugehörige
Bank im Schreibzustand ist. Das Steuersignal WSW eilt dem Steuersignal
WRT um eine gegebene Zeit nach. Das Steuersignal WRCT ist ein Signal
zur Bestimmung, ob die zugehörige
Bank in einem Schreibmaskenzustand zur Zeit des Schreibzustands
ist. Das Steuersignal DM zeigt an, ob die zugehörige Bank im Schreibmaskenzustand
ist. Das Steuersignal CLP ist das Spaltenauswahlsignal, das die
Spaltendecoder 65 aktiviert. Das Steuersignal WERP definiert
eine Schreibzeiteinstellung, nachdem das Spaltenauswahlsignal CLP
ausgegeben wird. Das Steuersignal SBE ist ein Lesepuffer-Freigabesignal, das
den in 33 gezeigten Ausgabeverstärker 67b aktiviert.
Das Steuersignal WEN ist ein Schreibfrei gabesignal, das den in 33 gezeigten Schreibverstärker 67a aktiviert/deaktiviert.
Ein Steuersignal GRS ist ein Signal, das die Kurzschließeinheit 67c aktiviert,
und gleichzeitig den Schreibverstärker 67a und den Ausgabeverstärker 67b deaktiviert.
-
Die
Steuereinheit 66 besteht aus peripheren Signalgeneratorschaltungen 66a, 66e und 66f,
einer WRT-Generatorschaltung 66b, einer SBE-Generatorschaltung 66c,
einer WEN-Generatorschaltung 66d und einer GRS-Generatorschaltung 66g.
Die Schaltung 66a leitet ein internes Signal von den Steuersignalen
WRCT und DM ab, wobei das obige interne Signal anzeigt, ob die zugehörige Bank
in dem Schreibmaskenzustand zur Zeit des Schreibzustands ist. Die
WRT-Generatorschaltung 66b transferiert das Steuersignal
WRT zu dem in 33 gezeigten Lese/Schreibpuffer 67.
Die SBE-Generatorschaltung 66c generiert das Signal SBE
aus den Steuersignalen WRT und CLP. Die interne Signalgeneratorschaltung 66e generiert
ein internes Signal, das eine Datenschreibzeiteinstellung anzeigt,
aus dem Steuersignal WERT und dem Steuersignal WSW. Die interne
Signalgeneratorschaltung 66f generiert, aus dem Steuersignal
CLP und dem Datenschreib-Zeitsignal. ein internes Signal, das eine
Datenbus-Kurzschließzeiteinstellung
anzeigt, wenn das Spaltenauswahlsignal CLP nicht empfangen wird.
Die GRS-Generatorschaltung 66g generiert, aus dem Steuersignal
SBE und dem internen Steuersignal von der Schaltung 66f,
das Steuersignal GRS.
-
35 ist
ein Zeitdiagramm eines Betriebs der in 33 und 34 gezeigten
Konfigurationen. Der linke Teil des Zeitdiagramms zeigt einen Betrieb im
Lesemodus, und der rechte Teil davon zeigt einen Betrieb im Schreibmodus.
Zeitsignale BTWL, BTWLP, SLEX und SLEP werden von der Steuereinheit 55 aus
dem daran angelegten Reihenadressen-Strobe-Signal RAS generiert,
und werden an die in 33 gezeigten Leseverstärker angelegt.
Ein Symbol BLX/BLZ bezeichnet Potentialänderungen eines Paars von Kern-Datenbusleitungen 74,
die in 33 gezeigt sind. Ein Symbol
GDBX und GDBZ bezeichnet Potentialänderungen der in 33 gezeigten
peripheren Datenbusleitungen 75.
-
In
dem Lesemodus empfängt
die Steuereinheit 55 das Reihenadressen-Strobe-Signal RAS
und generiert die Steuersignale BTWL, BTWLP, SLEX und SLEP, welche
Signale an die in 33 gezeigten Leseverstärker angelegt
werden. Das von der Steuereinheit 55 generierte Spaltenauswahlsignal
CLP wird an die in 33 gezeigten Spaltendecoder 65 angelegt.
So beginnt, wie in 35 gezeigt, der ausgewählte Leseverstärker, Daten
an den entsprechenden Kernbitleitungen 74 abzufühlen, und
verstärkt die
Potentialdiffeenz zwischen den Kern-Datenbusleitungen 74 (BLX,
BLZ). Ein Signal CL ist ein verzögertes
Signal des in dem ausgewählten
Spaltendecoder 65 generierten Spaltenauswahlsignals CLP,
und wird tatsächlich
an die ausgewählte
Spaltenleitung angelegt. Wenn das Signal CL aktiviert wird, wird
das Signal CL auf einen Vii-Pegel geschaltet, der ein Abspannpotential
ist, das durch das Abspannen einer externen Energiezufuhrspannung
Vdd erhalten wird, die höher
ist als das Vii-Potential. Ansprechend auf die Anstiegkante des
Spaltenauswahlsignals CLP steigt das Steuersignal GRS, und dann
steigt das Steuersignal SBE. Ansprechend auf das Steuersignal GRS
werden die Kern-Datenbusleitungen 74 von der Kurzschließschaltung 67c kurzgeschlossen. Wenn
das Steuersignal SBE steigt, wird der Ausgabeverstärker 67b aktiviert,
und die auf die Datenbusleitungen 74 gelesenen Daten werden
zu den peripheren Datenbusleitungen 75 ausgegeben, so dass die
Potentiale der peripheren Datenbusleitungen GDBX/GDBZ wie in 35 geändert werden.
-
In
dem Schreibmodus steigt das Steuersignal GRS anspre chend auf die
Anstiegkante des Steuersignals WSW, und die Kern-Datenbusleitungen 74 werden
kurzgeschlossen. Ferner fällt
das Steuersignal WEN, und der Schreibverstärker 67a wird aktiviert.
Ansprechend auf die Anstiegkante des Steuersignals WSW steigen die
Spaltenauswahlsignale CLP und CL aufeinanderfolgend, und Daten auf
den peripheren Datenbusleitungen 75 werden in die Kern-Datenbusleitungen 74 geschrieben.
In diesem Fall wird das Potential des Spaltenauswahlsignals CL auf
die externe Energiezufuhrspannung Vdd eingestellt, die höher ist
als Vii. In dem in 35 gezeigten Fall werden die
Potentiale der Kern-Datenbusleitungen 74 gegenseitig invertiert,
und werden dann ansprechend auf die Abfallkante des Steuersignals SLEP
verstärkt.