DE60222891T2 - Nichtflüchtige Speichervorrichtung und Selbstreparatur-Verfahren - Google Patents

Nichtflüchtige Speichervorrichtung und Selbstreparatur-Verfahren Download PDF

Info

Publication number
DE60222891T2
DE60222891T2 DE60222891T DE60222891T DE60222891T2 DE 60222891 T2 DE60222891 T2 DE 60222891T2 DE 60222891 T DE60222891 T DE 60222891T DE 60222891 T DE60222891 T DE 60222891T DE 60222891 T2 DE60222891 T2 DE 60222891T2
Authority
DE
Germany
Prior art keywords
redundancy
address
unit
data
data storage
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.)
Expired - Lifetime
Application number
DE60222891T
Other languages
English (en)
Other versions
DE60222891D1 (de
Inventor
Luca De Ambroggi
Carmelo Condemi
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.)
STMicroelectronics SRL
Original Assignee
STMicroelectronics SRL
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 STMicroelectronics SRL filed Critical STMicroelectronics SRL
Application granted granted Critical
Publication of DE60222891D1 publication Critical patent/DE60222891D1/de
Publication of DE60222891T2 publication Critical patent/DE60222891T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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/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/785Masking faults in memories by using spares or by reconfiguring using programmable devices with redundancy programming schemes
    • G11C29/789Masking faults in memories by using spares or by reconfiguring using programmable devices with redundancy programming schemes using non-volatile cells or latches
    • 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/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/816Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
    • G11C29/82Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for EEPROMs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells

Landscapes

  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

  • Die vorliegende Erfindung bezieht sich auf eine nichtflüchtige Speichervorrichtung sowie auf ein Eigen-Redundanzverfahren bei dieser.
  • Wie bekannt ist, sind Redundanz-Strukturen zum Ersetzen von fehlerhaften Speicherstellen vorgesehen, um dadurch eine Ausschusssituation der gesamten Speichervorrichtung zu verhindern.
  • Normalerweise erfolgt das Ersetzen einer fehlerhaften Speicherstelle durch eine Redundanz-Einrichtung in den abschließenden Produktionsschritten, wenn ein spezieller Test, der als elektrischer Wafersortiertest (EWS) bezeichnet wird, einen Defekt feststellt.
  • Die Konstruktion, die üblicherweise zum Speichern der Adressen von redundanten oder ersetzten Speicherstellen verwendet wird, ist in erster Linie gebildet aus CAM-Anordnungen, d. h., nichtflüchtigen Speichereinheiten, die durch den Hersteller in dem Testvorgang programmiert und gelöscht werden können. Insbesondere wird bei Feststellung eines Defekts an einer Speicherstelle in den CAMs Information gespeichert, die dafür gedacht ist, die zu ersetzende Speicherstelle in eindeutiger Weise zu bestimmen.
  • Die in den CAMs gespeicherte Information kann unterschiedlicher Art sein: Die Adressen der zu reparierenden Stelle, ob und welches Bit-Paket des adressierten Worts zu ersetzen ist, ob ein gesamter Sektor zu ersetzen ist, ob die Anordnung bereits zum Speichern einer Adresse einer fehlerhaften Stelle verwendet worden ist oder nicht (Schutzinformation), usw.
  • Die Anzahl der Anordnungen, die bei der Redundanz-Struktur verwendet werden, definiert die maximale Anzahl von Paketen (Spalten, Bytes, Reihen, Sektoren – die im Folgenden auch als Speichereinheiten oder Speicherstellen bezeichnet werden), die in der gesamten Speicheranordnung ausgetauscht werden können.
  • Wenn nun die Stelle ersetzt worden ist, ist es notwendig, eine Anzahl von Vorgängen zum Identifizieren der Stelle auszuführen, die die Information anstelle der fehlerhaften Speicherstelle speichert.
  • Die Prüfung und ein möglicher Redundanz-Austausch erfolgen für jeden beliebigen Vorgang, und zwar Lesen oder Schreiben, der an der fehlerhaften Stelle ausgeführt werden soll, und zwar wenn ein Adressieren der Stelle erforderlich ist.
  • Die Struktur zum Handhaben von Redundanz hat die Funktion einer Verifizierung, ob sich die zeitlich adressierte Stelle unter den ersetzten Stellen befindet, und wenn dies der Fall ist, für eine Aktivierung der Redundanz-Stellen sowie eine gleichzeitige Deaktivierung des Decodiervorgangs der Speicheranordnung entsprechend der fehlerhaften Stelle zu sorgen.
  • Im Spezielleren wird die Adresse der Stelle, die gelesen oder geschrieben werden soll (Programmieren oder Löschen), mit den Adressen der ersetzten Stellen während der Testschritte verglichen, und im Fall einer Übereinstimmung mit einer von diesen wird ein "Treffersignal" erzeugt, das die Aufgabe hat, die Redundanz-Schaltungseinrichtungen zu aktivieren und die fehlerhafte Stelle zu ersetzen (ob es sich nun um ein Bit, ein Byte, ein Wort oder einen Sektor handelt), indem in körperlicher Weise auf die Redundanz-Einheit gezeigt wird.
  • In der nachfolgenden Beschreibung beschränkt sich die Erörterung auf den Fall einer Sektor-Redundanz. Die nachfolgenden Betrachtungen sind jedoch ebenso für andere Arten von Redundanz anwendbar, wie zum Beispiel für Spalten-Redundanz.
  • In der Literatur ist die Sektor-Redundanz komplementär zu der Spalten-Redundanz und gegenüber der Reihen-Redundanz für Speichervorrichtungen mit hoher Dichte bevorzugt (d. h., mit einer Dichte von größer oder gleich 16 Megabits). Ferner ist die Sektor-Redundanz im Hinblick auf die Fläche, die Geschwindigkeit und die Leistungsfähigkeit des Speichers während der Lesevorgänge bevorzugt, wobei sie letztendlich auch wegen einer höheren Flexibilität beim Lösen von ernst haften Problemen bevorzugt ist, die in der Anordnung entstehen können, wie zum Beispiel Kurzschlüssen zwischen Wortleitungen und Substrat.
  • Derzeit fasst die übliche Sektor-Redundanz eine Mehrzahl von Redundanz-Einheiten ins Auge, die im Hinblick auf Flächeneffizienz und Ausbeute als Redundanz-Einheit (Redundanz-Sektor) für jedes Vielfache von 16 Megabits ausgedrückt werden können. Jede Redundanz-Einheit ist daher einer CAM-Anordnung zugeordnet, die eine Mehrzahl von nichtflüchtigen Zellen aufweist, die gleich der Anzahl von Bits der Adresse sind, die zum Identifizieren jedes Sektors der Speicheranordnung erforderlich ist. Jede CAM-Anordnung identifiziert somit einen fehlerhaften Sektor.
  • Ferner ist ein weiteres nichtflüchtiges Speicherelement, das als Schutz-CAM-Element bezeichnet wird, jeder Redundanz-Einheit zugeordnet und zum Speichern von Schutzinformation vorgesehen, die spezifiziert, ob die zugeordnete Redundanz-Einheit benutzt worden ist oder nicht.
  • Während des Lesens oder Programmierens der Zellen der Speicheranordnung führt der Vergleich zwischen den Adressen, die von außen durch den Benutzer zugeführt werden, sowie den in den CAMs gespeicherten Adressen bei Vorhandensein der aktivierten Schutzinformation zur Entstehung des vorstehend genannten "Treffersignals".
  • Bei derzeitigen Speicherarchitekturen wird der Inhalt der CAMs, die in der vorstehend genannten Weise während des EWS-Testschrittes programmiert werden, in kontinuierlicher Weise über die Lebensdauer der Vorrichtung gelesen, und zwar unter Verwendung einer Struktur, deren Zellen durch den Drain-Anschluss direkt mit Zwischenspeichern verbunden sind, die den Inhalt der in den CAMs vorhandenen Information Puffern.
  • Die Programmierung erfolgt unter Verwendung der gleichen Schalterstruktur (den so genannten "Programmladern" [program loads], die in der Anordnung vorhanden ist, und zwar unter Sperren der Anordnungs-Decodierschaltungen, Freigabe der Redundanz-Schaltungen und Veranlassen einer Bewegung des Bezugselements (Drain-Spannung) entlang der Bitleitungen (Haupt-Bitleitung im Fall einer hierarchischen Architektur), die in der Speicheranordnung vorhanden sind.
  • Beispiele für Architekturen und Verfahren zum Ersetzen von fehlerhaften Zellen während eines EWS-Tests oder anderer Tests durch standardmäßige Sicherungselemente sind zum Beispiel in der EP 0 805 451 , der US 6 363 020 , der US 5 668 818 und der EP 0 867 810 offenbart.
  • Die EP 1 107 121 lehrt eine nichtflüchtige Speichervorrichtung mit den Merkmalen des Oberbegriffs des Anspruchs 1, wobei diese ein Testverfahren zum Beurteilen der Gültigkeit von zu Beginn vorgegebenen Daten beinhaltet, und zwar einschließlich von Adressen von fehlerhaften Zellen.
  • Die genannte Architektur ermöglicht keine einfache Aktivierung und Handhabung der Redundanz zum Adressieren der nichtflüchtigen Zellen während eines normalen Betriebs der Vorrichtung unter Verwendung eines automatischen Austauschalgorithmus, der bereits in der Vorrichtung vorhandene Strukturen und Schaltungen nutzt.
  • Das Ziel der vorliegenden Erfindung besteht somit in der Schaffung einer Speichervorrichtung und eines Verfahrens, die eine Aktivierung und Handhabung von Redundanz während eines normalen Betriebs ermöglichen, und zwar unter Nutzung der bereits in der Anordnung vorhandenen Schaltungen zum Lesen, Programmieren, Löschen und Verifizieren.
  • Gemäß der vorliegenden Erfindung werden eine nichtflüchtige Speichervorrichtung und ein Redundanz-Verfahren geschaffen, wie diese im Anspruch 1 bzw. 10 definiert sind.
  • Für ein besseres Verständnis der vorliegenden Erfindung wird im Folgenden eine bevorzugte Ausführungsform lediglich an Hand eines nicht einschränkenden Bei spiels unter Bezugnahme auf die beigefügten Zeichnungen beschrieben; darin zeigen:
  • 1 ein Blockdiagramm einer Speichervorrichtung gemäß der Erfindung;
  • 2 ein vereinfachtes Schaltbild eines erfindungsgemäßen Blocks der 1;
  • 3 und 4 Flussdiagramme des erfindungsgemäßen Verfahrens; und
  • 5 eine Darstellung zur Erläuterung der Zuordnung zwischen Registern und Redundanz-Sektoren gemäß der Erfindung.
  • Bei der Vorrichtung und dem Verfahren, wie diese im Folgenden ausführlich erläutert werden, werden die bereits zum Lesen der Anordnung vorhandene Lesestruktur, die Struktur, die die Sektoren für die Handhabung von Defekten sowie zu löschende Sektoren speichert sowie der Zähler der vorliegenden Adressen verwendet. Auf diese Weise können sogar die gesamte Teststruktur und die Testverfahrensweise des DMA-Tests, des Schatten-Tests sowie des CAM-Programmier- und Löschtests in unveränderter Weise aufrecht erhalten werden.
  • Für ein besseres Verständnis der Erfindung wird nun unter Bezugnahme auf 1 die vereinfachte Struktur eines Speichers 1 vom Flash-Typ beschrieben, wie er gemäß der Erfindung für die Schaffung von Eigen-Redundanz modifiziert ist.
  • Der Speicher 1 besitzt eine Speicheranordnung 2, die aus Standard-Sektoren 19a (von denen nur zwei gezeigt sind) sowie aus Redundanz-Sektoren 19b (von denen nur zwei gezeigt sind) gebildet ist. Die Speicheranordnung 2 ist in bekannter Weise mit einem Reihen-Decoderblock 3 und einem Spalten-Decoderblock 4 verbunden. Der Spalten-Decoderblock 4 weist ferner Abtastverstärker SA und Programmlader auf, die beide nach einer bekannten Struktur ausgebildet sind.
  • Ein Adressenzählerblock 5 weist einen mit einem Adresseneingangsgate 6 verbundenen Eingang auf, von dem er von außerhalb allgemeine Adressen ADD erhält; der Adressenzählerblock 5 generiert unter der Steuerung einer Zustandsmaschine 12 interne Adressen zum Adressieren der Speicheranordnung 2, wobei diese auf einem Adressenbus 8 (ADDBUS) zugeführt werden. Der Adressenbus 8 ist mit dem Reihen-Decoderblock 3 und dem Spalten-Decoderblock 4 sowie mit einer Redundanz-Detektionseinheit 15 verbunden (deren Struktur unter Bezugnahme auf 2 im Folgenden noch ausführlicher beschrieben wird). Der Adressenzählerblock 5 ist ferner durch den Adressenbus 8 mit einem RAM 7 verbunden, der einen Sektorspeicher bildet.
  • Wie in der vergrößerten Detailansicht schematisch dargestellt ist, ist der RAM 7 genauer gesagt in eine Mehrzahl von Bereichen oder Reihen 14 unterteilt, und zwar eine für jeden Sektor der Speicheranordnung 2, wobei jeder Bereich 14 einen ersten Unterbereich 14a und einen zweiten Unterbereich 14b aufweist. Während eines Löschvorgangs speichert der erste Unterbereich 14a die Adresse einer Speicherstelle, bei der der Prüfvorgang nach dem Anlegen der Löschimpulse beginnen muss (und die somit als Zeiger wirkt), während der zweite Unterbereich 14b ein Flag speichert, dessen Logikzustand anzeigt, ob der zugeordnete Sektor gelöscht werden soll oder nicht.
  • Der Adressenzähler 5 ist ferner mit einer Abtast-Zeitgeberschaltung 9 verbunden, die geeignete Freigabesignale an den Reihen-Decoderblock 3 und den Spalten-Decoderblock 4 sowie an eine Dateneingangs-/Datenausgangseinheit 10 liefert. Die Dateneingangs-/Datenausgangseinheit 10 ist ferner mit einem Datenbus DBUS 11 verbunden, der wiederum mit dem Spalten-Decoderblock 4, der Zustandsmaschine 12, der Redundanz-Detektionseinheit 15, dem RAM 7 sowie einem Zustandsregister 17 verbunden ist.
  • Die Zustandsmaschine 12 tauscht Information mit einer Microprozessor-Steuerschaltung 16 aus und sendet Zustandsinformation zu dem Zustandsregister 17. Weiterhin tauscht die Steuereinheit 16 Information und Anweisungen mit der Redundanz-Detektionseinheit 15 und dem RAM 7 aus.
  • Darüber hinaus ist die Redundanz-Detektionseinheit 15 mit dem Reihen-Decoderblock 3 und dem Spalten-Decoderblock 4 sowie mit den CAMs 18 (von denen nur eine gezeigt ist) verbunden, die zum Speichern der Adressen der ersetzten Sektoren ausgebildet sind. Die CAMs 18 sind funktionsmäßig der Speicheranordnung 2 zugeordnet und teilen sich mit dieser die gleichen Adressen- und Leseschaltungen. Aus Gründen der Vereinfachung sind daher in 1 die CAMs als zu der Speicheranordnung zugehörig dargestellt, obwohl sie körperlich von dieser getrennt, jedoch in mit der Speicheranordnung zusammenhängender Weise vorgesehen sein können.
  • Wie im Folgenden noch ausführlicher erläutert wird, erhält beim Einschalten des Speichers die Redundanz-Detektionseinheit 15 von der Speicheranordnung 2, genauer gesagt von den CAMs 18, die über den Spalten-Decoderblock 4 gelesen werden, die zuvor gespeicherten Redundanz-Daten, wobei sie diese in flüchtiger Weise in Register einschreibt, in denen sie unmittelbar zugänglich sind. Wenn der Adressenzähler 5 die Reihen- und Spaltenadressen der zu lesenden Worte zuführt, vergleicht somit die Redundanz-Detektionseinheit 15 die auf dem Datenbus 11 empfangenen Adressen mit den in ihren eigenen Registern gespeicherten Adressen, und wenn sie eine Übereinstimmung feststellt, ersetzt sie die empfangenen Adressen mit den Redundanz-Adressen, um dadurch die Redundanz-Sektoren 19b anzusprechen, wie dies im Folgenden unter Bezugnahme auf 2 ausführlich erläutert wird.
  • Wenn während des Löschens und Programmierens ein Defekt bei einem oder mehreren Standard-Sektoren 19a festgestellt wird, erhält die Redundanz-Detektionseinheit 15 die Adressen der fehlerhaften Sektoren, die durch den Adressenzähler 5 auf dem Adressenbus 8 zugeführt werden, und unter einer geeigneten Steuerung der Steuerschaltung 16 schreibt die Redundanz-Detektionseinheit 15 diese in vorübergehender Weise in ihre eigenen Register und anschließend über den Datenbus 11 in die CAMs 18 ein.
  • Im Folgenden wird die Struktur der Redundanz-Detektionseinheit 15 im Hinblick auf eine Redundanz während des Betriebs der Vorrichtung beschrieben (Löschen, wie es im Folgenden unter Bezugnahme auf die 3 und 4 beschrieben wird, oder ansonsten Programmieren und Lesen).
  • Unter Bezugnahme auf 2 weist die Redundanz-Detektionsschaltung 15 ein Schalt-Gate 20 mit einem ersten Dateneingang, der mit dem Datenbus 11 verbunden ist, mit einem zweiten Dateneingang, der mit dem Adressenbus 8 verbunden ist, mit einem Auswähleingang, der ein erstes Steuersignal SEL1 von der Steuereinheit 16 erhält, sowie mit einem mit einem Redundanz-Bus 21 verbundenen Ausgang auf. Der Ausgang des Schalt-Gates 20 ist ferner mit dem Speicherbus 11 über einen Puffer 40 verbunden, der durch ein zweites Steuersignal SEL2 gesteuert wird, das durch die Steuereinheit 16 zugeführt wird.
  • Der Redundanz-Bus 21 ist mit dem Dateneingang D einer Mehrzahl von Registern 22 (in dem Beispiel sind drei Register dargestellt), die mit den Bezugszeichen 221 , 222 , 223 bezeichnet sind und in verketteter Weise verbunden sind und aus Zwischenspeichern gebildet sind. Im Allgemeinen ist die Anzahl der Register 22 gleich der Anzahl der verfügbaren Redundanz-Möglichkeiten (Anzahl der Redundanz-Sektoren 19b) und der Eigenredundanz-CAMs 18.
  • Genauer gesagt, ist jedes Register 22 in zwei Teile unterteilt: Einen ersten Teil 22a zum Speichern einer vollständigen Adresse eines fehlerhaften Sektors sowie einen zweiten Teil 22b zum Speichern eines Schutz-Bits, dessen Logikwert anzeigt, ob in das entsprechende Register 22 bereits eine Adresse eines fehlerhaften Sektors geladen worden ist oder nicht. Jedes Register 22 weist ferner einen Synchronisationseingang CK, einen Schutzausgang G (der mit dem zweiten Teil 22b verbunden ist) und eine Ausgangsadresse Q auf, die mit dem zweiten Bereich 22b verbunden ist.
  • Die Register 221 , 222 , 223 sind mit ihrem Synchronisationseingang CK mit dem Ausgang eines jeweiligen UND-Glieds 231 , 232 , 233 verbunden. Bei den UND-Gliedern 231 , 232 , 233 handelt es sich um den Typ mit drei Eingängen: Ein erster Eingang 24 eines invertierten Typs ist mit dem Schutzausgang G eines jeweiligen Registers 221 , 222 , 223 verbunden und erhält ein invertiertes Schutz-Bit GN, das gleich dem entsprechenden invertierten Schutz-Bit ist; ein zweiter Eingang 25 erhält ein Lastsignal L, das von der Steuereinheit 16 zugeführt wird; und ein dritter Eingang 26 ist mit dem Schutzausgang eines vorangehenden Registers mit Ausnahme des ersten Registers 22, verbunden. Genauer gesagt, ist das erste Register 22, mit dem dritten Eingang 26 in fest stehender Weise mit einer Spannung verbunden, die einem Logikpegel "1" entspricht; ein zweites Register 222 ist mit dem dritten Eingang 26 direkt mit dem Schutzausgang G des ersten Registers 221 verbunden; und das dritte Register 223 ist mit dem dritten Eingang 26 direkt mit dem Schutzausgang G des zweiten Registers 222 verbunden. Weitere mögliche Register sind ab dem dritten Register 223 in der gleichen Weise verbunden.
  • Das letzte Register (hier das dritte Register 223 ) ist mit dem Schutzausgang G mit der Steuereinheit 16 verbunden, die ein Signal NO_RIS liefert, dessen Logikwert anzeigt, ob weitere freie Redundanzmöglichkeiten vorhanden sind oder nicht.
  • Die Adressenausgänge Q der Register 221 , 222 , 223 sind jeweils mit einem ersten Eingang eines jeweiligen XNOR-Glieds 30 verbunden.
  • Die XNOR-Glieder 30 weisen ferner einen mit dem Redundanz-Bus 21 verbundenen zweiten Eingang sowie einen ersten Ausgang auf, der mit einer Logikaddierschaltung 31 verbunden ist, die ein Deaktivierungssignal DIS abgibt, das dem Reihen-Decoderblock und dem Spalten-Decoderblock 3, 4 der 1 zugeführt wird. Ferner weist jedes der XNOR-Glieder 30 einen zweiten Ausgang auf, der starr mit einem jeweiligen Redundanz-Sektor 19b verbunden ist, um diesen freizugeben, wie dies im Folgenden erläutert wird.
  • Die Redundanz-Detektionsschaltung 15 arbeitet in der im Folgenden beschriebenen Weise. Unmittelbar bei Redundanz-Aktivierung nach der Detektion von einem oder mehreren fehlerhaften Sektoren nach einem Modifizierungsvorgang (wie er im Folgenden unter Bezugnahme auf die 3 und 4 für einen Löschvorgang ausführlich beschrieben wird), wird das Schalt-Gate 20 durch das erste Auswahl signal SEL1 derart gesteuert, dass der Adressenbus 8 mit dem Redundanz-Bus 21 verbunden wird. Bei diesem Schritt ist der Puffer 40 immer noch inaktiv, und der Adressenbus 8 liefert zusätzlich zu der Adresse eines fehlerhaften Sektors das Schutz-Bit mit dem Logikwert "1". Dieses Bit wird programmiert, nachdem die Adresseninformation in den CAMs programmiert worden ist. Auf diese Weise wird bei einem unbeabsichtigten Stromausfall zwischen der Programmierung der Adressen und der Programmierung des Schutz-Bits die Tatsache mitgeteilt, dass die programmierte Information unvollständig ist.
  • Unter der Annahme, dass die Redundanz zuvor noch nicht aktiviert worden ist, ist das erste Register 221 immer noch leer, und sein Schutz-Bit G befindet sich immer noch im inaktiven Zustand, wobei dies einem Logikwert "0" entspricht; daher ist das invertierte Schutz-Bit GN gleich "1". Sobald das Lastsignal L auf den hohen Zustand schaltet, liefert das erste UND-Glied 23, einen Logikwert "1" zu dem Synchronisationseingang CK, wobei dies das Laden der Adresse und des Schutz-Bits, die auf dem Redundanz-Bus 21 zugeführt werden, in das erste Register 221 hinein freigibt.
  • Beim Schalten des Lastsignals L empfangen statt dessen das zweite und das dritte UND-Glied 232 , 233 den vorherigen Wert des Schutz-Bits G des ersten und des zweiten Registers 231 , 232 (der sich immer noch auf "0" befindet) und als Ergebnis hiervon werden sie nicht zum Laden freigegeben.
  • Bei diesem Schritt sind die XNOR-Glieder 30 und die Logikaddierschaltung 31 praktisch gesperrt, oder sie liefern in jedem Fall insignifikante Signale, die von dem Reihen-Decoderblock und dem Spalten-Decoderblock 3, 4 ignoriert werden.
  • Bei den nachfolgenden Redundanz-Aktivierungen werden die Daten jedes Mal in ein nachfolgendes Register 222 , 223 geladen. In der Tat sperrt bei der zweiten Aktivierung das erste Register 221 sein eigenes UND-Glied 231 und gibt das nachfolgende UND-Glied 232 frei, da es das Schutz-Bit G im hohen Zustand aufweist. Bei Ankunft des Lastsignals L werden dann die Adresse und das Schutzbit in dem zweiten Register 222 gespeichert. Das dritte Register 223 und mögliche nachfolgende Register bleiben jedoch gesperrt.
  • Auf diese Weise ist es möglich, die Adresse einer Anzahl von fehlerhaften Sektoren zu speichern, die gleich der Anzahl von vorhandenen Registern 22 ist.
  • Nachdem in alle Register 22 geladen worden ist, signalisiert der hohe Wert des Schutzbits G des letzten Registers (im vorliegenden Fall des dritten Registers 223 ), welches das Signal NO_RIS bildet, dass keine weiteren Redundanz-Möglichkeiten mehr verfügbar sind.
  • Unmittelbar nach dem Laden der Adresse eines fehlerhaften Sektors in eines der Register 22 wird diese in nichtflüchtiger Weise in einem CAM 18 gespeichert. Zu diesem Zweck wird die Adresse des fehlerhaften Sektors, die noch auf dem Adressenbus 8 vorhanden ist, über das Schalt-Gate 20 und den Puffer 40, die nun durch das zweite Auswahlsignal SEL2 aktiviert sind, dem Datenbus 11 zugeführt. Als Ergebnis hiervon wird die Adresse des fehlerhaften Sektors dem Spalten-Decoderblock 4 zugeführt, wie dies im Folgenden ausführlich erläutert wird.
  • Wenn nach dem Einschalten des Speichers 1 das POR-Signal (Energieeinschalt-Rückstellsignal) erzeugt wird, wird der Inhalt der CAMs 18, die die Adressen der zuvor detektierten fehlerhaften Sektoren speichern, in sequenzieller Weise auf dem Datenbus 11 befördert und nacheinander in die Register 22 geladen und zwar über das Schalt-Gate 20, das nunmehr den Datenbus 11 auf eine Anweisung von der Steuereinheit 16 hin mit dem Adressbus 8 verbindet. Das Laden findet in sequenzieller Weise in den verschiedenen Registern 22 statt, und zwar ähnlich, wie dies vorstehend beschrieben worden ist. Auf diese Weise werden bei jedem Einschalten des Speichers die zuvor gespeicherten Redundanz-Daten in die Register 22 geladen.
  • Während eines Lesevorgangs wird die auf dem Adressenbus 8 zugeführte Adresse durch den Redundanz-Bus 21 den XNOR- Gliedern 30 zugeführt, die diese mit der Adresse des fehlerhaften Sektors vergleichen, die von dem betreffenden Re gister 22 geliefert wird. Wenn die auf dem Adressenbus 8 zugeführte Adresse keiner der Adressen entspricht, die in den Registern 22 gespeichert sind, generieren die XNOR-Glieder ein Nichterkennungssignal (Deaktivierungssignal DIS im inaktiven Zustand), und der Reihen-Decoderblock und der Spalten-Decoderblock 3, 4 arbeiten in der üblichen Weise auf der Basis der auf dem Adressenbus 8 vorhandenen Adresse. Wenn statt dessen eines der XNOR-Glieder die Übereinstimmung mit der in dem zugeordneten Register 22 gespeicherten Adresse erkennt, wird ein Erkennungssignal erzeugt, das der Logikaddierschaltung 31 zugeführt wird. Somit geht in diesem Schritt das Deaktivierungssignal DIS in den aktiven Zustand und sperrt die auf dem Adressenbus 8 vorhandene Adresse (unter Sperrung des Standard-Sektors 19a, der durch den Adressenzähler 5 der 1 adressiert wird). Ferner gibt das XNOR-Glied 30, das die Übereinstimmung erkannt hat, den den diesem zugeordneten Redundanz-Sektor 19b frei.
  • Im Folgenden wird unter Bezugnahme auf die 3 und 4 die Vorgehensweise zum Löschen von Gruppen von Sektoren beschrieben, wobei eine Online-Redundanz-Aktivierung bei Feststellen von fehlerhaften Speicherstellen ausgeführt wird.
  • Diese Vorgehensweise verwendet den RAM 7 der 1, wobei die Flags, die den zu löschenden Sektoren entsprechen, in den zweiten Unterbereichen 14b vor der Aktivierung des Löschvorgangs in bekannter Weise gesetzt werden (Flags im aktiven Zustand). Der RAM 7 stellt somit eine Liste von zu löschenden Sektoren dar, die durch die jeweiligen Flags im aktiven Zustand identifiziert werden.
  • In der nachfolgenden Beschreibung wird ferner davon ausgegangen, dass ein oder mehrere Sektoren, die zu einer vorgegebenen Gruppe gehören, zu löschen sind; die gleiche Verfahrensweise ist jedoch auch bei der gesamten Speicheranordnung anwendbar.
  • Zu Beginn werden in einem Schritt 50 die ersten Unterbereiche 14a der Bereiche 14 mit Flags im gesetzten oder aktiven Zustand (die somit den zu löschenden Sektoren entsprechen) zurückgesetzt, sodass sie die Adresse des ersten Worts jedes jeweiligen Sektors enthalten. Darüber hinaus wird ein Sektorzähler mit dem ersten Sektor der betrachteten Sektorgruppe initialisiert.
  • In einem Schritt 51 wird dann geprüft, um festzustellen, ob alle der zu löschenden Blöcke tatsächlich gelöst worden sind, indem der Zustand der Flags geprüft wird. Wenn dies der Fall ist (alle Flags sind im inaktiven Zustand), endet der Löschvorgang; andernfalls wird in einem Schritt 52 ein Löschimpuls zu allen Sektoren geschickt, die durch die Flags als im aktiven Zustand befindlich identifiziert sind.
  • Als nächstes wird in einem Schritt 53 die Adresse gelesen, die in dem ersten Unterbereich 14a gespeichert ist, der dem ersten Sektor der Liste entspricht, der ein aktives Flag aufweist. Wie bereits erwähnt worden ist, entspricht diese Adresse zu Beginn dem ersten Wort des Sektors; wie im Folgenden beschrieben wird, stellt sie im Anschluss daran die Adresse des letzten Wortes des Sektors dar, der geprüft worden ist (und für den die Prüfung nicht erfolgreich war).
  • Anschließend wird in einem Schritt 54 der betrachtete Sektor geprüft, und zwar ausgehend von dem Wort, das durch die soeben gelesene Adresse identifiziert worden ist sowie in fortschreitender Weise, bis der gesamte Sektor geprüft worden ist oder ein nicht korrekt gelöschtes Wort detektiert wird. Wenn der gesamte Sektor gelöscht worden ist (Ausgang JA von Schritt 55), wird das dem soeben gelöschten Sektor entsprechende Flag zurückgesetzt (das heißt, es wird in den inaktiven Zustand gebracht), indem in der Praxis in einem Schritt 60 der Sektor an sich von der Liste der zu löschenden Sektoren gelöscht wird. Anschließend fährt das Verfahren mit einem Schritt 62 fort, wie dies im Folgenden beschrieben wird.
  • Wenn die Prüfung auf Grund der Detektion eines nicht korrekt gelöschten Wortes unterbrochen wird, das heißt, dem Ausgang NEIN von Schritt 55, wird in den ersten Unterbereich 14a die Adresse des soeben geprüften Wortes, für das die Prüfung ein negatives Resultat ergeben hat, in einem Schritt 61 eingeschrieben. Anschließend folgt eine Prüfung, um festzustellen, ob es sich bei dem soeben geprüften Sektor um den letzten in der Liste handelt, wobei dies in einem Schritt 62 erfolgt.
  • Wenn immer noch zu prüfende Sektoren vorhanden sind, das heißt, bei dem Ausgang NEIN von dem Schritt 62, wird ein nächster Sektor inkrementiert, und zwar unter Inkrementierung des Sektorzählers in einem Schritt 63, und anschließend kehrt das Verfahren zu dem Schritt 53 zurück, in dem die in dem ersten Unterbereich 14a des RAM 7 gespeicherte Adresse, die dem soeben adressierten nächsten Sektor entspricht, gelesen wird. Wenn dagegen alle der Sektoren geprüft worden sind (jedoch natürlich einige von ihnen nicht korrekt gelöschte Worte enthalten), das heißt, bei dem Ausgang JA von Schritt 62, wird ein Versuchsanzahl-Zähler I in einem Schritt 64 inkrementiert.
  • Dieser Zähler (der die Anzahl der zugeführten Programmierimpulse anzeigt), hat die Aufgabe, die Wiederholung des Zyklus zu ermöglichen, der das Anlegen eines Löschimpulses und das Verifizieren der Zellen der Sektoren ausgehend von denjenigen umfasst, die in dem vorangehenden Prüfvorgang ein negatives Resultat ergeben haben. Nur wenn nach einer bestimmten Anzahl von Zyklen zumindest eine Zelle immer noch nicht korrekt gelöscht ist, wird eine Redundanz-Routine aktiviert, und im Anschluss daran werden weitere Lösch- und Verifizierzyklen wiederholt. Wenn nach diesen weiteren Zyklen die Sektoren immer noch nicht gelöscht sind, wird ein Fehlersignal erzeugt ("defekt").
  • Zu diesem Zweck wird nach dem Schritt 64 eine Überprüfung dahingehend vorgenommen, um festzustellen, ob der Versuchsanzahl-Zähler I einen Wert gleich einem ersten Schwellenwert IMAX1 aufweist. Wenn dies der Fall ist, wird eine Redundanz-Routine 70 aktiviert, die im Folgenden unter Bezugnahme auf 4 beschrieben wird, und das Programm kehrt zu dem Schritt 53 zum Lesen der Adresse des ersten Sektors zurück, der ein aktives Flag hat; ansonsten erfolgt bei einem Ausgang NEIN von Schritt 65 eine Prüfung in einem Schritt 66, um festzustellen, ob der Versuchsanzahl-Zähler I einen Wert hat, der gleich einem zweiten Schwellenwert IMAX2 hat, der höher ist als IMAX1. Wenn dies nicht der Fall ist, geht das Programm zurück zu dem Schritt 51, um zu prüfen, ob alle der Sektoren gelöscht worden sind, um dadurch den Zyklus der Anlegung von Lösch- und Verifizierimpulsen zu wiederholen oder den Vorgang zu beenden, wenn alle der Sekto ren gelöscht sind. Wenn diese gelöscht sind (der Versuchsanzahl-Zähler I hat einen Wert gleich dem zweiten Schwellenwert IMAX2), wird ein Fehlersignal in einem Schritt 67 erzeugt, und das Verfahren endet.
  • Unter Bezugnahme auf 4 beginnt die Redundanz-Routine 70 mit dem Rücksetzen des Sektorzählers in einem Schritt 71, und in einem Schritt 72 wird geprüft, ob der durch den Sektorzähler adressierte erste Sektor bereits gelöscht worden ist, indem der Zustand des entsprechenden Flags gelesen wird. Wenn dies der Fall ist, wird in einem Schritt 80 überprüft, ob alle der Sektoren geprüft worden sind; ansonsten wird in einem Schritt 73 geprüft, ob der derzeit adressierte Sektor bereits ein Redundanz-Sektor ist oder ob keine weiteren Redundanz-Möglichkeiten mehr verfügbar sind. Wenn dies der Fall ist, ist es nicht länger möglich, weitere Redundanz-Möglichkeiten zu aktivieren; als Ergebnis hiervon werden in einem Schritt 81 alle der Zeiger zurückgesetzt (Adressen, die in den ersten Unterbereichen 14a des RAM 7 gespeichert sind), und die Redundanz-Routine 70 endet.
  • Wenn dagegen weitere Redundanz-Möglichkeiten verfügbar sind, das heißt, bei dem Ausgang NEIN von Schritt 73, wird das Laden der Adresse des aktuellen Sektors in das erste verfügbare Register in einem Schritt 74 angewiesen (entsprechend der Beschreibung in Bezug auf 2), und in einem Schritt 75 wird die gleiche aktuelle Adresse in nichtflüchtiger Weise in einem CAM 18 gespeichert (wie dies bereits beschrieben wurde). Anschließend fährt das Programm mit einem Schritt 80 fort, um zu verifizieren, ob es sich bei dem derzeit adressierten Sektor um den letzten der in dem RAM 7 gespeicherten Liste handelt. Wenn dies nicht der Fall ist, wird in einem Schritt 82 der Sektorzähler inkrementiert, und das Verfahren kehrt zu dem Schritt 72 zurück; wenn es sich um den letzten Sektor handelt, fährt das Programm mit dem Schritt 81 fort, wie dies vorstehend erwähnt wurde. Von nun an speichert der Bereich 14 des RAM 17, der zuvor einem fehlerhaften Sektor zugeordnet war, die Information in Relation zu dem diesen ersetzenden Redundanz-Sektor, und zwar genauer gesagt, die Adresse des ersten zu prüfenden Worts und das Lösch-Flag. Auf diese Weise wird/werden unter Rück kehr zu dem Hauptverfahren der 3 der oder die soeben freigegebenen Redundanz-Sektoren gelöscht und in der vorstehend beschriebenen Weise geprüft.
  • Nach dem Rücksetzen der in den RAM 7 geladenen Adressen endet die Redundanz-Routine 70.
  • 5 veranschaulicht eine Struktur der Register 22, die die Redundanz eines Redundanz-Sektors im Fall des Auftretens eines derartigen Fehlers freigibt, dass der Sektor unbrauchbar wird. Zu diesem Zweck wird anstatt einer starren Zuordnung zwischen jedem Register 22 und dem entsprechenden Redundanz-Sektor die Zuordnung bei Detektion eines fehlerhaften Sektors festgelegt, und die Adresse des Redundanz-Sektors wird zusammen mit der Adresse des ausgetauschten Sektors gespeichert.
  • In dem Beispiel der 5 hat jedes Register 22 (und somit jeder CAM 18, der die gleichen Daten in nichtflüchtiger Weise speichert) einen ersten Bereich 90 zum Speichern der Adresse eines fehlerhaften Sektors, einen zweiten Bereich 91 zum Speichern des Schutzbits G sowie einen dritten Bereich 92 zum Speichern der Adresse des Redundanz-Sektors (der den Sektor ersetzt, dessen Adresse in dem ersten Bereich 90 gespeichert ist). Auf diese Weise ist die Zuordnung zwischen jedem Register und dem entsprechenden Redundanz-Sektor nicht vorgegeben, wie dies durch die Pfeile dargestellt ist. Wenn zum Beispiel der durch das erste Register adressierte Redundanz-Sektor fehlerhaft wird, wäre es möglich, die Adresse des fehlerhaften Redundanz-Sektors durch einen weiteren Redundanz-Sektor zu ersetzen, wie dies durch den gestrichelten Pfeil dargestellt ist.
  • Dies gilt insbesondere für die Freigabe der Redundanz von Redundanz-Sektoren, die während eines EWS-Tests aktiviert werden.
  • Die Vorteile der beschriebenen Speichervorrichtung sind folgende: Als erstes ermöglicht sie das Austauschen einer fehlerhaften Einheit nicht nur während der Testphase der Vorrichtung innerhalb der Produktionsanlage (zum Beispiel während eines EWS-Tests), sondern auch wenn die Vorrichtung in Betrieb ist. Auf diese Weise bietet die Speichervorrichtung eine höhere Flexibilität und damit verbunden einen Anstieg in der Ausbeute.
  • Darüber hinaus ist es möglich, auch den EWS-Testvorgang zu beschleunigen, und zwar auf Grund der Verwendung der Steuereinheit 16 innerhalb der Speichervorrichtung sowie eines eingebetteten Algorithmus, sodass die Notwendigkeit für jegliche Schnittstellenausbildung mit externen Testgeräten ausgeschlossen wird. Dies ermöglicht eine Reduzierung des Testaufwands (Entwicklungsressourcen und Testzeiten), der zum Zeitpunkt Null darauf abzielt, jegliche Defekte zu identifizieren, die im Anschluss daran während der Lebensdauer der Vorrichtung auftreten können (zyklisches Verfahren, spezielles Testverfahren).
  • Die vorstehend beschriebene Speichervorrichtung beinhaltet einen minimalen Anstieg bei den Gesamtabmessungen für die zusätzlichen Schaltungseinrichtungen, da sich in erster Linie die bereits vorhandenen Strukturen nutzen lassen.
  • Im Spezielleren ermöglicht die vorliegend beschriebene Ausführung der Eigenredundanz die Verwendung der bereits vorhandenen Lesestruktur für den Betrieb der Speicheranordnung 2, die erneute Verwendung des RAM 7 für die Handhabung der fehlerhaften Sektoren sowie der einem Löschvorgang unterzogenen Sektoren sowie auch die erneute Verwendung des Adressenzählers 5.
  • Es ist nicht notwendig, separate Zellen als CAMs zu verwenden, sondern es können Speicherzellen der Speicheranordnung verwendet werden, die speziell für Redundanzzwecke vorgesehen sind.
  • Die Verwendung von Registern zum Laden von Redundanz-Information während des Einschaltens der Speichervorrichtung ermöglicht eine rasche Detektion von jeglichem Austausch eines Sektors, der zum Lesen adressiert wird, sowie eine Adressierung von diesem mit dem korrekt arbeitenden Sektor. In der Praxis arbeiten die Register 22 als nichtflüchtige Zellen, die für die traditionelle EWS-Redundanz vorgesehen sind, wobei sie gleichzeitig eine agilere Handhabung der vorhandenen Strukturen gewährleisten.
  • Die Redundanz-Vorgänge sind insgesamt für den Benutzer transparent (zum Beispiel ist während einer Modifizierung das Zustandsregister für den Benutzer zugänglich, bei dem es sich entweder um einen Produktmanager oder um einen Kunden handelt, der Information über den Zustand der Vorgänge benötigt).
  • Die Register 22 können ferner mit Setz-/Rücksetz-Transistoren für Testvorgänge vom Schatten-Typ ausgestattet sein.
  • Schließlich versteht es sich, dass zahlreiche Modifikationen und Veränderungen an der vorstehend beschriebenen und dargestellten Speichervorrichtung sowie dem vorstehend beschriebenen und dargestellten Redundanz-Verfahren vorgenommen werden können, die alle im Umfang der Erfindung liegen, wie er in den beigefügten Ansprüchen definiert ist. Zum Beispiel kann trotz der Tatsache, dass die vorstehende Beschreibung nur auf Sektor-Redundanz Bezug nimmt, die Erfindung in der erwähnten Weise auch bei Redundanz eines anderen Typs Anwendung finden, wie zum Beispiel Spalten-Redundanz, Byte-Redundanz oder Reihen-Redundanz. Darüber hinaus kann die Redundanz auch nach einem nicht erfolgreichen Programmiervorgang aktiviert werden.

Claims (13)

  1. Nichtflüchtige Speichervorrichtung (1), aufweisend: eine Speicheranordnung (2), die in eine Mehrzahl von nichtflüchtigen Datenspeichereinheiten (19a) unterteilt ist; eine Steuereinheit (16) mit einer Datenmodifikations-Steuereinrichtung zum Aktivieren eines Datenmodifikationsvorgangs an den Datenspeichereinheiten, wobei die Steuereinheit ferner eine Detektionseinrichtung aufweist, die während des Datenmodifikationsvorgangs freigegeben wird, um die Funktionsfähigkeit der Datenspeichereinheiten festzustellen; eine Redundanz-Detektionseinheit (15), die durch die Steuereinheit freigegeben wird, wobei die Redundanz-Detektionseinheit flüchtige Speicherelemente (22) beinhaltet; und eine Mehrzahl von nichtflüchtigen Redundanz-Speichereinheiten (19b) zum Ersetzen von jeweiligen fehlerhaften Datenspeichereinheiten, dadurch gekennzeichnet, dass die Redundanz-Speichereinheit (15) während des Datenmodifikationsvorgangs durch die Steuereinheit (16) freigegeben wird, um die Adresse einer detektierten, fehlerhaften Datenspeichereinheit vorübergehend zu speichern, und dass die flüchtigen Speicherelemente (22) durch eine sequentielle Verbindung vom Verkettungs-Typ verbunden sind, um flüchtige Redundanz-Information in sequentieller Weise zu speichern.
  2. Vorrichtung nach Anspruch 1, weiterhin mit mindestens einer nichtflüchtigen Speichereinheit (18) zum nichtflüchtigen Speichern der Redundanz-Information; und mit einem Datenbus (11), der mit der Redundanz-Detektionseinheit (15) und der nichtflüchtigen Speichereinheit (18) verbunden ist, um Adressen von fehlerhaften Datenspeichereinheiten (19a) von der Redundanz-Detektionseinheit (15) zu der nichtflüchtigen Speichereinheit (18) zu transferieren und die Adressen der fehlerhaften Datenspeichereinheiten nach dem Datenmodifikationsvorgang in dieser zu speichern.
  3. Vorrichtung nach Anspruch 2, weiterhin mit Dekodier-, Adressier- und Leseschaltungen (3, 4), die mit der Speicheranordnung (2) verbunden sind, wobei die nichtflüchtige Speichereinheit (18) mit den Dekodier-, Adressier- und Leseschaltungen verbunden ist.
  4. Vorrichtung nach Anspruch 3, mit einem Adressenbus (8), der mit den Dekodier-, Adressier- und Leseschaltungen (3, 4) und mit der Redundanz-Detektionseinheit (15) verbunden ist, wobei die Redundanz-Detektionseinheit eine durch die Steuereinheit (16) freigegebene Führungseinrichtung (20, 40) aufweist, um den Adressenbus bei Detektion einer fehlerhaften Datenspeichereinheit (19a) mit dem Datenbus (11) zu verbinden.
  5. Vorrichtung nach einem der vorausgehenden Ansprüche, mit einem Adressenbus (8), wobei die Redundanz-Detektionseinheit (15) Folgendes aufweist: eine mit dem Adressenbus verbundene Eingangseinrichtung (20), einen mit der Eingangseinrichtung verbundenen Redundanz-Bus (21), eine Mehrzahl von Registern (22), die die flüchtigen Speicherelemente bilden und aus einem ersten Bereich (22a) zum Speichern einer Adresse einer fehlerhaften Datenspeichereinheit (19a) in jedem Register sowie aus einem zweiten Bereich (22b) zum Speichern von Schutzinformation (G) gebildet sind, wobei der erste Bereich einen mit dem Redundanz-Bus (21) verbundenen Dateneingang (D) und einen Freigabeeingang (CK) aufweist; und eine Freigabeschaltung (23), die mit den Freigabeeingängen der Register und mit der Steuereinheit (16) verbunden ist, um die Register zum Laden von Adressen von dem Redundanz-Bus (21) in sequentieller Weise freizugeben.
  6. Vorrichtung nach Anspruch 5, wobei jedes der Register (22) einen mit einem jeweiligen zweiten Bereich (22b) verbundenen Schutzausgang (G) aufweist und wobei die Freigabe schaltung (23) eine Mehrzahl von Freigabeelementen (23) aufweist, und zwar eines pro Register, wobei jedes Freigabeelement einen mit dem Schutzausgang (G) eines jeweiligen Registers (G) verbundenen ersten Eingang (24), einen zweiten Eingang (25), der ein Lastsignal (L) von der Steuereinheit (16) erhält, sowie einen dritten Eingang (26) aufweist, der mit einem Schutzausgang (G) eines vorangehenden Registers (22) in der sequentiellen Verbindung verbunden ist.
  7. Vorrichtung nach Anspruch 5 oder 6, wobei die Redundanz-Detektionseinheit (15) ferner eine Mehrzahl von Vergleichsgliedern (30) aufweist, und zwar eines pro Register (22), wobei jedes Vergleichsglied einen mit dem Redundanz-Bus (21) verbundenen ersten Eingang, einen mit dem Datenausgang (Q) eines jeweiligen Registers verbundenen zweiten Eingang sowie einen Ausgang aufweist, der ein Erkennunssignal (DIS) zum Sperren einer fehlerhaften Datenspeichereinheit (19a) liefert, wobei die Vergleichsglieder (30) eine Freigabeeinrichtung zum Freigeben einer jeweiligen Redundanz-Speichereinheit (19b) aufweisen.
  8. Vorrichtung nach Anspruch 7, wobei jedes Vergleichsglied (30) mit einer jeweiligen Redundanz-Speichereinheit (19b) fest verbunden ist.
  9. Vorrichtung nach einem der Ansprüche 5 bis 7, wobei jedes Register einen dritten Bereich (92) zum Speichern der Adresse einer Redundanz-Speichereinheit (19b) aufweist.
  10. Redundanz-Verfahren in einer nichtflüchtigen Speichervorrichtung (1) mit einer Speicheranordnung (2), die aus einer Mehrzahl von nichtflüchtigen Datenspeichereinheiten (19a) gebildet ist, wobei das Verfahren einen Datenmodifikationsvorgang und einen Lesevorgang aufweist, wobei der Datenmodifikationsvorgang folgende Schritte aufweist: Zuführen (52) eines Datenmodifikationsbefehls zu mindestens einer der Datenspeichereinheiten (19a); Verifizieren (54) der Korrektheit der Daten in der mindestens einen Datenspeichereinheit; bei Detektion eines Fehlers in der mindestens einen Datenspeichereinheit während des Datenmodifikationsvorgangs, vorübergehendes Speichern (74) der Adresse der fehlerhaften Datenspeichereinheit in einer Redundanz-Detektionseinheit (15), die flüchtige Speicherelemente (22) beinhaltet, die durch eine sequentielle Verbindung vom Verkettungs-Typ miteinander verbunden sind, um flüchtige Redundanz-Information in sequentieller Weise zu speichern; und wobei der Lesevorgang folgende Schritte aufweist: Erzeugen einer Leseadresse einer Datenspeichereinheit; Vergleichen (30) der Leseadresse mit der in der Redundanz-Detektionseinheit (15) gespeicherten Adresse; und im Fall der Übereinstimmung, Sperren der Leseadresse und Freigeben einer Redundanz-Speichereinheit.
  11. Verfahren nach Anspruch 10, bei dem weiterhin nach dem Schritt des vorübergehenden Speicherns (74) die Adresse in einer nichtflüchtigen Speichereinheit (18) in nichtflüchtiger Weise gespeichert (75) wird.
  12. Verfahren nach Anspruch 11, bei dem vor dem Schritt des vorübergehenden Speicherns (74) und dem Schritt des Speicherns (75) in nichtflüchtiger Weise der Schritt des Zuführens (52) eines Datenmodifikationsbefehls und der Schritt des Verifizierens (54) im Fall eines negativen Resultats des Schrittes des Verifizierens höchstens eine erste Anzahl von Malen wiederholt werden, und nach den Schritten des vorübergehenden Speicherns (74) und des Speicherns (75) in nichtflüchtiger Weise der Schritt des Zuführens (52) eines Datenmodifikationsbefehls und der Schritt des Verifizierens (54) im Fall eines negativen Resultats des Verifizierschrittes höchstens eine zweite Anzahl von Malen wiederholt werden und nach der zweiten Anzahl von Malen ein Fehlersignal erzeugt wird.
  13. Verfahren nach Anspruch 12, bei dem ferner im Fall eines negativen Resultats des Schrittes des Verifizierens sowie vor einer Wiederholung des Schrittes des Zuführens (52) eines Datenmodifikationsbefehls und des Schrittes des Verifizierens (54) die Adresse der soeben überprüften Daten geschrieben wird, wobei nach der Wiederholung des Schrittes des Zuführens (52) die geschriebene Adresse gelesen (53) wird.
DE60222891T 2002-08-13 2002-08-13 Nichtflüchtige Speichervorrichtung und Selbstreparatur-Verfahren Expired - Lifetime DE60222891T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP02425529A EP1394810B1 (de) 2002-08-13 2002-08-13 Nichtflüchtige Speicheranordnung und Selbstreparatur-Verfahren

Publications (2)

Publication Number Publication Date
DE60222891D1 DE60222891D1 (de) 2007-11-22
DE60222891T2 true DE60222891T2 (de) 2008-07-24

Family

ID=31198020

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60222891T Expired - Lifetime DE60222891T2 (de) 2002-08-13 2002-08-13 Nichtflüchtige Speichervorrichtung und Selbstreparatur-Verfahren

Country Status (3)

Country Link
US (1) US7355908B2 (de)
EP (1) EP1394810B1 (de)
DE (1) DE60222891T2 (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI308741B (en) * 2005-06-03 2009-04-11 Quanta Storage Inc A method of defect areas management
US7403417B2 (en) * 2005-11-23 2008-07-22 Infineon Technologies Flash Gmbh & Co. Kg Non-volatile semiconductor memory device and method for operating a non-volatile memory device
US8178403B2 (en) * 2006-09-18 2012-05-15 Qunano Ab Method of producing precision vertical and horizontal layers in a vertical semiconductor structure
US8063450B2 (en) * 2006-09-19 2011-11-22 Qunano Ab Assembly of nanoscaled field effect transistors
US7724578B2 (en) * 2006-12-15 2010-05-25 Globalfoundries Inc. Sensing device for floating body cell memory and method thereof
US8068380B2 (en) 2008-05-15 2011-11-29 Micron Technology, Inc. Block repair scheme
US8246241B2 (en) 2008-06-18 2012-08-21 Actamax Surgical Materials, Llc Mixing device having a corrugated conveying plate
US8412987B2 (en) * 2009-06-30 2013-04-02 Micron Technology, Inc. Non-volatile memory to store memory remap information
US9082057B2 (en) * 2009-08-19 2015-07-14 Intelleflex Corporation RF device with tamper detection
KR102038036B1 (ko) * 2013-05-28 2019-10-30 에스케이하이닉스 주식회사 반도체 장치 및 반도체 장치를 포함하는 반도체 시스템
FR3044817B1 (fr) 2015-12-02 2017-12-22 St Microelectronics Rousset Procede de gestion d'une ligne de bits defectueuse du plan memoire d'une memoire non volatile et dispositif de memoire correspondant
FR3044818B1 (fr) 2015-12-02 2018-03-30 Stmicroelectronics (Rousset) Sas Procede de gestion d'une ligne defectueuse du plan memoire d'une memoire non volatile et dispositif de memoire correspondant
KR102496678B1 (ko) * 2016-02-19 2023-02-07 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이의 동작 방법
US9965346B2 (en) 2016-04-12 2018-05-08 International Business Machines Corporation Handling repaired memory array elements in a memory of a computer system
CN111951845B (zh) * 2019-05-15 2022-06-03 上海磁宇信息科技有限公司 一种分级管理冗余存储的mram芯片
US20210376652A1 (en) * 2020-06-02 2021-12-02 Inergy Holdings, LLC Portable solar battery charging
CN115831198B (zh) * 2023-01-06 2023-05-02 芯天下技术股份有限公司 片选使能控制装置、读取装置、擦写装置及快闪存储器

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5153880A (en) * 1990-03-12 1992-10-06 Xicor, Inc. Field-programmable redundancy apparatus for memory arrays
US5572707A (en) * 1993-05-27 1996-11-05 Intel Corporation Nonvolatile memory with a programmable configuration cell and a configuration logic for temporarily reconfiguring the memory without altering the programmed state of the configuration cell
EP0802483B1 (de) * 1996-04-18 2002-01-30 STMicroelectronics S.r.l. Halbleiterspeichergerät mit Zeilenredundanz
US5677917A (en) * 1996-04-29 1997-10-14 Motorola, Inc. Integrated circuit memory using fusible links in a scan chain
US5668818A (en) * 1996-08-06 1997-09-16 Hewlett-Packard Co. System and method for scan control of a programmable fuse circuit in an integrated circuit
KR100227638B1 (ko) * 1996-11-22 1999-11-01 김영환 플래쉬 메모리 소자의 소거회로
US5859801A (en) * 1997-03-28 1999-01-12 Siemens Aktiengesellschaft Flexible fuse placement in redundant semiconductor memory
US6188618B1 (en) * 1998-04-23 2001-02-13 Kabushiki Kaisha Toshiba Semiconductor device with flexible redundancy system
US6324103B2 (en) * 1998-11-11 2001-11-27 Hitachi, Ltd. Semiconductor integrated circuit device, memory module, storage device and the method for repairing semiconductor integrated circuit device
JP2000311496A (ja) * 1999-04-28 2000-11-07 Nec Corp 冗長アドレス設定回路及びこれを内蔵した半導体記憶装置
JP4439683B2 (ja) * 1999-06-03 2010-03-24 三星電子株式会社 リダンダンシ選択回路を備えたフラッシュメモリ装置及びテスト方法
US6363020B1 (en) * 1999-12-06 2002-03-26 Virage Logic Corp. Architecture with multi-instance redundancy implementation
US6462985B2 (en) * 1999-12-10 2002-10-08 Kabushiki Kaisha Toshiba Non-volatile semiconductor memory for storing initially-setting data
US6178126B1 (en) * 2000-03-23 2001-01-23 International Business Machines Corporation Memory and system configuration for programming a redundancy address in an electric system
US6243306B1 (en) * 2000-07-19 2001-06-05 International Business Machines Corporation Defect management engine for generating a unified address to access memory cells in a primary and a redundancy memory array
JP2002109899A (ja) * 2000-07-26 2002-04-12 Mitsubishi Electric Corp 半導体記憶装置およびそれを備える半導体集積回路装置
JP2002093193A (ja) * 2000-09-13 2002-03-29 Advantest Corp メモリ試験方法・メモリ試験装置

Also Published As

Publication number Publication date
EP1394810B1 (de) 2007-10-10
US7355908B2 (en) 2008-04-08
EP1394810A1 (de) 2004-03-03
US20040130953A1 (en) 2004-07-08
DE60222891D1 (de) 2007-11-22

Similar Documents

Publication Publication Date Title
DE60222891T2 (de) Nichtflüchtige Speichervorrichtung und Selbstreparatur-Verfahren
DE10301458B4 (de) Speicherbaustein und zugehöriges Lösch-, Programmier- und Rückkopierverfahren
DE102006020180B3 (de) Verfahren zum Programmieren eines Blocks von Speicherzellen, nicht-flüchtiger Speicher und Speicherkarte
EP0254247A2 (de) Einrichtung zur Rettung des Rechnerzustandes
DE69401556T2 (de) Dynamische Redundanzschaltung für integrierten Speicher
EP0198935A1 (de) Elektrisch umprogrammierbarer Halbleiterspeicher mit Redundanz
DE102008002083A1 (de) Flash-Speichervorrichtung und Verfahren zum Programmieren
DE3900798A1 (de) Verfahren zum loeschen und programmieren eines elektrisch loeschbaren und programmierbaren nur-lese-speichers
EP0067364B1 (de) Verfahren und Anordnung zum nichtflüchtigen Speichern des Zählerstandes einer elektronischen Zählschaltung
DE102006036070B4 (de) Ladungsfallenspeichervorrichtung und Verfahren für deren Herstellung und Betrieb
EP0038947A2 (de) Programmierbare logische Anordnung
DE2128790A1 (de) Einrichtung zum Verwenden mehrerer betriebsfähiger Schaltungen in einem in tegrierten Schaltungsplättchen
DE69724742T2 (de) Speicherfeldprüfschaltung mit Fehlermeldung
DE60102466T2 (de) Zwei-tor cam speicher für simultanen flash speicher betrieb
EP0123177B1 (de) Verfahren zum Betreiben eines als nichtflüchtigen Schreib-Lese-Speichers ausgebildeten Anwendungsspeichers und Anordnung zur Durchführung des Verfahrens
DE102006009214B4 (de) Verfahren und Vorrichtung zum Schreiben in eine Zielspeicherseite eines Speichers
DE69500023T2 (de) Elektrisch veränderlicher Festspeicher mit Prüffunktionen
DE69500009T2 (de) Nichtflüchtiger programmierbarer Flip-Flop mit Verminderung von parasitären Effekten beim Lesen für Speicherredundanzschaltung
EP1055238B1 (de) Testschaltung und verfahren zum prüfen einer digitalen halbleiter-schaltungsanordnung
DE60126800T2 (de) Burstread mit ausgangbasierter redundanz
DE69100796T2 (de) Integrierte Speicherschaltung mit Redundanz und verbesserter Adressierung in Testbetriebsart.
DE10126301A1 (de) Speicherbaustein mit einem Testmodus und Vefahren zum Überprüfen von Speicherzellen eines reparierten Speicherbausteins
DE60212332T2 (de) Selbstreparatur-Methode für nicht flüchtige Speicher mit einer Architektur zur Fehlervermeidung sowie nicht flüchtiger Speicher
DE3900979C2 (de) Elektrisch lösch- und programmierbares Nur-Lese-Speicherbauelement
DE112007003117T5 (de) Neue Implementierung der Spaltenredundanz für einen Flash-Speicher mit einem hohen Schreibparallelismus

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8328 Change in the person/name/address of the agent

Representative=s name: LEINWEBER & ZIMMERMANN, 80331 MUENCHEN