DE60033818T2 - Verfahren und Schaltung zur Programmierung eines nichtflüchtigen Multibitspeichers mit einer reduzierten Anzahl von Kontaktstiften - Google Patents

Verfahren und Schaltung zur Programmierung eines nichtflüchtigen Multibitspeichers mit einer reduzierten Anzahl von Kontaktstiften Download PDF

Info

Publication number
DE60033818T2
DE60033818T2 DE60033818T DE60033818T DE60033818T2 DE 60033818 T2 DE60033818 T2 DE 60033818T2 DE 60033818 T DE60033818 T DE 60033818T DE 60033818 T DE60033818 T DE 60033818T DE 60033818 T2 DE60033818 T2 DE 60033818T2
Authority
DE
Germany
Prior art keywords
memory
programming
address
address pin
data
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
DE60033818T
Other languages
English (en)
Other versions
DE60033818D1 (de
Inventor
Paolo Rolandi
Massimo Montanaro
Giorgio Oddone
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.)
STMicroelectronics SRL
Original Assignee
STMicroelectronics SRL
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 STMicroelectronics SRL filed Critical STMicroelectronics SRL
Publication of DE60033818D1 publication Critical patent/DE60033818D1/de
Application granted granted Critical
Publication of DE60033818T2 publication Critical patent/DE60033818T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/06Arrangements for interconnecting storage elements electrically, e.g. by wiring
    • G11C5/066Means for reducing external access-lines for a semiconductor memory clip, e.g. by multiplexing at least address and data signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input 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/10Programming or data input 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/32Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)

Description

  • Die vorliegende Erfindung betrifft ein Verfahren und einen Schaltkreis zum Programmieren eines nichtflüchtigen Multilevel-Speichers.
  • Es ist bekannt, dass die jüngsten Entwicklungen im Bereich nichtflüchtiger Speicher, insbesondere EPROM- und FLASH-Speicher, darauf gerichtet sind, ihre Speicherkapazität zu erhöhen.
  • Architekturen des Multilevel-Typs erscheinen derzeit für dieses Ziel am vielversprechensten. Jedoch erfordert das Lesen von diesen Speichern und mehr noch das Schreiben auf diese Speicher die Verwendung hochentwickelter Techniken. Es ist den Experten auf diesem technischen Gebiet auch bekannt, dass normalerweise zur Programmierung einer Multilevel-Zelle verwendete Verfahren eine Stufenspannung eine sogenannte „Spannungs-Leiter" ist, die vollständig innerhalb des Speichergeräts erzeugt wird. Weiterhin werden, um eine effektive Programmierung zu erreichen, speziell für diese Operation vorgesehene Pins verwendet, was die weitere Verbreitung des Speichers in der Zukunft begrenzt, für den eine immer weiter zunehmende Anzahl von Adress-Pins erforderlich ist.
  • Zusätzlich verwenden konventionelle Speicher als Synchronisierungssignal für die Programmierungsoperation einen Pin, der als Cen (Chip enable) bekannt ist, der jedoch in einigen Speichergeräten möglicherweise nicht zur Verfügung steht (beispielsweise MASK-ROMs mit einer Kapazität von 64 MBit oder mehr).
  • Weiterhin wird die Dauer des elementaren Impulses zum Programmieren der individuellen Speicherzellen normalerweise mit Hilfe komplizierter interner Taktschaltungen eingestellt, deren Verzögerung bekanntermaßen prozessabhängig ist und von Gerät zu Gerät variiert.
  • FR-A-2 632 110 offenbart ein Verfahren zum Programmieren eines nichtflüchtigen Speichers mit einer verringerten Anzahl Pins.
  • Das Ziel der vorliegenden Erfindung ist es, ein Verfahren zum Programmieren eines nichtflüchtigen Multilevel-Speichers anzugeben, das es erlaubt zu schreiben (programmieren), ohne auf speziell vorgesehene Schreib-Pins zurückzugreifen.
  • Im Rahmen dieses Ziels ist eine Aufgabe der vorliegenden Erfindung, ein Verfahren zum Programmieren eines nichtflüchtigen Multilevel-Speichers anzugeben, das keine internen Takterzeugungs-Schaltkreise benötigt, um angepasste Synchronisierungssignale zu erzeugen, die zum Programmieren verwendet werden.
  • Eine weitere Aufgabe der vorliegenden Erfindung ist einen Schaltkreis zum Programmieren eines nichtflüchtigen Multilevel-Speichers anzugeben, der es erlaubt, das Verfahren der Erfindung zu implementieren.
  • Eine weitere Aufgabe der vorliegenden Erfindung ist es, ein Verfahren und ein Schaltkreis zum Programmieren eines nichtflüchtigen Multilevel-Speichers anzugeben, welche es erlauben, eine Multilevel-Speicherzelle mit einem minimalen Anstieg der Gesamtausmaße und der logischen Komplexität zu programmieren.
  • Eine weitere Aufgabe der vorliegenden Erfindung ist es, ein Verfahren und einen Schaltkreis zum Programmieren eines nichtflüchtigen Multilevel-Speichers anzugeben, die besonders zuverlässig, vergleichsweise einfach und zu wettbewerbstauglichen Kosten bereitstellbar sind.
  • Dieses Ziel und diese sowie andere Aufgaben, die nachfolgend noch besser verständlich werden, werden durch ein Verfahren zum Programmieren eines nichtflüchtigen Multilevel-Speichers mit einer verringerten Anzahl von Pins erreicht, wie es in Anspruch 1 definiert ist.
  • Dieses Ziel und diese Aufgaben werden auch durch einen Schaltkreis zum Programmieren eines Multilevel-Speichers erzielt, wie er in Anspruch 6 definiert ist.
  • Weitere Merkmale und Vorteile der Erfindung werden anhand der Beschreibung eines bevorzugten, jedoch nicht ausschließlichen Ausführungsbeispiels des Verfahrens und des Schaltkreises gemäß der Erfindung besser verständlich, welche mit einem nicht beschränkend gemeinten Beispiel in den beigefügten Zeichnungen dargestellt sind, wobei:
  • 1 ein Flussdiagramm der Schritte des Programmierungsverfahrens gemäß der vorliegenden Erfindung ist;
  • 2a und 2b jeweils Timing-Diagramme externer und interner Signale des Speichergeräts sind, auf welches das Verfahren der vorliegenden Erfindung angewendet wird;
  • 3 ein Blockdiagramm einer Architektur eines Datenbusses und eines Prüfschaltkreises ist, die zur Implementierung des Verfahrens gemäß der Erfindung verwendet werden; und
  • 4 ein Blockdiagramm eines Programmierungs-Schaltkreises ist, der zur Implementierung des Verfahrens gemäß der vorliegenden Erfindung verwendet wird.
  • Mit Bezug auf die Figuren, in denen identische Ziffern und Bezugszeichen identischen Elementen entsprechen, wird das Programmierungsverfahren der vorliegenden Erfindung schematisch im Flussdiagramm der 1 dargestellt.
  • Das grundlegende Konzept der vorliegenden Erfindung ist die Implementierung eines effektiven Verfahrens zum elektrischen Programmieren des nichtflüchtigen Multilevel-Speichers durch einen Schaltkreis, der einen oder mehrere Adress-Pins als ein Schreib-Synchronisierungssignal verwendet. Durch diese Adress-Pins wird die Dauer der Programmierung der Zelle auch ohne Rückgriff auf komplizierte interne Takt-Schaltkreise eingestellt, deren Verzögerung bekanntlich prozessabhängig ist und von Gerät zu Gerät variiert.
  • Das verwendete Verfahren zum Schreiben eines nichtflüchtigen Multilevel-Speichers unter Verwendung eines oder mehrerer Adress-Pins zur Synchronisierung wird im Flussdiagramm der 1 dargestellt. Es wird beispielhaft der Fall betrachtet, in dem vier Programmierungs-Niveaus auftreten, d. h., zwei Bits für jede individuelle Speicherzelle. Dies ist selbstverständlich nur ein Beispiel und darf nicht als Einschränkung betrachtet werden.
  • Der erste Schritt des Verfahrens der Erfindung, der in 1 mit der Bezugsziffer 1 gekennzeichnet ist, umfasst ein Einstellen des Speicherprogrammierungsmodus, welcher, wie für manche Speicher bekannt, durch ein Signal PGMODE aktiviert wird, das vom Ausgang eines Latches eintrifft, in welchem der aktive Zustand durch eine jeweilige Adresse des Speichers bestimmt ist, der auf das Niveau „1" gebracht ist. Dies dient dazu, den Programmierungsmodus von den restlichen Betriebsmodi des Speichers schaltkreistechnisch zu isolieren.
  • Das Verfahren gemäß der Erfindung verwendet wenigstens einen und vorzugsweise zwei oder mehr Schreib/Prüf-Synchronisierungsadressen, die aus den Adress-Pins ausgewählt werden.
  • Wenn zwei Synchronisierungsadressen verwendet werden, erfordert das Schreiben eines vollständigen Feldes (Arrays) vier aufeinanderfolgende Schritte. Eine Programmierung eines ersten Viertels des Arrays beginnt damit, dass alle Adressen auf null gesetzt werden, Schritt 2, und dann der Pin der Versorgungsspannung Vpp auf ein hohes Spannungsniveau gebracht wird, Schritt 3, zum Beispiel auf ungefähr 12 V, um auf der ansteigenden Flanke den Wert der zwei Adressen zu speichern, die für die Synchronisation verwendet werden, welche zu diesem Zeitpunkt frei werden.
  • Der Schritt zum Speichern der zwei Adressen ist mit der Bezugsziffer 4 gekennzeichnet.
  • Im Schritt 5 wird die erste Synchronisierungsadresse auf das Niveau „1" gebracht, und zusammen mit der auf hohem Spannungsniveau befindlichen Versorgungsspannung Vpp wird ein Signal A1TLDUMMY erzeugt, und ein interner Zähler wird auf seiner ansteigenden Flanke zurückgesetzt, Schritt 6; der Zähler speichert die Anzahl Programmierungspulse, welche von einer Stufen-Spannungsquelle gesendet werden, auf dem Gate-Anschluss der Speicherzelle, die programmiert werden soll.
  • Die Hardware-Konfiguration, die zur Implementierung des Verfahrens der Erfindung verwendet wird, wird nachfolgend in näheren Einzelheiten beschrieben, um die verschiedenen Komponenten und ihre Funktion klarzustellen.
  • Die zweite freie Adresse, Schritt 7, wird variiert, so dass die zu programmierenden Daten, welche von den Dateneingängen des Speichers eintreffen, an ihrer abfallenden Flanke zwischengespeichert (engl. latched) werden, Schritt 8.
  • Dieser Vorprogrammierungsschritt endet, indem die zweite Synchronisierungsadresse, welche von hier an als Taktgeber agiert, auf das Niveau „1" gebracht wird, und indem die erste Synchronisierungsadresse auf das Null-Niveau gebracht wird, Schritt 9, was einen Ausgang OUT auf das Null-Niveau bringt, der als ein Indikator verwendet wird, um dem Programmierer den Anfang des Programmierschrittes anzuzeigen, wenn der Indikator auf dem Niveau „0" ist, und das Ende das Programmierschrittes anzuzeigen, wenn der Indikator auf dem Niveau „1" ist.
  • Der Null-Übergang des Ausgangs OUT ist im Schritt 10 dargestellt, welchem Schritt 11 folgt, in dem die zweite Adresse, welche für die Synchronisierung verwendet wird, auf das Niveau „1" gebracht wird.
  • Der tatsächliche Programmierungsschritt beginnt und endet mit einer Prüfung, Schritt 12, so dass es am Anfang möglich ist, die unbeschriebenen Zellen schnell und ohne sie einer Belastung auszusetzen zu testen, und schließlich um die Array-Adresse in Abwesenheit des hohen Spannungsniveaus zu ändern.
  • Auf jede negative Prüfung hin wird der Zähler bis zu seinem maximalen Wert inkrementiert, Schritte 13 und 14, wonach die Zelle, deren Programmierung gescheitert ist, als „schlecht" markiert wird, Schritt 15.
  • Wenn jedoch die Prüfung ein positives Ergebnis geliefert hat, endet die Programmierung durch Setzen des Indikators am Ausgang OUT auf „1", Schritt 16. Wenn der programmierte Wert eine „00" ist, Schritt 17, wird der Zähler vollständig auf „1" gesetzt, so dass der Gate-Anschluss der „00"-Zelle die maximale Spannung zugeführt bekommt, die einen ausreichenden Programmierungsspielraum sicherstellen kann.
  • Der Programmierungszyklus wird für jedes Viertel des Arrays wiederholt, indem die Adressen inkrementiert werden, Schritt 20, wenn ein Übergang von einem Viertel des Arrays auf das andere nicht erforderlich ist.
  • Die Adressinkrementierung führt das Verfahren zurück auf Schritt 5.
  • Wenn jedoch stattdessen das Array-Viertel bereits programmiert worden ist, springt das Verfahren weiter zu Schritt 21, welcher prüft, ob die aktuelle Adresse die letzte Adresse zur Programmierung ist; wenn dies der Fall ist, endet der Programmierungszyklus, Schritt 22.
  • Andernfalls wird das hohe Spannungsniveau von Vpp entfernt, Schritt 23, und dann werden die ersten und/oder zweiten Synchronisierungsadressen geändert, Schritt 24, zum Beispiel, indem die erste Adresse auf das Niveau „1" gebracht wird und die zweite Adresse wieder auf das Niveau „0" gebracht wird, und das Verfahren startet erneut, indem die Spannung Vpp auf einen hohen Wert gebracht wird, um die Adressen wieder zu speichern.
  • In der Praxis zeigt Schritt 24 auf Schritt 3 des oben beschriebenen Verfahrens.
  • Die 2a und 2b sind Flussdiagramme der Signale, die im Verfahren gemäß der vorliegenden Erfindung involviert sind, und des Signals, das durch DATABUS gekennzeichnet ist, wobei die Bezugziffer 30 das Laden von Daten an einer Adresse kennzeichnet, die Bezugsziffer 31 einen Datenbeschaffungsschritt kennzeichnet, die Bezugsziffer 32 einen Datenspeicherschritt kennzeichnet, und so weiter, und wobei die Bezugszeichen V und P bei der zweiten Synchronisierungsadresse A2 jeweils den Prüf- bzw. Programmierungsschritt anzeigen.
  • Die Bezugsziffer 33 im Flussdiagramm der 2a sowie im Flussdiagramm der 2b, und in gleicher Weise die Bezugsziffer 34 kennzeichnen jeweils den Vorprogrammierungs- bzw. Programmierungsschritt.
  • Das Signal ENDPROG zeigt das Ende der Programmierung an und wird vom Zähler ausgegeben, nachfolgend in näherem Detail beschrieben.
  • Der Buchstabe A kennzeichnet einen Adressübergang aller Adressen mit Ausnahme der zwei zum Schreiben verwendeten Adressen (A1, A2).
  • Das Flussdiagramm der 2b ist im wesentlichen ähnlich dem Flussdiagramm der 2a, mit der Ausnahme, dass die zweite Synchronisierungsadresse A2 „hoch" ist und nach Durchgang der Daten auf dem Datenbus DATABUS auf „niedrig" („0") gebracht wird. Dies erlaubt es, die Daten zu speichern, die in Bezug zu den Speicherorten eines anderen Speicherteils mit Blick auf 2a stehen. Im wesentlichen illustriert 2a den Schreibprozess von Daten in ein erstes Viertel und ein zweites Viertel des Speicher-Arrays, während 2b die selben Schreibschritte für das dritte und vierte Viertel des Speicher-Arrays illustriert.
  • 3 ist ein Blockdiagramm des Datenbusses DATABUS, welcher verwendet wird, um das zu programmierende Datenelement zu speichern, welches von den Ausgangskontakten 35 des Speichers her eintrifft, und dann, während des Prüfschrittes, um die Daten am Ausgang der Leseverstärker 36 zu einer Vergleichslogik 37 zu übertragen. Während des Programmierschrittes wird das gespeicherte Datenelement wieder auf dem Datenbus DATABUS präsentiert, um die nichtangeschlossenen (floating) Knoten daran zu hindern, Quellen zusätzlichen Verbrauchs zu werden. Der Speicher ist in eine Vielzahl von Blöcken unterteilt, je ein Block für jeweils zwei Ausgangsbits für einen Vier-Niveauspeicher.
  • Die Bezugsziffer 38 kennzeichnet den Null-Block, der ähnlich den nachfolgenden Blöcken 39 und 40 ist.
  • Auf dem Niveau jedes Blocks vergleicht die Vergleichslogik 37 die zu programmierenden Daten mit den Daten am Ausgang der Leseverstärker.
  • Die zu programmierenden Daten werden von den Ausgangskontakten 35 durch einen Puffer 41 dem Datenbus DATABUS und von dort dem Speicherelement 42 eingegeben, in dem das zweite Adresssignal zur Synchronisierung ebenfalls eingegeben wird.
  • Das Speicherelement 42 ist mit der Vergleichslogik 37 verbunden, welche, wenn eine Programmierung erfolgt ist, das hohe Spannungsniveau vom Drain-Anschluss der Zelle beseitigt, wobei ein Signal STOPVPDLOC an eine lokale Quelle 43 der Spannung gesendet wird, die die Leseverstärker 36 steuert, und steuert mit Hilfe eines Signals BLKPROGN eine verteilte Logik, die von einem P-Kanal MOS-Transistor 44 gebildet wird, für jeden der Blöcke 38, 39 und 40. Die verteilte Logik setzt den in 4 gezeigten Zähler mit Hilfe des Signals SETCOUNTER, wenn alle Blöcke programmiert worden sind und der letzte Impuls der höchsten Spannung für die „00"-Zelle verbleibt.
  • Die Stufenspannung, die erforderlich ist, um eine Multilevel-Zelle zu programmieren, wird, wie in 4 gezeigt, erzeugt, indem von einem resistiven Spannungsteiler 50 zwischen einer Spannung Vpp und einer Lesespannung VREAD das Spannungsniveau abgezweigt wird, welches geeignet ist, mit Hilfe einer Dekodierungslogik 51 ausgewählt wurde, die vom beschriebenen Zähler 52 gesteuert wird, der an seinem Eingang des Signal SETCOUNTER empfängt. Das mit Hilfe der Dekodierungslogik 51 ausgewählte Spannungsniveau wird an den Gate-Anschluss der zu programmierenden Zelle gesendet, wobei als Steuerung ein Operationsverstärker 53 verwendet wird, der mit negativer Rückkopplung verschaltet ist.
  • Der Modulus-Wert des Zählers hängt von der Programmierungsspannung und von der Genauigkeit der zu erzeugenden Stufenspannung ab. Beispielsweise erfordern ein Programmierungsspannungs-Bereich von 5,5 bis 11,5 V und eine erforderliche Genauigkeit von 100 mV 60 Impulse und daher einen 6x-Zähler. Der selbe Zähler setzt den Indikatorwert am Ausgang OUT am Ende der Programmierung auf „1 ", wobei das ENDPROG-Signal ausgesandt wird.
  • In der Praxis wurde beobachtet, dass das Verfahren und der Schaltkreis zum Programmieren eines nichtflüchtigen Multilevel-Speichers mit einem externen Synchronisationssignal das gewünschte Ziel und die Aufgaben voll erreicht, weil es erlaubt, eine Multilevel-Speicherzelle mit einem minimalen Anstieg der Gesamtausmaße und der Logikkomplexität zu programmieren, indem als ein Synchronisierungssignal für die gesamte Operation zwei Adress-Pins anstelle des Cen-Pins verwendet werden, der möglicherweise manchmal nicht verfügbar ist.
  • Darüber hinaus hilft die Synchronisierung, erhalten vom internen/externen Management der gesamten Schreiboperation, von der Erzeugung der Stufenspannung zur Verwendung der selben Schaltkreise für den Prüfschritt, die in einem normalen Lesezyklus verwendet werden, die Genauigkeit der programmierten Spannungsniveaus zu erhöhen.
  • Wo in einem Anspruch erwähnte technische Merkmale mit Bezugszeichen versehen sind, wurden diese Bezugszeichen zum alleinigen Zweck der Verbesserung der Verständlichkeit der Ansprüche aufgenommen, und haben dementsprechend solche Bezugszeichen keinerlei begrenzende Wirkung auf den Bedeutungsumfang jedes Elements, das beispielhaft durch solche Bezugszeichen identifiziert ist.

Claims (10)

  1. Verfahren zum Programmieren eines nichtflüchtigen Multilevel-Speichers mit einer reduzierten Anzahl Pins, mit einem Schritt des Einstellens (1) des Speichers in einen Programmiermodus, dadurch gekennzeichnet, dass der nichtflüchtige Speicher ein Multilevel-Speicher ist und dass das Verfahren weiterhin die folgenden Schritte umfasst: Verwenden eines Adress-Pins (A2) des Speichers als Schreib- und Prüftakt; Einstellen (2) aller Adressen des Speichers auf das Null-Niveau und Versetzen (3) des Programmierspannungs-Pins des Speichers auf ein Programmier-Niveau (Vpp) hoher Spannung; Speichern (4) eines ersten Adresswertes und eines zweiten Adresswertes auf der ansteigenden Vorderflanke der Programmierspannung (Vpp) und; Verwenden eines ersten Adress-Pins (A1), um einen internen Zähler des Speichers zurückzusetzen (6), der ausgebildet ist, die Anzahl von Programmierimpulsen zu speichern, die von einer Stufenspannungsquelle an das Gate-Terminal einer zu programmierenden Speicherzelle gesendet wurde; Speichern (8), zu einem ersten Zeitpunkt, zu programmierender Daten im Speicher mit Hilfe eines zweiten Adress-Pins (A2), wobei nachfolgend der zweite Adress-Pin als Schreib- und Prüftakt verwendet wird; Durchführen eines Programmier-Überprüfschrittes (12) an Speicherzellen des Speichers, gefolgt von einem Schritt zum tatsächlichen Programmieren der Speicherzellen.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass, wenn der Prüfschritt (12) ein negatives Ergebnis ergibt, der Zähler schrittweise inkrementiert wird, bis er seinen Maximalwert erreicht, wonach eine Speicherzelle, deren Programmierung bis dahin gescheitert ist, als schlecht markiert wird.
  3. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass der Schritt (8) des Speicherns der zu programmierenden Daten unter Verwendung des zweiten Adress-Pins (A2) auf der abfallenden Flanke eines Signals des zweiten Adress-Pins durchgeführt wird.
  4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, dass nach dem Speichern der zu programmierenden Daten auf der abfallenden Flanke eines Signals des zweiten Adress-Pins (A2) der zweite Adress-Pin als Schreib- und Prüftakt verwendet wird.
  5. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Dauer der Programmierung der Speicherzellen von den ersten und zweiten Adress-Pins (A1, A2) eingestellt wird.
  6. Programmierschaltung für einen nichtflüchtigen Multilevel-Speicher, umfassend: einen Datenbus (DATABUS); Ausgangs-Pins (35) des Speichers, die mit dem Datenbus verbunden sind; ein Datenpuffer (41), der einerseits mit den Ausgangs-Pins (35) und anderseits mit dem Datenbus (DATABUS) verbunden ist; dadurch gekennzeichnet, dass die Programmierschaltung zusätzlich umfasst: wenigstens einen Lese-Verstärker (36), der mit dem Datenbus verbunden ist und von einer Stufenspannungsquelle gesteuert wird; wenigstens eine Vergleichslogik (37), die ausgebildet ist, einen Vergleich zwischen in den Speicher zu programmierenden Daten, die vom Datenbus (DATA-BUS) her eintreffen, und Daten, die vom Lese-Verstärker (36) ausgegeben wurden, durchzuführen; Speichermittel (42), die einerseits mit dem Datenbus (DATABUS) und andererseits mit der Vergleichslogik (37) verbunden sind, wobei die Speichermittel von einem Adress-Pin (A2) des Speichers gesteuert werden, der als Schreib-/Prüftakt verwendet wird, und durch einen weiteren Adress-Pin (A1) des Speichers, der als Rückstell-Signal (RESET) für einen internen Zähler des Speichers verwendet wird.
  7. Programmierschaltung nach Anspruch 6, dadurch gekennzeichnet, dass die Vergleichslogik (37) ein Signal (STOPVPDLOC), das einen Spannungsabfall der Stufenspannungsquelle anzeigt, und ein Signal (BLKPROGN) zum Steuern einer verteilten Logik (44) des Speichers erzeugt.
  8. Programmierschaltung nach Anspruch 6, dadurch gekennzeichnet, dass die Stufenspannungsquelle einen Spannungsteiler (50) und eine Dekodierlogik (51) enthält, die einen Operationsverstärker (53) mit negativer Rückkopplung steuert, wobei der Operationsverstärker mit dem Gate-Anschluss einer zu programmierenden Speicherzelle verbunden ist.
  9. Programmierschaltung nach Anspruch 8, dadurch gekennzeichnet, dass die Dekodierlogik (51) von einem Zähler (52) gesteuert wird, der ausgebildet ist, am Eingang ein Ausgangssignal (SETCOUNTER) der verteilten Logik (44) zu empfangen.
  10. Programmierschaltung nach Anspruch 9, dadurch gekennzeichnet, dass die Speichermittel jeweils ausgebildet sind, den Wert eines ersten Adress-Pins (A1) und eines zweiten Adress-Pins (A2) zu speichern, und den ersten und zweiten Adress-Pin freizustellen, wobei der zweite Adress-Pin (A2) den Schreib- und Prüftakt bildet, und der erste Adress-Pin (A1) zusammen mit einer Programmierspannung das Rückstell-Signal für den Zähler (52) erzeugt.
DE60033818T 2000-09-18 2000-09-18 Verfahren und Schaltung zur Programmierung eines nichtflüchtigen Multibitspeichers mit einer reduzierten Anzahl von Kontaktstiften Expired - Lifetime DE60033818T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP00830620A EP1197968B1 (de) 2000-09-18 2000-09-18 Verfahren und Schaltung zur Programmierung eines nichtflüchtigen Multibitspeichers mit einer reduzierten Anzahl von Kontaktstiften

Publications (2)

Publication Number Publication Date
DE60033818D1 DE60033818D1 (de) 2007-04-19
DE60033818T2 true DE60033818T2 (de) 2007-11-15

Family

ID=8175482

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60033818T Expired - Lifetime DE60033818T2 (de) 2000-09-18 2000-09-18 Verfahren und Schaltung zur Programmierung eines nichtflüchtigen Multibitspeichers mit einer reduzierten Anzahl von Kontaktstiften

Country Status (3)

Country Link
US (1) US6525961B2 (de)
EP (1) EP1197968B1 (de)
DE (1) DE60033818T2 (de)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1729305A4 (de) * 2004-03-26 2007-08-22 Spansion Llc Halbleiterbauelement und verfahren zum schreiben von daten in ein halbleiterbauelement
JP4870409B2 (ja) * 2004-10-26 2012-02-08 三星電子株式会社 不揮発性メモリ装置及びそれのプログラム方法
US7099180B1 (en) * 2005-02-15 2006-08-29 Intel Corporation Phase change memory bits reset through a series of pulses of increasing amplitude
US7656710B1 (en) 2005-07-14 2010-02-02 Sau Ching Wong Adaptive operations for nonvolatile memories
US7586795B2 (en) 2006-03-20 2009-09-08 Cypress Semiconductor Corporation Variable reference voltage circuit for non-volatile memory

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2632110B1 (fr) * 1988-05-27 1990-10-12 Bendix Electronics Sa Procede et dispositif de programmation d'une memoire du type prom et memoire en faisant application
US5218569A (en) * 1991-02-08 1993-06-08 Banks Gerald J Electrically alterable non-volatile memory with n-bits per memory cell
JP2671673B2 (ja) 1991-11-13 1997-10-29 株式会社大林組 屋根膜の取付方法
JPH06348866A (ja) * 1993-06-03 1994-12-22 Matsushita Electron Corp 半導体回路装置
US6178118B1 (en) * 1997-08-26 2001-01-23 Macronix International Co., Ltd. Electrically programmable semiconductor device with multi-level wordline voltages for programming multi-level threshold voltages
US5959883A (en) * 1998-01-09 1999-09-28 Information Storage Devices, Inc. Recording and playback integrated system for analog non-volatile flash memory

Also Published As

Publication number Publication date
US20020071307A1 (en) 2002-06-13
DE60033818D1 (de) 2007-04-19
EP1197968A1 (de) 2002-04-17
EP1197968B1 (de) 2007-03-07
US6525961B2 (en) 2003-02-25

Similar Documents

Publication Publication Date Title
DE19859494C2 (de) Nichtflüchtiger Mehrebenen-Halbleiterspeicherbaustein mit einer Schaltung zum Einstellen der Datenlesezeit
DE69028386T2 (de) Auf statischem RAM basierende Zelle für ein programmierbares logisches Feld
DE3875658T2 (de) Programmierbarer nur-lese-speicher mit mitteln zur entladung der bitleitung vor dem nachpruefen der programmierung.
DE60312729T2 (de) Intelligente verifikation von speichern mit mehreren zuständen
DE69127241T2 (de) Programmierbare Schaltung zur Leistungsverminderung in einer programmierbaren logischen Schaltung
DE102006020180B3 (de) Verfahren zum Programmieren eines Blocks von Speicherzellen, nicht-flüchtiger Speicher und Speicherkarte
DE10052326B4 (de) Nichtflüchtiges Halbleiterspeicherbauelement und Programmierverfahren hierfür
DE68919960T2 (de) Vorladungssteuerung für Leseverstärker.
DE4040492C2 (de)
DE60133513T2 (de) Programmierbarer und elektrisch löschbarer serieller auslesbarer Speicher durch Vorempfang
DE3930932A1 (de) Ausgangsrueckkopplungssteuerschaltung fuer integrierte schaltung
DE60222891T2 (de) Nichtflüchtige Speichervorrichtung und Selbstreparatur-Verfahren
DE60120998T2 (de) Nichtflüchtige sicherung in einem redundanzschaltkreis für flash-speicher mit geringer versorgungsspannung und verfahren zu deren ausführung
DE102005032484A1 (de) Nichtflüchtiges Speicherelement und zugehöriges Programmierverfahren
DE2614297A1 (de) Mos-speicher
DE69627318T2 (de) Mehrpegelige nichtflüchtige Speicheranordnung
DE102007062674A1 (de) Integrierte Schaltkreise, Speicher-Steuerungseinheit und Speichermodule
DE4318422A1 (de) Integrierte Schaltung mit Registerstufen
DE60108388T2 (de) Burst-architektur für flashspeicher
DE60033818T2 (de) Verfahren und Schaltung zur Programmierung eines nichtflüchtigen Multibitspeichers mit einer reduzierten Anzahl von Kontaktstiften
DE112004002927B4 (de) Halbleiterbauelement und Verfahren zum Beschreiben desselben
DE69500023T2 (de) Elektrisch veränderlicher Festspeicher mit Prüffunktionen
DE102006040571B4 (de) Vorrichtung und Verfahren zum Auslesen einer Speicherinformation
DE10248065B4 (de) Inhaltsadressierbares Speicherbauelement
DE19531021C2 (de) Datenleseschaltung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition