DE112019000155T5 - Bitleitungsspannungssteuerung zum dämpfen von speicherprogrammierung - Google Patents

Bitleitungsspannungssteuerung zum dämpfen von speicherprogrammierung Download PDF

Info

Publication number
DE112019000155T5
DE112019000155T5 DE112019000155.8T DE112019000155T DE112019000155T5 DE 112019000155 T5 DE112019000155 T5 DE 112019000155T5 DE 112019000155 T DE112019000155 T DE 112019000155T DE 112019000155 T5 DE112019000155 T5 DE 112019000155T5
Authority
DE
Germany
Prior art keywords
programming
pulse
voltage
pulses
memory cell
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.)
Pending
Application number
DE112019000155.8T
Other languages
English (en)
Inventor
Deepanshu Dutta
Xiang Yang
Tai-Yuan Tseng
Gerrit Jan Hemink
Yan Li
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.)
SanDisk Technologies LLC
Original Assignee
SanDisk Technologies 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 SanDisk Technologies LLC filed Critical SanDisk Technologies LLC
Publication of DE112019000155T5 publication Critical patent/DE112019000155T5/de
Pending legal-status Critical Current

Links

Images

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/24Bit-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/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/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/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3436Arrangements for verifying correct programming or erasure
    • G11C16/3454Arrangements for verifying correct programming or for detecting overprogrammed cells
    • G11C16/3459Circuits or methods to verify correct programming of nonvolatile memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/562Multilevel memory programming aspects
    • G11C2211/5621Multilevel programming verification

Landscapes

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

Abstract

Ein Gerät schließt eine Programmierschaltung ein, die dafür eingerichtet ist, einen Programmierimpuls abzugeben, um eine Schwellenspannung einer Speicherzelle zu erhöhen. Das Gerät schließt auch eine Abtastschaltung ein, die dafür eingerichtet ist, zu bestimmen, dass die Schwellenspannung der Speicherzelle als Reaktion auf den Programmierimpuls eine Triggerschwellenspannung erfüllt. Das Gerät schließt ferner eine Dämpfungsschaltung ein, die dafür eingerichtet ist, eine Spannung einer mit der Speicherzelle verbundenen Bitleitung nach Einleiten und während eines zweiten Programmierimpulses als Reaktion darauf zu erhöhen, dass die Schwellenspannung der Speicherzelle die Triggerschwellenspannung erfüllt, wobei der zweite Programmierimpuls von der Programmierschaltung gesendet wird.

Description

  • VERWANDTE ANMELDUNG(EN)
  • Die vorliegende Anmeldung beansprucht die Priorität von US-Patentanmeldung Nr. 15/987.764 , eingereicht am 23. Mai 2018, die hiermit in ihrer Gesamtheit in diese Anmeldung aufgenommen wird.
  • GEBIET DER OFFENBARUNG
  • Diese Offenlegung bezieht sich im Allgemeinen auf Datenspeichervorrichtungen und insbesondere auf Bitleitungsspannungssteuerung zum Dämpfen von Speicherprogrammierung.
  • HINTERGRUND
  • Halbleiterspeicher werden immer beliebter für die Verwendung in verschiedenen elektronischen Vorrichtungen. Zum Beispiel wird ein nichtflüchtiger Halbleiterspeicher in Mobiltelefonen, Digitalkameras, persönlichen digitalen Assistenten, mobilen Rechenvorrichtungen, nicht mobilen Rechenvorrichtungen und anderen Vorrichtungen verwendet. Elektrisch löschbare, programmierbare Festwertspeicher (EEPROM) und Flash-Speicher gehören zu den beliebtesten nichtflüchtigen Halbleiterspeichern. Beim Flash-Speicher, auch eine Art EEPROM, kann im Gegensatz zum herkömmlichen, voll ausgestatteten EEPROM der Inhalt des gesamten Speicherarrays oder eines Abschnitts des Speichers in einem Schritt gelöscht werden.
  • Sowohl der herkömmliche EEPROM als auch der Flash-Speicher verwenden ein Floating-Gate, das über einem Kanalbereich in einem Halbleitersubstrat positioniert und von diesem isoliert ist. Das Floating-Gate befindet sich zwischen dem Source- und Drain-Bereich. Ein Steuer-Gate ist über dem Floating-Gate bereitgestellt und von diesem isoliert. Die Schwellenspannung (Vth) des so gebildeten Transistors wird durch die Ladungsmenge gesteuert, die auf dem Floating-Gate zurückgehalten wird. D. h. die Mindestspannung, die an das Steuergate angelegt werden muss, bevor der Transistor eingeschaltet wird, um Leitung zwischen seiner Source und seinem Drain zu ermöglichen, wird durch das Ladungsniveau auf dem Floating-Gate gesteuert.
  • Einige EEPROM- und Flash-Speichervorrichtungen haben ein Floating-Gate, das zum Speichern von zwei Ladungsbereichen verwendet wird, so dass das Speicherelement zwischen zwei Zuständen, z. B. einem gelöschten Zustand und einem programmierten Zustand, programmiert/gelöscht werden kann. Eine solche Flash-Speichervorrichtung wird manchmal als binäre Flash-Speichervorrichtung bezeichnet, weil jedes Speicherelement ein Datenbit speichern kann.
  • Eine Flash-Speichervorrichtung mit mehreren Zuständen (auch als mehrstufig bezeichnet) wird durch Identifizieren mehrerer unterschiedlicher zulässiger/gültiger programmierter Schwellenspannungsbereiche implementiert. Jeder unterschiedliche Schwellenspannungsbereich entspricht einem vorbestimmten Wert für den Satz Datenbits, die in der Speichervorrichtung codiert sind. Zum Beispiel kann jedes Speicherelement zwei Datenbits speichern, wenn das Element in einem von vier separaten Ladungsbändern platziert werden kann, die vier unterschiedlichen Schwellenspannungsbereichen entsprechen.
  • Techniken zum genauen Programmieren der Schwellenspannungsbereiche werden benötigt, insbesondere wenn Speichervorrichtungen immer kleiner werden.
  • Figurenliste
    • 1A veranschaulicht ein Beispiel für das Programmieren von Speicherzellen unter Verwendung eines Verifizierungsniveaus;
    • 1B veranschaulicht ein Beispiel für das Programmieren von Speicherzellen unter Verwendung von zwei Verifizierungsniveaus;
    • 2 ist ein Blockdiagramm eines nichtflüchtigen Speichersystems unter Verwendung einzelner Zeilen-/Spaltendecoder und Lese-/Schreibschaltungen;
    • 3 zeigt einen Block NAND-Flash-Speicherzellen in dem Speicherarray von 2;
    • 4 ist ein Flussdiagramm, das ein Beispiel für ein Verfahren zum Dämpfen von Speicherprogrammierung veranschaulicht;
    • 5 ist ein Zeitdiagramm, das ein Beispiel für das Erhöhen einer Bitleitungsspannung während Programmierimpulsen veranschaulicht;
    • 6 ist ein Zeitdiagramm, das ein weiteres Beispiel für das Erhöhen einer Bitleitungsspannung während Programmierimpulsen veranschaulicht;
    • 7 ist ein Zeitdiagramm, das ein Beispiel für das Erhöhen einer Bitleitungsspannung während Programmierimpulsen für mehrere Zustände veranschaulicht;
    • 8 ist ein Zeitdiagramm, das ein Beispiel für Durchlassimpulsverstärkung während Programmierimpulsen veranschaulicht;
    • 9 ist ein Zeitdiagramm, das ein weiteres Beispiel für Durchlassimpulsverstärkung während Programmierimpulsen veranschaulicht; und
    • 10 ist ein Diagramm, das ein Beispiel für Durchlassimpulsverstärkung veranschaulicht.
  • DETAILLIERTE BESCHREIBUNG
  • Bestimmte Beispiele gemäß der vorliegenden Offenbarung werden nachfolgend unter Bezugnahme auf die Zeichnungen beschrieben. In der Beschreibung können gemeinsame Merkmale mit gemeinsamen Bezugszeichen bezeichnet sein. Gleiche oder beispielhafte Merkmale können mit ähnlichen Bezugszeichen bezeichnet sein. Wie hierin verwendet, kann „beispielhaft“ ein Beispiel, eine Implementierung und/oder einen Gesichtspunkt angeben und sollte nicht als einschränkend oder einen Vorrang angebend oder auf eine bevorzugte Implementierung ausgelegt werden. Ferner ist zu beachten, dass bestimmte Ordnungsbegriffe (z. B. „erste“ oder „zweite“) zur Identifizierung und leichteren Bezugnahme bereitgestellt sein können und keine physischen Merkmale oder Ordnung implizieren müssen. Daher bedeutet hierin ein Ordnungsbegriff (z. B. „erster“, „zweiter“, „dritter“), der zum Modifizieren eines Elements wie einer Struktur, einer Komponente, eines Vorgangs usw. verwendet wird, nicht unbedingt eine Priorität oder Reihenfolge des Elements in Bezug auf ein anderes Element, sondern unterscheidet das Element von einem anderen Element mit demselben Namen (doch zur Verwendung des Ordnungsbegriffs). Zusätzlich können, wie hierin verwendet, unbestimmte Artikel („ein“ und „eine“) „einen oder mehrere“ und nicht „einen“ bezeichnen. Wie hierin verwendet, kann eine Struktur oder ein Vorgang, der ein Element „aufweist“ oder „einschließt“, eines oder mehrere andere Elemente einschließen, die nicht explizit angegeben sind. Ferner kann ein Vorgang, der „basierend auf“ einer Bedingung oder einem Ereignis durchgeführt wird, auch basierend auf einer oder mehreren anderen Bedingungen oder Ereignissen durchgeführt werden, die nicht ausdrücklich erwähnt werden.
  • Es sei darauf hingewiesen, dass mehrere ähnliche Elemente mit einer Zahl und einem Buchstaben gekennzeichnet sein können (z. B. Bitleitungen 1080a-c). Wenn auf ein Element durch die Zahl ohne Buchstaben Bezug genommen wird, kann sich dies im Allgemeinen auf ein beliebiges der veranschaulichten Elemente mit der Zahl, auf einige der veranschaulichten Elemente mit der Zahl, auf alle veranschaulichten Elemente mit der Zahl oder auf ein anderes ähnliches Element beziehen. Zum Beispiel kann sich eine „Bitleitung 1080“ im Allgemeinen auf eine oder mehrere der Bitleitungen 1080a-c beziehen, die in den Figuren veranschaulicht sind.
  • 1A veranschaulicht ein Beispiel für das Programmieren von Speicherzellen unter Verwendung eines Verifizierungsniveaus (VH). Die Diagramme 102a-d veranschaulichen eine Verteilung der Spannungsschwellen (Vth) 104a-d über vier Programmierzyklen. Jedes der Diagramme 102a-d wird mit Vth auf der horizontalen Achse und einer Anzahl von Speicherzellen auf der vertikalen Achse veranschaulicht. Der Bereich von Spannungsschwellenverteilungen 104a-d wird durch Unterschiede in der Speicherzellen-Programmiergeschwindigkeit verursacht. Zum Beispiel neigen einige Speicherzellen zu einer langsameren Programmierung als andere. Entsprechend werden „langsame“ Speicherzellen, „mittlere“ Speicherzellen und „schnelle“ Speicherzellen veranschaulicht.
  • Wie in 1A veranschaulicht, veranschaulicht ein erstes Diagramm 102a eine Schwellenwertverteilung 104a nach einer Anzahl von Programmierschritten. Im zweiten Diagramm 102b kreuzt die Schwellenwertverteilung 104b ein Verifizierungsniveau (VH) mit einem relativ großen Sprung. Im dritten Diagramm 102c wird ein weiterer Programmierschritt angewendet und die Schwellenwertverteilung 104c beginnt, sich mit Verlangsamung der Programmierung zu verengen. Das vierte Diagramm 102d veranschaulicht eine endgültige Schwellenwertverteilung 104d nach einem weiteren Programmierschritt.
  • Während Programmiervorgängen gibt es einen Kompromiss zwischen dem Verringern der Programmierzeit und dem Erreichen enger Verteilungen der Schwellenspannung (Vth) für die unterschiedlichen Datenzustände. Die Programmiergeschwindigkeit kann durch Verwenden einer größeren Programmierimpuls-Schrittweite erhöht werden. Dies kann jedoch zu großen Überschwingungen führen, die über das Verifizierungsniveau hinausgehen und eine breite Vth-Verteilung verursachen. Das zweite Diagramm 102b veranschaulicht zum Beispiel, wie die Schwellenwertverteilung 104b aufgrund einer großen Programmierschrittweite einen größeren Sprung über das Verifizierungsniveau (VH) hinaus aufweist. Entsprechend hat die endgültige Schwellenspannungsverteilung 104d eine relativ breite Verteilung. Andererseits wird, wenn eine kleinere Programmierimpuls-Schrittweite verwendet wird, eine enge Vth-Verteilung auf Kosten einer längeren Programmierzeit erreicht.
  • 1B veranschaulicht ein Beispiel für das Programmieren von Speicherzellen unter Verwendung von zwei Verifizierungsniveaus (VL und VH). Die Diagramme 106a-d veranschaulichen eine Verteilung der Spannungsschwellen (Vth) 108a-d über vier Programmierzyklen. Jedes der Diagramme 106a-d ist mit Vth auf der horizontalen Achse und einer Anzahl von Speicherzellen auf der vertikalen Achse veranschaulicht. „Langsame“ Speicherzellen, „mittlere“ Speicherzellen und „schnelle“ Speicherzellen sind veranschaulicht.
  • Wie in 1A veranschaulicht, veranschaulicht ein erstes Diagramm 106a eine Schwellenwertverteilung 108a nach einer Anzahl von Programmierschritten. Im ersten Diagramm 106a kreuzt die Schwellenverteilung 108a ein geringeres Verifizierungsniveau (VL). Im zweiten Diagramm 106b ist die Programmierung verlangsamt, was zu einem kleineren Sprung über ein höheres Verifizierungsniveau (VH) führt. Im zweiten Diagramm 106b wird die Schwellenwertverteilung 108b enger, wenn die Programmierung verlangsamt wird. Im dritten Diagramm 106c wird ein weiterer Programmierschritt angewendet, und die Schwellenwertverteilung 108c nähert sich langsam einem Zieldatenzustand, was eine weitere Verengung der Schwellenwertverteilung 108c bewirkt. Nachdem ein weiterer Programmierschritt auf die Schwellenverteilung 108c im dritten Diagramm 106c angewendet wurde, veranschaulicht das vierte Diagramm 106d eine endgültige Schwellenverteilung 108d.
  • Wie in 1B veranschaulicht, besteht ein weiterer Ansatz darin, die Speicherelemente auf zwei getrennten Verifizierungsniveaus (VL und VH) für jeden Zieldatenzustand zu verifizieren. Bevor die Schwellenspannung eines Speicherelements ein niedrigeres Verifizierungsniveaus (VL) seines Zieldatenzustands erreicht, wird seine Bitleitungsspannung (Vbl) auf ein niedriges Niveau wie 0 Volt (V) gesetzt, um zu bewirken, dass das Speicherelement eine relativ schnelle Programmiergeschwindigkeit hat. Wenn die Schwellenspannung 108a des Speicherelements das niedrigere Verifizierungsniveau überschreitet, wird seine Vbl auf ein Zwischenniveau gesetzt, um eine relativ langsame Programmiergeschwindigkeit des Speicherelements zu bewirken, was einen kleineren Sprung über ein höheres Verifizierungsniveau (VH) ermöglicht. Wenn die Schwellenspannung 108b des Speicherelements das höhere Verifizierungsniveau (VH) seines Zieldatenzustands überschreitet, wird seine Vbl auf ein hohes Niveau gesetzt, um die Programmierung des Speicherelements zu verhindern (Sperre). Wie in 1B veranschaulicht, kann dieser Ansatz zu einer endgültigen Schwellenspannung 108d mit engerer Verteilung führen.
  • Während der in 1B veranschaulichte Ansatz eine verbesserte Programmiergenauigkeit ermöglicht, ist dieser Ansatz mit höheren Gemeinkosten verbunden, da mehrere Verifizierungsniveaus benutzt werden. Ein weiteres Problem bei einigen Ansätzen besteht darin, dass, obwohl die Bitleitungsspannung erhöht wird, um die Programmiergeschwindigkeit zu verlangsamen, wenn sich die Spannungsverteilung der Zielspannungsverteilung nähert, die Programmiergeschwindigkeit aufgrund der zunehmenden Programmierspannungen tendenziell wieder ansteigt. Zum Beispiel wird während des Programmierens eine feste Bitleitungsspannung (BL) an Zellen angelegt. Die Zellen gehen vorübergehend in einen instationären Zustand über, so dass die Programmierung verlangsamt wird. Doch wenn die Programmierung fortgesetzt wird, kehren die Zellen schließlich in einen weiteren stationären Zustand mit schneller Programmierung zurück, was zu einer unerwünschten (z. B. breiteren) Spannungsverteilung führen kann.
  • Techniken zur Bitleitungsspannungsteuerung zum Dämpfen der Speicherprogrammierung werden hierin offenbart. Bei einer Ausführungsform wird eine BL-Spannung während einer Programmierimpuls-Zeitdauer (PD1) schrittweise erhöht, um Speicherzellen zu verlangsamen, wenn sie sich einer Zielschwellenspannung nähern. Ein „Programmierimpuls“ ist ein erhöhtes (z. B. verstärktes) Spannungssignal oder ein Impuls, der an eine Wortleitung angelegt wird, um ein Speicherelement zu programmieren. Der hierin verwendete Begriff „Speicherelement“ bezieht sich zum Beispiel auf eine Speicherzelle, eine elektrische Schaltung oder eine andere Komponente, die in der Lage ist, eines oder mehrere Informationsbits zu speichern. Eine „Zielschwellenspannung“ ist eine spezifizierte oder gewünschte Schwellenspannung eines Speicherelements zur Darstellung eines entsprechenden Datenzustands. Bei einer Ausführungsform wird die schrittweise erhöhte BL-Spannung zu unterschiedlichen Zeitpunkten (tx) über eine Reihe von Programmierimpulsen angelegt und/oder die Zeitdauer der schrittweise erhöhten BL-Spannung variiert über die Reihe von Programmierimpulsen. Zum Beispiel wird während eines ersten Programmierimpulses die schrittweise erhöhte BL-Spannung bei tx = -1 Mikrosekunde (µs) vor dem Ende des Programmierimpulses bereitgestellt. Während eines zweiten Programmierimpulses wird die schrittweise erhöhte BL-Spannung bei tx = -2 Mikrosekunden (µs) vor dem Ende des Programmierimpulses bereitgestellt. Während eines dritten Programmierimpulses wird die schrittweise erhöhte BL-Spannung bei tx = -3 Mikrosekunden (µs) vor dem Ende des Programmierimpulses bereitgestellt. Entsprechend wird die Programmierung von Speicherzellen konsequent verlangsamt (zum Beispiel ohne vor Abschluss der Programmierung zur schnelleren stationären Programmierung zurückzukehren). Bei einer Ausführungsform wird eine bessere Schwellenspannungsspanne (z. B. engere Vt-Verteilung) mit geringeren Gesamtkosten (z. B. weniger Verifizierungsniveaus) erhalten, was eine höhere Zustand-Programmiergeschwindigkeit bei gleichzeitiger Vermeidung von Leistungsverlusten ermöglicht.
  • 2 ist ein Blockdiagramm eines nichtflüchtigen Speichersystems unter Verwendung einzelner Zeilen-/Spaltendecoder und Lese-/Schreibschaltungen. Das Diagramm veranschaulicht einen Speicherchip 222 mit Lese-/Schreibschaltungen zum Lesen und Programmieren einer Seite von Speicherelementen gemäß einer Ausführungsform. Speichervorrichtung 222 kann einen oder mehrere Speicherchips 224 einschließen. Speicherchip 224 schließt ein zweidimensionales Speicherarray 226 von Speicherelementen, Steuerschaltungen 210 und Lese-/Schreibschaltungen 228 ein.
  • Bei einigen Ausführungsformen kann das Array 226 von Speicherelementen dreidimensional sein. Das Speicherarray 226 ist durch Wortleitungen über einen Zeilendecoder 238 und durch Bitleitungen über einen Spaltendecoder 236 adressierbar. Die Lese-/Schreibschaltungen 228 schließen eine Programmierschaltung 230, eine Abtastschaltung 232 (z. B. mehrere Abtastblöcke) und eine Dämpfungsschaltung 234 ein. Die Lese-/Schreibschaltungen 228 ermöglichen das parallele Lesen oder Programmieren einer Seite von Speicherelementen.
  • Bei einer Ausführungsform ist die Programmierschaltung 230 dafür eingerichtet, Programmierimpulse zu erzeugen und an das Speicherarray 226 zu senden (oder zu liefern). Zum Beispiel sendet die Programmierschaltung 230 eine Reihe von Programmierimpulsen an eine gewählte Wortleitung, die mit Speicherelementen (z. B. Speicherzellen) des Speicherarrays 226 gekoppelt ist. Die Programmierimpulse steigen in ihrer Amplitude (z. B. linearer oder nicht linearer Spannungsanstieg) über eine Anzahl von Programmierzyklen, um die Schwellenspannungen der Speicherelemente progressiv (oder inkrementell) auf Zustände zu erhöhen, die zu speichernden Daten entsprechen. Der Begriff „progressiv“ oder „inkrementell“ bedeutet, dass die Erhöhung in Schritten im Zeitverlauf (z. B. über eine Anzahl von Programmierzyklen) erfolgt.
  • Bei einer Ausführungsform ist die Abtastschaltung 232 dafür eingerichtet, Schwellenspannungen von Speicherelementen (z. B. Speicherzellen) zu bestimmen. Zum Beispiel legt die Abtastschaltung 232 eine oder mehrere Spannungen (z. B. Verifizierungsniveaus, Verifizierimpulse) an eine gewählte Wortleitung eines Speicherelements an, um zu bestimmen, ob das Speicherelement bei der/den Spannung(en) aktiviert wird, was die Schwellenspannung des Speicherelements anzeigt. Bei einer Ausführungsform bestimmt die Abtastschaltung 232, ob eine Schwellenspannung eines Speicherelements (z. B. Speicherzelle) eine Triggerschwellenspannung erfüllt. Die Triggerschwellenspannung ist eine Spannung, bei der die Programmierungsdämpfung angewendet wird, um die Programmierung des Speicherelements zu verlangsamen. Wenn zum Beispiel die Abtastschaltung 232 bestimmt, dass eine Schwellenspannung eines Speicherelements (z. B. Speicherzelle) erfüllt ist (z. B. größer als die Triggerschwellenspannung ist oder größer als oder gleich der Triggerschwellenspannung ist), kann die Dämpfungsschaltung 234 eine Dämpfungstechnik anwenden, um die Speicherelementprogrammierung für einen oder mehrere nachfolgende Programmierzyklen zu verlangsamen. Ein Beispiel für eine Dämpfungstechnik schließt das Erhöhen einer Spannung einer Bitleitung nach Einleiten und während eines Programmierimpulses ein. Ein weiteres Beispiel für eine Dämpfungstechnik umfasst das Erhöhen einer Zeitdauer eines Bitleitungsimpulses während aufeinanderfolgender Schreibimpulse. Ein weiteres Beispiel für eine Dämpfungstechnik umfasst das Erhöhen von Durchlassimpulsen auf nicht gewählte Wortleitungen nach Einleiten und während mindestens eines Programmierimpulses. Bei einer Ausführungsform führt die Abtastschaltung 232 eine Bestimmung der Triggerschwellenspannung als Reaktion auf einen gesendeten Programmierimpuls durch. Bei einer Ausführungsform sendet die Abtastschaltung 232 einen oder mehrere Verifizierimpulse, um die Schwellenspannung eines oder mehrerer Speicherelemente zu verifizieren, bis eine oder mehrere Schwellenspannungen eine oder mehrere Zielschwellenspannungen erreichen. Zum Beispiel kann ein Programmierimpuls mit einem oder mehreren Verifizierungsniveaus auf einer gewählten Wortleitung abwechseln.
  • Die Dämpfungsschaltung 234 ist dafür eingerichtet, eine Spannung (z. B. eine Vorspannung) einer Bitleitung, die mit einem Speicherelement (z. B. Speicherzelle) verbunden ist, nach Einleiten und während eines oder mehrerer Programmierimpulse zu erhöhen (z. B. schrittweise zu erhöhen). Das Einleiten eines Programmierimpulses ist ein Zeitpunkt, zu dem der Beginn eines Programmierimpulses an ein Speicherelement (z. B. Speicherzelle) gesendet oder geliefert wird. Bei einer Ausführungsform erfolgt das Einleiten eines Programmierimpulses, wenn ein Übergang zu einer Programmierimpulsspannung (z. B. VP) beginnt. Bei einer Ausführungsform erfolgt das Einleiten eines Programmierimpulses, wenn ein Anstieg über eine Grundlinienspannung, eine Stufenspannung oder eine andere Spannung (z. B. 0 V, 10 V oder andere Spannung) beginnt. „Während eines Programmierimpulses“ bezieht sich auf einen Zeitraum, in dem ein Programmierimpuls auf ein bestimmtes Niveau erhöht wird (z. B. größer als 0 V, bei einer bestimmten Spannung (VP) eines Programmierimpulses und/oder bei einer Spitzenspannung). Zum Beispiel erhöht die Dämpfungsschaltung 234 eine Spannung einer Bitleitung, die mit einem Speicherelement verbunden ist, das während eines oder mehrerer Programmierimpulse programmiert wird. Ein spezielleres Beispiel für das Erhöhen der Spannung der Bitleitung nach Einleiten und während eines Programmierimpulses wird im Zusammenhang mit 5 gegeben. Bei einer Ausführungsform erfolgt das Erhöhen der Spannung (z. B. Vorspannung) der Bitleitung als Reaktion darauf, dass die Schwellenspannung des Speicherelements (z. B. Speicherzelle) die Triggerschwellenspannung erfüllt. Das Erhöhen der Spannung auf der Bitleitung des Speicherelements verlangsamt die Programmiergeschwindigkeit des Speicherelements, was zu engeren Schwellenspannungsverteilungen führt und/oder hilft, eine Überprogrammierung des Speicherelements zu vermeiden. Es sei darauf hingewiesen, dass die Vorgänge der Programmierschaltung 230, der Abtastschaltung 232 und/oder der Dämpfungsschaltung 234 für eines oder mehrere Speicherelemente parallel (z. B. gleichzeitig) ausgeführt werden können. Bei einer Ausführungsform ist die Dämpfungsschaltung 234 dafür eingerichtet, einen Dämpfungsimpuls zu senden, der mit einem Programmierimpuls koinzident ist, (ohne den Dämpfungsimpuls nach Einleiten und während des entsprechenden Programmierimpulses zu erhöhen) und dann den Dämpfungsimpuls nach Einleiten und während eines nachfolgenden Programmierimpulses zu erhöhen oder schrittweise zu erhöhen.
  • In einem Beispiel sendet die Programmierschaltung 230 einen ersten Programmierimpuls an ein Speicherelement. Die Abtastschaltung 232 bestimmt, dass die Schwellenspannung des Speicherelements die Triggerschwellenspannung als Reaktion auf den ersten Programmierimpuls erfüllt. Die Programmierschaltung 230 sendet einen zweiten Programmierimpuls an das Speicherelement, und die Dämpfungsschaltung 234 erhöht die Spannung auf der Bitleitung des Speicherelements nach Einleiten des zweiten Programmierimpulses. Bei einer Ausführungsform erhöht die Dämpfungsschaltung 234 die Zeitdauer der Spannungserhöhung (z. B. Dämpfungsimpuls) auf der Bitleitung für einen oder mehrere nachfolgende Programmierimpulse. Zum Beispiel sendet die Programmierschaltung 230 nach dem zweiten Programmierimpuls einen dritten Programmierimpuls an das Speicherelement (z. B. Speicherzelle). Die Dämpfungsschaltung 234 ist dafür eingerichtet, die Spannung der Bitleitung des Speicherelements nach Einleiten und während des dritten Programmierimpulses für eine größere Zeitdauer als die Spannungserhöhung der Bitleitung während des zweiten Programmierimpulses zu erhöhen. Ein spezielleres Beispiel für progressives (z. B. inkrementelles) Erhöhen der Zeitdauer der Bitleitungsspannungserhöhungen (z. B. Dämpfungsimpulse) wird im Zusammenhang mit 6 gegeben. Bei einer Ausführungsform schließt das zunehmende (z. B. inkrementelle) Erhöhen der Zeitdauer der Bitleitungsspannung (oder des Dämpfungsimpulses) das Erhöhen der Zeitdauer der Bitleitungsspannung (oder des Dämpfungsimpulses) bei jedem Programmierzyklus ein, bis die Programmierung abgeschlossen ist. Bei einer Ausführungsform schließt das progressive (z. B. inkrementelle) Erhöhen der Zeitdauer der Bitleitungsspannung (oder des Dämpfungsimpulses) das Erhöhen der Zeitdauer der Bitleitungsspannung (oder des Dämpfungsimpulses) bei einem oder mehr (doch nicht allen) Programmierzyklen ein, bis die Programmierung abgeschlossen ist. Bei einer Ausführungsform kann die Amplitude oder Spannung der Bitleitungsspannungserhöhungen (z. B. Dämpfungsimpulse, stufenweise erhöhter Abschnitt eines Dämpfungsimpulses), erhöht werden (z. B. progressiv, inkrementell und/oder über eine Anzahl von Programmierzyklen).
  • Bei einer Ausführungsform schließt die Lese-/Schreibschaltung 228 eine Durchlassschaltung (nicht gezeigt) in 2 ein. Die Durchlassschaltung ist dafür eingerichtet, einen oder mehrere Durchlassimpulse an nicht gewählte Wortleitungen des Speicherarrays 226 abzugeben. Bei einer Ausführungsform ist die Durchlassschaltung dafür eingerichtet, eine Spannung nicht gewählter Wortleitungen nach Einleiten und während eines oder mehrerer Programmierimpulse zu erhöhen. Ein spezielleres Beispiel für das Erhöhen der Spannung nicht gewählter Wortleitungen nach Einleiten und während Programmierimpulsen wird im Zusammenhang mit 8 gegeben.
  • Bei einer Ausführungsform ist die Dämpfungsschaltung 234 dafür eingerichtet, die Spannung der Bitleitung zu erhöhen, nachdem mindestens 25 % einer Zeitdauer für den Programmierimpuls vergangen sind (z. B. 25 % der Zeitdauer des gesamten Programmierimpulses oder 25 % der Zeitdauer einer Spitze eines Programmierimpulses). Bei einer Ausführungsform ist die Dämpfungsschaltung 234 dafür eingerichtet, die Spannung der Bitleitung zu erhöhen, nachdem mindestens 50 % einer Zeitdauer für den Programmierimpuls vergangen sind (z. B. 50 % der Zeitdauer des gesamten Programmierimpulses oder 50 % der Zeitdauer einer Spitze eines Programmierimpulses). Eine andere Zeitplanung während eines Programmierimpulses kann verwendet werden. Bei einer Ausführungsform ist die Dämpfungsschaltung 234 dafür eingerichtet, das Erhöhen der Spannung der Bitleitung zu stoppen (z. B. Dämpfungsimpuls stoppen oder beenden), während simultan der Programmierimpuls beendet wird. Eine „Beendigung“ eines Programmierimpulses erfolgt, wenn der Programmierimpuls zu sinken beginnt oder wenn ein Wortleitungsimpuls nach einem Programmierimpuls zu einer Grundlinie (z. B. 0 V) zurückkehrt. Bei einer anderen Ausführungsform ist die Dämpfungsschaltung 234 dafür eingerichtet, das Erhöhen der Spannung der Bitleitung zu stoppen (z. B. Dämpfungsimpuls stoppen oder beenden), bevor der Programmierimpuls beendet wird.
  • Wie hierin verwendet, bedeutet der Begriff „simultan“ im Wesentlichen zur gleichen Zeit. Im Zusammenhang mit Impulsen kann „im Wesentlichen“ als plus minus 5 % einer Zeitdauer eines relevanten Impulses bei einer Ausführungsform oder plus minus 10 % einer Zeitdauer eines relevanten Impulses bei einer anderen Ausführungsform definiert werden. Wie hierin verwendet, bedeutet der Begriff „koinzident“ zeitlich überlappend. Wie hierin verwendet, bedeutet der Begriff „gleichzeitig“, dass mindestens zwei Ereignisse im Wesentlichen zur gleichen Zeit beginnen und enden.
  • Üblicherweise ist eine Steuerung 219 in derselben Speichervorrichtung 222 (z. B. einer entfernbaren Speicherkarte) wie das eine oder die mehreren Speicherchips 224 enthalten. Befehle und Daten werden zwischen dem Host und der Steuerung 219 über Bus 220 und zwischen der Steuerung 219 und dem einen oder den mehreren Speicherchips 224 über Leitungen 218 übertragen.
  • Die Steuerschaltung 210 arbeitet mit den Lese-/Schreibschaltungen 228 zusammen, um Speichervorgänge auf dem Speicherarray 226 auszuführen, und schließt eine Zustandsmaschine 212, einen On-Chip-Adressdecoder 214 und ein Leistungssteuermodul 216 ein. Die Zustandsmaschine 212 stellt eine Steuerung von Speichervorgängen auf Chipebene bereit. Der On-Chip-Adressdecoder 214 stellt eine Adressschnittstelle zwischen derjenigen, die vom Host oder einer Speichersteuerung verwendet wird, zu der Hardwareadresse, die von den Decodern 236 und 238 verwendet wird, bereit. Das Leistungssteuermodul 216 steuert die Leistung und Spannungen, die den Wortleitungen und Bitleitungen während Speichervorgängen zugeführt werden. Ein Speicher 213 kann ursprüngliche Schreibdaten, modifizierte Schreibdaten und Statusbits zur Verwendung durch die Zustandsmaschine 212 speichern.
  • Bei einigen Implementierungen können einige der Komponenten aus 2 kombiniert werden. Bei verschiedenen Konstruktionen können eine oder mehrere der Komponenten (allein oder in Kombination) mit Ausnahme von Speicherarray 226 als Verwaltungs- oder Steuerschaltung betrachtet werden. Zum Beispiel können eine oder mehrere Steuerschaltungen eine von oder eine Kombination von Steuerschaltung 210, Zustandsmaschine 212, Decodern 214/236/238, Leistungssteuermodul 216, Abtastblöcken 232, Lese-/Schreibschaltungen 228, Programmierschaltung 230, Abtastschaltung 232, Dämpfungsschaltung 234 und/oder Steuerung 219 usw. einschließen.
  • Bei einer anderen Ausführungsform verwendet ein nichtflüchtiges Speichersystem zwei Zeilen-/Spaltendecoder und Lese-/Schreibschaltungen. Die verschiedenen Peripherieschaltungen greifen auf gegenüberliegende Seiten des Speicherarrays 226 zu, so dass die Dichten der Zugriffsleitungen und -schaltungen auf jeder Seite um die Hälfte reduziert werden. Somit wird der Zeilendecoder in zwei Zeilendecoder und der Spaltendecoder in zwei Spaltendecoder aufgeteilt. In ähnlicher Weise werden die Lese-/Schreibschaltungen in Lese-/Schreibschaltungen, die mit Bitleitungen von der Unterseite der Lese-/Schreibschaltungen verbunden sind, die mit Bitleitungen von der Oberseite des Arrays 226 verbunden sind, aufgeteilt. Auf diese Weise wird die Dichte der Lese-/Schreibmodule im Wesentlichen um die Hälfte reduziert.
  • 3 zeigt einen Block NAND-Flash-Speicherzellen in dem Speicherarray 226 aus 2. Das Speicherarray 226 kann viele Blöcke einschließen. Ein veranschaulichender Block 300 schließt eine Anzahl von NAND-Ketten NS0 bis NS11 und entsprechende Bitleitungen, z. B. BL0 bis BL11, ein, die von den Blöcken gemeinsam genutzt werden. Jede NAND-Kette ist an einem Ende mit einem Drain-Auswahl-Gate (SGD) verbunden, und die Steuer-Gates der Drain-Auswahl-Gates sind über eine gemeinsame SGD-Leitung verbunden. Jede NAND-Kette ist an seinem anderen Ende mit einem Source-Auswahl-Gate verbunden, das wiederum mit einer gemeinsamen Source-Leitung 354 verbunden ist. Zum Beispiel schließt NS0 einen sourceseitigen Auswahl-Gate-Transistor 352 und einen drainseitigen Auswahl-Gate-Transistor 340 ein. Beispielhafte Speicherelemente 342, 344, 346, 348 und 350 befinden sich jeweils in NS0 bis NS4 und sind mit einer Wortleitung WL3 verbunden. Zum Beispiel könnte WL3 eine gewählte Wortleitung sein, die zum Programmieren gewählt ist, und können die beispielhaften Speicherelemente gewählte Speicherelemente sein, die zum Programmieren gewählt sind. Andere mit WL3 verbundene Speicherelemente können ebenfalls gewählte Speicherelemente sein. Vierundsechzig Wortleitungen, zum Beispiel WL0 bis WL63, erstrecken sich zwischen den sourceseitigen Auswahl-Gates und den drainseitigen Auswahl-Gates.
  • Die Abtastschaltung 232 schließt mehrere Abtastblöcke ein. In einem Ansatz wird ein Abtastblock für eine Gruppe von NAND-Ketten wie vier NAND-Ketten bereitgestellt. Zum Beispiel ist ein Abtastblock SB0 BL0 bis BL3 zugeordnet. Ein weiterer Abtastblock SB1 ist BL4 bis BL7 zugeordnet, und noch ein weiterer Abtastblock SB2 ist BL8 bis BL11 zugeordnet. Jede Abtastblock schließt eine Speichersteuerung, z. B. MC0, MC1 und MC2 in jeweils SB0, SB1, und SB2 ein. Jeder Abtastblock schließt auch ein Abtastmodul für jede NAND-Kette ein. Zum Beispiel können die Abtastmodule SM0, SM1 und SM2 jeweils in SB0, SB1 und SB2 eingeschlossen sein.
  • Andere Arten von nichtflüchtigen Speichern zusätzlich zu NAND-Flash-Speichern können ebenfalls verwendet werden. Zum Beispiel verwendet eine andere Art von Speicherzelle, die in Flash-EEPROM-Systemen nützlich ist, ein nichtleitendes dielektrisches Material anstelle eines leitfähigen Floating-Gates, um Ladung auf nichtflüchtige Weise zu speichern. Ein dreischichtiges Dielektrikum aus Siliziumoxid, Siliziumnitrid und Siliziumoxid („ONO“) ist zwischen einem leitenden Steuer-Gate und einer Oberfläche eines halbleitenden Substrats über dem Speicherzellenkanal angeordnet. Die Zelle wird programmiert, indem Elektronen aus dem Zellkanal in das Nitrid eingespritzt werden, wo sie eingefangen und in einem begrenzten Bereich gespeichert werden. Diese gespeicherte Ladung ändert dann die Vth eines Abschnitts des Kanals der Zelle auf nachweisbare Weise. Die Zelle wird durch Einspritzen heißer Löcher in das Nitrid gelöscht. Eine ähnliche Zelle kann in einer Split-Gate-Konfiguration bereitgestellt werden, bei der sich ein dotiertes Polysilizium-Gate über einem Abschnitt des Speicherzellenkanals erstreckt und dadurch einen separaten Auswahl-Transistor bildet. Eine andere Art von Speicher verwendet ein metallisches (leitfähiges) Ladungsspeicherelement in einer NAND-Architektur.
  • In einem anderen Ansatz werden NROM-Zellen verwendet. Zwei Bit werden zum Beispiel in jeder NROM-Zelle gespeichert, in der sich eine dielektrische ONO-Schicht über dem Kanal zwischen Source- und Drain-Diffusion erstreckt. Die Ladung für ein Datenbit ist in der an den Drain angrenzenden dielektrischen Schicht lokalisiert, und die Ladung für das andere Datenbit ist in der an die Source angrenzenden dielektrischen Schicht lokalisiert. Die Datenspeicherung in mehreren Zuständen wird durch separates Lesen binärer Zustände der physisch getrennten Ladungsspeicherbereiche innerhalb des Dielektrikums erreicht. Andere Arten nichtflüchtiger Speicher sind ebenfalls bekannt.
  • 4 ist ein Flussdiagramm, das ein Beispiel für ein Verfahren 400 zum Dämpfen von Speicherprogrammierung veranschaulicht. Bei einer Ausführungsform führt ein Speicherchip 224 das Verfahren 400 aus. Zum Beispiel wird das Verfahren 400 von einer Lese-/Schreibschaltung 228 des Speicherchips 224 aus 2 ausgeführt.
  • Speicherchip 224 (z. B. eine Schreibschaltung 228 oder Programmierschaltung 230) liefert 402 einen Schreibimpuls an eine gewählte Wortleitung. Dies wird wie in Verbindung mit 2 beschrieben erreicht. Ein „Schreibimpuls“ ist ein Spannungsimpuls (z. B. Programmierimpuls), der an eine Wortleitung angelegt wird, um Daten in eines oder mehrere Speicherelemente (z. B. Speicherzellen) zu schreiben oder zu programmieren. Zum Beispiel legt Speicherchip 224 (z. B. Schreibschaltung 228 oder Programmierschaltung 230) eine Spannung an eine gewählte Wortleitung an (z. B. an Steuer-Gates von Speicherzellen, die mit der gewählten Wortleitung verbunden sind). Speicherchip 224 kann mehrere Schreibimpulse liefern, um ein mit der gewählten Wortleitung verbundenes Speicherelement inkrementell auf eine Zielspannung zu programmieren. Die „Zielspannung“ ist eine Schwellenspannung, die einem Datenzustand entspricht, der Daten darstellt, die von der Schreibschaltung geschrieben (z. B. programmiert) werden. Bei einer Ausführungsform ist eine Triggerschwellenspannung zur Zielspannung versetzt (z. B. ist sie um einen Spannungsbetrag unterhalb der Zielspannung versetzt).
  • Speicherchip 224 bestimmt 404, ob eine Triggerschwellenspannung erfüllt ist. Dies wird wie in Verbindung mit 2 beschrieben erreicht. Zum Beispiel liefert Speicherchip 224 (z. B. Schreibschaltung 228 oder Abtastschaltung 232) einen Verifizierimpuls an die gewählte Wortleitung und bestimmt, ob eine Schwellenspannung eines oder mehrerer Speicherelemente (z. B. Speicherzellen) größer als die Triggerschwellenspannung ist. Falls die Triggerschwellenspannung nicht erfüllt ist, liefert 402 Speicherchip 224 einen weiteren Schreibimpuls. Wie zu beobachten, kann Speicherchip 224 (z. B. Schreibschaltung 228) Schreibimpulse abwechselnd mit Verifizierimpulsen an eine gewählte Wortleitung liefern, um ein Speicherelement (z. B. Speicherzelle) inkrementell auf eine Zielspannung zu programmieren.
  • In einem Fall, in dem die Triggerschwellenspannung erfüllt ist, liefert 406 der Speicherchip 224 (z. B. eine Schreibschaltung 228 oder Programmierschaltung 230) einen Schreibimpuls an eine gewählte Wortleitung. Dies wird wie in Verbindung mit 2 beschrieben erreicht.
  • Speicherchip 224 (z. B. Schreibschaltung 228, Dämpfungsschaltung 234) sendet 408 einen Bitleitungsimpuls (z. B. Dämpfungsimpuls) für ein Speicherelement (z. B. Speicherzelle), nachdem eine Spannung (z. B. Schwellenspannung) des Speicherelements die Triggerschwellenspannung erfüllt. Dies wird wie in Verbindung mit 2 beschrieben erreicht. Ein „Bitleitungsimpuls“ ist eine Spannung, die für eine bestimmte Zeitdauer an eine Bitleitung angelegt wird. Zum Beispiel beginnt der Bitleitungsimpuls nach Einleiten und während des entsprechenden (z. B. gelieferten 406) Programmierimpulses.
  • Der Speicherchip 224 bestimmt 410, ob das Schreiben abgeschlossen ist. Bei einer Ausführungsform zählt Speicherchip 224 eine Anzahl von Programmierimpulsen, die dem Speicherelement (z. B. Speicherzelle) bereitgestellt werden. Wenn die Zahl einen Schwellenwert erreicht, bestimmt Speicherchip 224, dass das Schreiben für dieses Speicherelement abgeschlossen ist und das Verfahren 400 endet. Bei einer anderen Ausführungsform führt Speicherchip 224 einen Verifiziervorgang durch (z. B. Abtasten des Speicherelements), um zu bestimmen, ob das Speicherelement eine Zielspannung aufweist. Wenn zum Beispiel der Verifiziervorgang anzeigt, dass das Speicherelement die Zielspannung erreicht hat, ist das Schreiben abgeschlossen und das Verfahren 400 endet.
  • Wenn das Schreiben nicht abgeschlossen ist, geht der Speicherchip 224 wieder dazu über, einen Schreibimpuls zu liefern 406 und nach Einleiten und während des Schreibimpulses einen Bitleitungsimpuls zu senden 408. Bei einer Ausführungsform nimmt die Zeitdauer jedes Bitleitungsimpulses zu, wenn sich die Spannung des Speicherelements (z. B. Speicherzelle) der Zielspannung nähert.
  • Bei einer Ausführungsform schließt das Verfahren 400 ferner ein, dass durch den Speicherchip 224 (z. B. Schreibschaltung 228) mindestens ein Durchlassimpuls zu nicht gewählten Wortleitungen nach Einleiten und während eines koinzidenten Schreibimpulses schrittweise erhöht wird. Der Speicherchip 224 kann den oder die Durchlassimpuls(e) während eines oder mehrerer Schreibimpulse schrittweise erhöhen, nachdem die Triggerschwellenspannung erfüllt ist.
  • 5 ist ein Zeitdiagramm, das ein Beispiel für das Erhöhen einer Bitleitungsspannung während Programmierimpulsen veranschaulicht. Das Zeitdiagramm schließt eine Drain-Auswahl-Gate-Spannung (SGD) 556, eine Bitleitungssperrspannung (BL) 558, eine Bitleitungsprogrammierspannung (BL) 560 und eine gewählte Wortleitungsspannung (SeL WLn) 562 ein. Zur Einfachheit können SGD-Spannungsimpulse eine Amplitude oder Spannung aufweisen, die als „VS“ oder „VSG“ bezeichnet wird, können BL-Spannungsimpulse eine Amplitude oder Spannung aufweisen, die als „VB“ oder „VBLC“ bezeichnet wird, können Programmierimpulse eine Amplitude oder Spannung aufweisen, die als „VP“ oder „VPGM“ bezeichnet wird und können Verifizierimpulse als „Verif.“ bezeichnet werden. Die Verifizierimpulse können auf einem oder mehreren unterschiedlichen Niveaus liegen, um unterschiedliche Zustände zu verifizieren. Bei einer Ausführungsform liefert die Programmierschaltung 230 Programmierimpulse (VP) an die gewählte Wortleitung, liefert die Abtastschaltung 232 Verifizierimpulse (Verif.) an die gewählte Wortleitung und liefert die Dämpfungsschaltung 234 Dämpfungsimpulse an die Bitleitung(en), die programmiert werden. Für eines oder mehrere Speicherelemente (z. B. Speicherzellen), die nicht programmiert werden, sperrt die Bitleitungssperrspannung 558 das Programmieren während Sperrimpulsen (INH). Für eines oder mehrere Speicherelemente (z. B. Speicherzellen), die programmiert werden, wird die Bitleitungsprogrammierspannung 560 niedrig gehalten (0 V), damit sich während eines Programmierimpulses (VP) auf einer gewählten Wortleitung eine Ladung auf dem Floating-Gate ansammeln kann. In diesem Beispiel wird ein Speicherelement (z. B. Speicherzelle) auf einen bestimmten Zustand programmiert (als „A-Zustand“ bezeichnet). Bei einer Ausführungsform basiert die Impulszeitsteuerung auf einem Taktgeber. Zum Beispiel hat jeder Impuls eine Dauer von einem oder mehreren Taktzyklen (und/oder einem Abschnitt eines Taktzyklus).
  • Wie in 5 veranschaulicht, wird eine Bitleitungsprogrammierspannung 560 niedrig gehalten (0 V) und eine Bitleitungssperrspannung 558 erhöht, während die gewählte Wortleitungsspannung 562 einen Programmierimpuls (VP) einschließt. Bei einer Ausführungsform kann eine Anzahl von Programmierimpulsen (VP) auf einer gewählten Wortleitung geliefert werden, bevor Verifizierimpulse (Verif.) an die gewählte Wortleitung geliefert werden. Bitleitungsimpulse (VB) werden in der Bitleitungssperrspannung 558 und der Bitleitungsprogrammierspannung 560 koinzident mit den Verifizierimpulsen geliefert.
  • Wenn Spannungen von Speicherelementen (z. B. Speicherzellen) von entsprechenden Zielspannungen entfernt sind (z. B. bevor eine Triggerschwellenspannung erfüllt ist), beträgt die Bitleitungsprogrammierspannung 560 0 V (koinzident mit Programmierimpulsen der gewählten Wortleitungsspannung 562). Wenn Speicherelemente (z. B. Speicherzellen) nahe an den entsprechenden Zielspannungen liegen (z. B. wenn eine Triggerschwellenspannung erfüllt ist), wird die Bitleitungsprogrammierspannung 560 (z. B. BL-Vorspannung) nach Einleiten und während entsprechender Programmierimpulse (VP) schrittweise erhöht. Zum Beispiel erhöht die Dämpfungsschaltung 234 die Bitleitungsprogrammierspannung 560 schrittweise auf etwa VB, 0,5 V oder eine andere Spannung (z. B. haben die Dämpfungsimpulse Amplituden von etwa 0,5 V). Eine Zeitmenge „PD1“ ist eine Zeitdauer eines Programmierimpulses oder eines Abschnitts eines Impulses (z. B. Anstieg und Impulsspitze). Bei einer Ausführungsform wird jeder Programmierimpuls 566a-c jedes Mal eingeleitet, wenn die gewählte Spannung der Wortleitungsspannung 562 von einer Grundlinienspannung, einer Stufenspannung oder einer anderen Spannung (z. B. 0 V, 10 V oder andere Spannung) zum Programmieren (z. B. und nicht zum Verifizieren) ansteigt. Zum Beispiel beginnt jeder Programmierimpuls 566a-c nach einem Schritt und steigt später auf eine Impulsspitze (VP) an. In einem Beispiel wird die gewählte Wortleitung schrittweise erst von einer Grundlinienspannung (0 V) auf -10 V, dann auf eine Spitzenspannung oder endgültige Programmierspannung (z. B. 16 V ~21V) erhöht. Bei einer anderen Ausführungsform kann ein Schritt erst erfolgen, wenn der Programmierimpuls eingeleitet wird. Wie in 5 veranschaulicht, steigt die Programmierimpulsspitze bei einer Ausführungsform über eine Reihe von Programmierzyklen an. In dem Beispiel von 5 entspricht PD1 einer Zeitdauer (oder Dauer) einer Programmierimpulsspitze für jeden Programmierimpuls 566a-c.
  • Bei einer Ausführungsform wird eine Zeitdauer eines Spannungsanstiegs (z. B. schrittweises Erhöhen oder Dämpfungsimpuls) als Δ bezeichnet. Wie in 5 veranschaulicht, beginnt jeder Dämpfungsimpuls 564a-c nach Einleiten und während eines entsprechenden Programmierimpulses 566a-c. In dem Beispiel von 5 entspricht ein erster Dämpfungsimpuls 564a einem ersten Programmierimpuls 566a, hat eine erste Zeitdauer 568a und/oder beginnt bei PD1-Δ (z. B. PD1 - 1 µs) für einen ersten Zyklus. Ein zweiter Dämpfungsimpuls 564b entspricht einem zweiten Programmierimpuls 566b, hat eine zweite Zeitdauer 568b und/oder beginnt bei PD1-Δ (z. B. PD1 - 1 µs) für einen zweiten Zyklus. Ein dritter Dämpfungsimpuls 564c entspricht einem dritten Programmierimpuls 566c, hat eine dritte Zeitdauer 568c und/oder beginnt bei PD1-Δ (z. B. PD1 - 1 µs) für einen dritten Zyklus. Diese Prozedur wird wiederholt, bis die Zustände vollständig gebildet sind (z. B. bis die Speicherzellen vollständig programmiert sind). In dem Beispiel von 5 wird die Prozedur wiederholt, bis die A-Zustand-Programmierung abgeschlossen ist.
  • In diesem Beispiel sind die Zeitdauern 568a-c der Dämpfungsimpulse 564a-c von gleicher Dauer. Jeder Dämpfungsimpuls 564a-c beginnt nach Einleiten und während entsprechender Programmierimpulse 566a-c. Jeder Dämpfungsimpuls 564a-c verringert die entsprechende effektive Programmierimpulslänge (auf PD1-Δ). Entsprechend wird die Programmiergeschwindigkeit der Speicherelemente (z. B. Speicherzellen) verlangsamt. Bei einer Ausführungsform bestimmt die Dämpfungsschaltung 234 die Dämpfungsimpulszeitgebung auf Basis der Beendiungszeitgebung eines entsprechenden Programmierimpulses. Zum Beispiel wird die Startzeit eines ersten Dämpfungsimpulses 564a als die Beendigungszeit des entsprechenden Programmierimpulses 566a abzüglich Δ bestimmt. Bei einer Ausführungsform bestimmt die Dämpfungsschaltung 234 die Dämpfungsimpulszeitgebung auf Basis der Startzeitgebung eines entsprechenden Programmierimpulses. Zum Beispiel wird die Startzeit eines ersten Dämpfungsimpulses 564a als die Startzeit des entsprechenden Programmierimpulses 566a zuzüglich einer Zeitmenge bestimmt (z. B. Prozentsatz der Zeitdauer oder Dauer des Programmierimpulses 566a). Bei einer Ausführungsform bestimmt die Dämpfungsschaltung 234 die Dämpfungsimpulszeitgebung auf Basis eines gemeinsamen Taktgebers zwischen Bitleitungsprogrammierspannung 560 und der gewählten Wortleitungsspannung 562. Zum Beispiel wird die Startzeit eines ersten Dämpfungsimpulses 564a als eine Anzahl von Taktzyklen (und/oder ein Abschnitt eines Taktzyklus) nach der Startzeit des entsprechenden Programmierimpulses 566a bestimmt.
  • 6 ist ein Zeitdiagramm, das ein weiteres Beispiel für das Erhöhen einer Bitleitungsspannung während Programmierimpulsen veranschaulicht. Das Zeitdiagramm schließt eine Drain-Auswahl-Gate-Spannung (SGD) 656, eine Bitleitungssperrspannung (BL) 658, eine Bitleitungsprogrammierspannung (BL) 660 und eine gewählte Wortleitungsspannung (SeL WLn) 662 ein. Bei einer Ausführungsform liefert die Programmierschaltung 230 Programmierimpulse (VP) an die gewählte Wortleitung, liefert die Abtastschaltung 232 Verifizierimpulse (Verif.) an die gewählte Wortleitung und liefert die Dämpfungsschaltung 234 Dämpfungsimpulse an die Bitleitung(en), die programmiert werden. Die Verifizierimpulse können auf einem oder mehreren unterschiedlichen Niveaus liegen, um unterschiedliche Zustände zu verifizieren. Für eines oder mehrere Speicherelemente (z. B. Speicherzellen), die nicht programmiert werden, sperrt die Bitleitungssperrspannung 658 das Programmieren während Sperrimpulsen (INH). Für eines oder mehrere Speicherelemente (z. B. Speicherzellen), die programmiert werden, wird die Bitleitungsprogrammierspannung 660 niedrig gehalten (0 V), damit sich während eines Programmierimpulses (VP) auf einer gewählten Wortleitung eine Ladung auf dem Floating-Gate ansammeln kann. In diesem Beispiel wird ein Speicherelement (z. B. Speicherzelle) auf einen bestimmten Zustand programmiert (als „A-Zustand“ bezeichnet).
  • Wie in 6 veranschaulicht, wird eine Bitleitungsprogrammierspannung 660 niedrig gehalten (0 V) und eine Bitleitungssperrspannung 658 erhöht, während die gewählte Wortleitungsspannung 662 einen Programmierimpuls (VP) einschließt. Bei einer Ausführungsform kann eine Anzahl von Programmierimpulsen (VP) auf einer gewählten Wortleitung geliefert werden, bevor Verifizierimpulse (Verif.) an die gewählte Wortleitung geliefert werden. Bitleitungsimpulse (VB) werden in der Bitleitungssperrspannung 658 und der Bitleitungsprogrammierspannung 660 koinzident mit den Verifizierimpulsen geliefert.
  • Wenn Spannungen von Speicherelementen (z. B. Speicherzellen) von entsprechenden Zielspannungen entfernt sind (z. B. bevor eine Triggerschwellenspannung erfüllt ist), beträgt die Bitleitungsprogrammierspannung 660 0 V (koinzident mit Programmierimpulsen der gewählten Wortleitungsspannung 662). Wenn Speicherelemente (z. B. Speicherzellen) nahe an den entsprechenden Zielspannungen liegen (z. B. wenn eine Triggerschwellenspannung erfüllt ist), wird die Bitleitungsprogrammierspannung 660 (z. B. BL-Vorspannung) nach Einleiten und während entsprechender Programmierimpulse (VP) schrittweise erhöht. Zum Beispiel erhöht die Dämpfungsschaltung 234 die Bitleitungsprogrammierspannung 660 schrittweise auf etwa VB, 0,5 V oder eine andere Spannung (z. B. haben die Dämpfungsimpulse Amplituden von etwa 0,5 V). Bei einer Ausführungsform wird jeder Programmierimpuls 666a-c jedes Mal eingeleitet, wenn die gewählte Wortleitungsspannung 662 von einer Grundlinienspannung, einer Stufenspannung oder einer anderen Spannung (z.B. 0 V, 10 V oder einer anderen Spannung) zum Programmieren (z. B. und nicht zum Verifizieren) ansteigt. Zum Beispiel beginnt jeder Programmierimpuls 666a-c mit einem Schritt und steigt auf eine Impulsspitze an. Wie in 6 veranschaulicht, steigt die Programmierimpulsspitze bei einer Ausführungsform über eine Reihe von Programmierzyklen an. In dem Beispiel von 6 entspricht PD1 einer Zeitdauer (oder Dauer) einer Programmierimpulsspitze für jeden Programmierimpuls 666a-c.
  • Bei einer Ausführungsform ist die Dämpfungsschaltung 234 dafür eingerichtet (nachdem eine Spannung der Speicherzelle die Triggerschwellenspannung erfüllt), eine Zeitdauer Δ von Dämpfungsimpulsen auf der Bitleitung, die programmiert wird, nach Einleiten und während jedes der jeweiligen Programmierimpulse progressiv zu erhöhen. Wie in 6 veranschaulicht, beginnt jeder Dämpfungsimpuls 664a-c nach Einleiten und während eines entsprechenden Programmierimpulses 666a-c. In dem Beispiel von 6 entspricht ein erster Dämpfungsimpuls 664a einem ersten Programmierimpuls 666a, hat eine erste Zeitdauer 668a und/oder beginnt bei PD1-Δ (z. B. PD1 - 1 µs) für einen ersten Zyklus. Ein zweiter Dämpfungsimpuls 664b entspricht einem zweiten Programmierimpuls 666b, hat eine zweite Zeitdauer 668b und/oder beginnt bei PD1-2Δ (z. B. PD1 - 2 µs) für einen zweiten Zyklus. Ein dritter Dämpfungsimpuls 664c entspricht einem dritten Programmierimpuls 666c, hat eine dritte Zeitdauer 668c und/oder beginnt bei PD1-3Δ (z. B. PD1 - 3 µs) für einen dritten Zyklus. Diese Prozedur wird wiederholt, bis die Zustände vollständig gebildet sind (z. B. bis die Speicherzellen vollständig programmiert sind). In dem Beispiel von 6 wird die Prozedur wiederholt, bis die A-Zustand-Programmierung abgeschlossen ist.
  • In diesem Beispiel werden die Zeitdauern 668a-c der Dämpfungsimpulse 664a-c im Laufe von Programmierzyklen länger. Bei einer Ausführungsform kann die Zunahme der Dauer gleichmäßig sein (z. B. + 1 µs pro Programmierzyklus). Jeder Dämpfungsimpuls 664a-c beginnt nach Einleiten und während entsprechender Programmierimpulse 666a-c. Jeder Dämpfungsimpuls 664a-c reduziert die entsprechende effektive Programmierimpulslänge (auf PD1-Δ, dann PD1-2Δ und dann PD1-3Δ). Entsprechend wird die Programmiergeschwindigkeit der Speicherelemente (z. B. Speicherzellen) zunehmend verlangsamt. Bei einer Ausführungsform bestimmt die Dämpfungsschaltung 234 die Dämpfungsimpulszeitgebung auf Basis der Beendiungszeitgebung eines entsprechenden Programmierimpulses. Zum Beispiel wird die Startzeit eines ersten Dämpfungsimpulses 664a als Beendigungszeit des entsprechenden Programmierimpulses 666a abzüglich Δ, 2Δ, 3Δ usw. bestimmt. Bei einer Ausführungsform bestimmt die Dämpfungsschaltung 234 die Dämpfungsimpulszeitgebung auf Basis der Startzeitgebung eines entsprechenden Programmierimpulses. Zum Beispiel wird die Startzeit eines ersten Dämpfungsimpulses 664a als die Startzeit des entsprechenden Programmierimpulses 666a zuzüglich einer Zeitmenge bestimmt (z. B. Prozentsatz der Zeitdauer oder Dauer des Programmierimpulses 666a). Bei einer Ausführungsform bestimmt die Dämpfungsschaltung 234 die Dämpfungsimpulszeitgebung auf Basis eines gemeinsamen Taktgebers zwischen Bitleitungsprogrammierspannung 660 und der gewählten Wortleitungsspannung 662. Zum Beispiel wird die Startzeit eines ersten Dämpfungsimpulses 664a als eine Anzahl von Taktzyklen (und/oder ein Abschnitt eines Taktzyklus) nach der Startzeit des entsprechenden Programmierimpulses 666a bestimmt. Wie in 6 veranschaulicht, nehmen die Zeitdauern der Dämpfungsimpulse 664a-c linear zu (z. B. gleicher Anstieg pro Programmierzyklus). Bei einer alternativen Ausführungsform (nicht veranschaulicht) nehmen die Zeitdauern der Dämpfungsimpulse 664a-c nichtlinear zu.
  • 7 ist ein Zeitdiagramm, das ein Beispiel für das Erhöhen einer Bitleitungsspannung während Programmierimpulsen für mehrere Zustände veranschaulicht. Das Zeitdiagramm enthält eine Drain-Auswahl-Gate-Spannung (SGD) 756, eine Bitleitungssperrspannung (BL) 758, eine A-Zustand-Bitleitungsprogrammierspannung (BL (A)) 760a, eine B-Zustand-Bitleitungsprogrammierspannung (BL (B)) 760b, eine C-Zustand-Bitleitungsprogrammierspannung (BL (C)) 760c, eine gewählte Wortleitungsspannung (SeL WLn) 762, nicht gewählte Wortleitungsspannungen (UnseL WLs) 770, eine Source-Auswahl-Gate-Spannung (SGS) 772 und eine Zellen-Source-Spannung (CELSRC) 774 im Zeitverlauf. Bei einer Ausführungsform liefert die Programmierschaltung 230 Programmierimpulse (VP) an die gewählte Wortleitung, liefert die Abtastschaltung 232 Verifizierimpulse (AV, ABV, BCV, CV) an die gewählte Wortleitung und liefert die Dämpfungsschaltung 234 Dämpfungsimpulse an die Bitleitung(en), die programmiert werden. Die Verifizierimpulse können auf einem oder mehreren unterschiedlichen Niveaus liegen, um unterschiedliche Zustände zu verifizieren. Zum Beispiel wird ein Verifizierimpuls AV verwendet, um einen A-Zustand zu verifizieren, wird ein Verifizierimpuls ABV verwendet, um einen A- und B-Zustand zu verifizieren, wird ein Verifizierimpuls BCV verwendet, um einen B- und C-Zustand zu verifizieren, und wird ein Verifizierimpuls CV verwendet, um einen C-Zustand zu verifizieren. Bei einer Ausführungsform liefert eine Durchlassschaltung Durchlassimpulse (VPS oder VPASS) und/oder Leseimpulse (VR oder VREAD) an nicht gewählte Wortleitungen. Zum Beispiel schließen die nicht gewählten Wortleitungsspannungen 770 Durchlassimpulse ein, die mit Programmierimpulsen (VP) auf der gewählten Wortleitung koinzident (z. B. gleichzeitig) sind, und/oder schließen Leseimpulse ein, die mit Verifizierimpulsen (AV, ABV, BCV, CV) auf der gewählten Wortleitung koinzident (z. B. gleichzeitig) sind. Bei einer Ausführungsform werden PROGSRC (PR)- und VCELSRC (VC)-Impulse in der CELSRC-Spannung 774 geliefert. Die CELSRC-Spannung 774 ist eine Source-Leitungsspannung. Eine Source-Leitungsspannung kann nicht vorgespannt sein (bei 0 V) oder eine Spannung von mehr als 0 V haben. In dem in 7 veranschaulichten Beispiel kann die CELSRC-Spannung 774 eine Spannung während des Programmierens sein, die als PROGSRC bezeichnet wird (z. B. etwa 2 V). Während des Abtastens (z. B. Lesen oder Verifizieren) kann die CELSRC-Spannung 774 als VCELSRC bezeichnet werden (z. B. etwa 1 V). Für eines oder mehrere Speicherelemente (z. B. Speicherzellen), die nicht programmiert werden, sperrt die Bitleitungssperrspannung 758 das Programmieren während Sperrimpulsen (INH). Für eines oder mehrere Speicherelemente (z. B. Speicherzellen), die programmiert werden, werden die Bitleitungsprogrammierspannungen 760a-c niedrig gehalten (0 V), damit sich während eines Programmierimpulses (VP) auf einer gewählten Wortleitung eine Ladung auf dem Floating-Gate aufbauen kann. In diesem Beispiel werden Speicherelemente (z. B. Speicherzellen) 761 auf bestimmte Zustände (als „A-Zustand“, „B-Zustand“ und „C-Zustand“ bezeichnet) programmiert, wie durch die Bitleitungsspannungen 760a-c angegeben.
  • Wie in 7 veranschaulicht, werden Bitleitungsprogrammierspannungen 760a-c niedrig gehalten (0 V) und eine Bitleitungssperrspannung 758 erhöht, während die gewählte Wortleitungsspannung 762 einen Programmierimpuls (VP) einschließt. Bei einer Ausführungsform kann eine Anzahl von Programmierimpulsen (VP) auf einer gewählten Wortleitung geliefert werden, bevor Verifizierimpulse (Verif.) an die gewählte Wortleitung für einen bestimmten Zustand geliefert werden. Bitleitungsimpulse (VB) werden in der Bitleitungssperrspannung 758 und den Bitleitungsprogrammierspannungen 760a-c koinzident mit den Verifizierimpulsen (AV, ABV, BCV, CV) geliefert.
  • Bei einer Ausführungsform erfolgt eine zustandsabhängige Feinprogrammierung, wie in 7 veranschaulicht. Die Dämpfungsschaltung 234 kann Dämpfungsimpulse mit zunehmenden Zeitdauern abhängig von dem Zustand liefern, der programmiert wird. Zum Beispiel wird eine erste Bitleitungsspannung 760a während des Programmierens (z. B. PD1 oder Programmiertaktgeber) schrittweise erhöht (z. B. werden Dämpfungsimpulse 764a-c geliefert). Die Zeitdauer der Dämpfungsimpulse 764a-c nimmt während der A-Zustand-Feinprogrammierung (z. B. von 1 µs auf 3 µs) zu. Eine zweite Bitleitungsspannung 760b wird während des Programmierens (z. B. PD1 oder Programmiertaktgeber) schrittweise erhöht (z. B. werden Dämpfungsimpulse 764d-f geliefert). Die Zeitdauer der Dämpfungsimpulse 764d-f nimmt während der B-Zustand-Feinprogrammierung (z. B. von 1 µs auf 3 µs) zu. Eine zweite Bitleitungsspannung 760c wird während des Programmierens (z. B. PD1 oder Programmiertaktgeber) schrittweise erhöht (z. B. werden Dämpfungsimpulse 764g-i geliefert). Die Zeitdauer der Dämpfungsimpulse 764g-i nimmt während der C-Zustand-Feinprogrammierung (z. B. von 1 µs auf 3 µs) zu. Wie in 7 veranschaulicht, kann Feinprogrammierung zwischen Zuständen überlappen. Zum Beispiel liegt der B-Zustand auf einer höheren Schwellenspannung als der A-Zustand und liegt der C-Zustand auf einer höheren Schwellenspannung als der B-Zustand. Entsprechend erfolgt A-Zustand-Feinprogrammierung (z. B. Dämpfungsimpuls 764a) vor B-Zustand-Feinprogrammierung (z. B. Dämpfungsimpuls 764d), die vor C-Zustand-Feinprogrammierung erfolgt (z. B. Dämpfungsimpuls 764g).
  • 8 ist ein Zeitdiagramm, das ein Beispiel für Durchlassimpulsverstärkung während Programmierimpulsen veranschaulicht. Das Zeitdiagramm schließt eine Drain-Auswahl-Gate-Spannung (SGD) 856, eine Bitleitungssperrspannung (BL) 858, eine Bitleitungsprogrammierspannung (BL) 860, eine gewählte Wortleitungsspannung (SeL WLn) 862 und eine nicht gewählte Wortleitungsspannung (UnseL WLn) 870 im Zeitverlauf ein. Bei einer Ausführungsform liefert die Programmierschaltung 230 Programmierimpulse (VP) an die gewählte Wortleitung, liefert die Abtastschaltung 232 Verifizierimpulse (Verif.) an die gewählte Wortleitung und liefert die Dämpfungsschaltung 234 Dämpfungsimpulse an die Bitleitung(en), die programmiert werden. Die Verifizierimpulse können auf einem oder mehreren unterschiedlichen Niveaus liegen, um unterschiedliche Zustände zu verifizieren. Bei einer Ausführungsform liefert eine Durchlassschaltung Durchlassimpulse (VPS oder VPASS) und/oder Leseimpulse (VR oder VREAD) an nicht gewählte Wortleitungen. Zum Beispiel schließen die nicht gewählten Wortleitungsspannungen 870 Durchlassimpulse ein, die mit Programmierimpulsen (VP) auf der gewählten Wortleitung koinzident (z. B. gleichzeitig) sind, und/oder schließen Leseimpulse ein, die mit Verifizierimpulsen auf der gewählten Wortleitung koinzident (z. B. gleichzeitig) sind. Für eines oder mehrere Speicherelemente (z. B. Speicherzellen), die nicht programmiert werden, sperrt die Bitleitungssperrspannung 858 das Programmieren während Sperrimpulsen (INH). Für eines oder mehrere Speicherelemente (z. B. Speicherzellen), die programmiert werden, wird die Bitleitungsprogrammierspannung 860 niedrig gehalten (0 V), damit sich während eines Programmierimpulses (VP) auf einer gewählten Wortleitung eine Ladung auf dem Floating-Gate aufbauen kann. In diesem Beispiel wird ein Speicherelement (z. B. Speicherzelle) auf einen bestimmten Zustand programmiert (als „A-Zustand“ bezeichnet).
  • Wie in 8 veranschaulicht, wird eine Bitleitungsprogrammierspannung 860 niedrig gehalten (0 V) und eine Bitleitungssperrspannung 858 erhöht, während die gewählte Wortleitungsspannung 862 einen Programmierimpuls (VP) einschließt. Bei einer Ausführungsform kann eine Anzahl von Programmierimpulsen (VP) auf einer gewählten Wortleitung geliefert werden und/oder kann eine Anzahl von Durchlassimpulsen (VPS) auf nicht gewählten Wortleitungen geliefert werden, bevor Verifizierimpulse (Verif.) an die gewählte Wortleitung geliefert werden. Bitleitungsimpulse (VB) werden in der Bitleitungssperrspannung 858 und der Bitleitungsprogrammierspannung 860 koinzident mit den Verifizierimpulsen geliefert.
  • Wenn Spannungen von Speicherelementen (z. B. Speicherzellen) von entsprechenden Zielspannungen entfernt sind (z. B. bevor eine Triggerschwellenspannung erfüllt ist), beträgt die Bitleitungsprogrammierspannung 860 0 V (koinzident mit Programmierimpulsen der gewählten Wortleitungsspannung 862). Wenn Speicherelemente (z. B. Speicherzellen) nahe an den entsprechenden Zielspannungen liegen (z. B. wenn eine Triggerschwellenspannung erfüllt ist), wird die Bitleitungsprogrammierspannung 860 (z. B. BL-Vorspannung) nach Einleiten und während entsprechender Programmierimpulse (VP) schrittweise erhöht. Zum Beispiel erhöht die Dämpfungsschaltung 234 die Bitleitungsprogrammierspannung 860 schrittweise auf etwa VDD, 3 V oder eine andere Spannung (z. B. haben die Dämpfungsimpulse Amplituden von etwa 3 V oder VDD). Bei einer Ausführungsform wird jeder Programmierimpuls 866a-c jedes Mal eingeleitet, wenn die gewählte Wortleitungsspannung 862 von einer Grundlinienspannung, einer Stufenspannung oder einer anderen Spannung (z. B. 0 V, 10 V) zum Programmieren (z. B. und nicht zum Verifizieren) ansteigt. Zum Beispiel beginnt jeder Programmierimpuls 866a-c mit einem Schritt und steigt später auf eine Programmierimpulsspitze an. Wie in 8 veranschaulicht, steigt die Programmierimpulsspitze bei einer Ausführungsform über eine Reihe von Programmierzyklen an. In dem Beispiel von 8 entspricht PD1 einer Zeitdauer (oder Dauer) einer Programmierimpulsspitze für jeden Programmierimpuls 866a-c.
  • Bei einer Ausführungsform ist die Dämpfungsschaltung 234 dafür eingerichtet (nachdem eine Spannung der Speicherzelle die Triggerschwellenspannung erfüllt), eine Zeitdauer Δ von Dämpfungsimpulsen auf der Bitleitung, die programmiert wird, nach Einleiten und während jedes der jeweiligen Programmierimpulse progressiv zu erhöhen. Wie in 8 veranschaulicht, beginnt jeder Dämpfungsimpuls 864a-c nach Einleiten und während eines entsprechenden Programmierimpulses 866a-c. In dem Beispiel von 8 entspricht ein erster Dämpfungsimpuls 864a einem ersten Programmierimpuls 866a, hat eine erste Zeitdauer 868a und/oder beginnt bei PD1-Δ (z. B. PD1 - 1 µs) für einen ersten Zyklus. Ein zweiter Dämpfungsimpuls 864b entspricht einem zweiten Programmierimpuls 866b, hat eine zweite Zeitdauer 868b und/oder beginnt bei PD1-2Δ (z. B. PD1 - 2 µs) für einen zweiten Zyklus. Ein dritter Dämpfungsimpuls 864c entspricht einem dritten Programmierimpuls 866c, hat eine dritte Zeitdauer 868c und/oder beginnt bei PD1-3Δ (z. B. PD1 - 3 µs) für einen dritten Zyklus. Diese Prozedur wird wiederholt, bis die Zustände vollständig gebildet sind (z. B. bis die Speicherzellen vollständig programmiert sind). In dem Beispiel von 8 wird die Prozedur wiederholt, bis die A-Zustand-Programmierung abgeschlossen ist.
  • In diesem Beispiel werden die Zeitdauern 868a-c der Dämpfungsimpulse 864a-c im Laufe von Programmierzyklen länger. Bei einer Ausführungsform kann die Zunahme der Dauer gleichmäßig sein (z. B. + 1 µs pro Programmierzyklus). Jeder Dämpfungsimpuls 864a-c beginnt nach Einleiten und während entsprechender Programmierimpulse 866a-c. Jeder Dämpfungsimpuls 864a-c reduziert die entsprechende effektive Programmierimpulslänge (auf PD1-Δ, dann PD1-2Δ und dann PD1-3Δ). Entsprechend wird die Programmiergeschwindigkeit der Speicherelemente (z. B. Speicherzellen) zunehmend verlangsamt.
  • Bei einer Ausführungsform ist die Durchlassschaltung (die zum Beispiel in der Lese-/Schreibschaltung 228 eingeschlossen ist) dafür eingerichtet, Durchlassimpulse auf nicht gewählte Wortleitungen zu erhöhen, nachdem mindestens einer der Programmierimpulse eingeleitet und eingebrannt wurde. In dem Beispiel von 8 erhöht, nachdem die Spannung der Speicherzelle die Triggerschwellenspannung erfüllt hat, die Durchlassschaltung die Durchlassimpulse 876a-c in der nicht gewählten Wortleitungsspannung 870. Bei einer Ausführungsform erhöht die Durchlassschaltung mindestens einen der Durchlassimpulse (auf die nicht gewählten Wortleitungen) nach Einleiten und während mindestens eines der Programmierimpulse inkrementell. Die inkrementellen Erhöhungen können gleichmäßig (z. B. um eine Spannung δ) oder unterschiedlich sein. Die inkrementellen Erhöhungen können in einer Reihe von Schritten erfolgen, wobei jeder Schritt eine Zeitdauer hat. Jede Zeitdauer kann gleich oder unterschiedlich lang sein. Zum Beispiel kann jede Schrittzeitdauer den Änderungen der Dämpfungsimpulszeitdauer über eine Anzahl von Programmierzyklen entsprechen. Zum Beispiel ist die Zeitdauer jedes der Dämpfungsimpulse 864a-c gleich einer oder mehreren der Zeitdauern der Schritte der (schrittweise erhöhten) Durchlassimpulse 876a-c. Wie in 8 veranschaulicht, nehmen die Zeitdauern und/oder Amplitude der Schritte der (schrittweise erhöhten) Durchlassimpulse 876a-c linear zu. Bei einer alternativen Ausführungsform (nicht veranschaulicht) nehmen die Zeitdauern und/oder Amplitude dieser Schritte der (schrittweise erhöhten) Durchlassimpulse 876a-c nicht linear zu.
  • In dem in 8 veranschaulichten Beispiel ist die Durchlassschaltung dafür eingerichtet, die Durchlassimpulse 876a-c in mehreren Schritten während der Programmierimpulse 866a-c zu erhöhen, wobei jeder Schritt eine Zeitdauer hat. Zum Beispiel steigt jeder schrittweise erhöhte Durchlassimpuls 876a-c bei PD1-3Δ, PD1-2Δ, PD1-1Δ progressiv auf VPASS+δ, VPASS+2δ, VPASS+3δ. Die schrittweise erhöhten Durchlassimpulse 876a-c können eine zusätzliche Durchlassimpulsverstärkung (z. B. Kanalverstärkung) bereitstellen, um das Kanalpotential größer als die Drain-Auswahl-Gate-Spannung (VSGD) abzüglich der Schwellenspannung eines Drain-Auswahl-Gate-Transistors (z. B. VSGD-Vt) zu machen.
  • 9 ist ein Zeitdiagramm, das ein weiteres Beispiel für Durchlassimpulsverstärkung während Programmierimpulsen veranschaulicht. Das Zeitdiagramm schließt eine Drain-Auswahl-Gate-Spannung (SGD) 956, eine Bitleitungssperrspannung (BL) 958, eine Bitleitungsprogrammierspannung (BL) 960, eine gewählte Wortleitungsspannung (SeL WLn) 962 und eine nicht gewählte Wortleitungsspannung (UnseL WLn) 970 im Zeitverlauf ein. Bei einer Ausführungsform liefert die Programmierschaltung 230 Programmierimpulse (VP) an die gewählte Wortleitung, liefert die Abtastschaltung 232 Verifizierimpulse (Verif.) an die gewählte Wortleitung und liefert die Dämpfungsschaltung 234 Dämpfungsimpulse an die Bitleitung(en), die programmiert werden. Die Verifizierimpulse können auf einem oder mehreren unterschiedlichen Niveaus liegen, um unterschiedliche Zustände zu verifizieren. Bei einer Ausführungsform liefert eine Durchlassschaltung Durchlassimpulse (VPS oder VPASS) und/oder Leseimpulse (VR oder VREAD) an nicht gewählte Wortleitungen. Zum Beispiel schließen die nicht gewählten Wortleitungsspannungen 970 Durchlassimpulse ein, die mit Programmierimpulsen (VP) auf der gewählten Wortleitung koinzident (z. B. gleichzeitig) sind, und/oder schließen Leseimpulse ein, die mit Verifizierimpulsen (AV, ABV, BCV, CV) auf der gewählten Wortleitung koinzident (z. B. gleichzeitig) sind. Für eines oder mehrere Speicherelemente (z. B. Speicherzellen), die nicht programmiert werden, sperrt die Bitleitungssperrspannung 958 das Programmieren während Sperrimpulsen (INH). Für eines oder mehrere Speicherelemente (z. B. Speicherzellen), die programmiert werden, wird die Bitleitungsprogrammierspannung 960 niedrig gehalten (0 V), damit sich während eines Programmierimpulses (VP) auf einer gewählten Wortleitung eine Ladung auf dem Floating-Gate aufbauen kann. In diesem Beispiel wird ein Speicherelement (z. B. Speicherzelle) auf einen bestimmten Zustand programmiert (als „A-Zustand“ bezeichnet).
  • Wie in 9 veranschaulicht, wird eine Bitleitungsprogrammierspannung 960 niedrig gehalten (0 V) und eine Bitleitungssperrspannung 958 erhöht, während die gewählte Wortleitungsspannung 962 einen Programmierimpuls (VP) einschließt. Bei einer Ausführungsform kann eine Anzahl von Programmierimpulsen (VP) auf einer gewählten Wortleitung geliefert werden und/oder kann eine Anzahl von Durchlassimpulsen (VPS) auf nicht gewählten Wortleitungen geliefert werden, bevor Verifizierimpulse (Verif.) an die gewählte Wortleitung geliefert werden. Bitleitungsimpulse (VB) werden in der Bitleitungssperrspannung 958 und der Bitleitungsprogrammierspannung 960 koinzident mit den Verifizierimpulsen geliefert.
  • Wenn Spannungen von Speicherelementen (z. B. Speicherzellen) von entsprechenden Zielspannungen entfernt sind (z. B. bevor eine Triggerschwellenspannung erfüllt ist), beträgt die Bitleitungsprogrammierspannung 960 0 V (koinzident mit Programmierimpulsen der gewählten Wortleitungsspannung 962). Wenn Speicherelemente (z. B. Speicherzellen) nahe an den entsprechenden Zielspannungen liegen (z. B. wenn eine Triggerschwellenspannung erfüllt ist), erhöht die Dämpfungsschaltung 234 schrittweise die Bitleitungsprogrammierspannung 960 (z. B. BL-Vorspannung) mit einem entsprechenden Programmierimpuls (VP) für einen oder mehrere Programmierimpulse. Bei einer Ausführungsform wird die Bitleitungsprogrammierspannung 960 im Wesentlichen gleichzeitig mit der entsprechenden Erhöhung auf der gewählten Wortleitung erhöht oder schrittweise erhöht. Zum Beispiel wird ein Dämpfungsimpuls 978 (z. B. 1 Dämpfungsimpuls) an die zu programmierende Bitleitung im Wesentlichen zur gleichen Zeit wie (oder simultan mit) einer Erhöhung (z. B. Schritt) der gewählten Wortleitungsspannung 962 geliefert. Ein Programmierimpuls 967 kann koinzident mit dem Dämpfungsimpuls 978 auftreten. Der Dämpfungsimpuls 978 kann anfänglich auf einer ersten Amplitude liegen (z. B. 0,5 V oder andere Spannung). Nach Einleiten und während desselben oder eines oder mehrerer nachfolgender Programmierimpulse wird ein Dämpfungsimpuls auf der zu programmierenden Bitleitung durch die Dämpfungsschaltung 234 (weiter) erhöht oder schrittweise erhöht. Zum Beispiel werden Dämpfungsimpulse nach Einleiten und während entsprechender Programmierimpulse 966a-c erhöht 964a-c oder schrittweise erhöht (z. B. auf 1 V oder eine andere Spannung).
  • Zum Beispiel erhöht die Dämpfungsschaltung 234 die Bitleitungsprogrammierspannung 960 anschließend schrittweise auf etwa VDD, 3 V oder eine andere Spannung (z. B. haben die Dämpfungsimpulse Amplituden von etwa 3 V oder VDD). Bei einer Ausführungsform wird jeder Programmierimpuls 966a-c jedes Mal eingeleitet, wenn die gewählte Wortleitungsspannung 962 von einer Grundlinienspannung, einer Stufenspannung oder einer anderen Spannung (z. B. 0 V, 10 V oder andere Spannung) zum Programmieren (z. B. und nicht zum Verifizieren) ansteigt. Zum Beispiel beginnt jeder Programmierimpuls 966a-c mit einem Schritt und steigt später auf eine Programmierimpulsspitze an. Die Programmierimpulsspitze steigt bei einer Ausführungsform über eine Reihe von Programmierzyklen an. In dem Beispiel von 9 entspricht PD1 einer Zeitdauer (oder Dauer) einer Programmierimpulsspitze für jeden Programmierimpuls 966a-c.
  • Bei einer Ausführungsform ist die Dämpfungsschaltung 234 dafür eingerichtet (nachdem eine Spannung der Speicherzelle die Triggerschwellenspannung erfüllt), eine Zeitdauer Δ von Dämpfungsimpulsen auf der Bitleitung, die programmiert wird, nach Einleiten und während jedes der jeweiligen Programmierimpulse progressiv zu erhöhen. Wie in 9 veranschaulicht, werden Dämpfungsimpulse nach Einleiten und während eines entsprechenden Programmierimpulses 966a-c erhöht oder stufenweise erhöht. In dem Beispiel von 9 entspricht ein erster Dämpfungsimpuls 964a einem ersten Programmierimpuls 966a, hat eine erste Zeitdauer 968a und/oder beginnt bei PD1-Δ (z. B. PD1 - 1 µs) für einen ersten Zyklus. Eine zweite Dämpfungsimpulserhöhung 964b entspricht einem zweiten Programmierimpuls 966b, hat eine zweite Zeitdauer 968b und/oder beginnt bei PD1-2Δ (z. B. PD1 - 2 µs) für einen zweiten Zyklus. Eine dritte Dämpfungsimpulserhöhung 964c entspricht einem dritten Programmierimpuls 966c, hat eine dritte Zeitdauer 968c und/oder beginnt bei PD1-3Δ (z. B. PD1 - 3 µs) für einen dritten Zyklus. In einem Beispiel wird ein Dämpfungsimpuls 978 auf einem ersten Niveau (z. B. 0,5 V) anfänglich koinzident (z. B. gleichzeitig) mit einem Programmierimpuls 967 geliefert. Mit den folgenden Programmierimpulsen 966a-c erhöht die Dämpfungsschaltung 234 später die Bitleitungsspannung 960 schrittweise auf einen hohen Wert (z. B. 3 V, VDD), um die Programmierung vollständig zu stoppen. Diese Prozedur wird wiederholt, bis die Zustände vollständig gebildet sind (z. B. bis die Speicherzellen vollständig programmiert sind). In dem Beispiel von 9 wird die Prozedur wiederholt, bis die A-Zustand-Programmierung abgeschlossen ist.
  • In diesem Beispiel werden die Zeitdauern 968a-c der Dämpfungsimpulserhöhungen 964a-c im Laufe von Programmierzyklen länger. Bei einer Ausführungsform kann die Zunahme der Dauer gleichmäßig sein (z. B. + 1 µs pro Programmierzyklus). Die Dämpfungsimpulserhöhungen 964a-c beginnen nach Einleiten und während entsprechender Programmierimpulse 966a-c. Die Dämpfungsimpulserhöhungen 964a-c reduzieren progressiv die entsprechende effektive Programmierimpulslänge (auf PD1-Δ, dann PD1-2Δ und dann PD1-3Δ). Entsprechend wird die Programmiergeschwindigkeit der Speicherelemente (z. B. Speicherzellen) zunehmend verlangsamt.
  • Bei einer Ausführungsform ist die Durchlassschaltung (die zum Beispiel in Lese-/Schreibschaltung 228 eingeschlossen ist) dafür eingerichtet, Durchlassimpulse auf nicht gewählte Wortleitungen zu erhöhen, nachdem mindestens einer der Programmierimpulse eingeleitet und eingebrannt wurde. In dem Beispiel von 9 erhöht, nachdem die Spannung der Speicherzelle die Triggerschwellenspannung erfüllt hat, die Durchlassschaltung die Durchlassimpulse 976a-c in der nicht gewählten Wortleitungsspannung 970. Zum Beispiel können die Durchlassimpulse 976a-c schrittweise erhöht werden, wie im Zusammenhang mit 8 beschrieben.
  • 10 ist ein Diagramm, das ein Beispiel für Durchlassimpulsverstärkung veranschaulicht. 10 veranschaulicht Beispiele 1080a-c einer Bitleitung zu unterschiedlichen Zeiten. Aufgrund der VSGD-Spanne (z. B. gemeinsame Spannung am SGD, um Programmieren/Sperren sicherzustellen) und ohne Durchlassimpulsverstärkung kann das Kanalpotential auf VSGD-Vt ≈ 1 V geklemmt werden, obwohl die Bitleitungsspannung weiter auf VDD ≈ 3 V erhöht werden kann.
  • Um ein weiteres Erhöhen der Kanalspannung zu ermöglichen (was dazu beitragen kann, eine schwache Programmierung vollständig zu stoppen), kann eine durch schrittweise Durchlassimpulserhöhung unterstützte Verstärkungstechnik während eines oder mehrerer Programmierimpulse (z. B. mit der Dauer PD1) verwendet werden. Nachdem das Kanalpotential auf eine Spannung (z. B. VSGD-Vt ≈ 1 V) geklemmt wurde, liefert die Durchlassschaltung eine schrittweise erhöhte Spannung für den Durchlassimpuls (z. B. VPASS+δ), wodurch der Kanal weiter um δ verstärkt und dadurch eine effektivere Programmierimpulssperre erreicht werden kann.
  • In einem Beispiel hat die Bitleitung 1080a anfänglich eine Bitleitungsspannung 1086a von 0 V vor einem Dämpfungsimpuls. Zu diesem Zeitpunkt liegen die nicht gewählten Wortleitungsspannungen bei VPASS (z. B. 10 V). Dies führt zu einer Kanalspannung bei 0 V. In diesem Moment wird zum Beispiel SGD eingeschaltet, so dass die Bitleitungsspannung 0 V vollständig auf das Kanalpotential/die Kanalspannung übertragen wird. Dann hat die Bitleitung 1080b eine auf VSGD-Vt ≈ 1 V erhöhte Bitleitungsspannung 1086b (zum Beispiel während eines Dämpfungsimpulses). Zu diesem Zeitpunkt werden die nicht gewählten Wortleitungsspannungen beibehalten (z. B. bei VPASS). Dies führt zu einem Kanal zum Beispiel bei etwa 1 V. Dann hat die Bitleitung 1080c eine auf VDD erhöhte Bitleitungsspannung 1086c (zum Beispiel während eines Dämpfungsimpulses). Zu diesem Zeitpunkt werden die nicht gewählten Wortleitungsspannungen erhöht (z. B. auf VPASS + δ oder VPASS + 0,5 V). Dies führt zu einem Kanal zum Beispiel bei etwa 1,5 V (z. B. 1 V + 0,5 V). Wie in 8 veranschaulicht, kann zum Beispiel eine Bitleitung anfänglich eine Spannung von 0 V haben, die dann schrittweise auf VDD erhöht wird, während eine nicht gewählte Wortleitungsspannung ebenfalls erhöht wird.
  • In einem anderen Beispiel hat die Bitleitung 1080a anfänglich eine Bitleitungsspannung 1086a von 0,5 V. Zu diesem Zeitpunkt liegen die nicht gewählten Wortleitungsspannungen bei VPASS (z. B. 10 V). Dies führt zu einem Kanal (zum Beispiel bei etwa 0,5 V). Dann hat die Bitleitung 1080b eine auf VSGD-Vt ≈ 1 V erhöhte Bitleitungsspannung 1086b (zum Beispiel während eines Dämpfungsimpulses). Zu diesem Zeitpunkt werden die nicht gewählten Wortleitungsspannungen beibehalten (z. B. bei VPASS). Dies führt zu einem Kanal zum Beispiel bei etwa 1 V. Dann hat die Bitleitung 1080c eine (während der Dämpfungsimpulserhöhung) auf VDD erhöhte Bitleitungsspannung 1086c. Zu diesem Zeitpunkt werden die nicht gewählten Wortleitungsspannungen erhöht (z. B. auf VPASS + δ oder VPASS + 0,5 V). Dies führt zu einem Kanal zum Beispiel bei etwa 1,5 V (z. B. 1 V + 0,5 V). Wie in 9 veranschaulicht, kann zum Beispiel eine Bitleitung anfänglich eine Spannung von 0,5 V haben, die dann schrittweise auf VDD erhöht wird, während eine nicht gewählte Wortleitungsspannung ebenfalls erhöht wird.
  • Eine Ausführungsform eines hierin beschriebenen Geräts schließt eine Programmierschaltung ein, die dafür eingerichtet ist, einen Programmierimpuls zu liefern, um eine Schwellenspannung einer Speicherzelle zu erhöhen. Das Gerät schließt auch eine Abtastschaltung ein, die dafür eingerichtet ist, zu bestimmen, dass die Schwellenspannung der Speicherzelle als Reaktion auf den Programmierimpuls eine Triggerschwellenspannung erfüllt. Das Gerät schließt ferner eine Dämpfungsschaltung ein, die dafür eingerichtet ist, eine Spannung einer mit der Speicherzelle verbundenen Bitleitung nach Einleiten und während eines zweiten Programmierimpulses als Reaktion darauf, dass die Schwellenspannung der Speicherzelle die Triggerschwellenspannung erfüllt, zu erhöhen. Der zweite Programmierimpuls wird von der Programmierschaltung gesendet.
  • Bei einer Ausführungsform ist die Dämpfungsschaltung dafür eingerichtet, die Spannung der Bitleitung zu erhöhen, nachdem mindestens 25 % einer Zeitdauer für den Programmierimpuls vergangen sind. Bei einer Ausführungsform ist die Dämpfungsschaltung dafür eingerichtet, die Spannung der Bitleitung zu erhöhen, nachdem mindestens 50 % der Zeitdauer des Programmierimpulses vergangen sind. Bei einer Ausführungsform ist die Dämpfungsschaltung dafür eingerichtet, das Erhöhen der Spannung der Bitleitung simultan mit Beendigung des Programmierimpulses zu stoppen.
  • Bei einer Ausführungsform schließt das Gerät ferner eine Durchlassschaltung ein, die dafür eingerichtet ist, eine Spannung nicht gewählter Wortleitungen nach Einleiten und während des Programmierimpulses zu erhöhen. Bei einer Ausführungsform ist die Abtastschaltung dafür eingerichtet, einen oder mehrere Verifizierimpulse zu senden, um die Schwellenspannung der Speicherzelle zu verifizieren, bis die Schwellenspannung eine Zielschwellenspannung erreicht. Bei einer Ausführungsform ist die Programmierschaltung dafür eingerichtet, der Speicherzelle nach Senden des zweiten Programmierimpulses einen dritten Programmierimpuls zu liefern, und ist die Dämpfungsschaltung dafür eingerichtet, die Spannung der Bitleitung nach Einleiten und während des dritten Programmierimpulses für eine größere Zeitdauer zu erhöhen als die Spannung der Bitleitung, die während des zweiten Programmierimpulses erhöht wird.
  • Eine Ausführungsform einer Schreibschaltung wird ebenfalls beschrieben. Die Schreibschaltung ist dafür eingerichtet, Schreibimpulse abwechselnd mit Verifizierimpulsen an eine gewählte Wortleitung zu liefern, um eine mit der gewählten Wortleitung verbundene Speicherzelle inkrementell auf eine Zielspannung zu programmieren. Eine Triggerschwellenspannung ist zu der Zielspannung versetzt. Die Schreibschaltung ist auch dafür eingerichtet, Bitleitungsimpulse an eine Bitleitung für die Speicherzelle zu senden, nachdem eine Spannung der Speicherzelle die Triggerschwellenspannung erfüllt. Jeder der Bitleitungsimpulse beginnt nach Einleiten und während jedes jeweiligen Schreibimpulses, und eine Zeitdauer jedes der Bitleitungsimpulse nimmt zu, wenn sich die Spannung der Speicherzelle der Zielspannung nähert.
  • Bei einer Ausführungsform ist die Schreibschaltung ferner dafür eingerichtet, mindestens einen Durchlassimpuls auf nicht gewählte Wortleitungen nach Einleiten und während eines koinzidenten Schreibimpulses schrittweise zu erhöhen. Bei einer Ausführungsform ist die Schreibschaltung ferner dafür eingerichtet, mindestens einen der Bitleitungsimpulse an die Bitleitung zu senden, nachdem mindestens 25 % einer Zeitdauer eines jeweiligen Schreibimpulses vergangen sind.
  • Eine Ausführungsform eines nichtflüchtigen Speichersystems wird hierin ebenfalls beschrieben. Das nichtflüchtige Speichersystem schließt eine Programmierschaltung ein, die dafür eingerichtet ist, Programmierimpulse durch eine gewählte Wortleitung zu liefern, die mit einem Array von Speicherzellen verbunden ist, um eine Speicherzelle auf eine Zielspannung zu programmieren. Eine Triggerschwellenspannung ist zu der Zielspannung versetzt. Das nichtflüchtige Speichersystem schließt auch eine Dämpfungsschaltung ein, die dafür eingerichtet ist, nachdem eine Spannung der Speicherzelle die Triggerschwellenspannung erfüllt, eine Zeitdauer von Dämpfungsimpulsen auf einer mit der Speicherzelle verbundenen Bitleitung nach Einleiten und während jedes der jeweiligen Programmierimpulse progressiv zu erhöhen. Das nichtflüchtige Speichersystem schließt zusätzlich eine Durchlassschaltung ein, die dafür eingerichtet ist, nachdem die Spannung der Speicherzelle die Triggerschwellenspannung erfüllt, Durchlassimpulse auf nicht gewählten Wortleitungen nach Einleiten und während mindestens eines der Programmierimpulse zu erhöhen.
  • Bei einer Ausführungsform ist die Durchlassschaltung dafür eingerichtet, mindestens einen der Durchlassimpulse auf nicht gewählte Wortleitungen nach Einleiten und während mindestens eines der Programmierimpulse inkrementell zu erhöhen. Bei einer Ausführungsform ist die Durchlassschaltung dafür eingerichtet, mindestens einen der Durchlassimpulse in mehreren Schritten während mindestens eines der Programmierimpulse zu erhöhen, wobei jeder Schritt eine Zeitdauer aufweist. Bei einer Ausführungsform ist die Zeitdauer jedes der Dämpfungsimpulse gleich einer Summe von einer oder mehreren der Zeitdauern der Schritte der Durchlassimpulse. Das nichtflüchtige Speichersystem schließt bei einer Ausführungsform ferner eine Abtastschaltung ein, die dafür eingerichtet ist, einen Verifizierimpuls zwischen der Abgabe von mindestens zwei der Programmierimpulse an die Speicherzelle zu senden.
  • Eine Ausführungsform eines Verfahrens wird ebenfalls beschrieben. Das Verfahren schließt das Erzeugen eines Programmierimpulses ein. Das Verfahren schließt auch ein, dass der Programmierimpuls an eine Speicherzelle in einem Speicherarray geliefert wird, um eine Schwellenspannung inkrementell auf eine Zielschwellenspannung zu erhöhen, nachdem die Speicherzelle eine Triggerschwellenspannung erfüllt. Die Triggerschwellenspannung ist zu der Zielspannungsschwelle versetzt. Das Verfahren schließt ferner das Senden eines Dämpfungsimpulses an eine Bitleitung für die Speicherzelle koinzident mit dem Programmierimpuls ein. Das Verfahren schließt zusätzlich schrittweises Erhöhen des Dämpfungsimpulses während des Programmierimpulses für eine Zeitdauer ein.
  • Bei einer Ausführungsform schließt das Verfahren das Erzeugen eines zweiten Programmierimpulses und Abgeben des zweiten Programmierimpulses an die Speicherzelle nach Abgabe des Programmierimpulses an die Speicherzelle ein. Bei dieser Ausführungsform schließt das Verfahren auch das Senden eines zweiten Dämpfungsimpulses an eine Bitleitung für die Speicherzelle gleichzeitig mit einem zweiten Programmierimpuls auf einer gewählten Wortleitung und schrittweises Erhöhen des zweiten Dämpfungsimpulses für eine zweite Zeitdauer während des zweiten Programmierimpulses ein. Die zweite Zeitdauer ist größer als die Zeitdauer.
  • Bei einer Ausführungsform ist eine Amplitude des stufenweise erhöhten Abschnitts des zweiten Dämpfungsimpulses größer als eine Amplitude des stufenweise erhöhten Abschnitts des Dämpfungsimpulses. Bei einer Ausführungsform schließt das Verfahren das Senden des Dämpfungsimpulses an die Bitleitung für die Speicherzelle ein, nachdem mindestens 25 % einer Zeitdauer eines koinzidenten Programmierimpulses vergangen sind.
  • Eine Ausführungsform eines Geräts wird ebenfalls beschrieben. Das Gerät schließt einen Speicherchip ein, der eine Speicherzelle aufweist. Das Gerät schließt auch Mittel zum Erzeugen einer Reihe von Programmierimpulsen auf einer gewählten Wortleitung eines Blocks des Speicherchips ein, um die Speicherzelle auf eine Zielspannung zu programmieren. Eine Triggerschwellenspannung ist zu der Zielspannung versetzt. Das Gerät schließt auch Mittel zum Erzeugen einer Reihe erhöhter Impulse zu einer Bitleitung für die Speicherzelle ein, nachdem ein Spannungsniveau der Speicherzelle die Triggerschwellenspannung erfüllt, wobei eine Zeitdauer jedes erhöhten Impulses zunimmt, wenn sich ein Spannungsniveau der Speicherzelle der Zielspannung nähert, wobei jeder erhöhte Impuls nach Einleiten und während eines koinzidenten Programmierimpulses beginnt. Das Gerät schließt ferner Mittel zum schrittweisen Erhöhen eines Durchlassimpulses auf einer nicht gewählten Wortleitung nach Einleiten und während mindestens eines Programmimpulses ein, nachdem das Spannungsniveau der Speicherzelle die Triggerschwellenspannung erfüllt.
  • Bei einer Ausführungsform schließt das Mittel zum schrittweisen Erhöhen des Durchlassimpulses auf der nicht gewählten Wortleitung Mittel zum schrittweisen Erhöhen des Durchlassimpulses als mehrere gestufte Amplituden während eines koinzidenten Programmierimpulses ein. Bei einer Ausführungsform ist das Mittel zum Erzeugen dafür eingerichtet, mindestens einen der erhöhten Impulse an die Bitleitung für die Speicherzelle zu senden, nachdem mindestens 25 % einer Zeitdauer eines koinzidenten Programmierimpulses vergangen sind.
  • Ein Mittel zum Erzeugen einer Reihe von Programmierimpulsen auf einer gewählten Wortleitung eines Blocks des Speicherchips zum Programmieren der Speicherzelle auf eine Zielspannung kann bei einer Ausführungsform eine Speichervorrichtung 222, einen Speicherchip 224, Lese-/Schreibschaltungen 228, Programmierschaltung 230, Steuerschaltung 210, Zustandsmaschine 212 und/oder andere Hardware einschließen. Andere Ausführungsformen können ähnliche oder äquivalente Mittel zum Erzeugen einer Reihe von Programmierimpulsen auf einer gewählten Wortleitung eines Blocks des Speicherchips umfassen, um die Speicherzelle auf eine Zielspannung zu programmieren.
  • Ein Mittel zum Erzeugen einer Reihe erhöhter Impulse zu einer Bitleitung für die Speicherzelle, nachdem ein Spannungsniveau der Speicherzelle die Triggerschwellenspannung erfüllt, wobei ein Zeitraum jedes erhöhten Impulses ansteigt, wenn sich ein Spannungsniveau der Speicherzelle der Zielspannung nähert, wobei jeder erhöhte Impuls nach Einleiten und während eines koinzidenten Programmierimpulses beginnt, kann bei einer Ausführungsform eine Speichervorrichtung 222, einen Speicherchip 224, Lese-/Schreibschaltungen 228, Programmierschaltung 230, Abtastschaltung 232, Dämpfungsschaltung 234 Steuerschaltung 210, Zustandsmaschine 212 und/oder andere Hardware einschließen. Andere Ausführungsformen können ähnliche oder äquivalente Mittel zum Erzeugen einer Reihe erhöhter Impulse auf eine Bitleitung für die Speicherzelle einschließen, nachdem ein Spannungsniveau der Speicherzelle die Triggerschwellenspannung erfüllt, wobei eine Zeitdauer jedes erhöhten Impulses zunimmt, wenn sich ein Spannungsniveau der Speicherzelle der Zielspannung nähert, wobei jeder erhöhte Impuls nach Einleiten und während eines koinzidenten Programmierimpulses beginnt.
  • Ein Mittel zum schrittweisen Erhöhen eines Durchlassimpulses auf einer nicht gewählten Wortleitung nach Einleiten und während mindestens eines Programmimpulses, nachdem das Spannungsniveau der Speicherzelle die Triggerschwellenspannung erfüllt, kann bei einer Ausführungsform eine Speichervorrichtung 222, einen Speicherchip 224, Lese-/Schreibschaltungen 228, Programmierschaltung 230, Abtastschaltung 232, Dämpfungsschaltung 234, Steuerschaltung 210, Zustandsmaschine 212 und/oder andere Hardware einschließen. Andere Ausführungsformen können ähnliche oder äquivalente Mittel zum schrittweisen Erhöhen eines Durchlassimpulses auf einer nicht gewählten Wortleitung nach Einleiten und während mindestens eines Programmierimpulses einschließen, nachdem das Spannungsniveau der Speicherzelle die Triggerschwellenspannung erfüllt.
  • Wie in dieser Anmeldung verwendet, beziehen sich die Begriffe „eine Ausführungsform“, „eine andere Ausführungsform“ oder analoger Sprachgebrauch nicht auf eine einzelne Variation des offenbarten Gegenstands; stattdessen bezieht sich dieser Sprachgebrauch auf Variationen des offenbarten Gegenstands, die mit einer Reihe verschiedener Implementierungen des offenbarten Gegenstands angewendet und verwendet werden können.
  • Fachleute werden erkennen, dass diese Offenbarung nicht auf die beschriebenen zweidimensionalen und dreidimensionalen beispielhaften Strukturen beschränkt ist, sondern alle relevanten Speicherstrukturen in dem Geist und Umfang der Offenbarung abdeckt, wie hierin beschrieben und wie von Fachleuten zu verstehen. Die Veranschaulichungen der hierin beschriebenen Ausführungsformen sollen ein allgemeines Verständnis der Ausführungsformen bereitstellen. Andere Ausführungsformen können verwendet und aus der Offenbarung abgeleitet werden, sodass strukturelle und logische Substitutionen und Änderungen vorgenommen werden können, ohne vom Umfang der Offenbarung abzuweichen. Diese Offenbarung soll alle nachfolgenden Anpassungen oder Variationen von Ausführungsformen abdecken. Der Fachmann wird erkennen, dass solche Änderungen innerhalb des Schutzumfangs der vorliegenden Offenbarung liegen.
  • Der oben offenbarte Gegenstand ist als veranschaulichend und nicht einschränkend zu betrachten, und die beilegenden Patentansprüche sollen alle derartigen Änderungen, Verbesserungen und sonstigen Ausführungsformen abdecken, die innerhalb des Schutzumfangs der vorliegenden Offenbarung fallen. Der Umfang der vorliegenden Offenbarung ist daher, soweit gesetzlich zulässig, durch die weitestgehende zulässige Auslegung der folgenden Patentansprüche und ihrer Äquivalente zu bestimmen und wird durch die vorstehende detaillierte Beschreibung nicht beschränkt oder eingeschränkt.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 15987764 [0001]

Claims (22)

  1. Gerät, aufweisend: eine Programmierschaltung, die dafür eingerichtet ist, einen Programmierimpuls zu liefern, um eine Schwellenspannung einer Speicherzelle zu erhöhen; eine Abtastschaltung, die dafür eingerichtet ist, zu bestimmen, dass die Schwellenspannung der Speicherzelle als Reaktion auf den Programmierimpuls eine Triggerschwellenspannung erfüllt; und eine Dämpfungsschaltung, die dafür eingerichtet ist, eine Spannung einer mit der Speicherzelle verbundenen Bitleitung nach Einleiten und während eines zweiten Programmierimpulses als Reaktion darauf zu erhöhen, dass die Schwellenspannung der Speicherzelle die Triggerschwellenspannung erfüllt, wobei der zweite Programmierimpuls von der Programmierschaltung gesendet wird.
  2. Gerät gemäß Anspruch 1, wobei die Dämpfungsschaltung dafür eingerichtet ist, die Spannung der Bitleitung zu erhöhen, nachdem mindestens 25 % einer Zeitdauer für den Programmierimpuls vergangen ist.
  3. Gerät gemäß Anspruch 2, wobei die Dämpfungsschaltung dafür eingerichtet ist, die Spannung der Bitleitung zu erhöhen, nachdem mindestens 50 % einer Zeitdauer für den Programmierimpuls vergangen ist.
  4. Gerät gemäß Anspruch 1, wobei die Dämpfungsschaltung dafür eingerichtet ist, das Erhöhen der Spannung der Bitleitung simultan mit der Beendigung des Programmierimpulses zu stoppen.
  5. Gerät gemäß Anspruch 1, ferner umfassend eine Durchlassschaltung, die dafür eingerichtet ist, eine Spannung nicht gewählter Wortleitungen nach Einleiten und während des Programmierimpulses zu erhöhen.
  6. Gerät gemäß Anspruch 1, wobei die Abtastschaltung dafür eingerichtet ist, einen oder mehrere Verifizierimpulse zu senden, um die Schwellenspannung der Speicherzelle zu verifizieren, bis die Schwellenspannung eine Zielschwellenspannung erreicht.
  7. Gerät gemäß Anspruch 1, wobei die Programmierschaltung dafür eingerichtet ist, der Speicherzelle nach Liefern des zweiten Programmierimpulses einen dritten Programmierimpuls zu liefern, und wobei die Dämpfungsschaltung dafür eingerichtet ist, die Spannung der Bitleitung nach Einleiten und während des dritten Programmierimpulses für eine größere Zeitdauer zu erhöhen als die Spannung der Bitleitung, die während des zweiten Programmierimpulses erhöht wird.
  8. Schreibschaltung, die eingerichtet ist zum: Liefern von Schreibimpulsen abwechselnd mit Verifizierimpulsen an eine gewählte Wortleitung, um eine mit der gewählten Wortleitung verbundene Speicherzelle schrittweise auf eine Zielspannung zu programmieren, wobei eine Triggerschwellenspannung zu der Zielspannung versetzt ist; und Senden von Bitleitungsimpulsen an eine Bitleitung für die Speicherzelle, nachdem eine Spannung der Speicherzelle die Triggerschwellenspannung erfüllt, wobei jeder der Bitleitungsimpulse nach Einleiten und während jedes jeweiligen Schreibimpulses beginnt und sich eine Zeitdauer von jedem der Bitleitungsimpulse erhöht, wenn sich die Spannung der Speicherzelle der Zielspannung nähert.
  9. Schreibschaltung gemäß Anspruch 8, wobei die Schreibschaltung ferner dafür eingerichtet ist, mindestens einen Durchlassimpuls auf nicht gewählte Wortleitungen nach Einleiten und während eines koinzidenten Schreibimpulses schrittweise zu erhöhen.
  10. Schreibschaltung gemäß Anspruch 8, wobei die Schreibschaltung ferner dafür eingerichtet ist, mindestens einen der Bitleitungsimpulse an die Bitleitung zu senden, nachdem mindestens 25 % einer Zeitdauer eines jeweiligen Schreibimpulses vergangen ist.
  11. Nichtflüchtiges Speichersystem, umfassend: eine Programmierschaltung, die dafür eingerichtet ist, Programmierimpulse durch eine gewählte Wortleitung zu liefern, die mit einem Array von Speicherzellen verbunden ist, um eine Speicherzelle auf eine Zielspannung zu programmieren, wobei eine Triggerschwellenspannung zu der Zielspannung versetzt ist; eine Dämpfungsschaltung, die dafür eingerichtet ist, nachdem eine Spannung der Speicherzelle die Triggerschwellenspannung erfüllt, eine Zeitdauer von Dämpfungsimpulsen auf einer mit der Speicherzelle verbundenen Bitleitung nach Einleiten und während jedes der jeweiligen Programmierimpulse progressiv zu erhöhen; und eine Durchlassschaltung, die dafür eingerichtet ist, nachdem die Spannung der Speicherzelle die Triggerschwellenspannung erfüllt, Durchlassimpulse auf nicht gewählten Wortleitungen nach Einleiten und während mindestens eines der Programmierimpulse zu erhöhen.
  12. Nichtflüchtiges Speichersystem gemäß Anspruch 11, wobei die Durchlassschaltung dafür eingerichtet ist, mindestens einen der Durchlassimpulse auf nicht gewählte Wortleitungen nach Einleiten und während mindestens eines der Programmierimpulse inkrementell zu erhöhen.
  13. Nichtflüchtiges Speichersystem gemäß Anspruch 12, wobei die Durchlassschaltung dafür eingerichtet ist, mindestens einen der Durchlassimpulse in mehreren Schritten während mindestens eines der Programmierimpulse zu erhöhen, wobei jeder Schritt eine Zeitdauer aufweist.
  14. Nichtflüchtiges Speichersystem gemäß Anspruch 13, wobei die Zeitdauer jedes der Dämpfungsimpulse gleich einer Summe von einer oder mehreren der Zeitdauern der Schritte der Durchlassimpulse ist.
  15. Nichtflüchtiges Speichersystem gemäß Anspruch 11, ferner aufweisend eine Abtastschaltung, die dafür eingerichtet ist, einen Verifizierimpuls zwischen der Abgabe von mindestens zwei der Programmierimpulse an die Speicherzelle zu senden.
  16. Verfahren, aufweisend: Erzeugen eines Programmierimpulses; Liefern des Programmierimpulses an eine Speicherzelle in einem Speicherarray, um eine Schwellenspannung inkrementell auf eine Zielschwellenspannung zu erhöhen, nachdem die Speicherzelle eine Triggerschwellenspannung erfüllt, wobei die Triggerschwellenspannung zu der Zielspannungsschwelle versetzt ist; Senden eines Dämpfungsimpulses an eine Bitleitung für die Speicherzelle koinzident mit dem Programmierimpuls; und schrittweises Erhöhen des Dämpfungsimpulses während des Programmierimpulses für eine Zeitdauer.
  17. Verfahren gemäß Anspruch 16, ferner aufweisend: Erzeugen eines zweiten Programmierimpulses; Liefern des zweiten Programmierimpulses an die Speicherzelle, nachdem der Programmierimpuls an die Speicherzelle geliefert ist; Senden eines zweiten Dämpfungsimpulses an eine Bitleitung für die Speicherzelle gleichzeitig mit dem zweiten Programmierimpuls auf einer gewählten Wortleitung; und schrittweises Erhöhen des zweiten Dämpfungsimpulses während des zweiten Programmierimpulses für eine Zeitdauer, wobei die zweite Zeitdauer größer als die Zeitdauer ist.
  18. Verfahren gemäß Anspruch 17, wobei eine Amplitude des stufenweise erhöhten Abschnitts des zweiten Dämpfungsimpulses größer als eine Amplitude des stufenweise erhöhten Abschnitts des Dämpfungsimpulses ist.
  19. Verfahren gemäß Anspruch 16, ferner umfassend das Senden des Dämpfungsimpulses an die Bitleitung für die Speicherzelle, nachdem mindestens 25 % einer Zeitdauer eines koinzidenten Programmierimpulses vergangen ist.
  20. Gerät, aufweisend: einen Speicherchip, der eine Speicherzelle aufweist; Mittel zum Erzeugen einer Reihe von Programmierimpulsen auf einer gewählten Wortleitung eines Blocks des Speicherchips zum Programmieren der Speicherzelle auf eine Zielspannung, wobei eine Triggerschwellenspannung zu der Zielspannung versetzt ist; Mittel zum Erzeugen einer Reihe erhöhter Impulse zu einer Bitleitung für die Speicherzelle, nachdem ein Spannungsniveau der Speicherzelle die Triggerschwellenspannung erfüllt, wobei eine Zeitdauer jedes erhöhten Impulses zunimmt, wenn sich ein Spannungsniveau der Speicherzelle der Zielspannung nähert, wobei jeder erhöhte Impuls nach Einleiten und während eines koinzidenten Programmierimpulses beginnt; und Mittel zum schrittweisen Erhöhen eines Durchlassimpulses auf einer nicht gewählten Wortleitung nach dem Einleiten und während mindestens eines Programmimpulses, nachdem das Spannungsniveau der Speicherzelle die Triggerschwellenspannung erfüllt.
  21. Gerät gemäß Anspruch 20, wobei das Mittel zum schrittweisen Erhöhen des Durchlassimpulses auf der nicht gewählten Wortleitung Mittel zum schrittweisen Erhöhen des Durchlassimpulses wie mehrere gestufte Amplituden während eines koinzidenten Programmierimpulses einschließt.
  22. Gerät gemäß Anspruch 20, wobei das Mittel zum Erzeugen dafür eingerichtet ist, mindestens einen der erhöhten Impulse an die Bitleitung für die Speicherzelle zu senden, nachdem mindestens 25 % einer Zeitdauer eines koinzidenten Programmierimpulses vergangen ist.
DE112019000155.8T 2018-05-23 2019-03-22 Bitleitungsspannungssteuerung zum dämpfen von speicherprogrammierung Pending DE112019000155T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/987,764 US10643720B2 (en) 2018-05-23 2018-05-23 Bit line voltage control for damping memory programming
US15/987,764 2018-05-23
PCT/US2019/023754 WO2019226223A1 (en) 2018-05-23 2019-03-22 Bit line voltage control for damping memory programming

Publications (1)

Publication Number Publication Date
DE112019000155T5 true DE112019000155T5 (de) 2020-07-23

Family

ID=68614833

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112019000155.8T Pending DE112019000155T5 (de) 2018-05-23 2019-03-22 Bitleitungsspannungssteuerung zum dämpfen von speicherprogrammierung

Country Status (4)

Country Link
US (2) US10643720B2 (de)
CN (1) CN111386574B (de)
DE (1) DE112019000155T5 (de)
WO (1) WO2019226223A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10643720B2 (en) 2018-05-23 2020-05-05 Sandisk Technologies Llc Bit line voltage control for damping memory programming
JP7332343B2 (ja) * 2019-05-28 2023-08-23 キオクシア株式会社 半導体記憶装置
KR20200144000A (ko) * 2019-06-17 2020-12-28 에스케이하이닉스 주식회사 메모리 장치 및 그것의 동작 방법
KR20210011209A (ko) * 2019-07-22 2021-02-01 삼성전자주식회사 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 프로그램 방법
WO2021232223A1 (en) 2020-05-19 2021-11-25 Yangtze Memory Technologies Co., Ltd. 3d nand flash and operation method thereof
KR20220008991A (ko) * 2020-07-14 2022-01-24 삼성전자주식회사 비휘발성 메모리 장치 및 이의 동작 방법

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7158421B2 (en) 2005-04-01 2007-01-02 Sandisk Corporation Use of data latches in multi-phase programming of non-volatile memories
US7372732B2 (en) 2005-11-23 2008-05-13 Macronix International Co., Ltd. Pulse width converged method to control voltage threshold (Vt) distribution of a memory cell
KR100953045B1 (ko) 2008-05-23 2010-04-14 주식회사 하이닉스반도체 불휘발성 메모리 장치의 프로그램 방법
KR20100043935A (ko) 2008-10-21 2010-04-29 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 방법
US8411508B2 (en) * 2009-10-05 2013-04-02 Micron Technology, Inc. Automatic selective slow program convergence
US8274838B2 (en) 2010-07-19 2012-09-25 Sandisk Technologies Inc. Programming non-volatile memory with bit line voltage step up
US8385132B2 (en) * 2010-12-22 2013-02-26 Sandisk Technologies Inc. Alternate bit line bias during programming to reduce channel to floating gate coupling in memory
KR20120126436A (ko) * 2011-05-11 2012-11-21 에스케이하이닉스 주식회사 반도체 메모리 장치 및 반도체 메모리 장치의 프로그램 방법
KR101716713B1 (ko) 2011-05-23 2017-03-15 삼성전자주식회사 플래시 메모리 장치 및 그것의 프로그램 방법
US8526233B2 (en) * 2011-05-23 2013-09-03 Sandisk Technologies Inc. Ramping pass voltage to enhance channel boost in memory device, with optional temperature compensation
US8705293B2 (en) 2011-10-20 2014-04-22 Sandisk Technologies Inc. Compact sense amplifier for non-volatile memory suitable for quick pass write
US8971141B2 (en) 2012-06-28 2015-03-03 Sandisk Technologies Inc. Compact high speed sense amplifier for non-volatile memory and hybrid lockout
US8953386B2 (en) * 2012-10-25 2015-02-10 Sandisk Technologies Inc. Dynamic bit line bias for programming non-volatile memory
US20140198576A1 (en) 2013-01-16 2014-07-17 Macronix International Co, Ltd. Programming technique for reducing program disturb in stacked memory structures
US9299443B1 (en) 2014-09-29 2016-03-29 Sandisk Technologies Inc. Modifying program pulses based on inter-pulse period to reduce program noise
US9418751B1 (en) 2015-01-23 2016-08-16 Sandisk Technologies Llc Pre-program detection of threshold voltages of select gate transistors in a memory device
KR102414186B1 (ko) * 2016-04-04 2022-06-28 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 프로그램 방법
US10643720B2 (en) 2018-05-23 2020-05-05 Sandisk Technologies Llc Bit line voltage control for damping memory programming

Also Published As

Publication number Publication date
CN111386574B (zh) 2023-12-01
WO2019226223A1 (en) 2019-11-28
US11011242B2 (en) 2021-05-18
US10643720B2 (en) 2020-05-05
US20200227125A1 (en) 2020-07-16
US20190362799A1 (en) 2019-11-28
CN111386574A (zh) 2020-07-07

Similar Documents

Publication Publication Date Title
DE112019000155T5 (de) Bitleitungsspannungssteuerung zum dämpfen von speicherprogrammierung
DE102008023819B4 (de) Verfahren zum Betrieb eines Speicherbauelements und elektronisches Bauelement
DE4232025C2 (de) Elektrisch löschbarer und programmierbarer nichtflüchtiger Halbleiterspeicher mit automatischem Schreibprüfungs-Controller
DE102005039099B4 (de) Löschverfahren und nichtflüchtiges Speicherbauelement
DE60220590T2 (de) Verfahren zur Reduzierung von Kopplungseffekten zwischen multi-level Speicherelementen eines nicht flüchtigen Speichers
DE60029206T2 (de) Nichtflüchtiger Speicher zur Speicherung von Multibitdaten
DE112017004208B4 (de) 3d-nand mit teilblocklöschen
DE60214023T2 (de) Selektiver betrieb eines nichtflüchtigen mehrzustandsspeichersystems in einem binärmodus
DE112005001325B4 (de) Lösch-Verfahren für einen Multilevel-Bit-Flash-Speicher
DE4422810C2 (de) Nichtflüchtige Halbleiterspeichervorrichtung
DE60318714T2 (de) System und verfahren zur steuerung einer löschspannung während des löschens mehrerer sektoren eines flash-speichers
DE102007039908B4 (de) Programmierverfahren einer Flash-Speichervorrichtung
DE112019000152T5 (de) Verschachteltes programmieren und prüfen in nichtflüchtigem speicher
DE112016003636T5 (de) Unter-Block-Modus für nichtflüchtigen Speicher
DE112017003298T5 (de) Schema für das Herunterfahren von Wortleitungen zum Entfernen von Restelektronen
DE102005057553A1 (de) Nicht volatiles Speicherbauelement und Verfahren zur Verhinderung eines Heisse-Elektronen-Programmier-Störungsphänomens
DE112015003761T5 (de) Teilblocklöschung zur datenaktualisierung
DE112017001761T5 (de) NAND-Struktur mit Stufenauswahl-Gate-Transistoren
DE60303511T2 (de) Verfahren zum löschen eines flash-speichers unter verwendung eines prä-lösch verfahrensschritts
DE112018003426T5 (de) Reduzieren der lesestörung der art durch injektion heisser elektronen in 3d-speichervorrichtung mit verbundenen sourceendauswahlgates
DE102018114250A1 (de) Reduzieren eines heißen Elektroneninjektionstypen von Lesestörungen in einer 3D-Speichervorrichtung während Signal-schaltenden Störsignalen
DE102007002248A1 (de) Nichtflüchtiges Halbleiter-Speicherbauelement und Verfahren zum Löschen eines Flash-Speicherbauelements
DE112018006212T5 (de) Verfahren und System zur Reduktion einer Programmierungsstörungsverschlechterung in einem Flash-Speicher
DE102010037978A1 (de) Nichtflüchtiger Speicher mit prädiktiver Programmierung
DE102010053557B4 (de) NAND-Programmiertechnik

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R082 Change of representative

Representative=s name: DEHNSGERMANY PARTNERSCHAFT VON PATENTANWAELTEN, DE

Representative=s name: DEHNS GERMANY PARTNERSCHAFT MBB, DE