DE102014100161A1 - Speichersystem und Betriebsverfahren davon - Google Patents

Speichersystem und Betriebsverfahren davon Download PDF

Info

Publication number
DE102014100161A1
DE102014100161A1 DE102014100161.3A DE102014100161A DE102014100161A1 DE 102014100161 A1 DE102014100161 A1 DE 102014100161A1 DE 102014100161 A DE102014100161 A DE 102014100161A DE 102014100161 A1 DE102014100161 A1 DE 102014100161A1
Authority
DE
Germany
Prior art keywords
sector
data
memory
read
target sector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102014100161.3A
Other languages
English (en)
Inventor
Bong-Kil Jung
Hyung-Gon Kim
Dae-Seok Byeon
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE102014100161A1 publication Critical patent/DE102014100161A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/08Address circuits; Decoders; Word-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/24Bit-line control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

Ein Verfahren des Betreibens eines Speichersystems (100, 1440), das eine nichtflüchtige Speichervorrichtung (60) und einen Speichercontroller (29, 200, 1020, 1010, 1110, 1441, 1511) umfasst, der die nichtflüchtige Speichervorrichtung (60) steuert, umfasst das Lesen von Daten (711, D1–Dm, DT1, DT2...) aus einer Speicherzellenanordnung (100) in einer Einheit einer Seite (110b, 400, 440), die eine Mehrzahl von Sektoren (411–41k, 610–880) umfasst; Durchführen eines Fehlerkorrekturdecodierens an den gelesenen Daten (711, D1–Dm, DT1, DT2...) in einer Einheit eines Sektors (411–41k, 610–880) der Seite (110b, 400, 440); Auswählen mindestens eines Zielsektors, der mindestens eine nichtkorrigierbaren Fehler umfasst, und Auswählen mindestens eines Erfolgs-Sektors (411–41k, 610–880), wobei alle Fehler des Erfolgs-Sektors (411–41k, 610–880), durch die Fehlerkorrekturdecodierung korrigierbar sind; Verhindern des Vorladen von Bitleitungen (BL, BL(1)–BL(m), 611–661), die mit dem mindestens einen Erfolgs-Sektor (411–41k, 610–880) verbunden sind, während Zielbitleitungen vorgeladen werden, die mit dem mindestens einen Zielsektor verbunden sind; und Durchführen einer erneuten Leseversuchsoperation für die Daten (711, D1–Dm, DT1, DT2...) in dem mindestens einen Zielsektor.

Description

  • Querverweis auf eine verwandte Anmeldung
  • Diese Anmeldung beansprucht die Priorität nach 35 USC § 119 der koreanischen Patentanmeldung Nr. 10-2013-0004222 , die am 15. Januar 2013 beim Koreanischen Patentamt (KIPO) eingereicht wurde, deren Inhalt hiermit durch Bezugnahme in seiner Gesamtheit eingeschlossen ist.
  • Hintergrund der Erfindung
  • 1. Technisches Gebiet
  • Beispielhafte Ausführungsformen beziehen sich im Allgemeinen auf eine Halbleiterspeichervorrichtung und insbesondere auf ein Speichersystem, das eine nichtflüchtige Speichervorrichtung und einen Speichercontroller umfasst und auf ein Verfahren zum Betreiben derselben.
  • 2. Beschreibung des Standes der Technik
  • Eine nichtflüchtige Speichervorrichtung wie eine Flash-Speichervorrichtung ist eine Art von elektrisch löschbarem, programmierbarem Festspeicher (EEPROM), bei dem eine Mehrzahl von Speicherbereichen durch eine Programmieroperation gelöscht oder programmiert wird. In einem typischen EEPROM kann ein Speicherbereich zu einer Zeit gelöscht oder programmiert werden. Dementsprechend kann die Flashspeichervorrichtung mit hoher Geschwindigkeit betrieben werden, wenn Systeme, welche die Flashspeichervorrichtung verwenden, gleichzeitig Daten in und aus verschiedenen Bereichen lesen und schreiben. Alle Arten von Flashspeicher und EEPROMs nutzen sich nach einer bestimmten Anzahl von Löschvorgängen ab durch eine Degradation einer Ladungsspeichervorrichtung, die verwendet wird, um Daten zu speichern, und durch eine Degradation einer Isolierschicht, welche die Ladungsspeichervorrichtung umgibt.
  • Die Flashspeichervorrichtung speichert eine Information in einem Siliziumchip, ohne Leistung zu benötigen, um die Information, die in dem Siliziumchip gespeichert ist, zu erhalten. Das heißt, sogar wenn der Strom, der dem Siliziumchip zugeführt wird, abgetrennt wird, bleibt die Information ohne Stromverbrauch erhalten. Darüber hinaus bietet die Flashspeichervorrichtung eine sehr kurze Lesezugriffszeit und Widerstandsfähigkeit gegen physische Erschütterung. Aufgrund dieser Eigenschaften wurde die Flashspeichervorrichtung ausgiebig als Datenspeichervorrichtung in batteriebetriebenen Geräten verwendet.
  • Zusammenfassung
  • Einige beispielhafte Ausführungsformen stellen ein Verfahren des Betriebs eines Speichersystems bereit, das in der Lage ist, den Stromverbrauch zu verringern.
  • Einige beispielhafte Ausführungsformen stellen ein Speichersystem bereit, das in der Lage ist, den Stromverbrauch zu verringern.
  • Nach einigen beispielhaften Ausführungsformen wird ein Verfahren zum Betreiben eines Speichersystems bereitgestellt, das eine nichtflüchtige Speichervorrichtung und einen Speichercontroller umfasst, der die nichtflüchtige Speichervorrichtung steuert. Das Verfahren kann aufweisen: Lesen von Daten von einer Speicherzellenanordnung in einer Einheit einer Speicherseite, die eine Mehrzahl von Sektoren umfasst; Durchführen eines Fehlerkorrekturdecodierens an den gelesenen Daten einer Einheit eines Sektors der Speicherseite; Auswählen mindestens eines Zielsektors, der mindestens einen unkorrigierbaren Fehler in den daraus gelesenen Daten enthält, und Auswählen mindestens eines Erfolgs-Sektors, wobei alle Fehler der gelesenen Daten des Erfolgs-Sektors, durch das Fehlerkorrekturdecodieren korrigierbar sind; Verhindern des Vorladens von Bitleitungen, die mit dem mindestens einen Erfolgs-Sektor, verbunden sind, während Zielbitleitungen vorgeladen werden, die mit dem mindestens einen Zielsektor verbunden sind; und Ausführen einer erneuten Leseversuchsoperation für Daten, die in dem mindestens einen Zielsektor gespeichert sind.
  • In einer Ausführungsform speichert jeder Sektor ein oder mehrere Paritätsbits, die auf Basis der in den Sektoren gespeicherten Daten erzeugt wurden, wobei eine Anzahl von Fehlern, die in dem mindestens einen Zielsektor umfasst sind, größer sein kann als eine Anzahl der Paritätsbits, und eine Anzahl von Fehlern, die in mindestens einem Erfolgs-Sektor umfasst sind, kleiner oder gleich sein kann wie die Anzahl der Paritätsbits.
  • In einer Ausführungsform kann die erneute Leseversuchsoperation für die zu lesenden Daten, die in dem mindestens einen Zielsektor gespeichert sind, wiederholt werden, bis die unkorrigierbaren Fehler durch das Fehlerkorrekturdecodieren korrigiert sind.
  • In einer Ausführungsform kann die erneute Leseversuchsoperation für die Daten in mindestens einem Zielsektor eine vorbestimmte Referenzanzahl von Wiederholungen wiederholt werden.
  • Das Verfahren kann ferner das Ausführen einer Lösch-Wiederauffrischungsoperation umfassen, um einen Speicherblock, der den mindestens einen Zielsektor umfasst, in einen anderen Speicherblock zu kopieren, wenn die erneute Leseversuchsoperation für die Daten, die in dem mindestens einen Zielsektor gespeichert sind, öfter wiederholt werden kann, als die vorbestimmte Referenzanzahl von Versuchen, und um den Speicherblock zu löschen, der den mindestens einen Zielsektor umfasst.
  • In einer Ausführungsform kann der mindestens eine Zielsektor ausgewählt werden, da der Speichercontroller ein Datenmuster in die Speicherzellen eingibt, die in dem Zielsektor umfasst sind, das sich von einem Muster von Daten unterscheidet, die in die Speicherzellen des Sektors der Speicherseite abgesehen vom Zielsektor eingegeben werden.
  • Datenwerte von „0” können in die Speicherzellen eingegeben werden, die in dem Zielsektor umfasst sind und Datenwerte von „1” können in die Speicherzellen eingegeben werden, die in anderen Sektoren umfasst sind.
  • In einer Ausführungsform können die Größen der Sektoren jeweils entsprechend eines festgelegten Merkmalseinstellbefehls des Speichercontrollers festgelegt werden.
  • Die Größen der Sektoren können unter Verwendung mindestens eines Teils der Daten festgelegt werden, die nach dem Merkmalseinstellbefehl zur nichtflüchtigen Speichervorrichtung übertragen werden.
  • In einer Ausführungsform können die Größen der Sektoren in einer Schmelzsicherungseinheit gespeichert sein, die in der nichtflüchtigen Speichervorrichtung durch eine Schmelzsicherungsoption auf Wafer-Niveau oder Packet-Niveau umfasst ist, und sie können entsprechend den Daten festgelegt sein, die in der Schmelzsicherungseinheit während einer Einschaltsequenz der nichtflüchtigen Speichervorrichtung gespeichert werden.
  • In einer Ausführungsform kann der Speichercontroller einen Sektorauswahlbefehl und eine Sektoradresse für die nichtflüchtige Speichervorrichtung zum Auswählen des mindestens einen Zielsektors bereitstellen.
  • Gemäß einigen beispielhaften Ausführungsformen umfasst ein Speichersystem eine nichtflüchtige Speichervorrichtung und einen Speichercontroller, der zum Steuern der nichtflüchtige Speichervorrichtung ausgelegt ist. Der Speichercontroller umfasst einen Fehlerkorrekturcodeblock, der ausgelegt ist, um Daten aus der nichtflüchtigen Speichervorrichtung in einer Einheit einer Speicherseite zu lesen, die eine Mehrzahl von Sektoren umfasst, und der ausgelegt ist, um ein Fehlerkorrekturdecodieren an den gelesenen Daten in einer Einheit eines Sektors der Speicherseite durchzuführen; und einen Steuerblock, der ausgelegt ist, um mindestens einen Zielsektor auszuwählen, der mindestens einen unkorrigierbaren Fehler umfasst, und um mindestens einen Erfolgs-Sektor auszuwählen, wobei alle Fehler des Erfolgs-Sektors, durch das Fehlerkorrekturdecodieren korrigierbar sind, wobei der Steuerblock außerdem dazu ausgelegt ist, die nichtflüchtige Speichervorrichtung so zu steuern, dass das Vorladen von Bitleitungen, die mit dem mindestens einen Zielsektor in Verbindung stehen, verhindert wird, und der Steuerblock ferner dazu ausgelegt ist, eine erneute Leseversuchsoperation für die Daten in dem mindestens einen Zielsektor durchzuführen.
  • In einer Ausführungsform kann der Fehlerkorrekturblock für den Steuerblock ein Flagsignal bereitstellen, das einen Erfolg oder Fehlschlag des Fehlerkorrekturdecodierens anzeigt, das für jeden Sektor ausgeführt wurde.
  • Der Steuerblock kann eine Sektorentabelle umfassen, welche eine Sektornummer der Sektoren und Flagsignale für die Sektoren speichert.
  • In einer Ausführungsform kann die Flashspeichervorrichtung eine Steuerlogik umfassen, wobei die Steuerlogik ein Register umfassen kann, das Sektorgrößeninformationen speichert, die in einem festgelegten Merkmalseinstellbefehl umfasst sind, der von dem Speichercontroller bereitgestellt wird, und wobei die Steuerlogik Größen der Sektoren entsprechend der Sektorgrößeninformation festlegt.
  • Gemäß einigen anderen beispielhaften Ausführungsformen wird ein Verfahren zum Betreiben eines Speichersystems bereitgestellt, das eine nichtflüchtige Speichervorrichtung und einen Speichercontroller umfasst, der die nichtflüchtige Speichervorrichtung steuert, wobei die nichtflüchtige Speichervorrichtung eine Mehrzahl von Speicherzellen umfasst, die zu einer Mehrzahl von Speicherseiten organisiert sind, von denen jede eine Mehrzahl von Sektoren zum darin Speichern von Daten umfasst. Das Verfahren kann umfassen: Lesen von Daten von einer ausgewählten Speicherseite der nichtflüchtigen Speichervorrichtung; Ausführen eines Fehlerkorrekturdecodierens an den gelesenen Daten auf einer Sektor-zu-Sektor-Basis, für jeden der Sektoren der ausgewählten Speicherseite; und wenn das Fehlerkorrekturdecodieren nicht imstande ist, mindestens einen Datenfehler mindestens eines Zielsektors der ausgewählten Speicherseite zu korrigieren, aber in der Lage ist, alle Datenfehler eines oder mehrerer Erfolgs-Sektoren der ausgewählten Speicherseite zu korrigieren, Übertragen eines Zielsektorauswahlbefehls von dem Speichercontroller zu der nichtflüchtigen Speichervorrichtung. Der Zielsektorauswahlbefehl kann die nichtflüchtige Speichervorrichtung dazu bringen: eine Spannung zu andern, die an die Speicherzellen des mindestens einen Zielsektors angelegt wird, Zielbitleitungen vorzuladen, die mit dem mindestens einen Zielsektor verbunden sind, während das Vorladen von Bitleitungen verändert wird, die mit dem einem oder mehreren Erfolgs-Sektoren verbunden sind, und Ausführen einer erneuten Leseversuchsoperation für Daten, die in dem mindestens einen Zielsektor mit der veränderten Spannung gespeichert sind.
  • Dementsprechend kann der Speichercontroller eine Leseoperation an der Speicherzellenanordnung in einer Einheit einer Speicherseite ausführen, Fehlererfassung und Korrektur an den gelesenen Daten in einer Einheit eines Sektors ausführen, das Vorladen von Bitleitungen verhindern, die mit mindestens einen Erfolgs-Sektor, verbunden sind, der korrigierbare Fehler umfasst, während die Bitleitungen vorgeladen werden, die mit mindestens einem Zielsektor verbunden sind, der unkorrigierbare Fehler umfasst, und eine erneute Leseversuchsoperation für Daten in mindestens einem Zielsektor durchführen, wodurch er den Stromverbrauch reduziert.
  • Kurze Beschreibung der Figuren
  • Veranschaulichende, nicht beschränkende beispielhafte Ausführungsformen werden anhand der folgenden detaillierten Beschreibung in dem Zusammenhang mit den begleitenden Figuren deutlicher verständlich.
  • 1 ist ein Flussdiagramm, das ein Verfahren des Betriebs eines Speichersystems darstellt, das eine nichtflüchtige Speichervorrichtung und einen Speichercontroller nach beispielhaften Ausführungsformen umfasst.
  • 2A ist ein Blockdiagramm, das eine Auslegung eines Speichersystems gemäß beispielhaften Ausführungsformen darstellt.
  • 2B ist ein Blockdiagramm, das eine detaillierte Auslegung eines Speichercontrollers, der in 2B dargestellt ist, gemäß beispielhaften Ausführungsformen darstellt.
  • 3 bis 8 sind Diagramme, die Beispiele bestimmter Speicherzellenanordnungen darstellen, die in der nichtflüchtigen Speichervorrichtung aus 2A umfasst sein können.
  • 9 ist ein Diagramm, das eine Auslegung einer Speicherseite darstellt, die in einer Speicherzellenanordnung umfasst ist, die in 2 dargestellt ist.
  • 10 stellt eine Schwellspannungsverteilung dar, die an jeder Speicherzelle einer Speicherzellenanordnung, die in 2A dargestellt ist, gebildet werden kann.
  • 11 und 12 stellen veränderte Beispiele der Schwellspannung dar, die in 10 dargestellt ist.
  • 13 stellt ein Beispiel einer Auslegung einer Sektorentabelle, die in 2B dargestellt ist, gemäß beispielhaften Ausführungsformen dar.
  • 14 stellt Zielbitleitungen dar, die mit einem Zielsektor in Verbindung stehen und selektiv für den Fall, der in 13 dargestellt ist, vorgeladen sind.
  • 15A ist ein Zeitablaufsdiagramm, das ein Verfahren des Festlegens eines Zielsektors in dem Speichersystem, das in 2A dargestellt ist, gemäß beispielhaften Ausführungsformen darstellt.
  • 15B und 15C stellen Beispieleingabedatenmuster zum Festlegen des Zielsektors gemäß beispielhaften Ausführungsformen dar.
  • 16 ist ein Zeitablaufsdiagramm, das ein Verfahren zum Festlegen eines Zielsektors in dem Speichersystem, das in 2A dargestellt ist, gemäß anderen beispielhaften Ausführungsformen darstellt.
  • 17 ist eine Ansicht, die einen Verbindungszusammenhang zwischen Sektoren und Speicherseitenpuffern gemäß beispielhaften Ausführungsformen darstellt.
  • 18 ist ein Blockdiagramm, das eine Auslegung für einen Speicherseitenpuffer gemäß beispielhaften Ausführungsformen darstellt, der von den Speicherseitenpuffern, die in 17 dargestellt sind, umfasst ist.
  • 19 ist ein Blockdiagramm, das eine Auslegung einer Steuerlogik gemäß beispielhaften Ausführungsformen darstellt, die in 2A dargestellt ist.
  • 20 ist ein Zeitablaufsdiagramm, das ein Verfahren zum Festlegen einer Sektorgröße gemäß beispielhaften Ausführungsformen darstellt.
  • 21 ist ein Flussdiagramm, das ein Verfahren des Betreibens des Speichersystems gemäß beispielhaften Ausführungsformen darstellt.
  • 22 ist ein Flussdiagramm, das ein Verfahren des Betreibens des Speichersystems gemäß beispielhaften Ausführungsformen darstellt.
  • 23 ist ein Blockdiagramm, das eine Speicherkarte darstellt, die ein Speichersystem nach Ausführungsformen umfassen kann.
  • 24 stellt eine Solid State Festplatte (SSD) dar, die einen Speichercontroller und eine Mehrzahl nichtflüchtiger Speichervorrichtungen umfasst.
  • 25 ist ein Diagramm, das ein mobiles System darstellt, das in einem Speichersystem gemäß beispielhaften Ausführungsformen umfasst sein kann.
  • 26 ist ein Diagramm, das ein Datenverarbeitungssystem darstellt, das ein Speichersystem gemäß beispielhafte Ausführungsformen umfassen kann.
  • Detaillierte Beschreibung der Ausführungsformen
  • Verschiedene Ausführungsformen des erfinderischen Konzepts werden nun mit zusätzlichem Detail mit Bezugnahme auf die begleitenden Figuren beschrieben. Dieses erfinderische Konzept kann allerdings in vielen verschiedenen Formen verkörpert sein und sollte nicht als nur auf die dargestellten Ausführungsformen beschränkt ausgelegt werden. Diese Ausführungsformen sind vielmehr vorgesehen, um diese Offenbarung gründlich und vollständig zu machen und werden Fachleuten den Umfang des erfinderischen Konzepts vollständig vermitteln. Durchgehend durch die schriftliche Beschreibung und die Figuren bezeichnen gleiche Referenzzeichen gleiche oder ähnliche Elemente und Merkmale.
  • Auch wenn die Begriffe erstes, zweites, etc. hier verwendet werden können, um verschiedene Elemente zu beschreiben, ist es so zu verstehen, dass diese Elemente nicht durch diese Begriffe beschränkt sein sollten. Diese Begriffe werden verwendet, um die Elemente voneinander zu unterscheiden, zum Beispiel kann ein erstes Element ein zweites Element genannt werden und auf ähnliche Weise könnte ein zweites Element ein erstes Element genannt werden, ohne vom Umfang des erfinderischen Konzeptes abzuweichen. Wie hier verwendet, umfasst der Begriff „und/oder” jede einzelne und alle Kombinationen von einem oder mehreren der damit in Zusammenhang stehenden, aufgelisteten Gegenstände.
  • Wenn auf einem Element als „verbunden” oder „gekoppelt” mit einem anderen Element Bezug genommen wird, ist es so zu verstehen, dass es direkt mit dem anderen Element verbunden oder gekoppelt sein kann oder dass zwischengelagerte Element vorliegen können. Im Gegensatz sind keine zwischengelagerten Elemente vorhanden, wenn auf ein Element „direkt verbunden” oder „direkt gekoppelt” zu einem anderen Element Bezug genommen wird. Andere Worte, die verwendet werden, um den Zusammenhang zwischen den Elemente zu beschreiben, sollten auf gleich Weise interpretiert werden (z. B., „zwischen” gegenüber „direkt zwischen”, „angrenzend” gegenüber „direkt angrenzend” etc.).
  • Die hier verwendete Terminologie dient dem Beschreiben bestimmter Ausführungsformen und ist nicht vorgesehen, um für das erfinderische Konzept beschränkend zu sein. Wie hier verwendet, sind die Singularformen „ein”, „eine” und „der”, „die” und „das” so gedacht, dass sie auch die Pluralformen umfassen, solange der Zusammenhang nicht klar auf anderes hinweist. Es ist ferner so zu verstehen, dass die Begriffe „umfasst”, „umfassend”, „beinhaltet” und/oder „beinhaltend”, wenn sie hier verwendet werden, die Gegenwart der bezeichneten Merkmale, Ganzzahlen, Schritte, Abläufe, Elemente und/oder Komponenten beschreiben, aber nicht die Gegenwart oder Hinzufügung eines oder mehrerer anderer ausschließen.
  • Solange nicht anders definiert, haben alle Begriffe (einschließlich technischer und wissenschaftlicher Begriffe), die hier verwendet werden, die gleiche Bedeutung, wie sie für gewöhnlich von jemandem mit durchschnittlichen Fähigkeiten in dem Fachgebiet verstanden werden, zu dem das erfinderische Konzept gehört. Es ist ferner so zu verstehen, dass Begriffe, wie sie in herkömmlich verwendeten Wörterbüchern definiert sind, so interpretiert werden sollten, dass sie eine Bedeutung haben, die im Einklang mit ihrer Bedeutung im Zusammenhang mit den relevanten Fachgebieten steht und dass sie nicht in einem idealisierten oder übermäßig formalen Sinn interpretiert werden, solange es hier nicht ausdrücklich definiert ist.
  • Nachfolgend werden beispielhafte Ausführungsformen mit Bezugnahme auf die begleitenden Figuren beschrieben. Die gleichen Referenzzeichen werden verwendet um sich durchgehend durch die Figuren auf die gleichen Elemente zu beziehen und eine detaillierte Beschreibung der gleichen Elemente wird ausgelassen, um Redundanz zu vermeiden.
  • 1 ist ein Flussdiagramm, das ein Verfahren des Betriebs eines Speichersystems darstellt, das eine nichtflüchtige Speichervorrichtung und einen Speichercontroller nach Speicherausführungsformen umfasst. Hier wird angenommen, dass die nichtflüchtige Speichervorrichtung eine Speicherzellenanordnung zum darin Speichern von Daten umfasst. Die Speicherzellenanordnung kann eine Mehrzahl von Blöcken umfassen, die jeweils Daten darin speichern. Jeder der Blöcke kann eine Mehrzahl von Speicherseiten umfassen, die jeweils Daten darin speichern. Jede der Speicherseiten kann eine Mehrzahl von Sektoren umfassen, die jeweils Daten darin speichern.
  • Mit Bezug auf 1 werden in einem Verfahrensschritt (S110) des Verfahrens zum Betreiben eines Speichersystems, das eine nichtflüchtige Speichervorrichtung und einen Speichercontroller zum Steuern der nichtflüchtigen Speichervorrichtung umfasst, Daten aus einer Speicherzellenanordnung der nichtflüchtigen Speichervorrichtung in einer Einheit einer Speicherseite, die eine Mehrzahl von Sektoren umfasst, gelesen.
  • In einer Operation S120 führt ein Fehlerkorrekturcode (nachfolgend als ,ECC' bezeichnet) Block des Speichercontrollers in einer Einheit eines Sektors für die gelesenen Daten in einer Einheit einer Speicherseite eine ECC-Decodierung durch. Es kann durch die ECC-Decodierung ermittelt werden, ob die gelesenen Daten einen Lesefehler enthalten. Der ECC-Block kann eine zentrale Datenverarbeitungseinheit (CPU), welche den Speichercontroller umfasst, auf Basis der ECC-Decodierung darüber benachrichtigen, ob ein Lesefehler korrigierbar oder unkorrigierbar in einer Einheit eines Sektors vorliegt (z. B. auf einer Sektor-zu-Sektor-Basis). Basierend auf der Benachrichtigung kann der Speichercontroller in der Operation (S130) mindestens einen Zielsektor auswählen, der mindestens einen unkorrigierbaren Lesefehler umfasst, und in der Lage ist, eine erneute Leseversuchsoperation auszuführen, und mindestens einen Erfolgs-Sektor, wobei jegliche Fehler in den gelesenen Daten des/der Erfolgs-Sektors/en korrigierbar sind. Um den einen Zielsektor zu wählen, kann der Speichercontroller die gleichen Daten in Speicherzellen eingeben, die in dem Zielsektor umfasst sind. Die gleichen Daten können Werte von „0” umfassen. Um den einen Zielsektor zu wählen, kann der Speichercontroller einen Zielsektorauswahlbefehl verwenden.
  • In einer Operation (S140) kann der Speichercontroller die nichtflüchtige Speichervorrichtung so steuern, dass das Vorladen von Bitleitungen verhindert wird, die mit dem/-n Erfolgs-Sektor/-en verbunden sind, während nur Zielbitleitungen vorgeladen werden, die mit dem Zielsektor verbunden sind, und er kann eine erneute Leseversuchsoperation für die Daten in dem Zielsektor durchführen. Die erneute Leseversuchsoperation kann wiederholt werden bis alle Lesefehler in dem Zielsektor korrigiert sind. Ferner kann die erneute Leseversuchsoperation eine vorbestimmte Anzahl von Wiederholungen wiederholt werden. Wenn die erneute Leseversuchsoperation öfter als die vorbestimmte Anzahl von Wiederholungen ausgeführt wird, kann eine Lösch-Wiederauffrischungsoperation für einen Speicherblock, der den Zielsektor umfasst, durchgeführt werden.
  • In dem Speichersystem des Standes der Technik werden, wenn ein nichtkorrigierbarer Lesefehler in einem Sektor auftritt, der von einer Speicherseite umfasst ist, alle Bitleitungen, die mit der einen Speicherseite verbunden sind, vorgeladen und dann wird die erneute Leseversuchsoperation für Sektoren durchgeführt, die den unkorrigierbaren Lesefehler aufweisen, so dass der Stromverbrauch gesteigert ist. In den beispielhaften Ausführungsformen hingegen werden nur Bitleitungen vorgeladen, die mit dem Zielsektor einer Speicherseite verbunden sind, so dass der Stromverbrauch reduziert werden kann.
  • 2A ist ein Blockdiagramm, das eine Auslegung eines Speichersystems 100 gemäß beispielhaften Ausführungsformen darstellt.
  • Mit Bezug auf 2A kann ein Speichersystem 100 einen Speichercontroller 20 und eine nichtflüchtige Speichervorrichtung 60 umfassen.
  • Die nichtflüchtige Speichervorrichtung 60 kann eine Flashspeichervorrichtung sein und sie kann eine Speicherzellenanordnung 100, eine Speicherseitenpuffereinheit 210, einen Spaltenauswahlschaltkreis oder -decoder 320, einen Zeilenauswahlschaltkreis oder -decoder 340, und einen Eingabe-/Ausgabepuffer 330, einen Spannungserzeuger 345 und eine Steuerlogik 350 umfassen.
  • Die Steuerlogik 350 kann den Betrieb der nichtflüchtigen Speichervorrichtung 60 für eine Zugriffsoperation steuern, zum Beispiel, eine Programmoperation, eine Löschoperation, eine Leseoperation unter der Steuerung des Speichercontrollers 20.
  • Die Speicherzellenanordnung 100 umfasst eine Mehrzahl von Speicherzellen, die mit einer Mehrzahl von Wortleitungen WL und einer Mehrzahl von Bitleitungen BL verbunden sind. Wie unten mit Bezugnahme auf 3 bis 8 beschrieben wird, kann jede der Speicherzellen eine NAND oder NOR Flashspeicherzelle umfassen und die Speicherzellen können einer zweidimensionalen Anordnungsstruktur oder einer dreidimensionalen Anordnungsstruktur angeordnet sein.
  • In den beispielhaften Ausführungsformen kann jede der Speicherzellen eine Einzelpegelspeicherzelle (SLC) zum Speichern eines Datenbits und eine Multipegelspeicherzelle (MLC) zum Speichern einer Mehrzahl von Datenbits umfassen. Im Fall der MLC kann ein Programmschema in einem Schreibbetriebszustand verschiedene Programmschemen umfassen, wie ein Schattenprogrammschema, ein Reprogrammierugsschema oder ein auf dem Chip gepuffertes Programmschema.
  • Die Steuerlogik 350 ist ausgelegt, um einen Gesamtbetrieb einer nichtflüchtigen Speichervorrichtung 60 zu steuern. Der Spannungserzeuger 345 erzeugt entsprechend eines Steuersignals CTR von der Steuerlogik 350 Lesespannungssignale, d. h., eine Auswahllesespannung Vrd und eine Nicht-Auswahl-Lesespannung Vread und stellt die Lesespannungssignale für den Zeilenauswahlschaltkreis 340 bereit, so dass die Leseoperation in Bezug auf die Speicherzellenanordnung 100 ausgeführt werden kann. Ferner verändert der Spannungserzeuger 345 entsprechend des Steuerlesesignals CTR von der Steuerlogik 350 einen Pegel der Auswahllesespannung Vrd, so dass die erneute Leseversuchsoperation für Daten aus dem Zielsektor durchgeführt werden kann. Der Zeilenauswahlschaltkreis 340 wird durch die Steuerlogik 350 gesteuert und ist ausgelegt um als Antwort auf eine Zeilenadresse XADD und die Auswahllesespannung Vrd Zeilen der Speicherzellenanordnung auszuwählen und zu betreiben.
  • Die Speicherseitenpuffereinheit 310 wird durch die Steuerlogik 350 gesteuert und dient entsprechend eines Betriebszustandes als ein Leseverstärker oder ein Schreibtreiber. Zum Beispiel während einer Leseoperation dient die Speicherseitenpuffereinheit 310 als Leseverstärker zum Erfassen von Daten von Speicherzellen in eine ausgewählte Zeile. Während einer Programmieroperation kann die Speicherseitenpuffereinheit 310 als ein Schreibtreiber entsprechend Programmierdaten zum Betreiben von Speicherzellen in einer ausgewählten Zeile dienen. Ferner kann die Speicherseitenpuffereinheit 310 unter Steuerung der Steuerlogik 350 während der erneuten Leseversuchsoperation selektiv nur Bitleitungen vorladen, die mit dem Zielsektor verbunden sind, der einen unkorrigierbaren Lesefehler enthält. Die Speicherseitenpuffereinheit 310 kann Puffer umfassen, die jeweils Bitleitungen oder Bitleitungspaaren entsprechen. Wenn jede der Speicherzellen Multibitdaten speichert, kann jeder Speicherseitenpuffer der Speicherseitenpuffereinheit 310 so ausgelegt sein, dass er mindestens zwei Signalspeicher umfasst.
  • Der Spaltenauswahlschaltkreis 320 wird durch die Steuerlogik 350 gesteuert und wählt sequentiell während der Lese-/Programmoperationen als Antwort auf eine Spaltenadresse YADD in einer vorbestimmten Einheit Spalten (oder Speicherseitenpuffer) aus. Der Eingabe-/Ausgabe-(I/0)-Puffer 300 überträgt Daten der Speicherseitenpuffereinheit 310 vom Spaltenauswahlschaltkreis 320 zum Speichercontroller 20.
  • Mit Rückbezug auf 2A kann der Speichercontroller 20 einen Steuerblock 30, einen Datenpuffer 50 und eine ICC-Block 55 umfassen.
  • Wann immer die nichtflüchtige Speichervorrichtung 60 eine Leseoperation durchführt, ermittelt der ICC-Block 55, ob ein Fehlerkorrekturdecodieren der gelesenen Daten in einer Einheit eines Sektors (d. h. auf einer Sektor-zu-Sektor-Basis), der eine Speicherseite bildet, in Bezug auf Daten, die von einer nichtflüchtigen Speichervorrichtung 60 bereitgestellt werden, Erfolg hat und gibt ein Flagsignal an den Steuerblock 30 aus, welches das Ergebnis des Fehlerkorrekturdecodierens für jeden Sektor angibt. Der Steuerblock 30 kann einen Befehl CMD zum Steuern eines Betriebsablaufs der Steuerlogik 350 bereitstellen, so dass die erneute Leseversuchsoperation für den Zielsektor, der den unkorrigierbaren Fehler umfasst als Antwort auf das Flagsignal durchgeführt werden kann.
  • Die nichtflüchtige Speichervorrichtung 60 überträgt zum Beispiel erste Daten in einer Einheit einer Speicherseite (d. h. auf einer Speicherseiten-zu-Speicherseiten-Basis), die entsprechend einer ersten Lesespannung von der Speicherzellenanordnung ausgegeben werden, während der Leseoperation zum Datenpuffer 50 des Speichercontrollers 20. Der ECC-Block 55 führt in einer Einheit des Sektors (d. h. auf einer Sektor-zu-Sektor-Basis) ein ECC-Decodieren in Bezug auf die übertragenen Daten in einer Einheit einer Speicherseite durch und ermittelt, ob das ECC-Decodieren für jeden Sektor erfolgreich ist.
  • Eine Speicherseite umfasst eine Mehrzahl von Sektoren. Jeder der Sektoren speichert Daten, die für die Fehlerermittlung und -korrektur verarbeitet wurden. Zum Beispiel speichert in manchen Ausführungsformen jeder Sektor die Daten zusammen mit einem Fehlerkorrekturcode, der ein oder mehrere Fehlerkorrekturbits umfasst, die auf Basis der Daten nach einem Fehlerkorrekturcode erzeugt wurden. In einer beispielhaften Ausführungsform kann/können das/die Fehlerkorrekturbit/-s ein oder mehrere Paritätsbits umfassen, die einen Paritätswert bilden können. Der ECC-Block 55 ermittelt, ob das ECC-Decodieren für jeden Sektor mit Bezug auf die Paritätsbits erfolgreich ist. Wenn zum Beispiel die Anzahl der Fehlerbits, die in jedem der Sektoren, die in einer Speicherseite umfasst sind, niedriger oder gleich ist wie die Anzahl der Fehlerbits, die durch den ECC-Block 55 korrigierbar sind, kann der ECC-Block 55 die Fehlerbits in einer Einheit eines Sektors ermitteln und korrigieren und er kann die fehlerkorrigierten Daten an einen Host übertragen. Wenn die Leseoperation für die ersten Daten erfolgreich ist, wird eine erste Leseoperation abgebrochen.
  • Wenn allerdings die Anzahl von Fehlerbits, die in mindestens einem Sektor von den Sektoren, die in der einen Speicherseite umfasst sind, größer ist, als die Anzahl der Fehlerbits, die durch den ECC-Block korrigierbar sind, d. h. wenn das ECC-Decodieren für den mindestens einen Sektor fehlschlägt, überträgt der ECC-Block 55 eine Sektornummer zum Steuerblock 30, die ein korrigierbares Fehlerbit und ein Flagsignal beinhaltet, das angibt, dass die Fehlerkorrektur fehlschlägt. Der Steuerblock 30 steuert den Betrieb einer nichtflüchtigen Speichervorrichtung 60 so, dass die erneute Leseversuchsoperation für einen Sektor, der ein korrigierbares Fehlerbit enthält, als Antwort auf das Flagsignal durchgeführt werden kann.
  • Entsprechend führt die nichtflüchtige Speichervorrichtung 60 die erneute Leseversuchsoperation für Daten des Sektors durch, der das korrigierbare Fehlerbit enthält, während sie unter der Steuerung des Speichercontrollers 20 eine Lesespannung verändert, bis das ECC-Decodieren für die Daten des Sektors Erfolg hat. In diesem Fall können die erneute Leseversuchsoperation, die durch die nichtflüchtige Speichervorrichtung 60 durchgeführt wird und die Fehlerermittlungskorrekturoperationen, die durch den Speichercontroller 20 durchgeführt werden, zeitgleich erreicht werden. Der ECC-Block 55 führt die Fehlerermittlung und die Fehlerkorrektur für die Daten durch, die durch die erneute Leseversuchsoperation ausgeben werden und auch für die Daten, die durch die Leseoperation abgegeben werden.
  • Beispielhaften Ausführungsformen entsprechend kann, um zu verhindern, dass die erneute Leseversuchsoperation in einer unendlichen Schleife ausgeführt wird, die erneute Leseversuchsoperation darauf begrenzt werden, dass sie nur für eine vorbestimmte Anzahl von Wiederholungen durchgeführt wird.
  • 2B ist ein Blockdiagramm, das eine detaillierte Auslegung eines Speichercontrollers, der in 2A dargestellt ist, gemäß einer beispielhaften Ausführungsform darstellt.
  • Mit Bezug 2B kann der Speichercontroller 20 einen Steuerblock 30, einen Datenpuffer 50, einen ECC-Block 55 und einen Hostpuffer 57 umfassen. Der Steuerblock 30 kann einen Direktspeicherzugriff (DMA) 33 und eine Sektorentabelle 35 umfassen.
  • Der ECC-Block 55 und der DMA 33 können in jeder Leseoperation die Funktion eines Ermittlungsblocks übernehmen, der in der Lage ist, zu ermitteln, ob eine Leseoperation für Daten, die erstmals von einer Speicherzellenanordnung 100 ausgegeben werden, Erfolg hat oder fehlschlägt.
  • Zum Beispiel kann der ECC-Block 55 eine ECC-Decodierung in einer Einheit eines Sektors (d. h. auf einer Sektor-zu-Sektor-Basis) der Erstausgabedaten durchführen, die in einer Einheit einer Speicherseite gelesen werden, und er kann das ECC-Decodierungsergebnis der CPU 31 als ein Flagsignal zur Verfügung stellen. Der DMA 33 kann ermitteln, ob fehlerkorrigierte Daten zum Host übertragen wurden, während der ECC-Block 55 die Übertragung der fehlerkorrigierten Daten vom Datenpuffer zum Hostpuffer 57 steuern kann.
  • Zum Beispiel kann der Erfolg der Leseoperation der Erstausgabedaten einen Zustand bezeichnen, in dem die Erstausgabedaten von der Speicherzellenanordnung 100 zum Host übertragen werden oder einen Zustand, in dem die Übertragung der Erstausgabedaten fertig gestellt ist.
  • Die CPU 31 kann ein Flagfeld FLAG der Sektorentabelle 35 entsprechend des Flagsignals aktualisieren. Die Sektorentabelle 35 umfasst als einen Eintrag eine Sektorennummer SECTOR NO, die Nummern von Sektoren angibt, die von einer Speicherseite umfasst sind, die Gegenstand der Leseoperation ist, und ein Flagsignal FLAG, das angibt, ob das ECC Decodieren für einen Sektor Erfolg hat. Das Flagsignal FLAG kann als Erfolgreich P oder Fehlgeschlagen F geschrieben werden, je nachdem ob das ECC-Decodieren für einen jeweiligen Sektor erfolgreich ist. Zum Beispiel kann das Bestehen P auf einem hohen Pegel (z. B. Logik „1”) und das Fehlschlagen F kann auf einem niedrigen Pegel (z. B. Logik „0”) sein. Auch wenn in 2B in dem Sinne der Einfachheit der Abbildung dargestellt wurde, dass die Sektorentabelle 35 von der CPU 31 getrennt ist, kann die Sektorentabelle 35 als Teil der CPU 31 verwirklicht sein. In diesem Fall kann die Sektorentabelle 33 als nichtflüchtiger Speicher, wie ein Synchrondirektzugriffsspeicher (SRAM), bereitgestellt sein.
  • Die CPU 31 kann unter Verwendung von Informationen, die in der Sektorentabelle 35 gespeichert sind, einen Befehl CMD mit Informationen zum Durchführen der erneuten Leseversuchsoperation des Zielsektors erzeugen, der einen unkorrigierbaren Fehler enthält, und den erzeugten Befehl CMD an die Steuerlogik 350 übertragen.
  • Dementsprechend kann die Steuerlogik 350 ein Spannungssteuersignal VCON entsprechend der Information erzeugen, die in dem empfangenen Befehl CMD enthalten ist, und sie stellt das erzeugte Spannungssteuersignal VCON dem Spannungserzeuger 345 zur Verfügung. Als Antwort auf das Spannungssteuersignal VCON verändert der Spannungserzeuger 345 den Pegel der Auswahllesespannung Vrd und sie führt die Auswahllesespannung Vrd dem Zeilenauswahlschaltkreis 340 zu, so dass die erneute Leseversuchsoperation für den Zielsektor durchgeführt werden kann. Dementsprechend kann die Speicherseitenpuffereinheit 310 unter Verwendung der veränderten Auswahllesespannung Vrd Daten lesen, die in dem Zielsektor der Speicherzellenanordnung 100 gespeichert sind. Die von der Speicherseitenpuffereinheit 310 gelesenen Daten werden entsprechend eines Decodierungsergebnisses des Spaltenauswahlschaltkreises 320 zum Eingabe-/Ausgabepuffer 300 übertragen und dann durch den Datenpuffer 350 zum ECC-Block 55 übertragen. Der ECC-Block 55 kann unter Kontrolle der CPU 31 ermitteln, ob das ECC-Decodieren für die Daten, die erneut vom Zielsektor gelesen wurden, erfolgreich ist.
  • 3 bis 8 sind Diagramme, die Beispiele bestimmter Speicherzellenanordnungen darstellen, die in der nichtflüchtigen Speichervorrichtung aus 2A enthalten sein können.
  • 3 ist ein Schaltkreisdiagramm, das eine Speicherzellenanordnung darstellt, die in einer NOR-Flashspeichervorrichtung enthalten ist. 4 ist ein Schaltkreisdiagramm, das eine Speicherzellenanordnung darstellt, die in einer NAND-Flashspeichervorrichtung enthalten ist. 5 ist ein Schaltkreisdiagramm, das eine Speicherzellenanordnung darstellt, die in einer Vertical-Flashspeichervorrichtung enthalten ist. 6 ist ein Perspektivendiagramm zum Beschreiben einer Vertical-Flashspeichervorrichtung. 7 ist eine Querschnittsansicht der Vertical-Flashspeichervorrichtung aus 6, geschnitten entlang der Linie I-I'. 8 ist eine Querschnittsansicht der Vertical-Flashspeichervorrichtung aus 6, geschnitten entlang der Linie II-II'.
  • Mit Bezug auf 3 kann eine Speicherzellenanordnung 100a eine Mehrzahl von Speicherzellen MC1 umfassen. Speicherzellen in der gleichen Spalte können parallel zwischen einer gemeinsamen Source-Leitung CSL und einer Mehrzahl von Bitleitungen BL(1), ..., BL(m) angeschlossen sein. Speicherzellen in der gleichen Zeile können gemeinsam mit der gleichen Wortleitung aus einer Vielzahl von Wortleitungen WL(1), ..., WL(n) verbunden sein. Zum Beispiel können Speicherzellen in einer ersten Spalte parallel zu einer ersten Bitleitung BL(1) und der gemeinsamen Source-Leitung CSL angeschlossen sein. Speicherzellen in einer ersten Spalte können gemeinsam mit einer ersten Wortleitung WL(1) verbunden sein. Die Speicherzellen MC1 können durch eine Spannung an den Wortleitungen WL(1), ..., WL(n) gesteuert werden.
  • In der NOR-Flashspeichervorrichtung, welche die Speicherzellenanordnung 100a umfasst, können eine Leseoperation und eine Programmieroperation pro Byte oder Word ausgeführt werden und eine Löschoperation kann pro Block 120a ausgeführt werden. Bei der Programmieroperation kann eine Sammelspannung in einem Bereich von ungefähr –0,1 bis –0,7 Volt an ein Sammelsubstrat der NOR-Flashspeichervorrichtung angelegt werden.
  • Mit Bezug auf 4 kann die Speicherzellenanordnung 100b Stringauswahltransistoren SST, Masseauswahltransistoren GST und eine Mehrzahl von Speicherzellen MC2 umfassen. Die Stringauswahltransistoren SST können mit Bitleitungen BL(1), ..., BL(m) verbunden sein, und die Masseauswahltransistoren GST können mit einer gemeinsamen Source-Leitung CSL verbunden sein. Die Speicherzellen MC2 können in Serie zwischen den Stringauswahltransistoren SST und den Masseauswahltransistoren GST angeschlossen sein. Speicherzellen in der gleichen Spalte können an die gleiche Wortleitung aus der Mehrzahl von Wordleitungen WL(1), ..., WL(n) angeschlossen sein. Zum Beispiel können 16, 32 oder 64 Wortleitungen zwischen einer Stringauswahlleitung SSL und einer Masseauswahlleitung GSL angeordnet sein.
  • Die Stringauswahltransistoren SST können an die Stringauswahlleitung SSL angeschlossen sein und sie können durch eine Spannung an der Stringauswahlleitung gesteuert werden. Die Masseauswahltransistoren GST können an der Masseauswahlleitung GSL angeschlossen sein und sie können durch eine Spannung an der Masseauswahlleitung gesteuert werden. Die Speicherzellen MC2 können durch eine Spannung an den Wortleitungen WL(1), ..., WL(n) gesteuert werden.
  • In der NAND-Flashspeichervorrichtung, welche die Speicherzellenanordnung 100b umfasst, können eine Leseoperation und eine Programmieroperation pro Speicherseite 110b durchgeführt werden und eine Löschoperation kann pro Block 120b durchgeführt werden. Während der Programmieroperation kann eine Sammelspannung mit einem Pegel von ungefähr 0 Volt an ein Sammelsubstrat der NAND-Flahsspeichervorrichtung angelegt werden. Den Ausführungsformen entsprechend kann jeder Speicherseitenpuffer 310 aus 2 an eine Bitleitung mit einer ungeraden Nummer und einer Bitleitung mit einer geraden Nummer angeschlossen sein. In diesem Fall können die Bitleitungen mit ungerader Nummer Speicherseiten mit ungerader Nummer bilden, die Bitleitungen mit gerader Nummer können Speicherseiten mit gerader Nummer bilden und Programmoperationen für die Speicherseiten mit ungerader Nummer und die Speicherseiten mit ungerader Nummer können abwechselnd durchgeführt werden.
  • Mit Bezug auf 5 kann eine Speicherzellenanordnung 100c eine Mehrzahl von Strings 130c umfassen, von denen jeder eine vertikale Struktur aufweist. Jeder String kann Stringauswahltransistoren SSTV, Masseauswahltransistoren GSTV, und eine Mehrzahl von Speicherzellen MC3 umfassen, die in einer ersten Richtung D1 ausgebildet sind und die in Serie zwischen den Stringauswahltransistoren SSTV und den Masseauswahltransistoren GSTV angeschlossen sind. Die Mehrzahl von Strings 130c kann in einer zweiten Richtung D2 ausgebildet sein, um eine Stringspalte zu definieren, und eine Mehrzahl von Stringspalten kann in einer dritten Richtung D3 ausgebildet sein, um eine Stringanordnung zu definieren.
  • Die Stringauswahltransistoren SSTV können mit Bitleitungen BL(1), ..., BL(m) verbunden sein und die Masseauswahltransistoren können mit einer gemeinsamen Source-Leitung CSL verbunden sein. Darüber hinaus können die Stringauswahltransistoren SSTV mit Stringauswahlleitungen SSL11, SSL12, ..., SSLi1, SSLi2 verbunden sein und die Masseauswahltransistoren GSTV können mit Masseauswahlleitungen GSL11, GSL12, ..., GSLi1, GSLi2 verbunden sein. Die Speicherzellen der gleichen Schicht können mit der gleichen Wortleitung von den Wortleitungen WL(1), WL(2), ..., WL(n – 1), WL(n) verbunden sein. Jede Stringauswahlleitung und jede Masseauswahlleitung können sich in der zweiten Richtung D2 erstrecken und die Stringauswahlleitungen SSL11, ..., SSLi1 und die Masseauswahlleitungen GSL11, ..., GSLi1 können in der dritten Richtung D3 angeordnet oder gestapelt sein. Jede Wortleitung kann sich in der zweiten Richtung D2 und der dritten Richtung D3 erstrecken und die Wortleitungen WL(1), ..., WL(n) können in der ersten Richtung D1 angeordnet oder gestapelt sein. Jede Bitleitung kann sich in der dritten Richtung D3 erstrecken und die Bitleitungen WL(1), ..., WL(n) können in der zweiten Richtung D2 angeordnet oder gestapelt sein. Die Speicherzellen MC3 können durch eine Spannung an den Wortleitungen WL(1), ..., WL(n) gesteuert werden.
  • Ähnlich zur NAND-Flashspeichervorrichtung können in der Vertical-Flashspeichervorrichtung, welche die Speicherzellenanordnung 101c umfasst, eine Leseoperation und eine Programmieroperation pro Speicherseite durchgeführt werden und eine Löschoperation kann pro Block durchgeführt werden.
  • Auch wenn nicht in 5 dargestellt, können nach einigen Ausführungsformen zwei Stringauswahltransistoren, die in einem einzelnen String umfasst sind, an eine einzelne Stringauswahlleitung angeschlossen sein und zwei Masseauswahltransistoren, die in dem einzelnen String umfasst sind, können an eine einzelne Masseauswahlleitung angeschlossen sein. Nach einigen Ausführungsformen kann der einzelne String einen Stringauswahltransistor und einen Masseauswahltransistor enthalten.
  • Mit Bezug auf 6, 7 und 8 kann die Vertical-Flahsspeichervorrichtung eine Masseauswahlleitung 256, eine Wortleitung 252 und eine Stringauswahlleitung 154 umfassen, die entlang einer ersten Richtung D1 im wesentlichen senkrecht zu einer oberen Oberfläche eines Substrates 101 vorliegen und einen Kanal 142, der sich vom Substrat 101 in der ersten Richtung D1 an den Seitenwänden der Masseauswahlleitung 256, Wortleitung 252 und Stringauswahlleitung 254 erstreckt. Die Vertical-Flashspeichervorrichtung kann ferner eine Bitleitung 290 umfassen, die elektrisch mit dem Kanal 142 verbunden ist, und eine gemeinsame Source-Leitung 105. Die Bitleitung 290 kann über ein Pad 162 und einen Bitleitungskontakt 280 elektrisch mit dem Kanal 142 verbunden sein.
  • Der Kanal 142 kann Polysilizium oder dotiertes Polysilizium umfassen. Der Kanal 142 kann zum Beispiel Polysilizium umfassen, das mit p-Typ Unreinheiten dotiert ist, z. B. Polysilizium, das mit Indium oder Gallium dotiert ist. Der Kanal 142 kann ferner Kohlenstoff und/oder Germanium umfassen. Eine Mehrzahl von Kanälen 142 kann in einer zweiten Richtung D2 im wesentlichen parallel zur oberen Oberfläche des Substrates 101 ausgebildet sein, um eine Kanalspalte zu definieren und eine Mehrzahl von Kanalspalten kann in einer dritten Richtung D3 im wesentlichen senkrecht zu der zweiten Richtung D2 ausgebildet sein, um eine Kanalanordnung zu definieren.
  • Der Kanal 142 kann tassenförmig und/oder von hoher zylindrischer Form sein. Ein Füllschichtmuster 150 kann in einem Raum ausgebildet sein, der von einer inneren Seitenwand des tassenförmigen, beispielsweise 142, umgrenzt wird. Füllschichtmuster 150 können zum Beispiel ein isolierendes Material (z. B. ein Oxid) umfassen.
  • Ein Pad 162 kann auf dem Füllschichtmuster 150 und dem Kanal 140 und es kann den Kanal 142 elektrisch mit den Bitleitungskontakt 280 verbinden. Das Pad 162 kann als eine Source-/Drainregion dienen, durch die Ladungen durch den Kanal 142 bewegt werden können. Das Pad 162 kann dotiertes Polysilizium umfassen. Zum Beispiel kann Die Kontaktstelle 162 Polysilizium umfassen, das mit Unreinheiten, z. B. Phosphor, Arsen, etc. dotiert ist. Wenn das Pad 162 Polysilizium umfasst, das mit Phosphor dotiert ist, kann das Pad 162 ferner Kohlenstoff umfassen.
  • Jede von der Masseauswahlleitung 256, Wortleitung 252 und Stringauswahlleitung 254 kann auf einem einzelnen Niveau (z. B. jeweils eine, jeweils auf einer unterschiedlichen Höhe) oder auf mehr als einem Niveau vorliegen und ein erstes Isolationsschichtmuster 115 kann dazwischen zwischengelagert sein. In 6 können die Masseauswahlleitung 256 und die Stringauswahlleitung 254 jeweils auf zwei Niveaus (z. B. zwei unterschiedlichen Höhen) vorliegen und die Wortleitung 252 kann auf vier Niveaus zwischen der Masseauswahlleitung 256 und der Stringauswahlleitung 254 vorliegen. Allerdings können die Masseauswahlleitung 256 und die Stringauswahlleitung 254 auf einem Niveau sein und die Wortleitung 252 kann auf 2, 8, 16 oder einer anderen geeigneten Anzahl von Niveaus ausgebildet sein. Nach den Ausführungsformen kann jede der Masseauswahlleitung 256, Wortleitung 252 und Stringauswahlleitung 254 sich in die zweite Richtung D2 erstrecken und eine Mehrzahl von Masseauswahlleitungen 256, eine Mehrzahl von Wortleitungen 252 und eine Mehrzahl von Stringauswahlleitungen 254 können in der dritten Richtung D3 angeordnet sein. Ein erstes Isolationsschichtmuster 115 kann zum Beispiel ein Siliziumoxid umfassen (z. B. Siliziumdioxid (SiO2), Siliziumoxidcarbid (SiOC) und/oder Siliziumoxyfluorid (SiOF)).
  • Ein Tunnelisolationsschichtmuster 220, ein Ladungsfallenschichtmuster 230 und ein Blockierschichtmuster 240 können zwischen jeder der Masseauswahlleitung 256, Wortleitung 252 und Stringauswahlleitung 254 und einer äußeren Seitenwand des Kanals 142 in einer im wesentlichen zur äußeren Seitenwand des Kanals 142 senkrechten Richtung angeordnet sein. Das Tunnelisolationsschichtmuster 220, das Ladungsfangschichtmuster 230 und das Blockierschichtmuster 240 können zwischen jeder der Masseauswahlleitung 256, Wortleitung 252 und Stringauswahlleitung 254 und dem ersten Isolationsschichtmuster 115 und/oder an einer Seitenwand des ersten Isolationsschichtmusters 115 angeordnet sein. Nach bestimmten Ausführungsformen des erfinderischen Konzepts kann das Tunnelisolationsschichtmuster 220 nur an der äußeren Seitenwand des Kanals 142 angeordnet sein.
  • Die Masseauswahlleitung 256, die Wortleitung 252 und die Stringauswahlleitung 254 können zum Beispiel ein Metall und/oder Metallnitrid aufweisen. Zum Beispiel können die Masseauswahlleitung 256, die Wortleitung 252 und die Stringauswahlleitung 254 ein Metall und/oder ein Metallnitrid mit niedrigem elektrischen Widerstand aufweisen (z. B. Wolfram, Wolframnitrid, Titan, Titannitrid, Tantal, Tantalnitrid und/oder Platin). Nach mindestens einer beispielhaften Ausführungsform kann jede von der Masseauswahlleitung 256, Wortleitung 252 und Stringauswahlleitung 154 eine mehrschichtige Struktur mit einer Barriereschicht, zum Beispiel einer Metallnitrid- und/oder Metallschicht, die ein Metall aufweist, sein.
  • Das Tunnelisolationsschichtmuster 220 kann ein Siliziumoxid umfassen und das Ladungsfangschichtmuster 230 kann ein Nitrid umfassen (z. B. ein Siliziumnitrid und/oder ein Metalloxid). Das Blockierschichtmuster 240 kann ein Siliziumoxid und/oder ein Metalloxid umfassen (z. B. Aluminiumoxid, Hafniumoxid, Lanthanaluminiumoxid, Lanthanhafniumoxid, Hafniumaluminiumoxid, Titanoxid, Tantaloxid und/oder Zirkoniumoxid). Das Blockierschichtmuster 240 kann eine mehrschichtige Struktur aus einer Siliziumoxidschicht und einer Metalloxidschicht sein.
  • Ein zweites Isolationsschichtmuster 260 kann zwischen Strukturen angeordnet sein, von denen jede eine Masseauswahlleitung 256, Wortleitung 252 und Stringauswahlleitung 254 umfassen kann, die sich in der zweiten Richtung erstrecken sowie ein erstes Isolationsschichtmuster 115, das dazwischen zwischengelagert ist. Das zweite Isolationsschichtmuster 260 kann ein isolierendes Material umfassen (z. B. ein Oxid). Eine Unreinheitsregion kann an einem oberen Anteil des Substrats 100 unter dem zweiten Isolationsschichtmuster 260 angeordnet sein, das sich in der zweiten Richtung D2 erstrecken und als gemeinsame Source-Leitung 105 dienen kann. Die Unreinheitsregion der gemeinsamen Source-Leitung 105 kann n-Typ Unreinheiten umfassen, zum Beispiel Phosphor und/oder Arsen.
  • Die Bitleitung 190 kann elektrisch über den Bitleitungskontakt 280 mit dem Pad 162 verbunden sein und sie kann elektrisch mit dem Kanal 142 verbunden sein. Die Bitleitung 290 kann zum Beispiel ein Metall, Metallnitrid und/oder dotiertes Polysilizium umfassen. Die Bitleitung 290 kann sich in der dritten Richtung erstrecken. Der Bitleitungskontakt 280 kann in einer dritten Isolationsschicht 270 und dem Kontaktpad 162 eingeschlossen sein. Der Bitleitungskontakt 280 kann zum Beispiel ein Metall, ein Metallnitrid und/oder dotiertes Polysilizium umfassen. Metallleitungen 291 können durch Kontaktstecker 281 elektrisch leitend mit der Masseauswahlleitung 156, Wortleitung 262 und Stringauswahlleitung 254 verbunden sein und somit können elektrische Signale, die an die Metallleitungen 291 angelegt werden, der Masseauswahlleitung 256, Wortleitung 252 und Stringauswahlleitung 254 zur Verfügung gestellt werden.
  • Eine dritte Isolationsschicht 270 kann auf den ersten und zweiten Isolationsschichtmustern 115 und 260, dem Kanal 152, dem Pad 162, dem Blockierschichtmuster 240, dem Ladungsfangschichtmuster 230 und dem Tunnelisolationsschichtmuster 220 angeordnet sein. Die dritte Isolationsschicht 270 kann ein isolierendes Material umfassen, zum Beispiel ein Oxid.
  • 9 ist ein Diagramm, das eine Konfiguration einer Speicherseite 400 darstellt, die in einer Speicherzellenanordnung umfasst ist, die in 2A dargestellt ist.
  • Mit Bezug auf 9 umfasst die Speicherseite 440 unter einer Vielzahl von Speicherseiten, die in der Speicherzellenanordnung 100 umfasst sind, eine Mehrzahl von Sektoren 411 bis 41k. Jeder der Sektoren 411 bis 41k speichert Daten und ist eine Basiseinheit für die Dateneingabe/-ausgabe in der nichtflüchtigen Speichervorrichtung 60. ECC-Paritätswerte 421 bis 42k, von denen jeder ein oder mehrere Paritätsbits umfasst und als ein Fehlererfassungs- und Fehlerkorrekturcode dient, werden, basierend auf den Daten erzeugt, d. h., Sektordaten die jeweils in den Sektoren 411 bis 41k gespeichert sind. Die ECC-Paritätswerte 421 bis 42k werden jeweils für jedes Set von Daten erzeugt, das in den Sektoren 411 bis 41k gespeichert werden soll. In diesem Fall können jeweilige Größen der Sektoren 411 bis 41k, die geeignet zum Korrigieren eines Fehlers sind, entsprechend des ECC-Blocks 55 variieren.
  • 10 stellt eine Schwellenspannungsverteilung dar, die auf jeder Speicherzelle einer Speicherzellenanordnung, die in 2A dargestellt ist, gebildet werden kann.
  • 11 und 12 stellen veränderte Beispiele der Schwellspannung dar, die in 10 dargestellt ist.
  • Mit Bezug auf 10 kann jede der Speicherzellen in einen von vier Datenzuständen E0, P, P2 und P3 programmiert werden, wenn die Speicherzellenanordnung 100 der nicht flüchtigen Speichervorrichtung 60, die in 2 dargestellt ist, durch einen MLC umgesetzt ist, bei dem Daten von 2 Bit pro Zelle programmiert werden. Die Datenzustände E0, P, P2 und P3 können jeweils durch Anlegen einer Mehrzahl von Auswahllesespannungen Vrd1, Vrd2 und Vrd3 erfasst werden. Allerdings kann die Schwellspannungsverteilung, die in 10 dargestellt ist, unbeabsichtigt durch verschiedene Faktoren variieren.
  • Zum Beispiel kann eine Ladungszurückhaltungseigenschaft einer Flashspeicherzelle durch thermoionische Emission durch einen Defekt einer Inter-Poly-Isolationsschicht, Ladungsdiffusion, Ionenstörstellen, Programmierstörungen und Heißtemperaturverspannung (HTS) verschlechtert sein. Zusätzlich kann die Schwellspannungsverteilung einer Flahspeicherzelle durch Faktoren wie soff program und over program verändert sein. Als Ergebnis davon kann die Schwellspannungsverteilung der Flahspeicherzelle von den Zuständen „Eo, P1, P2, P3” verändert werden, wie in 11 und 12 dargestellt. Die Veränderung der Schwellspannungsverteilung der Flashspeicherzelle kann einen Leseabstand vermindern und einen Lesefehler verursachen.
  • Um den Lesefehler zu kompensieren kann der Speicherkontroller 20 als Antwort auf die Lesesektordaten und die ECC Paritätsbits) von der nicht flüchtigen Speichervorrichtung 60 eine ECC-Fehlerkorrekturoperation durchführen, um einen Fehler der gelesenen Sektordaten zu korrigieren. Ferner kann der Speicherkontroller 20, wenn die Anzahl der Fehler, die während der Leseoperation auftreten, einen in dem ECC-Fehlerkorrekturoperation korrigierbaren Bereich übersteigt, die nicht flüchtige Speichervorrichtung so steuern, dass sie eine erneute Leseversuchsoperation durchführt.
  • Mit Bezug auf 11 kann während der erneuten Leseversuchsoperation die Leseoperation wiederholt durchgeführt werden, während eine Spannung von einer vorbestimmten Anfangsspannung VRS um ein vorbestimmtes Spannungsinkrement ΔV erhöht wird, wiederholt ausgeführt werden, bis richtige Daten gelesen werden. In einer anderen beispielhaften Ausführungsform kann eine Leseoperation während der erneuten Leseversuchsoperation wiederholt werden, während die Spannung von einer vorbestimmten Anfangsspannung VRS um das vorbestimmte Spannungsinkrement ΔV vermindert wird, bis genaue Daten gelesen werden, wie in 12 dargestellt. In beispielhaften Ausführungsformen kann eine Serie von Operationen zum Erfassen genauer Lesedaten in dem Sinne der Einfachheit der Erklärung als eine erneute Leseversuchsoperation definiert werden. Zum Beispiel kann eine Mehrzahl von Leseoperationen während einer erneuten Leseversuchsoperation durch Anlegen einer Mehrzahl veränderlicher Auswahllesespannungen durchgeführt werden bis richtige Daten gelesen werden. Die Daten, die durch die erneute Leseversuchsoperation so gelesen wurden, dass sie einen richtigen Wert aufweisen, können durch den Speicherkontroller 20 dem Host zur Verfügung gestellt werden.
  • 13 stellt ein Beispiel einer Auslegung einer Sektorentabelle 500 dar, die eine beispielhafte Ausführungsform der Sektorentabelle 35 sein kann, die in 2 dargestellt ist.
  • Mit Bezug auf 13 umfasst die Sektorentabelle 500 als einen Eintrag eine Sektornummer SECTOR NO 510, die jeweils auf die Sektoren 411 bis 41k hinweist und ein Flagsignal FLAG 520, das angibt, ob das ECC Dekodieren für die Daten der jeweiligen Sektoren 411 bis 41k erfolgreich ist. Als ein Beispiel wird mit Bezug auf 13 ein Fall beschrieben, bei dem eine Speicherseite aus 9 mit 8k an Datenzellen und 8 Sektoren, Sektor 1 bis Sektor 8, ausgelegt ist. Dementsprechend können die 8 Sektoren, Sektor 1 bis Sektor 8, jeweils als „000, 001, 010, 011, 100, 101, 110, 111” dargestellt werden. Ferner stellt 13 einen Fall dar, bei dem ein Flagsignal FLAG 520 des dritten Sektors Sektor 3 auf einem niedrigen Pegel „0” ist, da die Sektordaten des dritten Sektors Sektor 3 als ein Ergebnis des ECC Dekodierens für jeden Sektor einen unkorrigierbaren Fehler umfassen. Dementsprechend wird der dritte Sektor, Sektor 3, als der Zielsektor ausgewählt und die übrigen Sektoren werden als Erfolgs-Sektoren ausgewählt.
  • 14 stellt Zielbitleitungen dar, die mit einem Zielsektor verbunden sind und die selektiv für den Fall vorgeladen sind, der in 13 dargestellt ist.
  • Mit Bezug auf 13 und 14 können die beispielhaften Ausführungsformen, wenn die Daten des dritten Sektors Sektor 3 als ECC Dekodierungsergebnis einen unkorrigierbaren Fehler enthalten, das Vorladen der Bitleitungen, die mit dem Erfolgs-Sektor verbunden sind, verhindern, während nur die Bitleitungen vorgeladen werden, die mit dem dritten Sektor, Sektor 3, verbunden sind, und sie können eine erneute Leseversuchsoperation für die Daten des dritten Sektors, Sektor 3, durchführen. Das heißt, wenn das ECC Dekodierungsergebnis für die Sektoren 610 bis 680 angibt, dass die Daten des dritten Sektors 630 einen unkorrigierbaren Fehler enthalten, wie in 13 dargestellt, wird eine Auswahllesespannung Vrd an eine ausgewählte Wortleitung WLg angelegt, nachdem nur die Bitleitungen, die mit dem dritten Sektor 630 verbunden sind, selektiv vorgeladen wurden und dann wird eine Nicht-Auswahl-Lesespannung Vread an die nicht ausgewählte Wortleitung WLg + 1 angelegt. Dementsprechend können Speicherzellen den Daten entsprechend, die in die Speicherzellen programmiert sind, die mit der ausgewählten Wortleitung WLg verbunden sind und in dem dritten Sektor 630 umfasst sind, an-/abgeschaltet werden. Dementsprechend wird Strom an eine gemeinsame Source-Leitung CSL angelegt.
  • 15A ist ein Zeitablaufdiagramm, das ein Verfahren des Festlegens eines Zielsektors in dem Speichersystem, das in 2A dargestellt ist, gemäß beispielhaften Ausführungsformen darstellt.
  • Mit Bezug auf 2A und 15A werden, nachdem ein serial-Dateneingabebefehl 80h in die nicht flüchtige Speichervorrichtung 60 eingegeben wird, eine Adresse C1C2R1R2R3 für eine Speicherseite, die den Zielsektor umfasst, und Daten (D1 bis Dm) 711 zum Festlegen des Zielsektors vom Speicherkontroller 20 mit dem vorgewählten Zeitablauf zur nichtflüchtigen Speichervorrichtung 60 übertragen. Die Daten 711 zum Festlegen des Zielsektors werden durch den Eingabe-/Ausgabepuffer 330 und den Spaltenauswahlschaltkreis 320 in den Speicherseitenpuffer 310 geladen. Die Daten 711 zum Festlegen des Zielsektors umfassen ein Datenmuster des Zielsektors und ein Datenmuster eines Nicht-Zielsektors und das Datenmusters des Zielsektors unterscheidet sich vom Datenmuster des Nicht-Zielsektors. Das heißt, das Datenmuster des dritten Sektors 630, der in 14 als Zielsektor dient, unterscheidet sich von den Datenmustern der anderen Sektoren 610, 620, 640 bis 680. Wenn die Daten 711 zum Festlegen des Zielsektors in die Speicherseitenpuffereinheit 320 geladen werden, lädt die Speicherseitenpuffereinheit 120 nur die Zielbitleitungen vor, die mit dem Zielsektor (712) verbunden sind.
  • Als nächstes werden, wenn eine Leseoperation beginnt, ein ,00h' Befehl, eine Adresse C1C2R1R2R3 für eine Speicherseite, die den Zielsektor umfasst, und ein ,30h' Befehl sequenziell mit einem vorgewählten Zeitablauf an die nicht flüchtige Speichervorrichtung 60 übertragen. Wenn der ,30h' Befehl in die nicht flüchtige Speichervorrichtung 60 eingegeben wird erfasst der Speicherseitenpuffer 310 die Sektordaten des Zielsektors der Speicherzellenanordnung 100 und speichert sie unter der Kontrolle der Steuerlogik 350 zwischen (713). Wenn das Erfassen und Zwischenspeichern der Sektordaten des Zielsektors fertig gestellt sind, werden Daten, wie DT1, DT2, ..., die in der Speicherseitenpuffereinheit 310 gespeichert sind, vom Speicherkontroller 50 durch den Spaltenauswahlschaltkreis 320 und den Eingabe-/Ausgabepuffer 330 (714) dem Datenpuffer 50 zur Verfügung gestellt. Der Datenpuffer 50 überträgt die erneut gelesenen Daten zum ECC Block 55 und der ECC Block 55 kann ein ECC Dekodieren für die erneut gelesenen Sektordaten des Zielsektors durchführen und die dekodierten Sektordaten dem Steuerblock 30 zur Verfügung stellen. Die obigen erneuten Leseversuchsoperationen können wiederholt werden bis alle Fehler in den Sektordaten des Zielsektors korrigiert sind.
  • 15B und 15C stellen Beispieleingabedatenmuster zum Festlegen des Zielsektors gemäß beispielhaften Ausführungsformen dar.
  • Mit Bezug auf 15B sind alle Datenmuster, die in den dritten Sektor 630 eingegeben werden, der als Zielsektor dient, „0” und alle Datenmuster, die in anderen Sektoren 610, 620, 640 bis 680 eingegeben werden, sind „1”.
  • Mit Bezug auf 15C sind alle Datenmuster, die in den dritten Sektor 630 eingegeben werden, der als Zielsektor dient, „1” und alle Datenmuster, die andere Sektoren 610, 620, 640 bis 680 eingegeben werden, sind „0”.
  • 16 ist ein Zeitablaufsdiagramm, das ein Verfahren des Festlegens eines Zielsektors in dem Speichersystem, das in 2A dargestellt ist, gemäß anderen beispielhaften Ausführungsformen darstellt.
  • Mit Bezug auf 2A und 16 wird, nachdem ein Zielsektor Auswahlbefehl XXh in die nicht flüchtige Speichervorrichtung 60 eingegeben wird, eine Sektoradresse (S1S2S3) 712 zum Auswählen des Zielsektors vom Speicherkontroller 20 in dem vorgewählten Zeitablauf der nicht flüchtigen Speichervorrichtung 60 zur Verfügung gestellt. Wenn die Sektoradresse (S1S2S3) 712 zum Wählen des Zielsektors in die nicht flüchtige Speichervorrichtung 60 eingegeben wird, lädt die Speicherseitenpuffereinheit 320 basierend auf der Sektoradresse (S1S2S3) 712 nur die Zielbitleitungen vor, die mit dem Zielsektor verbunden sind (722).
  • Als Nächstes werden, wenn eine Leseoperation beginnt, ein ,00h' Befehl, eine Adresse C1C2R1R2R3 für eine Speicherseite, die den Zielsektor umfasst, und ein ,30h' Befehl sequenziell in dem vorgewählten Zeitablauf zur nicht flüchtigen Speichervorrichtung 60 übertragen. Wenn der ,30h' Befehl in die nicht flüchtige Speichervorrichtung 60 eingegeben wird, erfasst und die Speicherseitenpuffereinheit 310 die Sektordaten des Zielsektors der Speicherzellenanordnung 100 und speichert die unter der Steuerung der Steuerlogik 350 zwischen (723). Wenn das Erfassen und Zwischenspeichern der Sektordaten des Zielsektors fertig gestellt sind, werden Daten DT1, DT2,,, , die in der Speicherseitenpuffereinheit 310 gespeichert sind, vom Speicherkontroller 50 durch den Spaltenauswahlschaltkreis 320 und den Eingabe-/Ausgabepuffern 330 dem Datenpuffer 50 zur Verfügung gestellt (724). Der Datenpuffer 50 überträgt die erneut gelesenen Daten zum ECC Block 55 und der ECC Block 55 kann ein ECC Dekodieren für die Sektordaten des erneut gelesenen Zielsektors durchführen und die dekodierten Sektordaten dem Steuerblock 30 zur Verfügung stellen. Die obigen erneuten Leseversuchsoperationen können wiederholt werden bis alle Fehler in den Sektordaten des Zielsektors korrigiert sind.
  • 17 stellt einen Verbindungszusammenhang zwischen Sektoren und Speicherseitenpuffern gemäß beispielhaften Ausführungsformen dar.
  • Mit Bezug auf 17, kann eine Mehrzahl von Sektoren 610 bis 680 jeweils durch Bitleitungen 611 bis 661 mit entsprechenden Speicherseitenpuffern 710 bis 780 verbunden sein. Wenn die Sektordaten des dritten Sektors 630 einen unkorrigierbaren Fehler enthalten, wie mit Bezug auf 15B beschrieben, wird ein Datenmuster „0” in die Speicherseitenpuffer 730 eingegeben und ein Datenmuster „1” wird in die anderen Speicherseitenpuffer 710, 720, und 740 bis 780 eingegeben. Dementsprechend kann nur der Speicherseitenpuffer 730 die erneute Leseversuchsoperation durch Vorladen der Bitleitungen 631 durchführen. Ferner wird, wenn die Sektordaten des dritten Sektors 630 einen unkorrigierbaren Fehler umfassen, wie mit Bezug auf 16 beschrieben, eine Sektoradresse S1S2S3 von „011” in den ausgewählten dritten Sektor 630 eingegeben und die Speicherseitenpuffer 730 können die erneute Leseversuchsoperation durch Vorladen der Bitleitungen 631, die mit dem dritten Sektor 630 verbunden sind, durchführen.
  • 18 ist ein Blockdiagramm, das eine Auslegung eines Speicherseitenpuffers der von den Speicherseitenpuffern gemäß beispielhaften Ausführungsformen darstellt, die in 17 dargestellt sind, umfasst ist.
  • Mit Bezug auf 18 kann ein Speicherseitenpuffer 371 einen p-Typ Metall-Oxidhalbleiter (PMOS) Transistor 732 und eine Zwischenspeichereinheit 733 umfassen. Der PMOS Transistor 732 lädt eine entsprechende Bitleitung BLj als Antwort auf ein Vorladungssteuersignal mit einem Stromquellspannungs VDD Niveau vor. Die Zwischenspeichereinheit 733 kann eine Mehrzahl von Zwischenspeichern SLT, DLT1, und DLT2 umfassen. Der Abtastzwischenspeicher SLT erfasst und speichert während einer Erfassungsoperation eine Spannungsveränderung eines Abtastknotens Sn, der mit der Bitleitung BLJ verbunden ist. Die Datenzwischenspeicher DLT1, und DLT2 werden für eine Programmieroperation verwendet. Der Datenzwischenspeicher DLT1 wird verwendet, um Programmierdaten an die Bitleitung BLJ zu übertragen und der Datenzwischenspeicher DLT2 speichert die Programmierdaten, die vom Speichercontroller 20 empfangen werden. Der Speicherseitenpuffer 731 kann ferner einen kombinatorischen Schaltkreis zum Ermitteln der Aktivierung des Vorladungssteuersignals PRCH entsprechend Datenmustern umfassen, die in den Datenzwischenspeichern DLT1 und DLT2 gespeichert sind.
  • Wie mit Bezugnahme auf 15B dargestellt, wird, wenn ein bestimmtes Datenmuster in die Datenzwischenspeicher DLT1 und DLT2 eingegeben wird, das Vorladesteuersignal PRCH mit einem niedrigen Pegel aktiviert, so dass die Bitleitung BLJ vorgeladen werden kann. Ferner werden, wie mit Bezugnahme auf 16 dargestellt, ein Sektorauswahlbefehl XXh und die Sektoradresse S1S2S3 eingegeben, das Vorladesteuersignal PRCH wird mit einem niedrigen Pegel aktiviert, so dass die Bitleitung BLJ vorgeladen werden kann.
  • 19 ist ein Blockdiagramm, das eine Auslegung einer Steuerlogik, die in 2A dargestellt ist, gemäß beispielhaften Ausführungsformen darstellt.
  • Mit Bezug auf 19 kann die Steuerlogik 350 ein Register 351 und/oder eine Sicherungseinheit 353 umfassen.
  • Das Register 351 kann Sektorgrößeninformationen 352 speichern, die zusammen mit einem festgelegten Merkmalseinstellbefehl EFH vom Speichercontroller 20 aus 1 empfangen werden, und entsprechend der gespeicherten Informationen, Größen von Sektoren, die von einer Speicherseite umfasst sind, festlegen. Die Größen der Sektoren, die in einer Speicherseite 400 aus 9 umfasst sind, können basierend auf den Sektordaten und Paritätsbits, die in den jeweiligen Sektoren gespeichert sind, festgelegt werden. Der Speichercontroller 200 kann die Größen der Sektoren, die in einer Speicherseite umfasst sind, unter Verwendung des festgelegten Merkmalseinstellbefehls Efh festlegen.
  • Ferner kann eine Schmelzsicherungseinheit 353 Sektorgrößeninformationen 354 speichern. Wenn die Schmelzsicherungseinheit 353 Sektorgrößeninformationen 354 speichert, kann die Schmelzsicherungseinheit 353 die Größen der Sektoren, die in einer Speicherseite 400 aus 9 umfasst sind, basierend auf den Sektorgrößeninformationen 354 während einer Einschaltsequenz der nicht flüchtigen Speichervorrichtung 60 festlegen. In diesem Fall können die Sektorgrößeninformationen 354 durch eine Schmelzsicherungsoption auf einem Wafer-Niveau oder einem Package-Niveau festgelegt werden. In einer anderen beispielhaften Ausführungsform können die Sektorgrößeninformationen SCT_L nichtflüchtige Trim-Informationen sein und sie können in der Speicherzellenanordnung 100 gespeichert sein. Wenn die Sektorgrößeninformationen SCT_L als nicht flüchtige Trim-Informationen in der Speicherzellenanordnung 100 gespeichert sind, können die Sektorgrößeninformationen SCT_L durch die Speicherseitenpuffereinheit 310 von der Speicherzellenanordnung 100 während der Einschaltsequenz unter Steuerung der Steuerlogik 350 in die Steuerlogik 350 geladen werden.
  • 20 ist ein Zeitablaufsdiagramm zum Darstellen eines Verfahrens des Festlegens einer Sektorgröße gemäß beispielhaften Ausführungsformenen.
  • Mit Bezug auf 2A, 19 und 20 werden das festgelegte Merkmalskommando EFH, die Adresse Addr und die Daten D1 bis Dm um die Sektorgröße festzulegen vom Speichercontroller 20 in dem vorgewählten Zeitablauf zur nicht flüchtigen Speichervorrichtung 60 übertragen. Die Adresse Addr kann verwendet werden, um eine Lage des Registers 351 anzugeben, in dem Daten D1 bis Dm gespeichert werden, welche die Sektorgrößeninformationen 352 angeben. Der Ablauf des Festlegens der Größe des Sektors kann durch Übertragen der Sektorgröße SCT_L vom Speichercontroller 200 zur nicht flüchtigen Speichervorrichtung 60 zusammen mit dem festgelegten Merkmalseinstellbefehl EFH nach dem Einschalten erreicht werden. In den beispielhaften Ausführungsformen kann nur ein Teil der Daten D1 bis Dm, die zusammen mit dem festgelegten Merkmalseinstellbefehl EFH zur Verfügung gestellt werden, als Daten verwendet werden, welche die Sektorgröße SCT_L angeben. Die übrigen Daten können verwendet werden, um andere Parameter zu bestimmen.
  • 21 ist ein Flussdiagramm, das ein Verfahren des Betreibens des Speichersystems gemäß beispielhaften Ausführungsformen darstellt.
  • Mit Bezug auf 2A, 2B und 21 empfängt in dem Verfahren des Betreibens eines Speichersystems gemäß den beispielhaften Ausführungsformen die nicht flüchtige Speichervorrichtung 60 einen Lesebefehl vom Speichercontroller 20 (S810). Die nicht flüchtige Speichervorrichtung 60, die den Lesebefehl empfangen hat, führt eine Leseoperation für die Daten in einer Einheit einer Speicherseite (d. h. auf einer Speicherseiten-zu-Speicherseiten-Basis) durch (820) und überträgt die gelesenen Daten zum Speichercontroller 20. Die Speicherseite umfasst hier eine Mehrzahl von Sektoren. In diesem Fall werden, wie mit Bezug auf 9 dargestellt, Paritätswerte, die ein oder mehrere Paritätsbits umfassen, durch die Speichervorrichtung 60 zusammen mit den Sektordaten für jeden Sektor der Speicherseite zum Speichercontroller 20 übertragen. Der ECC Block 50 des Speichercontrollers 20 führt unter Verwendung des Paritätswerts für den Sektor ein ECC Dekodieren für die gelesenen Daten der Speicherseite in Einheiten der Sektoren (d. h. auf einer Sektor-zu-Sektor-Basis) durch, um zu ermitteln, ob irgendein Lesefehler von einem der Sektoren erfasst wird S830. Wenn in dem Schritt S830 nicht ein Lesefehler erfasst wird, werden die gelesenen Daten durch den Hostpuffer 57 zum Host übertragen. Wenn in dem Schritt S830 ein Lesefehler erfasst wird (JA), ermittelt der ECC Block 55 des Speichercontrollers 20 für jeden Sektor, ob Fehler, die für diesen Sektor erfasst wurden, unkorrigierbar sind (S840). Wenn von allen Fehlern des Sektors der Speicherseite in dem Schritt S840 ermittelt wird, dass sie korrigierbar sind (NEIN) korrigiert der EEC Block 55 des Speichercontrollers 20 die Fehler jedes Sektors (S850) und überträgt die fehlerkorrigierten Daten durch den Hostpuffer 57 zum Host. Wenn in Schritt S840 ermittelt wird, dass die gelesenen Daten mindestens einen Sektor mit mindestens einem unkorrigierbaren Fehler umfassen steuert der Speichercontroller 200 die nicht flüchtige Speichervorrichtung so, dass sie die erneute Leseversuchsoperation für den Sektor (die Sektoren) mit dem unkorrigierbaren Fehler durchführt. (S860).
  • 22 ist ein Flussdiagramm, das ein Verfahren des Betreibens des Speichersystems gemäß beispielhaften Ausführungsformen darstellt.
  • Mit Bezug auf 2A, 2B und 22 empfangt die nicht flüchtige Speichervorrichtung 16 in dem Verfahren des Betreibens eines Speichersystems gemäß beispielhaften Ausführungsformen einen Lesebefehl von Speichercontroller 20 (S910). Die nicht flüchtige Speichervorrichtung 60, die den Lesebefehl empfangen hat, führt eine Leseoperation für Daten in einer Einheit einer Speicherseite durch (S920) und überträgt die gelesenen Daten zum Speichercontroller 20. Die Speicherseite umfasst hier eine Mehrzahl von Sektoren. In diesem Fall werden, wie mit Bezugnahme auf 9 dargestellt, Paritätswerte, die einen oder mehrere Paritätsbits umfassen zusammen mit Sektordaten durch die Speichervorrichtung 60 zum Speichercontroller 20 übertragen. Der ECC Block 55 des Speichercontrollers 20 führt ein ECC Dekodieren für die gelesenen Daten der Speicherseite in Einheiten von Sektoren (d. h. auf einer Sektor-zu-Sektor-Basis) durch, um zu ermitteln, ob irgendein Lesefehler von irgendeinem der Sektoren erfasst wird (S930). Wenn ein Lesefehler nicht in dem Schritt S930 erfasst wird, werden die gelesenen Daten durch den Hostpuffer 57 zum Host übertragen. Wenn ein Lesefehler in dem Schritt S930 erfasst wird (JA) wird für jeden Sektor ermittelt ob die erfassten Fehler unkorrigierbar sind (S940). Wenn in Schritt S940 ermittelt wird, dass die Fehler aller Sektoren korrigierbar sind, korrigiert der ECC Block des Speichercontrollers 20 die Fehler der Sektoren (S950) und überträgt die fehlerkorrigierten Daten durch den Hostpuffer 57 zum Host. Wenn für die gelesenen Daten in Schritt S940 ermittelt wird, dass sie mindestens einen Sektor (Zielsektor) mit mindestens einem unkorrigierbaren Fehler umfassen (JA) wird ermittelt ob eine erneute Leseversuchsoperation für den Zielsektor öfter als die vorbestimmte Referenzzahl von Wiederholungen P ausgeführt wird (S960). Wenn in Schritt S960 ermittelt wird, dass die erneute Leseversuchsoperation für den Zielsektor seltener durchgeführt wird, als die vorgewählte Referenzanzahl von Wiederholungen P, wird eine erneute Leseversuchsoperation durchgeführt (S970). Wenn in Schritt S960 ermittelt wird, dass die erneute Leseversuchsoperation für den Zielsektor öfter durchgeführt wird, als die vorgewählte Referenzanzahl von Wiederholungen P, wird die erneute Leseversuchsoperation für den Zielsektor durchgeführt (S980). Nach dem Durchführen der erneuten Leseversuchsoperation für den Zielsektor führt der ECC Block 55 des Speichercontrollers 20 eine Lösch-Wiederauffrischungsoperation durch, der einen Speicherblock, der den Zielsektor umfasst, zu einem anderen Block kopiert und den Speicherblock, der den Zielsektor umfasst, löscht (S990).
  • 23 ist ein Blockdiagramm, das eine Speicherkarte darstellt, die ein Speichersystem gemäß beispielhaften Ausführungsformen umfassen kann.
  • Mit Bezug auf 23 kann eine Speicherkarte 1000 eine Mehrzahl von Verbindungsstiften 1010, einen Speichercontroller 1020 und eine nicht flüchtige Speichervorrichtung 1030 umfassen.
  • Die Verbindungsstifte 1010 können mit einem Host gekoppelt sein (nicht dargestellt) um Signale zwischen dem Host und der Speicherkarte 1000 zu übertragen. Die Verbindungsstifte 1010 können einen Taktstift, einen Befehlsstift, einen Datenstift und/oder einen Zurücksetzungsstift umfassen.
  • Der Speichercontroller 1020 kann Daten vom Host empfangen (z. B. über Verbindungsstifte 1010) und er kann die empfangenen Daten in der nicht flüchtigen Speichervorrichtung 1030 speichern.
  • Die nichtflüchtige Speichervorrichtung 1030 kann Speicherzellen umfassen und der Speichercontroller 1020 kann eine Leseoperation an der Speicherzellenanordnung in einer Einheit einer Speicherseite durchführen, Fehlererfassung und -korrektur an den gelesenen Daten in einer Einheit eines Sektors durchführen, verhindern, dass Bitleitungen vorgeladen werden, die mit mindestens einem Erfolgs-Sektor verbunden sind, der korrigierbare Fehler umfasst, während Zielbitleitungen vorgeladen werden, die mit mindestens einem Zielsektor verbunden sind, der nicht korrigierbare Fehler umfasst, und er kann eine erneute Leseversuchsoperation für Daten in mindestens einem Zielsektor durchführen, wodurch er weniger Strom verbraucht, als wenn alle Sektoren der zu lesenden Speicherseite für die erneute Leseversuchsoperation vorgeladen wären.
  • Die Speicherkarte 1000 kann zum Beispiel eine MMC, eine eingebettete MMC (eMMC), eine hybride eingebettete MMC (hybride eMMC), eine secure digital (SD) Karte, eine Mikro-SD Karte, einen Speicherstick, eine ID Karte, eine personal computer memory card international association (PCMCIA) Karte, eine Chip Karte, eine USB Karte, eine smart Karte, eine compact flash (CF) Karte, etc. umfassen.
  • Die Speicherkarte 1000 kann mit dem Host gekoppelt sein, wie einem Desktopcomputer, einem Laptopcomputer, einem Tabletcomputer, einem Mobiltelefon, einem Smartphone, einem Musikabspielgerät, einem personal digital assistant (PDA), einem tragbaren Multimedia-Abspielgerät (PMP), einem digitalen Fernsehgerät, einer Digitalkamera, einer tragbaren Spielekonsole, etc.
  • 24 ist ein Diagramm, dass ein Festkörperlaufwerk darstellt, das ein Speichersystem gemäß beispielhaften Ausführungsformen umfassen kann.
  • Mit Bezug auf 24 kann ein Festkörperlaufwerk (SSD) einen Speichercontroller 1110 und eine Mehrzahl von nicht flüchtigen Speichervorrichtungen 1120 umfassen.
  • Der Speichercontroller 1110 kann Daten von einem Host (nicht dargestellt) empfangen. Der Speichercontroller 1010 kann die empfangenen Daten in der Mehrzahl nicht flüchtiger Speichervorrichtungen 1120 speichern.
  • Jede der nicht flüchtigen Speichervorrichtungen 1120 kann Speicherzellen umfassen und der Speichercontroller 1110 kann eine Leseoperation an der Speicherzellenanordnung in einer Einheit einer Speicherseite durchführen, Fehlererfassung und -korrektur an den gelesenen Daten in einer Einheit eines Sektors durchführen, das Vorladen von Bitleitungen verhindern, die mit mindestens einem Erfolgs-Sektor verbunden sind, der korrigierbare Fehler umfasst, während Bitleitungen vorgeladen werden, die mit mindestens einem Zielsektor verbunden sind, der nicht korrigierbare Fehler umfasst, und er kann eine erneute Leseversuchsoperation für Daten in mindestens einem Zielsektor durchführen, wodurch er den Stromverbrauch reduziert.
  • In einigen Ausführungsformen kann das Festkörperlaufwerk 1100 mit einem Host gekoppelt sein, wie einer mobilen Vorrichtung, einem mobilen Telefon, einem Smartphone, einem PDA, einem PMP, einer digitalen Kamera, einer tragbaren Spielekonsole, einem Musikabspielgerät, einem Desktopcomputer, einem Notebook-Computer, einem Tabletcomputer, einem Lautsprecher, einem Video, einem digitalen Fernseher, etc.
  • 25 ist ein Diagramm, das ein mobiles System darstellt, dass ein Speichersystem gemäß beispielhaften Ausführungsformen umfassen kann. Mit Bezug auf 24 kann ein mobiles System 1400 einen Anwendungsprozessor 1410, eine Konnektivitätseinheit 1420, eine flüchtige Speichervorrichtung 1430, ein nichtflüchtiges Speichersystem 1440, eine Benutzerschnittstelle 1450 und eine Stromversorgung 1460 umfassen. Das mobile System 1400 kann jegliches mobile System sein, wie ein Mobiltelefon, ein Smartphone, ein Tabletcomputer, ein Laptopcomputer, ein PDA, ein PMP, eine Digitalkamera, eine tragbare Spielekonsole, ein Musikabspielgerät, ein Camcorder, ein Videoabspielgerät, ein Navigationssystem, etc.
  • Der Anwendungsprozessor 1410 kann Anwendungen ausführen, wie einen Internetbrowser, eine Spielanwendung, eine Videoabspielanwendung, etc. Der Anwendungsprozessor 1410 kann einen einzelnen Prozessorkern oder eine Mehrzahl von Prozessorkernen umfassen. Zum Beispiel kann der Anwendungsprozessor 1410 ein Mehrkernprozessor, wie ein Zweikernprozessor, ein Vierkernprozessor, ein Sechskernprozessor, etc. sein. Der Anwendungsprozessor 1410 kann ferner einen cache Speicher umfassen, der in dem oder außerhalb des Anwendungsprozessor 1410 angeordnet ist.
  • Die Konnektivitätseinheit 1420 kann drahtgebundene oder drahtlose Kommunikation mit einer externen Vorrichtung durchführen. Zum Beispiel kann die Konnektivitätseinheit 1420 USB Kommunikation durchführen, Ethernetkommunikation, near filed Kommunikation (NFC), Radiofrequenzidentifikation (RFID) Kommunikation, Mobiltelekommunikation, Speicherkartenkommunikation, drahtloses Internet, wireless fidelity (wi-fi) global positioning system (GPS) Bluetooth (BT), global system for mobile communication (GSM), general packet radio system (GPRS), wideband code division multiple access (WCDMA), high speed uplink/downlink packet access (HSxPA), etc. Die Konnektivitätseinheit 1420 kann ein Basisband-Chipset umfassen.
  • Die flüchtige Speichervorrichtung 1430 kann eine Anweisung/Daten speichern, die durch den Anwendungsprozessor 1410 verarbeitet werden, oder sie kann als Arbeitsspeicher dienen. Zum Beispiel kann die flüchtige Speichervorrichtung 1430 durch einen DRAM, einen SRAM, einem mobilen DRAM oder dergleichen umgesetzt sein.
  • Das nichtflüchtige Speichersystem 1440 kann einen Speichercontroller 1441 und eine nicht flüchtige Speichervorrichtung 1443 umfassen. Das nicht flüchtige Speichersystem 1440 kann ein Boot-Image zum Booten des mobilen Systems 1400 speichern. Zum Beispiel kann das nicht flüchtige Speichersystem 1440 durch einen elektrisch löschbaren programmierbaren Direktzugriffsspeicher (EEPROM), einen Flash-Speicher, einem PRAM, einem RRAM, einem MRAM, einem FRAM, einem nano floating gate Speicher (NFGM), einem Polymerdirektzugriffsspeicher (PoRAM) oder dergleichen umgesetzt sein. Das nichtflüchtige Speichersystem 1440 kann Speicherzellen umfassen und es kann eine Leseoperation an der Speicherzellenanordnung in einer Einheit einer Speicherseite durchführen, Fehlererfassung und -korrektur an den gelesenen Daten in einer Einheit eines Sektors durchführen, das Vorladen von Bitleitungen verhindern, die mit mindestens einem Erfolgs-Sektor verbunden sind, der korrigierbare Fehler umfasst, während Bitleitungen vorgeladen werden, die mit mindestens einem Zielsektor verbunden sind, der nicht korrigierbare Fehler umfasst, und eine erneute Leseversuchsoperation für Daten in mindestens einem Zielsektor durchführen, wodurch es weniger Strom verbraucht, als wenn alle Sektoren der zu lesenden Speicherseite für die erneute Leseversuchsoperation vorgeladen wären.
  • Die Benutzerschnittstelle 1450 kann mindestens eines von Eingabevorrichtung, wie ein keypad, einen touchscreen, ein Mikrofon, etc. umfassen und mindestens eine Ausgabevorrichtung, wie eine Displayvorrichtung, einen Lautsprecher etc. Die Stromversorgung 1460 kann das mobile System 1400 mit Strom versorgen. Das mobile System 1400 kann ferner einen Kamerabildprozessor (CIS), eine Speichervorrichtung, wie eine Speicherkarte, einer SDD, eine CD-ROM, etc. umfassen.
  • Das mobile System 1400 und/oder Bestandteile des mobilen Systems 1400 können in verschiedenen Formen gepackaged sein, wie package an 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 an board (COB), ceramic dual in-line package (CERDIP), plastic metric quad flat pack (MQFP), thin quad flat pack (TQFP), small outline IC (SOIC), shrink small outline package (SSOP), thin small outline package (TSOP), system in package (SIP), multi chip package (MCP), wafer-level fabricated package (WFP), oder wafer-level processed stack package (WSP).
  • 26 ist ein Diagramm, das ein Datenverarbeitungssystem darstellt, dass ein Speichersystem gemäß beispielhaften Ausführungsformen umfassen kann.
  • Mit Bezug auf 26 kann ein Datenverarbeitungssystem 1500 einen Prozessor 1510, einen I/O-Hub 1520, einen I/O Kontrollerknoten 1530, mindestens ein Speichermodul 1540 und eine Grafikkarte 1550 umfassen. Nach den Ausführungsformen kann ein Datenverarbeitungssystem 1500 irgendein Datenverarbeitungssystem sein, wie ein personal Computer (PC), ein Servercomputer, ein Arbeitsplatzcomputer, ein Tabletcomputer, ein Laptopcomputer, ein Mobiltelefon, ein Smartphone, ein PDA, ein PMP, eine Digitalkamera, ein digitales Fernsehen, eine set-top Box, ein Musikabspielgerät, eine tragbare Spielekonsole, ein Navigationssystem, etc.
  • Der Prozessor 1510 kann bestimmte Berechnungen oder Aufgaben durchführen. Zum Beispiel kann der Prozessor 1510 ein Mikroprozessor, eine zentrale Datenverarbeitungseinheit (CPU), ein digitaler Signalprozessor oder dergleichen sein. Der Prozessor 1510 kann einen einzelnen Prozessorkern oder eine Mehrzahl von Prozessorkernen umfassen. Der Prozessor 1510 kann ein Mehrkernprozessor sein, wie ein Zweikernprozessor, ein Vierkernprozessor, ein Sechskernprozessor, etc. Auch wenn das Beispiel, das in 22 dargestellt ist, nur einen Prozessor 1510 umfasst, können andere Ausführungsformen eine Mehrzahl von Prozessoren umfassen. In bestimmten Ausführungsformen kann der Prozessor 1510 einen zugehörigen cache Speicher aufweisen, der in dem oder außerhalb des Prozessors 1510 angeordnet ist.
  • Der Prozessor 1510 kann einen Speichercontroller (nicht dargestellt) umfassen, der den Betrieb eines Speichermoduls 1540 steuert. Der Speichercontroller, der vom Prozessor 1510 umfasst ist, kann als integrierter Speichercontroller (IMC) bezeichnet werden. Eine Speicherschnittstelle zwischen dem Speichercontroller und dem Speichermodul 1500 kann durch einen Kanal, der eine Mehrzahl von Signallleitungen umfasst, oder durch eine Mehrzahl von Kanälen umgesetzt sein. Jeder Kanal kann mit mindestens einem Speichermodul 1540 gekoppelt sein. Der Speichercontroller kann vom I/O-Hub 1520 umfasst sein. Der I/O-Hub 1520, der den Speichercontroller umfasst, kann als Speichercontrollerknoten (MCH) bezeichnet werden.
  • Das Speichermodul 1540 kann eine Mehrzahl nichtflüchtiger Speichervorrichtungen umfassen, welche die Daten speichern, die vom Speichercontroller 1511 bereitgestellt werden. Die nichtflüchtigen Speichervorrichtungen können Speicherzellen umfassen, und sie können eine Leseoperation an der Speicherzellenanordnung in einer Einheit einer Speicherseite durchführen, Fehlererfassung und Korrektur an den gelesenen Daten in einer Einheit eines Sektors durchführen, das Vorladen von Bitleitungen verhindern, die mit mindestens einem Erfolgs-Sektor verbunden sind, der korrigierbare Fehler enthält, während Bitleitungen vorgeladen werden, die mit mindestens einem Zielsektor verbunden sind, der nicht korrigierbare Fehler umfasst, und eine erneute Leseversuchsoperation für die Daten in mindestens einem Zielsektor durchführen, wodurch sie weniger Strom verbrauchen als wenn alle Sektoren der zu lesenden Speicherseite für die erneute Leseversuchsoperation vorgeladen wären.
  • Der I/O-Hub 1520 kann die Datenübertragung zwischen dem Prozessor 1510 und Vorrichtungen, wie der Grafikkarte 1550 organisieren. Der I/O-Hub 1520 kann mit dem Prozessor 1510 über mindestens eine von verschiedenen Schnittstellen, wie einem front side bus (FSB), einem system bus, einem HyperTransport, einem lightning data transport (LDT), einem QuickPath interconnect (QPI), eine common system Schnittstelle (CSI), etc. gekoppelt sein. Auch wenn 26 ein Beispiel eines Datenverarbeitungssystems 1500 darstellt, dass einen I/O-Hub 1520 umfasst, können nach Ausführungsformen Datenverarbeitungssysteme 1500 eine Mehrzahl von I/O-Hub umfassen.
  • Der I/O-Hub 1520 kann verschiedene Schnittstellen mit Vorrichtungen zur Verfügung stellen. Zum Beispiel kann der I/O-Hub 1520 eine accelerated graphics port (AGP) Schnittstelle, einen Peripherkomponentenschnittstellenexpress (PCIe), eine communications streaming architecture (CSA) Schnittstelle, etc. zur Verfügung stellen.
  • Die Grafikkarte 1550 kann mit dem I/O-Hub 1520 über den AGP oder den PCIe gekoppelt sein. Die Grafikkarte 1550 kann eine Anzeigevorrichtung (nicht dargestellt) zum darstellen eines Bildes steuern. Die Grafikkarte 1550 kann einen internen Prozessor und einen internen Speicher umfassen, um das Bild zu verarbeiten. In bestimmten Ausführungsformen kann der Eingabe/Ausgabeknoten 1520 eine interne Grafikvorrichtung zusammen oder anstelle der Grafikkarte 1550 umfassen. Die interne Grafikvorrichtung kann als eine integrierte Grafik bezeichnet werden und ein I/O-Hub, der den Speicherkontroller und die interne Grafikvorrichtung umfasst, kann als ein Grafik- und Speichercontrollerknoten (GMCH) bezeichnet werden.
  • Der I/O Controller-Hub 1530 kann ein Datenpuffern und eine Schnitstellenvermittlung vornehmen, um verschiedene Systemschnittstellen effizient zu betreiben. Der I/O Controller-Hub 1530 kann mit dem I/O 1520 durch einen internen Bus gekoppelt sein. Zum Beispiel kann der I/O Controller-Hub 1530 mit dem I/O-Hub 520 über mindestens eine verschiedener Schnittstellen, wie eine direct media Schnittstelle (DMI), eine Knotenschnittstelle, eine enterprise Southbridge Schnittstelle (ESI), PCIe, etc. gekoppelt sein.
  • Der I/O Controller-Hub 1530 kann für verschiedene Vorrichtungen verschiedene Schnittstellen bereitstellen. Zum Beispiel kann der I/O Controller-Hub 1530, einen universal serial bus (USB) port, einen serial advanced technology attachment (SATA) Port, einen general purpose input/output (GPIO), einen low pin count (LPC) bus, eine periphere serielle Schnittstelle (SPI), eine PCI, eine PCIe, etc. bereitstellen.
  • In bestimmten Ausführungsformen können der Prozessor 1510, der I/O-Hub 1520 und der I/O Controller-Hub 1530 als getrennte Chipsets oder getrennte integrierte Schaltkreise umgesetzt sein. In anderen Ausführungsformen können mindestens zwei von Prozessor 1510, I/O-Hub 1520 und I/O Controller-Hub 1530 als ein Chipset umgesetzt sein.
  • Die beispielhaften Ausführungsformen beziehen sich auf eine nicht flüchtige Speichervorrichtung und verschiedene Geräte und Systeme, welche diese verwenden. Daher können die beispielhaften Ausführungsformen in jeder Vorrichtung oder jedem System verwendet werden, das eine nicht flüchtige Speichervorrichtung umfasst, wie einem Mobiltelefon, einem Smartphone, einem PDA, PMP, einer Digitalkamera, einem digitalen Fernsehgerät, einer set-top box, einem Musikabspielgerät, einer tragbaren Spielekonsole, einer Navigationsvorrichtung, einem PC, einem Servercomputer, einem Arbeitsplatzcomputer, einem Tabletcomputer, einem Laptopcomputer, einer smart card, einem Drucker, etc.
  • Das Vorangegangene ist veranschaulichend für die Ausführungsformen und ist nicht als diesbezüglich beschränkend auszulegen. Auch wenn einige Ausführungsformen beschrieben wurden, werden Fachleute schnell erkennen, dass viele Veränderungen in den Ausführungsformen möglich sind, ohne materiell vom Umfang des erfinderischen Konzeptes abzuweichen, wie es in den beiliegenden Ansprüchen dargelegt ist. Daher ist es so zu verstehen, dass das Vorangegangene veranschaulichend für verschiedene Ausführungsformen ist und nicht als auf bestimmte offenbarte Ausführungsformen beschränkt auszulegen ist, und dass Veränderungen der offenbarten Ausführungsformen, als auch anderer Ausführungsformen, als in dem Umfang der Ansprüche umfasst vorgesehen sind.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • KR 10-2013-0004222 [0001]

Claims (10)

  1. Verfahren des Betreibens eines Speichersystems (100, 1440) mit einer nichtflüchtigen Speichervorrichtung (60) und einem Speichercontroller (29, 200, 1020, 1010, 1110, 1441, 1511), der die nichtflüchtige Speichervorrichtung (60) steuert, wobei das Verfahren aufweist: Lesen von Daten (711, D1–Dm, DT1, DT2...) von einer Speicherzellanordnung (100) in einer Einheit einer Speicherseite (110b, 400, 440), die eine Mehrzahl von Sektoren (41141k, 610880) umfasst; Durchführen eines Fehlerkorrekturdecodierens an den gelesenen Daten (711, D1–Dm, DT1, DT2...) in einer Einheit eines Sektors (41141k, 610880) der Speicherseite (110b, 400, 440); Auswählen mindestens eines Zielsektors, der mindestens einen unkorrigierbaren Fehler in den gelesenen Daten (711, D1–Dm, DT1, DT2...) davon aufweist, und Auswählen mindestens eines Erfolgs-Sektors (41141k, 610880), wobei alle Fehler der gelesenen Daten (711, D1–Dm, DT1, DT2...) des Erfolgs-Sektors (41141k, 610880) durch das Fehlerkorrekturdecodieren korrigierbar sind; Verhindern eines Vorladens von Bitleitungen (BL, BL(1)–BL(m), 611661), die mit dem mindestens einen Erfolgs-Sektor (41141k, 610880) verbunden sind, während Bitleitungen (BL, BL(1)–BL(m), 611661) vorgeladen werden, die mit dem mindestens einen Zielsektor verbunden sind; und Durchführen einer erneuten Leseversuchsoperation für Daten (711, D1–Dm, DT1, DT2...), die in dem mindestens einen Zielsektor gespeichert sind.
  2. Verfahren nach Anspruch 1, wobei jeder Sektor (41141k, 610880) ein oder mehrere Paritätsbits speichert, die basierend auf den Daten (711, D1–Dm, DT1, DT2...) erzeugt werden, die in dem Sektor (41141k, 610880) gespeichert sind, wobei eine Anzahl von Fehlern der gelesenen Daten (711, D1–Dm, DT1, DT2...) des mindestens einen Zielsektors größer ist als eine Anzahl der Paritätsbits, und wobei eine Anzahl von Fehlern der gelesenen Daten (711, D1–Dm, DT1, DT2...) des mindestens einen Erfolgs-Sektors (41141k, 610880) kleiner oder gleich ist wie die Anzahl der Paritätsbits.
  3. Verfahren nach Anspruch 1, wobei die erneute Leseversuchsoperation für die zu lesenden Daten (711, D1–Dm, DT1, DT2...), die in mindestens einem Zielsektor gespeichert sind, wiederholt wird, bis die unkorrigierbaren Fehler durch die Fehlerkorrekturdecodierung korrigiert sind.
  4. Verfahren nach Anspruch 1, wobei die erneute Leseversuchsoperation für die Daten (711, D1–Dm, DT1, DT2...) des mindestens einen Zielsektors eine vorbestimmte Referenzanzahl von Wiederholungen wiederholt wird, wobei das Verfahren ferner aufweist: Durchführen einer Lösch-Wiederauffrischungsoperation, um einen Speicherblock, der den mindestens einen Zielsektor aufweist, zu einen anderen Speicherblock zu kopieren, wenn die erneute Leseversuchsoperation für die Daten (711, D1–Dm, DT1, DT2...), die in dem mindestens einen Zielsektor gespeichert sind, öfter als eine vorbestimmte Referenzanzahl von Wiederholungen wiederholt wird, und um den Speicherblock zu löschen, der den mindestens einen Zielsektor umfasst.
  5. Verfahren nach Anspruch 1, wobei der mindestens eine Zielsektor ausgewählt wird, wenn der Speichercontroller (29, 200, 1020, 1010, 1110, 1441, 1511) ein Muster von Daten (711, D1–Dm, DT1, DT2...) in Speicherzellen (MC1, MC2, MC3) eingibt, die im Zielsektor umfasst sind, das sich von einem Muster von Daten (711, D1–Dm, DT1, DT2...) unterscheidet, das in Speicherzellen (MC1, MC2, MC3) anderer Sektoren (41141k, 610880) der Speicherseite (110b, 400, 440) außer dem Zielsektor eingegeben wird, und wobei Datenwerte von „0” in die Speicherzellen (MC1, MC2, MC3) eingegeben werden, die im Zielsektor enthalten sind und Datenwerte von „1” in die Speicherzellen (MC1, MC2, MC3) eingegeben werden, die in den anderen Sektoren (41141k, 610880) enthalten sind.
  6. Verfahren nach Anspruch 1, wobei die Größen der Sektoren (41141k, 610880) jeweils entsprechend eines Merkmalseinstellbefehls durch den Speichercontroller (29, 200, 1020, 1010, 1110, 1441, 1511) festgelegt werden und die Größen der Sektoren (41141k, 610880) unter Verwendung mindestens eines Teils der Daten (711, D1–Dm, DT1, DT2...) festgelegt werden, die nach dem Merkmalseinstellbefehls zur nichtflüchtigen Speichervorrichtung übertragen werden.
  7. Verfahren nach Anspruch 1, wobei die Größen der Sektoren (41141k, 610880) in einer Sicherungseinheit (353) gespeichert werden, die in der nichtflüchtigen Speichervorrichtung (60) durch eine Schmelzsicherungsoption auf einem Wafer-Niveau oder einem Package-Niveau enthalten ist, und entsprechend Daten (711, D1–Dm, DT1, DT2...) festgelegt werden, die in der Schmelzsicherungseinheit (353) während einer Einschaltsequenz der nichtflüchtigen Speichervorrichtung (60) gespeichert werden.
  8. Verfahren nach Anspruch 1, wobei der Speichercontroller (29, 200, 1020, 1010, 1110, 1441, 1511) für die nichtflüchtige Speichervorrichtung (60) zum Auswählen des mindestens einen Zielsektors einen Sektorauswahlbefehl und eine Sektoradresse bereitstellt.
  9. Verfahren des Betreibens eines Speichersystems (100, 1440) mit einer nichtflüchtigen Speichervorrichtung (60) und einem Speichercontroller (29, 200, 1020, 1010, 1110, 1441, 1511), der die nichtflüchtige Speichervorrichtung (60) steuert, wobei die Speichervorrichtung eine Vielzahl von Speicherzellen (MC1, MC2, MC3) aufweist, die in einer Vielzahl von Speicherseiten (110b, 400, 440) organisiert sind, von denen jede eine Mehrzahl von Sektoren (41141k, 610880) zum Speichern von Daten (711, D1–Dm, DT1, DT2...) darin aufweist, wobei das Verfahren aufweist: Lesen von Daten (711, D1–Dm, DT1, DT2...) von einer ausgewählten Speicherseite (110b, 400, 440) der nichtflüchtigen Speichervorrichtung (60); Durchführen eines Fehlerkorrekturdecodierens an den gelesenen Daten (711, D1–Dm, DT1, DT2...) auf einer Sektor-zu-Sektor-Basis für jeden der Sektoren (41141k, 610880) der ausgewählten Speicherseite (110b, 400, 440); und wenn das Fehlerkorrekturdecodieren nicht in der Lage ist, mindestens einen Datenfehler von mindestens einem Zielsektor der ausgewählten Speicherseite (110b, 400, 440) zu korrigieren, aber in der Lage ist, alle Datenfehler eines oder mehrerer Sektoren (41141k, 610880) der ausgewählten Speicherseite (110b, 400, 440) zu korrigieren, Übertragen eines Zielsektorauswahlbefehls von dem Speichercontroller (29, 200, 1020, 1010, 1110, 1441, 1511) zu der nichtflüchtigen Speichervorrichtung (60), wobei der Zielsektorauswahlbefehl die nichtflüchtige Speichervorrichtung (60) dazu bringt: eine Spannung zu andern, die an die Speicherzellen (MC1, MC2, MC3) des mindestens einen Zielsektors angelegt werden soll, Zielbitleitungen, die mit dem mindestens einen Zielsektor verbunden sind vorzuladen, während sie das Vorladen von Bitleitungen (BL, BL(1)–BL(m), 611661) verhindert, die mit dem einen oder mehreren Erfolgs-Sektoren (41141k, 610880) verbunden sind, und eine erneute Leseversuchsoperation mit der veränderten Spannung für die Daten (711, D1–Dm, DT1, DT2...) auszuführen, die in dem mindestens einen Zielsektor gespeichert sind.
  10. Verfahren nach Anspruch 9, wobei jeder Sektor (41141k, 610880) ein oder mehrere Paritätsbits speichert, die auf der Basis der Daten (711, D1–Dm, DT1, DT2...) erzeugt wurden, die in dem Sektor (41141k, 610880) gespeichert sind, wobei eine Anzahl von Fehlern der gelesenen Daten (711, D1–Dm, DT1, DT2...) des mindestens einen Zielsektors größer ist als eine Anzahl der Paritätsbits, und wobei eine Anzahl von Fehlern der gelesenen Daten (711, D1–Dm, DT1, DT2...) jedes der einen oder mehreren Erfolgs-Sektoren (41141k, 610880) niedriger oder gleich ist wie die Anzahl der Paritätsdaten und die erneute Leseversuchsoperation für die zu lesenden Daten (711, D1–Dm, DT1, DT2...) des mindestens einen Zielsektors wiederholt wird, bis das Fehlerkorrekturdecodieren in der Lage ist, alle Datenfehler des mindestens einen Zielsektors der ausgewählten Speicherseite (110b, 400, 440) zu korrigieren oder eine vorbestimmte Referenzanzahl von Wiederholungen, je nachdem, was zuerst auftritt.
DE102014100161.3A 2013-01-15 2014-01-09 Speichersystem und Betriebsverfahren davon Pending DE102014100161A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KRKR-10-2013-0004222 2013-01-15
KR1020130004222A KR102048765B1 (ko) 2013-01-15 2013-01-15 메모리 시스템의 동작 방법 및 메모리 시스템

Publications (1)

Publication Number Publication Date
DE102014100161A1 true DE102014100161A1 (de) 2014-07-17

Family

ID=51015177

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014100161.3A Pending DE102014100161A1 (de) 2013-01-15 2014-01-09 Speichersystem und Betriebsverfahren davon

Country Status (5)

Country Link
US (1) US9230669B2 (de)
JP (1) JP6228446B2 (de)
KR (1) KR102048765B1 (de)
CN (1) CN103928052B (de)
DE (1) DE102014100161A1 (de)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100139010A (ko) * 2008-03-11 2010-12-31 에이저 시스템즈 인크 멀티-레벨 셀 플래쉬 메모리 디바이스 내에 데이터를 저장하는 방법 및 멀티-레벨 셀 플래쉬 메모리 디바이스
US20150256916A1 (en) * 2014-03-04 2015-09-10 Knowles Electronics, Llc Programmable Acoustic Device And Method For Programming The Same
KR102188061B1 (ko) * 2014-07-29 2020-12-07 삼성전자 주식회사 메모리 장치, 메모리 시스템 및 메모리 장치의 동작방법
CN105989898B (zh) * 2014-10-08 2018-11-27 光宝科技股份有限公司 存储器阵列中故障地址的数据结构及故障地址的编码方法
KR20160073834A (ko) * 2014-12-17 2016-06-27 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템 동작 방법
KR102239356B1 (ko) 2015-02-17 2021-04-13 삼성전자주식회사 클록 제어 유닛 또는 전원 제어 유닛을 포함하는 저장 장치와 메모리 시스템, 그리고 그것의 동작 방법
KR102435873B1 (ko) * 2015-12-18 2022-08-25 삼성전자주식회사 스토리지 장치 및 그것의 리드 리클레임 방법
US10128253B2 (en) 2016-01-29 2018-11-13 Taiwan Semiconductor Manufacturing Company, Ltd. Two-port SRAM structure
CN105893167A (zh) * 2016-03-28 2016-08-24 联想(北京)有限公司 一种信息处理方法及装置、电子设备
KR102438988B1 (ko) * 2016-04-07 2022-09-02 삼성전자주식회사 랜덤화 연산을 수행하는 불휘발성 메모리 장치
CN106227685A (zh) * 2016-07-14 2016-12-14 昆山百敖电子科技有限公司 一种实现秒脉冲触发计算机中断的方法
KR20180026022A (ko) 2016-09-01 2018-03-12 삼성전자주식회사 스토리지 장치 및 그것의 카피백 방법
US10042755B2 (en) 2016-09-28 2018-08-07 Micron Technology, Inc. 3D vertical NAND memory device including multiple select lines and control lines having different vertical spacing
KR20180051272A (ko) * 2016-11-08 2018-05-16 에스케이하이닉스 주식회사 데이터 저장 장치 및 그것의 동작 방법
CN108346452B (zh) * 2017-01-25 2023-05-02 三星电子株式会社 存储器装置和控制存储器装置中的ecc操作的方法
US10579471B2 (en) 2017-03-02 2020-03-03 Toshiba Memory Corporation Storage device and error correction method for storage device
JP6884675B2 (ja) * 2017-09-20 2021-06-09 株式会社東芝 ビデオサーバ、及び放送システム
KR102456582B1 (ko) * 2017-12-19 2022-10-20 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
KR20190122422A (ko) * 2018-04-20 2019-10-30 에스케이하이닉스 주식회사 메모리 시스템 및 그 동작 방법
CN110908825B (zh) * 2018-09-17 2024-03-01 兆易创新科技集团股份有限公司 一种数据读取方法、装置、存储设备及存储介质
KR102599188B1 (ko) * 2018-11-09 2023-11-08 삼성전자주식회사 호스트 메모리를 사용하는 스토리지 장치 및 그것의 동작 방법
KR20200076519A (ko) * 2018-12-19 2020-06-29 에스케이하이닉스 주식회사 컨트롤러, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법
KR102645786B1 (ko) * 2019-07-08 2024-03-12 에스케이하이닉스 주식회사 컨트롤러, 메모리 시스템 및 그것의 동작 방법
KR20210024916A (ko) * 2019-08-26 2021-03-08 에스케이하이닉스 주식회사 메모리 장치 및 이의 동작 방법
US11468963B2 (en) * 2020-12-08 2022-10-11 Macronix International Co., Ltd. Memory device and read method thereof
US20230016520A1 (en) * 2021-07-19 2023-01-19 Micron Technology, Inc. Strategic memory cell reliability management

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130004222A (ko) 2012-11-30 2013-01-09 김미정 볼풀

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR950008789B1 (ko) * 1992-07-30 1995-08-08 삼성전자주식회사 멀티-이씨씨(ecc)회로를 내장하는 반도체 메모리 장치
JP3980731B2 (ja) * 1996-12-20 2007-09-26 株式会社ルネサステクノロジ 不揮発性半導体記憶装置および読出し方法
US6711051B1 (en) 2002-09-05 2004-03-23 National Semiconductor Corporation Static RAM architecture with bit line partitioning
US7424648B2 (en) * 2005-03-10 2008-09-09 Matsushita Electric Industrial Co., Ltd. Nonvolatile memory system, nonvolatile memory device, data read method, and data read program
US7755961B2 (en) * 2006-07-07 2010-07-13 Rao G R Mohan Memories with selective precharge
US7539059B2 (en) 2006-12-29 2009-05-26 Intel Corporation Selective bit line precharging in non volatile memory
KR101397549B1 (ko) * 2007-08-16 2014-05-26 삼성전자주식회사 고속 프로그램이 가능한 불휘발성 반도체 메모리 시스템 및그것의 독출 방법
US7995409B2 (en) 2007-10-16 2011-08-09 S. Aqua Semiconductor, Llc Memory with independent access and precharge
US7719902B2 (en) 2008-05-23 2010-05-18 Sandisk Corporation Enhanced bit-line pre-charge scheme for increasing channel boosting in non-volatile storage
JP2010009141A (ja) * 2008-06-24 2010-01-14 Toshiba Corp データ転送方法
US8040738B2 (en) 2008-12-30 2011-10-18 Spansion Llc Method and apparatus for performing semiconductor memory operations
US8296628B2 (en) 2009-03-06 2012-10-23 Texas Instruments Incorporated Data path read/write sequencing for reduced power consumption
KR101552210B1 (ko) * 2009-03-10 2015-09-10 삼성전자주식회사 불휘발성 메모리 장치 및 그것의 읽기 방법
KR101678909B1 (ko) * 2009-09-17 2016-11-23 삼성전자주식회사 플래시 메모리 시스템 및 그것의 소거 리프레쉬 방법
KR101603099B1 (ko) * 2009-10-01 2016-03-28 삼성전자주식회사 불안정 메모리 셀 산포를 검출하는 메모리 시스템 및 상기 불안정 메모리 셀 산포 검출방법
JP5349256B2 (ja) * 2009-11-06 2013-11-20 株式会社東芝 メモリシステム
JP5039160B2 (ja) * 2010-03-02 2012-10-03 株式会社東芝 不揮発性半導体記憶システム
KR101650130B1 (ko) * 2010-05-14 2016-08-24 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 저장 장치 및 그것의 카피-백 방법
KR101861247B1 (ko) * 2011-04-06 2018-05-28 삼성전자주식회사 메모리 컨트롤러, 이의 데이터 처리 방법, 및 이를 포함하는 메모리 시스템
KR101756111B1 (ko) * 2011-04-15 2017-07-10 삼성전자 주식회사 메모리 컨트롤러 구동방법, 메모리 컨트롤러, 메모리 장치 및 메모리 시스템
JP2013246849A (ja) * 2012-05-25 2013-12-09 Toshiba Corp メモリシステム
KR20140002833A (ko) * 2012-06-26 2014-01-09 삼성전자주식회사 비휘발성 메모리 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130004222A (ko) 2012-11-30 2013-01-09 김미정 볼풀

Also Published As

Publication number Publication date
JP2014137816A (ja) 2014-07-28
US9230669B2 (en) 2016-01-05
CN103928052A (zh) 2014-07-16
CN103928052B (zh) 2019-08-20
US20140198573A1 (en) 2014-07-17
KR20140092027A (ko) 2014-07-23
KR102048765B1 (ko) 2020-01-22
JP6228446B2 (ja) 2017-11-08

Similar Documents

Publication Publication Date Title
DE102014100161A1 (de) Speichersystem und Betriebsverfahren davon
US20210005270A1 (en) Nonvolatile semiconductor memory device including a memory cell array and a control circuit applying a reading voltage
CN105719703B (zh) 存储***及其操作方法
US8537621B2 (en) Non-volatile memory device and read method thereof
CN106847339B (zh) 存储器装置及其操作方法
US8665643B2 (en) Non-volatile memory device and read method thereof
CN106920570B (zh) 存储器***及其操作方法
DE102014103125A1 (de) Verfahren und Vorrichtung zum Optimieren des Log-Likelihood-Quotienten (LLR), die verwendet werden für eine nichtflüchtige Speichervorrichtung und zum Korrigieren von Fehlern in einer nichtflüchtigen Speichervorrichtung
DE102011054181A1 (de) Nichtflüchtige Speichervorrichtung und Ausleseverfahren davon
DE102007016460A1 (de) Nichtflüchtiges Speicherbauelement, nichtflüchtiges Speichersystem und Leseverfahren für ein nichtflüchtiges Speicherbauelement
CN106910521B (zh) 存储器***及其操作方法
DE102013109235A1 (de) Flash-Speichersystem mit Detektor für anormale Wortleitung und Verfahren zum Erfassen einer anormalen Wortleitung
DE102013107626A1 (de) Speichervorrichtung, Speichersystem und Verfahren zum Steuern einer Lesespannung der Speichervorrichtung
CN109036488B (zh) 存储器控制器、操作该存储器控制器的方法以及存储器***
DE102013108491A1 (de) Nichtflüchtige Speichervorrichtung und Betriebsverfahren mit variablen Speicherzellenzustandsdefinitionen
CN110390984B (zh) 存储器***和存储器***的操作方法
KR20100111532A (ko) 불휘발성 메모리 장치의 프로그램 방법
US9099183B2 (en) Program VT spread folding for NAND flash memory programming
DE102013100596A1 (de) Nichtflüchtige Speichervorrichtung, Speichersystem mit demselben und Blockverwaltungsverfahren, sowie Programmier- und Löschverfahren davon
US12007860B2 (en) Salvaging bad blocks in a memory device
US20230033870A1 (en) Memory device virtual blocks using half good blocks
DE112019007666T5 (de) Schreibpuffersteuerung in einem verwalteten Speichersystem
CN106407133B (zh) 存储***及其操作方法
CN106484750B (zh) 数据处理***
CN106126437B (zh) 存储***

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: KUHNEN & WACKER PATENT- UND RECHTSANWALTSBUERO, DE

R082 Change of representative

Representative=s name: KUHNEN & WACKER PATENT- UND RECHTSANWALTSBUERO, DE

R012 Request for examination validly filed