DE60126800T2 - Burstread mit ausgangbasierter redundanz - Google Patents

Burstread mit ausgangbasierter redundanz Download PDF

Info

Publication number
DE60126800T2
DE60126800T2 DE60126800T DE60126800T DE60126800T2 DE 60126800 T2 DE60126800 T2 DE 60126800T2 DE 60126800 T DE60126800 T DE 60126800T DE 60126800 T DE60126800 T DE 60126800T DE 60126800 T2 DE60126800 T2 DE 60126800T2
Authority
DE
Germany
Prior art keywords
address
regular
memory cell
defective
memory
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
DE60126800T
Other languages
English (en)
Other versions
DE60126800D1 (de
Inventor
Ali San Jose AL-SHAMMA
Takao Cupertino Akaogi
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.)
Advanced Micro Devices Inc
Spansion LLC
Original Assignee
Advanced Micro Devices Inc
Spansion LLC
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 Advanced Micro Devices Inc, Spansion LLC filed Critical Advanced Micro Devices Inc
Application granted granted Critical
Publication of DE60126800D1 publication Critical patent/DE60126800D1/de
Publication of DE60126800T2 publication Critical patent/DE60126800T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/16Protection against loss of memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C15/00Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores
    • G11C15/04Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements
    • G11C15/046Digital stores in which information comprising one or more characteristic parts is written into the store and in which information is read-out by searching for one or more of these characteristic parts, i.e. associative or content-addressed stores using semiconductor elements using non-volatile storage elements

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft generell Halbleiterspeichervorrichtungen. Insbesondere betrifft die vorliegende Erfindung eine ausgangssignal-basierte Redundanz bei einem Flash-Speicher.
  • TECHNISCHER HINTERGRUND
  • US-A-5,416,740 beschreibt einen statischen RAM-Speicher mit 64 Speicherzell-Array-Blöcken und einem redundanten Speicherzell-Array-Block. Das redundante Speicherzell-Array weist insgesamt 16 redundante Speicherzell-Array-Blöcke auf. Eine Defekt-Adresse, die eine Position einer defekten Speicher-Spalte angibt, wird in einer Adress-Programmierschaltung programmiert, und die spezielle defekte Spalte an der Defekt-Adresse wird in einer I/O-Programmierschaltung programmiert. Obwohl nicht jede Speicherzelle eine zusätzliche Speicherzell-Spalte oder -Reihe zwecks Redundanz enthält, kann der Defekt mittels des redundanten Speicherzell-Arrays repariert werden.
  • Bei einem Flash-Direktzugriffsspeicher (RAM), der üblicherweise eher als Flash-Speicher bekannt ist, handelt es sich um eine Form eines nichtflüchtigen Speichers, bei dem ein Speicherzellen-Design mit Floating Gate verwendet wird. An die Speicherzellen-Eingänge werden hohe Spannungen angelegt, um das Floating Gate zu programmieren oder Ladung in diesem zu speichern, oder um das Floating Gate zu löschen oder Ladung von diesem zu entfernen. Das Programmieren erfolgt durch Heißelektronenübertragung zum Platzieren von Ladung an dem Floating Gate, während zum Löschen die Nordheim-Tunnelung verwendet wird, bei dem Elektronen ein dünnes dielektrisches Material durchstoßen, so dass der Betrag elektri scher Ladung an dem Floating Gate reduziert wird. Beim Löschen einer Zelle wird der logische Wert der Zelle auf "1" gesetzt, während beim Programmieren der Zelle der logische Wert auf "0" gesetzt wird. Abgesehen von den Programmier- und Lösch-Operationen arbeitet ein Flash-Speicher ähnlich wie ein zum beliebigen Zugriff ausgebildeter Nurlesespeicher (ROM). Herkömmlicherweise wird ein Flash-Speicher-Chip einschließlich der Flash-Speicher-Speicherzellen und der Stütz-Logik/-Schaltung hergestellt, indem Schichten aus Halbleitermaterial und Zwischenverbindungsschichten aus Polysilizium und erste und zweite Metallschichten auf einem Substrat ausgebildet werden. Es versteht sich, dass dabei zahlreiche IC-Schaltungs-Herstellungstechniken, bei denen eine größere oder kleinere Anzahl von Schichten involviert sind, anwendbar sind.
  • Neuere Technologien, wie z.B. zur gleichzeitigen Lese- und Schreib-Operation vorgesehene Flash-Speicher, bieten Gelegenheiten für eine Neukonzeption von CAM-Schaltungen und -Architekturen und ihrer zugehörigen Ausgangsschaltungen dahingehend, dass die immer anspruchsvolleren Standards hinsichtlich der System-Leistungsfähigkeit und der Vorrichtungsdichte erfüllt werden. Es wäre wünschenswert, eine effizientere Redundanz-CAM-Schaltung und -Architektur und zugehörige Ausgangsschaltunen zu implementieren.
  • Redundante Kernzell-Arrays werden verwendet zum Substituieren betriebsunfähiger oder defekter Speicherkernzellen primärer oder regulärer Arrays. Es können inhaltsadressierbare Speicher-(CAM-)Schaltungen verwendet werden, um die Redundanz-Substitution zu unterstützen. Redundanz-CAM-Zellen speichern Information bezüglich der Positionen betriebsunfähiger oder defekter Speicherzellen, so dass redundante Arrays von Speicherzellen verwendet werden können, um die betriebsunfähigen oder defekten Speicherzellen der primären Arrays zu ersetzen.
  • Typischerweise werden die Arrays von Speicherzellen vom Hersteller auf Leistungsfähigkeit und Präzision getestet, bevor sie vom Kunden oder User verwendet werden. Die Redundanz-CAM-Zellen werden gelöscht und mit den Positionen betriebsunfähiger Speicherzellen programmiert, wie es nach der Teststufe zweckmäßig ist.
  • Kernzellen in dem Speicher können byte- oder wort-adressierbar sein. Falls eine bestimmte Operation an einem primären Array vorgenommen werden soll, wird eine Adresse für die Operation zugeführt. Derzeit wird, bevor auf die Speicherzelle für das primäre Array zugegriffen wird, die Adresse mit der Adress-Information hinsichtlich der Position betriebsunfähiger Speicherzellen verglichen. Falls die Adresse zu einer Position einer Gruppe betriebsunfähiger Speicherzellen passt, wird die Adresse zu dem redundanten Array umgeleitet. Die Operation wird dann an dem redundanten Array durchgeführt. Falls die Adresse nicht zu einer Position einer Gruppe betriebsunfähiger Speicherzellen passt, wird die Adresse auf das primäre Array bezogen. Typischerweise ist dieses Ersetzen von Primär-Array-Speicherzellen durch Redundanz-Array-Speicherzellen nahtlos und für den User des Speichers transparent.
  • Neuere Technologien, wie z.B. für gleichzeitige Lese- und Schreib-Operationen ausgelegten Flash-Speicher, bieten Möglichkeiten für Neukonzeptionen von CAM-Schaltungen und -Architekturen und ihrer zugehörigen Ausgangsschaltungen dahingehend, dass die zunehmend höheren Standards hinsichtlich der System-Leistungsfähigkeit und der Vorrichtungsdichte erfüllt werden. Bei den derzeit bevorzugten Ausführungsformen, die hier beschrieben werden, werden eine CAM-Schaltung und -Architektur und eine zugehörige Ausgangsschaltung bei einem Speicher wie z.B. einem Flash-Speicher beschrieben, die stärker effizient sind.
  • Eine CAM-Zelle ist derart konfiguriert, dass sie Information hinsichtlich einer Position einer betriebsunfähigen Speicherzelle in einem Primär-Kernzellen-Array speichert. Typsicherweise erfordert die betriebsunfähige Speicherzelle ein Ersetzen durch eine Speicherzelle in einem redundanten Array. Die in der CAM-Zelle gespeicherte Information kann sich darauf be ziehen, ob eine Speicherzelle, die durch eine Operationsadresse des Primär-Kernzellen-Arrays adressiert wird, eine Substitution durch eine Speicherzelle eines redundanten Arrays erfordert.
  • Die nun zu erläuternde 1 zeigt ein Blockschaltbild eines Speichers 100 gemäß einer derzeit bevorzugten Ausführungsform. Bei der gezeigten Ausführungsform ist der Speicher 100 als Flash-Speicher konfiguriert, der als Komplementär-Metalloxid-Halbleiter-(CMOS-)IC-Schaltung zum Speichern digitaler Daten ausgebildet ist. Der Speicher 100 kann jedoch auch in jeder anderen geeigneten Form ausgebildet sein, und tatsächlich können die hier beschriebenen Prinzipien an jeder anderen geeigneten Schaltung angewandt werden, bei der ein gleichzeitig ablaufender Betrieb eine mit Doppel-Port versehene CAM-Architektur erlaubt. Der Speicher 100 weist ein Kern-Zell-Array 102, einen Dekodierer 104, eine Adress-Puffer-Schaltung 108, eine Redundanz-CAM-Schaltung 106, eine Steuerlogik-Schaltung 110 und eine Leseverstärker- und Ausgangsschaltung 112 auf. Die Steuerlogik-Schaltung 110 ist mit dem Dekodierer 104, der Adress-Puffer-Schaltung 108 und der Leseverstärker- und Ausgangsschaltung 112 verbunden. Die Steuerlogik-Schaltung 110 erzeugt eine Serie von Lese- und Schreib-Wähl-Betriebssignalen RSEL, WSEL und verteilt die Signale auf den Dekodierer 104 und die Redundanz-CAM-Schaltung 106. Vorzugsweise verteilt die Steuerlogik-Schaltung 110 Zeitsteuerungs- und andere Steuersignale für den Speicher 100.
  • Das Kern-Zell-Array 102 weist mehrere Speicherzellen auf, die jeweils zum Speichern von Daten konfiguriert sind. Bei einigen Anwendungen kann jede Speicherzelle ein einzelnes Daten-Bit speichern; bei anderen Anwendungen kann jede Speicherzelle zwei oder mehr Daten-Bits speichern. Die Speicherzellen des Kern-Zell-Arrays 102 können byte- oder wort-adressierbar sein, und ein Zugriff auf sie erfolgt durch eine bestimmte Adresse an der Adress-Puffer-Schaltung 108. Bei einer Ausführungsform wird auf die Speicherzellen als Datenwörter zugegriffen, und die Adressen entsprechen unverwechselbaren Datenwörtern. Wie Fachleuten auf dem Gebiet jedoch ersichtlich sein wird, sind auch andere Ausführungsformen möglich, bei denen jede Speicherzelle eine unverwechselbare Adresse hat, die von dem Dekodierer 104 dekodiert wird.
  • Der Dekodierer 104 enthält typischerweise eine Reihen- oder x-Adress-Dekodierlogik und eine Bitleitungs- oder y-Adress-Dekodierlogik. Die x-Adress-Dekodierlogik des Dekodierers 104 reagiert auf ein von der Adress-Puffer-Schaltung 108 zugeführtes Adress-Signal ADD, indem sie eine Wortleitung aus mehreren Wortleitungen aktiviert, wobei jede Wortleitung einer Reihe des Kern-Zell-Arrays 102 zugeordnet ist. Auf die Aktivierung der Wortleitung hin wird die dieser Wortleitung zugeordnete Speicherzelle eingeschaltet und beginnt, Strom abzuleiten. Um die Speicherzellen adäquat einzuschalten, muss die Wortleitung um eine beträchtliche Potenzialdifferenz variiert werden, z.B. um 3,0 bis 4,0 V.
  • Die y-Adress-Dekodierlogik des Dekodierers 104 verbindet die entsprechende Bitleitung des Kern-Zell-Arrays 102 mit der Leseverstärker- und Ausgangsschaltung 112. Die y-Adress-Dekodierlogik reagiert auf ein Adress-ADD von der Adress-Pufferschaltung 108, um die gewählte Bitleitung unter mehreren Bitleitungen des Kern-Zell-Arrays 102 zu dekodieren. Die Leseverstärker- und Ausgangsschaltung 112 detektiert den Strom in der gewählten Speicherzelle des Kern-Zell-Arrays 102 und bestimmt den Binär-Zustand des einen oder der mehreren Datenbits, die in der gewählten Speicherzelle gespeichert sind. Die Schaltung 112 erzeugt die Speicher-Zell-Daten, die bei einer Ausführungsform als Datenwörter von der Leseverstärkerschaltung 112 an dem Ausgang des Speichers 100 gelesen werden, um außerhalb des Speichers 100 verwendet zu werden. Weitere Schaltungen, die in 1 nicht gezeigt sind, sind vorgesehen für das Programmieren, Lesen, Verifizieren, Löschen und das Durchführen anderer Operationen, je nach Erfordernis, an den einzelnen Speicherzellen des Kern-Zell-Arrays 102.
  • Der Speicher 100 arbeit in Reaktion auf eine Versorgungsspannung, die in 1 mit VCC bezeichnet ist. Die Potentialdifferenz zwischen VCC und Masse ist die Versorgungsspannung und kann z.B. im Bereich von 0,8 bis 3,3 Volt liegen. Die Eignung der Versorgungsspannung VCC hängt von verschiedenen Faktoren ab, einschließlich der Technologie, mit welcher der Speicher 100 hergestellt wird. Generell hat bei höher entwickelten CMOS-Vorgängen die Versorgungsspannung einen Nennwert von 1,8 Volt. Absolut ausgedrückt ist diese Spannung größer als die Größe der Einschalt- oder Schwellspannung Vtp für p-Kanal-Transistoren mit 0,9 Volt und die Einschalt- oder Schwellspannung Vtn für n-Kanal-Transistoren mit +1,0 Volt.
  • Das Kern-Zell-Array 102 enthält typischerweise eine Reihe primärer Arrays und redundanter Arrays. Die Redundanz-CAM-Schaltung 106 gemäß 1 enthält ferner CAM-Zellen, die Information über die Position einer betriebsunfähigen oder defekten Speicherzelle oder einer betriebsunfähigen oder defekten Bitleitung eines der primären Arrays des Kern-Zell-Arrays 102 speichern. Eine Bitleitung eines zugehörigen redundanten Arrays wird als Ersatz für eine betriebsunfähige Bitleitung verwendet. Die CAM-Zellen der Redundanz-CAM-Schaltung 106 werden bei der in 1 gezeigten PROG/ERASE-Eingabe programmiert und gelöscht. Typischerweise erfolgt das Programmieren und Löschen der CAM-Zellen während einer Teststufe, die vor der Verwendung des Chips durch den End-User oder Kunden durchgeführt wird.
  • Jedes Mal, wenn eine Operation wie z.B. ein Lese- oder Schreibvorgang an dem Kern-Zell-Array 102 durchgeführt wird, wird die Operationsadresse der Redundanz-CAM-Schaltung 106 zugeführt, damit die Operationsadresse mit der in den CAM-Zellen gespeicherten Information verglichen werden kann. Falls die Operationsadresse zu der in den CAM-Zellen gespeicherten Positionsinformation passt, dann ist mindestens eine der Speicherzellpositionen, auf die sich die Operationsadresse bezieht, betriebsunfähig und erfordert eine Redundanz-Substitution.
  • Beispielsweise wird, falls eine Lese-Operation aus dem regulären Array heraus durchgeführt wird, eine Lese-Adresse, die einer Reihe von Speicherzellen entspricht, welche ein Datenwort bilden, mit der Information in den Redundanz-CAM-Zellen verglichen. Falls der Fall eintritt, dass eine betriebsunfähige Bitleitung eine der Reihe der Speicherzellen enthält, auf welche die Lese-Adresse ohne Redundanz-Substitution zugreifen würde, dann zeigt die Redundanz-CAM-Schaltung eine Lese-Entsprechung für die Lese-Adresse an. Eine Dekodierlogik gewährleistet, dass eine Bitleitung des redundanten Arrays für die betriebsunfähige Bitleitung und die betriebsunfähigen Speicherzelle ersatzweise eingesetzt wird, auf welche die Lese-Adresse ohne Redundanz-Substitution zugreifen würde. Eine ähnliche Substitution würde erfolgen, falls eine betriebsunfähigen Bitleitung eine der Reihe von Speicherzellen enthielte, welche die Schreib-Adresse ohne Redundanz-Substitution zugreifen würde.
  • 2 zeigt ein Schaubild zur Veranschaulichung eines Beispiels eines Kern-Zell-Arrays 102 mit primären Arrays und redundanten Arrays entsprechend dem Speicher 100 gemäß 1. Horizontal ist das als Beispiel dienende Kern-Zell-Array 102 gemäß 2 in eine obere Bank 114 und eine untere Bank 116 unterteilt. Vertikal ist das Array 102 in vier vertikale Arrays VERT0, VERT1, VERT2, VERT3 unterteilt, wobei jedes vertikale Array ein primäres Array und ein zugehöriges redundantes Array enthält. Die obere Bank 114 enthält obere primäre Arrays 118A-D und obere redundante Arrays 120A-B. Die untere Bank 116 enthält untere primäre Arrays 128A-D und untere redundante Arrays 130A-D. Das vertikale Array VERT0 beispielsweise enthält die primären Arrays 118A, 128A und die redundanten Arrays 120A, 130A.
  • Bei einer Ausführungsform ist jedes vertikale Array in neun Sektoren von Speicherzellen unterteilt (in 2 nicht gezeigt). Horizontal ist jeder Sektor in eine Reihe von Spaltenbereichen innerhalb des primären Arrays unterteilt. Jeder Spaltenbereich seinerseits enthält eine Anzahl von Speicherzellen. Jede Speicherzelle des Spaltenbereichs entspricht vorzugsweise einer unverwechselbaren Bitleitung für das primäre Array. Wie oben erläutert wird in dem Fall, dass sich eine betriebsunfähige Speicherzelle in den primären Arrays befindet, die Position der betriebsunfähigen Speicherzelle identifiziert. Typischerweise wird eine Bitleitung, welche die oberen und unteren redundanten Array-Teile des vertikalen Arrays überspannt, für die gesamte Bitleitung des primären Arrays ersatzweise eingesetzt, die der betriebsunfähigen Speicherzelle entspricht. Falls eine Speicherzelle einer Bitleitung betriebsunfähig ist, wird die gesamte Bitleitung durch eine redundante Bitleitung ersetzt, so dass eine betriebsunfähige Bitleitung definitionsgemäß mindestens eine betriebsunfähige Speicherzelle enthält. Typischerweise – und in Abhängigkeit von der Ausgestaltung des Kern-Zell-Arrays 102 – kann eine begrenzte Anzahl betriebsunfähiger Bitleitungen eines primären Arrays durch ein entsprechendes redundantes Array ersetzt werden.
  • Bei einer Ausführungsform wird, wie oben beschrieben, auf die Speicherzellen als Datenwörter zugegriffen, wobei ein Spaltenbereich von Speicherzellen ein unverwechselbares Datenwort speichert. Beispielsweise wird eine Lese-Operation durchgeführt, bei der zwei 16-Bit-Datenwörter auf einmal intern gelesen werden, während ein 16-Bit-Datenwort auf einmal aus der Ausgangsschaltung 112 heraus erzeugt wird. Auf diese Weise wird in einer Lese-Operation auf zwei Spaltenbereiche gleichzeitig zugegriffen. Eine Schreib-Operation hingegen wird mit einem einzigen 16-Bit-Datenwort auf einmal vorgenommen, und es wird auf einen einzigen Spaltenbereich auf einmal zugegriffen. Selbstverständlich handelt es sich bei diesen Datenwort-Längen nur um Beispiele, und es können je nach Eignung auch andere Wortlängen verwendet werden.
  • 3 zeigt ein Schaltbild eines Beispiels einer CAM-Stufe 200 und der zugehörigen Ausgangsschaltung entsprechend dem Speicher gemäß 1. Das Beispiel der CAM-Stufe 200 weist eine CAM-Zelle 202, einen Schreibdatenbus 204 und einen Lesedatenbus 206 auf. Bei der CAM-Zelle 202 handelt es sich um einen Transistor, vorzugsweise einen n-Kanal-Metalloxid-Halbleiter-Feldeffekttransistor (MOSFET). Obwohl doe CAM-Zele 202 vorzugsweise ein MOSFET-Transistor ist, der als nichtflüchtige Speicherzelle verwendet wird, kann jedes beliebige geeignete aktive Datenspeicherelement als CAM-Zelle 202 verwendet werden. Der Schreibdatenbus 204 ist an einem Ausgangsport mit einem Knotenpunkt 212 verbunden und an einem Eingang mit dem Drain der CAM-Zelle 202 an einem Knotenpunkt 216 verbunden. Der Lesedatenbus 206 ist an einem Ausgangsport mit einem Knotenpunkt 214 verbunden und an einem Eingang mit dem Drain der CAM-Zelle 202 an einem Knotenpunkt 216 verbunden. Bei dem Schreibdatenbus 204 und der Lesedatenbus 206 handelt es sich um Transistoren, typischerweise um n-Kanal-MOSFETs. Selbstverständlich kann jeder beliebige geeignete Datenbus für die Datenbusse 204, 206 verwendet werden. Ein Schreib-Wähl-Signal WSELm wird an das Gate des Schreibdatenbusses 204 angelegt, während ein Lese-Wähl-Signal RSELm an das Gate des Lesedatenbusses 206 angelegt wird. Eine Spannung VG wird an den Gate-Eingang der CAM-Zelle 202 angelegt, während eine Spannung VS an den Source-Eingang der CAM-Zelle 202 angelegt wird. Bei einer Ausführungsform liegt während des regulären Betriebs der CAM-Zelle 202, z.B. wenn die CAM-Zelle 202 geprüft wird oder auf sie zugegriffen wird, die Spannung VS auf Massepotential.
  • In 3 wird ferner eine knappe Darstellung des Beispiels einer mit zwei Ports versehenen CAM-Stufe 200 präsentiert. Auf eine gattungsgemäße CAM-Stufe 200 kann als CAMn/VERTm bezeichnet werden, wobei m eines der M vertikalen Arrays VERT0-VERTM bezeichnet, und wobei n eine der N CAM-Stufen 200 CAM0-CAMN bezeichnet, die einem vertikalen Array VERTm zugeordnet sind. Bei dem in 2 gezeigten Beispiel eines Kernzell-Arrays 102 sind M=4 vertikale Arrays VERT0-VERT3 vorhanden. Bei einer Ausführungsform weist jedes vertikale Array VERTm N=8 zugehörige und unverwechselbare Redundanz-CAM-Stufen CAM0-CAM7 auf. Bei einer anderen Ausführungsform weist jedes vertikale Array VERTm N=16 zugehörige und unverwechselbare Redundanz-CAM-Stufen CAM0-CAM16 auf, die in einer oder zwei separaten Spalten angeordnet sind. Selbstverständlich ist das Kern-Zell-Array 102 skalierbar und kann auch anders als das in 2 gezeigte Beispiel des Kern-Zell-Arrays 102 konzipiert, bemessen, angeordnet oder aufgeteilt sein. Auch die Anzahl der Redundanz-CAM-Zellen 202 und Stufen 200, die jeder Vertikalen zugeordnet sind, kann je nach der Ausführungsform und dem bestimmten Konzept und Layout des Kern-Zell-Arrays 102 variieren. Dies bedeutet, dass mehr Redundanz-Arrays vorgesehen sein können oder zusätzliche CAM-Zellen verwendet werden können, um insbesondere die Position einer betriebsunfähigen oder defekten Speicherzelle, die Position einer betriebsunfähigen Bitleitung, welche die betriebsunfähige Speicherzelle enthält, oder des Spaltenbereichs, in dem die betriebsunfähige Bitleitung angeordnet ist, zu bestimmen.
  • Bei einer Ausführungsform ist die CAM-Zelle 202 eine nichtflüchtige Speicherzelle, bei der die Information gelöscht werden kann oder die mit Information programmiert werden kann. Falls es sich bei der CAM-Zelle 202 um einen MOSFET-Transitsor handelt, wird dies durch Modifikation der Schwellspannung des Transistors erzielt. Das Programmieren/Löschen der Signalzelle und der beigefügte Pfeil sollen die an der CAM-Zelle 202 vorgenommene Programmier-/Lösch-Operation andeuten. In Abhängigkeit davon, ob die CAM-Zelle 202 programmiert oder gelöscht wird, reagiert die CAM-Zelle 202 unterschiedlich auf eine angelegte Gate-Spannung.
  • Wenn die CAM-Zelle 202 programmiert wird, werden typischerweise geregelte Spannungen an das Drain und das Gate der Transistorzelle 202 angelegt. Die geregelten Spannungen sind verglichen mit der Versorgungsspannung VCC relativ hoch. Beispielsweise wird eine Spannung VD von ungefähr 5,0 Volt an das Drain angelegt, während eine Spannung VG von ungefähr 8,5 Volt an den Gate-Eingang der CAM-Transistorzelle 202 angelegt wird. Unabhängig von der verwendeten Spannung besteht der kombinierte Effekt der an der CAM-Zelle 202 vorgenommenen Programmieroperation darin, die Schwellspannung höher anzuheben als irgendeine angelegte Spannung an dem Gate der CAM-Zelle 202 während des regelmäßigen Betriebs der Redundanz-CAM-Schaltung 106, d.h. höher als die Versorgungsspannung VCC.
  • Während des regelmäßigen Betriebs, nachdem die CAM-Zelle 202 programmiert ist und das Drain der Zelle 202 auf Massepotential liegt, wird bei Anlegen einer Gate-Spannung VG, vorzugsweise der Versorgungsspannung VCC, nicht geschehen, d.h. die CAM-Zelle 202 wird nicht eingeschaltet oder wird nicht leitend.
  • Typischerweise sind vor dem Löschen sämtliche CAMs vorprogrammiert und werden zusammen gelöscht. Die CAM-Zelle 202 kann mittels eines UV-Löschvorgang gelöscht werden, wie Fachleuten auf dem Gebiet bekannt ist. Selbstverständlich können auch andere Löschtechniken verwendet werden. Der Effekt der Löschoperation auf die CAM-Zelle 202 besteht darin, dass die Schwellspannung von ihrem bei Programmierung der Zelle 202 bestehenden Wert auf einen regulären Wert abgesenkt wird, der mit einem regulären Transistor konsistent ist. Typischerweise wird beim Löschen der CAM-Zelle 202 die Schwellspannung derart gesetzt, dass sich die Zelle wie ein n-Kanal-Transistor verhält, d.h. beim Anlegen einer Gate-Spannung VG, die der Versorgungsspannung VCC gleichwertig ist, schaltet sich der Transistor ein und wird leitend.
  • Ebenfalls in 3 sind zwei p-Kanal-Vorspanntransistoren 208, 210 gezeigt, die als zugefügte Ausgangsschaltung für das Beispiel der CAM-Stufe 200 verwendet werden. Die Transistoren 208, 210 sind als schwache Pull-up-Transistoren relativ zu der CAM-Zelle 202 konzipiert und bemessen. Die in 3 gezeigten p-Kanal-Transistoren 208, 210 gemäß einer Ausführungsform sind Niedrig-Schwellspannungs-Transistoren. Fachleuten auf dem Gebiet ist gut bekannt, dass die Schwellspannungen von Transistoren wie z.B. von MOSFETS während der Herstellung gesteuert werden. Der Vorrichtungsherstellungsvorgang erlaubt eine gewisse Flexibilität beim Wählen der Schwellspannung. Jedoch sind vornehmlich normale Werte vorhanden, und diese werden für MOSFETs bei bestimmten Vorgängen allgemein verwendet. Es versteht sich, dass diese Schwellwerte nur Beispiele sind. Generell können Transistor-Design-Parameter wie z.B. Schwellspannungen und Vorrichtungsgrößen, andere Schaltungskonfigurationen oder andere applizierbare Designtechniken, die Fachleuten auf dem Gebiet verfügbar sind, verwendet oder ersatzweise vorgesehene werden, wo dies geeignet ist.
  • Die p-Kanal-Transistoren 208, 210 sind mit den Schreib- und Lese-Datenbussen 204, 206 verbunden. Beispielsweise ist der Lese-p-Kanal-Vorspanntransistor 210 mit dem Ausgangs-Port des Lesedatenbusses 206 an dem Knotenpunkt 214 verbunden. Die gattungsgemäße CAM-Stufe 200, die als CAMn/VERTm bezeichnet werden kann, und der Lese-p-Kanal-Vorspanntransistor 210 erzeugen ein Signal CAMnR an dem Knotenpunkt 214, wobei – wie oben – n eine der n CAM-Stufen 200 CAM0-CAMn bezeichnet, die einem vertikalen Array VERTm zugeordnet sind. Das R identifiziert das Signal CAMnR an dem Knotenpunkt 214 als ein Lese-Operations-CAM-Signal. Im Licht der soeben gegebenen Erläuterungen wird Fachleuten auf dem Gebiet die Funktion des p-Kanal-Vorspanntransistors 208 und seines Schreibdatenbusses 204 ersichtlich sein.
  • Die Gate-Eingänge der Lese-p-Kanal-Vorspanntransistoren 210, 208 sind mit Massepotential verbunden, während die Source-Eingänge auf der Versorgungsspannung VCC liegen. Somit befinden sich die Transistoren 210, 208, da sie wie oben beschrieben Niedrig-Schwellwert-Transistoren sind, im leitenden Zustand, und die jeweiligen Knotenpunkte 212, 214 liegen bei Nichtvorhandensein einer Pull-down-Aktion von der CAM-Stufe 200 auf VCC.
  • Der Betrieb der CAM-Stufe 200 in Verbindung mit den Transistoren 208, 210 läuft wie folgt ab. Bei einer Ausführungsform erfolgt jedes Mal, wenn eine Operation zum Zugriff auf das Kernzell-Array 102 auftritt, unabhängig davon, ob die Operation ein Lese- oder Schreibvorgang ist, ein Zugriff auf die CAM-Zellen 202 der Redundanz-CAM-Schaltung 106. Es wird festgestellt, ob die betreffende Adresse (eine Lese-Adresse oder eine Schreib-Adresse) eine Position mit betriebsunfähiger Speicherzelle enthält, an der eine Redundanz-Operation erforderlich ist. Die Information zu dieser Stelle wurde typischerweise vor dieser Stelle in die CAM-Zellen 202 programmiert. Jedes Mal, wenn eine Lese- oder Schreib-Operation oder beide auftreten, liegt die Quellspannung VS jeder CAM-Zelle 202 auf Massepotential, und die Gate-Spannung VC jeder CAM-Zelle 202 wird auf die Versorgungsspannung VCC gebracht.
  • Falls eine Lese-Operation an einem vertikalen Array VERTm vorgenommen wird, befindet sich das Lese-Wähl-Signal RSELm im High-Zustand, und der Lese-Datenbus befindet sich im Ein-Zustand. Eine programmierte CAM-Zelle 202 verbleibt im Aus-Zustand und wird nicht auf eine aufgebrachte Gate-Spannung VG, bei der es sich gemäß einer Ausführungsform um die Versorgungsspannung VCC handelt, eingeschaltet oder leitend. Der Lese-Pull-up-Transistor 210 befindet sich im leitenden Zustand, und der Knotenpunkt 214 bei Nichtvorhandensein einer Pull-down-Aktion von der CAM-Stufe 200 auf VCC. Somit verbleibt, falls die CAM-Zelle 202 programmiert ist und der Lese-Datenbus 206 sich im Ein-Zustand befindet, der Knotenpunkt 214 im High-Zustand oder auf VCC.
  • Falls eine Lese-Operation an einem vertikalen Array VERTm durchgeführt wird, dann befindet sich das Lese-Wähl-Signal RESELm im High-Zustand, und der Lese-Datenbus 206 befindet sich im Ein-Zustand. Eine gelöschte CAM-Zelle 202 verhält sich wie ein n-Kanal-Transistor und wird auf eine angelegte Gate-Spannung VG hin, bei der es sich gemäß einer Ausführungsform um die Versorgungsspannung VCC handelt, eingeschaltet und leitend. Die CAM-Zelle 202 zieht den Knotenpunkt 216 auf Massepotential. Typischerweise ist die CAM-Zelle 202 derart ausgebildet, dass sie stärker als der Pull-up-Transistor 210 ist, und somit wird, falls die CAM-Zelle 202 gelöscht wird und sich der Lese-Datenbus 204 im Ein-Zustand befindet, der Knotenpunkt 214 auf Massepotential gezogen.
  • Falls keine Lese-Operation an einem vertikale Array VERTm durchgeführt wird, befindet sich der Lese-Datenbus 206 im Aus-Zustand, und die CAM-Zelle 202 wird nicht geprüft. Ob die CAM-Zelle 202 programmiert oder gelöscht wird, hat keinen Einfluss auf den Wert des Signals CAMnR an dem Knotenpunkt 214.
  • Generell wird, falls eine Lese-Operation an einem vertikalen Array VERTm durchgeführt wird, durch die Signale CAM0R ... CAMnR die Position der Bitleitung bestimmt, an der eine Redundanz-Substitution vorgenommen werden soll, falls eine solche existiert und eine solche in den CAM-Stufen 200 CAM0/VERTm ... CAMn/VERTm programmiert wurde. Vorzugsweise werden eines oder mehrere der Signale CAM0R ... CAMnR mit der Lese-Adresse verglichen, um festzustellen, ob eine Lese-Entsprechung besteht. Falls eine Lese-Entsprechung für eine betriebsunfähige oder defekte Bitleitung besteht, wird eine Bitleitung aus dem redundanten Array für die betriebsunfähige Bitleitung ersatzweise eingesetzt. Dies bedeutet, dass die redundante Bitleitung anstelle der betriebsunfähigen Bitleitung verwendet wird, falls eine Entsprechung zwischen der Lese-Adresse und den CAM-Stufen 200 angezeigt wird, die dem primären Array zugeordnet sind, an dem die Lese-Operation andernfalls auftritt.
  • 4 zeigt ein Blockschaltbild eines Beispiels eines CAM-Stufen-Arrays 300 und der zugehörigen Ausgangsschaltung entsprechend dem Speicher gemäß 1 und des Beispiels des Kern-Zell-Arrays 102 gemäß 2. Die Redundanz-CAM-Schaltung 106 gemäß 1 enthält das Beispiel des CAM-Stufen-Arrays 300. Das CAM-Stufen-Array 300 enthält die folgenden CAM-Stufen 200, die dem vertikalen Array VERT0 zugeordnet sind: CAM0/VERT0 302A ... CAM7/VERT0 302H. Ähnliche CAM-Stufen 200 sind den anderen vertikalen Arrays VERT1-VERT3 zugeordnet.
  • Das CAM-Stufen-Array 300 enthält ferner Lese-p-Kanal-Pull-up-Niedrig-Schwellspannungs-Transistoren 370A-H und Schreib-p-Kanal-Pull-up-Niedrig-Schwellspannungs-Transistoren 380A-H.
  • Sämtliche der CAM-Stufen 200 der CAM-Stufen-Arrays 300, das dem vertikalen Array VERT0 zugeordnet ist, empfangen die Schreib- und Lese-Wähl-Signale WSEL0, RSEL0. Sämtliche der CAM-Stufen 200 der CAM-Stu fen-Arrays 300, die den anderen vertikalen Arrays zugeordnet sind, empfangen ähnliche Lese- und Schreib-Wähl-Signale.
  • Die CAM-Stufen CAM0/VERT0 302A-CAM0/VERT3 305A sind sämtlich mit dem Lese-Pull-up-Transistor 370A an einem gemeinsamen Ausgang verbunden, der ein Signal CAM0R aufweist, und sie sind sämtlich mit dem Schreib-Pull-up-Transistor 380A an einem ein Signal CAM0W aufweisenden gemeinsamen Ausgang verbunden.
  • Die CAM-Stufen an den anderen horizontalen Leitungen sind mit Lese-Pull-up-Transistoren an gemeinsamen Ausgängen CAM1R-CAM7R verbunden, und sie sind sämtlich an gemeinsamen Ausgängen CAM1W-CAM7W mit ähnlichen Schreib-pull-up-Transistoren an gemeinsamen Ausgängen CAM1W-CAM7W verbunden.
  • 5 zeigt ein Blockschaltbild eines Beispiels einer Gruppe 400 von CAM-Stufen 200, die einem vertikalen Array VERTm des Beispiels des Kern-Zell-Arrays 102 gemäß 2 zugeordnet sind. Das Beispiel der CAM-Stufen-Gruppe 400 enthält die folgenden CAM-Stufen 200: CAM0/VERTm 402A ... CAM7/VERTm 402H, die sämtlich einem vertikalen Array VERTm zugeordnet sind. Sämtliche der CAM-Stufen 200 der CAM-Stufen-Gruppe 400 empfangen ein Schreib-Wähl-Signal WSELm und ein Lese-Wäh-Signal RSELm entsprechend dem vertikalen Array VERTm.
  • Ferner wird bei einer Ausführungsform auf die Speicherzellen als Datenwörter zugegriffen, wobei ein Spaltenbereich von Speicherzellen ein unverwechselbares Datenwort speichert. Beispielsweise wird eine Lese-Operation durchgeführt, bei der zwei 16-Bit-Datenwörter auf einmal intern gelesen werden, während ein 16-Bit-Datenwort auf einmal aus der Ausgangsschaltung 112 von 1 heraus erzeugt wird. Auf diese Weise wird in einer Lese-Operation auf zwei Spaltenbereiche gleichzeitig zugegriffen. Eine Schreib-Operation hingegen wird mit einem einzigen 16-Bit-Datenwort auf einmal vorgenommen, und es wird auf einen einzigen Spaltenbereich auf einmal zugegriffen. Selbstverständlich handelt es sich bei diesen Datenwort-Längen nur um Beispiele, und es können je nach Eignung auch andere Wortlängen verwendet werden.
  • Gemäß einer Ausführungsform enthält eine horizontale Reihe in dem primären Array eines vertikalen Arrays VERTm p Spalten-Bereiche, die jeweils q Bitleitungen enthalten. Beispielsweise kann die Reihe p=16 Spalten-Bereiche enthalten, wobei jeder der 16 Spalten-Bereiche q=16 Bitleitungen enthält, und zwar bei insgesamt 256 Bitleitungen in einer horizontalen Reihe. Selbstverständlich sind diese Werte nur Beispiele und sollen die beschriebenen Ausführungsformen erläutern, jedoch nicht einschränken.
  • Das Beispiel der CAM-Stufen-Gruppe 400 mit acht CAM-Stufen 402A-402H spezifiziert die Position einer betriebsunfähigen Bitleitung mit einem Spalten-Bereich des primären Arrays des vertikalen Arrays VERTm. Eine redundante Bitleitung des redundanten Arrays wird für die betriebsunfähige Bitleitung ersatzweise eingesetzt, auf die andernfalls durch eine Schreib- oder Lese-Operation zugegriffen würde.
  • Die Position einer betriebsunfähigen Bitleitung BLi wird identifiziert, indem zuerst der Spalten-Bereich der p Spalten-Bereiche identifiziert wird, der die betriebsunfähige Bitleitung enthält. Als nächstes wird die Bitleitung der q Bitleitungen des Spalten-Bereichs identifiziert, die der betriebsunfähigen Bitleitung entspricht. Demgemäß speichert das Beispiel der CAM-Stufen-Gruppe 400 mit den acht CAM-Stufen 402A-402H zwei Informationen, um die Position der betriebsunfähigen Bitleitung BLi anzuzeigen.
  • Für eine Lese-Operation wird die h-Bit-(2h=p/2)Lese-Adresse, die den beiden Spalten-Bereichen entspricht, welche insgesamt 2q Bitleitungen aufweist, mit der h-Bit-(2h=p72)Adresse verglichen, die in einer Gruppe von h-Adress-CAM-Stufen gespeichert ist. Die beiden Spalten-Bereiche bei dieser Ausführungsform speichern zwei Datenwörter. Insbesondere spezifizieren die h-Adress-CAM-Stufen die h-Bit-(2h=p/2)Adresse der beiden Spalten-Bereiche, von denen einer die betriebsunfähige Bitleitung BLi enthält. Falls eine Entsprechung zwischen der h-Bit-Lese-Adresse und der h-Bit-Adresse besteht, die in den h-Adress-CAM-Stufen gespeichert ist, dann wird die Position der betriebsunfähigen Bitleitung BLi identifiziert durch j (2j=2q) I/O CAM-Stufen. Die Werte für h und j hängen generell von den Werten für p und q ab.
  • Beispielsweise werden gemäß einer Lese-Operation bei einer Ausführungsform zwei 16-Bit-Datenwörter auf einmal intern gelesen, während ein 16-Bit-Datenwort auf einmal aus der Ausgangsschaltung 112 von 1 heraus erzeugt wird. In dieser Weise wird auf zwei der p=16 Spalten-Bereiche, wobei jeder Spalten-Bereich q=16 Bitleitungen enthält, auf einmal zugegriffen. Gemäß 5 speichern h=3 (23=8) Adress-CAM-Stufen 402F, G, H die 3-Bit-Adresse der beiden Spalten-Bereiche, von denen einer die betriebsunfähige Bitleitung BLi enthält, und j=5 (25=32) I/O CAM-Stufen 402A-402E speichern die Position der betriebsunfähigen Bitleitung BLi der 32 Bitleitungen in den beiden Spalten-Bereichen. Wenn eine Lese-Operation durchgeführt wird, wird die Lese-Adresse mit den Lese-Adress-Signalen READADD0, READADD1 und READADD2 der CAM-Adress-Stufen CAM5/VERTm 402F, CAM6/VERTm 402G bzw. CAM7/VERTm 402H verglichen (wobei die Adress-Entsprechungs-Schaltung in 5 oder in 1 nicht gezeigt ist). Falls die Lese-Adresse und die Lese-Adress-CAM-Signale einander entsprechen, zeigen die I/O-CAM-Stufen 402A-402E an, welche Bitleitung der 32 Bitleitungen der zwei Spalten-Bereiche die betriebsunfähige Bitleitung BLi ist.
  • Die CAM-Stufen liefern zusammen die Information hinsichtlich der betriebsunfähigen Bitleitung in einem primären Array, das eine Substitution durch eine Bitleitung in einem redundanten Array erfordert. Beispielsweise sei im Zusammenhang mit 5 angenommen, dass das Ausgangssignal der CAM-Stufen 402A-402H jeweils 00010001 ist.
  • Falls eine Lese-Operation an den beiden Spalten-Bereichen vorgenommen werden soll, die zusammen eine Lese-Adresse 000 haben, dann werden diese drei Bits mit den folgenden Signalen verglichen:
    READADD2=CAM7R=0 von der (Adress-) CAM-Stufe 402H;
    READADD1=CAM6R=0 von der (Adress-) CAM-Stufe 402G; und
    READADD0=CAM5R=0 von der (Adress-) CAM-Stufe 402F.
  • Es besteht eine Lese-Adress-Übereinstimmung, so dass die Inhalte der I/O-CAM-Stufen geprüft werden, um die Position der betriebsunfähigen Bitleitung BLi innerhalb der beiden Spalten-Bereiche, die zusammen eine Adresse 000 haben, festzustellen, wie durch die folgenden Signale gezeigt ist:
    READI04=CAM4R=1 von der (I/O) CAM-Stufe 402E;
    READI03=CAM3R=0 von der (I/O) CAM-Stufe 402D;
    READI02=CAM2R=0 von der (I/O) CAM-Stufe 402C;
    READIO1=CAMIR=0 von der (I/O) CAM-Stufe 402B; und
    READIO0=CAM0R=1 von der (I/O) CAM-Stufe 402A.
  • Bei einer Ausführungsform sind sämtliche Komponenten von 1 auf einem einzigen IC-Chip enthalten. Anzumerken ist, dass die Adress- und Steuer-Eingangssignale für die als Beispiel gewählten Flash-Speicher-Chips von Speicherdichte- und Intertace-Implementierungen abhängig sind. Es wird ersichtlich sein, dass die offenbarten Ausführungsformen auch mit unterschiedlichen Speicherdichten und alternativen Intertace-Implementierungen mit den diesen zugehörigen alternativen Adress- und Steuereingangssignal-Konfigurationen arbeiten können.
  • Der für gleichzeitigen Betrieb ausgelegte Flash-Speicher kann in einem Burst-Modus betätigt werden. In einem Burst-Lese-Modus werden mehrere Daten-Bits auf einmal gelesen und erscheinen in einem oder mehreren Teilen an den Speicher-Ausgängen. Beispielsweise werden bei einer Ausführungsform 32 Daten-Bits auf einmal gelesen und erscheinen in zwei 16-Bit-Teilen an den Speicher-Ausgängen. Das Bursting tritt in sehr kurzen Intervallen von z.B. 20 ns auf. Dieses kurze Intervall belässt sehr wenig Zeit, um aus dem Redundanz-CAMS heraus festzustellen, ob ein Redundanz-Lesen erforderlich ist. Nach dieser Feststellung ist wiederum sehr wenig Zeit für das Identifizieren der Bitleitung, die betriebsunfähig oder defekt ist und eine Substitution durch ein redundantes Bit oder eine redundante Spalte erfordert. Wenn der Bestimmungsvorgang vorgenommen wird und zeigt, dass ein Redundanz-Lesevorgang erforderlich ist, und wenn diese Bitleitungs-Identifizierung vorgenommen wird, wird durch den Zugriff auf redundante Array und dessen Lesen und die Substitution defekter Bitleitungen vor der Burst-Ausgabe eine Verzögerung der Burst-Ausgabe verursacht und die Arbeit der Speichervorrichtung verlangsamt. Somit wären Verbesserungen im Erstellen der Reihenfolge von Ereignissen während der Redundanz-Operation nützlich, um Zeitsteuerungsvorteile bei einer Burst-Lese-Operation zu erzielen.
  • Verschiedene Ausdrücke und Phrasen haben in ihrer hier vorliegenden Verwendung die im Folgenden aufgeführten Bedeutungen. Der Ausdruck "Adresse" soll sich im weiten Sinn auf jede Positions-Identifizierung beziehen, die einer oder mehreren Speicherzellen oder deren Position unverwechselbar entspricht. Die Ausdrücke und Phrasen "low", "logisch low", "nicht angelegt", "nicht aktiv" und "inaktiv" sollen sich im weiten Sinn auf im logischen "low"-Zustand befindliche Werte eines Digitalsignals beziehen, die nach generellem Verständnis durch eine binäre Null (0) ausgedrückt werden. Die Ausdrücke und Phrasen "high", "logisch high", "angelegt" und "aktiv" sollen sich im weiten Sinn auf im logischen "high"-Zustand befindliche Werte eines Digitalsignals beziehen, die nach generellem Verständnis durch eine binäre Eins (1) ausgedrückt werden. Die Phrase, dass "A mit B verbunden" ist, ist in dem Sinn definiert, dass A direkt mit B verbunden ist, oder A durch eine oder mehrere Zwischenkomponenten indirekt mit B verbunden ist. Der Ausdruck "User" soll sich auf einen Prozessor oder eine andere Komponente oder Entität beziehen, die einen Zugriff auf den Speicher anstrebt. Der Ausdruck "Signal" bezieht sich im breiten Sinne auf ein Analog- oder Digitalsignal und umfasst beide Typen von Signalen.
  • Gemäß der hier vorliegenden Verwendung bezieht sich der Ausdruck "betriebsunfähig" oder "defekt" im weiten Sinn auf jede Bedingung oder jeden Zustand, die bzw. das ein ersatzweises Einsetzen eines oder mehrerer Speicherelemente für das betriebsunfähige Speicherelement verlangt. Das Speicherelement kann z.B. eine oder mehrere Speicherzellen oder Bitleitungen oder Interface-Schaltungen zu Speicherzellen enthalten. Insbesondere soll sich gemäß der hier vorliegenden Verwendung eine "betriebsunfähige oder defekte Speicherzelle" im weiten Sinn auf eine Speicherzelle mit oder ohne zugehörige Schaltung beziehen, wie z.B. eine Bitleitung, die mit der Speicherzelle verbunden ist, oder eine Bitleitung, welche die Speicherzelle enthält. Typischerweise erfordert ein Mangel an Funktionalität des Speicherelements, dass das Speicherelement ersetzt wird. Der Mangel an Funktionalität kann aufgrund einer Beschädigung oder eines Defekts in dem Speicherelement oder in einem Interface zu dem Speicherelement bestehen.
  • Die Schritte der hier aufgeführten Verfahren können in jeder Reihenfolge durchgeführt werden, die mit den erwähnten Vorgängen vereinbar ist.
  • Obwohl vorstehend und nachfolgend bestimmte Ausgestaltungen der vorliegenden Erfindung gezeigt und beschrieben sind, können Modifikationen vorgenommen werden. Beispielsweise können die Richtungen der einzelnen Transistoren, p-Kanal und n-Kanal, in geeigneten Anwendungsfällen umgekehrt werden. Anzumerken ist, dass die geeigneten Transistorgrößen, welche die Verhältnisse von Kanalbreite zu Kanallänge (gemessen in Mikrometer oder Mikron) für die Transistoren spezifizieren, die die gewünschte Schaltung bilden, in den Figuren weggelassen sind. Es ist ersichtlich, dass die geeigneten Verhältnisse je nach den Design-Erfordernissen und den Fähigkeiten und Limitationen des bestimmten IC-Schaltungs-Herstellungsvorgangs, der für die Implementierung der Schaltung gewählt wird, sowie je nach den Leistungserfordernissen der speziellen Ausgestaltung gewählt wer den können. Ferner können die hier beschriebenen erfinderischen Konzepte auch an anderen Schaltung als an Speichervorrichtungen angewandt werden.
  • OFFENBARUNG DER ERFINDUNG
  • Vor diesem Hintergrund werden eine Vorrichtung und ein Verfahren zum Durchführen eines redundanten Lesens in einer Flash-Speichervorrichtung bereitgestellt.
  • Ein erster Aspekt der Erfindung betrifft eine Vorrichtung zum Durchführen dieses redundanten Lesens. Die Vorrichtung enthält ein Array von Speicherzellen, bei denen es sich um reguläre Speicherzellen oder redundante Speicherzellen handeln kann. Die reguläre Speicherzellen ihrerseits sind defekt oder nicht defekt, und jede hat eine Speicheradresse und einen Eingangs-/Ausgangs-Bezeichner. Eine Defekt-Adresse ist die Speicheradresse einer defekten Speicherzelle.
  • Die Vorrichtung enthält ferner eine Dekodierschaltung, die als Reaktion auf den Eingangs-/Ausgangs-Bezeichner einer Speicherzelle ein defektes Dekodiersignal erzeugt, falls die Adresse dieser Zelle defekt ist. Diese Schaltung erzeugt ferner ein reguläres Dekodiersignal, falls die Adresse dieser Zelle nicht defekt ist, und dieses Signal entspricht dem Eingangs-/Ausgangs-Bezeichner dieser Zelle. Die Schaltung enthält ferner eine Multiplexer-Stufe, die als Reaktion auf eine reguläre Speicherzelle und auf das reguläre Dekodiersignal, das dem Eingangs-/Ausgangs-Bezeichner der regulären Speicherzelle entspricht, ein reguläres Signal ausgibt. Dieses reguläre Signal wird an den Multiplexer-Ausgang angelegt, der dem Eingangs-/Ausgangs-Bezeichner der regulären Speicherzelle entspricht. Die Schaltung gibt ferner als Reaktion auf eine redundante Speicherzelle und auf das defekte Dekodiersignal, das dem Eingangs-/Ausgangs-Bezeichner der defekten Speicherzelle entspricht, ein redundantes Signal aus. Dieses redundante Signal wird an den Multiplexer-Ausgang angelegt, der dem Eingangs-/Ausgangs-Bezeichner der defekten Speicherzelle entspricht.
  • Ferner kann die Schaltung zum Durchführen eines redundanten Lesens ein erstes Array aus einem oder mehreren CAMs, die zum Speichern der defekten Adresse konfiguriert sind, sowie ein zweites Array aus einem oder mehreren CAMs enthalten, die zum Speichern des Eingangs-/Ausgangs-Bezeichners der defekten Speicherzelle konfiguriert sind.
  • Die Vorrichtung kann ferner einen regulären Leseverstärker enthalten, der die reguläre Speicherzelle während eines ersten Zeitintervalls liest und während dieses Intervalls das reguläre Signal erzeugt. In diesem Fall enthält die Vorrichtung ferner den redundanten Leseverstärker, der die redundante Speicherzelle während eines zweiten Zeitintervalls liest und während dieses Intervalls das redundante Signal erzeugt.
  • Falls die Vorrichtung den regulären Leseverstärker enthält, funktioniert die Dekodierschaltung während eines vierten Zeitintervalls, das sich nicht wesentlich über das erste Intervall hinaus erstreckt.
  • Zusammen mit diesen Leseverstärkern kann die Vorrichtung ferner eine Adressvergleichsschaltung enthalten, welche die Adresse der Zelle des regulären Speichers mit der defekten Adresse vergleicht und während eines dritten Zeitintervalls ein defektes Adress-Vergleichssignal erzeugt, falls in dem Vergleich festgestellt wird, dass die Adresse defekt ist. Diese Schaltung erzeugt ferner während dieses dritten Intervalls ein nicht defektes Adress-Vergleichssignal, falls in dem Vergleich festgestellt wird, dass die Adresse nicht defekt ist. Das dritte Intervall erstreckt sich nicht wesentlich über das erste Intervall hinaus.
  • Falls die Vorrichtung die Adress-Vergleichsschaltung enthält, werden die Funktionen der Dekodierschaltung in Abhängigkeit davon, ob die Adres se der Speicherzelle defekt ist oder nicht, von der Adress-Vergleichsschaltung ausgeführt.
  • Ferner übermittelt in dem Fall, dass die Vorrichtung zwei Arten von Leseverstärkern enthält, der reguläre Leseverstärker die Daten von der regulären Speicherzelle an die Multiplexer-Stufe. Andererseits übermittelt der redundante Leseverstärker die Daten von dem redundanten Speicher an die Multiplexer-Stufe.
  • Es ist somit ein hochrangiger Vorteil, dass der redundante Leseverstärker während eines Zeitintervalls arbeitet, das generell mit dem Zeitintervall übereinstimmt, während dessen der reguläre Leseverstärker arbeitet. Als Ergebnis wird der Betrieb der Speichervorrichtung nicht aufgrund des Betriebs des redundanten Leseverstärkers verzögert.
  • Ein weiterer Vorteil besteht darin, dass die Adress-Vergleichsschaltung während eines Zeitintervalls arbeitet, das generell mit dem Zeitintervall übereinstimmt, während dessen der reguläre Leseverstärker arbeitet. Als Ergebnis wird der Betrieb der Speichervorrichtung nicht aufgrund des Betriebs der Adress-Vergleichsschaltung verzögert.
  • Ein weiterer Vorteil besteht darin, dass die Dekodierschaltung während eines Zeitintervalls arbeitet, das generell mit dem Zeitintervall übereinstimmt, während dessen der reguläre Leseverstärker arbeitet. Als Ergebnis wird der Betrieb der Speichervorrichtung nicht aufgrund des Betriebs der Dekodierschaltung verzögert.
  • Es ist ein weiterer Vorteil der vorliegenden Erfindung, dass als Ergebnis die Datenmenge, die von der X-Dekodierung beansprucht wird, und die damit zusammenhängende Schaltung reduziert werden.
  • Schließlich wird der Hauptzweck, die Arbeitsgeschwindigkeit der Speichervorrichtung zu verbessern, durch die vorliegende Erfindung gefördert.
  • Diese sowie weitere Aufgaben und Vorteile der Erfindung werden anhand der folgenden Figuren und der folgenden detaillierten Beschreibung bevorzugter Ausführungsformen deutlicher ersichtlich.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt ein Blockschaltbild eines Speichers gemäß einer derzeit bevorzugten Ausführungsform;
  • 2 zeigt ein Beispiel eines Kern-Zell-Arrays mit primären Arrays und redundanten Arrays entsprechend dem Speicher gemäß 1;
  • 3 zeigt ein Schaltbild eines Beispiels einer CAM-Stufe und der zugehörigen Ausgangsschaltung entsprechend dem Speicher gemäß 1;
  • 4 zeigt ein Blockschaltbild eines Beispiels eines CAM-Stufen-Arrays und der zugehörigen Ausgangsschaltung entsprechend dem Speicher gemäß 1 und des Beispiels des Kern-Zell-Arrays gemäß 2;
  • 5 zeigt ein Blockschaltbild eines Beispiels einer Gruppe von CAM-Stufen, die einem vertikalen Array des Beispiels des Kern-Zell-Arrays gemäß 2 zugehören; und
  • 6 zeigt ein Blockschaltbild einer Ausführungsform der Erfindung.
  • 7 zeigt ein Schaltbild der am meisten bevorzugten Ausführungsform der Multiplexer-Stufe der Erfindung.
  • ART(EN) DER AUSFÜHRUNG DER ERFINDUNG
  • Bei einer Ausführungsform der vorliegenden Erfindung, die in 6 gezeigt ist, lesen Leseverstärker 410 die Speicherzellen, d.h. reguläre Speicherzellen, in dem primären Array 412. Beispielsweise werden bei einer Burst-Lese-Ausführungsform 32 Daten-Bits auf einmal gelesen und erscheinen an den Speicher-Ausgängen 480 in zwei aufeinanderfolgenden 16-Bit-Teilen. Bei dieser Ausführungsform lesen 32 Leseverstärker 410 die regulären Speicherzellen. In ähnlicher Weise lesen Leseverstärker 420 die Speicherzellen, d.h. redundante Speicherzellen, in dem zugehörigen redundanten Array 422. Die Wahl des tatsächlichen Designs der Leseverstärker hängt ab von den Gesamtanforderungen an die Speicherschaltung und wird Fachleuten ersichtlich sein. Der Einfachheit halber und nicht notwendigerweise aufgrund eines inhärenten Unterschieds werden die Speicherzellen in dem primären Array 412 und dem redundanten Array 422 als reguläre Speicherzellen bzw. redundante Speicherzellen bezeichnet. Aus ähnlichen Gründen werden die Leseverstärker 410 als reguläre Leseverstärker bzw. redundante Leseverstärker 420 bezeichnet. Wie oben beschrieben wird während einer Lese-Operation auf zwei Spalten-Bereiche oder Wörter von Speicherzellen, die jeweils 16 Bits aufweisen, auf einmal zugegriffen, und somit ist der Bit-Leitungs-Bus 414 von dem regulären Leseverstärkungsblock 410 her 32 Bit breit, und es werden 32 reguläre Richtungsverstärker durch den Schaubild-Block 410 repräsentiert.
  • Bei der am meisten bevorzugten Ausführungsform existieren tatsächlich zwei redundante Arrays 422 für jedes primäre Array 412. Entsprechend den beiden redundanten Arrays sind zwei redundante Leseverstärker 420 vorgesehen. Ferner sind entsprechend den beiden redundanten Arrays zwei separate Arrays 432 von CAM-Stufen vorgesehen, von denen jedes die Adresse eines defekten Zwei-Wort-Segment speichert. Diese Verdopplung der Redundanz erlaubt das ersatzweise Einsetzen redundanter Speicherzellen für defekte Speicherzellen in zwei verschiedenen Zwei-Wort-Segmenten in dem primären Array 412, das jedes der beiden CAM-Arrays 432 eine verschiedene defekte Zwei-Wort-Adresse speichern kann. Bei der am meisten bevorzugten Ausführungsform erlaubt diese Verdoppelung eine Substitution an zwei verschiedenen Positionen in dem gleichen Zwei-Wort-Segment. Der zwei Bit breite Bus 424 führt die Ausgangssignale aus den beiden redundanten Leseverstärkern 420. Bei der vorliegenden Ausführungsform schließen die beiden redundanten Leseverstärker 420 separat die Lesevorgänge der beiden redundanten Speicherzellen im Wesentlichen nicht später ab als die Leseoperation durch den regulären Leseverstärker 410 abgeschlossen wird.
  • Wie oben beschrieben wird jedem primären Array 412 ein Array von CAM-Stufen 432 zugeordnet. Wie oben erwähnt und entsprechend der Verwendung bei der vorliegenden Ausführungsform wird auf dieses Array von CAM-Stufen 432 während eines Lesens aus diesem primären Array 412 zugegriffen, um festzustellen, ob ein aus dem primären Array gelesenes Zwei-Wort-Segment eine substituierte Speicherzelle benötigt oder nicht. Das Zugreifen auf dieses Array von CAM-Stufen 432 ist in dem Block 440 von 6 gezeigt. Diese CAM-Stufen 432 enthalten zwei Formen von Information. Erstens enthalten sie die Adresse eines Zwei-Wort-Segments. Das Zwei-Wort-Segment, dessen Adresse in den CAM-Stufen 432 enthalten ist, ist defekt, d.h. es enthält ein defektes Bit. Zweitens speichert die CAM-Stufe 432 die Position der defekten Speicherzelle oder Bitleitung innerhalb dieses Zwei-Wort-Segments.
  • Die Terminologie für diese Position kann bei einem Burst-Lesespeicher eine spezielle Form annehmen. Da 16 Bits (d.h. ein Wort eines Zwei-Wort-Segments) auf einmal an den mehreren Eingangs-/Ausgangs-Verbindungen 480 des Speichers angelegt werden, wird die Bit-Position innerhalb dieser 16 Bits hier als "Eingangs-/Ausgangs-Bezeichner" bezeichnet und liegt im Bereich von 0 bis 15.
  • Nach dem Zugreifen wird als nächstes die erste Form von Information in dem CAM-Array 432 verarbeitet, bei der es sich um die Adresse eines defekten Zwei-Wort-Segments handelt. Die Adresse des defekten Zwei-Wort-Segments wird verglichen mit oder in Entsprechung gesetzt zu der Adresse des Zwei-Wort-Segments in der momentan gelesenen primären Array 412. Der Vergleich wird im Wesentlichen nicht später abgeschlossen als das Ende des Lesens der regulären Speicherzellen durch die regulären Leseverstärker 410. Bei der bevorzugten Ausführungsform ist die Adresse des Zwei-Wort-Segments durch drei Bits repräsentiert, wie bereits im Zusammenhang mit 5 erläutert wurde. Eine Schaltung zum Durchführen von Vergleichen ist Fachleuten auf dem Gebiet bekannt und ist in 6 durch den Block 450 angedeutet.
  • Falls die beiden Adressen identisch sind oder einander entsprechen, wird die zweite Form von Information in dem CAM-Array 432 verarbeitet, bei der es sich um die Position der defekten Speicherzelle oder Bitleitung innerhalb des Zwei-Wort-Segments handelt.
  • Wie oben im Zusammenhang mit 5 beschrieben, ist die Position innerhalb des defekten Zwei-Wort-Segments der defekten Speicherzelle oder Bitleitung in fünf Bits eines oder zweier CAM-Arrays 432 enthalten. Diese fünf Bits werden dekodiert, um eines der 32 Bits von Speicherzellen oder Bitleitungen zu wählen, die eine Substitution durch eine Speicherzelle von einem redundanten Array erfordert. Bei der am meisten bevorzugten Ausführungsform ist dieses Dekodieren 460 ein zweistufiger Vorgang. Die erste Stufe ist eine Vordekodierungsstufe. Beispielsweise werden, falls die fünf Bits des CAM-Arrays, welche die erste Bit-Position beschreiben, als A0-A4 beschrieben werden, die Bit-Gruppierungen (A0, A1), (A2, A3) und A4 gebildet. Sämtliche Kombinationen, einschließlich der Komplemente, von (A0, A1) und (A2, A3) werden in acht Kombinationen resultierend angeordnet. Diese Kombinationen werden dann als Eingangssignale an einfache Gates angelegt, um ein Vordekodierungs-Ausgangssignal zu erzeugen. In der zweiten Stufe des Dekodierens werden diese Vordekodierungs-Ausgangssignale dann miteinander und mit A4 und A4 gegattert, um 32 Ausgangssignale zu erzeugen, welche die Mini-Terme der fünf Bits A0-A4 repräsentieren. Die vorstehend zusammengefassten Vorgänge der Gruppenbildung, der Kombinations-Anordnung und -Anwendung und der Ausgangssignal-Gatterungen sind Durchschnittsfachleuten auf dem Gebiet gut bekannt. Der Dekodierungsvorgang wird nicht wesentlich später abgeschlossen als das Lesen durch die regelmäßigen Lesevertärker 410.
  • Die 32 Ausgangssignale 470, die aus einem der zwei CAM-Arrays 432 resultieren, werden als rp0ln für die ersten 16 Ausgangssignale und als rp0hn für die zweiten 16 Ausgangssignale bezeichnet. Das Signal rp0ln bestimmt die defekte Position in dem ersten oder tieferen Wort des Zwei-Wort-Segments, während rp0hn die defekte Position in dem zweiten oder höheren Wort des Zwei-Wort-Segments bestimmt. Das Suffix n am Ende jedes dieser beiden Signale bezeichnet jedes der 32 Ausgangssignale des Dekodierers 460 (bei Annahme von 16 Suffixen jeweils für rp0I und rp0h) und gibt an, mit welcher der 16 Multiplexerschaltungen das Signal verbunden wird, wie noch erläutert wird. Die aus dem anderen der beiden CAM-Arrays resultierenden 32 Ausgangssignale werden als rp1ln für die ersten 16 und als rp1hn für die zweiten 16 bezeichnet.
  • Bei der am meisten bevorzugten Ausführungsform wählt die Dekodierschaltung keines der Bits als defekt und zur Substitution anstehend, falls in dem Wort-Adress-Vergleich 450 festgestellt wird, dass auf der Basis beider der zwei redundanten CAM-Array 432 das Zwei-Wort-Segment nicht defekt ist. Dieses Null-Ergebnis des Wählvorgangs resultiert aus der Verwendung eines Nicht-Entsprechungs-Ergebnisses aus der Vergleichsschaltung 450 als Deaktivierungssignal in der Dekodierstufe 460.
  • Obwohl die Dekodierfunktion 460 als zwei Stufen aufweisend beschrieben worden ist, wobei die erste eine Dekodierstufe ist, sind auch an dere Ausgestaltungen möglich, wie Fachleuten auf dem Gebiet ersichtlich sein wird.
  • An diesem Punkt hat die Schaltung 34 Datenbits von den 34 Leseverstärkern 410, 420 übernommen. 32 Bits dieser 34 bilden schließlich das Schaltungs-Ausgangssignal für das Zwei-Wort-Segment. Eine 32-Bit-Ausgangs-Multiplexerstufe 470 wählt die korrekten 32 aus den 34 und gibt 16 dieser 32 zu einem Zeitpunkt 480 aus.
  • 7 zeigt einen Teil 500 der Schaltung der Multiplexer-Stufe 490, der praktischerweise auch als Multiplexerschaltung 50 bezeichnet werden kann. In der Multiplexer-Stufe 490 existieren 16 identische Multiplexerschaltungen 500, die in 7 durch n = 0, 1, ... 15 repräsentiert sind. Der untere (Signale mit "h" markiert) Teil 510 der Multiplexerschaltung (oder die "untere Multiplexer-Teilschaltung") arbeitet in identischer Weise wie der obere (Signale mit "I" markiert) Teil 520, wie Fachleuten auf dem Gebiet ersichtlich sein wird. Deshalb werden nur die Einzelheiten des Betriebs des oberen Teils 520 beschrieben. Die Gesamtheit der 16 identischen Multiplexerschaltungen 500 wird einfach als Multiplexerschaltung 490 mit einem 16-Bit-Busausgang DSIn bezeichnet.
  • Daten von einem der zwei Wortsegmente, d.h. dem ersten, werden an der Gruppe der 16 oberen Multiplexer-Teilschaltungen 520 an den Eingang DSILn (n = 0, ..., 15) angelegt. Wie oben beschrieben ist der Ausgang des Dekodierers 460 deaktiviert und führt keine Wahl hinsichtlich eines defekten Zustands durch, es sei denn, dass das Zwei-Segment-Wort defekt ist, wie durch eines der beiden redundanten CAM-Arrays 432 bestimmt wird. Falls sich sowohl rp0ln als auch rplln auf 0 oder im Low-Zustand befinden, dann befindet sich norpln ("keine Redundanz" = "nor"), das aus dem NOR-Gate 530 resultiert, auf 1 oder im High-Zustand, und sein Komplement norplbn ist low; somit wird das Regulär-Array-Bit DSILn von dem CMOS-Übertragungs-Gate 540 durchgelassen und dann vorübergehend in dem Latch-Speicher 550 gespeichert.
  • Falls rp0ln sich auf 1 oder im High-Zustand befindet, lässt das CMOS-Übertragungs-Gate 542 das Signal REDSI(0) durch, wobei das Signal aus dem redundanten Lesespeicher 420 eine der redundanten Speicherzellen liest. Falls rplln sich auf 1 oder im High-Zustand befindet, lässt das CMOS-Übertragungs-Gate 544 das Signal REDSI(1) durch, wobei das Signal aus dem redundanten Lesespeicher 420 die andere der redundanten Speicherzellen liest.
  • DSILn, REDSI(0) oder REDSI(1), je nach dem betreffenden Fall wird dann an das von DTLDB (auf low aktiviert) gesteuerte Übertragungs-Gate 560 weitergeleitet, falls die (nicht gezeigte) Logik diktiert, dass die Gesamtschaltung einen Lesevorgang durchführt. (Die in den oberen beiden Transistoren des Übertragungs-Gates 560 gezeigten Dreieckformen verweisen auf einen p-Typ-MOSFET). Wiederum läuft das Signal nach der Speicherung in einem Latch-Speicher 570 durch das von RA(0) gesteuerte Übertragungs-Gate 580, das denn Durchtritt erlaubt, wenn es low ist, d.h. RA(0) wird von der Steuervorrichtung in Abhängigkeit davon als low oder high bestimmt, ob der "L"-Teil oder erste Teil (DSILn, das Signal in dem obigen Beispiel) oder der "H"-Teil oder zweite Teil ("DSLHn") des Zwei-Segment-Worts an den Multiplexer-Stufen-Ausgang DSIn angelegt würde, falls er nicht defekt wäre.
  • In der vorstehenden detaillierten Beschreibung wurden nur einige wenige der zahlreichen Formen erläutert, in denen die Erfindung realisiert sein kann. Somit ist die vorstehende detaillierte Beschreibung nur im Sinne einer Veranschaulichung und nicht einer Beschränkung zu betrachten, und der Schutzumfang dieser Erfindung ist nur durch die folgenden Ansprüche einschließlich sämtlicher Äquivalente zu definieren. Somit ist vorgesehen, dass die angefügten Ansprüche auch sämtliche derartigen Änderungen und Modifikationen umfassen, die unter den in den Ansprüchen definierten Schutzumfang der Erfindung fallen.

Claims (9)

  1. Leseredundanzvorrichtung in einer Flash-Speichervorrichtung, mit: einem Array von Speicherzellen, wobei die Speicherzellen reguläre Speicherzellen (412) und redundante Speicherzellen (422) aufweisen; wobei die regulären Speicherzellen (412) eine defekte Speicherzelle und eine nichtdefekte Speicherzelle aufweisen, und wobei jede reguläre Speicherzelle (412) einen Bezeichner, der anzeigt, ob die Speicherzelle defekt oder nichtdefekt ist, und eine Speicheradresse hat; einer ersten regulären Speicherzelle, die eine der regulären Speicherzellen (412) aufweist; einer ersten Adresse, welche die Speicheradresse der ersten regulären Speicherzelle aufweist; einer ersten defekten Speicherzelle, die eine der defekten Speicherzellen aufweist; eine Defekt-Adresse, welche die Speicheradresse der ersten defekten Speicherzelle aufweist; einer Dekodierschaltung (460), die konfiguriert ist zum Erzeugen eines Defekt-Dekodiersignals als Reaktion auf den Bezeichner der ersten defekten Speicherzelle, falls die Schaltung (460) feststellt, dass die erste Adresse die Defekt-Adresse ist, wobei das Defekt-Dekodiersignal dem Bezeichner entspricht; wobei die Dekodierschaltung (460) ferner konfiguriert ist zum Erzeugen einer Regulär-Dekodiersignals, falls die Schaltung (460) feststellt, dass die erste Adresse keine Defekt-Adresse ist, wobei das Regulär-Dekodiersignal dem Bezeichner der ersten regulären Speicherzelle entspricht; einer Multiplexerstufe (490) mit Multiplex-Ausgängen, wobei die Multiplexerstufe (490) konfiguriert ist zum Wählen und Anlegen eines Regulär-Ausgangssignals an einem ersten Multiplex-Ausgang als Reaktion auf die erste reguläre Speicherzelle und als Reaktion auf das Regulär-Dekodiersignal, das dem Bezeichner der ersten regulären Speicherzelle entspricht, wobei der erste Multiplex-Ausgang der dem Bezeichner der ersten regulären Speicherzelle entsprechende Multiplex-Ausgang ist; wobei die Multiplexerstufe (490) ferner konfiguriert ist zum Wählen und Anlegen eines Redundanz-Ausgangssignals an einem zweiten Multiplex-Ausgang als Reaktion auf die redundante Speicherzelle (422) und als Reaktion auf das Defekt-Dekodiersignal, das dem Bezeichner der ersten defekten Speicherzelle entspricht, wobei der zweite Multiplex-Ausgang der dem Bezeichner der ersten defekten Speicherzelle entsprechende Multiplex-Ausgang ist.
  2. Flash-Speichervorrichtung nach Anspruch 1, wobei die Flash-Speichervorrichtung ferner aufweist: einen Regulär-Leseverstärker (410), der zum Lesen der ersten regulären Speicherzelle konfiguriert ist; eine Zugriffs-Regulär-Erst-Speicherzelle, welche die von dem Regulär-Leseverstärker (410) gelesene erste reguläre Speicherzelle aufweist; eine Zugriffsadresse, welche die Speicheradresse der dem Zugriff unterzogenen ersten regulären Speicherzelle aufweist; und einen Redundanz-Leseverstärker (420).
  3. Flash-Speichervorrichtung nach Anspruch 2, bei der: der Regulär-Leseverstärker (410) ferner konfiguriert ist zum Lesen der ersten regulären Speicherzelle der dem Zugriff unterzogenen ersten regulären Speicherzelle während eines ersten Zeitintervalls und zum Erzeugen eines Regulär-Signals während des ersten Intervalls; der Redundanz-Leseverstärker (420) konfiguriert ist zum Lesen der redundanten Speicherzelle (422) während eines zweiten Zeitintervalls und zum Erzeugen eines Redundanz-Signals während des zweiten Intervalls, wobei das zweite Intervall nicht über das erste Intervall hinausgeht.
  4. Flash-Speichervorrichtung nach Anspruch 3, wobei die Flash-Speichervorrichtung ferner aufweist: eine Adress-Vergleichsschaltung (450), die konfiguriert ist zum Vergleichen der dem Zugriff unterzogenen Adresse mit der Defekt-Adresse, wobei die Schaltung ferner konfiguriert ist zum Erzeugen eines Defekt-Adress-Vergleichssignals während eines dritten Intervalls, falls durch den Vergleich festgestellt wird, dass die dem Zugriff unterzogene Adresse die Defekt-Adresse ist; und wobei die Adress-Vergleichsschaltung (450) ferner konfiguriert ist zum Erzeugen eines Nichtdefekt-Adress-Vergleichssignals während des dritten Intervalls, falls durch den Vergleich festgestellt wird, dass die dem Zugriff unterzogene Adresse keine Defekt-Adresse ist, wobei das dritte Intervall nicht über das erste Intervall hinausgeht.
  5. Flash-Speichervorrichtung nach Anspruch 4, bei der: die Dekodierschaltung (460) ferner derart konfiguriert ist, dass sie auf das von der Adress-Vergleichsschaltung (450) erzeugte Defekt-Adress-Vergleichssignal hin feststellt, dass die erste Adresse die Defekt-Adresse ist, wobei die Dekodierschaltung (460) konfiguriert ist zum Durchführen einer derartigen Feststellung während eines vierten Zeitintervalls, wobei das vierte Intervall nicht über das erste Intervall hinausgeht; und die Dekodierschaltung (460) ferner derart konfiguriert ist, dass sie auf das von der Adress-Vergleichsschaltung (450) erzeugte Nichtdefekt-Adress-Vergleichssignal hin feststellt, dass die erste Adresse keine Defekt-Adresse ist, wobei die Dekodierschaltung (460) konfiguriert ist zum Durchführen einer derartigen Feststellung während des vierten Zeitintervalls.
  6. Flash-Speichervorrichtung nach Anspruch 5, wobei die Flash-Speichervorrichtung ferner aufweist: ein erstes Array (432) eines oder mehrerer CAMs, wobei das erste Array (432) zum Speichern der Defekt-Adresse konfiguriert ist; und ein zweites Array (432) eines oder mehrerer CAMs, wobei das zweite Array (432) zum Speichern des Bezeichners der defekten Speicherzelle konfiguriert ist.
  7. Leseredundanzvorrichtung in einer Flash-Speichervorrichtung nach Anspruch 1, bei der: ein gespeichertes Wort mehrere reguläre Speicherzellen aufweist, wobei jede reguläre Speicherzelle in einem gespeicherten Wort mit einem Bezeichner versehen ist, wobei jedes gespeicherte Wort eine Speicheradresse hat; wobei: ein defektes Wort ein gespeichertes Wort mit einer defekten Speicherzelle aufweist, und ein nichtdefektes Wort ein gespeichertes Wort ohne defekten Speicherzelle aufweist, wobei eine Defekt-Adresse die Speicheradresse des defekten Worts aufweist.
  8. Verfahren zum Redundanz-Lesen in einer Flash-Speichervorrichtung, wobei die Vorrichtung aufweist: ein Array von Speicherzellen, wobei die Speicherzellen reguläre Speicherzellen (412) und redundante Speicherzellen (422) aufweisen; wobei die regulären Speicherzellen (412) eine defekte Speicherzelle und eine nichtdefekte Speicherzelle aufweisen; ein gespeichertes Wort, das mehrere reguläre Speicherzellen (412) aufweist, wobei jede reguläre Speicherzelle (412) in einem gespeicherten Wort einen Bezeichner hat, der angibt, ob die Speicherzelle defekt oder nichtdefekt ist; eine Speicheradresse des gespeicherten Worts; ein defektes Wort, das ein gespeichertes Wort mit einer defekten Speicherzelle aufweist; ein nichtdefektes Wort, das ein gespeichertes Wort ohne defekte Speicherzelle aufweist; eine Defekt-Adresse, welche die Speicheradresse des defekten Worts aufweist; wobei das Verfahren folgende Vorgänge aufweist: Lesen der regulären Speicherzelle (412) des dem Zugriff unterzogenen Worts während eines ersten Zeitintervalls; Erzeugen eines Regulär-Signals während des ersten Intervalls als Reaktion auf das Lesen; Lesen der redundanten Speicherzelle (412) während eines zweiten Zeitintervalls; Erzeugen eines Redundanz-Signals während des zweiten Intervalls als Reaktion auf das Lesen, wobei das zweite Intervall nicht über das erste Intervall hinausgeht; Vergleichen der dem Zugriff unterzogenen Adresse mit der Defekt-Adresse während eines dritten Zeitintervalls, wobei das dritte Intervall nicht über das erste Intervall hinausgeht; Erzeugen eines Defekt-Adress-Vergleichssignals während des dritten Zeitintervalls, falls durch den Vergleich festgestellt wird, dass die dem Zugriff unterzogene Adresse die Defekt-Adresse ist; Erzeugen eines Nichtdefekt-Adress-Vergleichssignals während des dritten Intervalls, falls durch den Vergleich festgestellt wird, dass die dem Zugriff unterzogene Adresse keine Defekt-Adresse ist; Erzeugen eines Defektdekodiersignals während eines vierten Zeitintervalls als Reaktion auf den Bezeichner der defekten Speicherzelle des defekten Worts mit der dem Zugriff unterzogenen Adresse und als Reaktion auf das Defekt-Adress-Vergleichssignal, wobei das Defektdekodiersignal dem Bezeichner entspricht, wobei das vierte Intervall nicht über das erste Intervall hinausgeht; Erzeugen separater Regulär-Dekodiersignale während des vierten Intervalls als Reaktion auf das Nichtdefekt-Adress-Vergleichssignal, wobei die separaten Regulär-Dekodiersignale den separaten Bezeichnern der separaten nichtdefekten Speicherzellen des nichtdefekten Worts mit der dem Zugriff unterzogenen Adresse entspricht; Wählen und Anlegen eines Regulär-Ausgangssignals an einen ersten Multiplex-Ausgang auf das Regulär-Signal hin und auf das Regulär-Dekodiersignal hin, das dem Bezeichner der separaten nichtdefekten Speicherzelle des nichtdefekten Worts entspricht, wobei der erste Multiplex-Ausgang der Multiplex-Ausgang ist, der dem Bezeichner der separaten nichtdefekten Speicherzelle entspricht; und Wählen und Anlegen eines Redundanz-Ausgangssignals an einen zweiten Multiplex-Ausgang auf das Redundanz-Signal hin und auf das Defekt-Dekodiersignal hin, das dem Bezeichner der defekten Speicherzelle entspricht, wobei der zweite Multiplex-Ausgang der Multiplex-Ausgang ist, der dem Bezeichner der defekten Speicherzelle entspricht.
  9. Verfahren zum Redundanz-Lesen in einer Flash-Speichervorrichtung nach Anspruch 8, wobei die Vorrichtung ferner aufweist: einen Regulär-Leseverstärker (410), der zum Lesen der regulären ersten Speicherzellen (412) des gespeicherten Worts konfiguriert ist; ein dem Zugriff unterzogenes Wort, welches das gespeicherte Wort mit den vom Regulär-Leseverstärker (410) gelesenen regulären Speicherzellen (412) aufweist; eine dem Zugriff unterzogene Adresse, welche die Speicheradresse des dem Zugriff unterzogenen Worts aufweist; einen Redundanz-Leseverstärker (420); ein erstes Array (432) eines oder mehrerer CAMs, wobei das erste Array zum Speichern der Defekt-Adresse konfiguriert ist; und ein zweites Array (432) eines oder mehrerer CAMs, wobei das zweite Array zum Speichern des Bezeichners der defekten Speicherzelle konfiguriert ist; wobei: der Vorgang des Lesens der regulären Speicherzelle (412) des dem Zugriff unterzogenen Worts während eines ersten Zeitintervalls von dem Regulär-Leseverstärker (410) durchgeführt wird; und der Vorgang des Lesens der redundanten Speicherzelle (422) während eines zweiten Zeitintervalls von dem Redundanz-Leseverstärker (420) durchgeführt wird.
DE60126800T 2000-07-25 2001-07-17 Burstread mit ausgangbasierter redundanz Expired - Lifetime DE60126800T2 (de)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US724669 1991-07-02
US22069000P 2000-07-25 2000-07-25
US220690P 2000-07-25
US09/724,669 US6307787B1 (en) 2000-07-25 2000-11-28 Burst read incorporating output based redundancy
PCT/US2001/022646 WO2002017078A2 (en) 2000-07-25 2001-07-17 Burst read incorporating output based redundancy

Publications (2)

Publication Number Publication Date
DE60126800D1 DE60126800D1 (de) 2007-04-05
DE60126800T2 true DE60126800T2 (de) 2007-11-29

Family

ID=26915092

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60126800T Expired - Lifetime DE60126800T2 (de) 2000-07-25 2001-07-17 Burstread mit ausgangbasierter redundanz

Country Status (11)

Country Link
US (1) US6307787B1 (de)
EP (1) EP1327193B1 (de)
JP (2) JP5406420B2 (de)
KR (1) KR100822486B1 (de)
CN (1) CN1275159C (de)
AT (1) ATE354828T1 (de)
AU (1) AU2001275976A1 (de)
BR (1) BR0112740A (de)
DE (1) DE60126800T2 (de)
TW (1) TW533411B (de)
WO (1) WO2002017078A2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230107306A1 (en) * 2021-10-04 2023-04-06 Advanced Micro Devices, Inc. Design techniques to create power connections from floating nets in standard cells

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6396749B2 (en) * 2000-05-31 2002-05-28 Advanced Micro Devices, Inc. Dual-ported CAMs for a simultaneous operation flash memory
US6498506B1 (en) 2000-07-26 2002-12-24 Gore Enterprise Holdings, Inc. Spring probe assemblies
US6751755B1 (en) * 2000-09-13 2004-06-15 Cypress Semiconductor Corporation Content addressable memory having redundancy capabilities
JP4259922B2 (ja) * 2002-07-30 2009-04-30 シャープ株式会社 半導体記憶装置
JP4469649B2 (ja) 2003-09-17 2010-05-26 株式会社ルネサステクノロジ 半導体フラッシュメモリ
KR100624287B1 (ko) * 2004-05-11 2006-09-18 에스티마이크로일렉트로닉스 엔.브이. 낸드 플래시 메모리 소자의 리던던시 회로
US7193895B2 (en) * 2005-06-24 2007-03-20 Chingis Technology Corporation Redundant memory content substitution apparatus and method
US7301832B2 (en) * 2005-11-03 2007-11-27 Atmel Corporation Compact column redundancy CAM architecture for concurrent read and write operations in multi-segment memory arrays
US11119857B2 (en) * 2012-09-18 2021-09-14 Mosys, Inc. Substitute redundant memory
KR20120105155A (ko) * 2011-03-15 2012-09-25 에스케이하이닉스 주식회사 반도체 메모리 장치 및 이의 동작 방법
CN110176264B (zh) * 2019-04-26 2021-05-07 安徽大学 一种基于内存内计算的高低位合并电路结构

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0380500A (ja) * 1989-08-24 1991-04-05 Sharp Corp 半導体記憶装置
JPH05166396A (ja) * 1991-12-12 1993-07-02 Mitsubishi Electric Corp 半導体メモリ装置
US5471426A (en) * 1992-01-31 1995-11-28 Sgs-Thomson Microelectronics, Inc. Redundancy decoder
US5347484A (en) * 1992-06-19 1994-09-13 Intel Corporation Nonvolatile memory with blocked redundant columns and corresponding content addressable memory sets
US5438546A (en) * 1994-06-02 1995-08-01 Intel Corporation Programmable redundancy scheme suitable for single-bit state and multibit state nonvolatile memories
US5502676A (en) * 1995-04-24 1996-03-26 Motorola, Inc. Integrated circuit memory with column redundancy having shared read global data lines
US5574688A (en) * 1995-05-10 1996-11-12 Sgs-Thomson Microelectronics, Inc. Apparatus and method for mapping a redundant memory column to a defective memory column
KR100192574B1 (ko) * 1995-10-04 1999-06-15 윤종용 디코디드 퓨즈를 사용한 반도체 메모리 장치의 컬럼 리던던시 회로
JPH09204790A (ja) * 1996-01-24 1997-08-05 Hitachi Ltd 半導体記憶装置
US5774396A (en) * 1996-03-29 1998-06-30 Aplus Integrated Circuits, Inc. Flash memory with row redundancy
DE69626792T2 (de) * 1996-05-09 2004-03-25 Stmicroelectronics S.R.L., Agrate Brianza Elektrische löschbare und programmierbare nichtflüchtige Speicheranordnung mit prüfbaren Redundanzschaltungen
JP3039400B2 (ja) 1996-11-21 2000-05-08 日本電気株式会社 不揮発性半導体記憶装置及び不揮発性半導体記憶装置におけるブロック消去のテスト方法
JPH10172294A (ja) * 1996-12-10 1998-06-26 Toshiba Corp 半導体記憶装置
JP2001052495A (ja) * 1999-06-03 2001-02-23 Toshiba Corp 半導体メモリ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230107306A1 (en) * 2021-10-04 2023-04-06 Advanced Micro Devices, Inc. Design techniques to create power connections from floating nets in standard cells
US11848269B2 (en) * 2021-10-04 2023-12-19 Advanced Micro Devices, Inc. Techniques to create power connections from floating nets in standard cells

Also Published As

Publication number Publication date
JP2012155846A (ja) 2012-08-16
CN1444743A (zh) 2003-09-24
ATE354828T1 (de) 2007-03-15
AU2001275976A1 (en) 2002-03-04
WO2002017078A3 (en) 2002-08-01
BR0112740A (pt) 2003-07-01
CN1275159C (zh) 2006-09-13
KR20030020410A (ko) 2003-03-08
WO2002017078A2 (en) 2002-02-28
KR100822486B1 (ko) 2008-04-16
JP5937888B2 (ja) 2016-06-22
DE60126800D1 (de) 2007-04-05
US6307787B1 (en) 2001-10-23
EP1327193A2 (de) 2003-07-16
JP2004507857A (ja) 2004-03-11
EP1327193B1 (de) 2007-02-21
JP5406420B2 (ja) 2014-02-05
TW533411B (en) 2003-05-21

Similar Documents

Publication Publication Date Title
DE4207934C2 (de) Nichtflüchtige Halbleiterspeichervorrichtung und Programmierverfahren für eine nichtflüchtige Halbleiterspeichervorrichtung
DE19880311B3 (de) Nichtflüchtige Speicherstruktur
DE60127651T2 (de) Bitleitungs-Vorladungs- und -Entladungsschaltung zum Programmieren eines nichtflüchtigen Speichers
DE4035660C2 (de) Elektrisch programmierbare Speichereinrichtung und Verfahren zum Zugreifen/Programmieren von Speicherzellen
DE4000787C2 (de) Elektrisch loesch- und programmierbare halbleiterspeichervorrichtung
DE602004010239T2 (de) Verbesserter Seitenspeicher für eine programmierbare Speichervorrichtung
DE19983565B4 (de) Interner Auffrisch-Modus für eine Flash-Speicherzellenmatrix
DE69626792T2 (de) Elektrische löschbare und programmierbare nichtflüchtige Speicheranordnung mit prüfbaren Redundanzschaltungen
DE3534356C2 (de) Halbleiter-Speichervorrichtung
DE10225398A1 (de) Halbleiterspeichervorrichtung mit Speicherzellenarrays, die zum Durchführen eines wahlfreien Zugriffs in der Lage ist
DE60102466T2 (de) Zwei-tor cam speicher für simultanen flash speicher betrieb
DE60126800T2 (de) Burstread mit ausgangbasierter redundanz
DE112010000955T5 (de) NAND-Flasharchitektur mit mehrstufiger Zeilendecodierung
DE102007046006A1 (de) Niederspannungs-Niederkapazitäts-Flashspeicherfeld
DE4213574C2 (de) Halbleiterspeichereinrichtung und Betriebsverfahren dafür
DE112004003023B4 (de) Halbleiterbauelement und Verfahren zum Steuern des Halbleiterbauelements
DE60003451T2 (de) Wortleitungssignale einer flashspeicher bleiben überall auf dem chip verlustfrei
DE69630228T2 (de) Flash-speichersystem mit reduzierten störungen und verfahren dazu
DE69821039T2 (de) Halbleiterspeicheranordnung mit der Fähigkeit, genaue und gemeinsame Löschprüfung von allen Speicherzellen auszuführen
DE60215291T2 (de) Halbleiter Speicheranordnung
EP0224887A1 (de) Gate Array Anordnung in CMOS-Technik
DE19911101C2 (de) Nicht-flüchtige Halbleiterspeichervorrichtung
DE69627595T2 (de) Halbleiterspeicher und Verfahren zum Ersetzen einer redundanten Speicherzelle
EP0283906A1 (de) Verfahren und Schaltungsanordnung zum Prüfen eines Halbleiterspeichers
DE60037504T2 (de) Referenzzellenmatrixanordnung zum Datenlesen in einer nichtflüchtigen Speicheranordnung

Legal Events

Date Code Title Description
8327 Change in the person/name/address of the patent owner

Owner name: ADVANCED MICRO DEVICES, INC., SUNNYVALE, CALIF, US

Owner name: SPANSION LLC, SUNNYVALE, CALIF., US

8364 No opposition during term of opposition