DE3900979C2 - Elektrisch lösch- und programmierbares Nur-Lese-Speicherbauelement - Google Patents

Elektrisch lösch- und programmierbares Nur-Lese-Speicherbauelement

Info

Publication number
DE3900979C2
DE3900979C2 DE3900979A DE3900979A DE3900979C2 DE 3900979 C2 DE3900979 C2 DE 3900979C2 DE 3900979 A DE3900979 A DE 3900979A DE 3900979 A DE3900979 A DE 3900979A DE 3900979 C2 DE3900979 C2 DE 3900979C2
Authority
DE
Germany
Prior art keywords
memory
command
data
programming
erase
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE3900979A
Other languages
English (en)
Other versions
DE3900979A1 (de
Inventor
Jerry A Kreifels
Alan Baker
George Hoekstra
Virgil Niles Kynett
Steven Wells
Mark Winston
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of DE3900979A1 publication Critical patent/DE3900979A1/de
Application granted granted Critical
Publication of DE3900979C2 publication Critical patent/DE3900979C2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • 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/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • 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/32Timing circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

Die Erfindung bezieht sich auf ein elektrisch lösch- und programmierbares Nur-Lese-Speicherbauelement (EEPROM) nach dem Oberbegriff des Patentanspruchs 1.
Die am häufigsten benutzte EPROM-Zelle hat ein elektrisch schwebendes Gate, das von Isoliermaterial vollständig umgeben ist und generell zwischen einer Source- und einer Drain-Zone angeordnet ist, die in einem Siliziumsubstrat gebildet sind. Bei früheren Ausführungen dieser Zellen wurde Ladung durch die Isolierschicht durch Avalanche-Injektion injiziert (US-PS 3 660 819). Spätere Ausführungen von EPROMs machten zum Aufladen der schwebenden Gate-Elektrode von der Kanalinjektion Gebrauch (US-PS'n 4 142 926, 4 114 255 und 4 412 310). Diese EPROMs wurden dadurch gelöscht, daß man sie ultravioletter Strahlung aussetzt.
Auch sind elektrisch löschbare EPROMs (EEPROMs) im Handel erhältlich. In einigen Fällen wird Ladung auf die und von der schwebenden Gate-Elektrode dadurch überführt, daß man die Ladung durch eine auf dem Substrat gebildete dünne Oxidschicht durchtunnelt (US-PS 4 203 158). In anderen Fällen wird Ladung über eine obere Elektrode entfernt (US-PS 4 099 196).
Diese EEPROM-Zellen eignen sich im Gegensatz zu den EPROM-Zel­ len nicht zu einer Reduktion der Substratfläche. Es wurden verschiedene Verfahren zum Reduzieren der Größe der Speicher­ matrix mit Hilfe dichterer Zellenanordnungen entwickelt. Ein solches Verfahren ist in der US-PS 4 432 075 beschrieben. Die US-PS 4 266 283 beschreibt die Anordnung eines EEPROM in einer Matrix und die Auswahl verschiedener auf der Speichermatrix durchzuführender Funktionen.
EPROM-Speicher werden häufig zum Löschen als auch zum Pro­ grammieren von ihren gedruckten Schaltungsplatinen entfernt. Eine spezielle Programmiereinrichtung dient zum Programmieren der Zellen. Diese Einrichtung verifiziert auch, daß die Zellen richtig gelöscht und programmiert sind. Während des Program­ mierens werden Elektronen zum schwebenden Gate übertragen, wodurch die Zellen weniger leitfähig werden. Der Betrieb die­ ser EPROM-Einrichtungen ist bekannt.
EEPROMs unterscheiden sich dadurch von EPROMs, daß erstere typischerweise programmiert und gelöscht werden, während sie in derselben Schaltung (z. B. einer gedruckten Schaltungskarte) installiert sind, die auch zum Lesen von Daten aus dem Spei­ cher benutzt wird. Dies bedeutet, daß eine spezielle Program­ miereinrichtung nicht benötigt wird. In einigen Fällen werden "on-chip"-Schaltungen dazu benutzt, die richtige Ausführung der Programmierung zu verifizieren. Die US-PS 4 460 982 be­ schreibt ein intelligentes EEPROM mit Mitteln sowohl zum Pro­ grammieren als auch zum Löschen.
In jüngster Zeit entstand eine neue Kategorie von elektrisch löschbaren EPROMs/EEPROMs, und diese Bauelemente werden manch­ mal als "Flash"-EPROMs oder -EEPROMs bezeichnet. In diesen Flash-Speichern wird das gesamte Speicherfeld bzw. die Matrix gleichzeitig elektrisch gelöscht. Die Zellen selbst verwenden nur ein einziges Bauelement pro Zelle. Relevant ist in diesem Zusammenhang ein Artikel mit der Bezeichnung "Ein 256-kBit- -Flash-E2PROM unter Verwendung der Triple-Polysilizium-Tech­ nologie", von Masuoka u. a., IEEE Journal of Solid-State Cir­ cuits, Bd. SC-22, Nr. 4, August 1987. Die vorliegende Erfin­ dung ist auf die Verwendung dieser Zellen gerichtet.
Elektrisch löschbare Flash-Speicherbauteile unterliegen einem anderen Problem, insbesondere der übermäßigen Löschung. Dabei kann zuviel Ladung entfernt werden, wodurch das Bauteil "ver­ armungs-artig" wird. Es kann erforderlich werden, die Zellen nach dem Löschen zu testen, um zuverlässig festzustellen, daß die schwebende Gate-Elektrode gelöscht, jedoch nicht zu posi­ tiv geladen ist.
Wenn ein Flash-Speicher in der Schaltung gelöscht werden soll, entsteht ein weiteres Problem. Es werden zusätzliche Steuerleitungen benötigt, um den Flash-Speicher zu löschen und zu programmieren. Zusätzliche Leitungen bedingen norma­ lerweise zusätzliche Stifte (Pins), wobei dies kein Problem darstellt, wenn neue Schaltungen und Schaltungsplatinen kon­ struiert werden. Sollen die Flash-Speicher anstelle bereits vorhandener EPROMs/EEPROMs eingesetzt werden, ist eine Pin- Kompatibilität erforderlich. Eine solche ist bei der Notwen­ digkeit zusätzlicher Pins für Steuerleitungen nicht erreich­ bar.
Aus dem US-Patent 4,412,309 ist ein EEPROM-Speicherbau­ element bekannt, das neben der Speicherzellenmatrix unter anderem eine Steuerlogik aufweist. Der Steuerlogik werden eine Reihe von Steuersignalen über zusätzliche Signalpins eingegeben, um verschiedene Betriebsmodi, beispielsweise den Lesemodus, verschiedene Löschmodi und Programmiermodi auszu­ wählen. Die Druckschrift beschreibt die Auswahl sieben ver­ schiedener Modi mit Hilfe von vier Steuerleitungen und einer höheren Lösch/Programmierspannung. Ferner ist aus der Veröf­ fentlichung von Kurt Robinson "With its paged structure, 512k EPROM relaxes systems storage constraints", in "Electronic Design", 29. November 1984, Seite 231, ein EPROM-Bauelement bekannt, dessen Speichermatrix in Seiten unterteilt ist, wobei die Seitenauswahl mit Hilfe von zwei Leitungen des Datenbusses vorgenommen wird, die die ausge­ wählte Seite adressieren.
Der Erfindung liegt die Aufgabe zugrunde, das Program­ mieren/Löschen eines EEPROM flexibler zu gestalten und dabei eine Pin-Kompatibilität zu herkömmlichen EPROMs/EEPROMs zu ermöglichen.
Diese Aufgabe wird erfindungsgemäß durch ein Speicher­ bauelement mit den Merkmalen des Patentanspruchs 1 gelöst.
Die Erfindung schafft eine Befehlsport-Architektur zum Programmieren und Löschen von EEPROMs über einen Datenport. Eine Befehlsport-Steuereinrichtung empfängt über den Daten­ bus von einem zugeordneten Prozessor Befehlsworte, die die gewünschte Speicheroperation spezifizieren. Diese Befehls­ worte werden in der Befehlsport-Steuereinrichtung zwischen­ gespeichert, wobei die Steuereinrichtung in Abhängigkeit von dem eingeschriebenen Befehl die erforderlichen Steuersignale zum Löschen und Programmieren der Speichermatrix sowie zum Überprüfen des Inhalts nach Durchführung der Lösch- und Pro­ grammieroperation erzeugt.
Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen gekennzeichnet.
Im folgenden wird die Erfindung anhand eines in der Zeichnung schematisch dargestellten Ausführungsbeispiels näher erläu­ tert. In der Zeichnung zeigen:
Fig. 1 ein Blockschaltbild eines Ausführungsbeispiels des erfindungsgemäßen Flash-Speichergeräts;
Fig. 2 ein Blockschaltbild eines Befehlsport-Steuerge­ räts nach der Erfindung;
Fig. 3 ein Zeitdiagramm für einen Lesezyklus des be­ schriebenen Ausführungsbeispiels der Erfindung;
Fig. 4 ein Zeitdiagramm eines Löschzyklus bei dem be­ schriebenen Ausführungsbeispiel;
Fig. 5 ein Zeitdiagramm eines Programmierzyklus bei dem beschriebenen Ausführungsbeispiel;
Fig. 6 ein Ablaufdiagramm für einen Löschzyklus bei dem beschriebenen Ausführungsbeispiel;
Fig. 7 ein Ablaufdiagramm für einen Programmieralgorith­ mus bei dem beschriebenen Ausführungsbeispiel; und
Fig. 8A, 8B, 8C, 8D und 8E Teilschaltbilder des Befehls­ port-Steuergeräts gemäß Fig. 2.
Beschrieben wird eine Befehlsport-Architektur, die für eine Mikroprozessorsteuerung von Programmier-, Lösch-, Programmve­ rifizier-, Löschverifizier- und Lesemoden zur Verwendung in einem Flash-Speicher sorgt. In der folgenden Beschreibung werden zahlreiche spezielle Einzelheiten, beispielsweise spezielle Schaltungskonfigurationen, Komponenten usw. angegeben, um die Erfindung leichter verständlich zu machen. Es ist je­ doch für den Fachmann klar, daß die Erfindung ohne diese be­ sonderen Einzelheiten realisiert werden kann. In anderen Fäl­ len werden bekannte Verfahrensweisen, Architekturen und Schal­ tungen nicht im einzelnen beschrieben, um die Erfindung nicht mit unnötigen Einzelheiten zu belasten.
Das bevorzugte Ausführungsbeispiel der Erfindung wird in Ver­ bindung mit einem besonderen Doppelpoly-, Einzeltransistor-, elektrisch löschbaren und programmierbaren Flash-Speicher verwendet, der auch als Flash-EPROM bezeichnet wird. Es han­ delt sich dabei um einen nicht-flüchtigen Flash-Speicher hoher Dichte, der für Mikroprozessor-gesteuerte Umprogrammierung aktiviert ist. Dieser spezielle Flash-EPROM macht von einer weiterentwickelten komplementären Metalloxidhalbleiter­ -(CMOS-)1,5 µm-Technologie Gebrauch, die auf einer 6 µm mal 6 µm Zelle, hergestellt auf einem 4,88 mm quadratischen Scheib­ chen, 32768 × 8 Bits zur Verfügung stellt. Obwohl ein speziel­ ler 256 KBit-Flash-EPROM beschrieben wird, ist es klar, daß andere Speichergrößen und andere Speichertechnologien unter Verwendung der Erfindung angewandt werden können.
Der nicht-flüchtige Flash-EPROM nach der Erfindung basiert auf der EPROM-Technologie. Die Speicherzelle verwendet einen äqui­ valenten Programmiermechanismus wie ein EPROM, kann jedoch elektrisch gelöscht werden. Elektrisches Löschen des Flash­ -Speichers wird durch Verwendung einer Tunneloxidschicht hoher Qualität unter einer Einzeltransistorzelle mit schwebender Polysilizium-Gate-Elektrode erreicht. Die Flash-Zelle erfor­ dert eine 12 V Betriebsspannung zum Löschen und Programmieren. Der Löschmechanismus benutzt ein Fowler-Nordheim-Durchtunneln zur Elektronenbewegung von dem schwebenden Gate zum Zellen­ -Sourceübergang. Das Programmieren wird mit dem EPROM-Standardverfahren der Injektion heißer Elektronen von dem Zellen­ -Drainübergang zur schwebenden Gate-Elektrode erreicht. Die Flash-EPROM-Zelle, wie sie bei der Erfindung Verwendung fin­ det, ist als solche bekannt aus den in der Beschreibungsein­ leitung bezeichneten Druckschriften.
Ohne die Verwendung einer speziellen Schaltung kann keine direkte Stift-zu-Stift-Kompatibilität zwischen dem Flash-EPROM und bekannten Speicherbauelementen hergestellt werden. Um die Stift-zu-Stift-Kompatibilität zwischen dem Flash-EPROM und bekannten EPROM-Bauelementen zu erreichen, sieht die Erfindung eine spezielle Befehlsport-Architektur vor, die ein Löschen und Programmieren in der Schaltung selbst ermöglicht. Die Befehlsport-Architektur nach der Erfindung ermöglicht die Mikroprozessorsteuerung von Programmier-, Lösch-, Programm/- Lösch-Verifizier- und Lesemoden bei gleichzeitiger Aufrechter­ haltung der Stift-zu-Stift-Kompatibilität mit den bekannten EPROMs/EEPROMs. Diese spezielle Architektur wird in einer Schaltung implementiert, die in ein den Flash-Speicher enthal­ tendes Halbleiterchip eingebaut wird.
In Fig. 1, auf die im folgenden Bezug genommen wird, ist ein Flash-EPROM-Halbleitergerät 10 gezeigt. Ein Adreßbus 12 kop­ pelt Adreßbits A0-A14 zum Adreßlatch 13. Wenn auch in dem beschriebenen Ausführungsbeispiel 15 Bits für eine Adresse auf dem Bus 12 benutzt werden, ist die tatsächliche Zahl von Adreßbits willkürlich. Adreßlatch 13 ist mit einem X-Decodie­ rer 14 und einem Y-Decodierer 15 verbunden. X-Decodierer 14 ist mit einer Speichermatrix 11 und Y-Decodierer 15 mit einer Y-Gatterschaltung 16 gekoppelt. Der Speicher 11 ist bei dem beschriebenen Ausführungsbeispiel eine 256 K Bitzellenmatrix­ struktur, wobei der X-Decodierer 14 die Decodierung zum Zu­ griff der X(Zeilen)-Adressierung und Y-Decodierer 15 die Deco­ dierung für die Y(Spalten)-Adressierung der X-Y-Matrix des Speicherfeldes 11 bewirkt. Die Anordnung der Speichermatrix 11 und das Zugreifen auf eine Matrix unter Verwendung von X- und Y-Decodierern 14 und 15 und Spaltengatterschaltung 16 sind auf dem Gebiete der EPROM-Technik bekannt.
Über einen 8-Bit-bidirektionalen Datenbus 20 werden Daten zum Gerät 10 übertragen; jedoch ist auch hier die Bitanzahl über den Datenbus 20 der Wahl des Konstrukteurs überlassen. Der Datenbus 20 ist mit einem Eingabe/Ausgabe-(I/O)Puffer 21 ge­ koppelt, wobei in den Speicher 11 eingegebene Daten über einen Bus 23a und durch ein Datenlatch 22 übertragen werden. Ande­ rerseits werden Daten aus dem Speicher 11 über den Bus 23b und Abtastschaltungen 101 zum I/O-Puffer 21 zur Ausgabe auf den Datenbus 20 übertragen. Einlaufende Daten werden auch von dem Bus 23a an ein Befehlsport-Steuergerät 30 angelegt. Das Be­ fehlsport-Steuergerät 30 erhält auch externe Signale WE und CE und liefert Steuersignale zum Adressieren des Latch 13, Daten­ latch 22, Löschspannungsgenerators 24, Programmierspannungsge­ nerators 25 und Lösch/Programm-Verifiziergenerators 26. Ex­ terne Signale CE und OE werden an eine Chip/Ausgabeaktivie­ rungslogikschaltung 27 angelegt. Diese Daten, Adreß- und Steu­ ersignale kommen von einem Mikroprozessor, der in typischer Ausführung in Verbindung mit den Halbleiterspeichern verwendet wird.
Betriebsspannung VCC und deren Rückleitung VSS werden ebenso an das Gerät 10 angelegt, wie die Programmierspannung VPP, deren Spannungswert bestimmt, ob das Befehlsport-Steuergerät 30 zur Auswahl der Lese-, Lösch- oder Programmierfunktionen aktiviert wird. VPP wird an das Befehlsport-Steuergerät 30, den Löschspannungsgenerator 24, den Programmierspannungsgene­ rator 25 und den Lösch/Programmier-Verifiziergenerator 26 angelegt. Der Ursprung dieser Spannung ist für die Verwirkli­ chung der vorliegenden Erfindung ohne Bedeutung.
Eine Chip/Ausgabe-Aktivierungslogikschaltung 27 ist mit dem I/O-Puffer 21 gekoppelt. Die Schaltung 27 liefert Steuersigna­ le an den Puffer 21. Der Löschspannungsgenerator 24 ist mit dem Speicher 11 gekoppelt und liefert die notwendige Spannung zum gleichzeitigen Löschen der Speichermatrix 11. Der Ausgang des Programmierspannungsgenerators 25 ist mit den Decodierern 14 und 15 gekoppelt und liefert die Programmierspannung an den Speicher 11, wenn der Programmierfunktionsausgang des Lösch/- Programmier-Verifiziergenerators 26 mit dem X-Decodierer 14 zum Anlegen der Verifizierspannung an den Speicher 11 bei der Selektion der Lösch/Programmier-Verifizierfunktion gekoppelt ist.
Zum Zwecke des Löschens und Programmierens des Speichers 11 innerhalb der Schaltung ist das Gerät 10 des beschriebenen Ausführungsbeispiels so ausgebildet, daß es von dem mit dem Gerät 10 gekoppelten Prozessor über die Datenleitung 20 kom­ mende Befehle akzeptiert. Wenn das Gerät 10 angesteuert werden soll, wechselt das Chip-Aktivierungssignal CE auf den niedri­ gen Wert, und das Chip 10 ist für Modeninstruktionen über den Datenbus 20 vorbereitet. Befehle durchlaufen den I/O-Puffer 21 zum Befehlsport-Steuergerät 30. Das Befehlsport-Steuergerät 30 erhält eine der 2n Instruktionen bzw. Befehle (wobei n die Anzahl der Datenbits ist) von dem Datenbus 20, einschließlich der folgenden sechs Instruktionen: Programmieren, Programmve­ rifikation, Löschen, Löschverifikation, Lesen und Signaturle­ sen (eine spezielle Lesefunktion zur Anpassung des Speichers 11 an das geeignete externe Anlagenprotokoll). Abhängig von dem erhaltenen Instruktionswort erzeugt das Befehlsport-Steu­ ergerät 30 Steuersignale zur Erzeugung der entsprechenden Operation. Nach dem Eingang einer speziellen Instruktion an das Befehlsport-Steuergerät 30 erzeugen das Schreibaktivie­ rungssignal WE, das Chipaktivierungssignal CE und das Ausgabeaktivierungssignal OE die Erzeugung verschiedener Signale aus dem Befehlsport-Steuergerät 30 und der Logikschaltung 27 zur geeigneten Betätigung verschiedener Einheiten des Geräts 10.
Bei dem bevorzugten Ausführungsbeispiel wird das Befehlsport- -Steuergerät 30 aktiviert, wenn VPP auf einem Spannungswert von angenähert 12 Volt Gleichspannung ist. Wenn das Befehls­ port-Steuergerät 30 jedoch entaktiviert werden soll, so sorgt eine Verschiebung von VPP von 12 Volt auf angenähert 5 Volt für die Entaktivierung des Steuergeräts 30. Immer wenn VPP auf 5 Volt übergeht, wird das Steuergerät 30 entaktiviert, sodaß eine auf dem Datenbus 20 befindliche Matrixinstruktion für das Steuergerät 30 ignoriert wird. Immer wenn sich VPP auf 5 Volt befindet und das Steuergerät 30 entaktiviert ist, arbeitet das Gerät 10 nur in einem Lesebetrieb. Dieses Entaktivierungssche­ ma des Steuergeräts 30 wurde im Chip 10 des bevorzugten Aus­ führungsbeispiels für den Fall vorgesehen, daß das Gerät 10 in unmittelbarem Ersatz eines bekannten EPROM (oder eines nur im Lesebetrieb benutzten EEPROM) verwendet wird, in welchem 12 V nicht vorhanden ist. Bei derartigen bekannten EPROMs ist VPP typischerweise auf 5 Volt, wobei ein direkter Ersatz des Ge­ räts 10 für ein bekanntes EPROM dazu führt, daß das Gerät 10 nur einen Lesemodus herbeiführt. Dieses Entaktivierungsschema des Steuergeräts gewährleistet einen absoluten Schutz gegen unbeabsichtigtes Löschen oder Programmieren des Speichers, wenn VPP auf 5 Volt liegt.
Fig. 2, auf die im folgenden Bezug genommen wird, zeigt ein Blockschaltbild des Befehlsport-Steuergeräts 30 des beschrie­ benen Ausführungsbeispiels der Erfindung. Ein Chip-Aktivie­ rungssignal CE wird an eine Steuerlogik 31 und einen Adreß­ taktgenerator 32 angelegt. Ein Schreibaktivierungssignal WE wird als ein Eingangssignal an die Steuerlogik 31 angelegt. Die Steuerlogik 31 läßt eine Übertragung des Signals WE an den Adreßtaktgenerator 32, einen Zustandstaktgenerator 33 und Befehls/Datentaktgeneratoren 34 nur dann zu, wenn das Chip-Ak­ tivierungssignal CE das Chip 10 aktiviert hat. Das Ausgangssi­ gnal des Zustandstaktgenerators 33 sowie Daten auf dem Daten­ bus 23a werden zum Zustandsregister 35 übertragen, dessen Ausgang mit dem Zustandsdecodierer 36 und einem Befehlstaktge­ nerator 34a gekoppelt ist. Der Ausgang des Befehlstaktgenera­ tors 34a ist mit einem Befehlsregister 37 verbunden. Das Be­ fehlsregister 37 erhält außerdem Daten vom Datenbus 23a, und sein Ausgang ist mit einem Zustandsdecodierer 36 gekoppelt. Der Ausgang des Adreßtaktgenerators 32 liefert das Strobe-Si­ gnal für das Adreßlatch 13 der Schaltung gemäß Fig. 1 und der Datentaktgenerator 34b liefert das Strobe für das Datenlatch 22 der Fig. 1. Die Ausgänge des Zustandsdecodierers 36 sind zum Adreßtaktgenerator 32 und zum Zustandsregister 35 des Steuergeräts rückgekoppelt. Andere Ausgänge des Zustandsdeco­ dierers 36 sind für den Löschspannungsgenerator 24, den Pro­ grammierspannungsgenerator 25 und den Lösch/Programmier-Veri­ fikationsgenerator 26 in Fig. 1 vorgesehen. Das Zustandsregi­ ster 35 liefert ein Rückkopplungsignal an den Befehlstaktgene­ rator 34a, während das Befehlsregister 37 über keine derartige Rückkopplung verfügt.
In einem von den Signalen WE und CE kontrollierten Schreibzy­ klus werden Funktionen über den Datenbus 23a ausgewählt. Der Inhalt des Adreßlatchs 13 wird an der abfallenden Flanke von WE aktualisiert. Die ansteigende Flanke des Signals WE bewirkt das Laden von Instruktionen in das Zustandsregister 35 und entweder in das Befehlsregister 37 oder das Datenlatch 22. Der Zustandsdecodierer 36 decodiert neue interne Moden bzw. Be­ triebsarten und löst geeignete Operationen durch Anlegen der entsprechenden Steuersignale aus. Steuerleitungen vom Zu­ standsdecodierer 36 zu Löschspannungs-, Programmierspannungs- und Lösch/Programmier-Verifikationsgeneratoren 23, 25 bzw. 26 lassen diese Generatoren VPP-Spannungen an die in Fig. 1 dar­ gestellten X-Y-Decodierer 14 und 15 oder den Speicher 11 anle­ gen. Aus VPP abgeleitete Verifizierspannungen werden über die X-Decodierer während des Programmierverifizierens und Löschve­ rifizierens an die Wortleitungen angelegt, um den Programmier- und Lösch-Fehlerspielraum zu gewährleisten.
Die Fig. 3, 4 und 5, auf die nachfolgend ebenfalls Bezug genommen wird, stellen Zeitfolgen verschiedener Signale im Gerät 10 dar. Fig. 3 zeigt eine Lesefunktion, bei der der Speicher 11 adressiert wird und Daten aus dem Speicher 11 gelesen werden, wenn das Ausgabeaktivierungssignal OE die Schaltung 27 aktiviert, die wiederum die Ausgabefunktion des Puffers 21 aktiviert.
Fig. 4 zeigt den Zeitzyklus für eine Löschoperation. Das Lö­ schen wird erreicht durch eine Zwei-Schreib-Zyklen-Folge, wobei der Löschcode in das Befehlsregister 37 und das Zu­ standsregister 35 in einem ersten Schreibzyklus 40 und der Lösch-Bestätigungscode in einem zweiten Schreibzyklus 41 in das Zustandsregister 35 geschrieben wird. Der Bestätigungscode löst an der ansteigenden Flanke des zweiten Zyklus 41 des Signals WE die Löschoperation aus. Der Zustandsdecodierer 36 löst einen Befehl an den Löschspannungsgenerator 24 aus, der daraufhin einen Hochspannungsschalter triggert, der 12 Volt (VPP) an die Source-Elektrode aller Matrixzellen des Speichers 11 anlegt. Ferner werden alle Wortleitungen an Erde gelegt. Die Fowler-Nordheim-Tunnelung führt zur gleichzeitigen Lö­ schung aller Zellen der Speichermatrix 11. Das Schreiben eines Löschverifiziercodes in die Register 35 und 37 während des Schreibzyklus 42 beendet das Löschen, verriegelt die Adresse des zu verifizierenden Bytes und baut interne Lösch-Grenzspan­ nungen (margin voltages) auf. Ein Mikroprozessor kann danach auf die Speicherausgabe von der zugegriffenen Adresse unter Verwendung üblicher Lesezeitgabe zugreifen, wenn das Signal OE während der Zeit 43 auf einen niedrigen Wert geht. Der Verifi­ ziervorgang wird dann für alle Adressen wiederholt.
Das Programmieren wird in einer in Fig. 5 veranschaulichten Weise ausgeführt. Der Programmierbefehl wird in die Register 35 und 37 während des ersten Zyklus 45 des Schreib-Aktive­ rungssignals WE eingegeben. Ein zweiter WE Zyklus 46 lädt das Adreßlatch 13 und das Datenlatch 22. Die ansteigende Flanke des zweiten WE Zyklus 46 initiiert die Programmierung über den Zustandsdecodierer 36, der zur Erzeugung eines Steuersignals an den Programmierspannungsgenerator 25 veranlaßt wird. Letz­ terer legt daraufhin eine hohe Spannung VPP an die Gate- und Drain-Elektroden der adressierten Zelle des Speichers 11. Das Schreiben des Programmierverifizierbefehls in die Register 35 und 37 beim WE Zyklus 47 beendet das Programmieren und setzt die internen Grenzspannungen zum Verifizieren des neuprogram­ mierten Byte. Auch hier kann das adressierte Byte unter Ver­ wendung üblicher Mikroprozessor-Lesezeitgaben zugegriffen werden, wenn OE während des Zeitabschnitts 48 auf einen nie­ drigen Wert geht.
Fig. 6 zeigt ein Ablaufdiagramm des von dem Befehlsport-Steu­ ergerät 30 benutzten Löschalgorithmus. Während der Initiali­ sierungsphase steht VPP an, alle Bytes werden auf einen spezi­ ellen Wert, in diesem Falle 00H (Vorkonditionierung) program­ miert, und es werden die Zähler auf einen vorgegebenen Initia­ lisierungswert voreingestellt. Danach wird der Aufbau-Löschbe­ fehl geschrieben, gefolgt vom Schreiben des Löschbefehls (vgl. Fig. 4 im Zeitdiagramm). Nach einer Auszeit, während der die Löschung erreicht wird, wird der Lösch-Verifizierbefehl ge­ schrieben, gefolgt von einer anderen vorgegebenen Auszeit (6 µs in dem beschriebenen Beispiel).
Danach werden Daten aus dem Speicher gelesen und überprüft, um festzustellen, ob die Daten gelöscht worden sind. Wurden die Daten nicht gelöscht, so wird die Pulsbreite zum Löschen der Daten um einen vorgegebenen Wert inkrementiert und in dem TEW-Zähler gespeichert und auf einen maximalen Grenzwert ge­ prüft (CUMTEW und TEW-Berechnungen sind in Fig. 6 gezeigt. Bei dem beschriebenen Ausführungsbeispiel wird die Pulsbreite auf einen maximalen Grenzwert für eine kumulative Löschzeit von 10 Sekunden inkrementiert. Nach jedem Inkrement wird die Folge durch den Schreib-Lösch-Aufbaubefehl und den Schreib-Lösch-Be­ fehl wiederholt. Wenn die Daten jedoch nach einer vorgegebenen Impulszählung (bei dem beschriebenen Beispiel wurde der Wert von 64 eingestellt) nicht gelöscht worden sind, so wird auf Fehler erkannt, was bedeutet, daß für diese Speicherzelle eine Löschung nicht erreicht werden kann. Wenn nach dem Lesen der Daten deren Löschung festgestellt wurde, wird die Adresse inkrementiert und die Lösch-Verifizierfolge solange wieder­ holt, bis die letzte Adresse verifiziert worden ist; in diesem Falle wird ein Lesebefehl in die Befehls- und Zustandsregister geschrieben, um diese Register für eine Leseoperation rückzu­ setzen, und der Löschzyklus ist beendet. Wenn ein Byte nicht als gelöscht verifiziert werden kann, wird die Pulsbreite TEW inkrementiert und die Löschfolge wiederholt. Die Löscheffi­ zienz wird auch dadurch erreicht, daß man einen neuen Verifi­ zierzyklus bei dem letzten gelöschten Byte beginnt und verifi­ ziert.
Im folgenden wird auf Fig. 7 Bezug genommen, in der ein Ab­ laufdiagramm für einen Programmalgorithmus gezeigt ist. Der Programmierzyklus wird durch Anlegen von VPP und Auslösen des Impulszählers initiiert. Danach wird der Aufbau-Programmierbe­ fehl in die Befehls- und Zustandsregister geschrieben, gefolgt von einem zweiten Schreibzyklus, der die Adresse und die Daten verriegelt (vgl. Zeitdiagramm gemäß Fig. 5). Nach einer vorgegebenen Auszeit, in der das Programmieren erreicht wird, wird der Programmierverifizierbefehl geschrieben. Wieder nach einer vorgegebenen Auszeit (6 µs bei dem beschriebenen Beispiel) werden Daten aus dem Speicher zum Verifizieren der program­ mierten Daten gelesen. Wenn die geschriebenen Daten nicht den aus dem Speicher ausgelesenen Daten entsprechen, wird die Impulszählung inkrementiert, um die Programmierzeit zu verlän­ gern, und die Schreib- und Lesefolgen werden wiederholt. Bei dem beschriebenen Beispiel wird die Programmierzeit durch Wiederholen von 100 µs Impulsen auf eine maximale Impulszäh­ lung (PLSCNT) von 25 verlängert. Jeder Impulszählschritt ver­ längert die Dauer der Programmierzeit solange, bis der vorge­ gebene Wert, in diesem Falle 25, erreicht ist; an diesem Punkt wird ein Fehler festgestellt. Wenn die gelesenen Daten als richtig verifiziert sind, wird die Adresse inkrementiert, und die Folge wiederholt, um Daten an jeder der anderen Adressen zu schreiben und zu lesen. Wenn die letzte Adresse erreicht worden ist, wird ein Befehl in die Zustands- und Befehlsregi­ ster geschrieben, um die Register für eine Leseoperation rück­ zusetzen. Der Algorithmus gemäß Fig. 7 dient auch zum Laden von 00 zwecks Vorkonditionierung vor der Löschoperation gemäß Fig. 6.
An sich können verschiedene bekannte Schaltungen zum Aufbau des in Fig. 2 gezeigten Blockschaltbilds implementiert werden; Fig. 8A bis E zeigen eine besondere Schaltung, die bei dem beschriebene Ausführungsbeispiel zur Realisierung der ver­ schiedenen Blöcke in Fig. 2 verwendet wird. Die Bezugszeichen der verschiedenen Blöcke der Fig. 2 entsprechen den Bezugszei­ chen in den Fig. 8A-E. Außerdem sind eine Rücksetzschaltung 50 und Seitenregisterschaltungen 51 gezeigt. Die Rücksetz­ schaltung dient zum Rücksetzen der Befehls- und Zustandsregi­ ster, so während des Spannungsaufbaus (power up) oder wenn sich VPP auf 5 V befindet. Die Seitenregisterschaltung 51 dient zur Steuerung der Seitenmodenadressierung des Speichers. Die Steuerschaltung 31 ist in der Detailschaltung nicht ge­ zeigt, da sie die Chip-Aktivierungs- und die Schreib-Aktivie­ rungssignale grundsätzlich einer UND-Verknüpfung unterwirft. Das resultierende Signal ist als CWE bezeichnet und darge­ stellt.
Das bevorzugte Ausführungsbeispiel verwendet eine Reihe von Invertern zur verzögerten Erzeugung des Strobe des Adressen­ latch vom Adressentaktgenerator 32. In der beschriebenen Schaltungskonfiguration des Ausführungsbeispiels besteht das Befehlsregister 37 aus vier getrennten Registern R3, R5, R6 und R7. Die Register R5, R6 und R7 dienen zur Modenselektion, d. h. zur Betriebsartenauswahl, und das R3-Register dient zum Decodieren und Verriegeln ungültiger Eingaben. Es gibt zwei Register im Zustandsregister 35. Register R2 wird mit Rück­ kopplungssteuerung zum Aktivieren des Löschens und das Pro­ grammierzustandsregister R1 zum Steuern des Eingabedatenstroms in die Datenlatches oder Befehlsregister verwendet. Die Be­ fehls- und Datentaktgeneratoren 34a und 34b dienen zur Erzeu­ gung der nicht-überlappenden Taktphasen, die von den Registern und den Datenlatches gebraucht werden. Diese Taktsignale steu­ ern das Verriegeln von Eingangsdaten während eines Schreibzy­ klus in die Programmierdatenlatches, Befehlsregister und Zu­ standsregister.
Der Adressentaktgenerator ist für die Steuerung des Adressen­ informationsflusses zu den Adreßlatches verantwortlich. Die Zustandsregister 35 und Befehlsregister 37 bilden das Herz der Befehlsportarchitektur, erhalten Eingaben vom Dateneingabepuf­ fer und speichern die Daten zum Decodieren von Betriebsmoden für das Chip. Die Befehlsinstruktionen werden von drei Daten­ bits an die Register R5, R6 und R7 bestimmt, und die Wahr­ heitstabelle zur Bestimmung des Operationsmodes aus diesen Bits ist in Fig. 8E gezeigt. Die Befehlsregister haben keine Rückkopplung von ihren Ausgängen und verfolgen einzelne Schreibmoden und wählen die Eingabe zu Mehrfach-Schreibmoden aus. Die Zustandsregister haben einen Rückkopplungsweg von ihrem Ausgang zu ihren Eingängen und verfolgen die Folgeopera­ tion des Chips, wenn es die verschiedenen Stufen der Mehrfach­ schreibmoden durchläuft.
Wenn das Gerät 10 mit existierenden EPROM-Geräten kompatibel gemacht werden soll, wird das Schreibaktivierungssignal einer Multiplexoperation mit dem am höchsten bewerteten Adreßbit A14 unterzogen. Wenn VPP auf 5 Volt ist, liest der A14/WE-Stift das am höchsten bewertete Adreßbit (A14), das in einigen Fäl­ len zur Auswahl des Seitenmodes verwendet wird. Wenn jedoch VPP auf einer Programmierspannung (im beschriebenen Falle 12 Volt) liegt, wird das Signal auf dem A14/WE-Stift als Schreib­ aktivierungssignal gelesen. Daher ermöglicht das Multiplex­ schema durch Multiplexen des am höchsten bewerteten Adreßbits mit dem Schreibaktivierungssignal die Stift-zu-Stift-Kompati­ bilität des Geräts 10 nach der vorliegenden Erfindung mit existierenden EPROM-Geräten.

Claims (8)

1. Elektrisch lösch- und programmierbares Nur-Lese-Spei­ cherbauelement (EEPROM) (10) mit einer Speicherzellenmatrix (11),
wobei das Speicherbauelement (10) eine Speichersteuer­ schaltung (13-16, 21-27) zum Steuern von Speicheropera­ tionen aufweist, die über mehrere Adreßeingabe-Pins mit ei­ nem Adreßbus (12) zum Empfangen einer Adresse koppelbar ist und die über mehrere Daten-Pins mit einem Datenbus (20) zum Ausgeben von in der Speicherzellenmatrix (11) gespeicherten Daten und zum Empfangen von in der Speicherzellenmatrix (11) zu speichernden Daten koppelbar ist,
dadurch gekennzeichnet,
daß das Speicherbauelement (10) eine mit der Speicher­ steuerschaltung (13-16, 21-27) gekoppelte Befehlssteuer­ einrichtung (30) aufweist, die mit den Daten-Pins zum Emp­ fangen von Befehlsworten, die auszuführende Speicheropera­ tionen spezifizieren, gekoppelt ist, und
daß die Befehlssteuereinrichtung (30) eine Dekodierein­ richtung (36) zum Dekodieren der über den Datenbus (20) emp­ fangenen Befehlsworte und zum Erzeugen von Steuersignalen zum Steuern der Speichersteuerschaltung gemäß den empfange­ nen und dekodierten Befehlsworten derart, daß die spezifi­ zierten Speicheroperationen ausgeführt werden, aufweist.
2. Speicherbauelement nach Anspruch 1, dadurch gekenn­ zeichnet, daß die Befehlssteuereinrichtung (30) eine mit der Dekodiereinrichtung (36) gekoppelte Zustandsschaltung (35) zum Verfolgen einer den dekodierten Befehlsworten entspre­ chenden Sequenz zur Durchführung der spezifizierten Spei­ cheroperationen aufweist.
3. Speicherbauelement nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Befehlssteuereinrichtung (30) eine Takterzeugungseinrichtung (32-34) zum Erzeugen von Zeitga­ besignalen aufweist.
4. Speicherbauelement nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die spezifizierte Speicheropera­ tion eine Leseoperation, eine Programmieroperation, eine Löschoperation, eine Programmierverifizieroperation und eine Löschverifizieroperation sein kann, wobei die Befehlsworte einen Lesecode, einen Programmiercode, einen Löschcode, ei­ nen Programmverifiziercode und einen Löschverifiziercode um­ fassen.
5. Speicherbauelement nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß das Speicherbauelement ein Flash-EEPROM-Bauelement ist.
6. Speicherbauelement nach einem der Ansprüche 1 bis 5, gekennzeichnet durch ein Befehlsregister (37), daß das über die Daten-Pins von einem externen Prozessor empfangene Be­ fehlswort speichern und an die Dekodiereinrichtung (36) aus­ geben kann.
7. Speicherbauelement nach einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, daß die Befehlssteuereinrichtung (30) freigegeben ist, wenn sie eine hohe Programmier- und Löschspannung empfängt.
8. Speicherbauelement nach Anspruch 7, dadurch gekenn­ zeichnet, daß dann, wenn die Befehlssteuereinrichtung (30) nicht freigegeben ist, sich das Speicherbauelement (10) in einem Nur-Lese-Modus befindet.
DE3900979A 1988-02-17 1989-01-14 Elektrisch lösch- und programmierbares Nur-Lese-Speicherbauelement Expired - Lifetime DE3900979C2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US15736288A 1988-02-17 1988-02-17

Publications (2)

Publication Number Publication Date
DE3900979A1 DE3900979A1 (de) 1989-08-31
DE3900979C2 true DE3900979C2 (de) 2003-03-27

Family

ID=22563401

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3900979A Expired - Lifetime DE3900979C2 (de) 1988-02-17 1989-01-14 Elektrisch lösch- und programmierbares Nur-Lese-Speicherbauelement

Country Status (5)

Country Link
JP (1) JP2817052B2 (de)
KR (1) KR0138791B1 (de)
DE (1) DE3900979C2 (de)
FR (1) FR2627316B1 (de)
GB (1) GB2215156B (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3083536B2 (ja) * 1990-06-05 2000-09-04 株式会社東芝 不揮発性半導体記憶装置の書込み回路
KR940006611B1 (ko) * 1990-08-20 1994-07-23 삼성전자 주식회사 전기적으로 소거 및 프로그램이 가능한 반도체 메모리장치의 자동 소거 최적화회로 및 방법
JPH05283708A (ja) * 1992-04-02 1993-10-29 Mitsubishi Electric Corp 不揮発性半導体記憶装置,その製造方法および試験方法
US5452251A (en) 1992-12-03 1995-09-19 Fujitsu Limited Semiconductor memory device for selecting and deselecting blocks of word lines
US5319593A (en) * 1992-12-21 1994-06-07 National Semiconductor Corp. Memory array with field oxide islands eliminated and method
JP3065481B2 (ja) * 1994-04-22 2000-07-17 インターナショナル・ビジネス・マシーンズ・コーポレ−ション ディスク・アレイ装置およびデータの格納方法
US5682496A (en) * 1995-02-10 1997-10-28 Micron Quantum Devices, Inc. Filtered serial event controlled command port for memory
US6108237A (en) 1997-07-17 2000-08-22 Micron Technology, Inc. Fast-sensing amplifier for flash memory
US5889795A (en) * 1995-04-21 1999-03-30 International Business Machines Corporation Disk array system and method for storing data

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4412309A (en) * 1981-09-28 1983-10-25 Motorola, Inc. EEPROM With bulk zero program capability

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4408306A (en) * 1981-09-28 1983-10-04 Motorola, Inc. Column and row erasable EEPROM
US4460982A (en) 1982-05-20 1984-07-17 Intel Corporation Intelligent electrically programmable and electrically erasable ROM
JPH0816882B2 (ja) * 1985-06-17 1996-02-21 株式会社日立製作所 半導体記憶装置
JPH0713879B2 (ja) * 1985-06-21 1995-02-15 三菱電機株式会社 半導体記憶装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4412309A (en) * 1981-09-28 1983-10-25 Motorola, Inc. EEPROM With bulk zero program capability

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Electronic Design, 29.11.84, S. 231-238 *

Also Published As

Publication number Publication date
KR0138791B1 (ko) 1998-06-15
KR890013651A (ko) 1989-09-25
GB2215156B (en) 1991-11-27
GB2215156A (en) 1989-09-13
GB8819692D0 (en) 1988-09-21
JP2817052B2 (ja) 1998-10-27
FR2627316A1 (fr) 1989-08-18
FR2627316B1 (fr) 1993-11-26
DE3900979A1 (de) 1989-08-31
JPH0210598A (ja) 1990-01-16

Similar Documents

Publication Publication Date Title
DE3900798C2 (de) Verfahren zum Programmieren eines elektrisch löschbaren und programmierbaren Nur-Lese-Speichers
DE69533429T2 (de) Automatischer progammier-algorithmus für flash-speicher im seitenmodus mit variabler programmierimpulshöhe und -breite
DE19880311B3 (de) Nichtflüchtige Speicherstruktur
DE4119394C2 (de) Nichtflüchtige Halbleiterspeichereinrichtung und Datenlöschungsverfahren hierfür
DE4207934C2 (de) Nichtflüchtige Halbleiterspeichervorrichtung und Programmierverfahren für eine nichtflüchtige Halbleiterspeichervorrichtung
DE19859494C2 (de) Nichtflüchtiger Mehrebenen-Halbleiterspeicherbaustein mit einer Schaltung zum Einstellen der Datenlesezeit
DE60220590T2 (de) Verfahren zur Reduzierung von Kopplungseffekten zwischen multi-level Speicherelementen eines nicht flüchtigen Speichers
DE60017838T2 (de) Nichtflüchtiger Speicher Typ NAND
DE4213731C2 (de) Nichtflüchtiges Halbleiterspeicherbauelement und Programmierverfahren hierfür
DE102006020180B3 (de) Verfahren zum Programmieren eines Blocks von Speicherzellen, nicht-flüchtiger Speicher und Speicherkarte
DE60308202T2 (de) Hochkompakter nichtflüchtiger speicher mit platz sparenden datenregistern und dessen betriebsverfahren
DE102004059411B4 (de) Flash-Speichervorrichtung und Verfahren zur Steuerung derselben
DE112010000955T5 (de) NAND-Flasharchitektur mit mehrstufiger Zeilendecodierung
DE4040492C2 (de)
DE102007041845A1 (de) Verfahren zum Betreiben eines integrierten Schaltkreises mit mindestens einer Speicherzelle
DE60015770T2 (de) Flashspeicheranordnung mit extern ausgelöster erfassung und heilung von fehlerhaften zellen
DE4122021C2 (de) Nichtflüchtige Halbleiterspeichervorrichtung und Verfahren zum Löschen von Ladungen in Speicherzellen
DE102005017012A1 (de) NOR-Flashspeicherbauelement, zugehöriges Speichersystem und Programmierverfahren
DE102005020796B4 (de) Halbleiterspeicherbauelement und Programmierverfahren
DE102005052213A1 (de) Programmierverfahren und nichtflüchtiges Speicherbauelement
DE3900979C2 (de) Elektrisch lösch- und programmierbares Nur-Lese-Speicherbauelement
DE102005032484A1 (de) Nichtflüchtiges Speicherelement und zugehöriges Programmierverfahren
DE69833348T2 (de) Nichtflüchtige Halbleiterspeicheranordnung
DE69627318T2 (de) Mehrpegelige nichtflüchtige Speicheranordnung
DE112004003023T5 (de) Halbleiterbauelement und Verfahren zum Steuern des Halbleiterbauelements

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8125 Change of the main classification

Ipc: G11C 16/02

8304 Grant after examination procedure
8364 No opposition during term of opposition