DE102013100596B4 - Non-volatile memory system with programming and erasing methods and block management methods - Google Patents

Non-volatile memory system with programming and erasing methods and block management methods Download PDF

Info

Publication number
DE102013100596B4
DE102013100596B4 DE102013100596.9A DE102013100596A DE102013100596B4 DE 102013100596 B4 DE102013100596 B4 DE 102013100596B4 DE 102013100596 A DE102013100596 A DE 102013100596A DE 102013100596 B4 DE102013100596 B4 DE 102013100596B4
Authority
DE
Germany
Prior art keywords
block
state
memory
data
invalid
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.)
Active
Application number
DE102013100596.9A
Other languages
German (de)
Other versions
DE102013100596A1 (en
Inventor
Eun Chu Oh
Jaehong Kim
Jongha KIM
Junjin Kong
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
Priority claimed from KR1020120008370A external-priority patent/KR101832934B1/en
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE102013100596A1 publication Critical patent/DE102013100596A1/en
Application granted granted Critical
Publication of DE102013100596B4 publication Critical patent/DE102013100596B4/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5628Programming or writing circuits; Data input circuits
    • G11C11/5635Erasing 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
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/816Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
    • G11C29/82Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for EEPROMs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

Verfahren, das Folgendes aufweist:ein Überschreiben einer Speicherzelle, welche m-Bit-Daten speichert, um n-Bit-Daten zu speichern, wobei n kleiner als oder gleich m ist, wobei die Speicherzelle einen einer ersten Mehrzahl von Programmzuständen hat, wenn sie die m-Bit-Daten speichert, und wobei die Speicherzelle einen einer zweiten Mehrzahl von Programmzuständen hat, wenn sie die n-Bit-Daten speichert, wobei die zweite Mehrzahl von Programmzuständen wenigstens einen Programmzustand (EP1; EP2; EST) aufweist, der nicht in der ersten Mehrzahl von Programmzuständen ist, und wobei der wenigstens eine Programmzustand (EP1; EP2; EST) eine Schwellenspannungsverteilung hat, die höhere Schwellenspannungen aufweist als die Schwellenspannungsverteilungen der ersten Mehrzahl von Programmzuständen.A method comprising:overwriting a memory cell that stores m-bit data to store n-bit data, where n is less than or equal to m, the memory cell having one of a first plurality of program states when stores the m-bit data, and wherein the memory cell has one of a second plurality of program states when storing the n-bit data, the second plurality of program states having at least one program state (EP1; EP2; EST) that is not in the first plurality of program states, and wherein the at least one program state (EP1; EP2; EST) has a threshold voltage distribution that has higher threshold voltages than the threshold voltage distributions of the first plurality of program states.

Description

HINTERGRUNDBACKGROUND

Die erfinderischen Konzepte, welche hierin beschrieben sind, beziehen sich auf ein Verfahren für eine nichtflüchtige Speichervorrichtung und ein Speichersystem.The inventive concepts described herein relate to a method for a non-volatile memory device and a memory system.

Eine Halbleiterspeichervorrichtung ist in entweder flüchtig (hierauf wird hierin nachstehend als flüchtige Speichervorrichtung Bezug genommen) oder nichtflüchtig (hierauf wird hierin nachstehend als nichtflüchtige Speichervorrichtung Bezug genommen) klassifiziert. Eine nichtflüchtige Speichervorrichtung hält Inhalte, welche darin gespeichert sind, auch bei einem Abschalten. Eine Speicherzelle in der nichtflüchtigen Speichervorrichtung ist entweder einmal programmierbar oder wiederprogrammiert gemäß der Herstellungstechnologie, welche verwendet wird. Nichtflüchtige Speichervorrichtungen werden verwendet, um Programme oder Mikrocode in einer breiten Vielfalt von Anwendungen in dem Computer, in der Luftfahrt, in der Telekommunikation und in der Unterhaltungselektronikindustrie zu speichern.A semiconductor memory device is classified into either volatile (hereinafter referred to as a volatile memory device) or non-volatile (hereinafter referred to as a non-volatile memory device). A non-volatile memory device retains contents stored therein even when powered off. A memory cell in the non-volatile memory device is either once programmable or reprogrammed according to the manufacturing technology used. Non-volatile memory devices are used to store programs or microcode in a wide variety of applications in the computing, aerospace, telecommunications, and consumer electronics industries.

Aus der DE 10 2008 003 055 A1 ist ein Verfahren zum Ausführen eines Lesevorgangs in einem Flash-Speicher bekannt. Der Flash-Speicher weist ein Speicherzellenarray mit zumindest einem Block auf, wobei der Block eine Vielzahl von Seiten umfasst. Das Verfahren weist folgende Verfahrensschritte auf: Empfangen eines Lesebefehls zum Lesen von Daten von einer ausgewählten Seite in dem Block; Festlegen, ob der Block irgendeine Seite, die noch nicht programmiert worden ist, aufweist oder nicht; Durchführen eines Dummydaten-Programmiervorgangs auf zumindest einer Seite, welche als noch nicht programmiert festgelegt worden ist; und Ausführen des Lesebefehls zum Lesen der Daten der ausgewählten Seite, nachdem der Dummydaten-Programmiervorgang abgeschlossen ist.From the DE 10 2008 003 055 A1 a method for performing a read operation in a flash memory is known. The flash memory has a memory cell array with at least one block, the block including a plurality of pages. The method comprises the steps of: receiving a read command to read data from a selected page in the block; determining whether or not the block has any page that has not yet been programmed; performing a dummy data programming operation on at least one page which has been determined not yet programmed; and executing the read command to read the data of the selected page after the dummy data programming process is completed.

Aus der US 2007/0201274 A1 ist ein Flash-Speicher mit Multi-Level-Zellen (MLC) bekannt, die jeweils mehrere Bits pro Zelle speichern können. Die Bits einer einzelnen MLC werden auf mehrere Seiten verteilt, um die Fehlerkorrigierbarkeit mit dem Error Correction Code (ECC) zu verbessern. Aus einer oberen Referenzspannung wird eine Reihe abnehmender Referenzen erzeugt und mit einer Bitleitungsspannung verglichen. Vergleichsergebnisse werden durch eine Übersetzungslogik übersetzt, die Lesedaten und Über- und Unterprogrammierungssignale erzeugt.From the U.S. 2007/0201274 A1 a flash memory with multi-level cells (MLC) is known, each of which can store several bits per cell. The bits of a single MLC are spread across multiple pages to improve error correctability with the Error Correction Code (ECC). A series of decreasing references is generated from an upper reference voltage and compared to a bit line voltage. Comparison results are translated by translation logic that generates read data and over and under program signals.

KURZFASSUNGSHORT VERSION

Einige beispielhafte Ausführungsformen beziehen sich auf ein Verfahren zum Verwalten eines Speichers.Some example embodiments relate to a method for managing memory.

In einer Ausführungsform weist das Verfahren ein Überschreiben einer Speicherzelle auf, welche m-Bit-Daten speichert, um n-Bit-Daten zu speichern, wobei n kleiner als oder gleich m ist. Die Speicherzelle hat einen einer ersten Mehrzahl von Programmierzuständen, wenn sie die m-Bit-Daten speichert, und die Speicherzelle hat einen einer zweiten Mehrzahl von Programmierzuständen, wenn sie die n-Bit-Daten speichert. Die zweite Mehrzahl von Programmierzuständen weist wenigstens einen Programmierzustand auf, der nicht in der ersten Mehrzahl von Programmierzuständen ist. Der wenigstens eine Programmzustand hat eine Schwellenspannungsverteilung, die höhere Schwellenspannungen aufweist als die Schwellenspannungsverteilungen der ersten Mehrzahl von Programmzuständen.In one embodiment, the method includes overwriting a memory cell storing m-bit data to store n-bit data, where n is less than or equal to m. The memory cell has one of a first plurality of programming states when storing the m-bit data and the memory cell has one of a second plurality of programming states when storing the n-bit data. The second plurality of programming states includes at least one programming state that is not in the first plurality of programming states. The at least one program state has a threshold voltage distribution that has higher threshold voltages than the threshold voltage distributions of the first plurality of program states.

In einer Ausführungsform hat der Programmierzustand, der nicht in der ersten Mehrzahl von Programmierzuständen ist, eine Schwellenspannungsverteilung größer als die Schwellenverteilungen der ersten Mehrzahl von Zuständen.In one embodiment, the programming state that is not in the first plurality of programming states has a threshold voltage distribution greater than the threshold distributions of the first plurality of states.

In einer Ausführungsform weist die zweite Mehrzahl von Programmierzuständen mehr als einen Programmierzustand auf, der nicht in der ersten Mehrzahl von Programmierzuständen ist.In one embodiment, the second plurality of programming states includes more than one programming state that is not in the first plurality of programming states.

In einer Ausführungsform weist das Verfahren weiterhin ein Überschreiben der Speicherzelle auf, welche n-Bit-Daten speichert, um p-Bit-Daten zu speichern, wobei p kleiner als oder gleich n ist. Die Speicherzelle hat eine dritte Mehrzahl von Speicherzuständen, wenn sie die p-Bit-Daten speichert, und die dritte Mehrzahl von Programmierzuständen weist wenigstens einen Programmierzustand auf, der nicht in der ersten Mehrzahl und der zweiten Mehrzahl von Programmierzuständen ist. In einer Ausführungsform ist p gleich zu n. In einer anderen Ausführungsform ist p kleiner als n.In one embodiment, the method further comprises overwriting the memory cell storing n-bit data to store p-bit data, where p is less than or equal to n. The memory cell has a third plurality of storage states when storing the p-bit data, and the third plurality of programming states includes at least one programming state that is not in the first plurality and the second plurality of programming states. In one embodiment, p is equal to n. In another embodiment, p is less than n.

In einer Ausführungsform ist der Speicher, welcher die Speicherzelle aufweist, in Blöcke von Speicherzellen unterteilt, und das Verfahren weist weiterhin ein Bestimmen auf, ob ein ungültiger Block, welcher die Speicherzelle aufweist, überschreibbar ist. Ein ungültiger Block speichert eine Grenzwertmenge von ungültigen Daten. Hier ist das Überschreiben erlaubt, wenn das Bestimmen bestimmt, dass der ungültige Block, welcher die Speicherzelle aufweist, überschreibbar ist.In one embodiment, the memory including the memory cell is partitioned into blocks of memory cells, and the method further includes determining whether an invalid block including the memory cell is overwritable. An invalid block stores a threshold amount of invalid data. Here, the overwriting is allowed when determining that the invalid block including the memory cell is overwritable.

In einer Ausführungsform bestimmt das Bestimmen basierend auf einer Anzahl von reinen bzw. freien Blöcken in dem Speicher, dass der ungültige Block überschreibbar ist.In one embodiment, the determining determines that the invalid block is overwritable based on a number of clean blocks in the memory.

In einer anderen Ausführungsform bestimmt das Bestimmen basierend auf einer Anzahl von freien Seiten in dem ungültigen Block, wobei jede freie Seite keine Daten speichert, dass der ungültige Block überschreibbar ist.In another embodiment, the determining determines that the invalid block is rewritable based on a number of free pages in the invalid block, each free page storing no data.

In einer Ausführungsform bestimmt das Bestimmen basierend auf einem Gesundheitszustand des ungültigen Blocks, dass der ungültige Block überschreibbar ist. Der Gesundheitszustand zeigt ein Niveau der Verschlechterung bzw. Schädigung des ungültigen Blocks an. In einer Ausführungsform kann der Gesundheitszustand auf einer Anzahl von Programmier- /Lösch-Zyklen basiert sein, welche der ungültige Block durchlaufen hat. In einer anderen Ausführungsform kann der Gesundheitszustand auf einer Bit-Fehlerrate für Daten, welche aus dem ungültigen Block ausgelesen werden, basiert sein.In one embodiment, the determining determines that the invalid block is rewritable based on a health of the invalid block. The health status indicates a level of degradation of the invalid block. In one embodiment, the health status may be based on a number of program/erase cycles that the invalid block has undergone. In another embodiment, the health status may be based on a bit error rate for data read from the invalid block.

In einer weiteren Ausführungsform bestimmt das Bestimmen basierend auf einer Anzahl von reinen Blöcken in dem Speicher und einem Gesundheitszustand des ungültigen Blocks, dass der ungültige Block überschreibbar ist.In another embodiment, the determining determines that the invalid block is rewritable based on a number of clean blocks in the memory and a health state of the invalid block.

In einer Ausführungsform weist ein Speicher die Speicherzelle auf, die Speicherzelle ist in Blöcke von Speicherzellen unterteilt, wobei jeder Block in Seiten unterteilt ist, und das Verfahren weist weiterhin ein Bestimmen auf, ob eine ungültige Seite, welche die Speicherzelle aufweist, überschreibbar ist. Die ungültige Seite speichert ungültig gemachte Daten. Hier ist das Überschreiben erlaubt, wenn das Bestimmen bestimmt, dass die ungültige Seite, welche die Speicherzelle aufweist, überschreibbar ist.In one embodiment, a memory comprises the memory cell, the memory cell is divided into blocks of memory cells, each block divided into pages, and the method further comprises determining whether an invalid page comprising the memory cell is overwritable. The invalid page stores invalidated data. Here, the overwriting is allowed when the determination determines that the invalid page that the memory cell has is overwritable.

In einer Ausführungsform bestimmt das Bestimmen basierend auf einer Anzahl von reinen Blöcken in dem Speicher, dass die ungültige Seite überschreibbar ist.In one embodiment, the determining determines that the invalid page is rewritable based on a number of clean blocks in the memory.

In einer Ausführungsform bestimmt das Bestimmen basierend auf einer Anzahl von freien Seiten in dem Block, welcher die ungültige Seite aufweist, wobei jede freie Seite keinerlei Daten speichert, dass die ungültige Seite überschreibbar ist.In one embodiment, the determining determines that the invalid page is rewritable based on a number of free pages in the block that includes the invalid page, where each free page does not store any data.

In einer Ausführungsform bestimmt das Bestimmen basierend auf einem Gesundheitszustand des Blocks, welcher die ungültige Seite aufweist, dass die ungültige Seite überschreibbar ist. Der Gesundheitszustand zeigt ein Niveau der Verschlechterung bzw. Schädigung des Blocks an. In einer Ausführungsform kann der Gesundheitszustand auf einer Anzahl von Programmier-/Lösch-Zyklen basiert sein, welche der ungültige Block durchlaufen hat. In einer anderen Ausführungsform kann der Gesundheitszustand auf einer Bit-Fehlerrate für Daten, welche aus dem ungültigen Block gelesen werden, basiert sein.In one embodiment, the determining determines that the invalid page is rewritable based on a health of the block that includes the invalid page. The health status indicates a level of deterioration of the block. In one embodiment, the health status may be based on a number of program/erase cycles that the invalid block has undergone. In another embodiment, the health status may be based on a bit error rate for data read from the invalid block.

In einer Ausführungsform bestimmt das Bestimmen basierend auf einer Anzahl von reinen Seiten in dem Block, welcher die ungültige Seite aufweist und einem Gesundheitszustand des Blocks, dass die ungültige Seite überschreibbar ist.In one embodiment, the determining determines that the bad page is rewritable based on a number of clean pages in the block that includes the bad page and a health state of the block.

In einer Ausführungsform weist das Verfahren weiterhin ein Speichern eines ersten Indikators bzw. einer ersten Anzeige auf, der bzw. die anzeigt, dass die Speicherzelle überschreibbar ist, wenn das Bestimmen bestimmt, dass die Speicherzelle überschreibbar ist. Das Speichern kann den ersten Indikator in einer Tabelle eines Speichercontrollers bzw. einer Speichersteuerung und/oder dem Speicher speichern. Der Speichercontroller ist konfiguriert, um den Speicher zu steuern.In one embodiment, the method further comprises storing a first indicator indicating that the memory cell is overwritable if the determining determines that the memory cell is overwritable. The storing may store the first indicator in a table of a memory controller and/or the memory. The memory controller is configured to control the memory.

In einer Ausführungsform weist das Verfahren zusätzlich ein Speichern eines zweiten Indikators bzw. einer zweiten Anzeige auf, der bzw. die nach dem Überschreiben anzeigt, dass die Speicherzelle überschrieben worden ist. Das Speichern eines zweiten Indikators speichert den zweiten Indikator in einer Tabelle des Speichercontrollers und/oder dem Speicher.In one embodiment, the method additionally includes storing a second indicator that, after being overwritten, indicates that the memory cell has been overwritten. Storing a second indicator stores the second indicator in a table of the memory controller and/or memory.

In einer Ausführungsform weist das Verfahren auch ein Speichern eines dritten Indikators bzw. einer dritten Anzeige auf, welcher bzw. welche eine Anzahl von Malen anzeigt, die die Speicherzelle überschrieben worden ist seit sie das letzte Mal nach dem Überschreiben gelöscht worden ist. Das Speichern eines dritten Indikators speichert den dritten Indikator in einer Tabelle eines Speichercontrollers und/oder dem Speicher.In one embodiment, the method also includes storing a third indicator that indicates a number of times the memory cell has been overwritten since it was last erased after being overwritten. Storing a third indicator stores the third indicator in a table of a memory controller and/or the memory.

Einige beispielhafte Ausführungsformen beziehen sich auf ein Speichersystem.Some example embodiments relate to a memory system.

In einer Ausführungsform weist das Speichersystem einen Speicher und einen Controller auf. Der Speicher weist wenigstens einen Speicherstring bzw. Speicherstrang (memory string) auf und der Speicherstrang weist eine Mehrzahl von Speicherzellen, welche in Serie verbunden sind, auf. Die Mehrzahl von Speicherzellen ist vertikal hinsichtlich eines Substrats angordnet und die Mehrzahl von Speicherzellen sind in wenigstens eine erste Gruppe von Speicherzellen und eine zweite Gruppe von Speicherzellen unterteilt. Die erste Gruppe von Speicherzellen ist weiter von dem Substrat angeordnet als die zweite Gruppe von Speicherzellen. Der Controller bzw. die Steuerung ist konfiguriert, um Daten in die Mehrzahl von Speicherzellen basierend auf einem ersten Satz von Schwellenspannungsverteilungen zu programmieren, und der Controller ist konfiguriert, um Daten in Speicherzellen der ersten Gruppe basierend auf einem zweiten Satz von Schwellenspannungsverteilungen zu überschreiben. Eine Menge von überschriebenen Daten in einer Speicherzelle der ersten Gruppe ist kleiner oder gleich zu einer Menge von programmierten Daten. Der zweite Satz von Schwellenspannungsverteilungen weist wenigstens eine Schwellenspannungsverteilung auf, die nicht in dem ersten Satz von Schwellenverteilungen ist.In one embodiment, the storage system includes a memory and a controller. The memory has at least one memory string and the memory string has a plurality of memory cells connected in series. The plurality of memory cells are arranged vertically with respect to a substrate, and the plurality of memory cells are divided into at least a first group of memory cells and a second group of memory cells. The first group of memory cells is located farther from the substrate than the second group of memory cells. The The controller is configured to program data into the plurality of memory cells based on a first set of threshold voltage distributions and the controller is configured to overwrite data into memory cells of the first group based on a second set of threshold voltage distributions. An amount of overwritten data in a memory cell of the first group is less than or equal to an amount of programmed data. The second set of threshold voltage distributions has at least one threshold voltage distribution that is not in the first set of threshold distributions.

In einer Ausführungsform ist der Controller konfiguriert, um Speicherzellen in der zweiten Gruppe nicht zu überschreiben.In one embodiment, the controller is configured not to overwrite memory cells in the second group.

In einer Ausführungsform ist der Controller konfiguriert, um Daten in Speicherzellen der zweiten Gruppe basierend auf einem dritten Satz von Schwellenspannungsverteilungen zu überschreiben. Eine Menge von überschriebenen Daten in einer Speicherzelle der zweiten Gruppe ist kleiner als oder gleich zu einer Menge von programmierten Daten. Der dritte Satz von Schwellenspannungsverteilungen weist wenigstens eine Schwellenspannungsverteilung auf, die nicht in dem ersten Satz von Schwellenspannungsverteilungen ist.In one embodiment, the controller is configured to overwrite data in memory cells of the second group based on a third set of threshold voltage distributions. An amount of overwritten data in a memory cell of the second group is less than or equal to an amount of programmed data. The third set of threshold voltage distributions has at least one threshold voltage distribution that is not in the first set of threshold voltage distributions.

In einer Ausführungsform unterscheidet sich der dritte Satz von Schwellenverteilungen von dem zweiten Satz von Schwellenverteilungen.In one embodiment, the third set of threshold distributions differs from the second set of threshold distributions.

In einer Ausführungsform ist der Controller konfiguriert, um die Speicherzellen der ersten Gruppe derart zu überschreiben, dass m-Bit-Daten wenigstens teilweise durch Schwellenspannungsverteilungen in wenigstens zwei Speicherzellen der ersten Gruppe repräsentiert werden.In one embodiment, the controller is configured to overwrite the memory cells of the first group such that m-bit data is at least partially represented by threshold voltage distributions in at least two memory cells of the first group.

In einer Ausführungsform weisen die wenigstens zwei Speicherzellen der ersten Gruppe Speicherzellen an verschiedenen vertikalen Örtlichkeiten innerhalb ihrer jeweiligen Speicherstränge auf.In one embodiment, the at least two memory cells of the first group have memory cells at different vertical locations within their respective memory lanes.

In einer Ausführungsform weist der Speicher eine Mehrzahl von Speichersträngen auf und die Speicherzellen der Mehrzahl von Speichersträngen sind in Blöcke unterteilt. Der Controller ist konfiguriert, um Zustandsinformationen für wenigstens einen der Blöcke zu speichern. Die Zustandsinformationen zeigen einen eines reinen Zustands, eines programmierten Zustands, eines ungültigen Zustands, eines überschreibbaren Zustands und eines überschriebenen Zustands an. Der reine Zustand zeigt an, dass der Block gelöscht ist, der programmierte Zustand zeigt an, dass der Block gültige Daten speichert, der ungültige Zustand zeigt an, dass der Block ungültige Daten speichert, der überschreibbare Zustand zeigt an, dass ein Überschreiben von ungültigen Daten, welche in dem Block gespeichert sind, ohne ein Löschen des Blocks erlaubt ist, und der überschriebene Zustand zeigt an, dass wenigstens ein Abschnitt der Daten, welche in dem Block gespeichert sind, ohne ein Löschen des Blocks überschrieben worden ist.In one embodiment, the memory has a plurality of memory threads and the memory cells of the plurality of memory threads are divided into blocks. The controller is configured to store state information for at least one of the blocks. The state information indicates one of a clean state, a programmed state, an invalid state, a rewritable state, and an overwritten state. The pure state indicates the block is erased, the programmed state indicates the block stores valid data, the invalid state indicates the block stores invalid data, the rewritable state indicates an overwrite of invalid data stored in the block is allowed without erasing the block, and the overwritten state indicates that at least a portion of the data stored in the block has been overwritten without erasing the block.

In einer Ausführungsform ist der Controller konfiguriert, um ein Ändern der Zustandsinformationen für den Block in den überschreibbaren Zustand nur zu erlauben, wenn ein gegenwärtiger Zustand des Blocks der ungültige Zustand ist.In one embodiment, the controller is configured to allow changing the state information for the block to the rewritable state only when a current state of the block is the invalid state.

In einer Ausführungsform ist der Controller konfiguriert, um Daten in dem Block nur zu überschreiben, wenn die Zustandsinformationen des Blocks den überschreibbaren Zustand anzeigen.In one embodiment, the controller is configured to overwrite data in the block only when the block's state information indicates the overwriteable state.

In einer Ausführungsform ist der Controller konfiguriert, um die Zustandsinformationen des Blocks nach einem Überschreiben des Blocks in dem überschriebenen Zustand zu ändern.In one embodiment, the controller is configured to change the state information of the block after overwriting the block in the overwritten state.

In einer Ausführungsform ist der Controller konfiguriert, um eine Überschreibanzahl zu speichern, wenn die Zustandsinformationen den überschriebenen Zustand anzeigen, wobei die Überschreibanzahl eine Anzahl von Malen anzeigt, seitdem der Block zuletzt gelöscht wurde.In one embodiment, the controller is configured to store a rewrite count when the state information indicates the overwritten state, the rewrite count indicating a number of times since the block was last erased.

In einer Ausführungsform ist der Controller konfiguriert, um die Zustandsinformationen in dem Speicher zu speichern. In einer Ausführungsform ist der Controller konfiguriert, um die Zustandsinformationen in einer Seite des Blocks zu speichern.In one embodiment, the controller is configured to store the state information in memory. In one embodiment, the controller is configured to store the state information in a page of the block.

In einer Ausführungsform ist der Controller konfiguriert, um die Zustandsinformationen in dem Controller zu speichern.In one embodiment, the controller is configured to store the state information in the controller.

In einer Ausführungsform zeigt der überschriebene Zustand an, dass der Block gültige Daten speichert.In one embodiment, the overwritten state indicates that the block stores valid data.

In einer Ausführungsform zeigt der überschriebene Zustand an, dass der Block weniger Daten pro Speicherzelle speichert als während des programmierten Zustands gespeichert sind.In one embodiment, the overwritten state indicates that the block stores less data per memory cell than is stored during the programmed state.

KURZE BESCHREIBUNG DER FIGURENBRIEF DESCRIPTION OF THE FIGURES

Die obigen und andere Aufgaben und Merkmale werden aus der folgenden Beschreibung unter Bezugnahme auf die folgenden Figuren offensichtlich werden, worin gleiche Bezugszeichen sich auf gleiche Teile über die gesamten Figuren hinweg beziehen, soweit nicht anders spezifiziert, und worin:

  • 1 ein Blockschaltbild ist, welches ein Speichersystem gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 2 ein Diagramm ist, welches einen Speicherblock in 1 gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 3 eine Querschnittsansicht eines Speicherblocks in 2 gemäß einer Ausführungsform der erfinderischen Konzepte ist;
  • 4 ein vergrößertes Diagramm ist, welches einen von Zelltransistoren in 3 veranschaulicht;
  • 5 ein Konzeptdiagramm ist, welches veranschaulicht, wie ein Speicherblock überschrieben wird;
  • 6 ein Diagramm ist, welches eine Überschreiboperation gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 7 ein Diagramm ist, welches eine Überschreiboperation gemäß einer anderen Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 8 ein Diagramm ist, welches eine Überschreiboperation veranschaulicht, welche folgend auf eine 3-Bit-Programmieroperation gemäß einer Ausführungsform der erfinderischen Konzepte ausgeführt wird;
  • 9 ein Diagramm ist, welches eine Überschreiboperation in 8 gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 10 ein Diagramm ist, welches eine Überschreiboperation in 8 gemäß einer anderen Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 11 ein Diagramm ist, welches eine Programmieroperation veranschaulicht, welche in einem multidimensionalen Modulationsschema durch eine Überschreiboperation nach einer 3-Bit-Programmieroperation ausgeführt wird;
  • 12 ein Diagramm ist, welches eine Programmieroperation in 11 gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 13 ein Konzeptdiagramm ist, welches schematisch ein Programmierverfahren gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 14 ein Konzeptdiagramm ist, welches schematisch ein Programmierverfahren gemäß einer anderen Ausführungsform der erfinderischen Konzepte veranschaulicht,
  • 15 ein Konzeptdiagramm ist, welches schematisch ein Programmierverfahren gemäß noch einer anderen Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 16 ein Flussdiagramm ist, welches ein Blockverwaltungsverfahren gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 17 ein Diagramm ist, welches ein Blockmodus-Bestimmungsverfahren gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 18 ein Diagramm ist, welches ein Blockmodus-Bestimmungsverfahren gemäß einer anderen Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 19 ein Diagramm ist, welches ein Blockmodus-Speicherverfahren gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 20 ein Flussdiagramm ist, welches ein Löschverfahren eines Speichersystems gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 21 ein Flussdiagramm ist, welches ein Löschverfahren eines Speichersystems gemäß einer anderen Ausführungsform der erfinderischen Konzepte veranschaulicht,
  • 22 ein Diagramm ist, welches schematisch eine Lebensdauer eines Blocks gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 23 ein Diagramm ist, welches eine nichtflüchtige Speichervorrichtung in 1 gemäß einer Ausführungsform der erfinderischen Konzepte zeigt;
  • 24 ein Schaltbild ist, welches einen von Blöcken in 23 veranschaulicht,
  • 25 eine Tabelle ist, welche eine Korrelation zwischen der Anzahl von Extrazuständen und einer Löschfrequenzverringerung bzw. Löschhäufigkeitsverringerung veranschaulicht, wenn alle Zellen eines Blocks eines Speichersystems einen Extrazustand haben;
  • 26 eine Tabelle ist, welche eine Korrelation zwischen der Anzahl von Extrazuständen und einer Löschfrequenzverringerung veranschaulicht, wenn die Hälfte von Zellen eines Blocks eines Speichersystems einen Extrazustand haben;
  • 27 ein Blockschaltbild ist, welches schematisch ein Speichersystem gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 28 ein Blockschaltbild ist, welches schematisch eine Speicherkarte gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 29 ein Blockschaltbild ist, welches schematisch ein moviNAND gemäß einer Ausführungsform der erfinderischen Konzepte zeigt;
  • 30 ein Blockschaltbild ist, welches schematisch ein Festkörperlaufwerk gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht;
  • 31 ein Blockschaltbild ist, welches schematisch ein Berechnungssystem bzw. Computersystem, welches ein SSD in 30 gemäß einer Ausführungsform der erfinderischen Konzepte aufweist, veranschaulicht;
  • 32 ein Blockschaltbild ist, welches schematisch eine elektronische Vorrichtung, welche ein SSD in 30 gemäß einer Ausführungsform der erfinderischen Konzepte aufweist, veranschaulicht;
  • 33 ein Blockschaltbild ist, welches schematisch ein Serversystem, welches ein SSD in 30 gemäß einer Ausführungsform der erfinderischen Konzepte aufweist, veranschaulicht;
  • 34 ein Blockschaltbild ist, welches schematisch eine Mobilvorrichtung gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht; und
  • 35 ein Blockschaltbild ist, welches schematisch eine handgeführte elektronische Vorrichtung gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht.
The above and other objects and features will become apparent from the following description with reference to the following figures, wherein like reference characters refer to like parts throughout the figures, unless otherwise specified, and wherein:
  • 1 Figure 12 is a block diagram illustrating a memory system according to an embodiment of the inventive concepts;
  • 2 is a diagram showing a block of memory in 1 illustrated according to an embodiment of the inventive concepts;
  • 3 a cross-sectional view of a memory block in 2 is according to an embodiment of the inventive concepts;
  • 4 is an enlarged diagram showing one of cell transistors in 3 illustrated;
  • 5 Figure 12 is a conceptual diagram illustrating how a memory block is overwritten;
  • 6 Figure 12 is a diagram illustrating an overwrite operation according to an embodiment of the inventive concepts;
  • 7 Figure 12 is a diagram illustrating an overwrite operation according to another embodiment of the inventive concepts;
  • 8th Figure 12 is a diagram illustrating an overwrite operation performed following a 3-bit programming operation according to an embodiment of the inventive concepts;
  • 9 is a diagram showing an overwrite operation in 8th illustrated according to an embodiment of the inventive concepts;
  • 10 is a diagram showing an overwrite operation in 8th illustrated according to another embodiment of the inventive concepts;
  • 11 Fig. 12 is a diagram illustrating a program operation performed in a multidimensional modulation scheme by an overwrite operation after a 3-bit program operation;
  • 12 is a diagram representing a programming operation in 11 illustrated according to an embodiment of the inventive concepts;
  • 13 12 is a conceptual diagram schematically illustrating a programming method according to an embodiment of the inventive concepts;
  • 14 12 is a conceptual diagram schematically illustrating a programming method according to another embodiment of the inventive concepts.
  • 15 12 is a conceptual diagram schematically illustrating a programming method according to yet another embodiment of the inventive concepts;
  • 16 Figure 12 is a flow chart illustrating a block management method according to an embodiment of the inventive concepts;
  • 17 12 is a diagram illustrating a block mode determination method according to an embodiment of the inventive concepts;
  • 18 12 is a diagram illustrating a block mode determination method according to another embodiment of the inventive concepts;
  • 19 Figure 12 is a diagram illustrating a block mode storage method according to an embodiment of the inventive concepts;
  • 20 Figure 12 is a flow chart illustrating an erasing method of a memory system according to an embodiment of the inventive concepts;
  • 21 Figure 12 is a flow chart illustrating an erasing method of a memory system according to another embodiment of the inventive concepts.
  • 22 Fig. 12 is a diagram schematically illustrating a lifetime of a block according to an embodiment of the inventive concepts;
  • 23 is a diagram showing a non-volatile memory device in 1 according to an embodiment of the inventive concepts;
  • 24 is a circuit diagram showing one of blocks in 23 illustrates
  • 25 Figure 12 is a table illustrating a correlation between the number of extra states and an erase frequency reduction when all cells of a block of a memory system have an extra state;
  • 26 Figure 12 is a table illustrating a correlation between the number of extra states and an erase frequency reduction when half of cells of a block of a memory system have an extra state;
  • 27 Figure 12 is a block diagram schematically illustrating a memory system according to an embodiment of the inventive concepts;
  • 28 Figure 12 is a block diagram schematically illustrating a memory card according to an embodiment of the inventive concepts;
  • 29 Fig. 12 is a block diagram schematically showing a moviNAND according to an embodiment of the inventive concepts;
  • 30 Figure 12 is a block diagram schematically illustrating a solid state drive according to an embodiment of the inventive concepts;
  • 31 is a block diagram which schematically shows a computing system or computer system which has an SSD in 30 according to an embodiment of the inventive concepts;
  • 32 Fig. 12 is a block diagram schematically showing an electronic device including an SSD in 30 according to an embodiment of the inventive concepts;
  • 33 is a block diagram that schematically shows a server system that has an SSD in 30 according to an embodiment of the inventive concepts;
  • 34 Figure 12 is a block diagram schematically illustrating a mobile device according to an embodiment of the inventive concepts; and
  • 35 12 is a block diagram schematically illustrating a handheld electronic device according to an embodiment of the inventive concepts.

DETAILLIERTE BESCHREIBUNGDETAILED DESCRIPTION

Ausführungsformen werden im Detail unter Bezugnahme auf die beigefügten Zeichnungen beschrieben werden. Die erfinderischen Konzepte können jedoch in vielen unterschiedlichen Formen ausgeführt werden und sollten nicht als nur auf die veranschaulichten Ausführungsformen beschränkt angesehen werden. Vielmehr sind diese Ausführungsformen als Beispiele vorgesehen, so dass diese Offenbarung sorgfältig und vollständig sein wird, und das Konzept des erfinderischen Konzepts Fachleuten vollständig vermitteln wird. Demzufolge werden bekannte Vorgänge, Elemente und Techniken hinsichtlich einigen der Ausführungsformen des erfinderischen Konzepts nicht beschrieben. Sofern nicht anders angemerkt, bezeichnen gleiche Bezugszeichen gleiche Elemente über die beigefügten Zeichnungen und die schriftliche Beschreibung hinweg und demnach werden Beschreibungen nicht wiederholt werden. In den Zeichnungen können die Größen und relativen Größen von Schichten und Bereichen für die Klarheit übertrieben bzw. überzogen sein.Embodiments will be described in detail with reference to the accompanying drawings. However, the inventive concepts may be embodied in many different forms and should not be construed as limited only to the illustrated embodiments. Rather, these embodiments are provided by way of example so that this disclosure will be thorough and complete, and will fully convey the concept of the inventive concept to those skilled in the art. Accordingly, well-known processes, elements, and techniques regarding some of the embodiments of the inventive concept will not be described. Unless otherwise noted, like reference numbers refer to like elements throughout the accompanying drawings and written description, and accordingly descriptions will not be repeated. In the drawings, the sizes and relative sizes of layers and regions may be exaggerated for clarity.

Es wird verstanden werden, dass, obwohl der Wortlaut erster/erste/erstes, zweiter/zweite/zweites, dritter/dritte/drittes etc. hierin verwendet werden kann, um verschiedene Elemente, Komponenten bzw. Bestandteile, Bereiche, Schichten und/oder Sektionen zu beschreiben, diese Elemente, Komponenten bzw. Bestandteile, Bereiche, Schichten und/oder Sektionen durch diese Wortlaute nicht beschränkt werden sollten. Diese Wortlaute werden verwendet, um ein Element, eine Komponente bzw. einen Bestandteil, einen Bereich, eine Schicht und/oder eine Sektion von einem anderen Element, Komponente bzw. Bestandteil, Bereich, Schicht und/oder Sektion zu unterscheiden. Demnach könnte ein erstes Element, Komponente bzw. Bestandteil, Bereich, Schicht und/oder Sektion, welcher/welche/welches untenstehend diskutiert wird, als ein zweites Element, Komponente bzw. Bestandteil, Bereich, Schicht und/oder Sektion bezeichnet werden, ohne von den Lehren des vorliegenden erfinderischen Konzepts abzuweichen.It will be understood that although the wording first/first, second/second/second, third/third/third etc. may be used herein to denote various elements, components, regions, layers and/or sections to describe, these elements, components, regions, layers and/or sections should not be limited by these language. These words are used to distinguish one element, component, region, layer, and/or section from another element, component, region, layer, and/or section. Thus, a first element, component, region, layer, and/or section discussed below could be referred to as a second element, component, region, layer, and/or section, without deriving from to deviate from the teachings of the present inventive concept.

Räumlich relative Wortlaute wie beispielsweise „darunter“, „unterhalb“, „niedriger“, „unter“, „über“, „oberer“ und dergleichen können hierin zur Erleichterung der Beschreibung verwendet werden, um ein Element oder eine Beziehung eines Merkmals zu (einem) anderen Element(en) oder Merkmal(en) zu beschreiben, wie in den Figuren veranschaulicht ist. Es wird verstanden werden, dass die räumlichen relativen Wortlaute vorgesehen sind, um verschiedene Orientierungen der Vorrichtung in Verwendung oder im Betrieb zusätzlich zu den Orientierungen, welche in den Figuren veranschaulicht sind, zu erfassen. Wenn beispielsweise die Vorrichtung in den Figuren umgedreht wird, würden Elemente, welche beschrieben sind, als „unterhalb“ oder „darunter“ oder „unter“ anderen Elementen oder Merkmalen dann „über“ den anderen Elementen oder Merkmalen orientiert sein. Demnach können die beispielhaften Wortlaute „unterhalb“ und „unter“ sowohl eine Orientierung überhalb als auch unterhalb erfassen. Die Vorrichtung kann anderweitig orientiert sein (um 90 Grad gedreht oder unter anderen Orientierungen) und die räumlich relativen Beschreibungen, welche hierin verwendet werden, können dementsprechend interpretiert werden. Zusätzlich wird es auch verstanden werden, dass wenn auf eine Schicht Bezug genommen wird als „zwischen“ zwei Schichten, es die einzige Schicht zwischen den zwei Schichten sein kann oder eine oder mehrere dazwischenliegende Schichten auch anwesend sein können.Spatially relative terms such as "below," "below," "lower," "below," "above," "upper," and the like, may be used herein for ease of description to indicate an element or relationship of a feature to (a ) other element(s) or feature(s) as illustrated in the figures. It will be understood that the spatial relative wording is intended to capture different orientations of the device in use or operation in addition to the orientations illustrated in the figures. For example, if the device in the figures is turned over, elements described as being oriented "below" or "below" or "below" other elements or features would then be oriented "above" the other elements or features. Thus, the example phrases “beneath” and “below” can capture both an above and below orientation. The device may be otherwise oriented (rotated 90 degrees or at other orientations) and the spatially relative descriptors used herein interpreted accordingly. Additionally, it will also be understood that when a layer is referred to as "between" two layers, it may be the only layer between the two layers, or one or more intervening layers may also be present.

Die Terminologie, welche hierin verwendet wird, ist nur zum Zwecke des Beschreibens bestimmter Ausführungsformen und ist nicht vorgesehen, um für das erfinderische Konzept beschränkend zu sein. Wie hierin verwendet, sind die Singularformen „einer/eine/eines“ und „der/die/das“ vorgesehen, um ebenso die Pluralformen zu umfassen, sofern der Kontext bzw. Zusammenhang nicht deutlich Anderes anzeigt. Es wird weiterhin verstanden werden, dass die Wortlaute „weist auf‟ und/oder „aufweisend“, wenn sie in dieser Beschreibung verwendet werden, die Anwesenheit von genannten Merkmalen, ganzen Zahlen, Schritten, Operationen, Elementen und/oder Komponenten bzw. Bestandteilen spezifizieren, jedoch die Anwesenheit oder Hinzufügung von einem oder mehreren anderen Merkmalen, ganzen Zahlen, Schritten, Operationen, Elementen, Komponenten bzw. Bestandteilen und/oder Gruppen davon nicht ausschlie-ßen. Wie hierin verwendet, umfasst der Wortlaut „und/oder“ irgendeine und alle Kombinationen von einem oder mehreren der zugehörigen aufgelisteten Gegenstände. Ebenso ist der Wortlaut „beispielhaft“ vorgesehen, um sich auf ein Beispiel oder eine Veranschaulichung zu beziehen.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the inventive concept. As used herein, the singular forms “a/an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the phrases "comprises" and/or "comprising" when used in this specification specify the presence of recited features, integers, steps, operations, elements and/or components , but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components and/or groups thereof. As used herein, the wording “and/or” includes any and all combinations of one or more of the related listed items. Likewise, the wording “exemplary” is provided to refer to an example or illustration.

Es wird verstanden werden, dass wenn auf ein Element oder eine Schicht Bezug genommen wird als „auf‟, „verbunden mit“, „gekoppelt mit“ oder „benachbart zu“ einem anderen Element oder einer anderen Schicht, es direkt auf, verbunden mit, gekoppelt oder benachbart zu dem anderen Elemet oder der anderen Schicht sein kann oder dazwischen liegende Elemente oder Schichten gegenwärtig sein können. Im Gegensatz hierzu sind, wenn auf ein Element Bezug genommen wird als „direkt auf‟ „direkt verbunden mit“ „direkt gekoppelt mit“ oder „direkt benachbart zu“ einem anderen Element oder Schicht, keine dazwischen angeordneten Elemente oder Schichten gegenwärtig.It will be understood that when an element or layer is referred to as "on", "connected to", "coupled to" or "adjacent to" another element or layer, it is directly on, connected to, may be coupled to or adjacent to the other element or layer, or intervening elements or layers may be present. In contrast, when an element is referred to as "directly on," "directly connected to," "directly coupled to," or "directly adjacent to" another element or layer, no intervening elements or layers are present.

Soweit nicht anderweitig definiert, haben alle Wortlaute (einschließlich technischer und wissenschaftlicher Wortlaute), welche hierin verwendet werden, dieselbe Bedeutung, wie sie allgemein durch einen Fachmann, zu welchem das Gebiet des erfinderischen Konzepts gehört, verstanden werden. Es wird weiterhin verstanden werden, dass Wortlaute, wie beispielsweise diejenigen Wortlaute, welche in allgemein verwendeten Wörterbüchern definiert sind, interpretiert werden sollen, als eine Bedeutung habend, welche konsistent mit ihrer Bedeutung in dem Kontext des relevanten Fachgebiets und/oder der vorliegenden Beschreibung ist, und nicht in einem idealisierten oder übermäßig formalen Sinn interpretiert werden werden, soweit nicht ausdrücklich hierin so definiert.Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by a person skilled in the art to which the field of the inventive concept belongs. It will be further understood that words, such as those words defined in commonly used dictionaries, should be interpreted as having a meaning consistent with their meaning in the context of the relevant art and/or the present specification, and are not to be construed in an idealized or overly formal sense, except as expressly defined herein.

1 ist ein Blockdiagramm, welches ein Speichersystem gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 1 kann ein Speichersystem 10 wenigstens eine nichtflüchtige Speichervorrichtung 100 und einen Speichercontroller bzw. eine Speichersteuerung 200 aufweisen, welche die nichtflüchtige Speichervorrichtung 100 steuert. 1 12 is a block diagram illustrating a memory system according to an embodiment of the inventive concepts. Referring to 1 For example, a memory system 10 may have at least one non-volatile memory device 100 and a memory controller 200 that controls the non-volatile memory device 100 .

Die wenigstens eine nichtflüchtige Speichervorrichtung 100 gemäß einer Ausführungsform des erfinderischen Konzepts kann ein NAND Flashspeicher, ein vertikaler NAND (VNAND = Vertical NAND)-Flashspeicher, ein NOR Flashspeicher, ein resistiver Schreib- und Lesespeicher (RRAM = Resistive Random Access Memory), ein Phasenübergangs RAM (PRAM = Phase-Change RAM), ein magnetoresistiver RAM (MRAM = Magnetoresistive RAM), ein ferroelektrischer RAM (FRAM = Ferroelectric RAM), ein Spin-Drehmoment-Übertrags RAM (STT-RAM = Spin Transfer Torque), oder dergleichen sein. Weiterhin kann die nichtflüchtige Speichervorrichtung 100 gemäß einer Ausführungsform der erfinderischen Konzepte implementiert sein, so dass sie eine dreidimensionale Anordnungsstruktur bzw. Matrixstruktur hat. Die erfinderischen Konzepte sind anwendbar auf eine Flashspeichervorrichtung, in welcher eine Ladungsspeicherschicht aus einem leitfähigen Floating-Gate gebildet ist, und auf einen Ladungseinfang-Flash (CTF = Charge Trap Flash)-Speicher, in welchem eine Ladungsspeicherschicht aus einem isolierenden Film bzw. einer isolierenden Schicht gebildet ist. Untenstehend kann zur Erleichterung der Beschreibung angenommen werden, dass eine nichtflüchtige Speichervorrichtung 100 eine vertikale NAND (VNAND)-Flashspeichervorrichtung ist, welche eine dreidimensionale Anordnungsstruktur hat.The at least one non-volatile memory device 100 according to an embodiment of the inventive concept can be a NAND flash memory, a vertical NAND (VNAND = vertical NAND) flash memory, a NOR flash memory, a resistive read and write memory (RRAM = resistive random access memory), a phase transition RAM (PRAM = Phase-Change RAM), a magnetoresistive RAM (MRAM = Magnetoresistive RAM), a ferroelectric RAM (FRAM = Ferroelectric RAM), a spin torque transfer RAM (STT-RAM = Spin Transfer Torque), or the like . Furthermore, according to an embodiment of the inventive concepts, the non-volatile memory device 100 may be implemented to have a three-dimensional array structure. The inventive concepts are applicable to a flash memory device in which a charge storage layer is formed of a conductive floating gate, and to a charge trap flash (CTF) memory in which a charge storage layer is formed of an insulating film layer is formed. Below, for convenience of description, it can be assumed that a non-volatile memory device 100 is a vertical NAND (VNAND) flash memory device having a three-dimensional array structure.

Die nichtflüchtige Speichervorrichtung 100 kann eine Mehrzahl von Speicherblöcken BLK1 bis BLKz aufweisen, von welchen sich jeder in eine Richtung (eine zweite Richtung) rechtwinklig zu einem Substrat erstreckt. Hierin kann das Substrat in einer ersten und einer dritten Richtung gebildet sein. Hierin können die erste bis dritte Richtung rechtwinklig zueinander sein. Jeder der Speicherblöcke BLK1 bis BLKz kann eine Mehrzahl von Unterblöcken (nicht gezeigt) aufweisen. Die Unterblöcke können verschiedene strukturelle Eigenschaften oder elektrische Eigenschaften haben.The non-volatile memory device 100 may include a plurality of memory blocks BLK1 to BLKz each of which extends in a direction (a second direction) perpendicular to a substrate. Herein, the substrate may be formed in first and third directions. Herein, the first to third directions may be orthogonal to each other. Each of the memory blocks BLK1 to BLKz may have a plurality of sub-blocks (not shown). The sub-blocks can have different structural properties or electrical properties.

Jeder der Speicherblöcke BLK1 bis BLKz kann wenigstens einen String bzw. Strang aufweisen, welcher eine Mehrzahl von Speicherzellen hat, welche durch ein Aufeinanderstapeln wenigstens einer Strangauswahlleitung, einer Mehrzahl von Wortleitungen und wenigstens einer Masseauswahlleitung in einer rechtwinkligen Richtung zu dem Substrat gebildet sind. Hierin kann jede Speicherzelle mit einer entsprechenden Bitleitung verbunden sein und speichert jeweils wenigstens ein Bit.Each of the memory blocks BLK1 to BLKz may include at least one string having a plurality of memory cells formed by stacking at least one string select line, a plurality of word lines and at least one ground select line in a direction perpendicular to the substrate. Herein, each memory cell may be connected to a corresponding bit line and stores at least one bit at a time.

Was wenigstens eine der Speicherzellen betrifft, kann eine m-Bit-Programmieroperation (m ist eine natürliche Zahl) durchgeführt werden, und dann kann eine n-Bit-Programmieroperation (n ist eine reelle Zahl) durch eine Überschreiboperation durchgeführt werden. Hierin weist die Überschreiboperation ein Programmieren eines früheren Zustandes auf, welcher bei der m-Bit-Programmieroperation programmiert wurde, so dass er wenigstens einen Extrazustand hat, welcher eine höhere Schwellenspannungsverteilung hat als der frühere Zustand. M-Bit-Daten, welche durch den früheren Zustand definiert sind, werden nach dem Durchführen der n-Bit-Programmieroperation durch die Überschreiboperation ungültig. Das heißt sozusagen, dass n-Bit-Daten, welche in der Speicherzelle gespeichert sind, die n-Bit-Programmieroperation erfahren haben, nachdem die m-Bit-Programmieroperation Daten, welche gültig sind, gespeichert hat.As for at least one of the memory cells, an m-bit (m is a natural number) programming operation can be performed, and then an n-bit (n is a real number) programming operation can be performed by an overwrite operation. Herein, the overwrite operation comprises programming a previous state that was programmed in the m-bit programming operation to have at least one extra state that has a higher threshold voltage distribution than the previous state. M-bit data defined by the previous state becomes invalid after performing the n-bit program operation by the overwrite operation. That is to say, n-bit data stored in the memory cell has undergone the n-bit program operation after the m-bit program operation has stored data that is valid.

In beispielhaften Ausführungsformen ist die Anzahl der früheren Zustände, welche durch die m-Bit-Programmieroperation programmiert wurden, 2^m und n kann kleiner sein als m.In exemplary embodiments, the number of prior states programmed by the m-bit programming operation is 2^m and n may be less than m.

In anderen beispielhaften Ausführungsformen kann n gleich oder kleiner als m sein. In noch einer anderen Ausführungsform kann n gleich oder größer als m sein.In other example embodiments, n may be equal to or less than m. In yet another embodiment, n can be equal to or greater than m.

Ein VNAND, in welchem obere Speicherzellen, welche mit oberen Wortleitungen verbunden sind, mehrere Programmierzustände haben als untere Speicherzellen, welche mit unteren Wortleitungen verbunden sind, ist in der koreanischen Patentanmeldung Nr. 10-2011-0037962 ( KR 10 2012 0 119 779 A bzw. unter Inanspruchnahme deren Priorität US 2012/0268988 A1 ) die eingereicht wurde, offenbart, auf welche verwiesen wird. Der VNAND, welcher in der obigen Anmeldung gezeigt ist, kann mehr Kapazität haben als ein normaler VNAND, welcher die gleichen Programmierzustände in Speicherzellen hat.A VNAND in which upper memory cells connected to upper word lines have more programming states than lower memory cells connected to lower word lines is in FIG Korean Patent Application No. 10-2011-0037962 ( KR 10 2012 0 119 779 A or by claiming their priority US 2012/0268988 A1 ) filed, which are referenced. The VNAND shown in the above application can have more capacity than a normal VNAND having the same programming states in memory cells.

Weitere und detailliertere Beschreibungen der Speicherblöcke BLK1 bis BLKz sind in den U.S. Patentanmeldungen mit den Nr. US 2009/0310415 A1 , US 2010/0078701 A1 , US 2010/0117141 A1 , US 2010/0140685 A1 , US 2010/0213527 A1 , US 2010/0224929 A1 , US 2010/0315875 A1 , US 2010/0322000 A1 , US 2011/0013458 A1 und US 2011/0018036 A1 offenbart, auf welche verwiesen wird.Further and more detailed descriptions of the memory blocks BLK1 to BLKz can be found in US patent application nos. U.S. 2009/0310415 A1 , US 2010/0078701 A1 , U.S. 2010/0117141 A1 , U.S. 2010/0140685 A1 , US 2010/0213527 A1 , US 2010/0224929 A1 , US 2010/0315875 A1 , U.S. 2010/0322000 A1 , US 2011/0013458 A1 and U.S. 2011/0018036 A1 disclosed to which reference is made.

Der Speichercontroller 200 kann einen Gesamtbetrieb der flüchtigen Speichervorrichtung 100 wie beispielsweise eine Programmieroperation, eine Leseoperation und eine Löschoperation steuern. Der Speichercontroller 200 kann ein Überschreib-Verwaltungsmodul bzw. Überschreib-Managementmodul 220 und ein Blockverwaltungsmodul bzw. Blockmanagementmodul 240 aufweisen.The memory controller 200 can control an overall operation of the volatile memory device 100 such as a program operation, a read operation, and an erase operation. The memory controller 200 may include a rewrite management module 220 and a block management module 240 .

Das Überschreib-Verwaltungsmodul 220 kann eine Ausführung einer Überschreiboperation verwalten bzw. managen. In beispielhaften Ausführungsformen verwaltet das Überschreib-Verwaltungsmodul 220 die Ausführung der Überschreiboperation durch die Einheit von einem Block, Unterblock oder einer Seite. Beispielsweise kann das Überschreib-Verwaltungsmodul 220 die Ausführung einer Überschreiboperation auf jedem Speicherblock beurteilen und eine Überschreibanzahl von jedem Speicherblock verwalten, wenn eine Schreiboperation ausgeführt wird. Beispielsweise kann das Überschreib-Verwaltungsmodul 220 beurteilen, ob eine Überschreiboperation auf einem der Speicherblöcke BLK1 bis BLKz durchgeführt werden kann. Wenn eine Überschreiboperation auf einem Block möglich ist, kann das Überschreib-Verwaltungsmodul 220 eine Programmieroperation auf dem Block durch eine Überschreiboperation durchführen und eine Überschreibanzahl entsprechend dem überschriebenen Speicherblock aktualisieren und speichern. Hierin kann, ob eine Ausführung der Überschreiboperation durchgeführt werden soll gemäß einem Zustand (beispielsweise einem Datenzustand oder einem Gesundheitszustand) eines Blocks bestimmt werden, welcher mit der Löschmöglichkeit verbunden ist. Das heißt, ein Block, welcher für eine Überschreiboperation geeignet ist, speichert Daten, welche durch eine Firmware, welche auf dem Speichercontroller arbeitet, ungültig gemacht wurden.The rewrite management module 220 can manage execution of a rewrite operation. In example embodiments, the rewrite management module 220 manages the execution of the rewrite operation by the entity of a block, sub-block, or page. For example, the rewrite management module 220 may judge execution of a rewrite operation on each memory block and manage a rewrite count of each memory block when a write operation is performed. For example, the rewrite management module 220 may judge whether an overwrite operation can be performed on any of the memory blocks BLK1 to BLKz. When a rewrite operation is possible on a block, the rewrite management module 220 can perform a programming operation on the block by an overwrite operation, and update and store a rewrite count corresponding to the memory block overwritten. Herein, whether execution of the rewrite operation should be performed may be determined according to a state (e.g., a data state or a health state) of a block associated with the erasability. That is, a block eligible for an overwrite operation stores data that has been invalidated by firmware running on the memory controller.

In beispielhaften Ausführungsformen kann gemäß einem Datenzustand jedes Speicherblocks bestimmt werden, ob die Ausführung der Überschreiboperation auszuführen ist. Beispielsweise kann eine Überschreiboperation auf einem Speicherblock durchgeführt werden, wenn Daten, welche in dem Speicherblock gespeichert sind, ungültige Daten sind, oder wenn die Anzahl von ungültigen Seiten in dem Speicherblock über einem Referenzwert ist.In example embodiments, whether to perform the execution of the overwrite operation may be determined according to a data state of each memory block. For example, an overwrite operation may be performed on a memory block when data stored in the memory block is invalid data or when the number of invalid pages in the memory block is above a reference value.

In anderen beispielhaften Ausführungsformen kann gemäß einem Gesundheitszustand jedes Speicherblocks bestimmt werden, ob eine Ausführung der Überschreiboperation durchzuführen ist. Beispielsweise kann eine Überschreiboperation auf einem Speicherblock durchgeführt werden, wenn eine Programmier-/Lösch-Zyklusanzahl des Speicherblocks unter einem Referenzwert ist.In other example embodiments, it may be determined according to a health state of each memory block whether to perform the rewrite operation execution. For example, an overwrite operation may be performed on a memory block when a program/erase cycle count of the memory block is below a reference value.

In beispielhaften Ausführungsformen kann das Überschreib-Verwaltungsmodul 220 eine Überschreibanzahl durch bzw. über den Block, den Unterblock oder die Seite des Blocks verwalten.In example embodiments, the rewrite management module 220 may manage a rewrite count by the block, sub-block, or page of the block.

Das Blockverwaltungsmodul 240 kann die Speicherblöcke BLK1 bis BLKz basierend auf der Überschreibanzahl verwalten. Beispielsweise kann das Blockverwaltungsmodul 240 einen Speicherblock löschen, wenn eine Überschreibanzahl des Speicherblocks über einem Referenzwert ist.The block management module 240 may manage the memory blocks BLK1 to BLKz based on the rewrite count. For example, can the block management module 240 erases a memory block when a rewrite count of the memory block is over a reference value.

Ein herkömmliches Speichersystem kann konfiguriert sein, so dass es einen Speicherblock gemäß einem Datenzustand oder einer Programmier-/Lösch-Zyklenanzahl löscht. Andererseits kann das Speichersystem 10 der erfinderischen Konzepte konfiguriert sein, so dass es eine Überschreiboperation vor einer Löschoperation bestimmt und dass es dann einen Speicherblock basierend auf einer Überschreibanzahl löscht. Verglichen mit dem herkömmlichen Speichersystem kann das Speichersystem 10 der erfinderischen Konzepte die Anzahl von Löschoperationen eines Speicherblocks verringern. Demnach kann das Speichersystem 10 der erfinderischen Konzepte die Zuverlässigkeit, welche mit einer Löschoperation verbunden ist, verbessern.A conventional memory system can be configured to erase a memory block according to a data state or a program/erase cycle count. On the other hand, the memory system 10 of the inventive concepts may be configured to determine an overwrite operation before an erase operation and then erase a memory block based on an overwrite count. Compared to the conventional memory system, the memory system 10 of the inventive concepts can reduce the number of erase operations of a memory block. Thus, the memory system 10 of the inventive concepts can improve the reliability associated with an erase operation.

Das Speichersystem 10 der erfinderischen Konzepte kann eine Incremental Step Pulse Erase (ISPE)-Zyklusanzahl, welche benötigt wird, um einen Löschzustand zu erreichen, durch ein Durchführen einer Überschreiboperation vor der Löschoperation, verringern.The memory system 10 of the inventive concepts can reduce an Incremental Step Pulse Erase (ISPE) cycle number required to reach an erase state by performing an overwrite operation before the erase operation.

2 zeigt einen Speicherblock in 1 gemäß einer Ausführungsform der erfinderischen Konzepte. Bezug nehmend auf 2 kann ein Speicherblock, welcher vier Unterblöcke aufweist, auf einem Substrat gebildet sein. Jeder der Unterblöcke kann durch ein aufeinanderfolgendes Stapeln bzw. Schichten wenigstens einer Masseauswahlleitung GSL, einer Mehrzahl von Wortleitungen WL und wenigstens einer Strang-Auswahlleitung SSL auf dem Substrat und ein Trennen einer resultierenden Struktur durch Wortleitungsschnitte WL Cut gebildet sein. Obwohl in 2 nicht veranschaulicht, kann jeder der Wortleitungsschnitte WL Cut eine gemeinsame Quell-Leitung bzw. Source-Leitung CSL aufweisen. Gemeinsame Source-Leitungen, welche in den Wortleitungsschnitten WL Cut enthalten sind, können gemeinsam mit benachbarten Unterblöcken verbunden sein. 2 shows a block of memory in 1 according to an embodiment of the inventive concepts. Referring to 2 For example, a memory block having four sub-blocks can be formed on a substrate. Each of the sub-blocks may be formed by sequentially stacking at least one ground select line GSL, a plurality of word lines WL and at least one leg select line SSL on the substrate and separating a resulting structure by word line cuts WL Cut. Although in 2 not illustrated, each of the word line cuts WL Cut can have a common source line or source line CSL. Common source lines included in the word line cuts WL Cut may be commonly connected to neighboring sub-blocks.

In 2 kann auf eine Struktur zwischen Wortleitungsschnitten Bezug genommen werden als ein Unterblock. Die erfinderischen Konzepte sind jedoch nicht hierauf beschränkt. Auf eine Struktur zwischen einem Wortleitungsschnitt und einer Strang-Auswahlleitung kann Bezug genommen werden als ein Unterblock. Ebenso kann die Mehrzahl von Wortleitungen zwischen der SSL und der GSL in Unterblöcke in einem Block unterteilt sein. In 5 können MC4 bis MC7, welche mit oberen Wortleitungen WL4 bis WL7 verbunden sind, und MC0 bis MC3, welche mit einer unteren Wortleitung WL0 bis WL3 verbunden sind, jeweils ein verschiedener Unterblock sein.In 2 a structure between wordline cuts may be referred to as a sub-block. However, the inventive concepts are not limited to this. A structure between a word line cut and a string select line can be referred to as a sub-block. Also, the plurality of word lines between the SSL and the GSL can be divided into sub-blocks in a block. In 5 For example, MC4 to MC7 connected to upper word lines WL4 to WL7 and MC0 to MC3 connected to lower word line WL0 to WL3 may each be a different sub-block.

Ein Speicherblock gemäß einer Ausführungsform des erfinderischen Konzepts kann derart konfiguriert sein, dass zwei Wortleitungen in einer Schicht zwischen zwei Wortleitungsschnitten zu einer zusammengeführt werden. In anderen Worten gesagt kann der Speicherblock gemäß einer Ausführungsform der erfinderischen Konzepte als eine zusammengeführte Wortleitungsstruktur konfiguriert sein.A memory block according to an embodiment of the inventive concept may be configured such that two word lines in a layer are merged into one between two word line cuts. In other words, according to an embodiment of the inventive concepts, the memory block may be configured as a merged word line structure.

3 ist eine Querschnittsansicht eines Speicherblocks in 2 gemäß einer Ausführungsform der erfinderischen Konzepte. Bezug nehmend auf 3 kann ein Halbleitersubstrat 111 vorgesehen sein. Das Halbleitersubstrat 111 kann eine Wanne bzw. Unterlage sein, welche beispielsweise einen ersten Leitfähigkeitstyp hat. Das Halbleitersubstrat 111 kann eine p-Wanne sein, in welcher das Gruppe III-Element wie beispielsweise Bor injiziert wird. Das Halbleitersubstrat 111 kann eine Taschen-p-Wanne sein, welche innerhalb einer n-Wanne vorgesehen ist. Hierin nachstehend wird angenommen, dass das Halbleitersubstrat 111 eine p-Wanne (oder eine Taschen-p-Wanne) ist. Das Halbleitersubstrat 111 ist jedoch nicht auf den p-Typ beschränkt. 3 12 is a cross-sectional view of a memory block in FIG 2 according to an embodiment of the inventive concepts. Referring to 3 a semiconductor substrate 111 may be provided. The semiconductor substrate 111 may be a well or pad having a first conductivity type, for example. The semiconductor substrate 111 may be a p-well into which the Group III element such as boron is injected. The semiconductor substrate 111 may be a pocket p-well provided within an n-well. Hereinafter, it is assumed that the semiconductor substrate 111 is a p-well (or a pocket p-well). However, the semiconductor substrate 111 is not limited to p-type.

Eine Mehrzahl von Dotierungsbereichen 131 bis 133, welche sich entlang der ersten Richtung erstrecken, können in dem Substrat 111 vorgesehen sein. Die Dotierungsbereiche 131 bis 133 können voneinander entlang einer dritten Richtung beabstandet sein. Hierin nachstehend kann auf die Dotierungsbereiche 131 bis 133 jeweils Bezug genommen werden als ein erster Dotierungsbereich 131, ein zweiter Dotierungsbereich 132 und ein dritter Dotierungsbereich 133.A plurality of impurity regions 131 to 133 extending along the first direction may be provided in the substrate 111 . The doping regions 131 to 133 may be spaced from each other along a third direction. Hereinafter, the impurity regions 131 to 133 may be referred to as a first impurity region 131, a second impurity region 132, and a third impurity region 133, respectively.

Der erste bis dritte Dotierungsbereich 131 bis 133 kann einen zweiten Leitfähigkeitstyp unterschiedlich von dem Substrat 111 haben. Beispielsweise können der erste bis dritte Dotierungsbereich 131 bis 133 vom n-Typ sein. Hierin nachstehend wird angenommen, dass der erste bis dritte Dotierungsbereich 131 bis 133 vom n-Typ ist. Die Dotierungsbereiche 131 bis 133 sind jedoch nicht auf den n-Typ beschränkt.The first to third impurity regions 131 to 133 can have a second conductivity type different from the substrate 111 . For example, the first to third impurity regions 131 to 133 can be n-type. Hereinafter, it is assumed that the first to third impurity regions 131 to 133 are n-type. However, the impurity regions 131 to 133 are not limited to the n-type.

Zwischen zwei benachbarten Bereichen des ersten und dritten Dotierungsbereichs 131 bis 133 kann eine Mehrzahl von isolierenden Materialien bzw. Isoliermaterialien 112 und 112a aufeinanderfolgend auf dem Substrat 111 entlang einer zweiten Richtung (d.h. einer Richtung rechtwinklig zu dem Substrat 111) vorgesehen sein. Die Isoliermaterialien 112 und 112a können entlang der zweiten Richtung beabstandet sein. Die Isoliermaterialien 112 und 112a können sich entlang einer ersten Richtung erstrecken. Beispielsweise können die Isoliermaterialien 112 und 112a ein Isoliermaterial wie beispielsweise einen Siliziumoxidfilm aufweisen. Das Isoliermaterial 112a, welches das Substrat 111 kontaktiert bzw. mit dem Substrat 111 in Kontakt steht, kann in der Dicke dünner sein als andere Isoliermaterialien 112.Between two adjacent portions of the first and third impurity regions 131 to 133, a plurality of insulating materials 112 and 112a may be sequentially provided on the substrate 111 along a second direction (ie, a direction perpendicular to the substrate 111). The insulating materials 112 and 112a may be spaced along the second direction. The insulating materials 112 and 112a can extend along a first direction. For example, the insulating materials 112 and 112a can be an insulating material such as wise have a silicon oxide film. The insulating material 112a, which contacts the substrate 111 or is in contact with the substrate 111, can be thinner in thickness than other insulating materials 112.

Zwischen zwei benachbarten Bereichen des ersten bis dritten Dotierungsbereiches 131 bis 133 kann eine Mehrzahl von Säulen PL nacheinanderfolgend entlang der ersten Richtung angeordnet sein, so dass sie die Mehrzahl von Isoliermaterialien 112 und 112a entlang der zweiten Richtung durchdringt. Beispielsweise können die Säulen PL mit dem Substrat 111 in Kontakt stehen, so dass sie die Isoliermaterialien 112 und 112a durchdringen.Between two adjacent portions of the first to third impurity regions 131 to 133, a plurality of pillars PL may be sequentially arranged along the first direction so as to penetrate the plurality of insulating materials 112 and 112a along the second direction. For example, the pillars PL may be in contact with the substrate 111 so that they penetrate the insulating materials 112 and 112a.

In beispielhaften Ausführungsformen können die Säulen PL jeweils aus einer Mehrzahl von Schichten gebildet sein. Jede der Säulen PL kann einen Kanalfilm 114 und ein inneres Material 115 aufweisen. In jeder der Säulen PL kann der Kanalfilm 114 gebildet sein, so dass er das innere Material 115 umgibt.In exemplary embodiments, the pillars PL may each be formed from a plurality of layers. Each of the pillars PL may include a channel film 114 and an inner material 115 . In each of the pillars PL, the channel film 114 may be formed to surround the inner material 115 .

Die Kanalfilme 114 können ein Halbleitermaterial (beispielsweise Silizium) aufweisen, welches einen ersten Leitfähigkeitstyp hat. Beispielsweise können die Kanalfilme 114 ein Halbleitermaterial aufweisen (beispielsweise Silizium), welches denselben Typ wie das Substrat 111 hat. Untenstehend wird angenommen, dass die Kanalfilme 114 ein p-Typ Silizium aufweisen. Die erfinderischen Konzepte sind jedoch nicht hierauf beschränkt. Beispielsweise können die Kanalfilme einen intrinsischen Halbleiter aufweisen, welcher ein Nichtleiter ist.The channel films 114 may include a semiconductor material (e.g., silicon) having a first conductivity type. For example, the channel films 114 may include a semiconductor material (e.g., silicon) that is of the same type as the substrate 111 . It is assumed below that the channel films 114 comprise p-type silicon. However, the inventive concepts are not limited to this. For example, the channel films may include an intrinsic semiconductor, which is an insulator.

Die inneren Materialien 115 können ein Isoliermaterial aufweisen. Beispielsweise können die inneren Materialien 115 ein Isoliermaterial wie beispielsweise Siliziumoxid aufweisen. Alternativ können die inneren Materialien 115 einen Luftspalt aufweisen.The inner materials 115 may include an insulating material. For example, the inner materials 115 may include an insulating material such as silicon oxide. Alternatively, the inner materials 115 may have an air gap.

Zwischen zwei benachbarten Bereichen des ersten bis dritten Dotierungsbereichs 131 bis 133 können Informationsspeicherfilme 116 an freiliegenden Oberflächen der Isoliermaterialien 112 und 112 und der Säulen PL vorgesehen sein. In beispielhaften Ausführungsformen kann eine Dicke des Informationsspeicherfilms 116 kleiner sein als ein Abstand zwischen den Isoliermaterialien 112 und 112a. Eine Breite des Informationsspeicherfilms 116 kann in inverser Proportionalität zu einer Tiefe bzw. Höhe der Säule stehen. Beispielsweise ist die Breite des Informationsspeicherfilms 116 umso breiter je tiefer die Säule PL gemessen von einer Drain 151 ist.Between two adjacent areas of the first to third impurity areas 131 to 133, information storage films 116 may be provided on exposed surfaces of the insulating materials 112 and 112 and the pillars PL. In exemplary embodiments, a thickness of information storage film 116 may be smaller than a spacing between insulating materials 112 and 112a. A width of the information storage film 116 may be inversely proportional to a depth or height of the pillar. For example, the deeper the pillar PL measured from a drain 151 is, the wider the width of the information storage film 116 is.

Zwischen zwei benachbarten Bereichen des ersten bis dritten Dotierungsbereichs 131 bis 133 und zwischen den Isoliermaterialien 112 und 112a können leitfähige Materialien CM an freiliegenden Oberflächen der Informationsspeicherfilme 116 vorgesehen sein. Ein leitfähiges Material CM kann zwischen einem Informationsspeicherfilm, welcher an einer unteren Oberfläche eines oberen Isoliermaterials der Isoliermaterialien 112 und 112a vorgesehen ist, und einem Informationsspeicherfilm 116, welcher an einer oberen Oberfläche eines unteren Isoliermaterials davon vorgesehen ist, vorgesehen sein. In beispielhaften Ausführungsformen können die leitfähigen Materialien ein metallisches leitfähiges Material aufweisen. Die leitfähigen Materialien CM können ein nichtmetallisches leitfähiges Material wie beispielsweise Polysilizium aufweisen.Conductive materials CM may be provided on exposed surfaces of the information storage films 116 between two adjacent portions of the first to third impurity regions 131 to 133 and between the insulating materials 112 and 112a. A conductive material CM may be provided between an information storage film provided on a lower surface of an upper insulating material of the insulating materials 112 and 112a and an information storage film 116 provided on an upper surface of a lower insulating material thereof. In exemplary embodiments, the conductive materials may include a metallic conductive material. The conductive materials CM may include a non-metallic conductive material such as polysilicon.

In beispielhaften Ausführungsformen können Informationsspeicherfilme 116, welche an einer oberen Oberfläche eines Isoliermaterials vorgesehen sind, welches an der obersten Schicht der Isoliermaterialien 112 und 112a platziert ist, entfernt werden. In beispielhaften Ausführungsformen können Informationsspeicherfilme 116, welche an Seiten gegenüber den Säulen PL unter den Seiten der Isoliermaterialien 112 und 112 vorgesehen sind, entfernt werden.In exemplary embodiments, information storage films 116 provided on an upper surface of an insulating material placed on the top layer of insulating materials 112 and 112a may be removed. In exemplary embodiments, information storage films 116 provided on sides opposite to the pillars PL under the sides of the insulating materials 112 and 112 may be removed.

Eine Mehrzahl von Drains 151 kann auf der Mehrzahl von Säulen PL vorgesehen sein. Die Drains 151 können ein Halbleitermaterial (beispielsweise Silizium) aufweisen, welches beispielsweise einen zweiten Leitfähigkeitstyp hat. Die Drains 151 können ein n-Typ Halbleitermaterial (beispielsweise Silizium) aufweisen. Untenstehend wird angenommen, dass die Drain 151 n-Typ Silizium aufweisen. Die erfinderischen Konzepte sind jedoch nicht darauf beschränkt. Die Drains 151 können zu der Oberseite der Kanalfilme 114 der Säulen PL erstreckt sein.A plurality of drains 151 may be provided on the plurality of pillars PL. The drains 151 may comprise a semiconductor material (e.g. silicon) having a second conductivity type, for example. The drains 151 may comprise an n-type semiconductor material (e.g. silicon). Below it is assumed that the drains 151 comprise n-type silicon. However, the inventive concepts are not limited to this. The drains 151 may be extended to the top of the channel films 114 of the pillars PL.

Bitleitungen BL, welche sich in der zweiten Richtung erstrecken, können auf den Drains 151 vorgesehen sein, so dass sie voneinander entlang der ersten Richtung beabstandet sind. Die Bitleitungen BL können mit den Drains 151 gekoppelt sein. In beispielhaften Ausführungsformen können die Drains 151 und die Bitleitungen BL über Kontaktstecker (contact plugs, nicht gezeigt) verbunden sein. Die Bitleitungen können ein metallisches leitfähiges Material aufweisen. Alternativ können die Bitleitungen BL ein nichtmetallisches leitfähiges Material, wie beispielsweise Polysilizium aufweisen.Bit lines BL extending in the second direction may be provided on the drains 151 to be spaced from each other along the first direction. Bit lines BL may be coupled to drains 151 . In exemplary embodiments, the drains 151 and the bit lines BL may be connected via contact plugs (not shown). The bit lines may include a metallic conductive material. Alternatively, the bit lines BL may comprise a non-metallic conductive material such as polysilicon.

Die Mehrzahl von Säulen PL kann zusammen mit den Informationsspeicherfilmen 116 und der Mehrzahl von leitfähigen Materialien vertikale Stränge bilden. Jede der Säulen PL kann einen vertikalen Strang mit Informationsspeicherfilmen 116 und benachbarten leitfähigen Materialien bilden.The plurality of pillars PL may form vertical strands together with the information storage films 116 and the plurality of conductive materials. Each of the pillars PL can form a vertical line with information storage films 116 and adjacent conductive materials.

Jeder der vertikalen Stränge kann eine Mehrzahl von Zelltransistoren (oder Speicherzellen), welche in einer vertikalen Richtung zu dem Substrat 111 gestapelt sind, aufweisen. In 3 kann eine gepunktete Box CT einen Zelltransistor anzeigen.Each of the vertical strings can have a plurality of cell transistors (or memory cells) arranged in a vertical direction to the substrate 111 are stacked. In 3 a dotted box CT may indicate a cell transistor.

4 ist ein vergrößertes Diagramm, welches einen von Zelltransistoren der 3 veranschaulicht. Bezug nehmend auf die 3 und 4 kann ein Zelltransistor CT aus einem leitfähigen Material CM5, einer Säule PL benachbart zu dem leitfähigen Material CM5 und Informationsspeicherfilmen 16, welche zwischen dem leitfähigen Material CM5 und der Säule PL vorgesehen sind, gebildet sein. 4 FIG. 14 is an enlarged diagram showing one of cell transistors of FIG 3 illustrated. Referring to the 3 and 4 For example, a cell transistor CT may be formed of a conductive material CM5, a pillar PL adjacent to the conductive material CM5, and information storage films 16 provided between the conductive material CM5 and the pillar PL.

Die Informationsspeicherfilme 116 können sich zu oberen Oberflächen und unteren Oberflächen des leitfähigen Materials CM von Bereichen zwischen den leitfähigen Materialien CM und der Säule PL erstrecken. Jeder der Informationsspeicherfilme 116 kann einen ersten bis dritten Unterisolierfilm 117, 118 und 119 aufweisen. In den Zelltransistoren CT können Kanalfilme 114 der Säulen PL das gleiche p-Typ Silizium wie ein Substrat 111 aufweisen.The information storage films 116 may extend to top surfaces and bottom surfaces of the conductive material CM from areas between the conductive materials CM and the pillar PL. Each of the information storage films 116 may have first to third sub-insulating films 117, 118 and 119, respectively. In the cell transistors CT, channel films 114 of the pillars PL can have the same p-type silicon as a substrate 111 .

Der Kanalfilm 114 kann als ein Körper des Zelltransistors CT agieren. Der Kanalfilm 114 kann in einer Richtung rechtwinklig zu dem Substrat 111 gebildet sein. Demnach kann der Kanalfilm 114 der Säulen PL als ein vertikaler Körper des Kanalfilms 114 agieren. Kanäle, welche an dem Kanalfilm 114 der Säule PL gebildet sind, können als vertikale Kanäle agieren.The channel film 114 can act as a body of the cell transistor CT. The channel film 114 may be formed in a direction perpendicular to the substrate 111 . Thus, the channel film 114 of the pillars PL can act as a vertical body of the channel film 114 . Channels formed on the channel film 114 of the pillar PL can act as vertical channels.

Die leitfähigen Materialien CM können als Gates (oder Steuergates) agieren. Der erste Unterisolierfilm 117 benachbart zu den Säulen PL kann als ein Tunnelisolierfilm agieren. Beispielsweise kann der erste Unterisolierfilm 117 benachbart zu der Säule PL jeweils einen thermischen Oxidfilm aufweisen. Die ersten Unterisolierfilme 117 können jeweils einen Siliziumoxidfilm aufweisen.The conductive materials CM can act as gates (or control gates). The first sub insulating film 117 adjacent to the pillars PL can act as a tunnel insulating film. For example, the first sub insulating film 117 adjacent to the pillar PL may each include a thermal oxide film. The first sub insulating films 117 may each include a silicon oxide film.

Die zweiten Unterisolierfilme 118 können als Ladungsspeicherfilme agieren. Beispielsweise können die zweiten Unterisolierfilme 118 jeweils als Ladungseinfangfilme agieren. Beispielsweise können die zweiten Unterisolierfilme 118 jeweils einen Nitridfilm oder einen Metalloxidfilm (beispielsweise einen Aluminiumoxidfilm, einen Hafniumoxidfilm etc.) aufweisen. Die zweiten Unterisolierfilme 118 können einen Siliziumnitridfilm aufweisen.The second sub insulating films 118 can act as charge storage films. For example, the second sub-insulating films 118 can each act as a charge trapping film. For example, the second sub-insulating films 118 may each include a nitride film or a metal oxide film (e.g., an alumina film, a hafnium oxide film, etc.). The second sub insulating films 118 may include a silicon nitride film.

Die dritten Unterisolierfilme 119 benachbart zu den leitfähigen Materialien können als Sperrisolierfilme agieren. In beispielhaften Ausführungsformen können die dritten Unterisolierfilme 119 aus einer einzigen Schicht oder mehreren Schichten gebildet sein. Die dritten Unterisolierfilme 119 können ein hochdielektrischer Film (beispielsweise ein Aluminiumoxidfilm, ein Hafniumoxidfilm etc.) sein, welcher eine dielektrische Konstante hat, die größer ist als diejenige des bzw. der ersten und zweiten Unterisolierfilm(e) 117 und 118. Die dritten Unterisolierfilme 119 können jeweils einen Siliziumoxidfilm aufweisen.The third sub insulating films 119 adjacent to the conductive materials can act as barrier insulating films. In exemplary embodiments, the third sub-insulating films 119 may be formed of a single layer or multiple layers. The third sub-insulating films 119 may be a high-dielectric film (e.g., an aluminum oxide film, a hafnium oxide film, etc.) that has a dielectric constant greater than that of the first and second sub-insulating film(s) 117 and 118. The third sub-insulating films 119 may each have a silicon oxide film.

In beispielshaften Ausführungsformen können die ersten bis dritten Unterisolierfilme 117 bis 119 ONO (Oxid-Nitrid-Oxid) aufbauen bzw. konstituieren. Das heißt, die Mehrzahl von leitfähigen Materialien CM, welche als Gates agieren (oder als Steuergates), die dritten Unterisolierfilme 119, welche als Sperrisolierfilme agieren, die zweiten Unterisolierfilme 118, welche als Ladungsspeicherfilme agieren, die ersten Unterisolierfilme 117, welche als Tunnelisolierfilme agieren und die Kanalfilme 114, welche als vertikale Körper agieren, können eine Mehrzahl von Zelltransistoren CT konstituieren bzw. aufbauen, welche in einer Richtung rechtwinklig zu dem Substrat 111 geschichtet sind. Beispielhaft können die Zelltransistoren CT ein Ladungsfallentyp-Zelltransistor sein.In exemplary embodiments, the first to third sub-insulating films 117 to 119 may constitute ONO (Oxide-Nitride-Oxide). That is, the plurality of conductive materials CM that act as gates (or as control gates), the third sub insulating films 119 that act as barrier insulating films, the second sub insulating films 118 that act as charge storage films, the first sub insulating films 117 that act as tunnel insulating films, and the channel films 114 acting as vertical bodies can constitute a plurality of cell transistors CT stacked in a direction perpendicular to the substrate 111 . By way of example, the cell transistors CT may be a charge trap type cell transistor.

Die leitfähigen Materialien können sich entlang der ersten Richtung erstrecken, so dass sie mit der Mehrzahl von Säulen PL verbunden sind. Die leitfähigen Materialien können leitfähige Leitungen konstituieren, welche Zelltransistoren CT der Säulen PL in derselben Zeile verbinden. In beispielhaften Ausführungsformen können die leitfähigen Materialien CM auchals eine Strang-Auswahlleitung, eine Masse-Auswahlleitung oder eine Wortleitung, gemäß der Höhe verwendet werden .The conductive materials may extend along the first direction to be connected to the plurality of pillars PL. The conductive materials may constitute conductive lines connecting cell transistors CT of the pillars PL in the same row. In exemplary embodiments, the conductive materials CM can also be used as a string select line, a ground select line, or a word line according to the height.

5 ist ein Konzeptdiagramm, welches veranschaulicht, wie eine Überschreiboperation für den VNAND durchzuführen ist. Bezug nehmend auf 5 wird ein Durchmesser eines Kanallochs CH (oder einer Säule) schmäler, wenn es bzw. sie tiefer wird. Das heißt, ein Ladungsspeicherbereich von Speicherzellen, welche mit unteren Wortleitungen verbunden sind, kann schmäler sein als derjenige von Speicherzellen, welche mit oberen Wortleitungen verbunden sind. Wenn eine Programmieroperation unter der Bedingung ausgeführt wird, dass dieselbe Spannung an alle Wortleitungen WL0 bis WL7 angelegt wird, können die Stärken der elektrischen Felder, welche an Speicherzellen MC0 bis MC7 erzeugt werden, voneinander unterschiedlich sein. Dies kann bedeuten, dass die Ladungsmenge, welche an bzw. in jeweiligen Ladungsspeicherfilmen gespeichert wird, unterschiedlich ist. Wie in 5 veranschaulicht ist, ist die Breite von Schwellenspannungsverteilungen jedes Programmierzustands von Speicherzellen, welche mit oberen Wortleitungen verbunden sind, schmäler als die Breite von Schwellenspannungsverteilungen von jedem Programmierzustand von Speicherzellen, welche mit unteren Wortleitungen verbunden sind. 5 Figure 12 is a conceptual diagram illustrating how to perform an overwrite operation for the VNAND. Referring to 5 a diameter of a channel hole CH (or a pillar) becomes narrower as it becomes deeper. That is, a charge storage area of memory cells connected to lower word lines can be narrower than that of memory cells connected to upper word lines. When a programming operation is performed under the condition that the same voltage is applied to all of the word lines WL0 to WL7, the strengths of electric fields generated across memory cells MC0 to MC7 may be different from each other. This can mean that the amount of charge that is stored on or in the respective charge storage films is different. As in 5 1, the width of threshold voltage distributions of each programming state of memory cells connected to upper wordlines is narrower than the width of threshold voltage distributions of each programming state of memory cells connected to lower wordlines.

Die Anzahl von Programmierzuständen in demselben Schwellenspannungsfensterbereich hängt davon ab, wie breit die Schwellenspannungsverteilung jedes Programmierzustands ist. Die Schwellenspannungsverteilung jedes Programmierzustands kann gemäß Örtlichkeiten bzw. Platzierungen von Wortleitungen in einem vertikalen Strang bestimmt werden. Beispielsweise kann jede von Speicherzellen MC4 bis MC7, welche mit oberen Wortleitungen WL4 bis WL7 verbunden ist, einen von fünf Zuständen E, P1, P2, P3 und EP1 nach einer Überschreiboperation haben. Jede von Speicherzellen MC0 bis MC3, welche mit unteren Wortleitungen WL0 bis WL3 verbunden sind, kann einen von vier Zuständen E, P1, P2 und P3 nach einer normalen Programmieroperation haben. Hierin kann jede der Speicherzellen MC4 bis MC7 programmiert sein, so dass sie einen Extrazustand EP1 gemäß Daten durch eine Überschreiboperation hat.The number of programming states in the same threshold voltage window range depends on how wide the threshold voltage distribution of each programming state is. The threshold voltage distribution of each programming state can be determined according to locations of word lines in a vertical string. For example, each of memory cells MC4 through MC7 connected to upper word lines WL4 through WL7 can have one of five states E, P1, P2, P3 and EP1 after an overwrite operation. Each of memory cells MC0 through MC3 connected to lower word lines WL0 through WL3 can have one of four states E, P1, P2 and P3 after a normal programming operation. Herein, each of the memory cells MC4 to MC7 can be programmed to have an extra state EP1 according to data by an overwrite operation.

Wie in 5 veranschaulicht ist, kann zuerst eine m-Bit-Programmieroperation (beispielsweise eine 2-Bit-Programmieroperation) auf Speicherzellen, welche mit allen Wortleitungen WL0 bis WL7 verbunden sind, ausgeführt werden. Nachdem die m-Bit-Programmieroperation durchgeführt ist, kann weiterhin eine n-Bit-Programmieroperation (beispielsweise 1-Bit-Programmieroperation in 5) auf Speicherzellen, welche mit den oberen Wortleitungen WL4 bis WL7 verbunden sind, durch eine Überschreiboperation ausgeführt werden.As in 5 1, an m-bit programming operation (e.g., a 2-bit programming operation) can be performed on memory cells connected to all of the word lines WL0 to WL7 first. After the m-bit programming operation is performed, an n-bit programming operation (for example, 1-bit programming operation in 5 ) on memory cells connected to the upper word lines WL4 to WL7 can be performed by an overwrite operation.

In beispielhaften Ausführungsformen kann die Anzahl von Überschreiboperationen, welche auf Speicherzellen anwendbar ist, welche mit den oberen Wortleitungen WL4 bis WL7 verbunden sind, unterschiedlich zu derjenigen sein, welche auf Speicherzellen anwendbar ist, welche mit unteren Wortleitungen WL0 bis WL3 verbunden sind. Beispielsweise kann die Anzahl von Überschreiboperationen, welche auf Speicherzellen, welche mit den oberen Wortleitungen WL4 bis WL7 verbunden sind, anwendbar ist, „1“ sein, während die Speicherzellen, welche mit den unteren Wortleitungen WL0 bis WL3 verbunden sind, nicht überschrieben werden können. Dies kann durch den Speichercontroller 200 gesteuert werden.In exemplary embodiments, the number of overwrite operations applicable to memory cells connected to upper wordlines WL4-WL7 may be different than that applicable to memory cells connected to lower wordlines WL0-WL3. For example, the number of overwrite operations applicable to memory cells connected to upper word lines WL4 to WL7 may be "1", while memory cells connected to lower word lines WL0 to WL3 cannot be overwritten. This can be controlled by the memory controller 200.

In beispielhaften Ausführungsformen kann, wenn der Spannungsfensterbereich für eine Schwellenspannungsverteilung von Programmierzuständen breit genug ist, eine Single Level Cell (SLC)-Programmieroperation als eine zweite Überschreiboperation weiterhin auf Speicherzellen ausgeführt werden, welche bereits durch die erste Überschreiboperation programmiert sind. Acht Wortleitungen WL0 bis WL7 sind in 5 veranschaulicht. Die erfinderischen Konzepte sind jedoch nicht darauf beschränkt. Vier obere Wortleitungen WL4 bis WL7 sind in 5 veranschaulicht. Die erfinderischen Konzepte sind jedoch nicht darauf beschränkt. Ein Extrazustand EP1 ist in 5 veranschaulicht. Die erfinderischen Konzepte sind jedoch nicht hierauf beschränkt. Beispielsweise können zwei oder Extrazustände für eine Überschreiboperation (Überschreiboperationen) verwendet werden.In example embodiments, if the voltage window range is wide enough for a threshold voltage distribution of programming states, a single level cell (SLC) programming operation as a second overwrite operation can continue to be performed on memory cells already programmed by the first overwrite operation. Eight word lines WL0 to WL7 are in 5 illustrated. However, the inventive concepts are not limited to this. Four upper word lines WL4 to WL7 are in 5 illustrated. However, the inventive concepts are not limited to this. An extra state EP1 is in 5 illustrated. However, the inventive concepts are not limited to this. For example, two or extra states can be used for an overwrite operation(s).

Die erfinderischen Konzepte können eine Überschreiboperation durchführen, in welcher Speicherzellen programmiert werden, so dass sie unterschiedliche Zustandsanzahlen gemäß einer Wortleitungsplatzierung in einem vertikalen Strang haben.The inventive concepts can perform an overwrite operation in which memory cells are programmed to have different state counts according to wordline placement in a vertical string.

Die Speicherzellen, welche mit den oberen Wortleitungen verbunden sind, und die Speicherzellen, welche mit den unteren Wortleitungen verbunden sind, sind jeweils als obere Blocks und untere Blocks festgesetzt bzw. bestimmt und sind jeweils unabhängig voneinander löschbar. In einem Speichersystem, welches einen VNAND und einen Speichercontroller, welcher einen Gesamtbetrieb des VNAND steuert, aufweist, kann die Überschreiboperation durchgeführt werden, nachdem ein oberer Block durch eine Löschübersetzungsschicht (FTL = Flash Translation Layer), welcher auf dem Speichercontroller ausgeführt wird, für ungültig erklärt worden ist.The memory cells connected to the upper word lines and the memory cells connected to the lower word lines are set as upper blocks and lower blocks, respectively, and are erasable independently of each other. In a memory system that has a VNAND and a memory controller that controls an overall operation of the VNAND, the overwrite operation may be performed after an upper block is invalidated by an erase translation layer (FTL = Flash Translation Layer) running on the memory controller has been explained.

6 ist ein Diagramm, welches eine Überschreiboperation gemäß einer Ausführungsform des erfinderischen Konzepts veranschaulicht. Bezug nehmend auf die 5 und 6 kann eine Speicherzelle (beispielsweise eine von MC4 bis MC7 in 5) programmiert werden, so dass sie in einem ersten Zustand S1 wie beispielsweise einem vorangehenden Zustand (einem von E, P1, P2 und P3) einer normalen Programmieroperation oder einem zweiten Zustand S2 wie beispielsweise einem Extrazustand EP1, welcher von einem vorangehenden Zustand (einem von E, P1, P2 und P3) gemäß dem Wert von Daten, welche durch die Überschreiboperation programmiert werden, verschoben ist. Hierin kann der erste Zustand S1 Daten „1“ entsprechen und der zweite Zustand S2 kann Daten „0“ entsprechen und umgekehrt. 6 12 is a diagram illustrating an overwrite operation according to an embodiment of the inventive concept. Referring to the 5 and 6 a memory cell (e.g. one from MC4 to MC7 in 5 ) can be programmed to be in a first state S1, such as a previous state (one of E, P1, P2, and P3) of a normal programming operation, or a second state S2, such as an extra state EP1, derived from a previous state (one of E, P1, P2 and P3) is shifted according to the value of data programmed by the overwrite operation. Herein, the first state S1 can correspond to data "1" and the second state S2 can correspond to data "0" and vice versa.

Wie in 6 veranschaulicht ist, kann eine Multi-Level-Zelle, welche einen von vier Zuständen E, P1, P2 und P3 hat, durch eine Überschreiboperation eine Single-Level-Zelle werden, welche einen von zwei Zuständen S1 und S2 hat. Das heißt, eine Speicherzelle, welche zwei Bits speichert, welche durch einen von vier Zuständen E, P1, P2 und P3 angezeigt werden, kann in eine Speicherzelle geändert werden, welche 1 Bit speichert, welches durch einen von zwei Zuständen S1 und S2 nach einer Überschreiboperation angezeigt wird.As in 6 1, a multi-level cell having one of four states E, P1, P2, and P3 can become a single-level cell having one of two states S1 and S2 through an overwrite operation. That is, a memory cell storing two bits indicated by one of four states E, P1, P2 and P3 can be changed to a memory cell storing 1 bit indicated by one of two states S1 and S2 after one overwrite operation is displayed.

In 6 kann der erste Zustand S1 derselbe wie ein vorangehender Zustand (einer von E, P1, P2 und P3) sein. Das heißt, dass während einer Überschreiboperation Speicherzellen, die mit Daten „1“ zu programmieren sind und einen vorangehenden Zustand (einen von E, P1, P2 und P3) haben, von einem Programmiert-werden gehindert werden können. Beispielsweise kann eine Bias-Spannung einer Programmierverhinderungsbedingung (beispielsweise eine Leistungsversorgungsspannung) für Bitleitungen, welche programmierverhinderten Speicherzellen entsprechen, vorgesehen sein. Die erfinderischen Konzepte sind jedoch nicht darauf beschränkt. Der erste Zustand S1 kann durch ein Wiederprogrammieren bzw. Reprogrammieren, so dass eine erwünschte (oder alternativ eine vorbestimmte) Schwellenspannung nicht überschritten wird, gebildet werden.In 6 the first state S1 can be the same as a previous state (one of E, P1, P2 and P3). That is, during an overwrite operation, memory cells to be programmed with data "1" and having a previous state (one of E, P1, P2, and P3) may be prevented from being programmed. For example, a bias voltage of a program-inhibited condition (e.g., a power supply voltage) may be provided for bit lines corresponding to program-inhibited memory cells. However, the inventive concepts are not limited to this. The first state S1 can be formed by reprogramming or reprogramming so that a desired (or alternatively a predetermined) threshold voltage is not exceeded.

7 ist ein Diagramm, welches eine Überschreiboperation gemäß einer anderen Ausführungsform des erfinderischen Konzepts veranschaulicht. Bezug nehmend auf die 5 und 7 kann während einer Überschreiboperation eine Speicherzelle (eine von E, P1, P2 und P3) programmiert werden, so dass sie einen ersten Zustand S1', welcher von früheren Zuständen (E, P1, P2 und P3) verschoben ist (oder gewonnen durch ein Programmieren der früheren Zustände (E, P1, P2 und P3)), oder einen zweiten Zustand „S2“ hat, welcher ein Extrazustand EP1 ist, welcher von einem früheren Zustand (einem von E, P1, P2 und P3) gemäß dem Wert der programmierten Daten verschoben ist. Hierin kann der erste Zustand S 1' nach einer Überschreiboperation Daten „1“ entsprechen und der zweite Zustand S2 kann Daten „0“ entsprechen. 7 12 is a diagram illustrating an overwrite operation according to another embodiment of the inventive concept. Referring to the 5 and 7 For example, during an overwrite operation, a memory cell (one of E, P1, P2, and P3) can be programmed to have a first state S1', which is shifted from previous states (E, P1, P2, and P3) (or gained by programming of the previous states (E, P1, P2 and P3)), or has a second state "S2" which is an extra state EP1 derived from a previous state (one of E, P1, P2 and P3) according to the value of the programmed data is moved. Herein, the first state S1' may correspond to data "1" after an overwrite operation, and the second state S2 may correspond to data "0".

In beispielhaften Ausführungsformen kann der erste Zustand S1' den höchsten Zustand S3 einschließen, wie in 7 veranschaulicht ist.In exemplary embodiments, the first state S1' may include the highest state S3, as in FIG 7 is illustrated.

Wie in 7 veranschaulicht ist, kann eine Multi-Level-Zelle, welche einen von vier Zuständen E, P1, P2 und P3 hat, durch eine Überschreiboperation eine Single-Level-Zelle werden, welche einen von zwei Zuständen S 1' und S2 hat. Das heißt, dass eine Speicherzelle, welche 2 Bits speichert, welche durch einen von vier Zuständen angezeigt werden, in eine Speicherzelle geändert werden kann, welche 1 Bit speichert, welches durch einen von zwei Zuständen S1' und S2 nach einer Überschreib-Programmieroperation angezeigt wird.As in 7 1, a multi-level cell having one of four states E, P1, P2, and P3 can become a single-level cell having one of two states S1' and S2 through an overwrite operation. That is, a memory cell storing 2 bits indicated by one of four states can be changed to a memory cell storing 1 bit indicated by one of two states S1' and S2 after an overwrite programming operation .

Mit der oben beschriebenen Überschreiboperation können, wie in 7 veranschaulicht ist, vorangehende Zustände E, P1, P2 und P3 sich in den ersten Zustand S 1' oder den zweiten Zustand S2 gemäß Daten, welche durch die ÜberschreibOperation zu programmieren sind, verschieben. Die Schwellenspannungsverteilung des ersten Zustands S 1' in 7 ist schmäler als die Breite der Schwellenspannungsverteilung des ersten Zustands S 1 in 6. Die schmale Schwellenspannungsverteilung, welche den ersten Zustand S 1' und den zweiten Zustand S2 einschließt, kann vorteilhaft für eine Löschoperation sein. Verglichen mit einem Speicherblock, welcher nicht überschrieben ist, kann, wenn ein überschriebener Speicherblock gelöscht wird, die Schwellenspannungsverteilung oder die Anzahl von ISPE-Zyklen verringert sein.With the overwrite operation described above, as in 7 As illustrated, previous states E, P1, P2 and P3 shift to the first state S1' or the second state S2 according to data to be programmed by the overwrite operation. The threshold voltage distribution of the first state S 1' in 7 is narrower than the width of the threshold voltage distribution of the first state S 1 in 6 . The narrow threshold voltage distribution, which includes the first state S1' and the second state S2, can be advantageous for an erase operation. Compared to a memory block that is not overwritten, when an overwritten memory block is erased, the threshold voltage distribution or the number of ISPE cycles can be reduced.

Wie unter Bezugnahme auf die 5-7 beschrieben ist, kann, nachdem eine 2-Bit-Programmieroperation ausgeführt ist, eine 1-Bit-Programmieroperation durch eine Überschreiboperation ausgeführt werden. Die erfinderischen Konzepte sind jedoch nicht hierauf beschränkt. Beispielsweise kann, nachdem eine 3-Bit-Programmieroperation ausgeführt ist, eine 1-Bit-Programmieroperation durch eine Überschreiboperation ausgeführt werden.As referring to the 5-7 describes, after a 2-bit program operation is performed, a 1-bit program operation can be performed by an overwrite operation. However, the inventive concepts are not limited to this. For example, after a 3-bit program operation is performed, a 1-bit program operation can be performed by an overwrite operation.

8 ist ein Diagramm, welches eine Überschreiboperation veranschaulicht, welche folgend auf eine 3-Bit-Programmieroperation gemäß einer Ausführungsform der erfinderischen Konzepte ausgeführt wird. Bezug nehmend auf 8 können Speicherzellen MC4 bis MC7, welche mit oberen Wortleitungen WL4 bis WL7 verbunden sind, programmiert werden, so dass sie einen von neun Zuständen E, Q1 bis Q7 und EP1 haben, und Speicherzellen MC0 bis MC3, welche mit unteren Wortleitungen WL0 bis WL3 verbunden sind, können programmiert werden, so dass sie einen von acht Zuständen E und Q1 bis Q7 haben. Hierin kann jede der Speicherzellen MC4 bis MC7, welche mit den oberen Wortleitungen WL4 bis WL7 verbunden ist, programmiert werden, so dass sie den Zustand EP1 durch eine Überschreiboperation hat. 8th Figure 12 is a diagram illustrating an overwrite operation performed following a 3-bit programming operation according to an embodiment of the inventive concepts. Referring to 8th memory cells MC4 to MC7 connected to upper word lines WL4 to WL7 can be programmed to have one of nine states E, Q1 to Q7 and EP1, and memory cells MC0 to MC3 connected to lower word lines WL0 to WL3 , can be programmed to have one of eight states E and Q1 through Q7. Herein, each of the memory cells MC4 to MC7 connected to the upper word lines WL4 to WL7 can be programmed to have the state EP1 by an overwrite operation.

9 ist ein Diagramm, welches eine Überschreiboperation in 8 gemäß einer Ausführungsform des erfinderischen Konzepts veranschaulicht. Bezug nehmend auf die 8 und 9 kann bei einer Überschreiboperation eine Speicherzelle (eine von MC4, MC5, MC6 und MC7 in 8) programmiert werden, so dass sie einen eines ersten Zustands S1, welcher einen vorangehenden Zustand (einen von Q1 bis Q7) aufrechterhält, und eines zweiten Zustands S2, welcher ein Extrazustand EP1 ist, welcher von einem vorangehenden Zustand verschoben ist (verschoben von einem von Q1 bis Q7) hat. Hierin kann der erste Zustand S1 Daten „1“ entsprechen und der zweite Zustand S2 kann einem Datum bzw. Daten „0“ entsprechen. 9 is a diagram representing an overwrite operation in 8th according to an embodiment of the inventive concept. Referring to the 8th and 9 In an overwrite operation, a memory cell (one of MC4, MC5, MC6 and MC7 in 8th ) can be programmed to have one of a first state S1, which maintains a previous state (one of Q1 through Q7), and a second state S2, which is an extra state EP1, which is shifted from a previous state (shifted from one of Q1 to Q7). Here, the first state S1 can correspond to data "1" and the second state S2 can correspond to a data "0".

10 ist ein Diagramm, welches eine Überschreiboperation in 8 gemäß einer anderen Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf die 8 und 10 kann bei einer Überschreiboperation eine Speicherzelle (eine von MC4, MC5, MC6 und MC7 in 8) programmiert werden, so dass sie einen ersten Zustand S1' hat, welcher von vorangehenden Zuständen (Q1 bis Q7) verschoben ist (oder gewonnen durch ein Programmieren der vorangehenden Zustände (Q1 bis Q7)) und einen zweiten Zustand S2, welcher ein Extrazustand EP1 ist, welcher von einem vorangehenden Zustand (einem von Q1 bis Q7) verschoben ist. Hierin kann der erste Zustand S 1' Daten „1“ entsprechen und der zweite Zustand S2 kann Daten „0“ entsprechen. 10 is a diagram representing an overwrite operation in 8th according to another embodiment of the inventive concepts. Referring to the 8th and 10 In an overwrite operation, a memory cell (one of MC4, MC5, MC6 and MC7 in 8th ) can be programmed so that they have a has a first state S1' which is shifted from previous states (Q1 to Q7) (or obtained by programming the previous states (Q1 to Q7)) and a second state S2 which is an extra state EP1 which is from a previous state ( one of Q1 to Q7). Herein, the first state S1' may correspond to data "1" and the second state S2 may correspond to data "0".

Wie unter Bezugnahme auf die 8 bis10 beschrieben ist, kann, nachdem eine 3-Bit-Programmieroperation ausgeführt ist, eine 1-Bit-Programmieroperation durch eine Überschreiboperation ausgeführt werden.As referring to the 8th until 10 describes, after a 3-bit program operation is performed, a 1-bit program operation can be performed by an overwrite operation.

Nachdem eine Multi-Bit-Programmieroperation eines Speicherblocks ausgeführt ist, kann eine Einzel-Bit-Programmieroperation durch eine Überschreiboperation ausgeführt werden. Die erfinderischen Konzepte sind jedoch nicht darauf beschränkt. Nachdem eine Multi-Bit-Programmieroperation ausgeführt ist, kann eine Programmieroperation in einem Multi-Dimensions-Modulationsschema durch eine Überschreiboperation durchgeführt werden. Hierin bedeutet das Multi-Dimensions-Modulationsschema, dass ein Datenwert, welcher gespeichert werden soll, kodiert wird und das kodierte Ergebnis in eine erwünschte (oder alternativ eine vorbestimmte) Anzahl von Speicherzellen programmiert wird. Das Multi-Dimensions-Modulationsschema ist in der koreanischen Patentanmeldung Nr. 10-2011-0037961 ( US 13/413,118 ) offenbart, deren Gesamtheit hierin durch Bezugnahme mit eingebunden ist.After a multi-bit programming operation of a memory block is performed, a single-bit programming operation can be performed by an overwrite operation. However, the inventive concepts are not limited to this. After a multi-bit programming operation is performed, a programming operation in a multi-dimensional modulation scheme can be performed by an overwrite operation. Herein, the multi-dimensional modulation scheme means that a data value to be stored is encoded and the encoded result is programmed into a desired (or alternatively a predetermined) number of memory cells. The multi-dimensional modulation scheme is in the Korean Patent Application No. 10-2011-0037961 ( U.S. 13/413,118 ), the entirety of which is incorporated herein by reference.

11 ist ein Diagramm, welches eine Programmieroperation veranschaulicht, welche in einem Multi-Dimensions-Modulationsschema durch eine Überschreiboperation nach einer 3-Bit-Programmieroperation ausgeführt wird. Bezug nehmend auf 11 können Speicherzellen MC6 und MC7, welche mit oberen Wortleitungen WL6 und WL7 verbunden sind, programmiert werden, so dass sie einen eines ersten bis dritten Zustandes ST1, ST2 und ST3 haben. Das heißt, dass die Speicherzellen programmiert werden können, so dass sie drei Zustände ST1, ST2 und ST3 durch eine Überschreiboperation haben. 11 12 is a diagram illustrating a program operation performed by an overwrite operation after a 3-bit program operation in a multi-dimensional modulation scheme. Referring to 11 For example, memory cells MC6 and MC7 connected to upper word lines WL6 and WL7 can be programmed to have one of first through third states ST1, ST2, and ST3. That is, the memory cells can be programmed to have three states ST1, ST2, and ST3 by an overwrite operation.

12 ist ein Diagramm, welches eine Programmieroperation in 11 gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 12 kann eine Überschreiboperation einen Datenwert, welcher zu speichern ist, bei vier Speicherzellen MC71, MC72, MC73 und MC74, welche zusammenhängend benachbart sind, programmieren. 81 Zustände (3x3x3x3) können durch eine Einheit von vier Zellen gemäß einem programmierten Zustand der kontinuierlichen bzw. ununterbrochenen Speicherzellen MC71, MC72, MC73 und MC74 verwendet werden. Hierin können die 81 Zustände angemessen Datenwerten, welche zu programmieren sind, entsprechen. 12 is a diagram showing a programming operation in 11 according to an embodiment of the inventive concepts. Referring to 12 For example, an overwrite operation can program data to be stored in four memory cells MC71, MC72, MC73, and MC74 that are contiguously adjacent. 81 states (3x3x3x3) can be used by a unit of four cells according to a programmed state of continuous memory cells MC71, MC72, MC73 and MC74. Herein, the 81 states may appropriately correspond to data values to be programmed.

13 ist ein Konzeptdiagramm, welches schematisch ein Programmierverfahren gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 13 kann mit einem Programmierverfahren der erfinderischen Konzepte eine n-Bit-Programmieroperation (n ist eine reelle Zahl) durch eine Überschreiboperation durchgeführt werden, nachdem eine m-Bit-Programmieroperation (m ist eine natürliche Zahl) ausgeführt ist. , 13 12 is a conceptual diagram schematically illustrating a programming method according to an embodiment of the inventive concepts. Referring to 13 For example, with a programming method of the inventive concepts, an n-bit (n is a real number) programming operation can be performed by an overwrite operation after an m-bit (m is a natural number) programming operation is performed. ,

Die m-Bit-Programmieroperation kann durchgeführt werden unter Verwendung von 2m Zuständen TS1 bis TS2m. Nach der m-Bit-Programmieroperation kann die n-Bit-Programmieroperation unter Verwendung wenigstens eines Extrazustands TS2m + 1 durchgeführt werden, wenn eine Überschreiboperation benötigt wird (oder wenn eine Überschreib-Bedingung erfüllt ist).The m-bit programming operation can be performed using 2 m states TS1 to TS2 m . After the m-bit programming operation, the n-bit programming operation can be performed using at least one extra state TS2 m +1 if an overwrite operation is needed (or if an overwrite condition is met).

In beispielhaften Ausführungsformen kann die Überschreib-Bedingung (oder Bedingung für die Überschreiboperation) durch den Block verwaltet bzw. gemanagt werden. Beispielsweise kann die Anzahl von reinen Blöcken (oder freien Blöcken), in welchen Daten nicht gespeichert sind, unter den Blöcken für die Überschreib-Bedingung verwendet werden.In exemplary embodiments, the overwrite condition (or condition for the overwrite operation) may be managed by the block. For example, the number of clean blocks (or free blocks) in which data is not stored among the blocks for the overwrite condition can be used.

In beispielhaften Ausführungsformen kann die Überschreib-Bedingung durch den Unterblock verwaltet werden. Beispielsweise kann die Anzahl von Unterblöcken, welche ungültige Daten haben, unter den Unterblöcken für die Überschreib-Bedingung verwendet werden.In example embodiments, the overwrite condition may be managed by the sub-block. For example, the number of sub-blocks having invalid data among the sub-blocks can be used for the overwrite condition.

In beispielhaften Ausführungsformen kann die Überschreib-Bedingung durch die Seite verwaltet werden. Beispielsweise kann die Anzahl von ungültigen Seiten für die Überschreib-Bedingung verwendet werden.In exemplary embodiments, the overwrite condition may be managed by the page. For example, the number of invalid pages can be used for the overwrite condition.

In beispielhaften Ausführungsformen kann n kleiner als m sein. In anderen Ausführungsformen kann n kleiner als oder gleich zu m sein.In example embodiments, n may be less than m. In other embodiments, n may be less than or equal to m.

In anderen beispielhaften Ausführungsformen kann n gleich zu oder größer als m sein.In other exemplary embodiments, n can be equal to or greater than m.

Das Programmierverfahren der erfinderischen Konzepte kann ein Durchführen einer Überschreiboperation aufweisen, in welcher ein m-Bit-programmierter vorangehender Zustand in wenigstens einen Extrazustand verschoben wird, welcher eine höhere Schwellenspannung hat als der vorangehende Zustand. Als ein Ergebnis der Überschreiboperation werden die Daten, welche durch die vorangehenden Zustände definiert sind, ungültig, und die Daten, welche durch die Überschreiboperation programmiert werden, sind gültig.The programming method of the inventive concepts may include performing an overwrite operation in which an m-bit programmed previous state is shifted to at least one extra state, which has a higher threshold voltage than the previous state. As a result of the overwrite operation, the data defined by the previous states becomes invalid and the data programmed by the overwrite operation is valid.

Mit dem Programmierverfahren der erfinderischen Konzepte kann, nachdem eine n-Bit-Programmieroperation durch eine Überschreiboperation ausgeführt ist, eine Überschreiboperation einmal mehr ausgeführt werden. Dies kann von der Breite der Schwellenspannungsverteilung jedes programmierten Zustandes nach einer m-Bit-Programmieroperation und dem Schwellenspannungsfenster für mögliche Programmzustände abhängen.With the programming method of the inventive concepts, after an n-bit programming operation is performed by an overwrite operation, an overwrite operation can be performed once more. This may depend on the width of the threshold voltage distribution of each programmed state after an m-bit programming operation and the threshold voltage window for possible program states.

14 ist ein Konzeptdiagramm, welches schematisch ein Programmierverfahren gemäß einer anderen Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 14 kann eine n-Bit-Programmieroperation (n ist eine reelle Zahl) durch eine erste Überschreiboperation ausgeführt werden, und eine k-Bit-Programmieroperation (k ist eine positive reelle Zahl) kann einmal mehr durch eine zweite Überschreiboperation durchgeführt werden. Mit dem Programmierverfahren der erfinderischen Konzepte kann ein vorangehender Zustand von n-Bit, welcher durch die erste Überschreiboperation programmiert ist, durch die zweite Überschreiboperation programmiert werden, so dass er wenigstens einen Extrazustand EST hat, welcher eine höhere Schwellenspannung hat als der vorangehende Zustand. In beispielhaften Ausführungsformen kann k kleiner sein als n. In anderen beispielhaften Ausführungsformen kann k kleiner als oder gleich zu n sein. In noch anderen beispielhaften Ausführungsformen kann k größer sein als n. 14 12 is a conceptual diagram schematically illustrating a programming method according to another embodiment of the inventive concepts. Referring to 14 For example, an n-bit (n is a real number) programming operation can be performed by a first overwrite operation, and a k-bit (k is a positive real number) programming operation can be performed once more by a second overwrite operation. With the programming method of the inventive concepts, an n-bit previous state programmed by the first overwrite operation can be programmed by the second overwrite operation to have at least one extra state EST that has a higher threshold voltage than the previous state. In example embodiments, k may be less than n. In other example embodiments, k may be less than or equal to n. In still other example embodiments, k may be greater than n.

Die m-Bit-Programmieroperation kann durchgeführt werden unter Verwendung von 2m Zuständen TS1 bis TS2m. Die erfinderischen Konzepte sind jedoch nicht darauf beschränkt. Eine Programmieroperation vor einer Überschreiboperation kann unter Verwendung einer Mehrzahl von Zuständen vor einer Überschreiboperation durchgeführt werden.The m-bit programming operation can be performed using 2 m states TS1 to TS2 m . However, the inventive concepts are not limited to this. A programming operation prior to an overwrite operation may be performed using a plurality of states prior to an overwrite operation.

15 ist ein Konzeptdiagramm, welches schematisch ein Programmierverfahren gemäß noch einer anderen Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 15 kann eine j-Bit-Programmieroperation (j ist eine natürliche Zahl größer als 2) unter Verwendung von i Zuständen TS1 bis TSi (i ist eine natürliche Zahl größer als 2) durchgeführt werden, und dann kann eine n-Bit-Programmieroperation durch eine Überschreiboperation durchgeführt werden. 15 12 is a conceptual diagram schematically illustrating a programming method according to yet another embodiment of the inventive concepts. Referring to 15 a j-bit (j is a natural number greater than 2) programming operation can be performed using i states TS1 to TSi (i is a natural number greater than 2), and then an n-bit programming operation can be performed by an overwrite operation be performed.

Es wird verstanden werden, dass in den beispielhaften Ausführungsformen, welche hierein beschreiben sind, wie beispielsweise hinsichtlich der 6 bis 15 der Speichercontroller 200 konfiguriert ist, so dass er die Überschreiboperation(en) wie beschrieben steuert.It will be understood that in the exemplary embodiments described herein, such as with respect to FIG 6 until 15 the memory controller 200 is configured to control the overwrite operation(s) as described.

16 ist ein Flussdiagramm, welches ein Blockverwaltungsverfahren gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. 16 FIG. 12 is a flow chart illustrating a block management method according to an embodiment of the inventive concepts.

In Operation S110 kann ein Überschreib-Verwaltungsmodul 220 (es sei Bezug genommen auf 1) beurteilen bzw. entscheiden, ob ein Blockmodus an irgendeinem Block zu ändern ist oder nicht. Ob oder ob nicht ein Blockmodus an irgendeinem Block zu ändern ist, kann gemäß Informationen, welche mit der Löschmöglichkeit eines Blocks verbunden sind, wie beispielsweise einem Gesundheitszustand eines Blocks (beispielsweise P/E-Zykeln, Niveau der Verschlechterung, Bit-Fehlerrate etc.) oder einem Datenzustand eines Blocks (beispielsweise der Anzahl von reinem Blöcken (d.h. Blöcke, in welchen Daten nicht gespeichert werden), einem Verhältnis von ungültigen Seiten eines Blocks etc.) bestimmt werden. Bestimmte Verfahren zum Entscheiden, ob der Blockmodus zu ändern ist, werden detaillierter untenstehend unter Bezugnahme auf andere beispielhafte Verfahrensausführungsformen beschrieben werden.In operation S110, a rewrite management module 220 (refer to 1 ) judge whether or not to change a block mode at any block. Whether or not to change a block mode at any block may be determined according to information associated with a block's erasure capability, such as a block's health status (e.g., P/E cycles, level of degradation, bit error rate, etc.) or a data state of a block (e.g., the number of clean blocks (ie, blocks in which data is not stored), a ratio of invalid pages of a block, etc.). Particular methods for deciding whether to change the block mode will be described in more detail below with reference to other example method embodiments.

Beispielsweise kann der Blockmodus einen normalen Blockmodus und einen Überschreib-Blockmodus (oder einen überschreibbereiten Zustandsmodus) aufweisen. Der normale Blockmodus kann einen Modus anzeigen, dass ein Block bei einer Programmieroperation m-Bit-programmiert wird. Der Überschreib-Blockmodus kann einen Modus anzeigen, dass eine n-Bit-Programmieroperation unter Verwendung einer Überschreiboperation bei einer Programmieroperation durchgeführt wird.For example, the block mode may include a normal block mode and an overwrite block mode (or an overwrite ready state mode). The normal block mode may indicate a mode that a block is m-bit programmed in a programming operation. The rewrite block mode may indicate a mode that an n-bit program operation is performed using an overwrite operation in a program operation.

Die Informationen, welche mit der Löschmöglichkeit verbunden sind, welche einen Blockzustand anzeigt, kann aus einer Mapping-Tabelle eines Speichercontrollers 200 (es sei Bezug genommen auf 1) und/oder einer nichtflüchtigen Speichervorrichtung 100 (es sei Bezug genommen auf 1) extrahiert werden.The information associated with the erase opportunity, which indicates a block state, can be obtained from a mapping table of a memory controller 200 (refer to FIG 1 ) and/or a non-volatile memory device 100 (refer to FIG 1 ) are extracted.

Wenn eine Änderung des Blockmodus nicht benötigt wird, kann in Operation S 120 ein Blockverwaltungsmodul 240 einen Block unter Verwendung des normalen Blockmodus verwalten. Wenn eine Änderung des Blockmodus benötigt wird, kann in Operation S 130 das Blockverwaltungsmodul 240 einen Block unter Verwaltung des Überschreib-Blockmodus verwalten. Das heißt, dass bei einer Programmieroperation des Überschreib-Blockmodus eine 1-Bit-Programmieroperation durch eine Überschreiboperation (es sei Bezug genommen auf die 5-10) ausgeführt werden kann, oder eine Programmieroperation unter Verwendung eines Multi-Dimensions-Modulationsschemas (es sei Bezug genommen auf die 11 und 12) durchgeführt werden kann.If a block mode change is not needed, in operation S 120 a block management module 240 may manage a block using the normal block mode. When a change of block mode is needed, in operation S130, the block management module 240 may manage a block managing the rewrite block mode. That is, in a programming operation of the rewrite blockmo dus a 1-bit programming operation by an overwrite operation (refer to the 5-10 ) can be performed, or a programming operation using a multi-dimensional modulation scheme (refer to the 11 and 12 ) can be carried out.

In beispielhaften Ausführungsformen können Informationen, welche einen geänderten Blockmodus anzeigen, in bzw. bei einer Seite eines entsprechenden Blockes oder einer Metaregion bzw. einem Metabereich der nichtflüchtigen Speichervorrichtung 100 durch eine Mapping-Tabelle gespeichert werden.In exemplary embodiments, information indicative of a changed block mode may be stored in a page of a corresponding block or meta-region of non-volatile memory device 100 through a mapping table.

Mit dem Blockverwaltungsverfahren der erfinderischen Konzepte ist es möglich, einen Blockmodus in einen Überschreib-Blockmodus zu ändern, wo eine Programmieroperation durch eine Überschreiboperation gemäß einem Blockzustand durchgeführt wird.With the block management method of the inventive concepts, it is possible to change a block mode to a rewrite block mode where a programming operation is performed by an overwrite operation according to a block state.

17 ist ein Diagramm, welches ein Blockmodus-Bestimmungsverfahren gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 17 kann ein Blockmodus eines der m-Bit-programmierten Blöcke in einen Überschreib-Blockmodus geändert werden, wenn die Anzahl von reinen Blöcken (d.h. Blöcken mit keinen gespeicherten Daten) in der nichtflüchtigen Speichervorrichtung unter einem Referenzwert ist. Der Referenzwert kann ein Designparameter sein, welcher durch eine empirische Studie bestimmt wird. Danach kann, wenn ein Programmierbefehl für den Block, welcher auf einen Überschreib-Blockmodus gesetzt ist, eingegeben wird, eine Programmieroperation unter Verwendung einer Überschreiboperation durchgeführt werden. 17 12 is a diagram illustrating a block mode determination method according to an embodiment of the inventive concepts. Referring to 17 For example, a block mode of one of the m-bit programmed blocks may be changed to an overwrite block mode when the number of clean blocks (ie, blocks with no stored data) in the non-volatile memory device is below a reference value. The reference value can be a design parameter determined by an empirical study. Thereafter, when a program command for the block set to an overwrite block mode is input, a program operation using an overwrite operation can be performed.

18 ist ein Diagramm, welches ein Blockmodus-Bestimmungsverfahren gemäß einer anderen Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 18 kann ein Blockmodus gemäß einem Zustand eines Blocks geändert werden. Das heißt, dass, wenn ein Block ungültige Daten nach einer Zusammenlegungsoperation (merge operation) aufweist, der Blockmodus in einen Überschreib-Blockmodus geändert werden kann. Obwohl ein Block, welcher ungültige Daten speichert, ein ungültiger Block ist, kann ein Block, welcher auf den Überschreibblock-Modus gesetzt ist, ein gültiger Block werden, nachdem eine Programmieroperation durch eine Überschreiboperation ausgeführt ist. Danach kann, wenn ein Programmierbefehl auf einen Block, welcher auf einen Überschreib-Blockmodus gesetzt ist, empfangen wird, eine entsprechende Seite in dem Block durch eine Überschreiboperation programmiert werden. 18 12 is a diagram illustrating a block mode determination method according to another embodiment of the inventive concepts. Referring to 18 a block mode can be changed according to a state of a block. That is, when a block has invalid data after a merge operation, the block mode can be changed to a rewrite block mode. Although a block storing invalid data is an invalid block, a block set to the rewrite block mode can become a valid block after a programming operation is performed by an overwrite operation. Thereafter, when a program command is received on a block set to an overwrite block mode, a corresponding page in the block can be programmed by an overwrite operation.

19 ist ein Diagramm, welches ein Blockmodus-Speicherverfahren gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 19 kann ein Block wenigstens eine reservierte Seite zum Speichern von Blockinformationen aufweisen. Die reservierte Seite kann einen Blockmodus-Bereich 101 aufweisen, welcher Blockmodus-Informationen speichert, und einen reservierten Datenbereich 102, welcher Informationen, welche mit dem Block verbunden sind, speichert. 19 12 is a diagram illustrating a block mode storage method according to an embodiment of the inventive concepts. Referring to 19 a block may have at least one reserved page for storing block information. The reserved page may have a block mode area 101 storing block mode information and a data reserved area 102 storing information associated with the block.

In beispielhaften Ausführungsformen können die Blockmodus-Informationen einen eines Bit-Werts, welcher einem normalen Blockmodus und eines Bit-Werts, welcher einem Überschreibmodus entspricht, aufweisen. Demzufolge speichert der Blockmodus-Bereich 101 Indikatoren bzw. Anzeigen, welche einen Zustand des Blocks anzeigen. Dies wird detaillierter untenstehend beschrieben werden. Die Blockmodus-Informationen können weiterhin Informationen aufweisen, welche mit einer Anzahl von Überschreibungen eines Blocks verbunden sind. Hierin kann diese Überschreibanzahl eine ganze Zahl sein, welche eine Anzahl von Überschreiboperationen anzeigt, welche innerhalb eines Blocks ausgeführt sind, seit der Block das letzte Mal gelöscht wurde. Ebenso können Seiteninformationen für eine Überschreiboperation auf jeder Seite in dem reservierten Datenbereich gespeichert werden, wenn eine Überschreiboperation auf einer Seitenbasis durchgeführt wird. Die Seiteninformationen können nämlich dieselben sein wie die Blockmodus-Informationen, jedoch auf einer Seitenbasis. Ebenso können zusätzlich oder alternativ Unterblock-Informationen, dieselben wie die Blockmodus-Informationen, gespeichert werden.In example embodiments, the block mode information may include one of a bit value corresponding to a normal block mode and a bit value corresponding to an overwrite mode. Accordingly, the block mode area 101 stores indicators showing a state of the block. This will be described in more detail below. The block mode information may further include information associated with a number of overwrites of a block. Herein, this rewrite count may be an integer indicating a number of rewrite operations performed within a block since the block was last erased. Also, page information for an overwrite operation can be stored in the reserved data area on each page when an overwrite operation is performed on a page basis. Namely, the page information may be the same as the block mode information but on a page basis. Also, additionally or alternatively, sub-block information, the same as the block mode information, may be stored.

20 ist ein Flussdiagramm, welches ein Betriebsverfahren veranschaulicht, welches eine Überschreiboperation in einem Speichersystem gemäß einer Ausführungsform der erfinderischen Konzepte aufweist. Bezug nehmend auf die 1 und 20 kann in Operation S210 ein Überschreib-Verwaltungsmodul 220 beurteilen bzw. entscheiden, ob eine Überschreiboperation eines Blocks benötigt wird. 20 FIG. 12 is a flow chart illustrating an operational method including an overwrite operation in a memory system according to an embodiment of the inventive concepts. Referring to the 1 and 20 a rewrite management module 220 may judge whether a rewrite operation of a block is needed in operation S210.

In einer beispielhaften Ausführungsform kann eine Überschreiboperation auf einem Block ausgeführt werden, wenn die Anzahl von reinen Blöcken in einer nichtflüchtigen Speichervorrichtung 100 unter einem Referenzwert ist, und ein Programmierbefehl für einen Block, der vorangehend eine Programmieroperation erfährt (beispielsweise eine m-Bit-Programmieroperation) und ein Speichern von ungültigen Daten eingegeben wird. Der Referenzwert in dieser und anderen Ausführungsformen kann ein Designparameter sein, welcher durch eine empirische Studie bestimmt wird.In an exemplary embodiment, an overwrite operation may be performed on a block when the number of clean blocks in non-volatile memory device 100 is below a reference value, and a program instruction for a block that previously undergoes a program operation (e.g., an m-bit program operation) and storing invalid data is entered. The reference value in this and other embodiments may be a design parameter determined through empirical study.

In einer beispielhaften Ausführungsform kann eine Überschreiboperation eines Blocks durchgeführt werden, wenn die Anzahl von Seiten des programmierten Blocks, welche ungültige Daten speichern, über einem Referenzwert ist und ein Programmierbefehl für bzw. auf eine ungültige Seite des Blocks empfangen wird.In an exemplary embodiment, a block overwrite operation may be performed when the number of pages of the programmed block storing invalid data is above a reference value and a programming command to an invalid page of the block is received.

In einer beispielhaften Ausführungsform kann eine Überschreiboperation eines Blocks durchgeführt werden, wenn ein Verschlechterungsniveau eines Blocks, welcher vorangehend eine Programmieroperation erfährt (eines programmierten Blocks), geringer ist als ein Referenzwert und ein Programmierbefehl für einen Block, welcher ungültige Daten aufweist, eingegeben bzw. zugeführt wird. Hierin kann es bedeuten, dass das Verschlechterungsniveau niedriger ist als der Referenzwert, dass es möglich ist, eine Überschreiboperation durchzuführen.In an exemplary embodiment, an overwrite operation of a block may be performed when a degradation level of a block previously undergoing a program operation (a programmed block) is less than a reference value and a program command for a block including invalid data is input becomes. Herein, the deterioration level being lower than the reference value may mean that it is possible to perform an overwrite operation.

In beispielhaften Ausführungsformen kann eine Überschreiboperation eines Blocks durchgeführt werden, wenn eine Überschreibanzahl des Blocks geringer ist als ein maximaler Wert und ein Programmierbefehl für den Block, welcher ungültige Daten aufweist, empfangen wird.In exemplary embodiments, a block rewrite operation may be performed when a block rewrite count is less than a maximum value and a program command for the block having invalid data is received.

In einer beispielhaften Ausführungsform kann eine Überschreiboperation eines Blocks ausgeführt werden, wenn die Bit-Fehlerrate (BER = Bit Error Rate) von Daten, welche aus dem Block über ein Zeitfenster ausgelesen werden, geringer ist als ein Grenzwert. Hier zeigt BER einen Gesundheitszustand des Blocks an.In an example embodiment, an overwrite operation of a block may be performed if the bit error rate (BER) of data read from the block over a time window is less than a threshold. Here, BER indicates a health status of the block.

In einer Ausführungsform kann, wenn eine der oben diskutierten Bedingungen auftritt, das Überschreib-Verwaltungsmodul 220 einen Block, welcher ungültige Daten aufweist, in Operation S215 in einen Überschreib-Blockmodus versetzen.In one embodiment, when any of the conditions discussed above occurs, the rewrite management module 220 may place a block having invalid data in a rewrite block mode in operation S215.

In einer anderen Ausführungsform müssen mehr als eine der Bedingungen erfüllt sein, um ein Überschreiben zu erlauben. Und in einer weiteren Ausführungsform müssen alle der Bedingungen erfüllt sein, um ein Überschreiben zu erlauben.In another embodiment, more than one of the conditions must be met to allow overwriting. And in another embodiment, all of the conditions must be met to allow overwriting.

In Operation S220 kann eine n-Bit-Programmieroperation auf einem Block, welcher eine m-Bit-Programmieroperation erfahren hat und ungültige Daten aufweist, durch eine Überschreiboperation nach einem Empfangen eines Programmierbefehls für die n-Bit-Programmieroperation durchgeführt werden. In beispielhaften Ausführungsformen kann die Überschreiboperation eine Single-Level-Programmieroperation sein, welche mit den 5 bis 6 (oder 8 bis 10) beschrieben wird, oder eine Programmieroperation einer Multi-Dimensions-Modulations-Art, welche mit Bezugnahme auf 12 beschrieben wird.In operation S220, an n-bit program operation can be performed on a block that has undergone an m-bit program operation and has invalid data by an overwrite operation after receiving a program command for the n-bit program operation. In exemplary embodiments, the rewrite operation may be a single-level programming operation using the 5 until 6 (or 8th until 10 ) or a programming operation of a multi-dimensional modulation type described with reference to FIG 12 is described.

Ein Überschreib-Verwaltungsmodul 220 kann eine Überschreibanzahl eines Blocks in der nichtflüchtigen Speichervorrichtung 100 speichern. Hierin kann die Überschreibanzahl für jeden Block durch eine Tabelle in dem Speichercontroller gespeichert werden oder die Überschreibanzahl kann bei bzw. in einer Seite jedes Blocks gespeichert werden (S230). In Operation S240 kann ein Block-Verwaltungsmodul 240 eine Löschoperation eines Blocks basierend auf der gespeicherten Überschreibanzahl in Antwort auf die Eingabe eines Löschbefehls durchführen. Beispielsweise kann eine Löschoperation ausgeführt werden, wenn die Überschreibanzahl eines Blocks mehr als 1 ist. Hierin kann eine Löschoperation in einer ISPE-Art durchgeführt werden. Wenn ein Block noch keine Überschreiboperation erfahren hat, kann eine Löschoperation auf einem Block nicht durchgeführt werden.A rewrite management module 220 may store a rewrite count of a block in the non-volatile memory device 100 . Herein, the number of rewrites for each block may be stored by a table in the memory controller, or the number of rewrites may be stored in a page of each block (S230). In operation S240, a block management module 240 may perform an erase operation of a block based on the stored rewrite count in response to input of an erase command. For example, if the rewrite count of a block is more than 1, an erase operation may be performed. Herein, an erase operation can be performed in an ISPE manner. If a block has not yet undergone an overwrite operation, an erase operation cannot be performed on a block.

Obwohl in 20 nicht gezeigt, kann das Betriebsverfahren der erfinderischen Konzepte weiterhin ein Beurteilen bzw. Entscheiden aufweisen, ob eine Überschreiboperation einmal mehr nach der ersten Überschreiboperation vor einer Löschoperation irgendeines Blockes durchzuführen ist oder nicht basierend auf einer Überschreibanzahl eines Blocks, einer Programmier-/Lösch-Zyklusanzahl eines Blocks, einem Block-Löschverhältnis und/oder einer Speicherzeit.Although in 20 not shown, the operating method of the inventive concepts may further include judging whether or not to perform an overwrite operation once more after the first overwrite operation before an erase operation of any block based on an overwrite number of a block, a program/erase cycle number one blocks, a block erase ratio and/or a storage time.

Mit einem Beispiel des Löschverfahrens der erfinderischen Konzepte kann eine Überschreiboperation durchgeführt werden bevor ein Block gelöscht wird.With an example of the erase method of the inventive concepts, an overwrite operation can be performed before a block is erased.

21 ist ein Flussdiagramm, welches ein Betriebsverfahren veranschaulicht, welches eine Überschreiboperation in einem Speichersystem gemäß einer anderen Ausführungsform des erfinderischen Konzepts aufweist. 21 12 is a flow chart illustrating an operation method including an overwrite operation in a memory system according to another embodiment of the inventive concept.

In Operation kann S310 kann ein Block-Verwaltungsmodul S320 (es sei Bezug genommen auf 1) beurteilen, ob die Anzahl von reinen Blöcken unter einem Referenzwert ist. Wenn die Anzahl von reinen Blöcken größer ist als der Referenzwert, kann keine Löschoperation ausgeführt werden, um einen reinen Block herzustellen.In operation, S310, a block management module S320 (refer to 1 ) judge whether the number of pure blocks is below a reference value. If the number of clean blocks is larger than the reference value, an erase operation cannot be performed to make a clean block.

Wenn die Anzahl von reinen Blöcken geringer ist als der Referenzwert, kann in Operation S315 das Block-Verwaltungsmodul 220 einen Block, welcher ungültige Daten aufweist, in einen Überschreib-Blockmodus setzen. Der Block, welcher in den Überschreib-Blockmodus gesetzt ist, ist in einem überschreibbereiten Zustand. Dann wird ein Programmierbefehl für eine Überschreiboperation eingegeben bzw. zugeführt und die Überschreiboperation wird selektiv auf dem Block in einem überschreibbereiten Zustand durchgeführt. Hierin wird durch ein Überschreib-Verwaltungsmodul 220 (es sei Bezug genommen auf 1) gemäß einem Datenzustand oder einem Gesundheitszustand eines Blocks bestimmt, ob der Block überschrieben werden kann. Danach kann in Operation S330 das Überschreib-Verwaltungsmodul 220 eine Überschreibanzahl für jeden Speicherblock in der nichtflüchtigen Speichervorrichtung 100 (es sei Bezug genommen auf 1) speichern. In Operation S340 kann ein Block-Verwaltungsmodul 240 eine Löschoperation eines Blockes basierend auf der gespeicherten Überschreibanzahl in Antwort auf einen Löschbefehl in derselben Art und Weise wie obenstehend unter Bezugnahme auf Schritt S240 beschrieben ist, durchführen.When the number of clean blocks is less than the reference value, in operation S315 the block management module 220 may set a block including invalid data to a rewrite block mode. The block set in the rewrite block mode is in a rewrite ready state. Then a programming command for an overwrite operation is inputted and the rewriting operation is selectively performed on the block in a rewriting-ready state. Herein, by a rewrite management module 220 (refer to 1 ) determines whether the block can be overwritten according to a data state or a health state of a block. Thereafter, in operation S330, the rewrite management module 220 may calculate a rewrite count for each memory block in the nonvolatile memory device 100 (refer to FIG 1 ) save. In operation S340, a block management module 240 may perform an erase operation of a block based on the stored rewrite count in response to an erase command in the same manner as described above with reference to step S240.

Gemäß dem Betriebsverfahren der erfinderischen Konzepte kann eine Überschreiboperation durchgeführt werden, wenn die Anzahl von reinen Blöcken in einer nichtflüchtigen Speichervorrichtung unter einem Referenzwert ist.According to the operating method of the inventive concepts, an overwrite operation may be performed when the number of clean blocks in a non-volatile memory device is below a reference value.

22 ist ein Diagramm, welches schematisch eines Lebenszyklus eines Blocks gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 22 kann der Lebenszyklus eines Blocks die folgende Prozedur erfahren. In Operation S410 kann ein anfänglicher Blockzustand ein programmierbereiter Zustand sein. Eine Multi-Bit-Programmoperation kann auf dem Block, welcher in einem programmierbereiten Zustand ist, ausgeführt werden. 22 12 is a diagram schematically illustrating a life cycle of a block according to an embodiment of the inventive concepts. Referring to 22 the life cycle of a block can undergo the following procedure. In operation S410, an initial block state may be a ready-to-program state. A multi-bit program operation can be performed on the block which is in a ready-to-program state.

In Operation S420 kann der programmierte Block in einen überschreibbereiten Zustand eintreten. Der überschreibbereite Zustand kann gemäß einem Datenzustand eines entsprechenden Blocks in einer Bezugnahme auf das Verschlechterungsniveau eines entsprechenden Blocks oder die Anzahl von reinen Blöcken bestimmt werden. Ein Block, welcher den überschreibbereiten Zustand hat, kann durch eine Überschreiboperation programmiert werden.In operation S420, the programmed block may enter a ready-to-rewrite state. The rewrite-ready state may be determined according to a data state of a corresponding block in reference to the degradation level of a corresponding block or the number of clean blocks. A block that is in the overwrite-ready state can be programmed by an overwrite operation.

In Operation S430 kann der Block, welcher eine Überschreiboperation erfahren hat, in einen löschbereiten Zustand eintreten. Der löschbereite Zustand kann gemäß einer Überschreibanzahl eines entsprechenden Blocks bestimmt werden. Ein Block, welcher den löschbereiten Zustand hat, kann gelöscht werden. Hierin kann eine Löschoperation in einer ISPE-Art durchgeführt werden.In operation S430, the block that has undergone an overwrite operation may enter a state ready for erasure. The erase-ready state may be determined according to a rewriting count of a corresponding block. A block that is in the ready-to-delete state can be deleted. Herein, an erase operation can be performed in an ISPE manner.

In Operation S440 kann beurteilt werden, ob eine Löschoperation erfolgreich ist. Wenn die Löschoperation vorübergeht, kann in Operation S410 ein vollendet gelöschter Block in dem programmierbereiten Zustand eintreten. Wenn die Löschoperation fehlschlägt, kann ein entsprechender Block als ein schlechter Block klassifiziert werden.In operation S440, it can be judged whether an erase operation is successful. If the erase operation is temporary, a completely erased block in the ready-to-program state may enter in operation S410. If the erase operation fails, a corresponding block can be classified as a bad block.

Gemäß der obigen Beschreibung kann ein Block nacheinanderfolgend einen Zustandswechsel von einem programmierbereiten Zustand zu einem überschreibbereiten Zustand und einen Zustandswechsel von einem überschreibbereiten Zustand zu einem löschbereiten Zustand erfahren.According to the above description, a block may sequentially undergo a state transition from a ready-to-program state to a ready-to-rewrite state and a state transition from a ready-to-overwrite state to a ready-to-erase state.

Ein Block kann einen programmierten Zustand, welcher gültige Daten aufweist, und einen ungültigen Zustand, welcher ungültige Daten aufweist zwischen dem programmierbereiten Zustand und dem überschreibbereiten Zustand haben. In dem programmierten Zustand kann jede Speicherzelle in dem Block m-Bit-Daten speichern. Ein Block kann einen überschriebenen Zustand zwischen dem überschreibbereiten Zustand und dem löschbereiten Zustand haben. In dem überschriebenen Zustand kann jede Speicherzelle in dem Block n-Bit-Daten speichern.A block may have a programmed state containing valid data and an invalid state containing invalid data between the ready-to-program state and the ready-to-rewrite state. In the programmed state, each memory cell in the block can store m-bit data. A block can have an overwritten state between the ready-to-overwrite state and the ready-to-erase state. In the overwritten state, each memory cell in the block can store n-bit data.

Auf einem anderen Wege ausgedrückt kann ein Block einen Lebenszyklus haben, welcher wie folgt voranschreitet: reiner Zustand (beispielsweise ist der Block gelöscht und bereit, programmiert zu werden oder Normalmodus), programmierter Zustand (Block mit gültigen Daten programmiert), ungültiger Zustand (Block speichert ungültige Daten), überschreibbarer Zustand (Block speichert ungültige Daten und erfüllt eine oder mehrere der oben diskutierten Bedingungen derart, dass ein Überschreiben der ungültigen Daten ohne Löschen des Blocks erlaubt ist), überschriebener Zustand (der Block ist ohne ein Löschen gemäß einer der beispielhaften Ausführungsformen überschrieben worden und speichert gültige Daten), und zurück zu dem reinen Zustand. Zustandsindikatoren bzw. Zustandsanzeigen können in einer Tabelle in dem Blockmodus-Bereich 101 durch den Speichercontroller 200 gespeichert werden, um den Zustand des Blocks anzuzeigen. Zusätzlich können die Zustandsindikatoren in einer Tabelle in dem Speichercontroller 200 wie beispielsweise in einer Flash-Übersetzungsschicht (FTL = Flash Translation Layer) gespeichert werden, um eine effizientere Steuerung des Speichers 100 vorzusehen. Durch ein Speichern oder Downloaden der Zustandsindikatoren in den Speichercontroller 200 kann der Speichercontroller 200 nämlich schneller auf die Zustandsinformationen zugreifen. Die Anzahl von Überschreibungen kann auch bei dem Speichercontroller 200 gespeichert werden.Put another way, a block can have a lifecycle that progresses as follows: clean state (e.g., the block is erased and ready to be programmed or normal mode), programmed state (block programmed with valid data), invalid state (block saves invalid data), rewritable state (block stores invalid data and satisfies one or more of the conditions discussed above such that overwriting the invalid data is allowed without erasing the block), overwritten state (the block is without erasure according to any of the exemplary embodiments been overwritten and stores valid data) and back to the pure state. State indicators may be stored in a table in block mode area 101 by memory controller 200 to indicate the state of the block. Additionally, the state indicators may be stored in a table in the memory controller 200, such as in a Flash Translation Layer (FTL) to provide more efficient control of the memory 100. FIG. Namely, by storing or downloading the state indicators in the memory controller 200, the memory controller 200 can access the state information faster. The number of rewrites can also be stored at the memory controller 200.

Durch ein Prüfen des Zustands eines Blocks steuert der Speichercontroller 200 angemessen ein Durchführen von Operationen auf dem Block. Beispielsweise und wie aus der obigen Beschreibung des Blocklebenszyklus anerkannt werden wird, ändert der Speichercontroller 200 den Zustand eines Blocks auf überschreibbar nur, wenn der Block in dem ungültigen Zustand ist, und überschreibt Daten in einem Block nur, wenn die Zustandsinformationen den überschreibbaren Zustand anzeigen. Sobald der Block überschrieben ist, ändert der Speichercontroller 200 den Zustand des Blocks auf überschrieben, was auch anzeigt, dass die Daten gültig sind. Weiterhin zeigt in den Ausführungsformen, in denen die Überschreibdaten weniger Bits als die überschriebenen Daten repräsentieren der überschriebene Zustand ähnlich an, dass der Block weniger Daten pro Speicherzelle speichert als er während beispielsweise des programmierten Zustands gespeichert hat. Nachdem er einen Speicherblock überschrieben hat, kann der Speichercontroller 200 dann die Überschreibanzahl speichern, welche die Anzahl von Malen anzeigt, die der Block seit der letzten Löschung überschrieben worden ist. Wie anerkannt werden wird, weist, in Ausführungsformen, in denen ein Block mehr als einmal vor einem Löschen überschrieben werden kann, der Lebenszyklus zusätzliche ungültige, überschreibbare und überschriebene Zustände auf. Wo beispielsweise ein Block zweimal überschrieben werden kann, ist der Lebenszyklus wie folgt: reiner Zustand, programmierter Zustand, ungültiger Zustand, überschreibbarer Zustand, überschriebener Zustand, ungültiger Zustand, überschreibbarer Zustand, überschriebener Zustand, und zurück zu dem reinen Zustand. Durch ein Überprüfen der Überschreibanzahl bestimmt der Speichercontroller 200, ob in den ersten überschreibbaren Zustand einzutreten ist und das erste Überschreiben durchzuführen ist, oder ob in den zweiten überschreibbaren Zustand einzutreten ist und das zweite Überschreiben durchzuführen ist. Basierend auf dieser Bestimmung programmiert der Speichercontroller 200 die Speicherzellen in dem Block, so dass sie unterschiedliche Zustände erreichen.By checking the state of a block, the memory controller 200 appropriately controls performing operations on the block. For example and as from the description above of the block life cycle will be recognized, the memory controller 200 changes the state of a block to rewritable only when the block is in the invalid state, and overwrites data in a block only when the state information indicates the rewritable state. Once the block is overwritten, the memory controller 200 changes the block's state to overwritten, which also indicates that the data is valid. Furthermore, in the embodiments where the overwrite data represents fewer bits than the overwritten data, the overwritten state similarly indicates that the block stores less data per memory cell than it stored during, for example, the programmed state. After overwriting a memory block, memory controller 200 may then store the rewrite count, which indicates the number of times the block has been overwritten since it was last erased. As will be appreciated, in embodiments where a block may be overwritten more than once before erasing, the lifecycle includes additional invalid, overwritable, and overwritten states. For example, where a block can be rewritten twice, the life cycle is as follows: clean state, programmed state, invalid state, rewritable state, overwritten state, invalid state, rewritable state, overwritten state, and back to the clean state. By checking the rewrite count, the memory controller 200 determines whether to enter the first rewritable state and perform the first rewrite, or enter the second rewritable state and perform the second rewrite. Based on this determination, the memory controller 200 programs the memory cells in the block to reach different states.

In einer Ausführungsform können die Programmier- und Verify- bzw. Vergleichsspannungen für den normalen und verschiedene Überschreib-Zustände in einer Tabelle gespeichert werden. Die Tabelle kann in dem Speicher 100 gespeichert werden und/oder kann in dem Speichercontroller 200 gespeichert werden. Zusätzlich oder alternativ können diese Spannungen in die Schaltung des Speichercontrollers 200 verbindungsprogrammiert bzw. fest verdrahtet werden. Auf dieselbe Art und Weise können andere Spannungen (beispielsweise Spannungen zum Auslesen von Daten), welche sich abhängig von dem normalen und verschiedenen Überschreib-Zuständen ändern, in der Tabelle gespeichert werden oder in den Speichercontroller 200 verbindungsprogrammiert bzw. fest verdrahtet werden.In one embodiment, the program and verify voltages for the normal and various overwrite states may be stored in a table. The table may be stored in memory 100 and/or may be stored in memory controller 200. Additionally or alternatively, these voltages may be hardwired into the memory controller 200 circuitry. In the same manner, other voltages (e.g., voltages for data readout) that change depending on the normal and various overwrite states can be stored in the table or hard-wired into the memory controller 200 .

Während sie in den beispielhaften Ausführungsformen obenstehend als auf einer Blockbasis gespeichert beschrieben werden, können die Zustandsinformationen anstelle dessen oder zusätzlich auf einer Seitenbasis und/oder einer Unterblockbasis an bzw. in dem Speicher 100 und optional an bzw. in dem Speichercontroller 200 gespeichert werden.While described above as being stored on a block basis in the exemplary embodiments, the state information may instead or additionally be stored on memory 100 and optionally on memory controller 200 on a page basis and/or sub-block basis.

Es wird anerkannt werden, dass Ausführungsformen, welche obenstehend beschrieben sind, auf verschiedenen Wegen kombiniert werden können. Beispielsweise können die Ausführungsformen des Überschreibens nur der Speicherzellen weiter von dem Substrat mit den Ausführungsformen betreffend den Block-Lebenszyklus und die Zustandsinformationen kombiniert werden. Dies ist aber nur eine beispielhafte Kombination und viel mehrere werden leicht offensichtlich sein.It will be appreciated that embodiments described above can be combined in various ways. For example, the embodiments of overwriting only the memory cells further from the substrate may be combined with the embodiments related to block life cycle and state information. However, this is just one example combination and many more will be readily apparent.

Sich nun 23 zuwendend ist 23 ein Diagramm, welches eine nichtflüchtige Speichervorrichtung in 1 gemäß einer Ausführungsform der erfinderischen Konzepte zeigt. Bezug nehmend auf 23 kann eine nichtflüchtige Speichervorrichtung 100 eine Speicherzellanordnung 110, eine Block-Gating-Schaltung 120, einen Adressdekoder bzw. Adressdekodierer 130, eine Lese-/Schreibschaltung 140 und eine Steuerlogik 150 aufweisen.yourself now 23 is affectionate 23 a diagram showing a non-volatile memory device in 1 according to an embodiment of the inventive concepts. Referring to 23 For example, a non-volatile memory device 100 may include a memory cell array 110, a block gating circuit 120, an address decoder 130, a read/write circuit 140, and control logic 150.

Die Speicherzellanordnung 110 kann eine Mehrzahl von Speicherblöcken BLK1 bis BLKz (z ist eine ganze Zahl von 2 oder mehr) aufweisen. Jeder der Speicherblöcke BLK1 bis BLKz kann Strukturen bilden, welche entlang einer zweiten Richtung (oder einer vertikalen Richtung) in bzw. auf einer Ebene, welche sich entlang einer ersten und dritten Richtung erstreckt, gestapelt bzw. geschichtet sind.The memory cell array 110 may include a plurality of memory blocks BLK1 to BLKz (z is an integer of 2 or more). Each of the memory blocks BLK1 to BLKz may form structures stacked along a second direction (or a vertical direction) in a plane extending along first and third directions.

Jeder Block kann eine Mehrzahl von vertikalen Strängen aufweisen, welche sich in einer vertikalen Richtung zu dem Substrat erstrecken. Jeder vertikale Strang kann eine Mehrzahl von Speicherzellen aufweisen, welche entlang einer vertikalen Richtung zu dem Substrat geschichtet sind. Speicherzellen können auf dem Substrat entlang Zeilen und Spalten vorgesehen sein und können eine dreidimensionale Struktur bilden, welche in einer vertikalen Richtung zu dem Substrat geschichtet ist. In beispielhaften Ausführungsformen kann die Speicherzellanordnung 110 eine Mehrzahl von Speicherzellen aufweisen, von welchen jede ein oder mehrere Bits von Daten speichert.Each block may have a plurality of vertical strands extending in a direction vertical to the substrate. Each vertical lane may include a plurality of memory cells stacked along a direction vertical to the substrate. Memory cells can be provided on the substrate along rows and columns and can form a three-dimensional structure layered in a vertical direction to the substrate. In example embodiments, memory cell array 110 may include a plurality of memory cells, each storing one or more bits of data.

Die Block-Gating-Schaltung 120 kann mit der Speicherzellanordnung 110 durch Strang-Auswahlleitungen SSL, Wortleitungen WL und Masse-Auswahlleitungen GSL verbunden sein. Die Block-Gating-Schaltung 120 kann mit dem Adressdekoder 130 durch Strangleitungen SS, Auswahlleitungen S und Masseleitungen GS verbunden sein. Die Block-Gating-Schaltung 120 kann mit einem Blockauswahlsignal BSS von dem Adressdekoder 130 vorgesehen sein.Block gating circuit 120 may be connected to memory cell array 110 through string select lines SSL, word lines WL, and ground select lines GSL. The block gating circuit 120 can be connected to the address decoder 130 by string lines SS, select lines S and ground lines GS be connected. The block gating circuit 120 may be provided with a block selection signal BSS from the address decoder 130. FIG.

Die Block-Gating-Schaltung 120 kann einen Block der Speicherzellanordnung in Antwort auf das Blockauswahlsignal BSS auswählen. Die Block-Gating-Schaltung 120 kann elektrisch Strang-Auswahlleitungen SSL, Wortleitungen WL und eine Masse-Auswahlleitung oder Masse-Auswahlleitungen GSL des ausgewählten Blocks mit den Strangleitungen SS, den Auswahlleitungen S und der Masseleitung oder Masseleitungen GS verbinden.The block gating circuit 120 can select a block of the memory cell array in response to the block selection signal BSS. Block gating circuit 120 may electrically connect string select lines SSL, word lines WL, and a ground select line or lines GSL of the selected block to string lines SS, select lines S, and ground line or ground lines GS.

Der Adressdekoder 130 kann mit der Block-Gating-Schaltung 120 durch die Strangleitungen SS, die Auswahlleitungen S und die Masseleitung oder Masseleitungen GS verbunden sein. Der Adressdekoder 130 kann konfiguriert sein, so dass er in Antwort auf die Steuerung der Steuerlogik 150 arbeitet. Der Adressdekoder 130 kann eine Adresse ADDR von einer externen Vorrichtung empfangen.The address decoder 130 may be connected to the block gating circuit 120 through the string lines SS, the select lines S, and the ground line or lines GS. Address decoder 130 may be configured to operate in response to control logic 150 control. The address decoder 130 can receive an address ADDR from an external device.

Der Adressdekoder 130 kann konfiguriert sein, um eine Zeilenadresse der Eingabeadresse ADDR zu dekodieren. Der Adressdekoder 130 kann das Blockauswahlsignal BSS basierend auf einer dekodierten Blockadresse der dekodierten Zeilenadresse erzeugen. Der Adressdekoder 130 kann konfiguriert sein, um eine Auswahlleitung, welche der dekodierten Zeilenadresse entspricht, unter den Auswahlleitungen S auszuwählen. Der Adressdekoder 130 kann konfiguriert sein, um eine Strangleitung und eine Masseleitung entsprechend der dekodierten Zeilenadresse unter den Strangleitungen SS und der Masseleitung oder den Masseleitungen GS auszuwählen.The address decoder 130 may be configured to decode a row address of the input address ADDR. The address decoder 130 may generate the block select signal BSS based on a decoded block address of the decoded row address. The address decoder 130 may be configured to select a select line from among the select lines S corresponding to the decoded row address. The address decoder 130 may be configured to select a string line and a ground line corresponding to the decoded row address from among the string lines SS and the ground line or the ground lines GS.

Der Adressdekoder 130 kann konfiguriert sein, um eine Spaltenadresse der Eingabeadresse ADDR zu dekodieren. Der Adressdekoder 130 kann die dekodierte Spaltenadresse DCA zu der Lese-/Schreibschaltung 140 übertragen.The address decoder 130 can be configured to decode a column address of the input address ADDR. The address decoder 130 can transfer the decoded column address DCA to the read/write circuit 140 .

In beispielhaften Ausführungsformen kann der Adressdekoder 130 einen Zeilendekoder, welcher eine Zeilenadresse dekodiert, einen Spaltendekoder, welcher eine Spaltenadresse dekodiert, einen Adresspuffer, welcher eine Eingabeadresse ADDR speichert, und dergleichen aufweisen.In exemplary embodiments, address decoder 130 may include a row decoder that decodes a row address, a column decoder that decodes a column address, an address buffer that stores an input address ADDR, and the like.

Die Lese-/Schreibschaltung 140 kann mit der Speicherzellanordnung 110 durch Bitleitungen BL verbunden sein. Die Lese-/Schreibschaltung 140 kann konfiguriert sein, so dass sie Daten mit einer externen Vorrichtung austauscht. Die Lese-/Schreibschaltung 140 kann in Antwort auf die Steuerung der Steuerlogik 150 arbeiten. Die Lese-/Schreibschaltung 140 kann mit der dekodierten Spaltenadresse DCA von dem Adressdekoder 130 versehen werden bzw. vorgesehen sein. Die Lese-/Schreibschaltung 140 kann die Bitleitungen BL in Antwort auf die dekodierte Spaltenadresse DCA auswählen.Read/write circuit 140 may be connected to memory cell array 110 through bit lines BL. The read/write circuit 140 may be configured to exchange data with an external device. Read/write circuitry 140 may operate in response to control of control logic 150. The read/write circuit 140 can be provided with the decoded column address DCA from the address decoder 130 . The read/write circuit 140 can select the bit lines BL in response to the decoded column address DCA.

In beispielhaften Ausführungsformen kann die Lese-/Schreibschaltung Daten von einer externen Vorrichtung empfangen, um sie an bzw. in der Speicherzellanordnung 110 zu speichern. Die Lese-/Schreibschaltung 140 kann Daten aus der Speicherzellanordnung 110 auslesen, um sie zu der externen Vorrichtung auszugeben. Die Lese-/Schreibschaltung 140 kann Daten aus einem ersten Speicherbereich der Speicherzellanordnung 110 auslesen, um sie in einem zweiten Speicherbereich der Speicherzellanordnung 110 zu speichern. Das heißt, die Lese-/Schreibschaltung 140 kann eine Copy-Back-Operation durchführen.In example embodiments, the read/write circuitry may receive data from an external device for storage on the memory cell array 110 . The read/write circuit 140 can read out data from the memory cell array 110 to output to the external device. The read/write circuit 140 can read data from a first memory area of the memory cell array 110 in order to store it in a second memory area of the memory cell array 110 . That is, the read/write circuit 140 can perform a copy-back operation.

In beispielhaften Ausführungsformen kann die Lese-/Schreibschaltung Elemente wie beispielsweise einen Seitenpuffer (oder bezeichnet als Seitenregister), eine Spaltenauswahlschaltung, einen Datenpuffer und dergleichen aufweisen. Alternativ kann die Lese-/Schreibschaltung 140 Elemente wie beispielsweise einen Leseverstärker, einen Schreibtreiber, eine Spaltenauswahlschaltung, einen Datenpuffer und dergleichen aufweisen.In exemplary embodiments, the read/write circuitry may include elements such as a page buffer (or referred to as a page register), column select circuitry, a data buffer, and the like. Alternatively, read/write circuit 140 may include elements such as a sense amplifier, a write driver, a column select circuit, a data buffer, and the like.

Die Steuerlogik 150 kann mit dem Adressdekoder 130 und der Lese-/Schreibschaltung 140 verbunden sein. Die Steuerlogik 150 kann konfiguriert sein, so dass sie einen Gesamtbetrieb der nichtflüchtigen Speichervorrichtung 100 steuert. Die Steuerlogik 150 kann eine erste Programmierlogik 151 und eine zweite Programmierlogik 152 aufweisen. Die erste Programmierlogik 151 kann eine m-Bit-Programmieroperation (m ist eine ganze Zahl größer als 1) mit Hinsicht auf Speicherzellen, welche mit oberen Wortleitungen (beispielsweise WL4 bis WL7 in 5) verbunden sind, und Speicherzellen, welche mit unteren Wortleitungen (beispielsweise WL0 bis WL3 in 5) verbunden sind, durchführen. Wie in 5 veranschaulicht ist, kann die zweite Programmierlogik 152 eine n-Bit-Programmieroperation (n ist eine ganze Zahl kleiner als m) hinsichtlich der Speicherzellen, welche mit den oberen Wortleitungen (beispielsweise WL4 bis WL7) verbunden sind, während einer Überschreiboperation durchführen.Control logic 150 may be coupled to address decoder 130 and read/write circuitry 140 . The control logic 150 may be configured to control an overall operation of the non-volatile memory device 100 . Control logic 150 may include first programming logic 151 and second programming logic 152 . The first programming logic 151 may perform an m-bit (m is an integer greater than 1) programming operation with respect to memory cells connected to upper word lines (e.g., WL4 through WL7 in 5 ) are connected, and memory cells connected to lower word lines (e.g., WL0 to WL3 in 5 ) are connected. As in 5 As illustrated, the second program logic 152 may perform an n-bit (n is an integer less than m) program operation on the memory cells connected to the upper word lines (e.g., WL4 through WL7) during an overwrite operation.

Die nichtflüchtige Speichervorrichtung 100 des erfinderischen Konzepts kann eine n-Bit-Programmieroperation hinsichtlich m-Bit-programmierter Speicherzellen unter Verwendung einer Überschreiboperation durchführen.The non-volatile memory device 100 of the inventive concept can perform an n-bit program operation on m-bit programmed memory cells using an overwrite operation.

24 ist Schaltbild, welches einen der Blöcke in 23 veranschaulicht. Bezug nehmend auf 24 kann ein Block eine geteilte Bitleitungsstruktur bzw. eine gemeinsam benutzte Bitleitungsstruktur haben. Beispielsweise können vier Stränge ST1 bis ST4 zwischen einer ersten Bitleitung BL1 und einer gemeinsamen Source-Leitung CSL, welche mit der ersten Bitleitung BL1 zu verbinden ist, verbunden sein. Die erste Bitleitung BL1 kann einem leitfähigen Material, welches sich in einer ersten Richtung erstreckt, entsprechen. 24 is a circuit diagram showing one of the blocks in 23 illustrated. Referring to 24 a block can have a shared bit line structure or a shared bit line structure have. For example, four strings ST1 to ST4 can be connected between a first bit line BL1 and a common source line CSL, which is to be connected to the first bit line BL1. The first bit line BL1 may correspond to a conductive material extending in a first direction.

Jeder der Stränge ST1 bis ST4 kann zwei seriell verbundene Strang-Auswahltransistoren SST1 und SST2 aufweisen, welche jeweils mit Strang-Auswahlleitungen SSL1 und SSL2 verbunden sind. In beispielhaften Ausführungsformen kann wenigstens einer der Strang-Auswahltransistoren SST1 und SST2 programmiert sein, so dass er eine Schwellenspannung steuert. Jeder der Stränge ST1 bis ST4 kann zwei seriell verbundene Masseauswahltransistoren GST1 und GST2 aufweisen, welche jeweils mit Masseauswahlleitungen GSL1 und GSL2 verbunden sind. In beispielhaften Ausführungsformen kann wenigstens einer der Masseauswahltransistoren GST1 und GST2 programmiert sein, so dass er eine Schwellenspannung steuert.Each of the strings ST1 to ST4 may have two serially connected string select transistors SST1 and SST2 connected to string select lines SSL1 and SSL2, respectively. In exemplary embodiments, at least one of string select transistors SST1 and SST2 may be programmed to control a threshold voltage. Each of the strings ST1 to ST4 can have two serially connected ground selection transistors GST1 and GST2, which are connected to ground selection lines GSL1 and GSL2, respectively. In exemplary embodiments, at least one of ground select transistors GST1 and GST2 may be programmed to control a threshold voltage.

25 ist eine Tabelle, welche eine Korrelation bzw. Verknüpfung zwischen der Anzahl von Extrazuständen und einer Löschfrequenzverringerung bzw. Löschhäufigkeitsverringerung veranschaulicht, wenn alle Zellen eines Blocks eines Speichersystems einen Extrazustand haben. Hierin kann eine Löschfrequenz eine Löschanzahl sein, welche benötigt wird, wenn die gleiche Anzahl von Seiten geschrieben wird. Die Löschfrequenz ERS_Freq kann die folgende Gleichung 1 erfüllen. E R S _ F r e q 1 m + s × p

Figure DE102013100596B4_0001
25 Figure 13 is a table illustrating a correlation between the number of extra states and an erase frequency reduction when all cells of a block of a memory system have an extra state. Herein, an erase frequency may be an erase number required when the same number of pages are written. The erase frequency ERS_Freq can satisfy Equation 1 below. E R S _ f right e q 1 m + s × p
Figure DE102013100596B4_0001

In der Gleichung 1 zeigt m die Anzahl von Bits pro Speicherzelle an, s zeigt die Anzahl von Extrazuständen über 2m Zustände hinaus an und p zeigt den Prozentsatz von Speicherzellen an, welche einen Extrazustand in einem Speicherblock haben.In Equation 1, m indicates the number of bits per memory cell, s indicates the number of extra states beyond 2m states, and p indicates the percentage of memory cells that have an extra state in a memory block.

Eine Löschfrequenzverringerung ERS _Freq_reduction aufgrund einer Überschreiboperation kann die folgende Gleichung 2 erfüllen. E R S _ F r e q _ r e d u c t i o n = s × p m + s × p

Figure DE102013100596B4_0002
An erase frequency reduction ERS_Freq_reduction due to an overwrite operation can satisfy Equation 2 below. E R S _ f right e q _ right e i.e and c t i O n = s × p m + s × p
Figure DE102013100596B4_0002

Bezug nehmend auf 25 kann, wenn die Anzahl von Extrazuständen zunimmt, die Wirkung bzw. der Effekt der Löschfrequenzverringerung maximal um bis zu 50% zunehmen.Referring to 25 For example, as the number of extra states increases, the effect of erasing frequency reduction can increase by up to a maximum of 50%.

Eine Durchschnittsanzahl von Programmieroperationen, welche ausgeführt wird, bis eine Löschoperation durchgeführt wird, kann durch die folgende Gleichung 3 ausgedrückt werden. num_program m + s 1 p 1 + s 2 p 2 + + s N p N

Figure DE102013100596B4_0003
An average number of program operations performed until an erase operation is performed can be expressed by Equation 3 below. number_program m + s 1 p 1 + s 2 p 2 + ... + s N p N
Figure DE102013100596B4_0003

In der Gleichung 3 zeigt m die Anzahl von Bits pro Speicherzelle an, si zeigt die Anzahl von Extrazuständen über 2m hinausgehend bei einem Unterblock (oder die SLC überschreibbare Anzahl pro Zelle bei einem i-ten Unterblock) an, pi zeigt einen Abschnitt des i-ten Unterblocks eines Blocks an und N zeigt die Anzahl von Unterblöcken, welche mit verschiedenen Anzahlen überschreibbar sind, an.In Equation 3, m indicates the number of bits per memory cell, si indicates the number of extra states beyond 2 m at a sub-block (or the SLC rewritable number per cell at an ith sub-block), pi indicates a portion of the i-th sub-block of a block and N indicates the number of sub-blocks which can be overwritten with different numbers.

Eine Löschfrequenz ERS _Freq, welche benötigt wird, wenn die gleiche Anzahl von Seiten geschrieben ist, kann die folgende Gleichung 4 erfüllen. E R S _ F r e q 1 m + i = 1 N S i p i

Figure DE102013100596B4_0004
An erase frequency ERS_Freq required when the same number of pages are written can satisfy Equation 4 below. E R S _ f right e q 1 m + i = 1 N S i p i
Figure DE102013100596B4_0004

Eine Löschfrequenzverringerung ERS _Freq_reduction aufgrund einer Überschreiboperation kann die folgende Gleichung 5 erfüllen. E R S _ F r e q _ r e d u c t i o n = i = 1 N S i p i m + i = 1 N S i p i

Figure DE102013100596B4_0005
An erase frequency reduction ERS_Freq_reduction due to an overwrite operation can satisfy Equation 5 below. E R S _ f right e q _ right e i.e and c t i O n = i = 1 N S i p i m + i = 1 N S i p i
Figure DE102013100596B4_0005

26 ist eine Tabelle, welche die Korrelation zwischen der Anzahl von Extrazuständen und einer Löschfrequenzverringerung veranschaulicht, wenn die Hälfte von Zellen eines Blocks eines Speichersystems einen Extrazustand hat. Beispielsweise können, wie in 5 veranschaulicht ist, Speicherzellen, welche mit oberen Wortleitungen verbunden sind, einen Extrazustand haben, und Speicherzellen, welche mit unteren Wortleitungen verbunden sind, können keinen Extrazustand haben. Demnach kann unter Bezugnahme auf die Gleichung 3 N=2 sein und p1 und p2 können 0,5 sein. Zu dieser Zeit kann, veranschaulicht in 26, wenn die Anzahl von Extrazuständen zunimmt, die Wirkung einer Löschfrequenzverringerung maximal auf bis zu 33% ansteigen. 26 Figure 12 is a table illustrating the correlation between the number of extra states and an erase frequency reduction when half of cells of a block of a memory system have an extra state. For example, as in 5 As illustrated, memory cells connected to upper wordlines have an extra state, and memory cells connected to lower wordlines cannot have an extra state. Thus, referring to Equation 3, N=2 and p 1 and p 2 can be 0.5. At this time, illustrated in 26 , as the number of extra states increases, the effect of quenching frequency reduction increases up to 33% at maximum.

Ein Speichersystem gemäß einer Ausführungsform des erfinderischen Konzepts kann eine Löschzyklusanzahl durch ein Durchführen einer Überschreiboperation vor einer Löschoperation und eine Antwortzeit verringern, welche von dann ist, wann ein Programmierbefehl empfangen wird bis dann, wann eine Programmieroperation vollendet ist.A memory system according to an embodiment of the inventive concept can reduce an erase cycle number by performing an overwrite operation before an erase operation and a response time, which is from when a programming command is received to when a programming operation is completed.

Während ein herkömmliches Speichersystem eine lange Löschzeit hat, kann das Speichersystem des erfinderischen Konzepts eine Löschzeit verringern. Weiterhin kann die Zuverlässigkeit/ISPE-Zyklus, welche bzw. welcher mit einer Löschoperation verbunden ist, verbessert werden.While a conventional storage system has a long erase time, the storage system of the inventive concept can reduce an erase time. Furthermore, the reliability/ISPE cycle associated with an erase operation can be improved.

Die erfinderischen Konzepte sind auf verschiedene Vorrichtungen anwendbar.The inventive concepts are applicable to various devices.

27 ist ein Blockschaltbild, welches schematisch ein Speichersystem gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 27 kann ein Speichersystem 1000 wenigstens eine nichtflüchtige Speichervorrichtung 1100 und einen Speichercontroller 1200 aufweisen. Das Speichersystem 1000 kann eine Überschreiboperation vor eine Löschoperation durchführen, wie unter Bezugnahme auf die 1 bis 26 beschrieben ist. 27 12 is a block diagram that schematically illustrates a memory system according to an embodiment of the inventive concepts. Referring to 27 For example, a memory system 1000 may include at least one non-volatile memory device 1100 and a memory controller 1200. The memory system 1000 may perform an overwrite operation before an erase operation, as referred to in FIG 1 until 26 is described.

Die nichtflüchtige Speichervorrichtung 1100 kann optional mit einer hohen Spannung Vpp von außerhalb versorgt werden. Der Speichercontroller 1200 kann mit der nichtflüchtigen Speichervorrichtung 1100 über eine Mehrzahl von Kanälen verbunden sein. Der Speichercontroller 1200 kann wenigstens eine zentrale Verarbeitungseinheit (CPU = Central Processing Unit) 1210, einen Pufferspeicher 1220, eine ECC-Schaltung 1230, einen ROM 1240, ein Host-Interface bzw. eine Host-Schnittstelle 1250 und eine Speicher-Schnittstelle 1260 aufweisen. Obwohl in 27 nicht gezeigt, kann der Speichercontroller 1200 weiterhin eine Randomisierungsschaltung bzw. Schaltung zur Herstellung einer Zufallsordnung aufweisen, welche Daten willkürlich anordnet und wieder ordnet. Das Speichersystem 1000 gemäß einer Ausführungsform der erfinderischen Konzepte ist auf einen Perfect Page New (PPN)-Speicher anwendbar.The non-volatile memory device 1100 can optionally be supplied with a high voltage Vpp from the outside. The memory controller 1200 may be connected to the non-volatile memory device 1100 via a plurality of channels. The memory controller 1200 may include at least a central processing unit (CPU) 1210, a buffer memory 1220, an ECC circuit 1230, a ROM 1240, a host interface 1250 and a memory interface 1260. Although in 27 not shown, memory controller 1200 may further include randomization circuitry that randomizes and re-orders data. The memory system 1000 according to an embodiment of the inventive concepts is applicable to Perfect Page New (PPN) memory.

Eine detaillierte Beschreibung des Speichersystems ist im U.S. Patent Nr. 8,027,184 und der U.S. Patentpublikation Nr. 2010/0082890 offenbart, deren gesamte Inhalte hierin durch Bezugnahme mit eingebunden sind.A detailed description of the memory system can be found in U.S. Pat. U.S. Patent No. 8,027,184 and U.S. Pat. Patent Publication No. 2010/0082890, the entire contents of which are incorporated herein by reference.

28 ist ein Blockschaltbild, welches schematisch eine Speicherkarte gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 28 kann eine Speicherkarte 2000 wenigstens einen Flashspeicher 2100, eine Pufferspeichervorrichtung 2200 und einen Speichercontroller 2300 zum Steuern des Flashspeichers 2100 und der Pufferspeichervorrichtung 2200 aufweisen. Die Speicherkarte 2000 kann eine Überschreiboperation vor einer Löschoperation durchführen, wie unter Bezugnahme auf die 1 bis 26 beschrieben ist. 28 12 is a block diagram schematically illustrating a memory card according to an embodiment of the inventive concepts. Referring to 28 For example, a memory card 2000 may include at least a flash memory 2100, a buffer memory device 2200, and a memory controller 2300 for controlling the flash memory 2100 and the buffer memory device 2200. The memory card 2000 can perform an overwrite operation before an erase operation as referred to in FIG 1 until 26 is described.

Die Pufferspeichervorrichtung 2200 kann verwendet werden, um vorübergehend Daten, welche während des Betriebs der Speicherkarte 2000 erzeugt werden, zu speichern. Die Pufferspeichervorrichtung 2200 kann unter Verwendung eines DRAM oder eines SRAM implementiert werden. Der Speichercontroller 2300 kann mit dem Flashspeicher 2100 über eine Mehrzahl von Kanälen verbunden sein. Der Speichercontroller 2300 kann zwischen einem Host und dem Flashspeicher 2100 verbunden sein. Der Speichercontroller 2300 kann konfiguriert sein, um auf den Flashspeicher 2100 in Antwort auf eine Anfrage von dem Host zuzugreifen.Buffer memory device 2200 may be used to temporarily store data generated during operation of memory card 2000. Buffer memory device 2200 may be implemented using DRAM or SRAM. The memory controller 2300 may be connected to the flash memory 2100 via a plurality of channels. The memory controller 2300 can be connected between a host and the flash memory 2100 . The memory controller 2300 may be configured to access the flash memory 2100 in response to a request from the host.

Der Speichercontroller 2300 kann wenigstens einen Mikroprozessor 2310, eine Host-Schnittstelle 2320 und eine Flash-Schnittstelle 2330 aufweisen. Der Mikroprozessor 2310 kann konfiguriert sein, um Firmware zu treiben. Die Host-Schnittstelle 2320 kann mit dem Host über ein Kartenprotokoll (beispielsweise SD/MMC) für Datenaustausch zwischen dem Host und der Speicherkarte 2000 eine Schnittstelle bilden. Die Speicherkarte 2000 ist auf Multimediakarten (MMCs), Security Digitals (SDs), Mini SDs, Speichersticks, Smartmedia und Trans-Flashkarten anwendbar.The memory controller 2300 may include at least a microprocessor 2310, a host interface 2320, and a flash interface 2330. The microprocessor 2310 can be configured to drive firmware. The host interface 2320 can interface with the host via a card protocol (e.g. SD/MMC) for data exchange between the host and the memory card 2000 . The Memory Card 2000 is applicable to Multimedia Cards (MMCs), Security Digitals (SDs), Mini SDs, Memory Sticks, Smartmedia and Trans-Flash cards.

Eine detaillierte Beschreibung der Speicherkarte 2000 ist in der U. S. Patentveröffentlichung Nr. 2010/0306583 veröffentlicht, deren gesamte Inhalte hierin durch Bezugnahme mit eingebunden sind.A detailed description of memory card 2000 is provided in US Patent Publication No. 2010/0306583 published, the entire contents of which are incorporated herein by reference.

29 ist ein Blockdiagramm, welches schematisch einen moviNAND gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 29 kann eine moviNAND-Vorrichtung 3000 wenigstens eine NAND-Flashspeichervorrichtung 3100 und einen Controller bzw. eine Steuerung 3200 aufweisen. Die moviNAND-Vorrichtung 3000 kann den MMC 4.4 (oder bezeichnet als „eMMC“) Standard unterstützen. Die moviNAND-Vorrichtung 3000 eine Überschreiboperation vor einer Löschoperation durchführen, wie unter Bezugnahme auf die 1 bis 26 beschrieben ist. 29 12 is a block diagram that schematically illustrates a moviNAND according to an embodiment of the inventive concepts. Referring to 29 For example, a moviNAND device 3000 may include at least one NAND flash memory device 3100 and a controller 3200 . The moviNAND device 3000 can support the MMC 4.4 (or referred to as “eMMC”) standard. The moviNAND device 3000 performs an overwrite operation before an erase operation as referred to in FIG 1 until 26 is described.

Die NAND-Flashspeichervorrichtung 3100 kann eine Einzeldatenraten (SDR) NAND-Flashspeichervorrichtung oder eine Doppeldatenraten (DDR) NAND-Flashspeichervorrichtung sein. In beispielhaften Ausführungsformen kann die NAND-Flashspeichervorrichtung 3100 NAND-Flashspeicherchips aufweisen. Hierin kann die NAND-Flashspeichervorrichtung 3100 durch ein Schichten der NAND-Flashspeicherchips bei bzw. in einem Gehäuse bzw. Package (beispielsweise FBGA, Fine-Pitch Ball Grid Array) etc. implementiert sein.The NAND flash memory device 3100 may be a single data rate (SDR) NAND flash memory device or a double data rate (DDR) NAND flash memory device. In example embodiments, NAND flash memory device 3100 may include NAND flash memory chips. Herein, the NAND flash memory device 3100 may be implemented by stacking the NAND flash memory chips in a package (e.g., FBGA, Fine-Pitch Ball Grid Array), etc.

Der Controller 3200 kann mit der Flashspeichervorrichtung 3100 über eine Mehrzahl von Kanälen verbunden sein. Der Controller 3200 kann wenigstens einen Controllerkern 3210, eine Host-Schnittstelle 3220 und eine NAND-Schnittstelle 3230 aufweisen. Der Controller 3210 kann einen Gesamtbetrieb der moviNAND-Vorrichtung 3000 steuern.The controller 3200 communicates with the flash memory device 3100 via a plurality of channels to be connected. The controller 3200 may include at least a controller core 3210, a host interface 3220, and a NAND interface 3230. The controller 3210 can control an overall operation of the moviNAND device 3000 .

Die Host-Schnittstelle 3220 kann konfiguriert sein, um eine MMC-Schnittstelle zwischen dem Controller 3210 und einem Host durchzuführen. Die NAND-Schnittstelle 3230 kann konfiguriert sein, um zwischen der NAND-Flashspeichervorrichtung 3100 und dem Controller 3200 eine Schnittstelle zu bilden. In beispielhaften Ausführungsformen kann die Host-Schnittstelle 3220 eine parallele Schnittstelle (beispielsweise eine MMC-Schnittstelle) sein. In anderen beispielhaften Ausführungsformen kann die Host-Schnittstelle 3250 der moviNAND-Vorrichtung 3000 eine serielle Schnittstelle sein (beispielsweise UHS-II, UFS, etc.).The host interface 3220 may be configured to perform an MMC interface between the controller 3210 and a host. NAND interface 3230 may be configured to interface between NAND flash memory device 3100 and controller 3200 . In example embodiments, the host interface 3220 may be a parallel interface (e.g., an MMC interface). In other example embodiments, the host interface 3250 of the moviNAND device 3000 may be a serial interface (e.g., UHS-II, UFS, etc.).

Die moviNAND-Vorrichtung 3000 kann Leistungsversorgungsspannungen Vcc und Vccq von dem Host empfangen. Hierin kann die Leistungsversorgungsspannung Vcc (ungefähr 3 V) der NAND-Flashspeichervorrichtung 3100 und der NAND-Schnittstelle 3230 zur Verfügung gestellt werden, während die Leistungsversorgungsspannung Vccq (ungefähr 1,8 V/3V) dem Controller 3200 zur Verfügung gestellt werden kann. In beispielhaften Ausführungsformen kann eine externe hohe Spannung Vpp optional der moviNAND-Vorrichtung 3000 zur Verfügung gestellt werden.The moviNAND device 3000 can receive power supply voltages Vcc and Vccq from the host. Herein, the power supply voltage Vcc (about 3V) can be provided to the NAND flash memory device 3100 and the NAND interface 3230, while the power supply voltage Vccq (about 1.8V/3V) can be provided to the controller 3200. In exemplary embodiments, an external high voltage Vpp may optionally be provided to the moviNAND device 3000.

Die moviNAND-Vorrichtung 3000 gemäß einer Ausführungsform des erfinderischen Konzepts kann vorteilhaft sein, um Massendaten zu speichern, so wie sie auch eine verbesserte Lesecharakteristik haben kann. Die moviNAND-Vorrichtung 3000 gemäß einer Ausführungsform des erfinderischen Konzepts ist auf kleine und mobile Niedrigleistungs-Produkte (beispielsweise ein Galaxy S, iPhone etc.) anwendbar.The moviNAND device 3000 according to an embodiment of the inventive concept can be advantageous for storing bulk data as well as having an improved reading characteristic. The moviNAND device 3000 according to an embodiment of the inventive concept is applicable to small and low-power mobile products (e.g., a Galaxy S, iPhone, etc.).

Die moviNAND-Vorrichtung 3000, welche in 29 veranschaulicht ist, kann mit einer Mehrzahl von Leistungsversorgungsspannungen Vcc und Vccq versorgt werden. Das erfinderische Konzept ist jedoch nicht hierauf beschränkt. Die moviNAND-Vorrichtung 3000 kann konfiguriert sein, um eine Leistungsversorgungsspannung von 3,3 Volt zu erzeugen, welche für eine NAND-Schnittstelle und einen NAND-Flashspeicher durch ein internes Boosten oder Regulieren der Leistungsversorgungsspannung Vcc geeignet ist. Ein internes Boosten oder Regulieren ist im U.S. Patent Nr. 7,012,308 offenbart, dessen gesamte Inhalte hierin durch Bezugnahme mit eingebunden sind.The moviNAND device 3000, which in 29 1 can be supplied with a plurality of power supply voltages Vcc and Vccq. However, the inventive concept is not limited to this. The moviNAND device 3000 can be configured to generate a 3.3 volt power supply voltage suitable for a NAND interface and NAND flash memory by internally boosting or regulating the power supply voltage Vcc. Internal boosting or regulation is disclosed in US Patent No. 7,012,308, the entire contents of which are incorporated herein by reference.

Das erfinderische Konzept ist auf ein Festkörperlaufwerk (SSD = Solid State Drive) anwendbar.The inventive concept is applicable to a solid state drive (SSD).

30 ist ein Blockschaltbild, welches schematisch ein Festkörperlaufwerk gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 30 kann ein Festkörperlaufwerk (SSD = Solid State Drive) 4000 eine Mehrzahl von Flashspeichervorrichtungen 4100 und einen SSD-Controller bzw. eine SSD-Steuerung 4200 aufweisen. Das SSD 4000 kann eine Überschreiboperation vor einer Löschoperation durchführen, wie unter Bezugnahme auf die 1 bis 26 beschrieben ist. 30 12 is a block diagram schematically illustrating a solid state drive according to an embodiment of the inventive concepts. Referring to 30 For example, a solid state drive (SSD) 4000 may include a plurality of flash memory devices 4100 and an SSD controller 4200 . The SSD 4000 can perform an overwrite operation before an erase operation as referred to in FIG 1 until 26 is described.

Die Flashspeichervorrichtungen 4100 können optional mit einer hohen Spannung Vpp von außerhalb versorgt werden. Der SSD-Controller 4200 kann mit den Flashspeichervorrichtungen 4100 über eine Mehrzahl von Kanälen CH1 bis CHi verbunden sein. Der SSD-Controller 4200 kann wenigstens eine CPU 4210, eine Host-Schnittstelle 4220, einen Pufferspeicher 4230 und eine Flash-Schnittstelle 4240 aufweisen.The flash memory devices 4100 can optionally be supplied with a high voltage Vpp from the outside. The SSD controller 4200 may be connected to the flash memory devices 4100 via a plurality of channels CH1 to CHi. The SSD controller 4200 may include at least a CPU 4210, a host interface 4220, a buffer memory 4230, and a flash interface 4240.

Unter der Steuerung der CPU 4210 kann die Host-Schnittstelle 4220 Daten mit einem Host durch das Kommunikationsprotokoll austauschen. In beispielhaften Ausführungsformen kann das Kommunikationsprotokoll das Advanced Technology Attachment (ATA)-Protokoll aufweisen. Das ATA-Protokoll kann eine Serial Advanced Technology Attachment (SATA)-Schnittstelle, eine Parallel Advanced Technology Attachment (PATA)-Schnittstelle, eine External SATA (ESATA)-Schnittstelle und dergleichen aufweisen. In anderen beispielhaften Ausführungsformen kann das Kommunikationsprotokoll das Universal Serial Bus (USB)-Protokoll aufweisen. Daten, welche von oder zu dem Host durch die Host-Schnittstelle 4220 zu empfangen sind oder zu übertragen sind, können durch den Pufferspeicher 4230 ohne ein Durchlaufen eines CPU-Bus unter der Steuerung der CPU 4210 geliefert werden.Under the control of the CPU 4210, the host interface 4220 can exchange data with a host through the communication protocol. In example embodiments, the communication protocol may include the Advanced Technology Attachment (ATA) protocol. The ATA protocol may include a Serial Advanced Technology Attachment (SATA) interface, a Parallel Advanced Technology Attachment (PATA) interface, an External SATA (ESATA) interface, and the like. In other example embodiments, the communication protocol may include the Universal Serial Bus (USB) protocol. Data to be received or transmitted from or to the host through the host interface 4220 may be provided through the buffer memory 4230 without traversing a CPU bus under the control of the CPU 4210.

Der Pufferspeicher 4230 kann verwendet werden, um vorübergehend Daten, welche zwischen einer externen Vorrichtung und den Flashspeichervorrichtungen 4100 übertragen werden, zu speichern. Der Pufferspeicher 4230 kann verwendet werden, um Programme, welche durch die CPU 4210 auszuführen sind, zu speichern. Der Pufferspeicher 4230 kann unter Verwendung eines SRAM oder eines DRAM implementiert sein. Der Pufferspeicher 4230 in 30 kann innerhalb des SSD-Controllers 4200 enthalten sein. Die erfinderischen Konzepte sind jedoch nicht darauf beschränkt. Der Pufferspeicher 4230 gemäß einer Ausführungsform des erfinderischen Konzepts kann außerhalb des SSD-Controllers 4200 vorgesehen sein.Buffer memory 4230 may be used to temporarily store data being transferred between an external device and flash memory devices 4100 . Buffer memory 4230 may be used to store programs to be executed by CPU 4210. Buffer memory 4230 may be implemented using SRAM or DRAM. The buffer memory 4230 in 30 can be contained within the SSD controller 4200. However, the inventive concepts are not limited to this. The buffer memory 4230 according to an embodiment of the inventive concept may be provided outside the SSD controller 4200 .

Die Flash-Schnittstelle 4240 kann konfiguriert sein, um zwischen dem SSD-Controller 4200 und den Flashspeichervorrichtungen 4100, welche als Speichervorrichtungen verwendet werden, eine Schnittstelle zu bilden. Die Flash-Schnittstelle 4240 kann konfiguriert sein, um NAND-Flashspeicher, One-NAND-Flashspeicher, Multilevel-Flashspeicher oder Singlelevel-Flashspeicher zu unterstützen.The flash interface 4240 may be configured to interface between the SSD controller 4200 and the flash memory devices 4100 used as storage devices. The flash interface 4240 can be configured to support NAND flash memory, one NAND flash memory, multilevel flash memory, or single level flash memory.

Das SSD 400 gemäß einer Ausführungsform der erfinderischen Konzepte kann die Zuverlässigkeit von Daten durch ein Speichern von Zufallsdaten bei einer Programmieroperation verbessern. Eine detailliertere Beschreibung des SSD 4000 ist im U.S. Patent Nr. 8,027,194 und den U.S. Patentoffenlegungsschriften 2007/0106836 und 2010/0082890 offenbart, deren gesamte Inhalte hierin durch Bezugnahme mit eingebunden sind.The SSD 400 according to an embodiment of the inventive concepts can improve the reliability of data by storing random data in a programming operation. A more detailed description of the SSD 4000 can be found in US Patent No. 8,027,194 and US Patent Publications 2007/0106836 and 2010/0082890 disclosed, the entire contents of which are incorporated herein by reference.

31 ist ein Blockschaltbild, welches schematisch ein Berechnungssystem bzw. Computersystem veranschaulicht, welches ein SSD in 30 gemäß einer Ausführungsform der erfinderischen Konzepte aufweist. Bezug nehmend auf 30 kann ein Computersystem 5000 wenigstens eine CPU 5100, eine nichtflüchtige Speichervorrichtung 5200, einen RAM 5300, eine Eingabe-/Ausgabe (I/O = Input/Output)-Vorrichtung 5400 und ein SSD 4000 aufweisen. 31 is a block diagram that schematically illustrates a computing system or computer system that includes an SSD in 30 according to an embodiment of the inventive concepts. Referring to 30 For example, a computer system 5000 may include at least a CPU 5100, a non-volatile memory device 5200, a RAM 5300, an input/output (I/O) device 5400, and an SSD 4000.

Die CPU 5100 kann mit einem Systembus verbunden sein. Die nichtflüchtige Speichervorrichtung 5200 kann Daten speichern, welche verwendet werden, um das Computersystem 5000 zu treiben bzw. betreiben. Hierin können die Daten eine Startbefehlssequenz oder eine Basis I/O-System (BIOS)-Sequenz aufweisen. Der RAM 5300 kann vorübergehend Daten speichern, welche während der Ausführung der CPU 5100 erzeugt werden. Die I/O-Vorrichtung 5400 kann mit dem Systembus durch eine I/O-Vorrichtungsschnittstelle wie beispielsweise Tastaturen, Zeigevorrichtungen (beispielsweise Maus), Monitore, Modems und dergleichen verbunden sein. Das SSD 5500 kann eine lesbare Speichervorrichtung sein und kann gleich wie das SSD 4000 der 30 implementiert sein.The CPU 5100 can be connected to a system bus. Non-volatile storage device 5200 may store data used to operate computer system 5000 . Herein, the data may include a boot command sequence or a basic I/O system (BIOS) sequence. RAM 5300 may temporarily store data generated during CPU 5100 execution. The I/O device 5400 may be connected to the system bus through an I/O device interface such as keyboards, pointing devices (e.g., mouse), monitors, modems, and the like. The SSD 5500 can be a readable storage device and can be used the same as the SSD 4000 of the 30 be implemented.

32 ist ein Blockschaltbild, welches schematisch eine elektronische Vorrichtung, welche ein SSD in 30 gemäß einer Ausführungsform des erfinderischen Konzepts aufweist, veranschaulicht. Bezug nehmend auf 32 kann eine elektronische Vorrichtung 6000 einen Prozessor 6100, einen ROM 6200, einen RAM 6300, eine Flash-Schnittstelle 6400 und wenigstens ein SSD 6500 aufweisen. 32 Fig. 12 is a block diagram schematically showing an electronic device including an SSD in 30 according to an embodiment of the inventive concept. Referring to 32 For example, an electronic device 6000 may include a processor 6100, a ROM 6200, a RAM 6300, a flash interface 6400, and at least one SSD 6500.

Der Prozessor 6100 kann auf den RAM 6300 zugreifen, um Firmware-Codes oder andere Codes auszuführen. Ebenso kann der Prozessor 6100 auf den ROM 6200 zugreifen, um feste Befehlssequenzen wie beispielsweise eine Startbefehlssequenz und eine Basis I/O-System (BIOS)-Sequenz auszuführen. Die Flash-Schnittstelle 6400 kann konfiguriert sein, um eine Schnittstelle zwischen der elektronischen Vorrichtung 6000 und dem SSD 6500 zu bilden. Das SSD 6500 kann von der elektronischen Vorrichtung 6000 abnehmbar sein. Das SSD 6500 kann gleich wie das SSD 4000 der 30 implementiert sein.The processor 6100 can access the RAM 6300 to execute firmware code or other code. Likewise, the processor 6100 can access the ROM 6200 to execute fixed command sequences such as a boot command sequence and a basic I/O system (BIOS) sequence. The flash interface 6400 may be configured to interface between the electronic device 6000 and the SSD 6500 . The SSD 6500 may be detachable from the electronic device 6000. The SSD 6500 can be used in the same way as the SSD 4000 30 be implemented.

Die elektronische Vorrichtung 6000 kann Mobiltelefone, persönliche digitale Assistenten (PDAs = Personal Digital Assistants), digitale Kameras, Camcorder, tragbare Audio-Player (beispielsweise MP3) und tragbare Media-Spieler (PMPs = Portable Media Players) aufweisen.Electronic device 6000 may include cellular phones, personal digital assistants (PDAs), digital cameras, camcorders, portable audio players (e.g., MP3), and portable media players (PMPs).

33 ist ein Blockschaltbild, welches schematisch ein Serversystem veranschaulicht, welches ein SSD in 30 gemäß einer Ausführungsform der erfinderischen Konzepte aufweist. Bezug nehmend auf 33 kann ein Serversystem 7000 einen Server 7100 und wenigstens ein SSD 7200 aufweisen, welches Daten, welche zum Betreiben des Servers 7100 verwendet werden, speichert. Das SSD 7200 kann gleich konfiguriert sein wie ein SSD 4000 der 30. 33 is a block diagram that schematically illustrates a server system that has an SSD in 30 according to an embodiment of the inventive concepts. Referring to 33 For example, a server system 7000 may include a server 7100 and at least one SSD 7200 that stores data used to operate the server 7100. The SSD 7200 can be configured in the same way as an SSD 4000 30 .

Der Server 7100 kann ein Anwendungs-Kommunikationsmodul 7110, ein Datenverarbeitungsmodul 7120, ein Upgrade-Modul 7130, ein Planungszentrum 7140, ein Lokal-Ressourcen-Modul 7150 und ein Reparations-Informationsmodul 7160 aufweisen. Das Anwendungs-Kommunikationsmodul 7110 kann konfiguriert sein, um mit einem Computersystem, welches mit einem Netzwerk und dem Server 7100 verbunden ist, zu kommunizieren, oder es dem Server 7100 zu ermöglichen, mit dem SSD 7200 zu kommunizieren. Das Anwendungs-Kommunikationsmodul 7110 kann Daten oder Informationen, welche durch eine Verwender-Schnittstelle vorgesehen sind, zu dem Datenverarbeitungsmodul 7120 übertragen.The server 7100 can have an application communication module 7110, a data processing module 7120, an upgrade module 7130, a planning center 7140, a local resources module 7150 and a repair information module 7160. The application communication module 7110 can be configured to communicate with a computer system connected to a network and the server 7100, or to enable the server 7100 to communicate with the SSD 7200. The application communication module 7110 can transfer data or information provided by a user interface to the data processing module 7120 .

Das Datenverarbeitungsmodul 7120 kann mit dem Lokal-Ressourcenmodul 7150 verbunden sein. Hier kann das Lokal-Ressourcenmodul 7150 eine Liste von Reparaturwerkstätten/Händlern/technische Informationen für einen Verwender auf der Basis von Informationen oder Daten, welche dem Server 7100 zugeführt werden, vorsehen. Das Upgrade-Modul 7130 kann mit dem Datenverarbeitungsmodul 7120 eine Schnittstelle bilden. Basierend auf Informationen oder Daten, welche von dem SSD 7200 empfangen werden, kann das Upgrade-Modul 7130 Upgrades einer Firmware, eines Reset-Codes, eines Diagnosesystems oder andere Informationen über elektronische Anwendungen bzw. Einrichtungen durchführen.The data processing module 7120 can be connected to the local resource module 7150 . Here, the local resource module 7150 can provide a list of repair shops/dealers/technical information for a user based on information or data supplied to the server 7100 . The upgrade module 7130 can interface with the data processing module 7120 . Based on information or data received from the SSD 7200, the upgrade module 7130 may upgrade firmware, a reset code, a diagnostic system, or other electronic appliance information.

Das Planungszentrum 7140 kann Echtzeit-Optionen für den Verwender basierend auf Informationen oder Daten, welche dem Server 7100 zugeführt werden, vorsehen. Das Reparatur-Informationsmodul 7160 kann mit dem Datenverarbeitungsmodul 7120 eine Schnittstelle bilden. Das Reparatur-Informationsmodul 7160 kann verwendet werden, um reparaturbezogene Informationen (beispielsweise Audio-, Video- oder Dokumenten-Files) für den Verwender vorzusehen. Das Datenverarbeitungsmodul 7120 kann Informationen bezogen auf die Informationen, welche von dem SSD 7200 empfangen werden, packen. Die gepackten Informationen können zu den SSD 7200 übertragen werden oder können dem Verwender angezeigt werden.Scheduling center 7140 may provide real-time options to the user based on information or data provided to server 7100. Repair information module 7160 may interface with data processing module 7120 . The repair information module 7160 can be used to provide repair-related information (e.g., audio, video, or document files) to the user. The data processing module 7120 can pack information related to the information received from the SSD 7200 . The packed information can be transmitted to the SSD 7200 or can be displayed to the user.

Die erfinderischen Konzepte sind auf mobile Produkte (beispielsweise Smartphones, Mobiltelefone etc.) anwendbar.The inventive concepts are applicable to mobile products (e.g. smartphones, mobile phones, etc.).

34 ist ein Blockschaltbild, welches schematisch eine mobile Vorrichtung gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 34 kann eine mobile Vorrichtung 8000 eine Kommunikationseinheit 8100, einen Controller bzw. eine Steuerung 8200, eine Speichereinheit 8300, eine Anzeigeeinheit 8400, eine Touchscreen-Einheit 8500 und eine Audio-Einheit 8600 aufweisen. 34 12 is a block diagram schematically illustrating a mobile device according to an embodiment of the inventive concepts. Referring to 34 For example, a mobile device 8000 may have a communication unit 8100, a controller 8200, a storage unit 8300, a display unit 8400, a touch screen unit 8500, and an audio unit 8600.

Die Speichereinheit 8300 kann wenigstens ein DRAM 8310 und wenigstens eine nichtflüchtige Speichervorrichtung 8330 wie beispielsweise moviNAND oder eMMC aufweisen. Die nichtflüchtige Speichervorrichtung 8330 kann eine Überschreiboperation vor einer Löschoperation durchführen, wie unter Bezugnahme auf die 1 bis 26 beschrieben ist.The storage unit 8300 may include at least one DRAM 8310 and at least one non-volatile storage device 8330 such as moviNAND or eMMC. The non-volatile memory device 8330 may perform an overwrite operation before an erase operation as referred to in FIG 1 until 26 is described.

Eine detaillierte Beschreibung der mobilen Vorrichtung ist in den US. Patentpublikationen Nr. 2010/0010040 , 2010/0062715 , 2010/00199081 und 2010/0309237 offenbart, deren gesamte Inhalte hierin durch Bezugnahme mit eingebunden sind.A detailed description of the mobile device is in U.S. Patent Publication Nos. 2010/0010040 , 2010/0062715 , 2010/00199081 and 2010/0309237 disclosed, the entire contents of which are incorporated herein by reference.

Das erfinderische Konzept ist auf Tablet-Produkte anwendbar.The inventive concept is applicable to tablet products.

35 ist ein Blockschaltbild, welches schematisch eine handgeführte elektronische Vorrichtung gemäß einer Ausführungsform der erfinderischen Konzepte veranschaulicht. Bezug nehmend auf 35 kann eine handgeführte elektronische Vorrichtung 9000 wenigstens ein computerlesbares Medium 9020, ein Verarbeitungssystem 9040, ein Eingabe-/Ausgabe-Untersystem 9060, eine Funkfrequenzschaltung 9080 und eine Audioschaltung 9100 aufweisen. Jeweilige konstituierende Elemente können durch wenigstens einen Kommunikationsbus oder eine Signalleitung 9030 verbunden sein. 35 12 is a block diagram schematically illustrating a handheld electronic device according to an embodiment of the inventive concepts. Referring to 35 For example, handheld electronic device 9000 may include at least computer-readable medium 9020, processing system 9040, input/output subsystem 9060, radio frequency circuitry 9080, and audio circuitry 9100. Respective constituent elements may be connected by at least one communication bus or signal line 9030.

Die handgeführte elektronische Vorrichtung 1000 kann eine tragbare elektronische Vorrichtung einschließlich eines handgeführten Computers, eines Tablet-Computers, eines Mobiltelefons, eines Mediaplayers, eines PDA oder einer Kombination von zweien oder mehreren davon sein. Hierin kann das wenigstens eine computerlesbare Medium 9020 eine Überschreiboperation vor einer Löschoperation durchführen, wie unter Bezugnahme auf die 1 bis 26 beschrieben ist. Eine detaillierte Beschreibung der handgeführten elektronischen Vorrichtung 9000 ist im US-Patent Nr. 7,509,588 offenbart, dessen Gesamtheit hierin durch Bezugnahme mit einbezogen ist.The handheld electronic device 1000 may be a portable electronic device including a handheld computer, a tablet computer, a cell phone, a media player, a PDA, or a combination of two or more thereof. Herein, the at least one computer-readable medium 9020 may perform an overwrite operation before an erase operation, as referred to in FIG 1 until 26 is described. A detailed description of the handheld electronic device 9000 is in FIG U.S. Patent No. 7,509,588 disclosed, the entirety of which is incorporated herein by reference.

Ein Speichersystem oder eine Speichervorrichtung gemäß der erfinderischen Konzepte können in verschiedenen Typen von Gehäusen angebracht sein. Beispiele der Gehäuse des Speichersystems oder der Speichervorrichtung gemäß dem erfinderischen Konzept können Package on Package (PoP), Ball Grid Arrays (BGAs), Chip Scale Packages (CSPs), Plastic Leaded Chip Carrier (PLCC), Plastic Dual In-line Package (PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board (COB), Ceramic Dual In-line Package (CERDIP), Plastic Metric Quad Flat Pack (MQFP), Thin Quad Flat Pack (TQFP), Small Outline Integrated Circuit (SOIC), Shrink Small Outline Package (SSOP), Thin Small Outline Package (TSOP), System In Package (SIP), Multi Chip Package (MCP), Wafer-level Fabricated Package (WFP), und Wafer-level Processed Stack Package (WSP) aufweisen.A storage system or storage device according to the inventive concepts can be mounted in different types of housings. Examples of the packages of the memory system or the memory device according to the inventive concept can be Package on Package (PoP), Ball Grid Arrays (BGAs), Chip Scale Packages (CSPs), Plastic Leaded Chip Carrier (PLCC), Plastic Dual In-line Package (PDIP ), Die in Waffle Pack, Die in Wafer Form, Chip On Board (COB), Ceramic Dual In-line Package (CERDIP), Plastic Metric Quad Flat Pack (MQFP), Thin Quad Flat Pack (TQFP), Small Outline Integrated Circuit (SOIC), Shrink Small Outline Package (SSOP), Thin Small Outline Package (TSOP), System In Package (SIP), Multi Chip Package (MCP), Wafer-level Fabricated Package (WFP), and Wafer-level Processed Stack Package (WSP) have.

Claims (32)

Verfahren, das Folgendes aufweist: ein Überschreiben einer Speicherzelle, welche m-Bit-Daten speichert, um n-Bit-Daten zu speichern, wobei n kleiner als oder gleich m ist, wobei die Speicherzelle einen einer ersten Mehrzahl von Programmzuständen hat, wenn sie die m-Bit-Daten speichert, und wobei die Speicherzelle einen einer zweiten Mehrzahl von Programmzuständen hat, wenn sie die n-Bit-Daten speichert, wobei die zweite Mehrzahl von Programmzuständen wenigstens einen Programmzustand (EP1; EP2; EST) aufweist, der nicht in der ersten Mehrzahl von Programmzuständen ist, und wobei der wenigstens eine Programmzustand (EP1; EP2; EST) eine Schwellenspannungsverteilung hat, die höhere Schwellenspannungen aufweist als die Schwellenspannungsverteilungen der ersten Mehrzahl von Programmzuständen.A method that includes: overwriting a memory cell storing m-bit data to store n-bit data, where n is less than or equal to m, the memory cell having one of a first plurality of program states when storing the m-bit data stores, and wherein the memory cell has one of a second plurality of program states when storing the n-bit data, the second plurality of program states having at least one program state (EP1; EP2; EST) that is not in the first plurality of program states and wherein the at least one program state (EP1; EP2; EST) has a threshold voltage distribution that has higher threshold voltages than the threshold voltage distributions of the first plurality of program states. Verfahren nach Anspruch 1, wobei der Programmzustand (EP1; EP2; EST), der nicht in der ersten Mehrzahl von Programmzuständen ist, eine Schwellenspannungsverteilung größer als die Schwellenspannungsverteilung der ersten Mehrzahl von Programmzuständen hat.procedure after claim 1 , where the program state (EP1; EP2; EST) that is not in the first plurality of program states has a threshold voltage distribution greater than the threshold voltage distribution of the first plurality of program states. Verfahren nach Anspruch 1, wobei die zweite Mehrzahl von Programmzuständen mehr als einen Programmzustand (EP1; EP2; EST) aufweist, der nicht in der ersten Mehrzahl von Programmzuständen ist.procedure after claim 1 , wherein the second plurality of program states includes more than one program state (EP1; EP2; EST) that is not in the first plurality of program states. Verfahren nach Anspruch 1, weiterhin aufweisend: ein Überschreiben der Speicherzelle, welche n-Bit-Daten speichert, um p-Bit-Daten zu speichern, wobei p kleiner als oder gleich zu n ist, wobei die Speicherzelle eine dritte Mehrzahl von Speicherzuständen hat, wenn sie die p-Bit-Daten speichert, und die dritte Mehrzahl von Programmzuständen wenigstens einen Programmzustand aufweist, der nicht in der ersten Mehrzahl und der zweiten Mehrzahl von Programmzuständen ist.procedure after claim 1 , further comprising: rewriting the memory cell storing n-bit data to store p-bit data, where p is less than or equal to n, the memory cell having a third plurality of storage states when it is the p stores bit data, and the third plurality of program states includes at least one program state that is not in the first plurality and the second plurality of program states. Verfahren nach Anspruch 1, wobei ein Speicher die Speicherzelle aufweist, wobei der Speicher in Blöcke von Speicherzellen unterteilt ist, und weiterhin Folgendes aufweisend: ein Bestimmen, ob ein ungültiger Block der Blöcke überschreibbar ist, wobei der ungültige Block ungültige Daten speichert; und wobei das Überschreiben erlaubt ist, wenn das Bestimmen bestimmt, dass der ungültige Block überschreibbar ist.procedure after claim 1 wherein a memory comprises the memory cell, the memory being partitioned into blocks of memory cells, and further comprising: determining whether an invalid block of the blocks is rewritable, the invalid block storing invalid data; and wherein the overwriting is allowed if the determining determines that the invalid block is overwritable. Verfahren nach Anspruch 5, wobei das Bestimmen basierend auf einer Anzahl von reinen Blöcken der Blöcke bestimmt, dass der ungültige Block überschreibbar ist.procedure after claim 5 , wherein the determining determines that the invalid block is rewritable based on a clean block count of the blocks. Verfahren nach Anspruch 5, wobei das Bestimmen basierend auf einer Anzahl von freien Seiten in dem ungültigen Block, wobei jede freie Seite keine Daten speichert, bestimmt, dass der ungültige Block überschreibbar ist.procedure after claim 5 , wherein the determining determines that the invalid block is rewritable based on a number of free pages in the invalid block, each free page storing no data. Verfahren nach Anspruch 5, wobei das Bestimmen basierend auf einem Gesundheitszustand des ungültigen Blocks, wobei der Gesundheitszustand ein Niveau von Verschlechterung des ungültigen Blockes anzeigt, bestimmt, dass der ungültige Block überschreibbar ist.procedure after claim 5 , wherein the determining determines that the invalid block is rewritable based on a health of the invalid block, wherein the health indicates a level of degradation of the invalid block. Verfahren nach Anspruch 8, wobei der Gesundheitszustand auf einer Anzahl von Programmier-/Löschzyklen basiert ist, welche der ungültige Block durchlaufen hat.procedure after claim 8 , where the health status is based on a number of program/erase cycles that the invalid block has undergone. Verfahren nach Anspruch 8, wobei der Gesundheitszustand auf einer Bit-Fehlerrate für Daten basiert ist, welche gelesen wurden, als der ungültige Block ein gültiger Block war.procedure after claim 8 , where the health status is based on a bit error rate for data read when the invalid block was a valid block. Verfahren nach Anspruch 5, wobei das Bestimmen basierend auf einer Anzahl von reinen Blöcken in dem Speicher und einem Gesundheitszustand des ungültigen Blocks, wobei der Gesundheitszustand ein Niveau von Verschlechterung des ungültigen Blocks angibt, bestimmt, dass der ungültige Block überschreibbar ist.procedure after claim 5 , wherein the determining determines that the invalid block is rewritable based on a number of clean blocks in the memory and a health of the invalid block, wherein the health indicates a level of degradation of the invalid block. Verfahren nach Anspruch 1, wobei ein Speicher die Speicherzelle aufweist, die Speicherzelle in Blöcke von Speicherzellen unterteilt ist, jeder Block in Seiten unterteilt ist, und weiterhin aufweisend: ein Bestimmen, ob eine ungültige Seite, welche die Speicherzelle aufweist, überschreibbar ist, wobei die ungültige Seite ungültig gemachte Daten speichert; und wobei das Überschreiben auf der ungültigen Seite erlaubt ist, wenn das Bestimmen bestimmt, dass die ungültige Seite, die die Speicherzelle aufweist, überschreibbar ist.procedure after claim 1 wherein a memory comprises the memory cell, the memory cell is divided into blocks of memory cells, each block is divided into pages, and further comprising: determining whether an invalid page comprising the memory cell is overwritable, the invalid page being invalidated stores data; and wherein the overwriting on the invalid page is permitted when the determining determines that the invalid page including the memory cell is rewritable. Verfahren nach Anspruch 5, weiterhin aufweisend: ein Speichern einer ersten Anzeige, welche anzeigt, dass der ungültige Block überschreibbar ist, wenn das Bestimmen bestimmt, dass der ungültige Block überschreibbar ist.procedure after claim 5 , further comprising: if the determining determines that the invalid block is rewritable, storing a first indication indicating that the invalid block is rewritable. Verfahren nach Anspruch 13, weiterhin aufweisend: ein Speichern einer zweiten Anzeige, welche nach dem Überschreiben anzeigt, dass wenigstens einer der Blöcke überschrieben worden ist.procedure after Claim 13 , further comprising: storing a second indication that, after the overwriting, indicates that at least one of the blocks has been overwritten. Verfahren nach Anspruch 14, weiterhin aufweisend: ein Speichern einer dritten Anzeige, welche nach dem Überschreiben eine Anzahl von Malen anzeigt, die der wenigstens eine der Blöcke seit dem letzten Löschen überschrieben worden ist.procedure after Claim 14 , further comprising: storing a third indication that, after being overwritten, indicates a number of times the at least one of the blocks has been overwritten since the last erasure. Speichersystem, das Folgendes aufweist: einen Speicher, welcher wenigstens einen Speicherstrang aufweist, wobei der Speicherstrang eine Mehrzahl von Speicherzellen (MCO, ..., MC7), welche in Serie verbunden sind, aufweist, wobei die Mehrzahl von Speicherzellen (MCO, .., MC7) vertikal hinsichtlich eines Substrats (111) angeordnet ist, wobei die Mehrzahl von Speicherzellen (MCO, ..., MC7) in wenigstens eine erste Gruppe (MC4, MC5, MC6, MC7) von Speicherzellen und eine zweite Gruppe (MCO, MC1, MC2, MC3) von Speicherzellen unterteilt ist, wobei die erste Gruppe (MC4, MC5, MC6, MC7) von Speicherzellen weiter von dem Substrat (111) angeordnet ist als die zweite Gruppe (MCO, MC1, MC2, MC3) von Speicherzellen; und einen Controller (200; 1200; 2300; 3200; 4200; 8200), welcher konfiguriert ist, um Daten in die Mehrzahl von Speicherzellen (MCO, ..., MC7) zu programmieren basierend auf einem ersten Satz von Schwellenspannungsverteilungen, und wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um Daten in Speicherzellen der ersten Gruppe (MC4, MC5, MC6, MC7) basierend auf einem zweiten Satz von Schwellenspannungsverteilungen zu überschreiben, wobei eine Menge von überschriebenen Daten in einer Speicherzelle der ersten Gruppe(MC4, MC5, MC6, MC7) kleiner ist als oder gleich zu einer Menge von programmierten Daten, wobei der zweite Satz von Schwellenspannungsverteilungen wenigstens eine Schwellenspannungsverteilung aufweist, die nicht in dem ersten Satz von Schwellenverteilungen ist.A memory system comprising: a memory having at least one memory string, the memory string having a plurality of memory cells (MCO, ..., MC7) connected in series, the plurality of memory cells (MCO, ..., .. , MC7) is arranged vertically with respect to a substrate (111), the plurality of memory cells (MCO, ..., MC7) being divided into at least a first group (MC4, MC5, MC6, MC7) of memory cells and a second group (MCO, MC1, MC2, MC3) of memory cells, the first group (MC4, MC5, MC6, MC7) of memory cells being located further from the substrate (111) than the second group (MCO, MC1, MC2, MC3) of memory cells ; and a controller (200; 1200; 2300; 3200; 4200; 8200) configured to program data into the plurality of memory cells (MCO, ..., MC7) based on a first set of threshold voltage distributions, and wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured to overwrite data in memory cells of the first group (MC4, MC5, MC6, MC7) based on a second set of threshold voltage distributions, wherein an amount of overwritten data in a memory cell of the first group (MC4, MC5, MC6, MC7) is less than or equal to a set of programmed data, wherein the second set of threshold voltage distributions includes at least one threshold voltage distribution that is not in the first set of threshold distributions. Speichersystem nach Anspruch 16, wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um Speicherzellen in der zweiten Gruppe (MCO, MC1, MC2, MC3) nicht zu überschreiben.storage system after Claim 16 , wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured not to overwrite memory cells in the second group (MCO, MC1, MC2, MC3). Speichersystem nach Anspruch 16, wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um Daten in Speicherzellen der zweiten Gruppe (MCO, MC1, MC2, MC3) basierend auf einem dritten Satz von Schwellenspannungsverteilungen zu überschreiben, wobei eine Menge von überschriebenen Daten in einer Speicherzelle der zweiten Gruppe (MCO, MC1, MC2, MC3) kleiner ist als oder gleich zu einer Menge von programmierten Daten, wobei der dritte Satz von Schwellenspannungsverteilungen wenigstens eine Schwellenspannungsverteilung aufweist, welche nicht in dem ersten Satz von Schwellenverteilungen ist.storage system after Claim 16 , wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured to overwrite data in memory cells of the second group (MCO, MC1, MC2, MC3) based on a third set of threshold voltage distributions, wherein a set of overwritten data in a memory cell of the second group (MCO, MC1, MC2, MC3) is less than or equal to an amount of programmed data, wherein the third set of threshold voltage distributions has at least one threshold voltage distribution that is not in the first set of threshold distributions. Speichersystem nach Anspruch 18, wobei der dritte Satz von Schwellenverteilungen sich von dem zweiten Satz von Schwellenverteilungen unterscheidet.storage system after Claim 18 , where the third set of threshold distributions is different than the second set of threshold distributions. Speichersystem nach Anspruch 16, wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um die Speicherzellen der ersten Gruppe (MC4, MC5, MC6, MC7) derart zu überschreiben, dass m-Bit-Daten wenigstens teilweise durch Schwellenspannungsverteilungen in wenigstens zwei Speicherzellen der ersten Gruppe (MC4, MC5, MC6, MC7) repräsentiert sind.storage system after Claim 16 , wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured to overwrite the memory cells of the first group (MC4, MC5, MC6, MC7) such that m-bit data is at least partially defined by threshold voltage distributions in at least two memory cells of the first group (MC4, MC5, MC6, MC7) are represented. Speichersystem nach Anspruch 20, wobei die wenigstens zwei Speicherzellen der ersten Gruppe (MC4, MC5, MC6, MC7) Speicherzellen an verschiedenen vertikalen Örtlichkeiten innerhalb ihrer jeweiligen Speicherstränge aufweisen.storage system after claim 20 , wherein the at least two memory cells of the first group (MC4, MC5, MC6, MC7) have memory cells at different vertical locations within their respective memory lanes. Speichersystem nach Anspruch 16, wobei der Speicher eine Mehrzahl von Speichersträngen aufweist und die Speicherzellen der Mehrzahl von Speichersträngen in Blöcke unterteilt sind; der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um Zustandsinformationen für wenigstens einen der Blöcke zu speichern, wobei die Zustandsinformationen einen eines reinen Zustands, eines programmierten Zustands, eines ungültigen Zustands, eines überschreibbaren Zustands und eines überschriebenen Zustandes anzeigen, wobei der reine Zustand anzeigt, dass der Block gelöscht ist, der programmierte Zustand anzeigt, dass der Block gültige Daten speichert, der ungültige Zustand anzeigt, dass der Block ungültige Daten speichert, der überschreibbare Zustand anzeigt, dass ein Überschreiben von Daten ohne ein Löschen ungültiger Daten, welche in dem Block gespeichert sind, erlaubt ist, und der überschriebene Zustand anzeigt, dass wenigstens ein Teil der Daten, welche in dem Block gespeichert sind, ohne ein Löschen des Blocks überschrieben worden ist.storage system after Claim 16 , wherein the memory has a plurality of memory strings and the memory cells of the plurality of memory strings are divided into blocks; the controller (200; 1200; 2300; 3200; 4200; 8200) is configured to store state information for at least one of the blocks, the state information being one of a clean state, a programmed state, an invalid state, an overwritable state and an overwritten state, where the pure state indicates that the block is erased, the programmed state indicates that the block stores valid data, the invalid state indicates that the block stores invalid data, the rewritable state indicates that overwriting data without erasing invalid data stored in the block is allowed, and the overwritten state indicates that at least part of the data stored in the block has been overwritten without erasing the block. Speichersystem nach Anspruch 22, wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um Speicherzellen in der zweiten Gruppe (MCO, MC1, MC2, MC3) nicht zu überschreiben.storage system after Claim 22 , wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured not to overwrite memory cells in the second group (MCO, MC1, MC2, MC3). Speichersystem nach Anspruch 22, wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um ein Ändern der Zustandsinformationen für den Block in den überschreibbaren Zustand nur zu erlauben, wenn ein gegenwärtiger Zustand des Blocks der ungültige Zustand ist.storage system after Claim 22 wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured to allow changing the state information for the block to the rewritable state only when a current state of the block is the invalid state. Speichersystem nach Anspruch 22, wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um Daten in dem Block nur zu überschreiben, wenn die Zustandsinformationen des Blocks den überschreibbaren Zustand anzeigen.storage system after Claim 22 , wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured to overwrite data in the block only if the state information of the block indicates the overwritable state. Speichersystem nach Anspruch 25, wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um die Zustandsinformationen des Blocks nach einem Überschreiben des Blocks in den überschriebenen Zustand zu ändern.storage system after Claim 25 , wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured to change the state information of the block to the overwritten state after an overwrite of the block. Speichersystem nach Anspruch 22, wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um eine Überschreibanzahl zu speichern, wenn die Zustandsinformationen den überschriebenen Zustand anzeigen, wobei die Überschreibanzahl eine Anzahl von Malen des Überschreibens anzeigt, seitdem der Block zuletzt gelöscht wurde.storage system after Claim 22 , wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured to store a rewrite count when the state information indicates the overwritten state, the rewrite count indicating a number of times of rewriting since the block was last erased became. Speichersystem nach Anspruch 22, wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um die Zustandsinformationen in dem Speicher zu speichern.storage system after Claim 22 , wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured to store the state information in the memory. Speichersystem nach Anspruch 28, wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um die Zustandsinformationen in einer Seite des Blocks zu speichern.storage system after claim 28 , wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured to store the state information in a page of the block. Speichersystem nach Anspruch 22, wobei der Controller (200; 1200; 2300; 3200; 4200; 8200) konfiguriert ist, um die Zustandsinformationen in dem Controller (200; 1200; 2300; 3200; 4200; 8200) zu speichern.storage system after Claim 22 , wherein the controller (200; 1200; 2300; 3200; 4200; 8200) is configured to store the state information in the controller (200; 1200; 2300; 3200; 4200; 8200). Speichersystem nach Anspruch 22, wobei der überschriebene Zustand anzeigt, dass der Block gültige Daten speichert.storage system after Claim 22 , where the overwritten state indicates that the block stores valid data. Speichersystem nach Anspruch 22, wobei der überschriebene Zustand anzeigt, dass der Block weniger Daten pro Speicherzelle speichert als während des programmierten Zustands gespeichert waren.storage system after Claim 22 , the overwritten state indicating that the block stores less data per memory cell than was stored during the programmed state.
DE102013100596.9A 2012-01-27 2013-01-22 Non-volatile memory system with programming and erasing methods and block management methods Active DE102013100596B4 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2012-0008370 2012-01-27
KR1020120008370A KR101832934B1 (en) 2012-01-27 2012-01-27 Nonvolatile memory device, memory system having the same and block management method, programming method and erasing method thereof
US13/746,640 US8891300B2 (en) 2012-01-27 2013-01-22 Nonvolatile memory device, memory system having the same and block managing method, and program and erase methods thereof
US13/746,640 2013-01-22

Publications (2)

Publication Number Publication Date
DE102013100596A1 DE102013100596A1 (en) 2013-08-01
DE102013100596B4 true DE102013100596B4 (en) 2023-09-07

Family

ID=48783849

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102013100596.9A Active DE102013100596B4 (en) 2012-01-27 2013-01-22 Non-volatile memory system with programming and erasing methods and block management methods

Country Status (2)

Country Link
CN (1) CN103226975B (en)
DE (1) DE102013100596B4 (en)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015069241A (en) * 2013-09-26 2015-04-13 キヤノン株式会社 Image processing apparatus, control apparatus, control method therefor, and program
CN106601297A (en) * 2015-10-14 2017-04-26 旺宏电子股份有限公司 Apparatus and method for improving threshold voltage distribution of nonvolatile storage apparatus
KR20170056767A (en) * 2015-11-13 2017-05-24 에스케이하이닉스 주식회사 Memory system and operating method of memory system
JP2018005959A (en) * 2016-06-30 2018-01-11 東芝メモリ株式会社 Memory system and writing method
US10083742B2 (en) * 2016-09-26 2018-09-25 Intel Corporation Method and apparatus for programming non-volatile memory using a multi-cell storage cell group to provide error location information for retention errors
US10521375B2 (en) * 2017-06-22 2019-12-31 Macronix International Co., Ltd. Controller for a memory system
CN109213433A (en) * 2017-07-07 2019-01-15 华为技术有限公司 The method and apparatus that data are written in flash memory device
KR102457662B1 (en) * 2017-10-31 2022-10-25 삼성전자주식회사 Operation method of memory controller and operation method of storage device
KR20220019574A (en) * 2020-08-10 2022-02-17 에스케이하이닉스 주식회사 Semiconductor memory device and operating method thereof
EP4184332A1 (en) * 2021-11-17 2023-05-24 Samsung Electronics Co., Ltd. Storage controller and storage device including the same

Citations (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070106836A1 (en) 2005-11-10 2007-05-10 Jeong-Woo Lee Semiconductor solid state disk controller
US20070201274A1 (en) 2000-01-06 2007-08-30 Super Talent Electronics Inc. Cell-Downgrading and Reference-Voltage Adjustment for a Multi-Bit-Cell Flash Memory
DE102008003055A1 (en) 2007-01-23 2008-07-31 Hynix Semiconductor Inc., Ichon Flash memory device and method of operating the same
US7509588B2 (en) 2005-12-30 2009-03-24 Apple Inc. Portable electronic device with interface reconfiguration mode
US20090310415A1 (en) 2008-06-11 2009-12-17 Jin Beom-Jun Non-volatile memory devices including vertical nand strings and methods of forming the same
US20100010040A1 (en) 2008-07-11 2010-01-14 Lyn Howard Jones Triazol Derivatives Useful For The Treatment of Diseases
US20100062715A1 (en) 2008-09-09 2010-03-11 Samsung Electronic Co., Ltd. Portable electronic apparatus functioning as pen-table and computer system using the same
US20100078701A1 (en) 2008-09-30 2010-04-01 Samsung Electronics Co., Ltd. Three-dimensional microelectronic devices including repeating layer patterns of different thicknesses
US20100082890A1 (en) 2008-09-30 2010-04-01 Jin Gyu Heo Method of managing a solid state drive, associated systems and implementations
US20100117141A1 (en) 2008-11-13 2010-05-13 Samsung Electronics Co., Ltd. Memory cell transistors having limited charge spreading, non-volatile memory devices including such transistors, and methods of formation thereof
US20100140685A1 (en) 2008-12-10 2010-06-10 Pil-Kyu Kang Nonvolatile Memory Devices
US20100199081A1 (en) 2009-01-30 2010-08-05 Samsung Electronics Co., Ltd. Apparatus and method for downloading contents using an interior mass storage in a portable terminal
US20100213527A1 (en) 2009-02-25 2010-08-26 Sunil Shim Integrated Circuit Memory Devices Having Selection Transistors with Nonuniform Threshold Voltage Characteristics
US20100224929A1 (en) 2009-03-06 2010-09-09 Samsung Electronics Co., Ltd. Nonvolatile memory device
US20100306583A1 (en) 2009-05-26 2010-12-02 Yong-June Kim Memory Systems and Defective Block Management Methods Related Thereto
US20100309237A1 (en) 2009-06-09 2010-12-09 Samsung Electronics Co., Ltd. Method and device for driving a plurality of display devices
US20100315875A1 (en) 2009-02-02 2010-12-16 Samsung Electronics Co., Ltd. Non-volatile memory device having vertical structure and method of operating the same
US20100322000A1 (en) 2009-06-19 2010-12-23 Samsung Electronics Co., Ltd. Programming methods for three-dimensional memory devices having multi-bit programming, and three-dimensional memory devices programmed thereby
US20110013458A1 (en) 2009-07-20 2011-01-20 Samsung Electronics Co., Ltd. Memory devices supporting simultaneous programming of multiple cells and programming methods thereof
US20110018036A1 (en) 2009-07-22 2011-01-27 Samsung Electronics Co., Ltd. Vertical non-volatile memory device and method of fabricating the same
KR20110037962A (en) 2008-05-21 2011-04-13 인사이트 코포레이션 Salts of 2-fluoro-n-methyl-4-[7-(quinolin-6-yl-methyl)-imidazo[1,2-b][1,2,4]triazin-2-yl]benzamide and processes related to preparing the same
KR20110037961A (en) 2008-06-23 2011-04-13 스미또모 가가꾸 가부시키가이샤 Polymeric compound containing metal complex residue and element comprising same
US8027194B2 (en) 1988-06-13 2011-09-27 Samsung Electronics Co., Ltd. Memory system and method of accessing a semiconductor memory device
US20120268988A1 (en) 2011-04-22 2012-10-25 Samsung Electronics Co., Ltd. Nonvolatile memory device including memory cell array with upper and lower word line groups

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4005761B2 (en) * 2000-06-09 2007-11-14 株式会社東芝 Semiconductor memory device
JP4017573B2 (en) 2003-07-17 2007-12-05 沖電気工業株式会社 diode
JP5170845B2 (en) 2006-03-06 2013-03-27 日本電気株式会社 Semiconductor memory device and operation method thereof
KR101544607B1 (en) * 2008-10-28 2015-08-17 삼성전자주식회사 Memory device and program method thereof
US8040713B2 (en) * 2009-01-13 2011-10-18 Seagate Technology Llc Bit set modes for a resistive sense memory cell array
KR101230918B1 (en) 2010-07-16 2013-02-07 중앙대학교 산학협력단 Anti-Cancer Composition Comprising Extract from Hylocereus undatus

Patent Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8027194B2 (en) 1988-06-13 2011-09-27 Samsung Electronics Co., Ltd. Memory system and method of accessing a semiconductor memory device
US20070201274A1 (en) 2000-01-06 2007-08-30 Super Talent Electronics Inc. Cell-Downgrading and Reference-Voltage Adjustment for a Multi-Bit-Cell Flash Memory
US20070106836A1 (en) 2005-11-10 2007-05-10 Jeong-Woo Lee Semiconductor solid state disk controller
US7509588B2 (en) 2005-12-30 2009-03-24 Apple Inc. Portable electronic device with interface reconfiguration mode
DE102008003055A1 (en) 2007-01-23 2008-07-31 Hynix Semiconductor Inc., Ichon Flash memory device and method of operating the same
KR20110037962A (en) 2008-05-21 2011-04-13 인사이트 코포레이션 Salts of 2-fluoro-n-methyl-4-[7-(quinolin-6-yl-methyl)-imidazo[1,2-b][1,2,4]triazin-2-yl]benzamide and processes related to preparing the same
US20090310415A1 (en) 2008-06-11 2009-12-17 Jin Beom-Jun Non-volatile memory devices including vertical nand strings and methods of forming the same
KR20110037961A (en) 2008-06-23 2011-04-13 스미또모 가가꾸 가부시키가이샤 Polymeric compound containing metal complex residue and element comprising same
US20100010040A1 (en) 2008-07-11 2010-01-14 Lyn Howard Jones Triazol Derivatives Useful For The Treatment of Diseases
US20100062715A1 (en) 2008-09-09 2010-03-11 Samsung Electronic Co., Ltd. Portable electronic apparatus functioning as pen-table and computer system using the same
US20100078701A1 (en) 2008-09-30 2010-04-01 Samsung Electronics Co., Ltd. Three-dimensional microelectronic devices including repeating layer patterns of different thicknesses
US20100082890A1 (en) 2008-09-30 2010-04-01 Jin Gyu Heo Method of managing a solid state drive, associated systems and implementations
US20100117141A1 (en) 2008-11-13 2010-05-13 Samsung Electronics Co., Ltd. Memory cell transistors having limited charge spreading, non-volatile memory devices including such transistors, and methods of formation thereof
US20100140685A1 (en) 2008-12-10 2010-06-10 Pil-Kyu Kang Nonvolatile Memory Devices
US20100199081A1 (en) 2009-01-30 2010-08-05 Samsung Electronics Co., Ltd. Apparatus and method for downloading contents using an interior mass storage in a portable terminal
US20100315875A1 (en) 2009-02-02 2010-12-16 Samsung Electronics Co., Ltd. Non-volatile memory device having vertical structure and method of operating the same
US20100213527A1 (en) 2009-02-25 2010-08-26 Sunil Shim Integrated Circuit Memory Devices Having Selection Transistors with Nonuniform Threshold Voltage Characteristics
US20100224929A1 (en) 2009-03-06 2010-09-09 Samsung Electronics Co., Ltd. Nonvolatile memory device
US20100306583A1 (en) 2009-05-26 2010-12-02 Yong-June Kim Memory Systems and Defective Block Management Methods Related Thereto
US20100309237A1 (en) 2009-06-09 2010-12-09 Samsung Electronics Co., Ltd. Method and device for driving a plurality of display devices
US20100322000A1 (en) 2009-06-19 2010-12-23 Samsung Electronics Co., Ltd. Programming methods for three-dimensional memory devices having multi-bit programming, and three-dimensional memory devices programmed thereby
US20110013458A1 (en) 2009-07-20 2011-01-20 Samsung Electronics Co., Ltd. Memory devices supporting simultaneous programming of multiple cells and programming methods thereof
US20110018036A1 (en) 2009-07-22 2011-01-27 Samsung Electronics Co., Ltd. Vertical non-volatile memory device and method of fabricating the same
US20120268988A1 (en) 2011-04-22 2012-10-25 Samsung Electronics Co., Ltd. Nonvolatile memory device including memory cell array with upper and lower word line groups
KR20120119779A (en) 2011-04-22 2012-10-31 삼성전자주식회사 Nonvolatile memory device

Also Published As

Publication number Publication date
DE102013100596A1 (en) 2013-08-01
CN103226975B (en) 2018-05-01
CN103226975A (en) 2013-07-31

Similar Documents

Publication Publication Date Title
DE102013100596B4 (en) Non-volatile memory system with programming and erasing methods and block management methods
US8891300B2 (en) Nonvolatile memory device, memory system having the same and block managing method, and program and erase methods thereof
DE102018125128B4 (en) Non-volatile memory device, method of operating a non-volatile memory device and memory device using the same
DE102014101267B4 (en) Storage system with non-volatile storage device and programming method thereof
DE102008005338B4 (en) An integrated circuit having a memory cell array and a method of reading a memory cell state using a plurality of sub-read operations
DE60319437T2 (en) NON-VOLATILE SEMICONDUCTOR MEMORY WITH CYCLE COUNTER VALVES STORING LARGE DEFICIENCIES
DE102011055714B4 (en) A method of programming a non-volatile memory device
DE102017104257A1 (en) Cell current based bit line voltage
DE102013108456B4 (en) Non-volatile memory device and programming method
DE102014103125A1 (en) A method and apparatus for optimizing the Log Likelihood Ratio (LLR) used for a nonvolatile memory device and for correcting errors in a nonvolatile memory device
DE102012112354A1 (en) Memory device and nonvolatile memory device and method of operation thereof
DE112008001151B4 (en) Multi-bit programming device and method for multi-bit programming
DE112019000165T5 (en) SIMULTANEOUSLY PROGRAMMING MULTIPLE CELLS FOR NON-VOLATILE STORAGE DEVICES
DE102011054181A1 (en) Non-volatile memory device and readout method thereof
DE102013108491A1 (en) Programming method for e.g. flash memories in digital systems, involves programming data into non-volatile memory cells of buffer area by programming operation, invalidating data stored in memory cells, and redefining delete state
DE102017104283A1 (en) DELETED SPEED BASED WORD CONTROL
DE102012104713A1 (en) Non-volatile memory device and erase method
DE102013109235A1 (en) An abnormal word line detector flash memory system and method for detecting an abnormal word line
DE102014100161A1 (en) Storage system and method of operation thereof
DE102008033511A1 (en) Method for programming a flash memory, flash memory and flash memory system
DE102010037064A1 (en) A nonvolatile memory device and system and method of programming a nonvolatile memory device
DE102015011991A1 (en) Coding scheme for vertical 3D flash memory
DE102019124668A1 (en) TRANSISTOR THRESHOLD VOLTAGE HOLDING IN 3D MEMORY
DE112016002631T5 (en) Memory function status monitoring
DE102020107504A1 (en) NON-VOLATILE MEMORY ARRAY THAT IS DRIVEN BY BOTH SIDES TO IMPROVE PERFORMANCE

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