-
TECHNISCHES
GEBIET
-
Die
vorliegende Erfindung betrifft allgemein eine Signalverzögerungsvorrichtung,
und, genauer ausgedrückt,
eine Vorzögerungsschaltung,
die in den Ausgangsweg einer Speichervorrichtung mit einer Burst-Betriebsart
eingebaut ist.
-
HINTERGRUND
DER ERFINDUNG
-
In
den letzten Jahren haben Fortschritte in Entwurfsansätzen und
Fertigungsprozessen zu zentralen Verarbeitungseinheiten (CPU) mit
erhöhten Geschwindigkeiten
geführt.
Gleichzeitig sind die Geschwindigkeiten der üblichsten Form von Hauptsystemspeicherung,
eines dynamischen Direktzugriffsspeichers (DRAM), in viel langsamerem
Umfang erhöht
worden. Infolgedessen können
DRAMs nicht immer in der Lage sein, Lesedaten mit einer ausreichend
hohen Geschwindigkeit einer CPU zuzuführen oder von dieser Schreibdaten
zu empfangen. Eine Art zum Handhaben der Geschwindigkeitsunterschiede
in CPUs und langsameren Speichervorrichtungen (wie zum Beispiel
DRAMs) besteht in der Verwendung eines Cache-Speichers.
-
Ein
Cache-Speicher ist typischerweise beträchtlich kleiner als ein Hauptspeicher,
kann jedoch mit einer viel höheren
Geschwindigkeit arbeiten. Cache-Speicher können ein Teil einer einzigen
integrierten CPU-Schaltung (Chip) sein oder eine getrennte Einrichtung
mit einem externen Anschluss an eine CPU darstellen. Ein typischer
Cache-Speicher wird eine
Kopie eines Teils der in dem Hauptspeicher gespeicherten Daten halten,
um schnellen Zugriff auf diese zuzulassen. Die Kopie ist gewöhnlich in
Seiten angeordnet, von denen jede einen sequentiellen Bereich von
Adressen besetzt.
-
Beim
Betrieb eines typischen Systems, das einen Cache-Speicher verwendet,
wird die CPU routinemäßig Lesezugriffe
auf den Cache-Speicher ausführen.
Wenn die gewünschten
Daten in dem Cache-Speicher vorliegen, werden die Daten durch die CPU
verwendet. Wenn die gewünschten
Daten nicht in der CPU vorhanden sind, werden die gewünschten Daten
neu (in Seitenform) aus dem Hauptspeicher in den Cache-Speicher
kopiert. Darüber
hinaus muss eine Seite in dem Fall, dass die Seite von Daten innerhalb
eines Cache-Speichers geändert
wird, zurück
in den Hauptspeicher eingeschrieben werden. Daher kann die Gesamtsystemgeschwindigkeit
von der Rate abhängen,
bei der Daten aus dem Hauptspeicher in den Cache-Speicher eingeschrieben
werden können.
Es ist dementsprechend wünschenswert,
dass die Einrichtungen, die einen Hauptspeicher bilden, Hochgeschwindigkeitsübertragungen von
aus kontinuierlichen Adresswerten bestehenden Datenketten zu einem
und aus einem Cache-Speicher ausführen können.
-
Ein
bevorzugtes Verfahren zum Leiten von Daten zwischen einem Hauptspeicher
und einem Cache-Speicher ist das von "Burst-Übertragung". Bei einer Burst-Übertragung wird eine Anfangs-(Basis)-Adresse
innerhalb des Hauptspeichers spezifiziert, und dann wird die Datenkette
synchron mit einem Bezugstakt ausgegeben (oder, im Fall einer Schreiboperation,
eingegeben). Die Länge
der Datenkette wird als "Burst-Länge" bezeichnet. Ein
Beispiel eines Speichertyps, der Burst-Übertragung bereitstellen kann,
ist ein synchroner DRAM (SDRAM). SDRAMs arbeiten synchron mit einem
Bezugstakt, halten Adressen und stellen Datenzugriffe synchron mit
dem Bezugstakt bereit.
-
Burst-Übertragungen
werden in SDRAMs bevorzugt, da solche Übertragungen schnelleren Gesamtdatendurchsatz
als andere DRAM-Ansätze
bereitstellen können.
Zum Beispiel ist ein Typ von DRAM für allgemeine Verwendung (d.
h. nichtsynchron) der "schnelle
seitenstrukturierte" DRAM. Schnelle
seitenstrukturierten DRAMs empfangen eine Adresse und liefern in
Abhängigkeit
von dieser Ausgangsdaten. Die Zeit zwischen der Anlegung der Adresse
und des Vorliegens von Daten am Ausgang des schnellen seitenstrukturierten
DRAM wird oft als die "Adresszugriffszeit" bezeichnet. Schnelle
seitenstrukturierte DRAMs mit Hochgeschwindigkeit können eine
Adresszugriffszeit von 20 Nanosekunden (ns) aufweisen (eine Betriebsgeschwindigkeit
von 50 MHz).
-
Im
Fall von Burst-SDRAMs, wird der Zugriff auf einen Anfangsdatensatz
in der gleichen allgemeinen Weise wie bei einem DRAM allgemeiner
Verwendung ausgeführt.
Infolgedessen liefern SDRAMs beim Zugreifen auf einen einzigen Datensatz
(wobei die Daten aus einer Adresse resultieren), keine bedeutenden
Geschwindigkeitsvorteile gegenüber DRAMs
allgemeiner Verwendung. Wenn ein SDRAM Zugriff auf einen Anfangsdatensatz
genommen hat, kann jedoch auf jeden nachfolgenden Datensatz in einer
bestimmten Adressenreihenfolge mit einer höheren Geschwindigkeit als bei
einem DRAM allgemeiner Verwendung zugegriffen werden. Dies wird durch
simultanes Verarbeiten mehrerer Datensätze innerhalb des Burst-DRAM
erreicht, so dass aufeinanderfolgende Datensätze bei einer höheren Dauerrate
eingegeben oder ausgegeben werden können. Infolgedessen kann die
Frequenz, bei der Daten in einen Burst-SDRAM eingegeben oder von
diesem ausgegeben werden können,
100 MHz oder höher
betragen. Diese Dauerrate wird als die "Burst-Übertragungsfrequenz" bezeichnet. Maximale
Zugriffsgeschwindigkeiten werden durch Ausführen des Bezugstakts eines
SDRAM bei der maximalen Burst-Übertragungsfrequenz
erreicht.
-
Während Burst-Zugriffe
schnellere Geschwindigkeiten für
eine sequentielle Gruppe von Datensätzen bereitstellen können, wie
oben ausgeführt
ist, liefern Zugriffe auf einen Anfangsdatensatz (d. h. der erste
Datensatz in einer Burst-Sequenz) keine bedeutenden Geschwindigkeitsvorteile
gegenüber
allgemein verwendeter DRAM-Zugriffe. Wenn eine Befehlseingabe an
einen Burst-SDRAM während
einer Bezugtaktperiode eingegeben wird, wird infolgedessen eine
Anzahl von Taktperioden vergehen, bevor der Datensatz am Ausgang
des SDRAM zur Verfügung
steht. Die Anzahl von Taktperioden zwischen der Anlegung einer Befehlseingabe
und dem Vorliegen von Ausgangsdaten wird oft als "CAS-Latenzzeit" bezeichnet. Der
Ausdruck CAS-Latenzzeit wird verwendet, da es gewöhnlich ein
Spaltenadresshinweis-(column address strobe, CAS)-Signal ist, das
zum Initiieren einer Datenzugriffsoperation verwendet wird.
-
SDRAMs
können
typischerweise eine programmierbare CAS-Latenzzeit bereitstellen.
Das heißt,
während
ein SDRAM eine minimale CAS-Latenzzeit aufweisen kann, kann die
CAS-Latenzzeit bedarfsgemäß um eine
oder mehrere Bezugstaktperioden verlängert oder verkürzt werden.
CAS-Latenzzeitwerte, sowie verschiedene andere Betriebsparameter,
werden konventionell durch Anlegen eines oder mehrerer vorbestimmter
Befehle an ein "Betriebsartregister" innerhalb des SDRAM
eingestellt.
-
Ein
Grund dafür,
dass programmierbare CAS-Latenzzeiten existieren, besteht in der
Aufnahme eines Bereichs von Betriebsgeschwindigkeiten. Innerhalb
eines SDRAM kann die Zeit, die zum Erzeugen einer internen Adresse
nach der Aktivierung eines CAS-Signals benötigt wird, als eine Adresszugriffszeit
betrachtet werden. Die Adresszugriffszeit stellt die Geschwindigkeit
dar, bei der Dekoder und verknüpfte
Schaltungen innerhalb des SDRAM arbeiten, und kann unabhängig von
dem Bezugstaktsignal sein. Infolgedessen können Variationen in der Bezugstaktfrequenz Änderungen
in der CAS-Latenzzeit
erfordern, um den effizientesten Betrieb des SDRAM sicherzustellen.
Zum Beispiel können
einige Busse nicht in der Lage sein, bei der maximalen Burst-Übertragungsfrequenz
zu arbeiten. In einem solchen Fall wird der Bezugstakt für den SDRAM
relativ langsam sein. Minimale Adresszugriffszeiten können in
eine Bezugstaktperiode fallen. In dem Fall, dass der Bezugstakt
bei der maximalen Burst-Übertragungsfrequenz
abläuft,
kann die minimale Adresszugriffszeit jedoch größer als zwei oder mehr Taktperioden
sein. Folglich kann die SDRAM CAS-Latenzzeit verlängert werden
müssen.
-
Eine
Reihe von Ansätzen
ist entwickelt worden, um den SDRAM in die Lage zu versetzen, in
einer Burst-Betriebsart zu arbeiten. Zwei gemeinsame Ansätze sind "Fließband-" Systeme und "Vorauslese-" Systeme. Fließbandsysteme
umfassen typischerweise eine Reihe von Schaltungsstufen, von denen
jede synchron mit dem Bezugstakt arbeitet. In dieser Weise werden
Adressinformationen und Daten entlang der verschiedenen Schaltungsstufen
verschoben, was schließlich
zur Ausgabe von Daten bei aufeinanderfolgenden Bezugstaktzyklen
von einer Ausgangsstufe resultiert. Vorauslesesysteme führen zuerst "Vorauslesen" mehrerer Datensätze in einer im
wesentlichen parallelen Weise aus. Die mehreren Datensätze werden
dann anschließend
in einer reihenweise während
aufeinanderfolgender Bezugstaktzyklen ausgegeben.
-
Nun
bezugnehmend auf 13, ist ein Zeitdiagramm aufgeführt, das
Leseoperationen in einem konventionellen Fließbandsystem darstellt. Das
Zeitdiagramm illustriert zwei aufeinanderfolgende Burst-Leseoperationen,
die jeweils eine Burst-Länge und
CAS-Latenzzeit von vier aufweisen. Das Fließbandsystem umfasst vier Stufen;
eine erste Stufe, die eine angelegte Adresse (ADD) empfängt und
eine Sequenz interner Adressen erzeugt, die aufeinanderfolgende
Adressen in einem Burst (YADD) darstellen; eine zweite Stufe, die
die internen Adressen vordekodiert, um vordekodierte Adressen (PYADD)
zu erzeugen; eine dritte Stufe, die die vordekodierten Adressen
an eine Anordnung innerhalb des SDRAM anlegt, was dazu führt, dass
Eingangs-/Ausgangssignale (IOBUS) zu einem Eingangs-/Ausgangs-(IO)-Bus intern
zu dem SDRAM geleitet werden; und eine vierte Stufe, die Datensignale
(DQ) auf einem Systemdatenbus extern zu dem SDRAM leitet.
-
Der
erste Lesezugriff beginnt mit der Anlegung einer ersten Basisadresse
(Aa0) synchron mit einem aktiven Lesebefehl (Read) zum Zeitpunkt
T1. In dem bestimmten Beispiel von 13 wird
der Lesebefehl durch eine Kombination von vier Signalen erzeugt,
die ein Reihenadresshinweissignal (/RAS), ein Spaltenadresshinweissignal
(/CAS), ein Schreibfreigabesignal (/WE) und ein Chipauswahlsignal (/CS)
umfassen.
-
Zwischen
den Zeitpunkten T1 und T2 wird die angelegte Adresse durch die erste
Stufe verarbeitet, was zur Erzeugung einer internen Basisadresse (YADD
= Aa0) führt.
-
Zwischen
den Zeitpunkten T2 und T3 erzeugt der Vordekoder eine vordekodierte
Basisadresse (PYADD = Aa0). Etwa gleichzeitig erzeugt die erste
Stufe eine zweite Burst-Adresse
(YADD = Aa1) der vier Adressen aufweisenden Burst-Sequenz.
-
Zwischen
den Zeitpunkten T3 und T4 führt die
dritte Stufe zur Ausgabe des der Basisadresse Aa0 entsprechenden
Datensatzes auf internen IO-Leitungen (IOBUS = Da0).
-
Gleichzeitig
erzeugt der Vordekoder der zweiten Stufe eine zweite vordekodierte
Burst-Adresse (PYADD
= Aa1), und die erste Stufe erzeugt eine interne dritte Burst-Adresse
(YADD = Aa2).
-
Zwischen
den Zeitpunkten T4 und T5 führt die
vierte Stufe zum Steuern eines Basisausgangsdatensatzes an den Datenstiften
des SDRAM (DQ = Aa0). Die letzte interne Burst-Adresse wird durch
die erste Stufe erzeugt (YADD = Aa3), eine dritte vordekodierte
Adresse wird durch die zweite Stufte erzeugt (PYADD = Aa2), und
die dritte Stufe führt
dazu, dass ein zweiter Datensatz auf die IO-Leitungen (IOBUS = Da1)
gesetzt wird.
-
Auf
diese Weise werden angelegte Adressinformationen in einer Fließbandweise
verarbeitet, so dass mehrere Adressen oder Datensätze durch
die Vorrichtung geleitet werden, jedoch nie an der gleichen Stufe
vorliegen. Durch Steuern jeder Stufe synchron mit dem Bezugstakt,
werden Adressen/Datenkollisionen vermieden, und Datensätze werden
synchron mit dem Bezugstakt ausgegeben.
-
Nun
bezugnehmend auf 14, ist ein Zeitdiagramm aufgeführt, das
Leseoperationen in einem konventionellen Vorauslesesystem darstellt.
Das Zeitdiagramm illustriert zwei aufeinanderfolgende Vorausleseoperationen,
die jeweils eine Burst-Länge von
vier, eine CAS-Latzenzzeit von drei und eine Vorausleseanzahl von
zwei aufweisen. Das Vorauslesesystem empfängt eine angelegte Adresse
(ADD) und erzeugt in Abhängigkeit
davon interne Adresspaare (YADD) gleich der Vorausleseanzahl (in
diesem bestimmten Fall zwei). Die internen Adressen werden dann
im wesentlichen parallel verarbeitet. In Abhängigkeit von den internen Adressen
werden parallel zwei vordekodierte Adressen (PYADD(E)) und (PYADD(O))
erzeugt. Die parallelen vordekodierten Adressen führen dazu,
dass entsprechende Ausgangsdatensätze auf parallele IO-Busse
(IOBU(E)) und IOBUS(O)) gesetzt werden. Daher umfasst eine Vorausleseschaltung
parallele Adressen- und/oder Datenverarbeitungsschaltungen, die
das Ablaufen mehrerer Zugriffsoperationen parallel zulassen. Nach
parallelem Zugriff auf mehrere Datensätze, werden dann schließlich die
parallelen Datensätze
in Reihenfolge an SDRAM-Ausgangsstiften (DQ) ausgegeben.
-
Der
erste Lesezugriff von 14 beginnt mit der Anlegung
einer ersten Basisadresse (Aa0) mit einem aktiven Lesebefehl (Read)
zum Zeitpunkt T1. In dem bestimmten Beispiel von 14 werden
Lesebefehle in der gleichen Weise erzeugt, wie in Verbindung mit 13 beschrieben
ist.
-
Zwischen
den Zeitpunkten T1 und T2 wird die angelegte erste Basisadresse
(Aa0) verarbeitet, um ein internes Adresspaar Aa0/Aa1 zu erzeugen. Dieses
Adresspaar (Aa0/Aa1) wird dann parallel zum Erzeugen paralleler
vordekodierter Adressen (PYADD(E) = Aa0 und PYADD(O) = Aa1) etwa
zum Zeitpunkt T2 verarbeitet.
-
Zwischen
den Zeitpunkten T2 und T3 führen die
parallelen vordekodierten Adressen zu Ausgangsdatensätzen auf
parallelen IO-Bussen (IOBUS(E) = Da0 und IOBUS(O) = Da1). Die parallelen Datensätze werden
dann in einer im wesentlichen seriellen Weise ausgegeben, wobei
der Datensatz Da0 zum Zeitpunkt T4 verfügbar ist und der Datensatz Da1
zum Zeitpunkt T5 zur Verfügung
steht.
-
Auf
diese Weise wird ein Vorauslesesystem in Abhängigkeit von angelegten Adressinformationen parallel
auf Datensätze
zugreifen. Die parallelen Datensätze
werden dann in einer seriellen Weise synchron mit dem Bezugstakt
ausgegeben werden.
-
Während die
oben beschriebenen Fließband-
und Vorauslesearchitekturen Speichervorrichtungen mit erhöhten Burst-Übertragungsfrequenzen bereitstellen
können,
ist es dennoch erwünscht,
noch höhere
Burst-Übertragungsfrequenzen
zu erzielen.
-
In
einem Fließbandsystem
können Burst-Übertragungsfrequenzen
durch Vergrößern der
Anzahl von Stufen innerhalb der Vorrichtung maximiert werden. Gleichzeitig
sollte der durch jede Stufe ausgeführte Verarbeitungsumfang auch
reduziert werden, da die langsamste Stufe die maximale Geschwindigkeit
des Fließbandsystems
bestimmen wird. Unglücklicherweise
kann es schwierig sein, die durch Stufen ausgeführte Verarbeitung noch weiter zu
reduzieren. Außerdem
kann eine Vergrößerung der
Anzahl von Stufen zu unerwünschter
Erhöhung der
Größe von Schaltungen
führen,
die zum Verbinden der verschiedenen Stufen benötigt werden. Folglich kann
die Anzahl von Stufen eine praktische Grenze von drei bis vier aufweisen.
-
In
einem Vorauslesesystem können Burst-Übertragungsfrequenzen
durch Vergrößern der
Anzahl von Adressen/Datensätzen
erhöht
werden, die parallel verarbeitet werden. Ein solcher Ansatz führt zu einer
Vergrößerung der
Anzahl paralleler Stufen. Dies kann den Peripheriebereich der Vorrichtung
vergrößern, was
nicht erwünscht
ist, da es ein allgemeines Entwurfsziel ist, Vorrichtungen mit einer
kleinstmöglichen
Chipgröße zu entwerfen.
Ein weiterer Nachteil für
die Verarbeitung größerer Anzahlen
von Adressen/Datensätze
besteht darin, dass Zugriffe auf eine kleinere Anzahl von Datensätzen nicht
möglich
sind. Daher wird mit einer Erhöhung
der Größe paralleler
Zugriffe der Freiheitsgrad gesenkt, bei dem ein System auf den Speicher
zugreift. Dies kann nachteilige Auswirkungen auf Systemleistung haben.
Aus diesen Gründen
ist das Ausmaß paralleler
Verarbeitung allgemein auf zwei oder drei begrenzt.
-
Unter
der Prämisse
der Erhöhung
von Geschwindigkeiten der CPUs und anderer Systemeinrichtungen,
besteht eine Aufgabe der Erfindung darin, einen Weg zum Überwinden
der oben beschriebenen Systembegrenzungen zu schaffen und dadurch
schnellere Burst-Übertragungsfrequenzen
in einer Speichereinrichtung bereitzustellen.
-
Diese
Aufgabe wird durch eine Signalverzögerungsvorrichtung und durch
eine Halbleiterspeichervorrichtung gelöst, wie sie in Anspruch 1 bzw.
12 beansprucht sind; die abhängigen
Ansprüche
beziehen sich auf Weiterentwicklungen der Erfindung.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Den
offenbarten Ausführungsformen
zufolge, liefert eine Halbleiterspeichervorrichtung Hochgeschwindigkeitsauslesungen
von Datensätzen
in Burst-Betriebsart. Die Datensätze
werden zeitweilig innerhalb einer Signalverzögerungsvorrichtung gespeichert,
bis die Datensätze
an einen Ausgangspuffer ausgegeben werden können, der in einer synchronen
Weise arbeitet.
-
Gemäß einem
Aspekt der Ausführungsformen,
weist die Signalverzögerungsvorrichtung
eine Anzahl von Datenregistern auf, die parallel geschaltet sind.
Datenwerte werden in ein Datenregister gemäß einem Eingabesteuersignal
eingegeben und von einem Datenregister gemäß einem Ausgabesteuersignal
ausgegeben. Die Eingabesteuersignale und Ausgabesteuersignale werden
in Abhängigkeit von
der Ausgabe einer gemeinsamen Signalgeneratorschaltung erzeugt.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
weisen die Datenregister ein erstes Übertragungsgatter verbunden
mit einem Eingangsanschluss auf, wobei das erste Übertragungsgatter durch
ein Eingabesteuersignal gesteuert wird. Der Ausgang des ersten Übertragungsgatters
ist mit dem Eingang eines ersten Inverters verbunden, und der Ausgang
des ersten Inverters ist sowohl mit dem Eingang eines zweiten Inverters
als auch dem Eingang eines zweiten Übertragungsgatters verbunden.
Der Ausgang des zweiten Inverters ist mit dem Ausgang des ersten Übertragungsgatters
verbunden. Das zweite Übertragungsgatter
ist an einen Ausgangsanschluss gekoppelt.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
weisen die Datenregister eine Flip-Flop-Schaltung mit einem Eingang,
der mit einem Eingangsanschluss verbunden ist, und einem Steuertakteingang
auf, der ein Eingabesteuersignal empfängt. Die Flip-Flop-Schaltung hält einen
Wert von dem Eingangsanschluss synchron mit dem Eingabesteuersignal.
Die Datenregister weisen ferner ein zweites Übertragungsgatter mit einem
Eingang auf, der mit dem Ausgangsanschluss der Flip-Flop-Schaltung
verbunden ist. Die zweiten Übertragungsgatter
werden durch Ausgabesteuersignale gesteuert.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
weist eine Signalgeneratorschaltung einen Zähler zum Erzeugen eines Zählwerts
und einen Dekoder zum Dekodieren der Zählwerte in Zählsignale
auf.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
gibt die Signalgeneratorschaltung einen Zählwert in Binärform aus.
Der binäre
Zählwert
wird in Eingabesteuersignale und Ausgabesteuersignale dekodiert.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
weist eine Signalverzögerungsvorrichtung
zwei Datenregister auf. Ein Zählwert
wird durch einen Eingangsinverter, der ein Eingabesteuersignal erhält, und
einen Ausgangsinverter dekodiert, der ein Ausgabesteuersignal erhält. Ein
Register erhält
das Eingabe- und Ausgabesteuersignal, während das andere Register ein
invertiertes Eingabesteuersignal und invertiertes Ausgabesteuersignal
erhält.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
wird ein Speicherregister einer Signalverzögerungsvorrichtung durch ein
Eingabesteuersignal und ein Ausgabesteuersignal gesteuert, wobei eine
vorbestimmte Zeitspanne zwischen der Aktivierung des Eingangssteuersignals
und der Aktivierung des Ausgangssteuersignals vorliegt.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
wird die vorgegebene Zeitspanne zwischen der Aktivierung der Eingabe-
und Ausgabesteuersignale desselben Registers durch Erzeugen der
Eingabe- und Ausgabesteuersignale aus verschiedenen dekodierten
Ausgaben eines Zählers
erreicht.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
sind Strukturen zum Auswählen
der Dauer der Zeitspanne zwischen der Aktivierung von Eingabesteuersignalen
und der Aktivierung von Ausgabesteuersignalen vorgesehen.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
weist die Struktur, die die Auswahl der Zeitspannendauer ermöglicht,
eine Anzahl von Schaltnetzwerken auf. Die Schaltnetzwerke ermöglichen
die Verwendung verschiedener dekodierter Taktausgaben zum Erzeugen
der Eingabe- und Ausgabesteuersignale. Durch Aktivieren verschiedener Schaltnetzwerke
können
verschiedene Zeitspannendauern ausgewählt werden.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
umfasst eine Halbleiterspeichervorrichtung eine Leseschaltung zum
Lesen gespeicherter Daten in Abhängigkeit
von externen Eingabesignalen sowie eine Signalverzögerungsvorrichtung
mit einer Anzahl von parallel angeordneten Speicherregistern. Daten
von der Leseschaltung werden in ausgewählten Speicherregistern gemäß den Eingabesteuersignalen
gespeichert und von den Speicherregistern in Übereinstimmung mit Ausgabesteuersignalen
ausgegeben. Die Halbleiterspeichervorrichtung weist ferner einen
Zähler
auf, der ein Zählsignal
in Abhängigkeit
von einem Bezugstakt liefert, einen Eingangssteuerabschnitt, der
die Eingabesteuersignale in Abhängigkeit
von dem Zählsignal
erzeugt, und einen Ausgangssteuerabschnitt, der die Ausgabesteuersignale
in Abhängigkeit
von dem Zählsignal
erzeugt. Die Eingangs- und Ausgangssteuerabschnitte arbeiten in Abhängigkeit
von verschiedenen Flanken eines Bezugtakts zum Verarbeiten eines
gegebenen Datensatzes aus der Leseschaltung. Auf diese Weise kann die
Leseschaltung als ein Fließbandsystem
aufgebaut werden, in dem mehrere Verarbeitungsschritte in Abhängigkeit
von demselben Systemtaktzyklus ausgeführt werden.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
können
die Register innerhalb der Signalverzögerungsvorrichtung durch zueinander
verschiedene Eingabe- und Ausgabesteuersignale gesteuert werden
oder alternativ durch gemeinsame Eingabe- und Ausgabesteuersignale
gesteuert werden.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
weist die Halbleiterspeichervorrichtung ferner einen Ausgangspuffer
auf, der mit der Signalverzögerungsvorrichtung
verbunden ist. Der Ausgangspuffer gibt Daten aus, die von der Signalverzögerungsvorrichtung
bei einer gegebenen Taktflanke eines Bezugtakts erhalten werden.
Für einen
gegebenen Datensatz arbeitet die Leseschaltung in Abhängigkeit
von einer anderen Bezugtaktflanke als der Ausgangspuffer.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
vergeht eine vorbestimmte Anzahl von Bezugtaktperioden zwischen
der Aktivierung der Leseschaltung und der Akti vierung des Ausgangspuffers
für einen
gegebenen Datensatz. Die Signalverzögerungsvorrichtung weist eine
Anzahl von Registern gleich der vorbestimmten Anzahl auf.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
weist die Halbleiterspeichervorrichtung eine Dekodieranordnung zwischen
der Signalverzögerungsvorrichtung
und dem Eingangssteuerabschnitt oder zwischen der Signalverzögerungsvorrichtung
und dem Ausgangssteuerabschnitt auf. Die Dekodieranordnung dekodiert
Zählwerte,
die von dem Zähler
ausgegeben werden.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
weist die Halbleiterspeichervorrichtung einen Zähler mit einer Anzahl von Zuständen gleich der
Anzahl von Registern innerhalb der Signalverzögerungsvorrichtung auf. Der
Zustand des Zählers ändert sich
in Abhängigkeit
von einem Bezugstakt und wird als eine Anzahl von Zählsignalen
ausgegeben. Der Eingangssteuerabschnitt weist eine Anzahl von Zählverzögerungsschaltungen
auf, die die Zählsignale
verzögern.
Halteschaltungen innerhalb des Eingangssteuerabschnitts erhalten
die verzögerten Zählsignale
und halten sie in Abhängigkeit
von einem Lesetaktsignal zum Erzeugen der Eingangssteuersignale.
Der Ausgangssteuerabschnitt verwendet die Zählsignale zum Erzeugen der
Ausgangssteuersignale.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
weist die Halbleiterspeichervorrichtung eine Anzahl von Zuständen gleich
der Anzahl von Registern innerhalb der Signalverzögerungsvorrichtung
auf. Der Zustand des Zählers ändert sich
in Abhängigkeit
von einem Bezugstakt und wird als ein Zählsignal ausgegeben. Der Eingangssteuerabschnitt
weist eine Zählverzögerungsschaltung,
die das Zählsignal
verzögert,
und einen Inverter auf, der das Zählsignal invertiert. Eine Halteschaltung
erhält das
verzögerte,
invertierte Zählsignal
und hält
es in Abhängigkeit
von einem Lesetaktsignal zum Erzeugen eines Eingangssteuersignals.
Der Ausgangssteuerabschnitt verwendet das Zählsignal zum Erzeugen eines
Ausgangssteuersignals.
-
Gemäß einem
anderen Aspekt der Ausführungsform
weist die Halbleiterspeichervorrichtung einen Zähler mit einer Anzahl von Zuständen gleich
der Anzahl von Registern innerhalb der Signalverzögerungsvorrichtung
auf. Der Zustand des Zählers ändert sich
in Abhängigkeit
von einem Bezugstakt und wird als eine Anzahl von Zählsignalen
ausgegeben. Der Eingangssteuerabschnitt weist eine Anzahl von Zählverzögerungsschaltungen
auf, die die Zählsignale
verzögern.
Halteschaltungen innerhalb des Eingangssteuerabschnitts erhalten
die verzögerten Zählsignale
und halten sie in Abhängigkeit
von einem Lesetaktsignal zum Erzeugen der Eingangssteuersignale.
Außerdem
sind Schalt-Schaltungen zwischen den Halteschaltungen und Verzögerungsschaltungen angeordnet.
Die Schalt-Schaltungen bestimmen, welche verzögerten Zählsignale an welche Halteschaltung
gekoppelt werden. Der Ausgangssteuerabschnitt verwendet die Zählsignale
zum Erzeugen der Ausgangssteuersignale.
-
Gemäß einem
anderen Aspekt der Ausführungsformen
weist die Halbleiterspeichervorrichtung einen Lesetaktgenerator
auf, der ein Lesetaktsignal in Abhängigkeit von einem Bezugstakt
erzeugt. Die Halbleiterspeichervorrichtung umfasst ferner eine Logikproduktschaltung,
die ein logisches Produkt zwischen dem Lesetakt und einem Freigabesignal
bildet, um eine Angabe der Dauer der Lesezeitspanne zu liefern.
Diese Angabe wird an eine Zählerschaltung
angelegt, um Zählsignale
während
der Lesezeitspanne zu erzeugen. Das Ausgabesteuersignal verwendet
das logische Produkt der Zählsignale
und des Freigabesignals zum Erzeugen der Ausgangssteuersignale.
Infolgedessen arbeiten die Eingabe- und Ausgabesteuersignale nur
während
der Lesezeitspanne.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 ist
ein Blockdiagramm einer Halbleiterspeichervorrichtung, das eine
erste Ausführungsform
der vorliegenden Erfindung zeigt.
-
2 ist
ein schematisches Diagramm, das einen First-In-First-Out-Puffer
(FIFO) darstellt, der in der Halbleiterspeichervorrichtung von 1 verwendet
werden kann.
-
3 ist
ein Zeitdiagram, das den Betrieb der Halbleiterspeichervorrichtung
von 1 darstellt.
-
4 ist
ein Zeitdiagram, das das Verhältnis zwischen
FIFO-Eingabesteuersignalen und FIFO-Ausgabesteuersignalen in der
ersten Ausführungsform
zeigt.
-
5.
ist ein Blockdiagramm einer Halbleiterspeichervorrichtung, das eine
zweite Ausführungsform
der vorliegenden Erfindung zeigt.
-
6 ist
ein schematisches Diagramm, das einen FIFO darstellt, der in der
Halbleiterspeichervorrichtung von 5 verwendet
werden kann.
-
7 ist
ein Zeitdiagramm, das den Betrieb der Halbleiterspeichervorrichtung
von 5 darstellt.
-
8 ist
ein Blockdiagramm einer Halbleiterspeichervorrichtung, das eine
dritte Ausführungsform
der vorliegenden Erfindung zeigt.
-
9 ist
ein schematisches Diagramm, das einen FIFO darstellt, der in der
Halbleiterspeichervorrichtung von 8 verwendet
werden kann.
-
10 ist
ein Zeitdiagramm, das den Betrieb der Halbleiterspeichervorrichtung
von 8 für
eine CAS-Latenzzeit von "3" zeigt.
-
11 ist
ein Zeitdiagramm, das den Betrieb der Halbleiterspeichervorrichtung
von 8 für
eine CAS-Latenzzeit von "4" zeigt.
-
12 ist
ein Zeitdiagramm, das das Verhältnis
zwischen FIFO-Eingabesteuersignalen und FIFO-Ausgabesteuersignalen
in der dritten Ausführungsform
sowohl für
eine CAS-Latenzzeit von "3" als auch eine CAS-Latenzzeit
von "4" gemäß der dritten Ausführungsform
zeigt.
-
13 ist
ein Zeitdiagramm, das die Ausleseoperation eines konventionellen
Fließbandsystems
zeigt.
-
14 ist
ein Zeitdiagramm, das die Ausleseoperation eines konventionellen
Vorauslesesystems zeigt.
-
AUSFÜHRLICHE
BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
-
Verschiedene
ausführliche
Ausführungsformen
der vorliegenden Erfindung sollen nun in Verbindung mit einer Reihe
von Blockdiagrammen und Zeitdiagrammen beschrieben werden.
-
Nun
bezugnehmend auf die 1 bis 3, soll
eine erste Ausführungsform
beschrieben werden. 1 ist ein Blockdiagramm einer
Halbleiterspeichervorrichtung gemäß der ersten Ausführungsform. 2 ist
ein schematisches Diagramm einer Signalverzögerungsvorrichtung, die in
der ersten Ausführungsform
von 1 verwendet werden kann. In der bestimmten Anordnung
der ersten Ausführungsform,
ist die Signalverzögerungsvorrichtung
ein First-In-First-Out-Puffer (FIFO). 3 ist ein
Zeitdiagramm, das den Betrieb der ersten Ausführungsform darstellt.
-
Bei
der folgenden Beschreibung der ersten Ausführungsform wird angenommen,
dass die Speichervorrichtung eine Spaltenadresshinweis-(CAS)-Latenzzeit
von drei und eine Burst-Länge
von vier aufweist. Natürlich
können
diese Werte programmierbar sein und sollten nicht so ausgelegt werden,
dass sie die erste Ausführungsform
oder jegliche andere Ausführungsformen
darauf begrenzen.
-
Nun
bezugnehmend auf 1, ist die ersten Ausführungsform
durch die allgemeine Bezugsziffer 100 bezeichnet und so
gezeigt, dass sie eine Speicherzellenanordnung 102 aufweist.
Die Speicherzellenanordnung 102 besteht aus Speicherzellen,
die in Form einer Matrix mit Reihen und Spalten angeordnet sind.
Die Speicherzellen der selben Spalte sind mit mindestens einer Ziffernleitung
verbunden. In Abhängigkeit
von einem internen Spaltenadresssignal wird ein Spaltenadressdekoder
(nicht gezeigt) einen Satz von Ziffernleitungen auswählen. Daten
von Speicherzellen, die mit den ausgewählten Ziffernleitungen verbunden
sind, werden durch Leseverstärker
(nicht gezeigt) innerhalb der Speicherzellenanordnung 102 verstärkt. Die
verstärkten
Daten werden dann an einen Lese/Schreibbus (RWBUS) ausgegeben.
-
Der
RWBUS ist mit einer Signalverzögerungsvorrichtung 104 verbunden.
Die Signalverzögerungsvorrichtung 104 ist über einen
Datenbus (OUT) an einen Ausgangspuffer 106 gekoppelt. Der
Ausgangspuffer 106 liefert Ausgangsdaten an externen Verbindungen
(DQ). Die externen Verbindungen können, nur als ein Beispiel,
Ausgangsstifte einer integrierten Schaltung darstellen.
-
Die
erste Ausführungsform
schafft Verbesserungen in der Zugriffszeit durch Verarbeitung von Adressinformationen
und Daten in einer asynchronen Weise vor der Signalverzögerungsvorrichtung 104.
Das heißt,
von der Anlegung eines Lesebefehls zum Vorliegen von Ausgangsdaten
auf dem RWBUS wird die Verarbeitung asynchron zu einem internen synchronen
Takt (ICLK) ausgeführt
(das Signal ICLK ist synchron zu dem Bezugtaktsignal, das für Systemzeitsteuerung
verwendet wird). Gleichzeitig liefert der Ausgangspuffer 106 Ausgangsdaten
synchron zu dem Signal ICLK. Datenkollisionen zwischen den synchronen
Ausgangsdaten der Speicherzellenanordnung 102 und den durch
den Ausgangspuffer 106 gelieferten synchronen Daten werden
durch die Signalverzögerungsvorrichtung 104 aufgelöst.
-
Wie
oben festgestellt ist, stellt die Signalverzögerungsvorrichtung 104 in
der ersten Ausführungsform 100 einen
FIFO dar. Ein Beispiel eines FIFO, der als die Signalverzögerungsvorrichtung 104 verwendet
werden kann, ist in 2 angeführt und durch die allgemeine
Bezugsziffer 200 bezeichnet. Der FIFO empfängt eingegebene
Datensätze
auf dem RWBUS und gibt sie in einer First-In-First-Out-Weise auf
dem OUT-Bus aus.
-
In
der Anordnung von 1 muss der FIFO nur eine Anzahl
von Datensätzen
gleich der CAS-Latenzzeit minus eins halten können. Da die erste Ausführungsform
so beschrieben werden wird, dass sie eine CAS-Latenzzeit von drei
aufweist, hat der FIFO eine Gesamttiefe von zwei (d. h. kann jedes
Mal ein Maximum von zwei Datensätzen
speichern). Eine solche FIFO-Tiefe hilft bei der Sicherstellung,
dass Daten in einer kontinuierlichen Weise ausgegeben werden, wenn
auf mehrere Datensätze
Zugriff genommen wird.
-
Dementsprechend
ist der in 2 aufgeführte FIFO 200 mit
einem ersten Register 202-0 und
einem zweiten Register 202-1 gezeigt. Die beiden Register
(202-0 und 202-1) werden in einer zyklischen Weise
verwendet, im wesentlichen synchron mit dem Signal ICLK. Daher würden Zugriffe
auf das erste Register 202-0, dann das zweite Register 202-1,
dann das erste Register 202-0 und so weiter erfolgen.
-
Jedes
Register (202-0 und 202-1) ist so gezeigt, dass
es ein erstes Übertragungsgatter
(204-0 und 204-1), eine Speicherschaltung (206-0 und 206-1)
sowie ein zweites Übertragungsgatter
(208-0 und 208-1) aufweist. Die ersten Übertragungsgatter (204-0 und 204-1)
verbinden Daten auf dem RWBUS mit ihren jeweiligen Speicherschaltungen
(206-0 und 206-1). Die zweiten Übertragungsgatter
(208-0 und 208-1) koppeln Daten von ihren jeweiligen
Speicherschaltungen (206-0 und 206-1) an den OUT-Bus
(und weiter zu einem Ausgangspuffer hin).
-
In
der besonderen Anordnung von 2 weisen
die ersten Übertragungsgatter
(204-0 und 204-1) N-Kanal-Isolierschicht-Feldeffekttransistoren (IGFETs)
mit Drain-Source-Wegen
auf, die zwischen dem RWBUS und den Speicherschaltungen (206-0 und 206-1)
angeordnet sind. Das erste Übertragungsgatter 204-0 wird
durch ein erstes FIFO-Eingabesteuersignal (DSEL0) gesteuert, indem
das Signal DSEL0 an das Gate seines N-Kanal-Transistors gekoppelt
wird. In ähnlicher
Weise wird das erste Übertragungsgatter 204-1 durch
ein zweites FIFO-Eingabesteuersignal (DSEL1) gesteuert, indem das
Signal DSEL1 an das Gatter seines N-Kanal-Transistors gekoppelt
wird.
-
Die
Speicherschaltungen (206-0 und 206-1) des bestimmten
FIFO 200 von 2 sind als Signalspeicher gezeigt,
die durch Paare kreuzgekoppelter Inverter gebildet werden. Daher
weist jede Speicherschaltung (206-0 und 206-1)
einen ersten Inverter (210-0 und 210-1) und einen
zweiten Inverter (212-0 und 212-1) auf. Ein Eingang
jedes ersten Inverters (210-0 und 210-1) ist mit
seinem jeweiligen ersten Übertragungsgatter
(204-0 und 204-1) verbunden und ein Ausgang ist
an sein jeweiliges zweites Übertragungsgatter
(208-0 und 208-1) gekoppelt. Umgekehrt ist ein
Eingang jedes zweiten Inverters (212-0 und 212-1)
mit seinem jeweiligen zweiten Übertragungsgatter
(208-0 und 208-1) verbunden und sein Ausgang an
sein jeweiliges erstes Übertragungsgatter
(204-0 und 204-1) gekoppelt.
-
In
der bestimmten Anordnung von 2 ähneln die
zweiten Übertragungsgatter
(208-0 und 208-1) den ersten Übertragungsgattern (204-0 und 204-1),
die jeweils einen N-Kanal-IGFET einschließen. Jeder N-Kanal-IGFET weist
einen Source-Drain-Weg auf, der zwischen seiner jeweiligen Speicherschaltung
(206-0 und 206-1) und dem OUT-Bus angeordnet ist.
Das zweite Übertragungsgatter 208-0 wird
durch ein erstes FIFO-Ausgabesteuersignal (OSEL0) gesteuert, indem
das Signal OSEL0 an das Gate seines N-Kanal-Transistors angelegt wird. Das
zweite Übertragungsgatter 208-1 wird
durch ein zweites FIFO-Ausgabesteuersignal (OSEL1) gesteuert, das
an das Gate seines N-Kanal-Transistors
angelegt wird.
-
In
der bevorzugten Ausführungsform
des FIFO 200 wirken die FIFO-Eingabesteuersignale (DSEL0
und DSEL1) so, dass jedes Mal entweder das erste Übertragungsgatter 204-0 oder
das erste Übertragungsgatter 204-1 ausgewählt wird,
um dadurch Daten von dem RWBUS zu halten. In ähnlicher Weise wirken die FIFO-Ausgabesteuersignale (OSEL0
und OSEL1) derart, dass jedes Mal entweder das zweite Übertragungsgatter 208-0 oder
zweite Übertragungsgatter 208-1 zum
Ausgeben von Daten auf den OUT-Bus
ausgewählt
wird.
-
Wie
in 2 aufgeführt
ist, weist daher die bevorzugte FIFO-Signalverzögerungsschaltung Register (202-0 und 202-1)
auf, die parallel zwischen dem RWBUS und OUT-Bus angeordnet sind.
Es wird verstanden, dass die in 2 dargestellte
Anordnung des FIFO 200 die FIFO-Verarbeitung eines einzelnen
Bits eines Datensatzes darstellt und dass ein solcher FIFO 200 für jedes
Bit eines Datensatzes vorhanden ist. Die RWBUS-Verbindung mit dem
FIFO 200 in 2 kann auch als ein Eingangsanschluss zum
FIFO 200 angesehen werden. In ähnlicher Weise kann die OUT-Bus-Verbindung
zum FIFO 200 als ein Ausgangsanschluss betrachtet werden.
-
Die
bevorzugte FIFO-Anordnung mit parallelen Registern liefert Vorteile
gegenüber
konventionellen FIFO-Strukturen. Eine konventionelle FIFO-Struktur
weist typischerweise eine Anzahl von Halteschaltungen angeordnet
in Reihe auf. Ein solcher konventioneller Ansatz kann zur Verwendung
in einer Speichervorrichtung, wie zum Beispiel der in 1 aufgeführten, ungeeignet
sein. Wie bereits erwähnt,
sind programmierbare CAS-Latenzzeiten ein erwünschtes Merkmal in Speichervorrichtungen.
Im Fall der Verwendung eines konventionellen FIFO werden jedoch Änderungen
in der CAS-La tenzzeit nicht nur zu einer Änderung in der Anzahl von verwendeten
Stufen führen,
sondern werden ferner eine komplexere Steueranordnung zum seriellen
Leiten der Daten durch die Register erfordern. Wenn ein konventioneller
FIFO zum Beispiel die Reihenanordnung von vier Registern aufweisen
würde,
jedoch für eine
CAS-Latenzzeit von drei verwendet werden würde, würde die Zeit, die zum Leiten
von Daten durch den FIFO benötigt
wird, länger
als bei dem bevorzugten FIFO sein, da nur zwei Register verwendet
werden würden,
und Daten müssten
die verbleibenden zwei Register durchlaufen, um ausgegeben zu werden.
Dies steht im Gegenstand zu dem FIFO 200 der bevorzugten
Ausführungsform,
bei dem eine Erhöhung
der CAS-Latenzzeit keine Vergrößerung der Anzahl
von Reihenstufen erfordert. Auf diese Weise kann der bevorzugte
FIFO 200 höhere
Geschwindigkeiten und größere Flexibilität als konventionelle FIFOs
liefern.
-
Wieder
auf 1 zurückgreifend,
ist die erste Ausführungsform 100 so
gezeigt, dass sie ferner eine Verzögerungsschaltung 108 aufweist.
Die Verzögerungsschaltung 108 erhält ein internes
Taktsignal ICLK. Das Signal ICLK wird aus einem Bezugtaktsignal
(nicht gezeigt) erzeugt und ist synchron mit diesem, das von einer
externen Quelle an die bevorzugte Ausführungsform 100 angelegt
wird. Die Verzögerungsschaltung 108 bringt
eine Verzögerung
in das Signal ICLK ein, um ein verzögertes internes Taktsignal
ICLK1 zu erzeugen. In der bestimmten Anordnung von 1 entspricht
die durch die Verzögerungsschaltung 108 eingebrachte
Verzögerung
der Zeit, die zum Ausgeben eines Datensatzes aus einer Speicherzellenanordnung 102 auf
den RWBUS benötigt
wird.
-
Die
ersten Ausführungsform 100 weist
ferner einen Lesesynchronisierungssignal-Generator 110 auf.
Der Lesesynchronisierungssignal-Generator 110 erhält das Signal
ICLK1 und ein Lesefreigabesignal READEN und liefert ein Lesesynchronsignal
YRD. Der Lesesynchronisierungssignal-Generator 110 erzeugt
ein aktives YRD-Signal, wenn sowohl das Signal READEN als auch das
Signal ICLK1 aktiv (hoch) sind.
-
Das
Signal ICLK und das Signal READEN werden weiter an ein Logikgatter 112 angelegt.
Das Logikgatter 112 erzeugt ein Hochzählsignal OCNTCK, welches das
logi sche Produkt der Signale ICLK und READEN darstellt. In der bestimmten
Anordnung von 1 ist das Logikgatter 112 ein UND-Gatter
mit zwei Eingängen.
-
Das
Signal ONTCK wird an einen Zähler 114 angelegt,
der eine Zählzahl
erzeugt, die zyklisch eine Zahl gleich der Anzahl von Registerstufen
in der Signalverzögerungsvorrichtung 104 zählt. Da
die erste Ausführungsform 100 eine
Signalverzögerungsvorrichtung 104 mit
zwei Stufen aufweist, wird sie daher zyklisch von "0" bis "1" zählen und
dann erneut von "0" bis "1" zu zählen beginnen. In der Anordnung
von 1 wird die durch den Zähler 114 erzeugte
Zählung
durch den Zähler
in eine Anzahl von Zählsignalen
gleich der Anzahl von Registerstufen (in diesem Fall zwei) dekodiert.
Daher werden zwei Zählsignale (OCNT0
und OCNT1) von dem Zähler 114 ausgegeben,
wobei jedes Mal nur ein Zählsignal
aktiviert wird (hoch geht). Auf diese Weise wird ein Zählwert von
0 zu dem Signal OCNT0 dekodiert, das niedrig ist, und dem Signal
OCNT1, das hoch ist. Ein Zählwert
von 1 wird zu dem Signal DCNT0 dekodiert, das niedrig ist, und dem
Signal OCNT1, das hoch ist. Natürlich
könnte
der Zählzyklus
mit einem Zählwert
von entweder 0 oder 1 beginnen.
-
Der
Eingang der Signalverzögerungsvorrichtung 104 wird
durch einen Eingangssteuerabschnitt 116 gesteuert. Dementsprechend
werden Daten, die durch die Speicherzellenanordnung 102 auf
den RWBUS ausgegeben werden, in der Signalverzögerungsvorrichtung 104 gemäß den Eingabesteuersignalen
gehalten, die durch den Eingangssteuerabschnitt 116 erzeugt
werden. Da die bevorzugte Signalverzögerungsvorrichtung 104 von 1 ein
FIFO ist, kann der Eingangssteuerabschnitt 116 begrifflich als
ein "FIFO"-Eingangssteuerabschnitt 116 bezeichnet
werden. In dieser Anordnung wird der Eingangssteuerabschnitt 116 ein
Eingabesteuersignal entsprechend jeder Stufe innerhalb des FIFO
erzeugen. Daher wird nur das durch ein Eingabesteuersignal aktivierte
Register Eingangsdaten halten.
-
Der
Eingangssteuerabschnitt 116 der bevorzugten Ausführungsform 100 ist
so gezeigt, dass er zwei Zählverzögerungsschaltungen 118-0 und 118-1 aufweist.
Die Zählverzögerungsschaltung 118-0 verzögert das
Signal OCNT1 um eine vorbestimmte Zeitgröße zum Erzeugen eines Eingangssteuerzählsignals
DCNT0. In ähnlicher
Weise verzögert
die Zählverzögerungsschaltung 118-1 das
Signal OCNT0 um eine vorbestimmte Zeitgröße zum Erzeugen eines anderen
Eingabesteuersignals DCNT1.
-
Der
Eingangssteuerabschnitt 116 weist ferner Halteschaltungen 120-0 und 120-1 zum
Erzeugen der Eingabesteuersignale auf, die zum Halten von Daten
in der Signalverzögerungsvorrichtung 104 verwendet
werden. Genau ausgedrückt,
hält die
Halteschaltung 120-0 das Signal DCNT0 in Abhängigkeit von
der Anstiegsflanke des Signals YRD, um dadurch das erste Eingabesteuersignal
DSEL0 zu erzeugen. Die Halteschaltung 120-1 hält das Signal DCNT1
in Abhängigkeit
von der Anstiegsflanke des Signals YRD, um dadurch ein zweites Eingabesteuersignal
DSEL1 zu erzeugen. Die Signale DSEL0 und DSEL1 werden an die Signalverzögerungsvorrichtung 104 angelegt,
um Daten zu halten, die auf den RWBUS ausgegeben werden.
-
Wenn
die Signalverzögerungsvorrichtung 104 ein
FIFO ist, werden die Signale DSEL0 und DSEL1 wie in 2 aufgeführt an den
FIFO angelegt.
-
Die
Ausgabe von Daten aus der Signalverzögerungsvorrichtung 104 wird
durch einen Ausgangssteuerabschnitt 122 gesteuert. Dementsprechend werden
Daten durch die Signalverzögerungsvorrichtung 104 in
Abhängigkeit
von Ausgabesteuersignalen auf den OUT-Bus gesetzt, die durch den
Ausgangssteuerabschnitt 122 erzeugt werden. Da die bevorzugte
Signalverzögerungsvorrichtung 104 von 1 ein
FIFO ist, kann der Ausgangssteuerabschnitt 122 begrifflich
als ein "FIFO-" Ausgangssteuerabschnitt 122 bezeichnet
werden. In dieser Anordnung wird der Ausgangssteuerabschnitt 122 ein
Ausgabesteuersignal entsprechend jeder Stufe innerhalb des FIFO
erzeugen. Daher wird nur das durch ein Ausgabesteuersignal aktivierte
Register Ausgangsdaten an den OUT-Bus liefern.
-
Der
Ausgangssteuerabschnitt 122 der ersten Ausführungsform 100 umfasst
eine Anzahl von Ausgangssteuerlogikgattern, wobei ein Logikgatter
jedem Zählsignal
entspricht. Daher weist in der bestimmten Anordnung von 1 der
Ausgangssteuerabschnitt 122 zwei Ausgangssteuerlogikgatter 124-0 und 124-1 auf,
die die Zählsignale
OCNT0 bzw. OCNT1 erhalten. Zusätzlich
empfangen beide der Ausgangssteuerlogikgatter (124-0 und 124-1)
das Signal READEN als eine Eingabe. In der ersten Ausführungsform 100 stellen
die Ausgangssteuerlogikgatter (124-0 und 124-1)
UND-Gatter dar. Daher liefert das Ausgangssteuerlogikgatter 124-0 ein
Ausgabesteuersignal OSEL0, das das logische Produkt der Signale
OCNT0 und READEN darstellt, und das Ausgangssteuerlogikgatter 124-1 liefert
ein Ausgabesteuersignal OSEL1, das das logische Produkt der Signale
OCNT1 und READEN darstellt. Die Signale OSEL0 und OSEL1 werden an
die Signalverzögerungsvorrichtung 104 angelegt,
um Daten an den OUT-Bus von der Signalverzögerungsvorrichtung 104 zu
liefern.
-
Wenn
die Signalverzögerungsvorrichtung 104 ein
FIFO ist, werden die Signale OSEL0 und OSEL1 an den FIFO wie in 2 ausgeführt angelegt.
-
Daten,
die durch die Signalverzögerungsvorrichtung 104 auf
den OUT-Bus gesetzt wurden, werden durch den Ausgangspuffer 106 in
Abhängigkeit von
einem Ausgabesynchronsignal ICLKOE ausgegeben. Das Signal ICLKOE
wird erzeugt, um synchron mit dem Signal ICLK zu sein. In der ersten
Ausführungsform 100 wird
das Signal ICLKOE erzeugt, indem das logische Produkt des Signals
ICLK und des Signals READEN verzögert
um eine vorbestimmte Verzögerungsperiode
gebildet wird.
-
Es
wird darauf hingewiesen, dass die bestimmte, in 1 aufgeführte Taktanordnung
für den Ausgangspuffer 106 nicht
als die vorliegende Erfindung begrenzend aufgefasst werden sollte.
Während die
bevorzugte Ausführungsform 100 ein
Signal (ICLKOE) verwendet, das für
den Ausgangspuffer 106 bestimmt ist, könnte, nur als ein Beispiel,
das Signal ICLK zum Steuern des Ausgangspuffers 106 verwendet
werden.
-
Nach
detaillierter Beschreibung der Bestandteile einer bestimmten ersten
Ausführungsform 100, soll
nun der Betrieb der ersten Ausführungsform 100 beschrieben
werden.
-
Eine
Leseoperation für
die bevorzugte Ausführungsform 100 wird
durch die Anlegung von Eingangssignalen eines konventionellen synchronen
Direktzugriffsspeichers (SDRAM) initiiert werden. Daher wird eine
Spaltenpufferschaltung (nicht gezeigt) ein extern angelegtes Adresssignal
gleichzeitig damit erhalten, dass ein Lesebefehl angelegt wird.
Die Adresse wird daher die Basisadresse einer Burst-Sequenz von
Adressen darstellen. Die empfangene Adresse wird in eine Reihenadresse
und eine Spaltenadresse unterteilt und dann innerhalb der Halbleiterspeichervorrichtung
gehalten.
-
Nun
bezugnehmend auf das Zeitdiagramm von 3, wird
angenommen, dass ein externer Lesebefehl zum Zeitpunkt t1 angelegt
wird. Zu diesem Zeitpunkt hält
eine Reihenadresspufferschaltung (nicht gezeigt) eine extern angelegte
Reihenadresse und wählt
und aktiviert eine Wortleitung (nicht gezeigt) innerhalb der Speicherzellenanordnung 102. Die
Spaltenadresspufferschaltung hält
eine extern angelegte Spaltenadresse und gibt die Spaltenadresse
als ein internes Spaltenadresssignal aus. In einer typischen Speichervorrichtung,
die Adressmultiplexen verwendet, wird zuerst die Reihenadresse angelegt
und gehalten. Anschließend
wird die Spaltenadresse gleichzeitig mit der Anlegung des Lesebefehls angelegt
und gehalten. Die gehaltene Spaltenadresse kann, wie oben aufgeführt, die
Basisadresse einer Burst-Adressensequenz darstellen.
-
Es
wird verstanden werden, dass die Burst-Länge und CAS-Latenzzeit durch
einen Betriebsarteinstellbefehl initialisiert werden kann.
-
Ferner
führt zum
Zeitpunkt t1 die Anlegung des Lesebefehls zu der Aktivierung des
Signals READEN durch einen Burst-Zähler (nicht gezeigt). Daher wird
gezeigt, dass das Signal READEN kurz nach dem Zeitpunkt t1 hoch
geht. Das Signal READEN wird durch den Burst-Zähler für eine "Burst-Zeitspanne" hoch gehalten, die allgemein äquivalent
zu der Anzahl von Taktzyklen in der Burst-Sequenz ist. Da der durch 3 beschriebene
Zugriff für
eine Burst-Zählung
von vier ist, ist daher gezeigt, dass die Burst-Zeitspanne vier Perioden des Signals
ICLK nach der Anfangsanlegung des Lesebefehls dauern soll.
-
Außerdem wird
zum Ausführen
der Burst-Zählung,
während
das Signal READEN aktiv ist, der Spaltenadresspuffer zuerst die
interne Spaltenbasisadresse der Burst-Sequenz erzeugen. Die unteren
zwei Bits der interne Spaltenadresse werden dann in einer sequentiellen
Weise geändert,
um eine Sequenz von Burst-Adressen zu erzeugen. Die Burst-Adressensequenz
wird synchron mit dem Signal ICLK erzeugt werden.
-
Ein
Reihenadressdekoder (nicht gezeigt) wird jede gehaltene Reihenadresse
von einem Reihenadresspuffer erhalten und wird in Abhängigkeit davon
eine Wortleitung innerhalb der Speicherzellenanordnung 102 auswählen. Jede
Wortleitung entspricht einer Reihe von Speicherzellen.
-
Ein
Spaltenadressdekoder (nicht gezeigt) wird jede interne Spaltenadresse
erhalten, und wird in Abhängigkeit
davon eine Ziffernleitung innerhalb der Speicherzellenanordnung 102 auswählen. Jede Ziffernleitung
entspricht einer Spalte von Speicherzellen und wird an einen Leseverstärker angeschlossen,
wodurch Daten aus einer Speicherzelle der Spalte ausgelesen oder
in diese eingeschrieben werden.
-
Auf
diese Weise werden die mit einer ausgewählten Wortleitung und einer
ausgewählten
Ziffernleitung verbundenen Speicherzellen an den RWBUS über verknüpfte Leseverstärker ausgegeben.
Die Daten, die der zum Zeitpunkt t1 erzeugten Basisspaltenadresse
entsprechen, sind als DATA0 in der RWBUS-Signalform von 3 gezeigt.
-
Die
Erzeugung von Daten für
die nachfolgenden Datensätze
der Burst-Sequenz erfolgt in einer ähnlichen Weise. Daher wird
in Abhängigkeit
von dem zweiten ICLK-Impuls nach der Anlegung des Lesebefehls (der
ICLK-Impuls zum Zeitpunkt t2) der zweite Satz von Burst-Daten (DATA1)
auf den RWBUS gesetzt. In ähnlicher
Weise wird in Abhängigkeit von
dem dritten nachfolgenden ICLK-Impuls (zum Zeitpunkt t3) der dritte
Satz von Burst-Daten (DATA2) auf den RWBUS gesetzt. Nachfolgende
Datensätze werden
in einer ähnlichen
Weise ausgegeben.
-
Es
wird festgestellt, dass in Bezug zur Basisadresse des Daten-Burst
der Verarbeitungsweg von der Speicherzellenanordnung 102 zum
Eingangsende der Signalverzöge rungsvorrichtung 104 nur
in Abhängigkeit
von der Flanke des Signals ICLK initiiert wird, die vorliegt, wenn
der Lesebefehl erteilt wird (der Übergang von niedrig auf hoch
in dem Signal ICLK zum Zeitpunkt t1). Daher hängt der Verarbeitungsweg nicht
von nach dem Zeitpunkt t1 auftretenden ICLK-Impulsen ab und kann
so angesehen werden, dass er in einer "asynchronen Weise" wirkt.
-
In
der gleichen allgemeinen Weise arbeitet der Verarbeitungsweg in
einer asynchronen Weise für
die verbleibenden Datensätze
der Burst-Sequenz: Die Verarbeitung für den zweiten Datensatz (DATA1) erfolgt
in Abhängigkeit
von dem ICLK-Impuls zum Zeitpunkt t2 und nicht abhängig von
jeglichen nachfolgenden ICLK-Impulsen; die Verarbeitung für den dritten
Datensatz (DATA2) erfolgt in Abhängigkeit
von dem ICLK-Impuls zum Zeitpunkt t3 und nicht abhängig von
jeglichen nachfolgenden ICLK-Impulsen etc.
-
Auf
diese Weise werden Datenzugriffe aus der (und in die) Speicherzellenanordnung 102 unabhängig von
jeglicher CAS-Latenzzeiteinstellung ausgeführt. Gleichzeitig können mehrere
Datensätze
innerhalb einer bestimmten Zeitspanne (Zykluszeit) verarbeitet werden,
die ein Fließbandsystem
bilden.
-
Der
asynchrone Verarbeitungsweg der bevorzugten Ausführungsform 100 kann
Vorteile gegenüber
konventionellen synchronen Fließbandsystemen
schaffen. Zum Beispiel können
bei höheren
internen Taktfrequenzen Fälle
auftreten, in denen ein Satz von Daten- (oder Adress-) Werten bei
einer Verarbeitungsstufe ankommen kann, bevor die Stufe die Verarbeitung
eines vorhergehenden Satzes von Daten- (oder Adress-) Werten abgeschlossen
hat. Nur als ein Beispiel kann sich die interne Spaltenadresse von
einer Anfangsspaltenadresse zu einer nachfolgenden Spaltenadresse
zu einem Zeitpunkt ändern, wenn
der der Anfangsspaltenadresse entsprechende Datensatz noch nicht
auf einem Lese/Schreibbus eingerichtet worden ist. In einem solchen
Fall kann Fehlbetrieb auftreten.
-
Im
Gegensatz dazu kann der bevorzugte asynchrone Ansatz durch Betreiben
von Verarbeitungsstufen unabhängig
von dem ICLK-Signal solche Fehloperationen vermeiden, was eine Erhöhung von Betriebsfrequenzen
ermöglicht.
-
Der
Betrieb der bevorzugten Ausführungsform 100 fährt mit
Daten auf dem RWBUS fort, die in der Signalverzögerungsvorrichtung 104 gemäß den Eingabesteuersignalen
(DSEL0 und DSEL1) gehalten werden. Wenn der FIFO 200 von 2 verwendet
wird, werden Daten entweder in dem ersten Register 202-0 oder
dem zweiten Register 202-1 gehalten werden. Welches Register
(202-0 oder 202-1) Daten erhält, wird durch den Eingangssteuerabschnitt 116 bestimmt.
-
Wenn
Daten in der Signalverzögerungsvorrichtung 104 gehalten
werden, werden die Daten auf den OUT-Bus gemäß den Signalen OSEL0 und OSEL1
ausgegeben werden, die durch den Ausgangssteuerabschnitt 122 geliefert
werden. Die Daten werden dann durch den Ausgangspuffer 106 empfangen
und ausgegeben.
-
Es
soll nun detailliert die Steuerung der Signalverzögerungsvorrichtung 104 durch
den Eingangssteuerabschnitt 116 und Ausgangssteuerabschnitt 122 beschrieben
werden. In der Beschreibung wird angenommen, dass die Signalverzögerungsvorrichtung 104 der
FIFO 200 von 2 ist.
-
Zuerst
verzögert
die Verzögerungsschaltung 108 das
Signal ICLK um eine vorbestimmte Größe, um das Signal ICLK1 auszugeben.
Die Verzögerungsschaltung 108 dient
zur Bestimmung der Zeitsteuerung für das Halten von Daten, die
aus der Speicherzellenanordnung 102 in den FIFO 200 ausgelesen
wurden. Wenn die Zeitsteuerungsanforderungen derart sind, dass eine
Verzögerung
nicht erforderlich ist, und/oder inhärente Signallaufzeit ausreichend
zum Bilden der Verzögerung
ist, muss daher das Vorliegen der Verzögerungsschaltung 108 nicht
erforderlich sein.
-
Fortfahrend
mit der Beschreibung des Betriebs der bevorzugten Ausführungsform 100,
gibt der Lesesynchronisierungssignal-Generator 110 das Signal
ICLK1 als das Signal YRD aus, wenn das Signal READEN zu hoch übergeht.
Zur gleichen Zeit liefert das Logikgatter 112 das Signal
OCNTCK als ein logisches Produkt des Signals ICLK und Signals READEN.
-
Innerhalb
des Eingabesteuerabschnitts 116 verzögert die Zählverzögerungsschaltung 118-0 das Signal
OCNT1 von dem Zähler 114,
um das Signal DCNT0 zu erzeugen. Gleichzeitig verzögert die
Zählverzögerungsschaltung 118-1 das
Signal OCNT0 von dem Zähler 114 zum
Erzeugen des Signals DCNT1. Da die Zählverzögerungsschaltungen (118-0 und 118-1)
zum Anpassen der Zeitsteuerung der Signale DCNT0 und DCNT1 dienen,
müssen
die Zählverzögerungsschaltungen
(118-0 und 118-1) nicht erforderlich sein, wenn
die Zeitsteuerung ohne die Verwendung von Verzögerungsschaltungen passt.
-
Die
Halteschaltung 120-0 hält
das Signal DCNT0 und gibt es als das Signal DSEL0 in Abhängigkeit
von einem aktiven YRD-Signalimpuls aus. Auf die gleiche Weise wird
die Halteschaltung 120-1 das Signal DCNT1 halten und es
als das Signal DSEL1 in Abhängigkeit
von dem aktiven Signal YRD ausgegeben.
-
Auf
diese Weise wird, wenn das Signal READEN hoch ist, entweder das
Signal DSEL0 oder DSEL1 synchron mit dem Signal YRD hoch sein. Genau
ausgedrückt,
wenn der durch den Zähler 114 gelieferte
Zählwert "0" ist, setzt der Eingangssteuerabschnitt 116 die
Signale DSEL0 und DSEL1 auf einen hohen bzw. niedrigen Pegel. Wenn
der Zählwert "1" ist, werden die Signale DSEL0 und DSEL1
auf einen niedrigen bzw. hohen Pegel gesetzt.
-
Mit
der Erzeugung der Signale DSEL0 und DSEL1 wird sich das erste Übertragungsgatter 204-0 abhängig davon
ein- oder ausschalten, ob das Signal DSEL0 hoch bzw. niedrig ist.
Außerdem
wird sich das erste Übertragungsgatter 204-1 abhängig davon
ein- oder ausschalten,
ob das Signal DSEL1 hoch bzw. niedrig ist.
-
Da
bei dem durch 3 dargestellten bestimmten Zugriff
das Signal DSEL0 zum Zeitpunkt t2 hoch ist, wird das erste Übertragungsgatter 204-0 eingeschaltet.
Auf diese Weise wird das aus der Basisadresse (DATA0) resultierende
Datenbit (das auf den RWBUS ausgegeben wird) an den ersten Übertragungsgatterausgang
RBUS0 gekoppelt. Das Wertbit DATA0 wird daher innerhalb der Speicherschaltung 206-0 gespeichert
(und folglich in dem ersten Register 202-0 gespeichert).
-
Ferner
ist zum Zeitpunkt t2 das Signal DSEL1 niedrig, daher wird das erste Übertragungsgatter 204-1 ausgeschaltet.
Die Logik am ersten Übertragungsgatter
RBUS1 ist daher unbestimmt.
-
Zum
Zeitpunkt t3 wird der nächsten
Datensatz (DATA1) auf den RWBUS gesetzt. Das Signal DSEL0 ist jedoch
niedrig, was zum Ausschalten des ersten Übertragungsgatters 204-0 führt. Daher
wird das Wertbit DATA0 weiterhin in der Speicherschaltung 206-0 gehalten.
-
Auch
zum Zeitpunkt t3, ist das Signal DSEL1 hoch, was zum Einschalten
des Übertragungsgatters 204-1 führt. Das
Wertbit DATA1 wird an einen ersten Übertragungsgatterausgang RBUS1
gekoppelt und innerhalb der Speicherschaltung 206-1 gespeichert. Auf
diese Weise speichert das zweite Speicherregister 202-1 das
Wertbit DATA1.
-
Auf
diese Weise wird beim ersten Taktzyklus ein Basisadressendatenbit
in einem Register 202-0 gespeichert, während ein nachfolgender Datenbitwert
mit einem anderen Register 202-1 gespeichert wird. Diese
Operation wird für
einen zweistufigen FIFO fortgesetzt, wobei abwechselnde Datenbitwerte mit
Registern in der Zählzyklusreihenfolge
verbunden werden. Daher wird zum Zeitpunkt t4 ein drittes Datenbit
aus dem dritten nachfolgenden Datensatz (DATA2) in dem ersten Register 202-0 gespeichert, während zum
Zeitpunkt t5 ein viertes Datenbit aus dem vierten nachfolgenden
Datensatz (DATA3) in dem zweiten Register 202-1 gespeichert
wird.
-
Wie
in 3 aufgeführt
ist, werden, nachdem der Anfangsdatensatz (DATA0, der Datensatz, der
der Basisadresse der Burst-Sequenz entspricht) in dem FIFO 200 gespeichert
ist, die Signale OSEL0 und OSEL1 beginnen, Datensätze aus
dem FIFO 200 auszugeben. Dies wird in der ersten Ausführungsform 100 durch
den Ausgangssteuerabschnitt 122 erreicht.
-
Innerhalb
des Ausgabesteuerabschnitts 122 bildet das Ausgangssteuerlogikgatter 124-0 das
logische Produkt zwischen dem Signal OCNT0 und dem Signal READEN,
um das Signal OSEL0 zu erzeugen. Das Ausgangssteuerlogikgatter 124-1 bildet
das logische Produkt zwischen dem Signal OCNT1 und dem Signal READEN,
um das Signal OSEL1 zu erzeugen. Unter der Vorraussetzung, dass
das Signal READEN aktiv (hoch) ist, wird in dieser Konfiguration
entweder das Signal OSEL0 oder OSEL1 in Verbindung mit einer Anstiegsflanke
des Signals OCNTCK hoch getrieben.
-
Genau
ausgedrückt
sind, wenn der Zählwert "0" ist, die Signale OSEL0 und OSEL1 hoch
bzw. niedrig. Wenn im umgekehrten Fall der Zählwert "1" ist,
werden die Signale OSEL0 und OSEL1 niedrig bzw. hoch. In Abhängigkeit
von dem Pegel des Signals OSEL1 wird das zweite Übertragungsgatter 208-1 aus-
oder eingeschaltet werden. In ähnlicher Weise
wird das zweite Übertragungsgatter 208-1 in Abhängigkeit
von dem Signalpegel von OSEL1 aus- oder eingeschaltet.
-
Erneut
bezugnehmend auf 3, wird nach dem Halten der
Daten DATA0 durch die erste Anstiegsflanke des Signals DSEL0 die
Ausgabe von Datensätzen
etwa zum Zeitpunkt t3 begonnen werden. Da das Signal OSEL0 zum Zeitpunkt
t3 hoch ist, wird das zweite Übertragungsgatter 208-0 eingeschaltet
werden. Wie bereits erwähnt,
wird zu diesem Zeitpunkt das Wertbit DATA0 in der Speicherschaltung 206-0 gespeichert.
Wenn das zweite Übertragungsgatter 208-0 eingeschaltet
wird, wird dementsprechend das Wertbit DATA0 auf den OUT-Bus ausgegeben
werden.
-
Ferner
ist zum Zeitpunkt t3 das Signal OSEL1 niedrig, was zum Ausschalten
des zweiten Übertragungsgatters 208-1 führt. Auf
diese Weise werden in der Speicherschaltung 206-1 gespeicherte Datenwerte
von dem OUT-Bus isoliert. OSEL1 bleibt niedrig, wenn das Wertbit
DATA1 gespeichert wird, wodurch Durchleitung des Wertbits DATA1
zum OUT-Bus verhindert wird.
-
Zum
Zeitpunkt t4 wird das Signal OSEL0 niedrig und wird das Signal OSEL1
hoch. Das zweite Übertragungsgatter 208-0 wird
ausgeschaltet, und das zweite Übertragungsgatter 208-1 wird
eingeschaltet. Das Signal OSEL0 bleibt niedrig, wodurch es das zweite Übertragungsgatter 208-0 ausgeschaltet
hält und
verhindert, dass das Wertbit DATA2 zum OUT-Bus weitergeleitet wird.
Wenn das zweite Übertragungsgatter 208-1 eingeschaltet
wird, wird das Wertbit DATA1 auf den OUT-Bus ausgegeben.
-
Anschließend wird
etwa zum Zeitpunkt t5 das Wertbit DATA2, das vorhergehend in dem
ersten Register 202-0 gespeichert war, auf den OUT-Bus ausgegeben.
-
Der
Ausgangspuffer 106 erhält
die auf den OUT-Bus gesetzten Datenwerte, und gibt sie an Außenverbindungen
(DQ) synchron mit dem Signal ICLKOE aus. Dies führt dazu, dass Daten synchron
mit dem ICLK-Signal ausgegeben werden.
-
Unter
erneuter Bezugnahme auf 3, ist gezeigt, dass nach der
Anlegung des Lesebefehls zum Zeitpunkt t1 die Daten, die der Basisadresse
der Burst-Sequenz (DATA0) entsprechen, zum Zeitpunkt t4 ausgegeben
werden. Da die Daten drei Taktperioden nach dem Lesebefehl vorliegen,
stellt 3 eine CAS-Latenzzeit von drei dar.
-
Wie
oben beschrieben ist, ist in einer ersten Ausführungsform 100, die
den FIFO 200 als die Signalverzögerungsvorrichtung 104 verwendet,
die Anzahl von Registern innerhalb des FIFO 200 gleich
der CAS-Latenzzeit minus eins (zwei in dieser Ausführungsform).
Zum Sicherstellen von korrektem Datenfluss durch den FIFO 200,
muss jedoch ein Datensatz in ein spezielles Register in Übereinstimmung mit
einem Eingabesteuersignal (DSEL0 oder DSEL1) eingegeben werden.
Gleichzeitig müssen
Datensätze
von dem FIFO 200 nach der passenden Latenzzeit in Übereinstimmung
mit einem Ausgabesteuersignal (OSEL0 oder OSEL1) ausgegeben werden.
-
Infolgedessen
müssen
die Eingabesteuersignale (DSEL0 oder DSEL1) und Ausgabesteuersignale
(OSEL0 oder OSEL1) ein bestimmtes Verhältnis zueinander aufweisen.
Dieses Verhältnis
ist in einem Zeitdiagramm in 4 dargestellt.
Die Signale DSEL0 und DSEL1 werden zu einer einzigen Darstellung
DSEL vereinigt. Daher stellt ein aktives (hohes) Signal DSEL in
den FIFO geladene Daten dar, während
ein aktives (hohes) Signal OSEL Daten darstellt, die von dem FIFO
ausgegeben werden.
-
Das
richtige Verhältnis
zwischen den Eingabesteuersignalen (gemeinsam als DSEL bezeichnet) und
Ausgabesteuersignalen (gemeinsam als OSEL bezeichnet), wird durch
Verzögern
des Signals OCNT1 durch die Zählverzögerungsschaltung 118-0 zum
Erzeugen des Signals DSEL0 und durch Verzögern des Signals OCNT0 durch
die Zählverzögerungsschaltung 118-1 zum
Erzeugen des Signals DSEL1 aufrechterhalten. In dieser Konfiguration
werden nach der Aktivierung des Signals READEN die Signale DSEL0
und DSEL1 in einem bestimmten Verhältnis zu den Signalen OSEL0
und OSEL1 gehalten, unabhängig
von internen synchronen Zeitsteuersignalen, wie zum Beispiel dem
Signal ICLK und dergleichen.
-
Während die
bevorzugte Ausführungsform 100 einen
Zähler 114 aufweist,
der extern zu dem Eingangssteuerabschnitt 116 und dem Ausgangssteuerabschnitt 122 angeordnet
ist, sollte diese Anordnung nicht als die Erfindung auf eine solche
Konfiguration begrenzend ausgelegt werden.
-
Nur
als ein Beispiel könnten
der Eingangssteuerabschnitt 116 und der Ausgangssteuerabschnitt 122 jeweils
einen zugehörigen
Zähler
aufweisen, um die richtige Erzeugung der Signale DSEL0, DSEL1, OSEL0
und OSEL1 sicherzustellen. In dem Fall, dass in einer solchen Anordnung
eine Rückstelloperation
erfolgt, muss jedoch die Zählung
innerhalb jedes Zählers
auf die richtigen Werte zurückgestellt werden.
Zum Beispiel muss bei einer gegebenen CAS-Latenzzeit von drei, wenn
eine Rückstelloperation
erfolgt, ein Eingabesauswahlsignal (DSEL0 oder DSEL1) auf einen
aktiven Zustand gesetzt werden, während das entsprechende Ausgabeauswahlsignal (OSEL1
oder OSEL0) auf ei nen inaktiven Zustand gesetzt werden muss. Darüber hinaus
müssen
die beiden Zähler
betätigt
werden, um das in 4 dargestellte Verhältnis aufrechtzuerhalten.
Zum Verhindern einer jeglichen Abweichung von dem Verhältnis von 4,
müssten
die Zähler
einmal betätigt
werden, wenn eine Rückstellung
auftritt, um sie auf den richtigen Zählwert zu bringen. Dies kann
eine komplexere Steuerschaltung als die in 1 angeführte erfordern.
-
Im
Gegensatz zu dem oben beschriebenen Ansatz mit zwei Zählern erfordert
der Ansatz der bevorzugte Ausführungsform 100 mit
einzelnem Zähler weniger
Platz, was zu einer kleineren Gesamtchipgröße führt. Da die bevorzugte Ausführungsform 100 darüber hinaus
ein konstantes Verhältnis
zwischen den Signalen DSEL0/DSEL1 in Bezug zu den Signalen OSEL0/OSEL1
aufrechterhält,
müssen
der Eingangssteuerabschnitt 116 und der Ausgangssteuerabschnitt 122 nicht
immer betrieben werden und können
nur aktiviert werden, wenn das Signal READEN aktiv ist. Dies kann
zu reduzierten Bereitschaftsstromwerten führen.
-
Die
bevorzugte Ausführungsform 100 der Steueranordnung
von 1 stellt sicher, dass ein gegebener Datensatz
den selben Zähler
sowohl zum Eingeben des Datensatzes als auch zum Ausgeben des Datensatzes
verwendet, und kann richtige Datenflusssteuerung aufrechterhalten.
Daher erfordert die Anordnung der bevorzugten Ausführungsform 100 keine
Rückstellschaltung,
die auf einen Lesebefehl reagiert, wie es bei der oben beschriebenen
Variation mit zwei Zählern
der Fall wäre.
-
Das
Zeitsteuerdiagramm stellt ferner dar, wie die erste Ausführungsform 100 schnelle
Zugriffszeiten liefern kann. Bei einer geeigneten Bezugtakt- (und
folglich ICLK-) Frequenz und CAS-Latenzzeit wird die Zeitsteuerung
von auf dem RWBUS ankommenden Daten sich mit einem aktiven Eingabesteuersignal
(DSEL0 oder DSEL1) und Ausgabesteuersignal (OSEL0 oder OSEL1) für das selbe
Register überlappen.
Das heißt,
mit Daten auf dem RWBUS werden entweder beide Signale DSEL0 und
OSEL0 hoch sein, oder die Signale DSEL1 und OSEL1 werden beide hoch
sein. Zu einem solchen Zeitpunkt wird der Datensatz auf dem RWBUS
einfach den FIFO 200 durchqueren und auf den Datenpuffer 106 gelangen.
Folglich stellt der Zusatz, der dem synchronen Datenzugriffsweg
durch die bevorzugte FIFO-Anordnung hinzugefügt wird, die Verzögerung dar,
die durch den FIFO 200 durchlaufende Daten eingebracht
wird. Da eine solche Verzögerung
sehr kurz ist, könnte
der FIFO in eine existierende Anordnung ohne eine große Erhöhung von
Zugriffszeit eingebaut werden.
-
Nach
Durchlaufen des FIFO 200 bei einem Anfangslesezugriff,
werden die von dem FIFO 200 ausgegebenen Daten von der
Speichervorrichtung durch den Ausgangspuffer 106 ausgegeben.
Dieser Datensatz steht dann zur Verwendung durch andere Einrichtungen
bei der Anstiegsflanke des Signals ICLK zum Zeitpunkt t4 zur Verfügung, wodurch
die CAS-Latenzzeitanforderung (von drei in diesem Beispiel) erfüllt wird.
-
Auf
diese Weise werden minimale Schaltungen in dem Datenweg verwendet,
wodurch das Ablaufen von Fließbandbetrieb
ermöglicht
wird, jedoch gleichzeitig geringe Zusätze zu Zugriffsgeschwindigkeiten
auftreten. Hochgeschwindigkeits-Leseoperationen resultieren.
-
Es
wird ferner festgestellt, dass in der Anordnung der ersten Ausführungsform 100 keine
Notwendigkeit einer Änderung
in der Fließbandgrenzsteuerung
in Abhängigkeit
von Variationen in der CAS-Latenzzeit besteht. Die maximale Frequenz
interner synchroner Taktsignale (wie zum Beispiel ICLK) für eine jegliche
CAS-Latenzzeit ist die maximale Frequenz der Speichervorrichtungs-Speicherzellenanordnung 102 (d.
h. der DRAM- "Kern", wenn die Speichervorrichtung
ein SDRAM ist). Auf diese Weise kann die maximale Burst-Übertragungsfrequenz
erhöht
werden. Die Anordnung der bevorzugten Ausführungsform 100 schafft
ferner eine vereinfachte Schaltungsanordnung, was zu reduzierter
Chipfläche beiträgt.
-
Es
wird verstanden werden, dass während der
FIFO 200 von 2 kreuzgekoppelte Inverter (210-0/210-1 und 212-0/212-1)
verwendet, dies nicht als die Erfindung begrenzend ausgelegt werden
sollte. Nur als einige Beispiele, könnten eine "Flip-Flop-" Schaltung oder eine Datenhalteschaltung,
die RWBUS-Daten in Abhängigkeit
von Ein gabesteuersignalen (wie zum Beispiel DSEL0/DSEL1) hält, verwendet
werden. In ähnlicher
Weise sollte die bestimmte erste Übertragungsgatteranordnung
von 2 auch nicht als die Erfindung begrenzend ausgelegt
werden. Das logische Produkt eines Eingabesteuersignals und eines
RBUS-Datenwerts könnte
einen Eingangswert liefern. Logikproduktschaltungen könnten auch
an den Ausgängen
des FIFO 200 anstelle der zweiten Übertragungsgatteranordnung
verwendet werden. UND- und NAND-Gatter stellen nur zwei Beispiele
von Logikproduktsschaltungen dar, die verwendet werden könnten.
-
Nun
bezugnehmend auf die 5–7, soll
eine zweite Ausführungsform
der vorliegenden Erfindung detailliert beschrieben werden. 5 ist ein
Blockdiagramm einer Halbleiterspeichervorrichtung gemäß der zweiten
Ausführungsform. 6 ist ein
schematisches Diagramm einer Signalverzögerungsvorrichtung, die in
der zweiten Ausführungsform
verwendet werden kann. 7 ist ein Zeitdiagramm, das
den Betrieb der zweiten Ausführungsform
darstellt.
-
Nun
bezugnehmend auf 5, ist die zweite Ausführungsform
durch die allgemeine Bezugsziffer 500 bezeichnet und weist
viele der gleichen Bestandteile wie die in 1 aufgeführte erste
Ausführungsform
auf. In dieser Hinsicht werden gleiche Bestandteile durch die gleiche
Bezugsziffer bezeichnet werden, wobei jedoch die erste Ziffer eine "5" anstelle einer "1" darstellt.
-
Dementsprechend
weist die Ausführungsform
von 5 eine Speicherzellenanordnung 502, einen
Ausgangspuffer 506, eine Verzögerungsschaltung 508,
einen Lesesynchronisierungssignal-Generator 510 sowie ein
Logikgatter 512 auf. In der zweiten Ausführungsform 500 erfolgen
Lesezugriffe auf die Speicherzellenanordnung 502 in der
gleichen allgemeinen Weise wie bei der ersten Ausführungsform 100 und
führen
dazu, dass Datensätze
auf einen RWBUS gesetzt werden. Außerdem ist der Betrieb des
Ausgangspuffer 506, der Verzögerungsschaltung 508,
des Lesesynchronisierungssignal-Generators 510 und des
Logikgatters 512 im wesentlichen der gleiche, wie er in 1 aufgeführt ist.
-
Die
zweite Ausführungsform 500 unterscheidet
sich von der ersten Ausführungsform 100 darin, dass
sie eine Signalverzögerungsvorrichtung 526,
einen Eingangssteuerabschnitt 528, Ausgangssteuerabschnitt 530 sowie
Zähler 532 aufweist,
die sich hinsichtlich ihres Betriebs von denen von 1 unterscheiden.
-
Die
in den 6 aufgeführte
Signalverzögerungsvorrichtung
ist ein FIFO und ist durch die allgemeine Bezugsziffer 600 bezeichnet.
Zum Zweck dieser detaillierten Beschreibung wird angenommen, dass
der FIFO 600 als die Signalverzögerungsvorrichtung 526 in 5 verwendet
wird.
-
Nun
bezugnehmend auf 6, ist der FIFO 600 so
gezeigt, dass er eine Anzahl von Registern (602-0 und 602-1)
aufweist. Wie im Fall des FIFO 200 von 2 wird
die Anzahl von Registern im FIFO 600 gleich einem CAS-Latenzzeitwert
minus eins sein. Da ein CAS-Latenzzeitwert von drei angenommen wird,
weist der FIFO 600 daher ein erstes Register 602-0 und
ein zweites Register 602-1 auf.
-
Wie
beim Betrieb des FIFO 200, werden die Register (602-0 und 602-1)
des FIFO 600 in einer zyklischen Weise, allgemein synchron
zu einem internen synchronen Taktsignal (ICKL) verwendet. Daher würde auf
das Register 602-0 zugegriffen werden, anschließend auf
das Register 602-1, dann würde sich der Zyklus wiederholen,
indem Zugriff auf das Register 602-0 erfolgt.
-
Die
Register (602-0 und 602-1) von 6 haben
die gleiche allgemeine Anordnung wie die Register (202-0 und 202-1)
von 2. Dementsprechend sind gleiche Bestandteile durch
die gleiche Bezugsziffer bezeichnet, wobei die erste Ziffer jedoch eine "6" anstelle einer "2" darstellt.
Die Register (602-0 und 602-1) sind zwischen einem
RWBUS-Eingang und
einen OUT-Bus-Ausgang durch erste Übertragungsgatter (604-0 und 604-1) bzw. zweite Übertragungsgatter
(608-0 und 608-1) parallel geschaltet.
-
Anders
als der FIFO 200 von 2, hält der FIFO 600 keine
RWBUS-Daten in Abhängigkeit
von zwei Eingabesteuersignalen. Stattdessen empfängt der FIFO 600 ein
einzelnes Eingabesteuersignal DSEL0. Das Signal DSEL0 wird dem ersten
Register 602-0 und dem zweiten Register 602-1 durch
einen Eingangssteuerinverter 614 zugeführt. In ähnlicher Weise erhält der FIFO 600 keine
zwei Ausgabesteuersignale, sondern weist stattdessen ein einziges Ausgabesteuersignal
OSEL0 auf, das an das erste Register 602-0 und das zweite Register 602-1 mittels eines
Ausgangssteuerinverters 616 angelegt wird.
-
Zurückgreifend
auf 5, wird das durch das Logikgatter 512 erzeugte
Signal OCNTCK an den Zähler 532 angelegt.
Synchron mit dem Signal OCNTCK zählt
der Zähler 532 in
einer zyklischen Weise eine Zahl, die gleich der Anzahl von Registern innerhalb
des FIFO 600 ist. Da in dieser Ausführungsform der FIFO 600 zwei
Register einschließt, würde der
Zähler 532 0,
dann 1, dann 0, dann 1 etc. zählen.
-
In
der bestimmten Anordnung von 5 gibt der
Zähler 532 eine
Zählung
vor einer jeglichen Dekodierung aus. Da die Signalverzögerungsvorrichtung 526 (FIFO 600)
zwei Register aufweist, wird nur eine einzige Ausgangsleitung von
dem Zähler 532 benötigt. Wenn
die Anzahl von Registern vier wäre, würden zwei
Ausgangsleitungen benötigt
werden. Drei Leitungen würden
für acht
Register benötigt
werden. Wenn die Anzahl von Registern innerhalb der Signalverzögerungsvorrichtung 526 als "m" gegeben ist, würde die Anzahl von Ausgangsleitungen
dementsprechend durch log2m gegeben sein.
Auf diese Weise kann das Verdrahtungsausmaß für den Zähler 532 reduziert
werden, und folglich kann die für
Verdrahtung benötigte
Fläche
entsprechend verkleinert werden.
-
Wie
in 5 gezeigt ist, liefert der Zähler 532 ein Zählsignal
OCNT0, das einen logischen hohen Wert annimmt, wenn die Zählung "1" ist, und einen logischen niedrigen
Pegel, wenn die Zählung "0" ist. Es wird verstanden werden, dass
eine Zählung entweder
mit "0" oder mit "1" beginnen könnte.
-
Der
Eingangssteuerabschnitt 528 der zweiten Ausführungsform 500 ist
so gezeigt, dass er eine Zählverzögerungsschaltung 534 aufweist,
welche das Signal OCNT0 erhält
und es um eine vorbestimmte Größe verzögert. Das
resultierende Signal wird durch einen Zählungsinverter 536 invertiert,
um ein Eingangssteuerzählsignal
DCNT0 zu erzeugen. Eine Halteschaltung 538 erhält das Signal
DCNT0 und das Signal YRD. Die Halteschaltung 538 hält das Signal
DCNT0 in Abhängigkeit
von der Anstiegsflanke des Signals YRD, um das Eingabesteuersignal DSEL0
für die
Signalverzögerungsvorrichtung 526 zu erzeugen.
-
Der
Ausgangssteuerabschnitt 530 ist so gezeigt, dass er ein
Ausgangssteuerlogikgatter 540 aufweist. Das Ausgangssteuerlogikgatter 540 bildet
das logische Produkt zwischen dem Signal OCNT0 und dem Signal READEN
zum Erzeugen des Signals OSEL0.
-
Nach
Beschreibung der allgemeinen Bestandteile der zweiten Ausführungsform 500,
soll nun der Betrieb des Eingangssteuerabschnitts 528 und Ausgangssteuerabschnitts 530 beschrieben
werden.
-
Innerhalb
des Eingangssteuerabschnitts 528 erhält die Zählverzögerungsschaltung 534 das
Signal OCNT0 und verzögert
es, um eine Eingabe zum Zählungsinverter 536 zu
liefern. Der Zählungsinverter 536 liefert
das Signal DCNT0 als eine Ausgabe an die Halteschaltung 538.
-
Die
Halteschaltung 538 hält
das Signal DCNT0 bei der Anstiegsflanke des Signals YRD, um dem
FIFO 600 das Signal DSEL0 zu liefern.
-
Auf
diese Weise wird das Signal DSEL0, wenn das Signal READEN aktiv
ist (hoch, in diesem Beispiel), einen Wert von 0, dann 1, dann 0
etc. synchron mit der Anstiegsflanke des Signals YRD ausgeben.
-
Genau
ausgedrückt,
wird in Abhängigkeit von
einem Wert von "0" oder "1" des Zählers 532 der Eingangssteuerabschnitt 528 ein
Signal DSEL0 mit einem hohen bzw. niedrigen Pegel ausgeben.
-
Bezugnehmend
auf 6, wird das erste Übertragungsgatter 604-0 innerhalb
des FIFO 600 in Abhängigkeit
davon ein- oder ausgeschaltet werden, ob das Signal DSEL0 hoch bzw.
niedrig ist. In einer ähnlichen
Weise wird aufgrund der Operation des Eingangssteuerinverters 614 das
erste Übertragungsgatter 604-1 innerhalb
des FIFO 600 in Abhängigkeit
davon ein- oder ausgeschaltet, ob das Signal DSEL0 niedrig bzw.
hoch ist.
-
Bezugnehmend
auf 7, ist die Operation des FIFO 600 in
dem Zeitdiagramm reflektiert. Genau ausgedrückt, wird ein erstes Übertragungsgatter 604-0 zum
Zeitpunkt t2 eingeschaltet, da das Signal DSEL0 hoch ist. Folglich
wird ein Bit von dem Datensatz DATA0 in der Speicherschaltung 606-0 gespeichert.
Da das Signal/DSEL0 (die Ausgabe des Eingangssteuerinverters 614)
niedrig ist, wird gleichzeitig das erste Übertragungsgatter 604-1 ausgeschaltet,
wodurch die Speicherschaltung 606-1 von dem RWBUS isoliert
wird. Daher bleibt der Wert am Ausgang des ersten Übertragungsgatters 604-1 (RBUS1)
zum Zeitpunkt t2 unbestimmt.
-
Zum
Zeitpunkt t3 wird das Signal DSEL0 niedrig. Infolgedessen wird das
erste Übertragungsgatter 604-0 ausgeschaltet,
wodurch die Speicherschaltung 606-0 von dem RWBUS isoliert
wird. Auf diese Weise wird das Bit DATA0 in der Speicherschaltung 606-0 weiter
gehalten. Gleichzeitig wird das Signal/DSEL0 hoch, was zum Einschalten
des ersten Übertragungsgatters 604-1 führt. Infolgedessen
wird ein Bit aus einem nachfolgenden Datensatz DATA1 in der Speicherschaltung 606-1 gespeichert.
-
In ähnlicher
Weise wird zum Zeitpunkt t4 ein Bit aus einem dritten Datensatz
DATA2 in der Speicherschaltung 606-0 gespeichert, und zum
Zeitpunkt t5 wird ein Bit aus einem vierten Datensatz DATA3 in der
Speicherschaltung 606-1 gespeichert.
-
Wie
bereits erwähnt
wurde, bildet innerhalb des Ausgangssteuerabschnitts 530 das
Ausgangssteuerlogikgatter 540 das logische Produkt zwischen dem
Signal OCNT0 und dem Signal READEN, um das Signal OSEL0 zu erzeugen.
Wenn in einer solchen Konfiguration das Signal READEN aktiv ist,
wird das Signal OSEL0 einen Wert von 0, dann 1, dann 0 etc. synchron
mit der Anstiegsflanke des Signals OCNTCK aufweisen.
-
Genau
ausgedrückt,
ist das Signal OSEL0 niedrig, wenn der Zählwert des Zählers 532-0 ist. Wenn
im umgekehrten Fall der Zählwert
1 ist, ist das Signal OSEL0 hoch.
-
Innerhalb
des FIFO 600 wird das zweite Übertragungsgatter 608-0 in
Abhängigkeit
von dem hohen und niedrigen Pegel des Signals OSEL0 ein- bzw. ausgeschaltet.
Wenn das Signal OSEL0 im umgekehrten Fall hoch und niedrig ist,
wird das zweite Übertragungsgatter 608-1 aus-
bzw. eingeschaltet.
-
Erneut
auf 7 bezugnehmend, ist der Betrieb des FIFO 600 beim
Liefern von Daten zu dem OUT-Bus in dem Zeitdiagramm reflektiert.
Genau ausgedrückt,
wird zum Zeitpunkt t3 das zweite Übertragungsgatter 608-0 eingeschaltet,
da das Signal OSEL0 hoch ist. Das Bit DATA0, das vorhergehend in der
Speicherschaltung 606-0 gespeichert wurde, wird daher an
den OUT-Bus gekoppelt. Da das Signal/OSEL0 (die Ausgabe des Ausgangssteuerinverters 616)
niedrig ist, wird gleichzeitig das zweite Übertragungsgatter 608-1 ausgeschaltet,
und das in der Speicherschaltung 606-1 gespeicherte Bit
DATA1 wird von dem OUT-Bus isoliert.
-
Zum
Zeitpunkt t4 wird das Signal OSEL0 niedrig. Infolgedessen wird das
zweite Übertragungsgatter 608-0 ausgeschaltet,
wodurch die Speicherschaltung 606-0 von dem OUT-Bus isoliert
wird. Gleichzeitig wird das Signal/OSEL0 hoch, was zum Einschalten
des zweiten Übertragungsgatters 608-1 führt. Auf
diese Weise wird das nächste
Datenbit in der Burst-Sequenz (das Wertbit DATA1), das vorhergehend
in der Speicherschaltung 606-1 gespeichert war, an den
OUT-Bus gekoppelt.
-
In ähnlicher
Weise wird zum Zeitpunkt t5 ein Bit aus dem dritten Datensatz DATA2,
das in der Speicherschaltung 606-0 gespeichert ist, auf
den OUT-Bus ausgegeben.
-
Es
wird festgestellt, dass in der zweiten Ausführungsform 500 der
durch den Zähler 532 gelieferte Zählwert nicht
in dem Zähler
dekodiert wird (wie es in der ersten Ausführungsform der Fall ist) und
im wesentlichen durch die Eingangs- und Ausgangssteuerinverter (614 und 616)
im FIFO 600 dekodiert wird. Auf diese Weise arbeitet die
zweite Ausführungsform 500 ähnlich wie
die erste Ausführungsform 100,
vereinfacht jedoch vorteilhaft das Schaltsystem des Eingangssteuerabschnitts
und des Ausgangssteuerabschnitts. Folglich wird eine kleinere Fläche für diese Abschnitte
als in der ersten Ausführungsform 100 benötigt. Dadurch
kann eine kleinere Chipgesamtgröße erreicht
werden.
-
Nun
bezugnehmend auf die 8–11, soll
eine dritte Ausführungsform
detailliert beschrieben werden. 8 ist ein
Blockdiagramm einer Halbleiterspeichervorrichtung gemäß der dritten
Ausführungsform. 9 ist
ein schematisches Diagramm einer Signalverzögerungsvorrichtung, die in
der dritten Ausführungsform
verwendet werden kann. 10 ist ein Zeitdiagramm, das
den Betrieb der dritten Ausführungsform
mit einer CAS-Latenzzeit von "3" darstellt. 11 ist
ein Zeitdiagramm, das den Betrieb der dritten Ausführungsform
mit einer CAS-Latenzzeit von "4" darstellt. Während die
erste und zweite Ausführungsform
(100 und 500) CAS-Latenzzeiten darstellen, die
bei drei festgelegt sind, ermöglicht
daher die dritte Ausführungsform
die Auswahl einer CAS-Latenzzeit zwischen 3 und 4.
-
Nun
bezugnehmend auf 8 ist die dritte Ausführungsform
durch die allgemeine Bezugsziffer 800 bezeichnet und umfasst
viele der gleichen Bestandteile wie die in 1 aufgeführte erste
Ausführungsform.
In dieser Hinsicht werden gleiche Bestandteile durch die gleiche
Bezugsziffer bezeichnet werden, wobei die erste Ziffer jedoch eine "8" anstelle einer "1" darstellt.
-
Dementsprechend
weist die Ausführungsform
von 8 eine Speicherzellenanordnung 802, einen
Ausgangspuffer 806, eine Verzögerungsschaltung 808,
einen Lesesynchronisierungssignal-Generator 810 sowie ein
Logikgatter 812 auf. In der zweiten Ausführungsform 800 erfolgen
Lesezugriffe auf die Speicherzellenanordnung 802 in der
gleichen allgemeinen Weise wie bei der ersten Ausführungsform 100 und
führen
zum Setzen von Datensätzen
auf einem RWBUS. Außerdem
sind die Operationen des Ausgangspuffers 806, der Verzögerungsschaltung 808,
des Lesesynchronisierungssignal-Generators 810 und
des Logikgatters 812 im wesentlichen die gleichen wie die
in 1 aufgeführten.
-
Die
dritte Ausführungsform 800 unterscheidet
sich von der ersten Ausführungsform 100 darin, dass
sie eine Signalverzögerungsvorrichtung 826,
einen Eingangssteuerabschnitt 828, einen Ausgangssteuerabschnitt 830 und
einen Zähler 832 einschließt, die
sich hinsichtlich ihrer Operation von denen von 1 unterscheiden.
-
Die
in 9 aufgeführte
Signalverzögerungsvorrichtung
ist ein FIFO und ist durch die allgemeine Bezugsziffer 900 bezeichnet.
Zum Zweck dieser detaillierten Beschreibung wird angenommen, dass
der FIFO 900 als die Signalverzögerungsvorrichtung 826 in 8 verwendet
wird.
-
Der
in 9 aufgeführte
bestimmte FIFO 900 ist so gezeigt, dass er eine Anzahl
von Registern aufweist, die gleich der maximal möglichen CAS-Latenzzeit minus
eins ist (in diesem Fall drei).
-
Wie
beim Betrieb des FIFO 200, werden die Register (902-0 bis 902-2)
des FIFO 900 in einer zyklischen Weise allgemein synchron
mit einem internen synchronen Taktsignal (ICLK) verwendet. Daher würde in Betrieb
auf das Register 902-0, gefolgt durch das Register 902-1,
gefolgt durch das Register 902-2 zugegriffen werden. Der
Zyklus würde
dann wieder durch erneuten Zugriff auf das Register 902-0 wiederholt
werden.
-
Die
Register (902-0 bis 902-2) von 9 haben
die gleiche allgemeine Anordnung wie die Register (202-0 und 202-1)
von 2. Dementsprechend wird auf gleiche Bestandteile
durch die gleiche Bezugsziffer Bezug genommen, wobei jedoch die
erste Ziffer eine "9" anstelle einer "2" darstellt. Die Register (902-0 bis 902-2)
sind parallel zwischen einem RWBUS-Eingang und einen OUT-Busausgang
durch erste Übertragungsgatter
(904-0 bis 904-2) bzw. zweite Übertragungsgatter (908-0 bis 908-2)
gekoppelt.
-
Da
der FIFO 900 anders als der FIFO 200 von 2 ein
drittes Register 902-2 aufweist, erhält der FIFO 900 ein
drittes Eingabesteuersignal DSEL2 zusätzlich zu den ersten beiden
Eingabesteuersignalen DSEL0 und DSEL1. Das Signal DSEL2 steuert das
erste Übertragungsgatter 904-2 innerhalb
eines dritten Registers 902-2. Gleichermaßen erhält der FIFO 900 auch
ein drittes Ausgabesteuersignal OSEL2 zusätzlich zu den beiden anderen
Ausgabesteuersignalen OSEL0 und OSEL1. Das Signal OSEL2 steuert
das zweite Übertragungsgatter 908-2 innerhalb
des dritten Registers 902-2.
-
Zurückgreifend
auf 9, zählt
der Zähler 832 synchron
mit dem Signal OCNTLK in einer zyklisches Weise eine Zahl, die gleich
der Anzahl von Registern innerhalb des FIFO 900 ist. Da
der FIFO 900 in dieser Ausführungsform drei Register aufweist, zählt der
Zähler 832 0,
dann 1, dann 2, dann 0, dann 1 etc. Außerdem dekodiert der Zähler 832 wie
der Zähler 114 der
ersten Ausführungsform 100 den Zählwert in
drei Zählsignale,
OCNT0-OCNT2. In dieser Anordnung wird zu einer jeglichen gegebenen Zeit
in einer Zählsequenz
nur eines der Zählsignale (OCNT0-OCNT2)
hoch sein, während
die verbleibenden zwei Zählsignale
niedrig sein werden.
-
Der
Eingangssteuerabschnitt 828 der dritten Ausführungsform 800 ist
so gezeigt, dass er drei Zählverzögerungsschaltungen 834-0 bis 834-2 aufweist.
Jede Zählverzögerungsschaltung
(834-0 bis 834-2) erhält eines der Zählsignale (OCNT0–OCNT2)
und verzögert
es um eine vorbestimmte Größe. Der
Eingangssteuerabschnitt 828 weist ferner einen ersten Satz
von Übertragungsgattern 836-0 bis 836-2 auf.
-
In
der bestimmten Anordnung von 8 sind die Übertragungsgatter
N-Kanal-IGFETs. Das Übertragungsgatter 836-0 weist
einen Source-Drain-Weg gekoppelt an den Ausgang der Zählverzögerungsschaltung 834-0 auf,
der Source-Drain-Weg des Übertragungsgatters 836-1 ist
an den Ausgang der Zählverzögerungsschaltung 834-2 gekoppelt,
und der Source-Drain-Weg des Übertragungsgatters 836-2 ist
an den Ausgang der Zählverzögerungsschaltung 834-1 gekoppelt.
Der erste Satz von Übertragungsgattern
(836-0 bis 836-2) wird gemeinsam durch ein "Latenzzeit-3"-Freigabesignal MDCLT3
gesteuert, das an ihre Steuereingänge (Gatter) angelegt wird.
-
Der
Eingangssteuerabschnitt 828 der dritten Ausführungsform 800 ist
so gezeigt, dass er ferner einen zweiten Satz von Übertragungsgattern 838-0 bis 838-2 aufweist.
In der bestimmten Anordnung von 8 sind die Übertragungsgatter
des zweiten Satzes N-Kanal-IGFETs. Das Übertragungsgatter 838-0 weist
einen Source-Drain-Weg auf, der an den Ausgang der Zählverzögerungsschaltung 834-1 gekoppelt
ist, ein Source-Drain-Weg
des Übertragungsgatters 838-1 ist
an den Ausgang der Zählverzögerungsschaltung 834-0 gekoppelt,
und ein Source-Drain-Weg des Übertragungsgatters 838-2 ist
an den Ausgang der Zählverzögerungsschaltung 834-2 gekoppelt.
Der zweite Satz von Übertragungsgattern (838-0 bis 838-2)
wird gemeinsam durch ein "Latenzzeit-4"-Freigabesignal MDCLT4
gesteuert, das an seine Steuereingänge (Gatter) angelegt wird.
-
Die
Source-Drain-Wege der Übertragungsgatter 836-0 bis 838-0 sind
miteinander gekoppelt, um ein Eingangssteuerzählsignal DCNT0 zu liefern. In ähnlicher
Weise sind die Übertragungsgatter 836-1 bis 838-1 miteinander
zum Liefern eines Eingangssteuerzählsignals DCNT1 gekoppelt,
und die Übertragungsgatter 836-2 und 838-2 sind
miteinander gekoppelt, um ein Eingangssteuerzählsignal DCNT2 zu liefern.
-
Drei
Halteschaltungen 840-0 bis 840-2 sind auch in
dem Eingangssteuerabschnitt 828 enthalten. Die Halteschaltung 840-0 hält das Signal
DCNT0 in Abhängigkeit
von einer Anstiegsflanke eines Signal YRD von dem Lesesynchronisierungssignal-Generator 810.
Dies führt
zur Erzeugung des Eingabesteuersignals DSEL0. In ähnlicher
Weise halten die Halteschaltungen 840-1 und 840-2 die
Signale DCNT1 bzw. DCNT2 in Abhängig keit
von einer Anstiegsflanke des Signals YRD, um die Eingabesteuersignale DSEL1
bzw. DSEL2 zu erzeugen.
-
Der
erste Satz von Übertragungsgattern (838-0 bis 836-2)
und der zweite Satz von Übertragungsgattern
(838-0 bis 838-2) dienen als eine Schalt-Schaltung,
die eine Umschaltung zwischen einer CAS-Latenzzeit von 3 und einer
CAS-Latenzzeit von 4 ermöglicht.
Das Umschalten wird durch die Signale MDCLT3 und MDCLT4 gesteuert,
die durch eine Steuereinrichtung wie zum Beispiel eine zentrale
Verarbeitungseinheit (CPU) innerhalb eines Computersystems erzeugt
werden können.
-
Der
Ausgangssteuerabschnitt 830 ist so gezeigt, dass er drei
Ausgangssteuerlogikgatter 842-0 bis 842-2 aufweist.
Das Ausgangssteuerlogikgatter 842-0 bildet das logische
Produkt zwischen dem Signal OCNT0 und dem Signal READEN, um das
Signal OSEL0 zu erzeugen. In der gleichen Weise bilden die Ausgangssteuerlogikgatter 842-1 und 842-2 das
logische Produkt zwischen dem Signal READEN und den Signalen OCNT1
bzw. OCNT2 zum Erzeugen der Signale OSEL1 bzw. OSEL2.
-
Nach
Beschreibung der allgemeinen Bestandteile der dritten Ausführungsform 800,
soll nun der Betrieb des Eingangssteuerabschnitts 828 und des
Ausgangssteuerabschnitts 830 für eine Operation mit einer
CAS-Latenzzeit von drei beschrieben werden.
-
Als
ein Beispiel einer Operation des Zählers 832 wird das
Signal OCNT0, wenn der Zähler 832 Werte
von 0, 1 und 2 zählt,
Pegel von hoch, niedrig bzw. niedrig aufweisen. Das Signal OCNT1
wird Pegel von niedrig, hoch und niedrig haben. Das Signal OCNT2
wird Pegel von niedrig, niedrig und hoch aufweisen. Diese Zählwerte
sind gemeinsam durch die Signalform OCNTi von 10 angezeigt,
welche nur das Signal anzeigt, das hoch ist (d. h. ein Wert von
i = 0 zeigt an, dass das Zählsignal
OCNT0 hoch ist).
-
Innerhalb
des Eingangssteuerabschnitts 828 erhalten die Zählverzögerungsschaltungen
(834-0 bis 834-2) die Signale OCNT0 bis OCNT2
und verzögern
sie um vorbestimmte Größen.
-
Für einen
Fall einer CAS-Latenzzeit 3 wird das Signal MDCLT3 aktiv (hoch)
sein, was dazu führt, dass
die Übertragungsgatter
des ersten Satzes (836-0 bis 836-2) eingeschaltet
werden. Wenn das Signal MDCLT3 inaktiv (niedrig) ist, werden die Übertragungsgatter
(836-0 bis 836-2) ausgeschaltet werden.
-
Für einen
Fall einer CAS-Latenzzeit 4 wird das Signal MDCLT4 aktiv (hoch)
sein, was dazu führt, dass
die Übertragungsgatter
des zweiten Satzes (838-0 bis 838-2) eingeschaltet
werden. Wenn das Signal MDCLT4 inaktiv (niedrig) ist, werden die Übertragungsgatter
(838-0 bis 838-2) ausgeschaltet.
-
Dementsprechend
wird für
die in 10 dargestellten Operation mit
CAS-Latenzzeit 3 der erste Satz von Übertragungsgattern (836-0 bis 836-2)
eingeschaltet, und der zweite Satz von Übertragungsgattern (838-0 bis 838-2)
wird ausgeschaltet. In dieser Konfiguration wird die Ausgabe der
Zählverzögerungsschaltung 834-0 zu
dem Signal DCTN0, die Ausgabe der Zählverzögerungsschaltung 834-2 wird zu
dem Signal DCNT1, und die Ausgabe der Zählverzögerungsschaltung 834-1 wird
zu dem Signal DCNT2.
-
Es
wird festgestellt, dass, wie die Signalform OCNTi von 10,
die Eingangssteuerzählsignale (DCNT0
bis DCNT2) gemeinsam durch die Signalform DCNTi von 10 angezeigt
werden. Die Signalform DCNTi zeigt nur das eine Signal an, das hoch für eine gegebene
Zählung
ist (d. h. ein Wert von i = 0 gibt an, dass das Zählsignal
DCNT0 hoch ist).
-
Die
Halteschaltung 840-0 hält
das Signal DCNT0 bei der Anstiegsflanke des Signals YRD, um die
in 10 gezeigte Signalform DSEL0 zu erzeugen. In der
gleichen allgemeinen Weise hält
die Halteschaltung 840-1 das Signal DCNT1 bei der Anstiegsflanke
des Signals YRD zum Erzeugen der in 10 gezeigten
Signalform DSEL1, und die Halteschaltung 840-2 hält das Signal
DCNT2 bei der Anstiegsflanke des Signals YRD, um die in 10 gezeigte
Signalform DSEL2 zu erzeugen.
-
Auf
diese Weise gibt der Eingangssteuerabschnitt 828, wenn
das Signal READEN aktiv ist (in diesem Beispiel hoch), einen hohen
Pegel für
ein ausgewähltes
Eingabesteuersignal in der Sequenz von DSEL0, DSEL1, DSEL2 und DSEL0
... synchron mit der Anstiegsflanke des Signals YRD aus.
-
Genau
ausgedrückt,
wird der Eingangssteuerabschnitt 828 in Abhängigkeit
von den Zählerwerten
von "0", "1" und "2" ein
Signal DSEL0 mit den Werten von niedrig, niedrig bzw. hoch, ein
Signal DSEL1 mit den Werten hoch, niedrig bzw. niedrig und ein Signal
DSEL2 mit Werten von niedrig, hoch bzw. niedrig ausgeben.
-
Nun
bezugnehmend auf 9, wird innerhalb des FIFO 900 das
erste Übertragungsgatter 904-0 in
Abhängigkeit
davon ein- oder ausgeschaltet werden, ob das Signal DSEL0 hoch bzw.
niedrig ist. In ähnlicher
Weise wird das erste Übertragungsgatter 904-1 in
Abhängigkeit
davon ein- oder ausgeschaltet werden, ob das Signal DSEL1 hoch bzw.
niedrig ist, und das erste Übertragungsgatter 904-2 wird
in Abhängigkeit
davon ein- oder ausgeschaltet werden, ob das Signal DSEL2 hoch bzw.
niedrig ist.
-
Bezugnehmend
auf 10, ist der Betrieb des FIFO 900 für eine Operation
mit CAS-Latenzzeit 3
in dem Zeitdiagramm reflektiert. Genau ausgedrückt, wird zum Zeitpunkt t2,
da das Signal DSEL0 niedrig ist, das erste Übertragungsgatter 904-0 ausgeschaltet,
wodurch die Speicherschaltung 906-0 von dem RWBUS isoliert
wird. Folglich wird der Ausgang des ersten Übertragungsgatters 904-0 (RBUS0)
in einem unbestimmten Zustand bleiben.
-
Im
Gegensatz hierzu ist das Signal DSEL1 auch zum Zeitpunkt t2 hoch,
was zum Einschalten des ersten Übertragungsgatters 904-1 führt. Folglich wird
ein Bit aus dem Datensatz DATA0 (der erste Datensatz der Burst-Sequenz)
an den Ausgang des ersten Übertragungsgatters 904-1 gekoppelt
(RBUS1). Das Bit DATA0 wird daher in der Speicherschaltung 906-1 gespeichert.
-
Ferner
ist zum Zeitpunkt t2 das Signal DSEL2 niedrig, wodurch das erste Übertragungsgatter 904-2 ausgeschaltet
wird. Dies isoliert die Speicherschaltung 906-2 von dem
RWBUS. Wie in 10 gezeigt ist, wird folglich
der Ausgang des ersten Übertragungsgatters 904-2 (RBUS2)
in einem unbestimmten Zustand bleiben.
-
Zum
Zeitpunkt t3 wird die Zähloperation
fortgesetzt, wobei das Signal DSEL0 niedrig bleibt. Infolgedessen
bleibt das erste Übertragungsgatter 904-0 ausgeschaltet,
und die Speicherschaltung 906-0 bleibt weiterhin von dem
RWBUS isoliert. Dies verhindert, dass ein Bit aus dem zweiten Datensatz (DATA1)
in dem ersten Register 902-0 gespeichert wird.
-
Ferner
wird zum Zeitpunkt t3 das Signal DSEL1 niedrig, wodurch das erste Übertragungsgatter 904-1 ausgeschaltet
wird. Folglich wird die Speicherschaltung 906-1 von dem
RWBUS isoliert, was Speicherung des Wertbits DATA1 in der Speicherschaltung 906-1 verhindert,
die weiterhin das Wertbit DATA0 speichert.
-
Ferner
wird zum Zeitpunkt t3 das Signal DSEL2 hoch, wodurch das erste Übertragungsgatter 904-2 eingeschaltet
wird. Folglich wird ein Bit von dem Wert DATA1 (der zweite Datensatz
der Burst-Sequenz) an den Ausgang des ersten Übertragungsgatters 904-2 (RBUS2)
gekoppelt. Das Bit DATA1 wird daher in der Speicherschaltung 906-2 gespeichert.
-
In ähnlicher
Weise wird zum Zeitpunkt t4 ein Bit aus einem dritten Datensatz
DATA2 in der Speicherschaltung 906-0 gespeichert, und zum
Zeitpunkt t5 wird ein Bit aus einem vierten Datensatz DATA3 ist der
Speicherschaltung 906-1 gespeichert.
-
Wie
bereits erwähnt
wurde, bilden innerhalb des Ausgangssteuerabschnitts 830 die
Ausgangssteuerlogikgatter (842-0 bis 842-2) die
logischen Produkte zwischen den Sig nalen OCNT0-OCNT2 und dem Signal
READEN, um die Signale OSEL0-OSEL2 zu erzeugen. Wenn in einer solchen Konfiguration
das Signal READEN aktiv ist, wird der Ausgangssteuerabschnitt 830 nacheinander
hohe Werte für
die Signale OSEL0, OSEL1, OSEL2, OSEL0, OSEL1 .... synchron mit
der Anstiegsflanke des Signals OCNTCK ausgeben.
-
Genau
ausgedrückt
liefert der Ausgangssteuerabschnitt 830 in Abhängigkeit
von den Zählwerten
0, 1 und 2 vom Zähler 832 ein
Signal OSEL0 mit Werten von hoch, niedrig bzw. niedrig, ein Signal OSEL1
mit Werten niedrig, hoch bzw. niedrig sowie ein Signal OSEL2 mit
Werten von niedrig, niedrig bzw. hoch.
-
Innerhalb
des FIFO 900 wird das zweite Übertragungsgatter 908-0 in
Abhängigkeit
von den hohen und niedrigen Pegeln des Signals OSEL0 ein- bzw. ausgeschaltet.
In der gleichen allgemeinen Weise wird das zweite Übertragungsgatter 908-1 in
Abhängigkeit
von den hohen und niedrigen Pegeln im Signal OSEL1 ein- bzw. ausgeschaltet
und wird das zweite Übertragungsgatter 908-2 in
Abhängigkeit
von den hohen und niedrigen Pegeln im Signal OSEL2 ein- bzw. ausgeschaltet.
-
Erneut
bezugnehmend auf 10 in Verbindung mit 9 soll
die entsprechende Datenausgabe des FIFO 900 beschrieben
werden. Daher wird zum Zeitpunkt t3 das zweite Übertragungsgatter 908-0 ausgeschaltet,
da das Signal OSEL0 niedrig ist. Folglich wird der in der Speicherschaltung 906-0 gespeicherte
unbestimmte Wert nicht an den OUT-Bus ausgegeben.
-
Im
Gegensatz hierzu wird das zweite Übertragungsgatter 908-1 eingeschaltet,
da das Signal OSEL1 hoch ist. Folglich wird das in der Speicherschaltung 906-1 gespeicherte
Wertbit DATA0 auf den OUT-Bus ausgegeben.
-
Ferner
wird zum Zeitpunkt t3 das zweite Übertragungsgatter 908-2 ausgeschaltet,
da das Signal OSEL2 niedrig ist. Folglich wird der in der Speicherschaltung 906-2 gespeicherte
Wert DATA1 nicht an den OUT-Bus ausgegeben.
-
Zum
Zeitpunkt t4 bleibt das Signal OSEL0 niedrig, wodurch das zweite Übertragungsgatter 908-0 ausgeschaltet
gehalten wird. Folglich wird das in der Speicherschaltung 906-0 gespeicherte
Wertbit DATA2 nicht an den OUT-Bus ausgegeben.
-
Ferner
ist zum Zeitpunkt t4 das Signal OSEL1 niedrig, und das zweite Übertragungsgatter 908-1 ist
ausgeschaltet. Folglich wird das in der Speicherschaltung 906-1 gespeicherte
Wertbit DATA0 nicht mehr an den OUT-Bus ausgegeben.
-
Im
Gegensatz hierzu ist das Signal OSEL2 auch zum Zeitpunkt t4 hoch.
Das zweite Übertragungsgatter 908-2 wird
eingeschaltet. Folglich wird der in der Speicherschaltung 906-2 gespeicherte Wert
DATA1 an den OUT-Bus ausgeben.
-
In
einer ähnlichen
Weise wird zum Zeitpunkt t5 ein Bit aus dem dritten Datensatz DATA2,
das in der Speicherschaltung 906-0 gespeichert ist, an
den OUT-Bus ausgegeben werden.
-
Nach
Beschreibung des Betriebs der dritten Ausführungsform 800 und
des FIFO 900 für
einen CAS-Latenzzeit von drei, soll nun der Betrieb der dritten
Ausführungsform 800 und
des FIFO 900 für
eine CAS-Latenzzeit von vier beschrieben werden.
-
Für eine CAS-Latenzzeit
von vier wird das Signal MDCLT3 inaktiv sein, während das Signal MDCLT4 aktiv
ist. Dies führt
zum Einschalten des zweiten Übertragungsgattersatzes
(838-0 bis 838-2) und Ausschalten des ersten Satzes
von Übertragungsgattern
(836-0 bis 836-2). In dieser Konfiguration wird
die Ausgabe der Zählverzögerungsschaltung 834-0 zum
Signal DCNT1, die Ausgabe der Zählverzögerungsschaltung 834-1 wird zum Signal DCNT0,
und die Ausgabe der Zählverzögerungsschaltung 834-2 wird
zum Signal DCNT2.
-
Wie
im Fall von 10, werden die Werte OCNT0-OCNT2
zu einer einzigen Signalform OCNTi vereinigt, und die Werte DCNT0-DCNT2
werden zu einer einzigen Signalform DCNTi zusammengefasst.
-
Wie
in dem Fall der CAS-Latenzzeit von drei hält außerdem die Halteschaltung 840-0 das
Signal DCNT0 während
der Anstiegsflanke des Signals YRD. Dies erzeugt das Signal DSEL0.
Gleichzeitig halten die Halteschaltungen 840-1 und 840-2 die
Signale DCNT1 und DCNT2 während
der Anstiegsflanke des Signals YRD. Dies führt zur Erzeugung der Signale
DSEL1 und DSEL2.
-
Auf
diese Weise wird der Eingangssteuerabschnitt 828, wenn
das Signal READEN aktiv ist, einen hohen Pegel für ein ausgewähltes Eingabesteuersignal
in der Sequenz von DSEL0, DSEL1, DSEL2 und DSEL0... synchron mit
der Anstiegsflanke des Signals YRD ausgeben.
-
Nun
bezugnehmend auf 11 ist der Betrieb des FIFO 900 für eine Operation
mit CAS-Latenzzeit 4 in dem Zeitdiagramm reflektiert. Genau ausgedrückt, wird
das erste Übertragungsgatter 904-0 zum
Zeitpunkt t2 ausgeschaltet, da das Signal DSEL0 niedrig ist, wobei
die Speicherschaltung 906-0 von dem RWBUS isoliert wird.
Folglich wird, wie in 11 gezeigt ist, der Ausgang
des ersten Übertragungsgatters 904-0 (RBUS0)
in einem unbestimmten Zustand bleiben.
-
In ähnlicher
Weise ist das Signal DSEL1 auch zum Zeitpunkt t2 niedrig, was zum
Ausschalten des ersten Übertragungsgatters 904-1 führt. Wie
das erste Register 902-0 wird folglich der Ausgang des ersten Übertragungsgatters 904-1 (RBUS1)
in einem unbestimmten Zustand bleiben.
-
Im
Gegensatz hierzu ist das Signal DSEL2 zum Zeitpunkt t2 hoch, wodurch
das Einschalten des Übertragungsgatters 904-2 verursacht
wird. Infolgedessen wird, wie in 11 gezeigt,
ein Datenbit aus dem ersten Datensatz (DATA0) in der Speicherschaltung 906-2 gespeichert.
Der Ausgang des ersten Übertragungsgatters 904-2 (RBUS2)
wird daher das Wertbit DATA0 speichern.
-
Zum
Zeitpunkt t3 wird die Zähloperation
mit hohem Signal DSEL0 fortgesetzt. Infolgedessen wird das erste Übertragungsgatter 904-0 eingeschaltet, wodurch
ein Datenbit aus dem zweiten Datensatz (DATA1) in der Speicherschaltung 906-0 gespeichert wird.
Folglich wird der Ausgang des ersten Übertragungsgatters 904-0 (RBUS0)
das Wertbit DATA1 speichern.
-
Ferner
bleibt zum Zeitpunkt t3 das Signal DSEL1 niedrig, wodurch das erste Übertragungsgatter 904-1 ausgeschaltet
gehalten wird. Folglich bleibt die Speicherschaltung 906-1 weiterhin
von dem RWBUS isoliert, wodurch Speicherung des Wertbits DATA1 in
der Speicherschaltung 906-1 verhindert wird.
-
Ferner
wird zum Zeitpunkt t3 das Signal DSEL2 niedrig, wodurch das erste Übertragungsgatter 904-2 ausgeschaltet
wird. Auf diese Weise wird die Speicherschaltung 906-2 von dem RWBUS
isoliert, wodurch ermöglicht
wird, dass der Wert DATA0 in der Speicherschaltung 906-2 gespeichert
bleibt.
-
In ähnlicher
Weise wird ein Bit aus einem dritten Datensatz DATA2 in der Speicherschaltung 906-1 gespeichert,
und zum Zeitpunkt t5 wird ein Bit aus einem vierten Datensatz DATA3
in der Speicherschaltung 906-2 gespeichert.
-
Erneut
bezugnehmend auf 11 in Verbindung mit 9 soll
die entsprechende Datenausgabe des FIFO 900 für den Fall
von CAS-Latenzzeit 4 beschrieben werden.
-
Da
zum Zeitpunkt t3 das Signal OSEL0 niedrig ist, wird das zweite Übertragungsgatter 908-0 ausgeschaltet.
Folglich wird der in der Speicherschaltung 906-0 gespeicherte
Wert DATA1 nicht an den OUT-Bus ausgegeben.
-
Im
Gegensatz hierzu wird das zweite Übertragungsgatter 908-1 eingeschaltet,
da das Signal OSEL1 hoch ist. Folglich wird der in der Speicherschaltung 906-1 gespeicherte
Wert an den OUT-Bus ausgegeben. Es wird festgestellt, dass dies "ungültige" unbestimmte Daten
sind, da ihre Zeitsteuerung nicht den erwarteten Daten entspricht.
-
Ferner
wird das zweite Übertragungsgatter 908-2 zum
Zeitpunkt t3 ausgeschaltet, da das Signal OSEL2 niedrig ist. Folglich
wird der Wert DATA0, der in der Speicherschaltung 906-2 gespeichert
ist, nicht an den OUT-Bus ausgegeben.
-
Zum
Zeitpunkt t4 bleibt das Signal OSEL0 niedrig, wodurch das zweite Übertragungsgatter 908-0 ausgeschaltet
gehalten wird. Folglich wird der in der Speicherschaltung 906-0 gespeicherte
Wert DATA1 nicht an den OUT-Bus ausgegeben.
-
Ferner
ist zum Zeitpunkt t4 das Signal OSEL1 wieder niedrig, was zum erneuten
Ausschalten des zweiten Übertragungsgatters 908-1 führt. Folglich
wird das in der Speicherschaltung 906-1 gespeicherte Wertbit
DATA2 nicht an den OUT-Bus ausgegeben.
-
Im
Gegensatz dazu ist auch zum Zeitpunkt t4 das Signal OSEL2 hoch,
wodurch Einschalten des zweiten Übertragungsgatters 908-2 verursacht
wird. Folglich wird der in der Speicherschaltung 906-2 gespeicherte
Wert DATA0 an den OUT-Bus ausgegeben.
-
In
einer ähnlichen
Weise wird zum Zeitpunkt t5 der in der Speicherschaltung 906-0 gespeicherte Wert
DATA1 an den OUT-Bus ausgegeben werden.
-
Auf
diese Weise wird eine Operation mit CAS-Latenzzeit 4 durch die dritte
Ausführungsform ausgeführt.
-
Die
dritte Ausführungsform 800 weist
Eingabesteuersignale (DSEL0-DSEL2) und Ausgabesteuersignale (OSEL0-OSEL2)
auf, die sich von denjenigen der ersten Ausführungsform 100 unterscheiden. Diese
Unterschiede sind in einem Zeitdiagramm in 12 dargestellt.
Das Zeitdiagramm enthält
das Signal ICLK und zwei Sätze
von Zeitsteu ersignalen. Ein erste Satz von Zeitsteuersignalen 1200 stellt
eine CAS-Latenzzeit von drei dar, und ein zweiter Satz von Zeitsteuersignalen 1202 stellt
eine CAS-Latenzzeit von vier dar.
-
Beide
Sätze von
Zeitsteuersignalen weisen eine DSEL-, OSEL- und DQ-Signalform auf.
Die DSEL-Signalform ist eine vereinigte Signalform, die anzeigt,
welches der Signale DSEL0-DSEL2 zu einem gegebenen Zeitpunkt aktiv
ist. In ähnlicher
Weise ist die OSEL-Signalform eine vereinigte Signalform, die anzeigt,
welches der Signale OSEL0-OSEL1
zu einer gegebenen Zeit aktiv ist. Die DQ-Signalform zeigt an, welcher
Datensatz von der Speichervorrichtung ausgegeben wird.
-
Im
Fall des Betriebs 1200 mit CAS-Latenzzeit drei, wird die
gewünschte
Latenzzeit durch Bilden geeigneter Zeitsteuerung zwischen den Signalen DSEL
und den Signalen OSEL erreicht.
-
Wie
bereits erwähnt
wurde, wird in der bestimmten Ausführungsform von 8 die
richtige Zeitsteuerung zwischen den Signalen DSEL und OSEL durch
Verzögern
des Signals OCNT2 mit der Zählverzögerungsschaltung 834-0 und
Anlegen des verzögerten
Signals über
das Übertragungsgatter 836-0 an
die Halteschaltung 840-0 erreicht, wodurch das Signal DSEL0
erzeugt wird. Das Signal OCNT0 wird durch die Zählverzögerungsschaltung 834-2 verzögert, und
das verzögerte
Signal wird über
das Übertragungsgatter 836-1 an
die Halteschaltung 840-1 angelegt. Dies erzeugt das Signal
DSEL1. Das Signal OCNT1 wird durch die Zählverzögerungsschaltung 834-1 verzögert, und
das verzögerte
Signal wird über
das Übertragungsgatter 836-2 an
die Halteschaltung 840-2 angelegt. Dies erzeugt das Signal
DSEL2.
-
Auf
diese Weise werden die Eingangspuffersteuersignale (DSEL) und Ausgangspuffersteuersignale
(OSEL) um einen Taktzyklus verzögert.
Daher wirken die Pufferschaltungen (840-0 bis 840-2)
kombiniert mit einem aktiven Signal MDCLT3 als eine Vorzögerungsvorrichtung,
die Ausgabesteuersignale durch Verzögern von Eingabesteuersignalen
um einen Taktzyklus liefert.
-
In
dem Fall der CAS-Latenzzeit von vier wird richtige Zeitsteuerung
zwischen den Signalen DSEL und OSEL durch Verzögern des Signals OCNT2 mit der
Zählverzögerungsschaltung 834-0 und
durch Anlegen des verzögerten
Signals über
das Übertragungsgatter 838-1 an
die Halteschaltung 840-1 erreicht, wodurch das Signal DSEL1
erzeugt wird. Das Signal OCNT1 wird durch die Zählverzögerungsschaltung 834-1 verzögert, und
das verzögerte
Signal wird über
das Übertragungsgatter 838-0 an
die Halteschaltung 840-0 angelegt. Dies erzeugt das Signal
DSEL0. Das Signal OCNT0 wird durch die Zählverzögerungsschaltung 834-2 verzögert, und
das verzögerte
Signal wird über
das Übertragungsgatter 838-2 an
die Halteschaltung 840-2 angelegt. Dies erzeugt das Signal
DSEL2.
-
Auf
diese Weise werden die Eingangspuffersteuersignale (DSEL) und Ausgangspuffersteuersignale
(OSEL) um zwei Taktzyklen verzögert.
Daher wirken die Pufferschaltungen (840-0 bis 840-2)
kombiniert mit einem aktiven Signal MDCLT4 als eine Vorzögerungsvorrichtung,
die Ausgabesteuersignale durch Verzögern von Eingabesteuersignalen
um zwei Taktzyklen liefert.
-
Auf
diese Weise wird das Zeitsteuerungsverhältnis zwischen den Signalen
DSEL und OSEL unabhängig
von der Frequenz des Bezugstakts und zugehörigen Signalen (wie zum Beispiel
dem Signal ICLK) konstant gehalten. Dies kann zu den gleichen Geschwindigkeitsvorteilen
wie die erste Ausführungsform
führen.
Die dritte Ausführungsform
liefert jedoch Vorteile gegenüber
der ersten und zweiten Ausführungsform,
indem die Auswahl der CAS-Latenzzeit zwischen den Werten von drei
und vier ermöglicht
wird.
-
Es
wird verstanden werden, dass, während die
dritte Ausführungsform
Latenzzeit-Umschalten mit dem ersten und zweiten Satz von Übertragungsgattern
(836-0 bis 836-2 und 838-0 bis 838-2)
realisiert, dies nicht als Begrenzung für die vorliegende Erfindung
ausgelegt werden sollte. Nur als ein Beispiel könnte die gleiche Funktion an
verschiedenen Stellen zwischen dem Zähler 832 und der Signalverzögerungsvorrichtung 826 realisiert
werden. Dies schließt
Stellen zwischen dem Zähler 832 und
dem Ausgangssteuerabschnitt 830 oder zwischen dem Ausgangssteuerabschnitt 830 und
der Signalverzögerungsvorrichtung 826 ein.
Es ist nur erforderlich, dass ein bestimmtes Zeitintervall zwischen
der Aktivierung der Signale DSEL und der Aktivierung ihrer entsprechenden
Signale OSEL eingebracht wird.
-
Außerdem wird
verstanden werden, dass verschiedene Bestandteile des Eingangssteuerabschnitts 828 abgewandelt
werden können.
Nur als einige Beispiele könnten
die Signalspeicher (840-0 bis 840-2) durch Logikschaltungen
wie zum Beispiel UND-Gatter ersetzt werden, die die Signale CNT0-CNT2
und das Signal YRD als Eingaben erhalten. In ähnlicher Weise wird festgestellt,
dass die Zählverzögerungsschaltungen
(834-0 bis 834-2) vorgesehen sind, um die Zeitsteuerung
für das
Halten von durch die Speicherzellenanordnung 802 gelieferten
Daten anzupassen. Wenn die Zeitsteuerung an die Ausgabe der Speicherzellenanordnung 802 angepasst
wird, muss daher die Zählverzögerungsschaltung
(834-0 bis 834-2) nicht erforderlich sein.
-
Es
wird ferner festgestellt, dass während eine
bestimmte Anordnung für
die ersten und zweiten Übertragungsgattersätze (836-0 bis 836-2 und 838-0 bis 838-2)
in 8 aufgeführt
ist, diese nicht als begrenzend ausgelegt werden sollte. Nur als
einige Beispiele könnten
anstelle einzelner N-Kanal-IGFETs Übertragungsgatter verwendet
werden, die komplementäre
Transistoren nutzen. In einem solchen Fall würde jeder N-Kanal-IGFET einen
P-Kanal-IGFET parallel angeordnet aufweisen, wobei das Gate des N-Kanal-IGFET mit dem Gate
des P-Kanal-IGFET durch einen Inverter verbunden wäre. Alternativ
können
UND-Gatter anstelle der Übertragungsgatter
verwendet werden, wobei die Eingaben in das UND-Gatter ein verzögertes Zählsignal
(d h. eine Ausgabe von einer Zählverzögerungsschaltung)
und ein Latenzzeit-Freigabesignal (d. h. MDCLT3 oder MDCLT4) darstellen.
-
Durch
Nutzen von Signalverzögerungsvorrichtungen,
die eine Anzahl von parallel angeordneten Datenregistern aufweisen,
wobei die Datenwerte durch Eingabe- und Ausgabesteuersignale in
die Register eingegeben und von diesen ausgegeben werden, erfor dern
Erhöhungen
in der CAS-Latenzzeit keine Erhöhungen
der Anzahl von Stufen innerhalb eines Zugriffswegs. Dies steht im
Gegensatz zu einem konventionellen Fließbandsystem. Dies ermöglicht der
vorliegenden Erfindung, schnelle Betriebsgeschwindigkeiten bereitzustellen.
-
Darüber hinaus
stellen die hier aufgeführten Lehren
eine Halbleiterspeichervorrichtung mit einer Hochgeschwindigkeits-Burst-Betriebsart
mit sehr geringer zusätzlicher
Gatterverzögerung
dar, die bei geringer Vergrößerung der
Chipfläche
realisiert werden kann. Eine solche Halbleiterspeichervorrichtung weist
eine Datenleseschaltung, eine Signalverzögerungsvorrichtung, einen Zähler, einen
Eingangssteuerabschnitt und einen Ausgangssteuerabschnitt auf.
-
Ferner
zeigt die dritte Ausführungsform,
wie vorteilhaftes CAS-Latenzzeit-Umschalten durch Vorsehen eines
Eingangssteuerabschnitts erreicht werden kann, der eine Mehrzahl
von Verzögerungsschaltungen,
eine Mehrzahl von Halteschaltungen sowie eine Schalt-Schaltung aufweist,
die zwischen den Verzögerungsschaltungen
und den Halteschaltungen angeordnet sind.
-
Aus
den bevorzugten Ausführungsformen kann
auch ein gesenkter Bereitschaftsstrom resultieren. Durch Verwendung
eines Eingangssteuerabschnitts mit Lesetaktungsschaltungen und eines
Ausgangssteuerabschnitts mit Logikproduktschaltungen, werden der
Eingangs- und Ausgangssteuerabschnitt nur während einer Ausleseoperation
arbeiten, wodurch Strom in einer Bereitschaftsbetriebsart gesenkt wird.
-
Es
wird verstanden, dass während
die verschiedenen, bestimmten, hier angeführten Ausführungsformen detailliert beschrieben
worden sind, verschiedene Änderungen,
Ersetzungen und Abwandlungen an der vorliegenden Erfindung vorgenommen werden
könnten,
ohne vom Umfang der Erfindung abzuweichen. Dementsprechend soll
die vorliegende Erfindung nur wie durch die anliegenden Patentansprüche definiert
begrenzt sein.