DE102011089880A1 - Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements, nichtflüchtiges Speicherelement und Speichersystem - Google Patents

Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements, nichtflüchtiges Speicherelement und Speichersystem Download PDF

Info

Publication number
DE102011089880A1
DE102011089880A1 DE102011089880A DE102011089880A DE102011089880A1 DE 102011089880 A1 DE102011089880 A1 DE 102011089880A1 DE 102011089880 A DE102011089880 A DE 102011089880A DE 102011089880 A DE102011089880 A DE 102011089880A DE 102011089880 A1 DE102011089880 A1 DE 102011089880A1
Authority
DE
Germany
Prior art keywords
block
sub
programming
word line
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE102011089880A
Other languages
English (en)
Other versions
DE102011089880B4 (de
Inventor
Dong Ku Kang
Seung-Bum Kim
Tae Young Kim
Sun-Jun Park
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE102011089880A1 publication Critical patent/DE102011089880A1/de
Application granted granted Critical
Publication of DE102011089880B4 publication Critical patent/DE102011089880B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • G11C16/16Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/10Decoders

Landscapes

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

Abstract

Ein Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements (10), das in Wirkverbindung mit einer Speichersteuereinheit steht, wobei der Speicherblock durch eine Mehrzahl von Wortleitungen definiert ist, die zwischen einer Stringauswahlleitung und einer gemeinsamen Sourceleitung, die mit der String-Auswahlleitung korrespondiert, angeordnet sind, umfasst: Programmieren eines ersten Subblocks des Speicherblocks, Bestimmen in dem nichtflüchtigen Speicherelement, wann eine Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird, und teilweises Löschen eines zweiten Subblocks des Speicherblocks, sobald bestimmt ist, dass die Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird.

Description

  • Die Erfindung betrifft ein Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements, ein nichtflüchtiges Speicherelement und ein Speichersystem.
  • Es sind eine Reihe von unterschiedlichen Arten von nichtflüchtigen Speicherelementen bekannt, darunter beispielsweise Maskennurlesespeicher (Mask Read-Only Memory, MROM), programmierbare Nurlesespeicher (PROM), löschbare programmierbare Nurlesespeicher (EPROM) und elektrisch löschbare programmierbare Nurlesespeicher (EEPROM).
  • Aus der EEPROM-Technologie entwickelt wurde der NAND-Flash-Speicher für nichtflüchtige Massendatenspeicheranwendungen verbreitet eingesetzt. Zum Beispiel werden NAND-Flash-Speicher üblicherweise zum Speichern von Audiodaten, Bilddaten und/oder Videodaten in einer Unmenge von unterschiedlichen Arten von Hostgeräten verwendet, wie Computern, Mobiltelefonen, persönlichen digitalen Assistenten (PDA), Digitalkameras, Camcordern, Sprachaufzeichnungsgeräten (Voicerecordern), MP3-Playern, tragbaren Personalcomputern (PCs), Spielekonsolen, Telefaxgeräten, Scannern, Druckern und so weiter.
  • In Abhängigkeit von der Anzahl an Bits, die pro Speicherzelle gespeichert werden, können NAND-Flash-Speicher in der Regel entweder als SLC-Speicherzellen, wobei SLC Single-Level Cell bedeutet, oder als MLC-Speicherzellen, wobei MLC Multi-Level Cell bedeutet, klassifiziert werden. SLC-Einrichtungen speichern ein einzelnes Bit Daten in jeder NAND-Flash-Speicherzelle, während MLC-Einrichtungen 2 oder mehr Bit Daten in jeder NAND-Flash-Speicherzelle speichern.
  • In der konventionellen Nomenklatur speichern die mit einer gleichen Wortleitung verbundenen NAND-Flash-Speicherzellen eine oder mehr ”Seiten” Daten. Insbesondere im Falle eines SLC-Elements speichern mit einer gleichen Wortleitung verbundene NAND-Flash-Speicherzellen eine Seite Daten, wobei jedes Bit der Seite Daten in einer separaten Speicherzelle gespeichert ist. Im Falle eines MLC-Elements speichern mit einer gleichen Wortleitung verbundene NAND-Flash-Speicherzellen mehrere Seiten Daten, wobei mehrere Bit der Daten einer zugehörigen Seite in einer gleichen Speicherzelle gespeichert sind. Zum Beispiel im Falle eines MLC-Elements mit ”n-Bit” (wobei n gleich 2 oder mehr ist) speichern die mit einer gleichen Wortleitung verbundenen NAND-Flash-Speicherzellen ”n” Seiten Daten, wobei jede Speicherzelle ”n” Bit Daten der zugehörigen ”n” Seiten speichert.
  • NAND-Flash-Speicher sind generell dadurch gekennzeichnet, dass sie in Einheiten jeweils einer Seite programmiert und gelesen werden und in Einheiten von Speicherblöcken gelöscht werden, wobei jeder Block eine Mehrzahl von Wortleitungen (oder Seiten) und eine Mehrzahl von Bitleitungen beinhaltet, die mit zugehörigen Speicherzellenstrings verbunden sind. Jeder Speicherzellenstring ist typischerweise durch eine Mehrzahl von Flash-Speicherzellen definiert, die in Serie zwischen einem String-Auswahltransistor und einem Masse-Auswahltransistor eingeschleift sind.
  • Der gesamte Speicherblock wird vor einem Programmieren gelöscht und das Programmieren jedes Speicherblocks umfasst in der Regel ein sequentielles Programmieren von Wortleitungen von einer ersten Wortleitung, die dem Masse-Auswahltransistor am nächsten liegt, bis zu einer letzten Wortleitung, die dem String-Auswahltransistor am nächsten liegt.
  • Der Erfindung liegt die technische Aufgabe zugrunde, ein Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements, ein nichtflüchtiges Speicherelement und ein Speichersystem zur Verfügung zu stellen, die verbesserte Eigenschaften aufweisen.
  • Die Erfindung löst diese Aufgabe dadurch, dass sie ein Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements mit den Merkmalen des Anspruch 1 oder 14, ein nichtflüchtiges Speicherelement mit den Merkmalen des Anspruch 21 und ein Speichersystem mit den Merkmalen des Anspruch 23 zur Verfügung stellt.
  • Vorteilhafte Ausführungsformen der Erfindung sind in den Unteransprüchen angegeben, deren Wortlaut hiermit durch Bezugnahme zum Inhalt dieser Beschreibung gemacht wird, um unnötige Textwiederholungen zu vermeiden.
  • Gemäß einem Aspekt des erfinderischen Konzepts wird ein Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements zur Verfügung gestellt. Das nichtflüchtige Speicherelement ist in Wirkverbindung mit einer Speichersteuereinheit verbunden und der Speicherblock ist durch eine Mehrzahl von Wortleitungen definiert, die zwischen einer String-Auswahlleitung und einer gemeinsamen Sourceleitung, die mit der String-Auswahlleitung korrespondiert, angeordnet sind. Das Verfahren umfasst: Programmieren eines ersten Subblocks des Speicherblocks, Bestimmen in dem nichtflüchtigen Speicherelement, wann eine Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird, und teilweises (partielles) Löschen eines zweiten Subblocks des Speicherblocks, sobald bestimmt ist, dass die Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird.
  • Gemäß anderen Aspekten des erfinderischen Konzepts wird ein Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements zur Verfügung gestellt. Das nichtflüchtige Speicherelement ist in Wirkverbindung mit einer Speichersteuereinheit verbunden und der Speicherblock ist durch eine Mehrzahl von Wortleitungen definiert, die zwischen einer String-Auswahlleitung und einer gemeinsamen Sourceleitung, die mit der String-Auswahlleitung korrespondiert, angeordnet sind. Das Verfahren umfasst: Programmieren eines ersten Subblocks des Speicherblocks, Bestimmen in der Speichersteuereinheit, wann eine Referenzwortleitung während des Programmierens des ersten Subblocks zu programmieren ist, Übertragen eines Teillöschungsbefehls von der Speichersteuereinheit zu dem nichtflüchtigen Speicherelement, sobald bestimmt ist, dass die Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird, teilweises Löschen eines zweiten Subblocks des Speicherblocks in Abhängigkeit von dem Teillöschungsbefehl und Programmieren des zweiten Subblocks des Speicherblocks nach dem teilweisen Löschen des zweiten Subblocks.
  • Gemäß noch einem anderen Aspekt des erfinderischen Konzepts wird ein Verfahren zum Betreiben eines nichtflüchtigen Speicherelements zur Verfügung gestellt. Das nichtflüchtige Speicherelement umfasst einen Speicherblock, der durch eine Mehrzahl von Wortleitungen definiert ist, die zwischen einer String-Auswahlleitung und einer gemeinsamen Sourceleitung, die mit der String-Auswahlleitung korrespondiert, angeordnet sind. Das Verfahren umfasst: Löschen des Speicherblocks durch Anlegen einer ersten Löschspannung an die Mehrzahl von Wortleitungen des Speicherblocks und teilweises Löschen mindestens einer Wortleitung des Speicherblocks durch Anlegen einer zweiten Löschspannung an mindestens eine Wortleitung, wobei die erste Löschspannung sich von der zweiten Löschspannung unterscheidet.
  • Gemäß noch einem weiteren Aspekt des erfinderischen Konzepts wird ein nichtflüchtiges Speicherelement zur Verfügung gestellt, das einen nichtflüchtigen Speicherblock, der durch eine Mehrzahl von Wortleitungen definiert ist, die zwischen einer String-Auswahlleitung und einer gemeinsamen Sourceleitung, die mit der String-Auswahlleitung korrespondiert, angeordnet sind, und eine Steuerschaltung umfasst, die dazu ausgebildet ist, einen ersten Subblock des Speicherblocks zu programmieren, zu bestimmen, wann eine Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird und einen zweiten Subblock des Speicherblocks teilweise zu löschen, sobald bestimmt ist, dass die Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird.
  • Gemäß einem weiteren Aspekt des erfinderischen Konzepts wird ein Speichersystem zur Verfügung gestellt, das ein nichtflüchtiges Speicherelement und eine Speichersteuereinheit umfasst. Das nichtflüchtige Speicherelement umfasst einen nichtflüchtigen Speicherblock, der durch eine Mehrzahl von Wortleitungen definiert ist, die zwischen einer String-Auswahlleitung und einer gemeinsamen Source-Leitung, die mit der String-Auswahlleitung korrespondiert, angeordnet sind, und eine Steuerschaltung, die dazu ausgebildet ist, Programmierbefehle und Teillöschungsbefehle betreffend Wortleitungen des nichtflüchtigen Speicherblocks auszuführen. Die Speichersteuereinheit ist dazu ausgebildet, Programmierbefehle zu dem nichtflüchtigen Speicherelement zu übertragen, um einen ersten Subblock des Speicherblocks zu programmieren, zu bestimmen, warm eine Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird, einen Teillöschungsbefehl von der Speichersteuereinheit zu dem nichtflüchtigen Speicherelement zu übertragen, sobald bestimmt ist, dass die Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird, und Programmierbefehle zu dem nichtflüchtigen Speicherelement zu übertragen, um den zweiten Subblock des Speicherblocks nach dem Übertragen des Teillöschungsbefehls zu programmieren.
  • Gemäß noch einem anderen Aspekt des erfinderischen Konzepts wird ein Verfahren zum Betreiben eines nichtflüchtigen Speicherelements zur Verfügung gestellt. Das Verfahren umfasst: Empfangen einer Adresse, von Daten und eines Programmierbefehls und Programmieren der Daten in eine Seite, die durch eine Wortleitung aus der Mehrzahl von Wortleitungen definiert ist, die mit der Adresse korrespondiert, die mit einem NAND-Speicherzellenstring in einem Speicherblock verbunden sind, und Löschen eines Subblocks, der von einer nächsten Wortleitung, die der mit der Adresse korrespondierenden Wortleitung folgt, bis zu einer letzten Wortleitung reicht, in Abhängigkeit vom Programmierbefehl.
  • Gemäß noch einem anderen Aspekt des erfinderischen Konzepts wird ein Verfahren zum Betreiben eines nichtflüchtigen Speicherelements zur Verfügung gestellt. Das Verfahren umfasst: Empfangen einer Adresse, von Daten und eines Programmierbefehls und Programmieren der Daten in eine Seite, die durch eine Wortleitung aus der Mehrzahl von Wortleitungen definiert ist, die mit der Adresse korrespondiert, die mit einem NAND-Speicherzellenstring in einem Speicherblock verbunden sind, in Abhängigkeit vom Programmierbefehl, Anlegen einer Zwischenspannung an mindestens eine Wortleitung neben der mit der Adresse korrespondierenden Wortleitung in Abhängigkeit vom Programmierbefehl, und Löschen eines Subblocks, der von einer nächsten Wortleitung, die der mindestens einen Wortleitung folgt, bis zu einer letzten Wortleitung reicht, in Abhängigkeit vom Programmierbefehl.
  • Gemäß einem anderen Aspekt des erfinderischen Konzepts wird ein nichtflüchtiges Speicherelement zur Verfügung gestellt, das ein Speicherzellenfeld mit einem Speicherblock umfasst, der einen NAND-Speicherzellenstring, der mit einer Mehrzahl von Wortleitungen verbunden ist, und einen Zugriffsteuerteil beinhaltet, der dazu ausgebildet ist, eine Adresse, Daten und einen Programmierbefehl zu empfangen, die Daten in eine Seite zu programmieren, die durch eine Wortleitung aus der Mehrzahl von Wortleitungen definiert ist, die mit der Adresse korrespondiert, und dann einen Subblock automatisch zu löschen, der von einer nächsten Wortleitung, die der Wortleitung folgt, die mit der Adresse korrespondiert, bis zu einer letzten Wortleitung reicht.
  • Gemäß einem anderen Aspekt des erfinderischen Konzepts wird ein nichtflüchtiges Speicherelement zur Verfügung gestellt, das ein Speicherzellenfeld mit einem Speicherblock umfasst, der einen NAND-Speicherzellenstring, der mit einer Mehrzahl von Wortleitungen verbunden ist, und einen Zugriffsteuerteil beinhaltet, der dazu ausgebildet ist, eine Adresse, Daten und einen Programmierbefehl zu empfangen, die Daten in eine Seite zu programmieren, die durch eine Wortleitung aus der Mehrzahl von Wortleitungen definiert ist, die mit der Adresse korrespondiert, eine Zwischenspannung an mindestens eine Wortleitung neben der mit der Adresse korrespondierenden Wortleitung anzulegen und einen Subblock zu löschen, der von einer Wortleitung, die der mindestens einen Wortleitung folgt, bis zu einer letzten Wortleitung reicht.
  • Gemäß noch einem anderen Aspekt des erfinderischen Konzepts wird ein Speichersystem zur Verfügung gestellt, das ein nichtflüchtiges Speicherelement und eine Speichersteuereinheit umfasst, die dazu ausgebildet ist, das nichtflüchtige Speicherelement zu steuern. Das nichtflüchtige Speicherelement umfasst ein Speicherzellenfeld mit einem Speicherblock, der einen NAND-Speicherzellenstring, der mit einer Mehrzahl von Wortleitungen verbunden ist, und einen Zugriffsteuerteil beinhaltet, der dazu ausgebildet ist, eine Adresse, Daten und einen Programmierbefehl zu empfangen, die Daten in eine Seite zu programmieren, die durch eine Wortleitung aus der Mehrzahl von Wortleitungen definiert ist, die mit der Adresse korrespondiert, und dann automatisch einen Subblock zu löschen, der von einer nächsten Wortleitung, die der Wortleitung folgt, die mit der Adresse korrespondiert, bis zu einer letzten Wortleitung reicht.
  • Gemäß noch einem weiteren Aspekt des erfinderischen Konzepts wird eine Speicherkarte zur Verfügung gestellt, die ein nichtflüchtiges Speicherelement, eine Kartenschnittstelle und eine Speichersteuereinheit umfasst, die dazu ausgebildet ist, eine Datenkommunikation der Kartenschnittstelle und das nichtflüchtige Speicherelement zu steuern. Das nichtflüchtige Speicherelement umfasst ein Speicherzellenfeld mit einem Speicherblock, der einen NAND-Speicherzellenstring, der mit einer Mehrzahl von Wortleitungen verbunden ist, und einen Zugriffsteuerteil beinhaltet, der dazu ausgebildet ist, eine Adresse, Daten und einen Programmierbefehl zu empfangen, die Daten in eine Seite zu programmieren, die durch eine Wortleitung aus der Mehrzahl von Wortleitungen definiert ist, die mit der Adresse korrespondiert, und dann automatisch einen Subblock zu löschen, der von einer nächsten Wortleitung, die der Wortleitung folgt, die mit der Adresse korrespondiert, bis zu einer letzten Wortleitung reicht.
  • Gemäß noch einem weiteren Aspekt des erfinderischen Konzepts wird ein dreidimensionales nichtflüchtiges Speicherelement zur Verfügung gestellt, das eine Mehrzahl von Speicherzellenfeldern in einer dreidimensionalen Anordnung und einen Zugriffsteuerteil umfasst, der dazu ausgebildet ist, eine Adresse, Daten und einen Programmierbefehl zu empfangen, die Daten in eine Seite zu programmieren, die durch eine mit der Adresse korrespondierenden Wortleitung aus der Mehrzahl von Wortleitungen definiert ist, die in einem der Speicherzellenfelder vorgesehen sind und mit einem NAND-Speicherzellenstring verbunden sind, und dann automatisch einen Subblock zu löschen, der von einer nächsten Wortleitung, die der Wortleitung folgt, die mit der Adresse korrespondiert, bis zu einer letzten Wortleitung reicht.
  • Vorteilhafte Ausführungsformen der Erfindung, wie sie nachfolgend ausführlich beschrieben werden, sind in den Zeichnungen dargestellt, in denen:
  • 1 ein Blockdiagramm zeigt, das ein nichtflüchtiges Speicherelement gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt;
  • 2A ein Schaubild zeigt, das ein Beispiel von Subblöcken eines zweidimensionalen Speicherblocks gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt;
  • 2B ein Schaubild zeigt, das ein anderes Beispiel von Subblöcken eines zweidimensionalen Speicherblocks gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt;
  • 3 ein Schaubild zeigt, das ein Beispiel eines dreidimensionalen Speicherblocks gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt;
  • 4 ein Schaubild zeigt, das eine Störung in der Schwellenspannungsverteilung der nichtflüchtigen Speicherzellen bedingt durch eine Passspannung während einer Programmieroperation darstellt, und weiter eine Erholung der Schwellenspannungsverteilung unter Verwendung einer teilweisen Löschoperation darstellt;
  • 5A ein Flussbild zeigt, das ein Verfahren zum Betreiben des nichtflüchtigen Speicherelements von 1 gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt;
  • 5B ein Schaubild zeigt, das eine Befehlssequenz und Betrieb eines nichtflüchtigen Speicherelements gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt;
  • 5C ein Timingdiagramm zeigt, das ein Verfahren zum Betreiben des nichtflüchtigen Speicherelements von 1 gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt;
  • 6 ein Schaubild zeigt, das eine Operationssequenz eines Verfahrens zum Betreiben des nichtflüchtigen Speicherelements von 1 gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt;
  • 7A ein Schaubild zeigt, das eine Befehlssequenz gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt;
  • 7B ein Timingdiagramm zeigt, das ein Verfahren zum Betreiben des nichtflüchtigen Speicherelements von 1 gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt;
  • 7C ein Schaubild zeigt, das eine Operationssequenz eines Verfahrens zum Betreiben des nichtflüchtigen Speicherelements von 1 gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt;
  • 8 bis 13 Blockdiagramme von zugehörigen Speichersystemen zeigen, die ein nichtflüchtiges Speicherelement gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts beinhalten, und
  • 14 ein Blockdiagramm eines Datenverarbeitungssystems zeigt, das ein Speichersystem von 13 gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts beinhaltet.
  • Es versteht sich, dass wenn ein Element als ”verbunden” oder ”gekoppelt” mit einem anderen Element bezeichnet ist, es direkt mit dem anderen Element verbunden oder gekoppelt sein kann oder dazwischen liegende Elemente vorhanden sein können. Wenn hingegen ein Element als ”direkt verbunden” oder ”direkt gekoppelt” mit einem anderen Element bezeichnet ist, sind keine dazwischen liegenden Elemente vorhanden. In dieser Beschreibung umfasst der Ausdruck ”und/oder” alle und jede Kombination von einem oder mehreren der zugehörigen aufgezählten Gegenstände und kann als ”/” abgekürzt sein.
  • 1 zeigt ein Blockdiagramm, das ein nichtflüchtiges Speicherelement 10 gemäß einer oder mehrerer Ausführungsformen des erfinderischen Konzepts darstellt. Das nichtflüchtige Speicherelement 10 umfasst allgemein ein Speicherzellenfeld 20 und eine Zugriffsteuereinheit 22.
  • Die Zugriffsteuereinheit 22 dieses Beispiels umfasst eine Spannungsversorgungsschaltung 28, eine Steuerlogik 50, einen Spaltendekodierer 60, einen Seitenpuffer- und Abtastverstärker(S/A)-Block 70, eine Y-Gateschaltung 80 und einen Eingabe-/Ausgabe(I/O)-Block 90. Die Spannungsversorgungsschaltung 28 dieses Beispiels umfasst einen Spannungsgenerator (Spannungserzeuger) 30 und einen Zeilendekodierer 40 und die Steuerlogik 50 dieses Beispiels umfasst einen Dekodierer 52 und einen Kodegenerator (Kodeerzeuger) 54. Funktionsbeispiele der Zugriffsteuereinheit 22 werden später im Zusammenhang mit Ausführungsformen des erfinderischen Konzepts beschrieben.
  • Nicht einschränkende Beispiele des Speicherzellenfelds 20 werden anschließend mit Bezug zu den 2A, 2B und 3 beschrieben.
  • Mit Bezug zu den Beispielen der 2A und 2B umfasst ein Speicherblock MB des Speicherzellenfelds 20 eine Mehrzahl ”m” von NAND-Speicherzellenstrings 20-1, 20-2, ..., 20-m, wobei ”m” eine natürliche Zahl ist. In diesen speziellen Beispielen sind die NAND-Speicherzellenstrings 20-1 bis 20-m in einer einzigen Ebene oder Schicht angeordnet oder ausgeführt.
  • Jeder der NAND-Speicherzellenstrings 20-1 bis 20-m umfasst eine Mehrzahl von nichtflüchtigen Speicherzellen 21, die in Serie verbunden sind. Zum Beispiel beinhaltet der NAND-Speicherzellenstring 20-1 eine Mehrzahl von nichtflüchtigen Speicherzellen 21, die in Serie zwischen einen ersten Auswahltransistor (oder einen Stringauswahltransistor) ST1, der mit der Bitleitung BL1 verbunden ist, und einen zweiten Auswahltransistor (oder einen Masseauswahltransistor) ST2, der mit einer gemeinsamen Sourceleitung CSL verbunden ist, eingeschleift sind. Ein Gate des ersten Auswahltransistors ST1 ist mit einer Stringauswahlleitung SSL verbunden und ein Gate des zweiten Auswahltransistors ST2 ist mit einer Masseauswahlleitung GSL verbunden. Gates der zugehörigen nichtflüchtigen Speicherzellen 21 sind mit einer Mehrzahl von Wortleitungen WL0 bis WL63 verbunden. Die NAND-Speicherzellenstrings 20-2 bis 20-m weisen die gleiche oder im Wesentlichen die gleiche Struktur auf wie der NAND-Speicherzellenstring 20-1.
  • In den Beispielen der 2A und 2B sind 64 Wortleitungen WL0 bis WL63 dargestellt. Es versteht sich jedoch, dass das erfinderische Konzept nicht auf die Anzahl an Wortleitungen beschränkt ist.
  • Die nichtflüchtigen Speicherzellen 21 in den NAND-Speicherzellenstrings 20-1 bis 20-m können unter Verwendung von elektrisch löschbaren programmierbaren Nurlesespeicher(EEPROM)-Flashzellen ausgebildet sein, die dazu geeignet sind, in jeder Zelle ein oder mehrere Bits zu speichern. Mit anderen Worten, jede nichtflüchtige Speicherzelle 21 kann durch eine NAND-Flashspeicherzelle ausgebildet sein, die ein Bit (SLC) oder mehrere Bits (MLC) speichert.
  • Wenn die Speicherzellen des Speicherblocks SLC sind, speichern die Speicherzellen der Speicherstrings, die mit der gleichen Wortleitung verbunden sind, eine adressierbare Seite Daten. Wenn hingegen die Speicherzellen des Speicherblocks MLC sind, speichern die Speicherzellen der Speicherstrings, die mit der gleichen Wortleitung verbunden sind, mehrere adressierbare Seiten Daten. Zum Beispiel beinhaltet im Falle eines MLC mit 2 Bits jede Wortleitung zwei adressierbare Seiten Daten, d. h., eine LSB-Seite der niedrigstwertigen Bits (wobei LSB Least-Significant Bit bedeutet) und eine MSB-Seite der höchstwertigen Bits (wobei MSB Most-Significant Bit bedeutet).
  • 3 zeigt ein weiteres Beispiel des Speicherzellenfelds 20 von 1. Hier sind die Speicherzellenstrings 20'-1, 20'-2, ..., 20'-k (wobei ”k” eine natürliche Zahl ist) in drei Dimensionen auf unterschiedlichen Ebenen oder Schichten angeordnet. Die NAND-Speicherzellenstrings 20'-1 bis 20'-k dieses Beispiels nutzen eine Zugriffsteuereinheit gemeinsam, die auf die NAND-Speicherzellenstrings 20-1 bis 20'-k zugreift. Wie gezeigt ist kann der NAND-Speicherzellenstring 20'-1 in einer ersten Schicht 21-1 angeordnet sein, der zweite NAND-Speicherzellenstring 20'-2 kann in einer zweiten Schicht 21-2 angeordnet sein und der k-te NAND-Speicherzellenstring 20'-k kann in einer k-ten Schicht 21-k angeordnet sein.
  • Die Schichten 21-1 bis 21-k können beispielsweise aus einem Waferstapel, einem Chipstapel oder einem Zellenstapel gebildet sein. Die Schichten 21-1 bis 21-k können unter Verwendung eines oder mehrerer Durchkontaktierelemente miteinander verbunden sein, wie einer Silizium-Durchkontaktierung (Through-Silicon Via, TSV), einem Leiterpunkt (Conductive Bump) oder einer Drahtverbindung.
  • Jede der Schichten 21-1 bis 21-k kann eine Mehrzahl von Zellenstrings umfassen. Zum Beispiel kann der erste NAND-Speicherzellenstring 20'-1 der ersten Schicht 21-1 eine Mehrzahl von nichtflüchtigen Speicherzellen 21 beinhalten, z. B. NAND-Flashspeicherzellen, die in Serie zwischen eine Mehrzahl von Auswahltransistoren ST11 und ST21 eingeschleift sind. Der zweite NAND-Speicherzellenstring 20-2 der zweiten Schicht 21-2 beinhaltet eine Mehrzahl von nichtflüchtigen Speicherzellen 21, z. B. NAND-Flashspeicherzellen, die in Serie zwischen eine Mehrzahl von Auswahltransistoren ST12 und ST22 eingeschleift sind. Der k-te NAND-Speicherzellenstring 20'-k der k-ten Schicht 21-k beinhaltet eine Mehrzahl von nichtflüchtigen Speicherzellen 21, z. B. NAND-Flashspeicherzellen, die in Serie zwischen eine Mehrzahl von Auswahltransistoren ST1k und ST2k eingeschleift sind.
  • Wie im Beispiel von 3 gezeigt kann jeder der NAND-Speicherzellenstrings 20'-1 bis 20'-k Wortleitungen WL0 bis WL63, eine gemeinsame Sourceleitung CSL und eine Bitleitung BL1 gemeinsam nutzen. Mit anderen Worten, jeder der NAND-Speicherzellenstrings kann an korrespondierenden Positionen in den zugehörigen Schichten 21-1 bis 21-k mit einem korrespondierenden der Seitenpuffer 71-1 bis 71-m (PB1 bis PBm) verbunden sein, die in einem Seitenpuffer- und Abtastverstärker(S/A)-Block 70 vorgesehen sind (1).
  • Ein beispielhaftes dreidimensionales (3D) nichtflüchtiges Speicherelement ist im US-Patent Nr. 7,679,133 offenbart, dessen Offenbarung hiermit durch Bezugnahme zum Inhalt dieser Beschreibung gemacht wird.
  • Funktionale Ausführungsformen des erfinderischen Konzepts werden nun mit Bezug zu den 1 und 2A beschrieben. Im Beispiel von 2A umfasst der Speicherblock MB einen ersten Subblock SB1 und einen zweiten Subblock SB2, wobei jeder Subblock mindestens eine Wortleitung umfasst. In diesem dargestellten Beispiel umfasst der erste Subblock SB1 Wortleitungen WL0 bis WL31 und der zweite Subblock SB2 umfasst Wortleitungen WL32 bis WL63. Es versteht sich jedoch, dass das erfinderische Konzept nicht auf die Konfiguration von 2A beschränkt ist.
  • Die Zugriffsteuereinheit 22 greift auf das Speicherzellenfeld 20 zu, um in Abhängigkeit von einem Befehl (oder einem Befehlssatz) und von außen empfangenen Adressen eine Datenzugriffsoperation durchzuführen. Die Adresse kann beispielsweise von einer externen Speichersteuereinheit empfangen werden. Die Datenzugriffsoperation kann eine Programmieroperation, eine Leseoperation oder eine Löschoperation sein. Es versteht sich, dass die Programmieroperation eine Programmierverifizierungsoperation beinhaltet und die Löschoperation eine Löschverifizierungsoperation beinhaltet.
  • Wie nun als Beispiel mit Bezug zu den 1 bis 5B erläutert wird, umfasst ein Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements gemäß Ausführungsformen des erfinderischen Konzepts ein Programmieren eines ersten Subblocks eines Speicherblocks, Bestimmen im nichtflüchtigen Speicherelement, wann eine Referenzwortleitung beim Programmieren des ersten Subblocks programmiert wird, und teilweises Löschen eines zweiten Subblocks des Speicherblocks, sobald bestimmt ist, dass die Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird. Im folgenden Beispiel ist die Referenzwortleitung die Wortleitung WL31.
  • Zum Beispiel mit Bezug zu den 1 und 2A empfängt die Zugriffsteuereinheit 22, wenn eine Programmieroperation durchzuführen ist, eine Adresse, Daten und einen Programmierbefehl von einer Speichersteuereinheit und ein Programmieren wird sequentiell ausgeführt, wobei mit der ersten Wortleitung WL01 des Speicherblocks MB begonnen wird. Im Beispiel von 2A ist die Wortleitung WL31 als die Referenzwortleitung bezeichnet, und sie ist die letzte der sequentiell programmierten Wortleitungen WL des Subblocks SB1.
  • Es wird angenommen, dass die von der Zugriffsteuereinheit 22 empfangene Programmieradresse die Referenzwortleitung WL31 identifiziert. In diesem Fall führt die Zugriffsteuereinheit 22 sowohl eine Programmieroperation wie eine Teillöschoperation aus. Die Zugriffsteuereinheit 22 spricht nämlich auf den Programmierbefehl zum Programmieren der Wortleitung WL31 an, die von der empfangenen Adresse identifiziert ist, um dann eine Teillöschoperation auszuführen, bei der die nichtprogrammierten Wortleitungen WL32 bis WL63 gelöscht werden. Wie später erläutert wird kann im Falle von MLC, die Wortleitung WL31 teilweise programmiert werden (z. B. LSB-Seitenprogrammierung), bevor die Teillöschoperation ausgeführt wird, und dann vollständig programmiert werden (z. B. MSB-Seitenprogrammierung), nachdem die Teillöschoperation ausgeführt ist.
  • Hierbei bedeutet eine ”teilweise Löschoperation” eine Löschoperation, bei der weniger als alle der Wortleitungen WL eines Speicherblocks gelöscht werden. Dies ist im Gegensatz zu einer normalen Löschoperation, bei der alle Wortleitungen WL eines Speicherblocks gelöscht werden. In dieser Hinsicht wird auf die beispielhaften Vorgabebedingungen Bezug genommen, die unten in der Tabelle angegeben sind: TABELLE
    Normal Löschen Teilweise Löschen
    Bitleitungen (BL) Potentialfrei Potentialfrei
    SSL Potentialfrei Potentialfrei
    Ausgewählte WL Erste WL-Spannung Zweite WL-Spannung
    Nichtausgewählte WL n/a Potentialfrei
    GSL Potentialfrei Potentialfrei
    CSL Potentialfrei Potentialfrei
    Substrat Erste hohe Löschspannung Zweite hohe Löschspannung
  • In dem in der Tabelle angegebenen Beispiel sind bei einer normalen Löschoperation die Bitleitungen, SSL, GSL und CSL alle elektrisch potentialfrei (das heißt, in einem sogenannten Floatingzustand), die Substratspannung wird auf eine erste hohe Löschspannung wie etwa 20 V vorgespannt und die Wortleitungen werden auf eine erste Spannung wie etwa 0 V vorgespannt. Da der gesamte Block gelöscht wird, gibt es bei einer normalen Löschoperation keine ”nichtausgewählten” Wortleitungen. Ebenso versteht es sich, dass die Substratspannung an ein Halbleitermaterial des Speicherzellenfelds angelegt werden kann, z. B. eine P-Mulde und eine N-Mulde.
  • In dem in der Tabelle angegebenen Beispiel sind bei einer teilweisen Löschoperation nichtausgewählte Wortleitungen WL (z. B. Wortleitungen des Subblocks SB1 von 2A) elektrisch potentialfrei (das heißt, in einem sogenannten Floatingzustand), ebenso die Bitleitungen, SSL, GSL und CSL. In einem anderen Beispiel kann an die nicht ausgewählten Wortleitungen WL (z. B. Wortleitungen des Subblocks SB1 von 2A) eine hohe Spannung, wie eine hohe Löschspannung, an das Substrat angelegt werden. Die Substratspannung wird auf eine zweite hohe Löschspannung vorgespannt und die ausgewählten Wortleitungen (z. B. Wortleitungen des Subblocks SB2 von 2A) werden auf eine zweite WL-Spannung vorgespannt.
  • Bei der Teillöschoperation wird durch einen elektrisch potentialfreien Zustand der nichtausgewählten Wortleitungen WL (z. B. Wortleitungen des Subblocks SB1 von 2A) oder durch Anlegen einer Hochspannung an die nichtausgewählten Wortleitungen WL keine F-N-Tunnelung induziert und die zuvor gespeicherten Daten werden nicht gelöscht.
  • Die erste WL-Spannung kann zur zweiten WL-Spannung gleich sein oder sich von ihr unterscheiden und die erste hohe Löschspannung kann zur zweiten hohen Löschspannung gleich sein oder sich von ihr unterscheiden. Zum Beispiel können die erste und die zweite WL-Spannung jeweils 0 V betragen und die erste und die zweite hohe Löschspannung können jeweils 20 V betragen. Die Ausführungsformen sind jedoch nicht auf diese speziellen Beispielspannungen beschränkt.
  • Es ist von Bedeutung, dass das Spannungsdifferential zwischen den ausgewählten Wortleitungen WL und dem Substrat bei der Teillöschoperation geringer sein kann als das Spannungsdifferential zwischen den ausgewählten Wortleitungen und dem Substrat bei der normalen Löschoperation. Dies liegt daran, dass bei der Teillöschoperation ein geringeres Spannungsdifferential notwendig ist, weil die Wortleitungen, die gelöscht werden, schon in einem ”gelöschten” Zustand sind. Die Verwendung eines geringeren Spannungsdifferentials kann das Auftreten eines Überlöschzustands verringern, der aus höheren Spannungsdifferentialen zwischen den Wortleitungen WL und dem Substrat entstehen kann. Dementsprechend kann zum Beispiel die zweite WL-Spannung für die Teillöschoperation mehr als die erste WL-Spannung für die normale Löschoperation betragen und/oder die zweite hohe Löschspannung (Substratspannung) für die Teillöschoperation kann weniger betragen als die erste hohe Löschspannung (Substratspannung) für die normale Löschoperation.
  • Im Beispiel von 2A ist das teilweise Löschen der Wortleitungen WL32 bis WL63 wirksam, um die Spannungsverteilungen der gelöschten Zellen ”zurückzusetzen”, bevor die Wortleitungen WL32 bis WL63 programmiert werden. Insbesondere beim sequentiellen Programmieren der Wortleitungen des Speicherblocks MB sind die gelöschten Zellen der ”oberen” Wortleitungen (z. B. der Wortleitungen WL von Subblock SB2) besonders anfällig für Schwellenspannungsverschiebungen, die durch ein Anlegen von Passspannungen an nicht ausgewählte Wortleitungen beim Programmieren der ”unteren” Wortleitungen (z. B. der Wortleitungen WL von Subblock SB1) bedingt sind. Dies wird hier als ”Vpass disturb”, als Passspannungsstörung bezeichnet. Die Verschiebung von Spannungsverteilungen der gelöschten Zellen kann ein Schwellenspannungsverteilungsfenster zwischen den gelöschten Zellen und programmierten Zellen nach Beendigung des Programmierens des Speicherblocks MB nachteilig beeinflussen.
  • Zum Beispiel mit Bezug zu 4, die ein Schaubild zum Erläutern eines Beispiels einer Störung in einer Schwellenspannungsverteilung zeigt, die durch Anlegen einer Passspannung bei einem sequentiellen Programmieren von Wortleitungen WL bedingt ist. Im dargestellten Beispiel beinhaltet ein Speicherblock MB 64 Wortleitungen, d. h., WL0 bis WL63. Vier Speicherzellen sind mit jeder Wortleitung verbunden dargestellt. Ebenso können in diesem Beispiel die NAND-Speicherzellen jeweils 3 Bit Daten speichern, wobei ”E” eine NAND-Speicherzelle in einem gelöschten Zustand bezeichnet und ”P7” eine NAND-Speicherzelle mit der höchsten Schwellenspannung in einem programmierten Zustand bezeichnet.
  • Die Verteilungskurve L1 beschreibt eine anfängliche Schwellenspannungsverteilung (Vth) von gelöschten Zellen E, die mit der Wortleitung WL63 verbunden sind, vor einer Ausführung der Programmieroperation des Speicherblocks MB. Die Verteilungskurve L2 beschreibt eine Vth-Verteilung von gelöschten Zellen E, die mit der Wortleitung WL63 verbunden sind, nachdem eine Programmieroperation an einer untern Wortleitung, z. B. der Wortleitung WL31, ausgeführt worden ist. Es ist zu erkennen, dass eine Passspannungsstörung Vpass disturb dazu führt, dass die Spannungsverteilung der gelöschten Zellen der Wortleitung WL63 in Richtung einer positiven Spannung verschoben werden. Anwenden der teilweisen Löschoperation bei der Wortleitung WL63 führt dazu, dass die Spannungsverteilung der gelöschten Zellen der Wortleitung WL63 zur ursprünglichen Vth-Verteilungskurve L1 zurückfällt oder im Wesentlichen zurückfällt. Auf diese Weise wird ein geeignetes Schwellenspannungsverteilungsfenster zwischen den gelöschten Zellen und den programmierten Zellen nach Beendigung des Programmierens des Speicherblocks MB beibehalten.
  • Im Falle der SLC-Programmierung wird im Beispiel der vorliegenden Ausführungsformen die Teillöschoperation des zweiten Subblocks SB2 von 2A nach einer Einzelbitprogrammierung der Referenzwortleitung WL31 ausgeführt.
  • Wie oben erwähnt kann jedoch im Falle einer MLC-Programmierung die Wortleitung WL31 teilweise programmiert werden (z. B. LSB-Seitenprogrammierung), bevor die teilweise Löschoperation durchgeführt wird, und dann nach der teilweisen Löschoperation vollständig programmiert werden (z. B. MSB-Seitenprogrammierung). Mit einer zunehmenden Anzahl von in jeder Speicherzelle gespeicherten Datenbits wird es zunehmend schwieriger, Zuverlässigkeit eines Speicherelements, das Multibitdaten (oder Multileveldaten) speichert, zu sichern. Ein potentieller Faktor, der eine Verschlechterung der Zuverlässigkeit bewirken kann, sind unbeabsichtigte Schwellenspannungsschwankungen, die aus einer Kopplung zwischen benachbarten Speicherzellen resultieren. Zum Beispiel kann eine Schwellenspannung einer zuvor programmierten Speicherzelle aufgrund einer Kopplung, wenn eine Speicherzelle neben einer programmierten Speicherzelle programmiert wird, verändert werden. In einem Ansatz zur Behandlung solcher Kopplungseffekte wurden Techniken entwickelt, die auch als Schattenprogrammieren und Adressen-Scrambling bezeichnet werden. In diesem Fall können im Beispiel von 2A ein oder mehrere untere Bits (oder Seiten) der Wortleitung WL32 des zweiten Subblocks SB2 programmiert werden, bevor ein oder mehrere obere Bits (oder Seiten) der Wortleitung WL31 des ersten Subblocks SB1 programmiert werden. Damit kann das teilweise Löschen des zweiten Subblocks SB2 nach dem Programmieren der unteren Bits der Wortleitung WL31 durchgeführt werden, um ein Löschen der programmierten unteren Bits der Wortleitung WL32 zu verhindern. Mit anderen Worten, der zweite Subblock SB2 kann zum Beispiel teilweise gelöscht werden, nachdem eine LSB-Seite der Referenzwortleitung WL31 programmiert ist und bevor eine MSB-Seite der Referenzwortleitung WL31 programmiert wird. Zum Zwecke der Definition werden Programmierschemata, in denen mindestens ein unteres Bit (LSB) mindestens einer oberen Wortleitung WL programmiert wird, bevor mindestens ein oberes Bit (MSB) mindestens einer unteren Wortleitung WL programmiert wird, kollektiv als Schattenprogrammierung bezeichnet.
  • Im Beispiel von 2A ist wie oben beschrieben die Referenzwortleitung WL31 und der Speicherblock MB beinhaltet zwei Subblöcke SB1 und SB2. Das nichtflüchtige Speicherelement spricht auf einen Programmierbefehl an und führt automatisch eine Programmieroperation und eine Teillöschoperation aus, wenn eine empfangene Programmieradresse mit der Referenzwortleitung WL31 korrespondiert. Namentlich wird mindestens eine Seite der Referenzwortleitung WL31 programmiert und am zweiten Subblock SB2 wird ein teilweises Löschen durchgeführt. Die Ausführungsformen sind jedoch nicht darauf beschränkt, dass zwei Subblöcke pro Speicherblock vorgesehen sind, und sie sind auch nicht darauf beschränkt, dass die Subblöcke eine gleiche Anzahl von Wortleitungen WL aufweisen.
  • Im Beispiel von 2B umfasst der Speicherblock MB drei Subblöcke SB1, SB2 und SB3, wobei der Subblock SB1 Wortleitungen WL0 bis WL31 beinhaltet, der Subblock SB2 Wortleitungen WL32 bis WL33 beinhaltet und der Subblock SB3 Wortleitungen WL34 bis WL63 beinhaltet.
  • In der Konfiguration von 2B kann, nachdem alle Wortleitungen WL0 bis WL31 des ersten Subblocks SB1 programmiert sind, eine teilweise Löschoperation am zweiten und dritten Subblock SB2 und SB3 gleichzeitig durchgeführt werden. Alternativ kann, nachdem alle Wortleitungen WL0 bis WL31 des ersten Subblocks SB1 programmiert sind, eine teilweise Löschoperation nur am zweiten Subblock SB2 ausgeführt werden, und nachdem der zweite Subblock SB2 programmiert worden ist, kann eine teilweise Löschoperation nur am dritten Subblock SB3 ausgeführt werden. Als noch weitere Alternative kann, nachdem alle Wortleitungen WL0 bis WL31 des ersten Subblocks SB1 programmiert sind, eine teilweise Löschoperation sowohl am zweiten Subblock SB2 und am dritten Subblock SB3 ausgeführt werden, und nachdem der zweite Subblock SB2 programmiert worden ist, kann ein teilweises Löschen nur am dritten Subblock SB3 ausgeführt werden.
  • In noch einer Alternative in Zusammenhang mit der Konfiguration von 2B kann eine Zwischenspannung an die Wortleitungen WL32 und WL33 während einer teilweisen Löschoperation angelegt werden, die nach einem Programmieren der letzten Wortleitung (WL31) des ersten Subblocks SB1 durchgeführt wird. Zum Beispiel kann die Zwischenspannung Vmid eine Spannung zwischen der Substratspannung und der Wortleitungsspannung sein (z. B. 0 V), die an die Wortleitungen WL des dritten Subblocks SB3 während der teilweisen Löschoperation angelegt wird. In dem Fall, wenn die WL-Spannung des dritten Subblocks 0 V beträgt und die Substratlöschspannung 15 bis 20 V beträgt, kann die Zwischenspannung Vmid beispielsweise im Bereich von 5 bis 8 V liegen. Die Zwischenspannung ist jedoch nicht auf diesen speziellen Spannungsbereich beschränkt. Ein Anlegen der Zwischenspannung Vmid während der Teillöschoperation kann wirksam sein, um eine Schwellenstörung der unteren Wortleitungen WL (d. h., der Wortleitungen des Subblocks SB1) während der Teillöschoperation zu reduzieren.
  • Das erfinderische Konzept ist auch auf die drei-dimensionale Konfiguration anwendbar, die als Beispiel in 3 dargestellt ist. In diesem Fall kann zum Beispiel die gemeinsam genutzte Wortleitung WL31 als die Referenzwortleitung bezeichnet sein, in welchem Fall die Speicherzellen der gemeinsam genutzten Wortleitungen WL0 bis WL31 einen ersten Subblock bilden und die gemeinsam genutzten Wortleitungen WL0 bis WL32 einen zweiten Subblock bilden. Wie bei den vorhergehenden Beispielen kann das nichtflüchtige Speicherelement 10, das auf einen externen Programmierbefehl anspricht, sowohl eine Programmieroperation wie eine Teillöschoperation (z. B. am zweiten Subblock) ausführen, wenn eine Programmieradresse mit der Referenzwortleitung WL31 korrespondiert.
  • Das nichtflüchtige Speicherelement 10 kann die Programmieroperation an einer Wortleitung und eine teilweise Löschoperation an einem nächsten Subblock in Abhängigkeit von einem einzigen Programmierbefehl sequentiell durchführen. Alternativ kann das nichtflüchtige Speicherelement 10 einen Programmierbefehl und einen Subblocklöschbefehl von einer externen Einrichtung sequentiell empfangen. Dabei kann der Subblocklöschbefehl eine Adresse beinhalten, die eine nächste Wortleitung angibt, die nach einer Wortleitung kommt, die vom Programmierbefehl betroffen ist.
  • In den oben angegebenen Beispielen ist die Referenzwortleitung WL grob in einem Zentralbereich der sequentiell angeordneten Wortleitungen WL des Speicherblocks MB. Die Ausführungsformen sind jedoch in dieser Hinsicht nicht eingeschränkt. Weiter kann eine Auswahl der Referenzwortleitung WL experimentell durchgeführt werden, d. h., durch Versuch und Irrtum am nichtflüchtigen Speicherelement. Sobald die Referenzwortleitung WL bestimmt ist, kann ihre Adresse in einem Informationsspeicherblock und/oder einem e-Fuse des nichtflüchtigen Speicherelements 10 gespeichert werden.
  • Wie zuvor erwähnt umfasst die Zugriffsteuereinheit 22 des Beispiels von 1 eine Spannungsversorgungsschaltung 28, eine Steuerlogik 50, einen Spaltendekodierer 60, einen Seitenpuffer- und Abtastverstärker(S/A)-Block 70, eine Y-Gateschaltung 80 und einen Eingabe-/Ausgabe(I/O)-Block 90. Eine beispielhafte Funktionsweise dieser Komponenten wird nachfolgend in Zusammenhang mit Ausführungsformen des erfinderischen Konzepts beschrieben.
  • Wenn das Speicherzellenfeld 20 eine Konfiguration aufweist wie sie in 2A dargestellt is, und die Eingangswortleitungsadresse (oder Seitenadresse) ADD gleich ist wie die Referenzwortleitungsadresse (oder Seitenadresse), erzeugt die Spannungsversorgungsschaltung 28 eine Programmierspannung Vpgm, die an die Wortleitung WL31 angelegt wird, in Abhängigkeit von einem ersten Steuerkode C-CODEi (wobei ”i” gleich 1 ist) von der Steuerlogik 50. Nachdem die Programmieroperation an der Wortleitung WL31 abgeschlossen ist (d. h., nach erfolgreichem Abschluss der Programmierausführ- und Programmierverifizierungsoperationen), richtet die Spannungsversorgungsschaltung 28 die Teillöschvorspannungsbedingungen der zuvor vorgestellten Tabelle in Abhängigkeit von einem zweiten Steuerkode C-CODEi (wobei ”i” gleich 2 ist) ein. Bei den vorliegenden Ausführungsformen werden der erste Steuerkode C-CODE1 und der zweite Steuerkode C-CODE2 sequentiell und automatisch von der Steuerlogik 50 erzeugt, d. h., es ist kein von außen empfangener Programmierbefehl erforderlich. Mit anderen Worten, die Steuerlogik 50 spricht auf einen von außen empfangenen Programmierbefehl an, um den ersten Steuerkode C-CODE1 und den zweiten Steuerkode C-CODE2 sequentiell zu erzeugen, wenn die Eingangswortleitungsadresse (oder Seitenadresse) ADD gleich ist wie die Referenzwortleitungsadresse (oder Seitenadresse).
  • Wenn das Speicherzellenfeld 20 eine Konfiguration aufweist wie sie in 2A dargestellt ist und die Eingangswortleitungsadresse (oder Seitenadresse) ADD gleich ist wie die Referenzwortleitungsadresse (oder Seitenadresse), erzeugt die Spannungsversorgungsschaltung 28 eine Programmierspannung Vpgm, die an die Wortleitung WL31 angelegt wird, in Abhängigkeit von einem ersten Steuerkode C-CODEi (wobei ”i” gleich 1 ist) von der Steuerlogik 50. Nachdem die Programmieroperation an der Wortleitung WL31 abgeschlossen ist (d. h., nach erfolgreichem Abschluss der Programmierausführ- und Programmierverifizierungsoperationen), richtet die Spannungsversorgungsschaltung 28 die Teillöschvorspannungsbedingungen der zuvor vorgestellten Tabelle in Abhängigkeit von einem dritten Steuerkode C-CODEi (wobei ”i” gleich 3 ist) ein, mit der Ausnahme, dass die Wortleitungen WL32 und WL33 an der zuvor beschriebenen Zwischenspannung Vmid vorgesehen sind. Wiederum werden bei den vorliegenden Ausführungsformen der erste Steuerkode C-CODE1 und der dritte Steuerkode C-CODE3 sequentiell und automatisch von der Steuerlogik 50 erzeugt, d. h., es ist kein von außen empfangener Programmierbefehl erforderlich.
  • Die Spannungsversorgungsschaltung 28 umfasst den Spannungsgenerator 30 und den Zeilendekodierer 40. Der Spannungsgenerator 30 erzeugt verschiedene Spannungen, die für Programmieroperationen der Ausführungsformen benötigt werden, wie die Programmierspannung Vpgm, eine Löschspannung Vera, die Zwischenspannung Vmid und so weiter. Der Zeilendekodierer 40 legt unter der Steuerung der Steuerlogik 50 die erzeugten Spannungen selektiv an Wortleitungen WL und/oder Substratmaterial an. Es wird hier angemerkt, dass die Programmierspannung Vpgm unter Verwendung eines Inkrementstufenpulsprogrammier(ISPP)-Schemas erzeugt werden kann und dass die Löschspannung Vera unter Verwendung eines Inkrementstufenpulslösch(ISPE)-Schemas erzeugt werden kann.
  • Die Steuerlogik 50 steuert die Gesamtoperation der Zugriffsteuereinheit 22 und umfasst einen Dekodierer 52 und einen Kodegenerator 54. Der Dekodierer 52 vergleicht eine Eingabeadresse (d. h., eine von einer Speichersteuereinheit ausgegebene Adresse) mit einer vorgegebenen Referenzadresse und der Kodegenerator erzeugt einen geeigneten Steuerkode C-CODEi gemäß einem Vergleichsergebnis.
  • Wenn beispielsweise das Speicherzellenfeld 20 wie in 2A konfiguriert ist und die Eingabeadresse gleich der Referenzwortleitungsadresse ist, erzeugt die Steuerlogik 50 automatisch und sequentiell den ersten Steuerkode C-CODE1 und den zweiten Steuerkode C-CODE2, wie es oben diskutiert wurde. Wenn hingegen die Eingabeadresse nicht gleich der Referenzwortleitungsadresse ist, erzeugt die Steuerlogik 50 nur den ersten Steuerkode C-CODE1 und die Spannungsversorgungsschaltung 28, die darauf anspricht, legt die Programmierspannung Vpgm an eine ausgewählte Wortleitung (z. B. eine der Wortleitungen WL0 bis WL30) an, die mit der Eingabeadresse korrespondiert.
  • Wenn das Speicherzellenfeld 20 wie in 2B konfiguriert ist und die Eingabeadresse gleich der Referenzwortleitungsadresse ist, erzeugt die Steuerlogik 50 automatisch und sequentiell den ersten Steuerkode C-CODE1 und den dritten Steuerkode C-CODE3, wie es oben diskutiert wurde. Wenn hingegen die Eingabeadresse nicht gleich der Referenzwortleitungsadresse ist, erzeugt die Steuerlogik 50 nur den ersten Steuerkode C-CODE1 und die Spannungsversorgungsschaltung 28, die darauf anspricht, legt die Programmierspannung Vpgm an eine ausgewählte Wortleitung (z. B. eine der Wortleitungen WL0 bis WL30) an, die mit der Eingabeadresse korrespondiert.
  • Der Dekodierer 52 kann auch dazu verwendet werden, Steuersignale zu erzeugen, die an die Spannungsversorgungsschaltung angelegt werden. Wenn beispielsweise die Eingabeadresse gleich der Referenzwortleitungsadresse ist, kann der Dekodierer 52 ein erstes Steuersignal an den Kodegenerator 54 ausgeben und ein zweites Steuersignal an den Zeilendekodierer 40 senden, so dass eine geeignete Spannung (z. B. 0 V) an die Wortleitungen WL32 bis WL63 während eines teilweisen Löschens des zweiten Subblocks SB2, wie in 2A dargestellt, angelegt werden kann. Als weiteres Beispiel, wenn die Eingabeadresse gleich der Referenzwortleitungsadresse ist, kann der Dekodierer 52 ein Steuersignal an den Kodegenerator 54 ausgeben und ein zweites Steuersignal an den Zeilendekodierer 40 senden, so dass die Zwischenspannung an die Wortleitungen WL32 und WL33 angelegt werden kann und eine geeignete Spannung (z. B. 0 V) an die Wortleitungen WL32 bis WL63 während eines teilweisen Löschens des dritten Subblocks SB3, wie in 2B dargestellt, angelegt werden kann.
  • Der Spaltendekodierer 60 wird von der Steuerlogik 50 so gesteuert, dass Spaltenadressen dekodiert werden und eine Mehrzahl von zugehörigen Auswahlsignalen an die Y-Gateschaltung 80 ausgegeben werden.
  • Der Seitenpuffer- und S/A-Block 70 umfasst eine Mehrzahl von Seitenpuffern 71-1 bis 71-m, die mit einer Mehrzahl von Bitleitungen BL1 bis BLm verbunden sind. Jeder der Seitenpuffer 71-1 bis 71-m kann als Schreibtreiber funktionieren, der während einer Programmieroperation unter der Steuerung der Steuerlogik 50 Seitendaten in das Speicherzellenfeld 20 programmiert. Außerdem kann jeder der Seitenpuffer 71-1 bis 71-m kann als Abtastverstärker (Leseverstärker) (S/A) funktionieren, der einen Spannungspegel einer zugehörigen der Bitleitungen BL1 bis BLm während einer Leseoperation oder einer Verifizierungsoperation unter der Steuerung der Steuerlogik 50 abtastet und verstärkt.
  • Die Y-Gateschaltung 80 steuert einen Datenaustausch zwischen dem Seitenpuffer- und S/A-Block 70 und dem I/O-Block 90 in Abhängigkeit von den vom Spaltendekodierer 60 ausgegebenen Auswahlsignalen.
  • Der I/O-Block 90 überträgt von einer externen Einrichtung empfangene Daten zur Y-Gateschaltung 80 oder überträgt von der Y-Gateschaltung 80 ausgegebene Daten zur externen Einrichtung durch eine Mehrzahl von I/O-Anschlüssen oder einen Datenbus. Die I/O-Anschlüsse können Adressen, wie Programmieradressen, Leseadressen oder Löschadressen, Befehle, wie Programmierbefehle, Lesebefehle oder Löschbefehle, und Daten empfangen. Außerdem können die I/O-Anschlüsse Daten in Abhängigkeit vom Lesebefehl an ein externes Gerät übertragen. Die Adressen umfassen Spaltenadressen und Zeilenadressen.
  • 5A zeigt ein Flussbild, das ein Verfahren zum Betreiben des nichtflüchtigen Speicherelements 10 von 1 gemäß Ausführungsformen des erfinderischen Konzepts darstellt. 5B zeigt ein Schaubild, das durch einen I/O-Datenbus eingegebene Befehle und Operationen des nichtflüchtigen Speicherelements 10 von 1 gemäß Ausführungsformen des erfinderischen Konzepts darstellt. 5C zeigt ein Timingdiagramm, das eine Operation des nichtflüchtigen Speicherelements 10 von 1 gemäß Ausführungsformen des erfinderischen Konzepts darstellt. Unter Bezugnahme auf das Kollektiv dieser Figuren wird nun eine Betriebsweise von Ausführungsformen des erfinderischen Konzepts beschrieben.
  • Nachdem das nichtflüchtige Speicherelement 10 angeschaltet ist, wird in Operation S10 eine Referenzadresse WLref im Dekodierer 52 gesetzt. Das Setzen der Referenzadresse WLref wird durch Ausführen einer e-Fuse-Leseoperation der im Informationsblock in einem Abschnitt des Speicherzellenfelds 20 des nichtflüchtigen Speicherelements 10 gespeicherten Referenzadresse WLref vorgenommen.
  • Danach empfängt das nichtflüchtige Speicherelement 10 einen Programmiereingangsbefehl CMD1, eine Adresse ADD, Daten DATA und einen Programmierbestätigungsbefehl CMD2 von einem externen Gerät, z. B. einer Speichersteuereinheit, durch einen I/O-Datenbus in Operation S20. Die 5A und 5B zeigen, dass die Signale CMD1, ADD, DATA und CMD2 sequentiell empfangen werden, es wird aber angemerkt, dass zwei oder mehr dieser Signale stattdessen parallel empfangen werden können.
  • Dann programmiert das nichtflüchtige Speicherelement 10 Daten DATA in eine Seite, die in der Wortleitungsadresse ADD definiert ist, in Abhängigkeit vom Programmierbestätigungsbefehl CMD2 in Operation S30 von 5A. Dies ist als Operation PGM1 in 5B dargestellt. Wie zuvor angemerkt umfasst die Programmieroperation eine Programmierausführungsperiode und eine Verifizierungsperiode einer Programmierverifizierungsoperation.
  • Nachdem verifiziert ist, dass alle Zellen der Seite erfolgreich programmiert worden sind, und in dem Fall, bei dem die Wortleitungsadresse mit der Referenzadresse WLref korrespondiert, wie oben erwähnt (JA bei Operation S40), führt das nichtflüchtige Speicherelement 10 automatisch eine teilweise Löschoperation an einem nichtprogrammierten Subblock (z. B. Subblock SB2 in 2A) des Speicherblocks MB aus, wie es in Verbindung mit den zuvor beschriebenen Ausführungsformen diskutiert worden ist. Dies ist als Operation S50 in 5A dargestellt und als Operation PEO in 5B dargestellt.
  • Mit Bezug zu 5C, während ein Chipfreigabesignal /CE aktiv ist (niedriger Pegel) und ein Befehlzwischenspeicherfreigabesignal CLE aktiv ist (hoher Pegel), werden basierend auf Umschalten eines Schreibfreigabesignals /WE Befehle in das nichtflüchtige Speicherelement eingegeben. Gleichermaßen werden Adressen in das nichtflüchtige Speicherelement 10 eingegeben, wenn ein Adressenzwischenspeicherfreigabesignal (ALE) basierend auf Umschalten eines Schreibfreigabesignals /WE ebenfalls aktiv ist (hoher Pegel). Weiter werden Daten in das nichtflüchtige Speicherelement eingegeben, wenn ein Datenabtastsignal DQS umgeschaltet wird, und die Eingabedaten werden temporär gespeichert (z. B. in den Seitenpuffern des nichtflüchtigen Speicherelements). Es wird angemerkt, dass in 5C ein separates Spaltenadresssignal CADD und ein Zeilenadresssignal RADD gezeigt sind. In dem dargestellten Beispiel identifiziert das Zeilenadresssignal RADD die Referenzwortleitung WL (z. B. die Wortleitung WL31 in den oben angegebenen Beispielen).
  • Ebenso ist in 5C ein Fertig-/Belegt-Signal R&/B gezeigt, das vom nichtflüchtigen Speicherelement 10 erzeugt ist, um das externe Gerät (z. B. die Speichersteuereinheit) zu informieren, wenn das nichtflüchtige Speicherelement in einem Belegtzustand ist. Nach Empfang von Befehlen, Adressensignalen und Daten führt das nichtflüchtige Speicherelement die Programmier- und Teillöschoperationen durch, wenn das Zeilenadresssignal RADD in den Adressensignalen die Referenzwortleitung WL identifiziert. Während dieser Operationen ist das Fertig-/Belegt-Signal R&/B im Belegtzustand. In 5C bezeichnet ”tPROG” die zum Ausführen der Programmieroperation der Referenzwortleitung WL vergangene Zeit und ”tERS” bezeichnet die zum Ausführen der Teillöschoperation (z. B. dem teilweisen Löschen des Subblocks SB2 von 2A) vergangene Zeit.
  • Nun wird auf 6 Bezug genommen, um eine Kommunikation zwischen der Speichersteuereinheit und dem nichtflüchtigen Speicherelement (NAND) gemäß Ausführungsformen des erfinderischen Konzepts genauer zu beschreiben.
  • Zunächst wird in Operation S610 die Referenzwortleitungsadresse (oder Seitenadresse) Wref im nichtflüchtigen Speicherelement gesetzt. Wie oben beschrieben kann dies beispielsweise durch Ausführen einer e-Fuse-Leseoperation beim Anschalten des nichtflüchtigen Speicherelements vorgenommen werden.
  • In dem Fall, wenn ein Programmieren eines Speicherblocks MB des nichtflüchtigen Speicherelements vorzunehmen ist, beginnt die Steuereinheit mit sequentiellem Programmieren der Wortleitungen WL des nichtflüchtigen Speicherelements. Wie oben diskutiert kann das Programmieren ein SLC-Programmieren und/oder ein MLC-Programmieren sein. Während des sequentiellen Programmierens gibt die Steuereinheit in Operation S620 von 6 letztendlich eine Programmieradresse heraus, die mit der Referenzadresse Wref korrespondiert.
  • Wie in den Ausführungsformen oben beschrieben, wenn die Programmieradresse mit der Referenzadresse Wref korrespondiert, wird Operation S630 ausgeführt, bei der das nichtflüchtige Speicherelement die von der Referenzadresse Wref bezeichnete Seite programmiert und führt eine Teillöschoperation mindestens einiger der nichtprogrammierten Wortleitungen WL aus, die im Speicherblock MB verbleiben. Während dieser Zeitspanne (tPROG + tERS) wird in Operation S640 das Fertig-/Belegt-Signal R&/B in einen ”niedrigen Pegelzustand”, d. h., einen ”Belegtzustand”, versetzt.
  • In Operation S650 von 6 überwacht die Speichersteuereinheit das Fertig-/Belegt-Signal R&/B und verzögert eine Ausgabe von weiteren Programmierbefehlen, während das Fertig-/Belegt-Signal R&/B in einem Belegtzustand ist. Wie in der Figur gezeigt kann die Speichersteuereinheit einen Stauslesebefehl ausgeben und das nichtflüchtige Speicherelement kann darauf ansprechen und in Operation S660 Statusdaten ausgeben.
  • Bei Ablauf der Zeitspanne tPROG + tERS wird das Fertig-/Belegt-Signal R&/B in einen hohen Pegelzustand versetzt, d. h., einen Fertigzustand, und in Operation S670 gibt die Steuereinheit Programmierbefehle aus, die der nächsten Wortleitung des Speicherblocks zugeordnet sind, z. B. der Seitenadresse Wref + 1.
  • In den oben beschriebenen Ausführungsformen wird die Teillöschoperation durch das nichtflüchtige Speicherelement ausgeführt, wenn kein Teillöschungsbefehl von der Speichersteuereinheit empfangen ist. Das heißt, das nichtflüchtige Speicherelement selbst führt einen Vergleich zwischen einer Referenzadresse Wref und einer Programmieradresse ADD aus, die von der Speichersteuereinheit empfangen sind, und führt automatisch eine teilweise Löschoperation aus, wenn die Referenzadresse Wref mit der Programmieradresse ADD übereinstimmt. Wie jedoch nachfolgend mit Bezug zu den 7A bis 7C beschrieben wird, ist das erfinderische Konzept nicht auf diese Vorgehensweise beschränkt.
  • 7A zeigt ein Schaubild, das zum Erläutern von Befehlen, die durch einen I/O-Datenbus eingegeben werden, und Operationen eines nichtflüchtigen Speicherelements gemäß weiterer Ausführungsformen des erfinderischen Konzepts dargestellt ist. 7B ist ein Timingdiagramm zum weiteren Erläutern einer Operation eines nichtflüchtigen Speicherelements 10 gemäß weiterer Ausführungsformen des erfinderischen Konzepts.
  • Zunächst mit Bezug zu 7A empfängt das nichtflüchtige Speicherelement einen Programmiereingangsbefehl CMD1, eine Adresse (CADD und RADD1), Daten DATA und einen Programmierbestätigungsbefehl CMD2 von einem externen Gerät, z. B. einer Speichersteuereinheit, durch einen I/O-Datenbus. 7A zeigt, dass die Signale CMD1, CADD und RADD1, DATA und CMD2 sequentiell empfangen werden, es wird aber angemerkt, dass zwei oder mehr dieser Signale stattdessen parallel empfangen werden können.
  • Dann programmiert das nichtflüchtige Speicherelement die Daten DATA in eine Seite, die in der Zeilenadresse RADD1 definiert ist, in Abhängigkeit vom Programmierbestätigungsbefehl CMD2. Wie zuvor angemerkt umfasst die Programmieroperation eine Programmierausführungsperiode und eine Verifizierungsperiode einer Programmierverifizierungsoperation. Während dieser Zeit wird das Fertig-/Belegt-Signal R&/B in einen Belegtzustand versetzt.
  • In 7A wird angenommen, dass die Zeilenadresse RADD1 mit der zuvor diskutierten Referenzadresse Wref korrespondiert. Nachdem verifiziert ist, dass alle Zellen der Referenzseite erfolgreich programmiert worden sind, wird das Fertig-/Belegt-Signal R&/B in einen Fertigzustand versetzt und das nichtflüchtige Speicherelement empfängt einen Teillöscheingabebefehl P-ERS1, eine Zeilenadresse RADD2 und einen Teillöschbestätigungsbefehl P-ERS2. Wiederum können diese Signale sequentiell und/oder parallel empfangen werden. Als Reaktion darauf führt das nichtflüchtige Speicherelement mit Bezugnahme zur Zeilenadresse RADD2 ein teilweises Löschen von oberen Wortleitungen des Speicherblocks aus, wie es in Verbindung mit vorhergehenden Ausführungsformen beschrieben worden ist. Die Zeilenadresse RADD2 kann mit der Wortleitungsadresse WLref + 1 korrespondieren oder sich davon unterscheiden. Während der Teillöschperiode wird das Fertig-/Belegt-Signal R&/B in einen Belegtzustand versetzt.
  • 7B korrespondiert mit der Operation von 7A und ist ähnlich zur zuvor beschriebenen 5C mit der Ausnahme, dass 7B eine separate Ausführung der Programmieroperation und der Teillöschoperation darstellt. Der Empfang des Teillöscheingabebefehls P-ERS1, der Zeilenadresse RADD2 und des Teillöschbestätigungsbefehls P-ERS2 erfolgt nämlich nach der Programmieroperation der Zeitspanne tPROG und vor der Teillöschoperation der Zeitspanne tERS.
  • Nun wird zu 7C Bezug genommen, um eine Kommunikation zwischen der Speichersteuereinheit und dem nichtflüchtigen Speicherelement (NAND) gemäß anderen Ausführungsformen des erfinderischen Konzepts genauer zu beschreiben.
  • Zunächst wird in Operation S710 die Referenzwortleitungsadresse (oder Seitenadresse) Wref im nichtflüchtigen Speicherelement gesetzt. Wie oben beschrieben kann dies beispielsweise durch Ausführen einer e-Fuse-Leseoperation beim Anschalten des nichtflüchtigen Speicherelements vorgenommen werden.
  • Bei Operation S720 liest die Speichersteuereinheit die Referenzadresse Wref, die im nichtflüchtigen Speicherelement gesetzt ist.
  • In dem Fall, wenn ein Programmieren eines Speicherblocks MB des nichtflüchtigen Speicherelements vorzunehmen ist, beginnt die Steuereinheit mit sequentiellem Programmieren der Wortleitungen WL des Speicherblocks MB des nichtflüchtigen Speicherelements. Wie oben diskutiert kann das Programmieren ein SLC-Programmieren und/oder ein MLC-Programmieren sein. Während des sequentiellen Programmierens gibt die Steuereinheit in Operation S730 von 7C letztendlich eine Programmieradresse heraus, die mit der Referenzadresse Wref korrespondiert.
  • Wie in den Ausführungsformen oben beschrieben, wenn die Programmieradresse mit der Referenzadresse Wref korrespondiert, wird Operation S740 ausgeführt, bei der das nichtflüchtige Speicherelement die von der Referenzadresse Wref bezeichnete Seite programmiert. Während dieser Zeitspanne (tPROG) wird in Operation S750 das Fertig-/Belegt-Signal R&/B in einen ”niedrigen Pegelzustand”, d. h., einen ”Belegtzustand”, versetzt.
  • In Operation S760 von 7C überwacht die Speichersteuereinheit das Fertig-/Belegt-Signal R&/B und verzögert eine Ausgabe von weiteren Programmierbefehlen, während das Fertig-/Belegt-Signal R&/B in einem Belegtzustand ist. Wie in der Figur gezeigt kann die Speichersteuereinheit einen Stauslesebefehl ausgeben und das nichtflüchtige Speicherelement kann darauf ansprechen und in Operation S770 Statusdaten ausgeben.
  • Bei Ablauf der Zeitspanne tPROG wird das Fertig-/Belegt-Signal R&/B in einen hohen Pegelzustand versetzt, d. h., einen Fertigzustand, und in Operation S780 gibt die Steuereinheit einen Teillöschungsbefehl mit einer Teillöschadresse aus, die mit Wref + 1 korrespondiert.
  • In Operation S790 spricht das nichtflüchtige Speicherelement auf den Teillöschungsbefehl von der Speichersteuereinheit an und führt eine Teillöschoperation an mindestens einigen der nichtprogrammierten Wortleitungen WL aus, die im Speicherblock MB verbleiben, darunter in diesem Beispiel die Wortleitung, die mit Wref + 1 korrespondiert. Während dieser Zeitspanne (tERS) wird das Fertig-/Belegt-Signal R&/B in einen ”niedrigen Pegelzustand”, d. h., einen ”Belegtzustand”, versetzt.
  • In Operation S800 von 7C überwacht die Speichersteuereinheit das Fertig-/Belegt-Signal R&/B und verzögert eine Ausgabe von weiteren Programmierbefehlen, während das Fertig-/Belegt-Signal R&/B in einem Belegtzustand ist. Wie in der Figur gezeigt kann die Speichersteuereinheit einen Stauslesebefehl ausgeben, wie es zuvor diskutiert wurde.
  • Bei Ablauf der Zeitspanne tERS wird das Fertig-/Belegt-Signal R&/B in einen hohen Pegelzustand versetzt, d. h., einen Fertigzustand, und in Operation S8100 gibt die Steuereinheit einen Programmierbefehl mit einer Programmieradresse aus, die mit Wref + 1 korrespondiert. Von diesem Punkt aus schreitet das sequentielle Programmieren der verbliebenen Wortleitungen voran.
  • 8 zeigt ein Blockdiagramm eines Speichersystems 100 mit dem nichtflüchtigen Speicherelement 10 von 1 gemäß einiger Ausführungsformen des erfinderischen Konzepts. Das Speichersystem 100 kann als Mobiltelefon, Smartphone, Tabletpersonalcomputer (PC), persönlicher digitaler Assistent (PDA) oder Funkkommunikationssystem ausgebildet sein.
  • Das Speichersystem 100 umfasst das nichtflüchtige Speicherelement 10 und eine Speichersteuereinheit 150, die Operationen des nichtflüchtigen Speicherelements 10 steuert. Die Speichersteuereinheit 150 kann gemäß der Steuerung eines Prozessors 110 die Datenzugriffoperationen steuern, z. B. eine Programmieroperation, eine Löschoperation und eine Leseoperation des nichtflüchtigen Speicherelements 10.
  • Während einer Programmieroperation sind das nichtflüchtige Speicherelement 10 und die Speichersteuereinheit 150 gemäß einer beliebigen der hier zuvor beschriebenen Ausführungsformen ausgebildet. Die im nichtflüchtigen Speicherelement 10 programmierten Seitendaten können über eine Anzeigeeinrichtung 120 gemäß der Steuerung des Prozessors 110 und/oder der Speichersteuereinheit 150 angezeigt werden.
  • Ein Funksendeempfänger (Radiotransceiver) 130 sendet oder empfängt Funksignale durch eine Antenne ANT. Der Funksendeempfänger 130 kann durch die Antenne ANT empfangene Funksignale in Signale wandeln, die vom Prozessor 110 verarbeitet werden können. Dementsprechend kann der Prozessor 110 die vom Funksendeempfänger 130 ausgegebenen Signale verarbeiten und die verarbeiteten Signale an die Speichersteuereinheit 150 oder die Anzeigeeinrichtung 120 übertragen. Die Speichersteuereinheit 150 kann die vom Prozessor 110 verarbeiteten Signale in das nichtflüchtige Speicherelement 10 programmieren. Der Funksendeempfänger 130 kann ebenfalls vom Prozessor 110 ausgegebene Signale in Funksignale wandeln und die Funksignale durch die Antenne ANT an ein externes Gerät ausgeben.
  • Eine Eingabeeinrichtung 140 gibt Steuersignale zum Steuern der Operation des Prozessors 110 oder Daten, die vom Prozessor 110 zu verarbeiten sind und in das Speichersystem 100 einzugeben sind, frei. Die Eingabeeinrichtung 140 kann durch ein Zeigegerät, wie ein Berührungsfeld (Touchpad) oder eine Computermaus, ein Tastenfeld oder eine Tastatur, ausgebildet sein.
  • Der Prozessor 110 kann den Betrieb der Anzeigeeinrichtung 120 steuern, um von der Speichersteuereinheit 150 ausgegebene Daten, von Funksendeempfänger 130 ausgegebene Daten oder von der Eingabeeinrichtung 140 ausgegebene Daten anzuzeigen. Die Speichersteuereinheit 150, die die Operationen des nichtflüchtigen Speicherelements 10 steuert, kann als Teil des Prozessors 110 oder als separater Chip ausgebildet sein.
  • 9 zeigt ein Blockdiagramm eines Speichersystems 200, das das nichtflüchtige Speicherelement 10 von 1 gemäß anderer Ausführungsformen des erfinderischen Konzepts beinhaltet. Das Speichersystem 200 kann als PC, Tablet-PC, Netbook, elektronisches Lesegerät (e-Reader), PDA, tragbarer Multimediaplayer (PMP), MP3-Player oder MP4-Player ausgebildet sein.
  • Das Speichersystem 200 umfasst das nichtflüchtige Speicherelement 10 und eine Speichersteuereinheit 240, die die Datenverarbeitungsoperationen des nichtflüchtigen Speicherelements 10 steuert. Das nichtflüchtige Speicherelement 10 und die Speichersteuereinheit 240 sind gemäß einer beliebigen der hierin zuvor beschriebenen Ausführungsformen konfiguriert. Ein Prozessor 210 kann im nichtflüchtigen Speicherelement 10 gespeicherte Daten durch eine Anzeigeeinrichtung 230 gemäß einer Dateneingabe durch eine Eingabeeinrichtung 220 anzeigen. Die Eingabeeinrichtung 220 kann durch ein Zeigegerät, wie ein Berührungsfeld (Touchpad) oder eine Computermaus, ein Tastenfeld oder eine Tastatur, ausgebildet sein.
  • Der Prozessor 110 kann den Gesamtbetrieb des Speichersystems 200 und die Operationen der Speichersteuereinheit 240 steuern. Die Speichersteuereinheit 240, die die Operationen des nichtflüchtigen Speicherelements 10 steuern kann, kann als Teil des Prozessors 210 oder als separater Chip ausgebildet sein.
  • 10 zeigt ein Blockdiagramm eines Speichersystems 300 mit dem nichtflüchtigen Speicherelement 10 gemäß weiterer Ausführungsformen des erfinderischen Konzepts. Das Speichersystem 300 kann als Speicherkarte oder Smartcard ausgebildet sein. Das Speichersystem 300 umfasst das nichtflüchtige Speicherelement 10, eine Speichersteuereinheit 310 und eine Kartenschnittstelle 320. Das nichtflüchtige Speicherelement 10 und die Speichersteuereinheit 310 sind gemäß einer beliebigen der hierin zuvor beschriebenen Ausführungsformen konfiguriert.
  • Die Speichersteuereinheit 310 kann einen Datenaustausch zwischen dem nichtflüchtigen Speicherelement 10 und der Kartenschnittstelle 320 steuern. Die Kartenschnittstelle 320 kann eine sichere digitale (SD)-Kartenschnittstelle oder eine Multimediacard(MMC)-Schnittstelle sein, aber das erfinderische Konzept ist nicht auf die vorliegenden Ausführungsformen beschränkt.
  • Die Kartenschnittstelle 320 kann eine Schnittstelle mit einem Host 330 und der Speichersteuereinheit 310 für einen Datenaustausch gemäß einem Protokoll des Host 330 ausbilden. Die Kartenschnittstelle 320 kann ein Universal Serial Bus(USB)-Protokoll und ein Interchip(IC)-USB-Protokoll unterstützen. Hier kann die Kartenschnittstelle 320 eine Hardware, die ein vom Host 330 verwendetes Protokoll unterstützt, in der Hardware installierte Software oder einen Signalübertragungsmodus angeben.
  • Wenn das Speichersystem 300 mit dem Host 330, wie einem PC, einem Tablet-PC, einer Digitalkamera, einem digitalen Audioabspielgerät, einem Mobiltelefon, einer Videospielkonsolenhardware oder einer digitalen Set-Top-Box (STB), verbunden ist, kann eine Hostschnittstelle 350 des Host 330 eine Datenkommunikation mit dem nichtflüchtigen Speicherelement 10 durch die Kartenschnittstelle 320 und die Speichersteuereinheit 310 unter der Steuerung eines Mikroprozessors 340 durchführen.
  • 11 zeigt ein Blockdiagramm eines Speichersystems 400 mit dem nichtflüchtigen Speicherelement 10 gemäß weiterer Ausführungsformen des erfinderischen Konzepts. Das Speichersystem 400 kann als Bildprozessor, wie einer Digitalkamera, einem mit einer Digitalkamera ausgerüsteten Mobiltelefon, einem mit einer Digitalkamera ausgerüsteten Smartphone oder einem mit einer Digitalkamera ausgerüsteten Tablet-PC, ausgebildet sein.
  • Das Speichersystem 400 umfasst das nichtflüchtige Speicherelement 10 und eine Speichersteuereinheit 440, die die Datenverarbeitungsoperationen, wie eine Programmieroperation, eine Löschoperation und eine Leseoperation, des nichtflüchtigen Speicherelements 10 steuert. Das nichtflüchtige Speicherelement 10 und die Speichersteuereinheit 440 sind gemäß einer beliebigen der hierin zuvor beschriebenen Ausführungsformen konfiguriert. Ein im Speichersystem 400 vorgesehener Bildsensor 420 wandelt optische Bilder in digitale Signale und gibt die digitalen Signale an einen Prozessor 410 oder die Speichersteuereinheit 440 aus. Die digitalen Signale können vom Prozessor 410 gesteuert werden, so dass sie durch eine Anzeigeeinrichtung 430 angezeigt oder durch die Speichersteuereinheit 440 im nichtflüchtigen Speicherelement 10 gespeichert werden.
  • Im nichtflüchtigen Speicherelement 10 gespeicherte Daten können durch die Anzeigeeinrichtung 430 unter der Steuerung des Prozessors 410 oder der Speichersteuereinheit 440 angezeigt werden. Die Speichersteuereinheit 440, die die Operationen des nichtflüchtigen Speicherelements 10 steuern kann, kann als Teil des Prozessors 410 oder als separater Chip ausgebildet sein.
  • 12 zeigt ein Blockdiagramm eines Speichersystems 500 mit dem nichtflüchtigen Speicherelement 10 gemäß noch weiterer Ausführungsformen des erfinderischen Konzepts. Das Speichersystem 500 umfasst das nichtflüchtige Speicherelement 10 und eine Zentraleinheit (CPU) 510, die die Operationen des nichtflüchtigen Speicherelements 10 steuert. Das nichtflüchtige Speicherelement 10 und die CPU 510 sind gemäß einer beliebigen der hierin zuvor beschriebenen Ausführungsformen konfiguriert.
  • Das Speichersystem 500 umfasst auch ein Speicherelement 550, das als Arbeitsspeicher der CPU 510 verwendet werden kann. Das Speicherelement 550 kann als nichtflüchtiges Speicherelement, wie ein Nurlesespeicher (ROM), oder als flüchtiges Speicherelement, wie ein statischer Direktzugriffspeicher (SRAM), ausgebildet sein. Ein mit dem Speichersystem 500 verbundener Host kann eine Datenkommunikation mit dem nichtflüchtigen Speicherelement 10 durch eine Speicherschnittstelle 520 und eine Hostschnittstelle 540 durchführen.
  • Ein Fehlerkorrektur(ECC)-Block 530, wobei ECC Error Correction Code bedeutet, wird von der CPU 510 gesteuert, so dass er ein in vom nichtflüchtigen Speicherelement 10 durch die Speicherschnittstelle 520 ausgegebenen Daten enthaltenes Fehlerbit detektiert, das Fehlerbit korrigiert und die fehlerkorrigierten Daten durch die Hostschnittstelle 540 zum Host überträgt. Die CPU 510 kann eine Datenkommunikation zwischen der Speicherschnittstelle 520, dem ECC-Block 530, der Hostschnittstelle 540 und dem Speicherelement 550 durch einen Bus 501 steuern. Das Speichersystem 500 kann als Flashspeichertreiber, USB-Speichertreiber, IC-USB-Speichertreiber oder Speicherstick ausgebildet sein.
  • 13 zeigt ein Blockdiagramm eines Speichersystems 600 mit dem nichtflüchtigen Speicherelement 10 gemäß noch weiterer Ausführungsformen des erfinderischen Konzepts. Das Speichersystem 600 kann als Datenspeichersystem, wie ein Festkörperlaufwerk (SSD), ausgebildet sein.
  • Das Speichersystem 600 umfasst eine Mehrzahl von nichtflüchtigen Speicherelementen 10, eine Speichersteuereinheit 610, die Datenverarbeitungsoperationien des nichtflüchtigen Speicherelements 10 steuert, ein flüchtiges Speicherelement 630, wie einen dynamischen Direktzugriffspeicher (DRAM), und einen Puffermanager 620, der zwischen der Speichersteuereinheit 610 und einem Host 640 übertragene Daten steuert, die im flüchtigen Speicherelement 630 zu speichern sind. Die nichtflüchtigen Speicherelemente 10 und die Speichersteuereinheit 610 sind gemäß einer beliebigen der hierin zuvor beschriebenen Ausführungsformen konfiguriert.
  • 14 zeigt ein Blockdiagramm eines Datenprozessors 700, der das Speichersystem 600 von 13 beinhaltet. Mit Bezug zu den 13 und 14 kann der Datenprozessor 700 als redundante Anordnung unabhängiger Festplatten in einem RAID-System (Redundant Array of Independent Disks) ausgebildet sein. Der Datenprozessor 700 umfasst eine RAID-Steuereinheit 710 und eine Mehrzahl von Speichersystemen 600-1 bis 600-n, wobei ”n” eine natürliche Zahl ist.
  • Jedes der Speichersysteme 600-1 bis 600-n kann das Speichersystem 600 von 13 sein. Die Speichersysteme 600-1 bis 600-n können eine RAID-Anordnung ausbilden. Der Datenprozessor 700 kann ein PC oder ein SSD sein.
  • Während einer Programmieroperation kann die RAID-Steuereinheit 710 von einem Host ausgegebene Programmierdaten gemäß einem RAID-Pegel in Abhängigkeit von einem vom Host empfangenen Programmierbefehl zu mindestens einem der Speichersysteme 600-1 bis 600-n übertragen. Während einer Leseoperation kann die RAID-Steuereinheit 710 in Abhängigkeit von einem vom Host empfangenen Lesebefehl aus mindestens einem der Speichersysteme 600-1 bis 600-n gelesene Daten zum Host übertragen.
  • 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 7679133 [0051]

Claims (24)

  1. Verfahren zum Programmieren eines Speicherblocks (MB) eines nichtflüchtigen Speicherelements (10), das in Wirkverbindung mit einer Speichersteuereinheit (150) steht, wobei der Speicherblock durch eine Mehrzahl von Wortleitungen definiert ist, die zwischen einer String-Auswahlleitung und einer gemeinsamen Sourceleitung, die mit der String-Auswahlleitung korrespondiert, angeordnet sind, wobei das Verfahren umfasst: – Programmieren eines ersten Subblocks des Speicherblocks, – Bestimmen in dem nichtflüchtigen Speicherelement, wann eine Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird, und – teilweises Löschen eines zweiten Subblocks des Speicherblocks, sobald bestimmt ist, dass die Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird.
  2. Verfahren nach Anspruch 1, weiter umfassend ein Programmieren des zweiten Subblocks des Speicherblocks nach dem teilweisen Löschen des zweiten Subblocks.
  3. Verfahren nach Anspruch 1, – wobei das teilweise Löschen des zweiten Subblocks durch das nichtflüchtige Speicherelement ausgeführt wird, ohne dass ein korrespondierender Teillöschungsbefehl von der Speichersteuereinheit empfangen wird, und/oder – wobei das Programmieren des ersten Subblocks ein sequentielles Programmieren einer ersten Wortleitung des Speicherblocks bis zu der Referenzwortleitung des Speicherblocks umfasst, wobei die erste Wortleitung bis zur Referenzwortleitung den ersten Subblock des Speicherblocks definieren.
  4. Verfahren nach einem der Ansprüche 1 bis 3, weiter umfassend ein Löschen des Speicherblocks vor dem Programmieren des ersten Subblocks des Speicherblocks, – wobei bevorzugt eine Teillöschzeit zum teilweisen Löschen des zweiten Subblocks kleiner ist als eine Volllöschzeit zum Löschen des Speicherblocks.
  5. Verfahren nach Anspruch 4, wobei das Löschen des Speicherblocks ein Anlegen einer ersten Löschspannung an die Mehrzahl von Wortleitungen des Speicherblocks umfasst, – wobei bevorzugt das teilweise Löschen des zweiten Subblocks ein Anlegen einer zweiten Löschspannung an Wortleitungen des zweiten Subblocks und ein Anwenden eines potentialfreien Zustands an Wortleitungen des ersten Subblocks umfasst, wobei bevorzugt die zweite Löschspannung größer ist als die erste Löschspannung oder die zweite Löschspannung gleich der ersten Löschspannung ist.
  6. Verfahren nach einem der Ansprüche 2 bis 5, wobei der Speicherblock erste bis N-te Wortleitungen umfasst, die in einer Reihenfolge angeordnet sind, wobei N eine Mehrzahl bezeichnet, – wobei das Programmieren des ersten Subblocks ein sequentielles Programmieren in einer Reihenfolge von der ersten Wortleitung bis zu einer m-ten Wortleitung des Speicherblocks umfasst, wobei m kleiner ist als N und die m-te Wortleitung die Referenzwortleitung ist, – wobei bevorzugt das Programmieren des zweiten Subblocks ein sequentielles Programmieren einer (m + 1)-ten Wortleitung bis zu der N-ten Wortleitung umfasst, wobei der zweite Subblock durch die (m + 1)-te Wortleitung bis zur N-ten Wortleitung definiert ist.
  7. Verfahren nach Anspruch 6, wobei mindestens eine Wortleitung zwischen der Referenzwortleitung und dem zweiten Subblock angeordnet ist, – wobei das Verfahren bevorzugt weiter ein Anlegen einer Zwischenspannung an die mindestens eine Wortleitung während des teilweisen Löschens des zweiten Subblocks umfasst, wobei die Zwischenspannung größer ist als eine Teillöschspannung, die an Wortleitungen des zweiten Subblocks während eines teilweisen Löschens des zweiten Subblocks angelegt wird.
  8. Verfahren nach einem der Ansprüche 1 bis 7, wobei die Referenzwortleitung eine erste Referenzwortleitung ist und der Speicherblock einen dritten Subblock umfasst, – wobei das Verfahren bevorzugt weiter umfasst: – Bestimmen in dem nichtflüchtigen Speicherelement, wann eine zweite Referenzwortleitung während des Programmieren des zweiten Subblocks programmiert wird, – teilweises Löschen des dritten Subblocks des Speicherblocks, sobald bestimmt ist, dass die zweite Referenzwortleitung während des Programmierens des zweiten Subblocks programmiert wird, und – Programmieren des dritten Subblocks des Speicherblocks nach dem teilweisen Löschen des dritten Subblocks, – wobei bevorzugt das teilweise Löschen des zweiten Subblocks durch das nichtflüchtige Speicherelement ausgeführt wird, ohne dass ein korrespondierender Teillöschungsbefehl von der Speichersteuereinheit empfangen wird.
  9. Verfahren nach Anspruch 8, wobei das teilweise Löschen des zweiten Subblocks ein teilweises Löschen des dritten Subblocks umfasst und wobei das Verfahren weiter umfasst: – Bestimmen in dem nichtflüchtigen Speicherelement, wann eine zweite Referenzwortleitung während des Programmierens des zweiten Subblocks programmiert wird, – teilweises Löschen des dritten Subblocks des Speicherblocks, sobald bestimmt ist, dass die zweite Referenzwortleitung während des Programmierens des zweiten Subblocks programmiert wird, und – Programmieren des dritten Subblocks des Speicherblocks nach dem teilweisen Löschen des dritten Subblocks.
  10. Verfahren nach einem der Ansprüche 1 bis 9, weiter umfassend: Abfragen einer Adresse, die eine Referenzwortleitung bezeichnet, während eines Einschaltens des nichtflüchtigen Speicherelements.
  11. Verfahren nach einem der Ansprüche 1 bis 10, wobei das nichtflüchtige Speicherelement ein Fertig-/Belegt-Signal erzeugt, wobei das Verfahren weiter ein Aufrechterhalten des Fertig-/Belegt-Signals in einem Belegtzustand während einer fortlaufenden Zeitdauer umfasst, die das Programmieren der Referenzwortleitung und das teilweise Löschen des zweiten Subblocks umfasst.
  12. Verfahren nach einem der Ansprüche 1 bis 11, wobei das Programmieren ein Mehrpegelzellen(MLC)-Programmieren ist, bei dem eine niedrigstwertig-Bit(LSB)-Seite und eine höchstwertig-Bit(MSB)-Seite in den Wortleitungen des Speicherblocks programmiert wird, – wobei die MLC-Programmierung bevorzugt gemäß einer Schatten programmiertechnik (Shadow Programming Technique) programmiert wird und wobei der zweite Subblock teilweise gelöscht wird, nachdem die LSB-Seite in der Referenzwortleitung programmiert ist und bevor die MSB-Seite in der Referenzwortleitung programmiert wird.
  13. Verfahren nach einem der Ansprüche 1 bis 12, wobei der Speicherblock ein dreidimensionaler(3D)-Speicherblock ist und wobei der erste und der zweite Subblock 3D-Subblöcke sind.
  14. Verfahren zum Programmieren eines Speicherblocks (MB) eines nichtflüchtigen Speicherelements (10), das in Wirkverbindung mit einer Speichersteuereinheit (150) steht, wobei der Speicherblock durch eine Mehrzahl von Wortleitungen definiert ist, die zwischen einer String-Auswahlleitung und einer gemeinsamen Source-Leitung, die mit der String-Auswahlleitung korrespondiert, angeordnet sind, wobei das Verfahren umfasst: – Programmieren eines ersten Subblocks des Speicherblocks, – Bestimmen in der Speichersteuereinheit, wann eine Referenzwortleitung während des Programmierens des ersten Subblocks zu programmieren ist, – Übertragen eines Teillöschungsbefehls von der Speichersteuereinheit zu dem nichtflüchtigen Speicherelement, sobald bestimmt ist, dass die Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird, – teilweises Löschen eines zweiten Subblocks des Speicherblocks in Abhängigkeit von dem Teillöschungsbefehl und – Programmieren des zweiten Subblocks des Speicherblocks nach dem teilweisen Löschen des zweiten Subblocks.
  15. Verfahren nach Anspruch 14, weiter umfassend: – Registrieren einer Adresse der Referenzwortleitung in dem nichtflüchtigen Speicherelement und – Übertragen der Adresse der Referenzwortleitung an die Speichersteuereinheit vor dem Programmieren des ersten Subblocks, – wobei bevorzugt das Registrieren der Adresse der Referenzwortleitung ein Lesen der Adresse der Referenzwortleitung während eines Einschaltens des nichtflüchtigen Speicherelements umfasst.
  16. Verfahren nach Anspruch 14 oder 15, wobei das Programmieren des ersten Subblocks und das Bestimmen, warm die Referenzwortleitung programmiert wird, umfassen: – Übertragen einer Sequenz von Programmierbefehlen und einer Programmieradresse für den ersten Subblock von der Speichersteuereinheit zu dem nichtflüchtigen Speicherelement und, sobald eine übertragene Programmieradresse durch die Speichersteuereinheit zu der Referenzwortleitung korrespondierend erkannt wird, nachfolgendes Übertragen des Teillöschungsbefehls von der Speichersteuereinheit zu dem nichtflüchtigen Speicherelement, – wobei bevorzugt das nichtflüchtige Speicherelement ein Fertig-/Belegt-Signal erzeugt, welches durch die Speichersteuereinheit lesbar ist, und wobei das Verfahren weiter ein Aufrechterhalten des Fertig-/Belegt-Signals in einem Belegtzustand während einer ersten Zeitdauer umfasst, die das Programmieren der Referenzwortleitung umfasst, und ein Aufrechterhalten des Fertig-/Belegt-Signals in dem Belegtzustand während einer zweiten Zeitdauer umfasst, die das teilweise Löschen des zweiten Subblocks umfasst, wobei die erste Zeitdauer von der zweiten Zeitdauer getrennt ist.
  17. Verfahren nach einem der Ansprüche 14 bis 16, weiter umfassend ein Löschen des Speicherblocks vor dem Programmieren des ersten Subblocks des Speicherblocks, – wobei bevorzugt eine Teillöschzeitdauer zum teilweisen Löschen des zweiten Subblocks kleiner ist als eine Volllöschzeitdauer zum Löschen des Speicherblocks.
  18. Verfahren nach einem der Ansprüche 14 bis 17, wobei mindestens eine Wortleitung zwischen der Referenzwortleitung und dem zweiten Subblock angeordnet ist.
  19. Verfahren nach einem der Ansprüche 14 bis 18, wobei das Programmieren ein Mehrpegelzellen(MLC)-Programmieren ist, bei dem eine Niedrigstwertig-Bit(LSB)-Seite und eine Höchstwertig-Bit(MSB)-Seite in den Wortleitungen des Speicherblocks programmiert wird, – wobei bevorzugt das MLC-Programmieren gemäß einer Schattenprogrammiertechnik durchgeführt wird und wobei der zweite Subblock teilweise gelöscht wird, nachdem die LSB-Seite in der Referenzwortleitung programmiert worden ist und bevor die MSB-Seite in der Referenzwortleitung programmiert wird.
  20. Verfahren nach einem der Ansprüche 14 bis 19, wobei der Speicherblock ein dreidimensionaler(3D)-Speicherblock ist und wobei der erste und der zweite Subblock 3D-Subblöcke sind.
  21. Nichtflüchtiges Speicherelement (10), umfassend: – einen nichtflüchtigen Speicherblock (MB), der durch eine Mehrzahl von Wortleitungen definiert ist, die zwischen einer String-Auswahlleitung und einer gemeinsamen Source-Leitung, die mit der String-Auswahlleitung korrespondiert, angeordnet sind, und – eine Steuerschaltung, die dazu ausgebildet ist, einen ersten Subblock des Speicherblocks zu programmieren, zu bestimmen, wann eine Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird und einen zweiten Subblock des Speicherblocks teilweise zu löschen, sobald bestimmt ist, dass die Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird.
  22. Nichtflüchtiges Speicherelement nach Anspruch 21, wobei die Steuerschaltung weiter dazu ausgebildet ist: – den zweiten Subblock des Speicherblocks nach dem teilweisen Löschen des zweiten Subblocks zu programmieren und/oder – den zweiten Subblock teilweise zu löschen, ohne zuerst einen korrespondierenden Teillöschungsbefehl von einem externen Gerät zu empfangen.
  23. Speichersystem (200), umfassend: – ein nichtflüchtiges Speicherelement (10), umfassend einen nichtflüchtigen Speicherblock (MB), der durch eine Mehrzahl von Wortleitungen definiert ist, die zwischen einer String-Auswahlleitung und einer gemeinsamen Source-Leitung, die mit der String-Auswahlleitung korrespondiert, angeordnet – sind, und umfassend eine Steuerschaltung, die dazu ausgebildet ist, Programmierbefehle und Teillöschungsbefehle betreffend Wortleitungen des nichtflüchtigen Speicherelements auszuführen, und – eine Speichersteuereinheit (150), die dazu ausgebildet ist, Programmierbefehle zu dem nichtflüchtigen Speicherelement zu übertragen, um einen ersten Subblock des Speicherblocks zu programmieren, zu bestimmen, wann eine Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird, einen Teillöschungsbefehl von der Speichersteuereinheit zu dem nichtflüchtigen Speicherelement zu übertragen, sobald bestimmt ist, dass die Referenzwortleitung während des Programmierens des ersten Subblocks programmiert wird, und Programmierbefehle zu dem nichtflüchtigen Speicherelement zu übertragen, um den zweiten Subblock des Speicherblocks nach dem Übertragen des Teillöschungsbefehls zu programmieren.
  24. Speichersystem nach Anspruch 23, wobei das nichtflüchtige Speicherelement weiter dazu ausgebildet ist, eine Adresse der Referenzwortleitung zu registrieren und die Adresse der Referenzwortleitung an die Speichersteuereinheit zu übertragen, bevor die Speichersteuereinheit die Programmierbefehle zum Programmieren des ersten Subblocks überträgt.
DE102011089880.8A 2011-01-04 2011-12-23 Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements, nichtflüchtiges Speicherelement und Speichersystem Active DE102011089880B4 (de)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR1020110000359A KR101703106B1 (ko) 2011-01-04 2011-01-04 부분-이레이즈 동작을 수행할 수 있는 비휘발성 메모리 장치와 상기 비휘발성 메모리 장치를 포함하는 장치들
KR10-2011-0000359 2011-01-04
US13/316,636 US8654580B2 (en) 2011-01-04 2011-12-12 Non-volatile memory devices and systems including the same, and methods of programming non-volatile memory devices
US13/316,636 2011-12-12

Publications (2)

Publication Number Publication Date
DE102011089880A1 true DE102011089880A1 (de) 2012-09-13
DE102011089880B4 DE102011089880B4 (de) 2022-01-27

Family

ID=46380664

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102011089880.8A Active DE102011089880B4 (de) 2011-01-04 2011-12-23 Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements, nichtflüchtiges Speicherelement und Speichersystem

Country Status (5)

Country Link
US (1) US8654580B2 (de)
JP (1) JP5951253B2 (de)
KR (1) KR101703106B1 (de)
CN (1) CN102592668B (de)
DE (1) DE102011089880B4 (de)

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101193059B1 (ko) * 2011-04-21 2012-10-22 에스케이하이닉스 주식회사 비휘발성 메모리 장치 및 그 동작 방법
US9098399B2 (en) 2011-08-31 2015-08-04 SMART Storage Systems, Inc. Electronic system with storage management mechanism and method of operation thereof
US9063844B2 (en) 2011-09-02 2015-06-23 SMART Storage Systems, Inc. Non-volatile memory management system with time measure mechanism and method of operation thereof
DE102011085764A1 (de) * 2011-11-04 2013-05-08 Robert Bosch Gmbh Verfahren zum Betreiben einer Busanordnung
US9239781B2 (en) 2012-02-07 2016-01-19 SMART Storage Systems, Inc. Storage control system with erase block mechanism and method of operation thereof
KR101975406B1 (ko) 2012-07-11 2019-05-07 삼성전자주식회사 비휘발성 메모리 장치 및 그것을 포함하는 메모리 시스템 및 그것의 메모리 블록 관리, 소거, 및 프로그램 방법들
KR102015906B1 (ko) * 2012-11-12 2019-08-29 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 메모리 시스템 및 그것의 읽기 방법
US9466382B2 (en) 2012-11-14 2016-10-11 Sandisk Technologies Llc Compensation for sub-block erase
US9671962B2 (en) 2012-11-30 2017-06-06 Sandisk Technologies Llc Storage control system with data management mechanism of parity and method of operation thereof
US8988941B2 (en) 2012-12-18 2015-03-24 SanDisk Tehcnologies Inc. Select transistor tuning
US8885420B2 (en) * 2013-01-02 2014-11-11 Sandisk Technologies Inc. Erase for non-volatile storage
US9123445B2 (en) 2013-01-22 2015-09-01 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
US9214965B2 (en) 2013-02-20 2015-12-15 Sandisk Enterprise Ip Llc Method and system for improving data integrity in non-volatile storage
US9329928B2 (en) 2013-02-20 2016-05-03 Sandisk Enterprise IP LLC. Bandwidth optimization in a non-volatile memory system
US9183137B2 (en) 2013-02-27 2015-11-10 SMART Storage Systems, Inc. Storage control system with data management mechanism and method of operation thereof
US10049037B2 (en) 2013-04-05 2018-08-14 Sandisk Enterprise Ip Llc Data management in a storage system
US9170941B2 (en) 2013-04-05 2015-10-27 Sandisk Enterprises IP LLC Data hardening in a storage system
US9543025B2 (en) 2013-04-11 2017-01-10 Sandisk Technologies Llc Storage control system with power-off time estimation mechanism and method of operation thereof
US10546648B2 (en) 2013-04-12 2020-01-28 Sandisk Technologies Llc Storage control system with data management mechanism and method of operation thereof
US9558108B2 (en) * 2013-04-15 2017-01-31 Macronix International Co., Ltd. Half block management for flash storage devices
US9218890B2 (en) 2013-06-03 2015-12-22 Sandisk Technologies Inc. Adaptive operation of three dimensional memory
US9367353B1 (en) 2013-06-25 2016-06-14 Sandisk Technologies Inc. Storage control system with power throttling mechanism and method of operation thereof
US9244519B1 (en) 2013-06-25 2016-01-26 Smart Storage Systems. Inc. Storage system with data transfer rate adjustment for power throttling
US9146850B2 (en) 2013-08-01 2015-09-29 SMART Storage Systems, Inc. Data storage system with dynamic read threshold mechanism and method of operation thereof
US9448946B2 (en) 2013-08-07 2016-09-20 Sandisk Technologies Llc Data storage system with stale data mechanism and method of operation thereof
US9361222B2 (en) 2013-08-07 2016-06-07 SMART Storage Systems, Inc. Electronic system with storage drive life estimation mechanism and method of operation thereof
US9431113B2 (en) 2013-08-07 2016-08-30 Sandisk Technologies Llc Data storage system with dynamic erase block grouping mechanism and method of operation thereof
US9142324B2 (en) 2013-09-03 2015-09-22 Sandisk Technologies Inc. Bad block reconfiguration in nonvolatile memory
US9152555B2 (en) 2013-11-15 2015-10-06 Sandisk Enterprise IP LLC. Data management with modular erase in a data storage system
US9218886B2 (en) 2013-12-10 2015-12-22 SanDisk Technologies, Inc. String dependent parameter setup
US9252148B2 (en) 2014-01-22 2016-02-02 Micron Technology, Inc. Methods and apparatuses with vertical strings of memory cells and support circuitry
KR102179284B1 (ko) 2014-05-12 2020-11-18 삼성전자주식회사 불 휘발성 메모리 장치 및 그것의 소거 방법
KR102321501B1 (ko) 2014-05-14 2021-11-05 삼성전자주식회사 불휘발성 메모리 장치 및 그것을 포함하는 스토리지 장치의 동작 방법
KR102182804B1 (ko) * 2014-07-29 2020-11-25 삼성전자주식회사 메모리 장치의 독출 방법
KR20160074237A (ko) * 2014-12-18 2016-06-28 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
KR102360211B1 (ko) * 2015-01-21 2022-02-08 삼성전자주식회사 메모리 시스템의 동작 방법
US9543023B2 (en) * 2015-01-23 2017-01-10 Sandisk Technologies Llc Partial block erase for block programming in non-volatile memory
US9691473B2 (en) 2015-09-22 2017-06-27 Sandisk Technologies Llc Adaptive operation of 3D memory
US9401216B1 (en) 2015-09-22 2016-07-26 Sandisk Technologies Llc Adaptive operation of 3D NAND memory
US9728262B2 (en) 2015-10-30 2017-08-08 Sandisk Technologies Llc Non-volatile memory systems with multi-write direction memory units
KR102469549B1 (ko) * 2016-04-11 2022-11-22 에스케이하이닉스 주식회사 메모리 장치 및 이의 동작 방법
US11205483B2 (en) 2016-04-11 2021-12-21 SK Hynix Inc. Memory system having dies and operating method of the memory system outputting a command in response to a status of a selected die
US11017838B2 (en) 2016-08-04 2021-05-25 Samsung Electronics Co., Ltd. Nonvolatile memory devices
KR102620562B1 (ko) * 2016-08-04 2024-01-03 삼성전자주식회사 비휘발성 메모리 장치
KR102461738B1 (ko) * 2016-08-16 2022-11-02 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그것의 동작 방법
KR102646895B1 (ko) * 2016-09-29 2024-03-12 삼성전자주식회사 메모리 카드 및 이를 포함하는 스토리지 시스템
US10074440B2 (en) 2016-10-28 2018-09-11 Sandisk Technologies Llc Erase for partially programmed blocks in non-volatile memory
US9977622B1 (en) * 2016-11-22 2018-05-22 Micron Technology, Inc. Buffer operations in memory
CN106887252B (zh) * 2017-01-04 2020-02-07 上海华虹宏力半导体制造有限公司 Eeprom存储器及其操作方法
US10354737B2 (en) * 2017-06-22 2019-07-16 Western Digital Technologies, Inc. Non-volatile memory sub-block erasure disturb management scheme
KR20190000562A (ko) * 2017-06-23 2019-01-03 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
US11232841B2 (en) 2017-09-05 2022-01-25 Samsung Electronics Co., Ltd. Methods of operating memory devices based on sub-block positions and related memory system
KR102336659B1 (ko) * 2017-09-05 2021-12-07 삼성전자 주식회사 데이터 신뢰성을 향상시키기 위한 메모리 동작을 수행하는 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 장치의 동작 방법
US10315419B2 (en) 2017-09-22 2019-06-11 Eastman Kodak Company Method for assigning communication addresses
KR102408482B1 (ko) * 2017-10-20 2022-06-14 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법
CN111009274B (zh) * 2018-10-08 2022-11-08 华邦电子股份有限公司 快闪存储器储存装置及其操作方法
US10908824B2 (en) * 2018-11-08 2021-02-02 Winbond Electronics Corp. Flash memory storage device and method thereof
US10916310B2 (en) * 2019-05-10 2021-02-09 Macronix International Co., Ltd. Memory system, memory controller, and memory control method
KR20200144389A (ko) * 2019-06-18 2020-12-29 삼성전자주식회사 스토리지 장치 및 그것의 액세스 방법
US11487454B2 (en) 2019-12-05 2022-11-01 Sandisk Technologies Llc Systems and methods for defining memory sub-blocks
US11335412B2 (en) * 2019-12-31 2022-05-17 Micron Technology, Inc. Managing sub-block erase operations in a memory sub-system
KR20230075014A (ko) * 2021-11-22 2023-05-31 삼성전자주식회사 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 동작 방법
CN116185282B (zh) * 2022-12-20 2023-10-13 珠海妙存科技有限公司 一种闪存虚拟块的分段擦除方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7679133B2 (en) 2007-11-08 2010-03-16 Samsung Electronics Co., Ltd. Vertical-type non-volatile memory devices

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US686222A (en) * 1901-01-07 1901-11-05 Thomas E Heeter Electric clock.
US6549467B2 (en) * 2001-03-09 2003-04-15 Micron Technology, Inc. Non-volatile memory device with erase address register
US6614695B2 (en) * 2001-08-24 2003-09-02 Micron Technology, Inc. Non-volatile memory with block erase
JP4220319B2 (ja) * 2003-07-04 2009-02-04 株式会社東芝 不揮発性半導体記憶装置およびそのサブブロック消去方法
KR101297283B1 (ko) 2006-07-10 2013-08-19 삼성전자주식회사 낸드형 셀 스트링을 가지는 비휘발성 기억 장치
US7804718B2 (en) 2007-03-07 2010-09-28 Mosaid Technologies Incorporated Partial block erase architecture for flash memory
KR101391881B1 (ko) * 2007-10-23 2014-05-07 삼성전자주식회사 멀티-비트 플래시 메모리 장치 및 그것의 프로그램 및 읽기방법
US8014209B2 (en) * 2008-07-02 2011-09-06 Sandisk Technologies Inc. Programming and selectively erasing non-volatile storage
KR20100047560A (ko) 2008-10-29 2010-05-10 삼성전자주식회사 플래시 메모리 장치 및 그것의 소거 방법
JP4653833B2 (ja) * 2008-11-04 2011-03-16 シャープ株式会社 不揮発性半導体記憶装置及びその制御方法
KR101193059B1 (ko) * 2011-04-21 2012-10-22 에스케이하이닉스 주식회사 비휘발성 메모리 장치 및 그 동작 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7679133B2 (en) 2007-11-08 2010-03-16 Samsung Electronics Co., Ltd. Vertical-type non-volatile memory devices

Also Published As

Publication number Publication date
US20120170365A1 (en) 2012-07-05
US8654580B2 (en) 2014-02-18
KR101703106B1 (ko) 2017-02-06
DE102011089880B4 (de) 2022-01-27
JP2012142074A (ja) 2012-07-26
KR20120079202A (ko) 2012-07-12
CN102592668A (zh) 2012-07-18
JP5951253B2 (ja) 2016-07-13
CN102592668B (zh) 2016-09-14

Similar Documents

Publication Publication Date Title
DE102011089880B4 (de) Verfahren zum Programmieren eines Speicherblocks eines nichtflüchtigen Speicherelements, nichtflüchtiges Speicherelement und Speichersystem
DE112017001761B4 (de) NAND-Struktur mit Stufenauswahl-Gate-Transistoren
US8811094B2 (en) Non-volatile multi-level memory device and data read method
DE112017002776T5 (de) Nichtflüchtiger Speicher mit angepasster Steuerung vom Typ der Störinjektion während der Programmüberprüfung für eine verbesserte Programmleistung
JP4945183B2 (ja) メモリコントローラ
US20110182120A1 (en) Non-volatile memory devices and systems including multi-level cells using modified read voltages and methods of operating the same
CN107195326B (zh) 半导体存储装置及存储系统
US9466381B2 (en) Semiconductor device
CN106531216B (zh) 存储器系统
DE102013200952A1 (de) Halbleiterspeichervorrichtung
DE102013109235A1 (de) Flash-Speichersystem mit Detektor für anormale Wortleitung und Verfahren zum Erfassen einer anormalen Wortleitung
DE102013108907A1 (de) Nichtflüchtige Speichervorrichtung mit nahen/fernen Speicherzellengruppierungen und Datenverarbeitungsverfahren
US20140063968A1 (en) Semiconductor memory device and method of operating the same
DE102008033511A1 (de) Verfahren zum Programmieren eines Flashspeichers, Flashspeicher und Flashspeichersystem
KR20140123230A (ko) 플래시 메모리와 메모리 컨트롤러를 포함하는 데이터 저장 장치 및 그것의 배드 페이지 관리 방법
JP2016162470A (ja) 半導体記憶装置及びメモリシステム
DE102013108491A1 (de) Nichtflüchtige Speichervorrichtung und Betriebsverfahren mit variablen Speicherzellenzustandsdefinitionen
DE102011054918A1 (de) Nichtflüchtige Speichervorrichtung, Verfahren zum Betreiben derselben und elektronische Vorrichtung mit derselben
DE102020105946A1 (de) Speicherzellen-fehlform-abschwächung
KR20140088386A (ko) 반도체 장치 및 이의 동작 방법
DE102020105991A1 (de) SUBBLOCK-GRÖßENREDUKTION FÜR NICHTFLÜCHTIGE 3D-SPEICHER
US20150270003A1 (en) Non-volatile memory and method for programming the same
DE102022212920A1 (de) Speichervorrichtung und verfahren zum betreiben der speichervorrichtung
DE102022004129A1 (de) Zurückkopier-lösch-befehl zur durchführung einer scan- und leseoperation in einer speichervorrichtung
DE102020115731B4 (de) Systeme und verfahren zur programmverifizierung auf einem speichersystem

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final