DE102008030858A1 - Speicher mit dynamischer Redundanzkonfigurierung - Google Patents

Speicher mit dynamischer Redundanzkonfigurierung Download PDF

Info

Publication number
DE102008030858A1
DE102008030858A1 DE102008030858A DE102008030858A DE102008030858A1 DE 102008030858 A1 DE102008030858 A1 DE 102008030858A1 DE 102008030858 A DE102008030858 A DE 102008030858A DE 102008030858 A DE102008030858 A DE 102008030858A DE 102008030858 A1 DE102008030858 A1 DE 102008030858A1
Authority
DE
Germany
Prior art keywords
memory
cells
cell
memory cells
group
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.)
Pending
Application number
DE102008030858A
Other languages
English (en)
Inventor
Jan Boris Philipp
Thomas Dr. Happ
Thomas Nirschl
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.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Qimonda AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG, Qimonda AG filed Critical Infineon Technologies AG
Publication of DE102008030858A1 publication Critical patent/DE102008030858A1/de
Pending legal-status Critical Current

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
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5678Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using amorphous/crystalline phase transition storage elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0007Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0009RRAM elements whose operation depends upon chemical change
    • G11C13/0011RRAM elements whose operation depends upon chemical change comprising conductive bridging RAM [CBRAM] or programming metallization cells [PMCs]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0009RRAM elements whose operation depends upon chemical change
    • G11C13/0014RRAM elements whose operation depends upon chemical change comprising cells based on organic memory material
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0009RRAM elements whose operation depends upon chemical change
    • G11C13/0014RRAM elements whose operation depends upon chemical change comprising cells based on organic memory material
    • G11C13/0016RRAM elements whose operation depends upon chemical change comprising cells based on organic memory material comprising polymers
    • 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
    • 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
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • 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/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • 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
    • G11C2029/0409Online test
    • 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
    • G11C2029/0411Online error correction
    • 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
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/30Resistive cell, memory material aspects
    • G11C2213/32Material having simple binary metal oxide structure

Landscapes

  • Chemical & Material Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Materials Engineering (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Computer Hardware Design (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

Eine Ausführungsform der Erfindung betrifft ein Verfahren zum Reparieren eines Speicherfelds. Bei dem Verfahren wird eine Gruppe aus zumindest einer Speicherzelle dynamisch analysiert, um zu bestimmen, ob das Speicherfeld zumindest eine fehlerhafte Zelle umfasst, die Daten nicht mehr ordnungsgemäß speichert. Wenn die Gruppe zumindest eine fehlerhafte Zelle umfasst, wird, zumindest die zumindest eine fehlerhafte Zelle dynamisch zumindest einer anderen Zelle zugeordnet. Weitere Verfahren, Vorrichtungen und Systeme werden ebenfalls offenbart.

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung betrifft allgemein Halbleitervorrichtungen und insbesondere verbesserte Verfahren und Systeme für Halbleiterspeicher.
  • HINTERGRUND DER ERFINDUNG
  • In der Halbleiter- und Elektronikindustrie sind gegenwärtig zahlreiche Trends auszumachen. Einer dieser Trends besteht darin, dass jüngere Generationen tragbarer elektronischer Vorrichtungen mehr Speicher nutzen als vorherige Generationen. Dieser Anstieg an Speicher erlaubt es diesen neuen Vorrichtungen, mehr Daten zu speichern, wie beispielsweise Musik oder Bilder, und stellt den Vorrichtungen außerdem mehr Rechenleistung und -geschwindigkeit bereit.
  • Eine Art von Speichervorrichtung umfasst ein Feld aus resistiven Speicherzellen, wobei einzelne Datenbits in den einzelnen resistiven Speicherzellen des Felds gespeichert werden können. Je nachdem, wie die Zelle vorgespannt ist, kann sie zwischen einem Zustand mit größerer Resistivität und einem Zustand mit geringerer Resistivität umgeschaltet werden. Bei realen Implementierungen kann der Zustand mit größerer Resistivität einer logischen „1" zugeordnet sein, und der Zustand mit geringerer Resistivität kann einer logischen „0" zugeordnet sein, oder umgekehrt. Zusätzliche resistive Zustände könnten außerdem definiert werden, um eine Multibit-Zelle mit mehr als zwei Zuständen pro Zelle zu implementieren. Daher kann ein Benutzer durch Umschalten zwischen den resistiven Zuständen jede beliebige Kombination von „1" (Einsen) und „0" (Nullen) im Feld speichern, was digital codierter Musik, Bildern, Software, usw. entsprechen könnte.
  • Bei resistiven Speichern können die Merkmale der Speicherzellen im Laufe der Zeit eine Abweichung erfahren. Zum Beispiel kann sich bei Zellen, bei denen die Anzahl der Zugriffe beträchtlich über dem Durchschnitt liegt, eine Tendenz zu Datenfehlern zeigen. Da einige Anwendungen möglicherweise keine Datenfehler tolerieren, limitiert der Ausfall dieser einzelnen Zellen die Ausfallrate der Speichervorrichtung ernsthaft. Daher ist eine Notwendigkeit aufgetreten, Systeme und Verfahren in Bezug auf Speichervorrichtungen bereitzustellen, die fehlerhafte Zellen berücksichtigen können.
  • ZUSAMMENFASSUNG DER ERFINDUNG
  • Eine Ausführungsform der Erfindung betrifft ein Verfahren zum Reparieren eines Speicherfelds. Bei dem Verfahren wird eine Gruppe, die aus zumindest einer Speicherzelle besteht, analysiert, um zu bestimmen, ob die Gruppe zumindest eine fehlerhafte Zelle umfasst, die Daten nicht mehr ordnungsgemäß speichert. Wenn die Gruppe zumindest eine fehlerhafte Zelle umfasst, wird zumindest die zumindest eine fehlerhafte Zelle dynamisch zumindest einer anderen Zelle zugeordnet. Weitere Verfahren, Vorrichtungen und Systeme werden ebenfalls offenbart.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt eine Ausführungsform eines Speicherfelds;
  • 1A zeigt eine Ausführungsform eines Felds aus resistiven Speicherzellen, die in einer unsymmetrischen Konfiguration konfiguriert sind;
  • 2 zeigt eine Ausführungsform einer Phasenwechsel-Speicherzelle;
  • 3 zeigt eine Ausführungsform einer günstigen Widerstandsverteilung, die sich auf ein Feld aus binären resistiven Speicherzellen bezieht;
  • 4 zeigt eine Ausführungsform einer ungünstigen Widerstandsverteilung, die sich auf ein Feld aus binären resistiven Speicherzellen bezieht;
  • 5 zeigt eine Ausführungsform einer Speichervorrichtung, die redundanten Speicher umfasst;
  • 6 zeigt ein Ablaufdiagramm eines Speicherreparaturvorgangs;
  • 7 zeigt ein weiteres Ablaufdiagramm eines Speicherreparaturvorgangs;
  • 8 zeigt ein weiteres Ablaufdiagramm eines Speicherreparaturvorgangs;
  • 9 zeigt eine schematische Darstellung eines Aspekts einer Ausführungsform eines Speicherreparaturvorgangs;
  • 10 ist ein Blockdiagramm eines Datenverarbeitungssystems, in dem beispielhafte Speichervorrichtungen genutzt werden können; und
  • 11 zeigt eine Ausführungsform einer Widerstandsverteilung, die sich auf ein Feld aus resistiven Multibit-Speicherzellen bezieht.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • Eine oder mehrere Implementierungen der vorliegenden Erfindung werden nun unter Bezugnahme auf die beigefügten Zeichnungen beschrieben, wobei sich gleiche Bezugszeichen durchgehend auf gleiche Elemente beziehen. Die Zeichnungen sind nicht unbedingt maßstabsgetreu. Obwohl diverse veranschaulichte Ausführungsformen als Hardware-Struktur beschrieben und veranschaulicht werden, können die Funktionalität und die entsprechenden Merkmale des vorliegenden Systems auch durch geeignete Software-Routinen oder eine Kombination von Hardware und Software umgesetzt werden.
  • Obwohl im Folgenden zahlreiche Ausführungsformen im Zusammenhang mit resistiven Speichern oder Phasenwechselspeichern veranschaulicht und erörtert werden, könnten sich Aspekte der vorliegenden Erfindung auch auf andere Arten von Speichervorrichtungen und auf damit verbundene Verfahren beziehen. Einige Beispiele für veranschaulichende Arten von resistivem Speicher umfassen die Folgen den: Perowskit-Speicher, OxRAM (Binary Oxides Random Access Memory), PCRAM (Phase Change Random Access Memory, CBRAM (Conductive Bridging Random Access Memory) und Polymerspeicher. Weitere Typen von Speicher, die als unter den Schutzumfang der Erfindung fallend angesehen werden, umfassen die Folgenden: RAM (Random Access Memory), SRAM (Static Random Access Memory), DRAM (Dynamic Random Access Memory), ROM (Read Only Memory), ferroelektrischer Speicher, Flash-Speicher, EEPROM und EPROM.
  • Unter Bezugnahme auf 1 ist ein einigermaßen herkömmliches Speicherfeld 100 zu sehen, das eine Anzahl von Speicherzellen 102 umfasst, die jeweils in der Lage sind, je nach Implementierung ein oder mehrere Datenbits zu speichern. Die Zellen 102 sind in M Reihen (zum Beispiel Wörtern) und N Spalten (zum Beispiel Bits) angeordnet, was durch CREIHE_SPALTE angegeben wird. Bei jeder Reihe von Zellen handelt es sich um ein N Bit langes Datenwort, auf das durch Aktivieren einer mit dieser Reihe verbundenen Wortleitung WL zugegriffen werden kann. Zum Beispiel bilden in der ersten Reihe des Felds 100 die Zellen C1,1 bis C1,N ein N Bit langes Datenwort, auf das durch Aktivieren der Wortleitung WL1 über die Bitleitungen BL1 bis BLN zugegriffen werden kann. Allgemein ausgedrückt können, während die Wortleitung zugesichert ist, durch ordnungsgemäßes Vorspannen der Bitleitungen Datenwerte aus den Zellen gelesen oder in die Zellen geschrieben werden.
  • Je nach Implementierung kann auf jede Spalte von Zellen über eine einzelne Bitleitung oder über ein Paar von Bitleitungen zugegriffen werden. Zum Beispiel könnte das Feld in einer Ausführungsform in einer unsymmetrischen Konfiguration konfiguriert sein, bei der eine einzelne Bitleitung mit jeder Spalte von Zellen gekoppelt ist. In der ersten Spalte würden zum Beispiel die Zellen C1,1 bis CM,1 mit der BL1 gekoppelt (entsprechend der durchgezogenen Linie auf der linken Seite jeder Zelle). Bei dieser Konfiguration könnte ein Leseverstärker (nicht gezeigt) zum Beispiel einen Datenwert aus der Zelle lesen, indem er eine Spannung oder einen Strom auf der Bitleitung der Zelle, auf die zugegriffen wurde, mit der Spannung oder dem Strom einer ähnlichen Bitleitung einer Referenzzelle vergleicht.
  • Im Gegensatz dazu könnte das Feld bei einer weiteren Ausführungsform in einer differenziellen Konfiguration konfiguriert sein, in der zwei komplementäre Bitleitungen mit jeder Spalte von Zellen gekoppelt ist. Zum Beispiel könnten in Spalte 1 die Zellen C1,1 und CM,1 mit BL1 und BL2 gekoppelt sein (entsprechend den sich von den Zellen aus erstreckenden durchgezogenen Linien und Strichlinien), wobei die Bitleitungen die Tendenz hätten, mit komplementären Werten belegt zu sein (zum Beispiel könnte BL1 eine logische „0" und BL2 eine logische „1" darstellen). Bei dieser Konfiguration liest ein Leseverstärker typischerweise Daten aus einer Zelle, auf die zugegriffen wurde, indem er eine Spannung oder eine Stromvorspannung zwischen dem Paar von komplementären Bitleitungen misst.
  • 1A zeigt eine detailliertere Ausführungsform einer unsymmetrischen Konfiguration eines Felds 100A aus resistiven Speicherzellen 102a, wie beispielsweise Phasenwechsel-Speicherzellen. Bei der veranschaulichten Ausführungsform umfasst jede Speicherzelle ein resistives Element 150 (zum Beispiel eine Schicht aus programmierbarem Material) und einen Zugriffstransistor 152. Bei weiteren, nicht veranschaulichten Ausführungsformen könnte jeder Zugriffstransistor 152 durch eine Diode ersetzt werden, die sich, in Reihe geschaltet, zwischen dem Speicherwiderstand und der Wortleitung befindet.
  • Bei dieser Ausführungsform könnten die resistiven Elemente 150 Phasenwechselelemente aufweisen, wie beispielsweise das in 2 gezeigte Phasenwechselelement 200. Das Phasenwechselelement 200 umfasst eine Schicht aus programmierbarem Material 202 (zum Beispiel ein polykristallines Chalkogenid-Material, wie beispielsweise GeSbTe oder eine SbTe-Verbindung, oder ein Chalkogenid-freies Material, wie beispielsweise GeSb oder GaSb), die zwischen einer oberen Elektrode 204 und einer unteren Elektrode 206 positioniert ist. Bei der veranschaulichten Ausführungsform umfasst die untere Elektrode 206 ein Heizelement 208, das mittels einer geeigneten Konfiguration von Impulsen ein programmierbares Volumen 210 des programmierbaren Materials entweder in einen amorphen Zustand (das heißt einen Zustand mit relativ hohem Widerstand) oder in einen kristallinen Zustand (das heißt einen Zustand mit relativ geringem Widerstand) versetzen kann. Diese Zustände könnten dann entsprechenden Datenzuständen zugewiesen werden – zum Beispiel könnte der amorphe Zustand einer logischen „0" zugewiesen werden, und der kristalline Zustand könnte einer logischen „1" zugewiesen werden, oder umgekehrt. Bei verschiedenen Ausführungsformen könnten zusätzliche Widerstandszustände entsprechenden Datenzuständen zugeordnet werden, um eine Multibit-Zelle mit mehr als zwei Zuständen pro Zelle zu implementieren.
  • Aufgrund von geringfügigen Abweichungen zwischen den Speicherzellen des Felds können die programmierten Widerstände der Zellen über das Feld hin variieren. Somit zeigt 3 eine günstige Widerstandsverteilung 300 für ein Speicherfeld aus binären Phasenwechsel-Speicherzellen, wobei es zwei unterschiedliche Widerstandsbereiche 302, 304 gibt. Jede „zuverlässige" Zelle des Felds weist einen Widerstand auf, der die Tendenz hat, unter eine der glockenförmigen Verteilungen 306, 308 zu fallen, so dass einige zuverlässige Zellen 306 dazu tendieren, sich in einem Zustand „1" zu befinden (das heißt im zuverlässigen Widerstandsbereich 302) während andere Zellen 308 dazu tendieren, sich in einem Zustand „0" zu befinden (das heißt im zuverlässigen Widerstandsbereich 304). Da zwischen den beiden Zuständen 302, 304 ein ausreichender Randbereich vorhanden ist, kann der Leseverstärker exakt aus diesen zuverlässigen Zellen lesen. Zum Beispiel könnte bei einer Ausführungsform ein Leseverstärker eine Zelle, auf die zugegriffen wird, lesen, indem er den Widerstand der Zelle mit einem Referenzwiderstand RREF vergleicht, der einen Widerstand einer Referenzspeicherzelle darstellt, die sich nicht in einem Zustand „1" oder in einem Zustand „0" befindet.
  • Da zum Beispiel auf einige Zellen häufiger zugegriffen wird als auf andere Zellen, können die Widerstände der Zellen die Tendenz haben, im Laufe der Zeit eine Abweichung zu erfahren. Wie in 4 gezeigt, können die Zellen des Felds in einem solchen Fall zu einer ungünstigen Verteilung 400 tendieren. Bei dieser ungünstigen Verteilung 400 weisen fehlerhafte Zellen des Felds die Widerstände 402 auf, die die Tendenz haben, in die unzulässigen Bereiche 406 zu fallen, welche die zuverlässigen Bereiche 302, 304 umgeben. Bei diesen Zellen kann es vorkommen, dass ein ausreichender Puffer zwischen dem Signal- und dem Rauschpegel (Noise Margin) fehlt oder dass sogar sich überlagernde Widerstandsverteilungen entstehen. Da diese fehlerhaften Zellen keinen erkennbaren Widerstand mehr aufweisen, stellen diese fehlerhaften Zellen unzuverlässige Daten bereit. Bei einigen Ausführungsformen sind die fehlerhaften Zellen in einem solchen Maße beschädigt oder zerstört, dass sie Daten nicht mehr ordnungsgemäß speichern können. In einem solchen Fall können diese fehlerhaften Zellen den Speicher für praktische Zwecke unbrauchbar machen, und der Benutzer muss dann den Speicher und jegliches Datenverarbeitungssystem, in dem der Speicher eingebettet ist, wegwerfen.
  • Um die Auswirkungen dieser fehlerhaften Zellen abzumildern und die Nutzlebensdauer des Speichers und von jeglichem damit verbundenen Datenverarbei tungssystem zu erhöhen, betreffen Aspekte der vorliegenden Erfindung Verfahren und Systeme zum dynamischen Analysieren der Zellen des Felds während der Lebensdauer der Vorrichtung, um zu ermitteln, ob das Feld fehlerhafte Zellen umfasst. Wenn das Feld tatsächlich fehlerhafte Zellen umfasst, ordnet der Speicher die fehlerhaften Zellen anderen, nicht fehlerhaften Zellen zu, wodurch der Datenverlust aufgrund der fehlerhaften Zellen abgemildert wird. Bei einer Ausführungsform kann der Speicher eine Nachschlagetabelle verwenden, um einen fehlerhaften Zellen zugeordneten Adressbereich auf einen neuen Adressbereich in einem redundanten Speicher abzubilden. Demgemäß haben die Erfinder Verfahren, Systeme und Vorrichtungen für sich selbst reparierende Speicher ersonnen.
  • Unter Bezugnahme auf 5 ist eine Speichervorrichtung 500 zu sehen, die so konfiguriert ist, dass sie fehlerhafte Zellen berücksichtigt. Die Speichervorrichtung 500 umfasst ein Speicherfeld 502 (wie beispielsweise das zuvor erörterte Feld 100), Steuerschaltungen 504 und einen redundanten Speicher 506.
  • Der redundante Speicher 506 umfasst redundante Speicherzellen, die oft reserviert werden, um fehlerhafte Speicherzellen zu ersetzen. Typischerweise handelt es sich bei dem redundanten Speicher um einen „Notizblockspeicher"-Sektor innerhalb des Speicherfelds 502, aber bei weiteren Ausführungsformen könnte es sich bei dem redundanten Speicherfeld um ein gesondertes Speicherfeld handeln, das auf demselben Halbleiterkörper ausgebildet ist wie das Speicherfeld, um eine Chipexterne Speichervorrichtung (DRAN, SRAM, Flash-Speicher, EEPROM, EPROM, usw.) oder um eine andere Art von Speicher (zum Beispiel Register). Der redundante Speicher 506 kann flüchtige oder nichtflüchtige Speicherzellen, wie beispielsweise die in diesem Dokument erwähnten, umfassen.
  • Um die gewünschte Funktionalität bereitzustellen, sind die Steuerschaltungen 504 so konfiguriert, dass sie fehlerhafte Bits innerhalb des Speicherfelds 502 erkennen und einen mit fehlerhaften Bits verbundenen Adressbereich auf einen Adressbereich mit entsprechender Größe innerhalb des redundanten Speichers 506 abbilden. Eine detailliertere Funktionalität dieser Blöcke in diversen Ausführungsformen wird unter Bezugnahme auf die unten aufgeführten Verfahren gewürdigt.
  • Mehrere veranschaulichende Verfahren (600, 700, 800) werden nun nachfolgend unter Bezugnahme auf mehrere Ablaufdiagramme (6, 7 bzw. 8) dargelegt, um diverse Aspekte der Erfindung weiter zu würdigen. Obwohl diese Verfahren nachfolgend als eine Reihe von Handlungen oder Ereignissen veranschaulicht und beschrieben werden, wird gewürdigt, dass die vorliegende Erfindung nicht durch die veranschaulichte Reihenfolge solcher Handlungen oder Ereignisse beschränkt ist. Zum Beispiel können erfindungsgemäß einige Handlungen in anderen Reihenfolgen und/oder gleichzeitig mit anderen Handlungen oder mit Ereignissen außer denjenigen auftreten, die in diesem Dokument veranschaulicht und/oder beschrieben sind. Außerdem kann es sein, dass nicht alle veranschaulichten Schritte erforderlich sind, um eine Methodik gemäß der vorliegenden Erfindung zu implementieren. Des Weiteren können die Verfahren gemäß der vorliegenden Erfindung in Verbindung mit den in diesem Dokument veranschaulichten (zum Beispiel der Speichervorrichtung 500 in 5) und beschriebenen Vorrichtungen und Systemen implementiert werden, sowie in Verbindung mit anderen, nicht veranschaulichten Strukturen.
  • Typischerweise verlagern sich diese Verfahren 600, 700, 800 von einer Gruppe von Speicherzellen innerhalb des Felds zu einer anderen Gruppe innerhalb des Felds, während sie die Daten innerhalb jeder Gruppe auf Fehler prüfen. Wenn die Daten innerhalb einer Gruppe einen Fehler enthalten, kann eine dynamische Redundanzprozedur durchgeführt werden, um jegliche fehlerhaften Zellen wirksam zu ersetzen. Bei diversen Ausführungsformen können diese Verfahren während normaler Lesevorgänge erfolgen, aber in weiteren Ausführungsformen können sie in einem dedizierten Testmodus durchgeführt werden. Bei einigen Ausführungsformen kann die Speichervorrichtung, während diese Verfahren in der Speichervorrichtung ablaufen, ein „Ausgelastet"-Signal auf ihrem Bus bereitstellen, so dass andere Programme während der Prüfung nicht auf die Speichervorrichtung zugreifen. Bei diversen Ausführungsformen könnte ein Benutzer die Speichervorrichtung auffordern, diese Verfahren einzuleiten.
  • Unter Bezugnahme auf 6 ist das Verfahren 600 zu sehen, das Gruppen von Zellen innerhalb des Felds periodisch auf fehlerhafte Daten hin überprüft und die fehlerhaften Daten so weit wie möglich korrigiert. Wenn die fehlerhaften Daten nicht mehr korrigiert werden können (das heißt, nachdem nicht behebbare Fehler aufgetreten sind), bestimmt das Verfahren, ob die Fehler aufgrund fehlerhafter Zellen aufgetreten sind, in denen die Daten nicht mehr ordnungsgemäß gespeichert werden. Wenn dies der Fall ist, konfiguriert es die Speichervorrichtung neu, so dass die fehlerhaften Zellen auf redundante Zellen im redundanten Speicher abgebildet werden.
  • Insbesondere werden in Block 602 anfängliche Daten aus einer Gruppe von Zellen im Speicherfeld gelesen. Wie sie in dieser Schrift verwendet wird, könnte eine Gruppe ein oder mehrere Bits, ein oder mehrere Nibbles, ein oder mehrere Bytes, ein oder mehrere Wörter, einen oder mehrere Blöcke, einen oder mehrere Sektoren, eine oder mehrere Seiten, das gesamte Speicherfeld oder eine andere Anzahl von Speicherzellen aufweisen.
  • In Block 604 wird ein Algorithmus verwendet, um die Anzahl von Bitfehlern in der Gruppe zu überwachen. Veranschaulichende Algorithmen könnten Fehlerkorrekturprüfungen (ECC) oder Fehlererkennung und -korrektur (EDAC) umfassen, wobei es sich um Techniken auf der Grundlage von Hamming- oder Read-Solomon-Codes handelt, bei denen redundante Bits solchermaßen zur Gruppe hinzugefügt werden, dass eine zerstörte Gruppe mit einem Einzelbitfehler ein Muster zeigt, das eindeutig auf das zerstörte Einzelbit zeigt. Diese redundanten Bits können zum Beispiel in einem „Notizblockspeicher"-Sektor innerhalb der Speichervorrichtung oder innerhalb des Speicherfelds 502 gespeichert werden. Bei weiteren Ausführungsformen könnten weitere Algorithmen verwendet werden. Zum Beispiel könnte der Algorithmus außerdem ein Paritätsprüfbit nutzen, wobei typischerweise keine Fehlerkorrekturfunktionen enthalten sind.
  • In einer ECC-Implementierung könnten, wenn eine Gruppe 2N Bit umfasst (wobei N = 0 oder eine beliebige positive Ganzzahl ist), 2·N Redundanzbits gespeichert werden. Diese Redundanzbits könnten verwendet werden, um jegliche Fehler innerhalb der Gruppe zu erkennen und Einzelbitfehler innerhalb der Gruppe zu identifizieren und zu korrigieren. Wenn zum Beispiel eine 32-Bit-Gruppengröße (das heißt 25 Bit) ausgewählt wird, könnten 10 Redundanzbits (das heißt 2·5 Redundanzbits) gespeichert werden. Wenn ein Einzelbitfehler auftritt, könnten diese Bits dann das einzelne Fehlerbit identifizieren und korrigieren. Wenn ein Multibit-Fehler aufgetreten ist, könnten diese Bits den Benutzer über den Fehler benachrichtigen oder eine andere geeignete Maßnahme einleiten. Während mehr Redundanzbits für eine bestimmte Gruppengröße dazu tendieren, einen umfangreicheren Fehlerschutz bereitzustellen, würden diese Redundanzbits auch dazu tendieren, die Leistung der Vorrichtung durch das Hinzufügen von zusätzlichem Berechnungsaufwand zu verringern. Daher besteht typischerweise ein Kompromiss zwischen der Leistung und der Fähigkeit, Bitfehler zu korrigieren.
  • In Block 606 erfolgt eine optionale Bestimmung hinsichtlich dessen, ob die Anzahl von Bitfehlern größer ist als die Anzahl von Bits, die der Algorithmus korrigieren kann (das heißt größer als ein Korrekturmöglichkeits-Schwellenwert). Wie sich aus der obigen Erörterung erkennen lässt, ist der Korrekturmöglichkeits-Schwellenwert oft eine Funktion des spezifischen Algorithmus, der verwendet wird. Wenn die Anzahl von Bitfehlern geringer ist als der Zerstörungs-Schwellenwert („NEIN” in Block 606), dann werden die Fehler in Block 608 korrigiert. Von Block 608 aus wird das Verfahren in Block 610 fortgesetzt, wo eine Bestimmung hinsichtlich dessen erfolgt, ob eine weitere Gruppe gelesen oder getestet werden soll.
  • Wenn jedoch die Anzahl von Bitfehlern größer ist als der Korrekturmöglichkeits-Schwellenwert („JA” in Block 606), kann das Verfahren in Block 612 fortgesetzt und der Benutzer darüber benachrichtigt werden, dass Fehler aufgetreten sind.
  • Das Verfahren wird dann in Block 614 fortgesetzt und bestimmt optional, ob die Bitfehler aufgrund von fehlerhaften Zellen aufgetreten sind, die keine zuverlässigen Daten mehr bereitstellen können. Dies könnte zum Beispiel erreicht werden, indem wiederholt Testdaten in die Gruppe von Zellen geschrieben und Daten aus der Zelle zurückgelesen werden, um sicherzustellen, dass die fehlerhaften Daten nicht einfach aufgrund einer Anomalie (zum Beispiel ein Alpha-Teilchen oder eine andere Strahlung, welche die Zelle trifft und die fehlerhaften Daten verursacht) aufgetreten sind. Wenn die fehlerhaften Daten nicht das Ergebnis einer fehlerhaften Zelle sind („NEIN” in Block 614), könnte der Benutzer benachrichtigt werden, aber die gelesene oder getestete Gruppe kann nach wie vor für zukünftige Zugriffe verwendet werden.
  • Wenn die Bitfehler im Gegensatz dazu aufgrund von fehlerhaften Zellen auftreten, die keine zuverlässigen Daten mehr bereitstellen können („JA” in Block 614), leitet das Verfahren eine Redundanzkonfigurierung 616 ein, welche die Gruppe von Zellen (oder lediglich die fehlerhaften Zellen innerhalb der Gruppe) entsprechenden redundanten Zellen im redundanten Speicher zuordnet.
  • In Block 618 beginnt die Redundanzkonfigurierung, wenn der Prozess eine ausreichende Anzahl von redundanten Speicherzellen zuteilt, um die fehlerhaften Zellen oder die fehlerhafte Gruppe von Zellen zu berücksichtigen. Bei einer Ausfüh rungsform könnte der Prozess exakt genügend redundante Zellen zuteilen, um nur die fehlerhaften Zellen zu berücksichtigen, während der Prozess bei anderen Ausführungsformen genügend Zellen zuteilen könnte, um die ganze Gruppe, auf die zugegriffen wird, zu berücksichtigen. Wenn die Gruppe, auf die zugegriffen wird, zum Beispiel aus einem Wort (das heißt 32 Bit) bestünde, das 1 fehlerhafte Zelle (das heißt 1 Bit) enthält, könnte der Prozess bei einer Ausführungsform lediglich ein Einzelbit (das heißt 1 Bit) im Redundanzspeicher zuteilen, während der Prozess bei weiteren Ausführungsformen ein gesamtes Wort (das heißt 32 Bit) im Redundanzspeicher zuteilen könnte. Bei typischen Ausführungsformen könnte das gesamte Wort zugeteilt werden (im Gegensatz zum Einzelbit), um die Adressierung zu rationalisieren. Außerdem könnte in diesem Block 618, wenn im redundanten Speicher kein ausreichender Speicher verfügbar ist, ein Fehlerkenner für den Benutzer gesetzt werden. Bei einer Ausführungsform werden sowohl die redundanten Speicherzellen als auch die Adressabbildungsinformationen in einem speziellen Bereich des Speicherfelds 502 gespeichert, der für derartige Informationen reserviert ist.
  • In Block 620 wird, nachdem ausreichender redundanter Speicher zugeteilt worden ist, der Adressbereich der fehlerhaften Zellen auf einen neuen Adressbereich im redundanten Speicher abgebildet. Typischerweise könnte dies durch die Verwendung eines Nachschlagevorgangs in einer Tabelle vereinfacht werden, wobei die Steuerschaltungen eine Tabelle unterhalten, in welcher der Adressbereich der fehlerhaften Zellen und der neue Adressbereich im redundanten Speicher über Querverweise miteinander verbunden sind. Daher greifen die Steuerschaltungen, obwohl ein Benutzer den Steuerschaltungen möglicherweise eine den fehlerhaften Zellen entsprechende Adresse bereitstellt, automatisch auf den neuen Adressbereich innerhalb des redundanten Speichers zu. Somit gestaltet sich gemäß einer Implementierung der Übergang zwischen fehlerhaften Zellen und dem redundanten Speicher für einen Benutzer auf nahtlose Weise.
  • Bei einer Ausführungsform könnte dieser Nachschlagevorgang in der Tabelle als Bank aus Register oder anderen Speicherelementen in der Speichervorrichtung implementiert werden. Wenn fehlerhafte Zellen erkannt werden, könnte dann eine diesen fehlerhaften Zellen entsprechende Adresse in dieser Bank aus Registern gespeichert werden. Wenn ein Benutzer auf das Speicherfeld zugreift, kannten der Adressen-Decodierer oder andere Steuerschaltungen die vom Benutzer gelieferte Adresse mit den in der Nachschlagetabelle gespeicherten Adressen vergleichen. Wenn die vom Benutzer gelieferte Adresse einer fehlerhaften Adresse entspricht, greift die Speichervorrichtung, wie durch den Nachschlagevorgang in der Tabelle angegeben, automatisch auf die Zellen im redundanten Speicher zu.
  • Unter Bezugnahme auf 7 ist ein weiteres Verfahren 700 gemäß Aspekten der vorliegenden Erfindung zu sehen. Allgemein ausgedrückt überprüft dieses Verfahren 700 während normaler Lesevorgänge die Gruppen von Zellen innerhalb des Felds auf Fehler und korrigiert Fehler so weit wie möglich. Jedoch bestimmt dieses Verfahren 700, anders als das Verfahren 600, ob die Fehler aufgrund von fehlerhaften Zellen aufgetreten sind, bevor die Fehler unkorrigierbar werden. Wenn diese korrigierbaren Fehler aufgrund fehlerhafter Zellen aufgetreten sind, bildet das Verfahren die fehlerhaften Zellen auf entsprechende redundante Zellen ab, bevor Fehler in Kauf genommen werden müssen. Bei der veranschaulichten Ausführungsform wird dies dadurch erreicht, dass das Auslösen des Abbildungsvorgangs auf der Grundlage dessen erfolgt, ob die Anzahl von Bitfehlern ein wenig geringer ist als der der Gruppe zugeordnete Korrekturmöglichkeits-Schwellenwert.
  • In Block 702 werden anfängliche Daten wiederum aus einer Gruppe von Zellen im Speicherfeld gelesen. Als Nächstes wird in Block 704 ein Algorithmus wie die oben angesprochenen verwendet, um die Anzahl von Bitfehlern in der Gruppe zu überwachen. Diese Fehler werden so weit wie möglich korrigiert.
  • In Block 706 erfolgt eine Bestimmung hinsichtlich dessen, ob die Anzahl von Bitfehlern größer ist als ein Schwellenwert, wobei dieser Schwellenwert ein wenig niedriger ist als Korrekturmöglichkeits-Schwellenwert, welcher der zu testenden Gruppe von Zellen zugeordnet ist. Wenn zum Beispiel ein ECC-Algorithmus verwendet wird, der bis zu 4 Bit pro Gruppe korrigieren könnte, könnte der Schwellenwert auf 3 Bit gesetzt werden. Wenn die Anzahl von Bitfehlern geringer ist als dieser Schwellenwert („NEIN” in Block 706), sind die Fehler korrigiert worden, und das Verfahren 700 wird in Block 708 fortgesetzt, wo eine weitere Gruppe gelesen oder getestet werden kann.
  • Wenn die Anzahl von Bitfehlern größer ist als der Schwellenwert („JA” in Block 706), wird das Verfahren in Block 710 fortgesetzt. Wenn somit das Feld Zellen aufweist, die langsam zu fehlerhaften Zellen werden, sollte sich die Anzahl von Bitfehlern langsam erhöhen. Indem er den Schwellenwert direkt unter die Anzahl von korrigierbaren Bits setzt, kann der Benutzer die Zellen so lange noch verwenden, wie es sinnvollerweise möglich ist, und dann zu den redundanten Zellen wechseln, bevor Datenfehler auftreten.
  • In Block 710 erfolgt eine optionale Bestimmung hinsichtlich dessen, ob die Bitfehler aufgrund von fehlerhaften Zellen in der Gruppe oder zum Beispiel aufgrund einer Anomalie auftreten. Wenn die Fehler nicht aufgrund von fehlerhaften Zellen auftreten („NEIN” in Block 710), kann die Speichervorrichtung die Gruppe von Zellen im Feld weiterhin nutzen, obwohl das Verfahren den Benutzer optional darüber benachrichtigen kann, dass nachfolgend vermutlich fehlerhafte Daten auftreten werden.
  • Wenn die Bitfehler aufgrund von fehlerhaften Zellen auftreten („JA” in Block 710), teilt das Verfahren in Block 712 ausreichend redundanten Speicher zu, um die fehlerhaften Zellen (oder die zu testende Gruppe) zu berücksichtigen.
  • In Block 714 werden die korrigierten Daten, die in die fehlerhaften Zellen geschrieben werden sollten, in den zugeteilten redundanten Speicher geschrieben. Zuletzt wird in Block 716 der den fehlerhaften Zellen zugeordnete Speicherbereich auf einen neuen Adressbereich im redundanten Speicher abgebildet.
  • Somit sind in diesem Szenario typischerweise alle Datenfehler korrigiert, und es wird zeitnah zu den redundanten Speicherzellen gewechselt, um Fehler zu vermeiden.
  • Unter Bezugnahme auf 8 ist noch ein weiteres Verfahren 800 zu sehen, das geschwächte Zellen erkennen kann, indem es Daten in Zellen schreibt und dann diese Daten durch Verwendung eines zusätzlichen Schutzbandpuffers überprüft. Dieses Verfahren 800 erlaubt, dass geschwächte Zellen ersetzt werden, bevor Fehler auftreten.
  • In Block 802 werden anfängliche Daten aus einer Gruppe von Zellen in einem Pufferspeicher gespeichert, bei dem es sich zum Beispiel um eine Chip-externe Speichervorrichtung, einen „Notizblockspeicher"-Sektor innerhalb des Speicherfelds oder des Redundanzspeichers oder um einen Speicher irgendwo anders in der Vorrichtung oder im System handeln kann.
  • In Block 804 werden Testdaten in die Gruppe von Zellen geschrieben.
  • In Block 806 werden Daten aus der Gruppe gelesen. Bei einer Ausführungsform wird dieser Lesevorgang unter Verwendung eines zusätzlichen, zur Leseverstärkereinstellung hinzugefügten Schutzbandpuffers (siehe zum Beispiel 9 und die nachfolgende begleitende Erörterung) durchgeführt.
  • Als Nächstes werden in Block 808 die gelesenen Daten mit den Testdaten verglichen, die zuvor in die Zelle geschrieben worden waren. Wenn die Zellen in der Gruppe im Idealfall nicht fehlerhaft sind, waren die gelesenen Daten erwartungsgemäß gleich den Testdaten. Somit könnte bei einer Ausführungsform dieser Vergleich eine logische XOR- oder XNOR-Funktion umfassen, so dass, wenn irgendwelche gelesenen Bits von den entsprechenden Testbits abweichen, fehlerhafte Bits eindeutig identifiziert werden können. Weitere Algorithmen, wie beispielsweise die zuvor erörterten, könnten ebenfalls verwendet werden, um diesen Vergleich durchzuführen.
  • Wenn die gelesenen Daten im Vergleich mit den Testaten übereinstimmen („JA"), werden die Zellen zu diesem Zeitpunkt als ausreichend zuverlässig angesehen, und das Verfahren wird bei 810 fortgesetzt, wo eine weitere Gruppe gelesen oder getestet werden kann. Wenn im Gegensatz dazu die gelesenen Daten im Vergleich nicht mit den Testdaten übereinstimmen („NEIN” in Block 808), wird das Verfahren in Block 812 fortgesetzt.
  • In Block 812 erfolgt eine optionale Bestimmung hinsichtlich dessen, ob die Bitfehler aufgrund von fehlerhaften Zellen in der Gruppe oder lediglich aufgrund von Anomalien auftreten, welche die Zelle beeinträchtigen. Bei einer Ausführungsform könnte dies erreicht werden, indem die Blöcke 802 bis 808 wiederholt ausgeführt werden. Wenn die gelesenen Daten sich durchgängig von den Testdaten unterscheiden, werden die den fehlerhaften Bits zugeordneten Zellen somit als fehlerhaft angesehen. Wenn die gelesenen Daten im Gegensatz dazu durchgängig gleich den Testdaten sind (ungeachtet eines einmalig auftretenden Fehlers), kann das Verfahren bestimmen, dass eine Anomalie aufgetreten ist, und kann die Zellen weiterhin verwenden.
  • Wenn die Bitfehler aufgrund von fehlerhaften Zellen innerhalb der Gruppe auftreten („JA” in Block 814), teilt das Verfahren wiederum ausreichend redundanten Speicher zu, um die anfänglichen Daten zu berücksichtigen, die jetzt im Puffer gespeichert sind. Wenn der Speicher nicht ausreichend ist, kann das Verfahren einen Fehlerkenner setzen. Unter der Annahme, dass ausreichend Speicher vorhanden ist, kann das Verfahren in Block 816 die Daten aus dem Puffer in den zugeteilten Bereich im redundanten Speicher schreiben. In Block 818 kann das Verfahren den Adressbereich der fehlerhaften Zellen wie zuvor beschrieben auf einen neuen Adressbereich im redundanten Speicher abbilden.
  • 9 zeigt eine detailliertere Ausführungsform für den Fall, in dem ein zusätzlicher Schutzbandpuffer verwendet werden könnte, um geschwächte Zellen zu erkennen, die möglicherweise dazu tendieren, fehlerhafte Zellen zu werden. Wenn wie gezeigt Daten typischerweise aus einer Zelle gelesen werden, entwickelt sich auf der der Zelle zugeordneten Bitleitung eine Spannung, die proportional zum Widerstand der Speicherzelle ist. Somit wird in 9 eine Spannungsverteilung 900 der Zellen des Speicherfelds veranschaulicht, wobei die Zellen Spannungen aufweisen, die innerhalb der zuverlässigen Spannungsbereiche 902, 904 liegen, welche wie gezeigt einem Zustand „0" oder einem Zustand „1" entsprechen. Im Allgemeinen vergleicht ein Leseverstärker die Spannung aus der Zelle mit der Referenzspannung VREF und bestimmt dadurch, ob die Zelle, auf die zugegriffen wird, sich im Zustand „1" oder „0" befindet. Während des Lesevorgangs mit erhöhtem Schutzbandpuffer (siehe 8, Block 806), können der obere und der untere Schutzbandpuffer (906 bzw. 908) relativ zu normalen Lesevorgängen im Betrieb weiter von der Referenzspannung VREF weg bewegt werden. Somit unterliegen die einzelnen Speicherzellen des Felds einer strengeren Verteilung. Demgemäß können geschwächte Zellen, die dicht bei den Rändern der zuverlässigen Spannungsbereiche 902, 904 liegen, identifiziert werden. Diese geschwächten Zellen stellen oft noch exakte Daten bereit und können daher bei Bedarf auf redundante Zellen abgebildet werden, bevor Fehler auftreten.
  • Bei diversen Ausführungsformen könnte es sich bei der Speichervorrichtung um eine doppelt redundante Speichervorrichtung oder eine noch höher redundante Speichervorrichtung handeln. Zum Beispiel laufen bei einer doppelt redundanten Speichervorrichtung die oben erörterten Verfahren (oder weitere Verfahren) nicht nur im Speicherfeld (erste Redundanz) ab, sondern auch im redundanten Speicher, sowie dieser zugeteilt ist (zweite Redundanz). Demgemäß kann eine redundante Speicherzelle, wenn sie fehlerhaft wird, durch eine weitere redundante Speicherzelle (oder eine andere Speicherzelle) ersetzt werden, um die Speichervorrichtung erneut zu reparieren.
  • 10 zeigt eine Ausführungsform eines Datenverarbeitungssystems 1000, welches Datenverarbeitungsschaltungen 1002 aufweist, die so konfiguriert sind, dass sie Daten verarbeiten; und eine Speichervorrichtung 1004 zum Speichern der Daten. Bei der Speichervorrichtung kann es sich um eine beliebige der in diesem Dokument beschriebenen Speichervorrichtungen handeln. Zum Beispiel kann bei einer Ausführungsform die Speichervorrichtung 1004 ein Feld aus Phasenwechsel-Speicherzellen umfassen. Bei einer Ausführungsform könnte es sich bei dem Datenverarbeitungssystem 1000 um eine Kommunikationsvorrichtung handeln, wie beispielsweise ein Mobiltelefon oder ein Personenrufgerät (Pager). Bei weiteren Ausführungsformen könnte es sich bei dem Datenverarbeitungssystem 1000 um ein tragbares elektronisches Produkt handeln, wie beispielsweise einen tragbaren Computer, ein Mobiltelefon, ein Personenrufgerät, eine Kamera, ein Musikgerät, ein Sprachaufzeichnungsgerät, usw. Bei noch weiteren Ausführungsformen, könnte das Datenverarbeitungssystem 1000 ein elektronisches System, wie beispielsweise ein Automobil, ein Flugzeug, eine industrielle Steueranlage, usw. umfassen.
  • Während aus praktischen Gründen und aus Gründen der Klarheit eine Ausführungsform einer binären Phasenwechsel-Speicherzelle erörtert wurde, betreffen Aspekte der vorliegenden Erfindung ebenfalls Multibit-Speicherzellen (zum Beispiel Multibit-Phasenwechsel-Speicherzellen, Multibit-Flash-Zellen, resistive Multibit-Zellen, usw.), wie beispielsweise mehr als 2 Ebenen, die von einer physischen Speicherzelle gespeichert werden, das heißt, 1,5 Bit/Zelle. 11 zeigt eine Widerstandsverteilung der Multibit-Zelle, die wiederum ein allgemeines Schema zeigt, bei dem ein Bereich von Widerständen in eine Reihe von zuverlässigen Widerstandsbereichen aufgeteilt werden kann. Diese Multibit-Speicherzellen könnten auch von der günstigen Verteilung abweichen, wodurch, wie oben beschrieben, fehlerhafte Zellen entstehen.
  • Während die Erfindung im Hinblick auf eine oder mehr Implementierungen veranschaulicht und beschrieben wurde, können Veränderungen und/oder Modifikationen an den veranschaulichten Beispielen vorgenommen werden, ohne dass hierdurch vom Gedanken und Schutzumfang der angehängten Ansprüche abgewichen wird. Mit besonderem Hinblick auf die verschiedenen Funktionen, die von den oben beschriebenen Komponenten oder Strukturen (Baugruppen, Vorrichtungen, Schaltungen, Systeme, usw.) ausgeführt werden, ist beabsichtigt, dass die Begriffe (einschließlich einer Bezugnahme auf ein „Mittel"), die zum Beschreiben solcher Komponenten verwendet werden, jeder beliebigen Komponente oder Struktur entsprechen sollen, welche die angegebene Funktion der beschriebenen Komponente ausführt (zum Beispiel, dass sie funktional gleichwertig ist), obwohl sie nicht strukturell gleichwertig mit der offenbarten Struktur ist, welche die Funktion in den in diesem Dokument veranschaulichten, beispielhaften Implementierungen der Erfindung ausführt, es sei denn, es ist es ist etwas anderes angegeben. Außerdem kann, während ein bestimmtes Merkmal der Erfindung im Hinblick auf nur eine von mehreren Implementierungen offenbart worden sein kann, ein solches Merkmal mit einem oder mehreren weiteren Merkmalen der anderen Implementierungen kombiniert werden, soweit dies für jede beliebige betreffende oder bestimmte Anwendung wünschenswert und vorteilhaft ist. Außerdem sollen, in dem Maße, in dem die Begriffe „umfassend", „umfasst", „aufweisend", „aufweist", „mit" oder Varianten davon sowohl in der ausführlichen Beschreibung als auch in den Ansprüchen verwendet werden, solche Begriffe auf eine Weise einschließend sein, dass sie gleichbedeutend mit dem Begriff „enthaltend" sind.

Claims (23)

  1. Verfahren zum Reparieren eines Speicherfelds, wobei das Verfahren Folgendes umfasst: Analysieren, ob eine Gruppe aus zumindest einer resistiven Speicherzelle des Speicherfelds zumindest eine fehlerhafte Zelle umfasst, die nicht mehr ordnungsgemäß Daten speichert; und wenn die Gruppe zumindest eine fehlerhafte Zelle umfasst, dynamisches Zuweisen von zumindest der zumindest einen fehlerhaften Zelle zu zumindest einer anderen Zelle.
  2. Verfahren nach Anspruch 1, wobei das Analysieren, ob die Gruppe Daten nicht mehr ordnungsgemäß speichern kann, Folgendes umfasst: Verwenden eines ECC-Algorithmus, um die Anzahl von Bitfehlern innerhalb der Gruppe zu überwachen.
  3. Verfahren nach Anspruch 2, das ferner Folgendes umfasst: Auslösen der dynamischen Zuweisung auf der Grundlage dessen, ob die Anzahl von Bitfehlern größer ist als eine Anzahl von mit der Gruppe verbundenen, korrigierbaren Bits.
  4. Verfahren nach Anspruch 2, das ferner Folgendes umfasst: Auslesen der dynamischen Zuweisung auf der Grundlage dessen, ob die Anzahl von Bitfehlern geringer ist als eine Anzahl von mit der Gruppe verbundenen, korrigierbaren Bits.
  5. Verfahren nach Anspruch 1, wobei die Speicherzellen des Speicherfelds Phasenwechsel-Speicherzellen aufweisen.
  6. Verfahren zum Reparieren eines Speicherfelds, wobei das Verfahren Folgendes umfasst: periodisches Analysieren einer Gruppe von zumindest einer Speicherzelle, um zu bestimmen, ob ein Widerstand von zumindest einer der Zellen innerhalb der Gruppe von einer Anzahl von zuverlässigen Widerstandsbereichen abgewichen ist, wobei jeder zuverlässige Widerstandsbereich einem anderen Datenzustand entspricht; und wenn der Widerstand von zumindest einer fehlerhaften Zelle aus der Anzahl von zuverlässigen Widerstandsbereichen heraus abgewichen ist, dynamisches Zuweisen zumindest der zumindest einen fehlerhaften Zelle zu zumindest einer anderen Zelle.
  7. Verfahren nach Anspruch 6, wobei das Analysieren der Gruppe Folgendes umfasst: Verwenden von ECC, um periodisch zu bestimmen, ob der Widerstand von zumindest einer der Zellen aus der Anzahl von zuverlässigen Widerstandsbereichen heraus abgewichen ist.
  8. Verfahren nach Anspruch 6, das ferner Folgendes umfasst: Zuweisen einer Anzahl von Bitfehlern zu einer Anzahl fehlerhafter Zellen; und Auslösen der dynamischen Zuweisung der zumindest einen fehlerhaften Zelle zu der zumindest einen anderen Zelle auf der Grundlage dessen, ob die Anzahl von Bitfehlern größer ist als eine Anzahl von mit der Gruppe verbundenen, korrigierbaren Bits.
  9. Verfahren nach Anspruch 6, das ferner Folgendes umfasst: Zuweisen einer Anzahl von Bitfehlern zur Anzahl fehlerhafter Zellen, Auslösen der dynamischen Zuordnung der zumindest einen fehlerhaften Zelle zu der zumindest einen anderen Zelle auf der Grundlage dessen, ob die Anzahl von Bitfehlern geringer ist als eine Anzahl von mit der Gruppe verbundenen, korrigierbaren Bits.
  10. Verfahren nach Anspruch 6, wobei die Speicherzellen des Speicherfelds Phasenwechsel-Speicherzellen aufweisen.
  11. Speichervorrichtung, die Folgendes aufweist: ein Feld aus auf einem Halbleiterkörper ausgebildeten, resistiven Speicherzellen; einen redundanten Speicher mit redundanten Speicherzellen, die zum Ersetzen von einigen der resistiven Speicherzellen des Felds reserviert sind; Steuerschaltungen, die so konfiguriert sind, dass sie bestimmen, ob beliebige resistive Speicherzellen innerhalb des Felds fehlerhafte Speicherzellen sind, und, wenn dies der Fall ist, die fehlerhaften Zellen dynamisch redundanten Speicherzellen im redundanten Speicher zuordnen.
  12. Speichervorrichtung nach Anspruch 11, wobei die Steuerschaltungen so konfiguriert sind, dass sie periodisch die Anzahl von Bitfehlern innerhalb der Gruppe überwachen und dadurch bestimmen, ob beliebige resistive Speicherzellen innerhalb des Felds fehlerhafte Zellen sind.
  13. Speichervorrichtung nach Anspruch 11, wobei die Steuerschaltungen ferner so konfiguriert sind, dass sie: Testdaten in resistive Speicherzellen im Speicherfeld schreiben; Daten aus den resistiven Speicherzellen lesen, nachdem Testdaten in die resistiven Speicherzellen geschrieben wurden; die gelesenen Daten mit den Testdaten vergleichen, um zu bestimmen, ob fehlerhafte Zellen vorhanden sind.
  14. Speichervorrichtung nach Anspruch 11, wobei die Speicherzellen Phasenwechsel-Speicherzellen aufweisen.
  15. Speichervorrichtung, die Folgendes aufweist: ein Feld aus auf einem Halbleiterkörper ausgebildeten, resistiven Speicherzellen; Steuerschaltungen, die so konfiguriert sind, dass sie einen ersten Leserverstärkerpegel verwenden, um Daten aus den Speicherzellen des Felds zu lesen, und einen zweiten Leseverstärkerpegel verwenden, der vom ersten Leseverstärkerpegel verschieden ist, um geschwächte Speicherzellen innerhalb des Felds zu erkennen.
  16. Speichervorrichtung nach Anspruch 15, die ferner Folgendes aufweist: redundante Speicherzellen, die zum Ersetzen von einigen der resistiven Speicherzellen des Felds reserviert sind; wobei die Steuerschaltungen ferner so konfiguriert sind, dass sie die geschwächten Zellen dynamisch den redundanten Speicherzellen zuordnen.
  17. Speichervorrichtung nach Anspruch 16, wobei die redundanten Speicherzellen des redundanten Speichers resistive Speicherzellen des Felds aufweisen.
  18. Speichervorrichtung nach Anspruch 16, wobei die redundanten Speicherzellen des redundanten Speichers Speicherelemente aufweisen, die sich außerhalb des Speicherfelds befinden.
  19. Speichervorrichtung nach Anspruch 15, wobei die Speicherzellen Phasenwechsel-Speicherzellen aufweisen.
  20. Verfahren zum Aufrechterhalten eines Felds von resistiven Speicherzellen, wobei eine Anzahl von zuverlässigen Widerstandsbereichen dem Feld zugeordnet ist und jeder zuverlässige Widerstandsbereich einem anderen Datenzustand entspricht, wobei das Verfahren Folgendes umfasst: Bereitstellen von Steuersignalen, um zu analysieren, ob eine Gruppe von zumindest einer resistiven Speicherzelle des Felds zumindest eine geschwächte Zelle umfasst, die einen Widerstand innerhalb eines der zuverlässigen Widerstandsbereiche, aber dicht beim Rand des einen zuverlässigen Widerstandsbereichs aufweist; und wenn die Gruppe zumindest eine geschwächte Zelle umfasst, dynamisches Zuweisen von zumindest der zumindest einen geschwächten Zelle zu zumindest einem anderen Speicherelement.
  21. Verfahren nach Anspruch 20, wobei das Analysieren, ob die Gruppe zumindest eine geschwächte Zelle umfasst, Folgendes umfasst: Lesen aus der Gruppe von zumindest einer resistiven Speicherzelle durch Verwenden eines zweiten Leseverstärkerpegels, der sich von einem während normalen Lesevorgängen verwendeten, ersten Leseverstärkerpegel unterscheidet; und Auslösen der dynamischen Zuweisung auf der Grundlage dessen, ob eine Anzahl von mit dem zweiten Leseverstärkerpegel gelesenen Bitfehlern größer ist als ein Schwellenwert.
  22. Verfahren nach Anspruch 21, wobei das Zuweisen von zumindest der zumindest einen geschwächten Zelle zu dem zumindest einen anderen Speicherelement Folgendes umfasst: Abbilden von zumindest einer Adresse, die zumindest der zumindest einen geschwächten Zelle entspricht, auf zumindest eine neue Adresse in einem redundanten Speicher.
  23. Verfahren nach Anspruch 22, wobei die Speicherzellen des Speicherfelds Phasenwechsel-Speicherzellen aufweisen.
DE102008030858A 2007-06-29 2008-06-30 Speicher mit dynamischer Redundanzkonfigurierung Pending DE102008030858A1 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US94730107P 2007-06-29 2007-06-29
US60/947,301 2007-06-29
US12/120,946 2008-05-15
US12/120,946 US7778070B2 (en) 2007-06-29 2008-05-15 Memory with dynamic redundancy configuration

Publications (1)

Publication Number Publication Date
DE102008030858A1 true DE102008030858A1 (de) 2009-02-05

Family

ID=40160213

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102008030858A Pending DE102008030858A1 (de) 2007-06-29 2008-06-30 Speicher mit dynamischer Redundanzkonfigurierung

Country Status (2)

Country Link
US (1) US7778070B2 (de)
DE (1) DE102008030858A1 (de)

Families Citing this family (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8762620B2 (en) 2007-12-27 2014-06-24 Sandisk Enterprise Ip Llc Multiprocessor storage controller
KR101407362B1 (ko) * 2008-06-23 2014-06-16 삼성전자주식회사 상 변화 메모리 장치
US8010847B2 (en) * 2008-09-30 2011-08-30 Infineon Technologies Ag Memory repair
US7995381B2 (en) * 2008-10-27 2011-08-09 Infineon Technologies Ag Method of programming resistivity changing memory
US8331128B1 (en) 2008-12-02 2012-12-11 Adesto Technologies Corporation Reconfigurable memory arrays having programmable impedance elements and corresponding methods
KR101046703B1 (ko) * 2009-03-25 2011-07-05 주식회사 하이닉스반도체 데이터 쓰기회로 및 그를 이용한 반도체 메모리 장치
US8294488B1 (en) * 2009-04-24 2012-10-23 Adesto Technologies Corporation Programmable impedance element circuits and methods
CN102714061A (zh) * 2009-11-20 2012-10-03 拉姆伯斯公司 用于dram故障校正的位替代技术
KR20110107190A (ko) * 2010-03-24 2011-09-30 삼성전자주식회사 저항성 메모리의 마모 셀 관리 방법 및 장치
US8913444B1 (en) 2011-03-01 2014-12-16 Adesto Technologies Corporation Read operations and circuits for memory devices having programmable elements, including programmable resistance elements
US8633566B2 (en) 2011-04-19 2014-01-21 Micron Technology, Inc. Memory cell repair
US9165677B2 (en) * 2011-05-17 2015-10-20 Maxlinear, Inc. Method and apparatus for memory fault tolerance
CN104040634A (zh) * 2012-01-12 2014-09-10 索尼公司 存储控制装置、存储装置、信息处理系统及其处理方法
US8599606B2 (en) * 2012-02-16 2013-12-03 Qualcomm Incorporated Memory bit repair scheme
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
US9734921B2 (en) 2012-11-06 2017-08-15 Rambus Inc. Memory repair using external tags
US9501398B2 (en) 2012-12-26 2016-11-22 Sandisk Technologies Llc Persistent storage device with NVRAM for staging writes
US9612948B2 (en) 2012-12-27 2017-04-04 Sandisk Technologies Llc Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
US9111624B2 (en) * 2013-03-22 2015-08-18 Katsuyuki Fujita Semiconductor memory device
WO2014175877A1 (en) * 2013-04-24 2014-10-30 Hewlett-Packard Development Company, L.P. Representing data using a group of multilevel memory cells
US9685217B2 (en) * 2013-07-22 2017-06-20 Taiwan Semiconductor Manufacturing Company Ltd. Memory device with over-refresh and method thereof
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
US9639463B1 (en) 2013-08-26 2017-05-02 Sandisk Technologies Llc Heuristic aware garbage collection scheme in storage systems
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US9703816B2 (en) 2013-11-19 2017-07-11 Sandisk Technologies Llc Method and system for forward reference logging in a persistent datastore
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9520162B2 (en) 2013-11-27 2016-12-13 Sandisk Technologies Llc DIMM device controller supervisor
US9582058B2 (en) 2013-11-29 2017-02-28 Sandisk Technologies Llc Power inrush management of storage devices
US9952796B2 (en) 2014-01-31 2018-04-24 Hewlett Packard Enterprise Development Lp Data storing in memory arrays
US9703636B2 (en) 2014-03-01 2017-07-11 Sandisk Technologies Llc Firmware reversion trigger and control
US9495261B2 (en) * 2014-03-13 2016-11-15 Qualcomm Incorporated Systems and methods for reducing memory failures
US9448876B2 (en) * 2014-03-19 2016-09-20 Sandisk Technologies Llc Fault detection and prediction in storage devices
US9454448B2 (en) * 2014-03-19 2016-09-27 Sandisk Technologies Llc Fault testing in storage devices
US9626399B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Conditional updates for reducing frequency of data modification operations
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9697267B2 (en) 2014-04-03 2017-07-04 Sandisk Technologies Llc Methods and systems for performing efficient snapshots in tiered data structures
US10372613B2 (en) 2014-05-30 2019-08-06 Sandisk Technologies Llc Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device
US10146448B2 (en) 2014-05-30 2018-12-04 Sandisk Technologies Llc Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device
US10656842B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device
US10114557B2 (en) 2014-05-30 2018-10-30 Sandisk Technologies Llc Identification of hot regions to enhance performance and endurance of a non-volatile storage device
US10162748B2 (en) 2014-05-30 2018-12-25 Sandisk Technologies Llc Prioritizing garbage collection and block allocation based on I/O history for logical address regions
US10656840B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Real-time I/O pattern recognition to enhance performance and endurance of a storage device
US9703491B2 (en) 2014-05-30 2017-07-11 Sandisk Technologies Llc Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
US9595354B2 (en) * 2014-12-15 2017-03-14 Infineon Technologies Ag Nonvolatile memory refresh
KR20160132169A (ko) * 2015-05-06 2016-11-17 에스케이하이닉스 주식회사 반도체 메모리 장치를 포함하는 메모리 시스템 및 그것의 프로그램 방법
KR20170055222A (ko) * 2015-11-11 2017-05-19 삼성전자주식회사 리페어 단위 변경 기능을 가지는 메모리 장치 및 메모리 시스템
US9953728B2 (en) 2016-07-21 2018-04-24 Hewlett Packard Enterprise Development Lp Redundant column or row in resistive random access memory
US10706923B2 (en) * 2017-09-08 2020-07-07 Arizona Board Of Regents On Behalf Of Arizona State University Resistive random-access memory for exclusive NOR (XNOR) neural networks

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6584589B1 (en) * 2000-02-04 2003-06-24 Hewlett-Packard Development Company, L.P. Self-testing of magneto-resistive memory arrays
DE102004015928A1 (de) * 2004-03-31 2005-10-27 Infineon Technologies Ag Schreib-/Lösch-Verfahren für resistiv schaltende Speicherbauelemente
KR100809325B1 (ko) * 2006-03-15 2008-03-06 삼성전자주식회사 상변화 메모리 장치
US20080198674A1 (en) * 2007-02-21 2008-08-21 Jan Keller Method of testing an integrated circuit, method of determining defect resistivity changing cells, testing device, and computer program adapted to perform a method for testing an integrated circuit
US7606111B2 (en) * 2007-04-26 2009-10-20 Super Talent Electronics, Inc. Synchronous page-mode phase-change memory with ECC and RAM cache
US8064265B2 (en) * 2008-01-31 2011-11-22 Intel Corporation Programming bit alterable memories

Also Published As

Publication number Publication date
US20090003046A1 (en) 2009-01-01
US7778070B2 (en) 2010-08-17

Similar Documents

Publication Publication Date Title
DE102008030858A1 (de) Speicher mit dynamischer Redundanzkonfigurierung
DE102017128940B4 (de) System und Verfahren zum dynamischen Falten oder direkten Schreiben basierend auf Block-Störungsfreiheit in einem nichtflüchtigen Speichersystem
DE602004011097T2 (de) Flash-speicherdatenkorrektur- und scrub-techniken
DE102006033649B4 (de) Speicherbauelement und Verfahren zum Konfigurieren eines Speicherbauelements
DE102008030264B4 (de) Verfahren zum Lesen eines Flashspeichers und Speichersystem
DE112010003645B4 (de) Festkörper-Speichersystem mit Parallelem Zugriff aus Mehreren Flash/PCM-Einrichtungen
DE102020130044A1 (de) Techniken zum verhindern von lese-störung in nand-speicher
DE112011100579B4 (de) Verfahren und vorrichtung zum verwenden von cachespeicher in einem system, welches einen niedrigleistungszustand unterstützt
DE102006001492B4 (de) Halbleiterspeicheranordnung und Verfahren zum Betreiben einer Halbleiterspeicheranordnung
DE60306510T2 (de) Verfahren zum Speichern von Daten in nicht-flüchtigen Speichern
DE102019123709A1 (de) Verwendung verschachtelter schreibvorgänge zur trennung von die-ebenen
DE102008030859A1 (de) Konditionierungsvorgänge für Speicherzellen
DE112014001305B4 (de) Auswahl einer redundanten Datenspeicherkonfiguration auf der Grundlage verfügbaren Speicherplatzes
DE10233642A1 (de) Fehlerkorrektur-Kodierung und -Dekodierung in einer Festkörper-Speicherungsvorrichtung
DE112014002632T5 (de) Lesespannungsberechnung bei Solid-State-Speichervorrichtungen
DE112008001151B4 (de) Mehrbitprogrammiervorrichtung und Verfahren zum Mehrbitprogrammieren
DE102005052698A1 (de) Verfahren zur Verarbeitung von nichtflüchtig gespeicherten Daten
DE112006003381T5 (de) Reparatur-BITS für Niederspannungs-Cache
DE102019102573A1 (de) Speichercontroller, speichersystem und verfahren zum verwenden einer speichervorrichtung
DE102009047875A1 (de) Speicherreparatur
DE102020115747A1 (de) Speichermodul, Fehlerkorrekturverfahren für Speicher-Controller, der dieses steuert, und Rechensystem, das dieses umfasst
DE102021107436A1 (de) Speichersystem und Verfahren zum direkten Quad-Level-Cell-Programmieren (QLC-Programmieren)
DE102020106006A1 (de) Partieller xor-schutz
DE112020000182T5 (de) Blockqualitätsklassifizierung beim testen für nichtflüchtigen speicher und flags für mehrere fehlerhafte blöcke bezüglich produktdiversität
DE102019116097A1 (de) Vorprogramm-lesevorgang zur behebung von wortleitungsfehlern

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R081 Change of applicant/patentee

Owner name: INFINEON TECHNOLOGIES AG, DE

Free format text: FORMER OWNER: INFINEON TECHNOLOGIES AG, QIMONDA AG, , DE

Owner name: INFINEON TECHNOLOGIES AG, DE

Free format text: FORMER OWNERS: INFINEON TECHNOLOGIES AG, 85579 NEUBIBERG, DE; QIMONDA AG, 81739 MUENCHEN, DE

R082 Change of representative

Representative=s name: VIERING, JENTSCHURA & PARTNER PATENT- UND RECH, DE

Representative=s name: VIERING, JENTSCHURA & PARTNER MBB PATENT- UND , DE

R016 Response to examination communication
R016 Response to examination communication