-
Die
Erfindung betrifft eine Halbleiterspeicheranordnung mit einer Vielzahl
von Speicherzellen und ein Verfahren zum Betreiben einer Halbleiterspeicheranordnung,
um deren Speicherzellen zum Rückspeichern
vorzubereiten.
-
Tragbare
Geräte,
wie Digitalkameras oder Musikwiedergabegeräte, umfassen nichtflüchtige Speichereinheiten.
Diese tragbaren Geräte
sind in den letzten Jahren kleiner geworden, ebenso wie die Speichereinheiten.
Es ist anzunehmen, dass die Miniaturisierung von tragbaren Geräten fortschreiten wird.
Um den Bedarf nach verbesserter Leistungsfähigkeit zu erfüllen, kann
die Datenmenge, die in der nichtflüchtigen Speichereinheit gespeichert
wird, vergrößert werden.
Somit können
beispielsweise mehr Musik, Fotos oder andere Daten in kleineren
Geräten gespeichert
werden.
-
Nichtflüchtige Speichereinheiten
können
als so genannte EEPROMs, elektrisch löschbare und programmierbare
Festwertspeicher, ausgebildet sein. Die gespeicherten Daten verbleiben
ohne Zufuhr von Versorgungsspannung für lange Zeit im EEPROM, der
viele Male programmiert und gelöscht werden
kann.
-
Eine
EEPROM-Speichereinheit umfasst eine Vielzahl von Speicherzellen,
von denen jede ausgebildet ist, Information zu speichern. Die Speicherzellen
können
derart ausgestaltet sein, dass lediglich ein Bit gespeichert wird.
Multi-Bit-Speicherzellen, jedoch, können mehr als ein Bit speichert.
Eine so genannte NROM-Speicherzelle, kurz für „Nitrid-Programm-Read-Only-Memory-Cell" ist ausgebildet, zwei
Bits zu speichern. Die NROM-Speicherzelle ist in dem Dokument
US 6,011,725 offenbart.
-
Eine
NROM-Speicherzelle hat einen Transistorkörper mit einer Zellwanne, die
ein erstes und ein zweites Dotiergebiet umfasst. Eine Kanalregion
befindet sich zwischen dem ersten und dem zweiten Dotiergebiet.
Eine Gate-Elektrode ist über
der Kanalregion angeordnet. Sie wird durch eine dielektrische Schicht,
die zwischen der Kanalregion und der Gate-Elektrode angeordnet ist,
isoliert. Die dielektrische Schicht umfasst eine obere Oxidschicht,
eine Nitridschicht, beispielsweise Siliziumnitrid, und eine untere
Oxidschicht. Die Nitridschicht, eingeschoben zwischen den isolierenden
Oxidschichten, dient als Ladungsfängerschicht. Die Oxidschichten
verhindern die Diffusion von Elektronen in Richtung der Oxidschichten.
Alternative Materialien zur Ausbildung der Ladungsfängerschichten
sind auch denkbar.
-
Zwei
Bits können
in verschiedenen Regionen der Nitridschicht gespeichert werden.
Eine erste Bitregion zum Speichern eines ersten Bits befindet sich
benachbart zum ersten Dotiergebiet, und eine zweite Bitregion zum
Speichern eines zweiten Bits befindet sich benachbart zum zweiten
Dotiergebiet.
-
Die
Bits werden mittels so genannter „heißer Elektronen" programmiert. Elektronen
werden aus der Kanalregion in die Ladungsfängerschicht eingebracht. Das
Programmieren des ersten Bits wird durchgeführt, indem Programmierpotenziale
an das erste Dotiergebiet und an das Gate angelegt werden, während das
zweite Dotiergebiet geerdet ist. Typischerweise beträgt das Programmierpotenzial,
das an das Gate angelegt wird, ungefähr 9 Volt, Das Programmierpotenzial,
das an das erste Do tiergebiet angelegt wird, beträgt ungefähr 4,5 Volt.
Auf Grund eines daraus resultierenden elektrischen Feldes werden
Elektronen in die erste Bitregion, die benachbart zum ersten Dotiergebiet
ist, eingebracht und gefangen. Ähnlich
erfolgt das Programmieren des zweiten Bits, indem die Programmierpotenziale
an das zweite Dotiergebiet und das Gate angelegt werden, während das
erste Dotiergebiet geerdet ist. In diesem Fall werden die Elektronen
in die zweite Bitregion eingebracht und gefangen. Typischerweise
werden die Programmierpotenziale derart angelegt, dass das resultierende
Feld in Pulsen aufgeprägt
wird.
-
Zum
Löschen
kann das Einbringen von so genannten „heißen Löchern", beispielsweise mittels Fowler-Nordheim-Tunneln,
verwendet werden. Das Löschen
des ersten Bits wird durchgeführt,
indem Löschpotenziale
an das Gate oder an das erste Dotiergebiet und das Gate angelegt
werden. Typischerweise werden ungefähr 6 Volt an das erste Dotiergebiet
angelegt und eine negative Spannung bezogen auf ein Bezugspotenzial
von ungefähr
-7 Volt wird an das Gate angelegt. Die angelegten Löschpotenziale resultieren
in einem elektrischen Feld. Es bewirkt, dass Löcher die untere Oxidschicht überwinden,
um die Ladung der gefangenen Elektronen zu kompensieren. Das zweite
Bit wird gelöscht,
indem die Löschpotenziale
an das Gate und das zweite Dotiergebiet angelegt werden. Alternativ
kann das Löschen des
ersten und zweiten Bits durchgeführt
werden, indem eine negative Spannung, bezogen auf das Bezugspotenzial,
lediglich an das Gate angelegt wird.
-
Das
Bit wird gelesen, indem eine Spannung zwischen das erste und das
zweite Dotiergebiet angelegt wird, die entgegengesetzt zu der Programmierspannung
ist, die zum Programmieren dieses Bits verwendet wird. Typischerweise
wird, um das erste Bit zu lesen, ein Lesepotenzial von 1,5 Volt
an das zweite Dotiergebiet angelegt, während das erste Dotiergebiet
geerdet ist. Ein Strom fließt,
wenn keine oder nahezu keine Elektronen innerhalb der ersten Bitregion
gefangen sind. Relativ geringe Ladungen nahe dem ersten Dotiergebiet
reduzieren den Stromfluss. Das Lesen des zweiten Bits wird durchgeführt, indem
das Lesepotenzial an das erste Dotiergebiet angelegt wird, während das
zweite Dotiergebiet geerdet ist. Während des Durchführens des
Leseschritts wird eine Lesespannung von typischerweise 4 Volt, bezogen
auf das Bezugspotenzial, an das Gate angelegt.
-
Ein
Speicherzellenfeld umfasst eine Vielzahl von Speicherzellen, die
als Matrix mit Zeilen und Spalten angeordnet sind. Das Speicherzellenfeld umfasst
eine Vielzahl von Wortleitungen und eine Vielzahl von Bitleitungen.
Eine der Wortleitungen verbindet die Gate-Elektroden, die in einer,
selben Zeile angeordnet sind. Somit wird ein Potenzial, das an die Wortleitung
angelegt ist, an die Gate-Elektroden jeder Speicherzelle in derselben
Zeile angelegt. Jede Bitleitung bildet die ersten Dotiergebiete
der Speicherzellen, die in einer, selben Spalte auf einer Seite der
Bitleitung angeordnet sind, sowie die zweiten Dotiergebiete der
Speicherzellen, die in einer, selben Zeile auf der anderen Seite
der Bitleitung angeordnet sind, aus. Ein Potenzial, das an eine
der Bitleitungen angelegt ist, wird an die Speicherzellen auf jeder
Seite dieser Bitleitung gekoppelt.
-
Jede
Speicherzelle kann durch die Wortleitung und die Bitleitungen auf
jeder Seite, welche an diese Speicherzelle gekoppelt sind, identifiziert
werden. Programmieren, Löschen
oder Lesen von einer der Speicherzellen wird durchgeführt, indem
die Programmierpotenziale, Löschpotenziale
beziehungsweise Lesepotenziale an die Wortleitung und an die Bitleitungen,
die mit dieser Speicherzelle verbunden sind, angelegt werden.
-
Die
Bitleitungen können
an einen Bitleitungsdecoder gekoppelt werden. Die Wortleitungen
können
an einen Wortleitungsdecoder gekoppelt werden. Der Bitleitungsdecoder
ist ausgebildet, die Programmier-, Lese- oder Löschpotenziale an jede Bitleitung,
insbesondere an ein Paar benachbarter Bitleitungen, anzulegen, um
die Bits, die in den Speicherzellen zwischen diesen beiden Bitleitungen
gespeichert sind, zu programmieren, zu lesen oder zu löschen. Der
Wortleitungsdecoder ist ausgebildet, das Programmier-, Lese- oder
Löschpotenzial
an jede der Wortleitungen anzulegen. Der Bitleitungsdecoder und
der Wortleitungsdecoder sind an einen Adressdecoder gekoppelt, der
ausgebildet ist, die Speicherzellen zu identifizieren, welche die
zu programmierenden, zu löschenden
oder zu lesenden Bits speichern. Der Adressdecoder ist weiterhin
ausgebildet, den Bitleitungsdecoder und den Wortleitungsdecoder
zu kontrollieren, um den Zugriff auf diese Speicherzellen durchzuführen.
-
Das
Verändern
von Informationen, die in den Speicherzellen des Speicherzellenfeldes
gespeichert ist, kann durchgeführt
werden, indem alle Bits, die in den Speicherzellen gespeichert sind,
gelöscht
werden und dann ausgewählte
Bits programmiert werden, um die veränderte Information zu speichern.
-
Jede
Speicherzelle kann einem aus einer Vielzahl von Löschsektoren
zugeordnet werden, der seinerseits eine Gruppe von Wortleitungen
und eine Gruppe von Bitleitungen umfasst. Jede Speicherzelle, die
dem Löschsektor
zugeordnet ist, ist an eine Wortleitung aus der Gruppe der Wortleitungen
und zwischen zwei benachbarte Bitleitungen aus der Gruppe der Bitleitungen
gekoppelt. Typischerweise werden die Speicherzellen eines Flash-Speicherzellenfeldes
synchronisiert gelöscht,
indem ein Löschsektor
nach dem anderen gelöscht
wird. Die Löschpotenziale
können
an die Gruppe von Wortleitungen und die ungradzahligen Bitleitungen
aus der Gruppe von Bitleitungen angelegt werden, um zunächst ein Bit
der zwei Bits, die in jeder Speicherzelle des Löschsektors gespeichert sind,
zu löschen.
Dann können
die Löschpotenziale
an die Gruppe der Wortleitungen und an die gradzahligen Bitleitungen
der Gruppe von Bitleitungen angelegt werden, um das andere Bit,
das in jeder Speicherzelle des Löschsektors
gespeichert ist, zu löschen.
-
Die
programmierten Bits und die gelöschten Bits
werden durch dieses Vorgehen gelöscht.
Löcher werden
in die Ladungsfängerbereiche
der Speicherzellen gezwungen. Wenn das Bit vor dem Löschen programmiert
gewesen ist, neutralisieren die Löcher die Elektronen, die innerhalb
der Ladungsfängerschicht
gefangen sind, zum Löschen
des entsprechenden Bits. Wenn das Bit vor dem Löschen bereits gelöscht gewesen
ist, kann das Einbringen der Löcher
auf Grund der damit einhergehenden weiteren Reduzierung der Schwellspannung
zu so genannten „über-gelöschten" Bits führen. Die
Schwellspannung, die ein über-gelöschtes Bit
repräsentiert,
ist im Vergleich zur durchschnittlichen Schwellspannung von gelöschten Bits
signifikant verringert. Insbesondere wenn das Bit selten programmiert
und mehrmals in Folge gelöscht
wird, kann das Bit über-gelöscht werden.
Speicherzellen, die über-gelöschte Bits
speichern, können
Leckströme
im Speicherzellenfeld verursachen. Diese Speicherzellen verursachen
während
des Detektierens von anderen Bits in Speicherzellen, die an dieselbe
Bitleitung gekoppelt sind, Fehler.
-
Aus
dem Dokument US 2003/0021155 A1 ist eine Vorrichtung bekannt, die
gelöschte
Speicherzellen durch ein so genanntes "Soft Programming" dahingehend verändert, dass ihre Schwellwerte
erhöht und über einen
schmaleren Bereich verteilt werden. Diese Änderung wirkt sich auch positiv
auf so genannte überlöschte Zellen
aus, deren Schwellwerte sehr gering sind und durch das Vorgehen
erhöht
werden.
-
Verfahren
zu vermeiden und eine verbesserte Halbleiterspeicheranordnung vorzusehen,
in der diese vermieden werden.
-
Die
Aufgabe wird durch ein Verfahren zum Vorbereiten eines Rückspeicherns
von Informationen gelöst.
Die Informationen sind die in einer Vielzahl von Speicherzellen
gespeichert, wobei jede Speicherzelle eine veränderbare Kenngröße hat,
die die gespeicherte Information anzeigt. Die veränderbare Kenngröße zeigt
einen ersten Zustand an, wenn die Kenngröße kleiner als ein Leseschwellwert
ist, und die veränderbare
Kenngröße zeigt
einen zweiten Zustand an, wenn die Kenngröße größer als der Leseschwellwert
ist. Das Verfahren umfasst folgende Schritte: Überprüfen, ob ein Absolutwert einer
ersten Differenz zwischen der Kenngröße und dem Leseschwellwert
größer als
ein gegebener erster Schwellwert ist, Zuordnen der überprüften Kenngröße zu einer
ersten Gruppe, wenn der Absolutwert der ersten Differenz größer als
der erste Schwellwert ist, und Verändern der Kenngrößen, die
der ersten Gruppe zugeordnet sind, sodass zumindest einer der Absolutwerte
der ersten Differenzen verringert ist, oder sodass zumindest einer
der gespeicherten Zustände wechselt.
-
Vorteil
dieses Verfahrens ist, dass selektiv nur die Kenngrößen, insbesondere
Schwellspannungen, in Speicherzellen verändert vor dem Löschen werden,
bei denen Leckströme
durch ein erneutes Löschen
auftreten könnten.
Somit werden lediglich die Kenngrößen über-gelöschter Bits modifiziert, um die
degradierenden Einflüsse
durch einen folgenden Löschschritt
zu vermindern. Das Löschen
der bereits gelöschten
Zellen wird als Rückspeicherschritt
bezeichnet.
-
Vorteilhafterweise
wird die Kenngröße, die im
vorhergehenden Schritt verändert
worden ist, in einem weiteren Schritt dahingehend überprüft, ob der Absolutwert
einer zweiten Differenz zwischen dieser Kenngröße und dem Leseschwellwert
größer ist
als ein gegebener zweiter Schwellwert. Wenn dieses der Fall ist,
wird die Kenngröße erneut
verändert,
sodass sie näher
dem Leseschwellwert ist, oder sodass der gespeicherte Zustand verändert wird.
Dieser Schritt erlaubt, das Vorgehen für leicht zu löschende
und schwer zu löschende
Bits zu differenzieren, was mit einer Energieersparnis einhergeht.
Denn während des
zweiten Veränderungsschritts
werden lediglich die Kenngrößen erneut
verändert,
die während
des ersten Veränderungsschritts
schwer zu verändern waren.
Auch wenn diese Kenngrößen während der Veränderungsschritte
schwer zu verändern
sind, werden sie signifikant während
des folgenden Rückspeicherschritts
modifiziert, bei dem die Kenngrößen in entgegen
gesetzter Weise zu den bisher durchgeführten Veränderungsschritten modifiziert
werden. Der Abstand der Kenngrößen vom
Leseschwellwert vergrößert sich
durch das Rückspeichern,
was ohne die Veränderungsschritte
zu einem extrem über-gelöschten Bit
führen
könnte.
Um diesen degradierenden Effekt zu mindern, werden die Kenngrößen, die schwer
zu verändern
sind, im Vorwege zumindest zweimal verändert.
-
Das
Rückspeichern
der gelöschten
Speicherzellen erfolgt im Rahmen des Löschens aller Speicherzellen
in einem Löschsektor,
indem eine Folge von Speicherpulsen, die auch als Löschpulse bezeichnet
werden können,
an die Speicherzellen angelegt wird.
-
Die
gespeicherte Information wird nach dem Löschen programmiert, indem eine
Folge von Programmierpulsen an die zu programmierenden Speicherzellen
angelegt wird.
-
Vorzugsweise
erfolgt im Vorwege des Löschens
das Verändern
der Kenngrößen im Rahmen der
Veränderungsschritte,
indem wenige, insbesondere lediglich ein Veränderungspuls an die entsprechenden
Speicherzellen angelegt wird. Da das Verfahren für gelöschte Bits angewendet wird,
umfasst der Veränderungsschritt
das Anlegen von zumindest einem Programmierpuls an die Speicherzellen,
die die über-gelöschten Bits
speichern.
-
Das
Durchführen
eines Überprüfungsschritts,
um hinsichtlich des ersten Schwellwertes zu überprüfen, und eines weiteren Überprüfungsschritts,
um hinsichtlich des zweiten Schwellwertes zu überprüfen, jeweils gefolgt von dem
Veränderungsschritt,
ist dem Durchführen
lediglich eines Überprüfungsschritts,
um hinsichtlich des zweiten Schwellwertes zu überprüfen, gefolgt von einem entsprechenden
Veränderungsschritt
vorzuziehen. Beim Durchführen
zweier Veränderungsschritte
umfasst jeder der Veränderungsschritte
das Anlegen von einem Veränderungspuls.
Während
des zweiten Veränderungsschritts
wird der Veränderungspuls
lediglich an Bits angelegt, die schwer zu verändern sind. Somit werden an
diese Bits insgesamt zwei Veränderungspulse
angelegt, um sie zu verändern.
Im anderen Fall, bei dem lediglich ein Veränderungsschritt durchgeführt wird,
müssen
zwei Veränderungspulse an
jede Speicherzelle, die ein über-gelöschtes Bit speichert,
angelegt werden, um sicherzustellen, dass selbst die Kenngrößen, die
schwer zu verändern sind,
verändert
werden. Dieses Vorgehen erfordert mehr Energie zum Anlegen einer
größeren Anzahl von
Veränderungspulsen
im Vergleich zum Verfahren mit zwei Überprüfungsschritten.
-
Durch
die Überprüfungs- oder
Veränderungsschritte
kann die Speicherzelle vorteilhafterweise derart getunt werden,
dass nach dem Durchführen eines
darauf folgenden Rückspeicherschritts
das Bit nicht mehr über-gelöscht ist.
Es wird nach dem Löschen
vielmehr durch eine Kenngröße repräsentiert, die
im Bereich durchschnittlicher Kenngrößen gelöschter Bits ist.
-
Die
Folge von Überprüfungs- und
Veränderungsschritt
kann mehrere Male wiederholt werden, wobei der zweite Schwellwert
jedes Mal verändert werden
kann. Der zweite Schwellwert kann dem Leseschwellwert Schritt für Schritt
angenähert
werden, um den Tuningeffekt zu justieren.
-
Das
Verfahren ist nicht darauf begrenzt, die oben beschriebenen Schritte
vor jedem Rückspeicherschritt
durchzuführen.
Es kann auch durchgeführt
werden, nachdem mehrere Löschschritte
ohne vorherige Vorbereitung durchgeführt worden sind. Alternativ
kann in anderen Ausführungen
lediglich eine Gruppe von Löschsektoren
vor dem Löschen
in der geschilderten Art vorbereitet werden.
-
Ferner
betrifft die Erfindung eine Halbleiterspeicheranordnung zum Vorbereiten
der Speicherzellen. Die Halbleiterspeicheranordnung umfasst
ein
Speicherzellenfeld mit Speicherzellen, wobei jede Speicherzelle
Information basierend auf zumindest einer veränderbaren Kenngröße der Speicherzelle speichert,
sowie eine Überprüfungseinheit,
die an das Speicherzellenfeld gekoppelt ist und die ausgebildet
ist, zu überprüfen, ob
ein Absolutwert einer Differenz zwischen der Kenngröße und einem
Leseschwellwert größer als
ein gegebener Schwellwert ist. Die Halbleiterspeicheranordnung umfasst
ferner eine Zugriffseinheit, die an das Speicherzellenfeld sowie
an die Überprüfungseinheit
gekoppelt ist und die ausgebildet ist, die überprüfte Kenngröße zu verändern, sodass der Absolutwert
der Differenz verringert ist, oder sodass ein durch die Kenngröße repräsentierter
Zustand wechselt. Die zu verändernden Kenngrößen werden
mittels einer Zuordnungseinheit einer ersten Gruppe zugeordnet,
wenn ein Absolutwert der Differenz zwischen der Kenngröße und dem Leseschwellwert
größer ist
als der gegebene Schwellwert. Die Zugriffseinheit ist vorzugsweise ausgebildet,
die Kenngrößen, die
der ersten Gruppe zugeordnet sind zu verändern, indem auf die entsprechenden
Speicherzellen zugegriffen wird. Die Zugriffseinheit ist vorzugsweise
ferner ausgebildet, Information in jeder Speicherzelle zu speichern.
-
Vorteil
dieser Anordnung ist, dass Kenngrößen, die möglicherweise in einem folgenden
Rückspeicherschritt
zu Leckströmen
führen,
derart manipuliert werden, dass die Leckströme nach dem Rückspeicherschritt
nicht mehr auftreten können.
-
Die Überprüfungseinheit
ist vorteilhafterweise ausgebildet, hinsichtlich eines ersten und
eines zweiten Schwellwertes zu überprüfen, um
ein differenziertes Vorgehen für
leicht zu verändernde
und schwer zu verändernde
Kenngrößen zu ermöglichen. Der
zweite Schwellwert kann variabel sein, um die Vorbereitungsschritte
mit mehreren Überprüfungs- und
Veränderungsschritten
durchzuführen.
-
Vorteilhafterweise
sind Speicherzellen als Platz sparende, jeweils zwei Bits speichernde NROM-Zellen
ausgebildet.
-
Die
Zugriffseinheit ist vorzugsweise derart ausgebildet, in den Bits
eines Sektors durch Anlegen eines Rückspeichersignals, denselben
Zustand zu speichern. Bits die bereits diesen, selben, meist gelöschten Zustand
aufweisen, werden le diglich rückgespeichert.
Die Zustände
der anderen Bits wechseln. In beiden Fällen wird dasselbe Signal angelegt.
-
Zum
Programmieren der Information wird an einen Teil der gelöschten Speicherzellen
ein Programmiersignal angelegt, sodass der Zustand der entsprechenden
Bits verändert
wird. Das Programmiersignal umfasst eine Folge von Programmierpulsen.
-
Die
Zugriffseinheit ist vorteilhafterweise ausgebildet, ein Veränderungssignal
bereitzustellen, um die Kenngrößen zu verändern. Das
Veränderungssignal
kann genau einen Programmierpuls oder einige, meist wenige Programmierpulse
umfassen. Alternativ kann das Veränderungssignal Pulse umfassen, deren
Spannung größer oder
kleiner ist als die Spannung eines der Programmierpulse. Solche
Veränderungspulse
verändern
die Kenngröße mehr
oder weniger deutlich als die Programmierpulse.
-
Nachfolgend
wird die Erfindung unter Bezugnahme auf die Zeichnung anhand von
Ausführungsbeispielen
erklärt.
-
Es
zeigen:
-
1 einen
Querschnitt einer NROM-Speicherzelle,
-
2 ein
Blockdiagramm eines NROM-Speicherzellenfeldes,
-
3 eine
Verteilung der Schwellspannungen von Bits, die im Speicherzellenfeld
gespeichert sind,
-
4 ein
Histogramm der Schwellspannung von Bits, die im Speicherzellenfeld
gespeichert sind, nach dem Überprüfen der
Schwellspannungen hinsichtlich eines ersten Schwellwerts,
-
5 das
Histogramm gemäß 4 nach dem
Verändern
der Schwellspannungen,
-
6 das
Histogramm gemäß 5 nach dem
erneuten Überprüfen und
Verändern
der Schwellspannung,
-
7 ein
Flussdiagramm eines ersten Ausführungsbeispiels
des Verfahrens,
-
8 ein
Flussdiagramm eines zweiten Ausführungsbeispiels
des Verfahrens,
-
9 ein
Flussdiagramm eines dritten Ausführungsbeispiels
des Verfahrens,
-
10 ein
Flussdiagramm eines vierten Ausführungsbeispiels
des Verfahrens,
-
11 ein
erstes Ausführungsbeispiel
einer Speicheranordnung und
-
12 ein
zweites Ausführungsbeispiel
der Speicheranordnung.
-
1 zeigt
ein Ausführungsbeispiel
einer NROM-Speicherzelle.
Die Speicherzelle umfasst einen Transistorkörper mit einer Zellwanne 255,
die ein erstes Dotiergebiet 201 und ein zweites Dotiergebiet 202 hat.
Eine Kanalregion 254 ist zwischen dem ersten und dem zweiten
Dotiergebiet 201, 202 angeordnet. Eine Gate-Elektrode 400 ist über der
Kanalregion 254 angeordnet. Sie ist durch eine Oxid-Nitrid-Oxid-Schicht 251, 252, 253 isoliert,
wobei die Nitridschicht 252 als Ladungsfängerschicht
dient.
-
Ein
erstes Bit 101 und ein zweites Bit 102 können in
verschiedenen Bereichen der Ladungsfängerschicht 252 gespeichert
werden. Das erste Bit 101 ist in einer ersten Bitregion
nahe dem ersten Dotiergebiet 201 gespeichert, das zweite
Bit 102 ist in einer zweiten Bitregion nahe dem zweiten
Dotiergebiet 202 gespeichert. Wenn ein gewisser Wert von
Ladungen in einer dieser Bitregionen gespeichert ist, wird das entsprechende
Bit als „programmiert" bezeichnet. Dieses
Bit repräsentiert
eine logische Null. Wenn weniger als der gewisse Wert der Ladungen,
oder keine Ladungen, innerhalb dieser Bitregionen gespeichert wird,
wird das entsprechende Bit als „gelöscht" bezeichnet. Es repräsentiert eine logische Eins.
-
Das
erste und das zweite Bit werden in 1 durch
zwei Ellipsen 101, 102 dargestellt. Eine leere Ellipse
repräsentiert
das gelöschte
Bit, und eine schraffierte Ellipse repräsentiert das programmierte Bit.
-
Das
erste und das zweite Bit 101, 102 beeinflussen
eine erste Schwellspannung beziehungsweise eine zweite Schwellspannung.
Die Schwellspannung hängt
von der Menge der Ladungen ab, die in der entsprechenden Bitregion
gefangen sind.
-
Das
erste Bit 101, das in der Speicherzelle 100 gespeichert
ist, wird gelesen, indem eine Lesespannung zum Lesen des ersten
Bits an die Speicherzelle angelegt wird. Wenn das erste Bit 101 programmiert
ist, fließt
kein Strom, oder nur ein sehr geringer, zwischen dem ersten und
dem zweiten Dotiergebiet 201, 202, da die erste
Schwellspannung größer ist
als die Lesespannung. Wenn das erste Bit gelöscht ist, fließt der Strom, da
die erste Schwellspannung geringer ist als die Lesespannung.
-
Die
erste Schwellspannung steigt mit zunehmender Anzahl von Ladungen,
die in der ersten Bitregion gefangen sind, an.
-
Das
zweite Bit 102 der Speicherzelle 100 wird gelesen,
indem eine Lesespannung zum Lesen des zweiten Bits angelegt wird.
Wenn das zweite Bit 102 programmiert ist, ist die zweite
Schwellspannung, die den binären
Wert des zweiten Bits 102 anzeigt, größer als die Lesespannung, sodass
der Strom nicht fließt
oder lediglich bis zu einer bestimmten Stromstärke fließt. Wenn das zweite Bit 102 gelöscht ist,
ist die zweite Schwellspannung geringer als die Lesespannung, sodass
der Strom fließt.
Die zweite Schwellspannung steigt mit zunehmender Anzahl der Ladungen,
die in der zweiten Bitregion gespeichert sind, an.
-
2 zeigt
ein Blockdiagramm eines Speicherzellenfeldes, das eine Vielzahl
von Speicherzellen 100 umfasst. Die Speicherzellen 100 sind
in Zeilen und Spalten angeordnet. Die Gate-Elektrode 400 der
Speicherzellen 100, die in einer, selben Zeile innerhalb
der Vielzahl der Zeilen angeordnet sind, ist mit einer, selben Wortleitung 40 aus
der Vielzahl der Wortleitungen verbunden. Das erste Dotiergebiet
der Speicherzellen 100, die in einer selben Zeile angeordnet
sind, wird durch eine, selbe Bitleitung 20 aus der Vielzahl
der Bitleitungen ausgebildet. Dieselbe Bitleitung 20 bildet
die zweiten Dotiergebiete der Speicherzellen 100 aus, die
in der benachbarten Spalte angeordnet sind.
-
Der
Speicherinhalt der Speicherzellen kann geändert werden, indem zuerst
die Speicherzellen 100 gleichzeitig oder schrittweise gelöscht werden. Dann
werden ausgewählte
erste Bits 101 und ausgewählte zweite Bits 102 in
Abhängigkeit
der Information, die in den Speicherzellen 100 gespeichert
werden soll, programmiert.
-
Das
Löschen
wird durchgeführt,
indem ein Löschpotenzial,
das eine hohe negative Spannung bezogen auf ein Bezugspotenzial
ist, an die Wortleitungen 40 angelegt wird. Alternativ
ist es möglich, Löschpotenziale
ebenso an die Bitleitungen 20 anzulegen. Üblicherweise
wird Löschen
sektorweise durchgeführt.
Das Löschpotenzial
wird an alle Speicherzellen eines Löschsektors angelegt, welche
sowohl gelöschte
als auch programmierte Bits enthalten können. Das resultierende elektrische
Feld zwingt Löcher
aus der Kanalregion 254 in die Ladungsfängerschicht 252 einzudringen.
Somit werden gelöschte
Bits während
des Löschschritts
wieder-gelöscht.
-
Wenn
ein programmiertes Bit gelöscht
wird, neutralisieren die eingebrachten Löcher die Elektronen, die in
der Ladungsfängerschicht
gefangen sind. Somit wird die Schwellspannung, die den Wert des Bits
anzeigt, verringert und ist geringer als die Lesespannung.
-
Wenn
das Löschpotenzial
angelegt wird, sodass ein gelöschtes
Bit gelöscht
wird, werden die Löcher
in die entsprechende Bitregion eingebracht. Diese Löcher können nicht
neutralisiert werden, da keine oder nur wenige Elektronen in der
Bitregion gefangen sind. Die Schwellspannung, die das gelöschte Bit
repräsentiert,
kann durch die eingebrachten Löcher weiter
verringert werden.
-
3 zeigt
eine typische Verteilung von ersten und zweiten Schwellspannungen
VT, die eine Vielzahl von ersten und zwei ten Bits 101, 102,
die in einem Speicherzellenfeld gespeichert sind, repräsentieren.
Die gespeicherten Bits 101, 102 sind entweder
programmiert oder gelöscht.
-
Die
Verteilung umfasst zwei glockenförmige Verteilungskurven 50, 51 innerhalb
eines Programmierbereichs 30 oberhalb der Lesespannung
RD beziehungsweise innerhalb eines Löschbereichs 31 unterhalb
der Lesespannung RD.
-
Die
erste Kurve 51 zeigt die Verteilung von gelöschten Bits über der
Schwellspannung VT an. Diese Bits werden durch die Schwellspannungen
VT, die geringer als die Lesespannung RD und üblicherweise geringer als eine
Löschspannung
EV sind, repräsentiert.
Die zweite Kurve 50 zeigt die Verteilung der programmierten
Bits an, die durch Schwellspannungen VT repräsentiert werden, die größer als
die Lesespannung RD und üblicherweise
größer als
eine Programmierspannung PV sind.
-
Die
Bits innerhalb eines linken Ausläufers 511 der
ersten Kurve 51 werden als „über-gelöscht" bezeichnet. Ihre Schwellspannungen
VT sind deutlich geringer als eine durchschnittliche Schwellspannung
P1 der gelöschten
Bits. Bits innerhalb eines rechten Ausläufers 510 der ersten
Kurve 51 werden als „unter-gelöscht" bezeichnet. Ihre
Schwellspannungen VT sind deutlich oberhalb der durchschnittlichen
Schwellspannung P1 der gelöschten
Bits.
-
In
entsprechender Weise werden die Bits innerhalb eines linken Ausläufers 501 der
zweiten Kurve 50 als „unterprogrammiert" und die Bits innerhalb eines
rechten Ausläufers 500 der
zweiten Kurve 50 als „über-programmiert" bezeichnet.
-
Der
Schritt zum Löschen
eines der programmierten Bits umfasst das Verändern der Schwellspannung VT,
die das Bit repräsentiert,
sodass die Schwellspannung VT aus Programmierbereich 30 in den
Löschbereich 31 verschoben
wird. Das Löschen wird
durchgeführt,
indem die Löschpotenziale
in Pulsen an die Speicherzelle angelegt werden, die das entsprechende
Bit speichert. Üblicherweise
ist die Nummer der Löschpulse,
die an die Speicherzellen angelegt werden, fix und variiert nicht
von Speicherzelle zu Speicherzelle.
-
Durch
jeden Speicherpuls wird hervorgerufen, dass ein Quantum an Löchern in
die entsprechende Bitregion der Speicherzellen eingebracht wird.
Die Größe dieses
Quantums kann von Speicherzelle zu Speicherzelle variieren. In ähnlicher Weise
können
Unterschiede hinsichtlich der Schwellspannungen eines jeden Bits
im gelöschten
Zustand und desselben Bits im programmierten Zustand von Bit zu
Bit differieren. Die durchschnittliche Differenz zwischen den Schwellspannungen
der programmierten Bits zu den entsprechenden Schwellspannungen derselben
Bits im gelöschten
Zustand ist ungefähr die
Differenz zwischen den durchschnittlichen Schwellspannungen P1 und
P0 der gelöschten
beziehungsweise der programmierten Bits. Nichtsdestotrotz sind über-programmierte
Bits und unter-programmierte
Bits nach dem Löschen
meist unter-gelöschte
Bits beziehungsweise über-gelöschte Bits.
-
Üblicherweise
wird das Löschen
durchgeführt,
indem die Löschpulse
an alle Speicherzellen eines Sektors angelegt werden. Dadurch werden
die Schwellspannungen der programmierten Bits deutlich verringert,
sodass diese Bits gelöscht
werden. Die Schwellspannungen der vor dem Löschen bereits gelöschten Bits
werden weiter verringert. Der Schwellspannungsabfall der gelöschten Bits
ist jedoch geringer als der Schwellspannungs abfall der programmierten
Bits. Im Gegensatz zum Löschen, bei
dem alle Speicherzellen eines Sektors gelöscht werden, umfasst das Programmieren
das Anlegen von Programmierpulsen lediglich an ausgewählte Speicherzellen,
die programmiert werden sollen.
-
Ein über-programmiertes
Bit kann schwer zu löschen
sein, weil die Schwellspannung VT, die das Bit repräsentiert,
um zumindest die Differenz zwischen der Schwellspannung VT und der
Lesespannung RD verringert werden muss. Ein Bit, das schwer zu löschen ist,
ist nach dem Durchführen
des Löschens
unterprogrammiert. Dieses Bit ist üblicherweise leicht zu programmieren,
da der Unterschied zwischen der Schwellspannung VT des gelöschten Bits und
der Lesespannung RD gering ist.
-
In ähnlicher
Weise können über-gelöschte Bits
schwer zu programmieren sein, was in diesem Fall zu unter-programmierten
Bits führt,
die wiederum leicht zu löschen
sind.
-
Jedoch
ist nicht jedes über-gelöschte Bit schwer
zu programmieren. In diesem Fall ist die Schwellspannung VT des
vormals über-gelöschten Bits
nach dem Durchführen
des Programmierens nahe der durchschnittlichen Schwellspannung P0
der programmierten Bits oder übertrifft
diesen Wert. Ähnlich
muss nicht jedes über-programmierte
Bit schwer zu löschen
sein.
-
Im
Fall von Bits, die extrem über-gelöscht sind,
sodass ihre Schwellspannungen VT größer ist eine Leckschwellspannung
PAEV sind, sind die entsprechenden Speicherzellen leitend selbst
wenn das Lesepotenzial nicht an diese Speicherzellen angelegt wird.
Wegen der großen
Menge von Löchern,
die in den Ladungsfängerregionen
dieser extrem über-gelöschten Speicherzellen
gefangen sind, fließt
ein Leckstrom. Sie haben einen großen Leistungsverbrauch und
das entsprechende extrem über-gelöschte Bit
ist üblicherweise
schwer zu programmieren. Aufgrund dessen verringert sich die Lebenszeit
dieser Speicherzellen, und sie können
ausfallen, nachdem ein paar Löschzyklen
nacheinander durchgeführt
worden sind.
-
Durch
ein so genanntes „Programmieren-nach-dem-Löschen"-Verfahren können Leckströme vermieden
werden. Dieses Verfahren umfasst, zumindest einen Programmierpuls
an die Speicherzellen anzulegen, die ein über-gelöschtes Bit speichern, sodass
die Schwellspannung VT größer als die
Leckschwellspannung PAEV wird.
-
Das
folgende so genannte „Programmieren-vor-dem-Löschen"-Verfahren ermöglicht es, den Ausfall von
Speicherzellen, die selten programmiert und oft wieder-gelöscht werden,
zu vermeiden. Die über-gelöschten Bits
werden vor dem eigentlichen Löschen
mittels dieses Verfahrens vorbereitet, um einen weiteren Schwellspannungsabfall,
insbesondere auf einen Wert unterhalb der Leckschwellspannung, wegen
des Löschens
zu vermeiden.
-
4 zeigt
ein Histogramm der gelöschten Bits über der
Schwellspannung VT in Anlehnung an die Verteilungskurve 51,
die in 3 gezeigt wird. Das Histogramm umfasst mehrere
Balken, von denen jeder eine Höhe
und eine Breite hat. Die Höhe
jedes Balkens gibt die Anzahl der Bits an, die durch eine Schwellspannung
VT repräsentiert
werden, die innerhalb eines Intervalls liegt, welches durch die
Position des Balkens auf der VT-Achse und dessen Breite angezeigt
wird. Um das folgende Verfahren zu veranschaulichen, umfasst das
Histogramm nur wenige Balken.
-
Die über-gelöschten Bits
werden dahingehend überprüft, ob ihre
Schwellspannung VT, die das Bit repräsentiert, geringer ist als
eine gegebene erste Schwellwert-Spannung PBE_RD. Die erste Schwellwert-Spannung
PBE_RD wird zwischen der Löschspannung
EV und der Leckschwellspannung PAEV eingestellt. Die erste Schwellwert-Spannung PBE_RD
ist nahe der Leckschwellspannung PAEV.
-
Das Überprüfen der
zweiten Bits 102 in den Speicherzellen kann durchgeführt werden,
indem die erste Schwellwert-Spannung
PBE_RD an das Gate und eine bestimmte Spannung zwischen das erste und
zweite Dotiergebiet 201, 202 jeder Speicherzelle 100 angelegt
wird. Es wird detektiert, ob Strom zwischen dem ersten und dem zweiten
Dotiergebiet fließt.
Wenn der Strom fließt,
ist die Schwellspannung VT geringer als die erste Schwellwert-Spannung PBE_RD.
Das erste Bit wird überprüft, indem
die inverse Spannung zwischen das erste und das zweite Dotiergebiet 201, 202 angelegt
wird.
-
Die
Bits, die durch eine Schwellspannung VT, die geringer als die erste
Schwellwert-Spannung PBE_RD ist, repräsentiert werden, werden einer
ersten Gruppe zugeordnet. Diese Bits 61 sind in 4 durch
Schraffur angedeutet. Die anderen Bits 62 werden einer
zweiten Gruppe zugeordnet. Obwohl die folgende Beschreibung des
Verfahrens auf die gelöschten
Bits ausgerichtet ist, sind die programmierten Bits ebenso der zweiten
Gruppe zugeordnet, da sie durch Schwellspannungen VT repräsentiert
werden, welche sehr viel größer sind
als die erste Schwellwert-Spannung PBE_RD.
-
Die
Schwellspannungen VT der Bits 61, die der ersten Gruppe
zugeordnet sind, werden verändert,
sodass die Schwellspannung VT näher
der Lesespannung RD ist oder darüber
hinausgeht. Das Verändern
wird durchgeführt,
indem ein Programmierpuls, der auch als „Programmier-vor-dem-Löschen"-Puls oder PBE-Puls
bezeichnet wird, an die Speicherzellen angelegt wird, die Bits 61 speichern, die
der ersten Gruppe zugeordnet sind. Es ist ebenso möglich, mehr
als einen Programmierpuls an diese Speicherzellen 61 anzulegen.
Alternativ kann die durch den PBE-Puls angelegte Spannung größer als die
durch den Programmierpuls angelegte Spannung sein.
-
5 zeigt
ein Histogramm gemäß 4 nachdem
das Verändern
der Schwellspannungen VT durchgeführt worden ist. Die Schwellspannungen
VT, die der ersten Gruppe zugeordnete Bits 61a, 61b repräsentieren,
sind erhöht.
Hierzu ist dieselbe Anzahl von PBE-Pulsen, üblicherweise einer, an die
Speicherzellen angelegt worden, um die Schwellspannungen VT zu verändern, welche
die Bits 61a, 61b, die der ersten Gruppe zugeordnet
sind, repräsentieren.
Jedoch variiert die Veränderung
der Schwellspannung VT. Die veränderten
Schwellspannungen VT sind in 5 durch
Schraffur angedeutet.
-
Das
oben beschriebene Ausführungsbeispiel umfasst
auch das Verändern
der Schwellspannung VT, die unterhalb der Leckschwellspannung PAEV liegen.
Dadurch ist der Fluss von Leckströmen unterdrückt.
-
Basierend
von der Abhängigkeit
der veränderten
Schwellspannungen VT der der ersten Gruppe zugeordneten Bits 61a, 61b wird
ein weiterer Programmieren-vor-dem-Löschen-Schritt durchgeführt.
-
Die
Schwellspannungen VT der Bits 61a, 61b, die der
ersten Gruppe zugeordnet sind, werden hinsichtlich einer gegebenen
zweiten Schwellwert-Spannung EV2 überprüft. Dieser Vergleich ermöglicht es,
zu detektieren, ob die vormals über-gelöschten Bits
leicht zu löschende
Bits oder schwer zu löschende
Bits sind. Die Bits 61a, die durch eine Schwellspannung
VT repräsentiert
werden, welche größer als
die zweite Schellwert-Spannung
EV2 ist, werden der zweiten Gruppe zugeordnet. Diese Bits 61a sind
leicht zu programmieren und folglich schwer zu löschen. Die Bits 61b,
die durch eine Schwellspannung VT repräsentiert werden, welche geringer ist
als die zweite Schwellwert-Spannung EV2, bleiben der ersten Gruppe
zugeordnet. Diese Bits 61b sind schwer zu programmieren
und leicht zu löschen.
-
Die
Schwellspannung VT der Bits 61b, die noch der ersten Gruppe
zugeordnet sind, werden während
eines folgenden Veränderungsschritts
verändert.
Ein PBE-Puls wird an die entsprechenden Speicherzellen angelegt,
um die Schwellspannungen VT der Bits 61b, die der ersten
Gruppe zugeordnet sind, zu erhöhen.
Der zweite Veränderungsschritt kann
auch umfassen, mehr als einen PBE-Puls anzulegen.
-
Die
zweite Schwellwert-Spannung EV2 kann gleich der Löschspannung
EV sein. In diesem Fall werden, nachdem der weitere Veränderungsschritt durchgeführt worden
ist, die Schwellspannungen VT der vormals über-gelöschten Bits größer als
die Schwellspannung VT der übrigen
gelöschten
Bits. Alternativ kann die zweite Schwellwert-Spannung EV2 gleich
der Lesespannung RD sein. In diesem Fall werden, um die Schwellspannung
VT der vormals über-gelöschten Bits
zu verändern,
diese Bits programmiert. Die zweite Schwellwert-Spannung EV2 kann
größer oder
geringer als die Löschspannung
EV sein.
-
6 zeigt
ein modifiziertes Histogramm gemäß 5,
nachdem der zweite Veränderungsschritt durchgeführt worden ist.
Die Schwellspannungen VT, durch die die Bits 61b der ersten
Gruppe repräsentiert
werden, sind weiter erhöht.
-
Auf
Grund der oben beschriebenen Veränderung
der Schwellspannungen VT, führt
der folgende eigentliche Löschschritt,
um alle vormals gelöschten Bits 61, 61a, 62 zu
löschen,
nicht dazu, dass die Schwellspannungen VT kleiner als die Leckschwellspannung
PAEV werden.
-
7 fasst
ein Ausführungsbeispiel
der Erfindung zusammen.
-
7 zeigt
ein Flussdiagramm zur Kennzeichnung des Programmieren-vor-dem-Löschen-Verfahrens
für ein
Bit, das in einer der Speicherzellen gespeichert ist. Während des
ersten Schritts 700 wird die Schwellspannung VT, die das
Bit repräsentiert,
hinsichtlich der ersten Schwellwert-Spannung PBE_RD überprüft. Wenn
die Schwellspannung VT geringer ist als die erste Schwellwert-Spannung
PBE_RD, wird zumindest ein PBE-Puls
an die Speicherzelle angelegt, um die Schwellspannung VT während des
folgenden Veränderungsschritts 710 zu
erhöhen.
Wenn die Schwellspannung VT größer als
die erste Schwellwert-Spannung
PBE_RD ist, wird die Schwellspannung VT vor dem Löschen nicht
verändert.
-
Nach
dem Durchführen
des Veränderungsschritts 710 wird
die Schwellspannung VT hinsichtlich der zweiten Schwellwert-Spannung EV2 während des Überprüfungsschritts 720 überprüft. Wenn die
Schwellspannung VT geringer als die gegebene zweite Schwellwert-Spannung
EV2 ist, wird während des
zweiten Veränderungsschritts 730 ein
weiterer PBE-Puls an diese Speicherzelle angelegt.
-
Der
Schritt zum Löschen
dieses Bits wird durchgeführt,
nachdem das oben beschriebene Programmieren-vor-dem-Löschen-Verfahren angewendet
worden ist.
-
8 zeigt
ein Flussdiagramm, das ein weiteres Ausführungsbeispiel des Verfahrens
verdeutlicht. Dieses Verfahren richtet sich auf eine Vielzahl von
Bits, die in einer Vielzahl von Speicherzellen, die einem Löschsektor
zugeordnet sind, gespeichert sind. Während des ersten Schritts 750 wird
jedes Bit hinsichtlich der ersten Schwellwert-Spannung PBE_RD überprüft. Wenn
die Schwellspannung VT geringer ist als die erste Schwellwert-Spannung PBE_RD,
wird das Bit während
des folgenden Zuordnungsschritts 760 der ersten Gruppe
zugeordnet. Sonst wird das Bit während
des Zuordnungsschritts 790 der zweiten Gruppe zugeordnet.
Ein PBE-Puls wird an die Speicherzellen angelegt, welche Bits, die der
ersten Gruppe zugeordnet sind, speichern. Dadurch werden die Schwellspannungen
VT, die diese Bits repräsentieren,
erhöht.
Die Schwellspannungen der Bits, die der zweiten Gruppe zugeordnet
sind, werden nicht verändert.
-
Nach
dem Durchführen
dieses Veränderungsschritts 770 werden
die Schwellspannungen VT der Bits, die der ersten Gruppe zugeordnet
sind, während
des Schritts 780 hinsichtlich der zweiten Schwellwert-Spannung
EV2 überprüft. Wenn
die Schwellspannung VT größer ist
als die zweite Schwellwert-Spannung EV2, wird das entsprechende
Bit während
des Zuordnungsschritts 790 der zweiten Gruppe zugeordnet.
Wenn die Schwellspannung VT geringer ist als die zweite Schwellwert-Spannung EV2,
bleibt das entsprechende Bit der ersten Gruppe zugeordnet. Während des
Schritts 800 wird ein weiterer PBE-Puls an die Speicherzellen,
die Bits speichern, die der ersten Gruppe zugeordnet sind, angelegt,
um die Schwellspannungen VT dieser Bits zu erhöhen.
-
9 zeigt
ein weiteres Ausführungsbeispiel des
Verfahrens. Das Flussdiagramm zeigt das Verfahren für ein Bit.
-
Während des
ersten Schritts 830 wird die Schwellspannung VT, die das
Bit repräsentiert,
hinsichtlich der ersten Schwellwert-Spannung PBE_RD überprüft. Wenn
die Schwellspannung VT geringer ist als die erste Schwellwert-Spannung
PBE_RD, wird ein Programmpuls an die Speicherzelle angelegt, um deren
Schwellspannung VT zu erhöhen,
wie in Schritt 840 dargestellt. Wenn die Schwellspannung
VT größer ist
als die erste Schwellwert-Spannung PBE_RD, wird die Schwellwert-Spannung
VT vor dem Löschen nicht
verändert.
-
Während des
zweiten Überprüfungsschritts 850 wird
die veränderte
Schwellspannung VT hinsichtlich der zweiten Schwellwert-Spannung
EV2 überprüft. Wenn
die Schwellspannung VT geringer ist als die zweite Schwellwert-Spannung
EV2, wird ein PBE-Puls an die Speicherzelle angelegt, um den Schwellspannung
VT zu erhöhen,
wie in Schritt 860 angedeutet.
-
Die Überprüfungs- und
Veränderungsschritte 850, 860 können mehrere
Male wiederholt werden, wobei die zweite Schwellwert-Spannung EV2 jedes Mal
verändert
wird. Die Anzahl der Iterationen, angedeutet in Block 870 als
N, hängt
von dem gewünschten
Tuning-Grad der über-gelöschten Bits
ab. Vorzugsweise wird die zweite Schwellwert-Spannung EV2 schrittweise
erhöht,
wie in Schritt 880 angedeutet. Das Inkrement, Mn, kann
während
jedes Schritts 880 gleich sein oder variieren. Es ist auch
denkbar, dass die Überprüfungs- und
Veränderungsschritte 850, 860 N-mal
ohne Veränderung
der zweiten Schwellschwertspannung EV2 wiederholt werden. In diesen
Fällen
werden die Schwellspannungen VT der Bits, die sehr schwer zu programmieren
sind, öfter verändert als
die Schwellspannung der Bits, die leichter zu programmieren sind.
-
Dieses
Ausführungsbeispiel
ermöglicht
das schrittweise Erhöhen
der Schwellspannung VT und das schrittweise Tuning der über-gelöschten Bits.
-
10 zeigt
ein weiteres Ausführungsbeispiel
des Verfahrens, eine Vielzahl von Bits betreffend. Jede Schwellspannung
VT repräsentiert
eines der Bits und wird während
des ersten Schritts 910 hinsichtlich der ersten Schwellwert-Spannung PBE_RD überprüft. Wenn
die Schwellspannung VT geringer ist als die erste Schwellwert-Spannung PBE_RD,
wird das Bit, das durch diese Schwellspannung VT repräsentiert
wird, während
des Zuordnungsschritts 920 der ersten Gruppe zugeordnet. Sonst
wird das Bit während
des Zuordnungsschritts 950 der zweiten Gruppe zugeordnet.
-
Während des
ersten Veränderungsschritts 930 wird
ein PBE-Puls an die Speicherzellen angelegt, die Bits speichern,
die der ersten Gruppe zugeordnet sind. Die Schwellspannung VT, die
der ersten Gruppe zugeordnete Bits repräsentiert, wird während des
Schritts 940 hinsichtlich der zweiten Schwellwert-Spannung EV2 überprüft. Wenn
die Schwellspannung VT größer als
die zweite Schwellwert-Spannung EV2 ist, werden die entsprechenden Bits
während
des Zuordnungsschritts 950 der zweiten Gruppe zugeordnet.
Sonst bleiben die Bits der ersten Gruppe zugeordnet, und ein weiterer PBE-Puls
wird angelegt, um die entsprechenden Schwellspannungen VT während des
Veränderungsschritts 960 zu
erhöhen.
-
Die
Schleife, die den Überprüfungsschritt 940 und
den Veränderungsschritt 960 umfasst,
kann mehrere Male wiederholt werden, wie in 10 angedeutet
und bereits für 8 beschrieben.
-
Das
oben beschriebene Programmieren-vor-dem-Löschen-Verfahren und seine Ausführungsbeispiele
kann in entsprechender Weise verwendet werden, um die Schwellspannungen
von über programmierten
Speicherzellen vor einem erneuten Programmieren zu reduzieren.
-
Das
Zuordnen der Bits, die durch eine Schwellspannung repräsentiert
werden, zu der ersten oder der zweiten Gruppe ist gleichwertig mit
dem Zuordnen der entsprechenden Schwellwerte zu der ersten oder
der zweiten Gruppe.
-
11 zeigt
ein Ausführungsbeispiel
der Speicherschaltung, die ausgebildet ist, das oben beschriebene
Programmieren-vordem-Löschen-Verfahren
auszuführen.
-
Die
Speicheranordnung umfasst ein Speicherzellenfeld 1 mit
einer Vielzahl von Speicherzellen 100, von denen jede zu
einem von einer Vielzahl von Löschsektoren 10 zugeordnet
ist. Jede Speicherzelle 100 ist ausgebildet, zumindest
ein Bit zu speichern. Im Falle von NROM-Speicherzellen ist jede
Speicherzelle ausgebildet, ein erstes und ein zweites Bit zu speichern.
Jedes Bit wird durch eine Schwellspannung VT repräsentiert.
-
Eine
Zugriffseinheit 3 ist an das Speicherzellenfeld 1 gekoppelt.
Die Zugriffseinheit 3 ist ausgebildet, die Bits, die in
den Speicherzellen 100 gespeichert sind, zu programmieren
und zu löschen.
Die Zugriffseinheit ist ferner ausgebildet, Löschpulse bereitzustellen, die
an die Speicherzellen 100 angelegt werden, die zu löschende
Bits speichern. Im Falle von gleichzeitigem Löschen der Speicherzellen 100, die
einem Löschsektor 10 zugeordnet
sind, können die
zu löschenden
Bits programmierte und gelöschte Bits
umfassen. Ferner ist die Zugriffseinheit ausgebildet, Programmierpulse
bereitzustellen, die an die Speicherzellen angelegt werden, die
die zu programmierenden Bits speichern. Hierbei werden die Schwellspannungen
VT, die diese Bits repräsentieren,
erhöht.
Die Zugriffseinheit 3 ist ferner ausgebildet, PBE-Pulse
anzulegen, um die Schwellspannung VT derart zu erhöhen, dass
die Schwellspannung VT näher
an der Lesespannung RD ist oder dass der Zustand des gespeicherten
Bits wechselt.
-
Die
Speichereinheit umfasst ferner eine Überprüfungseinheit 2, die
an das Speicherzellenfeld 1 und an die Zugriffseinheit 3 gekoppelt
ist.
-
Die Überprüfungseinheit 2 ist
ausgebildet, zu überprüfen, ob
die Schwellspannung VT größer als eine
Schwellwert-Spannung ist. Die Schwellwert-Spannung ist variabel,
um hinsichtlich der ersten oder der zweiten Schwellwert-Spannung PBE_RD,
EV2, zu prüfen.
Letztere Schwellwert-Spannung kann veränderbar sein, um mehrere Iterationsschritte,
jeweils überprüfen und
verändern umfassend,
durchzuführen.
-
Die
Zugriffseinheit 3 ist ferner ausgebildet, die Bits nebst
den entsprechenden Speicherzellen zu identifizieren, die durch eine überprüfte Schwellspannung
VT kleiner als eine gegebene erste Schwellwert-Spannung PBE_RD repräsentiert
werden. Die Zugriffseinheit 3 ist ferner ausgebildet, diese
Schwellspannung VT zu verändern.
Darüber
hinaus ist die Zugriffseinheit ausgebildet, zu überprüfen, ob die Bits, die durch
die Schwellspannung VT repräsentiert werden,
während
des vorhergehenden Veränderungsschritts
verändert
worden sind, nunmehr eine Schwellspannung VT haben, die geringer
als eine gegebene zweite Schwellwert-Spannung EV2 ist. Die Zugriffseinheit 3 ist
ferner ausgebildet, diese Schwellspannungen VT zu ändern.
-
Die
Speicheranordnung kann einen Zähler umfassen,
der an die Überprüfungseinheit 2 und
die Zugriffseinheit 3 gekoppelt ist und welcher ausgebildet
ist, die Anzahl der Iterationen an Überprüfungs- und Veränderungsschritten
zu zählen.
-
12 zeigt
eine Schaltungsanordnung gemäß 11 die
darüber
hinaus eine Zuordnungseinheit 4 umfasst, die zwischen die Überprüfungseinheit 2 und
die Zugriffseinheit 3 gekoppelt ist und welche ausgebildet
ist, jedes der Bits zu einer ersten Gruppe zuzuordnen, wenn die
repräsentierende
Schwellspannung VT geringer ist als eine gegebene Schwellwert-Spannung
PBE_RD, EV2 oder sonst einer zweiten Gruppe zuzuordnen.
-
Die
Zugriffseinheit 3 ist ferner ausgebildet, die Bits zu identifizieren,
die der ersten Gruppe zugeordnet sind, beziehungsweise die entsprechenden Speicherzellen,
um die Schwellspannungen VT der ersten Gruppe zu verändern.
-
Das
Zuordnen der Bits, jeweils durch Schwellspannungen repräsentiert,
zu der ersten oder zu der zweiten Gruppe ist gleichwertig mit dem
Zuordnen der entsprechenden Schwellspannung zu der ersten oder der
zweiten Gruppe.
-
Obwohl
die Erfindung und ihre Vorteile detailliert beschrieben worden sind,
sei bemerkt, dass verschiedene Veränderungen, Substitutionen oder
Abänderungen
gemacht werden können
ohne vom erfindungsgemäßen Gedanken
und der Erfindung abzurücken.
-
Ferner
ist der Fokus der Anwendung nicht auf bestimmte Ausführungsbeispiele
des Verfahrens oder der Vorrichtung beschränkt.
-
- 1:
- Speicherzellenfeld
- 2:
- Überprüfungseinheit
- 3:
- Zugriffseinheit
- 4:
- Zuordnungseinheit
- 10:
- Löschsektor
- 20:
- Bitleitung
- 40:
- Wortleitung
- 100:
- Speicherzelle
- 101:
- erstes
Bit
- 102:
- zweites
Bit
- 201:
- erstes
Dotiergebiet
- 202:
- zweites
Dotiergebiet
- 250:
- Substrat
- 251,
252, 253:
- Oxid-Nitrid-Oxid-Schicht
- 254:
- Kanalregion
- 255:
- Zellwanne
- 400:
- Gate
- 51:
- erste
Verteilungskurve
- 50:
- zweite
Verteilungskurve
- 31:
- Löschbereich
- 30:
- Programmierbereich
- 500:
- rechter
Ausläufer
der zweiten Verteilungskurve
- 501:
- linker
Ausläufer
der zweiten Verteilungskurve
- 510:
- rechter
Ausläufer
der ersten Verteilungskurve
- 511:
- linker
Ausläufer
der ersten Verteilungskurve
- 60,
60b:
- erste
Gruppe
- 62,
61a:
- zweite
Gruppe
- VT:
- Schwellspannung
- EV:
- Löschspannung
- PV:
- Programmierspannung
- P1,
P2:
- durchschnittliche
Schwellspannung
- PAEV:
- Leckschwellspannung
- PBE_RD:
- erste
Schwellwert-Spannung
- EV2:
- zweite
Schwellwert-Spannung