DE4302223C2 - Nicht-flüchtige Halbleiterspeichereinrichtung sowie Herstellungsverfahren dafür - Google Patents

Nicht-flüchtige Halbleiterspeichereinrichtung sowie Herstellungsverfahren dafür

Info

Publication number
DE4302223C2
DE4302223C2 DE4302223A DE4302223A DE4302223C2 DE 4302223 C2 DE4302223 C2 DE 4302223C2 DE 4302223 A DE4302223 A DE 4302223A DE 4302223 A DE4302223 A DE 4302223A DE 4302223 C2 DE4302223 C2 DE 4302223C2
Authority
DE
Germany
Prior art keywords
memory
memory cell
data
potential
volatile semiconductor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE4302223A
Other languages
English (en)
Other versions
DE4302223A1 (de
Inventor
Kenji Noguchi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of DE4302223A1 publication Critical patent/DE4302223A1/de
Application granted granted Critical
Publication of DE4302223C2 publication Critical patent/DE4302223C2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/12Programming voltage switching circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/20Initialising; Data preset; Chip identification
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells
    • G11C16/3445Circuits or methods to verify correct erasure of nonvolatile memory cells
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS

Landscapes

  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Non-Volatile Memory (AREA)

Description

Die Erfindung betrifft nicht-flüchtige Halbleiterspeichereinrichtungen nach dem Oberbegriff des Anspruchs 1 und ein Verfahren nach dem Oberbegriff des Anspruchs 9.
Eine der Halbleiterspeichereinrichtungen zum Speichern von Information in nicht-flüchtiger Weise wird als Flash-Speicher bezeichnet. Im Flash-Speicher werden alle Speicherzellen in einem Speicherfeld während eines Löschmodus gleichzeitig in einen Löschzustand versetzt.
Fig. 9 zeigt ein Diagramm, das eine Querschnittstruktur einer Speicherzelle in einem Flash-Speicher darstellt. Wie in Fig. 9 gezeigt ist, weist die Speicherzelle n-Störstellenbereiche 102 und 104, die in der Oberfläche eines p-Halbleitersubstrats 100 gebildet sind, ein Floating-Gate 106, das auf einem Kanalbereich 112 zwischen den Störstellenbereichen 102 und 104 mit einem Gate-Isolierfilm 110 zwischen dem Kanalbereich und dem Floating-Gate gebildet ist, und ein Steuer-Gate 108, das auf dem Floating-Gate 106 mit einem Zwischenschichtisolierfilm 114 dazwischen gebildet ist, auf. Der Rand des Floating-Gate 106 ist von den Isolierfilmen 110 und 114 umgeben und das Gate wird in einen elektrisch schwebenden Zustand gebracht. Diese Speicherzelle hat die Struktur eines MOS- (Metall- Isolator-Halbleiter) Transistors, bei dem die Störstellenbereiche 102 und 104 einen Drain- bzw. Source-Bereich bilden.
Fig. 10 zeigt das Diagramm eines Ersatzschaltbildes der Speicherzelle von Fig. 9. Das Steuer-Gate 108 weist eine Elektrode CG auf, die mit einer Wortleitung WL verbunden ist, und der Störstellenbereich 102 hat eine Drain-Elektrode D, die mit einer Bitleitung BL verbunden ist. Die Source-Elektrode des Störstellenbereichs 104 ist üblicherweise über eine Source-Leitung S mit einer Source-Potential-Erzeugungsschaltung 116 verbunden.
Im Flash-Speicher sind Speicherzellen dieses Typs in Zeilen und Spalten angeordnet, und die Speicherzellen einer Zeile sind mit einer einzelnen Wortleitung WL verbunden, während die Speicherzellen einer Spalte auf einer einzelnen Bitleitung BL geschaffen sind. Das Datenschreiben, -löschen und -lesen bezüglich der in den Fig. 9 und 10 gezeigten Speicherzelle wird folgendermaßen ausgeführt.
Beim Schreiben wird ein hohe Spannung Vpp von ungefähr 12V über die Wortleitung WL an das Steuer-Gate 108, eine Spannung von etwa 6V über die Bitleitung BL an den Drain-Störstellenbereich 102 und ein Massepotential an den Source-Störstellenbereich 104 über die Source- Potential-Erzeugungsschaltung 116 angelegt. In diesem Zustand fließt ein Strom vom Drain-Störstellenbereich 102 über den Kanalbereich 112 zum Source-Störstellenbereich 104. Ladungen im Strom, die vom Drain-Störstellenbereich 102 aus fließen, werden durch ein hohes elektrisches Feld angeregt, das in der Nähe des Drain-Störstellenbereichs 102 gebildet wird, so daß heiße Elektronen erzeugt werden. Die erzeugten heißen Elektronen verursachen einen Lawinendurchbruch, wodurch eine große Menge an heißen Elektronen gebildet wird. Die durch den Lawinendurchbruch erzeugten heißen Elektronen werden durch die hohe Spannung, die an das Steuer-Gate 108 angelegt ist, zum Floating-Gate 106 beschleunigt und dann im Floating-Gate 106 eingefangen. In diesem Zustand, in dem Elektronen in das Floating-Gate 106 injiziert (gefangen) werden, verschiebt sich die Schwellenspannung Vth der Speicherzelle in eine positive Richtung.
Beim Löschen wird ein Massepotential an das Steuer-Gate 108 angelegt, eine hohe Spannung Vpp von etwa 12V von der Source- Potential-Erzeugungsschaltung an den Source-Störstellenbereich 104 angelegt und der Drain-Störstellenbereich 102 wird in einen schwebenden Zustand gebracht. In diesem Zustand werden Elektronen aufgrund einer Tunnelungserscheinung aus dem Floating-Gate 106 durch den (sehr dünnen) Gate-Isolierfilm 110 zum Source-Störstellenbereich 104 abgezogen. Durch den Abzug der Elektronen aus dem Floating-Gate 106 verschiebt sich die Schwellenspannung Vth dieser Speicherzelle in eine negative Richtung.
Wie oben beschrieben worden ist, speichert die Speicherzelle den Wert "0" und "1" in Übereinstimmung mit der Menge an Elektronen, die im Floating-Gate 106 vorhanden sind.
Wie in Fig. 11 gezeigt ist, bedeutet das für den Zustand, in dem Elektronen in das Floating-Gate 106 injiziert werden (Programmierzustand), daß die Schwellenspannung Vth in die positive Richtung verschoben wird und die Speicherzelle eine Schwellenspannung Vr2 aufweist. Im Löschzustand, wenn Elektronen aus dem Floating-Gate 106 abgezogen werden, verschiebt sich die Schwellenspannung in negativer Richtung und die Speicherzelle weist eine Schwellenspannung Vr1 auf. Üblicherweise wird der programmierte Zustand, in dem die Elektronen in das Floating-Gate 106 injiziert sind, als ein Zustand definiert, bei dem der Wert "0" gespeichert ist. Der Löschzustand, in dem Elektronen aus dem Floating-Gate 106 abgezogen sind, wird als ein Zustand definiert, in dem der Wert "1" gespeichert ist.
Beim Datenlesen wird ein Massepotential an den Source- Störstellenbereich 104 angelegt und ein Signal mit logisch hohem oder "H"-Pegel, der ungefähr gleich der Versorgungsspannung Vcc ist, wird über die Wortleitung WL an das Steuer-Gate 108 übertragen. In diesem Zustand befindet sich die Speicherzelle in einem Sperrzustand, wenn die Speicherzelle den Wert "0" speichert, während sie in einem Durchlaßzustand ist, wenn sie den Wert "1" speichert. Der Bitleitung wird ein Lesepotential zugeführt und das Datenlesen wird mit einem stromempfindlichen Leseverstärker ausgeführt, der erfaßt, ob entsprechend den gespeicherten Daten der Speicherzelle ein Strom fließt.
Weil Daten in Übereinstimmung mit der Menge an Elektronen, die im Floating-Gate 106 vorhanden sind, gespeichert werden, bleiben bei der so aufgebauten Speicherzelle die Elektronen im Floating-Gate 106 selbst dann erhalten, wenn die Spannungsversorgung abgeschaltet wird. Das ermöglicht eine nicht-flüchtige Speicherung von Information und eine solche nicht-flüchtige Speicherzelle wird in verschiedenen Bereichen genutzt.
Fig. 12 zeigt ein Diagramm der Gesamtstruktur einer nicht-flüchtigen Halbleiterspeichereinrichtung (Flash-Speicher), die z. B. in der JP 2-10596 beschrieben ist. Wie in Fig. 12 gezeigt ist, weist eine nicht-flüchtige Halbleiterspeichereinrichtung 200 ein Speicherzellenfeld 13 auf, in dem die Speicherzellen mit der in Fig. 9 gezeigten Struktur in Zeilen und Spalten angeordnet sind. Die nicht-flüchtige Halbleiterspeichereinrichtung 200 weist ferner ein Adreß-Latch 10 zum Verriegeln der angelegten Adreßbits A0-Am und Erzeugen interner Adreßbits, einen X-Dekoder 12 zum Dekodieren interner Zeilenadreßbits vom Adreß-Latch 10, um eine Zeile des Speicherzellenfeldes 13 auszuwählen, einen Y-Dekoder 11 zum Dekodieren interner Spaltenadreßbits vom Adreß-Latch 10, um eine entsprechende Spalte des Speicherzellenfeldes 13 auszuwählen, und eine Y-Gatterschaltung 14, die auf das Spaltenauswahlsignal vom Y-Dekoder 11 reagiert, um eine entsprechende Spalte des Speicherzellenfeldes 13 mit einem internen Datenbus 123b oder einem Daten-Latch 15 zu verbinden, auf.
In dieser nicht-flüchtigen Halbleiterspeichereinrichtung wird die Datenein-/ausgabe in Einheiten zu acht Bits (ein Byte) ausgeführt. Damit bestimmt das Spaltenauswahlsignal vom Y-Dekoder 11 acht Spalten im Speicherzellenfeld 13 und die Y-Gatterschaltung 14 reagiert auf dieses Spaltenauswahlsignal, um acht Spalten mit dem internen Datenbus 123b oder dem Daten-Latch 15 zu verbinden.
Die nicht-flüchtige Halbleiterspeichereinrichtung 200 weist ferner einen Ein-/Ausgabepuffer 6, der mit einem bidirektionalen 8-Bit- Datenbus 120 verbunden ist, und eine Leseschaltung 7 zum Erfassen des Vorhandenseins/Nicht-Vorhandenseins eines Stroms auf dem internen Datenbus und zum Lesen von Speicherzellendaten auf. Ein Ausgangssignal der Leseschaltung 7 wird an einen Ausgabepuffer übertragen, der im Ein-/Ausgabepuffer 6 gebildet ist, und dann als Lesewert auf den Datenbus 120 ausgegeben. Beim Datenschreiben (Programmieren) erzeugt der Ein-/Ausgabepuffer 6 aus den Daten D0-D7, die an den Datenbus 120 angelegt werden, interne Daten und legt die erzeugten internen Daten über einen Datenbus 123a an das Daten- Latch 15 an.
Um ein Löschen und Programmieren von Speicherzellendaten auszuführen, weist die nicht-flüchtige Halbleiterspeichereinrichtung 200 ferner eine Befehlsportsteuerung 2 zum Erzeugen verschiedener Steuersignale in Abhängigkeit von einem Schreibaktivierungssignal /WE, einem Chipaktivierungssignal /CE und einer hohen Programmierspannung Vpp, eine Löschspannungs-Erzeugungsschaltung 5, die auf ein Steuersignal von der Befehlsportsteuerung 2 reagiert, um eine Löschspannung aus der hohen Programmierspannung Vpp zu erzeugen und die erzeugte Löschspannung (eine hohe Spannung von ungefähr 12V während eines Löschvorgangs) an die jeweiligen Sources der Speicherzellen im Speicherzellenfeld 13 anzulegen, eine Programmierspannungs-Erzeugungsschaltung 4, die auf ein Steuersignal von der Befehlsportsteuerung 2 reagiert, um die hohe Programmierspannung Vpp zu empfangen und eine Programmierspannung an den Y-Dekoder 11 und den X-Dekoder 12 anzulegen, eine CE/OE- Logikschaltung 8 zum Steuern einer Datenein-/ausgabeoperation des Ein-/Ausgabepuffers 6 in Abhängigkeit vom Chipaktivierungssignal /CE und einem Ausgabeaktivierungssignal /OE, und eine Lösch- /Programmierverifizierungs-Erzeugungsschaltung 9 zum Erzeugen einer Verifizierungsspannung während des Löschens/Programmierens in Abhängigkeit von einem Steuersignal von der Befehlsportsteuerung 2 auf.
Die von der Lösch-/Programmierverifizierungs-Erzeugungsschaltung 9 ausgegebene Spannung wird an den X-Dekoder 12 angelegt. Während eines Lösch/Programmierverifizierungsvorgangs wird die Ausgangsspannung über den X-Dekoder 12 auf eine ausgewählte Wortleitung im Speicherzellenfeld 13 ausgegeben.
Die Befehlsportsteuerung 2 empfängt Daten, die vom Ein- /Ausgabepuffer 6 angelegt werden, als ein Betriebsbefehlssignal in Übereinstimmung mit einer Kombination der Zustände des Schreibaktivierungssignals /WE und des Chipaktivierungssignals /CE, dekodiert dann das empfangene Betriebsbefehlssignal und erzeugt das erforderliche Steuersignal. Die Befehlsportsteuerung 2 wird in Betrieb genommen, wenn die extern angelegte hohe Programmierspannung Vpp auf einem hohen Wert entsprechend 12V liegt, während sie deaktiviert wird, wenn diese Programmierspannung Vpp auf einem normalen Versorgungspegel von 5V liegt. Befehle, die von der Befehlsportsteuerung 2 dekodiert werden können, sind von 2n verschiedenen Arten (n ist die Anzahl der Datenbits, die über den Datenbus 120 zugeführt werden).
Diese nicht-flüchtige Halbleiterspeichereinrichtung 200 empfängt extern eine Betriebsversorgungsspannung Vcc von üblicherweise etwa 5V, ein Potential Vss, das normalerweise auf einem Massepotentialpegel ist, und eine Programmierspannung Vpp. Wenn das Chipaktivierungssignal /CE einen logisch niedrigen Pegel erreicht, wird diese nicht-flüchtige Halbleiterspeichereinrichtung 200 ausgewählt und führt eine festgelegte Operation aus. Das bedeutet, daß die Befehlsportsteuerung 2 auf das Chipaktivierungssignal /CE mit niedrigem Pegel reagiert und bereit ist, einen Befehl vom Ein-/Ausgabepuffer 6 entgegenzunehmen. Die Befehlsportsteuerung 2 empfängt den Befehl vom Ein-/Ausgabepuffer 6 über die Signalleitung 123a mit der ansteigenden Flanke des Schreibaktivierungssignals /WE von einem niedrigen auf einen hohen Pegel und dekodiert den empfangenen Befehl. Wenn die hohe Programmierspannung Vpp 5V beträgt, wird die Befehlsportsteuerung 2 deaktiviert und die nicht- flüchtige Halbleiterspeichereinrichtung 200 arbeitet die ganze Zeit nur in einem Datenlesemodus.
Das Daten-Latch 15 und das Adreß-Latch 10 reagieren beide auf ein Abtastsignal STB von der Befehlsportsteuerung 2, um im Programmiermodus ein angelegtes Signal zu verriegeln.
Fig. 13 zeigt ein Blockdiagramm der Struktur der in Fig. 12 dargestellten Befehlsportsteuerung. Wie in Fig. 13 gezeigt ist, weist die Befehlsportsteuerung 2 eine WE/CE-Steuerlogikschaltung 231, die in Abhängigkeit von einem niedrigen Pegel des Chipaktivierungssignals /CE aktiviert wird und ein internes Schreibaktivierungssignal CWE in Übereinstimmung mit dem Schreibaktivierungssignal /WE erzeugt, einen Adreßtaktsignalgenerator 232, der in Abhängigkeit vom Chipaktivierungssignal /CE aktiviert wird und ein Latch-Taktsignal STB in Übereinstimmung mit dem internen Schreibaktivierungssignal CWE an das in Fig. 12 gezeigte Adreß-Latch 10 anlegt, einen Statustaktsignalgenerator 233 zum Erzeugen eines Taktsignals in Abhängigkeit vom internen Schreibaktivierungssignal CWE, ein Statusregister 235, das auf ein Taktsignal vom Statustaktsignalgenerator 233 reagiert, um als Befehlscode die Daten zu speichern, die vom Ein-/Ausgabepuffer 6 auf den internen Datenbus 123a übertragen werden, und einen Taktsignalgenerator 234, der in Abhängigkeit von einem Ausgangssignal des Statusregisters 235 aktiviert wird und ein Befehlstaktsignal sowie ein Datentaktsignal in Abhängigkeit vom internen Schreibaktivierungssignal CWE erzeugt, auf.
Der Taktsignalgenerator 234 weist einen Datentaktsignalgenerator 234b zum Erzeugen eines Abtastsignals STB zur Definition eines Datenverriegelungszeitpunkts eines Daten-Latch (siehe Fig. 12) und einen Befehlstaktsignalgenerator 234a zum Erzeugen eines Befehlstaktsignals zur Definition eines Zeitpunkts, zu dem ein Befehlsregister 237 Daten auf einem Datenbus 223a als Befehlscode empfängt, auf.
Die Befehlsportsteuerung 2 weist ferner einen Statusdekoder 236 auf, der die im Statusregister 235 und im Befehlsregister 237 gespeicherten Befehlscodes dekodiert, Signale zur Steuerung des Betriebs des Löschspannungsgenerators, des Programmierspannungsgenerators und des Lösch-/Programmierverifizierungsgenerators der Fig. 12 erzeugt, und außerdem den Betrieb des Adreßtaktsignalgenerators 233 und des Statusregisters 235 definiert.
Ein Betriebsmodus wird durch Daten festgelegt, die über den Datenbus 123a in einem Schreibzyklus angelegt werden. Der Schreibzyklus wiederum wird durch das Schreibaktivierungssignal /WE und das Chipaktivierungssignal /CE bestimmt. Wenn das Chipaktivierungssignal /CE einen logisch niedrigen Pegel annimmt, so reagiert der Adreßtaktsignalgenerator 232 auf eine ansteigende Flanke des Schreibaktivierungssignals /WE (d. h. eine ansteigende Flanke des internen Schreibaktivierungssignals CWE), um ein Adreßabtastsignal STB zu erzeugen und an das in Fig. 12 gezeigte Adreß-Latch 10 anzulegen. Das Adreß-Latch 10 reagiert auf das angelegte Adreßabtastsignal STB, wird in einen Verriegelungszustand gebracht und verriegelt die angelegte Adresse.
Mit der ansteigenden Flanke des Schreibaktivierungssignals /WE werden Daten in das Statusregister 235 und das Befehlsregister 237 oder das Statusregister 235 und das Daten-Latch 15 eingelesen und verriegelt. Der Statusdekoder 236 dekodiert die im Statusregister 236 und dem Befehlsregister 237 gespeicherten Daten und treibt entsprechende Schaltungen.
Im Löschmodus reagiert der Löschspannungsgenerator 5 auf das Ausgangssignal des Statusdekoders 236, um eine hohe Programmierspannung Vpp zu erzeugen und legt diese an die Source einer jeden Speicherzelle im Speicherzellenfeld 13 an.
Der Programmierspannungsgenerator 4 wählt die hohe Programmierspannung Vpp in Abhängigkeit vom Ausgangssignal des Statusdekoders 236 in einem Programmiermodus (Datenschreiben) aus und legt die ausgewählte Spannung an den X-Dekoder 12 und den Y-Dekoder 11 an. Entsprechend erreichen das Spaltenauswahlsignal und das Wortleitungs-Treibungssignal vom Y-Dekoder 11 und dem X-Dekoder 12 einen hohen Spannungspegel Vpp. Bei der Programmier- und Löschverifizierung erzeugt die Lösch-/Programmierverifizierungs- Erzeugungsschaltung 9 eine Löschspannung aus der hohen Programmierspannung Vpp und legt sie an den X-Dekoder 12 an, um zu verifizieren, ob die Programmierung korrekt erfolgte und das Löschen ausgeführt wurde. Nun wird der Betrieb beschrieben.
Beim Datenlesen nehmen das Chipaktivierungssignal /CE und das Ausgabeaktivierungssignal /OE einen niedrigen Pegel an, so daß die CE/OE-Logikschaltung aktiviert wird. Gleichzeitig treibt die CE/OE- Logikschaltung 8 den Ausgabepuffer, der im Ein-/Ausgabepuffer 6 enthalten ist, zu einem vorbestimmten Zeitpunkt. Das Adreß-Latch 10 ermöglicht es den angelegten Adreßbits A0-Am, ohne verriegelt zu werden, durchzulaufen und erzeugt interne Adreßbits. Der X-Dekoder 12 und der Y-Dekoder 11 dekodieren die angelegten internen Adreßbits und erzeugen Signale zum Auswählen einer Zeile und einer Spalte des Speicherzellenfeldes 13. Im Lesemodus befinden sich die Auswahlsignale, die vom X-Dekoder 12 und Y-Dekoder 11 ausgegeben werden, normalerweise auf dem Pegel der Betriebsversorgungsspannung Vcc. Daten der ausgewählten Speicherzellen im Speicherzellenfeld 13 werden über die Y-Gatterschaltung 14 zum Datenbus 123b übertragen. Die Leseschaltung 7 liest Speicherzellendaten in Abhängigkeit davon, ob über den Datenbus 123b ein Strom fließt oder nicht und führt die gelesenen Daten dem Ausgabepuffer zu, der im Ein-/Ausgabepuffer 6 enthalten ist. Der Ausgabepuffer erzeugt externe Lesedaten aus den Lesedaten von der Leseschaltung 7 unter der Steuerung durch die CE/OE-Logikschaltung 8 und überträgt die erzeugten externen Lesedaten auf den bidirektionalen 8-Bit-Datenbus 120.
Der Löschmodus umfaßt zwei Zyklen. Im ersten Zyklus wird ein Löschcode in das Befehlsregister 237 und das Statusregister 235 geschrieben. Im zweiten Zyklus wird ein Löschverifizierungscode in das Statusregister 235 geschrieben. Ein Löschvorgang wird sofort gestartet, nachdem der Löschverifizierungscode in das Statusregister 235 geschrieben worden ist. Der Statusdekoder 236 legt zuerst ein Steuersignal an den Löschspannungsgenerator 5 und eine hohe Spannung Vpp von 12V vom Löschspannungsgenerator 5 an die jeweiligen Sources aller Speicherzellen im Speicherzellenfeld 13 an. Ferner setzt der Dekoder 236 alle Ausgänge des X-Dekoders 12 auf ein Massepotential. Entsprechend wird ein hohes elektrisches Feld zwischen dem Steuer- Gate und der Source der jeweiligen Speicherzelle erzeugt, und Elektronen, die im Floating-Gate gespeichert sind, werden in Form eines Tunnelstroms zur Source-Leitung gezogen.
Wenn dann ein Löschverifizierungscode in das Statusregister 235 und das Befehlsregister 237 geschrieben wird, ist dieser Löschvorgang beendet und eine Adresse, die die Stelle einer zu verifizierenden Speicherzelle angibt, wird verriegelt. Damit wird das Adreßabtastsignal STB vom Adreßtaktsignalgenerator 232 erzeugt. Der Lösch-/Programmierverifizierungsgenerator 9 erzeugt eine Löschverifizierungsspannung aus der hohen Programmierspannung Vpp und legt die erzeugte Spannung an den X-Dekoder 12 an.
Der X-Dekoder 12 überträgt diese Löschverifizierungsspannung auf die Wortleitung. Der Y-Dekoder 11 verbindet eine entsprechende Spalte im Speicherzellenfeld 13 über die Y-Gatterschaltung 14 mit dem Datenbus 123b. Die Schwellenspannung einer gelöschten Speicherzelle ist niedriger als die Löschverifizierungsspannung und eine adressierte Speicherzelle wird in einen Durchlaßzustand versetzt, so daß im Normalfall der Wert "1" gelesen wird. Daten der adressierten Speicherzelle können durch eine externe Einrichtung über den Ein- /Ausgabepuffer 6 gelesen werden, wenn das Ausgabeaktivierungssignal /OE auf einen niedrigen Pegel gefallen ist. Die externe Einrichtung ist dann fähig, in Übereinstimmung mit den gelesenen Daten zu ermitteln, ob die Daten der Speicherzelle gelöscht worden sind. Dieser Löschverifizierungsvorgang wird für alle Adressen ausgeführt.
Ein Programmiervorgang umfaßt ähnlich wie der Löschvorgang zwei Zyklen. Im ersten Zyklus wird ein Programmierbefehlscode im Statusregister 235 und im Befehlsregister 237 gespeichert. Im zweiten Zyklus werden das Adreß-Latch 10 und das Daten-Latch 15 in einen verriegelnden Zustand gebracht, so daß die Adreßbits A0-Am und Programmierdaten im Adreß-Latch 10 bzw. Daten-Latch 15 verriegelt werden. Wenn das Schreibaktivierungssignal /WE im zweiten Zyklus ansteigt, dekodiert der Statusdekoder 236 Befehle, die im Statusregister 235 und im Befehlsregister 237 gespeichert sind, legt ein Steuersignal an den Programmierspannungsgenerator 4 an und beginnt den Programmiervorgang.
Der Programmierspannungsgenerator 4 reagiert auf ein Signal von der Befehlsportsteuerung 2 (dem Statusdekoder 236), um die hohe Programmierspannung Vpp an den X-Dekoder 12 und den Y-Dekoder 11 anzulegen. Der X-Dekoder 12 und der Y-Dekoder 11 dekodieren die internen Adreßbits, die im Adreß-Latch 10 verriegelt sind. Der X-Dekoder 12 überträgt dann eine hohe Spannung mit dem Programmierpegel Vpp auf eine entsprechende Wortleitung im Speicherzellenfeld 13 und der Y-Dekoder 11 legt ein Spaltenauswahlsignal an die Y-Gatterschaltung 14 an. Das Daten-Latch 15 überträgt eine hohe Schreibspannung entsprechend dem Wert "0" auf eine Bitleitung. Entsprechend wird eine hohe Spannung an das Steuer- Gate und die Drain der adressierten Speicherzelle angelegt, Elektronen werden in das Floating-Gate injiziert und der Wert "0" wird geschrieben.
Dann wird die Programmierung beendet durch Schreiben eines Programmierverifizierbefehls in das Statusregister 235 und das Befehlsregister 237, und es wird eine interne Verifizierspannung zum Verifizieren der Daten einer neu programmierten Speicherzelle erzeugt. Die vom Lösch-/Programmierverifizierungsgenerator 9 erzeugte Programmierverifizierungsspannung wird über den X-Dekoder 12 auf eine ausgewählte Wortleitung im Speicherzellenfeld 13 übertragen. Daten der adressierten Speicherzelle des Speicherzellenfeldes 13 werden über die Y-Gatterschaltung 14 zur Leseschaltung 7 übertragen. Die übertragenen Daten werden von der Leseschaltung 7 erfaßt und verstärkt und dann zum Ausgabepuffer übertragen, der im Ein-/Ausgabepuffer 6 enthalten ist.
Durch das auf einen niedrigen Pegel gesetzte Ausgabeaktivierungssignal /OE aktiviert die CE/OE-Logikschaltung 8 den Ausgabepuffer, der im Ein-/Ausgabepuffer 6 enthalten ist und die Daten von der Leseschaltung 7 auf den Datenbus 120 überträgt. Es wird extern ermittelt, ob die Daten auf dem Datenbus 120 mit den Programmierdaten übereinstimmen oder sich von ihnen unterscheiden, und es wird bestimmt, ob das Datenschreiben (Programmieren) genau ausgeführt worden ist. Falls keine exakte Programmierung erfolgte, so wird der Programmierzyklus erneut ausgeführt und die Programmierung nochmals ausgeführt. Nun erfolgt eine genauere Beschreibung dieses Löschvorgangs und des Programmiervorgangs.
Fig. 14 zeigt ein Flußdiagramm des Löschvorgangs in dieser nicht- flüchtigen Halbleiterspeichereinrichtung. Zuerst wird in der Initialisierungsstufe eine hohe Programmierspannung Vpp an die Befehlsportsteuerung 2 angelegt, um die Befehlsportsteuerung 2 zu aktivieren (Schritt S2). Dann werden bestimmte Daten (00h) für alle Bytes programmiert (die Datenein-/ausgabe erfolgt in Einheiten zu einem Byte und auch das Löschen wird in Einheiten zu einem Byte ausgeführt). Diese Datenprogrammierung erfolgt, um jede Speicherzelle in einen geschriebenen Zustand zu bringen und die Schwellenspannung aller Speicherzellen im wesentlichen gleich zu machen. Ferner wird jeder Zähler auf einen vorbestimmten Anfangswert voreingestellt (Schritt S6). Dieser Zähler weist einen Zähler zum Zählen der Anzahl CUMTEW von Erhöhungen der Löschimpulsbreite TEW und einen Zähler zum Zählen der Anzahl PLSCNT von erzeugten Löschimpulsen auf. Die Adresse wird auf 0 gesetzt.
Dann wird ein Löscheinstellbefehl in die Befehlsportsteuerung 2 (Statusregister 235 und Befehlsregister 237) geschrieben (Schritt S8), und ein Löschbefehl wird anschließend in die Befehlsportsteuerung 2 geschrieben. Eine Löschung bezüglich aller Speicherzellen wird in Übereinstimmung mit dem Schreiben des Löschbefehls ausgeführt (Schritt S12). Nachdem eine vorbestimmte Zeitspanne verstrichen ist, wird festgestellt, daß das Löschen der Speicherzellen abgeschlossen ist. Es wird ein Löschverifizierungsbefehl in die Befehlsportsteuerung 2 (Statusregister 235 und Befehlsregister 237) geschrieben (Schritt S14). In Übereinstimmung mit diesem Löschverifizierungsbefehl wird vom Lösch-/Programmierverifizierungsgenerator 9 eine Löschverifizierungsspannung erzeugt und dann über den X-Dekoder 12 auf eine ausgewählte Wortleitung im Speicherzellenfeld übertragen (Schritt S16). Nachdem eine vorbestimmte Zeitspanne verstrichen ist (Zeit T2) wird ein Datenlesen ausgeführt (Schritt S18).
Wenn die gelesenen Daten gelöschte Daten sind, so lautet der Wert "1". Wenn die gelesenen Daten ungelöschte Daten sind, so lautet der Wert "0". Entsprechend diesem Wert wird ermittelt, ob diese Daten gelöscht sind oder nicht (Schritt S20). Wenn der Wert den nicht- gelöschten Zustand anzeigt, dann wird die Löschimpulsbreite, die angelegt wird, um die Daten zu löschen, um einen vorbestimmten Wert erhöht, und diese Information über die erhöhte Löschimpulsbreite wird im TEW-Zähler gespeichert (Schritt S22). Es erfolgt zuerst die Bestimmung, ob die im TEW-Zähler gespeicherte Löschimpulsbreite einen maximalen Grenzwert erreicht. Anschließend wird ermittelt, ob die Anzahl der angelegten Löschimpulse einen vorbestimmten Wert (64 mal) erreicht (Schritt S24). Wenn die Anzahl der Löschimpulszufuhren PLSCNT den vorbestimmten Wert (64mal) erreicht, wird festgestellt, daß für diese Speicherzelle kein weiterer Löschvorgang möglich ist und ein Löschfehler wird gespeichert (Schritt S26). Wenn die Anzahl der Löschimpulszufuhren PLSCNT den vorbestimmten Wert in Schritt S24 nicht erreicht, kehrt der Prozeß zu Schritt S8 zurück, in dem der Schreib- und Löschvorgang durch den Löscheinstellbefehl und den Löschbefehl ausgeführt wird.
Wenn der Speicherzellenwert in Schritt S20 gelöscht wird, wird ermittelt, ob die Adresse der Speicherzelle die letzte Adresse ist (Schritt S28). Ist diese Adresse nicht die letzte Adresse, dann wird sie erhöht (Schritt S30) und die Verarbeitung kehrt zu Schritt S14 zurück. Das bedeutet, daß eine Löschverifizierung entsprechend der erhöhten Adresse ausgeführt wird. Wenn die Daten der Speicherzelle der letzten Adresse in Schritt S28 verifiziert werden, so wird ein Lesebefehl in das Statusregister 235 und das Befehlsregister 237 geschrieben, um die Register 235 und 237 zurückzusetzen (Schritt S32). Der Löschzyklus ist beendet.
Wie oben beschrieben worden ist, wird die Löschimpulsbreite TEW vergrößert und der Löschvorgang wiederholt, wenn im Löschzyklus der Speicherzellenwert nicht gelöscht worden ist. Der Verifizierungsvorgang beginnt mit einer letzten nicht-gelöschten Speicherzelle.
Fig. 15 zeigt das Flußdiagramm eines Programmiervorgangs. Nun erfolgt eine Beschreibung des Programmiervorgangs der nicht­ flüchtigen Halbleiterspeichereinrichtung unter Bezugnahme auf die Fig. 12, 13 und 15.
Ein Programmierzyklus wird gestartet durch externes Anlegen einer hohen Spannung Vpp mit 12V (Schritt S50) und Initialisierung des Impulszählers (Schritt S52).
Dann wird ein Programmiereinstellbefehl in das Befehlsregister 237 und das Statusregister 235 geschrieben (Schritt S54) und externe Adreßbits A0-Am sowie Daten werden anschließend verriegelt (Schritt S56). Nachdem Daten und Adresse verriegelt worden sind, wird ein Schreiben von Daten in eine adressierte Speicherzelle unter der Steuerung durch die Befehlsportsteuerung 2 ausgeführt. Wenn eine vorbestimmte Zeitspanne T1 verstrichen ist (Schritt S58) wird ein Programmierverifizierungsbefehl in das Befehlsregister 237 und das Statusregister 235 geschrieben (Schritt S60). Eine Programmierverifizierungsspannung wird vom Lösch- /Programmierverifizierungsgenerator 9 in Übereinstimmung mit dem Programmierverifizierungsbefehl erzeugt und dann über den X-Dekoder 12 an eine Wortleitung übertragen, die mit der adressierten Speicherzelle verbunden ist. Nachdem eine vorbestimmte Zeitspanne (T2) verstrichen ist, werden Daten aus der adressierten Speicherzelle gelesen, um die programmierten Daten zu verifizieren (Schritt S64).
Das Datenlesen wird ausgeführt durch ein Abfallen des Ausgabeaktivierungssignals /OE auf einen niedrigen Pegel. Es wird ermittelt, ob die gelesenen Daten mit den Programmierdaten übereinstimmen (Schritt S66). Wenn sie nicht gleich sind, wird der Impulszählwert PLSCNT erhöht, um die Programmierzeit zu verlängern, und es wird ermittelt, ob diese Impulsnummer PLSCNT gleich einem vorbestimmten Wert (23) ist. Wenn die Impulsnummer niedriger als der vorbestimmte Wert ist, kehrt der Prozeß zu Schritt S54 zurück und die Programmierung wird erneut ausgeführt (Schritt S68).
Wenn die Impulsnummer PLSCNT den vorbestimmten Wert (23) in Schritt S68 erreicht, wird festgestellt, daß die Speicherzelle nicht programmierbar ist und ein Programmfehler wird gespeichert (Schritt S70). Das bedeutet, daß ein wiederholtes Anlegen von Impulsen mit vorbestimmter Breite bis zu einem maximalen Wiederholungswert von 25 zu einer Erweiterung der Programmierzeit führt. Wenn diese Programmierzeit einen vorbestimmten Wert erreicht, wird ein Programmierfehler der nicht-flüchtigen Halbleiterspeichereinrichtung erfaßt.
Wenn die gelesenen Daten und die Programmierdaten in Schritt S66 miteinander übereinstimmen, wird ermittelt, ob ein weiteres Datenbyte programmiert werden soll (Schritt S72). Wenn in Schritt S72 festgestellt wird, daß Daten in ein anderes Byte geschrieben werden sollen, wird die nächste Adresse verriegelt und die Programmierfolge ab Schritt S52 wird wiederholt (Schritt S74). Wenn in Schritt S72 eine letzte Adresse der zu programmierenden Speicherzelle erreicht wird, so wird ein Lesebefehl in das Statusregister 235 und das Befehlsregister 237 geschrieben, um beide Register 235 und 237 in einen Rückstellzustand zu bringen.
Die in Fig. 15 gezeigte Programmierfolge wird auch als Folge (für Schritt S4) benutzt, wenn in der Löschfolge von Fig. 14 der Wert "00h" in alle Speicherzellen geschrieben wird, um alle Speicherzellen in einen programmierten Zustand zu bringen und ihre Schwellenspannungen einzustellen.
Bei der nicht-flüchtigen Halbleiterspeichereinrichtung, wie sie oben beschrieben worden ist, erfolgt das Löschen der Speicherzellendaten durch elektrisches Abziehen von Elektronen aus dem Floating-Gate mittels eines Tunnelstroms. Wie in Fig. 16 gezeigt ist, werden in diesem Fall Elektronen weitgehend aus dem Floating-Gate 106 herausgezogen, so daß ein Zustand auftritt, bei dem das Floating- Gate 106 positiv geladen ist. Dieser Zustand wird als übermäßig gelöschter Zustand bezeichnet. Im übermäßig gelöschten Zustand bewirken die im Floating-Gate 106 gespeicherten positiven Ladungen, daß Elektronen zur Oberfläche des Kanalbereichs 112 gezogen werden. Selbst wenn das Steuer-Gate 108 auf einem Massepotential gehalten wird, tritt dieser Kanalbereich 112 auf und die Speicherzellen sind stets durchgeschaltet (Verarmungszustand), wie durch die gestrichelte Linie in Fig. 11 dargestellt ist.
Um einen solchen übermäßig gelöschten Zustand zu verhindern, wird am Anfang des Löschzyklus der Wert "00h" in alle Speicherzellen geschrieben, um ihre Schwellenspannungen auf einen ausreichend hohen Wert einzustellen. Anschließend wird der Löschvorgang ausgeführt. Wenn jedoch nicht gelöschte Speicherzellen im Löschzyklus erfaßt werden, werden Löschimpulse an alle Speicherzellen angelegt und die Löschfolge wird wiederholt. Weil die Löschspannung auch an gelöschte Speicherzellen angelegt wird, tritt ein übermäßig gelöschter Zustand unvermeidlicherweise auf. Die Schwierigkeiten mit solchen übermäßig gelöschten Speicherzellen werden nun unter Bezugnahme auf Fig. 17 beschrieben.
In Fig. 17 sind die Speicherzellen MC1, MC2 und MC3, die an Kreuzungen der drei Wortleitungen WL1, WL2 und WL3 mit einer einzelnen Bitleitung BL gebildet sind, nur zum Zweck der Darstellung gezeigt. Es wird angenommen, daß die Speicherzelle MC1 den Wert "1" im gelöschten Zustand speichert, die Speicherzelle MC2 in einem übermäßig gelöschten Zustand ist und die Speicherzelle MC3 den Wert "0" im programmierten Zustand speichert. Nun wird der Fall betrachtet, daß der gespeicherte Wert "1" der Speicherzelle MC1 gelesen wird. In diesem Fall steigt das Potential der Wortleitung WL1 auf einen logisch hohen Pegel an und die Wortleitungen WL2 und WL3 befinden sich auf einem Massepotential. Weil die Speicherzelle MC1 den Wert "1" speichert, fließt in diesem Fall ein Strom über die Bitleitung BL1 und der Wert "1" wird gelesen. In diesem Fall tritt kein Problem auf.
Wenn der Wert der Speicherzelle MC3 gelesen wird, wird das Potential der Wortleitung WL3 auf einen logisch hohen Wert gesetzt und die Wortleitungen WL2 und WL3 werden auf dem Massepotential gehalten. Hier speichert die Speicherzelle den Wert "0" und befindet sich in einem Sperrzustand. Weil jedoch die Speicherzelle MC2 im übermäßig gelöschten Zustand ist, fließt ein Strom von der Bitleitung BL über diese Speicherzelle MC2 zu einer Source S, selbst wenn das Potential der Wortleitung WL2 gleich dem Massepotential ist. Somit wird ermittelt, daß die Speicherzelle MC3 den Wert "1" speichert, und ein fehlerhaftes Datenlesen wird ausgeführt. Entsprechend tritt das Problem auf, daß das Datenlesen nicht sicher ist, wenn irgendeine Speicherzelle im übermäßig gelöschten Zustand ist.
Eine solche Speicherzelle im übermäßig gelöschten Zustand wird durch Einflüsse erzeugt, die durch lokale Effekte im Speicherzellenfeld (d. h. Filmdicke des Gate-Isolierfilms oder Umfang der kapazitiven Kopplung zwischen dem Steuer-Gate 108 und dem Floating-Gate 106) ausgeübt werden, selbst wenn die Anzahl der Löschimpulszuführungen klein ist. Wenn eine solche Speicherzelle im übermäßig gelöschten Zustand vorhanden ist, wird die Halbleiterspeichereinrichtung als defektes Produkt ausgesondert, weil ein exaktes Datenprogrammieren und -löschen nicht ausgeführt werden kann, selbst wenn sich die anderen Speicherzellen in einem normalen Zustand befinden. Das führt zu einer Verminderung der Produktionsausbeute für die Halbleiterspeichereinrichtung.
Des weiteren ist aus der US-PS 4 519 050 eine nicht-flüchtige Halbleiterspeichereinrichtung nach dem Oberbegriff des Patentanspruchs 1 bekannt. Bei dieser bekannten nicht-flüchtigen Halbleiterspeichereinrichtung wird eine einzelne, nicht löschbare EPROM-Zelle dazu verwendet, die Betriebsweise (z. B. das Verhalten von Eingangs-Anschlüssen oder das Umschalten zwischen zwei möglichen, sich jedoch gegenseitig ausschließenden Funktionen) des Speichers in gewünschter Weise dauerhaft zu modifizieren.
Diese nicht löschbare Zelle wird jedoch nicht dazu verwendet, Informationen zu speichern, wie weit die gesamte Halbleiterspeichereinrichtung eingesetzt werden kann.
Es ist Aufgabe der Erfindung, eine nicht-flüchtige Halbleiterspeichereinrichtung vorzusehen, bei der die Rate, mit der die Halbleitereinrichtung als defektes Produkt ausgesondert wird, erheblich reduziert werden kann, selbst wenn eine übermäßig gelöschte Speicherzelle vorhanden ist.
Diese Aufgabe wird gelöst durch eine nicht-flüchtige Halbleiterspeichereinrichtung mit den Merkmalen des Patentanspruchs 1.
Des weiteren ist erfindungsgemäß ein Herstellungsverfahren für eine derartige Halbleiterspeichereinrichtung nach Patentanspruch 9 vorgesehen.
Bevorzugte Ausgestaltungen der Halbleiterspeichereinrichtung ergeben sich aus den zugehörigen Unteransprüchen.
Wenn bei der genannten nicht-flüchtigen Halbleiterspeichereinrichtung eine übermäßig gelöschte Speicherzelle vorhanden ist, wird ein Löschen durch Bestrahlen mit einem Energiestrahl ausgeführt und der übermäßige Löschzustand wird eliminiert. Diese nicht-flüchtige Halbleiterspeichereinrichtung kann als Speichereinrichtung benutzt werden, bei der Daten unter der Steuerung durch eine externe Schaltung nur einmal geschrieben werden, wobei der Betrieb der Schreib-/Löschsteuerschaltung gesperrt ist.
Wenn beim Herstellungsverfahren für die nicht-flüchtige Halbleiterspeichereinrichtung in einem blanken Chip eine übermäßig gelöschte Speicherzelle vorhanden ist, dann werden alle Speicherzellen durch Bestrahlen mit einem Energiestrahl, wie z. B. ultraviolettem Licht, gelöscht und dann montiert. Diese nicht- flüchtige Halbleiterspeichereinrichtung kann dann als Festwertspeicher verwendet werden, die nur einmal programmierbar ist, selbst wenn eine übermäßig gelöschte Speicherzelle vorhanden ist.
Es folgt die Beschreibung von Ausführungsbeispielen anhand der Figuren. Von den Figuren zeigen:
Fig. 1 ein Diagramm der Gesamtstruktur einer nicht-flüchtigen Halbleiterspeichereinrichtung nach einer Ausführungsform der Erfindung;
Fig. 2 ein Flußdiagramm, das den Ablauf der Herstellung einer Ausführungsform der erfindungsgemäßen nicht-flüchtigen Halbleiterspeicher­ einrichtung zeigt, bis die Speichereinrichtung als endgültiges Produkt vervollständigt ist;
Fig. 3 das Diagramm eines Beispiels für ein Verfahren zum Wiederherstellen einer übermäßig gelöschten Speicherzelle in einen elektrisch neutralen Löschzustand;
Fig. 4 ein schematisches Diagramm der Struktur einer UPROM-Zelle, die in einer Flash/OTP-Identifizierungs-Speicherschaltung 1 der Fig. 1 enthalten ist;
Fig. 5 das Diagramm eines speziellen Beispiels der Struktur der Flash/OTP-Identifizierungs-Speicherschaltung und einer Speicherleseschaltung von Fig. 1;
Fig. 6 das Diagramm einer speziellen Struktur des Flash/OTP-Vpp- Umschalters von Fig. 1;
Fig. 7 ein schematisches Diagramm der Struktur eines Daten-Latch von Fig. 1;
Fig. 8 ein schematisches Diagramm der Struktur eines Adreß-Latch von Fig. 1;
Fig. 9 ein schematisches Diagramm der Struktur einer Flash- Speicherzelle mit einem Floating-Gate-Transistor;
Fig. 10 ein Ersatzschaltbild der Flash-Speicherzelle von Fig. 9;
Fig. 11 ein Diagramm der Beziehung zwischen der Speicher­ information und der Schwellenspannung der Flash- Speicherzelle;
Fig. 12 ein schematisches Blockdiagramm der Struktur einer nicht- flüchtigen Halbleiterspeichereinrichtung;
Fig. 13 ein schematisches Blockdiagramm der Struktur der Befehlsportsteuerung von Fig. 12;
Fig. 14 ein Flußdiagramm des Löschvorgangs bei der nicht- flüchtigen Halbleiterspeichereinrichtung von Fig. 12;
Fig. 15 ein Flußdiagramm des Programmiervorgangs bei der nicht- flüchtigen Halbleiterspeichereinrichtung von Fig. 12;
Fig. 16 das Diagramm eines Beispiels für den Zustand einer übermäßig gelöschten Speicherzelle in der nicht-flüchtigen Halbleiterspeichereinrichtung von Fig. 12; und
Fig. 17 ein Diagramm zur Erläuterung nachteiliger Einflüsse durch eine übermäßig gelöschte Speicherzelle.
Fig. 1 zeigt ein Blockdiagramm der Gesamtstruktur einer nicht- flüchtigen Halbleiterspeichereinrichtung nach einer Ausführungsform der vorliegenden Erfindung. Fig. 1 zeigt die Struktur eines Flash- Speichers, bei dem alle Speicherzellen in einem Speicherzellenfeld 13 gleichzeitig in einen Löschzustand versetzt werden. Diese Struktur entspricht der Struktur der in Fig. 12 dargestellten nicht- flüchtigen Halbleiterspeichereinrichtung. Die Struktur der Speichereinrichtung nach der vorliegenden Erfindung ist jedoch nicht nur auf Flash-Speicher anwendbar, bei denen alle Speicherzellen des Speicherzellenfeldes 13 gleichzeitig gelöscht werden, sondern ebenfalls auf eine nicht-flüchtige Halbleiterspeichereinrichtung des Typs, bei dem die Löschung in Einheiten von einem Sektor, einer Wortleitung oder einem Byte erfolgt. Abschnitte der Speichereinrichtung von Fig. 1, die denen der nicht-flüchtigen Halbleiterspeichereinrichtung von Fig. 12 entsprechen, sind mit denselben Bezugszeichen versehen und eine detaillierte Beschreibung von ihnen wird hier nicht wiederholt.
Die nicht-flüchtige Halbleiterspeichereinrichtung von Fig. 1 nach einer Ausführungsform der vorliegenden Erfindung weist eine auch Speichertyp-Einstelleinrichtung genannte Flash/OTP-Identifizierungs-Speicherschaltung 1 zum Speichern von Information in nicht-flüchtiger und lesbarer Weise, die angibt, ob diese nicht-flüchtige Halbleiterspeichereinrichtung ein Flash- Speicher oder ein einmal-programmierbarer Festwertspeicher (im weiteren als OTPROM bezeichnet) ist, einen Flash/OTP-Vpp-Umschalter 3 zum Umschalten eines Pfads entlang dessen eine hohe Spannung Vpp während der Programmierung erzeugt wird in Übereinstimmung mit der Speicherinformation der Flash/OTP-Identifizierungs-Speicherschaltung 1, eine Speicherleseschaltung 17 zum Auslesen der Speicherinformation der Flash/OTP-Identifizierungs-Speicherschaltung 1 auf einen Datenbus 120, und einen Vpp/Vcc-Umschalter 21 zum internen Erzeugen von entweder der hohen Spannung Vpp oder der Versorgungsspannung Vcc in Abhängigkeit von einem Steuersignal von einer Befehlsportsteuerung 2 auf. Dieser Flash/OTP-Vpp-Umschalter 21 weist eine Ladungspumpschaltung auf und erzeugt intern die hohe Spannung Vpp. Entweder die hohe Spannung Vpp oder die Betriebsversorgungsspannung Vcc wird vom Flash/OTP-Vpp-Umschalter 21 entsprechend seinem Betriebsmodus erzeugt (das ist in Fig. 1 durch Vpp/Vcc dargestellt).
Wenn diese nicht-flüchtige Halbleiterspeichereinrichtung während einer Prüfung auf Wafer-Ebene (blanker Chipzustand) in einen übermäßig gelöschten Zustand gebracht wird, so gibt es eine übermäßig gelöschte Speicherzelle und die Speichereinrichtung wird durch Bestrahlen mit einem Energiestrahl in einen Löschzustand gebracht (üblicherweise wird ultraviolettes Licht verwendet). Die Flash/OTP-Identifizierungs-Speicherschaltung 1 speichert Information, die den oben angeführten Sachverhalt angibt. Wenn Information gespeichert wird, die das Bestrahlen mit dem Energiestrahl anzeigt, stellt die Flash/OTP-Identifizierungs- Speicherschaltung 1 die Befehlsportsteuerung 2 zurück und sperrt Lösch- und Schreibvorgänge der Befehlsportsteuerung 2. Genauer gesagt wird ein Ausgangssignal OTP und/oder ein Signal /OTP von der Flash/OTP-Identifizierungs-Speicherschaltung 1 an die WE/CE- Steuerlogikschaltung 231 angelegt, die in Fig. 13 gezeigt ist, so daß die WE/CE-Steuerlogikschaltung 231 zurückgesetzt und ein internes Schreibaktivierungssignal CWE in einem inaktiven Zustand gehalten wird.
In diesem Fall kann ein Aufbau benutzt werden, bei dem ein Signal, das einer ODER-Operation des Signals OTP entsprechend der Speicherinformation und des Schreibaktivierungssignals /WE unterworfen wird, an die WE/CE-Steuerlogikschaltung 231 angelegt wird. Alternativ kann ein anderer Aufbau verwendet werden. Wenn die Speicherinformation der Flash/OTP-Identifizierungs-Speicherschaltung 1 die Bestrahlung mit dem Energiestrahl anzeigt, läßt der Flash/OTP- Vpp-Umschalter 3 eine angelegte hohe Spannung Vpp durch und legt sie an den Y-Dekoder 11 und den X-Dekoder 12 an. Wenn die Speicherinformation andererseits keine Bestrahlung mit dem Energiestrahl anzeigt, legt der Flash/OTP-Vpp-Umschalter 3 eine Programmierspannung von einem Programmierspannungsgenerator 4 an den Y-Dekoder 11 und den X-Dekoder 12 an. Einem Daten-Latch 15 wird eine externe hohe Spannung zugeführt. Der restliche Aufbau dieser nicht­ flüchtigen Halbleiterspeichereinrichtung stimmt mit dem der in Fig. 12 gezeigten nicht-flüchtigen Halbleiterspeichereinrichtung überein.
Wenn der Vpp/Vcc-Umschalter 21 gebildet ist, wird vom Vpp/Vcc- Umschalter 21 eine interne Betriebsversorgungsspannung Vcc erzeugt, selbst wenn der Vpp-Anschluß des Umschalters 21 fehlerhaft geöffnet ist, und daher arbeitet die Speichereinrichtung als OTPROM. Wenn die Speichereinrichtung als normaler OTPROM benutzt wird, wird eine Spannung von 5V an diesen Vpp-Eingangsanschluß angelegt.
Fig. 2 zeigt ein Flußdiagramm des Ablaufs vom Zeitpunkt der Herstellung der nicht-flüchtigen Halbleiterspeichereinrichtung von Fig. 1 bis zu dem Zeitpunkt, wenn die hergestellte Einrichtung als Produkt auf den Markt gebracht wird. Unter Bezugnahme auf die Fig. 1 und 2 erfolgt nun eine Beschreibung des Ablaufs von der Herstellung bis zur Vermarktung dieser nicht-flüchtigen Halbleiterspeichereinrichtung.
Zuerst wird mit der nicht-flüchtigen Halbleiterspeichereinrichtung, die durch einen vorbestimmten Herstellungsprozeß gebildet worden ist, ein Test auf Wafer-Ebene ausgeführt, um zu ermitteln, ob die Speichereinrichtung normal arbeitete d. h. mit einem blanken Chip oder einem Zustand, in dem die Einrichtung auf einem Halbleiter- Wafer gebildet ist (Schritt S100). In diesem Fall werden ein Löschtest und ein Schreibtest in Übereinstimmung mit den in den Fig. 14 und 15 gezeigten Abläufen ausgeführt, indem die Befehlsportsteuerung der Fig. 1 betrieben und eine vorbestimmte Testhalterung verwendet wird. In diesem Fall werden verschiedene Arten von Testdatenmustern über den Ein-/Ausgabepuffer 6 geliefert, um die Löscheigenschaften, Schreibeigenschaften und ähnliches zu prüfen.
Durch Ausführen verschiedener Tests auf dieser Wafer-Ebene wird ermittelt, ob die nicht-flüchtige Halbleiterspeichereinrichtung in Einheiten zu einem Chip fehlerhaft oder korrekt arbeitet (Schritt S102). Wenn in Schritt S102 ermittelt wird, daß die Einrichtung fehlerhaft arbeitet, wird bestimmt, ob der Grund dafür eine übermäßige Löschung ist (Schritt S104). Diese Bestimmung, ob es sich um eine übermäßige Löschung handelt oder nicht, wird durch Lesen von Daten in einem Zustand ausgeführt, in dem alle Ausgänge des X-Dekoders 12 auf einem Massepotential gehalten und die Spaltenauswahlsignale vom Y-Dekoder nacheinander in einen ausgewählten Zustand gebracht werden. Ein Testmodus zur Ermittlung der übermäßigen Löschung kann auf einfache Weise z. B. durch Anweisen eines Testmodus für übermäßiges Löschen über den Ein-/Ausgabepuffer 6 an die Befehlsportsteuerung 2 von Fig. 1 implementiert werden.
Wenn eine übermäßig gelöschte Speicherzelle vorhanden ist, fließt ein Strom durch die Bitleitung BL und das Ausgangssignal der Leseschaltung 7 wird in einen Zustand versetzt, der einem Wert "1" entspricht. Durch Lesen des Ausgangssignals der Leseschaltung 7 vom Ein-/Ausgabepuffer 6 auf den Datenbus 120, wenn das Signal /OE auf einen niedrigen Pegel gefallen ist, wird ermittelt, ob eine übermäßig gelöschte Speicherzelle vorhanden ist. Ist keine übermäßig gelöschte Speicherzelle vorhanden, so sind alle Lesedaten gleich "0". In diesem Fall wird ermittelt, daß dieser Chip aufgrund anderer Ursachen als übermäßiges Löschen fehlerhaft arbeitet. Dieser defekte Chip wird ausgesondert (Schritt S106).
Wenn andererseits der Wert "1" gelesen wird, wird festgestellt, daß die Ursache für den defekten Chip eine übermäßig gelöschte Speicherzelle ist, falls andere defekte Teile nicht existieren. In diesem Fall werden durch Setzen des Anschlusses A0 auf eine hohe Spannung von ungefähr 10V Daten "0" in die Flash/OTP- Identifizierungs-Speicherschaltung 1 geschrieben. Die Flash/OTP- Identifizierungs-Speicherschaltung 1 speichert den Wert "0" in nicht-flüchtiger und lesbarer Weise (ihr Aufbau wird weiter unten im Detail beschrieben).
Nachdem in Schritt S108 der Wert "0" in die Identifizierungs- Speicherschaltung 1 geschrieben worden ist, wird der Speicherfeldabschnitt 13 des Chips, von dem festgestellt wurde, daß er aufgrund der übermäßig gelöschten Speicherzelle fehlerhaft arbeitet, mit einem Energiestrahl bestrahlt, z. B. mit ultraviolettem Licht, so daß alle Speicherzellen im Speicherzellenfeld 13 in einen neutralen Löschzustand gebracht werden (Schritt S110).
Nach dem Löschvorgang durch die Bestrahlung mit ultraviolettem Licht wird ein Chip auf dem Wafer (ein blanker Chip: ein Chip, der sich nicht in einem Gehäuse befindet) ausgeschnitten und in Einheiten zu einem Chip abgetrennt. Anschließend wird der Chip in einem Gehäuse untergebracht (Schritt S112).
Nach der Montage in Schritt S112 wird ein letzter Test mit dieser nicht-flüchtigen Halbleiterspeichereinrichtung ausgeführt. Das bedeutet, daß in Schritt S114 zuerst ein Adreßbit A1 mit hoher Spannung an die Speicherleseschaltung 17 angelegt wird und die in der Flash/OTP-Identifizierungs-Speicherschaltung 1 gespeicherte Information auf den Datenbus 120 ausgelesen wird. Wenn die gelesenen Daten gleich "0" sind, wird diese nicht-flüchtige Halbleiterspeichereinrichtung als OTPROM identifiziert. Wenn die gelesenen Daten gleich "1" sind, wird diese Speichereinrichtung als Flash-Speicher identifiziert.
Nach der Identifizierung des Typs der Speichereinrichtung in Schritt S114 wird eine Blankprüfung (Blank-Check-Test) mit der Speichereinrichtung ausgeführt, die als OTPROM identifiziert worden ist, um zu verifizieren, daß alle Speicherzellen gelöscht sind. Das Produkt, das diese Blankprüfung besteht, wird als OTPROM auf den Markt gebracht (Schritt S116).
Andererseits wird die als Flash-Speicher identifizierte Speichereinrichtung verschiedenen Tests unterworfen, nachdem sie in das Gehäuse montiert worden ist, d. h. Betriebsprüfung durch Schreiben verschiedener Datenmuster, Löscheigenschaftsprüfung, Schreibeigenschaftsprüfung, Leseeigenschaftsprüfung etc. Danach werden die Produkte, die diese Prüfungen bestanden haben, als Flash- Speicher auf den Markt gebracht (Schritt S118).
Wie oben beschrieben worden ist kann durch Verwendung der nicht- flüchtigen Halbleiterspeichereinrichtung als OTPROM, die wegen des Vorhandenseins der übermäßig gelöschten Speicherzelle den Test nicht bestanden hat, die Anzahl der nicht-flüchtigen Halbleiterspeichereinrichtungen wesentlich vermindert werden, die als defekte Produkte ausgesondert werden.
Ein normaler OTPROM ist eine Speichereinrichtung, die ihre Löschbarkeit durch ultraviolettes Licht wegen der Montage in einem Kunststoffgehäuse, das kein teures Ultraviolettfenster des mit ultraviolettem Licht löschbaren EPROM (elektrisch programmierbarer Festwertspeicher) aufweist, verloren hat. Dieser OTPROM wird in der Praxis häufig als billige Speichereinrichtung für Anwendungen benutzt, bei denen es nahezu unnötig ist, die einmal programmierten Daten neu zu schreiben.
Wenn die erfindungsgemäße Speichereinrichtung als Flash-Speicher verwendet wird, wird das Löschen und Schreiben unter der Steuerung durch die Befehlsportsteuerung 2 ausgeführt. Wenn in der als OTPROM eingestellten Speichereinrichtung eine Programmierung ausgeführt wird, wird die Befehlsportsteuerung 2 durch Speicherdaten (Daten "0") der Flash/OTP-Identifizierungs-Speicherschaltung in einen Betriebssperrzustand gebracht. In diesem Fall werden das Adreß-Latch 10 und das Daten-Latch 15 in einen Durchlaßzustand versetzt, in dem die Latches 10 und 15 erlauben, daß angelegte Daten unverändert durchgehen. In diesem Zustand wählt der Flash/OTP-Vpp-Umschalter 3 eine angelegte hohe Spannung Vpp aus und legt sie an den X-Dekoder 12 und den Y-Dekoder 11 an. Dem Daten-Latch 15 wird die hohe Spannung Vpp zugeführt. Entsprechend wird in diesem Fall die Datenprogrammierung in Übereinstimmung mit den angelegten Adreßbit A0-Am und den Schreibdaten vom Ein-/Ausgabepuffer 6 ausgeführt. In diesem OTPROM wird nur ein Datenschreiben oder -programmieren ausgeführt und die Programmierdaten werden nicht überprüft. Abstimmungen zwischen den Taktsignalen für die Adreßbits A0-Am und die Programmierdaten D0-D7 erfolgen durch eine externe Steuereinrichtung.
Im Fall des OTPROM wird eine Spannung von 5V der Betriebsversorgungsspannung Vcc an einen Anschluß für die hohe Spannung Vpp angelegt. Die Befehlsportsteuerung 2 wird deaktiviert, wenn diese hohe Spannung gleich 5V ist. Entsprechend können zum Datenlesen im OTPROM Daten von Speicherzellen an Adressen, die von den Adreßbits A0-Am bezeichnet werden, nur in Übereinstimmung mit dem Chipaktivierungssignal ICE und dem Ausgabeaktivierungssignal /OE unter der Steuerung der Chipaktivierungs-/Ausgabeaktivierungs- Logikschaltung 8 auf den Datenbus 120 ausgelesen werden.
Im Fall des Flash-Speichers wird den Registern 235 und 237 der Befehlsportsteuerung 2 ein Lesebefehl zugeführt. Die Befehlsportsteuerung 2 wird daraufhin zurückgesetzt und ein Datenlesevorgang wird unter der Steuerung durch die Signale /CE und /OE neben der Steuerung durch die Befehlsportsteuerung 2 ausgeführt.
Nun erfolgt eine Beschreibung der detaillierten Konfiguration der Flash/OTP-Identifizierungs-Speicherschaltung 1, des Flash/OTP-Vpp- Umschalters 3 und der Speicherleseschaltung 17.
Fig. 3 zeigt das Diagramm eines Beispiels für ein Verfahren zum Wiederherstellen einer übermäßig gelöschten Speicherzelle in einen elektrisch neutralen Zustand. Wie in Fig. 3 gezeigt ist, wird ein Energiestrahl von z. B. ultraviolettem Licht auf das gesamte Speicherzellenfeld gerichtet. Die Photonenenergie hv dieses Energiestrahls (ultraviolettes Licht) bewirkt eine Erzeugung von (überschüssigen) positiven Ladungen, die in einem Floating-Gate 106 vorhanden sind und die erzeugten positiven Ladungen bewegen sich zu einem Halbleitersubstrat 100, einem Steuer-Gate 108 etc. Entsprechend wird das Floating-Gate 106 wieder in einen elektrisch neutralen Zustand versetzt. Dieser Vorgang ist der Löschung eines EPROM mit ultraviolettem Licht sehr ähnlich.
Fig. 4 zeigt einen Querschnitt der Struktur eines Speicherelements zum Speichern der Identifizierungsinformation, das in der Flash/OTP- Identifizierungs-Speicherschaltung enthalten ist. Wie in Fig. 4 gezeigt ist weist das Speicherelement zum Speichern der Flash/OTP- Identifizierungsinformation n-Störstellenbereiche 302′ und 304′, die in der Oberfläche eines Halbleitersubstrats 300 gebildet sind, ein Floating-Gate 306′, das auf einem Kanalbereich zwischen den Störstellenbereichen 302′ und 304′ gebildet ist, wobei sich ein Isolierfilm zwischen dem Floating-Gate und dem Kanalbereich befindet, und ein Steuer-Gate 308′, das auf dem Floating-Gate 306′ mit einem Zwischenschichtisolierfilm dazwischen gebildet ist, auf. Dieser Aufbau ist derselbe wie der einer Flash-Speicherzelle in einem Speicherzellenfeld.
Dieses Speicherelement weist ferner Feldisolierfilme 310a und 310b zum Definieren eines Speicherzellenbereichs, und eine Ultraviolettschutzschicht 320′ aus z. B. Aluminium, die gebildet ist, um das Steuer-Gate 308′, das Floating-Gate 306 und die Störstellenbereiche 302′ und 304′ zu bedecken, auf. Obwohl diese Ultraviolettschutzschicht 320′ so dargestellt ist, daß sie die Feldisolierfilme 310a und 310b berührt, kann auch jede andere Struktur benutzt werden, die verhindert, daß der Energiestrahl (ultraviolettes Licht) auf das Floating-Gate 306′ trifft.
Die Struktur des Speicherelements von Fig. 4 ist als UPROM (nicht- löschbarer programmierbarer ROM) bekannt. Der Speicherzellenfeldabschnitt wird mit einem Energiestrahl (ultraviolettes Licht) bestrahlt, wenn die Bestrahlung ausgeführt wird. In diesem Fall wird der Energiestrahl (ultraviolettes Licht) nicht nur auf den Speicherzellenfeldabschnitt, sondern auch auf andere periphere Schaltungsbereiche gerichtet. Durch Verwenden der in Fig. 4 gezeigten Struktur für das Speicherelement wird der auftreffende Energiestrahl von der Energiestrahl-Schutzschicht 320 absorbiert oder reflektiert, und Elektronen, die im Floating-Gate 306 gespeichert sind, nehmen keine Energie vom eingestrahlten Energiestrahl auf. Entsprechend speichert dieses Speicherelement die Information stabil und unveränderbar.
Fig. 5 zeigt ein Diagramm der detaillierten Struktur der Flash/OTP- Identifizierungs-Speicherschaltung und der Speicherleseschaltung von Fig. 1. Wie in Fig. 5 gezeigt ist, weist die Flash/OTP- Identifizierungs-Speicherschaltung 1 einen p-Kanal MOS-Transistor 302 zum Empfangen eines Adreßsignalbits A0 an seinem ersten Leitungsanschluß und einer Versorgungsspannung Vcc an seinem Gate, wobei der zweite Leitungsanschluß mit einem Knoten N1 verbunden ist, einen n-Kanal MOS-Transistor 304, dessen erster Leitungsanschluß mit einem Massepotential und dessen zweiter Leitungsanschluß mit dem Knoten N1 verbunden ist, wobei das Gate eine Betriebsversorgungsspannung Vcc empfängt, und Inverterschaltungen 306 und 308 zum Empfangen des Potentials am Knoten N1 auf. Die Inverterschaltungen 306 und 308 sind parallel geschaltet. Der Transistor 304 ist normalerweise durchgeschaltet, während der Transistor 302 leitend gemacht wird, wenn das Adreßbit A0 einen Spannungspegel über dem der Versorgungsspannung Vcc erreicht.
Die Identifizierungs-Speicherschaltung 1 weist ferner einen n-Kanal MOS-Transistor 310 zum Empfangen einer Versorgungsspannung Vcc an seinem Gate und zum Durchlassen des Ausgangssignals der Inverterschaltung 306, einen p-Kanal MOS-Transistor 314 und einen n- Kanal MOS-Transistor 316, die komplementär zwischen dem Ausgang eines Vpp/Vcc-Umschalters 21 (siehe Fig. 1) und dem Massepotential geschaltet sind und die Ausgangsspannung des Transistors 310 an ihren Gates empfangen, einen n-Kanal MOS-Transistor 312, der parallel zum Transistor 310 geschaltet ist und die Versorgungsspannung Vcc an seinem Gate empfängt, um das Ausgangssignal der Inverterschaltung 306 durchzulassen, einen p-Kanal MOS-Transistor 318 und einen n-Kanal MOS-Transistor 320, die komplementär zwischen dem Ausgangsknoten des Vpp/Vcc-Umschalters 21 und der Versorgungsspannung Vcc geschaltet sind und das Ausgangssignal des Transistors 312 an ihren Gates empfangen, auf. Die Transistoren 310 und 312 sind jeweils in einem Durchlaßzustand und dienen als Register oder Entkopplungstransistoren. Wenn eine hohe Spannung Vpp an einen Leitungsanschluß des jeweiligen der Transistoren 314 und 318 angelegt wird und ihre Gate-Potentiale durch kapazitive Kopplung über eine Betriebsversorgungsspannung steigen, werden die Transistoren 310 und 312 gesperrt und dienen dazu, zu verhindern, daß die angelegte hohe Spannung die Inverterschaltung 306 nachteilig beeinflußt.
Die Identifizierungs-Speicherschaltung 1 weist ferner einen n-Kanal MOS-Transistor 322, der als Widerstand geschaltet ist und als Last wirkt, um eine hohe Spannung Vpp vom externen Pinanschluß für Vpp zu empfangen, einen n-Kanal MOS-Transistor 324 zum Empfangen des Ausgangssignals des Transistors 322 an seinem ersten Leitungsanschluß und zum Empfangen des Ausgangssignals von einer Inverterschaltung, die aus den Transistoren 314 und 316 besteht, an seinem Gate, und eine auch Speichertyp-Speichereinrichtung genannte UPROM-Zelle 16, die zwischen dem Knoten N2 und dem Massepotential gebildet ist, zum Empfangen der Ausgangsspannungen der Transistoren 318 und 320 an seinem Gate und zum Speichern der Flash/OTPROM-Identifizierungsinformation in nicht- flüchtiger Weise auf. Diese UPROM-Zelle 16 besitzt die in Fig. 4 gezeigte Struktur.
Die Identifizierungs-Speicherschaltung 1 weist ferner einen n-Kanal MOS-Transistor 326 zum Empfangen des Ausgangssignals der Inverterschaltung 308 an seinem Gate und zum selektiven Verbinden der Knoten N2 und N3, einen Kondensator 328 zum Einstellen des Potentialpegels des Knotens N3 auf einen hohen Pegel durch seine kapazitive Kopplung beim Einschalten, p-Kanal MOS-Transistoren 332 und 334, die komplementär zwischen einen Vpp/Vcc-Übertragungsknoten und das Massepotential geschaltet sind, zum Empfangen des Potentials am Knoten N3 an ihren Gates, einen p-Kanal MOS-Transistor 336 und einen n-Kanal MOS-Transistor 338, die komplementär zwischen den Vpp/Vcc-Übertragungsknoten und das Massepotential geschaltet sind, zum Empfangen des Ausgangssignals einer Schaltung, die aus den Transistoren 332 und 334 besteht, an ihren Gates, und einen p-Kanal MOS-Transistor 330 zum Empfangen des Ausgangssignals der Schaltung, die aus den Transistoren 332 und 334 besteht, an seinem Gate und zum selektiven Einstellen des Potentials am Knoten N3 auf den Pegel von Vpp/Vcc, auf.
Der Transistor 330 hat die Funktion, das Potential am Knoten N3 entsprechend dem Ausgangssignal der Schaltung einzustellen, die aus den Transistoren 332 und 334 besteht, um den Betrieb dieser Schaltung zu stabilisieren. Ein Identifizierungssignal /OTP wird von der Schaltung ausgegeben, die aus den Transistoren 332 und 334 besteht, während ein Identifizierungssignal OTP von einer Schaltung ausgegeben wird, die aus den Transistoren 336 und 338 besteht. Wenn das Signal /OTP auf einem niedrigen Pegel liegt, wird diese Speichereinrichtung als OTPROM identifiziert. Die Signale /OTP und OTP werden an die Befehlsportsteuerung 2 (genauer gesagt die WE/CE- Steuerlogikschaltung 231 von Fig. 13) angelegt, um den Betrieb der Befehlsportsteuerung 2 selektiv in einen Rückstellzustand (Sperrzustand) einzustellen. Nun wird der Betrieb der Identifizierungs-Speicherschaltung 1 beschrieben.
Wenn ein Versorgungsstrom zugeführt wird oder wenn das Adreßbit A0 auf einem Pegel liegt, der nicht höher als der Pegel der Versorgungsspannung Vcc ist, befindet sich das Potential am Knoten N1 auf einem niedrigen Pegel, die Ausgänge der Inverterschaltungen 306 und 308 sind auf einem hohen Pegel und der Pegel des Potentials am Knoten N3 ist wegen des Kondensators 328 auf einem hohen Pegel. Der Potentialpegel am Knoten N2 ist niedrig, weil der Transistor 324 gesperrt ist, und die UPROM-Zelle 16 befindet sich ursprünglich in einem Löschzustand und wird eingeschaltet, indem sie über den Transistors 320 eine Versorgungsspannung Vcc an ihrem Gate empfängt. In diesem Anfangszustand werden Ladungen, die vom Kondensator 328 injiziert worden sind, über die UPROM-Zelle 16 zur Masse entladen, so daß der Knoten N3 auf einem niedrigen Pegel, das Signal /OTP auf einem hohen Pegel und Signal OTP auf einem niedrigen Pegel liegt.
Wenn in dieser Speichereinrichtung eine übermäßig gelöschte Speicherzelle vorhanden und die Bestrahlung mit einem Energiestrahl (ultraviolettes Licht) notwendig ist, wird der Wert "0" in die UPROM-Zelle 16 geschrieben. Das heißt, daß das Adreßbit A0 auf einen hohen Spannungspegel von ungefähr 10V gesetzt wird. Daraufhin wird der Transistor 302 durchgeschaltet, der Potentialpegel am Knoten N1 wird gleich einem Pegel, der durch das Verhältnis der Durchlaßwiderstände der Transistoren 302 und 304 bestimmt ist, und der Potentialpegel am Knoten N1 wird gleich einem Potentialpegel, der von den Inverterschaltungen 306 und 308 als hoher Pegel bestimmt wird. Entsprechend erreichen die Ausgangssignale der Inverterschaltungen 306 und 308 einen niedrigen Pegel, so daß der Transistor 326 sperrt.
Als Reaktion auf ein Signal mit niedrigem Pegel von der Inverterschaltung 306, schalten die Transistoren 314 und 318 durch und die Transistoren 316 und 320 sperren. Entsprechend wird eine hohe Spannung Vpp an das Gate des Transistors 324 und auch an das Steuer-Gate der UPROM-Zelle 16 angelegt. Die hohe Spannung Vpp wird über die Transistoren 322 und 324 an den Knoten N2 angelegt. Entsprechend erreichen die Potentiale des Steuer-Gates und der Drain (Knoten N2) der UPROM-Zelle 16 einen hohen Spannungspegel, Elektronen werden in das Floating-Gate injiziert und die Schwellenspannung der UPROM-Zelle 16 verschiebt sich in positiver Richtung, so daß der Wert "0" geschrieben wird.
Nach Abschluß des Einschreibens des Werts "0" in die UPROM-Zelle 16 kehrt der hohe Spannungspegel des Adreßbits A0 auf einen niedrigen Pegel zurück. Das Potential am Knoten N1 erreicht einen niedrigen Pegel entsprechend der Tatsache, daß der hohe Potentialpegel auf einen niedrigen zurückgegangen ist, so daß die Transistoren 314 und 318 gesperrt und die Transistoren 316 und 320 durchgeschaltet werden. Eine Versorgungsspannung Vcc wird über den Transistor 320 an das Steuer-Gate der UPROM-Zelle 16 angelegt. Wenn der Wert "0" geschrieben ist, bleibt die UPROM-Zelle unabhängig vom Potential, das an das Steuer-Gate angelegt wird, im gesperrten Zustand.
Nachdem die Daten in die UPROM-Zelle 16 der Identifizierungs- Speicherschaltung 1 geschrieben worden sind, wird die Bestrahlung mit dem Energiestrahl (ultraviolettes Licht) ausgeführt, und anschließend erfolgt die Montage. Die in der UPROM-Zelle 16 gespeicherte Information bleibt unabhängig von der Bestrahlung mit dem Energiestrahl (ultraviolettes Licht) erhalten. Der Potentialpegel am Knoten N2 wird durch den Kondensator 328 auf einen hohen Pegel eingestellt, wenn die UPROM-Zelle 16 den Wert "0" speichert. Wenn die UPROM-Zelle 16 den Wert "1" speichert und anzeigt, daß die Speichereinrichtung als Flash-Speicher dient, wird der Potentialpegel des Knotens N2 niedrig, weil die Zelle 16 normalerweise durchgeschaltet ist. Der Potentialpegel des Knotens N2 wird über den Knoten N3 und die Transistoren 332, 334, 336 und 338 übertragen und als Signale OTP und /OTP ausgegeben. Entsprechend werden die Pegel der Signale /OTP und OTP entsprechend dem Typ Flash-Speicher/OTPROM festgelegt. Wenn das Signal /OTP auf einem niedrigen Pegel liegt und die Speichereinrichtung als OTPROM betrieben wird, ist der Betrieb der Befehlsportsteuerung 2 gesperrt.
Im Normalbetrieb ist der Transistor 302 ständig gesperrt, weil eine Spannung von höchstens dem Versorgungspegel Vcc als Adreßbit A0 angelegt wird, und die Potentialpegel der Knoten N2 und N3 werden sicher gleich Werten entsprechend der Information, die in der UPROM- Zelle 16 gespeichert ist.
Nun erfolgt eine Beschreibung einer Struktur zum Auslesen der Speicherinformation der UPROM-Zelle nach außen, um zu ermitteln, ob diese Speichereinrichtung ein Flash-Speicher oder ein OTPROM ist. Das Lesen der Identifizierungsinformation wird durch die in den Fig. 1 und 5 dargestellte Speicherleseschaltung 17 ausgeführt.
Wie in Fig. 5 gezeigt ist, weist die Speicherleseschaltung 17 einen p-Kanal MOS-Transistor 352 zum Empfangen eines Adreßbits A1 an seinem ersten Leitungsanschluß und einer Versorgungsspannung Vcc an seinem Gate, und einen n-Kanal MOS-Transistor 354, dessen erster Leitungsanschluß mit einem Massepotential verbunden ist und eine Betriebsversorgungsspannung Vcc an seinem Gate empfängt, auf. Der andere Leitungsanschluß der jeweiligen Transistoren 352 und 354 ist mit dem Knoten N4 verbunden.
Die Speicherleseschaltung 17 weist ferner kaskadierte Inverterschaltungen 356 und 358 (zwei Stufen) zum Empfangen des Potentials am Knoten N4, einen p-Kanal MOS-Transistor 360 und einen n-Kanal MOS-Transistor 362, die von den Ausgangssignalen der Inverterschaltungen 356 und 358 abhängig sind, zum selektiven Durchlassen des Identifizierungssignals /OTP, und einen p-Kanal MOS-Transistor 364 und einen n-Kanal MOS-Transistor 366, die von den Ausgangssignalen der Inverterschaltungen 356 und 358 abhängig sind, zum Übertragen von Daten, die von der Leseschaltung 7 gelesen werden, auf. Die Transistoren 360 und 362 sind parallel geschaltet und bilden ein Übertragungsgatter, und auch die Transistoren 364 und 366 sind parallel geschaltet und bilden ein Übertragungsgatter. Die Transistoren 360 und 366 empfangen das Ausgangssignal der Inverterschaltung 356 an ihren Gates, und die Transistoren 362 und 364 empfangen das Ausgangssignal der Inverterschaltung 358 an ihren Gates. Nun wird der Betrieb beschrieben.
Nach der Montage wird die Information gelesen, die in der Identifizierungs-Speicherschaltung 1 gespeichert ist, um den Typ dieser Speichereinrichtung zu identifizieren. Bei diesem Identifizierungsspeicherlesemodus wird eine Spannung höher als die Versorgungsspannung Vcc als Adreßbit A1 zugeführt. Folglich schaltet der Transistor 352 durch, so daß das Potential am Knoten N4 einen hohen Pegel erreicht. Damit erreicht der Ausgang der Inverterschaltung 356 einen niedrigen und der Ausgang der Inverterschaltung 358 einen hohen Pegel, so daß die Transistoren 360 und 362 durchschalten und die Transistoren 364 und 366 sperren. Das Identifizierungssignal /OTP von der Identifizierungs- Speicherschaltung 1 wird über die durchgeschalteten Transistoren 360 und 362 als Datenbit D0 ausgegeben. Durch Anzeigen des hohen/niedrigen Pegels dieses Signals /OTP ist es möglich, zu identifizieren, ob diese Speichereinrichtung ein OTPROM oder ein Flash-Speicher darstellt, und dann die nachfolgende Testsequenz zu bestimmen.
Im Normalbetrieb ist der Potentialpegel des Adreßbits A1 höchstens gleich dem Versorgungsspannungspegel Vcc und der Transistor 352 ist ständig gesperrt. In diesem Fall werden die Transistoren 364 und 366 durchgeschaltet und die Transistoren 360 und 362 gesperrt, so daß die von der Leseschaltung 7 erfaßten Daten als Datenbit D0 ausgegeben werden.
Bei der in Fig. 5 gezeigten Struktur der Speicherleseschaltung ist dargestellt, daß die Ausgangssignale der Transistoren 360, 362, 364 und 366, die das Übertragungsgatter bilden, als Datenbit D0 ausgegeben werden. Die Transistoren 360, 362, 364 und 366 können in einer Ausgangsstufe des Ein-/Ausgabepuffers 6 von Fig. 1 oder alternativ in einer Eingangsstufe des Ein-/Ausgabepuffers 6 gebildet sein. Jede Struktur kann angewandt werden, vorausgesetzt, daß die von der Leseschaltung 7 gelesenen Daten und das Identifizierungssignal /OTP selektiv nach außerhalb der Einrichtung abgegeben werden.
Fig. 6 zeigt ein Diagramm der Struktur des Flash/OTP-Vpp-Umschalters 3 von Fig. 1. Wie in Fig. 6 gezeigt ist, weist der Flash/OTP-Vpp- Umschalter 3 einen p-Kanal MOS-Transistor 380 zum Empfangen eines Identifizierungssignals /OTP an seinem Gate, einen n-Kanal MOS- Transistor 382, der parallel zum Transistor 380 geschaltet ist und ein Identifizierungssignal OTP an seinem Gate empfängt, einen n- Kanal MOS-Transistor 386 zum Empfangen des Identifizierungssignals /OTP an seinem Gate und einen n-Kanal MOS-Transistor 384, der parallel zum Transistor 386 geschaltet ist und das Identifizierungssignal OTP an seinem Gate empfängt, auf.
Die Transistoren 380 und 382 bilden ein Übertragungsgatter und ermöglichen die Übertragung einer extern angelegten hohen Spannung Vpp. Die Transistoren 384 und 386 bilden das andere Übertragungsgatter und ermöglichen die Übertragung einer Programmierspannung, die vom Programmierspannungsgenerator 4 erzeugt wird. Das Ausgangssignal des Flash/OTP-Vpp-Umschalters wird an den X-Dekoder 12 und den Y-Dekoder 11 angelegt, die in Fig. 1 gezeigt sind. Dieses Ausgangssignal kann auch dem Daten-Latch 15 zugeführt werden.
Wenn die Einrichtung im Betrieb als Flash-Speicher dient, befinden sich die Identifizierungssignale /OTP und OTP auf einem hohen bzw. niedrigen Pegel, so daß die Transistoren 384 und 386 durchschalten und die Transistoren 380 und 382 sperren. Entsprechend wird die vom Programmierspannungsgenerator 4 erzeugte Programmierspannung ausgewählt und zur jeweils notwendigen Schaltung übertragen.
Wenn die Einrichtung als OTPROM arbeitet, befinden sich die Identifizierungssignale /OTP und OTP auf einem niedrigen bzw. hohen Pegel, so daß die Transistoren 380 und 382 durchschalten und die Transistoren 384 und 386 sperren. Entsprechend wird die extern angelegte hohe Spannung Vpp als Programmierspannung zur jeweiligen Schaltung übertragen. Wenn die Einrichtung als OTPROM arbeitet, wird bei dieser Struktur die externe hohe Spannung Vpp zur jeweils notwendigen Schaltung übertragen, selbst wenn der Betrieb der Befehlsportsteuerung 2 gesperrt ist, wodurch die Datenprogrammierung vereinfacht wird.
Fig. 7 zeigt ein Diagramm der Struktur eines 1-Bit-Abschnitts im Daten-Latch 15 von Fig. 1. Wie in Fig. 7 gezeigt ist, weist das Daten-Latch 15 eine Latch-Schaltung 390 zum Verriegeln von Daten, die vom Ein-/Ausgabepuffer 6 in Abhängigkeit von einem Abtastsignal von der Befehlsportsteuerung 2 zugeführt werden, und einen n-Kanal MOS-Transistor 392 zum Übertragen einer hohen Spannung Vpp über die Y-Gatterschaltung 14 auf eine entsprechende Bitleitung BL in Abhängigkeit vom Ausgangssignal der Latch-Schaltung 390 auf. Wenn die Eingangsdaten gleich "0" sind, gibt die Latch-Schaltung 390 ein Signal mit hohem Pegel aus. Diese Struktur kann auf einfache Weise implementiert werden, indem als Latch-Schaltung 390 ein Inverter- Latch benutzt wird. Das bedeutet, daß das Ausgangssignal der Latch- Schaltung 390 einen hohen Pegel erreicht und der Transistor 392 durchschaltet, wenn die Eingangsdaten gleich "0" sind.
Der Transistor 392 treibt das Gate-Potential durch kapazitive Kopplung zwischen seinem Gate und seiner Drain hoch (Selbstanhebungsvorgang). Das ermöglicht es, eine hohe Spannung Vpp auf eine Bitleitung BL zu übertragen. Im Falle von Flash-Speichern wird die Verriegelungsoperation der Latch-Schaltung 390 durch ein Signal von der Befehlsportsteuerung 1 gesteuert. Im Falle des OTPROM führt die Latch-Schaltung 390 andererseits keine Verriegelungsoperation aus und überträgt die Eingangsdaten an das Gate des Transistors 392, ohne die Eingangsdaten zu verriegeln.
Fig. 8 zeigt ein Blockdiagramm der Struktur des Adreß-Latch 10 von Fig. 1. Wie in Fig. 8 gezeigt ist, weist das Adreß-Latch 10 eine Latch-Schaltung 395 zum Verriegeln eines Adreßbits Ai (eines von A0-Am) in Abhängigkeit von einem Abtastsignal von der Befehlsportsteuerung 2 auf, um interne Adreßbits Ai und /Ai zu erzeugen. Wenn die Speichereinrichtung als Flash-Speicher arbeitet, führt diese Latch-Schaltung 395 eine Verriegelungsoperation aus und erzeugt die internen Adreßbits Ai und /Ai zu vorbestimmten Zeitpunkten. Wenn die Speichereinrichtung als OTPROM arbeitet, führt die Latch-Schaltung 395 keine Verriegelungsoperation aus, sondern wird in einen Durchlaßzustand gebracht und erzeugt die internen Adreßbits Ai und /Ai aus dem angelegten Adreßbit Ai. Damit ändern sich mit dem eingegebenen Adreßbit Ai auch die internen Adreßbits Ai und /Ai.
Wenn die Speichereinrichtung einer Programmierung als OTPROM unterworfen wird, führen der X-Dekoder 12 und der Y-Dekoder 11 einen Dekodiervorgang aus entsprechend der Änderung der zugeführten Adreßbits A0-Am, so daß Daten in eine entsprechende adressierte Speicherzelle geschrieben werden.
Bei der vorherigen Ausführungsform nimmt die Befehlsportsteuerung 2 auf der Basis einer Kombination der Zustände der externen Steuersignale /CE und /WE die Daten vom Ein-/Ausgabepuffer 6 über den Bus 123a als Befehl entgegen und führt eine erforderliche Steuerungsoperation aus. Die vorliegende Erfindung ist nicht nur auf die nicht-flüchtige Halbleiterspeichereinrichtung mit einer solchen Befehlsportsteuerung 2, sondern auch auf jede andere nicht-flüchtige Halbleiterspeichereinrichtung mit einem Floating-Gate-Transistor als Speicherzelle anwendbar. Ferner ist die Breite der Ein-/Ausgabedaten nicht auf ein Byte beschränkt, sondern jede Breite kann verwendet werden.
Darüber hinaus können dieselben Effekte wie bei der vorherigen Ausführungsform in einem Löschvorgang selbst bei einer Struktur erzielt werden, bei der nicht alle Speicherzellen gleichzeitig gelöscht werden, sondern nur die zu programmierenden Speicherzellen. Das bedeutet, daß dieselben Effekte wie bei der vorherigen Ausführungsform selbst bei einer nicht-flüchtigen Halbleiterspeichereinrichtung erzielt werden können, bei der das Datenlöschen in Einheiten einer Wortleitung, eines Bytes oder eines Sektors ausgeführt wird.
Wie oben beschrieben worden ist, wird es entsprechend der vorliegenden Erfindung möglich, die nicht-flüchtige Halbleiterspeichereinrichtung, die wegen einer übermäßig gelöschten Speicherzelle als fehlerhaft bestimmt wird, als einmal- programmierbare Festwert-Speichereinrichtung zu verwenden und dadurch die Anzahl von Speichereinrichtungen signifikant zu vermindern, die als fehlerhafte Produkte ausgesondert werden.

Claims (9)

1. Nicht-flüchtige Halbleiterspeichereinrichtung mit einem Feld (13), in dem eine Mehrzahl von Speicherzellen angeordnet ist, die jeweils einen Floating-Gate-Transistor umfassen, gekennzeichnet durch eine Speichertyp-Speichereinrichtung (16) zum Speichern von Information, die angibt, ob eine elektrisch übermäßig gelöschte Speicherzelle, die im Speicherzellenfeld (13) vorhanden ist, durch Bestrahlen mit einem Energiestrahl in einen Löschzustand gebracht worden ist oder nicht,
eine Programmiersteuereinrichtung (2) zum Steuern eines Lösch- und Schreibvorgangs von Daten einer ausgewählten Speicherzelle im Speicherzellenfeld (13), und
eine Speichertyp-Einstelleinrichtung (1), die von der Information der Speichertyp-Speichereinrichtung (16) abhängig ist, zum Einstellen des Betriebs der Programmiersteuereinrichtung entweder in einen Betriebssperrzustand oder einen aktiven Zustand.
2. Nicht-flüchtige Halbleiterspeichereinrichtung nach Anspruch 1, gekennzeichnet durch eine Leseeinrichtung (17) zum Lesen der Information, die in der Speichertyp-Speichereinrichtung (16) gespeichert ist, in Abhängigkeit von einem Signal zum Anweisen des Lesens der Speichertypinformation in der Speichertyp-Speichereinrichtung (16).
3. Nicht-flüchtige Halbleiterspeichereinrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Speichertyp-Speichereinrichtung (16) ein nicht-löschbares programmierbares Festwertspeicherelement (16) aufweist.
4. Nicht-flüchtige Halbleiterspeichereinrichtung nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Speichertyp- Einstelleinrichtung (1)
ein nicht-löschbares programmierbares Festwertspeicherelement (16) mit einem Floating-Gate-Transistor (302′, 304′, 306′, 308′), der ein Steuer-Gate (308′), einen Leitungsanschluß (302′) und eine Abschirmungsschicht (320′) zum Verhindern, daß der Energiestrahl auf den Transistor trifft, besitzt,
eine Einrichtung (A0, 302, 304, 306, 310, 312), die von einem Befehl zum Datenschreiben abhängig ist, zum Erzeugen eines internen Schreibbefehlssignals, und
eine Schreibeinrichtung (314, 316, 318, 320, 322, 324), die vom internen Schreibbefehlssignal abhängig ist, zum Erzeugen von Spannungen, die ausreichend sind, um eine Ladungsträgerinjektion in das Floating-Gate zu bewirken, und zum Anlegen dieser Spannungen an das Steuer-Gate und den Leitungsanschluß aufweist.
5. Nicht-flüchtige Halbleiterspeichereinrichtung nach Anspruch 1 oder 2, wobei die Speichertyp-Einstelleinrichtung (1) ein nicht- löschbares programmierbares Festwertspeicherelement (16) mit einem Floating-Gate-Transistor, der ein Steuer-Gate und einen Leitungsanschluß besitzt,
dadurch gekennzeichnet, daß die Speichertyp-Einstelleinrichtung (1) eine Einrichtung (302, 304) zum normalen Erzeugen eines Auswahlbefehlssignals,
eine Einrichtung (306, 312, 318, 320), die vom Auswahlbefehlssignal abhängig ist, zum Anlegen einer Auswahlspannung an das Steuer-Gate, um das Speicherelement in einen ausgewählten Zustand zu bringen, eine Einrichtung (308, 326), die vom Auswahlbefehlssignal abhängig ist, zum Verbinden des Leitungsanschlusses mit einem ersten Knoten (N3),
eine Einrichtung (328), die vom Einschalten der Stromversorgung der nicht-flüchtigen Halbleiterspeichereinrichtung abhängig ist, zum Zurückstellen des ersten Knotens auf einen vorbestimmten Potentialpegel, und
eine Einrichtung (330, 332, 334, 336, 338), die vom Potential am ersten Knoten abhängig ist, zum Erzeugen eines Steuersignals zum Steuern des Betriebszustands der Programmiersteuereinrichtung (2) aufweist.
6. Nicht-flüchtige Halbleiterspeichereinrichtung nach Anspruch 1 oder 2, wobei die Speichertyp-Einstelleinrichtung (1) ein nicht- löschbares programmierbares Festwertspeicherelement (16) mit einem Floating-Gate-Transistor, der ein Steuer-Gate, ein Floating-Gate und einen Leitungsanschluß besitzt,
dadurch gekennzeichnet, daß die Speichertyp-Einstelleinrichtung (1) eine erste Schaltungseinrichtung (302, 304) mit einem p-Kanal Feldeffekttransistor (302) und einem n-Kanal Feldeffekttransistor (304), die komplementär zwischen einen Adreßeingabeknoten (A0) und ein Massepotential geschaltet sind und ein Versorgungspotential an ihren Gates empfangen,
eine zweite Schaltungseinrichtung (306, 314, 316) mit einem p-Kanal Feldeffekttransistor (314) und einem n-Kanal Feldeffekttransistor (316), die komplementär zwischen das Massepotential und eine erste Versorgungsleitung, die entweder ein hohes Programmierpotential (Vpp) oder das Versorgungspotential empfängt, geschaltet sind, zum Erzeugen eines Ausgangssignals entsprechend dem Ausgangssignal der ersten Schaltungseinrichtung,
eine dritte Schaltungseinrichtung (306, 318, 320) mit einem p-Kanal Feldeffekttransistor (318) und einem n-Kanal Feldeffekttransistor (320), die komplementär zwischen die erste Versorgungsleitung und das Versorgungspotential geschaltet sind, zum Erzeugen entweder des hohen Programmierpotentials oder des Versorgungspotentials in Abhängigkeit vom Ausgangssignal der ersten Schaltungseinrichtung, um das erzeugte Potential an das Steuer-Gate des Speicherelements anzulegen,
eine Widerstandseinrichtung (322) zum Empfangen und Senken des hohen Programmierpotentials, ein Transfergatter aus einem Feldeffekttransistor, der vom Ausgangssignal der zweiten Schaltungseinrichtung abhängig ist, zum Übertragen eines Potentials, das über die Widerstandseinrichtung empfangen wird, an den Leitungsanschluß des Speicherelements, und eine Übertragungsgattereinrichtung (308, 326) mit einem Feldeffekttransistor zum Verbinden des einen Leitungsanschlusses des Speicherelements mit einem ersten internen Knoten, aufweist, wobei die Speichereinstelleinrichtung (1) ferner eine Rückstelleinrichtung (328), die vom Einschalten der Stromversorgung abhängig ist, zum Zurückstellen des ersten internen Knotens auf ein Anfangspotential, und
eine Einrichtung (330, 332, 334, 336, 338), die vom Potential am ersten internen Knoten abhängig ist, zum Erzeugen eines Signals, das den Typ der nicht-flüchtigen Halbleiterspeichereinrichtung angibt, und eines Signals zum Bestimmen des Betriebszustands der Programmiersteuereinrichtung aufweist.
7. Nicht-flüchtige Halbleiterspeichereinrichtung nach einem der Ansprüche 2 bis 6, dadurch gekennzeichnet, daß die Leseeinrichtung (17)
eine erste Übertragungseinrichtung (360, 362) zum Übertragen der Information in der Speichereinrichtung, die über die Speichertyp- Einstelleinrichtung (1) zugeführt wird,
eine zweite Übertragungseinrichtung (364, 366) zum Übertragen der Daten, die aus einer ausgewählten Speicherzelle im Feld gelesen worden sind, und
eine Datensteuereinrichtung (352, 354, 356, 358), die vom Befehlssignal abhängig ist, zum Aktivieren der ersten und zum Deaktivieren der zweiten Übertragungseinrichtung, aufweist.
8. Nicht-flüchtige Halbleiterspeichereinrichtung nach Anspruch 7, dadurch gekennzeichnet, daß die Leseeinrichtung (352, 354, 356, 358) einen Adreßknoten (A1) zum Empfangen des Befehlssignals,
eine Logikgattereinrichtung mit einem p-Kanal Feldeffekttransistor (352) und einem n-Kanal Feldeffekttransistor (354), die komplementär zwischen den Adreßknoten und ein Massepotential geschaltet sind und
eine Versorgungsspannung an ihren Gates empfangen, zum Erzeugen eines internen Steuersignals in Abhängigkeit vom Befehlssignal, und
eine Einrichtung (356, 358), die vom internen Steuersignal abhängig ist, zum Steuern die Aktivierung und Deaktivierung der ersten und zweiten Übertragungseinrichtung (360, 362, 364, 366) aufweist.
9. Herstellungsverfahren für eine nicht-flüchtige Halbleiterspeichereinrichtung mit einem Feld (13), in dem eine Mehrzahl von Speicherzellen angeordnet ist, die jeweils einen Floating-Gate- Transistor umfassen, und einer Steuereinrichtung zum Steuern des Lösch- und Schreibbetriebs der Speicherzellen in dem Feld, gekennzeichnet durch die Schritte:
  • a) Bestimmen in einem blanken Chipzustand, ob eine übermäßig gelöschte Speicherzelle vorhanden ist oder nicht;
  • b) Montieren als Speicher, bei dem ein elektrisches Schreiben und Löschen mehrfach ausgeführt werden kann, wenn in Schritt (a) keine übermäßig gelöschte Speicherzelle vorhanden ist;
  • c) Bestrahlen eines Speicherzellenfeldabschnitts mit einem Energiestrahl, wenn in Schritt (a) eine übermäßig gelöschte Speicherzelle vorhanden ist, um alle Speicherzellen auf dem Chip in einen gelöschten Zustand zu bringen;
  • d) Speichern von Information, die die Bestrahlung mit dem Energiestrahl angibt, in einem Speicherelement, das im Chip gebildet ist, in nicht-flüchtiger und lesbarer Weise;
  • e) Einstellen des Lösch- und Schreibsteuerbetriebs durch die Steuereinrichtung in einen Sperrzustand nach der Bestrahlung mit dem Energiestrahl in Übereinstimmung mit der gespeicherten Information, die diese Bestrahlung mit dem Energiestrahl angibt; und
  • f) Montieren des Chips als einmal-programmierbaren Speicher nach der Bestrahlung mit dem Energiestrahl.
DE4302223A 1992-04-02 1993-01-27 Nicht-flüchtige Halbleiterspeichereinrichtung sowie Herstellungsverfahren dafür Expired - Fee Related DE4302223C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8097392A JPH05283708A (ja) 1992-04-02 1992-04-02 不揮発性半導体記憶装置,その製造方法および試験方法

Publications (2)

Publication Number Publication Date
DE4302223A1 DE4302223A1 (de) 1993-10-07
DE4302223C2 true DE4302223C2 (de) 1994-11-10

Family

ID=13733461

Family Applications (1)

Application Number Title Priority Date Filing Date
DE4302223A Expired - Fee Related DE4302223C2 (de) 1992-04-02 1993-01-27 Nicht-flüchtige Halbleiterspeichereinrichtung sowie Herstellungsverfahren dafür

Country Status (4)

Country Link
US (1) US5343434A (de)
JP (1) JPH05283708A (de)
KR (1) KR960000617B1 (de)
DE (1) DE4302223C2 (de)

Families Citing this family (41)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3448365B2 (ja) * 1994-09-20 2003-09-22 三菱電機株式会社 不揮発性半導体記憶装置
US20030061545A1 (en) * 1994-09-30 2003-03-27 Chandrashekhar S. Patwardhan Method and apparatus for providing test mode access to an instruction cache and microcode rom
US6005805A (en) * 1994-12-27 1999-12-21 Nkk Corporation Nonvolatile semiconductor device with a verify function
US5656521A (en) * 1995-01-12 1997-08-12 Advanced Micro Devices, Inc. Method of erasing UPROM transistors
US5621687A (en) * 1995-05-31 1997-04-15 Intel Corporation Programmable erasure and programming time for a flash memory
JPH10326493A (ja) * 1997-05-23 1998-12-08 Ricoh Co Ltd 複合化フラッシュメモリ装置
KR100271840B1 (ko) * 1997-08-27 2000-11-15 다니구찌 이찌로오 회로 면적의 증대를 억제하면서 복수의 전위를 출력할 수 있는내부 전위 발생 회로
US5982683A (en) * 1998-03-23 1999-11-09 Advanced Micro Devices, Inc. Enhanced method of testing semiconductor devices having nonvolatile elements
US6075727A (en) * 1998-07-29 2000-06-13 Motorola, Inc Method and apparatus for writing an erasable non-volatile memory
US7045015B2 (en) 1998-09-30 2006-05-16 Optomec Design Company Apparatuses and method for maskless mesoscale material deposition
US6166962A (en) * 1999-06-24 2000-12-26 Amic Technology, Inc. Circuit and method for conditioning flash memory array
JP4360736B2 (ja) 2000-01-27 2009-11-11 株式会社ルネサステクノロジ 不揮発性半導体記憶装置および不揮発性半導体記憶装置のデータ消去方法
JP3741258B2 (ja) * 2000-03-31 2006-02-01 シャープ株式会社 半導体記憶装置およびその救済方法
JP4005761B2 (ja) * 2000-06-09 2007-11-14 株式会社東芝 半導体記憶装置
US6966016B2 (en) * 2001-04-16 2005-11-15 Advanced Micro Devices, Inc. System and method for erase test of integrated circuit device having non-homogeneously sized sectors
US6434048B1 (en) 2001-07-20 2002-08-13 Hewlett-Packard Company Pulse train writing of worm storage device
US6614695B2 (en) * 2001-08-24 2003-09-02 Micron Technology, Inc. Non-volatile memory with block erase
JP2003123493A (ja) * 2001-10-12 2003-04-25 Fujitsu Ltd ソース電位を制御してプログラム動作を最適化した不揮発性メモリ
US6518614B1 (en) 2002-02-19 2003-02-11 International Business Machines Corporation Embedded one-time programmable non-volatile memory using prompt shift device
US6937517B2 (en) * 2002-07-18 2005-08-30 Micron Technology, Inc. Clock regulation scheme for varying loads
KR100521364B1 (ko) * 2002-11-18 2005-10-12 삼성전자주식회사 플레쉬 메모리 셀들의 프로그램 오판을 방지하고 균일한문턱 전압 산포를 가질 수 있는 플레쉬 메모리 장치 및 그프로그램 검증 방법
US6855631B2 (en) * 2003-07-03 2005-02-15 Micron Technology, Inc. Methods of forming via plugs using an aerosol stream of particles to deposit conductive materials
FR2862421B1 (fr) * 2003-11-14 2006-06-09 St Microelectronics Sa Circuit memoire et procede de traitement d'un code destine a etre charge dans ladite memoire
US7046570B1 (en) * 2004-06-02 2006-05-16 Xilinx, Inc. Programmable logic devices optionally convertible to one time programmable devices
US7674671B2 (en) 2004-12-13 2010-03-09 Optomec Design Company Aerodynamic jetting of aerosolized fluids for fabrication of passive structures
KR100758299B1 (ko) * 2006-07-25 2007-09-12 삼성전자주식회사 플래쉬 메모리 장치 및 그것의 쓰기 방법
US7626845B2 (en) * 2006-12-13 2009-12-01 Agere Systems Inc. Voltage programming switch for one-time-programmable (OTP) memories
US7512028B2 (en) * 2007-04-17 2009-03-31 Agere Systems Inc. Integrated circuit feature definition using one-time-programmable (OTP) memory
EP2155370A1 (de) 2007-04-23 2010-02-24 W.L. GORE & ASSOCIATES GmbH Verbundwerkstoff
US8858681B2 (en) * 2007-04-23 2014-10-14 W. L. Gore & Associates, Inc. Patterned porous venting materials
US7927405B2 (en) * 2007-04-23 2011-04-19 Gore Enterprise Holdings, Inc Porous composite article
TWI482662B (zh) 2007-08-30 2015-05-01 Optomec Inc 機械上一體式及緊密式耦合之列印頭以及噴霧源
KR20110015217A (ko) * 2009-08-07 2011-02-15 삼성전자주식회사 향상된 신호 무결성을 가지는 메모리 시스템
KR101089967B1 (ko) * 2010-07-09 2011-12-05 주식회사 하이닉스반도체 불휘발성 메모리 장치 및 그 동작 방법
US8808848B2 (en) 2010-09-10 2014-08-19 W. L. Gore & Associates, Inc. Porous article
CN104237766B (zh) * 2013-06-24 2017-06-20 上海东软载波微电子有限公司 芯片测试方法和装置
KR102444204B1 (ko) 2015-02-10 2022-09-19 옵토멕 인코포레이티드 에어로졸의 비행 중 경화에 의해 3차원 구조를 제조하는 방법
US10632746B2 (en) 2017-11-13 2020-04-28 Optomec, Inc. Shuttering of aerosol streams
CN110489351B (zh) * 2018-05-14 2021-03-09 英韧科技(上海)有限公司 芯片指纹管理装置及安全芯片
TWI677875B (zh) * 2018-07-20 2019-11-21 衡宇科技股份有限公司 偵測固態儲存裝置儲存狀態的方法
KR102567134B1 (ko) * 2018-10-01 2023-08-16 삼성전자주식회사 엑스선 조사량 측정 장치, 이를 포함하는 반도체 메모리 장치 및 반도체 메모리 장치의 테스트 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4519050A (en) * 1982-06-17 1985-05-21 Intel Corporation Radiation shield for an integrated circuit memory with redundant elements
US5053990A (en) * 1988-02-17 1991-10-01 Intel Corporation Program/erase selection for flash memory
GB2215156B (en) * 1988-02-17 1991-11-27 Intel Corp Processor controlled command port architecture for flash memory
US5237535A (en) * 1991-10-09 1993-08-17 Intel Corporation Method of repairing overerased cells in a flash memory

Also Published As

Publication number Publication date
DE4302223A1 (de) 1993-10-07
KR960000617B1 (ko) 1996-01-10
KR930022376A (ko) 1993-11-24
US5343434A (en) 1994-08-30
JPH05283708A (ja) 1993-10-29

Similar Documents

Publication Publication Date Title
DE4302223C2 (de) Nicht-flüchtige Halbleiterspeichereinrichtung sowie Herstellungsverfahren dafür
DE10002266B4 (de) Nichtflüchtiges Halbleiterspeicherbauelement und Programmierverfahren hierfür
DE3929816C2 (de) Elektrisch löschbare und programmierbare Halbleiterspeichereinrichtung und Verfahren zum Löschen und Programmieren dieser Halbleiterspeichereinrichtung
DE4110371C2 (de) Nichtflüchtige Halbleiterspeichervorrichtung
DE60001587T2 (de) Schaltungsausführung zur reduzierung des bitleitungslekcstroms bei programmierungs-und überlöschungskorrekturmodus in einem flash-eeprom
DE60220590T2 (de) Verfahren zur Reduzierung von Kopplungseffekten zwischen multi-level Speicherelementen eines nicht flüchtigen Speichers
DE19612666C2 (de) Verfahren und Vorrichtung zur Programmierung eines nichtflüchtigen Halbleiterspeichers mit Zellen in NAND-Struktur
DE69122537T2 (de) EEPROM mit Schwellwertmessschaltung
DE4233248C2 (de) Nicht-flüchtige Halbleiterspeichereinrichtung und Verfahren zum blockweisen Löschen von Daten in einer nicht-flüchtigen Halbleiterspeichereinrichtung
DE10162860B4 (de) Nichtflüchtiger Halbleiterspeicher sowie zugehöriges Programmierverfahren
DE3855736T2 (de) Nichtflüchtige Halbleiter-Speicheranordnung
DE69030959T2 (de) EEPROM mit Referenzzelle
DE69706873T2 (de) Löschverfahren für mehrere-bits-pro-zelle flash -eeprom mit seitenmodus
DE69524507T2 (de) Selbst-Programmierschaltung für eine nicht-flüchtige Speicheranordnung
DE4207934C2 (de) Nichtflüchtige Halbleiterspeichervorrichtung und Programmierverfahren für eine nichtflüchtige Halbleiterspeichervorrichtung
DE4205061C2 (de) Nichtflüchtige Halbleiter-Speicheranordnung
DE19860871B4 (de) Leistungsunabhängiger Halbleiterspeicherbaustein und Verfahren zur Ansteuerung von dessen Wortleitungen
DE4122021C2 (de) Nichtflüchtige Halbleiterspeichervorrichtung und Verfahren zum Löschen von Ladungen in Speicherzellen
DE69420651T2 (de) Korrekturstruktur für überlöschte Bits einer integrierten Halbleiterspeicherschaltung
DE60318714T2 (de) System und verfahren zur steuerung einer löschspannung während des löschens mehrerer sektoren eines flash-speichers
DE68918880T2 (de) Elektrisch löschbare nichtflüchtige Halbleiterspeichervorrichtung.
DE69614787T2 (de) Speichermatrix mit mehrzustandsspeicherzellen
DE10052326B4 (de) Nichtflüchtiges Halbleiterspeicherbauelement und Programmierverfahren hierfür
DE3786819T2 (de) Nichtflüchtige Halbleiterspeicheranordnung.
DE102005030661A1 (de) Nichtflüchtiges Halbleiterspeicherbauelement und Verfahren zum Betreiben und Herstellen eines nichtflüchtigen Halbleiterspeicherbauelementes

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8339 Ceased/non-payment of the annual fee