DE102021118940A1 - MEMORY CONTROL AND STORAGE DEVICE WITH THE SAME - Google Patents

MEMORY CONTROL AND STORAGE DEVICE WITH THE SAME Download PDF

Info

Publication number
DE102021118940A1
DE102021118940A1 DE102021118940.3A DE102021118940A DE102021118940A1 DE 102021118940 A1 DE102021118940 A1 DE 102021118940A1 DE 102021118940 A DE102021118940 A DE 102021118940A DE 102021118940 A1 DE102021118940 A1 DE 102021118940A1
Authority
DE
Germany
Prior art keywords
data
area
slc
memory
read
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
DE102021118940.3A
Other languages
German (de)
Inventor
Hwan Kim
Jea-young Kwon
Jae-Kun Lee
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 DE102021118940A1 publication Critical patent/DE102021118940A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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/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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • 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/0604Improving or facilitating administration, e.g. storage management
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • 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
    • 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
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5621Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
    • G11C11/5642Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • G06F3/0649Lifecycle management
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5641Multilevel memory having cells with different number of storage levels

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

Eine Speichereinrichtung kann mindestens eine Speichervorrichtung, die mindestens einen ersten Single-Level-Zellen(SLC)-Bereich), einen zweiten SLC-Bereich und mindestens einen Multi-Level-Zellen(MLC)-Bereich) enthält, wobei der erste SLC-Bereich eine höhere Datenlesegeschwindigkeit als der zweite SLC-Bereich aufweist und der zweite SLC-Bereich eine höhere Datenlesegeschwindigkeit als der mindestens eine MLC-Bereich aufweist; und eine Speichersteuerung, die eingerichtet ist, um Daten aus der Speichervorrichtung zu lesen und die Migration der Daten zwischen dem ersten SLC-Bereich, dem zweiten SLC-Bereich und dem mindestens einem MLC-Bereich zu steuern.A memory device may include at least one memory device including at least a first single-level cell (SLC) area, a second SLC area, and at least one multi-level cell (MLC) area, the first SLC area has a higher data read speed than the second SLC area and the second SLC area has a higher data read speed than the at least one MLC area; and a memory controller configured to read data from the memory device and to control the migration of the data between the first SLC area, the second SLC area and the at least one MLC area.

Description

HINTERGRUNDBACKGROUND

Verschiedene beispielhafte Ausführungsformen der erfindungsgemäßen Konzepte beziehen sich auf Speichersteuerungen, Speichereinrichtungen mit einem nichtflüchtigen Speicher, der die Speichersteuerung enthält, und/oder Verfahren zum Betrieb der Speichersteuerungen, usw.Various exemplary embodiments of the inventive concepts relate to memory controllers, memory devices with a non-volatile memory containing the memory controller and/or methods for operating the memory controllers, etc.

Ein Flash-Speicher speichert Daten durch Änderung der Schwellenspannung von Speicherzellen und liest die Daten mit einem gewünschten und/oder vorgegebenen Lesepegel. In letzter Zeit sind Speichereinrichtungen mit Flash-Speicher, wie Solid-State-Laufwerke (SSD), Speicherkarten usw., weit verbreitet. Der Grund dafür ist, dass der Flash-Speicher ein nichtflüchtiges Bauelement ist, das die gewünschten Merkmale, wie z. B. einen geringen Stromverbrauch und einen hohen Integrationsgrad, aufweist.A flash memory stores data by changing the threshold voltage of memory cells and reads the data at a desired and/or predetermined reading level. Recently, flash memory storage devices such as solid state drives (SSD), memory cards, etc. have become widespread. This is because flash memory is a non-volatile device that has the desired characteristics, such as memory. B. has a low power consumption and a high degree of integration.

Um die von einem Host übertragenen Schreibdaten im Flash-Speicher zu speichern, werden die Schreibdaten entsprechend den Merkmalen der Schreibdaten in einem Speicherblock eines Single-Level-Zellen-Bereichs oder in einem Speicherblock eines Multi-Level-Zellen-Bereichs gespeichert.In order to store the write data transferred from a host in the flash memory, the write data is stored in a memory block of a single-level cell area or in a memory block of a multi-level cell area according to the characteristics of the write data.

ZUSAMMENFASSUNGSUMMARY

Verschiedene beispielhafte Ausführungsformen der erfindungsgemäßen Konzepte bieten Speichersteuerungen mit verbesserter Leistung, Systeme, die die Speichersteuerung enthalten, und/oder Betriebsverfahren dafür.Various exemplary embodiments of the inventive concepts provide memory controllers with improved performance, systems incorporating the memory controller, and/or methods of operation therefor.

Aspekte mindestens einer beispielhaften Ausführungsform der erfindungsgemäßen Konzepte sehen Speichereinrichtungen, bei denen ein Speicherbereich in Abhängigkeit von und/oder auf der Grundlage von Nutzungsmerkmalen der Daten geändert wird, Systeme, die die Speichereinrichtung enthalten, und/oder Betriebsverfahren dafür, vor.Aspects of at least one example embodiment of the inventive concepts provide storage devices in which a storage area is changed depending on and/or based on usage characteristics of the data, systems that include the storage device, and/or methods of operation therefor.

Mindestens eine beispielhafte Ausführungsform der erfindungsgemäßen Konzepte sieht eine Speichereinrichtung vor, die eine Speichervorrichtung enthält, die mindestens einen ersten Single-Level-Zellen(SLC)-Bereich, einen zweiten SLC-Bereich und mindestens einen Multi-Level-Zellen(MLC)-Bereich enthält, wobei der erste SLC-Bereich eine höhere Datenlesegeschwindigkeit als der zweite SLC-Bereich aufweist, und der zweite SLC-Bereich eine höhere Datenlesegeschwindigkeit als der mindestens eine MLC-Bereich aufweist, und eine Speichersteuerung, die eingerichtet ist, um Daten aus der Speichervorrichtung zu lesen und die Migration der Daten zwischen dem ersten SLC-Bereich, dem zweiten SLC-Bereich und dem mindestens einen MLC-Bereich zu steuern.At least one example embodiment of the inventive concepts provides a memory device that includes a memory device that includes at least a first single-level cell (SLC) array, a second SLC array, and at least one multi-level cell (MLC) array contains, wherein the first SLC area has a higher data read speed than the second SLC area, and the second SLC area has a higher data read speed than the at least one MLC area, and a memory controller that is set up to read data from the memory device to read and to control the migration of the data between the first SLC area, the second SLC area and the at least one MLC area.

Mindestens eine beispielhafte Ausführungsform der erfindungsgemäßen Konzepte sieht ein Betriebsverfahren einer Speichersteuerung vor, enthaltend: Lesen von Daten aus einem SLC-Bereich einer Speichervorrichtung; und Migrieren der Daten zu einem MLC-Bereich der Speichervorrichtung auf der Grundlage einer Schreibzeitreihenfolge der Daten und einer Lesezählung der Daten, wobei die Schreibzeitreihenfolge eine Reihenfolge angibt, in der die Daten in den SLC-Bereich geschrieben wurden, und die Lesezählung eine Anzahl von Malen angibt, zu denen die Daten gelesen wurden.At least one exemplary embodiment of the inventive concepts provides an operating method of a memory controller, including: reading data from an SLC area of a memory device; and migrating the data to an MLC area of the storage device based on a write time order of the data and a read count of the data, wherein the write time order indicates an order in which the data was written to the SLC area and the read count indicates a number of times indicates for which the data was read.

Mindestens eine beispielhafte Ausführungsform der erfindungsgemäßen Konzepte sieht eine Speichersteuerung vor, die eine Verarbeitungsschaltung enthält, die eingerichtet ist, um eine Leseanforderung für Daten zu übertragen, die in einem ersten SLC-Bereich, einem zweiten SLC-Bereich oder einem MLC-Bereich gespeichert sind, die in einer Speichervorrichtung enthalten sind, wobei der erste SLC-Bereich eine höhere Datenlesegeschwindigkeit als der zweite SLC-Bereich aufweist und der zweite SLC-Bereich eine höhere Datenlesegeschwindigkeit als der MLC-Bereich aufweist; und einen Speicherplatz der Daten in der Speichervorrichtung auf der Grundlage von Nutzungsmerkmalen der Daten zu ändern.At least one example embodiment of the inventive concepts provides a memory controller including processing circuitry configured to transmit a read request for data stored in a first SLC area, a second SLC area, or an MLC area, included in a memory device, wherein the first SLC area has a higher data reading speed than the second SLC area and the second SLC area has a higher data reading speed than the MLC area; and change a location of the data in the storage device based on usage characteristics of the data.

Es sei darauf hingewiesen, dass die Merkmale der beispielhaften Ausführungsformen der erfindungsgemäßen Konzepte nicht darauf beschränkt sind und dass andere Merkmale im Zusammenhang mit den beispielhaften Ausführungsformen der erfindungsgemäßen Konzepte für einen Fachmann aus den folgenden Beschreibungen ersichtlich sind.It should be noted that the features of the exemplary embodiments of the inventive concepts are not limited thereto and that other features related to the exemplary embodiments of the inventive concepts will be apparent to those skilled in the art from the following descriptions.

Figurenlistecharacter list

Die vorstehenden und andere Aspekte und Merkmale der beispielhaften Ausführungsformen der erfindungsgemäßen Konzepte werden durch die detaillierte Beschreibung beispielhafter Ausführungsformen davon unter Bezugnahme auf die beigefügten Zeichnungen, deutlicher werden, in denen zeigen:

  • 1 ein schematisches Blockdiagramm eines Speichersystems nach einigen beispielhaften Ausführungsformen;
  • 2 ein Blockdiagramm, das eine Speichersteuerung von 1 nach mindestens einer beispielhaften Ausführungsform veranschaulicht;
  • 3 ein Blockdiagramm, das eine Speichervorrichtung von 1 nach mindestens einer beispielhaften Ausführungsform veranschaulicht;
  • 4 ein Blockdiagramm, das eine Speichersteuerung, wie in 1 gezeigt, nach mindestens einer beispielhaften Ausführungsform veranschaulicht;
  • 5 ein konzeptionelles Diagramm, das die dynamische Zuweisung einer Speichervorrichtung, wie in 3 gezeigt, nach mindestens einer beispielhaften Ausführungsform veranschaulicht;
  • 6 ein Diagramm, das den Betrieb eines Speichersystems nach einigen beispielhaften Ausführungsformen veranschaulicht;
  • 7 ein Diagramm, das den Betrieb eines Speichersystems nach einigen beispielhaften Ausführungsformen veranschaulicht;
  • 8 ein Ablaufdiagramm eines Betriebsverfahrens einer Speichersteuerung nach einigen beispielhaften Ausführungsformen;
  • 9 ein Blockdiagramm eines Speichersystems nach mindestens einer beispielhaften Ausführungsform der erfindungsgemäßen Konzepte;
  • 10 ein Blockdiagramm eines Beispiels der Speichervorrichtung 220 von 1 nach mindestens einer beispielhaften Ausführungsform; und
  • 11 ein Diagramm, das ein System veranschaulicht, in dem die Speichereinrichtung 200 von 1 nach mindestens einer beispielhaften Ausführungsform eingesetzt wird.
The foregoing and other aspects and features of exemplary embodiments of the inventive concepts will become more apparent through the detailed description of exemplary embodiments thereof with reference to the accompanying drawings, in which:
  • 1 12 is a schematic block diagram of a memory system according to some example embodiments;
  • 2 a block diagram showing a memory controller of 1 illustrated according to at least one example embodiment;
  • 3 FIG. 14 is a block diagram showing a memory device of FIG 1 after at least one exemplary embodiment;
  • 4 a block diagram showing a memory controller as in 1 shown illustrated according to at least one example embodiment;
  • 5 a conceptual diagram showing the dynamic allocation of a memory device, as in 3 shown illustrated according to at least one exemplary embodiment;
  • 6 12 is a diagram illustrating operation of a memory system according to some example embodiments;
  • 7 12 is a diagram illustrating operation of a memory system according to some example embodiments;
  • 8th 14 is a flow diagram of a method of operation of a memory controller according to some example embodiments;
  • 9 14 is a block diagram of a memory system according to at least one example embodiment of the inventive concepts;
  • 10 12 is a block diagram of an example of memory device 220 of FIG 1 according to at least one exemplary embodiment; and
  • 11 a diagram illustrating a system in which the memory device 200 of FIG 1 according to at least one example embodiment.

AUSFÜHRLICHE BESCHREIBUNGDETAILED DESCRIPTION

Nachfolgend werden verschiedene beispielhafte Ausführungsformen der erfindungsgemäßen Konzepte unter Bezugnahme auf die beigefügten Zeichnungen beschrieben.Various exemplary embodiments of the inventive concepts are described below with reference to the accompanying drawings.

1 ist ein schematisches Blockdiagramm eines Speichersystems nach einigen beispielhaften Ausführungsformen. 2 ist ein Blockdiagramm, das eine Speichersteuerung von 1 im Detail darstellt. 3 ist ein Blockdiagramm, das eine Speichervorrichtung von 1 im Detail nach mindestens einer beispielhaften Ausführungsform darstellt. 1 1 is a schematic block diagram of a memory system according to some example embodiments. 2 12 is a block diagram showing a memory controller of FIG 1 represents in detail. 3 FIG. 12 is a block diagram showing a memory device of FIG 1 in detail according to at least one exemplary embodiment.

Bezugnehmend auf 1 kann ein Host-Speichersystem 10 mindestens einen Host 100 und/oder mindestens eine Speichereinrichtung 200 usw. enthalten, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt, und das Host-Speichersystem 10 kann beispielsweise eine größere oder geringere Anzahl von Bestandteilen usw. enthalten. Die Speichereinrichtung 200 kann mindestens eine Speichersteuerung 210 und/oder mindestens eine Speichervorrichtung (z. B. eine nichtflüchtige Speichervorrichtung 220) usw. enthalten, ist aber nicht darauf beschränkt. Nach mindestens einer beispielhaften Ausführungsform der erfindungsgemäßen Konzepte kann der Host 100 (z. B. eine Host-Vorrichtung, eine externe Vorrichtung, eine Computervorrichtung, eine Benutzervorrichtung usw.) mindestens eine Host-Steuerung 110 und/oder mindestens einen Host-Speicher 120 usw. umfassen. Der Host-Speicher 120 kann als Pufferspeicher zur vorübergehenden Speicherung von Daten fungieren, die an die Speichereinrichtung 200 übertragen werden sollen und/oder von diesem übertragen werden, ist aber nicht darauf beschränkt.Referring to 1 For example, a host storage system 10 may include at least one host 100 and/or at least one storage device 200, etc., but the exemplary embodiments are not so limited, and the host storage system 10 may include a greater or lesser number of components, etc., for example. The memory device 200 may include, but is not limited to, at least one memory controller 210 and/or at least one memory device (e.g., non-volatile memory device 220), etc. According to at least one example embodiment of the inventive concepts, the host 100 (e.g., a host device, an external device, a computing device, a user device, etc.) may include at least one host controller 110 and/or at least one host memory 120, etc . Host memory 120 may function as a buffer memory for temporarily storing data to be transferred to and/or transferred from storage device 200, but is not limited to such.

Die Speichereinrichtung 200 kann Speichermedien zum Speichern von Daten nach mindestens einer Anforderung vom Host 100 usw. enthalten. Beispielsweise kann die Speichereinrichtung 200 mindestens eines der folgenden Elemente enthalten: ein Solid-State-Laufwerk (SSD), einen eingebetteten Speicher und/oder einen entfernbaren externen Speicher usw., ist aber nicht darauf beschränkt. Wenn die Speichereinrichtung 200 ein SSD ist, kann die Speichereinrichtung 200 eine Vorrichtung sein, die beispielsweise dem Non-Volatile Memory Express (NVMe) Standard usw. entspricht, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Wenn die Speichereinrichtung 200 ein eingebetteter Speicher und/oder ein externer Speicher ist, kann die Speichereinrichtung 200 eine Vorrichtung sein, die dem Universal-Flash-Speicher (UFS) und/oder dem Standard für eingebettete Multi-Media-Karten (eMMC) entspricht, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Der Host 100 und die Speichereinrichtung 200 sind jeweils in der Lage, mindestens ein Paket nach einem verwendeten Datenspeicherstandardprotokoll zu erzeugen und/oder zu übertragen.The storage device 200 may include storage media for storing data upon at least one request from the host 100 and so on. For example, the storage device 200 may include, but is not limited to, at least one of the following: a solid state drive (SSD), embedded storage, and/or removable external storage, etc. When the storage device 200 is an SSD, the storage device 200 may be a device that conforms to the Non-Volatile Memory Express (NVMe) standard, etc., for example, but the example embodiments are not limited thereto. When the storage device 200 is embedded memory and/or external storage, the storage device 200 may be a device compliant with Universal Flash Memory (UFS) and/or the Embedded Multi-Media Card (eMMC) standard, but the exemplary embodiments are not limited thereto. The host 100 and the storage device 200 are each able to generate and/or transmit at least one packet according to a data storage standard protocol used.

Wenn die Speichervorrichtung 220 der Speichereinrichtung 200 mindestens einen Flash-Speicher enthält, kann der Flash-Speicher ein zweidimensionales (2D) NAND-Speicherarray und/oder ein dreidimensionales (3D) (oder vertikales NAND (VNAND)) Speicherarray enthalten. Ein weiteres Beispiel ist, dass die Speichereinrichtung 200 auch andere Arten von nichtflüchtigen Speichern enthalten kann. So können beispielsweise ein magnetischer Direktzugriffsspeicher (MRAM), ein MRAM mit Spin-Transfer-Drehmoment, ein Conductive-Bridging-RAM (CBRAM), ein ferroelektrischer RAM (FeRAM), ein Phasen-RAM (PRAM), ein resistiver RAM und verschiedene andere Speichertypen als Speichereinrichtung 200 verwendet werden.When the storage device 220 of the storage device 200 includes at least one flash memory, the flash memory may include a two-dimensional (2D) NAND memory array and/or a three-dimensional (3D) (or vertical NAND (VNAND)) memory array. Another example is that storage device 200 may also include other types of non-volatile memory. For example, magnetic random access memory (MRAM), spin transfer torque MRAM, conductive bridging RAM (CBRAM), ferroelectric RAM (FeRAM), phase RAM (PRAM), resistive RAM, and various others Memory types are used as memory device 200.

Nach mindestens einer beispielhaften Ausführungsform können die Host-Steuerung 110 und der Host-Speicher 120 als separate Halbleiterchips ausgeführt sein. Außerdem können in einigen beispielhaften Ausführungsformen die Host-Steuerung 110 und der Host-Speicher 120 auf demselben Halbleiterchip integriert sein. Beispielsweise kann die Host-Steuerung 110 eines von mehreren Modulen sein, die in einem Anwendungsprozessor enthalten sind, und der Anwendungsprozessor kann als Ein-Chip-System (SoC) usw. ausgeführt sein. Als weiteres Beispiel kann der Host-Speicher 120 ein eingebetteter Speicher sein, der im Anwendungsprozessor vorgesehen ist, oder ein nichtflüchtiger Speicher oder ein Speichermodul außerhalb des Anwendungsprozessors, usw., aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.According to at least one example embodiment, the host controller 110 and the host memory 120 may reside as separate semiconductor chips be executed. Also, in some example embodiments, the host controller 110 and the host memory 120 may be integrated on the same semiconductor chip. For example, the host controller 110 may be one of several modules included in an application processor, and the application processor may be embodied as a system on chip (SoC), and so on. As another example, the host memory 120 may be embedded memory provided in the application processor, or non-volatile memory, or a memory module external to the application processor, etc., but the example embodiments are not so limited.

Die Host-Steuerung 110 kann einen Vorgang des Speicherns von Daten (z. B. Schreibdaten) des Host-Speichers 120 in der Speichervorrichtung 220 und/oder des Abrufens von Daten (z. B. Lesedaten) aus der Speichervorrichtung 220 im Host-Speicher 120 verwalten.The host controller 110 may perform an operation of storing data (e.g., write data) of the host memory 120 in the storage device 220 and/or retrieving data (e.g., read data) from the storage device 220 in the host memory 120 manage.

Die Speichersteuerung 210 kann eine Host-Schnittstelle 211, eine Speicherschnittstelle 212 und/oder eine Steuereinheit 213 (z. B. Steuerschaltungen, Steuerverarbeitungsschaltungen usw.) enthalten, doch sind die beispielhaften Ausführungsformen darauf nicht beschränkt. Die Speichersteuerung 210 kann ferner eine Flash-Übersetzungsschicht (FTL) 214, einen Paketmanager 215, einen Pufferspeicher 216, eine Fehlerkorrekturcode(ECC)-Engine 217, eine Advanced-Encryption-Standard(AES)-Engine 218 und/oder einen Migrationsmanager 300 usw. enthalten, doch sind die beispielhaften Ausführungsformen hierauf nicht beschränkt und können beispielsweise eine größere oder geringere Anzahl von Bestandteilen und/oder alternative Komponenten enthalten, wie das Weglassen der ECC-Engine 217 und/oder der AES-Engine 218 und/oder die Verwendung einer anderen Verschlüsselungs-/Entschlüsselungs-Engine usw. Die Speichersteuerung 210 kann ferner einen Speicher (nicht dargestellt) enthalten, in den die FTL 214 geladen wird, und die Steuereinheit 213 kann die FTL 214 ausführen, um einen Datenschreiboperation, einen Datenleseoperation, einen Datenlöschoperation, einen Verschleißausgleichsoperation usw. in Bezug auf die Speichervorrichtung 220 zu steuern, aber die beispielhaften Ausführungsformen sind hierauf nicht beschränkt. Nach einigen beispielhaften Ausführungsformen kann die Speichersteuerung 210 als Verarbeitungsschaltung implementiert werden, oder mit anderen Worten, die in der Speichersteuerung 210 enthaltene Verarbeitungsschaltung kann in der Lage sein, die Funktionalität der Speichersteuerung 210, der Host-Schnittstelle 211, der Speicherschnittstelle 212, der Steuereinheit 213, der FTL 214, des Paketmanagers 215, des Pufferspeichers 216, der ECC-Engine 217, der AES-Engine 218 und/oder eines Migrationsmanagers 300 usw. auszuführen. Der Verarbeitungsschaltkreis kann Hardware, wie z. B. Prozessoren, Prozessorkerne, Logikschaltungen, Speichereinrichtungen usw.; eine Hardware/Software-Kombination, wie z. B. mindestens einen Prozessorkern, der Software ausführt und/oder einen beliebigen Befehlssatz usw. ausführt; oder eine Kombination davon enthalten. So kann die Verarbeitungsschaltung insbesondere ein FPGA (Field Programmable Gate Array), eine programmierbare Logikeinheit, eine anwendungsspezifische integrierte Schaltung (ASIC), ein Ein-Chip-System (SoC, System-on-Chip) usw. enthalten, ist aber nicht darauf beschränkt.The memory controller 210 may include a host interface 211, a memory interface 212, and/or a controller 213 (e.g., control circuitry, control processing circuitry, etc.), but the example embodiments are not so limited. The storage controller 210 may also include a flash translation layer (FTL) 214, a packet manager 215, a buffer memory 216, an error correction code (ECC) engine 217, an advanced encryption standard (AES) engine 218 and/or a migration manager 300, etc , but the example embodiments are not so limited and may include, for example, a greater or lesser number of ingredients and/or alternative components, such as omitting the ECC engine 217 and/or the AES engine 218 and/or using a other encryption/decryption engine, etc. The memory controller 210 may further include a memory (not shown) into which the FTL 214 is loaded, and the control unit 213 may execute the FTL 214 to perform a data write operation, a data read operation, a data delete operation, to control a wear leveling operation, etc. with respect to the storage device 220, but the exemplary embodiments forms of insurance are not limited to this. According to some exemplary embodiments, memory controller 210 may be implemented as processing circuitry, or in other words, the processing circuitry included in memory controller 210 may be capable of performing the functionality of memory controller 210, host interface 211, memory interface 212, controller 213 , the FTL 214, the package manager 215, the buffer memory 216, the ECC engine 217, the AES engine 218 and/or a migration manager 300 etc. The processing circuitry may be hardware such as B. processors, processor cores, logic circuits, memory devices, etc.; a hardware/software combination such as B. at least one processor core executing software and/or executing any instruction set, etc.; or contain a combination thereof. In particular, the processing circuitry may include, but is not limited to, a field programmable gate array (FPGA), a programmable logic device, an application specific integrated circuit (ASIC), a system-on-chip (SoC), etc .

Die Host-Schnittstelle 211 kann ein Paket an den Host 100 senden und/oder ein Paket von dem Host 100 usw. empfangen. Ein vom Host 100 an die Hostschnittstelle 211 gesendetes Paket kann einen Befehl und/oder Daten enthalten, die in die Speichervorrichtung 220 geschrieben werden sollen, und ein von der Hostschnittstelle 211 an den Host 100 gesendetes Paket kann eine Antwort auf den Befehl und/oder die aus der Speichervorrichtung 220 gelesene Daten usw. enthalten. Die Speicherschnittstelle 212 kann Daten, die in die Speichervorrichtung 220 geschrieben werden sollen, an die Speichervorrichtung 220 übertragen und/oder aus der Speichervorrichtung 220 gelesene Daten empfangen, ist jedoch nicht darauf beschränkt. Die Speicherschnittstelle 212 kann so implementiert werden, dass sie Standardkonventionen wie Hin- und Herschalten (Toggle) und/oder ONFI usw. entspricht, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.The host interface 211 can send a packet to the host 100 and/or receive a packet from the host 100, and so on. A packet sent from host 100 to host interface 211 may contain a command and/or data to be written to storage device 220, and a packet sent from host interface 211 to host 100 may be a response to the command and/or the data read from storage device 220, etc. Storage interface 212 may transmit data to be written to storage device 220 to, but is not limited to, storage device 220 and/or receive data read from storage device 220 . The memory interface 212 may be implemented to conform to standard conventions such as toggle and/or ONFI, etc., but the example embodiments are not so limited.

Die FTL 214 kann verschiedene Funktionen durchführen, z. B. Adresszuordnung, Abnutzungsausgleich und/oder Speicherbereinigung (Garbage Collection) usw. Bei der Adresszuordnung wird eine vom Host 100 empfangene logische Adresse in eine physische Adresse umgewandelt, die zur tatsächlichen Speicherung von Daten in der Speichervorrichtung 220 verwendet wird. Abnutzungsausgleich ist eine Operation, die es ermöglicht, dass in der Speichervorrichtung 220 enthaltene Blöcke gleichmäßig genutzt werden, wodurch eine übermäßige Verschlechterung eines bestimmten Blocks verringert und/oder verhindert wird, und kann beispielsweise durch die Verwendung von Firmware zum Ausgleich von Löschzählungen physischer Blöcke implementiert werden, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Speicherbereinigung ist eine Operation zur Sicherung der nutzbaren Kapazität in der Speichervorrichtung 220 durch Kopieren gültiger Daten eines aktuellen Blocks in einen neuen Block und Löschen der im aktuellen Block gespeicherten Daten usw.The FTL 214 can perform various functions, e.g. address mapping, wear leveling and/or garbage collection, etc. Address mapping converts a logical address received from host 100 into a physical address that is used to actually store data in storage device 220 . Wear leveling is an operation that allows blocks contained within storage device 220 to be used evenly, thereby reducing and/or preventing excessive degradation of a particular block, and may be implemented, for example, through the use of firmware to level erase counts of physical blocks , but the exemplary embodiments are not limited thereto. Garbage collection is an operation to save usable capacity in the storage device 220 by copying valid data of a current block to a new block and deleting the data stored in the current block, etc.

Der Paketmanager 215 kann ein Paket gemäß einem Protokoll einer mit dem Host 100 ausgehandelten Schnittstelle generieren und/oder verschiedene Arten von Informationen aus einem vom Host 100 empfangenen Paket analysieren, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.The package manager 215 may generate a package according to a protocol of an interface negotiated with the host 100 and/or ver analyze different types of information from a packet received by host 100, but the example embodiments are not limited thereto.

Der Pufferspeicher 216 kann vorübergehend Daten speichern, die in die Speichervorrichtung 220 geschrieben und/oder aus ihr gelesen werden sollen, usw. Der Pufferspeicher 216 kann in der Speichersteuerung 210 vorgesehen sein, kann sich aber auch außerhalb und/oder extern zu der Speichersteuerung 210 befinden, wobei die beispielhaften Ausführungsformen darauf nicht beschränkt sind.Buffer memory 216 may temporarily store data to be written to and/or read from memory device 220, etc. Buffer memory 216 may reside within memory controller 210, but may also be external to and/or external to memory controller 210 , although the exemplary embodiments are not limited thereto.

Die ECC-Engine 217 kann eine Fehlererkennungs- und/oder -korrekturfunktion für aus der Speichervorrichtung 220 gelesene Daten durchführen, ist jedoch nicht darauf beschränkt. Genauer gesagt kann die ECC-Engine 217 Paritätsbits in Bezug auf Schreibdaten erzeugen, die in die Speichervorrichtung 220 geschrieben werden sollen, und die erzeugten Paritätsbits können in der Speichervorrichtung 220 zusammen mit den Schreibdaten usw. gespeichert werden. Wenn Daten aus der Speichervorrichtung 220 gelesen werden, kann die ECC-Engine 217 einen Fehler in den gelesenen Daten unter Verwendung der aus der Speichervorrichtung 220 gelesenen Paritätsbits zusammen mit den gelesenen Daten korrigieren und die fehlerkorrigierten gelesenen Daten usw. ausgeben.The ECC engine 217 may, but is not limited to, perform an error detection and/or correction function on data read from the storage device 220 . More specifically, the ECC engine 217 may generate parity bits related to write data to be written to the storage device 220, and the generated parity bits may be stored in the storage device 220 along with the write data and so on. When data is read from the storage device 220, the ECC engine 217 can correct an error in the read data using the parity bits read from the storage device 220 along with the read data and output the error-corrected read data and so on.

Wenn die Speichersteuerung 210 Daten von der Speichervorrichtung 220 empfängt, kann die ECC-Engine 217 die empfangenen Daten dekodieren, um zu prüfen, ob eine Fehlerkorrektur möglich ist, die Anzahl der Fehler in den empfangenen Daten prüfen und/oder bestimmen und die Anzahl der Fehler an den Migrationsmanager 300 melden, wenn die Fehlerkorrektur möglich ist. Wenn die Fehlerkorrektur nicht möglich ist, kann die ECC-Engine 217 die Steuereinheit 213 darüber informieren, dass die Fehlerkorrektur nicht möglich ist, und steuern, dass die Daten über die Steuereinheit 213 erneut aus der Speichervorrichtung 220 gelesen werden (z. B. einen Lese-Wiederholungsversuch durchführen usw.). Die AES-Engine 218 kann mindestens eine Verschlüsselungsoperation und/oder eine Entschlüsselungsoperation in Bezug auf Daten durchführen, die in die Speichersteuerung 210 eingegeben werden, wobei ein symmetrischer Schlüsselalgorithmus usw. verwendet wird, wobei die beispielhaften Ausführungsformen jedoch nicht darauf beschränkt sind und beispielsweise eine oder mehrere beispielhafte Ausführungsformen eine andere Form der Verschlüsselung/Entschlüsselung usw. verwenden können.When the memory controller 210 receives data from the memory device 220, the ECC engine 217 may decode the received data to check whether error correction is possible, check and/or determine the number of errors in the received data, and the number of errors report to the migration manager 300 when error correction is possible. If error correction is not possible, the ECC engine 217 can inform the control unit 213 that the error correction is not possible and control that the data is read again from the storage device 220 via the control unit 213 (e.g. a read -try again, etc.). The AES engine 218 may perform at least one encryption operation and/or one decryption operation on data input to the storage controller 210 using a symmetric key algorithm, etc., but the exemplary embodiments are not limited thereto and include, for example, one or several exemplary embodiments may use a different form of encryption/decryption, etc.

Ein Temperatursensor 219 kann eine Betriebstemperatur der Speichervorrichtung 220 erfassen. Das heißt, eine Änderung der Betriebstemperatur von mindestens einer Speicherzelle der Speichervorrichtung 220 kann erfasst werden. In einigen beispielhaften Ausführungsformen kann die Speichersteuerung 210 den Temperatursensor 219 nicht enthalten und/oder der Temperatursensor 219 kann als Teil der Speichervorrichtung 220 usw. implementiert sein, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.A temperature sensor 219 can detect an operating temperature of the memory device 220 . That is, a change in operating temperature of at least one memory cell of memory device 220 can be detected. In some example embodiments, memory controller 210 may not include temperature sensor 219 and/or temperature sensor 219 may be implemented as part of memory device 220, etc., but example embodiments are not so limited.

Der Migrationsmanager 300 kann einen Datenspeicherplatz in der Speichervorrichtung 220 entsprechend und/oder basierend auf den Nutzungsmerkmalen der Daten ändern. Die Änderung des Datenspeicherplatzes kann während einer Leerlaufperiode einer auf der Speichervorrichtung 220 durchgeführten Operation erfolgen, ist aber nicht darauf beschränkt. Nach einigen beispielhaften Ausführungsformen kann der Leerlaufzeitraum ein Zeitraum sein, in dem eine Hintergrundoperation der Speichervorrichtung 220 durchgeführt wird, ist aber nicht darauf beschränkt.The migration manager 300 may change a data storage location in the storage device 220 accordingly and/or based on usage characteristics of the data. The change in data storage location may occur during an idle period of an operation performed on storage device 220, but is not limited thereto. According to some example embodiments, the idle period may be, but is not limited to, a period during which a background operation of the storage device 220 is performed.

Unter Bezugnahme auf 3 kann die Speichervorrichtung 220 eine Mehrzahl von Bereichen (z. B. Speicherbereichen, Speicherbereichen, Speicherchips usw.), wie den Bereichen 401, 402 und 403 usw., enthalten, die entsprechend und/oder auf der Grundlage einer Zellen-Level klassifiziert sind, aber die beispielhaften Ausführungsformen sind hierauf nicht beschränkt, und die Speichervorrichtung 220 kann beispielsweise mehr als drei Speicherbereiche, weniger als drei Speicherbereiche usw. enthalten. Die mehreren Bereiche 401, 402 und 403 usw. können jeweils mehrere Speicherblöcke enthalten und können jeweils gleich oder unterschiedlich verwaltet werden, usw., aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Nach einigen beispielhaften Ausführungsformen kann der Bereich 1 401 durch ein erstes Single-Level-Zellen(SLC)-Verfahren verwaltet werden, der Bereich 2 402 kann durch ein zweites SLC-Verfahren verwaltet werden, und der Bereich 3 403 kann ein Bereich sein, in dem Daten von 2 Bit oder mehr in einer Zelle gespeichert werden, usw., aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Der Bereich 3 403 kann beispielsweise durch eine Multi-Level-Zellen(MLC)-Konfiguration und/oder ein MLC-Verfahren, eine Triple-Level-Zellen(TLC)-Konfiguration und/oder ein TLC-Verfahren und/oder eine Quad-Level-Zellen(QLC)-Konfiguration und/oder ein QLC-Verfahren usw. verwaltet werden, doch sind die beispielhaften Ausführungsformen hierauf nicht beschränkt. Nach mindestens einer beispielhaften Ausführungsform ist jede der Zellen der MLC, TLC und/oder QLC in der Lage, zwei oder mehr Datenbits in einer Zelle usw. zu speichern.With reference to 3 memory device 220 may include a plurality of areas (e.g., memory areas, memory areas, memory chips, etc.), such as areas 401, 402, and 403, etc., classified accordingly and/or based on a cell level, however, the exemplary embodiments are not limited thereto, and the memory device 220 may include more than three memory areas, less than three memory areas, and so on, for example. The multiple areas 401, 402, and 403, etc. may each contain multiple memory blocks and each may be managed the same or differently, etc., but the exemplary embodiments are not limited thereto. According to some example embodiments, region 1 401 may be managed by a first single-level cell (SLC) method, region 2 402 may be managed by a second SLC method, and region 3 403 may be a region in in which data of 2 bits or more is stored in one cell, etc., but the exemplary embodiments are not limited thereto. Region 3 403 can be implemented, for example, by a multi-level cell (MLC) configuration and/or an MLC process, a triple-level cell (TLC) configuration and/or a TLC process and/or a quad level cell (QLC) configuration and/or a QLC method, etc., but the exemplary embodiments are not limited thereto. According to at least one exemplary embodiment, each of the cells of the MLC, TLC, and/or QLC is capable of storing two or more bits of data in a cell, and so on.

So können beispielsweise eine SLC, eine MLC und eine TLC entsprechend der Menge der in einer Speicherzelle zu speichernden Daten klassifiziert werden. Dementsprechend kann ein Teil der Daten (z. B. Metadaten) in den Bereich 1 401 und/oder den Bereich 2 402, z. B. einen SLC-Bereich, programmiert werden, und die übrigen Daten, mit Ausnahme der Metadaten, können in den Bereich 3 403, z. B. einen Nicht-SLC-Bereich, usw. programmiert werden, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.For example, an SLC, an MLC, and a TLC can be classified according to the amount of data to be stored in a memory cell be graced. Accordingly, part of the data (e.g. metadata) can be divided into area 1 401 and/or area 2 402, e.g. an SLC area, and the rest of the data, except metadata, can be programmed into area 3 403, e.g. a non-SLC area, etc., but the exemplary embodiments are not so limited.

Nach mindestens einer beispielhaften Ausführungsform sind die Geschwindigkeiten, mit denen ein Schreib- und/oder Leseoperation in dem Bereich 1 401 und dem Bereich 2 402 durchgeführt wird, höher als die in dem Bereich 3 403. Mit anderen Worten sind die Schreib- und/oder Leseoperationsgeschwindigkeiten in SLC-Bereichen höher als in MLC-Bereichen, TLC-Bereichen, QLC-Bereichen usw. Daten, die entsprechend einem Muster des Hosts 100 häufig geändert werden, können im Bereich 1 401 und/oder im Bereich 2 402 aufgrund der höheren Geschwindigkeit dieser Bereiche gespeichert werden, und Daten, die nicht häufig geändert werden, können im Bereich 3 403 gespeichert werden, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.According to at least one exemplary embodiment, the speeds at which a write and/or read operation is performed in region 1 401 and region 2 402 are faster than those in region 3 403. In other words, the write and/or Read operation speeds in SLC areas higher than in MLC areas, TLC areas, QLC areas, etc. Data that is frequently changed according to a pattern of the host 100 can be in area 1 401 and/or in area 2 402 because of the higher speed of these areas are stored, and data that is not frequently changed may be stored in area 3 403, but the example embodiments are not limited thereto.

Nach einigen beispielhaften Ausführungsformen können sowohl der Bereich 1 401 als auch der Bereich 2 402 SLC-Bereiche sein, aber die Geschwindigkeit, mit der ein Leseoperation im Bereich 1 401 durchgeführt wird, kann höher eingestellt werden als die Lesegeschwindigkeit im Bereich 2 402, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Das heißt, eine Datenlesegeschwindigkeit im Bereich 1 401 kann höher sein als die Lesegeschwindigkeit im Bereich 2 402. Darüber hinaus kann die Datenlesegeschwindigkeit in dem Bereich 2 402 höher als die Datenlesegeschwindigkeit des Nicht-SLC-Bereichs, z. B. des Bereichs 3 403, usw. sein.According to some exemplary embodiments, both region 1 401 and region 2 402 may be SLC regions, but the speed at which a read operation is performed in region 1 401 may be set higher than the read speed in region 2 402, but the exemplary embodiments are not limited thereto. That is, a data read speed in area 1 401 can be higher than the read speed in area 2 402. Moreover, the data read speed in area 2 402 can be higher than the data read speed of the non-SLC area, e.g. B. range 3 403, and so on.

Nach einigen beispielhaften Ausführungsformen kann der Leseoperation im Bereich 1 401 in gewünschten und/oder voreingestellten kleinen Chunk-Einheiten durchgeführt werden, z. B. in sehr kleinen Dateneinheiten von etwa 4 KB oder 8 KB, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Nach einigen beispielhaften Ausführungsformen kann der Leseoperation im Bereich 2 402 in Einheiten von mehreren Seiten usw. durchgeführt werden, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.According to some example embodiments, the read operation in region 1 401 may be performed in desired and/or default small chunk units, e.g. B. in very small data units of about 4 KB or 8 KB, but the exemplary embodiments are not limited thereto. According to some example embodiments, the read operation in area 2 402 may be performed in units of multiple pages, etc., but the example embodiments are not so limited.

Wenn Daten gelesen werden, indem ein SLC-Bereich in mindestens zwei Bereiche (z. B. dem Bereich 1 401 und dem Bereich 2 402 usw.) entsprechend und/oder auf der Grundlage von Nutzungsmerkmalen der Daten unterteilt wird, kann die Speichersteuerung 210 die Daten mit einer höheren Geschwindigkeit lesen und gleichzeitig die Zuverlässigkeit der Speichervorrichtung 220 sicherstellen, wodurch die Leistung der Speichereinrichtung 200 verbessert wird.When data is read by dividing an SLC area into at least two areas (eg, area 1 401 and area 2 402, etc.) accordingly and/or based on usage characteristics of the data, the memory controller 210 may Read data at a higher speed while ensuring the reliability of the storage device 220, thereby improving the performance of the storage device 200.

In mindestens einer beispielhaften Ausführungsform des erfindungsgemäßen Konzepts können der Bereich 1 401, der Bereich 2 402 und der Bereich 3 403 nach einigen beispielhaften Ausführungsformen als ein erster SLC-Bereich 401, ein zweiter SLC-Bereich 402 und ein MLC-Bereich 403 bezeichnet werden, sind aber nicht darauf beschränkt, und können nach einigen beispielhaften Ausführungsformen als ein Ortswarteschlangenbereich 401, ein verbleibender SLC-Bereich 402 und ein MLC-Bereich 403 bezeichnet werden. Oder der Bereich 1 401, der Bereich 2 402 und der Bereich 3 403 können als SLC-Bereich 401 für schnelles Lesen, als SLC-Bereich 402 für normales Lesen und als MLC-Bereich 403 usw. bezeichnet werden. Es wird deutlich, dass der Umfang der beispielhaften Ausführungsformen der erfindungsgemäßen Konzepte durch die vorstehenden Bezeichnungen nicht eingeschränkt ist.In at least one exemplary embodiment of the inventive concept, area 1 401, area 2 402, and area 3 403 may be referred to as a first SLC area 401, a second SLC area 402, and an MLC area 403, according to some example embodiments. but are not so limited, and may be referred to as a site queue area 401, a remaining SLC area 402, and an MLC area 403, according to some example embodiments. Or, area 1 401, area 2 402, and area 3 403 may be referred to as SLC area 401 for fast reading, SLC area 402 for normal reading, and MLC area 403, and so on. It is understood that the scope of exemplary embodiments of the inventive concepts is not limited by the foregoing designations.

Zum Lesen von Daten mit hoher Geschwindigkeit, wie vorstehend beschrieben, kann der Migrationsmanager 300 entsprechend und/oder basierend auf den Nutzungsmerkmalen der Daten einen Datenspeicherbereich der Speichervorrichtung 220 ändern. Die Nutzungsmerkmale der Daten können beispielsweise mindestens eine von einer Schreibzeit, wenn die Daten in die Speichervorrichtung 220 geschrieben werden, einer kürzlichen Lesezeit, einer Lesezählung und/oder einer Datenfehlerrate usw. enthalten, aber die beispielhaften Ausführungsformen sind hierauf nicht beschränkt.To read data at high speed, as described above, the migration manager 300 may change a data storage area of the storage device 220 accordingly and/or based on the usage characteristics of the data. The usage characteristics of the data may include, for example, at least one of a write time when the data is written to the storage device 220, a recent read time, a read count, and/or a data error rate, etc., but the example embodiments are not limited thereto.

Nach einigen beispielhaften Ausführungsformen kann der Migrationsmanager 300 Daten, die in den Bereich 1 401 geschrieben wurden, beibehalten, wenn eine Schreibzeit kleiner als eine Migrationsschwellenzeit THw ist. Das heißt der Migrationsmanager 300 kann die Daten des Bereichs 1 401 in den Bereich 2 402 und/oder den Bereich 3 403 migrieren, wenn die Daten für eine lange Zeit und/oder basierend auf der Migrationsschwellenzeit THw geschrieben wurden, und/oder kann die geschriebenen Daten im Bereich 1 401 beibehalten, wenn die Daten für eine lange Zeit und/oder basierend auf der Migrationsschwellenzeit THw, usw. nicht geschrieben wurden.According to some example embodiments, migration manager 300 may retain data written to region 1 401 if a write time is less than a migration threshold time THw. That is, the migration manager 300 may migrate the data of area 1 401 to area 2 402 and/or area 3 403 if the data has been written for a long time and/or based on the migration threshold time THw, and/or the written Keep data in area 1 401 if the data has not been written for a long time and/or based on migration threshold time THw, etc.

Nach einigen beispielhaften Ausführungsformen kann der Migrationsmanager 300 die Daten in den Bereich 2 402 und/oder den Bereich 3 403 usw. migrieren, wenn eine Lesezählung der Daten in den Bereich 1 401, die der Lesezählung (z. B. Zugriffe usw.) angibt, geringer als eine Migrationsschwellenwertzählung THRC (z. B. eine Lesezählungsschwelle usw.) ist. Das heißt, der Migrationsmanager 300 kann die Daten in dem Bereich 1 401 beibehalten, wenn die Daten häufig gelesen werden (wenn die Lesezählung groß ist) und/oder basierend auf dem Migrationsschwellenwert THRC, und die Daten von dem Bereich 1 401 zu dem Bereich 2 402 und/oder dem Bereich 3 403 usw. migrieren, wenn die Daten kaum gelesen werden und/oder basierend auf dem Migrationsschwellenwert THRC.According to some example embodiments, the migration manager 300 may migrate the data to region 2 402 and/or region 3 403, etc. when a read count of the data in region 1 401 indicates the read count (e.g., accesses, etc.). , is less than a migration threshold count TH RC (eg, a read count threshold, etc.). That is, the migration manager 300 may retain the data in Region 1 401 if the data is read frequently (when the read count is large) and/or based on the migration threshold TH RC , and the data from Region 1 401 to Region 2 402 and/or the Migrate area 3 403 etc. if the data is hardly read and/or based on the migration threshold TH RC .

Nach einigen beispielhaften Ausführungsformen kann der Migrationsmanager 300 sogar Daten, die in dem Bereich 2 402 und/oder dem Bereich 3 430 gespeichert sind, in den Bereich 1 401 migrieren, wenn eine Lesezählung größer und/oder gleich der Migrationsschwellenwertzahl THRC ist, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.According to some example embodiments, the migration manager 300 may even migrate data stored in region 2 402 and/or region 3 430 to region 1 401 if a read count is greater than and/or equal to the migration threshold number TH RC but the exemplary embodiments are not limited thereto.

Nach einigen beispielhaften Ausführungsformen kann der Migrationsmanager 300 die Daten im Bereich 1 401 und/oder im Bereich 2 402 entsprechend der Schreibzeitreihenfolge (z. B. in der Reihenfolge, in der die Daten geschrieben wurden usw.), in der die Daten in die Speichervorrichtung 220 geschrieben wurden in den Bereich 3 403 migrieren. Wenn jedoch die Lesezählung der Daten die Migrationsschwellenwertzählung THRC übersteigt, können die Daten, die als gegenwärtig häufig verwendete Daten bestimmt werden, in dem Bereich 1 401 und/oder dem Bereich 2 402 beibehalten werden, ohne in den Bereich 3 403 usw. migriert zu werden, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Nach mindestens einer beispielhaften Ausführungsform kann unter der Schreibzeit und der Lesezählung zuerst die Lesezählung berücksichtigt werden, aber die beispielhaften Ausführungsformen sind hierauf nicht beschränkt.According to some example embodiments, the migration manager 300 may migrate the data in region 1 401 and/or region 2 402 according to the write time order (e.g., the order the data was written, etc.) in which the data was written to the storage device 220 were written migrate to area 3 403. However, if the read count of the data exceeds the migration threshold count TH RC , the data determined as currently frequently used data can be retained in area 1 401 and/or area 2 402 without migrating to area 3 403 and so on , but the exemplary embodiments are not limited thereto. According to at least one example embodiment, among the write time and the read count, the read count may be considered first, but the example embodiments are not so limited.

Nach einigen beispielhaften Ausführungsformen können Daten im Speicherbereich 1 401 gespeichert werden, wenn die Anzahl der gelesenen Daten größer oder gleich einer ersten Migrationsschwellenwertzahl THRC1 ist, und können im Speicherbereich 2 402 gespeichert werden, wenn die Anzahl der gelesenen Daten kleiner als die erste Migrationsschwellenwertzahl THRC1, aber größer oder gleich einer zweiten Migrationsschwellenwertzahl THRC2 ist. In diesem Fall kann der erste Migrationsschwellenwert THRC1 größer als der zweite Migrationsschwellenwert THRC2 (z. B. THRC1>THRC2 sein), aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.According to some example embodiments, data may be stored in storage area 1 401 if the number of data read is greater than or equal to a first migration threshold number TH RC1 and may be stored in storage area 2 402 if the number of data read is less than the first migration threshold number TH RC1 but is greater than or equal to a second migration threshold number TH RC2 . In this case, the first migration threshold TH RC1 may be greater than the second migration threshold THRC2 (e.g., TH RC1 >TH RC2 ), but the exemplary embodiments are not limited thereto.

4 ist ein Blockdiagramm, das eine Speichersteuerung, wie in 1 gezeigt, nach mindestens einer beispielhaften Ausführungsform im Detail darstellt. 5 ist ein Konzeptdiagramm, das die dynamische Zuweisung einer Speichereinrichtung, wie in 3 dargestellt, nach mindestens einer beispielhaften Ausführungsform veranschaulicht. Die Beschreibung von 4 und 5 konzentriert sich auf die Unterschiede zu 2, und redundante Beschreibungen werden der Kürze und Klarheit halber weggelassen. 4 is a block diagram showing a memory controller as in 1 shown, illustrates in detail according to at least one exemplary embodiment. 5 Fig. 12 is a conceptual diagram showing the dynamic allocation of a memory device as in 3 illustrated, according to at least one exemplary embodiment. The description of 4 and 5 focuses on the differences too 2 , and redundant descriptions are omitted for brevity and clarity.

Unter Bezugnahme auf 4 und 5 kann eine Speichersteuerung 210' ferner einen Blockmanager 310 enthalten, ist aber nicht darauf beschränkt. Der Blockmanager 310 kann statisch und/oder dynamisch Größen eines oder mehrerer Speicherbereiche entsprechend einem Anwendungsverfahren zuweisen, z. B. Bereich 1 401, Bereich 2 402 und/oder Bereich 3 403 usw..With reference to 4 and 5 A memory controller 210' may further include, but is not limited to, a block manager 310. The block manager 310 may statically and/or dynamically allocate sizes of one or more memory areas according to an application method, e.g. B. Area 1 401, Area 2 402 and/or Area 3 403 etc..

Wenn beispielsweise eine Größe R1 des Bereichs 1 401 und/oder eine Größe R2 des Bereichs 2 402 groß ist und eine Größe R3 des Bereichs 3 403 klein ist, kann die Raumnutzungsrate der Speichervorrichtung 220 reduziert und/oder ineffizient sein, was zu einer Verringerung der gesamten Datenspeicherkapazität der Speichervorrichtung 220 führt. Die Raumnutzungsrate kann ein Verhältnis eines verwendeten Bereichs zu allen Bereichen, z. B. R1, R2 und R3 usw., sein (wie in 5 beschrieben).For example, when a size R1 of region 1 401 and/or a size R2 of region 2 402 is large and a size R3 of region 3 403 is small, the space utilization rate of the storage device 220 may be reduced and/or inefficient, resulting in a reduction in the total data storage capacity of storage device 220. The space utilization rate may be a ratio of a used area to all areas, e.g. B. R1, R2 and R3 etc. (as in 5 described).

Wenn die Größe R1 des Bereichs 1 401 und/oder die Größe R2 des Bereichs 2 402 im Vergleich zu einer gewünschten Speichergröße und/oder im Verhältnis zu den anderen Bereichen einer Speichervorrichtung klein ist, kann die Migration eines Teils der in dem Bereich 1 401 und/oder dem Bereich 2 402 gespeicherten Daten in den Bereich 3 403 häufiger auftreten, um einen effektiven Platz des Bereichs 1 401 und/oder des Bereichs 2 402 zu sichern, was zu einer Verschlechterung der Leistung der Speichereinrichtung 200 führt. Daher ist es erwünscht und/oder notwendig, die Größe des Bereichs 1 401, des Bereichs 2 und des Bereichs 3 403 angemessen zu wählen.If the size R1 of region 1 401 and/or the size R2 of region 2 402 is small compared to a desired memory size and/or in relation to the other regions of a memory device, the migration of a part of the data in region 1 401 and /or the data stored in the area 2 402 in the area 3 403 occur more frequently to secure an effective space of the area 1 401 and/or the area 2 402, resulting in a deterioration in the performance of the storage device 200. Therefore, it is desirable and/or necessary to choose the size of area 1 401, area 2 and area 3 403 appropriately.

Nach einigen beispielhaften Ausführungsformen kann der Blockmanager 310 entsprechend und/oder basierend auf der Datenzugriffstendenz, der Datenzugriffshistorie und/oder dem Datenzugriffsmuster der Speichereinrichtung 200 einen oder mehrere der Bereiche, z. B. den Bereich 1 401, den Bereich 2 402 und/oder den Bereich 3 403 usw., dynamisch zuweisen. Darüber hinaus kann der Blockmanager 310 nach einigen beispielhaften Ausführungsformen einen oder mehrere der Bereiche, z. B. den Bereich 1 401, den Bereich 2 402 und/oder den Bereich 3 403 usw., entsprechend und/oder basierend auf einer Benutzereinstellung (z. B. Konfiguration usw.) der Speichereinrichtung 200 statisch zuweisen.According to some example embodiments, the block manager 310 may select one or more of the areas, e.g. dynamically assign area 1 401, area 2 402 and/or area 3 403 etc. Additionally, according to some example embodiments, the block manager 310 may include one or more of the areas, e.g. statically assign area 1 401, area 2 402, and/or area 3 403, etc., to storage device 200 according to and/or based on a user setting (e.g., configuration, etc.).

6 ist ein Diagramm, das den Betrieb eines Speichersystems nach einigen beispielhaften Ausführungsformen veranschaulicht. 7 ist ein Diagramm, das den Betrieb eines Speichersystems nach einigen beispielhaften Ausführungsformen veranschaulicht. Der Einfachheit und Klarheit halber werden in 6 und 7 ein erster Bereich, ein zweiter Bereich und ein dritter Bereich als Bereich 1, Bereich 2 und Bereich 3 dargestellt und beschrieben, aber die beispielhaften Ausführungsformen sind nicht darauf beschränkt, und es kann beispielsweise eine größere oder geringere Anzahl von Bereichen in einer Speichervorrichtung usw. verwendet werden. 6 10 is a diagram illustrating operation of a memory system according to some example embodiments. 7 is a Diagram illustrating operation of a memory system according to some example embodiments. For the sake of simplicity and clarity, in 6 and 7 a first area, a second area, and a third area are illustrated and described as area 1, area 2, and area 3, but the exemplary embodiments are not limited thereto and, for example, a greater or lesser number of areas can be used in a memory device, etc will.

Unter Bezugnahme auf 6 kann die Speichervorrichtung 220 in einen SLC-Bereich, der den Bereich 1 410 und den Bereich 2 402 enthält, und einen MLC-Bereich, der dem Bereich 3 403 entspricht, wie vorstehend unter Bezugnahme auf 3 beschrieben, unterteilt werden, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.With reference to 6 The memory device 220 can be divided into an SLC area, which includes area 1 410 and area 2 402, and an MLC area, which corresponds to area 3 403, as described above with reference to FIG 3 described, but the exemplary embodiments are not limited thereto.

Die Daten können in der Schreibzeitreihenfolge gespeichert werden, in der die Daten in den SLC-Bereich geschrieben wurden, z. B. in der Reihenfolge SLC1, SLC2, SLC3, SLC4 und SLC5 usw. Die Daten werden in der Reihenfolge, in der sie geschrieben wurden, in den Bereich 3 403 migriert, aber die beispielhaften Ausführungsformen sind nicht darauf beschränkt. So können beispielsweise die Daten der SLC1, die am frühesten geschrieben wurden, zuerst in den dritten Bereich 403 migriert werden.The data can be stored in the write-time order in which the data was written to the SLC area, e.g. B. in the order SLC1, SLC2, SLC3, SLC4 and SLC5, etc. The data is migrated to region 3 403 in the order in which it was written, but the example embodiments are not so limited. For example, the data of the SLC1 that was written earliest may be migrated to the third area 403 first.

Doch selbst wenn die Daten eines SLC früher geschrieben wurden, kann der Migrationsmanager 300 die Daten des SLC nicht in den Bereich 3 403 migrieren, sondern die Daten im Bereich 1 401 und/oder im Bereich 2 402 (z. B. dem ursprünglichen Bereich) beibehalten, wenn die Daten häufig von der Speichersteuerung 210 gelesen werden. Das heißt, dass nach einigen beispielhaften Ausführungsformen, wenn eine Lesezählung von in dem Bereich 1 401 gespeicherten Daten größer oder gleich einer Migrationsschwellenwertzählung THRC ist, die Daten in dem Bereich 1 401 beibehalten werden können, indem die Lesezählung über eine Schreibzeitfolge berücksichtigt wird. Wenn beispielsweise die Daten von SLC4 häufig gelesen werden, werden die Daten von SLC4 im Bereich 1 401 beibehalten und/oder kontinuierlich beibehalten, selbst wenn Daten kontinuierlich nach SLC5 empfangen werden. Nach einigen beispielhaften Ausführungsformen kann der Migrationsmanager 300 zunächst die am wenigsten verwendeten Daten in den Bereich 3 403 migrieren, aber die beispielhaften Ausführungsformen sind nicht darauf beschränkt. Wenn beispielsweise eine Zeit, die seit einem letzten Lesezeitpunkt von in dem Bereich 1 401 und/oder dem Bereich 2 402 usw. (z. B. den SLC-Bereichen usw.) gespeicherten Daten verstrichen ist, eine Migrationsschwellenzeit THR überschreitet, kann der Migrationsmanager 300 die Daten von dem Bereich 1 401 und/oder dem Bereich 2 402 usw. in den Bereich 3 403 (z. B. eine oder mehrere der Nicht-SLC-Bereiche usw.) migrieren.However, even if an SLC's data was written earlier, the migration manager 300 cannot migrate the SLC's data to area 3 403, but rather the data in area 1 401 and/or in area 2 402 (e.g. the original area) maintained if the data is read from memory controller 210 frequently. That is, according to some example embodiments, when a read count of data stored in Region 1 401 is greater than or equal to a migration threshold count TH RC , the data in Region 1 401 may be preserved by accounting for the read count over a write timing sequence. For example, if the data from SLC4 is read frequently, the data from SLC4 will be maintained in range 1 401 and/or maintained continuously even if data is continuously received after SLC5. According to some example embodiments, the migration manager 300 may first migrate the least used data to region 3 403, but the example embodiments are not so limited. For example, if a time elapsed from a last read time of data stored in area 1 401 and/or area 2 402 etc. (e.g. the SLC areas etc.) exceeds a migration threshold time THR, the migration manager can 300 migrate the data from region 1 401 and/or region 2 402 etc. to region 3 403 (e.g. one or more of the non-SLC regions etc.).

Bezugnehmend auf 7 kann der Migrationsmanager 300 nach einigen beispielhaften Ausführungsformen Daten, die in dem Bereich 2 402 gespeichert sind, zurück in den Bereich 1 401 (z. B. den ursprünglichen Bereich usw.) migrieren, wenn die Anzahl der gelesenen Daten den Migrationsschwellenwert THRC überschreitet. Mit anderen Worten, der Migrationsmanager 300 kann Daten, die in einem ersten SLC-Bereich gespeichert sind, in einen zweiten SLC-Bereich migrieren (z. B. verschieben usw.), wenn eine Lesezählung der Daten den Migrationsschwellenwert THRC überschreitet. Im dargestellten Beispiel können die Daten von dem Bereich 2 402 in den Bereich 1 401 migriert werden, wenn davon ausgegangen wird, dass der Migrationsschwellenwert THRC 2000 beträgt, d. h. wenn die Anzahl der gelesenen Daten von SLC5 2000 beträgt, wobei die beispielhaften Ausführungsformen jedoch nicht darauf beschränkt sind. Wenn jedoch die Anzahl der gelesenen Daten von SLC6 1000 und die Anzahl der gelesenen Daten von TLC 1500 und 500 beträgt und somit unter dem Migrationsschwellenwert THRC liegt, können die Daten von SLC6 und TLC in den Bereichen 2 und 3, in denen die Daten ursprünglich gespeichert wurden, beibehalten werden, wobei die beispielhaften Ausführungsformen hierauf nicht beschränkt sind.Referring to 7 According to some example embodiments, the migration manager 300 may migrate data stored in region 2 402 back to region 1 401 (e.g., the original region, etc.) when the amount of data read exceeds the migration threshold TH RC . In other words, the migration manager 300 may migrate (e.g., move, etc.) data stored in a first SLC area to a second SLC area when a read count of the data exceeds the migration threshold TH RC . In the illustrated example, the data may be migrated from region 2 402 to region 1 401 if the migration threshold TH RC is assumed to be 2000, ie if the number of data read from SLC5 is 2000, but the exemplary embodiments do not are limited to it. However, if the number of data read from SLC6 is 1000 and the number of data read from TLC is 1500 and 500 and thus below the migration threshold THRC, the data from SLC6 and TLC can be found in areas 2 and 3 where the data was originally stored were retained, but the exemplary embodiments are not limited thereto.

Ebenso können die im dritten Bereich 403 gespeicherten Daten in den Bereich 1 401 zurück migriert werden, wenn die Anzahl der gelesenen Daten den Migrationsschwellenwert THRC überschreitet (nicht dargestellt).Likewise, the data stored in the third area 403 can be migrated back to area 1 401 if the number of data read exceeds the migration threshold TH RC (not shown).

8 ist ein Ablaufdiagramm eines Betriebsverfahrens einer Speichersteuerung nach einigen beispielhaften Ausführungsformen. 8th 1 is a flow chart of a method of operation of a memory controller, according to some example embodiments.

Bezugnehmend auf 8 sendet die Speichersteuerung in der Operation S11 mindestens einen Lesebefehl an eine Speichervorrichtung. In Operation S12 werden, wenn Daten, die nach dem Lesebefehl aus der Speichervorrichtung gelesen wurden, empfangen werden, Fehler in den empfangenen Daten dekodiert und die Anzahl der Fehler usw. überprüft.Referring to 8th In operation S11, the memory controller sends at least one read command to a memory device. In operation S12, when data read from the storage device after the read command is received, errors in the received data are decoded, and the number of errors, etc. are checked.

Nach einigen beispielhaften Ausführungsformen kann die Speichersteuerung in der Operation S13 prüfen, ob die gelesenen Daten (im Folgenden als Daten bezeichnet) in einem SLC-Bereich, z. B. dem Bereich 1 401 usw., gespeichert wurden. Als Reaktion auf die Feststellung der Speichersteuerung, dass die Daten in einem SLC-Bereich, z. B. dem Bereich 1 401 usw., gespeichert wurden, wird in der Operation S14 die Anzahl der Fehler in den Daten überprüft.According to some exemplary embodiments, the memory controller may check in operation S13 whether the read data (hereinafter referred to as data) is in an SLC area, e.g. B. the area 1 401 and so on. In response to the memory controller determining that the data in an SLC area, e.g. B. the area 1 401 etc., are saved the number of errors in the data is checked in operation S14.

Wenn die Speichersteuerung feststellt, dass die Anzahl der Fehler in den Daten geringer als ein gewünschter Fehlerschwellenwert ist, prüft und/oder bestimmt die Speichersteuerung in der Operation S15 eine Schreibzeit, die dem Zeitpunkt entspricht, zu dem die Daten in die Speichervorrichtung geschrieben wurden. Wenn die Speichersteuerung feststellt, dass die seit dem Schreibzeitpunkt verstrichene Zeit kleiner als eine Migrationsschwellenwertzeit THW ist, behält die Speichersteuerung in der Operation S16 die Daten in dem SLC-Bereich, z.B. dem Bereich 1 401, usw. bei.If the memory controller determines that the number of errors in the data is less than a desired error threshold, in operation S15 the memory controller examines and/or determines a write time that corresponds to the time at which the data was written to the memory device. If the memory controller determines that the elapsed time from the write time is less than a migration threshold time THW, the memory controller retains the data in the SLC area, e.g., area 1 401, and so on, in operation S16.

Wenn die Speichersteuerung feststellt, dass die Anzahl der Fehler in den Daten größer oder gleich dem Fehlerschwellenwert THER ist, prüft die Speichersteuerung in der Operation S17 einen Lesezähler der Daten. Wenn die Daten nicht in dem Bereich 1 401 gespeichert werden (z. B. nicht in Reaktion auf Operation S13) und die Daten in dem Bereich 2 402 oder dem Bereich 3 403 usw. gespeichert werden, überwacht die Speichersteuerung in der Operation S17 außerdem kontinuierlich einen Lesezähler der Daten.If the memory controller determines that the number of errors in the data is greater than or equal to the error threshold THER, the memory controller checks a read counter of the data in operation S17. In addition, if the data is not stored in area 1 401 (e.g., not in response to operation S13) and the data is stored in area 2 402 or area 3 403, etc., the memory controller continuously monitors in operation S17 a read count of the data.

Wenn die Speichersteuerung feststellt, dass die Anzahl der gelesenen Daten einen Migrationsschwellenwert THRC in der Operation S17 überschreitet, stellt die Speichersteuerung fest, dass die Daten noch in Gebrauch sind, und behält daher in der Operation S16 den aktuellen Speicherzustand bei, wenn die Daten in dem Bereich 1 401 gespeichert sind, und/oder die Speichersteuerung migriert die Daten in den Bereich 1 401, wenn die Daten in dem Bereich 2 402 oder dem Bereich 3 403 in der Operation S18 gespeichert sind. Das heißt, wenn die Daten im Gebrauch sind und häufig gelesen werden, werden die Daten in dem Bereich 1 401 gehalten und/oder in den Bereich 1 401 migriert, usw., aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.If the memory controller determines that the amount of data read exceeds a migration threshold THRC in operation S17, the memory controller determines that the data is still in use and therefore maintains the current memory state in operation S16 if the data is in the Area 1 401 is stored and/or the memory controller migrates the data to area 1 401 if the data is stored in area 2 402 or area 3 403 in operation S18. That is, if the data is in use and read frequently, the data is maintained in area 1 401 and/or migrated to area 1 401, etc., but the example embodiments are not so limited.

Wenn die Speichersteuerung jedoch feststellt, dass die Anzahl der gelesenen Daten unter einem Migrationsschwellenwert THTC liegt, stellt die Speichersteuerung fest, dass die Daten nicht in Gebrauch sind, und migriert daher in der Operation S19 die Daten in den Bereich 2 402 oder den Bereich 3 403 usw.However, if the memory controller determines that the amount of data read is below a migration threshold TH TC , the memory controller determines that the data is not in use and therefore migrates the data to area 2 402 or area 3 in operation S19 403 etc.

9 ist ein Blockdiagramm eines Speichersystems nach mindestens einer beispielhaften Ausführungsform der erfindungsgemäßen Konzepte. Bezugnehmend auf 9 kann eine Speichervorrichtung 220 eine Speichervorrichtung 220 und/oder eine Speichersteuerung 210 usw. enthalten, ist aber nicht darauf beschränkt. Die Speichervorrichtung 220 kann einer oder mehreren der nichtflüchtigen Speichervorrichtungen NVM11 bis NVMmn usw. entsprechen, die mit der Speichersteuerung 200 auf der Grundlage eines einer Mehrzahl von Kanälen CH1 bis CHm von 10 kommunizieren, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Die Speichersteuerung 210 kann der Speichersteuerung 200 von 1 entsprechen, ist aber nicht darauf beschränkt. 9 1 is a block diagram of a memory system according to at least one example embodiment of the inventive concepts. Referring to 9 A memory device 220 may include, but is not limited to, a memory device 220 and/or a memory controller 210, etc. The memory device 220 may correspond to one or more of the non-volatile memory devices NVM11 to NVMmn etc. connected to the memory controller 200 based on one of a plurality of channels CH1 to CHm of 10 communicate, but the exemplary embodiments are not limited thereto. The memory controller 210 can correspond to the memory controller 200 of 1 match, but is not limited to.

Nach mindestens einer beispielhaften Ausführungsform kann die Speichervorrichtung 220 einen ersten bis achten Pin P11 bis P18, eine Speicherschnittstellenschaltung 221, eine Steuerlogikschaltung 222 und/oder ein Speicherzellenarray 400 usw. enthalten.According to at least one example embodiment, memory device 220 may include first through eighth pins P11 through P18, memory interface circuitry 221, control logic circuitry 222, and/or memory cell array 400, and so on.

Die Speicherschnittstellenschaltung 221 kann ein Chip-Freigabesignal nCE von der Speichersteuerung 210 über den ersten Stift P11 empfangen, ist aber nicht darauf beschränkt. Die Speicherschnittstellenschaltung 221 kann entsprechend dem Chip-Freigabesignal nCE über den zweiten bis achten Pin P12 bis P18 Signale an die Speichersteuerung 210 senden und/oder von dieser empfangen, ist aber nicht darauf beschränkt. Wenn sich das Chip-Freigabesignal nCE beispielsweise in einem freigegebenen Zustand befindet (z. B. ein Low-Pegel), kann die Speicherschnittstellenschaltung 221 über den zweiten bis achten Stift P12 bis P18 Signale an die Speichersteuerung 210 übertragen und/oder von dieser empfangen, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.Memory interface circuit 221 may receive, but is not limited to, a chip enable signal nCE from memory controller 210 via first pin P11. The memory interface circuit 221 may send and/or receive signals to and/or from the memory controller 210 via the second through eighth pins P12 through P18 according to the chip enable signal nCE, but is not limited thereto. For example, when chip enable signal nCE is in an enabled state (e.g., a low level), memory interface circuit 221 may transmit and/or receive signals to and/or receive signals from memory controller 210 via second through eighth pins P12 through P18. but the exemplary embodiments are not limited thereto.

Die Speicherschnittstellenschaltung 221 kann ein Befehls-Latch-Freigabesignal CLE, ein Adress-Latch-Freigabesignal ALE und/oder ein Schreibfreigabesignal nWE usw. von der Speichersteuerung 210 über den zweiten bis vierten Stift P12 bis P14 empfangen, ist aber nicht darauf beschränkt. Die Speicherschnittstellenschaltung 221 kann ein Datensignal DQ von der Speichersteuerung 210 empfangen und/oder das Datensignal DQ über den siebten Stift P17 an die Speichersteuerung 210 senden, ist aber nicht darauf beschränkt. Ein Befehl CMD, eine Adresse ADDR und/oder Daten usw. können über das Datensignal DQ übertragen werden. Das Datensignal DQ kann beispielsweise über eine Mehrzahl von Datensignalleitungen übertragen werden, ist aber nicht darauf beschränkt und kann beispielsweise seriell auf einer einzigen Datensignalleitung übertragen werden. In diesem Fall kann der siebte Stift P17 eine Mehrzahl von Stiften enthalten, die einer Mehrzahl von Datensignalen entsprechen.The memory interface circuit 221 may receive, but is not limited to, a command latch enable signal CLE, an address latch enable signal ALE, and/or a write enable signal nWE, etc. from the memory controller 210 via the second through fourth pins P12 through P14. The memory interface circuit 221 may receive a data signal DQ from the memory controller 210 and/or transmit the data signal DQ to the memory controller 210 via the seventh pin P17, but is not limited thereto. A command CMD, an address ADDR and/or data etc. can be transmitted via the data signal DQ. The data signal DQ can be transmitted over a plurality of data signal lines, for example, but is not limited to this, and can be transmitted serially on a single data signal line, for example. In this case, the seventh pin P17 may include a plurality of pins corresponding to a plurality of data signals.

Die Speicherschnittstellenschaltung 221 kann den Befehl CMD aus dem Datensignal DQ empfangen, das während eines Freigabeabschnitts (z. B. bei einem High-Pegel-Zustand) des Befehls-Latch-Freigabesignals CLE auf der Grundlage von Umschaltzeiten des Schreibfreigabesignals nWE empfangen wird, ist aber nicht darauf beschränkt. Die Speicherschnittstellenschaltung 221 kann die Adresse ADDR aus dem Datensignal DQ empfangen, das während eines Freigabeabschnitts (z. B. bei einem High-Pegel-Zustand) des Adress-Latch-Freigabesignals ALE auf der Grundlage der Umschaltzeitpunkte des Schreibfreigabesignals nWE empfangen wird, ist jedoch nicht darauf beschränkt.The memory interface circuit 221 may receive the command CMD from the data signal DQ asserted during an enable portion (e.g., when a high level state) of the command Latch enable signal CLE is received based on, but not limited to, switching times of write enable signal nWE. The memory interface circuit 221 may receive the address ADDR from the data signal DQ received during an enable portion (e.g., at a high level state) of the address latch enable signal ALE based on the switching timing of the write enable signal nWE, however not limited to that.

In mindestens einer beispielhaften Ausführungsform kann das Schreibfreigabesignal nWE auf einem statischen Zustand (z. B. einem High- oder einem Low-Pegel) gehalten werden und danach zwischen dem Hoch- und dem Low-Pegel umgeschaltet werden, aber die beispielhaften Ausführungsformen sind nicht darauf beschränkt. Zum Beispiel kann das Schreibfreigabesignal nWE in einem Abschnitt hin- und hergeschaltet werden, in dem der Befehl CMD und/oder die Adresse ADDR übertragen wird/werden. Dementsprechend kann die Speicherschnittstellenschaltung 221 den Befehl CMD und/oder die Adresse ADDR auf der Grundlage der Umschaltzeitpunkte des Schreibfreigabesignals nWE usw. erhalten.In at least one example embodiment, the write enable signal nWE may be maintained at a static state (e.g., a high or a low level) and thereafter toggled between the high and low levels, but the example embodiments are not dependent on this limited. For example, the write enable signal nWE may be toggled in a section where the command CMD and/or the address ADDR is/are being transmitted. Accordingly, the memory interface circuit 221 can obtain the command CMD and/or the address ADDR based on the switching timing of the write enable signal nWE and so on.

Die Speicherschnittstellenschaltung 221 kann ein Lesefreigabesignal nRE von der Speichersteuerung 210 über den fünften Pin P15 empfangen, ist aber nicht darauf beschränkt. Die Speicherschnittstellenschaltung 221 kann über den sechsten Pin P16 ein Daten-Strobe-Signal DQS von der Speichersteuerung 210 empfangen und/oder das Daten-Strobe-Signal DQS an die Speichersteuerung 210 senden, ist jedoch nicht darauf beschränkt.Memory interface circuit 221 may receive, but is not limited to, a read enable signal nRE from memory controller 210 via fifth pin P15. The memory interface circuit 221 may receive a data strobe signal DQS from the memory controller 210 and/or send the data strobe signal DQS to the memory controller 210 via the sixth pin P16, but is not limited thereto.

In einer Daten DATA-Ausgabeoperation der Speichervorrichtung 220 kann die Speicherschnittstellenschaltung 221 das Lesefreigabesignal nRE, das hin- und herschaltet, über den fünften Pin P15 empfangen, bevor die Daten DATA ausgegeben werden, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Die Speicherschnittstellenschaltung 221 kann ein Daten-Strobe-Signal DQS, das hin- und herschaltet, auf der Grundlage des Hin- und Herschaltens des Lesefreigabesignals nRE erzeugen, ist aber nicht darauf beschränkt. Zum Beispiel kann die Speicherschnittstellenschaltung 221 das Daten-Strobe-Signal DQS erzeugen, das nach einer gewünschten und/oder vorbestimmten Verzögerungszeit (z.B. tDQSRE) ab einer Toggel-Startzeit des Lesefreigabesignals nRE hin- und herzuschalten beginnt. Die Speicherschnittstellenschaltung 221 kann das Datensignal DQ, das die Daten DATA enthält, auf der Grundlage einer Umschaltzeit des Daten-Strobe-Signals DQS übertragen, ist aber nicht darauf beschränkt. Dementsprechend können die Daten DATA mit der Hin-und-Herschaltungs-Timing des Daten-Strobe-Signals DQS abgeglichen und an die Speichersteuerung 210 usw. übertragen werden.In a data DATA output operation of the memory device 220, the memory interface circuit 221 may receive the read enable signal nRE, which toggles, via the fifth pin P15 before the data DATA is output, but the example embodiments are not limited thereto. The memory interface circuit 221 may generate a data strobe signal DQS that toggles based on, but is not limited to, the toggling of the read enable signal nRE. For example, memory interface circuit 221 may generate data strobe signal DQS that begins toggling after a desired and/or predetermined delay time (e.g., tDQSRE) from a toggle start time of read enable signal nRE. The memory interface circuit 221 may transfer the data signal DQ including the data DATA based on, but not limited to, a toggle timing of the data strobe signal DQS. Accordingly, the data DATA can be aligned with the toggling timing of the data strobe signal DQS and transmitted to the memory controller 210 and so on.

In einer Daten DATA-Eingabeoperation der Speichervorrichtung 220, wenn das Datensignal DQ, das die Daten DATA enthält, von der Speichersteuerung 210 empfangen wird, kann die Speicherschnittstellenschaltung 221 das Daten-Strobe-Signal DQS, das zusammen mit den Daten DATA hin- und herschaltet, von der Speichersteuerung 210 empfangen. Die Speicherschnittstellenschaltung 221 kann die Daten DATA aus dem Datensignal DQ auf der Grundlage des Hin-und-Herschaltungs-Timings des Daten-Strobe-Signals DQS erhalten, ist aber nicht darauf beschränkt. Beispielsweise kann die Speicherschnittstellenschaltung 221 die Daten DATA durch Abtasten des Datensignals DQ bei einer ansteigenden Flanke und einer abfallenden Flanke des Daten-Strobe-Signals DQS erhalten, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.In a data DATA input operation of the memory device 220, when the data signal DQ containing the data DATA is received by the memory controller 210, the memory interface circuit 221 may use the data strobe signal DQS, which toggles along with the data DATA , received from memory controller 210 . The memory interface circuit 221 may obtain the data DATA from the data signal DQ based on, but not limited to, the toggling timing of the data strobe signal DQS. For example, memory interface circuit 221 may obtain data DATA by sampling data signal DQ at a rising edge and a falling edge of data strobe signal DQS, but the example embodiments are not limited thereto.

Die Speicherschnittstellenschaltung 221 kann ein Bereit/Besetzt-Ausgabesignal nR/B über den achten Pin P18 an die Speichersteuerung 210 übertragen, ist aber nicht darauf beschränkt. Die Speicherschnittstellenschaltung 221 kann über das Bereit/Besetzt-Ausgabesignal nR/B usw. Zustandsinformationen der Speichervorrichtung 220 an die Speichersteuerung 210 übermitteln. Wenn sich die Speichervorrichtung 220 in einem belegten Zustand befindet (d.h. während die internen Operationen der Speichervorrichtung 220 durchgeführt werden), kann die Speicherschnittstellenschaltung 221 das Bereit/Besetzt-Ausgabesignal nR/B, das den belegten Zustand anzeigt, an die Speichersteuerung 210 usw. übertragen. Wenn sich die Speichervorrichtung 220 in einem Bereitschaftszustand befindet (z.B. wenn die internen Operationen der Speichervorrichtung 220 nicht ausgeführt werden und/oder abgeschlossen sind), kann die Speicherschnittstellenschaltung 221 das Bereit/Besetzt-Ausgabesignal nR/B, das den Bereitschaftszustand anzeigt, an die Speichersteuerung 210 usw. übertragen. Während die Speichervorrichtung 220 beispielsweise als Reaktion auf einen Seitenlesebefehl die Daten DATA aus dem Speicherzellenarray 400 liest, kann die Speicherschnittstellenschaltung 22 das Bereit/Besetzt-Ausgabesignal nR/B, das den Besetzt-Zustand (z. B. einen Low-Pegel) anzeigt, an die Speichersteuerung 210 übertragen, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Während die Speichervorrichtung 220 beispielsweise als Reaktion auf einen Programmbefehl die Daten DATA in das Speicherzellenarray 400 programmiert, kann die Speicherschnittstellenschaltung 221 das Bereit/Besetzt-Ausgabesignal nR/B, das den Besetzt-Zustand anzeigt, an die Speichersteuerung 210 usw. übertragen .The memory interface circuit 221 may transmit a ready/busy output signal nR/B to the memory controller 210 via the eighth pin P18, but is not limited thereto. The memory interface circuit 221 may communicate state information of the memory device 220 to the memory controller 210 via the ready/busy output signal nR/B and so on. When the memory device 220 is in a busy state (i.e., while the internal operations of the memory device 220 are being performed), the memory interface circuit 221 may transmit the ready/busy output signal nR/B indicating the busy state to the memory controller 210, etc . When the memory device 220 is in a ready state (e.g., when the internal operations of the memory device 220 are not being performed and/or completed), the memory interface circuit 221 can send the ready/busy output signal nR/B indicating the ready state to the memory controller 210 etc. transmitted. For example, while the memory device 220 is reading the data DATA from the memory cell array 400 in response to a page read command, the memory interface circuit 22 may provide the ready/busy output signal nR/B, which indicates the busy state (e.g., a low level). transmitted to memory controller 210, but the example embodiments are not so limited. For example, while the memory device 220 programs the data DATA into the memory cell array 400 in response to a program command, the memory interface circuit 221 can transmit the ready/busy output signal nR/B indicating the busy state to the memory controller 210, etc.

Die Steuerlogikschaltung 222 kann im Allgemeinen verschiedene Operationen der Speichervorrichtung 220 steuern. Die Steuerlogikschaltung 222 kann das von der Speicherschnittstellenschaltung 221 erhaltene CMD-Befehls- und/oder Adressen-ADDR-Signal empfangen. Die Steuerlogikschaltung 222 kann Steuersignale zur Steuerung anderer Komponenten der Speichervorrichtung 220 entsprechend und/oder auf der Grundlage des empfangenen CMD-Befehls und/oder des Adressen-ADDR-Signals erzeugen. So kann die Steuerlogikschaltung 222 beispielsweise verschiedene Steuersignale zum Programmieren der Daten DATA in das Speicherzellenarray 400 und/oder zum Lesen der Daten DATA aus diesem Feld usw. erzeugen.Control logic circuitry 222 may control various operations of memory device 220 in general. Control logic circuit 222 may receive the CMD command and/or address ADDR signal received from memory interface circuit 221 . The control logic circuitry 222 may generate control signals to control other components of the memory device 220 accordingly and/or based on the received CMD command and/or the address ADDR signal. For example, control logic circuitry 222 may generate various control signals for programming data DATA into memory cell array 400 and/or reading data DATA from that array, and so on.

Das Speicherzellenarray 400 kann die von der Speicherschnittstellenschaltung 221 erhaltenen Daten DATA unter der Steuerung der Steuerlogikschaltung 222 speichern, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Das Speicherzellen-Array 400 kann die gespeicherten Daten DATA unter der Steuerung der Steuerlogikschaltung 222 an die Speicherschnittstellenschaltung 221 ausgeben, ist aber nicht darauf beschränkt.The memory cell array 400 may store the data DATA received from the memory interface circuit 221 under the control of the control logic circuit 222, but the example embodiments are not limited thereto. The memory cell array 400 may output the stored data DATA to the memory interface circuit 221 under the control of the control logic circuit 222, but is not limited thereto.

Das Speicherzellenarray 400 kann eine Mehrzahl von Speicherzellen enthalten. Bei der Mehrzahl von Speicherzellen kann es sich zum Beispiel um Flash-Speicherzellen handeln. Die beispielhaften Ausführungsformen der erfindungsgemäßen Konzepte sind jedoch nicht darauf beschränkt, und die Speicherzellen können resistive RAM (RRAM)-Zellen, ferroelektrische RAM(FRAM)-Zellen, Phasenwechsel-RAM(PRAM)-Zellen, Thyristor-RAM(TRAM)-Zellen und/oder magnetische RAM(MRAM)-Zellen usw. sein. Einige beispielhafte Ausführungsformen der erfindungsgemäßen Konzepte werden nachstehend in Bezug auf beispielhafte Ausführungsformen beschrieben, bei denen die Speicherzellen NAND-Flash-Speicherzellen sind, aber die beispielhaften Ausführungsformen sind nicht darauf beschränkt.The memory cell array 400 may include a plurality of memory cells. The plurality of memory cells can be flash memory cells, for example. However, the exemplary embodiments of the inventive concepts are not limited thereto, and the memory cells may include resistive RAM (RRAM) cells, ferroelectric RAM (FRAM) cells, phase change RAM (PRAM) cells, thyristor RAM (TRAM) cells, and /or magnetic RAM (MRAM) cells etc. Some example embodiments of the inventive concepts are described below with respect to example embodiments where the memory cells are NAND flash memory cells, but the example embodiments are not limited thereto.

Die Speichersteuerung 210 kann eine Mehrzahl von Stiften, z. B. einen ersten bis achten Stift P21 bis P28 usw., und mindestens eine Steuerungs-Schnittstellenschaltung 211 usw. enthalten. Der erste bis achte Pin P21 bis P28 können dem ersten bis achten Pin P11 bis P18 der Speichervorrichtung 220 entsprechen, sind aber nicht darauf beschränkt.The memory controller 210 may have a plurality of pins, e.g. e.g., first through eighth pins P21 through P28, etc., and at least one control interface circuit 211, etc. The first through eighth pins P21 through P28 may correspond to the first through eighth pins P11 through P18 of the memory device 220, but are not limited thereto.

Die Steuerungs-Schnittstellenschaltung 410 kann das Chip-Freigabesignal nCE über den ersten Pin P21 an die Speichervorrichtung 220 übertragen, ist aber nicht darauf beschränkt. Die Steuerungs-Schnittstellenschaltung 410 kann über den zweiten bis achten Pin P22 bis P28 Signale an die Speichervorrichtung 220, die durch das Chip-Freigabesignal nCE ausgewählt wird, senden und/oder von ihr empfangen, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt.The control interface circuit 410 may transmit the chip enable signal nCE to the memory device 220 via the first pin P21, but is not limited thereto. The control interface circuit 410 may send and/or receive signals to and/or receive signals from the memory device 220 selected by the chip enable signal nCE via the second through eighth pins P22 through P28, but the example embodiments are not so limited.

Die Steuerungs-Schnittstellenschaltung 410 kann das Befehls-Latch-Freigabesignal CLE, das Adress-Latch-Freigabesignal ALE und/oder das Schreibfreigabesignal nWE über den zweiten bis vierten Stift P22 bis P24 an die Speichervorrichtung 220 übertragen, ist jedoch nicht darauf beschränkt. Die Steuerungs-Schnittstellenschaltung 410 kann das Datensignal DQ über den siebten Pin P27 an die Speichervorrichtung 220 senden und/oder von dieser empfangen, ist aber nicht darauf beschränkt.The control interface circuit 410 may transmit the command latch enable signal CLE, the address latch enable signal ALE, and/or the write enable signal nWE to the memory device 220 via the second through fourth pins P22 through P24, but is not limited thereto. The control interface circuit 410 may send and/or receive the data signal DQ to and/or from the memory device 220 via the seventh pin P27, but is not limited thereto.

Die Steuerungs-Schnittstellenschaltung 410 kann das Datensignal DQ einschließlich des Befehls CMD und/oder der Adresse ADDR zusammen mit dem Schreibfreigabesignal nWE, das hin- und herschaltet, an die Speichervorrichtung 220 übertragen, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Die Steuerungs-Schnittstellenschaltung 410 kann das Befehls-Latch-Freigabesignal CLE übertragen, das sich im freigegebenen Zustand befindet, um das Datensignal DQ einschließlich des Befehls CMD an die Speichervorrichtung 220 zu übertragen, und das Adress-Latch-Freigabesignal ALE übertragen, das sich im freigegebenen Zustand befindet, um das Datensignal DQ einschließlich der Adresse ADDR an die Speichervorrichtung 220 usw. zu übertragen.The control interface circuit 410 may transmit the data signal DQ including the command CMD and/or the address ADDR to the memory device 220 along with the write enable signal nWE that toggles, but the example embodiments are not limited thereto. The control interface circuit 410 may transmit the command latch enable signal CLE, which is in the enabled state, to transmit the data signal DQ including the command CMD to the memory device 220, and transmit the address latch enable signal ALE, which is in the enabled state to transfer the data signal DQ including the address ADDR to the memory device 220 and so on.

Die Steuerungs-Schnittstellenschaltung 410 kann das Lesefreigabesignal nRE über den fünften Pin P25 an die Speichervorrichtung 220 übertragen, ist aber nicht darauf beschränkt. Die Steuerungs-Schnittstellenschaltung 410 kann das Daten-Strobe-Signal DQS von der Speichervorrichtung 220 empfangen und/oder das Daten-Strobe-Signal DQS von der Speichervorrichtung 220 über den sechsten Pin P26 senden, ist aber nicht darauf beschränkt.The control interface circuit 410 may transmit the read enable signal nRE to the memory device 220 via the fifth pin P25, but is not limited thereto. The control interface circuit 410 may receive the data strobe signal DQS from the memory device 220 and/or transmit the data strobe signal DQS from the memory device 220 via the sixth pin P26, but is not limited thereto.

In einer DATA- Datenausgabeoperation der Speichervorrichtung 220 kann die Steuerungs-Schnittstellenschaltung 410 das Lesefreigabesignal nRE erzeugen, das hin-und herschaltet, und das Lesefreigabesignal nRE an die Speichervorrichtung 220 übertragen, ist aber nicht darauf beschränkt. Beispielsweise kann die Steuerungs-Schnittstellenschaltung 410 das Lesefreigabesignal nRE erzeugen, das von einem statischen Zustand (z. B. einem High-Pegel oder einem Low-Pegel) in einen Hin-und-Herschaltungs-Zustand wechselt, bevor die Daten DATA ausgegeben werden, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Dementsprechend kann die Speichervorrichtung 220 das Daten-Strobe-Signal DQS erzeugen, das auf der Grundlage des Lesefreigabesignals nRE hin- und herschaltet. Die Steuerungs-Schnittstellenschaltung 410 kann das Datensignal DQ einschließlich der Daten DATA von der Speichervorrichtung 220 zusammen mit dem Daten-Strobe-Signal DQS, das hin- und herschaltet, empfangen. Die Steuerungs-Schnittstellenschaltung 410 kann die Daten DATA aus dem Datensignal DQ auf der Grundlage des Hin-und-Herschaltungs-Timings des Daten-Strobe-Signals DQS erhalten, aber die beispielhaften Ausführungsformen sind hierauf nicht beschränkt.In a DATA data output operation of memory device 220, control interface circuit 410 may generate read enable signal nRE, which toggles, and transmit read enable signal nRE to memory device 220, but is not limited thereto. For example, the control interface circuit 410 may generate the read enable signal nRE that transitions from a static state (e.g., a high level or a low level) to a toggling state before the data DATA is output. but the exemplary embodiments are not limited thereto. Accordingly, memory device 220 may generate data strobe signal DQS that toggles based on read enable signal nRE. The control interface circuit 410 can receive the data signal DQ including the data DATA from the memory device 220 along with the data strobe signal DQS that toggles. The control interface circuit 410 may obtain the data DATA from the data signal DQ based on the toggling timing of the data strobe signal DQS, but the example embodiments are not limited to this.

Bei einer DATA-Dateneingabeoperation der Speichervorrichtung 220 kann die Steuerungs-Schnittstellenschaltung 410 das Daten-Strobe-Signal DQS, das hin- und herschaltet erzeugen, usw. Beispielsweise kann die Steuerungs-Schnittstellenschaltung 410 das Daten-Strobe-Signal DQS erzeugen, das von einem statischen Zustand (z. B. einem High-Pegel oder einem Low-Pegel) in einen Hin-und-Herschaltungs-Zustand wechselt, bevor die Daten DATA übertragen werden, ist aber nicht darauf beschränkt. Die Steuerungs-Schnittstellenschaltung 410 kann das Datensignal DQ einschließlich der Daten DATA an die Speichervorrichtung 220 auf der Grundlage von Umschaltzeitpunkten des Daten-Strobe-Signals DQS usw. übertragen.In a DATA data input operation of memory device 220, control interface circuit 410 may generate data strobe signal DQS that toggles, etc. For example, control interface circuit 410 may generate data strobe signal DQS that is generated by a transitions from a static state (e.g., a high level or a low level) to a toggle state before the data DATA is transmitted, but is not limited thereto. The control interface circuit 410 may transfer the data signal DQ including the data DATA to the storage device 220 based on switching timing of the data strobe signal DQS and so on.

Die Steuerungs-Schnittstellenschaltung 410 kann das Bereit/Besetzt-Ausgabesignal nR/B von der Speichervorrichtung 220 über den achten Pin P28 empfangen, ist aber nicht darauf beschränkt. Die Steuerungs-Schnittstellenschaltung 410 kann Zustandsinformationen der Speichervorrichtung 220 auf der Grundlage des Bereit/Besetzt-Ausgabesignals nR/B usw. identifizieren.The control interface circuit 410 may receive the ready/busy output signal nR/B from the memory device 220 via the eighth pin P28, but is not limited thereto. The control interface circuit 410 may identify state information of the storage device 220 based on the ready/busy output signal nR/B and so on.

Die Speichereinrichtung 200 kann einen Lesebefehl über einen Datenbus DQ übertragen und kann prüfen, ob die Speichervorrichtung 220 bereit ist, eine Leseoperation auf der Grundlage des Bereit/Besetzt-Ausgabesignals nR/B durchzuführen, ist aber nicht darauf beschränkt. Wenn die Speichervorrichtung 220 bereit ist, die Leseoperation durchzuführen, kann die Speichereinrichtung 200 die aus dem Speicherzellenarray 400 gelesenen Daten über den Datenbus DQ usw. ausgeben. Das heißt, die Speichereinrichtung 200 kann basierend auf einem Zeitintervall von der Übertragung des Lesebefehls bis zur Ausgabe des Bereit/Besetzt-Ausgabesignals nR/B und eines Signals über den Datenbus DQ usw. prüfen, ob die gelesenen Daten aus einem ersten Bereich (z.B. einem Ortswarteschlangenbereich) und/oder einem verbleibenden Bereich gelesen wurden.The memory device 200 may transmit a read command via a data bus DQ and may check whether the memory device 220 is ready to perform a read operation based on the ready/busy output signal nR/B, but is not limited thereto. When the memory device 220 is ready to perform the read operation, the memory device 200 can output the data read from the memory cell array 400 via the data bus DQ and so on. That is, the memory device 200 may check whether the read data is from a first area (e.g., a location queue area) and/or a remaining area.

Die Speichereinrichtung 200 kann eine Mehrzahl von Kanälen CH1 bis CHm unterstützen, und die Speichervorrichtung 220 und/oder die Speichersteuerung 210 können über die Mehrzahl von Kanälen CH1 bis CHm usw. angeschlossen sein. Beispielsweise kann die Speichereinrichtung 200 als eine Speichereinrichtung, wie z. B. ein Solid-State-Laufwerk (SSD), ausgeführt sein, ist aber nicht darauf beschränkt.The storage device 200 may support a plurality of channels CH1 to CHm, and the storage device 220 and/or the storage controller 210 may be connected via the plurality of channels CH1 to CHm, and so on. For example, the storage device 200 can be configured as a storage device, such as a memory device. B. a solid state drive (SSD), embodied, but is not limited to.

Die Speichervorrichtung 220 kann eine Mehrzahl von nichtflüchtigen Speichervorrichtungen enthalten. Jede der nichtflüchtigen Speichervorrichtungen kann über einen entsprechenden Weg mit einem von mehreren Kanälen usw. verbunden sein. Beispielsweise können die nichtflüchtigen Speichervorrichtungen über Wege mit einem ersten Kanal verbunden sein und über Wege mit einem zweiten Kanal verbunden sein, sind aber nicht darauf beschränkt. In mindestens einer beispielhaften Ausführungsform kann jede der nichtflüchtigen Speichervorrichtungen als eine Speichereinheit ausgeführt sein, die in der Lage ist, nach einem individuellen Befehl von der Speichersteuerung 210 zu arbeiten, ist aber nicht darauf beschränkt. Zum Beispiel kann jede der nichtflüchtigen Speichervorrichtungen als ein Chip oder ein Würfel ausgeführt sein, aber die erfindungsgemäßen Konzepte sind darauf nicht beschränkt.Storage device 220 may include a plurality of non-volatile storage devices. Each of the non-volatile memory devices may be connected to one of a plurality of channels, etc., via a corresponding path. For example, but not limited to, the non-volatile memory devices may be via vias connected to a first channel and via vias to a second channel. In at least one example embodiment, each of the non-volatile memory devices may be embodied as a memory unit capable of operating upon an individual command from memory controller 210, but is not limited thereto. For example, each of the non-volatile memory devices may be embodied as a chip or a die, but the inventive concepts are not limited thereto.

10 ist ein Blockdiagramm eines Beispiels der Speichervorrichtung 220 von 1 nach mindestens einer beispielhaften Ausführungsform. Bezugnehmend auf 10 kann eine Speichervorrichtung 400 eine Steuerlogikschaltung 420, ein Speicherzellenarray 430, eine Seitenpuffereinheit 440, einen Spannungsgenerator 450 und/oder einen Zeilendekodierer 460 usw. enthalten, ist aber nicht darauf beschränkt. Die Speichervorrichtung 400 kann ferner die Speicherschnittstellenschaltung 410 und eine Spaltenlogik, einen Vordekodierer, einen Temperatursensor, einen Befehlsdekodierer, einen Adressdekodierer usw. enthalten. Nach einigen beispielhaften Ausführungsformen kann die Steuerlogikschaltung 420 als Verarbeitungsschaltung implementiert sein, oder mit anderen Worten, die in der Steuerlogikschaltung 420 enthaltene Verarbeitungsschaltung kann in der Lage sein, die Funktionalität der Steuerlogikschaltung 420, des Speicherzellenarrays 430, der Seitenpuffereinheit 440, des Spannungsgenerators 450, des Zeilendekodierers 460, der Speicherschnittstellenschaltung 410 usw. auszuführen. Die Verarbeitungsschaltung kann Hardware wie Prozessoren, Prozessorkerne, Logikschaltungen, Speichereinrichtungen usw., eine Hardware/Software-Kombination wie mindestens einen Prozessorkern, der Software ausführt und/oder einen beliebigen Befehlssatz usw. ausführt, oder eine Kombination davon umfassen. So kann die Verarbeitungsschaltung insbesondere ein FPGA (Field Programmable Gate Array), eine programmierbare Logikeinheit, eine anwendungsspezifische integrierte Schaltung (ASIC), ein Ein-Chip-System (SoC) usw. enthalten, ist aber nicht darauf beschränkt. 10 12 is a block diagram of an example of memory device 220 of FIG 1 according to at least one example embodiment. Referring to 10 A memory device 400 may include, but is not limited to, a control logic circuit 420, a memory cell array 430, a page buffer unit 440, a voltage generator 450, and/or a row decoder 460, etc. The memory device 400 may further include the memory interface circuit 410 and column logic, a pre-decoder, a temperature sensor, a command decoder, an address decoder, and so on. According to some example embodiments, the control logic circuit 420 may be implemented as processing circuitry, or in other words, the processing circuitry included in the control logic circuit 420 may be capable of performing the functionality of the control logic circuit 420, the memory cell array 430, the page buffer unit 440, the voltage generator 450, the row decoder 460, memory interface circuit 410, and so on. The processing circuitry may include hardware such as processors, processor cores, logic circuits, memory devices, etc., a hardware/software combination such as at least one processor core executing software and/or executing any instruction set, etc., or a combination thereof. In particular, the processing circuitry may include, but is not limited to, a field programmable gate array (FPGA), a programmable logic device, an application specific integrated circuit (ASIC), a system on chip (SoC), etc.

Die Steuerlogikschaltung 420 kann im Allgemeinen verschiedene Operationen in der Speichervorrichtung 400 steuern. Die Steuerlogikschaltung 420 kann als Reaktion auf einen Befehl CMD und/oder ein Adressensignal ADDR von der Speicherschnittstellenschaltung 410 verschiedene Steuersignale ausgeben. Zum Beispiel kann die Steuerlogikschaltung 420 ein Spannungssteuersignal CTRL_vol, eine Zeilenadresse X-ADDR und/oder eine Spaltenadresse Y-ADDR usw. ausgeben.In general, the control logic circuit 420 can perform various operations on the memory control device 400. Control logic circuit 420 may issue various control signals from memory interface circuit 410 in response to a CMD command and/or an ADDR address signal. For example, the control logic circuit 420 may output a voltage control signal CTRL_vol, a row address X-ADDR and/or a column address Y-ADDR, and so on.

Das Speicherzellenarray 430 kann eine Mehrzahl von Speicherblöcken BLK1 bis BLKz (z ist eine positive ganze Zahl) enthalten, und jeder der Mehrzahl von Speicherblöcken BLK1 bis BLKz kann eine Mehrzahl von Speicherzellen enthalten. Das Speicherzellenarray 430 kann über Bitleitungen BL mit der Seitenpuffereinheit 440 und über Wortleitungen WL, Strang-Auswahlleitungen SSL und/oder Masse-Auswahlleitungen GSL usw. mit dem Zeilendekodierer 460 verbunden sein.The memory cell array 430 may include a plurality of memory blocks BLK1 to BLKz (z is a positive integer), and each of the plurality of memory blocks BLK1 to BLKz may include a plurality of memory cells. The memory cell array 430 may be connected to the page buffer unit 440 via bit lines BL and to the row decoder 460 via word lines WL, string select lines SSL and/or ground select lines GSL and so on.

In mindestens einer beispielhaften Ausführungsform kann das Speicherzellenarray 430 ein 3D-Speicherzellenarray enthalten, und das 3D-Speicherzellenarray kann eine Mehrzahl von NAND-Strängen enthalten. Jeder der NAND-Stränge kann Speicherzellen enthalten, die mit den Wortleitungen verbunden sind, die vertikal auf einem Substrat gestapelt sind. Das US-Patent Nr. 7,679,133 , das US-Patent Nr. 8,553,466 , das US-Patent Nr. 8,654,587 , das US-Patent Nr. 8,559,235 und die US-Anmeldung Nr. 2011/0233648 sind durch Bezugnahme in ihrer Gesamtheit hierin enthalten. In mindestens einer beispielhaften Ausführungsform kann das Speicherzellenarray 430 ein 2D-Speicherzellenarray enthalten, und das 2D-Speicherzellenarray kann eine Mehrzahl von NAND-Strängen enthalten, die in Zeilen- und Spaltenrichtung usw. angeordnet sind.In at least one example embodiment, memory cell array 430 may include a 3D memory cell array, and the 3D memory cell array may include a plurality of NAND strings. Each of the NAND strings may include memory cells connected to word lines stacked vertically on a substrate. The US patent no. 7,679,133 , U.S. Patent No. 8,553,466 , U.S. Patent No. 8,654,587 , U.S. Patent No. 8,559,235 and US Application Serial No. 2011/0233648 are incorporated herein by reference in their entirety. In at least one example embodiment, memory cell array 430 may include a 2D memory cell array, and the 2D memory cell array may include a plurality of NAND strings arranged in row and column directions, and so on.

Die Seitenpuffereinheit 440 (z.B. Seitenpuffer, Seitenpufferschaltung usw.) kann eine Mehrzahl von Seitenpuffern PB1 bis PBn (n ist eine ganze Zahl größer oder gleich 3) enthalten, und die Mehrzahl von Seitenpuffern PB1 bis PBn kann mit den Speicherzellen über die Bitleitungen BL verbunden sein. Die Seitenpuffereinheit 440 kann mindestens eine der Bitleitungen BL in Reaktion auf die Spaltenadresse Y-ADDR auswählen. Die Seitenpuffereinheit 440 kann entsprechend dem Betriebsmodus als Schreibtreiber und/oder als Leseverstärker arbeiten. Zum Beispiel kann die Seitenpuffereinheit 440 während einer Programmoperation eine Bitleitungsspannung, die den zu programmierenden Daten entspricht, an eine ausgewählte Bitleitung anlegen. Während einer Leseoperation kann die Seitenpuffereinheit 440 die in einer Speicherzelle gespeicherten Daten ablesen, indem sie einen Strom und/oder eine Spannung einer ausgewählten Bitleitung abtastet.The page buffer unit 440 (e.g. page buffer, page buffer circuit, etc.) may include a plurality of page buffers PB1 to PBn (n is an integer greater than or equal to 3), and the plurality of page buffers PB1 to PBn may be connected to the memory cells via the bit lines BL . The page buffer unit 440 can select at least one of the bit lines BL in response to the column address Y-ADDR. The page buffer unit 440 can operate as a write driver and/or as a sense amplifier, depending on the operating mode. For example, the page buffer unit 440 may apply a bit line voltage corresponding to the data to be programmed to a selected bit line during a program operation. During a read operation, the page buffer unit 440 can read the data stored in a memory cell by sensing a current and/or a voltage of a selected bit line.

Der Spannungsgenerator 450 kann auf der Grundlage des Spannungssteuersignals CTRL_vol verschiedene Arten von Spannungen zur Durchführung der Programmoperation, der Leseoperation, einer Löschoperation usw. erzeugen. Zum Beispiel kann der Spannungsgenerator 450 eine Programmspannung, eine Lesespannung, eine Programmverifizierungsspannung, eine Löschspannung oder ähnliches als Wortleitungsspannung VWL usw. erzeugen.The voltage generator 450 can generate various kinds of voltages for performing the program operation, the read operation, an erase operation, etc. based on the voltage control signal CTRL_vol. For example, the voltage generator 450 can generate a program voltage, a read voltage, a program verify voltage, an erase voltage, or the like as the word line voltage VWL, and so on.

Der Zeilendekodierer 460 kann als Reaktion auf die Zeilenadresse X-ADDR eine der Wortleitungen WL und eine der Strang-Auswahlleitungen SSL auswählen. Beispielsweise kann der Zeilendekodierer 460 während der Programmoperation die Programmspannung und/oder die Programmverifizierungsspannung an die ausgewählte Wortleitung anlegen und während der Leseoperation die Lesespannung an die ausgewählte Wortleitung anlegen, ist aber nicht darauf beschränkt.The row decoder 460 can select one of the word lines WL and one of the string select lines SSL in response to the row address X-ADDR. For example, row decoder 460 may apply the program voltage and/or the program verify voltage to the selected word line during the program operation, and may apply the read voltage to the selected word line during the read operation, but is not limited thereto.

11 ist ein Diagramm, das ein System veranschaulicht, in dem die Speichereinrichtung 200 von 1 nach mindestens einer beispielhaften Ausführungsform eingesetzt wird. 11 FIG. 12 is a diagram illustrating a system in which the storage device 200 of FIG 1 according to at least one exemplary embodiment.

Ein System 1000 von 11 nach mindestens einer beispielhaften Ausführungsform kann ein mobiles System wie ein Mobiltelefon, ein Smartphone, ein Tablet, ein Personal Computer (PC), eine am Körper tragbare Vorrichtung, eine Vorrichtung für die Gesundheitsfürsorge und/oder eine Internet-of-Things-Vorrichtung (IoT) usw. sein, ist aber nicht darauf beschränkt. Das System 1000 von 11 ist jedoch nicht notwendigerweise auf das mobile System beschränkt und kann ein Laptop, ein Server, ein Mediaplayer und/oder eine Fahrzeugvorrichtung wie ein Navigationssystem usw. sein.A system 1000 of 11 According to at least one example embodiment, a mobile system, such as a cell phone, smartphone, tablet, personal computer (PC), wearable device, healthcare device, and/or Internet of Things (IoT ), etc., but is not limited to these. The system 1000 from 11 however, is not necessarily limited to the mobile system and may be a laptop, a server, a media player and/or a vehicle device such as a navigation system, etc.

Bezugnehmend auf 11 kann das System 1000 einen Hauptprozessor 1100, Speicher 1020a und 1020b sowie Speichereinrichtungen 1010a und 1010b enthalten und darüber hinaus mindestens eine Bildaufnahmevorrichtung 1410, eine Benutzereingabevorrichtung 1420, einen Sensor 1430, eine Kommunikationsvorrichtung 1440, eine Anzeige 1450, einen Lautsprecher 1460, eine Leistungsversorgungsvorrichtung 1470 und/oder eine Verbindungsschnittstelle 1480 usw. enthalten.Referring to 11 System 1000 may include a main processor 1100, memories 1020a and 1020b, and storage devices 1010a and 1010b, and also at least one image capture device 1410, a user input device 1420, a sensor 1430, a communication device 1440, a display 1450, a speaker 1460, a power supply device 1470, and /or include a connection interface 1480, etc.

Der Hauptprozessor 1100 kann die Gesamtoperation des Systems 1000 und insbesondere den Betrieb der anderen Komponenten des Systems 1000 steuern. Der Hauptprozessor 1100 kann als Mehrzweckprozessor, dedizierter Prozessor, Anwendungsprozessor oder ähnliches ausgeführt sein.The main processor 1100 can control the overall operation of the system 1000 and in particular the operation of the other components of the system 1000. Main processor 1100 may be embodied as a general purpose processor, dedicated processor, application processor, or the like.

Der Hauptprozessor 1100 kann einen oder mehrere Steuereinheitskerne 1110 und eine Steuerung 1120 zur Steuerung der Speicher 1020a und 1020b und/oder der Speichereinrichtungen 1010a und 1010b usw. enthalten. Nach mindestens einer beispielhaften Ausführungsform kann der Hauptprozessor 1100 ferner einen Beschleunigerblock 1130 enthalten, der eine dedizierte Schaltung für Hochgeschwindigkeitsdatenoperationen ist, wie z. B. eine Datenoperation der künstlichen Intelligenz (KI) usw., aber nicht darauf beschränkt ist. Der Beschleunigerblock 1130 kann eine Grafikverarbeitungseinheit (GPU), eine neuronale Verarbeitungseinheit (NPU) und/oder eine Datenverarbeitungseinheit (DPU) usw. enthalten und kann als Chip ausgeführt sein, der physisch von den anderen Komponenten des Hauptprozessors 1100 unabhängig ist, ist aber nicht darauf beschränkt.Main processor 1100 may include one or more controller cores 1110 and a controller 1120 for controlling memories 1020a and 1020b and/or storage devices 1010a and 1010b, and so on. According to at least one example embodiment, the main processor 1100 may further include an accelerator block 1130, which is dedicated circuitry for high-speed data operations, such as e.g. B. but not limited to an artificial intelligence (AI) data operation, etc. The accelerator block 1130 may include a graphics processing unit (GPU), a neural processing unit (NPU), and/or a data processing unit (DPU), etc., and may be implemented as a chip that is physically independent of, but not on, the other components of the main processor 1100 limited.

Die Speicher 1020a und 1020b können als Hauptspeichervorrichtungen des Systems 1000 verwendet werden und können flüchtige Speicher wie SRAM und/oder DRAM, aber auch nichtflüchtige Speicher wie Flash-Speicher, PRAM und/oder RRAM usw. enthalten. Die Speicher 1020a und 1020b können im gleichen Gehäuse wie der Hauptprozessor 1100 implementiert sein, sind aber nicht darauf beschränkt.Memory 1020a and 1020b may be used as the main memory devices of system 1000 and may include volatile memory such as SRAM and/or DRAM, but also non-volatile memory such as flash memory, PRAM and/or RRAM, and so on. The memories 1020a and 1020b can be implemented in the same housing as the main processor 1100, but are not limited to this.

Die Speichereinrichtungen 1010a und 1010b können als nichtflüchtige Speichereinrichtungen fungieren, die Daten unabhängig davon speichern, ob sie mit Leistung versorgt werden oder nicht, und können eine relativ größere Speicherkapazität als die Speicher 1200a und 1200b aufweisen. Die Speichereinrichtungen 1010a und 1010b können Speichersteuerungen 1200a und 1200b sowie nichtflüchtige Speicher (NVM) 1300a und 1300b enthalten, die Daten unter der Steuerung der Speichersteuerungen 1200a und 1200b speichern, aber die beispielhaften Ausführungsformen sind darauf nicht beschränkt. Die NVM-Speicher 1300a und 1300b können 2D- und/oder 3D-V-NAND-Flash-Speicher, aber auch andere Arten von NVMs wie PRAM und/oder RRAM usw. enthalten.Storage devices 1010a and 1010b may function as non-volatile storage devices that store data regardless of whether they are powered or not, and may have a relatively larger storage capacity than memories 1200a and 1200b. Memory devices 1010a and 1010b may include memory controllers 1200a and 1200b and non-volatile memory (NVM) 1300a and 1300b storing data under the control of memory controllers 1200a and 1200b, but the example embodiments are not so limited. The NVM memories 1300a and 1300b may include 2D and/or 3D V-NAND flash memory, but also other types of NVMs such as PRAM and/or RRAM, and so on.

Die Speichereinrichtungen 1010a und 1010b können im System 1000 enthalten sein, um physisch vom Hauptprozessor 1100 getrennt zu sein, oder sie können im selben Gehäuse wie der Hauptprozessor 1100 enthalten sein. Darüber hinaus können die Speichereinrichtungen 1010a und 1010b die gleiche Form wie eine Speicherkarte aufweisen und daher über eine Schnittstelle wie die nachstehend zu beschreibende Verbindungsschnittstelle 1480 lösbar mit den anderen Komponenten des Systems 1000 verbunden werden. Die Speichereinrichtungen 1010a und 1010b können Vorrichtungen sein, auf die Standardkonventionen wie Universal Flash Storage (UFS) angewendet werden, sind aber nicht darauf beschränkt.Storage devices 1010a and 1010b may be included in system 1000 to be physically separate from main processor 1100 or may be included in the same housing as main processor 1100. Additionally, storage devices 1010a and 1010b may be in the same form as a memory card and thus may be releasably connected to the other components of system 1000 via an interface such as connection interface 1480, to be described below. Storage devices 1010a and 1010b may be, but are not limited to, devices to which standard conventions such as Universal Flash Storage (UFS) apply.

Die Bilderfassungsvorrichtung 1410 kann ein Standbild oder ein bewegtes Bild (z. B. ein Video usw.) aufnehmen und kann eine Kamera, einen Camcorder und/oder eine Webcam usw. enthalten.Image capture device 1410 may capture a still or moving image (e.g., video, etc.) and may include a camera, camcorder, and/or webcam, etc.

Die Benutzereingabevorrichtung 1420 kann verschiedene Arten von Dateneingaben von einem Benutzer des Systems 1000 empfangen und kann ein Touchpad, ein Tastenarray, eine Tastatur, eine Maus und/oder ein Mikrofon usw. enthalten.User input device 1420 may receive various types of data input from a user of system 1000 and may include a touchpad, button array, keyboard, mouse, and/or microphone, and so on.

Der Sensor 1430 kann verschiedene Arten von physikalischen Größen erfassen, die von der Außenseite des Systems 1000 erhalten werden können, und die erfassten physikalischen Größen in elektrische Signale umwandeln. Der Sensor 1430 kann ein Temperatursensor, ein Drucksensor, ein Beleuchtungssensor, ein Positionssensor, ein Beschleunigungssensor, ein Biosensor und/oder ein Gyroskop usw. sein.The sensor 1430 can detect various types of physical quantities that can be obtained from the outside of the system 1000 and convert the detected physical quantities into electrical signals. The sensor 1430 can be a temperature sensor, a pressure sensor, an illumination sensor, a position sensor, an accelerometer sensor, a biosensor and/or a gyroscope, etc.

Die Kommunikationsvorrichtung 1440 kann die Übertragung und den Empfang von Signalen mit anderen Vorrichtungen außerhalb des Systems 1000 entsprechend verschiedener Kommunikationsprotokollen durchführen. Die Kommunikationsvorrichtung 1440 kann eine Antenne, einen Transceiver und/oder ein Modem usw. enthalten.The communication device 1440 may transmit and receive signals with other devices external to the system 1000 according to various communication protocols. Communications device 1440 may include an antenna, transceiver, and/or modem, and so on.

Die Anzeige 1450 und der Lautsprecher 1460 können als Ausgabevorrichtungen fungieren, die visuelle und akustische Informationen an einen Benutzer des Systems 1000 ausgeben.The display 1450 and the speaker 1460 can function as output devices that provide visual and audio information to a user of the system 1000 .

Die Leistungsversorgungseinrichtung 1470 kann die von einer im System 1000 eingebauten Batterie (nicht dargestellt) und/oder einer externen Leistungsversorgung gelieferte Leistung in geeigneter Weise umwandeln und die umgewandelte Leistung jeder Komponente des Systems 1000 zuführen.The power supply device 1470 can suitably convert the power provided by a battery (not shown) built into the system 1000 and/or an external power supply and supply the converted power to each component of the system 1000 .

Die Verbindungsschnittstelle 1480 kann das System 1000 und eine externe Vorrichtung verbinden, das Daten mit dem System 1000 austauschen kann, wenn es mit dem System 1000 verbunden ist. Die Verbindungsschnittstelle 1480 kann entsprechend verschiedenen Schnittstellenverfahren implementiert werden, wie Advanced Technology Attachment (ATA), Serial ATA (SATA), External 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), eine Secure-Digital-Karte (SD), eine Multi-Media-Karte (MMC), eine eingebettete Multi-Media-Karte (eMMC), Universal-Flash-Speicher (UFS), eingebettetes UFS (eUFS), eine Compact-Flash-Kartenschnittstelle (CF) und dergleichen.Connection interface 1480 can connect system 1000 and an external device that can exchange data with system 1000 when connected to system 1000 . The connection interface 1480 can be implemented according to various interface methods such as Advanced Technology Attachment (ATA), Serial ATA (SATA), External 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), a Secure Digital Card (SD), a Multi-Media Card (MMC), an embedded Multi-Media Card (eMMC), Universal Flash Memory (UFS), a embedded UFS (eUFS), a compact flash card interface (CF) and the like.

Obwohl verschiedene beispielhafte Ausführungsformen der erfindungsgemäßen Konzepte vorstehend unter Bezugnahme auf die beigefügten Zeichnungen beschrieben wurden, sind die erfindungsgemäßen Konzepte nicht darauf beschränkt und können in verschiedenen unterschiedlichen Formen verwirklicht werden. Fachleute werden verstehen, dass die beispielhaften Ausführungsformen der erfindungsgemäßen Konzepte in anderen spezifischen Formen umgesetzt werden können, ohne vom technischen Geist oder den wesentlichen Merkmalen der erfindungsgemäßen Konzepte abzuweichen. Dementsprechend sollten die hier dargelegten beispielhaften Ausführungsformen nur als Beispiele und nicht als Einschränkung betrachtet werden.Although various exemplary embodiments of the inventive concepts have been described above with reference to the accompanying drawings, the inventive concepts are not limited thereto and can be embodied in various different forms. Those skilled in the art will appreciate that the example embodiments of the inventive concepts may be embodied in other specific forms without departing from the spirit or essential characteristics of the inventive concepts. Accordingly, the example embodiments set forth herein should be considered by way of example only and not limitation.

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN DESCRIPTION

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.This list of documents cited by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturPatent Literature Cited

  • US 7679133 [0085]US7679133 [0085]
  • US 8553466 [0085]US8553466 [0085]
  • US 8654587 [0085]US8654587 [0085]
  • US 8559235 [0085]US8559235 [0085]

Claims (20)

Speichereinrichtung, umfassend: eine Speichervorrichtung, die mindestens einen ersten Single-Level-Zellen(SLC)-Bereich, einen zweiten SLC-Bereich und mindestens einen Multi-Level-Zellen(MLC)-Bereich enthält, wobei der erste SLC-Bereich eine höhere Datenlesegeschwindigkeit als der zweite SLC-Bereich aufweist und der zweite SLC-Bereich eine höhere Datenlesegeschwindigkeit als der mindestens eine MLC-Bereich aufweist; und eine Speichersteuerung, die eingerichtet ist, um Daten aus der Speichervorrichtung zu lesen und die Migration der Daten zwischen dem ersten SLC-Bereich, dem zweiten SLC-Bereich und dem mindestens einem MLC-Bereich zu steuern.Storage device, comprising: a memory device including at least a first single-level cell (SLC) array, a second SLC array, and at least one multi-level cell (MLC) array, the first SLC array having a higher data read speed than the second has an SLC area and the second SLC area has a higher data reading speed than the at least one MLC area; and a memory controller configured to read data from the memory device and to control the migration of the data between the first SLC area, the second SLC area and the at least one MLC area. Speichereinrichtung nach Anspruch 1, wobei die Speichersteuerung ferner eingerichtet ist, um: die Migration der Daten zwischen dem ersten SLC-Bereich, dem zweiten SLC-Bereich und dem MLC-Bereich auf der Grundlage von Merkmalen der Daten zu steuern.storage facility claim 1 , wherein the memory controller is further configured to: control the migration of the data between the first SLC domain, the second SLC domain, and the MLC domain based on characteristics of the data. Speichereinrichtung nach Anspruch 2, wobei die Merkmale der Daten mindestens eines von einer Schreibzeit der in die Speichervorrichtung programmierten Daten, einer Lesezählung der Daten oder beliebige Kombinationen davon umfassen.storage facility claim 2 wherein the characteristics of the data include at least one of a write time of the data programmed into the memory device, a read count of the data, or any combination thereof. Speichereinrichtung nach Anspruch 3, wobei die Speichersteuerung ferner eingerichtet ist, um: die auf dem zweiten SLC-Bereich oder dem MLC-Bereich gespeicherten Daten auf den ersten SLC-Bereich als Reaktion darauf zu migrieren, dass eine Anzahl von in den Daten enthaltenen Fehlern kleiner als ein Fehlerschwellenwert ist und eine Schreibzeit der Daten kleiner als eine Migrationsschwellenwertzeit ist.storage facility claim 3 , wherein the memory controller is further configured to: migrate the data stored on the second SLC domain or the MLC domain to the first SLC domain in response to a number of errors contained in the data being less than an error threshold and a writing time of the data is less than a migration threshold time. Speichereinrichtung nach Anspruch 3, wobei die Speichersteuerung ferner eingerichtet ist, um: die auf dem zweiten SLC-Bereich oder dem MLC-Bereich gespeicherten Daten als Reaktion auf eine Anzahl von Fehlern, die in den Daten enthalten sind, die größer oder gleich einem Fehlerschwellenwert ist, und eine Lesezählung der Daten, die kleiner als ein Migrationsschwellenwert ist, aufrechtzuerhalten.storage facility claim 3 , wherein the memory controller is further configured to: read the data stored on the second SLC area or the MLC area in response to a number of errors contained in the data being greater than or equal to an error threshold, and a read count of data smaller than a migration threshold. Speichereinrichtung nach Anspruch 3, wobei die Speichersteuerung weiterhin eingerichtet ist, um: als Reaktion darauf, dass die Lesezählung der Daten größer oder gleich einer Migrationsschwellenwertzahl ist, die in dem zweiten SLC-Bereich oder dem MLC-Bereich gespeicherten Daten in den ersten SLC-Bereich zu migrieren, und die im ersten SLC-Bereich gespeicherten Daten beizubehalten.storage facility claim 3 , wherein the memory controller is further configured to: in response to the read count of the data being greater than or equal to a migration threshold number, migrate the data stored in the second SLC region or the MLC region to the first SLC region, and retain the data stored in the first SLC area. Speichereinrichtung nach Anspruch 1, wobei die Speichersteuerung ferner eingerichtet ist, um: die Größen des ersten SLC-Bereichs, des zweiten SLC-Bereichs und des MLC-Bereichs der Speichervorrichtung auf der Grundlage eines Datenzugriffsmusters der Speichersteuerung dynamisch anzupassen.storage facility claim 1 wherein the memory controller is further configured to: dynamically adjust the sizes of the first SLC area, the second SLC area, and the MLC area of the memory device based on a data access pattern of the memory controller. Speichereinrichtung nach Anspruch 1, wobei der MLC-Bereich mindestens eine von einer Multi-Level-Zelle, einer Triple-Level-Zelle, einer Quad-Level-Zelle oder einer beliebige Kombinationen davon umfasst.storage facility claim 1 , wherein the MLC region comprises at least one of a multi-level cell, a triple-level cell, a quad-level cell, or any combination thereof. Betriebsverfahren für eine Speichersteuerung, umfassend: Lesen von Daten aus einem SLC-Bereich einer Speichervorrichtung; und Migrieren der Daten zu einem MLC-Bereich der Speichervorrichtung auf der Grundlage einer Schreibzeitreihenfolge der Daten und einer Lesezählung der Daten, wobei die Schreibzeitreihenfolge eine Reihenfolge angibt, in der die Daten in den SLC-Bereich geschrieben wurden, und die Lesezählung eine Anzahl von Malen angibt, die die Daten gelesen wurden.A method of operation for a memory controller, comprising: reading data from an SLC area of a storage device; and Migrating the data to an MLC area of the storage device based on a write time order of the data and a read count of the data, the write time order indicating an order in which the data was written to the SLC area and the read count indicating a number of times that the data was read. Betriebsverfahren nach Anspruch 9, wobei der SLC-Bereich ferner einen Ortswarteschlangenbereich; und das Verfahren ferner Speichern der Daten in dem lokalen Warteschlangenbereich auf der Grundlage der Merkmale der Daten umfasst.operating procedures claim 9 wherein the SLC area further comprises a location queue area; and the method further comprises storing the data in the local queue area based on the characteristics of the data. Speichersteuerung, umfassend: Verarbeitungsschaltungen, die eingerichtet sind, um, eine Leseanforderung für Daten zu übertragen, die in einem ersten SLC-Bereich, einem zweiten SLC-Bereich oder einem MLC-Bereich gespeichert sind, die in einer Speichervorrichtung enthalten sind, wobei der erste SLC-Bereich eine höhere Datenlesegeschwindigkeit als der zweite SLC-Bereich aufweist und der zweite SLC-Bereich eine höhere Datenlesegeschwindigkeit als der MLC-Bereich aufweist; und einen Speicherplatz der Daten in der Speichervorrichtung auf der Grundlage von Nutzungsmerkmalen der Daten zu ändern.Storage control, comprising: processing circuits arranged to: transmit a read request for data stored in a first SLC area, a second SLC area or an MLC area included in a memory device, the first SLC area having a higher data reading speed than the second SLC area and the second SLC area having a higher data reading speed than the MLC area having; and change a location of the data in the storage device based on usage characteristics of the data. Speichersteuerung nach Anspruch 11, wobei die Verarbeitungsschaltung ferner eingerichtet ist, um: die Daten von der Speichervorrichtung als Reaktion auf die Leseanforderung zu empfangen; Fehler in den empfangenen Daten zu korrigieren und die Anzahl der in den empfangenen Daten enthaltenen Fehler zu bestimmen; und den Speicherort der empfangenen Daten auf der Grundlage der ermittelten Anzahl von Fehlern zu ändern.memory control after claim 11 wherein the processing circuitry is further configured to: receive the data from the storage device in response to the read request; correct errors in the received data and determine the number of errors contained in the received data; and the location of the received data on the based on the determined number of errors. Speichersteuerung nach Anspruch 11, wobei die Nutzungsmerkmale der Daten mindestens eine von einer Schreibzeit der Daten, einer letzten Lesezeit, einer Lesezählung, einer Fehlerrate oder beliebige Kombinationen davon umfassen.memory control after claim 11 wherein the usage characteristics of the data include at least one of a write time of the data, a last read time, a read count, an error rate, or any combination thereof. Speichersteuerung nach Anspruch 13, wobei die Verarbeitungsschaltung ferner eingerichtet ist, um: die Daten von dem ersten SLC-Bereich zum zweiten SLC-Bereich oder zum MLC-Bereich als Reaktion darauf, dass der Lesezählerstand kleiner als ein Migrationsschwellenwert ist, zu migrieren.memory control after Claim 13 wherein the processing circuitry is further configured to: migrate the data from the first SLC domain to the second SLC domain or to the MLC domain in response to the read count being less than a migration threshold. Speichersteuerung nach Anspruch 12, wobei die Verarbeitungsschaltung ferner eingerichtet ist, um: als Reaktion darauf, dass die empfangenen Daten nicht korrigierbar sind, eine zweite Leseanforderung der Daten an die Speichervorrichtung zu senden.memory control after claim 12 wherein the processing circuitry is further configured to: in response to the received data being uncorrectable, send a second read request of the data to the storage device. Speichersteuerung nach Anspruch 13, wobei die Verarbeitungsschaltung ferner eingerichtet ist, um: als Reaktion darauf, dass der Speicherort der Daten der erste SLC-Bereich ist und eine Schreibzeit der Daten kleiner als eine Migrationsschwellenwertzeit ist, den Speicherort der Daten im ersten SLC-Bereich beizubehalten.memory control after Claim 13 wherein the processing circuitry is further configured to: in response to the storage location of the data being the first SLC area and a write time of the data being less than a migration threshold time, maintaining the storage location of the data in the first SLC area. Speichersteuerung nach Anspruch 11, wobei die Verarbeitungsschaltung ferner eingerichtet ist, um: als Reaktion darauf, dass der Speicherort der Daten nicht der erste SLC-Bereich ist, basierend auf einer Lesezählung der Daten, die größer oder gleich einer Migrationsschwellenwertzählung ist, die Daten in den ersten SLC-Bereich zu migrieren.memory control after claim 11 , wherein the processing circuitry is further configured to: in response to the storage location of the data not being the first SLC region, based on a read count of the data being greater than or equal to a migration threshold count, the data into the first SLC region to migrate. Speichersteuerung nach Anspruch 11, wobei die Verarbeitungsschaltung ferner eingerichtet ist, um: auf der Grundlage einer Schreibzeitreihenfolge der Daten Daten des ersten SLC-Bereichs oder des zweiten SLC-Bereichs in den MLC-Bereich zu migrieren.memory control after claim 11 wherein the processing circuitry is further configured to: migrate data from the first SLC area or the second SLC area to the MLC area based on a write time order of the data. Speichersteuerung nach Anspruch 18, wobei die Verarbeitungsschaltung ferner eingerichtet ist, um: als Reaktion auf eine Lesezählung der Daten, die einen Migrationsschwellenwert überschreitet, die Daten in den ersten SLC-Bereich zu migrieren.memory control after Claim 18 , wherein the processing circuitry is further configured to: migrate the data to the first SLC region in response to a read count of the data exceeding a migration threshold. Speichersteuerung nach Anspruch 11, wobei die Verarbeitungsschaltung ferner eingerichtet ist, um: die Größen des ersten SLC-Bereichs, des zweiten SLC-Bereichs und des MLC-Bereichs auf der Grundlage eines Datenzugriffsmusters dynamisch anzupassen.memory control after claim 11 , wherein the processing circuitry is further configured to: dynamically adjust the sizes of the first SLC area, the second SLC area, and the MLC area based on a data access pattern.
DE102021118940.3A 2020-11-20 2021-07-22 MEMORY CONTROL AND STORAGE DEVICE WITH THE SAME Pending DE102021118940A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2020-0156774 2020-11-20
KR1020200156774A KR20220069543A (en) 2020-11-20 2020-11-20 Storage system

Publications (1)

Publication Number Publication Date
DE102021118940A1 true DE102021118940A1 (en) 2022-05-25

Family

ID=81452881

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021118940.3A Pending DE102021118940A1 (en) 2020-11-20 2021-07-22 MEMORY CONTROL AND STORAGE DEVICE WITH THE SAME

Country Status (4)

Country Link
US (1) US11567685B2 (en)
KR (1) KR20220069543A (en)
CN (1) CN114518843A (en)
DE (1) DE102021118940A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220099848A (en) * 2021-01-07 2022-07-14 에스케이하이닉스 주식회사 Controller and memory system having the controller
US20220229574A1 (en) * 2021-01-20 2022-07-21 Micron Technology, Inc. Data migration techniques
US11526286B1 (en) * 2021-06-29 2022-12-13 Amazon Technologies, Inc. Adaptive snapshot chunk sizing for snapshots of block storage volumes
JP2023045033A (en) * 2021-09-21 2023-04-03 キオクシア株式会社 memory system
US11853572B2 (en) * 2022-05-05 2023-12-26 Western Digital Technologies, Inc. Encoding-aware data routing

Citations (4)

* 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
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 (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8078794B2 (en) 2000-01-06 2011-12-13 Super Talent Electronics, Inc. Hybrid SSD using a combination of SLC and MLC flash memory arrays
US9536970B2 (en) 2010-03-26 2017-01-03 Samsung Electronics Co., Ltd. Three-dimensional semiconductor memory devices and methods of fabricating the same
KR101861170B1 (en) 2011-08-17 2018-05-25 삼성전자주식회사 Memory system including migration manager
US8977803B2 (en) 2011-11-21 2015-03-10 Western Digital Technologies, Inc. Disk drive data caching using a multi-tiered memory
US9176862B2 (en) * 2011-12-29 2015-11-03 Sandisk Technologies Inc. SLC-MLC wear balancing
TWI606336B (en) 2016-04-21 2017-11-21 慧榮科技股份有限公司 Memory device and control unit thereof, and data storage method for memory device
KR20180031289A (en) * 2016-09-19 2018-03-28 삼성전자주식회사 Storage device and method of operating the storage device
US10372531B2 (en) * 2017-01-05 2019-08-06 Texas Instruments Incorporated Error-correcting code memory
CN107608625B (en) 2017-08-11 2020-09-11 记忆科技(深圳)有限公司 Method for improving reading performance of fixed storage equipment
US10545685B2 (en) 2017-08-30 2020-01-28 Micron Technology, Inc. SLC cache management
US10372342B2 (en) 2017-10-02 2019-08-06 Western Digital Technologies, Inc. Multi-level cell solid state device and method for transferring data between a host and the multi-level cell solid state device
US10698610B2 (en) 2018-02-23 2020-06-30 Western Digital Technologies, Inc. Storage system and method for performing high-speed read and write operations
US11288011B2 (en) * 2020-03-26 2022-03-29 Western Digital Technologies, Inc. Non-volatile memory array with write failure protection for multi-level cell (MLC) storage elements using coupled writes

Patent Citations (4)

* 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
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
US11567685B2 (en) 2023-01-31
KR20220069543A (en) 2022-05-27
US20220164123A1 (en) 2022-05-26
CN114518843A (en) 2022-05-20

Similar Documents

Publication Publication Date Title
DE102014204716B4 (en) Non-volatile memory device and programming method for an operating system (OS) image
DE102021118940A1 (en) MEMORY CONTROL AND STORAGE DEVICE WITH THE SAME
DE102017128939A1 (en) System and method for dynamically and adaptively merging interrupts
DE102015012566A1 (en) MULTILAYER CONCEPT FOR LOGICAL STORAGE MANAGEMENT
DE112016004629T5 (en) Data coding techniques for a device
DE102008033518B4 (en) Data processing method for a solid-state disk control unit, solid-state disk control unit and data storage element
DE112020000139T5 (en) NAME SPACES NOT SEQUENTIALLY DIVIDED INTO ZONES
DE102020130044A1 (en) TECHNIQUES FOR PREVENTING READ INTERFERENCE IN NAND MEMORY
DE102016009807A1 (en) CORRELING PHYSICAL SIDE ADDRESSES FOR SOFT DECISION DECODING
DE102013016609A1 (en) Apparatus and method for a low energy, low latency and high capacity storage class memory
DE112018005505T5 (en) METHOD AND DEVICE FOR SPECIFICATING READ-VOLTAGE DISPLACEMENTS FOR A READ COMMAND
DE102008036822A1 (en) Method for storing data in a solid state memory, solid state memory system and computer system
DE112018000230T5 (en) System and method for speculative instruction execution using the control memory buffer
DE112019005511T5 (en) KEEP WRITE COMMANDS IN ZONED NAME SPACES
DE112019000161T5 (en) MEMORY CACHE MANAGEMENT
DE102020211544A1 (en) CONTROL, OPERATING PROCEDURES OF THE CONTROL AND STORAGE DEVICE WITH THE SAME
DE112016000696B4 (en) Scheduling scheme(ta) for a multi-chip memory device
DE112020005787T5 (en) IMPROVED FILE SYSTEM SUPPORT FOR ZONE NAMESPACE STORAGE
DE112020005395T5 (en) CAPACITY EXPANSION FOR STORAGE SUBSYSTEMS
DE112021000776T5 (en) MANAGEMENT OF WRITE OPERATIONS IN A NON-VOLATILE MEMORY DEVICE USING A VARIABLE READ-OUT VOLTAGE LEVEL
DE102021130730A1 (en) Storage controller and storage device each using a fragmentation ratio and method of operation therefor
DE102021006246A1 (en) Doubly nested programming of a memory device in a memory subsystem
DE102022101607A1 (en) HOST MEMORY BUFFER ALLOCATION MANAGEMENT
DE102022102980A1 (en) OPERATIONAL TECHNIQUES OF DATA MOVEMENT
DE112021001848T5 (en) MULTIPLE PIN CONFIGURATIONS OF STORAGE DEVICES

Legal Events

Date Code Title Description
R012 Request for examination validly filed