DE112005002390T5 - Burst-Betrieb für die Speichertransaktion und Speicherkomponenten, welche die zeitweilig multiplexierte Fehlerkorrekturcodierung unterstützen - Google Patents

Burst-Betrieb für die Speichertransaktion und Speicherkomponenten, welche die zeitweilig multiplexierte Fehlerkorrekturcodierung unterstützen Download PDF

Info

Publication number
DE112005002390T5
DE112005002390T5 DE112005002390T DE112005002390T DE112005002390T5 DE 112005002390 T5 DE112005002390 T5 DE 112005002390T5 DE 112005002390 T DE112005002390 T DE 112005002390T DE 112005002390 T DE112005002390 T DE 112005002390T DE 112005002390 T5 DE112005002390 T5 DE 112005002390T5
Authority
DE
Germany
Prior art keywords
data
burst
memory
error correction
addressable
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.)
Ceased
Application number
DE112005002390T
Other languages
English (en)
Inventor
Pete Boulder Vogt
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of DE112005002390T5 publication Critical patent/DE112005002390T5/de
Ceased legal-status Critical Current

Links

Classifications

    • 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
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0879Burst mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • G06F13/287Multiplexed DMA
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1018Serial bit line access mode, e.g. using bit line address shift registers, bit line address counters, bit line burst counters
    • G11C7/1027Static column decode serial bit line access mode, i.e. using an enabled row address stroke pulse with its associated word line address and a sequence of enabled bit line addresses
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Dram (AREA)
  • Detection And Correction Of Errors (AREA)
  • Memory System (AREA)

Abstract

Speichervorrichtung, mit:
einer Speicherzellenanordnung, die so angeordnet ist, daß sie Daten in mehreren adressierbaren Segmenten von Speicherzellen speichert, wobei jedem adressierbaren Segment wenigstens eine zusätzliche Speicherzelle zugewiesen ist, die, in wenigstens einem Burst-Lesemodus, von der Speicherzellenanordnung gelesen wird, wenn das zugeordnete adressierbare Segment gelesen wird; und
einem Burst-Controller, um die Burst-Sequenzierung von Ausgangsdaten zu steuern, die aus einem ersten der adressierbaren Segmente für Speicherzellen in einem ersten Burst-Lesemodus gelesen werden, wobei der Burst-Lesemodus das Ausgeben von Daten aus dem ersten Segment über eine Vielzahl von Datenzyklen umfaßt, wobei während wenigstens einem aus der Vielzahl der Datenzyklen Daten von der wenigstens einen zusätzlichen Speicherzelle, die dem ersten Segment zugewiesen ist, ausgegeben werden.

Description

  • GEBIET DER ERFINDUNG
  • Diese vorliegende Erfindung betrifft im allgemeinen digitale Speichersysteme, -komponenten und -verfahren und genauer Speichersystemkomponenten, die in der Lage zur multiplexierenden Fehlerkorrektur beim Codieren von Daten in einer impulsartigen Speichertransaktion sind.
  • HINTERGRUND
  • Digitale Prozessoren, sowie Mikroprozessoren, benutzen einen Computerspeicher-Untersystem, um Daten und Prozessorbefehle zu speichern. Einige Prozessoren kommunizieren direkt mit dem Speicher und andere benutzen einen bestimmten Controllerchip, der oftmals Teil eines "chipset" ist, um auf den Speicher zuzugreifen.
  • Herkömmliche Computerspeicher-Untersysteme werden oftmals impletiert, indem Speichermodule verwendet werden. Mit Bezug auf das Rechensystem 100, das in 1 gezeigt ist, kommuniziert ein Prozessor 120 über einen vorderen Bus 125 mit einem Speicher-Controller/Hub (MCH) 130, der den Prozessor 120 mit verschiedenen Peripherievorrichtungen koppelt. Eine dieser Peripherievorrichtungen ist der Systemspeicher, als ein Speichermodul MM0 gezeigt. Obwohl der Speicher nicht in jedem System auf einem solchen Modul angeordnet zu sein braucht, werden Module in vielen Systemen verwendet, um die Speichererweiterung durch Austauschen eines Moduls gegen ein Modul größerer Kapazität und/oder Hinzufügen zusätzlicher Module (nicht gezeigt) in zusätzlichen Speicherschächten zu erlauben. Wenn es angeschlossen ist, wird das Speichermodul MM0 vom MCH 130 adressiert, wann immer der MCH 130 geeignete Signale auf einem Adreß/Befehl (ADD/CMD)-Bus 150 bestätigt. Datenübertragungen zwischen dem MCH 130 und einem der Speichermodule geschehen auf einem Datenbus 140.
  • Typischerweise werden Speichermodule aufgebaut, indem eine Vielzahl von Halbleiter-Speichervorrichtungen verwendet wird, wobei jede einzelne Vorrichtung einen Teil jedes Datenwortes speichert, das auf dem Modul gespeichert wird. Zum Beispiel zeigt das Speichermodul MM0 fünf dynamische Speichervorrichtungen mit wahlfreiem Zugriff (DRAM – Dynamic Random-Access Memory), DRAM0 bis DRAM4. Jede DRAM-Vorrichtung empfängt dieselben Adreß- und Befehlsignale vom ADD/CMD-Bus 150. Jede DRAM-Vorrichtung ist mit einer Untermenge der Signalleitungen (DQn) verbunden, welche den Datenbus 140 bilden, wobei der DRAM0 mit sechzehn Busleitungen DQ0-DQ15 verbunden ist, DRAM1 mit DQ16-DQ31 verbunden ist, DRAM2 mit DQ32-DQ47 verbunden ist, DRAM3 mit DQ48-DQ63 verbunden ist und DRAM4 mit DQ64-DQ71 verbunden ist. Wenn somit während eines Datenzyklus 72 Bit Daten über den Datenbus 140 übertragen werden, ist jeder DRAM für sechzehn dieser Bits verantwortlich, mit der Ausnahme des DRAM4, der für acht Bits verantwortlich ist (typischerweise sind die anderen acht DQn-Eingänge des DRAM4 einfach unverbunden, und auf die Hälfte des DRAM4 kann nicht zugegriffen werden). Jeder DRAM speichert seinen zugewiesenen Teil des 72-Bitwortes an demselben Chip-Ort wie jeder andere DRAM seinen Teil des 72-Bitworts speichert.
  • Im Beispiel der 1 ist die Größe jedes adressierbaren Datenwortes 72 Bit. 64 dieser Bits werden verwendet, um Daten zu speichern. Die zusätzlichen acht Bits werden verwendet, um Fehlerkorrektur-Codier (ECC – Error Correction Coding)-Information entsprechend den 64 Bitsdaten bei derselben Adresse zu speichern. Zum Beispiel kann der DRAM4 der ECC-Speicherung zugewiesen werden, und DQ64-DQ71 werden dann verwendet, um ECC-Information zu speichern und wiederzugewinnen. Andere Systeme können andere Busbreiten verwenden, wobei 36 Bit auch üblich sind, wobei der Bus in 32 Datenbitspuren und vier ECC-Bitspuren aufgeteilt ist.
  • Viele gegenwärtige Speichervorrichtungen und Controller bieten einen Burst-Modus an, der es erlaubt, daß auf mehrere aufeinanderfolgende Datenwörter zusammen mit einem einzigen Befehl zugegriffen werden kann. 2 zeigt ein Zeitgebungsschaubild für einen Datenübertrag von sechzehn Wörtern im Burst-Modus, wobei das ECC-Speichermodul MM0 der Figur verwendet wird. Der MCH 130 versorgt das Modul MM0 mit einer Startadresse und einem Lies- oder Schreibe- 16 im Burst-Modus-Befehl. Wenn der Befehl ein Lesebefehl ist, liest jeder DRAM auf dem Modul MM0 die Datenspeicherzellen, welche mit einer Wortleitung verbunden sind, die die Startadresse enthält, und treibt dann die Daten von der Startadresse und den fünfzehn aufeinanderfolgenden Adressen über sechzehn aufeinanderfolgende Datenzyklen auf den Datenbus 140. Wenn der Befehl ein Schreibbefehl ist, liefert der MCH 130 Schreibdaten über sechzehn aufeinanderfolgenden Datenzyklen, welche die DRAMs auf dem Modul MM0 empfangen, puffern und dann in aufeinanderfolgende Speicherorte in einer Wortzeile schreiben, wobei an der Startadresse begonnen wird.
  • Der DRAM4 arbeitet während dieser Burst-Befehle genau wie alle anderen DRAMs und braucht nicht zu wissen, daß seine Daten verwendet werden können, um eine ECC-Funktion auf den Daten, die in DRAM0 bis DRAM3 gespeichert sind, durchzuführen, Zum Beispiel werden während des Zeitschlitzes T0 Daten "A" und ECC-Daten "A" übertragen, wobei "A" Daten an einer Startadresse darstellen, die durch den MCH 130 festgelegt ist. Während des Zeitschlitzes T1 werden Daten "B" und ECC-Daten "B" übertragen, wobei "B" Daten an der Adresse darstellen, die auf die "A"-Adresse folgt.
  • Nicht alle Systeme nutzen den ECC-Schutz wie oben beschrieben, da der ECC-Schutz einen breiteren Datenbus und üblicherweise einen zusätzlichen Speicherchip pro Speicherrank erfordert (z.B. würden DRAM4 und DQ64-DQ71 bei einem Nicht-ECC-System mit 64 Bit nicht benötigt werden). Weiter erhöht ECC im allgemeinen die Wartezeit (aufgrund der Fehlerprüffunktion) und den Energieverbrauch (aufgrund des zusätzlich erforderlichen Chips). Nicht-ECC-Systeme arbeiten ansonsten wie oben beschrieben, mit der Ausnahme, daß z. B. der Speichercontroller auf die Datenintegrität der Daten, die von DRAM0-DRAM3 in einer Leseoperation erhalten worden sind, vertrauen würde. Somit sind ECC- und Nicht-EEC-Speichermodule nicht untereinander austauschbar. Gegenwärtig werden mehr Nicht-EEC-Systeme als ECC-Systeme hergestellt, hauptsächlich wegen der oben aufgeführten Nachteile.
  • KURZBESCHREIBUNG DER ZEICHNUNG
  • Die Ausführungsformen können am besten verstanden werden, wenn man die Offenbarung mit Bezug auf die Zeichnung liest, wobei:
  • 1 einen Prozessor und einige Speichersystemkomponenten eines Computersystems des Standes der Technik veranschaulicht;
  • 2 ein Zeitgebungsschaubild für eine Datenübertragung im Burst-Modus auf dem Datenbus der 1 zeigt;
  • 3 ein Blockschaubild für einen Prozessor und einige Speichersystemkomponenten eines Computersystems gemäß einer Ausführungsform der Erfindung enthält;
  • 4A, 4B, 5, 6A, 6B und 6C: Zeitgebungsschaubilder für den fehlerkorrigierten Datenübertrag im Burst-Modus gemäß mehrerer Ausführungsformen der vorliegenden Erfindung veranschaulichen; und
  • 7 ein Blockschaubild für eine DRAM-Vorrichtung gemäß einer Ausführungsform der Erfindung enthält.
  • GENAUE BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
  • Diese Beschreibung betrifft einen neuen Ansatz zum Bereitstellen von ECC-fähigen Speichersystemkomponenten. Dieser Ansatz kann eine Anforderung nach besonderen ECC-Speichervorrichtungen und besonderen ECC-Bitspuren vermeiden, wobei in wenigstens einigen Ausführungsformen die Austauschbarkeit zwischen ECC und Nicht-ECC-Modulen untereinander erlaubt wird. Anstelle besonderer ECC-Vorrichtungen und Bitspuren multiplexen die hierin beschriebenen Ausführungsformen während Übertragungen im Burst-Modus über die Datenbitspuren zeitweilig ECC-Daten mit Systemdaten, wobei der Speichercontroller und Speichervorrichtungen für das Handhaben der gemischten Daten/ECC-Burstübertragung in einer vordefinierten Weise verantwortlich sind. Bei einigen Ausführungsformen sind die Speichervorrichtungen mit ECC- und Nicht-ECC-Burstübertragungsbetrieb gestaltet, was erlaubt, daß die Module untereinander austauschbar sowohl in EEC- als auch in Nicht-ECC-Systemen verwendet werden – oder sogar in einem System, das für einige kritische Daten auf den ECC-Schutz vertraut und für andere Daten nicht. Die bevorzugten Ausführungsformen nutzen eine Speicherstruktur, bei der ECC-Daten keinen direkt adressierbaren Speicherraum besetzen, sondern in intern adressierbaren Speicherbereichen gespeichert werden, die adressierbarem Speicherraum zugewiesen sind.
  • Als eine Einführung in die Ausführungsformen zeigt 3 ein Rechensystem 300, welches einen Prozessor 320 umfaßt, der an einem Speichercontroller 330 gekoppelt ist. Der Prozessor 320 und der Speichercontroller 330 können auf einer einzelnen Schaltung integriert sein oder können auf getrennten Chips vorliegen, die durch einen Front-Side-Bus in einer Weise ähnlich der, die für 1 beschrieben ist, verbunden sind. Der Speichercontroller 330 ist wiederum über einen Adreß/Befehlsbus 350 und einen Datenbus 340 mit einem bimodalen Speichermodul BMM0 verbunden. Der Datenbus 340 ist mit 64 Bitspuren DQ0-DQ63 veranschaulicht, obwohl dieses lediglich beispielhaft ist, wobei andere Ausführungsformen z. B. 16, 32 oder 128 Bitspuren auf dem Datenbus benutzen. Das bimodale Speichermodul BMM0 enthält vier fehlerkorrigierte Burst-Modus (ECB – error corrected burst mode)-DRAMs ECB-DRAM0, ECB-DRAM1, ECB-DRAM2 und ECB-DRAM3, die weiter unten in einer Ausführungsform einer Speichervorrichtung der Erfindung näher beschrieben werden. Bei Ausführungsformen des Systems, bei denen ein fehlerkorrigierter Burst-Modus verwendet wird, ist der Speichercontroller 330 so gestaltet, daß er Daten für den fehlerkorrigierten Burst-Modus empfängt und sendet. Bei einigen Ausführungsformen des Systems, wenn nur ein Nicht-ECC-Burst-Modus des Standes der Technik verwendet wird, ist es jedoch möglich, das Modul BMM0 an einen Nicht-ECC-Speichercontroller des Standes der Technik zu koppeln.
  • Die Funktion des Speichercontrollers 330 und der ECB DRAMs auf Systemebene kann besser verstanden werden, indem die Zeitgebungsschaubilder für die fehlerkorrigierte Datenübertragung im Burst-Modus über den Datenbus 340 untersucht werden. Mit Bezug zunächst auf die 4A und 4B sind achtzehn Datenzyklen T0-T17 eines "fehlerkorrigierten Burst-Modus 18A" dargestellt. Bei diesem Beispiel übertragen diese achtzehn Datenzyklen dieselben sechzehn Datenwörter A bis P mit 72 Bit, die von dem Computersystem 100 des Standes der Technik in 2 übertragen wurden. Wesentlich ist jedoch, daß bei der 4 64 Bitspuren und achtzehn Datenzyklen für die Übertragung anstatt 72 Bitspuren und sechzehn Datenzyklen wie beim Stand der Technik genutzt werden. Auch anstelle des Übertragens der ECC-Codierung für ein Datenwort gleichzeitig mit dem Datenwort ist die zeitliche Anordnung der Daten gegenüber 2 modifiziert.
  • Wiederum wird das Lesen und Schreiben von Daten vom BMM0 betrachtet. Wenn man zunächst den Lesedatenzyklus T0 der 4A betrachtet, ist zu sehen, daß während T0 nur ECC-Daten übertragen werden. Während des Datenzyklus T0 werden ECC-Daten A und C vom ECB-DRAM0 übertragen – diese ECC-Daten entsprechen jeweils Daten A, die von allen ECB-DRAMs während des Datenzyklus T2 übertragen werden, und Daten C, die von allen ECB-DRAMs während des Datenzyklus T4 übertragen werden. Auch während des Datenzyklus T0 werden ECC-Daten E und G durch den ECB-DRAM1 übertragen – diese ECC-Daten entsprechen jeweils Daten E, die von allen ECB-DRAMs während des Datenzyklus T6 übertragen werden, und Daten G, die von allen ECB-DRAMs während des Datenzyklus T8 übertragen werden. Gleichermaßen übertragen während T0 der ECB-DRAM2 und der ECB-DRAM3 ECC-Daten I, K, M und O, die jeweils Daten entsprechen, welche von allen ECB-DRAMs während der Datenzyklen T10, T12, T14 und T16 übertragen werden.
  • Wenn man als nächstes den Datenzyklus T1 überprüft, kann man sehen, daß während T1 ebenso nur ECC-Daten übertragen werden. Die übertragenen ECC-Daten entsprechen den Daten, die während der verbleibenden ungeraden Datenzyklen übertragen werden, z. B. T3, T5, T7, T9, T11, T13, T15 und T17.
  • Wenn der Speichercontroller 330 die ECC-Daten während T0 und T1 empfängt, überträgt er die Daten an eine ECC-Registerbank 335, welche sechzehn EEC-Register mit acht Bit enthält. Dann, wenn Daten von dem Speichercontroller 330 bei T2 empfangen werden, werden die ECC-Daten "A" aus ihrem Register in der Bank 335 wiedergewonnen und verwendet, um eine Fehlerkorrektur bei den Daten A durchzuführen. Wenn Daten von dem Speichercontroller 330 im T3 empfangen werden, werden die ECC-Daten "B" aus ihrem Register in der Bank 335 wiedergewonnen und verwendet, um Fehlerkorrektur bei den Daten B durchzuführen. Dieser Prozeß läuft weiter bis zum Datenzyklus T17, wenn ECC-Daten "P" aus dem letzten ECC-Register gelesen und verwendet werden, um Fehlerkorrektur bei den Daten P durchzuführen. Die fehlerkorrigierten Datenwörter A bis P werden von dem Speichercontroller 330 zu dem Prozessor 320 oder zu einem Peripheriebauteil übertragen, welches die Daten mit einem direkten Speicherzugangs (DMA – Direct Memory Access)-Befehl angefordert hat.
  • Man kann nun sehen, daß, wenn für die Datenwörter A bis P keine Fehlerkorrektur gewünscht wäre, derselbe Datenübertrag, der in 4 veranschaulicht ist, verwendet werden könnte, jedoch ohne die ersten beiden Datenzyklen.
  • Für das Schreiben von Daten in das BMM0 wird bei einer Ausführungsform die Datenzyklustruktur, die in 4B gezeigt ist, verwendet. Die Datenwörter A bis P werden zu allen ECB-DRAMs jeweils während der Datenzyklen T0 bis T15 übertragen. Wenn der Speichercontroller 330 jedes Datenwort für das Senden vorbereitet, berechnet er entsprechende EEC-Daten und speichert die ECC-Daten in einem der sechzehn EEC-Register in der Bank 335, die zuvor beschrieben worden ist. Dann werden während des Datenzyklus T16 die ECC-Daten A, C, E, G, I, K, M und O wie gezeigt zu den ECB-DRAMs übertragen. Während des Datenzyklus T17 werden die verbleibenden ECC-Daten B, D, F, H, J, L, N und P zu den ECB-DRAMs wie gezeigt übertragen.
  • Es wird erkannt werden, daß die besondere Anordnung der ECC-Daten beispielhaft ist. Zum Beispiel könnten während des ersten ECC-Datenzyklus die ECC-Datenwerte A-H übertragen werden, und während des zweiten ECC-Datenzyklus könnten die ECC-Datenwerte I-P übertragen werden. Solange der Speichercontroller 330 beim Lesen und Schreiben konsistent ist, könnte irgendeine zweckmäßige Anordnung verwendet werden. Wie es in Kürze erläutert wird, brauchen bei den beschriebenen Ausführungsformen die ECB-DRAMs das Datenzyklusformat nicht zu verstehen und brauchen nicht zu verstehen, wie die ECC-Daten von dem Speichercontroller unter den Speichervorrichtungen aufgeteilt werden.
  • 5 zeigt einen alternativen Burst-Modus 18B. In diesem Burst-Modus wird ein ECC-Datenzyklus entsprechend acht Zyklen aus Daten eingestreut. Während des ECC-Datenzyklus werden ECC-Daten für jeden der entsprechenden acht Zyklen übertragen. Bei einer Ausführungsform werden während des Datenzyklus T0 ECC-Daten entsprechend Datenwörtern A-H übertragen, die während der folgenden acht Zyklen T1-T8 übertragen werden sollen. Dann werden während des Datenzyklus T9 ECC-Daten übertragen, die den Datenwörtern I-P entsprechen, gefolgt von den Datenwörtern I-P während der Datenzyklen T10-T17. Man bemerke, daß 5 aus zwei verbundenen Neun-Datenzyklen-Bursts besteht, was nahelegt, daß dieser Modus auch für eine Burst-Modus-9-Übertragung durch Durchführen der halben Übertragung verwendet werden könnte. Auch kann der Burst-Modus 18B für Schreiboperationen modifiziert werden, so daß zuerst acht Datenzyklen-Benutzerdaten zuerst übertragen werden, gefolgt von einem Datenzyklus ECC-Daten, welche den acht Datenzyklen der Nutzerdaten entsprechen.
  • Die voranstehenden Zeitgebungsausführungsformen veranschaulichen Situationen, bei denen eine ganzzahlige Beziehung zwischen der Anzahl der ECC-Werte, die in einem Datenzyklus übertragen werden können, und der Burstlänge der entsprechenden Daten besteht. Die 6A-6C veranschaulichen eine Ausführungsform, bei der dieses Erfordernis nicht gilt.
  • In 6A fordert der Speichercontroller 330 einen fehlerkorrigierten Burst-Modus-5-Übertrag an, welcher einen Datenzyklus ECC-Daten und vier Datenzyklen Nutzerdaten von den ECB-DRAMs überträgt. Diese Übertragung ist identisch mit den ersten fünf Datenzyklen der 5, schneidet jedoch nach dem Datenzyklus T4 ab. Man bemerke, daß die ECC-Daten E-H, die vom ECB-DRAM2 und ECB-DRAM3 empfangen worden sind, "don't care"-Daten sind – obwohl sie von dem Speichercontroller 330 übertragen und in die ECC-Registerbank 335 geladen werden, werden sie niemals benutzt.
  • Bei diesem Beispiel sei angenommen, daß die Spaltenadresse, die an die ECB-DRAMs gegeben wird, 0xC80 ist, wobei 0x die hexadezimale Notation darstellt, und Nutzerdaten "A" werden an der Spaltenadresse 0xC80 und an einer bestimmten Zeilenadresse RA gespeichert. Den ECC-Daten "A" und "B" werden im ECB-DRAM0-Speicher die Zeilenadresse RA und die Spaltenadressen 0xC80-87 zugewiesen. Die Wiedergewinnung irgendwelcher Nutzerdaten in dem Adreßbereich aus ECB-DRAM0-Speicheranordnung bewirkt auch das Wiedergewinnen der ECB-Daten "A" und "B" aus den ECC-Speicheranordnungselementen, denen die Zeilenadresse RA und der Spaltenadresse 0xC8[0b0XXX) zugewiesen ist, wobei der Wert in Klammern in binärer (0b) Notation ist und "X" ein "don't care"-bit darstellt. Gleichermaßen werden die ECC-Daten "I" und "J" in ECC-Speicheranordnungselementen gespeichert, die der Zeilenadresse RA und der Spaltenadresse 0xC8[0b1XXX] zugeordnet sind. Beim normalen Benutzer-ECC-Burst-Modus kann der Speichercontroller diese ECC-Speicheranordnungselemente nicht explizit adressieren; er versteht jedoch, daß auf diese ECC-Speicheranordnungselemente im ECC-Modus zugegriffen wird, wenn Nutzerdaten an die entsprechende Adressierung des Nutzerraums geliefert werden.
  • Es wird auch angemerkt, daß, wenn ein Burst zwei ECC-Zuweisungen überspannt (z. B. wenn ein Vier-Wort-Burst G-J aus 4A angefordert wird), das Speichersystem so gestaltet werden kann, daß der Burst um einen Datenzyklus verlängert wird und beide ECC-Verknüpfungen liefert.
  • Bei jeder der 6A, 6B und 6C gibt das Speichermodul BMM0 dieselben ECC-Daten, jedoch unterschiedliche Nutzerdaten zurück. Abhängig von den Bits niedriger Ordnung in der Spaltenadresse wird der Speichercontroller auswählen, welche ECC-Daten zu nutzen sind und welche ECC-Daten außer Betracht bleiben. Zum Beispiel ist in 6B die Start-Spaltenadresse 0xC82, so daß die ECC-Daten, die vom ECB-DRAM1 und ECB-DRAM2 zurückgegeben werden, benutzt werden, und die ECB-Daten, die vom ECB-DRAM0 und vom ECB-DRAM3 zurückgegeben werden, außer Betracht bleiben werden. In 6C ist die Start-Spaltenadresse 0xC84, so daß die ECC-Daten, die vom ECB-DRAM2 und vom ECB-DRAM3 zurückgeben werden, verwendet werden.
  • Obwohl keine anderen Burstlängen veranschaulicht sind, können Durchschnittsfachleute die obigen Grundsätze auf z. B. einen Burstlänge 3 (welche einen ECC-Datenzyklus umfaßt)-Burst-Modus, einen Burstlänge 2 (welche einen ECC-Datenzyklus umfaßt)-Burst-Modus zum Übertragen von Nutzerdaten von einer einzelnen Adresse und auf irgendeine andere Burstlänge, die nicht besonders angesprochen worden ist, anwenden.
  • Bei einigen Ausführungsformen ist es möglich, auch Nutzerdaten und ECC-Daten in eine Burstlänge zu schreiben, die einige ungültige ECC-Daten umfaßt. Bei einer Ausführungsform umfassen die Speichervorrichtungen datenmaskierende (DM) Signaleingänge, und der Speichercontroller bestätigt geeignete Maskierungszeilen während der ECC-Datenzyklen, um zu verhindern, daß ECC-Daten an ECC-Orte geschrieben werden, die nicht den Nutzerdaten, die gerade geschrieben werden, entsprechen. Zum Beispiel könnte in 6B der Speichercontroller die DM-Eingänge für den ECB-DRAM0 und den ECB-DRAM3 während T0 bestätigen, so daß nur der ECB-DRAM1 und ECB-DRAM2 während T0 tatsächlich ECC-Daten aufnehmen und die ECC-Daten im ECC-Speicher sichern.
  • Bei einer weiteren Ausführungsform liegen DM-Signaleingänge entweder nicht vor oder werden nicht benutzt, um ECC-Daten aus Datenbusleitungen zu steuern. Statt dessen wird ein Modulpositionsregister in dem Modusregistersatz (MRS – Mode Register Set) jeder Speichervorrichtung mit der Position der Vorrichtung auf dem BMM0 programmiert, oder die Option wird hartcodiert, wenn das Modul gebaut wird. Die Logik in jeder Speichervorrichtung vergleicht den Spaltenadreßbereich, der für ein Schreiben angefordert wird, mit dem Modulposi tionsregister, um zu entscheiden, ob die ECC-Daten, die an die Vorrichtung geliefert werden, geschrieben oder ignoriert werden sollten. Zum Beispiel ist auf dem ECB-DRAM0 das Modulpositionsregister des MRS mit den Werten 000 und 001 programmiert. Wenn der Spaltenadreßbereich eines Schreibbursts die niederwertige Adresse 000 umfaßt, wird der ECB-DRAM0 in seinem ECC-Speicherraum die ECC-Daten sichern, die bei T0 auf DQ0-DQ7 empfangen worden sind, und ansonsten wird er die Daten nicht sichern. Eine ähnliche Logik für die niederwertige Adresse 001 bestimmt, ob die ECC-Daten, die bei T0 auf DQ8-DQ15 empfangen worden sind, in dem ECC-Speicherraum gesichert werden.
  • Eine Ausführungsform eines ECB-DRAM 700 ist in dem Blockschaubild der 7 veranschaulicht. Der ECB-DRAM 700 weist eine Adreß- und Steuerlogik 710, ein Adreßregister 720, einen Zeilendecodierer 730, einen Spaltendecodierer 740, einen Burst/ECC-Controller/Zähler 750, I/O-Register, Treiber und Empfänger 760, I/O-Ausblende- und Maskenlogik 770, Abfühlverstärker 780 und eine Speicherzellenanordnung 790 auf. Mehrere dieser Blöcke werden den Durchschnittsfachleuten vertraut sein, jedoch sind andere modifiziert, um mit dem Fehlerkorrektur-Burstbetrieb wie oben beschrieben in Einklang zu sein. durchzuführen. Die folgende Beschreibung konzentriert sich auf das Zusammenwirken zwischen den Blöcken und die neue Funktionalität, die den Fehlerkorrektur-Burstbetrieb unterstützt.
  • Der Adreß- und Steuerlogikblock 710 erhält Befehle auf den Signaleingängen CMD von z. B. einem Speichercontroller. Typische Befehle umfassen AKTIV-Befehle, um eine Wortzeile in der Speicherzellenanordnung 790 auszuwählen, LESE-Befehle, die Spalten in der Speicherzellenanordnung 790 festlegen, aus denen gelesen werden soll, SCHREIB-Befehle, die Spalten in der Speicherzellenanordnung 790 festlegen, in die geschrieben werden soll, Auffrischbefehle und verschiedene Befehle zum Einrichten des Modus.
  • Während eines AKTIV-Befehls wird eine Zeilenadresse auf den Signaleingängen ADD empfangen und durch das Adreßregister 720 gesperrt – die Zeilenadresse wird an den Zeilendecodierer 730 durch Signale von der Adreß- und Steuerlogik 710 übertragen und wird dann ver wendet, um eine entsprechende Zeile der Speicherzellenanordnung 790 zu aktivieren. Abfühlverstärker 780 lesen die Inhalte der Zeile der Speicherzellenanordnung als Antwort auf den AKTIV-Befehl und frischen sie auf.
  • Während eines LESE-Befehls wird eine Spaltenadresse auf den Signaleingängen ADD empfangen und durch das Adreßregister 720 gesperrt – Die Spaltenadresse wird durch Signale von der Adreß- und Speicherlogik 710 zu dem Burst/ECC-Controller/Zähler 750 übertragen. Der Burst/ECC-Controller/Zähler 750 wird die Spaltenadresse benutzen, um die Auswahl und die Übertragung von Daten von den Abfüllverstärkern 780 durch die I/O-Gatter- und Maskenlogik 770 zu den I/O-Registern und Treibern 760 während der Datenphase der LESE-Operation steuern.
  • Während eines SCHREIB-Befehls wird eine Spaltenadresse auf den Signaleingängen ADD empfangen und durch das Adreßregister 720 gesperrt. Die Spaltenadresse wird an den Burst/ECC-Controller/Zähler 750 durch Signale von der Adreß- und Steuerlogik 710 übertragen. Der Burst/ECC-Controller/Zähler 750 wird die Spaltenadresse benutzen, um die Übertragung von Daten zur I/O-Ausblender- und Maskenlogik 770 von den I/O-Registern und Empfängern 760 während der Datenphase der SCHREIB-Operation steuern.
  • Während wenigstens einiger Befehle zum Einstellen des Modus werden Modusregisterwerte auf den Signaleingängen ADD empfangen und durch das Adreßregister 720 gesperrt. Die Modusregisterwerte werden an das Modusregister 715 übertragen, die in 7 als ein Teil der Adreß- und Steuerlogik 710 gezeigt sind. Bei einigen Ausführungsformen ist einer der Modusregisterwerte ECC MODUS, welcher angibt, ob LESE- und SCHREIB-Burstbefehle zusätzliche Datenzyklen für die Übertragung von ECC-Daten umfassen werden. Der Modusregisterwert ECC MODUS wird an den Burst/ECC-Controller/Zähler 750 geliefert und wird bestimmen, wie der Burst/ECC-Controller/Zähler 750 Datenspalten während der Datenübertragung bei Lese- und Schreibbefehlen auswählt.
  • Der Spaltendecodierer 740 wählt n Spalten in der Speicherzellenanordnung 790 für die Übertragung von Daten zwischen der I/O-Ausblende- und Maskenlogik 770 und den I/O-Registern 760 für jeden Lese- oder Schreibdatenzyklus aus- Die n ausgewählten Spalten hängen von der Adresse ab, die von dem Burst/ECC-Controller/Zähler 750 für den Datenzyklus geliefert wird. Für Schreibdaten hängt die Auswahl von Spalten auch von einen oder mehreren datenmaskierenden (DM) Eingaben ab, die mit den Schreibdaten empfangen werden – wenn Schreibdaten als maskiert angegeben werden, blockiert I/O-Ausblende- und Maskenlogik 770 die Übertragung der Zahlen an die Speicherzellenanordnung 790.
  • Die I/O-Register, Treiber und Empfänger 760 arbeiten in herkömmlicher Weise, mit der Ausnahme, daß die Burstlänge von dem Burst/ECC-Controller/Zähler 750 angepaßt werden kann, um ECC-Burstlängen und Nicht-ECC-Burstlängen zu unterstützen. Während Schreibbursts empfangen die Empfänger 760 Daten auf I/O-Pins DQ1-DQn und datenmaskierende Eingaben auf den Pins DM während jedes Datenzyklus, wobei der Datenzyklus durch Strobe-Signale auf den Strobe-I/O-Pin(s) DQS angegeben werden, und sperren die empfangenen Daten und die datenmaskierende Eingaben in die I/O-Register für die Übertragung zu der I/O-Ausblende- und Maskenlogik 770. Während Lesebursts empfangen die I/O-Register 760 Daten von der I/O-Ausblende- und Maskenlogik 770, und die Treiber treiben die Daten auf DQ1-DQn und ein Abtastsignal auf DQS.
  • Die Ausgestaltung der Speicherzellenanordnung 790 trägt zu der Fähigkeit des ECB-DRAM 700 bei, sowohl im ECC- als auch im Nicht-ECC-Modus zu arbeiten. Für jeweils acht Datenspalten liegt ebenso eine ECC-Spalte vor. Diese Ausgestaltung dient dazu, eine Weise zu veranschaulichen, in der eine Ausführungsform der vorliegenden Erfindung implementiert werden kann, wobei adressierbare Spaltensegmente zusätzlichen ECC-Spalten zugewiesen sind; andere Ausgestaltungen und Verhältnisse von Daten- zu ECC-Spalten sind möglich, solange der Burst/ECC-Controller/Zähler und der Spaltendecodierer diesen anderen Ausgestaltungen angepaßt sind.
  • Der weitere Betrieb des ECB-DRAM 700 wird nun im Zusammenhang mit 6A beschrieben werden, wobei angenommen wird, daß der ECB-DRAM 700 in der Figur als ECB-DRAM0 bezeichnet wird. Zunächst, als Antwort auf einen AKTIV-Befehl lesen die Abfühlverstärker 780 Daten aus einer Zeile der Speicherzellenanordnung 790, wobei die Zeile von dem Zeilendecodierer 730 ausgewählt worden ist. Die Daten, die von den Abfühlverstärkern 780 gelesen werden, umfassen ECC-Daten aus ECC-Spalten und Nutzerdaten aus Datenspalten.
  • Als nächstes, wobei angenommen wird, daß der fehlerkorrigierte Burst-Modus 5 ausgewählt ist, wird die Spaltenadresse 0xC80, mit einem LESE-Befehl versorgt, an den Burst/ECC-Controller/Zähler 750 übertragen (es wird angemerkt, daß, obwohl die 7 eine Bank des Speichers zeigt, der ECB-DRAM 700 mehrere Bänke haben könnte und einige Bits der Spaltenadresse als Bankauswahl verwenden könnte). Der Burst/ECC-Controller/Zähler 750 signalisiert zunächst dem Spaltendecodierer 740, ECC-Spalten auszuwählen, die mit der Spaltenadresse 0xC80 verbunden sind. Diese Signalgebung kann zum Beispiel das Bereitstellen der Start-Spaltenadresse 0xC80 auf CA aufweisen, während ein ECC-Adressenüberschreibsignal ECC-AO angegeben wird. Wenn das ECC-AO-Signal angegeben ist, ignoriert der Spaltendecodierer 740 die drei niedrigstwertigen Bits der Adresse, die auf CA erscheinen und wählt statt dessen eine neunte Adresse aus, die dem externen adressierbaren Segment 0xC80-87 zugewiesen ist. Diese neunte Adresse ist nicht direkt durch eine extern gelieferte Spaltenadresse adressierbar, ist jedoch von dem Spaltendecodierer in einem ECC-Modus intern adressierbar. Der Speichercontroller kann somit indirekt die ECC-Daten adressieren, indem das entsprechende Datensegment in seinem ECC-Modus adressiert wird.
  • Bei ausgewählter neunter Adresse überträgt die I/O-Ausblende- und Maskenlogik 770 Daten von ECC-Spalten, die mit den externen Spaltenadressen 0xC80-87 verbunden sind, an I/O-Register und Treiber 760 zum Treiben auf DQ1-DQn während des Datenzyklus T0.
  • Der Burst/ECC-Controller/Zähler geht als nächstes von einem ECC-Adressenzustand in einen Datenadressenzustand über. Er liefert weiter die Startspaltenadresse 0xC80 an den Spaltendecodierer, nimmt aber die Bestätigung für ECC-AO zurück. Dies bewirkt, daß der Spaltendecodierer 740 Datenspalten, die der externen Adresse zugewiesen sind, für die Übertragung durch die I/O-Ausblende- und Maskenlogik 770 an I/O-Register und Treiber 760 zum Treiben auf DQ1-DQn während des Datenzyklus T1 auswählt.
  • Der Burst/ECC-Controller/Zähler inkrementiert seine interne Spaltenadresse auf 0xC81 und wiederholt die oben beschriebene Operation, um Daten für den Datenzyklus T2 zu liefern. Dieser Prozeß läuft zwei weitere Male fort, um die Fünf-Datenzyklus-Burst-Leseoperation der 6A zu beendigen.
  • Wenn die Modusregister 715 angeben, daß der ECC-Modus nicht freigegeben ist, tritt der Burst/ECC-Controller/Zähler 750 niemals in den ECC-Adressenzustand ein und bestätigt niemals ECC-AO. Der Datenadreßzustand bleibt derselbe, was bewirkt, daß Datenspalten, jedoch keine ECC-Spalten, in einer Vier-Datenzyklus-Burst-Leseoperation gelesen werden.
  • In einem fehlerkorrigierten Schreib-Burst-Modus ist die Operation analog. Bei dem geeigneten Datenzyklus oder Zyklen bestätigt der Burst/ECC-Controller/Zähler 750 ECC-AO, um zu bewirken, daß ECC-Spalten, die einem Segment Datenspalten zugeordnet sind, welches mit CA bezeichnet sind, für das Schreiben ausgewählt werden. Die Länge des Schreibbursts ist verlängert, um den zusätzlichen Datenzyklus oder die Zyklen in dem fehlerkorrigierten Schreib-Burst-Modus unterzubringen. Wie zuvor angesprochen, können die ECC-Daten auf die datenmaskierenden Signale DM vertrauen, was die Logik vereinfacht und es dem Speichercontroller erlaubt, auf einer feinkörnigen Basis zu bestimmen, welche ECC-Daten geschrieben werden.
  • Ein Modusregisterverfahren zum Angeben von ECC- und Nicht-ECC-Modi ist beschrieben worden. In einem solchen System kann ein Modus (z.B. Nicht-ECC) als ein Standard ausgewählt werden, wenn dies nicht von dem Speichercontroller geändert wird. Ein weiteres Verfahren zum Angeben von ECC- und Nicht-ECC-Modi könnte darin bestehen, zwei unterschiedliche Befehle zur Verfügung zu stellen. Dieses Verfahren erlaubt es, daß der Speichercontroller effizient ECC- und Nicht-ECC-Datenbursts mischt, abhängig zum Beispiel davon, wie kritisch die Daten durch den Prozessor bezeichnet werden.
  • Obwohl ein Modul mit vier Chips und ein Datenbus mit 64 Bit gezeigt sind, ist dies lediglich beispielhaft, und andere Anzahlen von Chips oder Datenbusbreiten können verwendet werden. Zum Beispiel könnte auch ein Modul mit einem Chip, zwei Chips oder acht Chips gemäß den oben beschriebenen Grundsätzen implementiert werden. Das Modul braucht nicht einen einzigen Rank Speichervorrichtungen zu haben – zum Beispiel können zwei Ranks mit acht Chips auf einem Modul enthalten sein. Die vorliegende Erfindung ist auch bei Systemen einsetzbar, die Speichervorrichtungen haben, die auf derselben Schaltkarte mit einem Prozessor angeordnet sind, der die Speichervorrichtungen benutzt.
  • Ein Durchschnittsfachmann wird erkennen, daß die hierin gelehrten Konzepte auf eine besondere Anwendung in vieler Hinsicht vorteilhaft maßgeschneidert werden können. Insbesondere werden die Fachleute erkennen, daß die veranschaulichten Ausführungsformen aus vielen alternativen Implementierungen ausgewählt sind, die beim Lesen dieser Offenbarung deutlich werden. Zum Beispiel sind viele unterschiedliche zeitliche Anordnungen von Nutzerdaten und ECC-Daten in einem Burst möglich, wobei sogar manche ECC-Daten und Nutzerdaten in einigen oder allen Datenzyklen mischen können. Obwohl Ausführungsformen mit DRAMs beschrieben worden sind, gelten die hierin beschriebenen Grundsätze auch für andere Typen von Halbleiterspeichern, sowie statischen, flash usw., da die Grundsätze auf die Speicherzellenanordnung und die Datenübertragung angewendet werden und nicht auf den Speichertyp. Die besondere funktionelle Anordnung der Ausführungsformen der hierin beschriebenen Vorrichtungen stellen eine mögliche funktionelle Gruppierung dar, jedoch können Funktionen unterteilt und/oder in vielen anderen Kombinationen kombiniert werden, die in den Umfang der angefügten Ansprüche fallen.
  • Die beschriebene Verwendung für die vorliegende Erfassung ist die Fehlerkorrekturcodierung. Die Fachleute werden jedoch erkennen, daß der Hilfsspeicherraum und die Datenzyklen bei der Übertragung in Bursts, die für die ECC verwendet werden, alternativ verwendet werden könnten, um jegliche Hilfsdaten zu speichern und wiederzugewinnen, für die ein Prozessor und/oder Speichercontroller konfiguriert war, daß er diese mit einem adressierbaren Speicheradreßbereich zusammenbringt.
  • Viele der bestimmten hierin gezeigten Merkmale sind Gestaltungsauswahlen, und eine Erläuterung vieler anderer Gestaltungsauswahlen ist weggelassen worden, da sie innerhalb des Fachwissens liegen und/oder implementationsabhängig sind. Solche geringfügigen Modifikationen sind in den Ausführungsformen der Erfindung eingeschlossen und sind so beabsichtigt, daß sie in den Umfang der Ansprüche fallen.
  • Die voranstehenden Ausführungsformen sind beispielhaft. Obwohl sich die Beschreibung an mehreren Stellen auf "eine", "eine andere" oder "einige" Ausführungsform(en) beziehen mag, bedeutet dies nicht notwendigerweise, daß jede solche Bezugnahme auf dieselbe(n) Ausführungsform(en) ist oder daß das Merkmal nur bei einer einzelnen Ausführungsform gilt.
  • ZUSAMMENFASSUNG
  • Verfahren und Vorrichtungen zur Verwendung mit Speichersystemen und Speichermodulen sind in den Ausführungsformen enthalten. Bei beispielhaften Systemen werden fehlerkorrekturcodierende (ECC) Daten zeitlich mit Nutzerdaten auf denselben Datenbusleitungen in einer Übertragung im Burstbetrieb multiplexiert, so daß keine getrennten Chips und Datenleitungen erforderlich sind, um ECC zu unterstützen. Die Speichervorrichtungen auf den Modulen enthalten jede zusätzliche indirekt adressierbare ECC-Segmente, die adressierbaren Segmenten der Vorrichtung zugeordnet sind. Die zeitlich multiplexierten ECC-Daten werden aus dem indirekt adressierbaren Segment gelesen oder in dieses hineingeschrieben, das mit den adressierbaren Daten verbunden ist, welche in der Übertragung im Burstbetrieb übertragen werden. Bei einigen Ausführungsformen werden zwei Arten des Burstbetriebes unterstützt, von denen eine ECC-Daten umfaßt und eine nicht. Dies ermöglicht es, daß ein Typ eines Speichermoduls sowohl ECC- als auch Nicht-ECC-Systeme unterstützt und in einigen Fällen ECC für einige Daten und nicht für andere Daten in demselben System verwendet. Weitere Ausführungsformen sind beschrieben und beansprucht.

Claims (30)

  1. Speichervorrichtung, mit: einer Speicherzellenanordnung, die so angeordnet ist, daß sie Daten in mehreren adressierbaren Segmenten von Speicherzellen speichert, wobei jedem adressierbaren Segment wenigstens eine zusätzliche Speicherzelle zugewiesen ist, die, in wenigstens einem Burst-Lesemodus, von der Speicherzellenanordnung gelesen wird, wenn das zugeordnete adressierbare Segment gelesen wird; und einem Burst-Controller, um die Burst-Sequenzierung von Ausgangsdaten zu steuern, die aus einem ersten der adressierbaren Segmente für Speicherzellen in einem ersten Burst-Lesemodus gelesen werden, wobei der Burst-Lesemodus das Ausgeben von Daten aus dem ersten Segment über eine Vielzahl von Datenzyklen umfaßt, wobei während wenigstens einem aus der Vielzahl der Datenzyklen Daten von der wenigstens einen zusätzlichen Speicherzelle, die dem ersten Segment zugewiesen ist, ausgegeben werden.
  2. Speicherzelle nach Anspruch 1, bei der der Burst-Controller wenigstens zwischen dem ersten Burst-Lesemodus und einem zweiten Burst-Lesemodus konfigurierbar ist, wobei der zweite Burst-Lesemodus das Ausgeben von Daten aus dem ersten Segment über eine zweite Vielzahl von Datenzyklen, die kürzer ist als die erste Vielzahl von Datenzyklen, umfaßt, wobei aus der wenigstens einen zusätzlichen Speicherzelle während der zweiten Vielzahl der Datenzyklen keine Daten ausgegeben werden.
  3. Speichervorrichtung nach Anspruch 1, weiter mit einer Schreibschaltung, die mit der Speicherzellenanordnung gekoppelt ist, wobei der Burst-Controller weiter die Verteilung von Eingangsdaten, die von der Speichervorrichtung in einem ersten Burst-Schreibmodus empfangen worden sind, steuert, wobei der erste Burst-Schreibmodus umfaßt, daß die Speichervorrichtung Daten über eine dritte Vielzahl von Datenzyklen empfängt und der Burst-Controller der Schreibschaltung signalisiert, einen Teil der empfangenen Daten an adressierbare Orte innerhalb eines zweiten der adressierbaren Segmente von Speicherzellen und einen Teil der empfangenen Daten in die wenigstens eine zusätzliche Speicherzelle, die dem zweiten Segment zugeordnet ist, zu schreiben.
  4. Speichervorrichtung nach Anspruch 3, wobei der Burst-Controller weiter die Verteilung von Eingangsdaten steuert, die von der Speichervorrichtung in einem zweiten Burst-Schreibmodus empfangen worden sind, wobei der zweite Burst-Schreibmodus umfaßt, daß die Speichervorrichtung Daten für eine vierte Vielzahl von Datenzyklen, die kürzer als die dritte Vielzahl von Datenzyklen ist, empfängt, und der Burst-Controller der Schreibschaltung signalisiert, die empfangenen Daten an adressierbare Orte innerhalb des zweiten Segmentes von Speicherzellen zu schreiben, ohne irgendwelche der empfangenen Daten in die wenigstens eine zusätzliche Speicherzelle zu schreiben, die dem zweiten Segment zugewiesen ist.
  5. Speichervorrichtung nach Anspruch 3, weiter mit einer Schreib-Maskierschaltung, die basierend auf einem externen Maskiersignal betreibbar ist, wobei in dem ersten Burst-Schreibmodus das externe Maskiersignal, wenn es zusammen mit dem Teil der empfangenen Daten, die in die wenigstens eine zusätzliche Speicherzelle geschrieben werden sollen, festgestellt ist, bewirkt, daß die Schreib-Maskierschaltung verhindert, daß die Schreibschaltung Daten in die wenigstens eine zusätzliche Speicherzelle schreibt.
  6. Speichervorrichtung nach Anspruch 3, bei der in dem ersten Burst-Schreibmodus der letzte Datenzyklus der dritten Vielzahl von Datenzyklen Daten enthält, die in die wenigstens eine zusätzliche Speicherzelle geschrieben werden sollen, die dem zweiten Segment zugewiesen ist.
  7. Speichervorrichtung nach Anspruch 1, bei der in dem ersten Burst-Lesemodus der Burst-Controller Daten von der wenigstens einer zusätzlichen Datenzelle in dem ersten Datenzyklus der ersten Vielzahl von Datenzyklen sequenziert.
  8. Speichervorrichtung nach Anspruch 7, bei dem der erste Burst-Lesemodus mehrere konfigurierbare Burstlängen aufweist.
  9. Speichermodul, mit: einer Schaltkarte, welche eine Vielzahl von Datenbusspuren aufweist, die einen N-Bit breiten Datenbus bilden; und wenigstens einer Speichervorrichtung, die an die Vielzahl der Datenbusspuren gekoppelt ist, wobei die wenigstens eine Speichervorrichtung eine Vielzahl indirekt adressierbarer Speicherorte hat, die in der Lage sind, Fehlerkorrekturcodedaten zu speichern, die Segmenten von adressierbaren Speicherorten zugewiesen sind; wobei das Speichermodul in einem ersten Burst-Lesemodus betreibbar ist, welcher das Ausgeben von Daten, die aus einem ersten der Segmente der adressierbaren Speicherorte gelesen worden sind, auf den N-Bit breiten Datenbus über eine Vielzahl von Datenzyklen umfaßt, wobei während wenigstens einem aus der ersten Vielzahl von Datenzyklen Daten von wenigstens einem der indirekt adressierbaren Speicherorte auf wenigstens eine der Datenbusspuren ausgegeben werden.
  10. Speichermodul nach Anspruch 9, wobei das Speichermodul auch in einem zweiten Burst-Lesemodus betreibbar ist, welcher das Ausgeben von Daten, die von dem ersten Segment der adressierbaren Speicherorte gelesen worden sind, auf den N-Bit breiten Datenbus über eine zweite Vielzahl von Datenzyklen, die kürzer ist als die erste Vielzahl von Datenzyklen ist, umfaßt, ohne daß Daten aus den indirekt adressierbaren Speicherorten ausgegeben werden.
  11. Speichermodul nach Anspruch 9, bei dem die wenigstens eine Speichervorrichtung eine Vielzahl von Speichervorrichtungen umfaßt, von denen jede mit einer entsprechenden Untermenge der Datenbusspuren, welche einen N-Bit breiten Datenbus bilden, verbunden ist, wobei jede Speichervorrichtung eine Vielzahl indirekt adressierba rer Speicherorte hat, die in der Lage sind, Fehlerkorrekturcodedaten zu speichern, welche Segmenten adressierbarer Speicherorte zugewiesen sind.
  12. Speichermodul nach Anspruch 9, das in zwei Burst-Schreibmodi betreibbar ist, wobei der erste Burst-Schreibmodus Burstdaten über den N-Bit breiten Datenbus über eine dritte Vielzahl von Datenzyklen empfängt, wobei der zweite Burst-Schreibmodus Burstdaten und Fehlerkorrekturcodedaten über den N-Bit breiten Datenbus über eine Vielzahl von Datenzyklen, die länger ist als die dritte Vielzahl von Datenzyklen, empfängt.
  13. Rechenvorrichtung, mit: einem Speichersystem, das eine Vielzahl von Speicherdatenbusleitungen aufweist, wobei das Speichersystem Fehlerkorrekturcodierung auf den Speicherdatenbusleitungen überträgt, um die Datenintegrität für wenigstens einige Vorrichtungsdaten sicherzustellen, die in dem Speichersystem gespeichert sind, wobei Fehlerkorrekturcodierdaten und Vorrichtungsdaten wenigstens einige der Speicherdatenbusleitungen zeitlich gemeinsam nutzen.
  14. Rechenvorrichtung nach Anspruch 13, weiter mit einem Prozessor, der an das Speichersystem gekoppelt ist.
  15. Rechenvorrichtung nach Anspruch 13, bei der das Speichersystem einen Speichercontroller, der mit den Speicherdatenbusleitungen gekoppelt ist, und wenigstens eine Speichervorrichtung, die mit den Speicherdatenbuslinien gekoppelt ist, umfaßt, wobei in wenigstens einem Burstmodus der Datenübertragung zwischen dem Speichercontroller und der wenigstens einen Speichervorrichtung die Burstlänge erhöht ist, um das zeitliche gemeinsame Nutzen der Speicherdatenbusleitungen von Fehlerkorrekturcodierdaten und Prozessordaten in einem gemeinsamen Burst zu ermöglichen.
  16. Rechenvorrichtung nach Anspruch 15, bei der in dem wenigstens einen Burstmodus die Fehlerkorrekturcodierdaten während eines ersten Datenzyklus des gemeinsamen Bursts übertragen werden.
  17. Rechenvorrichtung nach Anspruch 15, bei der die wenigstens eine Speichervorrichtung ein entfernbares Speichermodul aufweist, das auch in einem unterschiedlichen Speichersystem arbeiten kann, welches keine Fehlerkorrekturcodierung verwendet.
  18. Verfahren zum Betreiben eines Speichersystems, wobei das Verfahren aufweist: Übertragen eines Datenzyklus-Bursts derart, daß fehlergeschützte Daten und fehlerkorrekturcodierende Daten, die die fehlergeschützten Daten betreffen, zeitweilig auf denselben Datenbusleitungen multiplexiert werden; Empfangen des Datenzyklus-Bursts; und Demultiplexieren des Datenzyklus-Bursts, um die Fehlerkorrekturcodierdaten von den fehlergeschützten Daten zu trennen.
  19. Verfahren nach Anspruch 18, bei dem ein Datenzyklus der Fehlerkorrekturcodierung für jeweils acht Datenzyklen fehlergeschützter Daten übertragen wird.
  20. Verfahren nach Anspruch 18, bei dem der übertragende Datenzyklus-Burst von einem Rank der Speichervorrichtung empfangen wird, der wenigstens eine Speichervorrichtung aufweist, wobei der Rank der Speichervorrichtung die fehlergeschützten Daten in einem Adressensegment des Speichervorrichtungsranges sichert und die Fehlerkorrekturcodierdaten in einem indirekt adressierbaren Segment des Speichervorrichtungsranges sichert, wobei das indirekt adressierbare Segment des Ranks der Speichervorrichtung dem Rank der Speichervorrichtung mit dem adressierten Segment des Ranks der Speichervorrichtung zugewiesen wird.
  21. Verfahren nach Anspruch 20, bei dem ein Datenzyklus der Fehlerkorrekturcodierung für eine Anzahl von Datenzyklen kleiner als acht übertragen wird, wobei das Verfahren weiter das Maskieren eines Teiles der Daten, die während eines Datenzyklus für die Fehlerkorrekturcodierung übertragen werden, aufweist.
  22. Verfahren nach Anspruch 21, weiter aufweisend, daß das Rank der Speichervorrichtung aus der Adresse des adressierten Segments bestimmt, welcher Teil der Fehlerkorrekturcodierdaten zu maskieren ist.
  23. Verfahren nach Anspruch 21, das weiter aufweist, daß an der Vorrichtung, welche die Fehlerkorrekturcodierdaten an die im Speichervorrichtungsrang schickt, festgestellt wird, aus der Adresse des adressierten Segmentes, welcher Teil der Fehlerkorrekturcodierdaten zu maskieren ist, und entsprechende Maskensignale dem Rank der Speichervorrichtung bestätigt werden, während die Fehlerkorrekturcodierdaten übertragen werden.
  24. Verfahren nach Anspruch 18, bei dem der übertragende Datenzyklus-Burst von einem Rank mit Speichervorrichtungen übertragen wird, der wenigstens eine Speichervorrichtung aufweist, das weiter aufweist, daß die Vorrichtung, welche den Datenzyklus-Burst empfängt, die Fehlerkorrekturcodierdaten verwendet, um Fehler in den empfangenen fehlergeschützten Daten zu erfassen und/oder zu korrigieren.
  25. Verfahren nach Anspruch 18, das weiter das Auswählen eines Datenburst-Modus mit zeitweilig multiplexierten Fehlerkorrekturcodierdaten und fehlergeschützten Daten aus unter wenigstens zwei Datenburst-Modi aufweist, wobei wenigstens ein weiterer der Datenburst-Modi dieselbe Adressierung verwendet, jedoch Daten ohne das zeitliche Multiplexieren von Fehlerkorrekturcodierdaten überträgt.
  26. Verfahren zum Betreiben einer Speichervorrichtung, wobei das Verfahren aufweist: Empfangen eines Befehls, um Daten in einem adressierbaren Segment der Speichervorrichtung zu lesen und zu senden; Lesen der Daten aus dem adressierbaren Segment und Lesen von Fehlerkorrekturcodierdaten aus wenigstens einem indirekt adressierbaren Speicherort, der dem adressierbaren Segment zugewiesen ist; und Senden von Daten in dem adressierbaren Segment in einem Vielzyklus-Datenburst, zeitweilig multiplexiert auf denselben Busleitungen mit den Fehlerkorrekturcodierdaten.
  27. Verfahren nach Anspruch 26, bei dem, ob Fehlerkorrekturcodierdaten zeitweilig multiplexiert werden, bedingungsmäßig abhängig von dem Typ des Burstmodus ist, der aus wenigstens zwei Burstmodi ausgewählt ist, wobei wenigstens einer von diesen die Fehlerkorrekturcodierdaten nicht zeitlich multiplexiert.
  28. Verfahren nach Anspruch 25, das weiter aufweist: Empfangen eines zweiten Befehls, um Daten in dem adressierbaren Segment der Speichervorrichtung zu empfangen und zu speichern; Empfangen von Daten für das adressierbare Segment in einem Vielzyklus-Datenburst, zeitlich auf demselben Datenbus mit Fehlerkorrekturcodierdaten multiplexiert; und Schreiben der empfangenen Daten in das adressierbare Segment und Schreiben der empfangenen Fehlerkorrekturcodierdaten in wenigstens einen indirekt adressierbaren Speicherort, der dem adressierbaren Segment zugewiesen ist.
  29. Verfahren zum Betreiben eines Speichercontrollers, wobei das Verfahren aufweist: Senden eines Befehles an eine Speichervorrichtung, wobei der Befehl die Speichervorrichtung instruiert, Daten in einem adressierbaren Segment der Speichervorrichtung zu lesen: Empfangen, von der Speichervorrichtung in einem Mehrzyklus-Datenburst, Daten von dem adressierbaren Segment, zeitlich auf demselben Bus mit Fehlerkorrekturcodierdaten multiplexiert, die dem adressierbaren Segment zugewiesen sind; und Demultiplexieren der Daten von dem adressierbaren Segment und zugewiesenen Fehlerkorrekturcodierdaten.
  30. Verfahren nach Anspruch 28, bei dem für wenigstens einige Größen von Vielzyklus-Datenstößen ein Teil der empfangenen Fehlerkorrekturcodierdaten von dem Speichercontroller ignoriert wird.
DE112005002390T 2004-11-22 2005-11-17 Burst-Betrieb für die Speichertransaktion und Speicherkomponenten, welche die zeitweilig multiplexierte Fehlerkorrekturcodierung unterstützen Ceased DE112005002390T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US10/995,850 US7464241B2 (en) 2004-11-22 2004-11-22 Memory transaction burst operation and memory components supporting temporally multiplexed error correction coding
US10/995,850 2004-11-22
PCT/US2005/042153 WO2006057963A2 (en) 2004-11-22 2005-11-17 Memory transaction burst operation and memory components supporting temporally multiplexed error correction coding

Publications (1)

Publication Number Publication Date
DE112005002390T5 true DE112005002390T5 (de) 2007-10-11

Family

ID=36203765

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112005002390T Ceased DE112005002390T5 (de) 2004-11-22 2005-11-17 Burst-Betrieb für die Speichertransaktion und Speicherkomponenten, welche die zeitweilig multiplexierte Fehlerkorrekturcodierung unterstützen

Country Status (8)

Country Link
US (1) US7464241B2 (de)
JP (2) JP4777358B2 (de)
KR (1) KR100884096B1 (de)
CN (1) CN101036131B (de)
DE (1) DE112005002390T5 (de)
GB (1) GB2433624B (de)
TW (1) TWI304591B (de)
WO (1) WO2006057963A2 (de)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI254848B (en) * 2004-11-16 2006-05-11 Via Tech Inc Method and related apparatus for performing error checking-correcting
JP4740766B2 (ja) * 2006-02-27 2011-08-03 富士通株式会社 データ受信装置、データ送受信システム、データ送受信システムの制御方法及びデータ受信装置の制御プログラム
US7620875B1 (en) * 2006-03-07 2009-11-17 Xilinx, Inc. Error correction code memory system with a small footprint and byte write operation
US7533191B2 (en) * 2006-06-30 2009-05-12 Intel Corporation Methods and arrangements for devices to share a common address on a bus
US7844888B2 (en) * 2006-09-29 2010-11-30 Qimonda Ag Electronic device, method for operating an electronic device, memory circuit and method of operating a memory circuit
KR100845529B1 (ko) * 2007-01-03 2008-07-10 삼성전자주식회사 플래시 메모리 장치의 이씨씨 제어기 및 그것을 포함한메모리 시스템
US7568137B1 (en) * 2007-03-27 2009-07-28 Xilinx, Inc. Method and apparatus for a clock and data recovery circuit
US20110016278A1 (en) * 2008-03-31 2011-01-20 Frederick Ware Independent Threading of Memory Devices Disposed on Memory Modules
US7814300B2 (en) 2008-04-30 2010-10-12 Freescale Semiconductor, Inc. Configurable pipeline to process an operation at alternate pipeline stages depending on ECC/parity protection mode of memory access
US20090276587A1 (en) * 2008-04-30 2009-11-05 Moyer William C Selectively performing a single cycle write operation with ecc in a data processing system
US8521979B2 (en) 2008-05-29 2013-08-27 Micron Technology, Inc. Memory systems and methods for controlling the timing of receiving read data
US7979757B2 (en) 2008-06-03 2011-07-12 Micron Technology, Inc. Method and apparatus for testing high capacity/high bandwidth memory devices
US8756486B2 (en) * 2008-07-02 2014-06-17 Micron Technology, Inc. Method and apparatus for repairing high capacity/high bandwidth memory devices
US7855931B2 (en) 2008-07-21 2010-12-21 Micron Technology, Inc. Memory system and method using stacked memory device dice, and system using the memory system
US8289760B2 (en) 2008-07-02 2012-10-16 Micron Technology, Inc. Multi-mode memory device and method having stacked memory dice, a logic die and a command processing circuit and operating in direct and indirect modes
US8127204B2 (en) 2008-08-15 2012-02-28 Micron Technology, Inc. Memory system and method using a memory device die stacked with a logic die using data encoding, and system using the memory system
WO2011031260A1 (en) * 2009-09-10 2011-03-17 Hewlett-Packard Development Company, L.P. Memory subsystem having a first portion to store data with error correction code information and a second portion to store data without error correction code information
WO2012073287A1 (en) 2010-12-01 2012-06-07 Hitachi, Ltd. Storage control apparatus and storage control method
US8400808B2 (en) 2010-12-16 2013-03-19 Micron Technology, Inc. Phase interpolators and push-pull buffers
CN102521180B (zh) * 2011-12-02 2014-10-22 百利通科技(扬州)有限公司 一种多通道实时直读存储器结构
US9612901B2 (en) * 2012-03-30 2017-04-04 Intel Corporation Memories utilizing hybrid error correcting code techniques
US9323608B2 (en) 2012-06-07 2016-04-26 Micron Technology, Inc. Integrity of a data bus
US9009570B2 (en) 2012-06-07 2015-04-14 Micron Technology, Inc. Integrity of an address bus
US8996960B1 (en) * 2012-06-26 2015-03-31 Inphi Corporation Vertical error correction code for DRAM memory
KR102002925B1 (ko) * 2012-11-01 2019-07-23 삼성전자주식회사 메모리 모듈, 그것을 포함하는 메모리 시스템, 그것의 구동 방법
US9064606B2 (en) * 2012-12-20 2015-06-23 Advanced Micro Devices, Inc. Memory interface supporting both ECC and per-byte data masking
US9569352B2 (en) 2013-03-14 2017-02-14 Sandisk Technologies Llc Storage module and method for regulating garbage collection operations based on write activity of a host
WO2015016883A1 (en) * 2013-07-31 2015-02-05 Hewlett-Packard Development Company, L.P. Off-memory-module ecc-supplemental memory system
US9171597B2 (en) 2013-08-30 2015-10-27 Micron Technology, Inc. Apparatuses and methods for providing strobe signals to memories
US20160239211A1 (en) * 2013-09-30 2016-08-18 Hewlett Packard Enterprise Development Lp Programming memory controllers to allow performance of active memory operations
KR20150090414A (ko) * 2014-01-29 2015-08-06 에스케이하이닉스 주식회사 에러 정정 동작을 수행하는 반도체 장치
JP6385077B2 (ja) 2014-03-05 2018-09-05 ルネサスエレクトロニクス株式会社 半導体装置
US9471254B2 (en) * 2014-04-16 2016-10-18 Sandisk Technologies Llc Storage module and method for adaptive burst mode
US9710198B2 (en) 2014-05-07 2017-07-18 Sandisk Technologies Llc Method and computing device for controlling bandwidth of swap operations
US9633233B2 (en) 2014-05-07 2017-04-25 Sandisk Technologies Llc Method and computing device for encrypting data stored in swap memory
US9665296B2 (en) 2014-05-07 2017-05-30 Sandisk Technologies Llc Method and computing device for using both volatile memory and non-volatile swap memory to pre-load a plurality of applications
US9928169B2 (en) 2014-05-07 2018-03-27 Sandisk Technologies Llc Method and system for improving swap performance
WO2016098249A1 (ja) * 2014-12-19 2016-06-23 三菱電機株式会社 情報処理装置およびfpgaコンフィギュレーション方法
US9450609B1 (en) * 2015-03-31 2016-09-20 Altera Corporation Methods and apparatus for embedding an error correction code in memory cells
US10061645B2 (en) * 2015-06-30 2018-08-28 Qualcomm Incorporated Memory array and link error correction in a low power memory sub-system
DE102016123247B4 (de) 2015-12-01 2024-03-21 Nvidia Corporation Systeme und verfahren zur speicherverwaltung
US9891986B2 (en) * 2016-01-26 2018-02-13 Nxp Usa, Inc. System and method for performing bus transactions
US9990158B2 (en) 2016-06-22 2018-06-05 Sandisk Technologies Llc Storage system and method for burst mode management using transfer RAM
US10216657B2 (en) 2016-09-30 2019-02-26 Intel Corporation Extended platform with additional memory module slots per CPU socket and configured for increased performance
US9818457B1 (en) 2016-09-30 2017-11-14 Intel Corporation Extended platform with additional memory module slots per CPU socket
CN108255633B (zh) * 2016-12-28 2021-07-30 旺宏电子股份有限公司 存储控制方法、存储装置
CN108511030B (zh) * 2017-02-24 2020-12-18 瑞昱半导体股份有限公司 记忆体测试方法
KR102362229B1 (ko) 2017-08-10 2022-02-11 삼성전자주식회사 메모리 컨트롤러, 메모리 시스템 및 메모리 컨트롤러를 포함하는 어플리케이션 프로세서
KR102433098B1 (ko) 2018-02-26 2022-08-18 에스케이하이닉스 주식회사 어드레스 생성회로, 어드레스 및 커맨드 생성회로 및 반도체 시스템
US10636476B2 (en) * 2018-11-01 2020-04-28 Intel Corporation Row hammer mitigation with randomization of target row selection
US11403172B2 (en) * 2019-08-05 2022-08-02 Cypress Semiconductor Corporation Methods for error detection and correction and corresponding systems and devices for the same
US11416333B2 (en) * 2019-08-22 2022-08-16 Micron Technology, Inc. Semiconductor device with power-saving mode and associated methods and systems
WO2021035811A1 (zh) * 2019-08-27 2021-03-04 江苏华存电子科技有限公司 一种可变动码率与更正能力内存控制方法
CN111128262B (zh) * 2019-12-17 2021-02-23 海光信息技术股份有限公司 存储器电路、电路控制方法、集成电路器件及处理器
CN115016981B (zh) * 2022-06-16 2023-05-09 海光信息技术股份有限公司 存储区域的设置方法、数据读取、写入方法及相关装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5987627A (en) * 1992-05-13 1999-11-16 Rawlings, Iii; Joseph H. Methods and apparatus for high-speed mass storage access in a computer system
JPH1173737A (ja) * 1997-08-29 1999-03-16 Sony Corp 記録装置及び方法、再生装置及び方法並びに記録媒体
JP3307579B2 (ja) * 1998-01-28 2002-07-24 インターナショナル・ビジネス・マシーンズ・コーポレーション データ記憶システム
JP3230485B2 (ja) * 1998-04-09 2001-11-19 日本電気株式会社 1チップマイクロコンピュータ
US20020029365A1 (en) * 1998-12-17 2002-03-07 Yoshimichi Sato Information processing apparatus
US6212631B1 (en) * 1999-01-15 2001-04-03 Dell Usa, L.P. Method and apparatus for automatic L2 cache ECC configuration in a computer system
US6941505B2 (en) * 2000-09-12 2005-09-06 Hitachi, Ltd. Data processing system and data processing method
US6687767B2 (en) 2001-10-25 2004-02-03 Sun Microsystems, Inc. Efficient direct memory access transfer of data and check information to and from a data storage device
US7117421B1 (en) * 2002-05-31 2006-10-03 Nvidia Corporation Transparent error correction code memory system and method
US7447950B2 (en) * 2003-05-20 2008-11-04 Nec Electronics Corporation Memory device and memory error correction method
US7272774B2 (en) * 2004-04-16 2007-09-18 Kingston Technology Corp. Extender card for testing error-correction-code (ECC) storage area on memory modules
US7322002B2 (en) * 2004-05-26 2008-01-22 Micron Technology, Inc. Erasure pointer error correction

Also Published As

Publication number Publication date
WO2006057963A3 (en) 2006-07-20
JP5399442B2 (ja) 2014-01-29
KR100884096B1 (ko) 2009-02-19
JP2011243206A (ja) 2011-12-01
KR20070051930A (ko) 2007-05-18
GB2433624B (en) 2008-10-15
US20060123320A1 (en) 2006-06-08
CN101036131A (zh) 2007-09-12
TWI304591B (en) 2008-12-21
TW200627469A (en) 2006-08-01
CN101036131B (zh) 2011-01-26
JP4777358B2 (ja) 2011-09-21
US7464241B2 (en) 2008-12-09
GB2433624A (en) 2007-06-27
WO2006057963A2 (en) 2006-06-01
GB0706172D0 (en) 2007-05-09
JP2008521160A (ja) 2008-06-19

Similar Documents

Publication Publication Date Title
DE112005002390T5 (de) Burst-Betrieb für die Speichertransaktion und Speicherkomponenten, welche die zeitweilig multiplexierte Fehlerkorrekturcodierung unterstützen
DE102006002526B4 (de) Steuervorrichtung für eine Solid-State-Disk und Verfahren zum Betreiben derselben
DE69535672T2 (de) Synchrone NAND DRAM Architektur
DE102007050864B4 (de) Verfahren und Vorrichtung zum Kommunizieren von Befehls- und Adresssignalen
DE3334556C2 (de) Dynamischer RAM-Speicher mit Adressen-Multiplexbetrieb
DE69027030T2 (de) Eine fehlertolerante datenspeicherungsanordnung
DE3115541C2 (de)
DE102006062383B4 (de) Halbleiterspeicherelement und System für ein Halbleiterspeicherelement
DE2617408A1 (de) Datenverarbeitungsgeraet
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
DE60012081T2 (de) Nichtflüchtige Halbleiterspeicheranordnung, die eine Datenleseoperation während einer Datenschreib/lösch-Operation erlaubt
DE2948159A1 (de) Integrierter speicherbaustein mit waehlbaren betriebsfunktionen
DE112005002336T5 (de) Befehl, der unterschiedliche Operationen in unterschiedlichen Chips steuert
DE102006050233A1 (de) Speichermodul, Speichersteuereinheit, Speichersystem und Verfahren zum Steuern eines Speichersystems
DE10309919A1 (de) Pufferbaustein und Verfahren zum Ansteuern von einer oder mehreren Speicheranordnungen
EP0974977A2 (de) Integrierter Speicher
DE102010030742A1 (de) Phasenwechselspeicher in einem doppelreihigen Speichermodul
DE102006062024A1 (de) Halbleiterspeichervorrichtung
DE112019002100T5 (de) Zugriff auf dram durch wiederverwendung von pins
DE102004060348A1 (de) Halbleiterspeichervorrichtung und Gehäuse dazu, und Speicherkarte mit Verwendung derselben
DE69029815T2 (de) Zentralisierte referenz- und änderungstabelle für eine virtuelle speicheranordnung
DE19738893A1 (de) Schaltsignalgenerator und diesen verwendendes, synchrones SRAM
US5343427A (en) Data transfer device
DE102004050037B4 (de) Speicherbauelement, Speichersystem und Betriebsmodussetzverfahren
DE10002130A1 (de) Verfahren und Vorrichtung zum wechselweisen Betreiben eines Schreib-Lese-Speichers im Ein-Speicher-Betriebsmodus und im verschränkten Mehr-Speicher-Betriebsmodus

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8125 Change of the main classification

Ipc: G06F 12/00 AFI20051117BHDE

R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R002 Refusal decision in examination/registration proceedings
R006 Appeal filed
R008 Case pending at federal patent court
R003 Refusal decision now final
R011 All appeals rejected, refused or otherwise settled