DE102004056214A1 - Speicherpuffer - Google Patents

Speicherpuffer Download PDF

Info

Publication number
DE102004056214A1
DE102004056214A1 DE102004056214A DE102004056214A DE102004056214A1 DE 102004056214 A1 DE102004056214 A1 DE 102004056214A1 DE 102004056214 A DE102004056214 A DE 102004056214A DE 102004056214 A DE102004056214 A DE 102004056214A DE 102004056214 A1 DE102004056214 A1 DE 102004056214A1
Authority
DE
Germany
Prior art keywords
memory
redundancy
buffer
memory cell
bus system
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
DE102004056214A
Other languages
English (en)
Other versions
DE102004056214B4 (de
Inventor
Thorsten Bucksch
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.)
Qimonda AG
Original Assignee
Infineon Technologies 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 Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to DE102004056214A priority Critical patent/DE102004056214B4/de
Priority to US11/283,072 priority patent/US20060126408A1/en
Publication of DE102004056214A1 publication Critical patent/DE102004056214A1/de
Application granted granted Critical
Publication of DE102004056214B4 publication Critical patent/DE102004056214B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/44Indication or identification of errors, e.g. for repair
    • 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/1201Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising I/O circuitry
    • 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/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/26Accessing multiple arrays
    • 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/48Arrangements in static stores specially adapted for testing by means external to the store, e.g. using direct memory access [DMA] or using auxiliary access paths
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/84Masking faults in memories by using spares or by reconfiguring using programmable devices with improved access time or stability
    • G11C29/846Masking faults in memories by using spares or by reconfiguring using programmable devices with improved access time or stability by choosing redundant lines at an output stage
    • 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1084Data input buffers, e.g. comprising level conversion circuits, circuits for adapting load
    • 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/109Control signal input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • 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
    • G11C2029/1208Error catch memory
    • 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

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

Die Erfindung betrifft einen Speicherpuffer, ein Verfahren zum Betrieb des Speicherpuffers, ein Speichermodul mit einem Speicherpuffer, ein Testverfahren für das Speichermodul und ein Betriebsverfahren für das Speichermodul. Der Speicherpuffer weist mindestens eine Speicherlogikeinheit auf, die mit mindestens einem speicherseitigen Bussystem und mit mindestens einem hostseitigen Bussystem verbunden ist, und dadurch gekennzeichnet ist, dass weiterhin mindestens ein Redundanzspeicher vorhanden ist, so dass ein Vergleich mindestens einer Speicherzellenadresse der Speicherlogikeinheit mit mindestens einer weiteren Speicherzellenadresse durchführbar ist, und aufgrund des Vergleichs eine Übertragung mindestens eines Bussignals zwischen dem speicherseitigen Bussystem und dem Redundanzspeicher umschaltbar ist.

Description

  • Die Erfindung betrifft einen Speicherpuffer, ein Verfahren zum Betrieb des Speicherpuffers, ein Speichermodul mit einem Speicherpuffer, ein Testverfahren für das Speichermodul und ein Betriebsverfahren für das Speichermodul.
  • Halbleiter-Bauelemente, z.B. entsprechende, integrierte (analoge bzw. digitale) Rechenschaltkreise, Halbleiter-Speicherbauelemente wie z.B. Funktionsspeicher-Bauelemente (PLAs; PALs, etc.) und Tabellenspeicher-Bauelemente (z.B. ROMs oder RAMs, insbesondere SRAMs und DRAMs), etc. werden im Verlauf des Herstellprozesses umfangreichen Tests unterzogen.
  • Zur gemeinsamen Herstellung von jeweils einer Vielzahl von (i.A. identischen) Halbleiter-Bauelementen wird jeweils ein sog. Wafer (d.h. eine dünne, aus einkristallinem Silizium bestehende Scheibe) verwendet. Der Wafer wird entsprechend bearbeitet (z.B. nacheinander einer Vielzahl von Beschichtungs-Belichtungs-, Ätz-, Diffusions-, und Implantations-Prozess-Schritten, etc. unterzogen), und daraufhin z.B. zersägt (oder z.B. geritzt, und gebrochen), so dass dann die einzelnen Bauelemente zur Verfügung stehen.
  • Bei der Herstellung von Halbleiter-Bauelementen (z.B. von DRAMs (Dynamic Random Access Memories bzw. dynamische Schreib-Lese-Speicher), insbesondere von DDR-DRAMs (Double Data Rate – DRAMs bzw. DRAMs mit doppelter Datenrate)) können – noch bevor am Wafer sämtliche gewünschten, o.g. Bearbeitungsschritte durchgeführt wurden – (d.h. bereits in einem halbfertigen Zustand der Halbleiter-Bauelemente) an einer oder mehreren Test-Stationen mit Hilfe eines oder mehrerer Testgeräte die (noch auf dem Wafer befindlichen, halbfertigen) Bauelemente entsprechenden Testverfahren unterzogen werden (z.B. sog. Kerf-Messungen am Waferritzrahmen).
  • Nach der Fertigstellung der Halbleiter-Bauelemente (d.h. nach der Durchführung sämtlicher der o.g. Wafer-Bearbeitungsschritte) werden die Halbleiter-Bauelemente weiteren Testverfahren unterzogen; beispielsweise können mit Hilfe entsprechender (weiterer) Testgeräte die – noch auf dem Wafer befindlichen, fertiggestellten – Bauelemente entsprechend getestet werden („Scheibentests").
  • Auf entsprechende Weise können Tests (an entsprechenden weiteren Test-Stationen, und unter Verwendung entsprechender, weiterer Testgeräte) z.B. nach dem Einbau der Halbleiter-Bauelemente in die entsprechenden Halbleiter-Bauelement-Gehäuse durchgeführt werden, und/oder z.B. nach dem Einbau der Halbleiter-Bauelement-Gehäuse (samt den darin jeweils eingebauten Halbleiter-Bauelementen) in entsprechende elektronische Module (sog. „Modultests").
  • Beim Testen von Halbleiter-Bauelementen können als Testverfahren (z.B. bei den o.g. Scheibentests, Modultests, etc.) jeweils z.B. sog. „DC-Test", und/oder z.B. sog. „AC-Tests" eingesetzt werden.
  • Bei einem DC-Test kann z.B. an einen entsprechenden Anschluß eines zu testenden Halbleiter-Bauelements eine Spannung (oder Strom) bestimmter – insbesondere gleichbleibender – Höhe angelegt werden, und dann die Höhe von – sich ergebenden – Strömen (bzw. Spannungen) gemessen werden – insbesondere überprüft werden, ob diese Ströme (bzw. Spannungen) innerhalb vorbestimmter, gewünschter Grenzwerte liegen.
  • Demgegenüber können bei einem AC-Test an entsprechende Anschlüsse eines Halbleiter-Bauelements beispielsweise – in der Höhe wechselnde – Spannungen (oder Ströme) angelegt werden, insbesondere entsprechende Test-Muster-Signale, mit deren Hilfe am jeweiligen Halbleiter-Bauelement entsprechende Funktionstest durchgeführt werden können.
  • Mit Hilfe der o.g. Testverfahren können defekte Halbleiter-Bauelemente bzw. -Module, d. h. beispielsweise solche mit defekten Speicherzellen, identifiziert, und dann aussortiert (oder teilweise auch repariert) werden, und/oder es können – entsprechend den erzielten Test-Ergebnissen – die bei der Herstellung der Bauelemente jeweils verwendeten Prozess-Parameter entsprechend modifiziert bzw. optimal eingestellt werden, etc., etc.
  • Bei einer Vielzahl von Anwendungen – z.B. bei Server- oder Workstationrechnern, etc. – können Speichermodule mit vorgeschalteten Speicherpuffern („Memory Buffer") eingesetzt werden, z.B. sog. „buffered DIMMs".
  • Derartige Speichermodule weisen i.A. ein oder mehrere Halbleiter-Speicherbauelemente, insbesondere DRAMs (z.B. DDR-DRAMs) auf, sowie ein oder mehrere – den Halbleiter-Speicherbauelementen vorgeschaltete – Speicherpuffer (z.B. entsprechende, von JEDEC standardisierte DDR-DRAM-Speicherpuffer).
  • Die Speicherpuffer können z.B. auf derselben Platine angeordnet sein wie die DRAMs.
  • Die Speichermodule sind – insbesondere unter Zwischenschaltung eines entsprechenden (z.B. extern vom jeweiligen Speichermodul angeordneten) Memory Controllers – mit einem oder mehreren Mikro-Prozessoren des jeweiligen Server- oder Workstationrechners, etc. verbunden.
  • Bei „teilweise" gepufferten Speichermodulen können die – z.B. vom Memory Controller, oder vom jeweiligen Prozessor ausgegebenen – Adress- und Steuersignale von entsprechenden Speicherpuffern (kurz) zwischengespeichert werden, und entsprechend ähnliche Adress- und Steuersignale – auf zeitlich koordinierte, ggf. ge- oder de-multiplexte Weise – an die Speicherbauelemente, z.B. DRAMs, weitergeleitet werden.
  • Demgegenüber können die – vom Memory Controller, bzw. vom jeweiligen Prozessor ausgegebenen – (Nutz-)Datensignale direkt, d.h, ohne Zwischenspeicherung durch einen entsprechenden Speicherpuffer an die Halbleiter-Bauelemente weitergeleitet werden (und – umgekehrt – auch die von den Halbleiter-Bauelementen ausgegebenen (Nutz-)Datensignale direkt – ohne Zwischenschaltung eines entsprechenden Speicherpuffers – an den Memory Controller, bzw. den jeweiligen Prozessor).
  • Demgegenüber werden bei voll gepufferten („fully buffered") Speichermodulen sowohl die zwischen dem Memory Controller, bzw. dem jeweiligen Prozessor, und den Halbleiter-Bauelementen ausgetauschten Adress- und Steuersignale, als auch die entsprechenden (Nutz-)Datensignale von entsprechenden Speicherpuffern zwischengespeichert, und erst dann an die Halbleiter-Bauelemente bzw. den Memory Controller oder den jeweiligen Prozessor weitergeleitet.
  • Zur Speicherung der bei den o.g. Testverfahren (oder beliebigen anderen Testverfahren) erzeugten Daten, insbesondere entsprechender Test-(Ergebnis-)Daten können auf den jeweils getesteten Halbleiter-Bauelementen (z.B. den o.g. analogen bzw. digitalen Rechenschaltkreisen, den o.g. Halbleiter-Speicherbauelementen (PLAs, PALs, ROMs, RAMs, insbesondere SRAMs und DRAMs, z.B. DDR-DRAMs, etc.) entsprechende, spezielle Test-Daten-Register vorgesehen sein.
  • Aber trotz des Testens der Halbleiter-Bauelemente (DRAMs etc.) bzw. der Module können noch nicht erfasste Fehlfunktionen auftreten, z. B. durch nicht ausreichendes Testen der Komponenten, Fehler oder Qualitätsverlust beim Zusammenbau oder durch Alterung etc. Dies kann im schlimmsten Fall zu einem Ausfall eines Rechnersystems führen.
  • Aber auch im Produktionsprozess ist es aus Qualitätsgrünen nachteilig, als fehlerhaft erkannte Halbleiter-Bauelemente auszutauschen; oft wird dann das ganze Speichermodul verworfen.
  • Es ist die Aufgabe der Erfindung, eine einfache und flexible Möglichkeit zur Korrektur von Fehlfunktionen eines Halbleiter-Bauelements, bzw. einer entsprechenden Speicherzelle, auch nach einem Zusammenbau, bereitzustellen.
  • Sie erreicht dieses und weitere Ziele durch die Gegenstände der Ansprüche 1, 9, 11, 13 und 15. Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben.
  • Gemäß eines ersten Aspekts der Erfindung wird ein Speicherpuffer zur Verfügung gestellt, der mindestens eine Speicherlogikeinheit aufweist, die mit mindestens einem speicherseitigen Bussystem und mit mindestens einem hostseitigen Bussystem verbunden ist.
  • Dabei bedeutet hostseitig, dass über dieses Bussystem Bussignale zwischen einem den Speicherbuffer nutzenden Host – z.B. einem Memory Controller oder einem jeweiligen Prozessor – und dem Speicherbuffer ausgetauscht werden können. Bei „teilweise" gepufferten Speichermodulen sind dies typischerweise Adress- und Steuersignale, bei „voll gepufferten Speichermodulen auch die Datensignale. Entsprechend bedeutet speicherseitig, dass über dieses Bussystem Bussignale zwischen dem Speicherbuffer und mindestens einem Halbleiter-Bauelement (z. B. einem DRAM) ausgetauscht werden können.
  • Mittels der Speicherlogikeinheit können die Bussignale (kurz) zwischengespeichert werden, und auf zeitlich koordinierte, ggf. ge- oder de-multiplexte Weise, über das speicherseitige Bussystem an die Halbleiter-Bauelemente, z.B. DRAMs, weitergeleitet werden.
  • Der Speicherpuffer ist weiterhin so ausgerüstet, dass weiterhin mindestens ein Redundanzspeicher vorhanden ist. Die im Redundanzspeicher vorhandenen Speicherzellen ersetzen im Betrieb auf den Halbleiter-Bauelementen als fehlerhaft erkannte Speicherzellen. Dadurch müssen als fehlerhaft erkannte Halbleiter-Bauelemente nicht mehr ausgewechselt werden, wobei natürlich die Zahl der fehlerhaften Speicherzellen die Größe des Redundanzspeichers nicht überschreiten sollte. Insbesondere in diesem Fall können zusätzlich andere Korrekturmechanismen greifen.
  • Durch einen Vergleich mindestens einer in der Speicherlogikeinheit gespeicherten oder zu ihr gesandten -physikalischen oder logischen – Speicherzellenadresse mit mindestens einer weiteren Speicherzellenadresse ist dann eine Übertragung mindestens eines Bussignals zwischen dem speicherseitigen Bussystem und Redundanzspeicher umschaltbar. Typischerweise, aber nicht darauf beschränkt, kann dies so geschehen, dass ein hostseitiges Bussignal im Speicherpuffer, insbesondere zur Speicherlogikeinheit, eingeht. Das (ein- oder mehrzyklische) Bussignal umfasst auch ein Adresssignal, das eine Speicherzellenadresse, üblicherweise einer Speicherzelle eines Halbleiter-Bauelements, enthält. Diese Speicherzellenadresse wird dann mit (mindestens) einer weiteren Speicherzellenadresse verglichen, vorteilhafterweise die fehlerhafte Speicherzellenadresse selbst. In diesem vorteilhaften Fall werden also – meist hostseitig eingehende – in Adresssignalen vorhandene Speicherzellenadressen mit einer „Liste" fehlerhafter Speicherzellen verglichen.
  • Eine Information über Speicherzellenadressen kann neben der eigentlichen Speicherzellenadresse auch weitere Angaben wie ein „Fail"-Flag und/oder die Speicherzellenadresse der die Speicherzelle des Halbleiter-Bauleiterelements zu ersetzenden Speicherzelle des Redundanzspeichers o. ä. enthalten.
  • Der Speicherbuffer ist so ausgestaltet, dass er aufgrund des Vergleichs eine Übertragung mindestens eines Bussignals zwischen dem speicherseitigen Bussystem und dem Redundanzspei cher umschalten kann. Er kann also das über das speicherseitige Bussystem, z. B. zur Ansteuerung einer adressierten Speicherzelle eines Halbleiter-Bauelements vorgesehene, speicherseitige Bussignal zum Redundanzspeicher bzw. zu einer Speicherzelle des Redundanzspeichers, umschalten bzw. umleiten. Dadurch ist statt der fehlerhaften Speicherzelle des Halbleiter-Bauelements eine Speicherzelle des Redundanzspeichers nutzbar.
  • Dadurch kann ein Host das Speichermodul, auf dem der Speicherpuffer sitzt, einfach ansteuern. Auch ist es möglich, z. B. durch neue Tests, den Speicherpuffer neu zu konfigurieren; es können also – auch schon im eingebauten Zustand – mehrere Speicher- bzw. Modultests durchgeführt werden, deren Ergebnis (nämlich fehlerhafte Speicherzellenadressen) eine neue „Liste" von weiteren Speicherzellenadressen ergibt, ggf. verknüpft mit entsprechenden Adressen von Redundanzspeicher-Zellen.
  • Vorteilhafterweise weist der Speicherpuffer mindestens ein zusätzliches Adressregister zur Speicherung mindestens einer der weiteren Speicherzellenadressen auf.
  • Es ist weiterhin günstig, wenn das zusätzliche Adressregister über einen Konfigurationsbus konfigurierbar, insbesondere mit Speicherzellenadressen (bzw. mit diesen enthaltende Informationen) befüllbar, ist. Der Konfigurationsbus kann z. B. zu einem nichtflüchtigen Speicher, insbesondere einem auf dem Speichermodul befindlichen PROM, z. B. einem EEPROM, führen. Der nicht-flüchtige Speicher kann beispielsweise die Testinformationen eines neuen Speichertests beinhalten, wie z. B. eine (ggf. aktualisierte) Liste fehlerhafter Speicherzellenadressen und – bei Bedarf – damit verknüpfte entsprechende Adressen von Redundanzspeicher-Zellen.
  • Besonders günstig ist es, wenn der Speicherpuffer einen Redundanz-Adressdecoder zur Durchführung des Vergleichs der Speicherzellenadressen, also zwischen einer in der Speicherlogikeinheit gespeicherten oder zu ihr gesandten Speicherzellenadresse und mindestens einer weiteren Speicherzellenadresse, aufweist.
  • Auch ist es günstig, wenn die Speicherlogikeinheit mit dem Redundanzspeicher über ein Redundanz-Bussystem verbunden ist, so dass aufgrund des Vergleichs der Speicherzellenadressen eine Übertragung mindestens eines Bussignals zwischen dem speicherseitigen Bussystem und dem Redundanz-Bussystem umschaltbar ist.
  • Vorteilhaft ist es insbesondere, wenn das Bussignal zwischen dem speicherseitigen Bussystem und dem Redundanz-Bussystem mittels eines Umschalters, insbesondere eines Multiplexers, umschaltbar ist. Dabei ist es günstig, wenn der Umschalter über eine Datenverbindung mit dem Redundanz-Adressdecoder verbunden ist, so dass vom Redundanz-Adressdecoder zeitnah ein Signal über eine als fehlerhaft identifizierte Speicherzelle zum Umschalter weitergegeben werden kann, welcher dann das Bussignal auf das Redundanz-Bussystem geben kann. Beispielsweise kann ein in die Speicherlogikeinheit eingehendes, zu einem Bussignal gehöriges, Adresssignal extrahiert und an den Redundanz-Adressdecoder weitergeleitet werden. Dort wird die Adresse mit einer im Redundanzspeicher gespeicherten Adresse verglichen. Die im Redundanzspeicher gespeicherte Adresse ist Teil eines Informationsstrings, der außerdem eine „Ersatz"- Redundanzspeicher-Adresse aufweist. Bei Erkennung als fehlerhaft wird ein Signal an den Umschalter geleitet, das z. B. die Redundanzspeicher-Adresse und/oder die ursprüngliche in die Speicherlogikeinheit eingegangene Speicheradresse beinhaltet. Mittels des Umschalters kann z. B. im entsprechenden Bussignal die ursprüngliche – zu einem Halbleiter-Bauelement gehörige – Adresse gegen die Redundanzspeicher-Adresse ausgetauscht werden, so dass das Bussignal nun zum Redundanzspeicher geleitet wird und dort die entspre chende – logische oder physikalische – Speicherzelle anspricht.
  • Insbesondere günstig ist es, wenn der Redundanzspeicher SRAMs oder Registerzellen umfasst.
  • Weiterhin wird ein Verfahren zum Betrieb eines Speicherpuffers beansprucht, bei dem in der Speicherlogikeinheit – insbesondere den hostseitigen Adressbus – eingehende oder gespeicherte Speicherzellenadressen mit den, insbesondere im zusätzlichen Adressregister gespeicherten, weiteren Speicherzellenadressen verglichen werden, und abhängig vom Ausgang des Vergleichs mindestens ein Bussignal entweder über das speicherseitige Bussystem oder zum Redundanzspeicher geführt wird. Falls keine Informationen im zusätzlichen Adressregister vorliegen, kann z. B. durch Setzen eines „no fail"-Flags, der Adressenvergleich ausgesetzt werden.
  • Dieses Verfahren ist insbesondere günstig, wenn die im Redundanzspeicher gespeicherten weiteren Speicherzellenadressen fehlerhaften Speicherzellen entsprechen, und bei Übereinstimmung zwischen in der Speicherlogikeinheit eingehenden Speicherzellenadressen und im zusätzlichen Adressregister gespeicherten Speicherzellenadressen ein entsprechendes (Nutz-)Bussignal (also z. B. mit im wesentlichen gleichen Steuer- und Datensignalen, aber ersetztem Adresssignal) zum Redundanzspeicher geführt wird.
  • Auch beansprucht wird ein Speichermodul das mindestens einen erfindungsgemäßen Speicherpuffer und mindestens ein – typischerweise über das speicherseitige Bussystem damit verbundenes Halbleiter-Bauelement aufweist.
  • Insbesondere günstig ist ein Speichermodul, das zusätzlich einen nichtflüchtigen Speicher, insbesondere ein EEPROM, aufweist, der – z. B. über den Konfigurationsbus mit dem zusätzlichen Adressregister verbunden ist. So kann eine im nichtflüchtigen Speicher gespeicherte Information über fehlerhafte Speicherzellen bzw. Speicherzellenadressen nach dem Hochfahren des Hosts, bspw. eines PCs oder Servers, vom nichtflüchtigen Speicher in das – meist schnellere – zusätzliche Adressregister übertragen werden. Zwar ist eine Speicherung auch z. B. in einem nicht-flüchtigen Speicher außerhalb des Speichermoduls möglich, dabei würde aber ggf. Information bei Ausbau/Auswechseln des Speichermoduls verloren gehen bzw. falsch interpretiert werden.
  • Ebenfalls beansprucht wird ein Verfahren zum Testen bzw. zur Initialisierung eines erfindungsgemäßen Speichermoduls mit mindestens den Schritten:
    • – Testen von Speicherzellen des mindestens einen Halbleiter-Bauelementes (2a,2b,2c) auf ihre Funktionstüchtigkeit, und
    • – Abspeicherung von Speicherzellenadressen von nicht funktionstüchtigen Speicherzellen, vorzugsweise in einem nichtflüchtigen Speicher.
  • Diesem Schritten kann z. B. das Hochfahren des das Speichermodul umfassenden Systems voranstehen. Während des Testens kann in einem Zwischenschritt die Abspeicherung der Speicherzellenadressen auch zunächst in einem – meist schnelleren – Zwischenspeicher, z. B. dem zusätzlichen Adressregister geschehen, wobei die Informationen danach günstigerweise in den nichtflüchtigen Speicher übertragen werden. Falls keine fehlerhaften Speicherzellen entdeckt werden, wird vorteilhafterweise auch keine Information über Speicherzellenadressen gespeichert; vielmehr kann das ein „no-fail"-Flag gesetzt werden, das in einem späteren Betrieb ein temporäres Abschalten der Speicherzellenersetzung erlaubt.
  • Es ist vorteilhaft, wenn den Speicherzellenadressen der nicht funktionsfähigen Speicherzellen Speicherzellenadressen des Redundanzspeichers zugewiesen werden, insbesondere in einem gemeinsamen Informationspaket/Informationsstring.
  • Beansprucht wird auch ein Verfahren zum Betrieb eines erfindungsgemäßen Speichermoduls, bei dem vorher mindestens einmal (also zur Initialisierung) das oben beschriebene erfindungsgemäße Testverfahren durchgeführt worden ist. Dadurch sind – falls vorhanden – Informationen über fehlerhafte Speicherzellenadressen – möglichst nichtflüchtigen Speicher – gespeichert. In einem ersten Schritt werden die Speicherzellenadressen der nicht funktionstüchtigen Speicherzellen aus dem nichtflüchtigen Speicher ausgelesen und zur schnelleren Verarbeitung in das zusätzliche Adressregister übertragen.
  • In einem zweiten und in weiteren Schritten werden dann die erfindungsgemäßen Vergleichs- und Umschaltoperationen durchgeführt. Ist keine Information über Speicherzellenadressen gespeichert, wird der erste Schritt bzw. das gesamte Verfahren optional nicht ausgeführt.
  • Im folgenden wird die Erfindung anhand eines Ausführungsbeispiels und der beigefügten Zeichnung näher erläutert. In der Zeichnung zeigt:
  • 1 eine schematische Darstellung eines teilweise gepufferten Speichermoduls;
  • 2 eine schematische Darstellung eines voll gepufferten Speichermoduls;
  • 3 eine beispielhafte Vorder- und Rückansicht eines Speichermoduls;
  • 4 eine beispielhafte, schematische Darstellung eines Speichermoduls mit einem Speicherpuffer;
  • 5 den Ablauf eines Test- bzw. Initialisierungsverfahrens für ein Speichermodul, und
  • 6 den Betriebsablauf eines Speichermoduls.
  • In 1 ist eine schematische Darstellung eines teilweise gepufferten Speichermoduls gezeigt (hier: ein „buffered DIMM" 1a), bei welchem – beispielhaft – ein Testverfahren verwendet werden kann.
  • Wie aus 1 hervorgeht, weist das dort gezeigte Speichermodul 1a eine Vielzahl von Halbleiter-Bauelementen 2a auf, und (hier: einen) den Halbleiter-Bauelementen 2a vorgeschaltete Speicherpuffer („Buffer", „Memory Buffer") 3a.
  • Bei den Halbleiter-Bauelementen 2a kann es sich z.B. um Funktionsspeicher- oder Tabellenspeicher-Bauelemente (z.B. ROMs oder RAMs) handeln, insbesondere um DRAMs, z.B. um DDR – bzw. DDR2-DRAMs, etc.
  • Wie aus 1 hervorgeht, können die Halbleiter-Bauelemente 2a auf derselben Platine 21a angeordnet sein wie die Speicherpuffer 3a.
  • Bei den Speichepuffern 3a kann es sich z.B. um von JEDEC standardisierte („registered DIMM"-) DRRM-, insbesondere DDR-DRAM- bzw. DDR2-DRAM-Speicherpuffer handeln.
  • Das Speichermodul 1a kann an einen die Halbleiter-Bauelemente 2a nutzenden Host H (hier: eine Testeinheit 22a zum Testen des Speichermoduls 1a („testing device") angeschlossen sein. Ein Host H kann z. B. ein Memory Controller (hier nicht gezeigt) oder ein Mikroprozessor (hier nicht gezeigt) sein. Typischerweise ist das Speichermodul 1a – insbesondere unter Zwischenschaltung eines (z.B. extern vom Speichermodul 1a, insbesondere extern von der o.g. Platine 21a angeordneten) Memory Controllers – mit einem oder mehreren Mikro-Prozessoren verbunden, insbesondere einem oder mehreren Mikro-Prozessoren eines Server- oder Workstationrechners (oder einem be liebigen anderen Mikro-Prozessor, z.B. eines PCs, Laptops, etc.).
  • Wie aus 1 hervorgeht, werden bei dem dort gezeigten teilweise gepufferten Speichermodul 1a die – z.B. vom Memory Controller, oder vom jeweiligen Prozessor ausgegebenen – Adress- und Steuersignale nicht direkt an die Halbleiter-Bauelemente 2a weitergeleitet.
  • Stattdessen werden die Adresssignale- z.B. über einen entsprechenden hostseitigen Adressbus 4a (bzw. entsprechende Adress-Leitungen) („address") –, und die Steuersignale – z.B. über einen entsprechenden hostseitigen Steuerbus 5a (bzw. entsprechende Steuer-Leitungen) („command") – zunächst dem Speicherpuffer 3a zugeführt.
  • Bei den Steuersignalen kann es sich um beliebige, bei herkömmlichen Speichermodulen verwendete Steuersignale handeln, z.B. um entsprechende Lese-, und/oder Schreib-, und/oder Chip-Select- (Halbleiter-Bauelement-Auswahl-)Befehls-Signale, etc., soweit diese vom Protokoll des Speicherpuffer 3a unterstützt werden.
  • In dem Speicherpuffer 3a werden die entsprechenden Signale (Adresssignale, Steuersignale) – kurz – zwischengespeichert, und auf zeitlich koordinierte, ggf. ge- oder de-multiplexte Weise an die Halbleiter-Bauelemente 2a weitergeleitet (z.B. über einen entsprechenden – zentralen – Speicher-Bus 7a (mit einem entsprechenden speicherseitigen Steuerbus 5b und einem entsprechenden speicherseitigen Adressbus 4b mit entsprechenden Steuer- und Adress-Leitungen)).
  • Demgegenüber können bei dem in 1 gezeigten teilweise gepufferten Speichermodul 1a die vom Host H – z.B. vom o.g. Memory Controller, oder vom jeweiligen Prozessor ausgegebenen – (Nutz-)Datensignale („data") direkt, d.h. ohne Zwischenspeicherung durch den Speicherpuffer 3a über einen durchge henden Datenbus 6c an die Halbleiter-Bauelemente 2a weitergeleitet werden (z.B. über einen – direkt mit dem o.g., zentralen Speicherbus 15a verbunden – Daten-Bus 6c (bzw. entsprechende Daten-Leitungen).
  • Umgekehrt können auch die – von den Halbleiter-Bauelementen 2a ausgegebenen – (Nutz-)Datensignale direkt – ohne Zwischenschaltung des Speicherpuffers 3a – an den Host H, also beispielsweise die Testeinheit 22a, einen Memory Controller bzw. den jeweiligen Prozessor weitergeleitet werden (z.B. wiederum über den o.g. – direkt mit dem zentralen Speicherbus 7a verbunden – durchgehenden Datenbus 6c).
  • In 2 ist eine schematische Darstellung eines voll gepufferten Speichermoduls 1b gezeigt (hier: ein „buffered DIMM" 1b).
  • Wie aus 2 hervorgeht, weist das dort gezeigte Speichermodul 1b – entsprechend dem teilweise gepufferten Speichermodul 1a gemäß 1 – eine Vielzahl von Halbleiter-Bauelementen 2a auf, und ein oder mehrere – den Halbleiter-Bauelementen 2a vorgeschaltete – Speicherpuffer („Buffer") 3b.
  • Bei den Halbleiter-Bauelementen 2a kann es sich z.B. um Funktionsspeicher- oder Tabellenspeicher-Bauelemente (z.B. ROMs oder RAMs) handeln, insbesondere um DRAMs, z.B. um DDR – bzw. DDR2-DRAMs, etc.
  • Die Halbleiter-Bauelemente 2a können auf derselben Platine 21b angeordnet sein, wie der Speicherpuffer 3b.
  • Bei dem Speicherpuffer 3b kann es sich z.B. um entsprechende, standardisierte DRAM-, insbesondere DDR-DRAM- bzw. DDR2-DRAM-Daten-Zwischenspeicher-Bauelemente handeln (z.B. um – von einem Konsortium unter Federführung von Intel, zusammen mit JEDEC – standardisierte „fully buffered" Daten-Zwischenspei cher-Bauelemente (z.B. um FB-DIMM- bzw. fully buffered DIMM-Speicherpuffer)).
  • Das Speichermodul 1b kann (entsprechend ähnlich wie das in 1 gezeigte Speichermodul 1a) – insbesondere unter Zwischenschaltung eines entsprechenden (z.B. extern vom Speichermodul 1b, insbesondere extern von der o.g. Platine 21b angeordneten) Memory Controllers (hier nicht gezeigt) – mit einem oder mehreren Mikro-Prozessoren verbunden werden, insbesondere einem oder mehreren Mikro-Prozessoren eines Server- oder Workstationrechners (oder einem beliebigen anderen Mikro-Prozessor, z.B. eines PCs, Laptops, etc.).
  • Wie aus den 1 und 2 hervorgeht, ist das in 2 gezeigte Speichermodul 1b entsprechend ähnlich bzw. identisch aufgebaut, und arbeitet entsprechend ähnlich bzw. identisch, wie das in 1 gezeigte Speichermodul 1a, außer dass auch die zwischen dem Host H und den Halbleiter-Bauelementen 2a ausgetauschten (Nutz-)Datensignale durch einen Speicherpuffer 3b gepuffert werden.
  • In dem Speicherpuffer 3b können die entsprechenden, vom Host (z.B. Testeinheit 21b, Memory Controller, Prozessor usw.) stammenden, z.B. über einen hostseitigen Datenbus 6a weitergeleiteten Datensignale – kurz – zwischengespeichert, und auf zeitlich koordinierte, ggf. ge- oder de-multiplexte Weise über einen speicherseitigen Datenbus 6b an die Halbleiter-Bauelemente 2a weitergeleitet werden (z.B. über einen zentralen Speicherbus 7b (mit einem entsprechenden speicherseitigen Steuer-, Adress- und Daten-Bus 4b, 5b, 6b mit entsprechenden Steuer-, Adress-, und Daten-Leitungen)).
  • Umgekehrt können in dem Buffer 3b auch die von den Halbleiter-Bauelementen 2a z.B. am o.g. zentralen Speicher-Bus 7b ausgegebenen Datensignale – kurz – zwischengespeichert, und – auf zeitlich koordinierte, ggf. ge- oder de-multiplexte Weise – an den Host weitergeleitet werden, z.B. über den o.g. hostseitigen Datenbus 6a.
  • 3 zeigt in Seitenansicht eine Vorderseite (oben, „front") und eine Rückseite (unten, „back") eines Speichermoduls 1c. Während auf der Rückseite der Platine im wesentlichen nur Halbleiter-(Speicher-)Bauelemente 2b aufgebracht sind, befinden sich auf der Vorderseite sowohl ein Speicherpuffer 3c als auch ein nichtflüchtiger Speicher 20a in Form eines EEPROMs. Die Halbleiter-Bauelemente 2b sind vorzugsweise DRAMs.
  • Das Speichermodul 1c wird über Signalleitungen, typischerweise ein hostseitiges Bussystem HBS, mit einem Host verbunden. Der Host kann jede mindestens eines der Halbleiter-Bauelemente 2b ansprechende Einheit sein, also z. B. eine Testeinheit, eine Rechnereinheit, wie PC, Server, Handheld etc. oder ein Memory Controller usw.
  • 4 zeigt schematisch ein voll gepuffertes Speichermodul 1d mit einem Speicherpuffer 3d, mit Halbleiter-Bauelementen 2c und einem nicht-flüchtigen Speicher 20b.
  • In den Speicherpuffer 3d („memory buffer") führt ein hostseitiges Bussystem HBS, das einen hostseitigen Steuerbus 5a („command"), einen hostseitigen Adressbus 4a („address") und einen hostseitigen Datenbus 6a („data") umfasst. In diesem Ausführungsbeispiel werden Steuersignale über den hostseitigen Steuerbus 5a und Adresssignale über den hostseitigen Adressbus 4a unidirektional zum Speichermodul 1d übertragen, während Datensignale über den hostseitigen Datenbus 6a bidirektional laufen können. Das hostseitige Bussystem HBS führt in eine Speicherlogikeinheit 8. Die Speicherlogikeinheit 8 ist auf der anderen Seite, also speicherseitig, über ein speicherseitiges Bussystem MBS – umfassend einen unidirektionalen speicherseitigen Steuerbus 5b, einen unidirektionalen speicherseitigen Adressbus 4b und einen bi direktionalen speicherseitigen Datenbus 6b – mit Halbleiter-Bauelementen 2c, insbesondere DRAMs, verbunden. Zwischen Speicherlogikeinheit 8 und speicherseitigem Bussystem MBS ist ein Umschalter in Form eines Multiplexers 16 zum Multiplexen und/oder Demultiplexen von Bussignalen zwischengeschaltet.
  • Weiterhin sind ein zusätzliches Adressregister 13 und ein Redundanz-Adressdecoder 14 vorhanden. Über jeweils eine Datenverbindung 17,18 werden einerseits Speicheradressen (bzw. diese enthaltende Informationen) aus der Speicherlogikeinheit 8 bzw. solche, die zur Speicherlogikeinheit 8 gesendet werden, und andererseits Speicheradressen (bzw. diese enthaltende Informationen) aus dem zusätzlichen Adressregister 13 zum Redundanz-Adressdecoder 14 geleitet. Dort werden die Adressen verglichen. Für den Fall, dass eine sich eine inhaltliche Übereinstimmung ergibt, wird über die Datenverbindung 19 ein Signal zum Multiplexer 16 gesandt, zum Beispiel ein Informationsstring mit zu ersetzender Adresse des Halbleiter-Bauelements 2c, Ersatzadresse in einem – weiter unten beschriebenen – Redundanzspeicher 15 und ggf. zusätzlichen Informationen. Die zeitliche Abstimmung ist idealerweise so, dass die Verfahrensschritte ,Senden der Speicherzellenadressen zum Redundanz-Adressdecoder 14' – ,Vergleich der Speicherzellenadressen' – ,Senden eines Signals zum Multiplexer 16' so lange dauern wie das Durchschleusen des entsprechenden Bussignals durch die Speicherlogikeinheit 8. Das entsprechende Bussignal kann also dann, z. B. bei einem positiven Vergleich bei Identifikation einer adressierten fehlerhaften Speicherzelle und Aussenden einer entsprechenden Information an den Multiplexer 16, durch den Multiplexer 16 rechtzeitig auf ein mit dem Multiplexer 16 verbundenes Redundanz-Bussystem RBS mit Redundanz-Steuerbus 9, Redundanz-Adressbus 10 und bidirektionalem Redundanz-Datenbus 11 umgeschaltet bzw. umgelenkt werden. Dies kann z. B. durch ein Ersetzen der Adresse der fehlerhaften Speicherzelle mit der (Ersatz-)Adresse im Redundanzspeicher 15 geschehen; das modifizierte, in den Redundanzspeicher 15 umzuleitende Bussignal umfasst dann die modifizierte Adresse und die inhaltsgleichen Steuer- und Datensignale.
  • Vom Redundanz-Bussystem RBS aus gelangt das Bussignal zum Redundanzspeicher 15, hier: einem SRAM, mit entsprechenden Speicherzellen, die vom Bussignal – entsprechend den Speicherzellen der Halbleiter-Bauelemente 2c – angesprochen werden, z. B. indem Daten in die Speicherzellen des Redundanzspeichers 15 geschrieben oder von dort ausgelesen werden.
  • Das zusätzliche Adressregister 13 ist über einen aus dem Speicherpuffer 3d herausführenden Konfigurationsbus 12 konfigurierbar, z. B. beschreibbar. In diesem Ausführungsbeispiel ist das zusätzliche Adressregister 13 mit einem nichtflüchtigen Speicher 20b des Speichermoduls 1d in Form eines EEPROM verbunden. Das EEPROM kann weitere Datenleitungen (hier nicht eingezeichnet) ausweisen, z. B. nach außen zum Anschluss an einen Host.
  • 5 zeigt als Ablaufskizze eine Ausführungsform eines Verfahren zum Testen bzw. Initialisieren eines Speichermoduls 1c, 1d.
  • Zunächst wird das System Host H – Speichermodul hochgefahren und ggf. konfiguriert(„System Initialisierung"). Der Host H kann z. B. ein unabhängiges Testgerät oder eine Rechnereinheit (Mikroprozessor, Mikrocontroller etc.) mit eingebauter Testroutine sein.
  • Dann werden die Halbleiter-Bauelemente auf ihre Funktionstüchtigkeit getestet („Memory Test"). Sind keine Fehler festzustellen („Pass?: yes"), ist das Speichermodul einsatzbereit (ggf. unter Setzung eines „No Fail"-Flags). Es werden dann in der Regel keine Korrektur-/Redundanzroutinen aufgerufen.
  • Werden hingegen fehlerhafte Speicherzellen gefunden („Pass?: no"), so werden deren Adressen bzw. diese enthaltende Infor mationen gespeichert („store fail adresses"). In dieser Ablaufskizze geschieht dies im – vergleichsweise schnellen und oft beschreibbaren – zusätzlichen Adressregister 13b („buffer register") des Speicherpuffers 3d („memory buffer").
  • Nach Abschluss des eigentlichen Testvorgangs bzw. der Speicherung der Speicheradressen werden die Daten des Adressregisters 13b zum Host H zurückübertragen („host: read fail addresses from mem. buffer") und ggf. bearbeitet. Von dort aus werden Redundanzinformationen – also z. B. die fehlerhaften Speicheradressen, ggf. mit korrespondierenden Speicherzellenadressen des Redundanzspeichers 15 – in einem nichtflüchtigen Speicher 20c gespeichert („store redundancy information non-volatile"), vorzugsweise in einem auf dem Speichermodul befindlichen EEPROM.
  • Dieses Testverfahren kann beliebig oft, auch im schon im Host eingebauten Zustand des Speicherpuffers, durchgeführt werden.
  • 6 zeigt ein als Ablaufdiagramm ein Verfahren zum Betrieb des erfindungsgemäßen Speichermoduls.
  • Nach dem Hochfahren („Power Up") wird überprüft, ob Redundanzinformationen vorliegen („redundancy information available ?"). Falls nicht („no"), wird das Speichermodul direkt zum Betrieb freigegeben. Falls doch, so werden vom Host die Redundanzinformationen aus dem – relativ langsamen – EEPROM 20c ausgelesen („host: read redundancy information") und in das – relativ schnelle – zusätzliche Adressregister („buffer register") geschrieben („host: write redundancy information to mem. buffer"). Als nächstes wird der Betrieb, wie beispielhaft auch in 4 beschrieben, aufgenommen.
  • Dem Betriebsverfahren geht vorteilhafter-, aber nicht notwendigerweise, das in 5 beispielhaft beschriebene Testverfahren voraus.
  • 1a
    teilweise gepuffertes Speichermodul
    1b
    voll gepuffertes Speichermodul
    1c
    Speichermodul
    1d
    Speichermodul
    2a
    Halbleiter-Bauelement
    2b
    Halbleiter-Bauelement
    2c
    Halbleiter-Bauelement
    3a
    Speicherpuffer
    3b
    Speicherpuffer
    3c
    Speicherpuffer
    3d
    Speicherpuffer
    3e
    Speicherpuffer
    4a
    hostseitiger Adressbus
    4b
    speicherseitiger Adressbus
    5a
    hostseitiger Steuerbus
    5b
    speicherseitiger Steuerbus
    6a
    hostseitiger Datenbus
    6b
    speicherseitiger Datenbus
    6c
    durchgehender Datenbus
    7a
    Speicherbus
    7b
    Speicherbus
    8
    Speicherlogikeinheit
    9
    Redundanz-Steuerbus
    10
    Redundanz-Adressbus
    11
    Redundanz-Datenbus
    12
    Konfigurationsbus
    13
    zusätzliches Adressregister
    13b
    zusätzliches Adressregister
    14
    Redundanz-Adressdecoder
    15
    Redundanzspeicher
    16
    Multiplexer
    17
    Datenverbindung
    18
    Datenverbindung
    19
    Datenverbindung
    20a
    nichtflüchtiger Speicher
    20b
    nichtflüchtiger Speicher
    20c
    nichtflüchtiger Speicher
    21a
    Platine
    21b
    Platine
    22a
    Testeinheit
    22b
    Testeinheit
    H
    Host
    HBS
    Hostseitiges Bussystem
    MBS
    Speicherseitiges Bussystem
    RBS
    Redundanz-Bussystem

Claims (15)

  1. Speicherpuffer (3d, 3e), mindestens aufweisend – eine Speicherlogikeinheit (8), verbunden – mit mindestens einem speicherseitigen Bussystem (MBS) und – mit mindestens einem hostseitigen Bussystem (HBS), dadurch gekennzeichnet, dass – weiterhin mindestens ein Redundanzspeicher (15) vorhanden ist, so dass – ein Vergleich mindestens einer Speicherzellenadresse der Speicherlogikeinheit (8) mit mindestens einer weiteren Speicherzellenadresse durchführbar ist, und – aufgrund des Vergleichs eine Übertragung mindestens eines Bussignals zwischen dem speicherseitigen Bussystem (MBS) und dem Redundanzspeicher (15) umschaltbar ist.
  2. Speicherpuffer (3d, 3e) nach Anspruch 1, bei dem – mindestens ein zusätzliches Adressregister (13) mindestens zur Speicherung der mindestens einen weiteren Speicherzellenadresse vorhanden ist.
  3. Speicherpuffer (3d, 3e) nach Anspruch 2, bei dem das zusätzliche Adressregister (13) über einen Konfigurationsbus (12) konfigurierbar, insbesondere mit Speicherzellenadressen befüllbar, ist.
  4. Speicherpuffer (3d, 3e) nach einem der vorhergehenden Ansprüche, bei dem der Vergleich der Speicherzellenadressen mittels eines Redundanz-Adressdecoders (14) durchführbar ist.
  5. Speicherpuffer (3d, 3e) nach einem der vorhergehenden Ansprüche, bei dem – die Speicherlogikeinheit (8) mit dem Redundanzspeicher (15) über ein Redundanz-Bussystem (RBS) verbunden ist, so dass – aufgrund des Vergleichs der Speicherzellenadressen eine Übertragung mindestens eines Bussignals zwischen dem speicherseitigen Bussystem (MBS) und dem Redundanz-Bussystem (RBS) umschaltbar ist.
  6. Speicherpuffer (3d, 3e) nach Anspruch 5, bei dem das Bussignal zwischen dem speicherseitigen Bussystem (MBS) und dem Redundanz-Bussystem (RBS) mittels eines Umschalters, insbesondere eines Multiplexers (16), umschaltbar ist.
  7. Speicherpuffer (3d, 3e) nach Anspruch 6, bei dem der Umschalter (16) über eine Datenverbindung (19) mit dem Redundanz-Adressdecoder (14) verbunden ist.
  8. Speicherpuffer (3d, 3e) nach einem der vorhergehenden Ansprüche, bei dem der Redundanzspeicher (15) SRAMs oder Registerzellen umfasst.
  9. Verfahren zum Betrieb eines Speicherpuffers (3d, 3e) nach einem der vorhergehenden Ansprüche, bei dem – in der Speicherlogikeinheit (8) hostseitig eingehende Speicherzellenadressen mit den, insbesondere im zusätzlichen Adressregister (13) gespeicherten, weiteren Speicherzellenadressen verglichen werden, und – abhängig vom Ausgang des Vergleichs mindestens ein Bussignal entweder über das speicherseitige Bussystem (MBS) oder zum Redundanzspeicher (15) geführt wird.
  10. Verfahren nach Anspruch 9, bei dem – die im Redundanzspeicher (15) gespeicherten weiteren Speicherzellenadressen fehlerhaften Speicherzellen entsprechen, und – bei Übereinstimmung zwischen in der Speicherlogikeinheit (8) eingehenden Speicherzellenadressen und im zusätzlichen Adressregister (13) gespeicherten Speicherzellenadressen ein Bussignal zum Redundanzspeicher (15) geführt wird.
  11. Speichermodul (1d), aufweisend – mindestens einen Speicherpuffer (3d, 3e) nach einem der Ansprüche 1 bis 8, – mindestens ein über das speicherseitige Bussystem (MBS) damit verbundenes Halbleiter-Bauelement (2a, 2b, 2c).
  12. Speichermodul (1d) nach den Anspruch 11, aufweisend einen nichtflüchtigen Speicher (20a,20b), insbesondere ein EEPROM, der über einen Konfigurationsbus (12) mit dem zusätzlichen Adressregister (13,13b) verbunden ist.
  13. Verfahren zum Testen eines Speichermoduls nach Anspruch 12, bei dem – in einem ersten Schritt die Speicherzellen des mindestens einen Halbleiter-Bauelementes (2a,2b,2c) auf ihre Funktionstüchtigkeit getestet werden, – in einem zweiten Schritt Informationen zu Speicherzellenadressen der nicht funktionstüchtigen Speicherzellen in einem nichtflüchtigen Speicher (20a,20b) gespeichert werden.
  14. Verfahren nach Anspruch 13, bei dem – die Speicherzellenadressen der nicht funktionstüchtigen Speicherzellen mit weiteren Informationen, insbesondere über die Speicherzellenadressen des Redundanzspeichers (15), verknüpft werden.
  15. Verfahren zum Betrieb eines Speichermoduls (1d) nach Anspruch 12, bei dem – zur Initialisierung ein Testverfahren nach einem der Ansprüche 13 oder 14 durchgeführt worden ist, – in einem ersten Schritt die Speicherzellenadressen der nicht funktionstüchtigen Speicherzellen aus dem nichtflüchtigen Speicher (20a, 20b) ausgelesen und in das zusätzliche Adressregister (13,13b) geschrieben werden, – in einem zweiten und in weiteren Schritten eines der Verfahren nach einem der Ansprüche 9 oder 10 ausgeführt wird.
DE102004056214A 2004-11-22 2004-11-22 Speicherpuffer Expired - Fee Related DE102004056214B4 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE102004056214A DE102004056214B4 (de) 2004-11-22 2004-11-22 Speicherpuffer
US11/283,072 US20060126408A1 (en) 2004-11-22 2005-11-21 Memory buffer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102004056214A DE102004056214B4 (de) 2004-11-22 2004-11-22 Speicherpuffer

Publications (2)

Publication Number Publication Date
DE102004056214A1 true DE102004056214A1 (de) 2006-05-24
DE102004056214B4 DE102004056214B4 (de) 2006-12-14

Family

ID=36313806

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102004056214A Expired - Fee Related DE102004056214B4 (de) 2004-11-22 2004-11-22 Speicherpuffer

Country Status (2)

Country Link
US (1) US20060126408A1 (de)
DE (1) DE102004056214B4 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9010645B2 (en) 2003-06-13 2015-04-21 Michael Arnouse Portable computing system and portable computer for use with same
US10235323B2 (en) 2008-02-13 2019-03-19 Michael Arnouse Portable computing system and portable computer for use with same
USRE49124E1 (en) 2008-02-13 2022-07-05 Arnouse Digital Devices Corp. Mobile data center
US11113228B2 (en) 2008-02-13 2021-09-07 Arnouse Digital Devices Corporation Portable computing system and portable computer for use with same
US8694857B2 (en) * 2011-04-13 2014-04-08 Inphi Corporation Systems and methods for error detection and correction in a memory module which includes a memory buffer
US10101769B2 (en) 2012-04-10 2018-10-16 Michael Arnouse Mobile data center
KR20140021419A (ko) * 2012-08-10 2014-02-20 삼성전자주식회사 메모리 모듈 및 이를 포함하는 메모리 시스템
US9811266B1 (en) 2016-09-22 2017-11-07 Cisco Technology, Inc. Data buffer for multiple DIMM topology
KR102378819B1 (ko) * 2018-02-20 2022-03-25 삼성전자주식회사 메모리 장치
US10896133B2 (en) 2018-05-31 2021-01-19 Microsoft Technology Licensing, Llc Combinational address repair in memory controller

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19543834A1 (de) * 1994-12-29 1996-07-11 Samsung Electronics Co Ltd Defektzellen-Reparaturschaltkreis und Verfahren für eine Halbleiterspeichervorrichtung
DE10255872B4 (de) * 2002-11-29 2004-09-30 Infineon Technologies Ag Speichermodul und Verfahren zum Betrieb eines Speichermoduls in einem Datenspeichersystem

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5841712A (en) * 1996-09-30 1998-11-24 Advanced Micro Devices, Inc. Dual comparator circuit and method for selecting between normal and redundant decode logic in a semiconductor memory device
US5923682A (en) * 1997-01-29 1999-07-13 Micron Technology, Inc. Error correction chip for memory applications
US6154851A (en) * 1997-08-05 2000-11-28 Micron Technology, Inc. Memory repair
US6185718B1 (en) * 1998-02-27 2001-02-06 International Business Machines Corporation Memory card design with parity and ECC for non-parity and non-ECC systems
US6205063B1 (en) * 1998-08-26 2001-03-20 International Business Machines Corporation Apparatus and method for efficiently correcting defects in memory circuits
US6484271B1 (en) * 1999-09-16 2002-11-19 Koninklijke Philips Electronics N.V. Memory redundancy techniques
US6996766B2 (en) * 2002-06-28 2006-02-07 Sun Microsystems, Inc. Error detection/correction code which detects and corrects a first failing component and optionally a second failing component
US7234099B2 (en) * 2003-04-14 2007-06-19 International Business Machines Corporation High reliability memory module with a fault tolerant address and command bus
US7321997B2 (en) * 2004-03-30 2008-01-22 Intel Corporation Memory channel self test
US7395476B2 (en) * 2004-10-29 2008-07-01 International Business Machines Corporation System, method and storage medium for providing a high speed test interface to a memory subsystem

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19543834A1 (de) * 1994-12-29 1996-07-11 Samsung Electronics Co Ltd Defektzellen-Reparaturschaltkreis und Verfahren für eine Halbleiterspeichervorrichtung
DE10255872B4 (de) * 2002-11-29 2004-09-30 Infineon Technologies Ag Speichermodul und Verfahren zum Betrieb eines Speichermoduls in einem Datenspeichersystem

Also Published As

Publication number Publication date
DE102004056214B4 (de) 2006-12-14
US20060126408A1 (en) 2006-06-15

Similar Documents

Publication Publication Date Title
DE102004051345B4 (de) Halbleiter-Bauelement, Verfahren zum Ein- und/oder Ausgeben von Testdaten, sowie Speichermodul
DE10255872B4 (de) Speichermodul und Verfahren zum Betrieb eines Speichermoduls in einem Datenspeichersystem
DE102006048856B4 (de) Verfahren zum Betreiben einer IC-Halbleiterspeichervorrichtung und IC-Halbleiterspeichervorrichtung
DE102004021267A1 (de) Verfahren zum Testen eines Speicherbausteins und Prüfanordnung
DE19930169B4 (de) Testeinrichtung und Verfahren zum Prüfen eines Speichers
DE102004056214B4 (de) Speicherpuffer
EP0046976A2 (de) Halbleiterspeicher aus Speicherbausteinen mit redundanten Speicherbereichen
EP1652190A1 (de) Hub-baustein zum anschliessen von einem oder mehreren speich erbausteinen
DE102004039831B4 (de) Multi-Chip-Package
EP2063432A1 (de) Verfahren zum Prüfen eines Arbeitsspeichers
DE10319516A1 (de) Prüfverfahren und Prüfvorrichtung für Hochgeschwindigkeits-Halbleiterspeichereinrichtungen
DE102005045696A1 (de) Verfahren und Schaltung zur Ausfalladressenprogrammierung und Halbleiterspeicherbauelement
EP1046992B1 (de) Halbleiterspeicher vom wahlfreien Zugriffstyp mit in zwei Ebenen organisiertem Bussystem
DE10345981B4 (de) Schaltungsvorrichtung zur Datenverarbeitung und Verfahren zum Verbinden eines Schaltungskernmoduls mit einem externen Schaltungsmodul
DE102005022687A1 (de) Speichersystem, Halbleiterspeicherbauelement und Betriebsverfahren hierfür
DE10002139A1 (de) Datenspeicher
DE10335708B4 (de) Hub-Baustein zum Anschließen von einem oder mehreren Speicherbausteinen
DE102007057321B4 (de) Bewertungseinheit in einer Speichervorrichtung
DE102005015319B4 (de) Elektrisches System mit fehlerhaften Speicherbereichen und Verfahren zum Testen von Speicherbereichen
WO2005048270A1 (de) Integrierte schaltung, testsystem und verfahren zum auslesen eines fehlerdatums aus der integrierten schaltung
DE102004064253B3 (de) Halbleiter-Bauelement, sowie Verfahren zum Ein- und/oder Ausgeben von Testdaten
DE102004050104B4 (de) Halbleiter-Bauelement, sowie Verfahren zum Auslesen von Testdaten
DE102015101327B4 (de) Verfahren zur Anpassung der Aufteilung von Busleitungen eines Kommunikationsbusses in einem Computersystem
DE102004026248A1 (de) Halbleiter-Bauelement-Test-Verfahren, insbesondere für ein System mit mehreren jeweils ein Daten-Zwischenspeicher-Bauelement aufweisenden Modulen, sowie Test-Modul zur Verwendung bei einem derartigen Verfahren
DE10052292B4 (de) Halbleiterspeicher mit Datenspeicher und elektrisch lösch- und programmierbarer Array-Logik

Legal Events

Date Code Title Description
ON Later submitted papers
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: QIMONDA AG, 81739 MUENCHEN, DE

8339 Ceased/non-payment of the annual fee