[go: up one dir, main page]

DE60318714T2 - System und verfahren zur steuerung einer löschspannung während des löschens mehrerer sektoren eines flash-speichers - Google Patents

System und verfahren zur steuerung einer löschspannung während des löschens mehrerer sektoren eines flash-speichers Download PDF

Info

Publication number
DE60318714T2
DE60318714T2 DE60318714T DE60318714T DE60318714T2 DE 60318714 T2 DE60318714 T2 DE 60318714T2 DE 60318714 T DE60318714 T DE 60318714T DE 60318714 T DE60318714 T DE 60318714T DE 60318714 T2 DE60318714 T2 DE 60318714T2
Authority
DE
Germany
Prior art keywords
sector
erase
sectors
voltage
voltage level
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
DE60318714T
Other languages
English (en)
Other versions
DE60318714D1 (de
Inventor
Edward V. Santa Clara BAUTISTA
Ken Cheong Cheah
Weng Fook Lee
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.)
Spansion LLC
Original Assignee
Spansion LLC
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 Spansion LLC filed Critical Spansion LLC
Application granted granted Critical
Publication of DE60318714D1 publication Critical patent/DE60318714D1/de
Publication of DE60318714T2 publication Critical patent/DE60318714T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3468Prevention of overerasure or overprogramming, e.g. by verifying whilst erasing or writing
    • G11C16/3472Circuits or methods to verify correct erasure of nonvolatile memory cells whilst erasing is in progress, e.g. by detecting onset or cessation of current flow in cells and using the detector output to terminate erasure
    • 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/0408Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
    • 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/10Programming or data input circuits
    • G11C16/20Initialising; Data preset; Chip identification
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/344Arrangements for verifying correct erasure or for detecting overerased cells
    • G11C16/3445Circuits or methods to verify correct erasure of nonvolatile memory cells

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Read Only Memory (AREA)

Description

  • Technisches Gebiet
  • Die vorliegende Erfindung betrifft einen nicht-flüchtigen Speicher. Insbesondere betrifft die vorliegende Erfindung ein Verfahren zum Steuern der Gate-Spannung, die während des Löschens eines Flash-Speicher-Bauelements angelegt wird.
  • Hintergrund der Erfindung
  • Viele elektronische Geräte, etwa Computer, persönliche digitale Assistenten, Mobiltelefone, digitale Kameras und ähnliche Systeme und Geräte enthalten Prozessoren und Speicher. Der Speicher wird verwendet, um Computer-Programme zu speichern, die von dem Gerät auszuführen sind und/oder um Daten zu speichern, die von den Prozessoren bearbeitet werden, um die Funktionsweise des Geräts zu erreichen. Viele Geräte und Systeme erfordern, dass diese Information in einem permanenten Speicher/nicht-flüchtigen Medium beibehalten wird, so dass die Daten und die Computer-Programme beim Ausschalten der Versorgungsspannung nicht verloren gehen.
  • Es wurden in der Vergangenheit Halbleiterspeicher-Bauelemente, die keine von außen zugeführte Leistung erfordern, um die darin gespeicherten Daten zu bewahren, entwickelt. Diese Bauelemente werden als "nicht-flüchtige" Halbleiterspeicher-Bauelemente bezeichnet. In üblichen Gestaltungsformen für nicht-flüchtige Halbleiterspeicher-Bauelemente werden die Daten als Speichereinheiten, die als Sektoren bezeichnet sind, gelöscht und können nicht auf Byte-Ebene gelöscht werden. Jeder Sektor ist in Segmente, die als eine Seite bezeichnet sind, unterteilt. Auf Daten wird für das Lesen und Programmieren seitenweise zugegriffen, während beim Löschen auf den gesamten Sektor zugegriffen wird. Ein Flash-Speicher (oder Flash-RAM) ist ein Beispiel eines nicht-flüchtigen Speicher-Bauelements. Flash-Bauelemente besitzen einen Speicherzellen-Transistor mit einer Struktur mit einem schwebenden Gate bzw. einem Gate mit frei einstellbarem Potential. Die typische Speicherzelle in einem Flash-Speicher-Bauelement umfasst einen Zugriffstransistor und ein Speicherelement, etwa ein schwebendes Gate. Daten werden in dem Flash-Speicher-Bauelement gelöscht, indem Ladungen auf einer dünnen isolierenden Schicht zwischen einem Substrat und einem schwebenden Gate angesammelt werden oder eine Verarmung an Ladungen erzeugt wird. Das Programmieren der Speicherzellen geschieht dadurch, dass eine ausreichende Spannungsdifferenz an die Transistoren angelegt wird, um damit eine Ansammlung von Überschußelektronen in dem schwebenden Gate zu hervorzurufen. Die Ansammlung der zusätzlichen Elektronen in dem schwebenden Gate hebt die Ladung auf dem Gate und damit die Schwellwertspannung des Transistors an. Die Schwellwertspannung des Transistors wird über die angelegte Spannung eines Lesezyklus angehoben, so dass der Transistor während der Lesezyklen nicht durchschaltet. Daher führt eine programmierte Speicherzelle keinen Strom, wodurch der logische Wert repräsentiert wird. Das Löschen eines Datensektors wird durch einen Prozess veranlasst, in welchem eine Spannungsdifferenz an den Transistor in jeder Speicherzelle des Sektors so angelegt wird, dass Über schußelektronen in dem schwebenden Gate jedes Transistors zum Verlassen der Schicht veranlasst werden. Dadurch wird die Schwellwertspannung des Transistors unter den Wert des Spannungspotentials abgesenkt, das an den Transistor zum Lesen von Daten angelegt wird. Im gelöschten Zustand fließt Strom durch den Transistor. Wenn das Lesespannungspotential angelegt wird, fließt der Strom durch den Transistor der Speicherzelle, wodurch ein logischer Wert "1" repräsentiert ist, der in der Speicherzelle gespeichert ist.
  • 1 gemäß dem Stand der Technik zeigt eine vereinfachte Ansicht eines beispielhaften nicht-flüchtigen Speicherbauelements, das mehrere Speichersektoren beinhaltet, die durch Blöcke SA0, SA1, SA2, ... SA63 und SS0, SS1, SS2, ... SS7 bezeichnet sind. Die Speichersektoren SA0, SA1, SA2, ... SA63 und SS0, SS1, SS2, ... SS7 sind in mehreren Reihen und Spalten angeordnet, wobei jede Reihe vier Speichersektoren enthält. Die Reihen der Speichersektoren sind der Reihe nach von Z4 (0) bis Z4 (17) nummeriert, und die Spalten der Speichersektoren sind der Reihe nach mit Z3 (0) bis Z3 (3) angegeben. Die mit SA0, SA1, SA2, ... SA63 bezeichneten Sektoren können für die Speicherung von Daten oder Kodierungen verwendet werden, wohingegen die mit SS0, SS1, SS2, ... SS7 bezeichneten Sektoren für die Speicherung von Kodierung reserviert sind. Jeder Sektor umfasst ein Array aus Speicherzellen, die in mehreren Spalten und Reihen angeordnet sind. Mehrere Wortleitungen sind mit den jeweiligen Reihen verbunden, und mehrere Bit-Leitungen sind mit den entsprechenden Spalten der Speicherzellen verbunden. Wenn beispielsweise jeder Sektor, der als SA0, SA1, SA2, ... SA63 bezeichnet ist, 64 Kilobytes an Speicher enthält, beinhaltet jeder Sektor ein Array mit 512 Wortleitungen und 1024 Bit-Leitungen.
  • In einer Art eines Flash-Speicher-Bauelements mit geringer Spannung müssen die für das Programmieren und Löschen erforderlichen Spannungen durch Ladungspumpen erzeugt werden, die einen begrenzten Durchlassstrom besitzen. Beispielsweise arbeitet ein Bauelement mit einer externen Versorgungsspannung von 1,8 Volt oder 3 Volt und es wird eine interne Spannung in der Größenordnung von 10 Volt verwendet. Für Bauelemente unter Einschluss von Ladungspumpen für das Erzeugen von Lösch- und Programmierspannungen ist die Anzahl an Speicherzellen, die gleichzeitig programmiert oder gelöscht werden können, begrenzt.
  • 2A gemäß dem Stand der Technik zeigt die typischen Spannungen, die an eine Speicherzelle angelegt werden, wenn diese programmiert wird. Das Drain D der Speicherzelle 200 erhält eine Spannung in der Größenordnung von ungefähr 5 Volt, an das Gate G wird eine Spannung in der Größenordnung von ungefähr 9 Volt und an das Source S der Speicherzelle 44 wird Masse-Potential angelegt.
  • 2B gemäß dem Stand der Technik zeigt die typischen Spannungen, die an das Source und das Gate der Speicherzelle 200 angelegt werden, wenn diese unter Anwendung einer negativen Gate-Löschung gelöscht wird. Das Source S der Speicherzelle 200 erhält eine Spannung in der Größenordnung von ungefähr 5 V und an das Gate G wird eine Spannung in der Größenordnung von ungefähr –9 V angelegt. In einem alternativen Löschverfahren wird ein geerdetes Gate und ein positiv vorgespanntes Source verwendet. Im Zusammenhang mit einem geerdeten Gate bezeichnet eine zunehmende Gate-Lösch-Spannung einen Anstieg der Spannung zwischen dem Gate und dem Source.
  • Zusätzlich zu der in 2B gezeigten Konfiguration können auch andere Löschtechniken, etwa das Kanallöschen, angewendet werden. Eine Erläuterung der Kanallöschung kann im US-Patent Nr. 6188609 mit dem Titel "Ansteigende oder stufenartige Gate-Kanallöschung für Flash-Speicher-Anwendungen" erhalten werden, deren gesamter Inhalt hiermit durch Bezugnahme mit eingeschlossen ist.
  • 2C gemäß dem Stand der Technik zeigt die typischen Spannungen, die an das Drain, das Source und das Gate der Speicherzelle 200 angelegt werden, wenn diese schwach programmiert wird. Das Drain D der Speicherzelle 200 erhält eine Spannung in der Größenordnung von ungefähr 5 V, und das Gate G und das Source S werden auf Masse gelegt. Das schwache Programmieren, das auch als automatische Programmierstörung nach Löschen (APDE) genannt wird, ist eine selbst-beschränkte Korrektur, die für zu stark gelöschte Speicherzellen angewendet werden kann.
  • Um ein 16-Bit-Wort beispielsweise zu programmieren, werden 16 Spalten von Speicherzellen in 16 Bit-Leitungen in vier Gruppen mit jeweils vier Spalten unterteilt. Wenn die Speicherzellen in einem konventionell eingebetteten Programmiermodus programmiert werden, liefert die konventionelle interne Ladungspumpe Ströme über die entsprechenden Bit-Leitungen, um jeweils die Speicherzellen einer einzelnen Gruppe aus Spalten pro Zeiteinheit zu programmieren. Beispielsweise wird ein typisches 16-Bit-Wort mit Bits 0–15 in vier Gruppen aus Bits eingeteilt, die wie folgt nummeriert sind: 0–3, 4–7, 8–11 und 12–15. Wenn eine beliebige Gruppe aus 4 Bits mit bis zu vier Nullen zu programmieren ist, stellt diese Anordnung sicher, dass ein ausreichender Ladungspumpenstrom an das Drain jeder der Speicherzellen durch die jeweilige Bit-Schaltung zugeführt wird. Wenn die Speicherzellen in einem konventionellen eingebetteten Chip-Löschmodus sind, besitzt die konventionelle interne Ladungspumpe ähnliche Begrenzungen dahingehend, dass diese am Löschen der Speicherzellen durch Zuführen einer Source-Spannung an die Source-Anschlüsse nur in der Lage ist, eine Gruppe an Speicherzellen pro Zeiteinheit zu versorgen.
  • Da die konventionelle interne Ladungspumpe einen begrenzten Laststrom besitzt und typischerweise in der Lage ist, nur eine einzelne Gruppe der Speicherzellen auf den Bit-Leitungen zu programmieren oder zu löschen, sind mehrere Pulse erforderlich, die von der internen Ladungspumpe erzeugt werden, um diese zu unterschiedlichen Gruppen an Bit-Leitungen während des Programmierens oder Löschens jedes Wortes entlang jeder Wortleitung zu liefern. Ferner muss die Leistung der internen Ladungspumpe auf unterschiedliche Gruppen aus Bit-Leitungen während des Programmierens oder Löschens jedes Wortes umgeschaltet werden. Daher kann das Programmieren und das Löschen eines gesamten Sektors aus Speicherzellen in den konventionellen eingebetteten Programmier- und Lösch-Modi zeitaufwendig sein.
  • In einer weiteren Art an Flash-Speicherbauelementen, werden die internen Beschränkungen von Ladungspumpen umgangen, indem ein optionaler Eingang für eine zusätzliche höhere Spannung verfügbar ist, die anstelle der internen Spannung, die von der Ladungspumpe erzeugt wird, ausgewählt werden kann. Diese Art an Bauelementen ermöglicht ein schnelleres Programmieren und Löschen aufgrund des größeren Treiberstroms. Der optionale Hochspannungseingang bietet die Möglichkeit, einen Löschpuls zu mehreren Sektoren gleichzeitig zu liefern. Ein Löschpuls ist im Wesentlichen eine Spannung, die für eine gewisse Zeitdauer angelegt wird. Obwohl jedoch die Anzahl der Sektoren, an die ein Löschpuls angelegt werden kann, vergrößert wird, bleibt der grundlegende Prozess zum Anlegen von Pulsen im Wesentlichen gleich, wie dies auch beim Löschen eines einzelnen Sektors der Fall ist.
  • In einem typischen Prozess zum Löschen eines einzelnen Sektors wird die Löschspannung sequentiell erhöht, um damit eine genaue Steuerung über den Lösch/Verifizierprozess aufrecht zu erhalten. Nachdem ein Sektor gelöscht und verifiziert ist, wird die Löschspannung auf einen Anfangswert zurückgesetzt. Beim Löschen mehrerer Sektoren werden die Löschpulse mehreren Sektoren zugeführt und die Sektoren werden einzeln verifiziert. Nachdem ein einzelner Sektor verifiziert ist, ist es möglich, dass ein oder mehrere der verbleibenden Sektoren zusätzliche Pulse erfordern. Obwohl es nicht nachteilig ist, Löschspannung nach dem Verifizieren eines einzelnen Sektors zurückzusetzen, beginnen nachfolgende Pulse, die für die verbleibenden Sektoren gegebenenfalls erforderlich sind, mit der zurückgesetzten Spannung, die für gewöhnlich kleiner ist als die zuvor angelegte Spannung. Nach dem Zurücksetzen ist eine Anzahl von Pulsen erforderlich, um einen tatsächlichen Anstieg in der angelegten Spannung für die verbleibenden Sektoren zu erreichen. Die zusätzlichen erforderlichen Pulse führen jedoch zu längeren Gesamtlöschzeiten. Daher besteht ein Bedarf für ein Löschspannungssteuerverfahren, das eine Rücksetzung bietet, die keine Zunahme der Anzahl der Pulse, die während des Löschens mehrerer Sektoren angelegt werden, erfordert.
  • US-A-5 270 979 offenbart einen Löschalgorithmus zum Löschen einer Gruppe aus EEPROM-Speicherzellen. Der Algorithmus beinhaltet das Markieren aller Speichersektoren, die zu löschen sind, das Anlegen eines Löschpulses an alle markierten Sektoren, das Verifizieren, dass der Sektor gelöscht ist und wenn dies der Fall ist, das Rückgängigmachen der Markierung für diesen Sektor. Sobald der Löschpuls an alle markierten Sektoren angelegt ist, wird die Spannung des Löschpulses erhöht und der Prozess wird für alle Sektoren, die markiert bleiben, wiederholt.
  • Überblick über die Erfindung
  • Die vorliegende Erfindung betrifft ein Verfahren zum Steuern einer Löschspannung, die während des gleichzeitigen Löschens mehrerer Sektoren eines Flash-Speichers angelegt wird. Das Verfahren bietet ein verbessertes Löschverhalten, wenn unterschiedliche Teilgruppen einer Gruppe aus Speichersektoren einer Reihe von Lösch/Verifizier-Zyklen unterzogen werden. Während des Löschprozesses ist jeder an einen gegebenen Sektor oder an Sektoren angelegte Löschpuls gleich oder größer als der vorhergehende Puls. Es wird ein Verfahren zum Löschen eines Flash-Speichers offenbart. In einem Flash- Speicherbauelement mit mehreren Sektoren wird eine Teilgruppe aus Sektoren ausgewählt und es wird ein Löschpuls gleichzeitig an alle Sektoren in der Teilgruppe angelegt. Nach dem Anlegen eines Löschpulses mit einem anfänglichen Spannungswert wird mindestens ein Sektor der Teilgruppe verifiziert. Wenn es mindestens eine nicht gelöschte Zelle in dem verifizierten Sektor gibt, wird die Löschspannung eingestellt und es wird ein weiterer Löschpuls an die Teilgruppe der Sektoren angelegt. Das Einstellen der Löschspannung ist eine Funktion davon, wie häufig ein Löschpuls an die Teilgruppe angelegt wurde. Dieser Zyklus wird an der Teilgruppe wiederholt, bis der ausgewählte Sektor als gelöscht verifiziert ist. Nachdem ein Sektor verifiziert ist, wird der Lösch/Verifizierzyklus an einen oder mehrere der verbleibenden Sektoren in der Teilgruppe angewendet, bis jede der verbleibenden Sektoren als gelöscht verifiziert ist. Nachdem alle Sektoren in der Teilgruppe gelöscht sind, wird die Löschspannung auf den anfänglichen Wert zurückgesetzt und es wird eine weitere Teilgruppe an Sektoren für das Löschen/Verifizieren in der zuvor beschriebenen Weise ausgewählt. Der Prozess wird wiederholt, bis alle Speichersektoren in dem Bauelement gelöscht sind.
  • In einer Ausführungsform der vorliegenden Erfindung, wie sie im Anspruch 1 definiert ist, werden vier Sektoren in einer Flash-Speichereinrichtung mit einem Vielfachen von vier Speichersektoren ausgewählt. Es wird ein Löschpuls mit einem anfänglichen Löschspannungswert an die vier Sektoren angelegt und der erste Sektor wird verifiziert. Das Anlegen des Pulses und die Verifizierung werden wiederholt, bis der erste Sektor als gelöscht verifiziert ist. Während des Wiederholens des Lösch/Verifizierzyklus wird eine Anstiegsfunktion für den Löschpuls-Spannungswert angewendet. Beim Verifizieren des ersten Sektors als gelöscht wird der Lösch/Verifizierzyklus an den zweiten und den vierten Sektor angewendet, wobei die Verifizierung an den zweiten Sektor ausgeführt wird. Nach dem Verifizieren des zweiten Sektors als gelöscht wird dann der Lösch/Verifizierzyklus am dritten Sektor angewendet. Wenn der dritte Sektor als gelöscht verifiziert ist, wird der Lösch/Verifizierzyklus für den vierten Sektor angewendet. Nachdem der vierte Sektor als gelöscht verifiziert ist, wird der Löschpuls-Spannungswert auf seinen anfänglichen Wert zurückgesetzt.
  • In einer weiteren Ausführungsform besetzt eine Flash-Speichereinrichtung eine eingebettete Logik für das Auswählen mehrerer Sektoren und das Bestimmen der angelegten Gate-Löschspannung. Die eingebettet Logik bietet auch eine Vorprogrammierung, eine schwache Programmierung (APDE) und Verifizierfunktionen.
  • Kurze Beschreibung der Zeichnungen
  • 1 gemäß dem Stand der Technik zeigt eine typische Anordnung von Speichersektoren in einem typischen nicht-flüchtigen Speicherbauelement.
  • 2A gemäß dem Stand der Technik zeigt eine Ausführungsform von Spannungen, die an das Drain, das Source und das Gate einer Speicherzelle mit einem typischen binären Dual-Gate-NOR-Bauelement angelegt werden werden, wenn dieses in dem schnellen Programmiermodus programmiert wird.
  • 2B gemäß dem Stand der Technik zeigt eine Ausführungsform von Spannungen, die an das Drain, das Source und das Gate der in 5A gezeigten Speicherzelle angelegt werden, wenn dieses in dem schnellen Chip-Löschmodus gelöscht wird;
  • 2C gemäß dem Stand der Technik zeigt eine Ausführungsform von Spannungen, die an das Drain, das Source und das Gate der Speicherzelle, wie sie in 5A gezeigt ist, angelegt werden, wenn diese in dem schnellen Chip-Löschmodus schwach programmiert (APDE) wird;
  • 3 zeigt eine Blockansicht einer Beschleunigungsschaltung gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 4 ist ein Schaltbild, das eine Beschleunigungsschaltung zeigt, die eine Source-Spannung an die Source-Anschlüsse der Speicherzellen während des Ausführens einer schnellen Löschoperation in einem schnellen Chip-Löschmodus gemäß einer Ausführungsform der vorliegenden Erfindung liefert.
  • 5 ist ein Schaltbild, das eine Beschleunigungsschaltung zeigt, die eine Drainspannung an die Drain-Anschlüsse der Speicherzellen während des Ausführens einer schwachen schnellen Programmierung (APDE) in dem schnellen Chip-Löschmodus gemäß einer Ausführungsform der vorliegenden Erfindung liefert.
  • 6 ist ein Schaltbild einer Flash-Speichereinrichtung mit der Fähigkeit des schnellen Chip-Löschens gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 7A zeigt ein Flussdiagramm für einen Gesamtlöschprozess gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 7B zeigt ein Flussdiagramm für einen Gesamtlöschprozess mit APDE gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 8 zeigt ein Flussdiagramm für das gleichzeitige Löschen mehrerer Sektoren gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 9 zeigt ein Flussdiagramm für ein gleichzeitiges Vier-Sektoren-Löschen gemäß einer Ausführungsform der vorliegenden Erfindung.
  • Beste Art zum Ausführen der Erfindung
  • Es wird nun detailliert auf bevorzugte Ausführungsformen der vorliegenden Erfindung Bezug genommen, d. h. ein System und ein Verfahren zum Steuern der Löschspannung während der Löschung mehrerer Sektoren eines Flash-Speicherbauelements. Obwohl die Erfindung im Zusammenhang mit den bevorzugten Ausführungsformen beschrieben ist, sollte beachtet werden, dass eine Beschränkung der Erfindung auf diese Ausführungsformen nicht beabsichtigt ist. Im Gegenteil, die Erfindung soll Alternativen, Modifizierungen und Äquivalente abdecken, die im Schutzbereich der Erfindung, wie sie durch die angefügten Patentansprüche definiert ist, enthalten sind.
  • Ferner sind in der folgenden detaillierten Beschreibung der vorliegenden Erfindung zahlreiche spezifische Details dargelegt, um ein gründliches Verständnis der vorliegenden Erfindung zu ermöglichen. Der Fachmann erkennt jedoch, dass die vorliegende Erfindung ohne diese speziellen Details praktiziert werden kann. In anderen Fällen sind bekannte Verfahren, Prozeduren, Komponenten und Schaltungen nicht detailliert dargestellt, um die eigentlichen Aspekte der vorliegenden Erfindung nicht unnötig zu verschleiern.
  • 3 zeigt eine Blockansicht einer Beschleunigungsschaltung gemäß einer Ausführungsform der vorliegenden Erfindung.
  • 3 zeigt eine Blockansicht einer Beschleunigungsschaltung 305 für das schnelle Programmieren und das schnelle Chip-Löschen der Speicherzellen gemäß der vorliegenden Erfindung. Eine detaillierte Erläuterung der Beschleunigungsschaltung 305 kann in dem US-Patent Nr. 6 208 558 , das am 27. März 2001 erteilt wurde, gefunden werden. Die Be schleunigungsschaltung 305 umfasst im Allgemeinen einen Beschleunigungseingang 330, der in der Lage ist, eine Beschleunigungsspannung Vacc bereitzustellen, um damit einen Strom für das Programmieren der Speicherzellen in allen Gruppen aus Bit-Leitungen gleichzeitig in einem schnellen Programmiermodus zu liefern. Des Weiteren umfasst die Beschleunigungsschaltung 305 eine Auslöse-bzw. Trigger- Schaltung 310, die mit dem Beschleunigungseingang 330 verbunden und in der Lage ist, die interne Versorgungsspannungsladungspumpe 405 (in den 4 und 5 gezeigt) zu deaktivieren und das Zuführen der Beschleunigungsspannung Vacc zu den Bit-Leitungen in allen Gruppen gleichzeitig in der Reaktion auf das Vorhandensein der Beschleunigungsspannung Vacc an dem Beschleunigungseingang 330 zu veranlassen. Die Beschleunigungsspannung Vacc wird von einem Beschleunigungsanschlussstift (630 in 6) liefert, der als der Beschleunigungseingang 330 dient und in der Lage ist, die Beschleunigungsspannung Vacc von einer externen Quelle in Bezug auf den integrierten Schaltungs-Chip für den nicht-flüchtigen Speicher zu empfangen.
  • In der in 3 gezeigten Schaltung umfasst die Auslöseschaltung 310 einen Hochspannungsdetektor 315, der mit dem Beschleunigungseingang 330 verbunden ist, um die Beschleunigungsspannung Vacc aufzunehmen, die in einer Ausführungsform im Bereich von 7 Volt bis ungefähr 10 Volt liegt. Der Hochspannungsdetektor 315 erzeugt ein Beschleunigungsspanngs-Indikatorsignal ACCH beim Erkennen der Beschleunigungsspannung Vacc an dem Beschleunigungseingang 330 und führt das Beschleunigungsspannungs-Indikatorsignal ACCH einer Logikschaltung 320 zu.
  • Die Logikschaltung 320, die einen Eingang aufweist, der ausgebildet ist, das Beschleunigungsspannungs-Indikatorsignal ACCH von dem Hochspannungsdetektor 6 zu empfangen, besitzt ferner mindestens einen Befehlsschreibeingang 325, um ein nicht-flüchtiges Speicher-Array in einen schnellen Funktionsmodus zu versetzen. In einer Ausführungsform, in der das nicht-flüchtige Speicher-Array in einen schnellen Programmier-Modus zu versetzen ist, beinhalten die Befehlsschreibeingänge 325 einen Programmier-Befehlsschreibeingang, der in der Lage ist, einen Programmierbefehl zu empfangen. In einer weiteren Ausführungsform, in der das nicht-flüchtige Speicher-Array in einen schnellen Chip-Löschmodus zu versetzen ist, enthalten die Befehlsschreibeingänge 325 ferner einen Löschbefehlsschreibeingang, der einen Löschbefehl empfangen kann.
  • Die Logikschaltung 320 besitzt einen Ausgang, der in der Lage ist, einen schnellen Programmierbefehl FPGM 340 zu erzeugen, um damit das nicht-flüchtige Speicher-Array in einen schnellen Programmiermodus in Reaktion auf das Vorhandensein des Beschleuni gungsspannungs-Indikatorsignals ACCH, das von dem Hochspannungsdetektor 315 erzeugt wird, und aufgrund des Vorhandenseins des Programmierbefehls an den Programmierbefehl-Schreibeingang 325 zu versetzen. In einer weiteren Ausführungsform besitzt die Logikschaltung 320 einen zweiten Ausgang, der ausgebildet ist, einen schnellen Chip-Löschbefehl FCER 335 zu erzeugen, um das nicht-flüchtige Speicher-Array in einen schnellen Chip-Löschmodus zu versetzen. Die Logikschaltung 320 erzeugt den schnellen Chip-Löschbefehl FCER 335 in Reaktion auf das Vorhandensein des Beschleunigungs-Spannungs-Indikatorsignals ACCH von dem Hochspannungsdetektor 315 und auf das Vorhandenseins des Löschbefehls an dem Löschbefehl-Schreibeingang 325.
  • 4 zeigt ein Schaltbild einer Ausführungsform des Speicher-Arrays 460 während eines schnellen Löschvorgangs in schnellem Chip-Löschmodus gemäß der vorliegenden Erfindung. In dieser Ausführungsform ist der Regler 415 mit dem Beschleunigungseingang 330 verbunden, um die Beschleunigungsspannung Vacc, die in einer Ausführungsform im Bereich von ungefähr 7 V bis 10 V liegt, auf eine Source-Spannung VS zu reduzieren, die typischerweise in der Größenordnung von ungefähr 5 V liegt, um die Speicherzellen mit einem Bit "1" zu löschen.
  • Wie in 4 gezeigt ist, wird die geregelte Spannung VS an die Source-Anschlüsse der Speicherzellen mit den Speicherzellen 435a, 435b, 440a und 440b in dem Speicher-Array 460 durch eine Source-Löschschaltung 425 angelegt, die in einer Ausführungsform eine konventionelle Source-Löschschaltung ist, die der Fachmann kennt, um damit die geregelte Spannung VS an die Source-Anschlüsse der Speicherzellen 435a, 435b, 440a, 440b ... zu verteilen. Gemäß 4 wird die Spannung VS an die Speicherzellen 435a, 440a und 435b, 440b, ... über die Source-Leitungen 430a und 430b entsprechend angelegt. Während des Ausführens des schnellen Löschvorgangs an den Speicherzellen in dem schnellen Chip-Löschmodus wird eine Gate-Spannung typischerweise in der Größenordnung von ungefähr –9 V an die Wortleitungen angelegt, mit denen die Gates der Speicherzellen verbunden sind. Die Drain-Anschlüsse der Speicherzellen 435a, 440a und 435b, 440b sind während des Ausführens des schnellen Löschvorgangs schwebend bzw. besitzen ein frei einstellbares Potential.
  • Da die Source-Spannung VS während des schnellen Löschvorgangs in dem schnellen Chip-Löschmodus die gleiche ist wie die Drain-Spannung VD, die typischerweise in der Größenordnung von ungefähr 5 V für typische Dual-Gate-NOR-Speicherzellen während des schnellen Vorprogrammierens und des schnellen schwachen Programmierens (AP-DE) liegt, ist der gleiche Regler 415 eingerichtet, um die Beschleunigungsspannung VACC, die in einer Ausführungsform im Bereich von ungefähr 7 V bis ungefähr 10 V liegt, auf eine geregelte Spannung von ungefähr 5 V sowohl als Drain-Spannung für das schnelle Vorprogrammieren und für das schnelle APDE und als eine Source-Spannung für den schnellen Löschvorgang zu reduzieren. Des Weiteren wird der gleiche Regler 415 verwendet, um die Drain-Spannung VD in der Größenordnung von ungefähr 5 V in dem schnellen Programmiermodus zu erzeugen.
  • 5 zeigt ein Schaltbild eines Speichersektors mit einem Speicher-Array 460, einem Reihendekodierer, der auch als X-Dekodierer 420 bezeichnet wird, einem Spaltendekodierer, der auch als Y-Dekodierer 410 bezeichnet wird, einer Trigger-bzw. Auslöseschaltung 310 und einem Beschleunigungseingang 330, wenn das Speicher-Array 460 sich in einem schnellen Programmiermodus befindet. In dieser Ausführungsform ermöglicht ein Schnell-Programmierbefehlsignal FPGM, das von der Auslöseschaltung 310 erzeugt wird, dass der Beschleunigungseingang 330 Energie liefert, um damit die Drain-Spannung VD zu erzeugen. In einer Ausführungsform, in der die Beschleunigungsspannung VACC im Bereich von ungefähr 7 V bis ungefähr 10 V liegt, wird ein Regler 415 mit dem Beschleunigungseingang 330 verbunden, um die Beschleunigungsspannung VACC auf eine gewünschte Drainspannung VD abzusenken, die in einer Ausführungsform in der Größenordnung von ungefähr 5 V für konventionelle Flash-Speicherzellen mit Dual-Gate-NOR-Bauelementen liegt.
  • In dem in 5 gezeigten Beispiel umfasst ein Schnell-Programmierschalter 540 einen konventionellen MOS-Transistor, der ausgebildet ist, die Drain-Spannung VD den Y-Dekodierer 410 zuzuführen. In einer Ausführungsform umfasst der Y-Dekodierer 410 mehrere Reihen konventioneller MOS-Transistoren, um selektiv den durch die Drain-Spannung VD hervorgerufenen Strom den Bit-Leitungen in dem Speicher-Array zuzuführen. in der in 5 gezeigten Ausführungsform umfasst der Y-Dekodierer 410 vier MOS-Transistoren 560, 580, 600 und 620, der ersten Ebene, die mit dem Schnell-Programmier-Transistor 540 verbunden sind. Der Strom aus jedem der Transistoren der ersten Ebene 560, 580, 600 und 620 wird über mehrere MOS-Transistoren der zweiten Ebene weitergeführt. Beispielsweise wird der durch den Transistor 560 der ersten Ebene fließende Strom an die Transistoren der zweiten Ebene 640a, 640b, 640c, ... geführt. Ferner ist jeder Transistor 640a, 640b, 640c, ... der zweiten Ebene mit zwei MOS-Transistoren der dritten Ebene verbunden, wovon jeder mit einer jeweiligen Bit-Leitung in dem Speicher-Array 460 verbunden ist, um damit den Programmierstrom dem Drain einer Speicherzelle auf der entsprechenden Bit-Leitung zuzuführen. Beispielsweise ist der Transistor 640a der zweiten Ebene mit den beiden Transistoren 660a und 660b der dritten Ebene verbunden, um Programmier-Ströme jeweils den Bit-Leitungen 680a und 680b zuzuführen. Die Anzahl der Reihen an Transistoren und die Anzahl der Transistoren in jeder Reihe in dem Y-Dekodierer 410 hängt von der Anzahl der Bit-Leitungen in jedem Sektor des Speicher-Arrays ab. Wenn der Regler 415 vorgesehen ist, um Programmierströme 64 Bit-Leitungen zuzuführen, sind beispielsweise 4 MOS-Transistoren der ersten Ebene mit dem Schnell-Programmier-Transistor 540 verbunden, acht MOS-Transistoren der zweiten Ebene sind mit jedem der Transistoren der ersten Ebene verbunden, und die zwei MOS-Transistoren der dritten Ebene sind mit jedem der Transistoren der zweiten Ebene in dem Y-Dekodierer 410 verbunden.
  • In dem Schnell-Programmiermodus werden die MOS-Transistoren in dem Y-Dekodierer 410 selektiv ein- und ausgeschaltet, um wahlweise die Bit-Leitungen zu programmieren, wobei alle Bit-Leitungen, die in dem Array 460 für das Programmieren ausgewählt sind, mit einem einzelnen Puls der Drain-Spannung VD beaufschlagt werden, wenn jedes Wort in dem schnellen Programmiermodus programmiert wird. Das Spalten-Dekodier-Schema, wie es in 5 gezeigt ist, ist lediglich für anschauliche Zwecke vorgesehen, um den durch die Beschleunigungs-Spannung VACC erzeugten Strom an jede der Bit-Leitungen in einer Flash-Speicher-Array zu liefern. Jedoch ist die vorliegende Erfindung nicht auf das in 5 gezeigte Spalten-Dekodier-Schema beschränkt. Es können auch andere spaltende Dekodier-Schemata eingesetzt werden, um den Strom von dem Beschleunigungseingang 2 zu den Bit-Leitungen in dem Speicher-Array gemäß dem Schutzbereich der vorliegenden Erfindung zu verteilen.
  • In einer weiteren Ausführungsform wird die Beschleunigungs-Spannung VACC den Wortleitungen als eine Gate-Spannung für die Speicherzellen im schnellen Programmiermodus zugeführt. 5 zeigt einen Teil des Speicher-Arrays 460 mit vier Speicherzellen 435a, 435b, 440a und 440b, wobei jede ein konventionelles Dual-Gate-NOR-Bauelement enthält. Die Gates der Speicherzellen 435a und 435b sind mit dem X-Dekodierer 420 über die Wortleitung 470 verbunden, während die Gates der Speicherzellen 440a und 440b mit dem X-Dekodierer 420 über eine Wortleitung 475 verbunden sind. Obwohl die Gate-Einschaltspannung für ein typisches Dual-Gate-NOR-Bauelement typischerweise in der Größenordnung von ungefähr 9 V liegt, ist eine Spannung in der Größenordnung von ungefähr 7 V bis 10 V ausreichend, um die NOR-Bauelemente auf den Wortleitungen, die für das Programmieren ausgewählt sind, durchzuschalten.
  • Die Gates der NOR-Bauelemente in jeder Reihe sind mit einer entsprechenden Wortlei tung verbunden. Der durch die für das Programmieren ausgewählte Wortleitung fließende Strom ist vernachlässigbar klein, da die Wortleitung lediglich verwendet wird, um eine Gate-Spannung an die Speicherzellen in der jeweiligen Reihe zu liefern. Da ist die Leistungsversorgung für den X-Dekodierer 420 für die Grenzen der Stromversorgung durch die Energieversorgung für gewöhnlich nicht kritisch.
  • Es wird wieder auf 4 verwiesen; in einer Ausführungsform wird die Beschleunigungsspannung VACC von dem Beschleunigungseingang 330 zu dem X-Dekodierer 420 ohne Regelung geliefert. Wenn das Speicher-Array 460 sich in dem schnellen Programmiermodus befindet, werden die Wortleitungen 470, 475, ... in dem Speicher-Array 460 der Reihe nach einzeln durchgeschaltet, um die Speicherzellen auf jeder Wortleitung zu programmieren. Wenn z. B. die Beschleunigungs-Spannung VACC der Wortleitung 470 zugeführt wird, werden die NOR-Bauelemente 435a und 435b eingeschaltet. Während die Drain-Spannung VD, die von dem Regler 415 durch Verringern der Beschleunigungsspannung VACC erzeugt wird, dem Programmierstrom über dem schnellen Programmierschalter 54 und dem Y-Dekodierer 410 zu dem Drain von beispielsweise der Speicherzelle 435a liefert, wird die Speicherzelle 435a mit dem Bit "0" programmiert.
  • Nachdem alle Speicherzellen entlang der Wortleitung 470 programmiert sind, wird die ungeregelte Beschleunigungsspannung VACC der nächsten Wortleitung 475 durch den X-Dekodierer 420 zugeführt, um die Speicherzelle entlang der Wortleitung 475 durchzuschalten. Ein einzelner Puls der Drainspannung VD ist dann in der Lage, alle Speicherzellen einschließlich der Speicherzellen 440a und 440b entlang der Wortleitung 475 mit einem Bit "0" zu programmieren. In dem schnellen Programmiermodus gemäß der vorliegenden Erfindung werden alle Source-Anschlüsse der Speicherzellen auf Masse gelegt. Die Schaltung aus 5 kann verwendet werden, um eine schnelle Programmierung oder eine schnelle schwache Programmierung (APDE) auszuführen. Für APDE werden die Wortleitungen 470 und 475 auf Masse gelegt.
  • 6 ist ein Schaltbild 600 einer Flash-Speichereinrichtung mit der Möglichkeit des schnellen Chip-Löschens gemäß einer Ausführungsform der vorliegenden Erfindung. Das Bauelement besitzt einen Adressenbus 620, der mit einem Zustandssteuer- und Befehls-Register 605, einer oberen Bank 610 und einer unteren Bank 615 verbunden ist. In dieser Ausführungsform sind die obere Bank 610 und die untere Bank 615 Speicher-Arrays, die gleichzeitig beschrieben und ausgelesen werden können. Ein Datenbus 625 ist ebenfalls mit dem Zustandssteuer- und Befehls-Register 605, der oberen Bank 610 und der unteren Bank 615 verbunden. Ein WP#/ACC-Anschlußstift 630 wird als Eingang sowohl für den Schreibschutz als auch für VACC verwendet. Das Zustandssteuer- und Befehls-Register 605 ist mit dem Datenbus 625 mittels einer Status-Leitung 635 verbunden und ist mit der oberen Bank 610 und der unteren Bank 615 über eine Steuerleitung 640 verbunden. Das Zustandssteuer- und Befehls-Register 605 bietet Funktionen für das eingebettete Vorprogrammieren, Löschen, Verifizieren und APDE.
  • 7A zeigt ein Flussdiagramm für einen Gesamtlöschprozess gemäß einer Ausführungsform der vorliegenden Erfindung. Im Schritt 705 wird eine Vorprogrammierung/Verifizierung ausgeführt, um alle Bits in einer Gruppe aus Speicherzellen innerhalb eines Flash-Speicherbauelements auf Null zu setzen. Dies wird gemacht, um die Schwellwertspannungen der Transistoren der Gruppe aus Speicherzellen zu normieren, so dass ein gleichmäßigeres Anfangsverhalten erreicht wird. Im Schritt 715 wird eine Löschspannung an eine Gruppe aus Speicherzellen angelegt. Im Schritt 720 wird das im Schritt 715 durchgeführte Löschen verifiziert. Wenn die Gruppe aus Speicherzellen nicht vollständig gelöscht ist, dann wird die Löschspannung im Schritt 725 angehoben und der Schritt 715 wird wiederholt. Beim Wiederholen des Schritts 715 kann die Gruppe aus Speicherzellen die gleiche oder eine andere sein als die vorhergehende Gruppe. Wenn die Gruppe aus Speicherzellen als gelöscht verifiziert wird, dann wird die Löschspannung im Schritt 730 zurückgesetzt. Der in 7A gezeigte Prozess kann in einer iterativen Weise eingesetzt werden, um ein Flash-Speicherbauelement zu löschen.
  • 7B zeigt ein Flussdiagramm für einen Gesamtlöschprozess mit APDE gemäß einer Ausführungsform der vorliegenden Erfindung. Im Schritt 705 wird eine Vorprogrammierung/Verifizierung durchgeführt, um alle Bits in einer Gruppe aus Speicherzellen innerhalb eines Flash-Speicherbauelements auf Null zu setzen. Im Schritt 715 wird eine Löschspannung an die Gruppe aus Speicherzellen angelegt. Im Schritt 720 wird das im Schritt 715 ausgeführte Löschen verifiziert. Wenn die Gruppe aus Speicherzellen nicht vollständig gelöscht ist, dann wird die Löschspannung im Schritt 725 erhöht und der Schritt 715 wird wiederholt. Beim Wiederholen des Schritts 715 kann die Gruppe der Speicherzellen die gleiche sein wie in der vorhergehenden Gruppe oder auch nicht. Wenn die Gruppe aus Speicherzellen als gelöscht verifiziert wird, dann wird ein APDDE-Schritt im Schritt 735 ausgeführt. Im Schritt 730 wird die Löschspannung zurückgesetzt. Der in 7B gezeigte Prozess kann in iterativer Weise zum Löschen einer Flash-Speichereinrichtung verwendet werden.
  • Wie in den 7A und 7B gezeigt ist, kann der Gesamt-Löschprozess das Vorprogrammieren und einen APDE-Schritt enthalten, um die Variabilität zu minimieren und um eine Korrektur für zu starkes Löschen und zu geringes Löschen bereitzustellen. In der vorliegenden Erfindung wird die angelegte Gate-Löschspannung monoton erhöht, während die Schritte des Löschens und des Verifizierens des Löschens wiederholt an ausgewählte Teilgruppen einer Gruppe aus Sektoren, die gerade gelöscht wird, angelegt werden. Das heißt, von dem Zeitpunkt, ab dem die Gruppe aus Sektoren für das Löschen ausgewählt ist, bis zu dem Zeitpunkt, an dem der letzte Sektor in der Gruppe als gelöscht verifiziert ist nach dem Anlegen einer Reihe von Löschpulsen, wird die angelegte Gate-Löschspannung nie zurückgesetzt. Die Gate-Löschspannung wird nur verringert (zurückgesetzt) nach Auswahl einer weiteren Gruppe nicht gelöschter Sektoren.
  • 8 zeigt ein Flussdiagramm für das gleichzeitige Löschen mehrerer Sektoren gemäß einer Ausführungsform der vorliegenden Erfindung. Im Schritt 810 wird eine Gruppe aus Speichersektoren innerhalb eines Flash-Speicher-Bauelements ausgewählt. Wenn die Gruppe aus Sektoren für das Löschen gewählt ist, wird die Gate-Löschspannung auf einen Anfangswert gesetzt. Im Schritt 815 wird eine Teilgruppe der im Schritt 810 ausgewählten Gruppe für das Anlegen eines Löschpulses ausgewählt. Im Schritt 820 wird ein Löschpuls an die Teilmenge aus Sektoren, die im Schritt 815 ausgewählt ist, angelegt. Die Teilgruppe des Schritts 815 kann alle Sektoren in der Gruppe umfassen. Im Schritt 825 werden ein oder mehrere Sektoren in der Teilgruppe als gelöscht verifiziert. Wenn der bzw. die Sektoren in dem Schritt 825 als nicht gelöscht verifiziert werden, dann wird eine Einstellung an der Gate-Löschspannung im Schritt 830 vorgenommen. Es sollte beachtet werden, dass die Reihenfolge, in der die Schritte 820 und 825 ausgeführt werden, umgekehrt sein kann. Die Gate-Löschspannung kann gegebenenfalls erhöht werden, oder die Spannung wird nur dann erhöht, wenn eine gewisse Anzahl an Pulsen mit der vorliegenden Spannung angelegt wurde. Beispielsweise wird eine anfängliche Gate-Spannung von mindestens –5,2 V um 0,13 V auf –5,33 V abgesenkt, nachdem vier Pulse bei –5,2 V angelegt wurden. In diesem Beispiel wird die Spannung abgesenkt, bis Speicherzellen als gelöscht verifiziert sind, oder bis eine maximale Gate-Spannung erreicht ist, beispielsweise –9,2 V.
  • Wenn die Speichersektoren im Schritt 825 als gelöscht verifiziert sind, dann wird eine Prüfung im Schritt 835 durchgeführt, um zu erkennen, ob es noch ungelöschte Sektoren innerhalb der Gruppe gibt. Wenn ungelöschte Sektoren im Schritt 825 erkannt werden, wird der Schritt 815 wiederholt. Wenn es keine ungelöschten Sektoren in der Gruppe gibt, dann wird die Gate-Löschspannung zurückgesetzt und es wird im Schritt 845 geprüft, ob es noch verbleibende nicht gelöschte Sektoren in dem Bauelement gibt. Wenn noch un gelöschte verbleibende Sektoren in dem Bauelement vorhanden sind, wird der Schritt 810 wiederholt. Wenn keine verbleibenden ungelöschten Sektoren in dem Bauelement vorhanden sind, dann ist das Löschen im Schritt 850 abgeschlossen.
  • 9 zeigt ein Flussdiagramm für ein gleichzeitiges Löschen von vier Sektoren gemäß einer Ausführungsform der vorliegenden Erfindung. Im Schritt 910 werden vier Speichersektoren innerhalb eines Flash-Speicherbauelements für das Löschen ausgewählt. Im Schritt 915 wird der erste der vier Speichersektoren verifiziert. Wenn der erste Speichersektor nicht als gelöscht verifiziert wird, dann wird ein Löschpuls an alle vier Speichersektoren im Schritt 920 angelegt. Im Schritt 925 wird eine Gate-Spannungsanhebung angewendet. Die Gate-Löschspannung wird bei jedem Puls erhöht, oder diese wird nach einer Anzahl von Pulsen mit einer gegebenen Spannung erhöht. Die Schritte 915, 920 und 925 werden wiederholt, bis der erste Sektor als gelöscht verifiziert ist.
  • Im Schritt 930 wird der zweite Speichersektor verifiziert. Wenn der zweite Speichersektor nicht als gelöscht verifiziert wird, dann wird ein Löschpuls an den zweiten und vierten Speichersektor im Schritt 935 angelegt. Im Schritt 940 wird eine Gate-Spannungserhöhung angewendet. Die Gate-Löschspannung wird mit jedem Puls erhöht, oder diese wird nach einer Reihe von Pulsen mit einer gegebenen Spannung erhöht. Die Schritte 930, 935 und 940 werden wiederholt, bis der zweite Sektor als gelöscht verifiziert ist.
  • Im Schritt 945 wird der dritte Speichersektor verifiziert. Wenn der dritte Speichersektor nicht als gelöscht verifiziert wird, dann wird ein Löschpuls an den dritten Speichersektor im Schritt 950 angelegt. Im Schritt 955 wird eine Gate-Spannungserhöhung angewendet. Die Gate-Löschspannung wird bei jedem Puls erhöht, oder diese wird nach einer Reihe von Pulsen bei einer gegebenen Spannung erhöht. Die Schritte 945, 950 und 955 werden wiederholt, bis der dritte Sektor als gelöscht verifiziert ist.
  • Im Schritt 960 wird der vierte Speichersektor verifiziert. Wenn der vierte Speichersektor nicht als gelöscht verifiziert wird, wird ein Löschpuls an dem vierten Speichersektor im Schritt 965 angelegt. Im Schritt 970 wird eine Gate-Spannungserhöhung angewendet. Die Gate-Löschspannung wird bei jedem Puls erhöht, oder sie wird nach einer Reihe von Pulsen mit einer gegebenen Spannung erhöht. Die Schritte 960, 965 und 970 werden wiederholt, bis der dritte Sektor als gelöscht verifiziert ist.
  • Nachdem der vierte Speichersektor im Schritt 960 verifiziert ist, wird die Gate-Spannung 975 zurückgesetzt. Im Schritt 980 wird eine Prüfung durchgeführt, um zu erkennen, ob es noch ungelöschte Sektoren gibt. Wenn keine verbleibenden ungelöschten Sektoren er kannt werden, ist die Bauteillöschung im Schritt 985 abgeschlossen. Wenn noch verbleibende ungelöschte Sektoren vorhanden sind, dann wird der Schritt 910 wiederholt, und der Prozess geht weiter, bis das Bauelememt gelöscht ist.
  • Die in den 8 und 9 gezeigten Prozesse können in der Logik des Flash-Speicherbauelements (beispielsweise im Zustandssteuer und Befehlsregister 605 aus 6) eingerichtet sein. Wenn der Löschprozess eingerichtet ist, kann ein einfacher Befehl angewendet werden, um das Löschen eines gesamten Chips zu bewirken.

Claims (10)

  1. Verfahren zum Löschen eines Flash-Speichers, der in mehrere Sektoren eingeteilt ist, wobei das Verfahren in der folgenden Reihenfolge umfasst: a) Auswählen eines ersten Teils der mehreren zu löschenden Sektoren (910) mit einem ersten Sektor, einem zweiten Sektor, einem dritten Sektor und einem vierten Sektor; b) Verifizieren des Löschens des ersten Sektors (915); c) wenn der erste Sektor nicht gelöscht ist, Anlegen eines Löschpulses an den ersten, den zweiten, den dritten und den vierten Sektor (920); Erzeugen eines ansteigenden Verhaltens des Spannungspegels des Löschpulses (925) und Wiederholen von b) und c), bis der erste Sektor gelöscht ist; d) Verifizieren des Löschens des zweiten Sektors (930); e) wenn der zweite Sektor nicht gelöscht ist, Anlegen des Löschpulses an den zweiten und den vierten Sektor (935); Erzeugen eines ansteigenden Verhaltens des Spannungspegels des ersten Löschpulses (940) und Wiederholen von d) und e), bis der zweite Sektor gelöscht ist; f) Verifizierten des Löschens des dritten Sektors (945); g) wenn der dritte Sektor nicht gelöscht ist, Anlegen des Löschpulses an den dritten Sektor (950); Erzeugen eines ansteigenden Verhaltens des Spannungspegels des Löschpulses (955) und Wiederholen von f) und g), bis der dritte Sektor gelöscht ist; h) Verifizieren des Löschens des vierten Sektors (960); i) wenn der vierte Sektor nicht gelöscht ist, Anlegen des Löschpulses an den vierten Sektor (965); Erzeugen eines ansteigenden Verhaltens des Spannungspegels des Löschpulses (970) und Wiederholen von h) und i), bis der vierte Sektor gelöscht ist; j) Zurücksetzen des Spannungspegels, nachdem der erste Teil gelöscht ist (840).
  2. Verfahren nach Anspruch 1, wobei der Löschpuls ein negatives Gatepotential in Bezug auf ein Sourcepotential einer Speicherzelle (200) aufweist.
  3. Verfahren nach Anspruch 2, wobei das Erzeugen eines ansteigenden Verhaltens des Spannungspegels umfasst: Einstellen des Gatepotentials negativer als das Potential am Source.
  4. Verfahren nach Anspruch 1, wobei das Verfahren in den Flash-Speicher (600) eingebettet ist.
  5. Verfahren nach Anspruch 1, das ferner umfasst: Anlegen eines Pulses in Bezug auf Automatische Programmierstörung nach Löschen (APDE) (735).
  6. Verfahren nach Anspruch 1, wobei der Spannungspegel aus einer zu der Flash-Speichereinrichtung (600) externen Quelle erhalten wird.
  7. Verfahren nah Anspruch 1, das ferner Anlegen eines Vorprogrammierpulses (705) umfasst.
  8. Flash-Speichereinrichtung mit: mehreren Speichersektoren (610, 615); und einer eingebetteten Logik (605) zum Löschen der Flash-Speichereinrichtung, wobei die Logik ausgebildet ist, um in folgender Reihe auszuführen: a) Auswählen eines ersten Teils der mehreren zu löschenden Sektoren (910) mit einem ersten Sektor, einem zweiten Sektor, einem dritten Sektor und einem vierten Sektor; b) Verifizieren des Löschens des ersten Sektors (915); c) wenn der erste Sektor nicht gelöscht ist, Anlegen eines Löschpulses an den ersten, den zweiten, den dritten und den vierten Sektor (920), Erzeugen eines ansteigenden Verhaltens des Spannungspegels des Löschpulses (925) und Wiederholen von b) und c), bis der erste Sektor gelöscht ist; d) Verifizieren des Löschens des zweiten Sektors (930); e) wenn der zweite Sektor nicht gelöscht ist, Anlegen des Löschpulses an den zweiten und den vierten Sektor (935); Erzeugen eines ansteigenden Verhaltens des Spannungspegels des Löschpulses (940) und Wiederholen von d) und e), bis der zweite Sektor gelöscht ist; f) Verifizieren des Löschens des dritten Sektors (945); g) wenn der dritte Sektor nicht gelöscht ist, Anlegen des Löschpulses an den dritten Sektor (950); Erzeugen eines ansteigenden Verhaltens des Spannungspegels des Löschpulses (955) und Wiederholen von f) und g), bis der dritte Sektor gelöscht ist; h) Verifizieren des Löschens des vierten Sektors (960); i) wenn der vierte Sektor nicht gelöscht ist, Anlegen des Löschpulses an den vierten Sektor (965); Erzeugen eines ansteigenden Verhaltens des Spannungspegels des Löschpulses (970) und Wiederholen von h) und i), bis der vierte Sektor gelöscht ist; j) Zurücksetzen des Spannungspegels, nachdem der erste Teil gelöscht ist (840).
  9. Flash-Speichereinrichtung nach Anspruch 8, wobei jedes mal, wenn der Spannungspegel mit einem ansteigenden Verhalten erzeugt wird, der Spannungspegel um einen inkrementalen Betrag negativer gemacht.
  10. Flash-Speichereinrichtung nach Anspruch 9, wobei das Erzeugen des ansteigenden Verhaltens gestoppt wird, wenn der Spannungspegel einen vorbestimmten maximalen negativen Wert erreicht.
DE60318714T 2002-07-31 2003-03-11 System und verfahren zur steuerung einer löschspannung während des löschens mehrerer sektoren eines flash-speichers Expired - Lifetime DE60318714T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US210378 2002-07-31
US10/210,378 US6891752B1 (en) 2002-07-31 2002-07-31 System and method for erase voltage control during multiple sector erase of a flash memory device
PCT/US2003/007639 WO2004013864A1 (en) 2002-07-31 2003-03-11 A system and method for erase voltage control during multiple sector erase of a flash memory device

Publications (2)

Publication Number Publication Date
DE60318714D1 DE60318714D1 (de) 2008-03-06
DE60318714T2 true DE60318714T2 (de) 2009-01-08

Family

ID=31494277

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60318714T Expired - Lifetime DE60318714T2 (de) 2002-07-31 2003-03-11 System und verfahren zur steuerung einer löschspannung während des löschens mehrerer sektoren eines flash-speichers

Country Status (9)

Country Link
US (1) US6891752B1 (de)
EP (1) EP1527458B1 (de)
JP (1) JP4249131B2 (de)
KR (1) KR100953330B1 (de)
CN (1) CN100447901C (de)
AU (1) AU2003222282A1 (de)
DE (1) DE60318714T2 (de)
TW (1) TWI286758B (de)
WO (1) WO2004013864A1 (de)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7200708B1 (en) * 2003-12-31 2007-04-03 Intel Corporation Apparatus and methods for storing data which self-compensate for erase performance degradation
US7450433B2 (en) 2004-12-29 2008-11-11 Sandisk Corporation Word line compensation in non-volatile memory erase operations
US7457166B2 (en) 2005-03-31 2008-11-25 Sandisk Corporation Erase voltage manipulation in non-volatile memory for controlled shifts in threshold voltage
JP4796125B2 (ja) * 2005-03-31 2011-10-19 サンディスク コーポレイション メモリセルの部分集合を個別に検証して追加的に消去する不揮発性メモリの消去
US7522457B2 (en) 2005-03-31 2009-04-21 Sandisk Corporation Systems for erase voltage manipulation in non-volatile memory for controlled shifts in threshold voltage
US7486564B2 (en) 2005-03-31 2009-02-03 Sandisk Corporation Soft programming non-volatile memory utilizing individual verification and additional soft programming of subsets of memory cells
KR100715151B1 (ko) * 2006-05-23 2007-05-10 삼성전자주식회사 메모리 섹터별로 소거 패스 전압을 가지는 불휘발성 반도체메모리 장치 및 이에 대한 소거 방법
US7382676B2 (en) * 2006-06-26 2008-06-03 Semiconductor Components Industries, Llc Method of forming a programmable voltage regulator and structure therefor
KR100744014B1 (ko) 2006-07-31 2007-07-30 삼성전자주식회사 플래시 메모리 장치 및 그것의 멀티 블록 소거 방법
US7733706B2 (en) * 2006-09-29 2010-06-08 Hynix Semiconductor Inc. Flash memory device and erase method thereof
US7499338B2 (en) 2006-10-13 2009-03-03 Sandisk Corporation Partitioned soft programming in non-volatile memory
US7495954B2 (en) 2006-10-13 2009-02-24 Sandisk Corporation Method for partitioned erase and erase verification to compensate for capacitive coupling effects in non-volatile memory
US7535766B2 (en) 2006-10-13 2009-05-19 Sandisk Corporation Systems for partitioned soft programming in non-volatile memory
US7499317B2 (en) 2006-10-13 2009-03-03 Sandisk Corporation System for partitioned erase and erase verification in a non-volatile memory to compensate for capacitive coupling
KR100830589B1 (ko) * 2007-04-17 2008-05-22 삼성전자주식회사 워드 라인으로 음의 고전압을 전달할 수 있는 고전압스위치를 갖는 플래시 메모리 장치
US7995392B2 (en) 2007-12-13 2011-08-09 Kabushiki Kaisha Toshiba Semiconductor memory device capable of shortening erase time
JP2009163782A (ja) * 2007-12-13 2009-07-23 Toshiba Corp 半導体記憶装置
US7643352B2 (en) * 2008-06-03 2010-01-05 Elite Semiconductor Memory Technology Inc. Method for erasing flash memory
CN101800078B (zh) * 2009-02-11 2013-02-13 北京兆易创新科技有限公司 一种非易失存储器的擦除方法及装置
KR101710089B1 (ko) 2010-08-26 2017-02-24 삼성전자주식회사 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템
WO2014019156A1 (en) * 2012-08-01 2014-02-06 Datacard Corporation Variable erase for thermally rewritable cards
CN109584933B (zh) * 2012-08-29 2023-07-25 瑞萨电子株式会社 半导体器件
US9449698B1 (en) 2015-10-20 2016-09-20 Sandisk Technologies Llc Block and zone erase algorithm for memory
KR102377469B1 (ko) 2015-11-02 2022-03-23 삼성전자주식회사 불휘발성 메모리 장치, 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치의 동작 방법
KR102609177B1 (ko) * 2016-07-04 2023-12-06 삼성전자주식회사 불휘발성 메모리 시스템의 동작 방법 및 불휘발성 메모리 장치의 동작 방법
US10141065B1 (en) * 2017-08-29 2018-11-27 Cypress Semiconductor Corporation Row redundancy with distributed sectors
US10460816B2 (en) * 2017-12-08 2019-10-29 Sandisk Technologies Llc Systems and methods for high-performance write operations
CN110838326B (zh) * 2018-08-17 2022-03-11 北京兆易创新科技股份有限公司 一种存储器的擦除方法和系统
CN109256166A (zh) * 2018-08-22 2019-01-22 长江存储科技有限责任公司 闪存器的擦除方法及闪存器
JP7181984B1 (ja) 2021-12-09 2022-12-01 ウィンボンド エレクトロニクス コーポレーション 半導体装置および消去方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5270979A (en) 1991-03-15 1993-12-14 Sundisk Corporation Method for optimum erasing of EEPROM
US5396468A (en) * 1991-03-15 1995-03-07 Sundisk Corporation Streamlined write operation for EEPROM system
US5537358A (en) 1994-12-06 1996-07-16 National Semiconductor Corporation Flash memory having adaptive sensing and method
EP0830684B1 (de) * 1995-06-07 2004-08-25 Macronix International Co., Ltd. Automatischer progammier-algorithmus für flash-speicher im seitenmodus mit variabler programmierimpulshöhe und -breite
JPH0954726A (ja) * 1995-08-18 1997-02-25 Mitsubishi Electric Corp 記憶装置
US5745410A (en) * 1995-11-17 1998-04-28 Macronix International Co., Ltd. Method and system for soft programming algorithm
US6055184A (en) 1998-09-02 2000-04-25 Texas Instruments Incorporated Semiconductor memory device having programmable parallel erase operation
US6208558B1 (en) 1999-04-16 2001-03-27 Advanced Micro Devices, Inc. Acceleration circuit for fast programming and fast chip erase of non-volatile memory
US6188609B1 (en) 1999-05-06 2001-02-13 Advanced Micro Devices, Inc. Ramped or stepped gate channel erase for flash memory application
US6172909B1 (en) * 1999-08-09 2001-01-09 Advanced Micro Devices, Inc. Ramped gate technique for soft programming to tighten the Vt distribution
US6490204B2 (en) 2000-05-04 2002-12-03 Saifun Semiconductors Ltd. Programming and erasing methods for a reference cell of an NROM array
DE10237584B4 (de) * 2002-08-16 2005-10-06 Siemens Ag Verfahren zur Verwaltung von Ressourcen beim Aufbau eines Ersatzpfades in einem transparent schaltbaren Netzwerk

Also Published As

Publication number Publication date
WO2004013864A1 (en) 2004-02-12
AU2003222282A1 (en) 2004-02-23
JP2006500705A (ja) 2006-01-05
EP1527458A1 (de) 2005-05-04
DE60318714D1 (de) 2008-03-06
CN1672218A (zh) 2005-09-21
TWI286758B (en) 2007-09-11
CN100447901C (zh) 2008-12-31
JP4249131B2 (ja) 2009-04-02
EP1527458B1 (de) 2008-01-16
KR100953330B1 (ko) 2010-04-20
US6891752B1 (en) 2005-05-10
KR20050032103A (ko) 2005-04-06
TW200404293A (en) 2004-03-16

Similar Documents

Publication Publication Date Title
DE60318714T2 (de) System und verfahren zur steuerung einer löschspannung während des löschens mehrerer sektoren eines flash-speichers
DE60220590T2 (de) Verfahren zur Reduzierung von Kopplungseffekten zwischen multi-level Speicherelementen eines nicht flüchtigen Speichers
DE10002266B4 (de) Nichtflüchtiges Halbleiterspeicherbauelement und Programmierverfahren hierfür
DE60214023T2 (de) Selektiver betrieb eines nichtflüchtigen mehrzustandsspeichersystems in einem binärmodus
DE4302223C2 (de) Nicht-flüchtige Halbleiterspeichereinrichtung sowie Herstellungsverfahren dafür
DE69521882T2 (de) Verfahren und schaltung zur speicherung von diskreten ladungspaketen in einem einzigen speicherelement
DE69603742T2 (de) Überlöschungskorrektur für flash-speicher mit überlöschungsbegrenzung und vermeidung von löschprüffehlern
DE4232025C2 (de) Elektrisch löschbarer und programmierbarer nichtflüchtiger Halbleiterspeicher mit automatischem Schreibprüfungs-Controller
DE69524913T2 (de) Nichtflüchtige Halbleiter-Speicherzelle mit Korrekturmöglichkeit einer überschriebenen Zelle, und Korrekturverfahren
DE69706873T2 (de) Löschverfahren für mehrere-bits-pro-zelle flash -eeprom mit seitenmodus
DE60001587T2 (de) Schaltungsausführung zur reduzierung des bitleitungslekcstroms bei programmierungs-und überlöschungskorrekturmodus in einem flash-eeprom
US5487033A (en) Structure and method for low current programming of flash EEPROMS
DE602005003924T2 (de) Programmierung nicht-flüchtiger speicher
DE4433098C2 (de) Halbleiter-Permanentspeichervorrichtung
DE112005001325B4 (de) Lösch-Verfahren für einen Multilevel-Bit-Flash-Speicher
DE19724221B4 (de) Nichtflüchtiger Speicher
DE10034743B4 (de) Flash-Speicherbauelement und Programmierverfahren hierfür
DE112019000155B4 (de) Bitleitungsspannungssteuerung zum dämpfen von speicherprogrammierung
DE69614787T2 (de) Speichermatrix mit mehrzustandsspeicherzellen
DE69705837T2 (de) Anordnung und verfahren zum speichern und lesen von mehrpegelladung
DE102006020180B3 (de) Verfahren zum Programmieren eines Blocks von Speicherzellen, nicht-flüchtiger Speicher und Speicherkarte
DE68918880T2 (de) Elektrisch löschbare nichtflüchtige Halbleiterspeichervorrichtung.
DE69909930T2 (de) Verfahren zum Löschen und Programmieren von Speicheranordnungen
DE112010000955T5 (de) NAND-Flasharchitektur mit mehrstufiger Zeilendecodierung
DE102007002248A1 (de) Nichtflüchtiges Halbleiter-Speicherbauelement und Verfahren zum Löschen eines Flash-Speicherbauelements

Legal Events

Date Code Title Description
8364 No opposition during term of opposition