DE102007036990A1 - Verfahren zum Betrieb einer Speichervorrichtung, Speichereinrichtung und Speichervorrichtung - Google Patents

Verfahren zum Betrieb einer Speichervorrichtung, Speichereinrichtung und Speichervorrichtung Download PDF

Info

Publication number
DE102007036990A1
DE102007036990A1 DE102007036990A DE102007036990A DE102007036990A1 DE 102007036990 A1 DE102007036990 A1 DE 102007036990A1 DE 102007036990 A DE102007036990 A DE 102007036990A DE 102007036990 A DE102007036990 A DE 102007036990A DE 102007036990 A1 DE102007036990 A1 DE 102007036990A1
Authority
DE
Germany
Prior art keywords
bank
memory
memory device
command
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE102007036990A
Other languages
English (en)
Other versions
DE102007036990B4 (de
Inventor
Hermann Ruckerbauer
Christian Sichert
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Polaris Innovations Ltd
Original Assignee
Qimonda AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qimonda AG filed Critical Qimonda AG
Priority to DE102007036990A priority Critical patent/DE102007036990B4/de
Priority to US12/186,195 priority patent/US7986582B2/en
Publication of DE102007036990A1 publication Critical patent/DE102007036990A1/de
Application granted granted Critical
Publication of DE102007036990B4 publication Critical patent/DE102007036990B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/08Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/14Word line organisation; Word line lay-out

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Dram (AREA)

Abstract

Verfahren zum Betrieb einer Speichervorrichtung, welche wenigstens zwei Speichereinrichtungen umfasst, wobei jede Speichereinrichtung wenigstens eine Bank enthält, umfassend: Aktivierung wenigstens einer Wortleitung in wenigstens einer Bank gemäß einem Zeilenaktivierungskommando, Speichern von Bankinformation, wobei die Bankinformation angibt, welche Bänke pro Speichereinrichtung eine durch das Zeilenaktivierungskommando aktivierte Wortleitung enthalten; Auslesen/Schreiben von Speicherinhalten aus/in Bänken/Bänke mit aktivierten Wortleitungen in Abhängigkeit der Bankinformation.

Description

  • Eine Ausführungsform der Erfindung betrifft ein Verfahren zum Betrieb einer Speichervorrichtung. Eine weitere Ausführungsform betrifft einen Speichereinrichtung sowie eine Speichervorrichtung bzw. ein Speichermodul.
  • Der Speicherbedarf von Anwendungen und Geräten steigt kontinuierlich. Dabei ist es wichtig, dass die eingesetzten Speicherbausteine bei einer hohen Datenrate betrieben werden können. Dies betrifft z. B. die interne Architektur und externe Signale.
  • Es ist eine Aufgabe der Erfindung, ein Verfahren zum Betrieb einer Speichervorrichtung bereitzustellen, welches eine hohe Speicherleistung bei einer hohen Geschwindigkeit ermöglicht.
  • Die Aufgabe wird gelöst durch ein Verfahren gemäß Anspruch 1, eine Speichereinrichtung gemäß Anspruch 10 sowie eine Speichervorrichtung gemäß Anspruch 19.
  • 1 zeigt ein Ablaufdiagramm eines Verfahrens zum Betrieb einer Speichervorrichtung gemäß einer Ausführungsform der Erfindung;
  • 2 zeigt ein weiteres Ablaufdiagramm gemäß einer weiteren Ausführungsform der Erfindung;
  • 3 zeigt eine Speichereinrichtung gemäß einer Ausführungsform der Erfindung;
  • 4 zeigt eine Speichervorrichtung gemäß einer weiteren Ausführungsform der Erfindung;
  • 5 zeigt eine weitere Ausführungsform einer Speichereinrichtung;
  • 6 zeigt eine weitere Ausführungsform einer Speichervorrichtung;
  • 7 zeigt ein Beispiel für ein Adressierungsschema;
  • 8 zeigt ein weiteres Ablaufdiagramm eines Verfahrens zum Betrieb einer Speichervorrichtung gemäß einer weiteren Ausführungsform der Erfindung;
  • 9 zeigt noch ein weiteres Ablaufdiagramm einer weiteren Ausführungsform der Erfindung;
  • 10 zeigt eine Speichervorrichtung gemäß einer weiteren Ausführungsform der Erfindung;
  • 11 zeigt einen schematischen Ausschnitt einer Speichervorrichtung gemäß einer weiteren Ausführungsform der Erfindung;
  • 12 zeigt schematisch die Verdrahtung zwischen einem Speichercontroller und einer Speichereinrichtung;
  • 13 zeigt eine Speichereinrichtung gemäß einer weiteren Ausführungsform der Erfindung.
  • Es wird darauf hingewiesen, dass die im Folgenden beschriebenen Ausführungsformen der Erfindung sowie deren Merkmale jeweils beliebig miteinander kombinierbar sind, d. h., es gibt keine Einschränkung dahingehend, dass bestimmte Merkmale, die im Zusammenhang mit einer bestimmten Ausführungsform beschrieben werden, nicht mit Merkmalen einer anderen Ausführungsform kombinierbar sein können.
  • 1 zeigt ein Ablaufdiagramm eines Verfahrens zum Betrieb einer Speichervorrichtung, bei dem in einem Schritt S100 eine Wortleitung aktiviert wird. Die Speichervorrichtung kann z. B. mehrere Speichereinrichtungen bzw. Speicherchips aufweisen oder aus solchen bestehen, z. B. in einer Stack-Anordnung. Zunächst wird eine Wortleitung in einer durch ein Zeilenaktivierungskommando (engl.: Row activate command) vorgegebenen Bank aktiviert. Das Zeilenaktivierungskommando kann daher beispielsweise eine Bankadresse sowie eine Zeilenadresse enthalten, wobei durch die Bankadresse die Bank und durch die Zeilenadresse die Zeile innerhalb einer Bank angegeben werden kann.
  • In einem Schritt S102 wird Bankinformation gespeichert, wobei die Bankinformation angibt, welche Bank bzw. Bänke pro Speichereinrichtung eine durch das Zeilenaktivierungskommando aktivierte Wortleitung enthält bzw. enthalten. Die Bankinformation kann also beispielsweise allein die Bankadresse des letzten Zeilenaktivierungskommandos oder mehrere Bankadressen enthalten. Aus der Bankinformation kann sich auch ergeben, dass keine Bank der jeweiligen Speichereinrichtung eine durch das Zeilenaktivierungskommando aktivierte Wortleitung enthält.
  • In einem Schritt S104 werden Speicherinhalte aus Bänken mit aktivierten Wortleitungen in Abhängigkeit der Bankinformation ausgelesen und/oder es werden Speicherinhalte in Bänke mit ak tivierten Wortleitungen in Abhängigkeit der Bankinformation geschrieben. Folglich ist es möglich, dass die Bankinformation solange gespeichert wird, bis ein Auslesen/Schreiben z. B. mit Auto-Precharge erfolgt, das z. B. mittels eines Spaltenkommandos (Column Read/Write Command) ausgelöst wird.
  • Das Zeilenaktivierungskommando kann eine vorbestimmte Anzahl von Zeilenadressbits enthalten, wobei durch eine vorbestimmte Untermenge der Zeilenadressbits eine bestimmte Speichereinrichtung bestimmt werden kann, in welcher eine Wortleitung aktiviert wird. Die Zeilenadressbits können beispielsweise gemäß einem Adressierungsstandard mit A0 bis A16 gekennzeichnet sein (z. B. gemäß JEDEC Standard). Die oberen Zeilenadressbits, z. B. A14 bis A16, können zur Adressierung der jeweiligen Speichereinrichtung bestimmt sein. Beispielsweise könnte in einer Ausführungsform eine Speichereinrichtung eine Größe von 1 Gigabit aufweisen, und die Speichervorrichtung könnte aus acht 1 Gigabit Speichereinrichtungen (mit Row Adressen A0–A13) bestehen. In diesem Fall wären zur Adressierung der 8 Speichereinrichtungen drei Adressbits notwendig, beispielsweise A14 bis A16. In einem anderen Beispiel könnten nur vier 1 Gigabit Speichereinrichtungen bzw. Speicherchips vorhanden sein. In diesem Fall wären nur zwei Bits, z. B. A14 und A15, zur Adressierung notwendig.
  • Das Verfahren könnte ferner einen weiteren Schritt umfassen, bei dem ein Spaltenkommando empfangen wird, welches eine Bankadresse zur Angabe der jeweiligen Bank enthält, aus der die Speicherinhalte ausgelesen werden sollen, bzw. in die Speicherinhalte geschrieben werden sollen. Das Spaltenkommando (engl.: column read/write command) kann gemäß einem vorbestimmten Standard beispielsweise Spaltenadressbits A0 bis A9/A11, sowie Bankadressbits BA0 bis BA2 enthalten (z. B. JEDEC Standard).
  • Das Spaltenkommando könnte gemäß einer weiteren Ausführungsform von jeder Speichereinrichtung empfangen und decodiert werden. In diesem Fall könnte jede Speichereinrichtung anhand der gespeicherten Bankinformation überprüfen, ob die durch die Bankadresse des Spaltenkommandos adressierte Bank der jeweiligen Speichereinrichtung eine aktivierte Wortleitung enthält. Beim Auslesen bzw. Schreiben werden bei dieser Ausführungsform daher nur dann Daten aus einer jeweiligen Bank ausgelesen bzw. in eine jeweilige Bank geschrieben, wenn die Bankinformation angibt, dass in der jeweiligen Speichereinrichtung die jeweilige durch die Bankadresse des Spaltenkommandos angegebene Bank eine aktivierte Wortleitung enthält. Damit kann verhindert werden, dass, obwohl jede Speichereinrichtung das Spaltenkommando erhält und decodiert, ungültige Daten auf einen an die Speichervorrichtung angeschlossenen Datenbus (DQ) ausgegeben werden bzw. Daten überschrieben werden.
  • Gemäß einer weiteren Ausführungsform ist es möglich, dass jede Speichereinrichtung nur einen Teil der Bankinformation speichert, wobei der jeweilige Teil angibt, welche Bänke der jeweiligen Speichereinrichtung eine aktivierte Wortleitung enthalten. Bei Speicherchips mit 8 Bänken könnte z. B. jede Speichereinrichtung 8 Bit speichern.
  • 2 zeigt ein weiteres Ablaufdiagramm gemäß einer weiteren Ausführungsform der Erfindung.
  • Im Schritt S200 wird ein Zeilenaktivierungskommando (row command) empfangen, welches Adressbits A0 bis A16 sowie Bankadressbits BA0 bis BA2 enthält.
  • Gemäß dem Zeilenaktivierungskommando wird eine Wortleitung in einer Bank einer Speichervorrichtung aktiviert, wobei die Speichervorrichtung wenigstens zwei Speichereinrichtungen umfasst, und wobei jede Speichereinrichtung wenigstens eine Bank enthält. Die Speichereinrichtungen können in einer Ausführungsform beispielsweise jeweils die gleiche Anzahl von Bänken enthalten, beispielsweise acht Bänke, die durch die Bankadressbits BAD bis BA2 adressiert werden können. Durch einen vorgegebenen Teil der Zeilenadressbits AD bis A16, beispielsweise A14, A15 und A16, kann angegeben werden, welche Speichereinrichtung adressiert wird. Innerhalb einer Bank kann immer nur eine Wortleitung aktiviert werden. Es können aber mit mehreren Zeilenbefehlen mehrere Wortleitung gleichzeitig in verschiedenen Bänken geöffnet werden. Somit kann in der Speichervorrichtung durch die Bankadressbits BAD bis BA2 nur jeweils eine erste Bank einer Speichereinrichtung eine aktivierte Wortleitung enthalten, und nur jeweils eine zweite Bank und so fort. In anderen Worten, es kann jeweils nur eine erste, zweite, ..., achte Bank eine aktivierte Wortleitung enthalten, wobei durch den vorgegebenen Teil der Zeilenadressbits AD bis A16, d. h. beispielsweise A14, A15 und A16 festgelegt ist, in welcher Speichereinrichtung die jeweilige Bank liegt.
  • Im Schritt S202 wird dann die Wortleitung gemäß dem Zeilenaktivierungskommando aktiviert.
  • Im Schritt S204 wird Bankinformation BI gespeichert, wobei die Bankinformation BI angibt, welche Bänke pro Speichereinrichtung eine durch das Zeilenaktivierungskommando aktivierte Wortleitung enthalten. Falls beispielsweise eine Speichereinrichtung eine erste Bank und eine fünfte Bank mit einer aktivierten Wortleitung enthält, so könnte die Bankinformation wie folgt aussehen: 10001000.
  • Im Schritt S206 wird ein Spaltenkommando empfangen, das beispielsweise Spaltenadressbits AD bis A9/A11 sowie Bankadress bits BA0 bis BA2 enthalten kann. Das Spaltenkommando kann auch angeben, ob ein Schreib- oder Lesezugriff erfolgen soll. Das Spaltenkommando muss die Adressbits A14–A16 welche eine der Speichereinrichtungen auswählt, nicht enthalten.
  • Im Schritt S208 wird anhand der gespeicherten Bankinformation BI von jeder oder zumindest einer Speichereinrichtung geprüft, ob die Bankadresse des Spaltenkommandos einer geöffneten Bank entspricht. In anderen Worten, es wird überprüft ob die Bankadresse des Spaltenkommandos in der Bankinformation enthalten ist (BA0, BA1, BA2 adressiert genau eine Bank, wohingegen die Bankinformation angibt, welche Bänke geöffnete bzw. aktivierte Wortleitungen enthalten). Falls die Bankadresse des Spaltenkommandos einer geöffneten Bank entspricht, so erfolgt im Schritt S210 ein entsprechender Lese- bzw. Schreibzugriff. Falls dies nicht der Fall ist, so erfolgt im Schritt S212 ein Abbruch, da in diesem Fall ein illegales Lese/Schreibkommando vorliegt. Da wie oben dargelegt wurde z. B. nur jeweils in einer ersten Bank aller Speichereinrichtungen eine aktive Wortleitung sein kann wird verhindert, dass zwei Speichereinheiten das Spaltenkommando ausführen.
  • 3 zeigt eine Speichereinrichtung 300 gemäß einer Ausführungsform der Erfindung, welche acht Bänke 302-1 bis 302-8, sowie einen Kommandodecoder 304 und ein Speicherregister 306 enthält.
  • Der Zugriff auf die Speichereinrichtung 300 wird mittels eines ersten Kontrollsignals 308 gesteuert, wobei das erste Kontrollsignal 308 beispielsweise via einem CA-Bus und/oder einem Kontrollbus übertragen wird. Der CA-Bus kann außer Commando signalen (RAS, CAS, WE) beispielsweise Zeilen- bzw. Spaltenadressbits A0 bis A16 bzw. A0 bis A9/A11 übertragen und der Kontrollbus ein CS-Signal(= Chip Select Signal), ODT-Signal(= On Die Termination Signal) und/oder CKE-Signal(= Clock Enable Signal).
  • Der Kommandodecoder 304 kann eine Wortleitung in einer der Bänke in Abhängigkeit eines Zeilenaktivierungskommandos, welches im ersten Kontrollsignal 308 enthalten sein kann, aktivieren. Ferner kann der Kommandodecoder 304 Speicherinhalte aus Bänken mit aktivierten Wortleitungen auslesen bzw. in Bänke mit aktivierten Wortleitungen schreiben, und zwar in Abhängigkeit von Bankinformation, wobei die Bankinformation angibt, welche Bänke eine durch das Zeilenaktivierungskommando aktivierte Wortleitung enthalten. Die Bankinformation kann vom Kommandodecoder 304 durch ein Bankinformationssignal 310 an das Speicherregister 306 übertragen und dort gespeichert werden und auch von dort wieder abgerufen werden.
  • In einer Weiterbildung der Ausführungsform kann die Bankinformation nach Erhalt eines Zeilenaktivierungskommandos so lange im Speicherregister 306 gespeichert bleiben, bis die Wortleitung geschlossen wird z. B. durch ein Precharge Kommando.
  • Der Kommandodecoder 304 kann beispielsweise anhand der in dem Speicherregister 306 gespeicherten Bankinformation überprüfen, ob die durch die Bankadresse des Spaltenkommandos adressierte Bank eine aktivierte Wortleitung enthält.
  • Die Größe des Speicherregisters 306 kann von der Anzahl Bänke 302-1 bis 302-8 abhängen. In der in 3 gezeigten Ausführungsform sind acht Bänke 302-1 bis 302-8 vorgesehen. Die Größe des Speicherregisters kann acht Bit betragen. Somit kann im Speicherregister 306 gespeichert werden, welche der acht Bänke 302-1 bis 302-8 eine aktivierte bzw. geöffnete Wortleitung aufweist.
  • 4 zeigt eine Speichervorrichtung 4, welche acht Speichereinrichtungen 402-1 bis 402-8 enthält. Eine Speichereinrichtung 402 kann beispielsweise ein Speicherchip sein, der eine Speichergröße von 1 Gigabit bereitstellt. Jede Speichereinrichtung 402-1 bis 402-8 umfasst Speicherbänke 404 bis 418, wobei jede Speichereinrichtung 402 jeweils acht Speicherbänke 404-1, ..., 404-8, ..., 418-1, ..., 418-8 enthält.
  • Beim Empfang eines Zeilenaktivierungskommandos kann eine Wortleitung innerhalb einer bestimmten Bank einer bestimmten Speichereinrichtung wie folgt aktiviert werden: das Zeilenaktivierungskommando enthält beispielsweise Zeilenadressbits A0 bis A16 sowie Bankadressbits BA0 bis BA2. Die Speichervorrichtung 400 ist so aufgebaut, dass ein Teil der Zeilenadressbits A0 bis A16, im Beispiel von 4 die Adressbits A14, A15 und A16 zur Adressierung einer bestimmten Speichereinrichtung 402-1, ..., 402-8 verwendet werden. Beispielsweise kann die fünfte Speichereinrichtung 402-5 ausgewählt werden, indem A14, A15, A16 = "100" gesetzt werden. Die übrigen Zeilenadressbits A0 bis A13 werden zur Auswahl einer bestimmten Wortleitung innerhalb einer Bank verwendet. Eine Bank wird durch die Bankadressbits BA0 bis BA2 ausgewählt.
  • Das Beispiel von 4 zeigt acht aktivierte Wortleitungen 420-1 bis 420-8, wobei durch die beschriebene Adressierung gewährleistet ist, dass in allen ersten Bänken 404-1, ..., 418-1 nur eine einzige Wortleitung 420-1 aktiviert ist. Ebenso ist in allen zweiten Speicherbänken 404-2, ..., 418-2 nur eine einzige Wortleitung 420-2 aktiviert. Das Analoge gilt für die jeweils dritten bis achten Speicherbänke 404-3, ..., 418-3, 404-4, 418-4, 404-5, ..., 418-5, 404-6, ..., 418-6, 404-7, ..., 418-7, 404-8, ..., 418-8.
  • Ein Controller bzw. Speichercontroller, der auf die Speichervorrichtung 400 zugreift "sieht" somit immer nur eine erste, zweite, ..., achte Bank, wobei der Controller nicht bemerkt, dass es sich um Bänke in unterschiedlichen Speichereinrichtungen 402-1 bis 402-8 handeln kann.
  • Unter Speichercontroller wird hier eine Vorrichtung verstanden, die einen Request des Prozessors in Kommandos bzw. Adressen gemäß DRAM-Protokoll umsetzt.
  • Die Information, welche Wortleitungen aktiviert sind, wird als Bankinformation gespeichert. Hierfür kann jede Speichereinrichtung 402-1 bis 402-8 jeweils ein Acht-Bit-Speicherregister enthalten, in dem jeweils abgespeichert wird, welche Bank bzw. welche Bänke eine durch das Zeilenaktivierungskommando aktivierte Wortleitung enthält.
  • Die Bankinformation wird anschließend bei Erhalt eines Spaltenkommandos genutzt, um ungültige Speicherzugriffe zu verhindern. Das Spaltenkommando enthält beispielsweise Spaltenadressen A0 bis A9/A11 und Bankadressbits BA0–BA2. Das Spaltenkommando (column read/write command) wird von einem internen Controller einer Speichereinrichtung beispielsweise nach Ablauf von tRCD ausgeführt.
  • Die Bankadressbits BA0 bis BA2 des Spaltenkommandos werden dabei mit der gespeicherten Bankinformation verglichen. Hierfür kann es sinnvoll sein, dass jede Speichereinrichtung 402-1 bis 402-8 ein Spaltenkommando erhält und decodiert. Falls durch die Bankadresse BA0 bis BA2 des Spaltenkommandos eine Bank mit einer aktivierten Wortleitung adressiert wird, liegt ein gültiger Lese/Schreibzugriff vor. Sonst liegt ein ungültiger Lese/Schreibzugriff vor.
  • 5 zeigt eine Ausführungsform einer Speichereinrichtung 500, die beispielsweise in einer Stackanordnung verwendet werden kann. Die Speichereinrichtung 500 kann beispielsweise 1 Gigabit groß sein, wobei jeweils acht solche Speichereinrichtungen in einem Stack zusammengefasst werden können, so dass ein Speicherbaustein realisiert wird, der acht Gigabit groß ist.
  • Die Speichereinrichtung 500 umfasst einen Kommandodecoder 502, ein Speicherregister 504, acht Bänke 506-1, ..., 506-8, und einen Kontrolllogikbaustein 508.
  • Der Kommandodecoder 502 erhält von einem externen Speichercontroller via einem CA-Bus 514 Zeilen- und/oder Spaltenadressen und Kommandos (RAS/CAS/WE), sowie Bankadressen BA0–BA2. Ferner erhält der Kommandodecoder 502 via einem Kontrollbus die Signale CS (Chip Select), ODT (On Die Termination), CKE (Clock Enable).
  • Bei einem Speicherzugriff erhält der Kommandodecoder 502, z. B. zunächst ein Zeilenaktivierungskommando, das eine durch A0 bis A16 vorgegebene Zeilenadresse sowie eine durch BA0 bis BA2 vorgegebene Bankadresse enthält. Anschließend erhält der Kommandodecoder 502 ein Spaltenkommando, das durch die Adressbits A0 bis A9/A11 eine Spalte adressiert.
  • Im Beispiel von 5 erhält der Kommandodecoder 502 ein Zeilenaktivierungskommando, durch das z. B. in der ersten Bank 506-1 eine Wortleitung aktiviert wird, während in der fünften Bank 506-5 bereits eine Wortleitung adressiert ist. Die Information, in welcher Bank jeweils eine Wortleitung aktiviert wird, wird im Register 504 gespeichert. Dadurch "weiß" die Speichereinrichtung 500 bei Erhalt eines Spaltenkommandos, ob sie auf eine bestimmte Bank zugreifen darf.
  • Die Steuerung des Registers 504 bzw. der Bänke 506-1 bis 506-8 erfolgt durch entsprechende Selektoren 510 bzw. 512.
  • Anhand des Zeilenaktivierungskommandos überprüft der Kommandodecoder 502 jeder Speichereinrichtung auch, ob er überhaupt angesprochen ist. Hierfür werden z. B. die Adressbits A14, A15, A16 verwendet, d. h. nur für einen bestimmten Wert der Adressbits A14, A15, A16 wird überhaupt eine Wortleitung in einer der Bänke 506 aktiviert. In 5 könnte es sich z. B. um die fünfte Speichereinrichtung in einem Stack handeln. Dieser könnte z. B. bei A14, A15, A16 = "100" angesprochen werden, d. h. nur falls A14, A15, A16 = "100" gilt, würde die Speichereinrichtung anhand der übrigen Werte A0–A13, sowie BA0, BA1, BA2 eine entsprechende Wortleitung aktivieren.
  • Nach Erhalt eines Spaltenkommandos überprüft der Kommandodecoder 502, ob die in dem Spaltenkommando enthaltene Bankadresse eine solche ist, die in der im Register 504 gespeicherten Bankinformation enthalten ist. Falls ja, so wird ein Zugriff via den Signalen 522 auf den Datenbus DQ zugelassen. Die entsprechende Zugriffssteuerung kann beispielsweise durch die Kontrolllogikschaltung 508 erfolgen.
  • 6 zeigt eine Speichervorrichtung 600, welche eine Stackanordnung aus Speichereinrichtungen bzw. Speicherchips 602-1 bis 602-4 aufweist. Die Speichervorrichtung 600 wird auch als DRAM Stack bezeichnet. Die unterste Speichereinrichtung 602-1 des Stacks ist eine Masterspeichereinrichtung und die übrigen Speichereinrichtungen 602-2, 602-3 und 602-4 sind Slavespeichereinrichtungen. Jede der Speichereinrichtungen 602-1 bis 602-4 enthält eine jeweilige Kontrolllogik 608-1 bis 608-4. Die Kontrolllogik 608 steuert jeweils den Zugriff auf den Datenbus DQ. Die Kontrolllogik 608 enthält jeweils einen Tri State Buffer 610, der jedoch bei den Slavespeichereinrichtungen 602-2, 602-3 und 602-4 auch entfallen könnte, da er bei Slavespeichereinrichtungen nicht benötigt wird.
  • Die Speichereinrichtungen 602-1 bis 602-4 sind durch ein oder eine Mehrzahl von Through Silicon Vias (TSV) 606 miteinander verbunden.
  • Jeder Speicherbaustein 602 enthält einen DRAM Core 604, der beispielsweise die oben beschriebenen Bänke etc. enthält.
  • Die Speichereinrichtungen 602-1 bis 602-4 enthalten weiterhin weitere Kontrolllogik 612, die u. a. Tri State Buffer enthält. Damit kann eine Speichereinrichtung entweder als Master oder als Slave eingestellt werden. Die weitere Kontrolllogik 612-1 ist so eingestellt bzw. konfiguriert, dass die Speichereinrichtung 602-1 als Master arbeitet. Empfangene Kommandos werden somit bspw. über den TSV 606 verteilt bzw. weitergeleitet. Die weitere Kontrolllogik 612-2 der Speichereinrichtungen 602-2, 602-3 und 602-4 ist so eingestellt, dass diese Speichereinrichtungen als Slave arbeiten.
  • 7 zeigt ein Beispiel eines Adressierungsschemas für einen DDR2- und einen DDR3-Speicher. Wie in 7 angegeben, werden die Adressbits A14 und A15 beispielsweise zur Adressierung eines 4 Gigabit großen Speichers verwendet.
  • 8 zeigt eine weitere Ausführungsform eines Verfahrens zum Betrieb einer Speichervorrichtung, welche wenigstens zwei Speichereinrichtungen umfasst, wobei jede Speichereinrichtung wenigstens eine Bank bzw. Speicherbank enthält. Die Speichervorrichtung kann bspw. eine Stack-Anordnung aus einer Mehrzahl von Speichereinrichtungen bzw. Speicherchips bzw. Halbleiter speichereinrichtungen sein, wobei auf jeder Speichereinrichtung z. B. ein DRAM-Core angeordnet sein kann.
  • Im Schritt S800 wird eine Wortleitung in einer Bank gemäß einem Zeilenaktivierungskommando aktiviert. Dabei wird maximal eine Wortleitung pro Speichereinrichtung bzw. Speicherchip aktiviert. Anschließend, im Schritt S802, werden Speicherinhalte aus Bänken mit aktivierten Wortleitungen gemäß einem Spaltenkommando ausgelesen bzw. es werden Speicherinhalte in Bänke mit aktivierten Wortleitungen geschrieben.
  • Damit z. B. bei einer 8 Gigabit Stackanordnung maximal eine Wortleitung pro Speichereinrichtung aktiviert wird, können in einer Ausführungsform der Erfindung Zeilenadressanschlüsse der Speichereinrichtung mit Bankadressanschlüssen eines zur Adressierung verwendeten Controllers verbunden sein. Der Controller kann ein Standard-Controller sein, d. h. ein bisher üblicherweise zur Ansteuerung von DRAM-Speichern verwendeter Controller.
  • Gemäß einer Ausführungsform der Erfindung können Bankadressanschlüsse der Speichereinrichtung mit Zeilenadressanschlüssen des Controllers verbunden sein. In anderen Worten ist es möglich, dass ein Controller eine Zeilenadresse an die Speichervorrichtung überträgt, wobei die Verdrahtung der Speichervorrichtung so ausgebildet ist, dass die Zeilenadresse von der Speichereinrichtung als Bankadresse aufgefasst wird. Weiterhin kann durch die Verdrahtung der Speichervorrichtung eine vom Controller an die Speichervorrichtung übertragene Bankadresse als Zeilenadresse für eine Speichereinrichtung verwendet werden. In diesem Fall wird der Teil der Zeilenadresse z. B. nicht als Zeilenadresse verwendet, sondern als Speichereinrichtungsadresse. Das sind zusätzliche Adressen die die einzelne Speichereinrichtung nicht hätte.
  • In einer weiteren Ausführungsform kann das Zeilenaktivierungskommando beispielsweise eine Zeilenadresse und eine Bankadresse umfassen. Ein Teil der Zeilenadresse, z. B. A14, A15 und A16 (gemäß JEDEC Standard), wird dann von einer Speichereinrichtung durch die "vertauschte" Verdrahtung zur Adressierung einer Bank innerhalb der Speichereinrichtung verwendet. Die vom Controller generierte Bankadresse BA0, BA1 und BA2 (gemäß JEDEC Standard) kann zur Adressierung einer bestimmten Speichereinrichtung der Speichervorrichtung verwendet werden. Die Speichervorrichtung verhält sich somit bei einer 8 Gigabit Stack-Anordnung aus Ein-Gigabit Speichereinrichtungen so, als ob eine Speichereinrichtung einer Bank entspricht.
  • Die beispielsweise von einem Controller generierte Bankadresse (z. B. BA0, BA1, BA2) kann also zur Auswahl bzw. Adressierung einer Speichereinrichtung verwendet werden, in welcher in einer jeweiligen Bank eine Wortleitung aktiviert wird. Die Wortleitung wird dabei beispielsweise durch die Zeilenadressbits A0 bis A13 gemäß JEDEC Standard ausgewählt bzw. adressiert.
  • In anderen Worten wird ein Zeilenaktivierungskommando von einem Controller bzw. Speichercontroller bereitgestellt, wobei der Speichercontroller eigentlich mit einer Bankadresse eine Bank auswählen will. Tatsächlich wählt der Speichercontroller aber mit einer Bankadresse eine Speichereinrichtung bzw. einen bestimmten Speicherchip aus. Andererseits wird die von dem Controller generierte und im Zeilenaktivierungskommando enthaltene Zeilenadresse zur Auswahl einer Bank in einer durch die Bankadresse ausgewählten Speichereinrichtung verwendet.
  • Die Zeilenadresse kann einen ersten Adressteil, z. B. A0 bis A13, und einen zweiten Adressteil, z. B. A14 bis A16, aufwei sen, wobei der zweite Adressteil A14 bis A16 zur Auswahl der jeweiligen Bank verwendet wird.
  • Der erste Adressteil A0 bis A13 kann zur Auswahl einer Wortleitung in einer durch den zweiten Adressteil (A14 bis A16) ausgewählten Bank verwendet werden.
  • Gemäß einer weiteren Ausführungsform kann zumindest ein Teil des Zeilenaktivierungskommandos gespeichert werden, beispielsweise zumindest bis zum Erhalt eines Precharge Kommandos mit dem die Wortleitung wieder geschlossen bzw. deaktiviert wird.
  • Der gespeicherte Teil des Zeilenaktivierungskommandos kann der oben erwähnte zweite Adressteil (A14 bis A16) sein.
  • 9 zeigt eine weitere Ausführungsform eines Verfahrens zum Betrieb einer Speichervorrichtung, wobei im Schritt S900 ein Zeilenaktivierungskommando von einem Controller empfangen wird.
  • Im Schritt S902 wird ein Speicherchip in Abhängigkeit von BA0, BA1 und BA2 (Bankadressen gemäß JEDEC Standard, vom Controller erzeugt) ausgewählt. Es ist daher möglich, dass nur ein durch BA0, BA1 und BA2 ausgewählter Speicherchip "aktiviert" wird. Das heißt, nur falls ein bestimmter Speicherchip durch BA0, BA1 und BA2 adressiert wird, decodiert dieser ausgewählte Chip ein Zeilenaktivierungskommando und/oder folgendes Spaltenkommando vollständig. Somit kann z. B. Strom eingespart werden. Es wird beispielsweise auch dadurch Strom gespart, dass nur eine Wortleitung pro Chip aktiviert sein kann.
  • Im Schritt S904 wird schließlich in Abhängigkeit von A14, A15 und A16 eine Bank in dem durch BA0, BA1 und BA2 ausgewählten Speicherchip adressiert.
  • Im Schritt S906 werden die Werte von A14, A15 und A16 des Zeilenaktivierungskommandos gespeichert. Im Schritt S908 wird ein Spaltenkommando, z. B. A0 bis A9/A11 gemäß JEDEC Standard, empfangen.
  • Im Schritt S910 wird zunächst das Spaltenkommando aus Schritt S908 insoweit ausgewertet, als dass festgestellt wird, welcher Speicherchip durch die im Spaltenkommando enthaltene Bankadresse adressiert wird. Das heißt, in einer weiteren Ausführungsform der Erfindung wird auch beim Lesen/Schreiben nur dann auf einen Speicherchip zugegriffen, falls dieser durch die Bankadresse des Spaltenkommandos ausgewählt bzw. adressiert wird.
  • Um festzustellen, aus welcher Bank innerhalb des durch BA0, BA1, BA2 des Spaltenkommandos adressierten Speicherchips gelesen werden soll bzw. in welche Bank geschrieben werden soll, werden die gespeicherten Werte von A14, A15 und A16 verwendet. Das heißt, Speicherinhalte werden aus Bänken ausgelesen bzw. in Bänke geschrieben, die durch die gespeicherten Werte von A14, A15 und A16 festgelegt sind. Zur Aktivierung eines Speichers bzw. von Registern, in welchen die Werte A14, A15, A16 des Zeilenaktivierungskommandos gespeichert sind, können z. B. die Kommandobussignale RAS(= Row Address Strobe), CAS(= Column Address Strobe) und/oder WE(= Write Enable) verwendet werden. Alternativ und/oder zusätzlich können auch die Kontrollbussignale CS(= Chip Select), ODT(= On Die Termination) und/oder CKE(= Clock Enable) verwendet werden.
  • 10A zeigt eine Speichervorrichtung 1000. Die Speichervorrichtung 1000 besteht aus acht Speichereinrichtungen 1000-1, ..., 1000-8. Die Speichereinrichtungen 1000-1 bis 1000-8 können beispielsweise in einem Gehäuse in einer Stackanordnung ange ordnet sein, wobei die Kontaktierung mittels Balls erfolgt. Die Speichereinrichtungen 1000-1 bis 1000-8 können z. B. durch ein oder eine Mehrzahl Through Silicon Vias (TSV) miteinander verbunden sein.
  • Die Verdrahtung der Speichervorrichtung 1000 kann so gewählt sein, dass durch eine von einem Speichercontroller bereitgestellte Bankadresse BA0, BA1, BA2 eine der acht Speichereinrichtungen 1000-1, ..., 1000-8 ausgewählt wird. Da die Bankadresse BA0, BA1, BA2 gemäß JEDEC Standard vom Speichercontroller sowohl bei einem Zeilenaktivierungskommando (Row Command) als auch bei einem Spaltenkommando (Column Read/Write Command) bereitgestellt wird, ist die beschriebene Adressierung bzw. Aktivierung einer Speichereinrichtung sowohl beim Erhalt eines Zeilenaktivierungskommandos als auch beim Erhalt eines Spaltenkommandos möglich.
  • Demgemäß wird durch eine vom Speichercontroller bereitgestellte Bankadresse BA0, BA1, BA2 in Wirklichkeit keine Bank innerhalb einer Speichereinrichtung ausgewählt bzw. adressiert, sondern eine der Speichereinrichtungen 1000-1, ..., 1000-8. Beispielsweise kann durch eine Bankadresse BA0, BA1, BA2 = 011 die vierte Speichereinrichtung 1000-4 ausgewählt werden.
  • Das Zeilenaktivierungskommando enthält gemäß JEDEC Standard beispielsweise die Zeilenadressen A0 bis A16 sowie eine Bankadresse BA0, BA1 und BA2. Wie bereits beschrieben, wird durch die Bankadresse BA0, BA1, BA2 eine bestimmte Speichereinrichtung 1000 ausgewählt. Durch einen Teil der Zeilenadresse A0, ... A16 wird eine Bank innerhalb der durch BA0, BA1, BA2 ausgewählten Speichereinrichtung adressiert. Beispielsweise kann durch A14, A15, A16 = "010" eine dritte Bank B3 einer Speichereinrichtung ausgewählt werden. Die übrigen Zeilenadressbits A0 bis A13 der Zeilenadresse werden verwendet, um eine bestimmte Wortleitung innerhalb der durch A14, A15, A16 adressierten Bank auszuwählen bzw. diese zu aktivieren.
  • In anderen Worten wird bei der Ausführungsform gemäß 10A durch eine von einem Controller bereitgestellte Bankadresse eine Speichereinrichtung 1000 ausgewählt, und durch einen Teil der Zeilenadresse, beispielsweise A14, A15 und A16 eine Bank innerhalb der ausgewählten Speichereinrichtung 1000.
  • Die aktivierten Wortleitungen sind in 10A mit Bezugszeichen 1002-1, ..., 1002-8 gekennzeichnet. Aufgrund der Zuordnung von BA0, BA1, BA2 zu Speichereinrichtungen ergibt sich, dass pro Speichereinrichtung maximal eine Wortleitung 1002 aktiviert werden kann, da der Controller pro Speichereinrichtung nur eine Bank „sieht".
  • Nach Abarbeitung eines Zeilenaktivierungskommandos kann ein folgendes Spaltenkommando verarbeitet werden. Das Spaltenkommando enthält beispielsweise eine Spaltenadresse A0, ..., A9/A11 und eine Bankadresse BA0, BA1, BA2. Bei der Verarbeitung eines Spaltenkommandos wird wiederum durch die Bankadresse BA0, BA1, BA2 eine Speichereinrichtung 1000 adressiert. Durch die Spaltenadresse A0, ..., A9/A11 wird in einer Bank mit einer aktivierten Wortleitung 1002 eine entsprechende Spalte aktiviert, so dass ein entsprechender Speicherinhalt ausgelesen wird.
  • Um zu verhindern, dass bei einem Spaltenkommando auf eine Bank ohne aktivierte Wortleitung zugegriffen wird, werden die Werte A14, A15, A16 des Zeilenaktivierungskommandos beispielsweise in einem Register gespeichert. Hierfür kann ein Speicherregister beispielsweise in jeder Speichereinrichtung 1000 vorgesehen werden, wobei in der Ausführungsform gemäß 10A die Größe des Speicherregisters beispielsweise 3 Bit ist, so dass die Information, welche der acht Bänke eine aktivierte Wortleitung enthält, gespeichert werden kann.
  • Bei der Speichervorrichtung 1000 ist es möglich, dass nicht jede Speichereinrichtung 1000 ein Zeilenaktivierungskommando und/oder ein entsprechendes Spaltenkommando vollständig decodieren muss, da eine Decodierung möglicherweise nur dann erfolgen muss, wenn eine Speichereinrichtung 1000 durch BA0, BA1, BA2 angesprochen wird.
  • 10B zeigt eine Speichervorrichtung 1008 gemäß einer weiteren Ausführungsform der Erfindung. Die Speichervorrichtung 1008 umfasst vier Speichereinrichtungen 1010-1 bis 1010-4, die beispielsweise jeweils eine Größe von 1 Gbit aufweisen können. Die Größe der Speichervorrichtung 1008 beträgt somit 4 Gbit. Bei der Ausführungsform gemäß 10B werden zur Auswahl einer der Speichereinrichtungen 1010 nur die Bankadressen BA0 und BA1 des Zeilenaktivierungskommandos verwendet. Das heißt, eine Speichereinrichtung 1110, in welcher eine Wortleitung aktiviert werden soll, wird durch die in dem Zeilenaktivierungskommando enthaltenen Bankadressteile BA0 und BA1 ausgewählt.
  • Innerhalb einer durch BA0 und BA1 ausgewählten Speichereinrichtung wird eine Bank durch die Zeilenadressbits A14, A15 sowie durch das Bankadressbit BA2 ausgewählt.
  • Zur Aktivierung einer Wortleitung 1012 wird also ein Teil der Bankadresse beispielsweise die Bankadressbits BA0 und BA2 zur Auswahl einer Speichereinrichtung 1010 verwendet, und ein Teil der Zeilenadresse, beispielsweise die Zeilenadressbits A14 und A15, sowie ein weiterer Teil der Bankadresse, beispielsweise das Bankadressbit BA2, wird verwendet, um eine bestimmte Bank innerhalb der Speichereinrichtung zu aktivieren.
  • Bei der Ausführungsform von 10B ist es somit möglich, dass in einer Speichereinrichtung 1010 durch aufeinander folgende Zeilenaktivierungskommandos Wortleitungen in zwei Bänken geöffnet bzw. aktiviert werden.
  • Bei der Ausführungsform von 10B müssen in jeder Speichereinrichtung 1010 lediglich zwei Bits in einem Register gespeichert werden, nämlich die Zeilenadressbits A14 und A15.
  • Anhand der 10A und 10B wird deutlich, dass es auch möglich ist, beispielsweise einen Stack aus lediglich zwei 1 Gbit Speichereinrichtungen aufzubauen. Dabei würde beispielsweise die Speichereinrichtung durch das Bankadressbit BA0 ausgewählt, wobei eine jeweilige Bank innerhalb einer der beiden Speichereinrichtungen durch das Zeilenadressbit A14, sowie die Bankadressbits BA1 und BA2 ausgewählt werden.
  • 11 zeigt schematisch eine Unterseite 1102 einer Speichervorrichtung 1100 gemäß einer weiteren Ausführungsform der Erfindung.
  • Die Unterseite 1102 weist Balls zum Anschluss der Speichervorrichtung 1100 auf. Die Balls werden auch als "äußere Anschlüsse" der Speichervorrichtung 1100 bezeichnet. Die Anordnung der Balls erfolgt beispielsweise gemäß dem JEDEC Standard, so dass genau festgelegt ist, an welchem äußeren Anschluss eine bestimmte Signalleitung eines Controllers zur Steuerung des Speichers bzw. zum Zugriff auf den Speicher angelegt wird.
  • Der Übersicht halber sind in 11 lediglich die äußeren Anschlüsse BA0-0, BA1-0, BA2-0, A14-0, A15-0, A16-0 für eine Speichereinrichtung dargestellt. Die äußeren Anschlüsse BA0-0, BA1-0, BA2-0 werden vom Speichercontroller mit einer Bankadresse versorgt. Die äußeren Anschlüsse A14-0, A15-0 und A16-0 werden vom Speichercontroller mit den Zeilenadressbits A14, A15, A16 versorgt bzw. angesteuert. Die übrigen äußeren Adressanschlüsse A0 bis A13 sind, wie bereits erwähnt, der Übersicht halber, nicht dargestellt.
  • In einem Ausschnitt 1104 sind beispielhaft die Adressleitungsanschlüsse A14-1, A15-1, A16-1 einer Speichereinrichtung dargestellt, sowie die Bankadressanschlüsse BA0-1, BA1-1, BA2-1 der Speichereinrichtung. Die Adressleitungsanschlüsse A14-1, A15-1, A16-1 und Bankadressanschlüsse BA0-1, BA1-1, BA2-1 sind die Anschlüsse der Speichereinrichtung die gemäß JEDEC Standard bisher zur Zeilenadressierung bzw. Bankadressierung verwendet wurden.
  • Bei einer herkömmlichen Verdrahtung würden nun die äußeren Bankadressanschlüsse mit den Bankadressanschlüssen der Speichereinrichtung verbunden werden, d. h. BA0-0 würde mit BA0-1 verbunden werden und so fort. Ferner würden die äußeren Adressleitungsanschlüsse A14-0, A15-0, A16-0 mit den Zeilenadressanschlüssen A14-1, A15-1, A16-1 der Speichereinrichtung verbunden.
  • Gemäß der Ausführungsform der Erfindung von 11, geschieht dies jedoch nicht. Stattdessen werden die äußeren Bankadressanschlüsse mit den Zeilenadressanschlüssen der Speichereinrichtung verbunden und die äußeren Zeilenadressanschlüsse mit den Bankadressanschlüssen der Speichereinrichtung.
  • In anderen Worten ergeben sich folgende Verbindungen: BA0-0 mit A14-1, BA1-0 mit A15-1, BA2-0 mit A16-1 und A14-0 mit BA0-1, A15-0 mit BA1-1 und A16-0 mit BA2-1.
  • Somit kann eine Bankadresse des Speichercontrollers zur Auswahl einer Speichereinrichtung verwendet werden. Ferner kann durch die Adressbits A14, A15, A16 eines Zeilenaktivierungskommandos eine bestimmte Bank innerhalb einer Speichereinrichtung ausgewählt werden.
  • 12 zeigt schematisch eine kreuzweise Verdrahtung 1200 zwischen einem Controller 1202 und einer Speichereinrichtung 1204, die beispielsweise Teil einer Stackanordnung in einer Speichervorrichtung sein kann.
  • Wie dargestellt, wird durch die "vertauschte Verdrahtung" eine von einem Controller 1202 erzeugte Bankadresse BA0, BA1, BA2 auf die Anschlüsse A14, A15, A16 der Speichereinrichtung 1204 gelegt. Ferner wird ein Teil der Zeilenadresse, d. h. die Adressleitungen A14, A15, A16 auf die Bankanschlüsse BA0, BA1, BA2 der Speichereinrichtung 1204 gelegt.
  • Die Vertauschung von einer Bankadresse mit einer Zeilenadresse kann beispielsweise auch durch ein entsprechendes Routing eines DIMM (Dual Inline Memory Module) erreicht werden. In diesem Fall wäre die Speichervorrichtung normal verdrahtet, wobei die in der Speichervorrichtung enthaltenen Speichereinrichtungen die beschriebenen Speicher bzw. Register bzw. Speichereinheiten aufweisen. Ferner könnte die Vertauschung auch durch einen Advanced Memory Buffer (AMB) erfolgen. Der Advanced Memory Buffer könnte beispielsweise auf dem DIMM oder dem Motherboard angeordnet sein.
  • 13 zeigt eine weitere Ausführungsform einer Speichereinrichtung 1300. Die Speichereinrichtung 1300 enthält einen Kontrolllogikblock 1302, Bänke 1304-1, ..., 1304-8, einen Selektor 1306, einen Kommandodecoder 1308, eine Einstellvorrichtung 1310, Speicherregister 1312-1, ..., 1312-3, 2:1-Multiplexer 1314-1, ..., 1314-3, sowie weitere Kontrolllogik 1316.
  • Beim Betrieb der Speichereinrichtung 1300 erhält der Kommandodecoder 1308 via dem CA-Bus, CMD-Bus und Kontrollbus beispielsweise ein Zeilenaktivierungskommando und/oder ein Spaltenkommando. Zum Zugriff auf einen bestimmten Speicherinhalt kann beispielsweise zunächst ein Zeilenaktivierungskommando empfangen und verarbeitet werden und anschließend ein Spaltenkommando.
  • Das Zeilenaktivierungskommando wird beispielsweise von einem Speichercontroller bereitgestellt und enthält Zeilenadressbits A0' bis A16' sowie eine Bankadresse BA0' bis BA2'. Die vom Controller erzeugte Bankadresse BA0', BA1', BA2' wird der Speichereinrichtung 1300 als Zeilenadresse zugeführt. Das heißt, die vom Controller bereitgestellte Bankadresse BA0', BA1', BA2' wird den gemäß JEDEC Standard üblicherweise verwendeten Anschlüssen A14, A15, A16 der Speichereinrichtung 1300 zugeführt. Weiterhin wird ein Teil der vom Controller erzeugten Zeilenadressbits, nämlich die Adressbits A14', A15' und A16', von der Speichereinrichtung 1300 als Bankadresse aufgefasst, d. h., die vom Controller erzeugten Adressbits A14', A15', A16' werden den gemäß JEDEC Standard verwendeten Bankadressleitungen (in 13 durch BA0, BA1 und BA2 gekennzeichnet) zugeführt.
  • Der Kommandodecoder 1308 kann anhand der an seinen Anschlüssen A14, A15, A16 anliegenden Werte (die einer vom Controller erzeugten Bankadresse BA0', BA1', BA2' entsprechen) entscheiden, ob die Speichereinrichtung 1300 angesprochen wird. In einer Ausführungsform der Erfindung ist es möglich, dass ein Kommando nur dann decodiert wird, wenn der Kommandodecoder 1308 anhand von A14, A15, A16 feststellt, dass die Speichereinrichtung 1300 adressiert wird. Somit kann z. B. Strom gespart werden.
  • Die Speichereinrichtung 1300 wird also so angeschlossen, dass eine vom Controller erzeugte Bankadresse BA0', BA1', BA2' an den Anschlüssen A14, A15, A16 der Speichereinrichtung 1300 anliegt, und vom Controller erzeugte Zeilenadressbits A14', A15' und A16' and den Anschlüssen BA0, BA1, BA2 der Speichereinrichtung. Dabei entsprechen die Anschlüsse A14, A15, A16 und BA0, BA1, BA2 Anschlüssen, die normalerweise gemäß einem vorbestimmten Standard, z. B. JEDEC Standard, zum Anschluss von entsprechenden Zeilenadressleitungen bzw. Bankadressleitungen verwendet werden.
  • Die Einstellvorrichtung 1310 steuert die Speicherregister 1312-1, 1312-2, 1312-3 sowie die 2:1-Multiplexer 1314-1, 1314-2, 1314-3. Beim Erhalt eines Zeilenaktivierungskommandos stellt die Einstellvorrichtung 1310 die Speicherregister 1312-1, 1312-2, 1312-3 so ein, dass die jeweiligen am Eingang anliegenden Signale bzw. Werte eingespeichert ("gelatched") werden. Das heißt, beim Empfang eines Zeilenaktivierungskommandos werden die Werte, die an den Signalen 1317-1, 1317-2, 1317-3 anliegen, in die jeweiligen Register 1312 übernommen.
  • Ferner stellt die Einstellvorrichtung 1310 die 2:1-Multiplexer 1314 so ein, dass die Signale 1317-1, 1317-2, 1317-3 am Ausgang anliegen. Das heißt, die Signale 1318-1, 1318-2, 1318-3 entsprechen den Signalen 1317-1, 1317-2, 1317-3.
  • Der Kommandodecoder 1308 erhält somit beim Empfang eines Zeilenaktivierungskommandos die vom Controller erzeugten Adressbits A14', A15', A16', die er dann, wie oben beschrieben, als Bankadresse auffasst. D. h., durch die "vertauschte" Verdrahtung verwendet der Kommandodecoder 1308 die anliegenden Signale A14', A15', A16' zur Auswahl einer der Bänke 1304-1, ..., 1304-8. Das heißt, durch die vom Controller erzeugten Adressbits A14', A15', A16' wählt der Kommandodecoder 1308 via Se lektor 1306 eine Bank 1304 aus, in welcher eine Wortleitung aktiviert wird. Im Beispiel von 13 wird die sechste Bank 1304-6 ausgewählt.
  • Innerhalb einer durch A14', A15', A16' ausgewählten Bank wird eine Wortleitung 1305 durch die (richtig verdrahteten) Adressbits A0 bis A13 ausgewählt. D. h. die vom Controller erzeugten Adressbits A0' bis A13' werden an die "richtigen" bzw. normalerweise hierfür vorgesehenen Anschlüsse A0 bis A13 der Speichereinrichtung angeschlossen.
  • Wie oben beschrieben, wird die Speichereinrichtung 1300 durch die vom Controller erzeugte Bankadresse BA0', BA1', BA2' ausgewählt bzw. aktiviert. Dies kann durch den Kommandodecoder 1308 festgestellt werden. Falls der Kommandodecoder 1308 feststellt, dass die Speichereinrichtung 1300 ausgewählt bzw. adressiert wurde, erfolgt die Auswahl einer Bank, in der eine Wortleitung zu aktivierenden ist, durch die vom Controller erzeugten Adressbits A14', A15', A16'.
  • Beim Erhalt eines Spaltenkommandos stellt der Controller gemäß JEDEC Standard die Adressbits A14', A15', A16' nicht bereit. Deshalb stellt die Einstellvorrichtung 1310 beim Erhalt eines Spaltenkommandos die 2:1-Multiplexer 1314-1, 1314-2, 1314-3 so ein, dass am jeweiligen Ausgang 1318-1, 1318-2, 1318-3 der Inhalt eines jeweiligen Speicherregister 1312-1, 1312-2, 1312-3 anliegt. Dem Kommandodecoder 1308 steht somit beim Erhalt eines Spaltenkommandos die Information zur Verfügung welche Bank eine durch das Zeilenaktivierungskommando aktivierte Wortleitung 1305 enthält.
  • Somit kann der Kommandodecoder 1308 beim Erhalt eines Spaltenkommandos Speicherinhalte gezielt aus einer Bank auslesen bzw. in eine Bank schreiben, in welcher Bank eine Wortleitung aktiviert ist.
  • Der Kontrolllogikblock 1302 ist anschließend für die Datenübertragung zwischen den Bänken und einem Datenbus DQ zuständig.
  • Die weitere Kontrolllogik 1316-1, 1316-2, 1316-3 enthält jeweils Tri State Buffer, die verwendet werden können, um die Speichereinrichtung 1300 als eine Masterspeichereinrichtung oder als eine Slavespeichereinrichtung zur Verwendung in einer Stackanordnung einzustellen (siehe hierzu auch Beschreibung von 6).

Claims (24)

  1. Verfahren zum Betrieb einer Speichervorrichtung, welche wenigstens zwei Speichereinrichtungen umfasst, wobei jede Speichereinrichtung wenigstens eine Bank enthält, umfassend: Aktivierung wenigstens einer Wortleitung in wenigstens einer Bank gemäß einem Zeilenaktivierungskommando, wobei durch das Zeilenaktivierungskommando angegeben wird, welche Wortleitung in welcher Bank und in welcher Speichereinrichtung aktiviert wird; und Speichern von Bankinformation, wobei die Bankinformation angibt, welche Bänke pro Speichereinrichtung eine durch das Zeilenaktivierungskommando aktivierte Wortleitung enthalten.
  2. Verfahren gemäß Anspruch 1, weiterhin umfassend: Auslesen/Schreiben von Speicherinhalten aus/in Bänken/Bänke mit aktivierten Wortleitungen in Abhängigkeit der Bankinformation.
  3. Verfahren gemäß Anspruch 1 oder 2, wobei das Zeilenaktivierungskommando eine vorbestimmte Anzahl von Zeilenadressbits (A0–A16) enthält, wobei durch eine vorbestimmte Untermenge (A14–A16) der Zeilenadressbits die jeweilige Speichereinrichtung bestimmt wird, in welcher eine Wortleitung aktiviert wird.
  4. Verfahren gemäß Anspruch 2 oder 3, wobei das Zeilenaktivierungskommando wenigstens eine Bankadresse (BA0–BA2) enthält, die angibt, in welcher Bank einer Speichereinrichtung die Wortleitung aktiviert wird.
  5. Verfahren gemäß einem der vorstehenden Ansprüche, ferner umfassend: Empfangen eines Spaltenkommandos, welches eine Bankadresse enthält zur Angabe einer jeweiligen Bank aus der die Speicherinhalte ausgelesen werden sollen bzw. in welche Speicherinhalte geschrieben werden sollen.
  6. Verfahren gemäß Anspruch 5, wobei beim Auslesen/Schreiben von Speicherinhalten jede Speichereinrichtung das Spaltenkommando erhält und decodiert.
  7. Verfahren gemäß Anspruch 5 oder 6, wobei jede Speichereinrichtung anhand der jeweils gespeicherten Bankinformation überprüft, ob die durch die Bankadresse des Spaltenkommandos adressierte Bank eine aktivierte Wortleitung enthält.
  8. Verfahren gemäß einem der Ansprüche 5 bis 7, wobei beim Auslesen bzw. Schreiben nur dann Daten aus einer jeweiligen Bank ausgelesen werden bzw. in eine jeweilige Bank geschrieben werden, wenn die Bankinformation angibt, dass die jeweilige durch die Bankadresse des Spaltenkommandos angegebene Bank eine aktivierte Wortleitung enthält.
  9. Verfahren gemäß einem der vorstehenden Ansprüche, wobei in jeder Speichereinrichtung ein Teil der Bankinformation gespeichert wird, wobei der Teil angibt, welche Bänke der jeweiligen Speichereinrichtung eine aktivierte Wortleitung enthalten.
  10. Speichereinrichtung, umfassend: eine Anzahl Bänke; einen Kommandodecoder, eingerichtet zur Überprüfung, anhand eines Zeilenaktivierungskommandos, ob die Speichereinrichtung durch das Zeilenaktivierungskommando ausgewählt wird, wobei nur dann eine Wortleitung in einer Bank in Abhängigkeit des Zeilenaktivierungskommandos aktiviert wird, wenn die Speichereinrichtung durch das Zeilenaktivierungskommando ausgewählt wird; eine Speichereinheit eingerichtet zum Speichern von Bankinformation, wobei die Bankinformation angibt, in welchen Bänken jeweils eine Wortleitung aktiviert ist.
  11. Speichereinrichtung gemäß Anspruch 10, wobei das Zeilenaktivierungskommando eine vorbestimmte Anzahl von Zeilenadressbits (A0–A16) enthält, wobei der Kommandodecoder anhand einer vorbestimmten Untermenge (A14–A16) der Zeilenadressbits überprüft, ob die Speichereinrichtung ausgewählt ist.
  12. Speichereinrichtung gemäß Anspruch 10 oder 11, wobei das Zeilenaktivierungskommando wenigstens eine Bankadresse (BA0–BA2) enthält, die angibt, in welcher Bank der Speichereinrichtung die Wortleitung aktiviert wird.
  13. Speichereinrichtung gemäß einem der Ansprüche 10 bis 12, wobei der Kommandodecoder weiter eingerichtet ist zum Empfangen eines Spaltenkommandos, welches eine Bankadresse enthält zur Angabe einer jeweiligen Bank aus der die Speicherinhalte ausgelesen werden sollen bzw. in welche Speicherinhalte geschrieben werden sollen.
  14. Speichereinrichtung gemäß Anspruch 13, wobei die Speichereinheit die Bankinformation zumindest bis zum Empfang eines auf das Zeilenaktivierungskommando folgende Spaltenkommando speichert.
  15. Speichereinrichtung gemäß Anspruch 13 oder 14, wobei die Speichereinrichtung anhand der gespeicherten Bankinformation überprüft, ob die durch die Bankadresse des Spaltenkommandos adressierte Bank eine aktivierte Wortleitung enthält.
  16. Speichereinrichtung gemäß einem der Ansprüche 13 bis 15, wobei beim Auslesen bzw. Schreiben nur dann Daten aus ei ner jeweiligen Bank ausgelesen werden bzw. in eine jeweilige Bank geschrieben werden, wenn die Bankinformation angibt, dass die jeweilige durch die Bankadresse des Spaltenkommandos angegebene Bank eine aktivierte Wortleitung enthält.
  17. Speichereinrichtung gemäß einem der Ansprüche 10 bis 16, wobei die Größe der Speichereinheit von der Anzahl der Bänke abhängt.
  18. Speichereinrichtung gemäß Anspruch 17, wobei die Größe der Speichereinheit log2N beträgt, mit N = Anzahl der Bänke.
  19. Speichervorrichtung, welche wenigstens eine Speichereinrichtung gemäß einem der Ansprüche 13 bis 18 enthält.
  20. Speichervorrichtung gemäß Anspruch 19, welche eine Vielzahl von Speichereinrichtungen enthält.
  21. Speichervorrichtung gemäß Anspruch 20, wobei die Speichereinrichtungen in einer Stackanordnung angeordnet sind.
  22. Speichervorrichtung gemäß Anspruch 20 oder 21, wobei die Speichereinrichtungen mittels eines Through Silicon Vias verbunden sind.
  23. Speichervorrichtung gemäß einem der Ansprüche 20 bis 22, wobei eine Speichereinrichtung eine Master-Speichereinrichtung ist und die übrigen Speichereinrichtungen Slave-Speichereinrichtungen sind.
  24. Speichervorrichtung gemäß Anspruch 23, wobei die Master-Speichereinrichtung das Zeilenaktivierungskommando und/oder das Spaltenkommando von einem Controller eines Mikroprozessors empfängt und an die Slave-Speichereinrichtungen weiterleitet.
DE102007036990A 2007-08-06 2007-08-06 Verfahren zum Betrieb einer Speichervorrichtung, Speichereinrichtung und Speichervorrichtung Expired - Fee Related DE102007036990B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102007036990A DE102007036990B4 (de) 2007-08-06 2007-08-06 Verfahren zum Betrieb einer Speichervorrichtung, Speichereinrichtung und Speichervorrichtung
US12/186,195 US7986582B2 (en) 2007-08-06 2008-08-05 Method of operating a memory apparatus, memory device and memory apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102007036990A DE102007036990B4 (de) 2007-08-06 2007-08-06 Verfahren zum Betrieb einer Speichervorrichtung, Speichereinrichtung und Speichervorrichtung

Publications (2)

Publication Number Publication Date
DE102007036990A1 true DE102007036990A1 (de) 2009-02-19
DE102007036990B4 DE102007036990B4 (de) 2013-10-10

Family

ID=40279287

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102007036990A Expired - Fee Related DE102007036990B4 (de) 2007-08-06 2007-08-06 Verfahren zum Betrieb einer Speichervorrichtung, Speichereinrichtung und Speichervorrichtung

Country Status (2)

Country Link
US (1) US7986582B2 (de)
DE (1) DE102007036990B4 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5595708B2 (ja) 2009-10-09 2014-09-24 ピーエスフォー ルクスコ エスエイアールエル 半導体装置及びその調整方法並びにデータ処理システム
KR101335367B1 (ko) * 2012-04-26 2013-12-02 숭실대학교산학협력단 메모리 제어 장치 및 방법
WO2014085267A1 (en) 2012-11-30 2014-06-05 Intel Corporation Apparatus, method and system for providing termination for multiple chips of an integrated circuit package
KR102166762B1 (ko) * 2013-12-26 2020-10-16 에스케이하이닉스 주식회사 메모리 및 이를 포함하는 메모리 시스템
US11114150B2 (en) 2019-04-18 2021-09-07 Rambus Inc. Memory system with multiple open rows per bank

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69428652T2 (de) * 1993-08-24 2002-05-08 Fujitsu Ltd Halbleiterspeicher mit mehreren Banken
DE102004020038A1 (de) * 2003-04-21 2004-12-09 Elpida Memory, Inc. Speichermodul und Speichersystem

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09288614A (ja) * 1996-04-22 1997-11-04 Mitsubishi Electric Corp 半導体集積回路装置、半導体記憶装置およびそのための制御回路
JP2000030464A (ja) * 1998-07-15 2000-01-28 Mitsubishi Electric Corp 半導体記憶装置
US20050044302A1 (en) * 2003-08-06 2005-02-24 Pauley Robert S. Non-standard dual in-line memory modules with more than two ranks of memory per module and multiple serial-presence-detect devices to simulate multiple modules
KR100689817B1 (ko) * 2004-11-05 2007-03-08 삼성전자주식회사 전압 발생 회로 및 이 회로를 구비하는 반도체 메모리 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69428652T2 (de) * 1993-08-24 2002-05-08 Fujitsu Ltd Halbleiterspeicher mit mehreren Banken
DE102004020038A1 (de) * 2003-04-21 2004-12-09 Elpida Memory, Inc. Speichermodul und Speichersystem

Also Published As

Publication number Publication date
DE102007036990B4 (de) 2013-10-10
US7986582B2 (en) 2011-07-26
US20090046534A1 (en) 2009-02-19

Similar Documents

Publication Publication Date Title
DE102007036989B4 (de) Verfahren zum Betrieb einer Speichervorrichtung, Speichereinrichtung und Speichervorrichtung
DE4220211C2 (de) Spaltenauswahlschaltung
DE69830962T2 (de) Integrierte Halbleiterschaltungsanordnung
DE102007050864B4 (de) Verfahren und Vorrichtung zum Kommunizieren von Befehls- und Adresssignalen
DE102004053316A1 (de) Verfahren zur Ein- und Ausgabe von Betriebsparametern eines integrierten Halbleiterspeichers
DE10350865A1 (de) Speicherbaustein mit variabel verzögerter Spaltenauswahl
DE102004027121B4 (de) Ein Mehrfachbankchip, der mit einer Steuerung kompatibel ist, die für eine geringere Anzahl von Banken entworfen ist, und ein Verfahren zum Betreiben
DE102007050424B4 (de) DRAM mit geringem Energieverbrauch und Verfahren zum Steuern desselben
DE19645745B4 (de) Dynamischer Schreib-/Lesespeicher
DE19639972B4 (de) Hochgeschwindigkeitstestschaltkreis für eine Halbleiterspeichervorrichtung
DE112020006398T5 (de) Geräte, systeme und verfahren zur fehlerkorrektur
DE102007036990B4 (de) Verfahren zum Betrieb einer Speichervorrichtung, Speichereinrichtung und Speichervorrichtung
DE102005054432B4 (de) Direktzugriffsspeicher mit schnellem Spaltenzugriff
DE10261328B4 (de) Kompensation überkreuzter Bitleitungen in DRAMs mit Redundanz
EP0283908A1 (de) Mehrstufige integrierte Dekodereinrichtung
DE10020554B4 (de) Halbleiterspeicherbauelement mit Spaltenauswahlschaltung und Aufbauverfahren hierfür
DE10261327A1 (de) Kompensation überkreuzter Bitleitungen in DRAMs mit Redundanz
DE102004015534B4 (de) Speicherbauelement und Verfahren zum Ausgeben von Daten aus einem Speicherbauelement
DE10306062B3 (de) Speichermodul mit einer Mehrzahl von integrierten Speicherbauelementen und einer Refresh-Steuerschaltung
DE19547294C2 (de) Halbleiterspeichervorrichtung
DE10039612B4 (de) Halbleitervorrichtung mit einem Speicher für eine Zwischenwortgröße
DE102006032951B4 (de) Halbleiterspeicher mit einem blockreservierten programmierbaren Latenz-Register
DE10154066B4 (de) Integrierter Speicher und Verfahren zum Betrieb eines integrierten Speichers
DE10115817B4 (de) Integrierter Speicherchip mit einem dynamischen Speicher
DE102007034685A1 (de) Speichersystem

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final

Effective date: 20140111

R082 Change of representative
R081 Change of applicant/patentee

Owner name: INFINEON TECHNOLOGIES AG, DE

Free format text: FORMER OWNER: QIMONDA AG, 81739 MUENCHEN, DE

Owner name: POLARIS INNOVATIONS LTD., IE

Free format text: FORMER OWNER: QIMONDA AG, 81739 MUENCHEN, DE

R081 Change of applicant/patentee

Owner name: POLARIS INNOVATIONS LTD., IE

Free format text: FORMER OWNER: INFINEON TECHNOLOGIES AG, 85579 NEUBIBERG, DE

R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee