-
HINTERGRUND
DER ERFINDUNG
-
1. Gebiet
der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf einen nicht-flüchtigen
Halbleiterspeicher, wie zum Beispiel einen EEPROM (elektrisch löschbaren
programmierbaren Nur-Lese-Speicher), einen Flash-Speicher (gemeinschaftlich
elektrisch löschbarer
EEPROM) etc. und ein Verfahren zum Betreiben derselben, und insbesondere
einen nicht-flüchtigen Halbleiterspeicher,
der in der Lage ist, eine Schreibverifizierung und Löschverifizierung
zu versichern, wenn ein Entscheidungsstrom oder eine Entscheidungsspannung
variiert wird, aufgrund eines Leistungsversorgungsrauschens und
anderen Gründen, und
ein Verfahren zum Betreiben desselben.
-
2. Beschreibung des Stands
der Technik
-
In
den letzten Jahren werden eine Multifunktionsweise und Größenreduzierung
der elektrischen Geräte
beschleunigt, und daher wird eine Verkleinerung der halbleiterintegrierten
Schaltungen dazu entsprechend benötigt. In dem nicht-flüchtigen
Halbleiterspeicher, wie zum Beispiel einem EEPROM, dem Flash-Speicher,
etc., wird nicht nur die Verkleinerung bzw. Miniaturisierung der
Speicherzelle, aber auch die stabile Detektion von kleineren Änderungen
in der Schwellenspannung benötigt.
-
Indessen
wurde auch der Speicher, dessen wesentliches Zellgebiet ohne Schrumpfen
in der Dimension der Speicherzelle reduziert werden kann, und der
auf den Multiebenenbetrieb ansprechen kann, entwickelt. In dem Normalhalbteiterspeicher können nur
zwei Zustände "0" oder "1" in
einer Speicherzelle gespeichert werden. Während in dem Multiebenenspeicher
drei Zustände
oder mehr in einer Speicherzelle gespeichert werden können. In
diesem Fall muss in dem Multiebenenspeicher bzw. Multiniveauspeicher
die Schwellenspannung streng in Ansprechen auf die gespeicherten
Daten gesteuert werden. In Zukunft wird, um auf die höhere Funktion
und Größenreduzierung
des elektronischen Geräts
zu antworten, der Multiebenenspeicher bestimmt verwendet werden.
-
Als
der nicht-flüchtige
Halbleiterspeicher in dem Stand der Technik wird der Speicher mit
schwebendem Gate mit der Dual-Gate-Struktur,
in dem zwei Gate-Elektroden des schwebenden Gates und des Steuer-Gates
gebildet werden, um den dünnen isolierenden
Film dazwischen zu bringen, gewöhnlich verwendet.
Der Speicher mit schwebenden Gate ist in der Patentanmeldungsveröffentlichung
(KOKAI) 2000-174235 beispielsweise dargelegt.
-
Jedoch
werden in den letzten Jahren komplizierte Herstellungsprozesse,
die für
die Dual-Gate-Struktur benötigt
werden, als das Hindernis zur Miniaturisierung deutlich. Aus diesem
Grund wird der Einfach-Gate-Nicht-Flüchtige-Halbleiterspeicher mit einer Gate-Elektrode
mit Interesse verfolgt. In dem Einfach- bzw. Einzel-Gate-Nicht-Flüchtigen-Halbleiterspeicher
wird das Material, das die Ladung darin speichern kann, als der
Gate-isolierende Film verwendet, der zwischen dem Halbleitersubstrat und
der Gate-Elektrode gebildet wird, und dann werden Daten gespeichert
durch Verwenden solch eines Phänomens,
das die Schwellenspannung verändert wird
gemäß einer
Menge an Ladung, die in dem Gate-isolierenden
Film gespeichert ist.
-
Als
einen solchen Einfach-Gate-Nicht-Flüchtigen-Halbleiterspeicher, gibt es den SONOS
(Silizium-Oxid-Nitrid-Oxid-Silizium)-Speicher.
Dieser SONOS-Speicher ist in der Patentanmeldungsveröffentlichung
(KOKAI) 2001-325793 beispielsweise dargelegt.
-
In
dem SONOS-Speicher wird der isolierende Film mit der laminierten
Struktur, in der der Silizium-Nitrid-(SiN)-Film zwischen die Silizium-Oxid-(SiO2)-Filme vertikal gelegt ist, beispielsweise
als der Gate-isolierende Film verwendet. Das Speichern und Löschen der
Daten wird ausgeführt durch
Aufladen/Entladen der Ladung in/von dem Silizium-Nitrid-Film.
-
In
dem SONOS-Speicher ist, da eine Menge an angelagerter Ladung kleiner
ist als der Speicher mit schwebendem Gate bzw. Floating-Gate-Speicher,
ein Betrag der Verschiebung der Schwellenspannung klein. Auch wird
in dem SONOS-Speicher, da eine Schreibeffizienz gering ist, eine
Schreibrate kleiner als bei dem Speicher mit schwebendem Gate. Deshalb
ist es in dem Einfach-Gate-Nicht-Flüchtigen-Halbleiterspeicher,
wie zum Beispiel dem SONOS-Speicher wichtig, eine winzige Änderung
in der Schwellenspannung während
des Schreibens und des Löschens
zu detektieren.
-
Auf
diese Art und Weise ist es wichtig, hinsichtlich der Tendenz des
nicht-flüchtigen
Halbleiterspeichers in den letzten Jahren, eine winzige Änderung
in der Schwellenspannung zu detektieren. Jedoch tritt ein Problem
dadurch auf, dass, falls ein Änderungsbetrag
in der Schwellenspannung klein ist, das Erfüllen oder das Nicht-Erfüllen nicht
präzise
in dem Verifizierungsbetrieb entschieden werden kann, um zu prüfen, ob
oder ob nicht das Schreiben und das Löschen ausreichend ausgeführt wurde.
-
Insbesondere
wird in dem Halbleiterspeicher ein Strom, der als Kriterium dient,
oder ein Strom, der von der Speicherzelle geliefert wird, hinsichtlich
einer zeitabhängigen
Basis durch den Einfluss des externen Rauschens variiert, wie zum
Beispiel das Leistungsversorgungsrauschen und andere. Daher wird in
einigen Fällen
eine Spannung, die einer Fluktuationshöhe des Stroms entspricht, der
durch den Einfluss dieses Rauschens hervorgerufen wird, gleich einem Änderungsbetrag
in der Schwellenspannung. Demnach wird in einigen Fällen die
Speicherzelle, die einmal als erfolgreich durchgegangen bzw. erfüllt bestimmt
wurde, als nicht-erfolgreich durchgegangen bzw. nicht-erfüllt bestimmt
in der nächsten
Verifizierung, und daher muss die Schreibe- oder Löschoperation
bzw. Betrieb (Schleife) noch einmal ausgeführt werden. In diesem Fall
muss, falls es die Speicherzelle ist, bei der in dem zweiten Verifizierungsbetrieb ein
Nicht-Erfüllen
bestimmt wurde, der Schreibe- oder Löschbetrieb, (Schleife) weiter
ausgeführt
werden. Auf diese Art und Weise wird in dem nicht-flüchtigen
Halbleiterspeicher des Stands der Technik die Erfüllt/Nicht-Erfüllt-Entscheidung
unverlässlich, durch
den Einfluss des Leistungsversorgungsrauschens und anderem, und
daher ist es möglich,
dass der Verifizierungsbetrieb viele Male ausgeführt werden sollte.
-
1 zeigt
eine Ansicht, die ein Konzept einer Verifizierung im Stand der Technik
zeigt. Es wird angenommen, dass ein Referenzstrom I nur um ± ΔI variiert
wird. Falls ein Strom Id der Speicherzelle über I + ΔI liegt, wird die Speicherzelle
als nicht-erfüllt
bzw. die Bedingung als nicht erfüllt
bestimmt, unabhängig von
dem Einfluss des Rauschens, und daher wird das Schreiben noch einmal
benötigt.
Falls der Strom Id der Speicherzelle unter I – ΔI ist, wird die Speicherzelle
als erfüllt
bestimmt, unabhängig
von dem Einfluss des Rauschens, und daher wird das zweite Schreiben
nicht benötigt.
Jedoch wird, falls der Strom Id der Speicherzelle in dem Bereich
von I – ΔI < Id < I + ΔI ist, die
Erfüllt/Nicht-Erfüllt-Entscheidung
unzuverlässig
aufgrund des Einflusses des Rauschens. Dadurch wird manchmal die
Zelle, die als erfüllt
in der ersten Verifizierung bestimmt wurde, als nicht-erfüllt in der
nächsten
Verifizierung bestimmt.
-
In
dem tatsächlichen
Speicher, wie in einer konzeptionellen Ansicht von 2,
gibt es drei Entscheidungsniveaus, das heißt, das Schreibe-Entscheidungsniveau,
das gespeicherte-Information-Entscheidungsniveau
bei dem normalen Betrieb und das Lösch-Entscheidungsniveau. Das
Totband bzw. Dead-Band, in dem die Entscheidung unstabil ist (das
durch eine gestrichelte Linie in 2 gekennzeichnete
Band), existiert bei jedem Entscheidungsniveau.
-
3 zeigt
ein Flussdiagramm, das den Schreibe-Verifizierungsbetrieb in dem nicht-flüchtigen
Halbleiterspeicher in dem Stand der Technik zeigt.
-
Zuerst
wird in Schritt S11 ein Nicht-Erfüllt-Count bzw. Zählung initialisiert
(Nicht-Erfüllt-Zählung =
0). Dann wird in Schritt S12 eine Startadresse für einen Adresszähler gesetzt.
In Schritt S13 werden Daten von der Speicherzelle gelesen, dessen
Adresse die Startadresse ist.
-
Dann
geht der Prozess zu Schritt S14, um zu entscheiden, bzw. zu bestimmen,
ob oder ob nicht eine Speicherzelle die Speicherzelle ist, von der
das Datenschreiben verlangt wird. Falls die Speicherzelle die Speicherzelle
ist, von der das Datenschreiben verlangt wird, wird entschieden
durch Vergleichen von Lesedaten mit einem Kriterium, ob oder ob
nicht die Lesedaten nicht-erfüllt
sind. Falls die Speicherzelle die Speicherzelle ist, bei der das
Datenschreiben benötigt
wird, und die Lesedaten nicht-erfüllt (Ja) sind, geht der Prozess über zu Schritt
S15. Im Gegensatz dazu, falls die Speicherzelle die Speicherzelle
ist, bei der das Datenschreiben nicht benötigt wird, oder falls die Lesedaten
erfüllt
(Nein) sind, geht der Prozess über
zu Schritt S17.
-
In
Schritt S15 wird ein Schreibepuls an die Speicherzelle mit der Adresse
angelegt. Dann geht der Prozess über
zu Schritt S16, in dem die Zahl einer Nicht-Erfüllt-Zählung erhöht wird um 1. Dann geht der
Prozess über
zu Schritt S17.
-
In
Schritt S17 wird entschieden, ob oder ob nicht die Adresse, die
in dem Adresszähler
gesetzt ist, die Endadresse ist. Falls die Adresse nicht die Endadresse
ist, geht der Prozess über
zu Schritt S18, um die nächste
Adresse in dem Adresszähler
zu setzen. Dann geht der Prozess zurück zu Schritt S13, die Daten
werden von der Speicherzelle gelesen, die die gesetzte Adresse aufweist.
-
Auf
diese Art und Weise werden die Daten sequenziell bzw. hintereinanderfolgend
von der Speicherzelle mit der Startadresse bis zu der Speicherzelle
mit der Endadresse gelesen, um zu bestimmen, ob oder ob nicht die
Speicherzelle die Speicherzelle ist, von der das Datenschreiben
verlangt wird, und dann wird entschieden, ob oder ob nicht die gelesenen
Daten erfüllt
sind, falls die Speicherzelle die Speicherzelle ist, von der das
Datenschreiben verlangt wird. Dann wird eine Ladungsmenge, die in
der Speicherzelle gespeichert ist, die als nicht-erfüllt bestimmt wurde,
verändert,
durch Anlegen eines Schreibepulses an die Speicherzelle.
-
Dann
geht der Prozess von Schritt S17 zu Schritt S19, um zu entscheiden,
ob oder ob nicht die Zahl der Nicht-Erfüllt-Zählung
0 ist. Falls die Zahl der Nicht-Erfüllt-Zählung nicht 0 ist, geht der
Prozess zurück
zu Schritt S11 und dann werden die obigen Prozesse wiederholt. Falls
in Schritt S19 entschieden wird, dass die Zahl der Nicht-Erfüllt-Zählung 0
ist, wird die Verifizierung beendet.
-
4 zeigt
ein Flussdiagramm, das den Lösch-Verifizierungsbetrieb
in dem nicht-flüchtigen Halbleiterspeicher
in dem Stand der Technik zeigt.
-
Zuerst
wird in Schritt S21 die Nicht-Erfüllt-Zählung initialisiert (Nicht-Erfüllt-Zählung =
0). Dann wird in Schritt S22 die Startadresse in dem Adresszähler gesetzt.
In Schritt S23 werden die Daten von der Speicherzelle gelesen, dessen
Adresse die Startadresse ist.
-
Dann
geht der Prozess zu Schritt S24, wobei die Lesedaten verglichen
werden mit dem Kriterium, um zu entscheiden, ob oder ob nicht die
Lesedaten nicht-erfüllt
sind. Falls die Lesedaten nicht-erfüllt sind bzw. darstellen (Ja),
geht der Prozess zu Schritt S25. Falls die Lesedaten erfüllt (Nein)
sind, geht der Schritt zu S26.
-
In
Schritt S25 wird die Zahl der Nicht-Erfüllt-Zählung um 1 erhöht. Dann
geht der Prozess zu Schritt S26.
-
In
Schritt S26 wird bestimmt, ob oder ob nicht die Adresse, die in
dem Adresszähler
gesetzt wird, die Endadresse ist. Falls die gesetzte Adresse nicht die
Endadresse ist, geht der Prozess zu Schritt S27, wobei die nächste Adresse
in dem Adresszähler
gesetzt wird. Dann geht der Prozess zurück zu dem Schritt S23, wobei
die Daten von der Speicherzelle gelesen werden, die die gesetzte
Adresse aufweist.
-
Auf
diese Art und Weise werden die Daten hintereinander von der Speicherzelle
mit der Startadresse bis zu der Speicherzelle mit der Endadresse gelesen,
um zu bestimmen, ob oder ob nicht die gelesenen Daten nicht-erfüllt sind.
Die Zahl der Nicht-Erfüllt-Zählung wird
jedes Mal erhöht,
wenn nicht-erfüllt detektiert
wird.
-
Dann
geht der Prozess von Schritt S26 zu Schritt S28, um zu entscheiden,
ob oder ob nicht die Zahl der Nicht-Erfüllt-Zählung
0 ist. Falls die Zahl der Nicht-Erfüllt-Zählung 0 ist, geht der Prozess
zu Schritt S29, in dem ein Löschpuls
gemeinsam auf alle Speicherzellen angelegt wird, die die Startadresse bis
zur Endadresse aufweisen. Dann geht der Prozess zurück zu Schritt
S21, und die obigen Prozesse werden wiederholt. Zusätzlich gibt
es in der Lösch-Verifizierung,
wie durch einen gestrichelten Linienpfeil in 4 gezeigt,
auch den Fall, dass der Prozess direkt zu Schritt S29 geht, falls
das nicht-erfüllt
in Schritt S24 detektiert wird.
-
Wie
in 3 und 4 gezeigt, wird in dem nicht-flüchtigen
Halbleiterspeicher in dem Stand der Technik, falls nicht-erfüllt zu der
Zeit einer Verifizierung auftritt, die Anwendung des Schreibepulses oder
des Löschpulses
wiederholt, bis nicht-erfüllt
eliminiert werden kann. Wie oben beschrieben, ist es unmöglich zu
sagen, dass, da manchmal die Speicherzelle, die als erfüllt bestimmt
wurde, aufgrund des Einflusses des Rauschens etc. als nicht-erfüllt in der
nächsten
Verifizierung bestimmt wird, dass der nicht-flüchtige Halbleiterspeicher in
dem Stand der Technik ausreichend verlässlich ist. Auch wird die Prozessschleife
(Prozesse in Schritt S11 bis S19 oder Schritt S21 bis Schritt S29)
viele Male wiederholt, bis nicht-erfüllt eliminiert werden kann.
Daher braucht es viel Zeit, bis die Verifizierung beendet ist.
-
In
US-A-5 712 451 wird eine nicht-flüchtige Halbleiterspeichervorrichtung
und ein Verfahren zum Schreiben von Daten in die Halbleiterspeichervorrichtung
offenbart, die den Schwellenwert der Speicherzellen begrenzen kann,
auf die Daten geschrieben wurden, oder von der Daten gelöscht wurden,
so dass der Wert in einem vorbestimmten Bereich enthalten ist, ohne
exzessives Schreiben durch Ausführen
eines Verifizierungsbetriebs.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Es
ist eine Ausgabe der vorliegenden Erfindung, einen nicht-flüchtigen
Halbleiterspeicher bereitzustellen, der in der Lage ist, Erfüllt/Nicht-Erfüllt-Entscheidungen
präzise
auszuführen,
wenn ein Entscheidungsstrom oder eine Entscheidungsspannung variiert
werden, aufgrund des Einflusses von Leistungsversorgungsrauschen
und andere Rauschen, und ein Verfahren zum Betreiben desselben.
-
Ein
nicht-flüchtiger
Halbleiterspeicher der vorliegenden Erfindung umfasst eine nicht-flüchtige Speicherzelle
zum Speichern einer Ladung in Ansprechen auf Daten; und einen Speicherzellenantriebsteil
bzw. Ansteuerteil zum Ansteuern der Speicherzelle, wobei der Speicherzellenansteuerteil
ausgebildet ist zum Ausführen
eines ersten Entscheidungsprozesses zum Entscheiden über ein
Erfüllen/Nicht-Erfüllen der
Daten, die von der Speicherzelle unter einer ersten Entscheidungsbedingung
gelesen werden, und dann Anlegen eines Signals an die Speicherzelle,
das als nicht-erfüllend
bestimmt wird, um eine Ladungsmenge zu ändern, die in der Speicherzelle
gespeichert ist, und der Speicherzellenansteuerteil ist ausgebildet
zum Ausführen,
nach dem ersten Entscheidungsprozess eines zweiten Entscheidungsprozesses
zum Entscheiden über
das Erfüllen/Nicht-Erfüllen der
Daten, die von der Speicherzelle unter einer zweiten Entscheidungsbedingung gelesen
werden, die weniger streng als die erste Entscheidungsbedingung
ist, wobei die erste und zweite Entscheidungsbedingungen die in
der Zelle gespeicherte Ladungsmenge betreffen.
-
Ein
Betriebsverfahren eines nicht-flüchtigen Halbleiterspeichers
der vorliegenden Erfindung zum Ausführen eines Datenschreibens
oder Datenlöschens
in einer nicht-flüchtigen
Speicherzelle, während
einem Verifizieren von Daten der nicht-flüchtigen Speicherzelle, umfasst
einen ersten Entscheidungsprozesse eines Lesens der Daten von der Speicherzelle
unter einer ersten Entscheidungsbedingung zum Entscheiden über ein
Erfüllen/Nicht-Erfüllen, und
Anlegen eines Signals an die Speicherzelle, um eine Ladungsmenge
zu ändern,
die in der Speicherzelle gespeichert ist, falls die Daten als nicht-erfüllend bestimmt
werden; und einen zweiten Entscheidungsprozess, ausgeführt nach
dem ersten Entscheidungsprozesses eines Lesens der Daten von der
Speicherzelle unter einer zweiten Entscheidungsbedingung, die weniger
streng ist als die erste Entscheidungsbedingung, zum Bestimmen über das Erfüllen/Nicht-Erfüllen; wobei
Prozesse von der ersten Entscheidungsbedingung wiederholt werden, wenn
die Daten als nicht-erfüllend
in dem zweiten Entscheidungsprozess bestimmt werden, und der erste
und zweite Entscheidungsprozess die in der Zelle gespeicherte Ladungsmenge
betrifft.
-
In
dem Stand der Technik werden sowohl die Erfüllt/Nicht-Erfüllt-Entscheidung
der Speicherzelle und die Entscheidung, ob oder nicht das Schreiben verlangt
wird, unter der gleichen Bedingung ausgeführt. Deshalb wird, wenn die
Spannung variiert wird, aufgrund des Leistungsversorgungsrauschens,
etc., die Erfüllt/Nicht-Erfüllt-Entscheidung
unzuverlässig. Daher
wird solch ein Problem, wie oben beschrieben, hervorgerufen, dass
die Verarbeitungsschleife viele Male wiederholt werden muss.
-
Aus
diesem Grund werden in der vorliegenden Erfindung die Erfüllt/Nicht-Erfüllt-Entscheidung der
Speicherzelle und die Entscheidung, ob oder nicht das Schreiben
oder das Löschen
benötigt
wird, unter verschiedenen Bedingungen ausgeführt. Beispielsweise wird beim
Datenschreiben zuerst der erste Entscheidungsprozess des Entscheidens,
ob oder nicht das Schreiben benötigt
wird, unter der relativ strengen ersten Entscheidungsbedingung ausgeführt, und
dann wird der Schreibeprozess angewandt auf die Speicherzelle, von
der das Schreiben verlangt wird, um eine Ladungsmenge, die in der
Speicherzelle gespeichert ist, zu ändern. Dadurch werden die Daten
verstärkt
durch viel mehr Injizieren von Ladung auf die Speicherzelle, die
solch eine Möglichkeit
aufweist, dass ihre Erfüllt/Nicht-Erfüllt-Entscheidung
unzuverlässig
wird.
-
Dann
wird der zweite Entscheidungsprozess eines Entscheidens über Erfüllt/Nicht-Erfüllt der
Speicherzellen unter der zweiten Entscheidungsbedingung ausgeführt. In
dem ersten Entscheidungsprozess werden die Daten durch viel mehr
Injizieren der Ladung auf die Speicherzelle mit der Möglichkeit
verstärkt,
so dass die Erfüllt/Nicht-Erfüllt-Entscheidung unzuverlässig wird.
Auch in dem zweiten Entscheidungsprozess wird Erfüllt/Nicht-Erfüllt unter
der zweiten Entscheidungsbedingung bestimmt, die weniger streng
als die erste Entscheidungsbedingung ist. Dadurch wird eine Möglichkeit,
dass die Daten der Speicherzelle zu nicht-erfüllt werden, in dem zweiten
Entscheidungsprozess sehr gering.
-
Auf
diese Art und Weise wird, weil die Erfüllt/Nicht-Erfüllt-Entscheidung der
Speicherzelle und die Entscheidung, ob oder ob nicht das Schreiben oder
das Löschen
benötigt
wird, unter den verschiedenen Bedingungen ausgeführt werden, die Erfüllt/Nicht-Erfüllt-Entscheidung
präzise,
unabhängig von
dem Rauschen, etc. Daher kann eine Ausführungszeit des Datenverifizierungsprozesses
im Gegensatz zum Stand der Technik extrem reduziert werden.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 zeigt
eine Ansicht (#1), die ein Konzept der Verifizierung im Stand der
Technik zeigt;
-
2 zeigt
eine Ansicht (#2), die das Konzept des Verifizierens in dem Stand
der Technik zeigt;
-
3 zeigt
ein Flussdiagramm, das einen Schreibe-Verifizierungsbetrieb in einem nicht-flüchtigen
Halbleiterspeicher in dem Stand der Technik zeigt;
-
4 zeigt
ein Flussdiagramm, das einen Löschverifizierungsbetrieb
in dem nicht-flüchtigen Halbleiterspeicher
in dem Stand der Technik zeigt;
-
5 zeigt
eine Draufsicht, die eine Speicherzelle zeigt, die einen Teil eines
SONOS-nicht-flüchtigen
Halbleiterspeichers gemäß einer
ersten Ausführungsform
der vorliegenden Erfindung zeigt;
-
6A zeigt
eine Teilansicht, die entlang einer I-I-Linie in 5 aufgenommen
ist, 6B zeigt eine Teilansicht, die entlang einer II-II-Linie
in 5 aufgenommen ist, und 6C zeigt
eine Teilansicht, die entlang einer III-III-Linie in 5 aufgenommen ist;
-
7 zeigt
ein Blockdiagramm, das eine Schaltungskonfiguration des SONOS-nicht-flüchtigen
Halbleiterspeichers zeigt;
-
8 zeigt
ein Schaltungsdiagramm, das eine Konfiguration einer Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung
zeigt, die in einem Leseverstärkungsteil
des nicht-flüchtigen
Halbleiterspeichers gemäß der ersten
Ausführungsform
bereitgestellt wird;
-
9 zeigt
eine Ansicht (#1), die ein Konzept einer Verifizierung in der ersten
Ausführungsform
zeigt;
-
10 zeigt
eine Ansicht (#2), die das Konzept einer Verifizierung in der ersten
Ausführungsform
zeigt;
-
11 zeigt
ein Flussdiagramm, das einen Schreibeverifizierungsbetrieb in dem
nicht-flüchtigen Halbleiterspeicher
gemäß der ersten
Ausführungsform
zeigt;
-
12 zeigt
ein Flussdiagramm, das einen Löschverifizierungsbetrieb
in dem nicht-flüchtigen Halbleiterspeicher
gemäß der ersten
Ausführungsform
zeigt;
-
13 zeigt
ein Schaltungsdiagramm, das eine Konfiguration einer Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung
eines nicht-flüchtigen
Halbleiterspeichers gemäß einer
zweiten Ausführungsform
der vorliegenden Erfindung zeigt;
-
14 zeigt
ein Schaltungsdiagramm, das eine Konfiguration einer Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung
eines nicht-flüchtigen
Halbleiterspeichers gemäß einer
dritten Ausführungsform
der vorliegenden Erfindung zeigt;
-
15 zeigt
eine konzeptionelle Ansicht, die eine Verteilung von Schwellenspannungen
in einem Multiniveauspeicher und Entscheidungsniveaus entsprechend
der entsprechenden Werte zeigt;
-
16A und 16B stellen
ein Flussdiagramm dar, das einen Schreibeverifizierungsbetrieb in
einem nicht-flüchtigen
Halbleiterspeicher gemäß einer
vierten Ausführungsform
der vorliegenden Erfindung zeigt;
-
17 zeigt
eine Teilansicht, die ein Beispiel eines Speichers mit schwebendem
Gate (NOR-Gate-Typ) zeigt;
-
18 zeigt
ein Blockdiagramm, das eine Schaltungskonfiguration eines Speichers
mit schwebendem Gate (Flash-Speicher) zeigt; und
-
19 zeigt
eine Ansicht, die eine Übersicht eines
Inspektionsverfahrens des nicht-flüchtigen Halbleiterspeichers
zeigt.
-
BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
Die
Ausführungsformen
der vorliegenden Erfindung werden mit Bezug auf die begleitenden Zeichnungen
hier im Folgenden erklärt.
-
(Erste Ausführungsform)
-
5 zeigt
eine Draufsicht, die eine Speicherzelle zeigt, die ein Teil eines
SONOS-Nicht-Flüchtigen-Halbleiterspeichers
gemäß einer
ersten Ausführungsform
der vorliegenden Erfindung bildet. 6A zeigt
eine Teilansicht entlang einer I-I-Linie in 5, 6B zeigt
eine Teilansicht entlang einer II-II-Linie in 5 und 6C zeigt eine
Teilansicht entlang einer III-III-Linie in 5.
-
Ein
lokaler isolierender Film 11, der einen aktiven Bereich
definiert, ist auf einer Fläche
eines Silizium-Substrats eines p-Typs 10 gebildet. Dieser
lokale isolierende Film 11 erstreckt sich in die Richtung, die
senkrecht zu dem Blatt von 6A ist.
Ein Laminiertes-Gate-Isolierender-Film bzw. Schicht-Gate-Isolierfilm 15 ist
auf dem aktiven Bereich des Silizium-Substrats 10 gebildet.
Dieser Schicht-Gate-Isolierfilm 15 weist
eine dreilagige Struktur auf, in der ein Silizium-Oxid-Film 12,
ein Silizium-Nitrid-Film 13 und ein Silizium-Oxid-Film 14 nacheinander
von der Substrat-10-Seite laminiert sind. Die Ladung, die den Daten
entspricht, ist in dem Silizium-Nitrid-Film 13 gespeichert.
-
Eine
Bit-Leitung 1, gebildet aus einem Fremdkörper- bzw.
Störstellen-Bereich,
der durch Einfügen
As (Arsen) in dem Silizium-Substrat 10 gebildet wird, ist
unter dem lokalen isolierenden Film 11 angeordnet. Eine
Wortleitung 2, die sich in die laterale Richtung in 6A erstreckt,
ist auf dem lokalen isolierenden Film 11 und dem Schicht-Gate-Isolierfilm 15 gebildet.
Diese Wortleitung 2 weist eine laminierte Struktur bzw.
Schichtstruktur auf, die aus einer Polysilizium-Schicht und einer Wolfram-Silizide-(WSi)-Schicht
beispielsweise besteht.
-
Die
Bit-Leitung 1 und die Wortleitung 2 sind gegenseitig
bei ihren überschneidenden
Teilen durch den lokalen isolierenden Film 11 isoliert.
Ein FET (Speicherzelle) 3 mit einem Paar von Bit-Leitungen 1 als
die Quelle bzw. Source und den Drain und die Wortleitung als die
Gate-Elektrode wird an der Position gebildet, an der sich ein zwischen
einem Paar von benachbarten Bit-Leitungen befindliches Teil, sich
mit einer Wortleitung 2 überschneidet.
-
Ein
Kanalstopperbereich 4, der durch Einfügen der Störstelle des p-Typs in das Silizium-Substrat 10 gebildet
wird, ist zwischen Kanalbereichen von zwei FETs 3 angeordnet,
die zueinander benachbart sind, in der Richtung, entlang der sich
die Bit-Leitung 1 erstreckt.
-
7 zeigt
ein Blockdiagramm, das eine Schaltungskonfiguration des SONOS-Nicht-Flüchtigen-Halbleiterspeichers
zeigt. Die Source und der Drain des FET 3, bestehend aus
einer Zelle, sind mit benachbarten Bit-Leitungen 1 entsprechend
verbunden, und die Gate-Elektrode ist mit der Wortleitung 2 verbunden.
-
Eine
Vielzahl von Speicherzellen wird in einer Matrix angeordnet, um
einen Speicherzellenarray bzw. eine Speicherzellenanordnung darzustellen.
Die eindeutigen Adressen werden den Speicherzellen entsprechend
zugeordnet, und eine Speicherzelle wird durch die Adressinformation
identifiziert. Der Speicherzellenarray ist in eine Vielzahl von
Blöcken aufgeteilt,
und jede der Speicherzellen gehört
zu einem Block.
-
Die
Bit-Leitungen 1 werden mit einem Leseverstärkerteil 26 verbunden,
und die Wortleitungen 2 sind mit einem Wortleitungstreiber
bzw. Wortleitungs-Driver 27 verbunden. Eine Steuerschaltung 20 steuert
das Leseverstärkerteil 26 und
den Wortleitungstreiber 27. Hier werden die Bit-Leitungen 1 als BL1,
BL2, BL3, BL4, ... aufeinanderfolgend von links in der 7 dargestellt,
und die Wortleitungen 2 werden als WL1, WL2, WL3, WL4,
... aufeinanderfolgend von oben in 7 dargestellt.
-
Die
Steuerschaltung 20 weist den Adresszähler (nicht gezeigt) auf. Falls
die Bit-Leitung und die Wortleitung, die mit der Speicherzelle verbunden sind,
die durch die Adresse identifiziert wird, die in dem Adresszähler gesetzt
wird, ausgewählt
werden, kann auf die gewünschte
Speicherzelle zugegriffen werden.
-
Die
Steuerschaltung 20 wird gesteuert durch eine externe CPU 30.
Ein RAM 31 ist mit der CPU 30 verbunden. Der RAM 31 speichert
temporär
die Daten, die einzuschreiben sind.
-
(Entscheidungsschaltung)
-
8 zeigt
ein Schaltungsdiagramm, das eine Konfiguration einer Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung
zeigt, die in dem Leseverstärkerteil 26 des
nicht-flüchtigen
Halbleiterspeichers gemäß der ersten
Ausführungsform
gezeigt ist.
-
Eine
Referenzstromerzeugungsschaltung 40 erzeugt einen vorbestimmten
Referenzstrom Iref in Ansprechen auf ein Signal, das von der Steuerschaltung 20 geliefert
wird. Ein Widerstand 43, dessen Widerstandswert R0 ist,
ist verbunden zwischen der Referenzstromerzeugerschaltung 40 und
der Erde. Falls der Referenzstrom Iref von der Referenzstromerzeugerschaltung 40 an
den Widerstand 43 zugeführt
wird, wird eine Referenzspannung (R0xIref) an einem Verbindungspunkt
N1 des Widerstands 43 an der Referenzstromerzeugerschaltung-40-Seite
erzeugt.
-
Auswahl-Gates
bzw. Selektor-Gates (MOSFETs) 41, 42 sind auch
verbunden mit den Bit-Leitungen der Source-Seite bzw. der Drain-Seite
der Speicherzelle. Diese Selektor-Gates 41, 42 werden An/Aus-geschaltet
in Ansprechen auf das Signal von der Steuerschaltung 20.
Ein Widerstand 44, dessen Widerstandswert R0 ist, ist zwischen
dem Selektor-Gate 42 und der Erde verbunden.
-
Falls
die Daten, die in die Speicherzelle 3 eingeschrieben werden,
zu verifizieren sind, wird beispielsweise eine vorbestimmte Spannung
Vwr dem Gate (Wortleitung) der Speicherzelle 3 von einer Wortleitungssteuerschaltung
(nicht gezeigt) in dem Leseverstärkerteil 26 zugeführt, und
eine vorbestimmte Spannung Vbr wird dem Drain der Speicherzelle 3 von
einer Bit-Leitungssteuerschaltung (nicht gezeigt) in dem Leseverstärkerteil 26 über das
Auswahl-Gate 41 zugeführt.
Daher fließt,
ein Strom (Zellenstrom) Icore, der einer Ladungsmenge (Daten), gespeichert
in dem Gate-Isolierfilm, entspricht, durch die Speicherzelle 3 und
dann wird eine Zellenspannung (R0xIcore) an einem Verbindungspunkt
N2 des Widerstands 44 auf der Selektor-Gate-42-Seite erzeugt.
-
Ein
Leseverstärker 45 vergleicht
die Zellenspannung mit einer Referenzspannung, um über das Erfüllt-Sein/Nicht-Erfüllt-Sein
zu entscheiden. Dann wird "1" ausgegeben, falls
die Daten als nicht-erfüllt bestimmt
werden, wobei "0" ausgegeben wird,
falls die Daten als erfüllt
bestimmt werden.
-
Ein
Betrieb des obigen SONOS-Nicht-Flüchtigen-Halbleiterspeichers wird hier unten
erklärt.
Der Betrieb, der im Folgenden erklärt wird, wird durch die Steuerschaltung 20 in
Ansprechen auf die von der CPU 30 gelieferte Instruktion
ausgeführt.
-
(Datenschreibebetrieb)
-
Ein
Datenschreibebetrieb wird ausgeführt durch
Anlegen einer Schreibspannung Vdp (= ungefähr 6 V) an die Bit-Leitung 1,
die mit dem Drain der ausgewählten
Speicherzelle verbunden ist, durch Anlegen von 0 V an die Bit-Leitung 1,
die mit der Source verbunden ist, und durch Anlegen einer Spannung
Vwp (= ungefähr
10 V) an die Wortleitung 2. Zu dieser Zeit werden die Bit-Leitungen 1 und
die Wortleitungen 2 der nicht-ausgewählten Zellen schwebend gehalten,
um das Schreiben von Daten zu verhindern.
-
Wenn
der obige Datenschreibebetrieb ausgeführt wird, wird ein heißes Elektron
in der Umgebung des Drain in der ausgewählten Speicherzelle erzeugt.
Das heiße
Elektron kommt über
das Hindernis des Silizium-Oxid-Films 12 und wird in dem
Silizium-Nitrid-Film 13 gefangen.
Daher wird eine Schwellenspannung der ausgewählten Speicherzelle (FET 3)
in die positive Richtung verschoben. Dieser Zustand bezeichnet den
Zustand, dass die Daten eingeschrieben sind, das heißt "0".
-
(Datenlöschbetrieb)
-
Ein
Datenlöschbetrieb
wird kollektiv auf alle Speicherzellen in dem ausgewählten Block
angewandt. Der Datenlöschbetrieb
wird ausgeführt
durch Anlegen einer Spannung Vwe (= ungefähr – 6 V) an alle Wortleitungen 2 des
ausgewählten
Blocks und Anlegen einer Spannung Vbe (= ungefähr 6 V) an alle Bit-Leitungen 1.
Daher wird das Elektron, das in dem Silizium-Nitrid-Film 13 gefangen war,
entladen in die Substrat-10-Seite,
und die Schwellenspannung der Speicherzelle (FET 3) wird
in die negative Richtung verschoben. Dieser Zustand bezeichnet den
Zustand, dass die Daten gelöscht
sind, das heißt "1".
-
(Datenlesebetrieb)
-
Ein
Datenlesebetrieb wird ausgeführt
durch Anlegen einer Spannung Vwr (= ungefähr 4 V) an die Wortleitung 2,
die mit der ausgewählten
Speicherzelle verbunden ist, durch Anlegen einer Spannung Vbr (=
ungefähr
1,4 V) an die Bit-Leitung 1, die mit dem Drain verbunden
ist, und Anlegen von 0 V an die Bit-Leitung 1, die mit
der Source verbunden ist.
-
In
diesem Fall wird eine Beziehung zwischen dem Drain und der Source
in dem Datenlesebetrieb invertiert von einer Beziehung zwischen
dem Drain und der Source in dem Datenschreibbetrieb. Dies kommt
daher, dass das Elektron in der Umgebung der Diffusionsschicht gefangen
ist, die als Drain in dem Datenschreibbetrieb verwendet wird, und
daher, dass ein Schwellenwert der Speicherzelle (FET 3) weitgehend
in dem Datenlesebetrieb verschoben wird, durch Invertieren des Drains
und der Source. Als Ergebnis des Datenlesebetriebs wird der Strom, der
durch die ausgewählte
Speicherzelle fließt,
hinsichtlich der Amplitude mit einem Entscheidungsstrom verglichen,
und "0" oder "1" wird bestimmt gemäß dem Vergleichsergebnis.
-
(Verifizierung)
-
9 zeigt
eine Ansicht, die ein Konzept einer Verifizierung in der ersten
Ausführungsform
zeigt.
-
In
der vorliegenden Ausführungsform
werden zwei Arten von Referenzströmen (Entscheidungsbedingungen)
eines Referenzstroms 1 und eines Referenzstroms 2 bereitgestellt.
Der Referenzstrom 1 wird verwendet, um zu entscheiden,
ob oder ob nicht das Schreiben benötigt wird, und der Referenzstrom 2 wird
verwendet, um über
das Erfüllt-Sein/Nicht-Erfüllt-Sein
zu entscheiden. Der Referenzstrom 1 wird unter den Bedingungen
gesetzt, die strenger sind als die des Referenzstroms 2.
-
In
diesem Fall werden der Referenzstrom 1 und der Referenzstrom 2 variiert
aufgrund des Einflusses des Rauschens, etc. Hier werden Variationsbereiche
der Referenzströme 1, 2 (bezeichnet
durch ein gestricheltes Linienband in 9) entsprechend ein
Dead-Band bzw. Tot-Band bzw. Unempfindlichkeitsbereich genannt.
Es sollte bemerkt werden, dass dieses Tot-Band des Referenzstroms 1 und
das Tot-Band des
Referenzstroms 2 so gesetzt werden, dass sie nicht miteinander überlappen.
-
In
dem tatsächlichen
Speicher, wie in der konzeptionellen Ansicht von 10 gezeigt,
werden zwei Arten von Entscheidungsbedingungen in der Schreibeverifizierung
bzw. der Löschverifizierung verwendet.
Dies bedeutet, dass über
Erfüllt/Nicht-Erfüllt entschieden
wird durch die erste und zweite Schreibe-Entscheidungsbedingungen
zu der Zeit einer Schreibeverifizierung, und über das Erfüllt-Sein/Nicht-Erfüllt-Sein
wird auch entschieden durch die erste und zweite Lösch-Entscheidungsbedingungen
zu der Zeit einer Löschverifizierung.
-
(Schreibeverifizierung)
-
11 zeigt
ein Flussdiagramm, das einen Schreibeverifizierungsbetrieb in dem
nicht-flüchtigen Halbleiterspeicher
gemäß der ersten
Ausführungsform
zeigt. In der Schreibeverifizierung wird das Lesen vor dem Schreibebetrieb
ausgeführt,
um zu verifizieren, ob oder ob nicht das Schreiben ausreichend ausgeführt wird.
Falls die Speicherzelle die Speicherzelle ist, bei der das Datenschreiben
benötigt
wird, und die Lesedaten nicht-erfüllt sind, wird der Schreibebetrieb
angewandt auf die Speicherzelle.
-
Zuerst
wird in Schritt S31 die Nicht-Erfüllt-Zählung initialisiert (Nicht-Erfüllt-Zählung =
0). Dann wird in Schritt S32 die Startadresse in dem Adresszähler gesetzt.
Dann werden in Schritt S33 die Daten von der Speicherzelle gelesen,
die die Startadresse aufweist. Zu dieser Zeit werden die Daten durch
Setzen einer angelegten Spannung Vwr an der Wortleitung auf 5,2
V gelesen, sowie durch Setzen einer angelegten Spannung Vbr an die
Bit-Leitung auf der Drain-Seite auf 1,4 V (erste Schreibe-Entscheidungsbedingungen).
-
Dann
geht der Prozess zu Schritt S34, um zu entscheiden, ob oder ob nicht
die Speicherzelle die Speicherzelle ist, bei der das Datenschreiben
benötigt
wird. Falls die Speicherzelle die Speicherzelle ist, bei der das
Datenschreiben benötigt
wird, wird entschieden, ob oder ob nicht die gelesenen Daten ein Nicht-Erfüllt darstellen.
Falls die Speicherzelle die Speicherzelle ist, bei der das Datenschreiben
benötigt
wird, und die gelesenen Daten Nicht-Erfüllt darstellen (Ja) (falls
eine Ausgabe des Leseverstärkers 45 "1" ist), geht der Prozess zu Schritt S35.
Im Gegensatz dazu, falls die Speicherzelle nicht die Speicherzelle
ist, bei der das Datenschreiben benötigt wird, oder die gelesenen
Daten erfüllt
darstellen (Nein) (falls die Ausgabe des Leseverstärkers 45 "0" ist), geht der Prozess zu Schritt S36.
-
In
Schritt S35 wird ein Schreibepuls an die Speicherzelle mit der betreffenden
Adresse angelegt. Dann geht der Prozess zu Schritt S36.
-
In
Schritt S36 wird bestimmt, ob oder ob nicht die Adresse, die in
dem Adresszähler
gesetzt wird, die Endadresse ist. Falls die Adresse nicht die Endadresse
ist, geht der Prozess zu Schritt S37, wobei die nächste Adresse
in dem Adresszähler
gesetzt wird. Dann geht der Prozess zurück zu Schritt S33, wenn die
Daten von der Speicherzelle gelesen werden, die diese gesetzte Adresse
aufweist.
-
Auf
diese Art und Weise werden die Daten aufeinanderfolgend von der
Speicherzelle mit der Startadresse bis zu der Speicherzelle mit
der Endadresse gelesen. Dann wird eine Ladungsmenge, gespeichert
in der Speicherzelle, die als die Speicherzelle, bei der das Datenschreiben
benötigt
wird, bestimmt wird, sowie auch das Datenlesen, das als nicht-erfüllt bestimmt
wird, geändert
durch Anlegen eines Schreibepulses an die Speicherzelle.
-
Dann
geht der Prozess von Schritt S36 zu Schritt S38, um die Startadresse
noch einmal einzustellen. Dann geht der Prozess zu Schritt S39,
um die Daten von der Speicherzelle zu lesen, die die eingestellte
bzw. gesetzte Adresse aufweist. Zu dieser Zeit wird die an die Wortleitung
angelegte Spannung Vwr auf 5,0 V gesetzt und die an die Bit-Leitung
auf der Drain-Seite angelegte Spannung Vbr wird auf 1,4 V gesetzt
(zweite Schreibe-Entscheidungsbedingungen).
-
Dann
geht der Schritt zu S40, um zu entscheiden, ob oder ob nicht die
Speicherzelle die Speicherzelle ist, bei der das Datenschreiben
benötigt
wird. Dann wird, falls entschieden wird, dass die Speicherzelle
ist, bei der das Datenschreiben benötigt wird, entschieden, ob
oder ob nicht die gelesenen Daten nicht-erfüllt darstellen bzw. nicht-erfüllend sind.
Falls die Speicherzelle die Speicherzelle ist, bei der das Datenschreiben
benötigt
wird, und die gelesenen Daten nicht-erfüllt
darstellen (Ja) (falls die Ausgabe des Leseverstärkers 45 "1" ist), geht der Prozess zu Schritt S41.
Im Gegensatz dazu, geht, falls die Speicherzelle nicht die Speicherzelle
ist, bei der das Datenschreiben benötigt wird, oder die gelesenen
Daten erfüllt
(Nein) darstellen (falls die Ausgabe des Leseverstärkers 45 "0" ist), der Prozess zu Schritt S42.
-
In
Schritt S41 wird die Zahl der Nicht-Erfüllt-Zählung erhöht um 1. Dann geht der Prozess
zu Schritt S42.
-
In
Schritt S42 wird entschieden, ob oder ob nicht die Adresse, die
in dem Adresszähler
gesetzt wird, die Endadresse ist. Falls die Adresse nicht die Endadresse
ist, geht der Prozess zu Schritt S43, wobei die nächste Adresse
in dem Adresszähler
gesetzt wird. Dann kehrt der Prozess zurück zu Schritt S39, wobei die
Daten von der Speicherzelle gelesen werden, die die gesetzte Adresse
aufweist.
-
Auf
diese Art und Weise werden die Daten aufeinanderfolgend von der
Speicherzelle mit der Startadresse bis zu der Speicherzelle mit
der Endadresse gelesen, um zu entscheiden, ob oder ob nicht das
Datenschreiben benötigt
wird, und die Daten nicht-erfüllt
darstellen. Dann wird, falls entschieden wird, dass die Daten nicht-erfüllt darstellen,
die Zahl der Nicht-Erfüllt-Zählung erhöht.
-
Dann
geht der Prozess zu Schritt S44 von Schritt S42, um zu entscheiden,
ob oder ob nicht die Zahl der Nicht-Erfüllt-Zählung
0 ist. Falls die Zahl der Nicht-Erfüllt-Zählung nicht 0 ist, kehrt der
Prozess zurück
zu Schritt S31 und die obigen Prozesse werden wiederholt. Falls
die Zahl der Nicht-Erfüllt-Zählung 0 ist, wird die Schreibeverifizierung
beendet.
-
Auf
diese Art werden in der vorliegenden Ausführungsform die Prozesse von
Schritt S31 bis Schritt S37, um zu entscheiden, ob oder ob nicht
die gelesenen Daten nicht-erfüllt
darstellen, unter der ersten Schreibe-Entscheidungsbedingung, und
dann Anlegen des Schreibepulses, falls die gelesenen Daten nicht-erfüllt darstellen
(bezeichnet als "Schleife "1" im Folgenden) ausgeführt, und
auch die Prozesse von Schritt S38 zu Schritt S44 werden, um zu entscheiden,
ob oder ob nicht die gelesenen Daten nicht-erfüllt darstellen unter den zweiten
Schreibe-Entscheidungsbedingungen
und dann Erhöhen der
Zahl der Nicht-Erfüllt-Zählung, falls
die gelesenen Daten nicht-erfüllt
darstellen (im Folgenden als eine "Schleife 2" bezeichnet), ausgeführt.
-
Es
kann auch ein Fall betrachtet werden, in dem der Referenzstrom und
der Zellenstrom auf einer zeitabhängigen Grundlage verändert werden durch
den Einfluss des Rauschens etc. Jedoch wird in der ersten Ausführungsform
in der Schleife 1 unter den Entscheidungsbedingungen entschieden,
die strenger sind als die Schreibe-Entscheidungsbedingungen in der
Schleife 2, ob oder ob nicht die gelesenen Daten nicht-erfüllt darstellen.
Das bedeutet, dass die Spannung, angelegt an die Wortleitung, auf
5,2 V in der Schleife 1 gesetzt wird, wobei die Spannung, angelegt
an die Wortleitung, auf 5,0 V in der Schleife 2 gesetzt
wird. Es wird angenommen, dass eine Ladungsmenge, die in der Speicherzelle
gespeichert ist, zueinander gleich ist, und daher der Strom, der durch
die Speicherzelle (Zellenstrom) in der Schleife 2 fließt, reduziert
ist kleiner als der in der Schleife 1. Dadurch wird sogar
die Speicherzelle, die in dem Tot-Band in der Schleife 1 enthalten
ist, sicher als nicht-erfüllt
in der Schleife 2 entschieden.
-
Auf
diese Art und Weise können
in der vorliegenden Ausführungsform
die Erfüllt/Nicht-Erfüllt-Entscheidungen
präziser
ausgeführt
werden zur Zeit der Schreibeverifizierung.
-
Daher
kann die Verlässlichkeit
der Daten verbessert werden und auch die Zeit, die für die Schreibeverifizierung
benötigt
wird, kann verringert werden.
-
In
diesem Fall kann, in der vorliegenden Ausführungsform, wie durch den gestrichelten
Pfeil in 11 gezeigt, der Prozess zu Schritt
S31 gehen, falls in Schritt S40 entschieden wird, dass die Daten nicht-erfüllt darstellen.
-
(Löschverifizierung)
-
12 zeigt
ein Flussdiagramm, das einen Löschverifizierungsbetrieb
in dem nicht-flüchtigen Halbleiterspeicher
gemäß der ersten
Ausführungsform
zeigt. In der Löschverifizierung
wird der Lesebetrieb aufeinanderfolgend auf alle Speicherzellen
in dem Block angewandt. Dann wird, falls mindestens eine Speicherzelle,
die als nicht-erfüllt
bestimmt wird, detektiert wird, der kollektive Löschbetrieb auf die Speicherzellen
in dem gesamten Block angewandt.
-
Zuerst
wird in Schritt S51 die Nicht-Erfüllt-Zählung initialisiert (Nicht-Erfüllt-Zählung =
0). Dann wird in Schritt S52 die Startadresse in dem Adresszähler gesetzt.
Dann werden in Schritt S53 die Daten von der Speicherzelle gelesen,
die die Startadresse aufweist. Zu dieser Zeit wird das Datenlesen durch
Setzen der Spannung Vwr angelegt an die Wortleitung auf 2,3 V ausgeführt, sowie
durch Setzen der Spannung Vbr, angelegt an die Bit-Leitung an der Drain-Seite,
auf 1,4 V (erste Lösch-Entscheidungsbedingungen).
-
Dann
geht der Prozess zu Schritt S54, wobei bestimmt wird, ob oder ob
nicht die gelesenen Daten nicht-erfüllt darstellen. Falls die gelesenen
Daten nicht-erfüllt
darstellen (Ja), (falls die Ausgabe des Leseverstärkers 45 "1" ist), geht der Prozess zu Schritt S55.
Im Gegensatz dazu geht, falls die gelesenen Daten erfüllt (Nein)
darstellen (falls die Ausgabe des Leseverstärkers 45 "0" ist), der Prozess zu Schritt S56.
-
In
Schritt S55 wird die Zahl der Nicht-Erfüllt-Zählung um 1 erhöht. Dann
geht der Prozess zu Schritt S56.
-
In
Schritt S56 wird entschieden, ob oder ob nicht die Adresse, die
in dem Adresszähler
gesetzt wird, die Endadresse ist. Falls die Adresse nicht die Endadresse
ist, geht der Prozess zu Schritt S57, wobei die nächste Adresse
in dem Adresszähler
gesetzt wird. Dann kehrt der Prozess zurück zu Schritt S53, wobei die
Daten von der Speicherzelle gelesen werden, die die gesetzte Adresse
aufweist.
-
Auf
diese Art und Weise werden die Daten aufeinanderfolgend von der
Speicherzelle mit der Startadresse bis zu der Speicherzelle mit
der Endadresse gelesen, um zu entscheiden, ob oder ob nicht die
Daten nicht-erfüllt
darstellen. Dann wird die Zahl der Nicht-Erfüllt-Zählung jedes Mal erhöht, wenn nicht-erfüllt detektiert
wird.
-
Dann
geht der Prozess von Schritt S56 zu Schritt S58, um zu entscheiden,
ob oder ob nicht die Zahl der Nicht-Erfüllt-Zählung
0 ist. Falls die Zahl der Nicht-Erfüllt-Zählung 0 ist, geht der Prozess
von Schritt S58 zu S60. In Schritt S58 geht, falls die Zahl der
Nicht-Erfüllt-Zählung nicht
0 ist, der Prozess von Schritt S59, wobei ein Löschpuls an die Speicherzellen
mit der Startadresse bis zu der Endadresse kollektiv bzw. gemeinsam
angelegt wird. Dann geht der Prozess zu Schritt S60.
-
In
Schritt S60 wird die Zahl der Nicht-Erfüllt-Zählung noch einmal initialisiert
(Nicht-Erfüllt-Zählung =
0). Dann wird die Startadresse in Schritt S61 gesetzt, und die Daten
werden von der Speicherzelle mit der Startadresse in Schritt S62
gelesen. Zu dieser Zeit wird die Spannung Vwr, angelegt an die Wortleitung
auf 2,5 V gesetzt, und die Spannung Vbr, angelegt an die Bitleitung
an der Drain-Seite, wird auf 1,4 V gesetzt (zweite Lösch-Entscheidungsbedingung).
-
Dann
geht der Prozess zu Schritt S63, um zu entscheiden, ob oder ob nicht
die gelesenen Daten nicht-erfüllt
darstellen.
-
Dann
geht, falls entschieden wird, dass die gelesenen Daten nicht-erfüllt darstellen
(Ja) (falls die Ausgabe des Leseverstärkers 45 "1" ist), der Prozess zu Schritt S64. Im
Gegensatz dazu geht, falls die gelesenen Daten erfüllt (Nein)
darstellen (falls die Ausgabe des Leseverstärkers 45 "0" ist), der Prozess zu Schritt S65.
-
In
Schritt S64 wird die Zahl der Nicht-Erfüllt-Zählung um 1 erhöht. Dann
geht der Prozess zu Schritt S65.
-
In
Schritt S65 wird entschieden, ob oder ob nicht die Adresse, die
in dem Adresszähler
gesetzt wird, die Endadresse ist. Falls die Adresse nicht die Endadresse
ist, geht der Prozess zu Schritt S66, wobei die nächste Adresse
in dem Adresszähler
gesetzt wird. Dann kehrt der Prozess zurück zu Schritt S62, wobei die
Daten von der Speicherzelle gelesen werden, die die gesetzte Adresse
aufweist.
-
Auf
diese Art und Weise werden die Daten aufeinanderfolgend von der
Speicherzelle mit der Startadresse bis zu der Speicherzelle mit
der Endadresse gelesen, um zu entscheiden, ob oder ob nicht die
Daten nicht-erfüllt
darstellen. Dann wird die Zahl der Nicht-Erfüllt-Zählung jedes Mal erhöht, wenn nicht-erfüllt detektiert
wird.
-
Dann
geht der Prozess von Schritt S65 zu Schritt S67, um zu entscheiden,
ob oder ob nicht die Zahl der Nicht-Erfüllt-Zählung
0 ist. Falls die Zahl der Nicht-Erfüllt-Zählung nicht 0 ist, kehrt der
Prozess zurück
zu Schritt S51, und die obigen Prozesse werden wiederholt. In Schritt
S65 wird, falls die Zahl der Nicht-Erfüllt-Zählung 0 ist, die Löschverifizierung
beendet.
-
Auf
diese Art werden in der vorliegenden Ausführungsform die Prozesse von
Schritt S51 bis Schritt S58, um zu entscheiden, ob oder ob nicht
die Daten, die von der Speicherzelle gelesen werden, nicht-erfüllt darstellen
unter den ersten Lösch-Entscheidungsbedingungen
und dann Anlegen des Löschpulses,
falls die gelesenen Daten nicht-erfüllt darstellen (als eine Schleife "1" hier im Folgenden bezeichnet) ausgeführt, und
die Prozesse von Schritt S60 bis Schritt S67, werden auch ausgeführt, um
zu entscheiden, ob oder ob nicht die von der Speicherzelle gelesenen
Daten nicht-erfüllt
darstellen unter den zweiten Lösch-Entscheidungsbedingungen
und dann Erhöhen
der Zahl der Nicht-Erfüllt-Zählung, falls
die gelesenen Daten nicht-erfüllt
darstellen (im Folgenden als eine "Schleife 2" bezeichnet).
-
Es
kann auch ein Fall betrachtet werden, in dem der Referenzstrom und
der Zellenstrom geändert
werden gemäß einer
zeitabhängigen
Basis durch den Einfluss des Rauschens etc. Jedoch wird in der vorliegenden
Ausführungsform
in der Schleife 1 unter den Entscheidungsbedingungen entschieden bzw.
bestimmt, dass Strengere als die Lösch-Entscheidungsbedingungen in der Schleife 2 vorhanden sind,
ob oder ob nicht die gelesenen Daten nicht-erfüllt darstellen. Dies bedeutet,
dass die Spannung, angelegt an die Wortleitung, auf 2,3 V in der
Schleife 1 gesetzt wird, wobei die Spannung, angelegt an
die Wortleitung, auf 2,5 V in der Schleife 2 gesetzt wird. Daher
wird angenommen, dass eine Ladungsmenge, die in der Speicherzelle
gespeichert ist, zueinander gleich ist, wobei der Strom, der durch
die Speicherzelle (Zellenstrom) in der Schleife 2 fließt, erhöht wird,
größer als
der in der Schleife 1. Als Ergebnis wird sogar die Speicherzelle,
die in dem Tot-Band in der Schleife 1 enthalten ist, sicher
bestimmt als nicht-erfüllte
in der Schleife 2.
-
Auf
diese Weise können
in der vorliegenden Ausführungsform
die Erfüllt/Nicht-Erfüllt-Bedingungen
präziser
zur Zeit der Löschverifizierung
ausgeführt
werden. Daher kann die Verlässlichkeit
der Daten verbessert werden und eine Zeit, die für die Löschverifizierung benötigt wird,
kann verringert werden.
-
In
diesem Fall kann, wie durch einen gestrichelten Pfeil in 12 in
Schritt S54 gezeigt, falls entschieden wird, dass die gelesenen
Daten nicht-erfüllt
darstellen, der Prozess zu Schritt S59 gehen. In Schritt S63 kann,
falls entschieden wird, dass die gelesenen Daten nicht-erfüllt darstellen,
der Prozess auch zu Schritt S51 gehen.
-
In
der obigen Schreibverifizierung und der obigen Löschverifizierung wird, falls
der Referenzstrom auf 10 μA
gesetzt wird, und die Schwellenspannung als die Spannung der Wortleitung (WL-Spannung)
definiert wird, wenn der Zellenstrom 10 μA erreicht, die Schwellenspannung
der Speicherzelle, in die die Daten geschrieben werden, 5 V oder mehr
und die Schwellenspannung der Speicherzelle, von der die Daten gelöscht werden,
2,5 V oder weniger. Daher wird eine Differenz (Fenster) der Schwellenspannungen
2,5 V, die erhalten wird, wenn die Daten "0" sind,
und die Daten "1" sind.
-
Demgemäss können in
dem Datenlesebetrieb, falls der Strom Icore, der durch die Speicherzelle
fließt,
hinsichtlich des Betrags mit dem Referenzstrom Iref verglichen wird
durch Setzen der Spannung Vwr, angelegt an die Wortleitung auf 4,0
V und Setzen der Spannung Vbr, angelegt an die Bit-Leitung auf der
Drain-Seite auf 1,4 V, die Daten "0" oder die
Daten "1" präzise gelesen
werden.
-
(Zweite Ausführungsform)
-
13 zeigt
ein Schaltungsdiagramm, das eine Konfiguration einer Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung
eines nicht-flüchtigen
Halbleiterspeichers gemäß einer
zweiten Ausführungsform
der vorliegenden Erfindung zeigt. In diesem Fall befindet sich ein
unterschiedlicher Punkt des nichtflüchtigen Halbleiterspeichers
gemäß der zweiten
Ausführungsform
im Gegensatz zu der ersten Ausführungsform
in einem Unterschied in der Konfigurierung der Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung.
Da andere Konfigurationen zu dieser in der ersten Ausführungsform ähnlich sind,
werden Erklärungen
von redundanten Teilen hier weggelassen werden. In 13 werden
auch die gleichen Symbole an den gleichen Teilen, wie denen in 8 angebracht.
-
In
der zweiten Ausführungsform
werden eine Datenlesereferenzzelle, zwei Schreibeverifizierungsreferenzzellen
und zwei Löschverifizierungsreferenzzellen
zusätzlich
zu der Speicherzelle 3 bereitgestellt. Diese Referenzzellen
weisen grundlegend die gleiche Struktur auf, wie die Speicherzelle 3.
Jedoch wird eine Schwellenspannung der Datenlesereferenzzelle auf
4,0 V gesetzt, eine Schwellenspannung einer ersten Schreibeverifizierungsreferenzzelle
wird auf 5,2 V gesetzt, eine Schwellenspannung einer zweiten Schreibeverifizierungsreferenzzelle
wird auf 5,0 V gesetzt, eine Schwellenspannung einer ersten Löschverifizierungsreferenzzelle
wird auf 2,3 V gesetzt und eine Schwellenspannung einer zweiten Löschverifizierungsreferenzzelle
wird auf 2,5 V gesetzt. In 13 sind
nur die erste Schreibeverifizierungsreferenzzelle 51 und
die zweite Schreibeverifizierungsreferenzzelle 52 dieser
Referenzzellen gezeigt.
-
Selektor-Gates
(MOSFETs) 53, 54 sind mit Bit-Leitungen verbunden,
die sich bei der Source-Seite bzw. der Drain-Seite der ersten Schreibeverifizierungsreferenzzelle 51 befinden.
Diese Selektor-Gates 53, 54 werden an-/abgeschaltet,
in Ansprechen auf das von der Steuerschaltung zugeführte Signal.
Ein Widerstand 57, dessen Widerstandswert R0 ist, ist zwischen
Selektor-Gate 54 und der Erde verbunden. Ein Verbindungspunkt
N3 zwischen dem Widerstand 57 und dem Selektor-Gate 54 ist
mit einem Eingangsanschluss des Leseverstärkers 45 verbunden.
-
Die
Selektor-Gates (MOSFETs) 55, 56 sind auch mit
den Bit-Leitungen
verbunden, die sich bei der Source-Seite bzw. der Drain-Seite der
zweiten Schreibeverifizierungsreferenzzelle 52 befinden.
Diese Selektor-Gates 55, 56 werden an-/abgeschaltet
in Ansprechen auf das von der Steuerschaltung zugeführte Signal.
Ein Widerstand 58, dessen Widerstandswert R0 ist, ist zwischen
dem Selektor-Gate 56 und der Erde verbunden. Ein Verbindungspunkt
N4 zwischen dem Widerstand 58 und dem Selektor-Gate 56 ist
mit einem Eingangsanschluss des Leseverstärkers 45 verbunden.
-
Ähnlich zu
diesem sind die Selektor-Gates mit den Bit-Leitungen verbunden, die sich bei der Source-Seite
bzw. der Drain-Seite der ersten und zweiten Löschverifizierungsreferenzzelle
befinden. Der Widerstand, dessen Widerstandswert 0 ist, ist zwischen
einem Selektor-Gate und der Erde verbunden. Dann wird ein Verbindungspunkt
zwischen dem Widerstand und dem Selektor-Gate mit einem Eingangsanschluss
des Leseverstärkers 45 verbunden.
-
(Schreibeverifizierung)
-
Ein
zur Zeit einer Schreibeverifizierung ausgeführter Betrieb wird hier im
Folgenden erklärt.
In der vorliegenden Ausführungsform
wird der zu der Zeit einer Schreibeverifizierung ausgeführte Betrieb auch
mit Bezug auf das Flussdiagramm in 11 hier
im Folgenden erklärt.
-
Zuerst
wird in Schritt S31 die Nicht-Erfüllt-Zählung initialisiert (Nicht-Erfüllt-Zählung =
0). Dann wird in Schritt S32 die Startadresse in dem Adresszähler gesetzt.
Dann werden in Schritt S33 die Daten von der Speicherzelle gelesen,
die die Startadresse aufweist.
-
Zu
dieser Zeit wird die Lesespannung Vwr = 4,0 V simultan an die Wortleitung
zugeführt,
die mit den Gates der Speicherzelle 3 und der ersten Schreibeverifizierungsreferenzzelle 51 verbunden
ist, und die Spannung Vbr = 1,4 V wird simultan den Bit-Leitungen
an der Drain-Seite zugeführt
(erste Schreibe-Entscheidungsbedingungen).
Der Strom fließt nicht
durch die zweite Schreibeverifizierungsreferenzzelle 52,
die Datenlesereferenzzelle und die erste und zweite Löschverifizierungsreferenzzellen durch
Abschalten der Selektor-Gates, die mit diesen Zellen verbunden sind.
-
Dann
geht der Prozess zu Schritt S34, um zu entscheiden, ob oder ob nicht
die Speicherzelle die Speicherzelle ist, bei der das Datenschreiben
benötigt
wird. Falls die Speicherzelle die Speicherzelle ist, bei der das
Datenschreiben benötigt
wird, wird entschieden, ob oder ob nicht die gelesenen Daten nicht-erfüllt darstellen.
Falls die Speicherzelle die Speicherzelle ist, bei der das Datenschreiben
benötigt
wird, und die gelesenen Daten nicht-erfüllt (Ja) darstellen, geht der
Prozess zu Schritt S35. Im Gegensatz dazu geht, falls die Speicherzelle
nicht die Speicherzelle ist, bei der das Datenschreiben benötigt wird,
oder die gelesenen Daten erfüllt
(Nein) darstellen, der Prozess zu Schritt S36.
-
Falls
die Speicherzelle die Speicherzelle ist, bei das Datenschreiben
benötigt
wird, werden die Daten als nicht-erfüllend bestimmt,
wenn die Schwellenspannung geringer ist als die Schwellenspannung (5,2
V) der Referenzzelle 51.
-
In
Schritt S35 wird ein Schreibepuls an die Speicherzelle mit der betreffenden
Adresse angelegt. Dann geht der Prozess zu Schritt S36.
-
In
Schritt S36 wird entschieden, ob oder ob nicht die Adresse, die
in dem Adresszähler
gesetzt wird, die Endadresse ist. Falls die Adresse nicht die Endadresse
ist, geht der Prozess zu Schritt S37, wobei die nächste Adresse
in dem Adresszähler
gesetzt wird. Dann geht der Prozess zurück zu Schritt S33, wobei die
Daten von der Speicherzelle gelesen werden, die die gesetzte Adresse
aufweist.
-
Auf
diese Art und Weise werden die Daten aufeinanderfolgend von der
Speicherzelle mit der Startadresse bis zu der Speicherzelle mit
der Endadresse gelesen. Dann wird eine in der Speicherzelle gespeicherte
Ladungsmenge, die als die Speicherzelle bestimmt wird, bei der Datenschreiben
benötigt wird,
und auch das Datenlesen dieser als nicht-erfüllend bestimmt wird, durch
Anlegen eines Schreibepulses an die Speicherzelle geändert.
-
Dann
geht der Prozess von Schritt S36 zu Schritt S38, um die Startadresse
noch einmal zu setzen. Dann geht der Prozess zu Schritt S39, um
die Daten von der Speicherzelle zu lesen, die die gesetzte Adresse
aufweist.
-
Zu
dieser Zeit wird die Lesespannung Vwr = 4,0 V simultan an die Wortleitung
zugeführt,
die mit den Gates der Speicherzelle 3 und der zweiten Schreibeverifizierungsreferenzzelle 52 verbunden ist,
und die Spannung Vbr = 1,4 V wird simultan bzw. gleichzeitig den
Bit-Leitungen an der Drain-Seite zugeführt (zweite Schreibe-Entscheidungsbedingungen).
Der Strom fließt
auch nicht durch die erste Schreibeverifizierungsreferenzzelle 51,
die Datenlesereferenzzelle und die ersten und zweite Löschverifizierungsreferenzzellen
durch Abschalten der Selektor-Gates, die mit diesen Zellen verbunden
sind.
-
Dann
geht der Prozess zu Schritt S40, um zu entscheiden, ob oder ob nicht
die Speicherzelle die Speicherzelle ist, bei der das Datenschreiben
benötigt
wird. Dann wird, falls entschieden wird, dass die Speicherzelle
die Speicherzelle ist, bei der das Datenschreiben benötigt wird,
entschieden, ob oder ob nicht die gelesenen Daten nicht-erfüllt darstellen. Falls
die Speicherzelle die Speicherzelle ist, bei der das Datenschreiben
benötigt
wird, und die gelesenen Daten nicht-erfüllt
(Ja) darstellen (falls die Ausgabe des Leseverstärkers 45 "1" ist), geht der Prozess zu Schritt S41.
Im Gegensatz dazu geht, falls die Speicherzelle nicht die Speicherzelle
ist, bei der das Datenschreiben benötigt wird, oder die gelesenen
Daten erfüllt
darstellen (Nein) (falls die Ausgabe des Leseverstärkers 45 "0" ist), der Prozess zu Schritt S42.
-
Falls
die Speicherzelle die Speicherzelle ist, bei der das Datenschreiben
benötigt
wird, werden die Daten als nicht-erfüllend bestimmt,
wenn die Schwellenspannung höher
ist als die Schwellenspannung (5,0 V) der Referenzzelle 52.
-
In
Schritt S41 wird die Zahl der Nicht-Erfüllt-Zählung um 1 erhöht. Dann
geht der Prozess zu Schritt S42.
-
In
Schritt S42 wird entschieden, ob oder ob nicht die Adresse, die
in dem Adresszähler
gesetzt wird, die Endadresse ist. Falls die Adresse nicht die Endadresse
ist, geht der Prozess zu Schritt S43, wobei die nächste Adresse
in dem Adresszähler gesetzt wird.
Dann kehrt der Prozess zurück
zu Schritt S39, wobei die Daten von der Speicherzelle gelesen werden,
die die gesetzte Adresse aufweist.
-
Auf
diese Art und Weise werden die Daten aufeinanderfolgend von der
Speicherzelle mit der Startadresse bis zu der Speicherzelle mit
der Endadresse gelesen, um zu entscheiden, ob oder ob nicht das
Datenschreiben benötigt
wird, und die Daten nicht-erfüllt
darstellen. Dann wird, falls entschieden wird, dass die Daten nicht-erfüllend sind
bzw. nicht-erfüllt
darstellen, die Zahl der Nicht-Erfüllt-Zählung erhöht.
-
Dann
geht der Prozess zu Schritt S44 von Schritt S42, um zu entscheiden,
ob oder ob nicht die Zahl der Nicht-Erfüllt-Zählung
0 ist. Falls die Zahl der Nicht-Erfüllt-Zählung nicht 0 ist, kehrt der
Prozess zurück
zu Schritt S31, und dann werden die obigen Prozesse wiederholt.
Falls die Zahl der Nicht-Erfüllt-Zählung 0
ist, endet die Schreibeverifizierung.
-
Auf
diese Art wird in der vorliegenden Ausführungsform in der Schleife 1 durch
Vergleichen des Stroms Icore der durch die Speicherzelle 3 fließt, mit dem
Strom Iref 1, der durch die erste Schreibeverifizierungsreferenzzelle 51 fließt, deren
Schwellenspannung höher
ist, bestimmt, ob oder ob nicht die Daten nicht-erfüllt darstellen,
und dann wird der Schreibepuls and die Speicherzelle angelegt, falls die
Daten als nicht-erfüllend bestimmt
werden. Im Gegensatz dazu wird, in der Schleife 2 entschieden durch
Vergleichen des Stroms Icore der durch die Speicherzelle 3 fließt, mit
dem Strom Iref 2, der durch die zweite Schreibeverifizierungsreferenzzelle 52 fließt, dessen
Schwellenwert niedriger ist, ob oder ob nicht die Daten nicht-erfüllt darstellen.
Als Ergebnis wird sogar die Speicherzelle, die in dem Tot-Band in der
Schleife 1 enthalten ist, sicher als die erfüllende in
der Schleife 2 bestimmt.
-
(Löschverifizierung)
-
Ein
zu der Zeit einer Löschverifizierung
ausgeführter
Betrieb wird hier im Folgenden erklärt. In der vorliegenden Ausführungsform
wird der Betrieb, der zu der Zeit einer Löschverifizierung ausgeführt wird,
mit Bezug auf das Flussdiagramm in 12 hier
im Folgenden auch erklärt.
-
Zuerst
wird in Schritt S51 die Nicht-Erfüllt-Zählung initialisiert (Nicht-Erfüllt-Zählung =
0). Dann wird in Schritt S52 die Startadresse in dem Adresszähler gesetzt.
Dann werden die Daten in Schritt S53 von der Speicherzelle gelesen,
die die Startadresse aufweist. Zu dieser Zeit wird die Lesespannung
Vwr = 4,0 V simultan der Wortleitung zugeführt, die mit dem Gate der Speicherzelle 3 und
der ersten Löschverifizierungsreferenzzelle
verbunden ist, und die Spannung Vbr = 1,4 V wird simultan den Bit-Leitungen
an der Drain-Seite (erste Lösch-Entscheidungsbedingungen)
zugeführt.
Der Strom fließt nicht
durch die zweite Löschverifizierungsreferenzzelle
und die erste und zweite Schreibeverifizierungsreferenzzellen durch
Abschalten der Selektor-Gates, die mit diesen Zellen verbunden sind.
-
Dann
geht der Prozess zu Schritt S54, wobei entschieden wird, ob oder
ob nicht die gelesenen Daten nicht-erfüllt darstellen. In dem Fall,
dass die Schwellenspannung der Speicherzelle höher ist, als die Schwellenspannung
(2,3 V) der ersten Löschverifizierungsreferenzzelle,
wird entschieden, dass die gelesenen Daten nicht-erfüllt darstellen.
Falls die geleseen Daten nicht-erfüllt darstellen (Ja), geht der Prozess
zu Schritt S55. Im Gegensatz dazu, geht, falls die gelesenen Daten
erfüllt
(Nein) darstellen, der Prozess zu Schritt S56.
-
In
Schritt S55 wird die Zahl der Nicht-Erfüllt-Zählung um 1 erhöht. Dann
geht der Prozess zu Schritt S56.
-
In
Schritt S56 wird bestimmt, ob oder ob nicht die Adresse, die in
dem Adresszähler
gesetzt wird, die Endadresse ist. Falls die Adresse nicht die Endadresse
ist, geht der Prozess zu Schritt S57, wobei die nächste Adresse
in dem Adresszähler
gesetzt wird. Dann kehrt der Prozess zurück zu Schritt S53, wobei die
Daten von der Speicherzelle gelesen werden, die die gesetzte Adresse
aufweist.
-
Dann
geht der Prozess von Schritt S56 zu Schritt S58, wobei bestimmt
wird, ob oder ob nicht die Zahl der Nicht-Erfüllt-Zählung
0 ist. Falls die Zahl der Nicht-Erfüllt-Zählung 0 ist, geht der Prozess
zu S60. In Schritt S58 geht, falls die Zahl der Nicht-Erfüllt-Zählung nicht
0 ist, der Prozess zu Schritt S59. Dann wird ein Löschpuls
kollektiv bzw. gemeinschaftlich an die Speicherzelle mit der Startadresse
bis zu der Speicherzelle mit der Endadresse angelegt. Dann geht
der Prozess zu Schritt S60.
-
In
Schritt S60 wird die Zahl der Nicht-Erfüllt-Zählung wieder initialisiert
(Nicht-Erfüllt-Zählung =
0). Dann wird die Startadresse in Schritt S61 gesetzt, und die Daten
werden von der Speicherzelle mit der Startadresse in Schritt S62
gelesen.
-
Zu
dieser Zeit wird die Lesespannung Vwr = 4,0 V simultan der Wortleitung
zugeführt,
die mit den Gates der Speicherzelle 3 und der zweiten Löschverifizierungsreferenzzelle
verbunden ist, und die Spannung Vbr = 1,4 V wird simultan den Bit-Leitungen an der
Drain-Seite zugeführt
(zweite Lösch-Entscheidungsbedingungen).
Der Strom fließt
nicht durch die erste Löschverifizierungsreferenzzelle,
die Datenlesereferenzzelle und die erste und zweite Datenschreibeverifizierungsreferenzzelle
durch Abschalten der Selektor-Gates, die mit diesen Zellen verbunden
sind.
-
Dann
geht der Prozess zu Schritt S63, um zu entscheiden, ob oder ob nicht
die gelesenen Daten nicht-erfüllt
darstellen. Im Fall, dass die Schwellenspannung der Speicherzelle
geringer ist, als die Schwellenspannung (2,5 V) der zweiten Löschverifizierungsreferenzzelle,
wird entschieden, dass die gelesenen Daten erfüllt darstellen. Dann geht,
falls entschieden wird, dass die gelesenen Daten nicht-erfüllt (Ja)
darstellen, der Prozess zu Schritt S64. Im Gegensatz dazu, geht,
falls die gelesenen Daten erfüllt darstellen
(Nein), der Prozess zu Schritt S65.
-
In
Schritt S64 wird die Zahl der Nicht-Erfüllt-Zählung um 1 erhöht. Dann
geht der Prozess zu Schritt S65.
-
In
Schritt S65 wird entschieden, ob oder ob nicht die Adresse, die
in dem Adresszähler
gesetzt wird, die Endadresse ist. Falls die Adresse nicht die Endadresse
ist, geht der Prozess zu Schritt S66, wobei die nächste Adresse
in dem Adresszähler
gesetzt wird. Dann kehrt der Prozess zurück zu Schritt S62, wobei die
Daten von der Speicherzelle gelesen werden, die die gesetzte Adresse
aufweist.
-
Dann
geht der Prozess von Schritt S65 zu Schritt S67, um zu entscheiden,
ob oder ob nicht die Zahl der Nicht-Erfüllt-Zählung
0 ist. Falls die Zahl der Nicht-Erfüllt-Zählung nicht 0 ist, kehrt der
Prozess zurück
zu Schritt S51, und die obigen Prozesse werden wiederholt. In Schritt
S65, wird, falls die Zahl der Nicht-Erfüllt-Zählung 0 ist, die Löschverifizierung
beendet.
-
Auf
diese Art wird in der zweiten Ausführungsform in der Schleife 1 der
Strom, der durch die Speicherzelle 3 fließt, mit
dem Strom, der durch die erste Löschverifizierungsreferenzzelle
fließt,
dessen Schwellenspannung gering ist, verglichen, um zu entscheiden,
ob oder ob nicht die Daten nicht-erfüllt darstellen. Dann wird,
falls entschieden wird, dass die Daten nicht-erfüllt darstellen, der Löschpuls
an die Speicherzelle angelegt. Im Gegensatz dazu wird, in der Schleife 2,
der Strom, der durch die Speicherzelle 3 fließt, mit
dem Strom, der durch die zweite Löschverifizierungsreferenzzelle
fließt,
dessen Schwellenspannung hoch ist, verglichen, um zu entscheiden,
ob oder ob nicht die Daten nicht-erfüllt darstellen. Als Ergebnis
kann sogar die Speicherzelle, die in dem Tot-Band in der Schleife 1 enthalten
ist, sicher als die erfüllende
in der Schleife 2 bestimmt werden.
-
(Dritte Ausführungsform)
-
14 zeigt
ein Schaltungsdiagramm, das eine Konfiguration einer Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung
eines nicht-flüchtigen
Halbleiterspeichers gemäß einer
dritten Ausführungsform
der vorliegenden Erfindung zeigt. In diesem Fall befindet sich ein
Unterschiedspunkt des nicht-flüchtigen
Halbleiterspeichers gemäß der dritten
Ausführungsform im
Gegensatz zu der ersten Ausführungsform
in einem Unterschied in der Konfiguration der Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung.
Da andere Konfigurationen ähnlich
zu dieser in der ersten Ausführungsform
sind, werden Erklärungen
von redundanten Teilen hier weggelassen. In 14 werden auch
gleiche Symbole den gleichen Teilen, wie diesen in 8,
beigefügt.
-
In
der obigen zweiten Ausführungsform
werden zwei Referenzzellen für
die Schreibverifizierung bzw. die Löschverifizierung benötigt. Aus
diesem Grund liegt ein Nachteil darin vor, dass es schwierig wird,
die Schwellenspannung in entsprechenden Referenzzellen zu setzen.
In der dritten Ausführungsform
ist die Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung
aufgebaut durch eine Schreibeverifizierungsreferenzzelle und eine
Löschverifizierungsreferenzzelle.
Die Schreibeverifizierungsreferenzzelle wird hier erklärt.
-
Selektor-Gates
(MOSFETs) 62, 63 sind mit den Bit-Leitungen verbunden,
die sich an der Source-Seite bzw. der Drain-Seite einer Referenzzelle 61 befinden.
Diese Selektor-Gates 62, 63 werden an-/abgeschaltet
in Ansprechen auf das Signal, das von der Steuerschaltung zugeführt wird.
Ein Widerstand 64, dessen Widerstandswert R0 ist, ist zwischen
dem Selektor-Gate 63 und der Erde verbunden.
-
In
dem Fall der Schreibeverifizierungsreferenzzelle wird die Schwellenspannung
auf 5,0 V gesetzt. In dem Fall der Löschverifizierungsreferenzzelle
wird die Schwellenspannung auf 2,3 V gesetzt.
-
Eine
Niveau-Umschaltschaltung 66 besteht aus zwei Schaltern 67a, 67b.
Ein Schalter 67a ist zwischen der Wortleitung-Steuerschaltung und
einem Niveau-Steuertransistor 65 verbunden, und der andere
Schalter 67b ist zwischen der Wortleitung-Steuerschaltung
und einem Gate der Referenzzelle 61 verbunden.
-
Ein
Drain und ein Gate des Niveau- bzw. Pegelsteuertransistors 65 ist
mit dem Schalter 67a verbunden, und eine Source desselben
ist mit einem Gate der Referenzzelle 61 verbunden.
-
Eine
Schwellenspannung Vth0 dieses Niveau-Steuertransistors 65 wird
auf 0,2 V angepasst. Ein Transistor der gleichen Leitungsart, wie
die Speicherzelle 3, wird auch als Transistor 65 verwendet. Beispielsweise
wird der Niveau-Steuertransistor 65 auch der Transistor
des p-Typs sein, falls die Speicherzelle 3 der Transistor
des p-Typs ist, und der Niveau-Steuertransistor 65 ist
auch der Transistor des n-Typs, falls die Speicherzelle 3 der
Transistor des n-Typs ist. In diesem Beispiel wird angenommen, dass
der Niveau-Steuertransistor 65 aus dem Transistor des n-Typs
aufgebaut ist.
-
In
dem nicht-flüchtigen
Halbleiterspeicher gemäß der dritten
Ausführungsform
werden der Schreibeverifizierungsbetrieb und der Löschverifizierungsbetrieb
auch gemäß den Flussdiagrammen,
die in 11 und 12 gezeigt
sind, ausgeführt.
In diesem Fall werden, in dem Fall der Schreibverifizierung in der
Schleife 1 die Erfüllt/Nicht-Erfüllt-Entscheidungen
ausgeführt
durch AN-Schalten des Schalters 67a und AUS-Schalten des
Schalters 67b. In der Schleife 2 werden auch die
Erfüllt/Nicht-Erfüllt-Entscheidungen
ausgeführt
durch AUS-Schalten
des Schalters 67a und AN-Schalten des Schalters 67b.
-
In
der Schleife 1 ist die an das Gate der Referenzzelle 61 angelegte
Spannung 3,8 V (4,0 V – 0,2 V).
In der Schleife 2 ist die an das Gate der Referenzzelle 61 angelegte
Spannung 4 V. Dies bedeutet, dass in der Schleife 1 die
Erfüllt/Nicht-Erfüllt-Entscheidungen
ausgeführt
werden unter den Bedingungen, die strenger sind als die in der Schleife 2.
Als Ergebnis wird sogar die Speicherzelle, die in dem Tot-Band in
der Schleife 1 enthalten ist, sicher als die erfüllte in
der Schleife 2 bestimmt.
-
In
dem Fall der Löschverifizierung
werden in der ersten Schleife die Erfüllt/Nicht-Erfüllt-Entscheidungen
ausgeführt
durch AUS-Schalten des Schalters 67a und AN-Schalten des
Schalters 67b. In der Schleife 2 werden die Erfüllt/Nicht-Erfüllt-Entscheidungen
auch ausgeführt
durch AN-Schalten des Schalters 67a und AUS-Schalten des
Schalters 67b.
-
In
der Schleife 1 ist die an das Gate der Referenzzelle 61 angelegte
Spannung 4,0 V. In der Schleife 2 ist die an das Gate der
Referenzzelle 61 angelegte Spannung 3,8 V (4,0 V – 0,2 V).
Dies bedeutet, dass in der Schleife 1 die Erfüllt/Nicht-Erfüllt-Bedingungen
ausgeführt
werden unter den Bedingungen, die strenger sind als die in der Schleife 2. Als
Ergebnis wird sogar die Speicherzelle, die in dem Tot-Band in der
Schleife 1 enthalten ist, sicher als die erfüllte in
der Schleife 2 bestimmt.
-
In
der vorliegenden Ausführungsform
können,
zusätzlich
zu ähnlichen
Vorteilen, zu denen in der zweiten Ausführungsform solche Vorteile
erreicht werden, dass nur eine Schreibeverifizierungsreferenzzelle
bzw. eine Löschverifizierungsreferenzzelle benötigt werden,
und daher das Anpassen der Schwellenspannung erleichtert werden
kann.
-
(Vierte Ausführungsform)
-
Ein
nicht-flüchtiger
Halbleiterspeicher gemäß einer
vierten Ausführungsform
der vorliegenden Erfindung wird hier im Folgenden erklärt. In der
vierten Ausführungsform
wird ein Beispiel, in dem die vorliegende Erfindung auf einen Multi-Niveau-Speicher bzw.
Mehrstufenspeicher angewandt wird, gezeigt.
-
In
dem Multi-Niveau-Speicher werden die Schwellenspannungen der Speicherzelle
in Ansprechen auf die Daten gesetzt. Falls Zwei-Bit-Daten in einer
Speicherzelle zu speichern sind, wird das Datenschreiben ausgeführt bei
den Spannungen, die auf vier Daten "00", "01", "10" und "11" ansprechen, wie
in 15 gezeigt. In der vierten Ausführungsform
wird angenommen, dass die Schwellenspannung auf 6 V gesetzt wird,
wenn die Daten "00" einzuschreiben sind,
die Schwellenspannung auf 4 V gesetzt wird, wenn die Daten "01" einzuschreiben sind
und die Schwellenspannung auf 2 V gesetzt wird, wenn die Daten "10" einzuschreiben sind.
Das Löschniveau
wird auch auf 1 V gesetzt, und die Daten der Speicherzelle, dessen
Schwellenspannung 1 V ist, oder weniger, wird als "11" angenommen.
-
Drei
Entscheidungsniveaus (Entscheidungsniveaus A, B, C) werden verwendet,
um über
die in der Speicherzelle gespeicherten Daten zu entscheiden. Hier
wird das Entscheidungsniveau A auf 5 V gesetzt, das Entscheidungsniveau
B wird auf 3 V gesetzt und das Entscheidungsniveau C wird auf 1,5
V gesetzt.
-
Falls
alle der verglichenen Ergebnisse zwischen der Zellspannung, die
von der Speicherzelle gelesen wird, und den Entscheidungsniveaus
A, B, C "0" sind, werden die
in der Speicherzelle gespeicherten Daten als "00" bestimmt.
Falls das verglichene Ergebnis zwischen der Zellspannung, die von
der Speicherzelle gelesen wird, und dem Entscheidungsniveau A "1" ist, und beide der verglichenen Ergebnisse
zwischen der Zellspannung und den Entscheidungsniveaus B, C "0" sind, werden die in der Speicherzelle
gespeicherten Daten als "01" bestimmt. Falls
beide der verglichenen Ergebnisse zwischen der Zellenspannung, die
von der Speicherzelle gelesen wird, und den Entscheidungsniveaus
A, B "1" sind, und das verglichene
Ergebnis zwischen der Zellenspannung und dem Entscheidungsniveau
C "0" ist, werden die
in der Speicherzelle gespeicherten Daten als "10" bestimmt.
Falls alle verglichenen Ergebnisse zwischen der Zellenspannung,
die von der Speicherzelle gelesen wird, und den Entscheidungsniveaus
A, B, C "1" sind, werden die
in der Speicherzelle gespeicherten Daten als "11" bestimmt.
-
Wie
oben beschrieben, tritt in dem Datenschreibebetrieb und dem Datenlesebetrieb,
das Tot-Band aufgrund des Einflusses des Leistungsversorgungsrauschens,
etc. auf. Deshalb werden in der vierten Ausführungsform, wie in 15 gezeigt,
ein Schreibe-Entscheidungsniveau 1b,
das ein wenig strenger gesetzt wird als ein Schreibe-Entscheidungsniveau 1a für die Daten "00" verwendet, sowie ein
Schreibe-Entscheidungsniveau 2b, das ein wenig strenger
gesetzt wird als ein Schreibe-Entscheidungsniveau 2a für die Daten "01", ein Schreibe-Entscheidungsniveau 3b,
das ein wenig strenger als ein Schreibe-Entscheidungsniveau 3a für die Daten "10" gesetzt wird, und
ein Löschentscheidungsniveau 4b, das
ein wenig strenger als ein Löschentscheidungsniveau 4a gesetzt
wird. Der Vergleich zwischen dem Schreibe-Entscheidungsniveau oder
dem Löschentscheidungsniveau
und der Zellenspannung wird ausgeführt durch Verwenden der Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung,
die in der dritten Ausführungsform
erklärt
ist.
-
Die 16A und 16B sind
ein Flussdiagramm, das den Schreibeverifizierungsbetrieb in dem
nicht-flüchtigen
Halbleiterspeicher gemäß der vierten
Ausführungsform
zeigt.
-
Zuerst
wird in Schritt S71 ein Nicht-Erfüllt-Flag initialisiert (Nicht-Erfüllt-Flag
= 0). Wie bei der ersten bis dritten Ausführungsform kann der Nicht-Erfüllt-Zähler anstatt
des Nicht-Erfüllt-Flags verwendet
werden.
-
Dann
wird in Schritt S72 die Startadresse in dem Adresszähler gesetzt.
In Schritt S73 werden die Daten von der Speicherzelle gelesen, die
die Startadresse aufweist. Dann geht der Prozess zu Schritt S74,
wobei entschieden wird, ob oder ob nicht die Speicherzelle die Speicherzelle
ist, bei der das Schreiben der Daten "00" benötigt wird.
Falls die Speicherzelle die Speicherzelle ist, bei der das Schreiben
benötigt
wird, wird entschieden, ob oder ob nicht die gelesenen Daten nicht-erfüllt darstellen. Das
Datenlesen und die Erfüllt/Nicht-Erfüllt-Entscheidung
werden ausgeführt
unter den Bedingungen, die dem Schreibe-Entscheidungsniveau 1b entsprechen,
das in 15 gezeigt ist.
-
Falls
die Speicherzelle die Speicherzelle ist, bei der das Schreiben der
Daten "00" benötigt wird, und
die gelesenen Daten nicht-erfüllt
(Ja) darstellen, geht der Prozess zu Schritt S75. Im Gegensatz dazu geht,
falls die Speicherzelle die Speicherzelle ist, bei der das Schreiben
der Daten "00" nicht benötigt wird, oder
die Daten erfüllt
(Nein) darstellen, der Prozess zu Schritt S76.
-
In
Schritt S75 wird der Schreibepuls an die Speicherzelle mit der betreffenden
Adresse angelegt. Dann geht der Prozess zu Schritt S76.
-
In
Schritt S76 werden die Daten von der Speicherzelle gelesen, die
in dem Adresszähler
gesetzt ist. Dann geht der Prozess zu Schritt S77, wobei entschieden
wird, ob oder ob nicht die Speicherzelle die Speicherzelle ist,
bei der das Schreiben der Daten "00" oder "01" benötigt wird.
Falls die Speicherzelle die Speicherzelle ist, bei der das Schreiben
benötigt
wird, wird entschieden, ob oder ob nicht die gelesenen Daten nicht-erfüllt darstellen.
Das Datenlesen und die Erfüllt/Nicht-Erfüllt-Entscheidung
werden ausgeführt
unter den Bedingungen, die dem in 15 gezeigten
Schreibe-Entscheidungsniveau 2b entsprechen.
-
Falls
die Speicherzelle die Speicherzelle ist, bei der das Schreiben der
Daten "00" oder "01" benötigt wird
und die gelesenen Daten nicht-erfüllt (Ja) darstellen, geht der
Prozess zu Schritt S78. Im Gegensatz dazu geht, falls die Speicherzelle
die Speicherzelle ist, bei der das Schreiben der Daten "00" oder "01" nicht benötigt wird,
oder die gelesenen Daten erfüllt
(Nein) darstellen, der Prozess zu Schritt S79.
-
In
Schritt S78 wird der Schreibepuls an die Speicherzelle mit der betreffenden
Adresse angelegt. Dann geht der Prozess zu Schritt S79.
-
In
Schritt S79 werden die Daten von der Speicherzelle gelesen, die
in dem Adresszähler
gesetzt ist. Dann geht der Prozess zu Schritt S80, wobei entschieden
wird, ob oder ob nicht die Speicherzelle ist, bei der das Schreiben
der Daten "00", "01" oder "10" benötigt wird.
Falls die Speicherzelle die Speicherzelle ist, bei der das Schreiben
der Daten benötigt
wird, wird entschieden, ob oder ob nicht die gelesenen Daten nicht-erfüllt darstellen.
Das Datenlesen und die Erfüllt/Nicht-Erfüllt-Entscheidung
werden ausgeführt
unter den Bedingungen, die dem Schreibe-Entscheidungsniveau 3b,
das in 15 gezeigt ist, entsprechen.
-
Falls
die Speicherzelle die Speicherzelle ist, bei der das Schreiben der
Daten "00", "01" oder "10" benötigt wird,
und die gelesenen Daten nicht-erfüllt (Ja) darstellen, geht der
Prozess zu Schritt S81. Im Gegensatz dazu geht, falls die Speicherzelle
die Speicherzelle ist, bei der das Schreiben der Daten "00", "01" oder "10" nicht benötigt wird
oder die gelesenen Daten erfüllt
(Nein) darstellen, der Prozess zu Schritt S82.
-
In
Schritt S81 wird der Schreibepuls an die Speicherzelle mit der betroffenen
Adresse angelegt. Dann geht der Prozess zu Schritt S82.
-
In
Schritt S82 wird bestimmt, ob oder ob nicht die Adresse, die in
dem Adresszähler
gesetzt wird, die Endadresse ist. Falls die Adresse nicht die Endadresse
ist, geht der Prozess zu Schritt S83, wobei die nächste Adresse
in dem Adresszähler
gesetzt wird. Dann kehrt der Prozess zurück zu Schritt S73, wobei die
Daten von der Speicherzelle gelesen werden, die die gesetzte Adresse
aufweist.
-
Auf
diese Art und Weise werden in den Prozessen von Schritt S71 zu Schritt
S82 (als eine "Schleife
1" hier im Folgenden
bezeichnet) die Daten aufeinanderfolgend von der Speicherzelle mit
der Startadresse bis zu der Speicherzelle mit der Endadresse gelesen.
Dann wird eine in der Speicherzelle gespeicherte Ladungsmenge verändert, durch
Anlegen des Schreibepulses an die Speicherzelle, auf welche die
vorbestimmten Daten nicht geschrieben wurden.
-
Dann
geht der Prozess von Schritt S82 zu Schritt S84, um die Startadresse
in dem Adresszähler
zu setzen.
-
Dann
geht der Prozess zu Schritt S85, um die Daten von der Speicherzelle
zu lesen, die die gesetzte Adresse aufweist. Dann geht der Prozess
zu Schritt S86, wobei entschieden wird, ob oder ob nicht die Speicherzelle
die Speicherzelle ist, bei der das Schreiben der Daten "00" benötigt wird.
Falls die Speicherzelle die Speicherzelle ist, bei der das Schreiben
der Daten benötigt
wird, wird entschieden, ob oder ob nicht die gelesenen Daten nicht-erfüllt darstellen.
Das Datenlesen und die Erfüllt/Nicht-Erfüllt-Entscheidung
werden ausgeführt
unter den Bedingungen, die dem in 15 gezeigten
Schreibe-Entscheidungsniveau 1a entsprechen.
-
Falls
die Speicherzelle die Speicherzelle ist, bei der das Schreiben der
Daten "00 benötigt wird, und
die gelesenen Daten nicht-erfüllt
(Ja) darstellen, geht der Prozess zu Schritt S87. Im Gegensatz dazu geht,
falls die Speicherzelle die Speicherzelle ist, bei der das Schreiben
der Daten "00" nicht benötigt wird oder
die gelesenen Daten erfüllt
(Nein) darstellen, der Prozess zu Schritt S88.
-
In
Schritt S87 wird die Nicht-Erfüllt-Flag
auf "1" gesetzt. Dann geht
der Prozess zu Schritt S88.
-
In
Schritt S88 werden die Daten von der Speicherzelle gelesen, die
in dem Adresszähler
gesetzt ist. Dann geht der Schritt zu Prozess S89, wobei entschieden
wird, ob oder ob nicht die Speicherzelle die Speicherzelle ist,
bei der das Schreiben "00" oder "01" benötigt wird.
Falls die Speicherzelle die Speicherzelle ist, bei der das Schreiben
der Daten benötigt
wird, wird entschieden, ob oder nicht die gelesenen Daten nicht-erfüllt darstellen.
Das Datenlesen und die Erfüllt/Nicht-Erfüllt-Entscheidung
werden ausgeführt
unter den Bedingungen, die dem in 15 gezeigten
Schreibe-Entscheidungsniveau 2a entsprechen.
-
Falls
die Speicherzelle die Speicherzelle ist, bei der das Schreiben der
Daten "00" oder "01" benötigt wird,
und die gelesenen Daten nicht-erfüllt (Ja) darstellen, geht der
Prozess zu Schritt S90. Im Gegensatz dazu geht, falls die Speicherzelle
die Speicherzelle ist, bei der das Schreiben der Daten "00" oder "001" nicht benötigt wird,
oder die gelesenen Daten erfüllt
(Nein) darstellen, der Prozess zu Schritt S91.
-
In
Schritt S90 die Nicht-Erfüllt-Flag
auf "1" gesetzt. Dann geht
der Prozess zu Schritt S91.
-
In
Schritt S91 werden die Daten von der Speicherzelle gelesen, die
in dem Adresszähler
gesetzt ist. Dann geht der Prozess zu Schritt S92, wobei bestimmt
wird, ob oder ob nicht die Speicherzelle die Speicherzelle ist,
bei der das Schreiben der Daten "00", "01" oder "10" benötigt wird.
Falls die Speicherzelle die Speicherzelle ist, bei der das Schreiben
der Daten benötigt
wird, wird entschieden, ob oder ob nicht die gelesenen Daten nicht-erfüllt darstellen. Das
Datenlesen und die Erfüllt/Nicht-Erfüllt-Entscheidung
werden ausgeführt
unter den Bedingungen, die dem in 15 gezeigten
Schreibe-Entscheidungsniveau 3a entsprechen.
-
Falls
die Speicherzelle die Speicherzelle ist, bei der das Schreiben der
Daten "00", "01" oder "10" benötigt wird
und die gelesenen Daten nicht-erfüllt (Ja) darstellen, geht der
Prozess zu Schritt S93. Im Gegensatz dazu geht, falls die Speicherzelle
die Speicherzelle ist, bei der das Schreiben der Daten "00", "01" oder "10" nicht benötigt wird
oder die gelesenen Daten erfüllt
(Nein) darstellen, der Prozess zu Schritt S94.
-
In
Schritt S93 wird die Nicht-Erfüllt-Flag
auf "1" gesetzt. Dann geht
der Prozess zu Schritt S94.
-
In
Schritt S94 wird bestimmt, ob oder ob nicht die Adresse, die in
dem Adresszähler
gesetzt wird, die Endadresse ist. Falls die Adresse nicht die Endadresse
ist, geht der Prozess zu Schritt S95, wobei die nächste Adresse
in dem Adresszähler
gesetzt wird. Dann kehrt der Prozess zurück zu Schritt S94, wobei die
Daten von der Speicherzelle gelesen werden, die die gesetzte Adresse
aufweist.
-
Auf
diese Art und Weise werden in den Prozessen von Schritt S84 zu Schritt
S94 (als eine "Schleife
2" hier im Folgenden
bezeichnet), die Daten aufeinanderfolgend von der Speicherzelle
mit der Startadresse bis zu der Speicherzelle mit der Endadresse
gelesen. Dann wird, falls die Speicherzelle, auf welche die vorbestimmten
Daten nicht geschrieben wurden, detektiert wird, die Nicht-Erfüllt-Flag
auf "1" gesetzt.
-
Dann
geht der Prozess von Schritt S94 zu Schritt S96, wobei entschieden
wird, ob oder ob nicht die Nicht-Erfüllt-Flag "0" ist.
Falls die Nicht-Erfüllt-Flag "1" ist, geht der Prozess zurück zu Schritt S71
und die obigen Prozesse werden dann wiederholt. Im Gegensatz wird,
falls die Nicht-Erfüllt-Flag "0" ist, die Schreibeverifizierung beendet.
-
Auf
diese Art und Weise wird in der vorliegenden Ausführungsform
in der Schleife 1 unter den Bedingungen, die strenger sind
als die Schreibe-Entscheidungsbedingungen in der Schleife 2,
bestimmt, ob oder nicht die gelesenen Daten nicht-erfüllt darstellen.
Deshalb wird sogar die Speicherzelle, die in dem Tot-Band in der
Schleife 1 enthalten ist, sicher als die nicht-erfüllende in
der Schleife 2 bestimmt. Als Ergebnis kann die Verlässlichkeit
der Daten verbessert werden, und eine Zeit, die für die Schreibverifizierung
benötigt
wird, kann auch reduziert werden.
-
In
diesem Fall wird, da der Löschverifizierungsbetrieb
des nicht-flüchtigen
Halbleiterspeichers in der vorliegenden Ausführungsform grundlegend gleich
ist, zu der in der ersten Ausführungsform,
seine Erklärung
hier weggelassen.
-
In
der obigen ersten bis vierten Ausführungsform wird der Unterschied
zwischen den angelegten Spannungen in den ersten Entscheidungsbedingungen
und den zweiten Entscheidungsbedingungen auf 0,2 V entsprechend
gesetzt. Aber tatsächlich
müssen die
angelegten Spannungen in den ersten Entscheidungsbedingungen und
den zweiten Entscheidungsbedingungen passend in Ansprechen auf eine
Fluktuation in der Spannung aufgrund von Rauschen etc. gesetzt werden.
-
(Andere Ausführungsform
1)
-
In
der obigen ersten bis vierten Ausführungsform wird der Fall, wo
die vorliegende Erfindung auf den SONOS-Nicht-Flüchtigen-Halbleiterspeicher
angewandt wird, entsprechend erklärt. Aber die vorliegende Erfindung
kann auf andere Einfach-Gate-Speicher und Speicher mit schwebendem Gate
angewandt werden. Die vorliegende Erfindung kann auch unabhängig von
der Bedingung, dass die Schaltungskonfigurierung des Halbleiterspeichers ein
NOR-Typ oder NAND-Typ ist, angewendet werden. Zusätzlich kann
die vorliegende Erfindung angewandt werden, unabhängig von
der Bedingung, dass die Daten durch Kanal-Hot-Elektron- oder das FN-(Fowler-Nordheim)-Tunneln
als das Datenschreibesystem eingeschrieben werden.
-
17 zeigt
eine Teilansicht, die ein Beispiel eines Speichers mit schwebendem
Gate (NOR-Gate-Typ) zeigt.
-
Unreinheitendiffusions-Schichten 72,
die als die Source/Drain der Speicherzelle dienen, werden in einem
Silizium-Substrat 71 gebildet. Ein Silizium-Oxid-Film (Gate-Oxid-Film) 73 wird
auf einer Oberfläche
des Silizium-Substrats 71 gebildet.
-
Ein
schwebendes Gate 74 wird auf dem Silizium-Oxid-Film 73 zwischen
einem Paar von Unreinheitsdiffusions-Schichten 72 gebildet.
Ein isolierender Film 74 wird auf diesem schwebenden Gate 74 gebildet.
Ein Steuer-Gate 76 mit einer Schichtstruktur bzw. laminierten
Struktur, die aus einer Poly-Silizium-Schicht und einer Wolfram-Silizid-Schicht
besteht, wird auf dem isolierenden Film 75 gebildet.
-
Das
schwebende Gate 74 bzw. Floating-Gate 74 und das
Steuer-Gate 76 werden
mit einem Zwischenschicht-isolierendem Film mit einer Schichtstruktur
bedeckt, die aus einem Silizium-Oxid-Film 77 und einem BPSG (Borphosphorsilikat-Glass)-Film 78 besteht.
-
18 zeigt
ein Blockdiagramm, das eine Schaltungskonfiguration des Speichers
mit schwebendem Gate (Flash-Speicher) zeigt.
-
FETs 83 bestehend
jeweils aus der Speicherzelle, sind in einer Matrix angeordnet.
Die Steuer-Gates der Speicherzellen, die in der Reihenrichtung angeordnet
sind, sind mit gemeinsamen Wortleitungen (WL1, WL2, ...) 82 verbunden.
Die Drains der Speicherzellen, die in der Spaltenrichtung angeordnet
sind, sind auch mit gemeinsamen Bit-Leitungen (BL1, BL2, ...) 81 verbunden.
Zusätzlich
sind die Sources der Speicherzellen (FETs) 3 in dem gleichen Block
mit einer gemeinsamen Source-Leitung
SL0 verbunden.
-
Die
Bit-Leitungen BL1, BL2, ... sind mit einem Leseverstärkerteil 86 verbunden,
und die Wortleitungen WL1, WL2, ... sind mit einem Wortleitungstreiber 87 verbunden.
Das Leseverstärkerteil 86 und der
Wortleitungstreiber 87 werden durch ein Signal betrieben,
das von einer Steuerschaltung (nicht gezeigt) zugeführt wird
(siehe 7). Die Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung,
die in der ersten bis dritten Ausführungsform gezeigt ist, ist
in dem Leseverstärkerteil 86 gebildet.
-
In
dem Speicher mit schwebendem Gate, der auf diese Art und Weise aufgebaut
ist, kann, falls die Schreibeverifizierung und die Löschverifizierung
gemäß dem in
der ersten bis vierten Ausführungsform gezeigten
Verfahren ausgeführt
werden, nicht nur die Erfüllt/Nicht-Erfüllt-Bedingung
präzise
ausgeführt werden,
unabhängig
von dem Leistungsversorgungsrauschen und anderem Rauschen, aber
auch eine Zeit, die für
die Schreibverifizierung und die Löschverifizierung benötigt wird,
kann verringert werden.
-
(Andere Ausführungsform
2)
-
Ein
Betriebsverfahren des nicht-flüchtigen Halbleiterspeichers
der vorliegenden Erfindung kann auch auf Inspektionsschritte nach
der Herstellung des nicht-flüchtigen
Halbleiterspeichers angewandt werden.
-
19 zeigt
eine Ansicht, die eine Skizze eines Inspektionsverfahrens des nicht-flüchtigen
Halbleiterspeichers zeigt. Eine Erfüllt/Nicht-Erfüllt-Entscheidungsschaltung 92,
die in 8, 13 oder 14 gezeigt
ist, wird einem Inspektionsgerät 91 bereitgestellt.
Dieses Inspektionsgerät 91 und
ein hergestellter nicht-flüchtiger
Halbleiterspeicher 95 werden elektrisch über eine
Inspektionsprobe verbunden, und dann wird das Datenschreiben oder
das Datenlöschen
gemäß der in 11, 12 oder 16A und 16B gezeigten
Flussdiagramme ausgeführt.
Dann wird basierend auf der Zahl der Ausführungen der Schleifen 1, 2 oder
der Zahl der Nicht-Erfüllt-Entscheidung
bestimmt, ob oder ob nicht der nicht-flüchtige
Halbleiterspeicher gut oder schlecht ist.
-
In
diesem Fall wird, da die Erfüllt/Nicht-Erfüllt-Entscheidung
in der Schleife 1 unter den Bedingungen ausgeführt wird,
die strenger sind als die in Schleife 2, die Schleife nie
verschwenderisch wiederholt, und die Qualität des nicht-flüchtigen
Halbleiterspeichers kann auch in einer kurzen Zeit bestimmt werden.
-
Das
obige Betriebsverfahren kann auch auf einen zyklischen Test angewendet
werden, der eine Lebensdauer des nicht-flüchtigen
Halbleiterspeichers durch Wiederholen des Datenschreibens und des
Datenlöschens
in dem nicht-flüchtigen
Halbleiterspeicher überprüft.