DE102006023065B4 - Flashspeicherbauelement und Programmierverfahren - Google Patents

Flashspeicherbauelement und Programmierverfahren Download PDF

Info

Publication number
DE102006023065B4
DE102006023065B4 DE102006023065A DE102006023065A DE102006023065B4 DE 102006023065 B4 DE102006023065 B4 DE 102006023065B4 DE 102006023065 A DE102006023065 A DE 102006023065A DE 102006023065 A DE102006023065 A DE 102006023065A DE 102006023065 B4 DE102006023065 B4 DE 102006023065B4
Authority
DE
Germany
Prior art keywords
voltage
programming
signal
vpgm
flash memory
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
DE102006023065A
Other languages
English (en)
Other versions
DE102006023065A1 (de
Inventor
Min-Gun Suwon Park
Jin-Wook Lee
Sang-Won Suwon Hwang
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE102006023065A1 publication Critical patent/DE102006023065A1/de
Application granted granted Critical
Publication of DE102006023065B4 publication Critical patent/DE102006023065B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • 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/3404Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
    • 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
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • 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/08Address circuits; Decoders; Word-line control 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/30Power supply circuits

Abstract

Flashspeicherbauelement,
gekennzeichnet durch
– eine Steuerlogik (160), die dafür eingerichtet ist, während eines Programmierintervalls einer jeweiligen Programmierschleife ein erstes Flagsignal zu aktivieren, wobei eine Programmierspannung (Vpgm) gemäß dem ersten Flagsignal an eine ausgewählte Wortleitung anlegbar ist,
– eine Generatorschaltung (170) für hohe Spannung, die dafür eingerichtet ist, während des Programmierintervalls die Programmierspannung (Vpgm) und ein zweites Flagsignal zu erzeugen, wobei das zweite Flagsignal anzeigt, ob die Programmierspannung (Vpgm) wieder auf eine Sollspannung gebracht wurde, und
– einen Programmierungsausführungsendesignalgenerator (180), der dafür eingerichtet ist, gemäß dem ersten und zweiten Flagsignal ein Programmierungsausführungsendesignal (PGM_EXE_END) zu erzeugen,
– wobei die Steuerlogik (160) auf die Erzeugung des Programmierungsausführungsendesignals (PGM_EXE_END) hin das erste Flagsignal deaktiviert, um das Programmierintervall abzuschließen.

Description

  • Die Erfindung betrifft ein Flashspeicherbauelement und ein Programmierverfahren hierfür.
  • Es existiert ein zunehmender Bedarf an nichtflüchtigen Halbleiterspeicherbauelementen, welche ohne Notwendigkeit eines Datenauffrischungsvorgangs für im Bauelement gespeicherte Daten programmiert und gelöscht werden können. Der allgemeine Trend in der gesamten Halbleiterspeicherbauelemententwicklung ist durch eine zunehmende Speicherkapazität und einen höheren Integrationsgrad charakterisiert. Ein NAND-Flashspeicherbauelement ist ein Beispiel eines nichtflüchtigen Halbleiterspeicherbauelements, welches eine große Speicherkapazität und einen hohen Integrationsgrad zur Verfügung stellt. Da das NAND-Flashspeicherbauelement gespeicherte Daten auch dann behält, wenn das Bauelement nicht mit Energie versorgt wird, ist es in elektronischen Geräten wie tragbaren Endgeräten, tragbaren Computern usw. weit verbreitet, welche von einer plötzlichen Unterbrechung der Energieversorgung betroffen werden können.
  • Herkömmliche NAND-Flashspeicherbauelemente umfassen typischerweise elektrisch lösch- und programmierbare Nurlesespeicherzellen, welche als Flash-EEPROM-Zellen bezeichnet werden. Allgemein umfasst eine Flash-EEPROM-Zelle einen Zellentransistor, welcher aus einem Halbleitersubstrat oder einem Volumenmaterial (Bulk) eines ersten Leitungstyps, z. B. p-leitend, und aus Source- und Drainbereichen eines zweiten Leitungstyps, z. B. n-leitend, gebildet wird. Der Sourcebereich und der Drainbereich sind durch einen Kanalbereich voneinander getrennt und ein floatendes Gate ist über dem Kanalbereich ausgebildet. Das floatende Gate speichert Elektronen und steuert die Gatefunktion für den Zellentransistor.
  • Ein herkömmliches Speicherzellenfeld, das Flash-EEPROM-Zellen umfasst, welche die oben beschriebene Struktur aufweisen und nachfolgend auch einfach als Speicherzellen bezeichnet werden, ist in 1 dargestellt. Es sei angemerkt, dass in der vorliegenden Beschreibung eine Schicht oder ein Element, die bzw. das als „auf” oder „über” einem anderen Element oder einer anderen Schicht liegend bezeichnet ist, direkt auf dem anderen Element oder der anderen Schicht angeordnet sein kann oder Zwischenelemente oder Zwischenschichten vorhanden sein können.
  • Unter Bezugnahme auf 1 umfasst ein Speicherzellenfeld 1 oder ein Speicherblock eine Mehrzahl von Zellenketten 10 oder NAND-Ketten, welche mit je einer Bitleitung BL0 bis BLn – 1 korrespondieren. Jede Zellenkette 10 umfasst einen Kettenauswahltransistor SST als ersten Auswahltransistor, einen Masseauswahltransistor GST als zweiten Auswahltransistor und eine Mehrzahl von Speicherzellen M(x)0 bis M(x)(m – 1), wobei x eine Zahl zwischen 0 und (n – 1) ist. Der Kettenauswahltransistor SST umfasst eine Drain, die mit einer korrespondierenden Bitleitung verbunden ist, und ein Gate, welches mit einer Kettenauswahlleitung SSL verbunden ist. Der Masseauswahltransistor GST umfasst eine Source, welche mit einer gemeinsamen Sourceleitung CSL verbunden ist, und ein Gate, welches mit einer Masseauswahlleitung GSL verbunden ist. Die Speicherzellen M(x)0 bis M(x)(m – 1) sind in Reihe zwischen einer Source des Kettenauswahltransistors SST und einer Drain des Masseauswahltransistors GST eingeschleift und jeweils mit einer korrespondierenden Wortleitung WL0 bis WLm – 1 verbunden. Die Wortleitungen WL0 bis WLm – 1, die Kettenauswahlleitung SSL und die Masseauswahlleitung GSL werden durch eine nicht dargestellte Zeilenauswahlschaltung getrieben.
  • Um die Speicherzellen einer ausgewählten Zeile oder Wortleitung des NAND-Flashspeicherbauelements zu programmieren, werden die Speicherzellen in dem Speicherblock oder dem Speicherzellenfeld zuerst gelöscht, um jeder Speicherzelle eine Schwellwertspannung zu geben, welche kleiner als 0 V ist. Nach dem Löschen der Speicherzellen werden Programmierdaten in eine Seitenpufferschaltung des NAND-Flashspeicherbauelements geladen und dann erzeugt eine Pumpschaltung eine relativ hohe Spannung für den Programmiervorgang, d. h. es wird beispielsweise eine Passierspannung und eine Programmierspannung an die Wortleitungen angelegt. Anschließend werden die geladenen Daten durch eine Iteration von Programmierschleifen in die Speicherzellen einer ausgewählten Wortleitung programmiert. Jede Programmierschleife umfasst ein Bitleitungsaufbauintervall, ein Programmierintervall, ein Entlade-/Erholungsintervall und ein Verifizierungsintervall.
  • Während des Bitleitungsaufbauintervalls werden die Bitleitungen BL0 bis BL(n – 1) gemäß den geladenen Programmierdaten auf eine Versorgungsspannung oder eine Massespannung aufgeladen. Das bedeutet, dass eine Bitleitung, welche mit einer zu programmierenden Speicherzelle verbunden ist, auf die Massespannung geladen wird, und eine Bit leitung, welche mit einer für die Programmierung gesperrten, d. h. nicht zu programmierenden Speicherzelle, verbunden ist, wird auf die Versorgungsspannung geladen. Innerhalb des Programmierintervalls wird die Programmierspannung an eine ausgewählte Wortleitung angelegt und die Passierspannung wird an die nicht ausgewählten Wortleitungen angelegt. Für Speicherzellen, welche mit Bitleitungen verbunden sind, die auf die Massespannung geladen sind, wird eine Vorspannungsbedingung erfüllt, welche zum Auslösen von F-N-Tunneln ausreichend ist, so dass aus dem Bulk Elektronen in die floatenden Gates der Speicherzellen injiziert werden. Andererseits ist es allgemein bekannt, dass Speicherzellen, welche mit Bitleitungen verbunden sind, die auf die Versorgungsspannung geladen sind, für die Programmierung gesperrt sind. Die Spannungen auf den Bitleitungen und den Wortleitungen werden während des Entladeintervalls entladen, das als Erholungsintervall wirkt, und während des Verifizierungsintervalls wird bestimmt, ob Speicherzellen eine Sollschwellwertspannung aufweisen.
  • Der oben beschriebene Programmiervorgang wird in der Patentschrift US 6.353.555 offenbart. Ein Programmiersperrverfahren wird in den Patenschriften US 5.677.873 und US 5.991.202 offenbart.
  • Gemäß der obigen Beschreibung wird die Programmierspannung während eines Programmierintervalls, d. h. einer Programmierungsausführungszeit, an eine ausgewählte Wortleitung angelegt. Das Anlegen der Programmierspannung an eine ausgewählte Wortleitung wird während des Programmierintervalls ausgeführt, das einen großen Teil einer Programmierschleifendauer, d. h. der Zeitspanne, welche zur Ausführung einer Programmierschleife erforderlich ist, in Anspruch nimmt. Allgemein wird die Länge des Programmierintervalls in Übereinstimmung mit einer Verzögerungszeit eines RC-Glieds (RC-Verzögerungszeit) und einer Programmierspannungswiederherstellungszeit bestimmt, welche jeweils nachfolgend beschrieben werden.
  • Für jede Speicherzelle einer ausgewählten Wortleitung variiert die Zeitspanne, welche erforderlich ist, um die Steuergatespannung der Speicherzelle auf die Programmierspannung zu setzen, in Abhängigkeit vom Abstand der Speicherzelle von der Zeilenauswahlschaltung des NAND-Flashspeicherbauelements. Das bedeutet unter Bezugnahme auf 1, dass die Zeitspanne, welche erforderlich ist, um die Steuergatespannung einer Zelle A zu setzen, welche relativ nahe an der Zeilenauswahlschaltung angeordnet ist, kürzer als die Zeitspanne ist, welche erforderlich ist, um die Steuergatespannung einer Zelle B zu setzen, welche relativ weit entfernt von der Zeilenauswahlschaltung angeordnet ist, da die Steuergateaufladung und eine korrespondierende Signallaufzeit für die Zelle B länger dauern als für die Zelle A. Das bedeutet, dass verschiedene RC-Verzögerungsperioden zwischen den Speicherzellen A und B vorhanden sind, welche mit der gleichen Wortleitung verbunden sind.
  • Wenn eine Programmierspannung an eine ausgewählte Wortleitung angelegt wird, fällt die angelegte Spannung durch den Ladeprozess der ausgewählten Wortleitung unter eine Sollspannung ab. Eine Generatorschaltung für hohe Spannung bringt die angelegte Programmierspannung wieder auf die Sollspannung. Die Zeitspanne, welche zur Wiederherstellung der reduzierten Programmierspannung auf die Sollspannung erforderlich ist, wird als Programmierspannungswiederherstellungs- oder Programmierspannungserholzeit bezeichnet.
  • Leider variieren die Programmierspannungswiederherstellungszeit und die RC-Verzögerungszeit mit Prozess-, Spannungs- und Umgebungsbedingungen. Aus diesem Grund werden diese Zeiten so gesetzt, dass sie an die schlechtesten Bedingungen angepasst sind, d. h. an die Be dingungen, welche die längste Programmierspannungswiederherstellungszeit und die längste RC-Verzögerungszeit verursachen. Das bedeutet, dass eine Toleranz zur Programmierausführungszeit addiert wird, um diese an die schlechtesten Bedingungen anzupassen.
  • Um den kontinuierlichen Bedarf an Hochgeschwindigkeitsspeichern zu erfüllen, ist es vorteilhaft, die Programmierschleifendauer und somit die Gesamtprogrammierdauer zu reduzieren.
  • In der Patentschrift US 6.147.906 sind ein Flashspeicherbauelement und ein zugehöriges Programmierverfahren offenbart, bei denen zur Optimierung der Programmierdauer eine das Speicherbauelement steuernde Zustandsmaschine vom Ausgangssignal eines Komparators gesteuert wird, der eine Wortleitungsprogrammierspannung mit einer Bitleitungsfreigabespannung vergleicht und dadurch anzeigt, wenn ein vorgegebener Spannungspegel erreicht ist.
  • Es ist Aufgabe der Erfindung, ein Flashspeicherbauelement und ein zugehöriges Programmierverfahren anzugeben, welche eine gegenüber dem oben erwähnten Stand der Technik reduzierte Gesamtprogrammierdauer aufweisen.
  • Die Erfindung löst diese Aufgabe durch ein Flashspeicherbauelement mit den Merkmalen des Patentanspruchs 1 oder 15 und durch ein Programmierverfahren mit den Merkmalen des Patentanspruchs 16.
  • Vorteilhafte Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen angegeben.
  • Vorteilhafte, nachfolgend beschriebene Ausführungsformen der Erfindung sowie das zu deren besserem Verständnis oben erläuterte, herkömmliche Ausführungsbeispiel sind in den Zeichnungen dargestellt. Es zeigen:
  • 1 ein Schaltbild einer herkömmlichen Speicherzellenfeldstruktur,
  • 2 ein Blockdiagramm eines erfindungsgemäßen Flashspeicherbauelements,
  • 3 ein Blockdiagramm eines für das Flashspeicherbauelement von 2 geeigneten Generators für hohe Spannung gemäß der Erfindung,
  • 4 ein Schaltbild einer für das Flashspeicherbauelement von 2 geeigneten Schaltung zur Erzeugung eines Programmierungsausführungsendesignals gemäß der Erfindung,
  • 5A und 5B Zeitablaufdiagramme eines beispielhaften Programmiervorgangs für ein Flashspeicherbauelement gemäß der Erfindung und
  • 6 ein Blockdiagramm eines weiteren erfindungsgemäßen Flashspeicherbauelements.
  • Unter Bezugnahme auf 2 umfasst ein dort gezeigtes, erfindungsgemäßes Flashspeicherbauelement 100 ein Speicherzellenfeid 110, das einen oder mehrere Speicherblöcke aufweist. Jeder Speicherblock kann beispielsweise auf die gleiche Weise wie der in 1 dargestellte Speicherblock konfiguriert sein. Eine Zeilendecoderschaltung 120 wählt eine der Wortleitungen im Speicherzellenfeld 110 aus. Während eines Programmiervorgangs versorgt die Zeilenauswahlschaltung 120 die ausgewählte Wortleitung mit einer Programmierspannung Vpgm und die nicht ausgewählten Wortleitungen mit einer Passierspannung Vpass. Zudem speichert eine Seitenpufferschaltung 130 während des Programmiervorgangs Programmierdaten, die von einer Spaltenauswahlschaltung 140 zur Verfügung gestellt werden, und lädt jede Bitleitung gemäß den gespeicherten Daten mit einer vorbestimmten Spannung, beispielsweise mit einer Versorgungsspannung oder einer Massespannung. Zusätzlich tastet die Seitenpufferschaltung 130 während Lesevorgängen und Leseverifizierungsvorgängen in Speicherzellen einer ausgewählten Wortleitung gespeicherte Daten ab. Wäh rend eines Lesevorgangs werden die abgetasteten Daten in der Seitenpufferschaltung 130 über die Spaltenauswahlschaltung 140 an eine externe Einheit übertragen. Während eines Leseverifizierungsvorgangs werden die abgetasteten Daten in der Seitenpufferschaltung 130 einer Bestanden/Nichtbestanden-Überprüfungsschaltung 150 zur Verfügung gestellt, welche bestimmt, ob die über die Spaltenauswahlschaltung 140 übertragenen Datenwerte korrekt sind.
  • Eine Steuerlogik 160 ist so ausgeführt, dass sie den gesamten Betrieb des Flashspeicherbauelements 100 steuert. Die Steuerlogik 160 ist beispielsweise so ausgeführt, dass sie Programmierschleifen steuert, die jeweils ein Bitleitungsaufbauintervall, ein Programmierintervall, ein Entlade-/Erholungsintervall und ein Verifizierungsintervall umfassen. Während eines Programmiervorgangs erzeugt die Steuerlogik 160 ein Pumpfreigabesignal PUMP_EN, wenn sie einen Programmierbefehl CMD von einem externen Gerät empfängt. Während des Programmierintervalls einer Programmierschleife erzeugt die Steuerlogik 160 ein Steuersignal VPGM_EN und die Programmierspannung wird gemäß dem Steuersignal VPGM_EN an eine ausgewählte Wortleitung angelegt. Zudem erzeugt die Steuerlogik 160 vor dem Programmierintervall einer Programmierschleife ein Steuersignal VPASS_EN als Flagsignal und die Passierspannung wird gemäß dem Steuersignal VPASS_EN an ausgewählte und nicht ausgewählte Wortleitungen angelegt.
  • Wenn in der vorliegenden Beschreibung gesagt wird, dass ein Signal, „während” eines Intervalls erzeugt oder aktiviert wird, kann es an irgendeinem Zeitpunkt, einschließlich eines Startpunkts des Intervalls, innerhalb des Intervalls erzeugt oder aktiviert werden oder mehrfach innerhalb des Intervalls erzeugt oder aktiviert werden.
  • Eine Generatorschaltung 170 für hohe Spannung erzeugt die Programmierspannung Vpgm und die Passierspannung Vpass gemäß dem Pumpfreigabesignal PUMP_EN mit einem bekannten Ladungspumpverfahren. Wenn die Programmierspannung Vpgm und die Passierspannung Vpass ihre entsprechenden Sollwerte erreicht haben, wird der Pumpvorgang der Generatorschaltung 170 für hohe Spannung angehalten. Die Generatorschaltung 170 für hohe Spannung verbleibt jedoch in einem aktiven Zustand. Wenn die Programmierspannung Vpgm während eines Programmierintervalls unter die Sollspannung abfällt, nimmt die Generatorschaltung 170 für hohe Spannung den Pumpvorgang wieder auf, so dass die Programmierspannung Vpgm wieder auf den Sollwert gebracht wird. Wenn die Programmierspannung Vpgm wieder auf den Sollwert gebracht wurde, deaktiviert die Generatorschaltung 170 für hohe Spannung ein Taktfreigabesignal CLK_EN, indem sie es z. B. auf einen niedrigen logischen Pegel setzt, welches ein Flagsignal ist und als Programmierspannungswiederherstellungssignal wirkt. Die Deaktivierung des Taktfreigabesignals CLK_EN zeigt an, dass die Programmierspannung Vpgm wieder auf ihren Sollwert gebracht wurde. Während jeder Programmierschleife erzeugt ein Programmierungsausführungsendesignalgenerator 180 gemäß dem von der Generatorschaltung 170 für hohe Spannung zur Verfügung gestellten Programmierspannungswiederherstellungssignal CLK_EN ein Programmierungsausführungsendesignal PGM_EXE_END. Wenn das Programmierungsausführungsendesignal PGM_EXE_END erzeugt wird, schließt die Steuerlogik 160 das aktuelle Programmierintervall ab und initiiert sequentiell Entlade- und Leseverifizierungsvorgänge.
  • Wie durch die obige Beschreibung deutlich wird, ist eine Programmierungsausführungszeit, welche mit dem Programmierintervall einer jeden Programmierschleife korrespondiert, keine feste Zeitspanne, die gemäß den oben beschriebenen Bedingungen, z. B. Programmierspannungswiederherstellungszeit und RC-Verzögerungszeit, bestimmt wird, sondern die automatisch und effizient gemäß Programmierspannungswiederherstellungsinformationen bestimmt wird. Daher ist es möglich, das Programmierintervall durch Entfernen der Toleranz, die nicht immer erforderlich ist, und durch die automatische Bestimmung der Programmierspannungswiederherstellungszeit und der RC-Verzögerungszeit für jedes Programmierintervall zu verkürzen, wodurch die Gesamtprogrammierungsdauer reduziert wird. Zusätzlich wird durch die Reduzierung der Länge des Programmierintervalls die Belastung der Speicherzellen durch die Programmierspannung und die Passierspannung abgeschwächt.
  • 3 veranschaulicht ein mögliches Ausführungsbeispiel der Generatorschaltung 170 für hohe Spannung aus 2 gemäß der Erfindung. Unter Bezugnahme auf 3 umfasst die Generatorschaltung 170 für hohe Spannung eine Pumpschaltung 172, einen Spannungsteiler 174, einen Komparator 176 und einen Takttreiber 178. Die Pumpschaltung 172 erzeugt eine relativ hohe Spannung für die Programmierspannung Vpgm gemäß einem Pumptaktsignal PUMP_CLK. Der Spannungsteiler 174 teilt die Programmierspannung Vpgm, um eine geteilte Spannung Vdiv zu erzeugen. Der Komparator 176 arbeitet gemäß dem Pumpfreigabesignal PUMP_EN und vergleicht die geteilte Spannung mit einer Referenzspannung. Der Komparator 176 aktiviert das als Programmierspannungswiederherstellungssignal wirkende Taktfreigabesignal CLK_EN, indem er es z. B. auf einen hohen logischen Pegel setzt, wenn die geteilte Spannung Vdiv niedriger als die Referenzspannung ist, d. h. wenn die Programmierspannung Vpgm niedriger als die Sollspannung ist. Der Komparator 176 deaktiviert das Takffreigabesignal CLK_EN, wenn die geteilte Spannung Vdiv größer oder gleich der Referenzspannung ist, d. h. wenn die Programmierspannung Vpgm die Sollspannung erreicht hat. Der Takttreiber 178 gibt selektiv gemäß dem Taktfreigabesignal CLK_EN ein Taktsignal CLK als Pumptaktsignal PUMP_CLK aus, z. B. wenn das Taktfreigabesignal CLK_EN einen hohen logischen Pegel aufweist. Wenn dies der Fall ist, führt die Pumpschaltung 172 gemäß dem Pumptaktsignal PUMP_CLK einen Pumpvorgang aus. Wenn das Taktfreigabesignal CLK_EN einen niedrigen logischen Pegel aufweist, verhindert der Takttreiber 178, dass das Taktsignal CLK ausgegeben wird. Wenn dies der Fall ist, führt die Pumpschaltung 172 keinen Pumpvorgang aus.
  • Wenn das Pumpfreigabesignal PUMP_EN aktiviert ist, erzeugt die Generatorschaltung 170 für hohe Spannung die Programmierspannung Vpgm so, dass diese die Sollspannung erreicht. Das Pumpfreigabesignal PUMP_EN wird zu Beginn eines Programmierbetriebsmodus aktiviert und am Ende des Programmierbetriebsmodus deaktiviert. Wenn die Programmierspannung Vpgm die Sollspannung erreicht hat, wird das Taktfreigabesignal CLK_EN, welches als Programmierspannungswiederherstellungssignal wirkt, gemäß dem Vergleichsergebnis des Komparators 176 gesperrt. Wenn die Programmierspannung Vpgm während eines Programmierintervalls an eine ausgewählte Wortleitung angelegt wird, fällt die Programmierspannung Vpgm unter die Sollspannung ab, d. h. sie bricht ein. Da die Programmierspannung Vpgm abfällt, wird das Taktfreigabesignal CLK_EN wieder aktiviert. Dies ermöglicht, dass die Programmierspannung Vpgm durch den Pumpbetrieb der Pumpe 172 wieder auf die Sollspannung gebracht wird. Dies bedeutet, dass ein Aktivierungs-/Deaktivierungsschritt des Taktfreigabesignals CLK_EN wenigstens einmal innerhalb eines Programmierintervalls einer jeden Programmierschleife auftritt. Die Deaktivierung des Taktfreigabesignals CLK_EN tritt insbesondere dann auf, wenn die Programmierspannung Vpgm wieder auf die Sollspannung gebracht wurde. Wie aus 3 ersichtlich ist, wird das Taktfreigabesignal CLK_EN dem Programmierungsausführungsendesignalgenerator 180 als Programmierspannungswiederherstellungsinformation zur Verfügung gestellt.
  • 4 veranschaulicht eine vorteilhafte Realisierung der Programmierungsausführungsendesignalgeneratorschaltung 180 aus 2 der Erfindung. Wie aus 4 ersichtlich ist, umfasst der Programmierungsaus führungsendesignalgenerator 180 in diesem Beispiel einen Einbruchsignalgenerator 182, einen Wiederherstellungssignalgenerator 184, einen ersten Endesignalgenerator 186, einen zweiten Endesignalgenerator 188 und einen Decoder 190.
  • Der Einbruchsignalgenerator 182 erzeugt gemäß dem Steuersignal VPGM_EN und dem Takffreigabesignal CLK_EN ein Einbruchsignal VPGM_DIP. Die Programmierspannung Vpgm wird gemäß dem Steuersignal VPGM_EN an eine ausgewählte Wortleitung angelegt, und das Takffreigabesignal CLK_EN wirkt als Programmierspannungswiederherstellungssignal. Der Einbruchsignalgenerator 182 umfasst ein NAND-Gatter 201, ein NOR-Gatter 203, Inverter 202 und 204 und ein D-Flip-Flop 205, die wie in 4 dargestellt miteinander verschaltet sind.
  • Der Wiederherstellungssignalgenerator 184 erzeugt gemäß dem Steuersignal VPGM_EN, dem Takffreigabesignal CLK_EN, welches als Programmierspannungswiederherstellungssignal wirkt, und dem Einbruchsignal VPGM_DIP ein Wiederherstellungssignal VPGM_REC. Der Wiederherstellungssignalgenerator 184 umfasst NAND-Gatter 207 und 209, ein NOR-Gatter 211, Inverter 206, 208, 210 und 212 und ein D-Flip-Flop 213, welche wie in 4 dargestellt miteinander verschaltet sind.
  • Der erste Endesignalgenerator 186 umfasst einen Zähler und erzeugt gemäß dem Wiederherstellungssignal VPGM_REC ein erstes Endesignal END1. Der zweite Endesignalgenerator 188 umfasst einen Zähler und erzeugt gemäß dem Steuersignal VPGM_EN ein zweites Endesignal END2. Der Decoder 190 umfasst ein NOR-Gatter 214 und einen Inverter 215 und erzeugt das Programmierungsausführungsendesignal PGM_EXE_END, wenn das erste Endesignal END1 oder das zweite Endesignal END2 aktiviert ist.
  • Die D-Flip-Flops 205 und 213 werden jeweils zurückgesetzt, d. h. auf einen niedrigen logischen Pegel gesetzt, wenn das Flashspeicherbauelement anfänglich mit Energie versorgt wird und wenn das Ende einer jeweiligen Programmierschleife erreicht ist. Das bedeutet, dass die Ausgangssignale der D-Flip-Flops 205 und 213 jeweils zu diesen Zeitpunkten auf niedrigen logischen Pegel gesetzt werden. Die D-Flip-Flops 205 und 213 arbeiten in Synchronisation mit einem Taktsignal LCLK, siehe die 5A und 5B.
  • Wie oben ausgeführt, wird das Taktfreigabesignal CLK_EN deaktiviert, wenn die Programmierspannung Vpgm ihren Sollwert erreicht. Bevor das Speicherbauelement in eine Programmierschleife eintritt, weist das Steuersignal VPGM_EN einen niedrigen logischen Pegel auf. Wenn das Steuersignal VPGM_EN einen hohen logischen Pegel aufweist, wird die Programmierspannung Vpgm an eine ausgewählte Wortleitung angelegt. Gemäß diesen Bedingungen, d. h. das Signal VPGM_EN hat hohen logischen Pegel und das Signal CLK_EN hat niedrigen logischen Pegel, behalten die Ausgabesignale VPGM_DIP und VPGM_REC des D-Flip-Flops 205 des D-Flip-Flops 213 jeweils ihre Rücksetzpegel.
  • Der zweite Endesignalgenerator 188 beginnt zu zählen, wenn das Steuersignal VPGM_EN aktiviert wird. In diesem Ausführungsbeispiel erzeugt der zweite Endesignalgenerator 188 das zweite Endsignal END2, wenn das Steuersignal VPGM_EN aktiviert ist und eine Zeitspanne von z. B. 14 μs abgelaufen ist, nachdem das Steuersignal VPGM_EN aktiviert wurde. Obwohl das Steuersignal VPGM_EN einen hohen logischen Pegel aufweist und ein Eingang des NAND-Gatters 207 einen hohen logischen Pegel aufweist, bleibt das Wiederherstellungssignal VPGM_REC auf einem niedrigen logischen Pegel, d. h. auf dem Rücksetzpegel, da das Ausgangssignal des D-Flip-Flops 205, d. h. das Einbruchsignal VPGM_DIP, einen niedrigen logischen Pegel aufweist.
  • Wenn das Steuersignal VPGM_EN einen hohen logischen Pegel aufweist, wird die Programmierspannung Vpgm an eine ausgewählte Wortleitung angelegt. Hierbei fällt die Programmierspannung Vpgm aufgrund der Aufladung der Wortleitung unter die Sollspannung ab. Wenn die Programmierspannung Vpgm unter die Sollspannung abfällt, aktiviert die Generatorschaltung 170 für hohe Spannung das Takffreigabesignal CLK_EN. Ein Eingangssignal des NAND-Gatters 209 im Wiederherstellungssignalgenerator 184 wechselt von einem hohen logischen Pegel auf einen niedrigen logischen Pegel gemäß dem Übergang des Taktfreigabesignals CLK_EN von einem niedrigen logischen Pegel auf einen hohen logischen Pegel. Gleichzeitig aktiviert der Einbruchsignalgenerator 182 in Reaktion auf die Aktivierung des Taktfreigabesignals CLK_EN das Einbruchsignal VPGM_DIP, da das Steuersignal VPGM_EN einen hohen logischen Pegel aufweist. Das Einbruchsignal VPGM_DIP bleibt auf seinem hohen logischen Pegel, bis die Programmierschleife beendet ist oder bis das Verifizierungsintervall der Programmierschleife beginnt. Da eines der Eingangssignale des NAND-Gatters 209 einen hohen logischen Pegel aufweist und das andere einen niedrigen logischen Pegel aufweist, bleibt das Ausgangssignal VPGM_REC des Wiederherstellungssignalgenerators 184 auf seinem niedrigen logischen Pegel.
  • Wenn die Programmierspannung Vpgm gemäß dem Pumpvorgang der Pumpe 172 ihren Sollwert erreicht hat, wechselt das Takffreigabesignal CLK_EN vom hohen logischen Pegel auf niedrigen logischen Pegel. Dies gibt das Ausgangssignal des NAND-Gatters 209 im Wiederherstellungssignalgenerator 184 frei, um vom niedrigen logischen Pegel auf hohen logischen Pegel zu wechseln. Hierbei wechselt das Ausgangssignal VPGM_REC des Wiederherstellungssignalgenerators 184 vom niedrigen logischen Pegel auf hohen logischen Pegel. Wenn das Steuersignal VPGM_REC auf hohen logischen Pegel wechselt, beginnt der erste Endesignalgenerator 186 zu zählen. In diesem Ausführungsbeispiel aktiviert der erste Endesignalgenerator 186 das erste Endesignal END1, wenn eine erste Zeitspanne von z. B. 2 μs nach dem Wechsel des Wiederherstellungssignals VPGM_REC auf den hohen logischen Pegel abgelaufen ist. Der Decoder 190 kann das erste oder zweite Endesignal END1 oder END2 als Programmierungsausführungsendesignal PGM_EXE_END ausgeben, d. h. jeweils das Endesignal, das einen hohen logischen Pegel aufweist.
  • In diesem Ausführungsbeispiel wird die Länge der zweiten Zeitspanne, welche vom zweiten Endesignalgenerator 188 verwendet wird, gemäß den oben beschriebenen schlechtesten Bedingungen bestimmt. Daher wird typischerweise das erste Endesignal END1 vor dem zweiten Endesignal END2 aktiviert, nachdem das Steuersignal VPGM_EN aktiviert ist. Das zweite Endesignal END2 ist ein Signal, welche einen Abschluss einer Programmierschleife erzwingt, wenn die Programmierschleife aufgrund von unvorhersehbaren Fehlfunktionen der Generatorschaltung 170 für hohe Spannung und/oder des Programmierungsausführungsendesignalgenerators 180 nicht schon vorher durch das erste Endesignal END1 abgeschlossen wurde.
  • Die 5A und 5B zeigen in Zeitablaufdiagrammen einen beispielhaften Programmiervorgang für ein erfindungsgemäßes Flashspeicherbauelement. Der beispielhafte Programmiervorgang wird nachfolgend unter Bezugnahme auf die 2, 5A und 5B im Detail beschrieben. In den 5A und 5B sind jeweils das Timing, das mit dem Programmierintervall einer Programmierschleife korrespondiert, und eine Zeitspanne kurz vor dem Programmierintervall dargestellt.
  • Um Speicherzellen einer ausgewählten Zeile oder Wortleitung zu programmieren, werden zuerst Programmierdaten über die Spaltenauswahlschaltung 140 in die Seitenpufferschaltung 130 geladen. Wenn die Programmierdaten geladen sind, programmiert das Flashspeicherbauelement 100 in Reaktion auf die Eingabe eines Programmierbefehls CMD die geladenen Daten in die Speicherzellen. Dieser Prozess wird nachfolgend im Detail beschrieben.
  • In Reaktion auf den Programmierbefehl CMD erzeugt die Steuerlogik 160 das Pumpfreigabesignal PUMP_EN. Gemäß dem Pumpfreigabesignal PUMP_EN bereitet die Generatorschaltung 170 hohe Spannungen vor, wie die Programmierspannung und die Passierspannung, welche während des Programmiervorgangs an Wortleitungen angelegt werden. Wenn die hohen Spannungen vorbereitet sind, führt die Steuerlogik 160 eine erste Programmierschleife aus. Während eines Bitleitungsaufbauintervalls der Programmierschleife werden die Bitleitungen BL0 bis BL(n – 1) über die Seitenpufferschaltung 130 gemäß den geladenen Daten und gesteuert von der Steuerlogik 160 auf die Versorgungsspannung oder die Massespannung geladen.
  • Wenn ein Programmierintervall vor dem Beginn steht, aktiviert die Steuerlogik 160 das Steuersignal VPASS_EN, bevor das Programmierintervall anfängt, und die Zeilenauswahlschaltung 120 versorgt Wortleitungen mit der Passierspannung Vpass von der Generatorschaltung 170 für hohe Spannung gemäß dem aktivierten Steuersignal VPASS_EN. Nach Ablauf einer Zeitspanne deaktiviert die Steuerlogik 160 das Steuersignal VPASS_EN und aktiviert gleichzeitig das Steuersignal VPGM_EN, und das Programmierintervall beginnt. Die Zeilenauswahlschaltung 120 versorgt eine ausgewählte Wortleitung mit der Programmierspannung Vpgm von der Generatorschaltung 170 für hohe Spannung gemäß dem aktivierten Steuersignal VPGM_EN. Der zweite Endesignalgenerator 188 aus 4 beginnt zu zählen, wenn das Steuersignal VPGM_EN aktiviert wird. Wenn die Programmierspannung Vpgm an die ausgewählte Wortleitung angelegt wird, bricht die Programmierspannung Vpgm ein, wie in den 5A und 5B dargestellt ist. Das bedeutet, dass die Programmierspannung Vpgm unter ihre Sollspannung abfällt.
  • Wenn die Programmierspannung Vpgm unter die Sollspannung abfällt, aktiviert die Generatorschaltung 170 für hohe Spannung das Takffreigabesignal CLK_EN, welches als Programmierspannungswiederherstellungssignal wirkt. Unter Bezugnahme auf 4 wechselt ein Eingangssignal des NAND-Gatters 209 im Wiederherstellungssignalgenerator 184 auf einen niedrigen logischen Pegel gemäß der Aktivierung des Taktfreigabesignals CLK_EN. Zu diesem Zeitpunkt aktiviert der Einbruchsignalgenerator 182 in Reaktion auf die Aktivierung des Taktfreigabesignals CLK_EN das Einbruchsignal VPGM_DIP, da das Steuersignal VPGM_EN einen hohen logischen Pegel aufweist. Das Einbruchsignal VPGM_DIP bleibt auf seinem hohen logischen Pegel, bis die Programmierschleife abgeschlossen ist oder bis ein Verifizierungsintervall der Programmierschleife beginnt. Da ein Eingangssignal des NAND-Gatters 209 einen hohen logischen Pegel aufweist, und das andere Eingangssignal einen niedrigen logischen Pegel aufweist, behält das Ausgangssignal VPGM_REC des Wiederherstellungssignalgenerators 184 den niedrigen logischen Pegel bei.
  • 5A zeigt ein Programmierintervall, in dem das Programmierungsausführungsendesignal PGM_EXE_END nach Ablauf der ersten Zeitspanne seit dem Übergang des Wiederherstellungssignals VPGM_REC auf hohen logischen Pegel auf hohen logischen Pegel wechselt. Wenn die Programmierspannung Vpgm gemäß dem Pumpvorgang der Pumpschaltung 172 ihren Sollwert erreicht, wechselt das Takffreigabesignal CLK_EN vom hohen logischen Pegel auf den niedrigen logischen Pegel. Unter Bezugnahme auf 4 ermöglicht dies, dass eine Ausgabe des NAND-Gatters 209 des Wiederherstellungssignalgenerators 184 vom niedrigen logischen Pegel auf den hohen logischen Pegel wechselt. Wenn dies auftritt, wechselt die Ausgabe VPGM_REC des Wiederherstellungssignalgenerators 184 auf hohen logischen Pegel. Wenn das Steuersignal VPGM_REC auf hohen logischen Pegel wechselt, beginnt der erste Endesignalgenerator 186 zu zählen. In diesem Ausführungs beispiel aktiviert der erste Endesignalgenerator 186 das erste Endesignal END1, wenn die erste Zeitspanne von z. B. 2 μs nach dem Wechsel des Wiederherstellungssignals VPGM_REC auf den hohen logischen Pegel abgelaufen ist. Der Decoder 190 gibt dann das erste Endesignal END1 als Programmierungsausführungsendesignal PGM_EXE_END aus. Wenn das Programmierungsausführungsendesignal PGM_EXE_END auf den hohen logischen Pegel wechselt, schließt die Steuerlogik 160 das Programmierintervall ab und führt sequentiell ein Entladeintervall und ein Verifizierungsintervall aus. Die Vorgänge des Entladeintervalls und des Verifizierungsintervalls sind allgemein bekannt, so dass auf eine detaillierte Beschreibung dieser Intervalle verzichtet werden kann.
  • 5B zeigt ein Programmierintervall, in dem das Programmierungsausführungsendesignal PGM_EXE_END nach Ablauf der zweiten Zeitspanne seit dem Übergang des Steuersignals VPGM_EN auf hohen logischen Pegel auf einen hohen logischen Pegel wechselt. Nach Ablauf der zweiten Zeitspanne von z. B. 14 μs nach Aktivierung des Steuersignals VPGM_EN wird, wenn das erste Endesignal END1 nicht schon aktiviert und dadurch das Programmierintervall abgeschlossen wurde, das zweite Endesignal END2 durch den zweiten Endesignalgenerator 188 aktiviert. Das zweite Endesignal END2 wird über den Decoder als Programmierungsausführungsendesignal PGM_EXE_END ausgegeben. Analog schließt die Steuerlogik 160 das Programmierintervall ab und führt sequentiell ein Entladeintervall und ein Verifizierungsintervall aus, wenn das Programmierungsausführungsendesignal PGM_EXE_END aktiviert wird.
  • Gemäß der beispielhaften Ausführungsform des erfindungsgemäßen Flashspeicherbauelements wird die Länge eines Programmierintervalls automatisch in Abhängigkeit vom Taktfreigabesignal bestimmt, welches als Programmierspannungswiederherstellungsinformation wirkt. Die Er findung ist aber nicht auf diese Ausführungsform beschränkt. Wie beispielsweise aus 6 ersichtlich ist, ist ein Ende einer Wortleitung mit der Zeilenauswahlschaltung 120 verbunden, und am anderen Ende der Wortleitung wird durch einen Programmierungsausführungsendesignalgenerator 180' bestimmt, ob die Spannung auf der Wortleitung die Programmierspannung Vpgm erreicht. Die detektierte Information wird als das Programmierspannungswiederherstellungssignal verwendet und der Programmierungsausführungsendesignalgenerator 180' erzeugt das Programmierungsausführungsendesignal PGM_EXE_END gemäß dem Programmierspannungswiederherstellungssignal. Der Programmierungsausführungsendesignalgenerator 180' umfasst den in 4 dargestellten zweiten Endesignalgenerator 188. Wie im vorher beschriebenen Ausführungsbeispiel schließt die Steuerlogik 160 das aktuelle Programmierintervall ab, wenn das Programmierungsausführungsendesignal PGM_EXE_END erzeugt wird. Wie im vorher beschriebenen Ausführungsbeispiel ermöglicht das erfindungsgemäße Flashspeicherbauelement gemäß 6 außerdem, dass ein Programmierintervall effizient festgelegt wird und die Belastung der Speicherzellen durch die Programmierspannung und die Passierspannung abgeschwächt wird.
  • In den oben beschriebenen Ausführungsbeispielen ist eine Programmierausführungszeit, welche mit einem Programmierintervall einer jeden Programmierschleife korrespondiert, keine feste Zeitspanne, die abhängig von den oben beschriebenen Bedingungen, wie Programmierspannungswiederherstellungszeit und RC-Verzögerungszeit, bestimmt wird. Vielmehr wird sie automatisch und effizient in Abhängigkeit von Programmierspannungswiederherstellungsinformationen bestimmt. Daher ist es möglich, die Programmierausführungsdauer, d. h. die Länge des Programmierintervalls, durch Entfernen der Toleranz, die nicht immer erforderlich ist, und durch die automatische Bestimmung der Programmierspannungswiederherstellungszeit und der RC-Verzögerungszeit für jedes Programmierintervall zu verkürzen, wodurch die Gesamtprogram mierungszeit reduziert wird. Zusätzlich wird durch die Reduzierung der Programmierausführungsdauer, d. h. der Länge des Programmierintervalls, die Belastung der Speicherzellen durch die Programmierspannung und die Passierspannung abgeschwächt.

Claims (20)

  1. Flashspeicherbauelement, gekennzeichnet durch – eine Steuerlogik (160), die dafür eingerichtet ist, während eines Programmierintervalls einer jeweiligen Programmierschleife ein erstes Flagsignal zu aktivieren, wobei eine Programmierspannung (Vpgm) gemäß dem ersten Flagsignal an eine ausgewählte Wortleitung anlegbar ist, – eine Generatorschaltung (170) für hohe Spannung, die dafür eingerichtet ist, während des Programmierintervalls die Programmierspannung (Vpgm) und ein zweites Flagsignal zu erzeugen, wobei das zweite Flagsignal anzeigt, ob die Programmierspannung (Vpgm) wieder auf eine Sollspannung gebracht wurde, und – einen Programmierungsausführungsendesignalgenerator (180), der dafür eingerichtet ist, gemäß dem ersten und zweiten Flagsignal ein Programmierungsausführungsendesignal (PGM_EXE_END) zu erzeugen, – wobei die Steuerlogik (160) auf die Erzeugung des Programmierungsausführungsendesignals (PGM_EXE_END) hin das erste Flagsignal deaktiviert, um das Programmierintervall abzuschließen.
  2. Flashspeicherbauelement nach Anspruch 1, dadurch gekennzeichnet, dass der Programmierungsausführungsendesignalgenerator folgende Elemente enthält: – einen Einbruchsignalgenerator (182), der dafür eingerichtet ist, gemäß dem ersten und zweiten Flagsignal ein Einbruchsignal (VPGM_DIP) zu erzeugen, das anzeigt, ob die Programmierspannung (Vpgm) unter die Sollspannung abgefallen ist, – einen Wiederherstellungssignalgenerator (184), der dafür eingerichtet ist, gemäß dem ersten und zweiten Flagsignal ein Wiederherstellungssignal (VPGM_REC) zu erzeugen, das anzeigt, ob die Programmierspannung (Vpgm) wieder auf die Sollspannung gebracht wurde, und – einen ersten Endesignalgenerator (186), der dafür eingerichtet ist, gemäß dem Wiederherstellungssignal (VPGM_REC) ein erstes Endesignal (END1) zu erzeugen, – wobei die Steuerlogik (160) das erste Flagsignal deaktiviert, wenn das erste Endesignal (END1) erzeugt wird, um das Programmierintervall abzuschließen.
  3. Flashspeicherbauelement nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Steuerlogik (160) ein Pumpfreigabesignal (PUMP_EN) in Reaktion auf einen Empfang eines Programmierbefehls (CMD) erzeugt und die Generatorschaltung (170) für hohe Spannung die Programmierspannung (Vpgm) gemäß dem Pumpfreigabesignal (PUMP_EN) erzeugt.
  4. Flashspeicherbauelement nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die Generatorschaltung (170) für hohe Spannung folgende Komponenten umfasst: – einen Spannungsteiler (174), der die Programmierspannung (Vpgm) teilt und einem Komparator (176) die geteilte Spannung (Vdiv) zur Verfügung stellt, wobei der Komparator (176) gemäß dem Pumpfreigabesignal (PUMP_EN) arbeitet und ein Taktfreigabesignal (CLK_EN) in Reaktion auf einen Vergleich der geteilten Spannung (Vdiv) mit einer Referenzspannung ausgibt, und – einen Takttreiber (178), der das Taktfreigabesignal (CLK_EN) vom Komparator (176) empfängt und einer Pumpschaltung (172) gemäß dem Taktfreigabesignal (CLK_EN) ein Taktsignal (CLK) als Pumptaktsignal (PUMP_CLK) zur Verfügung stellt, wobei die Pumpschaltung (172) die Programmierspannung (Vpgm) gemäß dem Pumptaktsignal (PUMP_CLK) erzeugt und das Taktfreigabesignal (CLK_EN) als das zweite Flagsignal wirkt.
  5. Flashspeicherbauelement nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass der Programmierungsausführungsendesignalgenerator (180) während des Programmierintervalls das Programmierungsausführungsendesignal (PGM_EXE_END) nach Ablauf einer Zeitspanne seit der Deaktivierung des zweiten Flagsignals erzeugt.
  6. Flashspeicherbauelement nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass die Generatorschaltung (170) für hohe Spannung während des Programmierintervalls das zweite Flagsignal aktiviert, um anzuzeigen, dass die Programmierspannung (Vpgm) unter die Sollspannung abgefallen ist, und das zweite Flagsignal während des Programmierintervalls deaktiviert, um anzuzeigen, dass die Programmierspannung (Vpgm) wieder auf die Sollspannung gebracht wurde.
  7. Flashspeicherbauelement nach einem der Ansprüche 2 bis 6, dadurch gekennzeichnet, dass der erste Endesignalgenerator (186) da für eingerichtet ist, das erste Endesignal (END1) in Reaktion auf eine Deaktivierung des zweiten Flagsignals zu erzeugen.
  8. Flashspeicherbauelement nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass der Programmierungsausführungsendesignalgenerator (180) einen zweiten Endesignalgenerator (186) umfasst, der in Reaktion auf das erste Flagsignal ein zweites Endesignal (END2) erzeugt.
  9. Flashspeicherbauelement nach Anspruch 8, gekennzeichnet durch eine Decoderschaltung (190), die das erste oder zweite Endesignal (END1, END2) ausgibt, wobei die Steuerlogik (160) das erste Flagsignal in Reaktion auf eine Ausgabe der Decoderschaltung (190) deaktiviert.
  10. Flashspeicherbauelement nach einem der Ansprüche 2 bis 9, dadurch gekennzeichnet, dass der erste Endesignalgenerator (186) einen Zähler umfasst, der in Reaktion auf eine Deaktivierung des zweiten Flagsignals mit dem Zählen beginnt und das erste Endesignal (END1) erzeugt, wenn ein Zählerwert einen ersten Referenzwert erreicht.
  11. Flashspeicherbauelement nach einem der Ansprüche 8 bis 10, dadurch gekennzeichnet, dass der zweite Endesignalgenerator (188) einen Zähler umfasst, der in Reaktion auf eine Aktivierung des ersten Flagsignals mit dem Zählen beginnt und das zweite Endesignal (END2) erzeugt, wenn ein Zählerwert einen zweiten Referenzwert erreicht.
  12. Flashspeicherbauelement nach Anspruch 11, dadurch gekennzeichnet, dass der erste Referenzwert kleiner als zweite Referenzwert ist.
  13. Flashspeicherbauelement nach Anspruch 12, dadurch gekennzeichnet, dass der erste Referenzwert einer Dauer von ungefähr 2 μs entspricht und der zweite Referenzwert einer Dauer von ungefähr 14 μs entspricht.
  14. Flashspeicherbauelement nach einem der Ansprüche 1 und 3 bis 13, dadurch gekennzeichnet, dass der Programmierungsausführungsendesignalgenerator (180) eine Decoderschaltung (190) umfasst, die das erste Endesignal (END1) oder das zweite Endesignal (END2) als Programmierungsausführungsendesignal (PGM_EXE_END) ausgibt.
  15. Flashspeicherbauelement, gekennzeichnet durch – eine Steuerlogik (160), die dafür eingerichtet ist, ein Flagsignal zu erzeugen, wobei eine Programmierspannung (Vpgm) gemäß dem Flagsignal während eines Programmierintervalls einer jeweiligen Programmierschleife an eine ausgewählte Wortleitung anlegbar ist, – eine Generatorschaltung (170) für hohe Spannung, die dafür eingerichtet ist, die Programmierspannung (Vpgm) zu erzeugen, welche an die ausgewählte Wortleitung anlegbar ist, – eine Zeilenauswahlschaltung (120), die mit einem Ende der ausgewählten Wortleitung verbunden und dafür eingerichtet ist, die Programmierspannung (Vpgm) gemäß dem Flagsignal an die ausgewählte Wortleitung anzulegen, und – eine Detektorschaltung (180'), die mit dem anderen Ende der Wortleitung verbunden und dafür eingerichtet ist, zu detektieren, ob eine Spannung am anderen Ende der ausgewählten Wortleitung die Programmierspannung (Vpgm) erreicht hat, und ein Programmierungsausführungsendesignal (PGM_EXE_END) zu erzeugen, wenn die Spannung die Programmierspannung (Vpgm) erreicht hat, – wobei die Steuerlogik auf die Erzeugung des Programmierungsausführungsendesignals (PGM_EXE_END) hin das Flagsignal deaktiviert, um das Programmierintervall abzuschließen.
  16. Verfahren zur Programmierung eines Flashspeicherbauelements, gekennzeichnet durch die Schritte: – Vorbereiten einer Programmierspannung (Vpgm), wenn ein Programmierbefehl (CMD) empfangen wird, – Aktivieren eines ersten Flagsignals, – Anlegen der Programmierspannung (Vpgm) an eine ausgewählte Wortleitung während eines Programmierintervalls einer jeweiligen Programmierschleife gemäß dem ersten Flagsignal und – Abschließen des Programmierintervalls gemäß einem Spannungspegel der Programmierspannung (Vpgm) oder nach Ablauf einer zweiten Zeitspanne seit der Aktivierung des Flagsignals.
  17. Verfahren nach Anspruch 16, dadurch gekennzeichnet, dass das Abschließen des Programmierintervalls gemäß dem Spannungspegel der Programmierspannung (Vpgm) umfasst, dass das Programmierintervall nach Ablauf einer ersten Zeitspanne seit Erreichen der Sollspannung durch die Programmierspannung (Vpgm) abgeschlossen wird.
  18. Verfahren nach Anspruch 17, dadurch gekennzeichnet, dass der Abschluss des Programmierintervalls nach Ablauf der zweiten Zeit spanne seit Aktivierung des Flagsignals den Nichtabschluss des Programmintervalls nach Ablauf der ersten Zeitspanne voraussetzt.
  19. Verfahren nach Anspruch 18, dadurch gekennzeichnet, dass die erste Zeitspanne kürzer als die zweite Zeitspanne ist.
  20. Verfahren nach einem der Ansprüche 17 bis 19, dadurch gekennzeichnet, dass die erste Zeitspanne einer Zeitdauer entspricht, welche erforderlich ist, um Steuergates von Speicherzellen in der ausgewählten Wortleitung auf die Programmierspannung (Vpgm) zu setzen.
DE102006023065A 2005-06-13 2006-05-09 Flashspeicherbauelement und Programmierverfahren Expired - Fee Related DE102006023065B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR10/2005-0050470 2005-06-13
KR10-2005-0050470 2005-06-13
KR1020050050470A KR100634455B1 (ko) 2005-06-13 2005-06-13 프로그램 시간을 줄일 수 있는 플래시 메모리 장치

Publications (2)

Publication Number Publication Date
DE102006023065A1 DE102006023065A1 (de) 2006-12-14
DE102006023065B4 true DE102006023065B4 (de) 2010-01-21

Family

ID=37440174

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102006023065A Expired - Fee Related DE102006023065B4 (de) 2005-06-13 2006-05-09 Flashspeicherbauelement und Programmierverfahren

Country Status (4)

Country Link
US (2) US7636265B2 (de)
JP (1) JP5041729B2 (de)
KR (1) KR100634455B1 (de)
DE (1) DE102006023065B4 (de)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100621637B1 (ko) * 2005-06-03 2006-09-07 삼성전자주식회사 프로그램 시간을 단축시킬 수 있는 플래시 메모리 장치 및그것의 프로그램 방법
KR100761470B1 (ko) 2006-07-31 2007-09-27 삼성전자주식회사 프로그램 디스터브를 방지할 수 있는 플래시 메모리 장치및 그것의 프로그램 방법
KR101283540B1 (ko) 2007-12-14 2013-07-15 삼성전자주식회사 스탠바이 불량(standby fail)을 감소시킨반도체 메모리 장치 및 반도체 장치
KR101523678B1 (ko) * 2009-02-06 2015-05-28 삼성전자주식회사 불휘발성 메모리 장치의 프로그램 방법
US8194455B2 (en) * 2009-02-06 2012-06-05 Samsung Electronics Co., Ltd. Methods for programming nonvolatile memory devices
EP2892054B1 (de) * 2012-08-29 2019-08-07 Renesas Electronics Corporation Halbleiterbauelement
KR102360213B1 (ko) * 2017-09-06 2022-02-08 삼성전자주식회사 칩 사이즈를 감소한 저항성 메모리 장치 및 그 동작방법
KR102532206B1 (ko) 2017-11-09 2023-05-12 삼성전자 주식회사 메모리 컨트롤러 및 그것을 포함하는 스토리지 장치
US10832765B2 (en) * 2018-06-29 2020-11-10 Taiwan Semiconductor Manufacturing Co., Ltd. Variation tolerant read assist circuit for SRAM

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5677873A (en) * 1995-09-19 1997-10-14 Samsung Electronics Co., Ltd. Methods of programming flash EEPROM integrated circuit memory devices to prevent inadvertent programming of nondesignated NAND memory cells therein
US5991202A (en) * 1998-09-24 1999-11-23 Advanced Micro Devices, Inc. Method for reducing program disturb during self-boosting in a NAND flash memory
US6147906A (en) * 1999-10-14 2000-11-14 Advanced Micro Devices, Inc. Method and system for saving overhead program time in a memory device
US6353555B1 (en) * 1999-06-22 2002-03-05 Samsung Electronics Co., Ltd. Flash memory device capable of minimizing a substrate voltage bouncing and a program method thereof

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5890191A (en) * 1996-05-10 1999-03-30 Motorola, Inc. Method and apparatus for providing erasing and programming protection for electrically erasable programmable read only memory
JPH10241388A (ja) 1996-12-29 1998-09-11 Sony Corp 電圧供給回路および半導体不揮発性記憶装置
US5943263A (en) * 1997-01-08 1999-08-24 Micron Technology, Inc. Apparatus and method for programming voltage protection in a non-volatile memory system
JP2000149582A (ja) * 1998-09-08 2000-05-30 Toshiba Corp 昇圧回路,電圧発生回路及び半導体メモリ
JP2000113678A (ja) * 1998-09-30 2000-04-21 Toshiba Corp 半導体記憶装置
JP2002025287A (ja) 2000-07-12 2002-01-25 Hitachi Ltd 半導体記憶装置
JP2002133878A (ja) 2000-10-23 2002-05-10 Hitachi Ltd 不揮発性記憶回路および半導体集積回路
JP2002230985A (ja) 2001-02-06 2002-08-16 Sharp Corp 不揮発性半導体記憶装置及びその制御方法
JP3708912B2 (ja) * 2001-09-12 2005-10-19 株式会社東芝 半導体集積回路装置
JP4050555B2 (ja) 2002-05-29 2008-02-20 株式会社東芝 不揮発性半導体記憶装置およびそのデータ書き込み方法
US6930925B2 (en) * 2003-10-14 2005-08-16 Atmel Corporation Suspend-resume programming method for flash memory

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5677873A (en) * 1995-09-19 1997-10-14 Samsung Electronics Co., Ltd. Methods of programming flash EEPROM integrated circuit memory devices to prevent inadvertent programming of nondesignated NAND memory cells therein
US5991202A (en) * 1998-09-24 1999-11-23 Advanced Micro Devices, Inc. Method for reducing program disturb during self-boosting in a NAND flash memory
US6353555B1 (en) * 1999-06-22 2002-03-05 Samsung Electronics Co., Ltd. Flash memory device capable of minimizing a substrate voltage bouncing and a program method thereof
US6147906A (en) * 1999-10-14 2000-11-14 Advanced Micro Devices, Inc. Method and system for saving overhead program time in a memory device

Also Published As

Publication number Publication date
DE102006023065A1 (de) 2006-12-14
JP5041729B2 (ja) 2012-10-03
US20060279994A1 (en) 2006-12-14
US7636265B2 (en) 2009-12-22
US20100067303A1 (en) 2010-03-18
KR100634455B1 (ko) 2006-10-16
US7974128B2 (en) 2011-07-05
JP2006351166A (ja) 2006-12-28

Similar Documents

Publication Publication Date Title
DE102006023065B4 (de) Flashspeicherbauelement und Programmierverfahren
DE102006003988B4 (de) Verfahren zum Treiben einer Programmieroperation in einem nichtflüchtigen Halbleiterspeicherbauelement
DE102007002248B4 (de) Nichtflüchtiges Halbleiter-Speicherbauelement und Verfahren zum Löschen eines Flash-Speicherbauelements
DE602005003924T2 (de) Programmierung nicht-flüchtiger speicher
DE10002266B4 (de) Nichtflüchtiges Halbleiterspeicherbauelement und Programmierverfahren hierfür
DE102005022611B4 (de) Programmierverfahren für ein nichtflüchtiges Speicherbauelement
DE102005030661B4 (de) Nichtflüchtiges Halbleiterspeicherbauelement und Verfahren zum Betreiben und Herstellen eines nichtflüchtigen Halbleiterspeicherbauelementes
DE60220590T2 (de) Verfahren zur Reduzierung von Kopplungseffekten zwischen multi-level Speicherelementen eines nicht flüchtigen Speichers
DE102007039908B4 (de) Programmierverfahren einer Flash-Speichervorrichtung
DE10241356B4 (de) Nichtflüchtige Halbleiterspeichervorrichtung mit verbesserter Programmierungssperreigenschaft und Programmierungsverfahren dafür
DE60312729T2 (de) Intelligente verifikation von speichern mit mehreren zuständen
DE69719968T2 (de) Stabilisierkreise für mehrere digitale bits
DE102006030758B4 (de) Nicht-flüchtiges Speicherelement, Flash-Speicher und Verfahren zum Programmieren eines Flash-Speicherelements
DE4302223C2 (de) Nicht-flüchtige Halbleiterspeichereinrichtung sowie Herstellungsverfahren dafür
DE19860871B4 (de) Leistungsunabhängiger Halbleiterspeicherbaustein und Verfahren zur Ansteuerung von dessen Wortleitungen
DE102004033443B4 (de) Flashspeicherbauelement mit Mehrpegelzelle
DE602004005211T2 (de) Detektieren von überprogrammierter speicherzellen nach einer programmierung benachbarter speicherzellen
DE10052326B4 (de) Nichtflüchtiges Halbleiterspeicherbauelement und Programmierverfahren hierfür
DE19724221B4 (de) Nichtflüchtiger Speicher
DE60318714T2 (de) System und verfahren zur steuerung einer löschspannung während des löschens mehrerer sektoren eines flash-speichers
DE102005020797A1 (de) Nichtflüchtiges Speicherbauelement und Programmierverfahren
DE102005052213A1 (de) Programmierverfahren und nichtflüchtiges Speicherbauelement
DE102010053557B4 (de) NAND-Programmiertechnik
DE102007039844A1 (de) Flashspeicherelement und Speichersystem
DE102006058380A1 (de) Flash-Speicherbauelement und Verfahren zur Steuerung einer Löschoperation desselben

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee