-
Die
vorliegende Erfindung betrifft Speichervorrichtungen. Insbesondere
betrifft die vorliegende Erfindung eine Datenbusstruktur für einen
dynamischen Direktzugriffsspeicher (DRAM = Dynamic Random Access
Memory), der eine Reihe von Datenbussen umfasst, die jeweils durch
eine Mehrzahl von Speicherbänken
gemeinschaftlich verwendet werden, und eine Schaltvorrichtung umfasst,
um die Datenbusse selektiv mit einem globalen Datenbus zu koppeln,
um zu ermöglichen,
dass die Speichervorrichtung Daten liefert und empfängt. Die
Datenbusstruktur spart Platz an einem Chip oder Halbleiterstück und verhindert
erhebliche Zeitversätze
für Daten,
auf die von unterschiedlichen Speicherbänken aus zugegriffen wird.
-
Speichervorrichtungen
werden verwendet, um Informationen für verschiedene Anwendungen
zu speichern. Eine häufig
verwendete Speichervorrichtung umfasst einen dynamischen Direktzugriffsspeicher
(DRAM). Diese Typen von Speichervorrichtungen speichern Informationen
in Speicherzellenarrays, die in einer Matrix von sich schneidenden
Zeilen und Spalten konfiguriert sind. Die Zeilen werden häufig als
Wortleitungen bezeichnet. Jede Speicherzelle umfasst im Allgemeinen
einen Speicherkondensator, um eine Ladung zu halten, und einen Transistor,
um auf die Ladung des Kondensators zuzugreifen. Die Ladung kann
ein hohes oder niedriges Spannungspotential (als ein Datenbit bezeichnet)
sein, wodurch die Speicherzelle mit zwei logischen Zuständen versehen
ist.
-
Es
gibt mehrere Formen von DRAM-Vorrichtungen. Zum Beispiel liefert
eine Speichervorrichtung mit doppelter Datenrate (DDR-Speichervorrichtung; DDR
= Double Data Rate) eine erhöhte
Leistungsfähigkeit
und ermöglicht
im Grunde, dass sowohl an den ansteigenden als auch den abfallenden
Flanken eines Taktsignals Ausgabeoperationen durchgeführt werden.
Dies erhöht
wirksam die Taktfrequenz ohne eine tatsächliche Änderung des Taktsignals. Eine herkömmliche
DRAM-Vorrichtung vom DDR-Typ ist in 1 dargestellt.
Genauer gesagt ist eine Speichervorrichtung 10 in der Form
eines Chips oder Halbleiterstücks
und umfasst einen Mehrzahl von Zellenarrays oder Speicherbänken 12a–12h,
die jeweils eine Reihe von Unterspeicherzellenarrays 15 und
entsprechenden Erfassungsverstärkern
bzw. Leseverstärkern 16 umfassen.
Der Chip oder das Halbleiterstück
ist typischerweise im Wesentlichen rechteckig, wobei die Speicherbänke in zwei
Zeilen von vier Bänken
angeordnet sind, wobei jede Zeile entlang einer jeweiligen länger bemessenen
Kante des Chips angeordnet ist (z. B. die Speicherbänke 12a, 12b, 12e und 12f sind
zu einer oberen Chipkante hin angeordnet und die Speicherbänke 12c, 12d, 12g und 12h sind
zu einer unteren Chipkante hin angeordnet, wie es in 1 zu sehen ist). Die Speichervorrichtung
liefert eine Speicherkapazität
von einem Gigabit, die unter den Speicherbänken 12a–12h gleichmäßig verteilt
ist (z. B. jede Speicherbank umfasst eine Speicherkapazität von näherungsweise einhundertachtundzwanzig
Megabit).
-
Jede
Speicherbank ist einem Zeilendecoder 14, einem Spaltendecoder 18,
einem lokalen Datenbus 20, sekundären Erfassungsverstärkern 22,
einem Schreibtreiber 23 und einem Bankdatenbus 24 zugeordnet
(z. B. RWD0–RWD7,
wie es in 1 zu sehen
ist). Ein Spaltendecoder- und Steuerbereich 21 ist unterhalb
jeder Speicherbank 12a–12h angeordnet
und umfasst eine Spaltendecoder- und Steuerschaltungsanordnung (z.
B. den Spaltendecoder 18, den lokalen Datenbus 20,
die sekundären
Erfassungsverstärker 22,
den Schreibtreiber 23, den Bankdatenbus 24 etc.)
für diese
Speicherbank. Die Zeilendecoder für zwei benachbarte Speicherbänke innerhalb
einer Zeile sind entlang entsprechender Speicherbankseitenkanten
nebeneinander angeordnet. Somit sind die Zeilendeco der 14 der
Speicherbänke 12a, 12b nebeneinander
zwischen Seitenkanten dieser Speicherbänke angeordnet, während die Zeilendecoder
der Speicherbänke 12e, 12f auf ähnliche
Weise nebeneinander und zwischen Seitenkanten dieser Speicherbänke angeordnet
sind. Die Zeilendecoder für
die benachbarten Speicherbänke 12c, 12d und 12g, 12h innerhalb
der unteren Zeile sind auf eine ähnliche
Weise angeordnet.
-
Der
Zeilendecoder gibt eine Zeile (oder ein Wort) innerhalb einer entsprechenden
Speicherbank gemäß einer
gelieferten Speicheradresse frei, während die Erfassungsverstärker 16 eine Übertragung von
Informationen mit einzelnen Speicherzellen ermöglichen. Der Spaltendecoder
wählt entsprechende Erfassungsverstärker oder
Spalten zum Zugreifen auf spezielle Speicherzellen gemäß der gelieferten Adresse
aus. Der lokale Datenbus 20 überträgt Informationen zwischen den
Erfassungsverstärkern 16 und
den sekundären
Erfassungsverstärkern 22 und dem
Schreibtreiber 23. Die sekundären Erfassungsverstärker verstärken die
Signale, die durch den Spaltendecoder ausgewählt sind, um den Bankdatenbus 24 während einer
Leseoperation zu treiben, während
der Schreibtreiber 23 Informationen von dem Bankdatenbus 24 für eine Schreiboperation empfängt, wie
es unten beschrieben ist. Jeder Bankdatenbus 24 ist vierundsechzig
Bit breit und umfasst näherungsweise
die gleiche Länge,
um sich durch einen entsprechenden Spaltendecoder- und Steuerbereich 21 zu
erstrecken.
-
Die
Speichervorrichtung umfasst ferner einen Datenperipherieschaltungsbereich 28 und
einen Adress-/Befehlsperipherieschaltungsbereich 30. Der Datenperipherieschaltungsbereich
ist zwischen der oberen und der unteren Zeile von Speicherbänken angeordnet
und erstreckt sich von der Chipseitenkante der benachbarten Speicherbänke 12a, 12c zu näherungsweise
der Mitte des Chips. Der Datenperipherieschaltungsbereich 28 umfasst
typischerweise eine Reihe von Anschlussflächen 34, die in zwei
Zeilen angeordnet sind (z. B. DQ-Anschlussflächen mit einer oberen Zeile,
die unter der Speicherbank 12b angeordnet ist, und einer
unteren Zeile, die über
der Speicherbank 12d angeordnet ist), um Daten in die Speichervorrichtung
zu empfangen und Daten von derselben zu liefern, und Eingänge, um
ein Übernahmesignal
bzw. Freigabesignal bzw. Strobe (z. B. DQS) für einen Betrieb mit doppelter
Datenrate und eine Datenmaske (z. B. DM), um Schreiboperationen selektiv
zu blockieren, zu empfangen. Der Datenperipherieschaltungsbereich 28 kann
ferner eine Schaltungsanordnung umfassen, um Daten zu und von der Speichervorrichtung
aufzunehmen und/oder zu verarbeiten.
-
Der
Adress-/Befehlsperipherieschaltungsbereich ist zwischen der oberen
und der unteren Zeile von Speicherbänken angeordnet und erstreckt
sich von der Chipseitenkante benachbart zu den Speicherbänken 12f, 12h zu
näherungsweise
der Mitte des Chips. Der Adress-/Befehlsperipherieschaltungsbereich
umfasst Anschlussflächen 36,
die in zwei Zeilen angeordnet sind (z. B. ADD/CMD-Anschlussflächen mit
einer oberen Zeile, die unter der Speicherbank 12e angeordnet
ist, und einer unteren Zeile, die über der Speicherbank 12g angeordnet
ist), um Adressen und Befehle für
die Speichervorrichtung zu empfangen und zu liefern, und eine Schaltungsanordnung,
um die Adresse und die Befehle zu verarbeiten.
-
Um
Daten zwischen den Speicherbänken und
den Anschlussflächen 34 zu übertragen,
umfasst die Speichervorrichtung einen globalen Datenbus 32 (z.
B. SRWD, wie es in 1 zu
sehen ist), der mit den Anschlussflächen 34 gekoppelt
ist. Der globale Datenbus ist teilweise in beiden Schaltungsbereichen 28 und 30 angeordnet
(z. B. erstreckt sich in dem Bereich zwischen der oberen und der
unteren Zeile der Anschlussflächen 34 und 36 der
jeweiligen Bereiche 28, 30) und ist vierundsechzig
Bits breit. Der globale Datenbus ist ferner mit jedem Bankdatenbus 24 über Multiplexer 26, 27 gekoppelt.
Der Multiplexer 26 ist mit den Bankdatenbussen gekoppelt,
die den Speicherbänken 12a–12d zugeordnet ist, und
ist in dem Datenperipherieschaltungsbereich 28 im Wesentlichen
zusammenfallend mit den benachbarten Zeilendecodern für diese
Speicherbänke angeordnet.
Der Multiplexer 27 ist mit den Bankdatenbussen gekoppelt,
die den Speicherbänken 12e–12h zugeordnet
sind, und ist in dem Adress-/Befehlsperipherieschaltungsbereich 30 im
Wesentlichen zusammenfallend mit den benachbarten Zeilendecodern
für diese
Speicherbänke
angeordnet. Somit kann jeder Multiplexer selektiv eine von vier Speicherbänken mit
dem globalen Datenbus koppeln. Die Multiplexer 26, 27 koppeln
selektiv einen Bankdatenbus mit dem globalen Datenbus 32 basierend
auf einer Speicheradresse, die die Speicherbank angibt, die die
erwünschten
Speicherzellen für eine
Wiedererlangung oder Speicherung von Informationen enthält. Dies
ermöglicht,
dass Informationen von den Speicherzellen der Speicherbänke 12a–12h gelesen
und zu denselben geschrieben werden.
-
Die
Speichervorrichtung sieht eine Mehrzahl von Operationen vor, um
auf Daten zuzugreifen. Diese Operationen umfassen Lese- und Schreiboperationen,
um Daten in spezifischen Speicherzellen wiederzuerlangen bzw. zu
speichern. Um von Speicherzellen zu lesen oder zu denselben zu schreiben,
werden die speziellen Zellen ausgewählt oder adressiert. Zusätzlich werden
Steuerinformationen von einer Steuerung (z. B. einer CPU etc.) empfangen,
um den Typ einer Operation (z. B. einer Schreiboperation oder einer
Leseoperation) anzugeben, die durchgeführt werden soll. Mit Bezug
auf eine Leseoperation wird eine Zeile von Speicherzellen in einer
speziellen Speicherbank durch einen Zeilendecoder 14 basierend
auf einer gelieferten Speicheradresse freigegeben. Die Ladungen
der freigegebenen Speicherzellen werden zu entsprechenden Erfassungsverstärkern 16 geliefert,
die die Signale verstärken.
Der Spaltendecoder 18 wählt
die Erfassungsverstärker aus,
die den erwünschten
Speicherzellen zugeordnet sind, basierend auf der gelieferten Adresse,
wobei die ausgewählten
Signale für
eine Übertragung
zu den sekundären
Erfassungsverstärkern 22 an
dem lokalen Datenbus 20 platziert werden. Die sekundären Erfassungsverstärker verstärken die
empfangenen Signale, um diese Signale auf einen entsprechenden Bankdatenbus 24 zu
platzieren. Der Bankdatenbus ist mit dem globalen Datenbus 32 über den Multiplexer 26 oder 27 (z.
B. abhängig
von der speziellen zugegriffenen Speicherbank), wie es oben beschrieben
ist, für
eine Übertragung
der Signale zu den Anschlussflächen 34 gekoppelt.
Die Anschlussflächen
ermöglichen,
dass eine Peripherieschaltungsanordnung die Signale als eine Ausgabe
von der Speichervorrichtung liefert.
-
Eine
Schreiboperation platziert Daten, die durch die Anschlussflächen 34 empfangen
wurden (z. B. von der Peripherieschaltungsanordnung, die Daten von
einer externen Quelle empfängt),
in erwünschte
Speicherzellen. Die Daten von den Anschlussflächen 34 werden an
dem globalen Bus 32 platziert und über den Multiplexer 26 oder 27 (z.
B. abhängig
von der zugegriffenen Speicherbank) zu dem Datenbus 24 übertragen,
der der Speicherbank zugeordnet ist, die die erwünschten Speicherzellen enthält. Der
Schreibtreiber 23 überträgt die Daten von
dem Datenbus 24 zu dem lokalen Datenbus 20 für eine Beförderung
zu den Erfassungsverstärkern 16.
Die Erfassungsverstärker
speichern die Daten in den erwünschten
Speicherzellen der zugeordneten Speicherbank in Verbindung mit den
Zeilen- und Spaltendecodern.
-
Die
oben beschriebene Speichervorrichtung leidet unter mehreren Nachteilen.
Insbesondere weist die Architektur, die auf acht Speicherbänken basiert,
für gewöhnlich einen
größeren Halbleitergrößenmehraufwand
als Architekturen mit vier Bänken auf,
da sich der globale Datenbus in den Adress-/Befehlsperipherieschaltungsbereich
erstreckt. Ferner verwendet die oben beschriebene Architektur zwei Multiplexer,
um Datenbankbusse mit dem globalen Datenbus (und Anschlussflächen) zu
koppeln. Ein Multiplexer ist in dem Datenperipherieschaltungsbereich
benachbart zu den Anschlussflächen
angeordnet, während
der andere Multiplexer in dem Adress-/Befehlsperipherieschaltungsbereich
angeord net ist, wie es oben beschrieben ist. Jedoch ist die Strecke,
die sich Daten über
den globalen Datenbus von dem Multiplexer, der in dem Datenperipherieleitungsbereich
angeordnet ist, zu den Anschlussflächen bewegen, kürzer als
die Strecke, die sich Daten von dem anderen Datenmultiplexer zu
diesen Anschlussflächen
bewegen. Dies resultiert in einem erheblichen oder großen Datenzeitversatz
an dem globalen Datenbus. Mit anderen Worten variiert die Bewegungszeit
für Daten
von den jeweiligen Multiplexern (und entsprechenden Speicherbänken). Zusätzlich verwendet
die oben beschriebene Architektur zwei Multiplexer, wodurch ein
Signalrouting zu den Peripherieschaltungsbereichen verkompliziert
ist.
-
Es
ist die Aufgabe der vorliegenden Erfindung, eine Vorrichtung zum
Transportieren von Daten innerhalb einer Speichervorrichtung, ein
Verfahren zum Transportieren von Daten innerhalb einer Speichervorrichtung
und eine Speichervorrichtung mit verbesserten Charakteristika zu
schaffen.
-
Diese
Aufgabe wird durch eine Vorrichtung gemäß Anspruch 1 und Anspruch 11,
ein Verfahren gemäß Anspruch
6 und eine Speichervorrichtung gemäß Anspruch 16 gelöst.
-
Gemäß der vorliegenden
Erfindung transportiert eine Vorrichtung Daten innerhalb einer Speichervorrichtung,
die eine Mehrzahl von Speicherbänken und
eine Reihe von Anschlussflächen
umfasst, die Informationen für
die Speichervorrichtung empfangen und Informationen von derselben
liefern. Die Vorrichtung umfasst eine Mehrzahl von Bankdatenbussen,
die jeweils zumindest zwei der Speicherbänke zugeordnet sind, um Informationen
mit diesen Speicherbänken
zu übertragen,
einen globalen Datenbus, um Informationen mit der Reihe von Anschlussflächen zu übertragen,
um Informationen für die
Speichervorrichtung zu empfangen und Informationen von derselben
zu liefern, und eine Schaltvorrichtung, die mit der Mehrzahl von
Bankdatenbussen und mit dem globalen Datenbus gekoppelt ist, um
selektiv einen der Bankdatenbusse mit dem globalen Datenbus gemäß einer
erwünschten
Speicherbank zu koppeln, auf die zugegriffen werden soll, um Informationen
zwischen der Reihe von Anschlussflächen und der erwünschten
Speicherbank zu übertragen. Die
Ausführungsbeispiele
der vorliegenden Erfindung umfassen ferner ein Verfahren und eine
Speichervorrichtung zum Transportieren von Daten, wie es oben beschrieben
ist.
-
Die
obigen und noch weitere Merkmale und Vorteile der vorliegenden Erfindung
werden auf eine Betrachtung der folgenden detaillierten Beschreibung
spezifischer Ausführungsbeispiele
derselben hin ersichtlich, insbesondere in Verbindung mit den zugehörigen Zeichnungen,
wobei in den verschiedenen Figuren ähnliche Bezugszeichen verwendet
werden, um ähnliche
Komponenten zu bezeichnen.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf
die beiliegenden Zeichnungen näher
erläutert.
Es zeigen:
-
1 ein
schematisches Blockdiagramm eines dynamischen Direktzugriffsspeichers
(DRAM), der acht Speicherbänke
und eine herkömmliche
Datenbusarchitektur verwendet; und
-
2 ein
schematisches Blockdiagramm eines exemplarischen dynamischen Direktzugriffsspeichers
(DRAM), der die Datenbusarchitektur gemäß der vorliegenden Erfindung
verwendet.
-
Die
vorliegende Erfindung betrifft eine Datenbusstruktur für einen
dynamischen Direktzugriffsspeicher (DRAM). Die Datenbusstruktur
spart Platz an einem Chip oder Halbleiterstück und verhindert erhebliche
Zeitversätze
für Daten,
auf die von unterschiedlichen Speicherbänken aus zugegriffen wird, wie
es unten beschrieben ist. Ein exemplarischer dynamischer Direktzugriffsspeicher
(DRAM), der eine Daten busarchitektur gemäß der vorliegenden Erfindung
verwendet, ist in 2 dargestellt. Genauer gesagt
ist eine Speichervorrichtung 100 in der Form eines Chips
oder Halbleiterstücks
und umfasst eine Mehrzahl von Zellenarrays oder Speicherbänken 12a–12h,
die jeweils eine Reihe von Unterspeicherzellenarrays 15 und
entsprechenden Erfassungsverstärkern 16 umfassen,
wie es oben beschrieben ist. Zum Beispiel ist die Speichervorrichtung 100 eine Speichervorrichtung
des Typs mit doppelter Datenrate (DDR) mit acht Speicherbänken; die
Speichervorrichtung kann jedoch irgendein Typ sein und irgendeine
Menge von Speicherbänken
umfassen. Der Chip oder das Halbleiterstück ist typischerweise im Wesentlichen
rechteckig, wobei die Speicherbänke
in zwei Zeilen von vier Bänken
angeordnet sind, wobei jede Zeile entlang einer jeweiligen länger bemessenen
Kante des Chips angeordnet ist (z. B. sind die Speicherbänke 12a, 12b, 12e und 12f zu
einer oberen Chipkante hin angeordnet und sind die Speicherbänke 12c, 12d, 12g und 12h zu
einer unteren Chipkante hin angeordnet, wie es in 2 zu
sehen ist). Die Speichervorrichtung liefert vorzugsweise eine Speicherkapazität von einem
Gigabit, die unter den Speicherbänken 12a–12h gleichmäßig verteilt
ist (z. B. umfasst jede Speicherbank eine Speicherkapazität von näherungsweise
einhundertachtundzwanzig Megabit). Die Speichervorrichtung kann
alternativ irgendeine erwünschte
Speicherkapazität
umfassen, die in irgendeiner Weise unter den Speicherbänken verteilt
ist.
-
Jede
Speicherbank ist einem Zeilendecoder 14, einem Spaltendecoder 18,
einem lokalen Datenbus 20, sekundären Erfassungsverstärkern 22 und einem
Schreibtreiber 23 zugeordnet, jeweils wie oben beschrieben.
Bankdatenbusse 124 (z. B. RWD01, RWD23, RWD45 und RWD67,
wie es in 2 zu sehen ist) sind ferner
den Speicherbänken zugeordnet,
wobei jedes Paar von benachbarten Speicherbänken (z. B. 12a–12b, 12c–12d, 12e–12f und
12g–12h)
einem entsprechenden Bankdatenbus 124 zugeordnet ist (z.
B. wie es in 2 zu sehen ist: die Speicherbänke 12a–12b sind
dem Bus RWD01 zugeordnet; die Speicherbänke 12c–12d sind
dem Speicherbus RWD23 zugeordnet, die Speicherbänke 12e–12f sind
dem Bus RWD45 zugeordnet; und die Speicherbänke 12g–12h sind
RWD67 zugeordnet). Die Komponenten (z. B. der Zeilendecoder 14,
die Erfassungsverstärker 16,
der Spaltendecoder 18, der lokale Datenbus 20,
die sekundären
Erfassungsverstärker 22,
der Schreibtreiber 23, die Bankdatenbusse 124 etc.)
können
durch irgendeine herkömmliche oder
andere Vorrichtungen (z. B. eine Schaltungsanordnung, Chips, Busse,
Datentransfer-/Transportvorrichtungen etc.) implementiert sein,
die die hierin beschriebenen Funktionen durchführen.
-
Ein
Spaltendecoder- und Steuerbereich 21 ist unter jeder Speicherbank 12a–12h angeordnet und
umfasst eine Spaltendecoder- und Steuerschaltungsanordnung (z. B.
den Spaltendecoder 18, den lokalen Datenbus 20,
die sekundären
Erfassungsverstärker 22,
den Schreibtreiber 23, den Bankdatenbus 124 etc.)
für diese
Speicherbank. Die Zeilendecoder für zwei benachbarte Speicherbänke innerhalb
einer Zeile sind entlang entsprechender Speicherbankseitenkanten
nebeneinander angeordnet. Somit sind die Zeilendecoder 14 der
Speicherbänke 12a, 12b nebeneinander
zwischen Seitenkanten dieser Speicherbänke angeordnet, während die
Zeilendecoder der Speicherbänke 12d, 12f auf ähnliche
Weise nebeneinander und zwischen Seitenkanten dieser Speicherbänke angeordnet
sind. Die Zeilendecoder für
die benachbarten Speicherbänke 12c, 12d und 12g, 12h innerhalb
der unteren Zeile sind in einer ähnlichen
Weise angeordnet.
-
Der
Zeilendecoder gibt eine Zeile (oder ein Wort) innerhalb einer entsprechenden
Speicherbank gemäß einer
gelieferten Speicheradresse frei, während die Erfassungsverstärker 16 eine Übertragung von
Informationen mit einzelnen Speicherzellen ermöglichen. Der Spaltendecoder
wählt entsprechende Erfassungsverstärker oder
Spalten zum Zugreifen auf spezielle Speicherzellen gemäß der gelieferten Adresse
aus. Der lokale Datenbus 20 überträgt Informationen zwischen den
Erfassungsverstärkern 16 und
den sekundären
Erfassungsver stärker 22 und dem
Schreibtreiber 23. Die sekundären Erfassungsverstärker verstärken die
Signale, die durch den Spaltendecoder ausgewählt sind, um einen entsprechenden
Bankdatenbus 124 während
einer Leseoperation zu treiben, während der Schreibtreiber 23 Informationen
von dem entsprechenden Bankdatenbus 124 für eine Schreiboperation
empfängt,
wie es unten beschrieben ist. Jeder Bankdatenbus 124 ist
vorzugsweise vierundsechzig Bit breit und umfasst im Wesentlichen
die gleiche Länge,
um sich durch die Spaltendecoder- und Steuerbereiche 21 der
entsprechenden benachbarten Speicherbänke zu erstrecken, die diesen
Bankdatenbus nutzen. Die Bankdatenbusse 124 umfassen Längen, die
größer sind
als diese der Bankbusse der herkömmlichen
Architektur, und können
alternativ eine Breite irgendeiner Größe von Bits (z. B. sechzehn,
zweiunddreißig,
einhundertachtundzwanzig etc.) aufnehmen oder umfassen.
-
Die
Speichervorrichtung umfasst ferner einen Datenperipherieschaltungsbereich 28 und
einen Adress-/Befehlsperipherieschaltungsbereich 30, die jeweils
oben beschrieben sind. Der Datenperipherieschaltungsbereich ist
zwischen der oberen und der unteren Zeile von Speicherbänken angeordnet
und erstreckt sich von der Chipseitenkante benachbart zu den Speicherbänken 12a, 12c zu
der ungefähren
Mitte des Chips. Der Datenperipherieschaltungsbereich 28 umfasst
typischerweise eine Reihe von Anschlussflächen 34, die in zwei
Zeilen angeordnet sind (z. B. DQ-Anschlussflächen mit einer oberen Zeile, die
unter der Speicherbank 12b angeordnet ist, und einer unteren
Zeile, die über
der Speicherbank 12d angeordnet ist), um Daten in die Speichervorrichtung zu
empfangen und Daten von derselben zu liefern, wie es oben beschrieben
ist. Die Anschlussflächen können von
irgendeiner Menge sein und können durch
irgendwelche herkömmlichen
oder anderen Vorrichtungen implementiert sein (z. B. Anschlussflächen, Kontakte,
Anschlüsse
etc.). Der Datenperipherieschaltungsbereich 28 kann ferner
Eingänge,
um ein Übernahmesignal
(z. B. DQS) für
einen Betrieb mit doppelter Datenrate und eine Datenmaske (z. B. DM),
um Schreibopera tionen selektiv zu blockieren, zu empfangen, und
eine Schaltungsanordnung umfassen, um Daten zu und von der Speichervorrichtung
aufzunehmen und/oder zu verarbeiten, wie es oben beschrieben ist.
-
Der
Adress-/Befehlsperipherieschaltungsbereich ist zwischen der oberen
und der unteren Zeile von Speicherbänken angeordnet und erstreckt
sich von der Seitenkante benachbart zu den Speicherbänken 12f, 12h zu
der ungefähren
Mitte des Chips. Der Adress-/Befehlsperipherieschaltungsbereich umfasst
Anschlussflächen 36,
die in zwei Zeilen angeordnet sind (z. B. ADD/CMD-Anschlussflächen mit einer
oberen Zeile, die unter der Speicherbank 12e angeordnet
ist, und einer unteren Zeile, die über der Speicherbank 12g angeordnet
ist), um eine Adresse und Befehle für die Speichervorrichtung zu
empfangen und zu liefern, und eine Schaltungsanordnung, um die Adresse
und die Befehle zu verarbeiten, wie es oben beschrieben ist. Die
Anschlussflächen
können
von irgendeiner Menge sein und können
durch irgendwelche herkömmlichen
oder anderen Vorrichtungen implementiert sein (z. B. Anschlussflächen, Kontakte,
Anschlüsse
etc.).
-
Um
Daten zwischen den Speicherbänken und
den Anschlussflächen 34 zu übertragen,
umfasst die Speichervorrichtung einen globalen Datenbus 132 (z.
B. SWRD, wie es in 2 zu sehen ist), der mit der
Anschlussfläche 34 gekoppelt
ist. Der globale Datenbus kann durch irgendeinen herkömmlichen oder
anderen Datenbus implementiert sein und ist in dem Datenperipherieschaltungsbereich 28 angeordnet
(z. B. erstreckt sich in dem Bereich zwischen der oberen und der
unteren Zeile von Anschlussflächen 34 des
Bereichs 28). Der globale Datenbus ist vorzugsweise vierundsechzig
Bits breit, aber kann eine Breite irgendeiner Größe von Bits (z. B. sechzehn, achtundzwanzig,
einhundertachtundzwanzig etc.) aufnehmen oder umfassen. Da der globale
Datenbus eine Länge
umfasst, die geringer als diese des globalen Datenbusses der herkömmlichen
Architektur ist, und vollständig
innerhalb des Datenperipherieschaltungsbereichs 28 resident ist,
wird der entsprechende Raum in dem Adress-/Befehlsperipherieschaltungsbereich
für den
globalen Datenbus nicht mehr benötigt
(oder wird für
zusätzliche
Komponenten verfügbar).
Folglich kann die Halbleiterstück-
oder Chipgröße reduziert
werden.
-
Der
globale Datenbus ist ferner mit jedem Bankdatenbus 124 über eine
Schaltvorrichtung oder einen Multiplexer 126 gekoppelt.
Der Multiplexer 126 ist in sowohl dem Datenperipherieschaltungsbereich 28 als
auch dem Adress-/Befehlsperipherieschaltungsbereich 30 teilweise
bei einer im Wesentlichen zentralen Position an den Chip angeordnet.
Die Schaltvorrichtung oder der Multiplexer kann durch irgendwelche
herkömmlichen
oder anderen Schaltvorrichtungen implementiert sein (z. B. eine
Schaltungsanordnung, einen Multiplexer, ein Gatterarray etc.). Der
Multiplexer kann selektiv basierend auf einer Speicheradresse, die
die Speicherbank angibt, die die erwünschten Speicherzellen für eine Wiedererlangung
oder Speicherung von Informationen umfasst, irgendeine der Speicherbänke mit
dem globalen Datenbus koppeln. Dies ermöglicht, dass Informationen
von den Speicherzellen der Speicherbänke 12a–12h gelesen
und zu denselben geschrieben werden können. Die Architektur der vorliegenden
Erfindung eliminiert erhebliche oder große Zeitversätze über dem globalen Datenbus,
da die Strecke (oder erforderliche Zeit) für Daten, um sich über den
globalen Datenbus zwischen dem zentralisierten Multiplexer 126 und
den Anschlussflächen 34 zu
bewegen, für
jede zugegriffene Speicherbank im Wesentlichen die gleiche ist.
-
Es
wird ein Betrieb der Speichervorrichtung 100 beschrieben.
Anfänglich
kann die Speichervorrichtung eine Mehrzahl von Operationen liefern,
um auf Daten zuzugreifen. Diese Operationen umfassen Lese- und Schreiboperationen,
um Daten in spezifischen Speicherzellen wiederzuerlangen bzw. zu speichern.
Um von Speicherzellen zu lesen oder zu denselben zu schreiben, werden
die speziellen Zellen ausgewählt
oder adressiert. Zusätzlich
werden Steuerinformationen von einer Steuerung (z. B. einer CPU
etc.) empfangen, um den Typ einer Operation anzugeben (z. B. eine
Schreiboperation oder eine Leseoperation), die durchgeführt werden
soll. Mit Bezug auf eine Leseoperation wird eine Zeile von Speicherzellen
in einer speziellen Speicherbank durch einen Zeilendecoder 14 basierend
auf einer gelieferten Speicheradresse freigegeben. Die Ladungen
der freigegebenen Speicherzellen werden zu entsprechenden Erfassungsverstärkern 16 geliefert,
die die Signale verstärken.
Ein Spaltendecoder 18 wählt
die Erfassungsverstärker,
die den erwünschten
Speicherzellen zugeordnet sind, basierend auf der gelieferten Adresse
aus, wobei die ausgewählten
Signale für eine Übertragung
zu sekundären
Erfassungsverstärkern 22 an
einem lokalen Datenbus 20 platziert werden. Die sekundären Erfassungsverstärker verstärken die
empfangenen Signale, um diese Signale an einem entsprechenden Bankdatenbus 124 zu
platzieren. Typischerweise wird zu einer Zeit auf eine Speicherbank
zugegriffen, um Konflikte oder einen simultanen Zugriff auf einen
gemeinschaftlich verwendeten Bankdatenbus 124 zu vermeiden.
Der Bankdatenbus ist für
eine Übertragung
der Signale zu Anschlussflächen 34 über einen
Multiplexer 126 mit einem globalen Datenbus 132 gekoppelt.
Die Anschlussflächen
ermöglichen,
dass eine Peripherieschaltungsanordnung die Signale als eine Ausgabe
von der Speichervorrichtung liefern kann.
-
Eine
Schreiboperation platziert Daten, die durch die Anschlussflächen 34 (z.
B. von einer Peripherieschaltungsanordnung, die Daten von einer
externen Quelle empfängt)
empfangen werden, in erwünschte
Speicherzellen. Die Daten von den Anschlussflächen 34 werden an
dem globalen Bus 132 platziert und über den Multiplexer 126 zu
einem Datenbus 124 übertragen,
der der Speicherbank zugeordnet ist, die die erwünschten Speicherzellen umfasst.
Ein Schreibtreiber 23 der erwünschten Speicherbank überträgt die Daten
von dem Datenbus 124 zu dem lokalen Datenbus 20 für eine Beförderung
zu den Erfassungsverstärkern 16.
Die Erfassungsverstärker
speichern die Daten in den erwünschten
Speicherzel len der zugeordneten Speicherbank in Verbindung mit dem
Zeilen- und dem Spaltendecoder.
-
Die
vorliegende Erfindung liefert mehrere Vorteile, einschließlich eines
verbesserten Signalleitens bzw. Signalroutings in dem Peripherieschaltungsbereich,
einer reduzierten Halbleiterstück-
oder Chipgröße und erheblich
reduzierter Zeitversätze
an dem globalen Datenbus. Zusätzlich
kann die Architektur der vorliegenden Erfindung auf Speichervorrichtungen
mit irgendeiner Menge von Speicherbänken (z. B. sechzehn, zwanzig,
vierundzwanzig etc.) angewandt werden, wobei mehrere Speicherbänke (z.
B. vier oder mehr etc.) einen gemeinsamen Bankdatenbus gemeinschaftlich
verwenden können,
wie es oben beschrieben ist.
-
Es
ist ersichtlich, dass die oben beschriebenen und in den Zeichnungen
dargestellten Ausführungsbeispiele
lediglich wenige der vielen Implementierungsweisen einer Speicherdatenbusstruktur
und eines Verfahrens zum Übertragen
von Informationen mit mehreren Speicherbänken darstellen.
-
Die
Datenbusarchitektur der vorliegenden Erfindung kann bei irgendeinem
Typ einer Speichervorrichtung eingesetzt werden (z. B. RAM, DRAM, ROM,
DDR, dynamisch, statisch etc.), die irgendeine Menge irgendwelcher
Typen von Speicherbänken
mit irgendwelchen erwünschten
Speicherkapazitäten umfasst
(z. B. Kilobit, Megabit, Gigabit etc.). Die Speicherbänke können irgendwelche
Typen von Speicherzellen umfassen (z. B. Transistoren, Kondensatoren
etc.). Der Chip oder das Halbleiterstück kann in irgendeiner Weise
angeordnet sein und kann von irgendeiner Form oder Größe sein.
Die Komponenten (z. B. Speicherbänke,
Zeilendecoder, Spaltendecoder, Erfassungsverstärker, Datenbusse etc.) können an
dem Chip oder innerhalb der Bereiche in irgendeiner erwünschten
Weise angeordnet sein und können
durch irgendwelche herkömmlichen
oder anderen Komponenten (z. B. eine Schaltungsanordnung, Chips,
Gatter, Logik etc.) implementiert sein, die die hierin beschriebenen
Funktionen durchführen.
Die Bereiche (z. B. Peripherieschaltung, Spaltendecodierung, Steuerung
etc.) können
von irgendeiner Menge, Form oder Größe sein, können an dem Chip bei irgendwelchen
Positionen angeordnet sein und können
irgendwelche Komponenten umfassen (z. B. eine Schaltungsanordnung,
Anschlussflächen,
Busse, Multiplexer, Erfassungsverstärker, Zeilen- und Spaltendecoder
etc.). Die Speichervorrichtung kann Befehle von irgendeiner Menge
irgendeines Typs einer externen Vorrichtung (z. B. Prozessor, Steuerung
etc.) empfangen.
-
Die
Datenbusarchitektur der vorliegenden Erfindung kann irgendeine Menge
irgendwelcher Typen von Bussen (z. B. lokal, global, Bank etc.)
irgendeiner erwünschten
Kapazität
(z. B. irgendeine Menge von Bits etc.) umfassen und kann verwendet werden,
um irgendwelche erwünschten
Informationen zu übertragen
(z. B. Daten, Befehle, Adressen etc.). Die Busse (z. B. ein Bankdatenbus,
ein globaler Datenbus, ein lokaler Datenbus etc.) können durch
irgendwelche herkömmlichen
oder anderen Busse oder Datenübertragungsvorrichtungen
implementiert sein und können
irgendwelche geeigneten Längen aufweisen.
Die Architektur kann irgendeine Menge von Schaltvorrichtungen umfassen,
wobei die Schaltvorrichtungen durch irgendwelche herkömmlichen oder
anderen Vorrichtungen (z. B. Multiplexer, Schalter, Gatterarray,
Logik, Prozessor etc.) implementiert sein können, um die Bank- und die
globalen Datenbusse zu koppeln. Die Schaltvorrichtung kann irgendeine
Menge von Speicherbänken
oder Bussen (z. B. die Bankdatenbusse) mit irgendeiner Menge von
anderen Bussen (z. B. Globale Datenbusse) basierend auf irgendwelchen
erwünschten
Eingaben oder Bedingungen (z. B. Adressen, Steuersignalen etc.)
koppeln. Die Anschlussflächen
(z. B. Daten und Adresse/Befehl) können von irgendeiner Menge
sein, können
an dem Chip in irgendeiner Weise (z. B. in irgendeinem Bereich)
angeordnet und angebracht sein und können durch irgendwelche herkömmlichen oder
anderen Anschlussflächen
(z. B. Kontakte, Anschlüsse
etc.) implementiert sein. Die Anschlussflächen können verwendet werden, um irgendwelche erwünschten
Informationen (z. B. Daten, Befehle, Adressen, Steuersignale etc.)
zu übertragen.
-
Die
vorliegende Erfindung ist nicht auf die oben beschriebenen Anwendungen
begrenzt, sondern kann auf irgendwelche Typen eines Speichers oder
andere Vorrichtungen angewandt werden, die Daten wiedererlangen,
speichern und/oder transportieren.
-
Es
ist klar, dass die Begriffe „oben", „unten", „vorne", „hinten", „Seite", „Höhe", „Länge", „Breite", „Ober-" „Unter-" und dergleichen hierin lediglich verwendet
werden, um Referenzpunkte zu beschreiben, und die vorliegende Erfindung
nicht auf irgendeine spezielle Ausrichtung oder Konfiguration begrenzen.
-
Aus
der vorhergehenden Beschreibung ist ersichtlich, dass die Erfindung
eine Speicherdatenbusstruktur und ein Verfahren zum Übertragen
von Informationen mit mehreren Speicherbänken zur Verfügung stellt,
wobei eine Datenbusstruktur für
einen dynamischen Direktzugriffsspeicher (DRAM) Platz an einem Halbleiterstück oder
Chip spart und erhebliche Zeitversätze für Daten verhindert, auf die
von unterschiedlichen Speicherbänken
aus zugegriffen wird, indem eine Reihe von Datenbussen, die jeweils durch
eine Mehrzahl von Speicherbänken
gemeinschaftlich verwendet werden, und eine Schaltvorrichtung verwendet
werden, um die Datenbusse selektiv mit einem globalen Datenbus zu
koppeln, um zu ermöglichen,
dass die Speichervorrichtung Daten liefert und empfängt.
-
Nachdem
bevorzugte Ausführungsbeispiele einer
neuen und verbesserten Datenspeicherbusstruktur und eines neuen
und verbesserten Verfahrens zum Übertragen
von Informationen mit mehreren Speicherbänken beschrieben wurden, ist
man der Ansicht, dass andere Modifikationen, Variationen und Veränderungen
Fachleuten auf dem Gebiet angesichts der hierin dargelegten Lehren
nahe gelegt sind. Es ist deshalb klar, dass alle derartigen Variationen,
Modifikationen und Veränderungen
in den Schutzbereich der vorliegenden Erfindung fallen sollen, wie
derselbe durch die beigefügten
Ansprüche definiert
ist.