DE102021121974A1 - Speicher-steuereinheit und speichersystem, welches diese enthält - Google Patents

Speicher-steuereinheit und speichersystem, welches diese enthält Download PDF

Info

Publication number
DE102021121974A1
DE102021121974A1 DE102021121974.4A DE102021121974A DE102021121974A1 DE 102021121974 A1 DE102021121974 A1 DE 102021121974A1 DE 102021121974 A DE102021121974 A DE 102021121974A DE 102021121974 A1 DE102021121974 A1 DE 102021121974A1
Authority
DE
Germany
Prior art keywords
data
gear
memory
read
storage device
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
DE102021121974.4A
Other languages
English (en)
Inventor
Jae-Kun Lee
Jea-young Kwon
Hwan Kim
Song Ho Yoon
Sil Wan CHANG
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 DE102021121974A1 publication Critical patent/DE102021121974A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/1072Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in multilevel memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • 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
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • 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/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • 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/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • 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
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check

Abstract

Ein Speichersystem kann eine Speichervorrichtung enthalten, umfassend einen ersten Bereich einschließlich einer Single-Level-Zelle und einen zweiten Bereich, welcher sich von dem ersten Bereich unterscheidet, und eine Speicher-Steuereinheit, welche konfiguriert ist, um Daten vom ersten Bereich bei einer ersten Gangstufe von einer Mehrzahl an Gangstufen zu lesen, ein Fehlerniveau der Lesedaten und einen Zustand der Speichervorrichtung zu bestimmen, und die erste Gangstufe auf eine zweite Gangstufe von der Mehrzahl an Gangstufen basierend auf dem bestimmten Fehlerniveau von den Daten und dem bestimmten Zustand der Speichervorrichtung zu ändern.

Description

  • HINTERGRUND
  • Verschiedene Beispielausführungsformen des erfinderischen Konzepts beziehen sich auf eine Speichervorrichtung, ein Speichersystem, und/oder ein Verfahren zum Betrieb der Speichervorrichtung.
  • Eine Flash-Speichervorrichtung speichert Daten durch Änderung eines Spannungs-Schwellenwerts von Speicherzellen und liest die Daten unter Verwendung einer gewünschten und/oder vorbestimmten Leseniveauspannung. In letzter Zeit werden Speichervorrichtungen, welche einen Flash-Speicher, wie ein Festkörperlaufwerk (SSD) und eine Speicherkarte, umfassen, häufig verwendet. Dies liegt daran, dass die Flash-Speichervorrichtung eine nichtflüchtige Speichervorrichtung ist, welche Eigenschaften, wie einen geringen Stromverbrauch und einen hohen Grad an Integration, aufweist.
  • In der Flash-Speichervorrichtung werden, um von einem Host übermittelte Schreibdaten zu speichern, die Schreibdaten in einem Speicherblock eines Single-Level-Zellen-Bereichs oder in einem Speicherblock eines Multi-Level-Zellen-Bereichs entsprechend den Eigenschaften der Schreibdaten gespeichert.
  • KURZFASSUNG
  • Aspekte von verschiedenen Beispielausführungsformen des erfinderischen Konzepts, stellen eine Speichervorrichtung, welche fähig ist, Datenverlässlichkeit sicherzustellen und eine verbesserte Betriebsgeschwindigkeit aufzuweisen, ein System einschließlich der Speichervorrichtung, und/oder ein Betriebsverfahren desselben bereit.
  • Aspekte von verschiedenen Beispielausführungsformen des erfinderischen Konzepts stellen eine Speichervorrichtung, in welcher eine Daten-Lesegeschwindigkeit entsprechend den Eigenschaften einer Speichervorrichtung dynamisch eingestellt wird, ein System einschließlich der Speichervorrichtung, und/oder ein Betriebsverfahren desselben bereit.
  • Mindestens eine Beispielausführungsform des erfinderischen Konzepts stellt ein Speichersystem einschließlich einer Speichervorrichtung bereit, umfassend einen ersten Bereich einschließlich einer Single-Level-Zelle und einen zweiten Bereich, welcher sich von dem ersten Bereich unterscheidet, und eine Speicher-Steuereinheit, welche konfiguriert ist, um Daten vom ersten Bereich bei einer ersten Gangstufe von einer Mehrzahl an Gangstufen zu lesen, ein Fehlerniveau von den Lesedaten und einen Zustand der Speichervorrichtung zu bestimmen, und die erste Gangstufe auf eine zweite Gangstufe von der Mehrzahl an Gangstufen basierend auf dem bestimmten Fehlerniveau der Lesedaten und dem bestimmten Zustand der Speichervorrichtung zu ändern.
  • Mindestens eine Beispielausführungsform des erfinderischen Konzepts stellt ein Betriebsverfahren einer Speicher-Steuereinheit bereit, welches umfasst: Lesen von Daten von einer Speichervorrichtung unter Verwendung einer ersten Gangstufe von einer Mehrzahl an Gangstufen, Bestimmen eines Fehlerniveaus von den Lesedaten und eines Zustandes der Speichervorrichtung, und dynamisches Einstellen einer Lesegeschwindigkeit der Speichervorrichtung auf eine zweite Gangstufe von der Mehrzahl an Gangstufen basierend auf dem bestimmten Fehlerniveau der Lesedaten und des Zustandes der Speichervorrichtung.
  • Mindestens eine Beispielausführungsform des erfinderischen Konzepts stellt ein Speichersystem bereit, welches umfasst: eine Speichervorrichtung, welche Daten speichert, und eine Speicher-Steuereinheit einschließlich einer Fehlerkorrekturcode (ECC)-Engine und einer Lese-Steuereinheit, wobei die ECC-Engine konfiguriert ist, um Niveaus von Fehlern, welche in von der Speichervorrichtung gelesenen Daten enthalten sind, zu erfassen, und die Lese-Steuereinheit konfiguriert ist, um einen Zustand der Speichervorrichtung zu bestimmen, und eine Lesegeschwindigkeit der Speichervorrichtung auf eine erste Gangstufe unter einer Mehrzahl an Gangstufen basierend auf dem erfassten Niveau von Fehlern durch die ECC-Engine und den bestimmten Zustand der Speichervorrichtung dynamisch einzustellen.
  • Es sollte bemerkt werden, dass Aufgaben der Beispielausführungsformen des erfinderischen Konzepts nicht darauf beschränkt sind und andere Aufgaben der Beispielausführungsformen des erfinderischen Konzepts dem Fachmann aus den nachstehenden Beschreibungen ersichtlich sind.
  • Figurenliste
  • Die vorstehenden und andere Aspekte und Eigenschaften von Beispielausführungsformen des erfinderischen Konzepts werden durch detaillierte Beschreibung von Beispielausführungsformen desselben mit Bezug auf die beigefügten Zeichnungen ersichtlicher, wobei:
    • 1 ein schematisches Block-Diagramm ist, welches ein Speichersystem gemäß einigen Beispielausführungsformen schematisch darstellt.
    • 2 ein Block-Diagramm ist, welches eine Speicher-Steuereinheit von 1 gemäß einigen Beispielausführungsformen darstellt.
    • 3 ein Block-Diagramm ist, welches eine Speichervorrichtung von 1 gemäß einigen Beispielausführungsformen darstellt.
    • 4 eine Mapping-Tabelle einer Mehrzahl an Bedingungen zum Einstellen einer Gangstufe gemäß einigen Beispielausführungsformen darstellt.
    • 5 und 6 konzeptionelle Diagramme sind, welche Betriebsverfahren eines Speichersystems gemäß einigen Beispielausführungsformen darstellen.
    • 7 ein Diagramm ist, welches ein Betriebsverfahren eines Speichersystems gemäß einigen Beispielausführungsformen darstellt.
    • 8 ein Block-Diagramm eines Speichersystems gemäß mindestens einer Beispielausführungsform des erfinderischen Konzepts ist.
    • 9 ein Block-Diagramm eines Beispiels der Speichervorrichtung 220 von 1 gemäß einigen Beispielausführungsformen ist.
    • 10 ein Diagramm zum Beschreiben einer 3D-V-NAND-Struktur ist, welche auf die Speichervorrichtung 220 von 1 gemäß einigen Beispielausführungsformen anwendbar ist.
    • 11 ein Diagramm, welches ein System ist, auf welches die Speichereinrichtung 200 von 1 angewandt wird, gemäß einigen Beispielausführungsformen darstellt.
  • DETAILLIERTE BESCHREIBUNG
  • Nachstehend werden verschiedene Beispielausführungsformen des erfinderischen Konzepts mit Bezug auf die beigefügten Zeichnungen beschrieben.
  • 1 ist ein schematisches Block-Diagramm, welches ein Speichersystem gemäß einigen Beispielausführungsformen schematisch darstellt. 2 ist ein Block-Diagramm, welches eine Speicher-Steuereinheit von 1 gemäß einigen Beispielausführungsformen darstellt. 3 ist ein Block-Diagramm, welches eine Speichervorrichtung von 1 gemäß einigen Beispielausführungsformen darstellt.
  • Bezugnehmend auf 1 kann ein Host-Speichersystem 10 mindestens einen Host 100 und/oder mindestens eine Speichereinrichtung 200, etc. umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt, und zum Beispiel kann das System 10 eine größere oder kleinere Anzahl an Bestandteilen, wie eine Mehrzahl an Hosts und/oder eine Mehrzahl an Speichervorrichtungen, etc. umfassen. Die Speichereinrichtung 200 kann mindestens eine Speicher-Steuereinheit 210 und/oder mindestens eine Speichervorrichtung 220, etc. umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt. Gemäß mindestens einer Beispielausführungsform kann die Speichervorrichtung 220 ein nichtflüchtiger Speicher (NVM) sein, aber die Beispielausführungsformen sind nicht darauf beschränkt. Gemäß mindestens einer Beispielausführungsform des erfinderischen Konzepts kann der Host 100 (z.B. ein externer Host, eine externe Host-Vorrichtung, etc.) mindestens eine Host-Steuereinheit 110 und/oder einen Host-Speicher 120, etc. umfassen. Der Host-Speicher 120 kann als einer Pufferspeicher zur vorübergehenden Speicherung von Daten, welche an die Speichereinrichtung 200 übermittelt werden sollen, und/oder Daten, welche von der Speichereinrichtung 200 übermittelt werden sollen, funktionieren, aber ist nicht darauf beschränkt.
  • Die Speichereinrichtung 200 kann Speichermedien zur Speicherung von Daten entsprechend einer Anfrage des Hosts 100 umfassen. Zum Beispiel kann die Speichereinrichtung 200 mindestens eines von einem Festkörperlaufwerk (SSD), einem Laufwerk, einem eingebetteten Speicher, und/oder einem austauschbaren externen Speicher, etc. umfassen. Wenn die Speichereinrichtung 200 ein SSD ist, kann die Speichereinrichtung 200 eine Vorrichtung sein, welche dem nichtflüchtigen Speicherexpress (NVMe)-Standard entspricht, aber die Beispielausführungsformen sind nicht darauf beschränkt. Wenn die Speichereinrichtung 200 ein eingebetteter Speicher und/oder ein externer Speicher ist, kann die Speichereinrichtung 200 eine Vorrichtung sein, welche einem Universal-Flash-Storage (UFS)- und/oder eingebetteten Multimedia-Karten (eMMC)-Standard entspricht, aber ist nicht darauf beschränkt. Der Host 100 und die Speichereinrichtung 200 sind jeweils fähig, ein Paket (z.B. ein Daten-Paket, etc.) entsprechend einem verwendeten Standard-Protokoll zu erzeugen und/oder zu übermitteln.
  • Wenn die Speichervorrichtung 220 der Speichereinrichtung 200 einen Flash-Speicher umfasst, kann der Flash-Speicher eine zweidimensionale (2D) NAND-Speichermatrix und/oder eine dreidimensionale (3D) (oder vertikale NAND (VNAND))-Speichermatrix umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt. Als ein anderes Beispiel kann die Speichereinrichtung 200 andere verschiedene Typen von nichtflüchtigen Speichern umfassen. Zum Beispiel können ein magnetischer Direktzugriffsspeicher (MRAM), ein Spin-Transfer-Torque-MRAM, ein Conductive-Bridging-RAM (CBRAM), ein ferroelektrischer RAM (FeRAM), ein Phasen-RAM (PRAM), eine resistiver (RRAM), und/oder verschiedene andere Typen von Speichern als die Speichereinrichtung 200 angewandt werden, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Gemäß mindestens einer Beispielausführungsform kann die Host-Steuereinheit 110 und der Host-Speicher 120 als getrennte Halbleiter-Chips verkörpert werden, aber sind nicht darauf beschränkt. Zusätzlich kann, in einigen Beispielausführungsformen, die Host-Steuereinheit 110 und der Host-Speicher 120 auf demselben Halbleiter-Chip, etc. integriert werden. Zum Beispiel kann die Host-Steuereinheit 110 ein von einer Mehrzahl an Modulen, welche in einem Anwendungsprozessor, etc. enthalten sind, sein, und der Anwendungsprozessor kann als ein Ein-Chip-System (SoC), etc. verkörpert sein. Der Host-Speicher 120 kann ein eingebetteter Speicher, welcher im Anwendungsprozessor bereitgestellt ist, und/oder ein nichtflüchtiger Speicher, und/oder ein externes Speichermodul (z.B. außerhalb) des Anwendungsprozessors, etc. sein.
  • Die Host-Steuereinheit 110 kann einen Betrieb der Speicherung von Daten (z.B. Schreibdaten) des Host-Speichers 120 in der Speichervorrichtung 220 und/oder Speicherung von Daten (z.B. Lesedaten) der Speichervorrichtung 220 im Host-Speicher 120 verwalten, aber ist nicht darauf beschränkt, und kann zum Beispiel andere Datenbetriebe bzw. Datenoperationen, wie einen Löschbetrieb, einen verschleißarmen Betrieb, einen Garbage-Collection-Betrieb, etc. durchführen.
  • Die Speicher-Steuereinheit 210 kann eine Host-Schnittstelle 211, eine Speicher-Schnittstelle 212, und/oder eine Steuereinheit 213 (z.B. eine Steuereinheit, eine Steuerschaltung, eine Verarbeitungsschaltung), etc. umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt. Die Speicher-Steuereinheit 210 kann ferner eine Flash-Übersetzungsschicht (FTL) 214, einen Paket-Manager 215, einen Pufferspeicher 216, eine Fehlerkorrekturcode (ECC)-Engine 217, eine Advanced Encryption Standard (AES)-Engine 218 , und/oder eine Lese-Steuereinheit 300, etc. umfassen, aber ist nicht darauf beschränkt, und kann zum Beispiel einen anderen Typ von Daten-Verschlüsselungs-Engine verwenden. Die Speicher-Steuereinheit 210 kann ferner einen Arbeitsspeicher (nicht gezeigt), in welchem die FTL 214 geladen wird, umfassen, und die Steuereinheit 213 kann die FTL 214 ausführen, um einen Daten-Schreibbetrieb und/oder einen Daten-Lesebetrieb bezüglich der Speichervorrichtung 220, etc. zu steuern.
  • Die Host-Schnittstelle 211 kann mindestens ein Paket (z.B. Daten-Paket, etc.) an den Host 100 übermitteln und/oder mindestens ein Paket vom Host 100 empfangen. Ein von dem Host 100 an die Host-Schnittstelle 211 übermitteltes Paket kann einen Befehl und/oder Daten umfassen, welche auf die Speichervorrichtung 220 geschrieben werden sollen, und ein von der Host-Schnittstelle 211 an den Host 100 übermitteltes Paket kann eine Antwort auf den Befehl und/oder die von der Speichervorrichtung 220 gelesenen Daten umfassen, aber ist nicht darauf beschränkt. Die Speicher-Schnittstelle 212 kann Daten, welche auf die Speichervorrichtung 220 geschrieben werden sollen, an die Speichervorrichtung 220 übermitteln, und/oder kann von der Speichervorrichtung 220 gelesene Daten empfangen. Die Speicher-Schnittstelle 212 kann implementiert werden, um Standard-Konventionen, wie Toggle und/oder ONFI, etc. zu entsprechen.
  • Die FTL 214 kann verschiedene Funktionen, wie Adressen-Mapping, Verschleißausgleich, und/oder Garbage-Collection, etc. durchführen. Adressen-Mapping ist eine Operation der Umwandlung einer von dem Host 100 empfangenen Logik-Adresse in eine physische Adresse, welche verwendet wird, um tatsächliche (z.B. physische) Daten in der Speichervorrichtung 220 zu speichern. Verschleißausgleich ist eine Technologie, welche in der Speichervorrichtung 220 enthaltenen Blöcken erlaubt, gleichmäßig genutzt zu werden, wodurch übermäßige Verschlechterung von mindestens einem Speicherblock verringert und/oder vermieden wird, und kann zum Beispiel durch eine Firmware-Technologie zum Ausgleichen der Löschanzahl von physischen Blöcken implementiert werden, aber ist nicht darauf beschränkt. Garbage-Collection ist eine Technologie zur Sicherstellung von verwendbarer Kapazität in der Speichervorrichtung 220 durch Kopieren von gültigen Daten eines Blocks auf einen neuen Block und Löschen des Blocks, aber ist nicht darauf beschränkt.
  • Der Paket-Manager 215 kann ein Paket gemäß und/oder basierend auf einem mit dem Host 100 ausgehandeltem Kommunikations-Protokoll einer Schnittstelle erzeugen, und/oder verschiedene Typen von Informationen von einem vom Host 100 empfangenen Paket zerlegen. Der Pufferspeicher 216 kann vorübergehend Daten, welche auf die Speichervorrichtung 220 geschrieben werden sollen, und/oder von der Speichervorrichtung 220 gelesene Daten etc. speichern. Der Pufferspeicher 216 kann in der Speicher-Steuereinheit 210 bereitgestellt werden, aber kann außerhalb und/oder extern von der Speicher-Steuereinheit 210 angeordnet sein, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Die ECC-Engine 217 kann eine Fehlererfassung und/oder eine Korrekturfunktion an von der Speichervorrichtung 220 gelesenen Lesedaten durchführen, aber ist nicht darauf beschränkt. Insbesondere kann die ECC-Engine 217 Paritätsbits bezüglichen den Schreibdaten, welche auf die Speichervorrichtung 220 geschrieben werden sollen, erzeugen, und die erzeugten Paritätsbits können in der Speichervorrichtung 220 zusammen mit den Schreibdaten gespeichert werden. Wenn die Daten von der Speichervorrichtung 220 gelesen werden, kann die ECC-Engine 217 einen Fehler in den Lesedaten unter Verwendung der von der Speichervorrichtung 220 gelesenen Paritätsbits zusammen mit den Lesedaten korrigieren, und die Fehler-korrigierten Lesedaten ausgeben, aber die Beispielausführungsformen sind nicht darauf beschränkt, und zum Beispiel kann die ECC-Engine 217 die Paritätsbit-Daten ausgeben, ohne die Lesedaten, etc. zu korrigieren. Die Lese-Steuereinheit 300 kann Informationen hinsichtlich dessen, ob ein Fehler und/oder ein Niveau des Fehlers von der ECC-Engine 217, etc. erfasst wird bzw. werden, erhalten.
  • Die AES-Engine 218 (und/oder Verschlüsselungs-Engine) kann mindestens eines von einem Verschlüsselungs-Betrieb und/oder einem Verschlüsselungs-Betrieb bezüglich Daten, welche in die Speicher-Steuereinheit 210 eingegeben werden, unter Verwendung von zum Beispiel eines symmetrischen Schlüsselalgorithmus ausführen, aber die Beispielausführungsformen sind nicht darauf beschränkt. Zum Beispiel kann in mindestens einer anderen Beispielausführungsform die Verschlüsselungs-Engine einen asymmetrischen Schlüsselalgorithmus etc. verwenden.
  • Wenn Daten von der Speichervorrichtung 220 gelesen werden, kann die Lese-Steuereinheit 300 eine Gangstufe, welche eine Lesegeschwindigkeit ist, gemäß und/oder basierend auf Betriebseigenschaften der Speichervorrichtung 220 einstellen.
  • Gemäß einigen Beispielausführungsformen können die Betriebseigenschaften der Speichervorrichtung 220 mindestens eines von einer Datenaufbewahrungsdauer, einer Temperatur der Speichervorrichtung 220, einem Ausdauerzyklus, einer Datenleseintensität, einer einzigartigen Chip-Eigenschaft, etc. und/oder jegliche Kombinationen derselben umfassen.
  • Die Lese-Steuereinheit 300 kann bei einer derzeit eingestellten ersten Gangstufe Daten von der Speichervorrichtung 220 lesen, einen Fehler in den Lesedaten und einen Zustand der Speichervorrichtung 220 identifizieren, ein Ergebnis der Überprüfung mit einer Mehrzahl an gewünschten und/oder vorliegenden Bedingungen vergleichen, und/oder bestimmen, ob die erste Gangstufe beibehalten, oder ob die erste Gangstufe auf eine zweite Gangstufe etc. geändert wird, aber die Beispielausführungsformen sind nicht darauf beschränkt. Gemäß mindestens einer Beispielausführungsform kann die Lese-Steuereinheit 300 die erste Gangstufe beibehalten, wenn der identifizierte Fehler und der Zustand der Speichervorrichtung 220 einer gewünschten und/oder vorliegenden Bedingung der ersten Gangstufe genügen, und die erste Gangstufe durch Auswählen einer anderen Gangstufe, z.B. der zweiten Gangstufe, etc. entsprechend dem identifizierten Fehler und dem Zustand der Speichervorrichtung 220, auf die zweite Gangstufe ändern, wenn der identifizierte Fehler und der Zustand der Speichervorrichtung 220 der gewünschten und/oder vorliegenden Bedingung der ersten Gangstufe nicht genügen, aber die Beispielausführungsformen sind nicht darauf beschränkt. Gemäß einigen Beispielausführungsformen kann die Mehrzahl an gewünschten und/oder vorliegenden Bedingungen insbesondere hinsichtlich eines Niveaus von einem Fehler in den Lesedaten und einem Zustand der Speichervorrichtung 220 eingestellte Bedingungen sein. Zum Beispiel kann die Mehrzahl an gewünschten und/oder vorliegenden Bedingungen Werte umfassen, welche Schritt für Schritt hinsichtlich mindestens eines von einem Fehler-Schwellenwert, ob der Fehler in den Lesedaten korrigierbar ist oder nicht, einer Datenaufbewahrungsdauer, einer Temperatur der Speichervorrichtung 220, einem Ausdauerzyklus, einer Datenleseintensität, einer einzigartigen Chip-Eigenschaft, etc. verschieden eingestellt sind.
  • Gemäß einigen Beispielausführungsformen kann die Lese-Steuereinheit 300 eine Mapping-Tabelle einschließlich einer Mehrzahl an gewünschten und/oder vorliegenden Bedingungen, welche einer Mehrzahl an Gangstufen entsprechen, wobei mindestens eine von der Mehrzahl an gewünschten und/oder vorliegenden Bedingungen verwendet werden kann, um eine Gangstufe zu bestimmen etc. umfassen.
  • Der Temperatursensor 219 kann eine Betriebstemperatur der Speichervorrichtung 220, etc. erfassen und/oder messen. Zum Beispiel kann eine Änderung der Betriebstemperatur einer Speicherzelle durch den Temperatursensor 219 erfasst werden. In einigen Beispielausführungsformen kann die Speicher-Steuereinheit 210 den Temperatursensor 219 nicht umfassen und/oder der Temperatursensor 219 kann als ein Teil der Speichervorrichtung 220, etc. implementiert sein. Die Lese-Steuereinheit 300 kann Temperaturinformationen von der Speichervorrichtung 220 von dem Temperatursensor 219 erhalten, aber ist nicht darauf beschränkt.
  • Bezugnehmend auf 3 kann gemäß mindestens einer Beispielausführungsform die Speichervorrichtung 220 eine Mehrzahl an ersten und zweiten Bereichen 401 und 402, welche gemäß und/oder basierend auf einem Zellniveau klassifiziert sind, umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt, und zum Beispiel kann die Speichervorrichtung 220 eine größere oder kleinere Anzahl an Bereichen, etc. umfassen. Der erste und der zweite Bereich 401 und 402 können eine Mehrzahl an Speicherblöcken umfassen und/oder können anders verwaltet sein, aber sind nicht darauf beschränkt. Gemäß einigen Beispielausführungsformen kann zum Beispiel der erste Bereich 401 durch ein Single-Level-Zellen (SLC)-Verfahren verwaltet werden, und der zweite Bereich 402 kann durch ein Multi-Level-Zellen (MLC)-Verfahren, etc. verwaltet werden. Zusätzlich kann der erste Bereich 401 und/oder der zweite Bereich 402 durch ein Triple-Level-Zellen (TLC)-Verfahren und/oder ein Quad-Level-Zellen (QLC)-Verfahren, etc. verwaltet werden.
  • Zum Beispiel können die SLC, die MLC, und die TLC entsprechend der Menge von Daten, welche in einer Speicherzelle gespeichert werden können, klassifiziert werden. Die SLC kann nur 1 Bit pro Zelle speichern, die MLC kann 2 Bits pro Zelle speichem, und die TLC kann 3 Bits pro Zelle speichern, etc. Obwohl es nicht gezeigt ist, kann die QLC 4 Bits pro Zelle speichern. Die zu speichernde Menge von Daten nimmt in der Reihenfolge von der SLC zur QLC zu, aber eine Datenzugriffsgeschwindigkeit nimmt schrittweise ab und eine Zellen-Lebensdauer nimmer in der Reihenfolge von der SLC zur QLC ab.
  • Dementsprechend können einige der Schreibdaten (z.B. Metadaten, etc.) in dem ersten Bereich 401, z.B. einem SLC-Bereich, programmiert sein, und die verbleibenden Schreibdaten ausschließlich der Metadaten können in dem zweiten Bereich 402 programmiert sein.
  • Zum Beispiel ist eine Geschwindigkeit, bei welcher ein Schreib- und/oder LeseBetrieb in dem ersten Bereich 401 durchgeführt wird, höher als in dem zweiten Bereich 402, aber ist nicht darauf beschränkt. Daten, welche häufig geändert und/oder auf welche gemäß einem Muster des Hosts 100 häufig zugegriffen wird, können in dem ersten Bereich 401 gespeichert werden, und Daten, welche nicht häufig geändert werden und/oder auf welche nicht häufig zugegriffen wird (z.B. wenig häufig geändert werden und/oder wenig häufig zugegriffen wird), können in dem zweiten Bereich 402 gespeichert werden, aber ist nicht darauf beschränkt. Zum Beispiel können Datenzugriffsmuster mit einem gewünschten Schwellenwert-Zugriffsmuster (z.B. Zugriffsrate, etc.) verglichen werden und Daten, welche die gewünschten Schwellenwert-Zugriffsmuster übersteigen, können in dem ersten Bereich 401 gespeichert werden, und Daten, welche das gewünschte Schwellenwert-Zugriffsmuster erfüllen und/oder kleiner sind, können in dem zweiten Bereich 402, etc. gespeichert werden, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Die Speichervorrichtung 220 kann Daten nur bei einer konstanten Geschwindigkeit lesen, z.B. nur bei einer festen Gangstufe von dem ersten Bereich 401 und/oder dem zweiten Bereich 402, um Datenverlässlichkeit zu erreichen, selbst wenn die Lebensdauer der Speichervorrichtung 220 abhängig von einer Verwendung derselben variiert, aber die Beispielausführungsformen sind nicht darauf beschränkt. Die feste Gangstufe kann als ein stabiles Kriterium, welches Verlässlichkeit und/oder Lebensdauer-Bedingungen der Speichervorrichtung 220 unter Berücksichtigung der schlechtesten erwarteten Bedingungen hinsichtlich Verlässlichkeit der Speichervorrichtung 220 erfüllt, eingestellt sein, aber ist nicht darauf beschränkt.
  • Während der Verwendung der Speichereinrichtung 200 kann jedoch ein Nutzer eine Situation, in welcher das Lesen von Daten misslingt und/oder eine Situation, in welcher ein Fehler nicht korrigiert werden kann, etc. kaum und/oder selten erleben. Selbst wenn der Nutzer eine derartige Situation erlebt, kann der Nutzer die Situation gegen Ende einer Lebensdauer der Speichereinrichtung 200 erleben. Deshalb kann, wenn die Speicher-Steuereinheit 210 ermöglicht, dass Daten durch Verringerung der Anforderungen für die Datenverlässlichkeit, und dynamisches Ändern einer Gangstufe gemäß derzeitigen Betriebseigenschaften der Speichervorrichtung 220 gelesen werden, die Leistung der Speichereinrichtung 200 (z.B. ein Speichersystem, ein Speichervorrichtungssystem, etc.) durch Durchführen des Lesens von Daten bei einer höheren Geschwindigkeit verbessert werden, während die Verlässlichkeit der Speichervorrichtung 220 erhöht und/oder garantiert wird. Dies wird detaillierter mit Bezug auf die nachstehenden 6 und 7 beschrieben.
  • 4 stellt eine Mapping-Tabelle einer Mehrzahl an Bedingungen zum Einstellen einer Gangstufe gemäß einigen Beispielausführungsformen dar.
  • Bezugnehmend auf 4 kann eine Speicher-Steuereinheit Informationen zur Einstellung einer entsprechenden Gangstufe umfassen, wenn eine gewünschte und/oder vorbestimmte Bedingung für eine jede von einer Mehrzahl an Gangstufen erfüllt wird. Zum Beispiel kann diese Information in der Form einer Mapping-Tabelle gespeichert sein, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Gemäß einigen Beispielausführungsformen sind in einer Mapping-Tabelle eine Mehrzahl an Gangstufen mit einer Mehrzahl an Bedingungen zugeordnet (z.B. Speichervorrichtungs-Bedingungen, Eigenschaften, etc.). Gemäß einigen Beispielausführungsformen kann die Mapping-Tabelle in der Lese-Steuereinheit 300, welche vorstehend mit Bezug auf 1 und 2 beschrieben wurde, gespeichert werden, aber ist nicht darauf beschränkt. Gemäß einigen Beispielausführungsformen kann die Mapping-Tabelle in einem nichtflüchtigen Speicher (nicht gezeigt), welcher in der Speicher-Steuereinheit 210 enthalten ist und auf welchen durch die Lese-Steuereinheit 300 zugegriffen wird, gespeichert werden, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Gemäß einigen Beispielausführungsformen können Gangstufen eine Mehrzahl an Gangstufen zwischen einer geringsten Geschwindigkeit (z.B. kleinste Gangstufe), welche einer schlechtesten Bedingung der Speichervorrichtung 220 entspricht, und einer höchsten Geschwindigkeit (z.B. einer höchsten Gangstufe), welche einer besten Bedingung der Speichervorrichtung 220 entspricht, umfassen. Das heißt, die Mapping-Tabelle kann eine Mehrzahl an Gangstufen einschließlich einer gewünschten und/oder voreingestellten minimalen Gangstufe (z.B. eine kleinste Gangstufe, eine erste Gangstufe, etc.), mindestens eine gewünschte und/oder voreingestellte mittlere Gangstufe (z.B. eine zweite Gangstufe, etc.), und einer gewünschten und/oder voreingestellten maximalen Gangstufe (z.B. eine höchste Gangstufe, eine dritte Gangstufe, etc.) entsprechend den Betriebseigenschaften der Speichereinrichtung 200 umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Zum Beispiel kann Stufe #1 eine Gangstufe niedrigster Geschwindigkeit darstellen, bei welcher sowohl Verlässlichkeit als auch Stabilität verbessert und/oder garantiert werden, unter Berücksichtigung einer schlechtesten Bedingung, in welcher die Speichervorrichtung 220 betrieben werden kann. Zum Beispiel kann Stufe #5 eine Gangstufe höchster Geschwindigkeit darstellen, bei welcher sowohl Datenverlässlichkeit als auch Integrität verbessert und/oder garantiert werden, unter Berücksichtigung einer besten Bedingung, in welcher die Speichervorrichtung 220 betrieben werden kann.
  • Stufe #2, Stufe #3, und Stufe #4 können Zwischen-Gangstufen darstellen, welche schrittweise in der Reihenfolge Stufe #1 bis Stufe #5 ansteigen, aber die Beispielausführungsformen sind nicht darauf beschränkt. Gemäß mindestens einer Beispielausführungsform können die Stufe #1 bis Stufe #5 Gangstufen, welche linear zunehmen, darstellen. Das heißt, ein Geschwindigkeitsunterschied zwischen Stufe #1 und Stufe #2 kann derselbe wie zwischen Stufe #2 und Stufe #3 sein. Gemäß mindestens einer Beispielausführungsform können die Stufe #1 bis Stufe #5 Gangstufen, welche nichtlinear zunehmen, darstellen. Das heißt, der Geschwindigkeitsunterschied zwischen zum Beispiel Stufe #1 und Stufe #2 muss nicht derselbe wie der zwischen Stufe #2 und Stufe #3, etc. sein.
  • Eine Datenlesezeit tRC kann entsprechend einer ausgewählten und/oder bestimmten Gangstufe variieren. Gemäß mindestens einer Beispielausführungsform kann sich die Datenlesezeit tRC auf eine Zeitspanne beziehen, bis Daten von einer Zelle gelesen sind und eine Seitenpuffereinheit 440 erreichen, angefangen von einem Zeitpunkt, bei welchem eine Speicherzellenmatrix aktiviert wird, aber die Beispielausführungsformen sind nicht darauf beschränkt. Das heißt, die Datenlesezeit tRC kann sich auf eine Zeitspanne beziehen, bis Daten von der Speicherzellenmatrix gelesen sind und die Seitenpuffereinheit 440 erreichen, nachdem ein Lesebefehl Read CMD und ein Versender ADDR von einer Speicher-Schnittstelle empfangen werden, aber ist nicht darauf beschränkt.
  • Zum Beispiel kann eine Datenlesezeit bei Stufe #2 kleiner als jene bei Stufe #1 (tSchnell_Stufe2 < tSchnell_Stufe1), etc. sein. Als ein anderes Beispiel kann eine Datenlesezeit bei Stufe #3 kleiner als jene bei Stufe #2 (tSchnell_Stufe3 < tSchnell_Stufe2), etc. sein.
  • Jede Gangstufe kann entsprechend einer vorausgesagten Bedingung basierend auf Betriebseigenschaften der Speichervorrichtung 220 variieren. Gemäß einigen Beispielausführungsformenkönnen die vorausgesagten Bedingungen vorausgesagte Beschränkungen einschließlich mindestens eines von einer Datenaufbewahrungsdauer, einer Temperatur der Speichervorrichtung 220, einem Ausdauerzyklus, einer Datenleseintensität, einer einzigartigen Chip-Eigenschaft, oder jeglichen Kombinationen derselben sein, aber ist nicht darauf beschränkt. Die Beschränkungen können durch einen Nutzer entsprechend mindestens einer Beispielausführungsform eingestellte und/oder willkürlich eingestellte vorausgesagte Bedingungen sein, und/oder können durch Durchführen von Lernen (z.B. Maschinen-Lernen, neuronales Netzwerk-Lernen, etc.) auf der Basis von Betriebsbedingungen, einem Verwendungsmuster, und Verlässlichkeit von Daten der Speichervorrichtung 220 gemäß einer anderen Beispielausführungsform eingestellte Trainingsbedingungen sein. Das heißt, die Mapping-Tabelle kann eine durch Durchführen von Lernen (z.B. Maschinen-Lernen, neuronales Netzwerk-Lernen, etc.) auf der Basis der Betriebsbedingungen, dem Verwendungsmuster der Speichervorrichtung 220, und/oder Verlässlichkeit der Lesedaten, etc. eingestellte Tabelle sein. Gemäß mindestens einer Beispielausführungsform kann die Lese-Steuereinheit 300 die Mapping-Tabelle durch Durchführen des Lernens der Betriebsbedingungen der Speichervorrichtung 220 einstellen, aber die Beispielausführungsformen sind nicht darauf beschränkt, und zum Beispiel kann die Speicher-Steuereinheit 210 und/oder die Host-Steuereinheit 110, etc. die Mapping-Tabelle etc. einstellen.
  • Gemäß einigen Beispielausführungsformen können die vorausgesagten Bedingungen Auslöse- bzw. Trigger-Bedingungen zum Ändern einer derzeitigen Gangstufe auf eine andere Gangstufe sein. Zusätzlich können gemäß einigen Beispielausführungsformen die vorausgesagten Bedingungen Verwaltungs- bzw. Beibehaltungsbedingungen zum Beibehalten eines gewünschten und/oder minimalen Wertes für jede Gangstufe sein.
  • Unter den vorstehenden Beispielen sind bei der Gangstufe Stufe #5 die vorausgesagten Bedingungen unter einer gewünschten Bedingung und/oder einer Nicht-Fehler-Bedingung wirksam, das heißt eine Beibehaltungsbedingung, in welcher kein Fehler auftritt und/oder die Anzahl an Fehlern unterhalb eines gewünschten Fehler-Schwellenwerts ist. Mit anderen Worten, wenn ein Lesefehlerwert von Lesedaten kleiner als ein korrigierbarer Fehlerwert ist (z.B. der gewünschte Fehler-Schwellenwert), das heißt, wenn eine Fehlerrate bei oder kleiner als eine korrigierbare Fehlerrate durch die Fehler-Korrekturschaltung (z.B. ECC 217) ist, z.B. wenn die Fehlerrate nahezu Null etc. ist, kann die Speichervorrichtung 220 kontinuierlich bei Stufe #5, welche die höchste Geschwindigkeit ist, betrieben werden. In diesem Fall kann ein Niveau eines korrigierbaren Fehlers auf verschiedenen Weisen gemäß einigen Beispielausführungsformen eingestellt sein bzw. werden. Zum Beispiel kann, wenn angenommen wird, dass die Anzahl an korrigierbaren Fehlern 1 Bit ist, die Speichervorrichtung 220 nur bei Stufe #5 betrieben werden, wenn die Anzahl an Fehlern in den Lesedaten 0 ist, aber ist nicht darauf beschränkt. Als ein anderes Beispiel kann, wenn angenommen wird, dass die Anzahl an korrigierbaren Fehlern 2 Bits ist, die Speichervorrichtung 220 nur bei Stufe #5 betrieben werden, wenn die Anzahl an Fehlern in den Lesedaten 0 oder 1 ist, aber ist nicht darauf beschränkt. Das heißt, ob eine Gangstufe häufig geändert wird, kann entsprechend einem Fehler-Schwellenwert variieren.
  • Außerdem kann eine vorausgesagte Bedingung #1 eine Bedingung zum Ändern einer Gangstufe von Stufe #4 auf Stufe #3 gemäß mindestens einer Beispielausführungsform sein, und/oder kann eine Bedingung zum Beibehalten eines Bereichs, in welchem die Gangstufe Stufe #4 beibehalten wird, z.B. eine Beibehaltungsbedingung gemäß mindestens einer anderen Beispielausführungsform sein. In ähnlicher Weise können gemäß verschiedenen Beispielausführungsformen vorausgesagte Bedingungen #2 und #3 als Änderungsbedingungen und/oder Beibehaltungsbedingungen eingestellt sein, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Eine vorausgesagte Bedingung, zum Beispiel eine vorausgesagte Bedingung #4, kann jedoch eine Mehrzahl an schwachen Speicherzellenzuständen aufgrund von schlechtesten Betriebsbedingungen der Speichervorrichtung 220, z.B. wenn ein Fehler in einer Datenaufbewahrungsdauer auftritt, wenn eine Temperatur der Speichervorrichtung gleich und/oder größer als eine gewünschte und/oder maximale Schwellenwert-Temperatur ist, wenn ein Ausdauerzyklus nahezu endet, und ähnliches, definieren, aber ist nicht darauf beschränkt. Wenn ein derzeitiger Zustand der Speichervorrichtung 220 einer Mehrzahl an schwachen Speicherzellenzuständen entspricht, kann zum Beispiel die Gangstufe Stufe #1 eingestellt sein und/oder kann eine kleinere Gangstufe als die derzeitige Gangstufe eingestellt sein.
  • Die 5 und 6 sind konzeptionelle Diagramme, welche Betriebsverfahren eines Speichersystems gemäß einigen Beispielausführungsformen darstellen. Es wird ebenso auf 4 Bezug genommen.
  • Bezugnehmend auf 5 kann gemäß einigen Beispielausführungsformen die Lese-Steuereinheit 300 Daten durch Einstellen einer anfänglichen Gangstufe auf Stufe #5 in dem Lebenszyklus der Speichervorrichtung 210 lesen.
  • Gemäß einigen Beispielausführungsformen werden Daten bei Stufe #5 zu einem Zeitpunkt T2 gelesen, und die Lese-Steuereinheit 300 kann Daten durch Einstellen der Gangstufe auf Stufe #4, welches eine kleinere Stufe ist, basierend auf einem bestimmten Fehlerniveau von den bei Stufe #5 gelesenen Daten etc. nochmals lesen. Zum Beispiel kann, wie vorstehend mit Bezug auf 4 beschrieben, wenn das Niveau des Fehlers der Lesedaten kleiner als jenes eines korrigierbaren Fehlers ist, die Lese-Steuereinheit 300 die Stufe #5 auf Stufe #4, welche ein Schritt kleiner als Stufe #5 ist, welches die höchste Geschwindigkeit ist, ändern, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Stufe #4 kann beibehalten werden, wenn das Lesen von Daten von der Speichervorrichtung 220 bei der Gangstufe Stufe #4 erfolgreich ist, und kann auf Stufe #3, welche eine kleinere Stufe ist, geändert werden, wenn das Lesen der Daten fehlschlägt (T3), aber die Beispielausführungsformen sind nicht darauf beschränkt. In diesem Fall kann, ob das Lesen der Daten fehlschlägt oder nicht, auf der Basis der vorstehend mit Bezug auf 4 beschriebenen vorausgesagten Bedingungen bestimmt werden.
  • Außerdem kann, gemäß einigen Beispielausführungsformen, wenn das Niveau des Fehlers in den bei Stufe #5 zum Zeitpunkt T2 gelesenen Daten eine gewünschte und/oder voreingestellte Fehlerrate übersteigt, die Lese-Steuereinheit 300 eine vorausgesagte Bedingung, welche auf die derzeitigen Betriebseigenschaften der Speichervorrichtung 220 abgestimmt ist, von der Mapping-Tabelle von 4 auswählen, und eine Gangstufe, welche der ausgewählten vorausgesagten Bedingung zugeordnet wurde und/oder entspricht, einstellen. Zum Beispiel muss eine derzeitige Gangstufe von Stufe #5 nicht auf Stufe #4 geändert werden, aber kann auf eine andere Gangstufe, z.B. Stufe #3, etc. welche einer auf die derzeitigen Betriebseigenschaften unter einer Mehrzahl an vorausgesagten Bedingungen abgestimmten Bedingung entspricht, geändert werden.
  • Änderung der Gangstufen kann durchgeführt werden, bis eine eingestellte derzeitige Gangstufe Stufe #1, welche die geringste und/oder die minimale Gangstufe ist, die Speichervorrichtung 220 erreicht.
  • Währenddessen kann, bezugnehmend auf 6, gemäß einigen Beispielausführungsformen die derzeitige Gangstufe auf eine Gangstufe, welche eine höhere Geschwindigkeit als die gemäß derzeitigen Betriebseigenschaften der Speichervorrichtung 220 eingestellte derzeitige Gangstufe, aufweist, geändert werden.
  • Zum Beispiel kann zum Zeitpunkt T2 die Lese-Steuereinheit 300 die derzeitige Gangstufe von Stufe #5 auf Stufe #3 gemäß und/oder basierend auf einem derzeitigen Betriebszustand der Speichervorrichtung 220 ändern, aber zu einem Zeitpunkt T3 scheinen die Betriebseigenschaften der Speichervorrichtung 220 wiederhergestellt zu sein (z.B. ein Fall, in welchem für eine gewisse Zeitspanne das Niveau des Fehlers in den Lesedaten kleiner als ein gewünschter und/oder voreingestellter Schwellenwert ist und/oder eine Betriebstemperatur gering ist, ein Fall, in welchem Daten ohne Fehler für eine gewünschte und/oder voreingestellte Zeitspanne gelesen werden, selbst wenn die Speichervorrichtung 220 auf Stufe #3 betrieben wird, und ähnliches).
  • In diesem Fall kann die derzeitige Gangstufe von der Stufe #3 auf Stufe #4 zum Zeitpunkt T3 gemäß und/oder basierend auf einer Betriebseigenschaft-Wiederherstellungsbedingung geändert werden (z.B. die neuen und/oder derzeitigen Betriebseigenschaften der Speichervorrichtung 220). Die Betriebseigenschaft-Wiederherstellungsbedingung kann eine in der Mapping-Tabelle definierte Bedingung, wie in 4 gezeigt, sein, und/oder kann eine durch einen Nutzer gemäß einigen Beispielausführungsformen eingestellte und/oder willkürlich eingestellte Bedingung sein, und/oder kann eine basierend auf gelernten Daten (z.B. Maschine-Lernen, neuronales Netzwerk-Lernen, etc.) gemäß einigen Beispielausführungsformen eingestellte Bedingung sein, aber sind nicht darauf beschränkt.
  • 7 ist ein Diagramm, welches ein Betriebsverfahren eines Speichersystems gemäß einigen Beispielausführungsformen darstellt.
  • Bezugnehmend auf 7 kann die Lese-Steuereinheit 300 zuerst eine Gangstufe einstellen (z.B. eine derzeitige Gangstufe, eine gewünschte Gangstufe, und/oder eine ausgewählte Gangstufe) (S10) und übermittelt einen Befehl und/oder eine Anweisung an die Speichervorrichtung 220, um die Gangstufe bei der eingestellten Gangstufe einzustellen (S20). Die Lese-Steuereinheit 300 kann anschließend einen Lesebefehl an die Speichervorrichtung 220 übermitteln, um Daten bei der eingestellten Gangstufe zu lesen (S11). Die Speichervorrichtung 220 liest Daten bei der eingestellten Gangstufe, welche gemäß dem Lesebefehl (S21) eingestellt wird, und die Lese-Steuereinheit 300 kann überprüfen und/oder bestimmen, ob die gelesenen Daten Fehler enthalten, und/oder überprüft und/oder bestimmt, ob es einen Fehler in dem derzeitigen Betriebszustand, Bedingung, und/oder Eigenschaften der Speichervorrichtung 220 gibt (S12).
  • Als Antwort auf die Ergebnisse der Fehler-Überprüfung und/oder Speichervorrichtungsbedingung-Überprüfung kann die Lese-Steuereinheit 300 dann eine Bedingung, welche einem Niveau des identifizierten Fehlers und dem Zustand der Speichervorrichtung 220 unter einer Mehrzahl an vorausgesagten Bedingungen entspricht, überprüfen, und kann eine Gangstufe, welche zu der überprüften Bedingung passt, als eine Geschwindigkeit, bei welcher Daten von der Speichervorrichtung 220 gelesen werden sollen, auswählen (S13). Gemäß einigen Beispielausführungsformen können die vorausgesagten Bedingungen vorausgesagte Beschränkungen sein, einschließlich mindestens eines von einer Datenaufbewahrungsdauer, einer Temperatur der Speichervorrichtung 220, einem Beständigkeitszyklus, und einer Datenleseintensität, und/oder einer einzigartigen Chip-Eigenschaft, etc., aber sind nicht darauf beschränkt. Die Beschränkungen können durch einen Nutzer gemäß mindestens einer Beispielausführungsform eingestellt und/oder willkürlich eingestellte vorausgesagte Bedingungen sein, und/oder können durch Durchführen des Lernens (z.B. Maschine-Lernen, neuronales Netzwerk-Lernen, etc.) auf der Basis von Betriebsbedingungen, einem Verwendungsmuster, und/oder Verlässlichkeit von Daten, etc. eingestellte Trainingsbedingungen der Speichervorrichtung 220 gemäß einer anderen Beispielausführungsform sein, aber sind nicht darauf beschränkt.
  • Gemäß einigen Beispielausführungsformen, wenn die Speichervorrichtung 220 nicht zu einer von einer Mehrzahl an Bedingungen schlimmster Fälle passt, z.B. kann die vorausgesagte Bedingung #4, etc. von 4, die Speichervorrichtung 220 bei einer Gangstufe von Stufe #5 auf Stufe #2 betreiben, aber die Beispielausführungsformen sind nicht darauf beschränkt. Zum Beispiel kann im Betrieb S11 die Lese-Steuereinheit 300 die Stufe #5, welches die höchste Geschwindigkeit ist, auf der Basis des Zustandes der Speichervorrichtung 220 in einem frühen Zustand im Lebenszyklus der Speichervorrichtung 220 einstellen, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Als ein anderes Beispiel kann, wenn ein Fehler auftritt und/oder durch die Lese-Steuereinheit 300 erfasst wird, die Lese-Steuereinheit 300 ein Niveau des Fehlers (z.B. die Anzahl an Bits, welche einen Fehler enthalten und/oder korrigiert werden müssen) und/oder einen aktuellen bzw. derzeitigen Zustand (z.B. der NVM-Zustand, etc.) der Speichervorrichtung 220 (S12) identifizieren, und wählt eine Bedingung aus, welche dem Fehler und/oder dem Zustand der Speichervorrichtung 220 entspricht. In diesem Fall kann die ausgewählte Bedingung zum Beispiel eines aus einer Gangstufe von Stufe #4 auf Stufe #1, etc. auf der Basis der Mapping-Tabelle von 4 entsprechen, aber die Beispielausführungsformen sind nicht darauf beschränkt. In diesem Fall kann gemäß mindestens einer Beispielausführungsform die ausgewählte Gangstufe eine schrittweise verringerte Gangstufe sein, wie vorstehend mit Bezug auf 5 oder 6 beschrieben, aber ist nicht darauf beschränkt. In einer anderen Beispielausführungsform kann die ausgewählte Gangstufe eine durch mindestens zwei Schritte verringerte Gangstufe sein, aber ist nicht darauf beschränkt. In einer anderen Beispielausführungsform kann die ausgewählte Gangstufe eine Gangstufe sein, welche höher als eine derzeit eingestellte Gangstufe, etc. ist.
  • Wenn die ausgewählte Gangstufe die geringste und/oder minimale Geschwindigkeit ist, z.B. Stufe #1 (S14), kann die Lese-Steuereinheit 300 kontinuierlich einen Lesebetrieb bei der Gangstufe von Stufe #1 durchführen (S15). Wenn jedoch die ausgewählte Gangstufe nicht Stufe #1, welches die geringste und/oder minimale Geschwindigkeit unter einer Mehrzahl an gewünschten und/oder voreingestellten Gangstufen ist (S14), wird eine andere Gangstufe nochmal ausgewählt (S10), und die Betriebe S10 bis S14, S20 und S21 können nochmal durchgeführt werden.
  • 8 ist ein Block-Diagramm eines Speichersystems gemäß mindestens einer Beispielausführungsform des erfinderischen Konzepts. Gemäß mindestens einer Beispielausführungsform kann das Speichersystem von 8 der Speichereinrichtung 200 von 1 entsprechen, aber die Beispielausführungsformen sind nicht darauf beschränkt. Bezugnehmend auf 8 kann ein Speichersystem 200 (z.B. eine Speichervorrichtung, ein Speichervorrichtungssystem, etc.) eine Speichervorrichtung 220 und/oder eine Speicher-Steuereinheit 210, etc. umfassen, aber ist nicht darauf beschränkt. Das Speichersystem 200 kann eine Mehrzahl an Kanälen CH1 bis CHm stützen, und die Speichervorrichtung 220 und die Speicher-Steuereinheit 210 kann durch die Mehrzahl an Kanälen CH1 bis CHm verbunden sein, aber die Beispielausführungsformen sind nicht darauf beschränkt. Zum Beispiel kann das Speichersystem 200 als eine Speichervorrichtung, wie ein Festkörperlaufwerk (SSD), etc. verkörpert sein.
  • Die Speichervorrichtung 220 kann eine Mehrzahl an nichtflüchtigen Speichervorrichtungen NVM11 bis NVMmn umfassen. Eine jede von den nichtflüchtigen Speichervorrichtungen NVM11 bis NVMmn kann mit einem der Mehrzahl an Kanälen CH1 bis CHm durch einen entsprechenden Weg verbunden sein, aber ist nicht darauf beschränkt. Zum Beispiel können die nichtflüchtigen Speichervorrichtungen NVM 11 bis NVMln mit dem ersten Kanal CH1 durch die Wege W11 bis W1n verbunden sein, und die nicht flüchtigen Speichervorrichtungen NVM21 bis NVM2n können mit dem zweiten Kanal CH2 durch die Wege W21 bis W2n verbunden sein, etc. In mindestens einer Beispielausführungsform kann eine jede von den nichtflüchtigen Speichervorrichtungen NVM11 bis NVMmn als eine Speichereinheit verkörpert sein, welche fähig ist, gemäß einem individuellen Befehl von der Speicher-Steuereinheit 210 betrieben zu werden, aber die Beispielausführungsformen sind nicht darauf beschränkt. Zum Beispiel kann eine jede von den nichtflüchtigen Speichervorrichtungen NVM 11 bis NVMmn als ein Chip oder ein Die verkörpert sein, aber die Beispielausführungsformen des erfinderischen Konzepts sind nicht darauf beschränkt.
  • Die Speicher-Steuereinheit 210 kann durch die Mehrzahl an Kanälen CH1 bis CHm ein Signal an die Speichervorrichtung 220 übermitteln und/oder ein Signal von der Speichervorrichtung 220 empfangen. Zum Beispiel kann die Speicher-Steuereinheit 210 einen oder mehrere Befehle CMDa bis CMDm, eine oder mehrere Adressen ADDRa bis ADDRm, und/oder eine oder mehre Daten DATAa bis DATAm an die Speichervorrichtung 220 übermitteln und/oder eine oder mehrere Daten DATAa bis DATAm von der Speichervorrichtung 220 durch die Kanäle CH1 bis CHm empfangen.
  • Die Speicher-Steuereinheit 210 kann mindestens eine von den nichtflüchtigen Speichervorrichtungen, welche mit den Kanälen verbunden sind, durch einen entsprechenden Kanal auswählen, und mindestens ein Signal an die ausgewählte nichtflüchtige Speichervorrichtung übermitteln und/oder mindestens ein Signal von der ausgewählten nichtflüchtigen Speichervorrichtung empfangen. Die Speicher-Steuereinheit 210 kann parallel durch verschiedene Kanäle ein oder mehrere Signale an die Speichervorrichtung 220 übermitteln und/oder ein oder mehrere Signale von der Speichervorrichtung 220 empfangen. Zum Beispiel kann die Speicher-Steuereinheit 210 den Befehl CMDb an die Speichervorrichtung 220 durch den zweiten Kanal CH2 übermitteln, während der Befehl CMDa an die Speichervorrichtung 220 durch den ersten Kanal CH1 übermittelt wird, aber ist nicht darauf beschränkt. Zum Beispiel kann die Speicher-Steuereinheit 210 die Daten DATAb von der Speichervorrichtung 220 durch den zweiten Kanal CH2 empfangen, während die Daten DATAa von der Speichervorrichtung 220 durch den ersten Kanal CH1 empfangen werden, aber ist nicht darauf beschränkt.
  • Die Speicher-Steuereinheit 210 kann gesamte Betriebe der Speichervorrichtung 220 steuern. Die Speicher-Steuereinheit 210 kann die nichtflüchtigen Speichervorrichtungen NVM11 bis NVMmn, welche mit den Kanälen CH1 bis CHm verbunden sind, durch Übermitteln von mindestens einem Signal an die Kanäle CH1 bis CHm steuern.
  • Gemäß einigen Beispielausführungsformen kann das Speichersystem 200 die Speichervorrichtung 220 und/oder die Speicher-Steuereinheit 210, etc. umfassen, aber ist nicht darauf beschränkt. Die Speicher-Steuereinheit 210 kann der Speicher-Steuereinheit 200 von 1 entsprechen, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Die Speichervorrichtung 220 kann eine Mehrzahl an Pins, wie der erste bis achte Pin P11 bis P18, etc., eine Speicher-Schnittstellenschaltung 221, eine Steuerlogikschaltung 222, und/oder eine Speicherzellenmatrix 400, etc. umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Die Speicher-Schnittstellenschaltung 221 kann ein Chip-Freigabesignal nCE von der Speicher-Steuereinheit 210 durch den ersten Pin P11, etc. empfangen. Die Speicher-Schnittstellenschaltung 221 kann durch den zweiten bis achten Pin P12 bis P18 gemäß dem Chip-Freigabesignal nCE, etc. Signale an die Speicher-Steuereinheit 210 übermitteln und/oder Signale von der Speicher-Steuereinheit 210 empfangen. Zum Beispiel kann, wenn das Chip-Freigabesignal nCE in einem freigegebenen Zustand (z.B. ein niedriges Niveau) ist, die Speicher-Schnittstellenschaltung 221 durch den zweiten bis achten Pin P12 bis P18, etc. Signale an die Speicher-Steuereinheit 210 übermitteln und/oder Signale von der Speicher-Steuereinheit 210 empfangen.
  • Die Speicher-Schnittstellenschaltung 221 kann ein Befehlssperre-Freigabesignal CLE, ein Adresssperre-Freigabesignal ALE, und/oder ein Schreib-Freigabesignal nWE, etc. von der Speicher-Steuereinheit 210 durch den zweiten bis vierten Pin P12 bis P14 empfangen, aber ist nicht darauf beschränkt. Die Speicher-Schnittstellenschaltung 221 kann durch den siebten Pin P17, etc. ein Datensignal DQ von der Speicher-Steuereinheit 210 empfangen und/oder das Datensignal DQ an die Steuer-Speichereinheit 210 übermitteln. Ein Befehl CMD, eine Adresse ADDR, und/oder Daten DATA können durch das Datensignal DQ, etc. übermittelt werden. Zum Beispiel kann das Datensignal DQ durch eine Mehrzahl an Datensignalleitungen übermittelt werden. In diesem Fall kann der siebte Pin P17 eine Mehrzahl an Pins, welche einer Mehrzahl an Datensignalen entsprechen, umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Die Speicher-Schnittstellenschaltung 221 kann den Befehl CMD von dem in einem Freigabeabschnitt (z.B. bei einem hohen Niveauzustand) des Befehlssperre-Freigabesignals CLE auf der Basis von Toggle- bzw. Hin-und-Herschalt-Zeitpunkten des Schreib-Freigabesignals nWE empfangenen Datensignal DQ, empfangen. Die Speicher-Schnittstellenschaltung 221 kann die Adresse ADDR von dem in einem Freigabebereich (z.B. bei einem hohen Niveauzustand) des Adresssperre-Freigabesignals ALE auf der Basis der Toggle- bzw. Hin-und-Herschalt-Zeitpunkte des Schreib-Freigabesignals nWE empfangenen Datensignal DQ empfangen.
  • In mindestens einer Beispielausführungsform kann das Schreib-Freigabesignal nWE auf einem statischen Zustand (z.B. einem hohen Niveau oder einem niedrigen Niveau) beibehalten werden und danach zwischen dem hohen Niveau und dem niedrigen Niveau geschaltet werden. Zum Beispiel können das Schreib-Freigabesignal nWE in einem Abschnitt geschaltet werden, in welchem der Befehl CMD und/oder die Adresse ADDR übermittelt wird. Dementsprechend kann die Speicher-Schnittstellenschaltung 221 den Befehl CMD und/oder die Adresse ADDR auf der Basis der Schaltzeitpunkte des Schreib-Freigabesignals nWE erhalten.
  • Die Speicher-Schnittstellenschaltung 221 kann ein Lese-Freigabesignal nRE von der Speicher-Steuereinheit 210 durch den fünften Pin P15, etc. empfangen. Die Speicher-Schnittstellenschaltung 221 kann ein Daten-Strobe-Signal DQS durch den sechsten Pin P16, etc. von der Speicher-Steuereinheit 210 empfangen und/oder das Daten-Strobe-Signal DQS an die Speicher-Steuereinheit 210 übermitteln.
  • In einem Daten DATA Ausgabe-Betrieb der Speichervorrichtung 220 kann die Speicher-Schnittstellenschaltung 221 das Lese-Freigabesignal nRE, welches toggelt bzw. hin-und-herschaltet, durch den fünften Pin P15 empfangen, bevor die Daten DATA ausgegeben werden, aber die Beispielausführungsformen sind nicht darauf beschränkt. Die Speicher-Schnittstellenschaltung 221 kann ein Daten-Strobe-Signal DQS, welches toggelt bzw. hin-und-herschaltet, auf der Basis von Toggeln des Lese-Freigabesignals nRE erzeugen. Zum Beispiel kann die Speicher-Schnittstellenschaltung 221 das Daten-Strobe-Signal DQS, welches Toggeln startet, nach einer gewünschten und/oder vorbestimmten Verzögerungszeit (z.B. tDQSRE) von einer Toggle-Startzeit des Lese-Freigabesignals nRE erzeugen, aber die Beispielausführungsformen sind nicht darauf beschränkt. Die Speicher-Schnittstellenschaltung 221 kann das Datensignal DQ einschließlich der Daten DATA auf der Basis von einem Toggle-Zeitpunkt des Daten-Strobe-Signals DQS, etc. übermitteln. Dementsprechend können die Daten DATA mit dem Toggle-Zeitpunkt des Daten-Strobe-Signals DQS ausgerichtet und an die Speicher-Steuereinheit 210 übermittelt werden, aber ist nicht darauf beschränkt.
  • In einem Daten DATA Eingabe-Betrieb der Speichervorrichtung 220, wenn das Datensignal DQ einschließlich der Daten DATA von der Speicher-Steuereinheit 210 empfangen wird, kann die Speicher-Schnittstellenschaltung 221 das Daten-Strobe-Signal DQS, welches mit den Daten DATA entlang toggeln bzw. hin-und-herschaltet, von der Speicher-Steuereinheit 210 empfangen, aber die Beispielausführungsformen sind nicht darauf beschränkt. Die Speicher-Schnittstellenschaltung 221 kann die Daten DATA von dem Datensignal DQ auf der Basis des Toggle-Zeitpunkts des Daten-Strobe-Signals DQS erhalten. Zum Beispiel kann die Speicher-Schnittstellenschaltung 221 die Daten DATA durch Sampeln des Datensignals DQ bei einer ansteigenden Flanke und einer abfallenden Flanke des Daten-Strobe-Signals DQS erhalten, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Die Speicher-Schnittstellenschaltung 221 kann ein Bereit/Beschäftigt-Ausgabesignal nR/B an die Speicher-Steuereinheit 210 durch den achten Pin P18, etc. übermitteln. Die Speicher-Schnittstellenschaltung 221 kann Zustandsinformationen der Speichervorrichtung 220 an die Speicher-Steuereinheit 210 durch das Bereit/Beschäftigt-Ausgabesignal nR/B übermitteln, aber ist nicht darauf beschränkt. Wenn die Speichervorrichtung 220 in einem Beschäftigt-Zustand ist (z.B. wenn interne Betriebe der Speichervorrichtung 220 durchgeführt werden), kann die Speicher-Schnittstellenschaltung 221 das Bereit/Beschäftigt-Ausgabesignal nR/B, welches den Beschäftigt-Zustand angibt, an die Speicher-Steuereinheit 210 übermitteln, aber die Beispielausführungsformen sind nicht darauf beschränkt. Wenn die Speichervorrichtung 220 in einem Bereit-Zustand ist (z.B. wenn die internen Betriebe der Speichervorrichtung 220 nicht durchgeführt werden oder abgeschlossen sind), kann die Speicher-Schnittstellschaltung 221 das Bereit/Beschäftigt-Ausgabesignal nR/B, welches den Bereit-Zustand angibt, an die Speicher-Steuereinheit 210 übermitteln, aber die Beispielausführungsformen sind nicht darauf beschränkt. Zum Beispiel kann, während die Speichervorrichtung 220 die Daten DATA von der Speicherzellenmatrix 400 als Antwort auf einen Seiten-Lesebefehl liest, die Speicher-Schnittstellenschaltung 221 das Bereit/Beschäftigt-Ausgabesignal nR/B, welches den Beschäftigt-Zustand angibt (z.B. ein niedriges Niveau), an die Speicher-Steuereinheit 210, etc. übermitteln. Zum Beispiel kann, während die Speichervorrichtung 220 die Daten DATA zur Speicherzellenmatrix 400 als Antwort auf einen Programm-Befehl programmiert, die Speicher-Schnittstellenschaltung 221 das Bereit/Beschäftigt-Ausgabesignal nR/B, welches den Beschäftigt-Zustand angibt, an die Speicher-Steuereinheit 210, etc. übermitteln.
  • Die Steuerlogikschaltung 222 (z.B. Steuer-Verarbeitungsschaltung, etc.) kann allgemein verschiedene Betriebe bzw. Operationen der Speichervorrichtung 220 steuern. Die Steuerlogikschaltung 222 kann den/die durch die Steuer-Schnittstellenschaltung 221 erhaltenen Befehl CMD/Adresse ADDR empfangen. Die Steuerlogikschaltung 22 kann Steuersignale zum Steuern anderer Komponenten der Speichervorrichtung 220 gemäß dem/der empfangenen Befehl CMD/Adresse ADDR erzeugen. Zum Beispiel kann die Steuerlogikschaltung 222 verschiedene Steuersignale zum Programmieren der Daten DATA zu und/oder Lesen der Daten DATA von der Speicherzellenmatrix 400, etc. erzeugen.
  • Die Speicherzellenmatrix 400 kann die von der Speicher-Schnittstellenschaltung 221 erhaltenen Daten DATA unter Steuerung der Steuerlogikschaltung 222 speichern. Die Speicherzellenmatrix 400 kann die gespeicherten Daten DATA an die Speicher-Schnittstellenschaltung 221 unter Steuerung der Steuerlogikschaltung 222 ausgeben.
  • Die Speicherzellenmatrix 400 kann eine Mehrzahl an Speicherzellen umfassen. Zum Beispiel kann die Mehrzahl an Speicherzellen Flash-Speicherzellen, etc. sein. Die Beispielausführungsformen des erfinderischen Konzepts sind jedoch nicht darauf beschränkt, und die Speicherzellen können z.B. resistive Direktzugriffsspeicher (RRAM)-Zellen, ferroelektrische RAM (FRAM)-Zellen, Phasenänderungs-RAM (PRAM)-Zellen, Thyristor-RAM (TRAM)-Zellen, und/oder magnetische RAM (MRAM)-Zellen, etc. sein. Beispielausführungsformen des erfinderischen Konzepts werden nachstehend bezüglich einigen Beispielausführungsformen, in welchen Speicherzellen aus Gründen der Einfachheit und Knappheit NAND-Flash-Speicherzellen sind, beschrieben, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Die Speicher-Steuereinheit 210 kann eine Mehrzahl an Pins, z.B. den ersten bis achten Pin P21 bis P28, etc. und/oder eine Steuereinheit-Schnittstellenschaltung 211 (z.B. eine Host-Schnittstellenschaltung, etc.) umfassen, aber ist nicht darauf beschränkt. Die ersten bis achten Pins P21 bis P28 können den ersten bis achten Pins P11 bis P18 der Speichervorrichtung 220 entsprechen, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Die Steuer-Schnittstellenschaltung 410 kann das Chip-Freigabesignal nCH an die Speichervorrichtung 220 durch den ersten Pin P21, etc. übermitteln. Die Steuer-Schnittstellenschaltung 410 kann Signale an die Speichervorrichtung 220 übermitteln und Signale von der Speichervorrichtung 220 empfangen, was durch das Chip-Freigabesignal nCE, durch den zweiten bis achten Pin P22 bis P28, etc. ausgewählt wird.
  • Die Steuer-Schnittstellenschaltung 410 kann das Befehlssperre-Freigabesignal CLE, das Adresssperre-Freigabesignal ALE, und/oder das Schreib-Freigabesignal nWE, etc. an die Speichervorrichtung 220 durch den zweiten bis vierten Pin P22 bis P24 übermitteln, aber ist nicht darauf beschränkt. Die Steuer-Schnittstellenschaltung 410 kann durch den siebten Pin P27, etc. das Datensignal DQ an die Speichervorrichtung 220 übermitteln und/oder das Datensignal DQ von der Speichervorrichtung 220 empfangen.
  • Die Steuer-Schnittstellenschaltung 410 kann das Datensignal DQ einschließlich des Befehls CMD und/oder der Adresse ADDR an die Speichervorrichtung 220, zusammen mit dem Schreib-Freigabesignal nWE, welches toggelt bzw. hin-und-herschaltet bzw. umschaltet, übermitteln, aber die Beispielausführungsformen sind nicht darauf beschränkt. Die Steuer-Schnittstellenschaltung 410 kann das Befehlssperre-Freigabesignal CLE, welches in dem freigegebenen Zustand ist, übermitteln, um das Datensignal DQ einschließlich des Befehls CMD an die Speichervorrichtung 220 zu übermitteln, und übermittelt das Adresssperre-Freigabesignal ALE, welches in dem freigegebenen Zustand ist, um das Datensignal DQ einschließlich der Adresse ADDR an die Speichervorrichtung 220 zu übermitteln, aber ist nicht darauf beschränkt.
  • Die Steuer-Schnittstellenschaltung 410 kann das Lese-Freigabesignal nRE an die Speichervorrichtung 220 durch den fünften Pin P25, etc. übermitteln. Die Steuer-Schnittstellenschaltung 410 kann durch den sechsten Pin P26, etc. das Daten-Strobe-Signal DQS von der Speichervorrichtung 220 empfangen oder das Daten-Strobe-Signal DQS an die Speichervorrichtung 220 übermitteln.
  • In einem Daten DATA-Ausgabebetrieb der Speichervorrichtung 220 kann die Steuer-Schnittstellenschaltung 410 das Lese-Freigabesignal nRE, welches toggelt, erzeugen und/oder das Lese-Freigabesignal nRE an die Speichervorrichtung 220, etc. übermitteln. Zum Beispiel kann die Steuer-Schnittstellenschaltung 410 das Lese-Freigabesignal nRE, welches sich von einem statischen Zustand (z.B. ein hohes Niveau oder ein niedriges Niveau) zu einem Toggle-Zustand ändert, bevor die Daten DATA ausgegeben werden, erzeugen, aber ist nicht darauf beschränkt. Dementsprechend kann die Speichervorrichtung 220 das Daten-Strobe-Signal DQS, welches toggelt bzw. hin- und herschaltet, basierend auf dem Lese-Freigabesignal nRE erzeugen. Die Steuer-Schnittstellenschaltung 410 kann das Datensignal DQ einschließlich Daten DATA von der Speichervorrichtung 220 zusammen mit dem Daten-Strobe-Signal DQS, welches toggelt bzw. hin- und herschaltet, etc. empfangen. Die Steuer-Schnittstellenschaltung 410 kann die Daten DATA von dem Datensignal DQ auf der Basis des Toggle- bzw. Hin-und-Herschalt-Zeitpunkts des Daten-Strobe-Signals DQS, etc. erhalten.
  • Gemäß einigen Beispielausführungsformen kann die Steuer-Schnittstellenschaltung 211 den Lesebefehl Lese CMD, die Adresse ADDR, und/oder das Lese-Freigabesignal nRE an die Speichervorrichtung 220 übermitteln, aber ist nicht darauf beschränkt. In diesem Fall kann die Speichervorrichtung 220 Hauptdaten, welche der Adresse ADDR entsprechen, von einer Speicherzellenmatrix 430 gemäß dem Lese-Freigabesignal nRE lesen. In diesem Fall basiert eine Geschwindigkeit, bei welcher die Hauptdaten gelesen werden, auf einer durch die Lese-Steuereinheit 300 eingestellte Gangstufe. Die Lese-Steuereinheit 300 kann die Gangstufe auf der Basis eines Zustands der Speichervorrichtung 220 adaptiv ändern.
  • In einem Daten DATA-Eingabebetrieb der Speichervorrichtung 220, kann die Steuer-Schnittstellenschaltung 410 das Daten-Strobe-Signal DQS, welches toggelt bzw. hin- und herschaltet, erzeugen. Zum Beispiel kann die Steuer-Schnittstellenschaltung 410 das Daten-Strobe-Signal DQS, welches sich von einem statischen Zustand (z.B. ein hohes Niveau oder ein niedriges Niveau) zu einem Toggle-Zustand ändert, bevor die Daten DATA übermittelt werden, erzeugen, aber ist nicht darauf beschränkt. Die Steuer-Schnittstellenschaltung 410 kann das Datensignal DQ einschließlich der Daten DATA an die Speichervorrichtung 220 auf der Basis der Toggle-Zeitpunkte des Daten-Strobe-Signals DQS übermitteln.
  • Die Steuer-Schnittstellenschaltung 410 kann das Bereit/Beschäftigt-Ausgabesignal nR/B von der Speichervorrichtung 220 durch den achten Pin P28, etc. empfangen. Die Steuer-Schnittstellenschaltung 410 kann Zustandsinformationen der Speichervorrichtung 220 auf der Basis des Bereit/Beschäftigt-Ausgabesignals nR/B, etc. identifizieren.
  • 9 ist ein Blockdiagramm eines Beispiels der Speichervorrichtung 220 von 1 gemäß einigen Beispielausführungsformen. Bezugnehmend auf 9 kann eine Speichervorrichtung 4000 eine Steuerlogikschaltung 420, eine Speicherzellenmatrix 430, eine Seitenpuffereinheit 440, einen Spannungsgenerator 450, und/oder einen Zeilen-Decoder 460, etc. umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt. Die Speichervorrichtung 4000 kann ferner eine in 9 gezeigte Speicher-Schnittstellenschaltung 410 umfassen, und kann ferner eine Spaltenlogik, einen Vor-Decoder, einen Temperatursensor, einen Befehls-Decoder, einen Adressen-Decoder, und ähnliches umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Die Steuerlogikschaltung 420 kann allgemein verschiedene Betriebe bzw. Operationen in der Speichervorrichtung 4000 steuern. Die Steuerlogikschaltung 420 kann verschiedene Steuersignale als Antwort auf einen Befehl CMD und/oder eine Adresse ADDR von der Speicher-Schnittstellenschaltung 410, etc. ausgeben. Zum Beispiel kann die Steuerlogikschaltung 420 ein Spannungssteuersignal CTRL_vol, eine Zeilen-Adresse X-ADDR, und/oder eine Spalten-Adresse Y-ADDR, etc. ausgeben, aber ist nicht darauf beschränkt.
  • Die Speicherzellenmatrix 430 kann eine Mehrzahl an Speicherblöcken BLK1 bis BLKz (z ist eine positive, ganze Zahl) umfassen, und eine jede von der Mehrzahl an Speicherblöcken BLK1 bis BLKz kann eine Mehrzahl an Speicherzellen umfassen. Die Speicherzellenmatrix 430 kann mit der Seitenpuffereinheit 440 durch Bit-Leitungen BL verbunden sein, und mit dem Zeilen-Decoder 460 durch Wort-Leitungen WL, String-Auswahlleitung SSL, und Masse-Auswahlleitungen GSL verbunden sein, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • In mindestens einer Beispielausführungsform kann die Speicherzellenmatrix 430 eine 3D-Speicherzellenmatrix umfassen, und die 3D-Speicherzellenmatrix kann eine Mehrzahl an NAND-Strings, etc. umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt. Ein jeder von den NAND-Strings kann Speicherzellen, welche mit den auf einem Substrat vertikal gestapelten Wort-Leitungen verbunden sind umfassen. US-Patent Nr. 7,679,133 ( US 7679133 B2 ); 8,553,466 ( US 8553466 B2 ); 8,654,587 ( US 8654587 B2 ); und 8,559,235 ( US 8559235 B2 ); und US-Veröffentlichung Nr. 2011/0233648 ( US 2011/0233648 A1 ) sind jeweils durch Verweis hier eingeschlossen. In mindestens einer Beispielausführungsform kann die Speicherzellenmatrix 430 eine 2D-Speicherzellenmatrix umfassen, und die 2D-Speicherzellenmatrix kann eine Mehrzahl an NAND-Strings, welche in Zeilen- und Spalten-Richtung angeordnet sind, etc. umfassen.
  • Die Seitenpuffereinheit 440 kann eine Mehrzahl an Seitenpuffern PB1 bis PBn (wobei n eine ganze Zahl gleich oder größer als 3 ist) umfassen, und die Mehrzahl an Seitenpuffern PB1 bis PBn kann mit den Speicherzellen durch die Bit-Leitungen BL verbunden sein. Die Seitenpuffereinheit 440 kann mindestens eine von den Bit-Leitungen BL als Antwort auf die Spalten-Adresse Y-ADDR auswählen. Die Seitenpuffereinheit 440 kann als ein Schreib-Treiber und/oder ein Leseverstärker gemäß einem Betriebsmodus betrieben werden. Zum Beispiel kann während eines Programmbetriebes die Seitenpuffereinheit 440 eine Bit-Leitungsspannung, welche zu programmierenden Daten entspricht, an eine ausgewählte Bit-Leitung angelegt werden, aber ist nicht darauf beschränkt. Während eines Lesebetriebs kann die Seitenpuffereinheit 440 in einer Speicherzelle gespeicherte Daten durch Erfassen eines Stroms und/oder einer Spannung einer ausgewählten Bit-Leitung, etc. erfassen.
  • Der Spannungsgenerator 450 kann verschiedene Typen von Spannungen zum Durchführen des Programm-Betriebs, des Lese-Betriebs, eines Lösch-Betriebs, etc. auf der Basis des Spannungs-Steuerungssignals CTRL_vol erzeugen. Zum Beispiel kann der Spannungsgenerator 450 eine Programm-Spannung, eine Lese-Spannung, eine Programmüberprüfungs-Spannung, eine Lösch-Spannung, oder ähnliches als eine Wort-Leitungsspannung VWL, etc. erzeugen.
  • Der Zeilen-Decoder 460 kann eine von den Wort-Leitungen WL und eine von den String-Auswahlleitungen SSL als Antwort auf die Zeilen-Adresse X-ADDR auswählen. Zum Beispiel kann der Zeilen-Decoder 460 die Programm-Spannung und die Programmüberprüfungs-Spannung an die ausgewählte Wort-Leitung während des ProgrammBetriebes anlegen, und die Lese-Spannung an die ausgewählte Wort-Leitung während des Lese-Betriebes anlegen, aber ist nicht darauf beschränkt.
  • 10 ist ein Diagramm zum Beschreiben einer 3D-V-NAND-Struktur, welche auf die Speichervorrichtung 220 von 1 gemäß einigen Beispielausführungsformen anwendbar ist. Wenn ein Speichermodul einer Speichervorrichtung als ein Flash-Speicher vom 3D-V-NAND-Typ verkörpert ist, kann ein jeder von einer Mehrzahl an Speicherblöcken des Speichermoduls als eine in 10 dargestellte äquivalente Schaltung repräsentiert werden, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Ein in 10 dargestellter Speicherblock BLKi ist ein in einer 3D-Struktur auf einem Substrat ausgebildeter 3D-Speicherblock, aber ist nicht darauf beschränkt. Zum Beispiel kann eine Mehrzahl an Speicher-NAND-Strings, welche in dem Speicherblock BLKi enthalten sind, in einer Richtung senkrecht zum Substrat ausgebildet sein, aber ist nicht darauf beschränkt.
  • Bezugnehmend auf 10 kann der Speicherblock BLKi eine Mehrzahl an Speicher-NAND-Strings NS11 bis NS33, welche zwischen einer Mehrzahl an Bit-Leitungen BL1, BL2, und BL3, etc. verbunden sind, und einer Common-Source-Leitung CSL umfassen. Ein jeder von der Mehrzahl an Speicher-NAND-Strings NS11 bis NS33 kann einen String-Auswahltransistor SST, eine Mehrzahl an Speicherzellen MC1, MC2, ..., MC8, und eine Masse-Auswahltransistor GST umfassen. 10 stellt dar, dass ein jeder von der Mehrzahl an Speicher-NAND-Strings NS11 bis NS33 acht Speicherzellen MC1 bis MC8 umfasst, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Der String-Auswahltransistor SST kann mit einer Mehrzahl an String-Auswahlleitungen SSL1, SSL2, und SSL3, etc. dementsprechend verbunden sein, aber ist nicht darauf beschränkt. Die Mehrzahl an Speicherzellen MC1, MC2, ..., MC8 kann mit jeweils einer entsprechenden Mehrzahl an Gate-Leitungen GTL1, GTL2,..., GTL8, verbunden sein. Die Gate-Leitungen GTL1, GTL2, ..., GTL8 können Wort-Leitungen entsprechen, und einige der Gate-Leitungen GTL1, GTL2,..., GTL8 können Dummy-Wortleitungen entsprechen, aber sind nicht darauf beschränkt. Der Masse-Auswahltransistor GST kann mit einer Mehrzahl an Masse-Auswahlleitungen GSL1, GSL2, und GSL3, etc. dementsprechend verbunden sein. Der String-Auswahltransistor SST kann mit der Mehrzahl an Bit-Leitungen BL1, BL2, und BL3, etc. dementsprechend verbunden sein, und der Masse-Auswahltransistor GST kann mit der Common-Source-Leitung CSL verbunden sein.
  • Wort-Leitungen (z.B. Wort-Leitungen WL1), welche dieselbe Höhe aufweisen, können gemeinsam verbunden werden, und die Masse-Auswahlleitungen GSL1, GSL2, und GSL3 und die String-Auswahlleitungen SSL1, SSL2, und SSL3 können voneinander getrennt sein. 10 stellt dar, dass ein Speicherblock BLK mit den acht Gate-Leitungen GTL1 bis GTL8 und drei Bit-Leitungen BL1, BL2, und BL3 verbunden ist, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • 11 ist ein Diagramm, welches ein System darstellt, auf welches die Speichereinrichtung 200 von 1 gemäß mindestens einer Beispielausführungsform angewandt wird.
  • Ein System 1000 von 11 kann ein Mobilsystem, wie ein Mobiltelefon, ein Smartphone, ein Tablet-Computer, ein Laptop, eine tragbares Vorrichtung, eine Gesundheitsvorrichtung, eine Robotervorrichtung, eine Virtual-Reality-Vorrichtung und/oder eine Augmented-Reality-Vorrichtung, ein autonomes Fahrzeug und/oder eine Internet-of-Things (IOT)-Vorrichtung, etc. sein, aber die Beispielausführungsformen sind nicht darauf beschränkt. Das System 1000 von 11 ist jedoch nicht zwingend auf das Mobilsystem beschränkt, und kann ein Computer, ein Laptop-Computer, ein Server, ein Media-Player, und/oder eine Automobilvorrichtung, wie ein Navigationssystem, etc. sein.
  • Bezugnehmend auf 11 kann das System 1000 mindestens ein Hauptprozessor 1100, eine Mehrzahl an Speichern 1200a und 1200b, und/oder eine Mehrzahl an Speichervorrichtungen 1300a und 1300b umfassen, und kann ferner mindestens eines aus einer Bilderfassungsvorrichtung 1410, einer Nutzer-Eingabevorrichtung 1420, einem Sensor 1430, einer Kommunikationsvorrichtung 1440, einem Display 1450, einem Lautsprecher 1460, einer Stromversorgungsvorrichtung 1470, und/oder einer Verbindungsschnittstelle 1480, etc. umfassen, aber die Beispielausführungsformen sind nicht darauf beschränkt und können eine größere oder kleinere Anzahl an Bestandteile enthalten.
  • Der Hauptprozessor 1100 kann den Gesamtbetrieb des Systems 1000, und insbesondere, Betriebe bzw. Operationen von anderen Komponenten des Systems 1000 steuern, aber ist nicht darauf beschränkt. Der Hauptprozessor 1100 kann als ein Universal-Prozessor, ein dedizierter Prozessor, ein Anwendungsprozessor, oder ähnliches verkörpert sein.
  • Der Hauptprozessor 1100 kann einen oder mehrere Steuereinheitskerne 1110 (z.B. Prozessorkerne, Verarbeitungskerne, etc.) umfassen, und kann ferner eine Steuereinheit 1120 zur Steuerung der Speicher 1200a und 1200b und/oder der Speichervorrichtungen 1300a und 1300b, etc. umfassen. Gemäß mindestens einer Beispielausführungsform kann der Hauptprozessor 1100 ferner einen Akzelerator-Block 1130, welcher ein eigener bzw. dedizierter Stromkreis für Hochgeschwindigkeits-Datenbetrieb, wie ein künstliche Intelligenz (AI)-Datenbetrieb ist, umfassen, aber ist nicht darauf beschränkt. Der Akzelerator-Block 1130 kann eine Graphikverarbeitungseinheit (GPU), eine neuronale Verarbeitungseinheit (NPU), und/oder eine Datenverarbeitungseinheit (DPU) umfassen, und kann als ein Chip physisch unabhängig von den anderen Komponenten des Hauptprozessors 1100 verkörpert sein, aber die Beispielausführungsformen sind nicht darauf beschränkt.
  • Die Speicher 1200a und 1200b können als Hauptspeichervorrichtungen des Systems 1000 verwendet werden, und können flüchtige Speicher, wie ein SRAM und/oder DRAM, umfassen, aber können nichtflüchtige Speicher, wie einen Flash-Speicher, PRAM und/oder RRAM, etc. umfassen. Die Speicher 1200a und 1200b können in demselben Package wie der Hauptprozessor 1100 implementiert sein, aber sind nicht darauf beschränkt.
  • Die Speichervorrichtungen 1300a und 1300b können als nichtflüchtige Speichervorrichtungen funktionieren, welche Daten speichern, ungeachtet, ob Strom zugeführt wird, oder nicht, und können eine relativ größere Speicherkapazität als die Speicher 1200a und 1200b aufweisen. Die Speichervorrichtungen 1300a und 1300b können Speicher-Steuereinheiten 1310a und 1310b, und nichtflüchtige Speicher (NVM)-Speichereinrichtungen 1320a und 1320b, welche Daten unter Steuerung der Speicher-Steuereinheiten 1310a und 1310b, etc. speichern, umfassen. Der NVM-Speicher 1320a und 1320b kann 2D- und/oder 3D-V-NAND-Flash-Speicher umfassen, aber kann andere Typen von NVM, wie PRAM und/oder RRAM, etc. umfassen.
  • Die Speichervorrichtungen 1300a und 1300b können in dem System 1000, welches physisch von dem Hauptprozessor 1100 getrennt ist, enthalten sein, und/oder können in demselben Package wie der Hauptprozessor 1100 enthalten sein. Außerdem können die Speichervorrichtungen 1300a und 1300b dieselbe Form wie eine Speicherkarte aufweisen und können somit mit den anderen Komponenten des Systems 1000 durch eine Schnittstelle, wie die nachstehend beschriebene Verbindungsschnittstelle 1480, abtrennbar verbunden sein, aber sind nicht darauf beschränkt. Die Speichervorrichtungen 1300a und 1300b können Vorrichtungen sein, an welchen Standardkonventionen, wie Universal-Flash-Storage (UFS) angewandt werden, aber sind nicht darauf beschränkt.
  • Die Bilderfassungsvorrichtung 1410 kann ein ruhiges Bild und/oder ein bewegtes Bild erfassen und kann eine Kamera, einen Camcorder, und/oder eine Webcam, etc. umfassen.
  • Die Nutzer-Eingabevorrichtung 1420 kann verschiedene Typen von Daten, welche von einem Nutzer des Systems 1000 eingegeben wurden, empfangen, und kann ein Touchpad, ein Keypad, eine Tastatur, eine Mouse, und/oder ein Mikrophon, etc. umfassen.
  • Der Sensor 1430 kann verschiedene Typen von physikalischen Größen, welche von außerhalb des Systems 1000 erhalten werden können, erfassen, und die erfassten physikalischen Größen in elektrische Signale umwandeln. Der Sensor 1430 kann einen Temperatursensor, einen Drucksensor, einen Beleuchtungsstärkesensor, einen Positionssensor, einen Beschleunigungssensor, einen Biosensor, und/oder ein Gyroskop, etc. umfassen.
  • Die Kommunikationsvorrichtung 1440 kann Übermittlung und/oder Empfang von Signalen mit anderen Vorrichtungen außerhalb des Systems 1000 gemäß verschiedenen Kommunikations-Protokollen durchführen. Die Kommunikationsvorrichtung 1440 kann eine Antenne, einen Sendeempfänger, und/oder ein Modem, etc. umfassen.
  • Das Display 1450 und der Lautsprecher 1460 können als Ausgabevorrichtungen, welche visuelle Informationen und Audioinformationen an einen Nutzer des Systems 1000 ausgeben, funktionieren.
  • Die Stromversorgungsvorrichtung 1470 kann Strom, welcher von einer in das System 100 eingebauten Batterie (nicht gezeigt) zugeführt wird, und/oder von einer externen Stromversorgung geeignet wandeln und die gewandelte Energie einer jeden Komponente des Systems 1000 zuführen.
  • Die Verbindungsschnittstelle 1480 kann das System 1000 und eine externe Vorrichtung verbinden, welche Daten mit dem System 1000 austauschen kann, wenn sie an das System 1000 verbunden ist. Die Verbindungsschnittstelle 1480 kann gemäß verschiedenen Schnittstellenverfahren, wie Advanced Technology Attachment (ATA), serielles ATA (SATA), externes SATA (e-SATA), Small-Computer Small-Interface (SCSI), Serial Attached SCSI (SAS), Peripheral Component Interconnection (PCI), PCI express (PCIe), NVM express (NVMe), IEEE 1394, Universal Serial Bus (USB), einer Secure Digital (SD)-Karte, einer Multimedia-Karte (MMC), einer eingebetteten Multimedia-Karte (eMMC), Universal Flash Storage (UFS), eingebettetem UFS (eUFS), einer Kompakt-Flash (CF)-Kartenschnittstelle, und ähnlichem, implementiert sein.
  • Obwohl verschiedene Beispielausführungsformen des erfinderischen Konzepts vorstehend mit Bezug auf die beigefügten Zeichnungen beschrieben wurden, sind die Beispielausführungsformen des erfinderischen Konzepts nicht darauf beschränkt und können in verschiedenen unterschiedlichen Formen ausgeführt werden. Von einem Fachmann wird es verstanden, dass die Beispielausführungsformen des erfinderischen Konzepts in anderen spezifischen Formen implementiert werden können, ohne vom technischen Sinn oder den wesentlichen Merkmalen des erfinderischen Konzepts abzuweichen. Dementsprechend sollten die hier ausgeführten Beispielausführungsformen lediglich als Beispiele und nicht zum Zweck der Beschränkung berücksichtigt werden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Patentliteratur
    • US 7679133 [0093]
    • US 7679133 B2 [0093]
    • US 8553466 [0093]
    • US 8553466 B2 [0093]
    • US 8654587 [0093]
    • US 8654587 B2 [0093]
    • US 8559235 [0093]
    • US 8559235 B2 [0093]
    • US 2011/0233648 [0093]
    • US 2011/0233648 A1 [0093]

Claims (20)

  1. Speichersystem, umfassend: eine Speichervorrichtung, welche einen ersten Bereich, welcher eine Single-Level-Zelle enthält, und einen zweiten Bereich, welcher sich von dem ersten Bereich unterscheidet, umfasst; und eine Speicher-Steuereinheit, die konfiguriert ist zum Lesen von Daten vom ersten Bereich bei einer ersten Gangstufe von einer Mehrzahl an Gangstufen, Bestimmen eines Fehlerniveaus der gelesenen Daten und eines Zustands der Speichervorrichtung, und Ändern der ersten Gangstufe auf eine zweite Gangstufe von der Mehrzahl an Gangstufen, basierend auf dem bestimmten Fehlerniveau der gelesenen Daten und dem bestimmten Zustand der Speichervorrichtung.
  2. Speichersystem nach Anspruch 1, wobei der zweite Bereich mindestens eine von einer Multi-Level-Zelle, einer Triple-Level-Zelle, einer Quad-Level-Zelle, oder jegliche Kombinationen derselben umfasst.
  3. Speichersystem nach Anspruch 1, wobei die zweite Gangstufe eine geringere Lesegeschwindigkeit als die erste Gangstufe aufweist.
  4. Speichersystem nach Anspruch 1, wobei die zweite Gangstufe eine höhere Lesegeschwindigkeit als die erste Gangstufe aufweist.
  5. Speichersystem nach Anspruch 1, wobei die Speicher-Steuereinheit eine Mapping-Tabelle umfasst, wobei die Mapping-Tabelle konfiguriert ist, eine Mehrzahl an vorausgesagten Bedingungen, welche der Mehrzahl an Gangstufen entsprechen, zu speichern.
  6. Speichersystem nach Anspruch 5, wobei die Mehrzahl an vorausgesagten Bedingungen mindestens eines von einem Fehlerniveau in den Lesedaten, einer Datenaufbewahrungsdauer, einer Temperatur der Speichervorrichtung, einem Ausdauerzyklus, einer Datenleseintensität, einer einzigartigen Chip-Eigenschaft, oder jegliche Kombinationen derselben umfasst.
  7. Speichersystem nach Anspruch 5, wobei die Speicher-Steuereinheit ferner konfiguriert ist zum: Identifizieren einer vorausgesagten Bedingung von der Mehrzahl an vorausgesagten Bedingungen, basierend auf dem bestimmten Fehlerniveau in den Lesedaten und dem bestimmten Zustand der Speichervorrichtung; und Auswählen einer Gangstufe, welche der identifizierten vorausgesagten Bedingung entspricht, als die zweite Gangstufe.
  8. Speichersystem nach Anspruch 5, wobei die Mehrzahl an vorausgesagten Bedingungen der Mapping-Tabelle basierend auf Betriebsbedingungen der Speichervorrichtung, Nutzungsmustern der Speichervorrichtung, und Zuverlässigkeitswerten der Lesedaten eingestellt sind.
  9. Betriebsverfahren einer Speicher-Steuereinheit, umfassend: Lesen von Daten einer Speichervorrichtung unter Verwendung einer ersten Gangstufe von einer Mehrzahl an Gangstufen, Bestimmen eines Fehlerniveaus der Lesedaten und eines Zustands der Speichervorrichtung, und dynamisches Einstellen einer Lesegeschwindigkeit der Speichervorrichtung auf eine zweite Gangstufe von der Mehrzahl an Gangstufen, basierend auf dem bestimmten Fehlerniveau der Lesedaten und des Zustandes der Speichervorrichtung.
  10. Betriebsverfahren nach Anspruch 9, wobei die zweite Gangstufe eine höhere Lesegeschwindigkeit als die erste Gangstufe aufweist.
  11. Betriebsverfahren nach Anspruch 9, wobei die zweite Gangstufe eine geringere Lesegeschwindigkeit als die erste Gangstufe aufweist.
  12. Betriebsverfahren nach Anspruch 9, wobei die Speicher-Steuereinheit eine Mapping-Tabelle mit einer Mehrzahl an vorausgesagten Bedingungen, welche der Mehrzahl an Gangstufen entsprechen, umfasst.
  13. Betriebsverfahren nach Anspruch 9, wobei eine Mehrzahl an vorausgesagten Bedingungen mindestens eines von einem Fehlerniveau in den Lesedaten, einer Datenaufbewahrungsdauer, einer Temperatur der Speichervorrichtung, einem Ausdauerzyklus, einer Datenleseintensität, einer einzigartigen Chip-Eigenschaft, oder jegliche Kombinationen derselben umfasst.
  14. Betriebsverfahren nach Anspruch 13, wobei die Mehrzahl von vorausgesagten Bedingungen Bedingungen zum Auswählen der Mehrzahl an Gangstufen sind; und die Mehrzahl an vorausgesagten Bedingungen basierend auf Betriebsbedingungen der Speichervorrichtung, Verwendungsmustern der Speichervorrichtung, und Zuverlässigkeitswerten der Lesedaten eingestellt sind.
  15. Betriebsverfahren nach Anspruch 9, wobei die auf der ersten Gangstufe oder der zweiten Gangstufe gelesenen Daten Daten sind, welche in einem Single-Level-Zellen-Bereich der Speichervorrichtung gespeichert sind.
  16. Speichersystem, umfassend: eine Speichervorrichtung, welche Daten speichert; und eine Speicher-Steuereinheit, welche eine Fehlerkorrekturcode (ECC)-Engine und eine Lese-Steuereinheit umfasst, wobei die ECC-Engine konfiguriert ist, um ein in den von der Speichervorrichtung gelesenen Daten enthaltenes Fehlerniveau zu erfassen, und wobei die Lese-Steuereinheit konfiguriert ist zum Bestimmen eines Zustands der Speichervorrichtung, und dynamischen Einstellen einer Lesegeschwindigkeit der Speichervorrichtung auf eine erste Gangstufe von einer Mehrzahl an Gangstufen basierend auf dem durch die ECC-Engine erfassten Fehlerniveau und den bestimmten Zustand der Speichervorrichtung.
  17. Speichersystem nach Anspruch 16, wobei die Speichervorrichtung einen ersten Bereich, welcher eine Single-Level-Zelle enthält, und einen zweiten Bereich, welcher ein verbleibender Bereich der Speichervorrichtung ausgenommen dem ersten Bereich ist, umfasst; und die Lese-Steuereinheit ferner konfiguriert ist, um Lesedaten unter Verwendung der ersten Gangstufe vom ersten Bereich zu lesen.
  18. Speichersystem nach Anspruch 16, wobei die Speicher-Steuereinheit eine Mapping-Tabelle umfasst, wobei die Mapping-Tabelle konfiguriert ist, um eine Mehrzahl an vorausgesagten Bedingungen zu speichern, welche der Mehrzahl an Gangstufen entsprechen.
  19. Speichersystem nach Anspruch 16, wobei die Speicher-Steuereinheit ferner konfiguriert ist zum: Identifizieren einer vorausgesagten Bedingung von einer Mehrzahl an vorausgesagten Bedingungen, basierend auf einer Anzahl an erfassten Fehlern in den Daten und dem bestimmten Zustand der Speichervorrichtung; und Auswählen einer zweiten Gangstufe, welche der identifizierten vorausgesagten Bedingung entspricht.
  20. Speichersystem nach Anspruch 19, wobei als Antwort darauf, dass die erste Gangstufe eine niedrigste Gangstufe der Speichervorrichtung ist, die Speicher-Steuereinheit ferner konfiguriert ist, um eine Lesegeschwindigkeit auf der niedrigsten Gangstufe beizubehalten.
DE102021121974.4A 2020-12-24 2021-08-25 Speicher-steuereinheit und speichersystem, welches diese enthält Pending DE102021121974A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0183361 2020-12-24
KR1020200183361A KR20220092021A (ko) 2020-12-24 2020-12-24 스토리지 컨트롤러 및 이를 포함하는 스토리지 시스템

Publications (1)

Publication Number Publication Date
DE102021121974A1 true DE102021121974A1 (de) 2022-06-30

Family

ID=81972575

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021121974.4A Pending DE102021121974A1 (de) 2020-12-24 2021-08-25 Speicher-steuereinheit und speichersystem, welches diese enthält

Country Status (4)

Country Link
US (1) US11726871B2 (de)
KR (1) KR20220092021A (de)
CN (1) CN114675781A (de)
DE (1) DE102021121974A1 (de)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7679133B2 (en) 2007-11-08 2010-03-16 Samsung Electronics Co., Ltd. Vertical-type non-volatile memory devices
US20110233648A1 (en) 2010-03-26 2011-09-29 Samsung Electronics Co., Ltd. Three-Dimensional Semiconductor Memory Devices And Methods Of Fabricating The Same
US8553466B2 (en) 2010-03-04 2013-10-08 Samsung Electronics Co., Ltd. Non-volatile memory device, erasing method thereof, and memory system including the same
US8559235B2 (en) 2010-08-26 2013-10-15 Samsung Electronics Co., Ltd. Nonvolatile memory device, operating method thereof and memory system including the same
US8654587B2 (en) 2010-08-11 2014-02-18 Samsung Electronics Co., Ltd. Nonvolatile memory devices, channel boosting methods thereof, programming methods thereof, and memory systems including the same

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8583857B2 (en) * 2007-08-20 2013-11-12 Marvell World Trade Ltd. Method and system for object-oriented data storage
US9123422B2 (en) * 2012-07-02 2015-09-01 Super Talent Technology, Corp. Endurance and retention flash controller with programmable binary-levels-per-cell bits identifying pages or blocks as having triple, multi, or single-level flash-memory cells
EP2294510B1 (de) * 2008-06-24 2011-12-28 SanDisk IL Ltd. Verfahren und vorrichtung zur fehlerkorrektur nach der löschanzahl eines festkörperspeichers
US8595597B2 (en) 2011-03-03 2013-11-26 Intel Corporation Adjustable programming speed for NAND memory devices
US20130031431A1 (en) * 2011-07-28 2013-01-31 Eran Sharon Post-Write Read in Non-Volatile Memories Using Comparison of Data as Written in Binary and Multi-State Formats
US9165683B2 (en) * 2013-09-23 2015-10-20 Sandisk Technologies Inc. Multi-word line erratic programming detection
US9569120B2 (en) * 2014-08-04 2017-02-14 Nvmdurance Limited Adaptive flash tuning
KR102114256B1 (ko) * 2016-02-19 2020-05-22 후아웨이 테크놀러지 컴퍼니 리미티드 플래시 메모리 디바이스 액세스 방법 및 장치
KR20180031289A (ko) 2016-09-19 2018-03-28 삼성전자주식회사 스토리지 장치 및 상기 스토리지 장치의 동작 방법
CN106843771B (zh) 2017-01-26 2019-11-19 合肥兆芯电子有限公司 存储器重读方法、存储器控制电路单元及存储器存储装置
KR102347184B1 (ko) 2017-05-23 2022-01-04 삼성전자주식회사 스토리지 장치 및 상기 스토리지 장치의 동작 방법
US10175892B1 (en) 2017-06-23 2019-01-08 Amazon Technologies, Inc. Adaptive read algorithm for a nonvolatile medium
US10698610B2 (en) * 2018-02-23 2020-06-30 Western Digital Technologies, Inc. Storage system and method for performing high-speed read and write operations
CN110473581B (zh) * 2018-05-09 2020-12-29 建兴储存科技(广州)有限公司 固态储存装置及其相关控制方法
CN111104245B (zh) 2018-10-29 2023-07-14 建兴储存科技(广州)有限公司 固态存储装置的读取重试方法
KR102651440B1 (ko) 2018-11-15 2024-03-27 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
JP2020149123A (ja) * 2019-03-11 2020-09-17 キオクシア株式会社 メモリシステム、及びメモリシステムの制御方法
US11048438B2 (en) * 2019-05-01 2021-06-29 Qualcomm Incorporated Data rate shifting based on temperature
US11188461B2 (en) * 2019-06-19 2021-11-30 Micron Technology, Inc. Garbage collection adapted to memory device life expectancy
JP2021043678A (ja) * 2019-09-10 2021-03-18 キオクシア株式会社 メモリシステム及び方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7679133B2 (en) 2007-11-08 2010-03-16 Samsung Electronics Co., Ltd. Vertical-type non-volatile memory devices
US8553466B2 (en) 2010-03-04 2013-10-08 Samsung Electronics Co., Ltd. Non-volatile memory device, erasing method thereof, and memory system including the same
US20110233648A1 (en) 2010-03-26 2011-09-29 Samsung Electronics Co., Ltd. Three-Dimensional Semiconductor Memory Devices And Methods Of Fabricating The Same
US8654587B2 (en) 2010-08-11 2014-02-18 Samsung Electronics Co., Ltd. Nonvolatile memory devices, channel boosting methods thereof, programming methods thereof, and memory systems including the same
US8559235B2 (en) 2010-08-26 2013-10-15 Samsung Electronics Co., Ltd. Nonvolatile memory device, operating method thereof and memory system including the same

Also Published As

Publication number Publication date
US20220206893A1 (en) 2022-06-30
CN114675781A (zh) 2022-06-28
US11726871B2 (en) 2023-08-15
KR20220092021A (ko) 2022-07-01

Similar Documents

Publication Publication Date Title
DE102014204716B4 (de) Nichtflüchtiges Speicherbauelement und Programmierverfahren für ein Betriebssystem(OS)-Image
DE102008033518B4 (de) Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit, Solid-State-Disk-Steuereinheit und Datenspeicherelement
DE102014101267A1 (de) Speichersystem mit nichtflüchtiger Speichervorrichtung und Programmierverfahren davon
DE102016009807A1 (de) Korrelieren von physikalischen seitenadressen für soft-decision-dekodierung
DE102013109235A1 (de) Flash-Speichersystem mit Detektor für anormale Wortleitung und Verfahren zum Erfassen einer anormalen Wortleitung
DE112020006139T5 (de) Vor-lese-und lese-schwellenspannungsoptimierung
US11682446B2 (en) Selective wordline scans based on a data state metric
DE112016000696B4 (de) Ablaufplanungsschema(ta) für eine Mehrchip-Speichervorrichtung
DE102021118940A1 (de) Speichersteuerung und speichereinrichtung mit derselben
DE112015004531T5 (de) Latch-Initialisierung für eine Datenspeichervorrichtung
DE102018123494A1 (de) Speichervorrichtung, die zum aktualisieren einesfeldprogrammierbaren gate-arrays ausgestaltetist, und betriebsverfahren dafür
DE112021000776T5 (de) Verwaltung von schreib-operationen in einer nichtflüchtigen speichervorrichtung unter verwendung eines variablen vor-lese-spannungspegels
DE102019135863A1 (de) Speichercontroller, Speichervorrichtung und Speichersystem mit verbesserten Schwellenspannungs-Verteilungseigenschaften und ähnliche Betriebsverfahren
DE112020005395T5 (de) Kapazitätserweiterung für speicher-untersysteme
DE102021130730A1 (de) Speichercontroller und Speicherungsvorrichtung, die jeweils ein Fragmentierungsverhältnis verwenden, und Betriebsverfahren dafür
DE102021006246A1 (de) Doppelt verschachtelte Programmierung einer Speichervorrichtung in einem Speicher-Untersystem
CN106683698A (zh) 存储器件及其操作方法
DE112021001848T5 (de) Mehrere pinkonfigurationen von speichervorrichtungen
DE102020126409A1 (de) Speichervorrichtung zum Speichern von Modellinformationen, die Speichervorrichtung enthaltendes Speichersystem und Betriebsverfahren des Speichersystems
DE112020006053T5 (de) Aktiver eingabe/ausgabe-expander eines speicher-untersystems
DE102022004129A1 (de) Zurückkopier-lösch-befehl zur durchführung einer scan- und leseoperation in einer speichervorrichtung
DE102022003141A1 (de) Defekt-verwaltung bei speichervorrichtungen
US11842779B2 (en) Memory device and operating method for performing verify operation
DE102020115731B4 (de) Systeme und verfahren zur programmverifizierung auf einem speichersystem
DE102021006099A1 (de) Ultra-kompakter seitenpuffer

Legal Events

Date Code Title Description
R012 Request for examination validly filed