DE102008036822A1 - Verfahren zum Speichern von Daten in einem Solid-State-Speicher, Solid-State-Speichersystem und Computersystem - Google Patents
Verfahren zum Speichern von Daten in einem Solid-State-Speicher, Solid-State-Speichersystem und Computersystem Download PDFInfo
- Publication number
- DE102008036822A1 DE102008036822A1 DE102008036822A DE102008036822A DE102008036822A1 DE 102008036822 A1 DE102008036822 A1 DE 102008036822A1 DE 102008036822 A DE102008036822 A DE 102008036822A DE 102008036822 A DE102008036822 A DE 102008036822A DE 102008036822 A1 DE102008036822 A1 DE 102008036822A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- memory
- layer
- determination
- storage layer
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0605—Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
- G06F3/0649—Lifecycle management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
Abstract
Ein Solid-State-Speichersystem umfasst eine erste Speicherschicht, eine zweite Speicherschicht und eine Speichersteuereinheit, die dazu ausgebildet ist, eine erste Bestimmung durchzuführen, ob empfangene Daten heiße Daten oder kalte Daten sind, die empfangenen Daten, die während der ersten Bestimmung als heiße Daten bestimmt worden sind, in der ersten Speicherschicht zu speichern, und die empfangenen Daten, die während der ersten Bestimmung als kalte Daten bestimmt worden sind, in der zweiten Speicherschicht zu speichern, wobei die Speichersteuereinheit weiter dazu ausgebildet ist, eine zweite Bestimmung durchzuführen, ob die in der ersten Speicherschicht gespeicherten Daten heiße Daten oder kalte Daten sind, und Daten, die während der zweiten Bestimmung als kalte Daten bestimmt worden sind, von der ersten Speicherschicht in die zweite Speicherschicht zu überführen.
Description
- Die vorliegende Erfindung betrifft ein Verfahren zum Speichern von Daten in einem Solid-State-Speicher (SSM), ein Solid-State-Speichersystem und ein Computersystem. Beispiele des SSM umfassen den Hauptspeicher eines Computersystems und ein Solid-State-Laufwerk bzw. eine Solid-State-Platte (SSD) eines Computersystems.
- Ein Solid-State-Laufwerk (SSD) ist eine Datenspeichervorrichtung, die typischerweise eine herkömmliche Festplatte (HDD) emuliert und daher die HDD in den meisten Anwendungen ohne Weiteres ersetzt. Im Gegensatz zum Drehscheibenmedium einer HDD verwendet ein SSD einen Solid-State-Speicher zum Speichern von Daten. Ohne bewegliche Teile kann ein SSD in hohem Maße Suchzeit, Latenz und andere elektromechanische Verzögerungen und Ausfälle eliminieren, die mit einer herkömmlichen HDD in Zusammenhang stehen.
- Ein SSD ist üblicherweise entweder aus einem NAND-Flashspeicher (nichtflüchtig) oder einem SDRAM (flüchtig) gebildet.
- SSDs, die auf einem flüchtigen Speicher, wie SDRAM, basieren, sind durch einen schnellen Datenzugriff gekennzeichnet und werden primär zum Beschleunigen von Anwendungen verwendet, die ansonsten durch die Latenz der Plattenlaufwerke gebremst würden. Der flüchtige Speicher der DRAM-basierten SSDs erfordert typischerweise den Einsatz einer internen Batterie und eines Back-up-Plattensystems, um Datenpersistenz zu gewährleisten. Wenn die Energiezufuhr aussetzt, stellt die Batterie für einen ausreichenden Zeitraum Energie zur Verfügung, um Daten aus dem SDRAM in das Back-up-Plattensystem zu kopieren. Bei Wiederherstellung der Energiezufuhr werden Daten von der Backup-Platte in den SDRAM zurückkopiert, wobei zu diesem Zeitpunkt das SSD seine normale Funktion wieder aufnimmt.
- Die meisten SSD-Hersteller verwenden jedoch nichtflüchtige Flashspeicher, um stabilere und kompaktere Alternativen zu DRAM-basierten SSDs zur Verfügung zu stellen. Diese auf Flashspeichern basierenden SSDs, die als Flashlaufwerke bzw. Flashplatten bekannt sind, erfordern keine Batterien, was es den Herstellern ermöglicht, Standardfestplattenlaufwerke leichter nachzubilden. Außerdem erhalten nichtflüchtige Flash-SSDs bei einem Energieausfall den Speicherinhalt.
- Ein herkömmlicher Einpegelzellen(SLC)-Flash ist derart ausgebildet, dass er ein Bit pro Speicherzelle speichert, während ein Mehrpegelzellen(MLC)-Flash derart ausgebildet ist, dass er zwei oder mehr Bits pro Speicherzelle speichert. Auf diese Weise können Flash-SSDs Mehrpegelzellen(MLC)-Speicherbänke verwenden, um die Kapazität zu erhöhen. Flash-SSDs leiden jedoch in der Regel unter relativ geringen Random-Write-Geschwindigkeiten und dieser funktionelle Nachteil wird mit relativ geringen Geschwindigkeiten des MLC-Flash noch weiter verschärft. Daher wurde vorgeschlagen, SSDs mit zwei Arten von Flashspeichermedien zu versehen, nämlich SLC-Speicherbänken mit niedriger Kapazität und MLC-Speicherbänken mit höherer Kapazität. Bei einer solchen Konfiguration können häufig genutzte Daten (z. B. Verzeichnis- und/oder Log-Informationen) in den schnelleren SLC-Bänken gespeichert werden, während weniger häufig genutzte Daten (z. B. Musikdateien, Bilder usw.) in den langsameren MLC-Bänken gespeichert werden können.
- Der Erfindung liegt die technische Aufgabe zugrunde, ein Verfahren zum Speichern von Daten in einem Solid-State-Speicher, ein Solid-State-Speichersystem und ein Computersystem zur Verfügung zu stellen, die im Vergleich zu Ausführungsformen des Standes der Technik verbesserte Eigenschaften aufweisen.
- Die Erfindung löst diese Aufgabe durch ein Verfahren zum Speichern von Daten in einem Solid-State-Speicher mit den Merkmalen von Anspruch 1 oder 15, ein Solid-State-Speichersystem mit den Merkmalen von Anspruch 18 oder 27 und ein Computersystem mit den Merkmalen von Anspruch 29.
- Vorteilhafte Ausführungsformen der Erfindung sind in den Unteransprüchen angeführt, deren Wortlaut hiermit durch Bezugnahme zum Inhalt dieser Beschreibung gemacht wird, um unnötige Textwiederholungen zu vermeiden.
- Vorteilhafte Ausführungsformen der Erfindung, wie sie unten ausführlich beschrieben werden, sind in den Zeichnungen dargestellt. Hierbei zeigt/zeigen:
-
1 ein Blockdiagramm eines Solid-State-Laufwerks (SSD) gemäß einer Ausführungsform der vorliegenden Erfindung, -
2 und3 Blockdiagramme zum Beschreiben eines nichtflüchtigen Speichermediums des SSD von1 gemäß einer Ausführungsform der vorliegenden Erfindung, -
4 und5 Blockdiagramme zum Beschreiben alternativer Wege zum Koppeln eines nichtflüchtigen Speichermediums mit einer Schnittstelle im SSD von1 gemäß Ausführungsformen der vorliegenden Erfindung, -
6 bis8 Flussdiagramme zum Beschreiben von Verfahren zum Zuweisen von Daten in Bereiche eines nichtflüchtigen Speichermediums im SSD von1 gemäß Ausführungsformen der vorliegenden Erfindung, -
9 ein Blockdiagramm des Computersystems, das ein SSD gemäß einer Ausführungsform der vorliegenden Erfindung beinhaltet, und -
10 und11 Blockdiagramme eines Hauptspeichers gemäß Ausführungsformen der vorliegenden Erfindung. -
1 stellt ein Blockdiagramm eines Solid-State-Laufwerks (SSD)1000 gemäß einer Ausführungsform der vorliegenden Erfindung dar. Wie gezeigt ist, beinhaltet das SSD1000 in diesem Beispiel eine SSD-Steuereinheit1200 und ein nichtflüchtiges Speichermedium1400 . - Die SSD-Steuereinheit
1200 beinhaltet eine erste Schnittstelle1210 und eine zweite Schnittstelle1230 , eine Steuereinheit1220 und einen Speicher1240 . - Die erste Schnittstelle
1210 dient als I/O-Datenschnittstelle für einen Host, beispielsweise eine Zentralverarbeitungseinheit (CPU) eines Hosts (nicht gezeigt). Nicht einschränkende Beispiele der ersten Schnittstelle1210 beinhalten Universal-Serial-Bus(USB)-Schnittstellen, Advanced-Technology-Attachment(ATA)-Schnittstellen, Serielle-ATA(SATA)-Schnittstellen und Small-Computer-System-Interface(SCSI)-Schnittstellen. - Die zweite Schnittstelle
1230 dient als I/O-Datenschnittstelle für das nichtflüchtige Speichermedium1400 . Insbesondere wird die zweite Schnittstelle1230 zum Senden/Empfangen verschiedener Befehle, Adressen und Daten zum/vom nichtflüchtigen Speichermedium1400 verwendet. Es versteht sich, dass eine Vielzahl von unterschiedlichen Strukturen und Konfigurationen der zweiten Schnittstelle1230 möglich ist, und daher wird wegen der Kürze keine ausführliche Beschreibung hierzu gegeben. - Die Steuereinheit
1220 und der Speicher1240 sind in Wirkverbindung zwischen der ersten und zweiten Schnittstelle1210 und1230 eingeschleift und dienen zusammen zum Steuern/Verwalten des Datenstroms zwischen dem Host (nicht gezeigt) und dem nichtflüchtigen Speichermedium1400 . Der Speicher1240 kann zum Beispiel eine Speichervorrichtung vom DRAM-Typ sein und die Steuereinheit1220 kann zum Beispiel eine Zentralverarbeitungseinheit (CPU), eine Direktspeicherzugriff(DMA)-Steuereinheit und eine Fehlerkorrektursteuer(ECC)-Maschine beinhalten. Beispiele der Funktionsweise der Steuereinheit können in derUS-Patentveröffentlichung 2006-0152981 eingesehen werden, die hiermit durch Bezugnahme zum Inhalt dieser Beschreibung gemacht wird. Die von der Steuereinheit1220 (und dem Speicher1240 ) in der Regel ausgeführten Operationen zum Übertragen von Daten zwischen dem Host (nicht gezeigt) und SSD-Speicherbänken sind dem Fachmann bekannt, und daher wird hier wegen der Kürze eine ausführliche Beschreibung ausgelassen. Vielmehr ist die später ange führte Funktionsbeschreibung primär auf erfinderische Aspekte mit Bezug zu verschiedenen Ausführungsformen der Erfindung gerichtet. - Weiter mit Bezug zu
1 beinhaltet das nichtflüchtige Speichermedium1400 dieses Beispiels einen nichtflüchtigen Hochgeschwindigkeitsspeicher (NVM)1410 und einen nichtflüchtigen langsamen Speicher (NVM)1420 . Wie die Namen vermuten lassen, ist der Hochgeschwindigkeits-NVM1410 derart ausgebildet, dass er im Vergleich zum langsamen NVM1420 bei einer relativ höheren Geschwindigkeit (z. B. Random-Write-Geschwindigkeit) funktioniert. - In einer beispielhaften Ausführungsform ist der Hochgeschwindigkeits-NVM
1410 ein Einpegelzellen(SLC)-Flashspeicher und der langsame NVM1420 ist ein Mehrpegelzellen(MLC)-Flashspeicher. Die Erfindung ist jedoch nicht darauf beschränkt. Zum Beispiel kann der Hochgeschwindigkeits-NVM1410 stattdessen aus einem Phasenwechseldirektzugriffspeicher (PRAM) oder einem MLC-Flashspeicher gebildet sein, in dem ein Bit pro Zelle genutzt wird. Ebenso können der Hochgeschwindigkeits-NVM1410 und der langsame NVM1420 aus der gleichen Art von Speicher gebildet sein (z. B. SLC oder MLC oder PRAM), wobei die Betriebsgeschwindigkeit durch eine feine Zuordnungsgranularität (fine-grain mapping) im Hochgeschwindigkeits-NVM1410 und eine grobe Zuordnungsgranularität (coarse-grain mapping) im langsamen NVM1420 differenziert ist. - In der Regel wird der Hochgeschwindigkeits-NVM
1410 zum Speichern von Daten mit häufigem Zugriff (die häufig geschrieben werden) verwendet, wie Metadaten, und der langsame NVM1420 wird zum Speichern von Daten mit weniger häufigem Zugriff (die weniger häufig geschrieben werden) verwendet, wie Mediendaten. Mit anderen Worten, wie hier später noch diskutiert wird, ist eine Schreibfrequenz der Daten im Hochgeschwindigkeits-NVM1410 statistisch höher als eine Schreib frequenz von Daten im langsamen NVM1420 . Ebenso ist aufgrund der Natur der jeweiligen zu speichernden Daten die Speicherkapazität des langsamen NVM1420 typischerweise viel höher als die des Hochgeschwindigkeits-NVM1410 . - In einer beispielhaften Ausführungsform ist der Hochgeschwindigkeits-NVM
1410 vor einem externen Betriebssystem, das mit dem SSD verbunden ist, verborgen. Dieser Aspekt der Ausführungsform ist in den2 und3 dargestellt. - Mit gemeinsamem Bezug zu den
2 und3 ist der Hochgeschwindigkeits-NVM1410 des Beispiels dieser Ausführungsform ein verborgener Bereich – das heißt, der Hochgeschwindigkeits-NVM1410 kann von dem externen Betriebssystem (OS) nicht gesehen (direkt adressiert) werden. Vielmehr ist der in Bezug auf die OS-Sicht gezeigte Adressenraum nur der des langsamen NVM1420 . Dahingegen ist der in Bezug auf die Flash-Translationsschicht (FTL) gezeigte Adressenraum sowohl der des Hochgeschwindigkeits-NVM1410 als auch der des langsamen NVM1420 . Die FTL übersetzt eine vom OS bereitgestellte Adresse in eine physikalische Adresse des nichtflüchtigen Speichermediums1400 (d. h. eine physikalische Adresse im Hochgeschwindigkeits-NVM1410 oder langsamen NVM1420 ). - Mit Blick auf die Blockdiagramme der
4 und5 gibt es eine Reihe unterschiedlicher Wege, auf denen der Hochgeschwindigkeits-NVM1410 und der langsame NVM1420 über die Schnittstelle1230 in Wirkverbindung mit der Steuereinheit1220 (1 ) treten können. Im Beispiel von4 kommunizieren der Hochgeschwindigkeits-NVM1410 und der langsame NVM1420 über die Schnittstelle1230 unter Verwendung gemeinsamer Schnittstellenkanäle. Im Beispiel von5 kommunizieren der Hochgeschwindigkeits-NVM1410 und der langsame NVM1420 über die Schnittstelle1230 unter Verwendung getrennter Schnittstellenkanäle. - Es wird jedoch nochmals angemerkt, dass der Hochgeschwindigkeits-NVM
1410 und der langsame NVM1420 nicht aus unterschiedlichen Arten von Speichern gebildet sein müssen. Das heißt, ein einziger Speichertyp kann operativ in eine Hochgeschwindigkeitsschicht und eine langsame Schicht unterteilt sein. Zum Beispiel kann die Zuordnungsgranularität der beiden Schichten unterschiedlich sein, oder die Anzahl der pro Zelle verwendeten Bits kann in den beiden Schichten unterschiedlich sein. Ferner können die Hochgeschwindigkeitsspeicherschicht und die langsame Speicherschicht auf Chipniveau unterteilt sein (z. B. in unterschiedlichen Speicherchips enthalten sein) oder sich im gleichen Speicherchip befinden (z. B. in unterschiedlichen Speicherblöcken oder Gruppen von Speicherzellen des gleichen Speicherchips enthalten sein). - Nun wird eine Funktionsbeschreibung des SSD gemäß Ausführungsformen der vorliegenden Erfindung vorgestellt.
- Gemäß einer Ausführungsform der vorliegenden Erfindung, in der Daten im SSD gespeichert werden, wird eine erste Bestimmung durchgeführt, um zu bestimmen, ob empfangene Daten heiße Daten oder kalte Daten sind. Als "heiße" Daten werden vorliegend solche Daten bezeichnet, die häufig geschrieben oder aktualisiert (was einen Schreibzugriff erfordert) werden, wie Verzeichnisinformationen und/oder Protokollinformationen. "Kalte" Daten sind alle anderen Daten, d. h. Daten, die nicht häufig geschrieben oder aktualisiert werden, wie Bilddateien, Tondateien, Programmcodes und so weiter. Kalte Daten können einmal oder selten geschrieben, aber häufig gelesen werden. Daher ist es die Häufigkeit des Schreibzugriffs, der die heißen Daten von den kalten Daten unterscheidet.
- Empfangene Daten, die während der ersten Bestimmung als heiße Daten bestimmt worden sind, werden im Hochgeschwindigkeits-NVM
1410 gespeichert, und empfangene Daten, die während der ersten Bestimmung als kalte Daten bestimmt worden sind, werden im langsamen NVM1420 gespeichert. - Dann wird eine zweite Bestimmung durchgeführt, um zu bestimmen, ob die im Hochgeschwindigkeits-NVM
1410 gespeicherten Daten heiße Daten oder kalte Daten sind. Mit anderen Worten, die im Hochgeschwindigkeits-NVM1410 gespeicherten Daten werden erneut untersucht, um zu bestimmen, welche der Daten als kalte Daten umklassifiziert werden sollten. Daten, die dann während der zweiten Bestimmung als kalte Daten bestimmt worden sind, werden vom Hochgeschwindigkeits-NVM1410 in den langsamen NVM1420 überführt. - Durch periodisches Überführen von Daten, die zunächst als heiße Daten bestimmt worden sind, vom Hochgeschwindigkeits-NVM
1410 in den langsamen NVM1420 kann der Umfang des Hochgeschwindigkeits-NVM1410 reduziert werden. Dies kann potentiell zu Kosteneinsparungen führen und die Gesamtspeicherkapazität des SSD steigern (z. B., indem mehr Raum für die MLC-Schicht mit hoher Kapazität verfügbar ist). - Die zweite Bestimmung und Überführung von Daten zum langsamen NVM
1420 kann so programmiert sein, dass sie zum Beispiel erfolgt, wenn die ungenutzte Kapazität des Hochgeschwindigkeits-NVM1410 weniger als ein vorgegebener Wert beträgt. Alternativ kann zum Beispiel die zweite Bestimmung und Überführung von Daten zum langsamen NVM1420 so programmiert sein, dass sie in vorgegebenen periodischen Intervallen erfolgt, oder wenn das SSD im Leerlauf ist. Beispiele eines Leerlaufzustands können Zeiträume umfassen, in denen keine Lese-/Schreibanforderung vom Host empfangen wird, oder wenn das Aktivierungsniveau oder die Intensität der Lese-/Schreibanforderungen weniger als ein Schwellenwert beträgt. -
6 ist ein Flussdiagramm zur Beschreibung der ersten Bestimmung und Speicherung (Schreiben) von Daten in das SSD gemäß einer Ausführungsform der vorliegenden Erfindung. - Zunächst werden in Schritt
100 ein Schreibbefehl, eine Adresse und Daten empfangen. Dann wird in Schritt110 eine Bestimmung vorgenommen, ob die empfangenen Daten als heiße Daten zu klassifizieren sind. Wenn die empfangenen Daten als heiße Daten klassifiziert worden sind, werden die empfangenen Daten in Schritt120 im Hochgeschwindigkeits-NVM1410 gespeichert. Wenn jedoch die empfangenen Daten nicht als heiße Daten klassifiziert worden sind, werden die empfangenen Daten in Schritt130 im langsamen NVM1420 gespeichert. - Es sei angemerkt, dass die in Schritt
130 im langsamen NVM1420 gespeicherten Daten zunächst den Hochgeschwindigkeits-NVM1410 "durchlaufen" können. Mit anderen Worten, die Daten können zunächst kurz (temporär) im Hochgeschwindigkeits-NVM1410 gespeichert werden und anschließend im langsamen NVM1420 gespeichert werden. In diesem Fall dient der Hochgeschwindigkeits-NVM1410 im Wesentlichen als Speicherpuffer für den langsamen NVM1420 . -
7 ist ein Flussdiagramm zur Beschreibung der ersten Bestimmung und Speicherung (Schreiben) von Daten in das SSD gemäß einer anderen Ausführungsform der vorliegenden Erfindung. - Zunächst werden in Schritt
300 ein Schreibbefehl, eine Adresse und Daten empfangen. Dann wird in den Schritten310a bis310e eine Bestimmung vorgenommen, ob die empfangenen Daten als heiße Daten zu klassifizieren sind. Wenn die empfangenen Daten als heiße Daten klassifiziert sind und wenn genügend verfügbarer Speicherplatz im Hochgeschwindigkeits-NVM1410 vorhanden ist (Schritt320 ), werden die empfangenen Daten in Schritt340 im Hochgeschwindigkeits-NVM1410 gespeichert. Wenn jedoch die empfangenen Daten nicht als heiße Daten klassifiziert worden sind, oder wenn nicht genügend verfügbarer Speicherplatz im Hochgeschwindigkeits-NVM1410 vorhanden ist, werden die empfangenen Daten in Schritt330 im langsamen NVM1420 gespeichert. - Es gibt unterschiedliche Kriterien, wie die empfangenen Daten als heiße Daten klassifiziert werden können, und die Schritte
310a bis310e von7 stellen eine nicht abschließende Liste von Entscheidungsprozessen dar, die bei der Klassifizierung verwendet werden können. Diese Schritte können kombiniert oder einzeln angewendet werden, was vom gewünschten Maß an Genauigkeit bei der ersten Bestimmung der empfangenen Daten abhängig ist. - In Schritt
310a wird eine Bestimmung vorgenommen, ob das Betriebssystem (OS) Informationen bereitgestellt hat, dass die Daten heiße Daten sind. Wenn dies der Fall ist, werden die Daten als heiße Daten klassifiziert und der Prozess schreitet zu Schritt320 fort. - In Schritt
310b wird eine Bestimmung vorgenommen, ob ein Schreibzähler der logischen Blockadresse einen vorgegebenen Schwellenwert überschritten hat. Wenn dies der Fall ist, werden die Daten als heiße Daten klassifiziert und der Prozess schreitet zu Schritt320 fort. - In Schritt
310c wird eine Bestimmung vorgenommen, ob die Anforderungsgröße der Daten kleiner ist als der vorgegebene Schwellenwert (z. B. weniger als 32 kB). Wenn dies der Fall ist, werden die Da ten als heiße Daten klassifiziert und der Prozess schreitet zu Schritt320 fort. - In Schritt
310d wird eine Bestimmung vorgenommen, ob ein nichtsequentielles Adresseninkrement bezüglich des zuvor empfangenen Befehls vorliegt. Wenn dies der Fall ist, werden die Daten als heiße Daten klassifiziert und der Prozess schreitet zu Schritt320 fort. - In Schritt
310e wird eine Bestimmung vorgenommen, ob die Veranlassung einer Mergeoperation im langsamen NVM wahrscheinlich ist. Wenn dies der Fall ist, werden die Daten als heiße Daten klassifiziert und der Prozess schreitet zu Schritt320 fort. - Obwohl es in
7 nicht gezeigt ist, könnte alternativ verfügbarer Speicherplatz durch Überführen schon gespeicherter kalter Daten vom Hochgeschwindigkeits-NVM zum langsamen NVM geschaffen werden, wobei anschließend neue heiße Daten im Hochgeschwindigkeits-NVM gespeichert werden könnten, falls im Hochgeschwindigkeits-NVM1410 nicht genügend verfügbarer Speicherplatz vorhanden ist (Schritt320 ). - Ebenso ist mit Bezug zum oben beschriebenen Prozess in den
6 und7 anzumerken, dass diese Ausführungsformen nicht darauf beschränkt sind, alle heißen und kalten Daten in den Hochgeschwindigkeits-NVM bzw. langsamen NVM zu speichern. Zum Beispiel können einige der zunächst als kalte Daten bestimmten Daten im Hochgeschwindigkeits-NVM gespeichert werden. Ebenso können einige der zunächst als heiße Daten bestimmten Daten im langsamen NVM gespeichert werden, obwohl dies weniger bevorzugt ist. -
8 ist ein Flussdiagramm zur Beschreibung eines Beispiels der zweiten Bestimmung und Überführung von Daten zum langsamen NVM im SSD gemäß einer Ausführungsform der vorliegenden Erfindung. - Zunächst wird in Schritt
410 eine Bestimmung vorgenommen, ob eine freie Speicherkapazität des Hochgeschwindigkeits-NVM kleiner als ein vorgegebener Schwellenwert ist. Wie zuvor vorgeschlagen, kann dieser Schritt um einen periodischen Ausführungsschritt, bei dem Schritt410 (oder Schritt420 unten) in periodischen Intervallen durchgeführt wird, und/oder einen SSD-Leerlaufbestimmungsschritt, bei dem Schritt410 (oder Schritt420 ) in periodischen Intervallen durchgeführt wird, ergänzt (oder durch diesen ersetzt) werden. - Danach wird in Schritt
420 eine Bestimmung vorgenommen, ob im Hochgeschwindigkeits-NVM gespeicherte Daten heiße Daten sind, d. h., ob die Daten als kalte Daten umklassifiziert werden können. - Danach werden in Schritt
430 umklassifizierte kalte Daten, die im Hochgeschwindigkeits-NVM gespeichert sind, zum langsamen NVM überführt. - Es gibt verschiedene Möglichkeiten, wie die Bestimmung in Schritt
420 durchgeführt werden kann. Zum Beispiel ist es möglich, den Schreibzähler der jeweiligen gültigen Daten im Hochgeschwindigkeits-NVM zu untersuchen, und dann die Daten mit niedrigen Schreibzählerwerten als kalte Daten umzuklassifizieren. Alternativ ist es möglich, eine Bestimmung vom FIFO-Typ auszuführen, bei der alte (zuerst angekommene) gültige Daten als kalte Daten umklassifiziert werden. - Mit Bezug zum oben beschriebenen Prozess von
8 ist anzumerken, dass diese Ausführungsform nicht auf eine Überführung aller kalten Daten in den langsamen NVM beschränkt ist. Zum Beispiel kön nen einige der als kalte Daten klassifizierten Daten im Hochgeschwindigkeits-NVM behalten werden. -
9 ist ein Blockdiagramm eines Computersystems gemäß einer Ausführungsform der vorliegenden Erfindung. Wie in der Figur gezeigt ist, kommunizieren ein Prozessor (Host)2100 und ein Hauptspeicher2200 über einen Datenbus2001 . Ebenfalls mit dem Bus2001 verbunden sind: eine Ausgabeeinrichtung2500 (z. B. Display), eine Eingabeeinrichtung2300 (z. B. Tastatur), andere I/O-Einrichtungen2400 und ein Solid-State-Laufwerk SSD. Das Solid-State-Laufwerk ist gemäß einer oder mehrerer der zuvor beschriebenen Ausführungsformen der Erfindung ausgebildet. - Ausführungsformen der vorliegenden Erfindung wurden primär im Zusammenhang mit Solid-State-Laufwerken (SSDs) beschrieben. Die Erfindung ist jedoch nicht auf SSD-Anwendungen beschränkt. Zum Beispiel stellt
10 eine Ausführungsform dar, in der die Hochgeschwindigkeitsspeicherschicht und die langsame Speicherschicht den Hauptspeicher2200 des in9 gezeigten Computersystems bilden. In10 beinhaltet die Hochgeschwindigkeitsspeicherschicht1510 DRAM-Zellen und kann ein für den Prozessor2100 von9 verborgener Bereich sein. Die langsame Speicherschicht1520 von10 beinhaltet Flashzellen (entweder SLC oder MLC) und kann für den Prozessor2100 von9 zugänglich sein.11 stellt ein weiteres Beispiel eines Hauptspeichers2200 dar. Wie gezeigt ist, beinhaltet die Hochgeschwindigkeitsspeicherschicht1610 DRAM-Zellen und kann ein für den Prozessor2100 von9 verborgener Bereich sein, und die langsame Speicherschicht1620 beinhaltet Phasenwechseldirektzugriffspeicher(PRAM)-Zellen und kann für den Prozessor2100 von9 zugänglich sein. - ZITATE ENTHALTEN IN DER BESCHREIBUNG
- Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
- Zitierte Patentliteratur
-
- - US 2006-0152981 [0021]
Claims (32)
- Verfahren zum Speichern von Daten in einem Solid-State-Speicher, der eine erste und eine zweite Speicherschicht umfasst, mit den Schritten: – Durchführen einer ersten Bestimmung, ob empfangene Daten heiße Daten oder kalte Daten sind, – Speichern der empfangenen Daten, die während der ersten Bestimmung als heiße Daten bestimmt worden sind, in der ersten Speicherschicht, – Speichern der empfangenen Daten, die während der ersten Bestimmung als kalte Daten bestimmt worden sind, in der zweiten Speicherschicht, – Durchführen einer zweiten Bestimmung, ob die in der ersten Speicherschicht gespeicherten Daten heiße Daten oder kalte Daten sind, und – Überführen von Daten, die während der zweiten Bestimmung als kalte Daten bestimmt worden sind, aus der ersten Speicherschicht in die zweite Speicherschicht.
- Verfahren nach Anspruch 1, wobei eine Betriebsgeschwindigkeit der ersten Speicherschicht höher ist als eine Betriebsgeschwindigkeit der zweiten Speicherschicht.
- Verfahren nach Anspruch 1 oder 2, wobei die erste Speicherschicht und die zweite Speicherschicht unterschiedliche Typen von Speicherzellen umfassen.
- Verfahren nach einem der Ansprüche 1 bis 3, wobei die erste Speicherschicht Einpegelflashspeicherzellen umfasst und die zweite Speicherschicht Mehrpegelflashspeicherzellen umfasst.
- Verfahren nach Anspruch 1, wobei die erste Speicherschicht und die zweite Speicherschicht Mehrpegelflashspeicherzellen umfassen, wobei Daten lediglich in einem niederwertigsten Bit der Mehrpegelflashspeicherzellen der ersten Speicherschicht gespeichert werden.
- Verfahren nach Anspruch 1, wobei die erste Speicherschicht und die zweite Speicherschicht die gleichen Typen von Speicherzellen umfassen.
- Verfahren nach Anspruch 6, wobei eine Zuordnungsgranularität (mapping grain) der ersten Speicherschicht feiner ist als eine Zuordnungsgranularität der zweiten Speicherschicht.
- Verfahren nach Anspruch 7, wobei die erste Speicherschicht und die zweite Speicherschicht Einpegelflashspeicherzellen umfassen.
- Verfahren nach Anspruch 7, wobei die erste Speicherschicht und die zweite Speicherschicht Mehrpegelflashspeicherzellen umfassen.
- Verfahren nach einem der Ansprüche 1 bis 9, wobei die Daten, die während der ersten Bestimmung zuerst als kalte Daten bestimmt worden sind, temporär in der ersten Speicherschicht gespeichert werden, bevor sie in der zweiten Speicherschicht gespeichert werden.
- Verfahren nach einem der Ansprüche 1 bis 10, wobei die zweite Bestimmung weiter ein Feststellen umfasst, ob eine nicht benutzte Speicherkapazität der ersten Speicherschicht kleiner als ein Schwellenwert ist.
- Verfahren nach einem der Ansprüche 1 bis 11, wobei die zweite Bestimmung in periodischen Intervallen oder dann ausgeführt wird, wenn der Solid-State-Speicher in einen Leerlaufzustand eintritt.
- Verfahren nach einem der Ansprüche 1 bis 12, wobei die erste Speicherschicht und die zweite Speicherschicht in einem Solid-State-Laufwerk enthalten sind.
- Verfahren nach einem der Ansprüche 1 bis 12, wobei die erste Speicherschicht und die zweite Speicherschicht im Hauptspeicher eines Computersystems enthalten sind.
- Verfahren zum Speichern von empfangenen Daten in einem Solid-State-Speicher mit den Schritten: – anfängliches Speichern von heißen Daten in einer Hochgeschwindigkeitsspeicherschicht und – anschließendes Überführen eines Teils der Daten, die in der Hochgeschwindigkeitsspeicherschicht gespeichert worden sind, in eine langsame Speicherschicht zum Speichern von kalten Daten.
- Verfahren nach Anspruch 15, wobei die erste und die zweite nichtflüchtige Speicherschicht unterschiedliche Typen von Speicherzellen umfassen.
- Verfahren nach Anspruch 15, wobei die erste und die zweite nichtflüchtige Speicherschicht gleiche Typen von Speicherzellen umfassen.
- Solid-State-Speichersystem, umfassend: – eine erste Speicherschicht, – eine zweite Speicherschicht und – eine Speichersteuereinheit, die dazu ausgebildet ist, eine erste Bestimmung durchzuführen, ob empfangene Daten heiße Daten oder kalte Daten sind, die empfangenen Daten, die während der ersten Bestimmung als heiße Daten bestimmt worden sind, in der ersten Speicherschicht zu speichern, und die empfangenen Daten, die während der ersten Bestimmung als kalte Daten bestimmt worden sind, in der zweiten Speicherschicht zu speichern, – wobei die Speichersteuereinheit weiter dazu ausgebildet ist, eine zweite Bestimmung durchzuführen, ob die in der ersten Speicherschicht gespeicherten Daten heiße Daten oder kalte Daten sind, und Daten, die während der zweiten Bestimmung als kalte Daten bestimmt worden sind, von der ersten Speicherschicht in die zweite Speicherschicht zu überführen.
- Solid-State-Speichersystem nach Anspruch 18, wobei die Speichersteuereinheit mit der ersten und der zweiten Speicherschicht unter Verwendung unterschiedlicher Datenkanäle in Wirkverbindung steht.
- Solid-State-Speichersystem nach Anspruch 18, wobei die Speichersteuereinheit mit der ersten und der zweiten Speicherschicht unter Verwendung gemeinsamer Datenkanäle in Wirkverbindung steht.
- Solid-State-Speichersystem nach einem der Ansprüche 18 bis 20, wobei eine Betriebsgeschwindigkeit der ersten Speicherschicht größer ist als eine Betriebsgeschwindigkeit der zweiten Speicherschicht.
- Solid-State-Speichersystem nach Anspruch 21, wobei die erste und die zweite Speicherschicht unterschiedliche Typen von Speicherzellen umfassen.
- Solid-State-Speichersystem nach Anspruch 21, wobei die erste und die zweite Speicherschicht gleiche Typen von Speicherzellen umfassen.
- Solid-State-Speichersystem nach einem der Ansprüche 18 bis 23, wobei die Daten, die während der ersten Bestimmung zuerst als kalte Daten bestimmt worden sind, temporär in der ersten Speicherschicht gespeichert werden, bevor sie in der zweiten Speicherschicht gespeichert werden.
- Solid-State-Speichersystem nach einem der Ansprüche 18 bis 24, wobei die erste und die zweite Speicherschicht in einem Solid-State-Laufwerk enthalten sind.
- Solid-State-Speichersystem nach einem der Ansprüche 18 bis 25, wobei die erste und die zweite Speicherschicht im Hauptspeicher eines Computersystems enthalten sind.
- Solid-State-Speichersystem, das dazu ausgebildet ist, in Wirkverbindung mit einem Computerbetriebssystem zu stehen, und das eine erste und eine zweite Speicherschicht umfasst, wobei eine Betriebsgeschwindigkeit der ersten Speicherschicht größer ist als eine Betriebsgeschwindigkeit der zweiten Speicherschicht und wobei die erste Speicherschicht vor dem Computerbetriebssystem verborgen ist, wenn das Solid-State-Speichersystem operativ mit dem Computerbetriebssystem verbunden ist.
- Solid-State-Speichersystem nach Anspruch 27, wobei das Solid-State-Speichersystem weiter eine Steuereinheit umfasst, die dazu ausgebildet ist, eine erste Bestimmung durchzuführen, ob empfangene Daten heiße Daten oder kalte Daten sind, die empfange nen Daten, die während der ersten Bestimmung als heiße Daten bestimmt worden sind, in der ersten Speicherschicht zu speichern, und die empfangenen Daten, die während der ersten Bestimmung als kalte Daten bestimmt worden sind, in der zweiten Speicherschicht zu speichern, – wobei die Speichersteuereinheit weiter dazu ausgebildet ist, eine zweite Bestimmung durchzuführen, ob die in der ersten Speicherschicht gespeicherten Daten heiße Daten oder kalte Daten sind, und Daten, die während der zweiten Bestimmung als kalte Daten bestimmt worden sind, aus der ersten Speicherschicht in die zweite Speicherschicht zu überführen.
- Computersystem mit einem Prozessor und einem Solid-State-Speicher, wobei der Solid-State-Speicher eine Hochgeschwindigkeitsspeicherschicht und eine langsame Speicherschicht umfasst, wobei die Hochgeschwindigkeitsspeicherschicht operativ vor dem Prozessor verborgen ist.
- Computersystem nach Anspruch 29, wobei der Solid-State-Speicher weiter eine Speichersteuereinheit umfasst, die dazu ausgebildet ist, eine erste Bestimmung durchzuführen, ob empfangene Daten heiße Daten oder kalte Daten sind, die empfangenen Daten, die während der ersten Bestimmung als heiße Daten bestimmt worden sind, in der ersten Speicherschicht zu speichern, und die empfangenen Daten, die während der ersten Bestimmung als kalte Daten bestimmt worden sind, in der zweiten Speicherschicht zu speichern, – wobei die Speichersteuereinheit weiter dazu ausgebildet ist, eine zweite Bestimmung durchzuführen, ob die Daten, die in der ersten Speicherschicht gespeichert sind, heiße Daten oder kalte Daten sind, und Daten, die während der zweiten Bestimmung als kalte Daten bestimmt worden sind, aus der ersten Speicherschicht in die zweite Speicherschicht zu überführen.
- Computersystem nach Anspruch 29 oder 30, wobei der Speicher ein Solid-State-Laufwerk ist.
- Computersystem nach Anspruch 29 oder 30, wobei der Speicher ein Hauptspeicher ist.
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2007-0081832 | 2007-08-14 | ||
KR1020070081832A KR101498673B1 (ko) | 2007-08-14 | 2007-08-14 | 반도체 드라이브, 그것의 데이터 저장 방법, 그리고 그것을포함한 컴퓨팅 시스템 |
US12/015,548 US20090049234A1 (en) | 2007-08-14 | 2008-01-17 | Solid state memory (ssm), computer system including an ssm, and method of operating an ssm |
US12/015,548 | 2008-01-17 |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102008036822A1 true DE102008036822A1 (de) | 2009-04-02 |
Family
ID=40363885
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102008036822A Withdrawn DE102008036822A1 (de) | 2007-08-14 | 2008-08-06 | Verfahren zum Speichern von Daten in einem Solid-State-Speicher, Solid-State-Speichersystem und Computersystem |
Country Status (5)
Country | Link |
---|---|
US (8) | US20090049234A1 (de) |
JP (2) | JP2009048613A (de) |
KR (1) | KR101498673B1 (de) |
CN (2) | CN103400598A (de) |
DE (1) | DE102008036822A1 (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102014216130A1 (de) * | 2014-08-13 | 2016-02-18 | Siemens Aktiengesellschaft | Vorrichtung und Verfahren zur Speicherung von Protokollierungsdaten |
DE102014111990B4 (de) | 2013-09-18 | 2023-11-30 | Intel Corporation | Heterogener Speicherzugriff |
Families Citing this family (259)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007132456A2 (en) * | 2006-05-12 | 2007-11-22 | Anobit Technologies Ltd. | Memory device with adaptive capacity |
US8156403B2 (en) * | 2006-05-12 | 2012-04-10 | Anobit Technologies Ltd. | Combined distortion estimation and error correction coding for memory devices |
CN103258572B (zh) | 2006-05-12 | 2016-12-07 | 苹果公司 | 存储设备中的失真估计和消除 |
WO2007132452A2 (en) * | 2006-05-12 | 2007-11-22 | Anobit Technologies | Reducing programming error in memory devices |
US8060806B2 (en) | 2006-08-27 | 2011-11-15 | Anobit Technologies Ltd. | Estimation of non-linear distortion in memory devices |
CN101601094B (zh) | 2006-10-30 | 2013-03-27 | 苹果公司 | 使用多个门限读取存储单元的方法 |
US7975192B2 (en) * | 2006-10-30 | 2011-07-05 | Anobit Technologies Ltd. | Reading memory cells using multiple thresholds |
US7924648B2 (en) | 2006-11-28 | 2011-04-12 | Anobit Technologies Ltd. | Memory power and performance management |
WO2008068747A2 (en) * | 2006-12-03 | 2008-06-12 | Anobit Technologies Ltd. | Automatic defect management in memory devices |
US9153337B2 (en) * | 2006-12-11 | 2015-10-06 | Marvell World Trade Ltd. | Fatigue management system and method for hybrid nonvolatile solid state memory system |
US7593263B2 (en) * | 2006-12-17 | 2009-09-22 | Anobit Technologies Ltd. | Memory device with reduced reading latency |
US7900102B2 (en) * | 2006-12-17 | 2011-03-01 | Anobit Technologies Ltd. | High-speed programming of memory devices |
US8151166B2 (en) * | 2007-01-24 | 2012-04-03 | Anobit Technologies Ltd. | Reduction of back pattern dependency effects in memory devices |
US7751240B2 (en) * | 2007-01-24 | 2010-07-06 | Anobit Technologies Ltd. | Memory device with negative thresholds |
WO2008111058A2 (en) * | 2007-03-12 | 2008-09-18 | Anobit Technologies Ltd. | Adaptive estimation of memory cell read thresholds |
US8001320B2 (en) * | 2007-04-22 | 2011-08-16 | Anobit Technologies Ltd. | Command interface for memory devices |
US8234545B2 (en) * | 2007-05-12 | 2012-07-31 | Apple Inc. | Data storage with incremental redundancy |
WO2008139441A2 (en) | 2007-05-12 | 2008-11-20 | Anobit Technologies Ltd. | Memory device with internal signal processing unit |
US20080306723A1 (en) * | 2007-06-08 | 2008-12-11 | Luca De Ambroggi | Emulated Combination Memory Device |
US7925936B1 (en) | 2007-07-13 | 2011-04-12 | Anobit Technologies Ltd. | Memory device with non-uniform programming levels |
US8259497B2 (en) | 2007-08-06 | 2012-09-04 | Apple Inc. | Programming schemes for multi-level analog memory cells |
US8429358B2 (en) | 2007-08-14 | 2013-04-23 | Samsung Electronics Co., Ltd. | Method and data storage device for processing commands |
US8174905B2 (en) * | 2007-09-19 | 2012-05-08 | Anobit Technologies Ltd. | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
US7773413B2 (en) | 2007-10-08 | 2010-08-10 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells in the presence of temperature variations |
US8000141B1 (en) | 2007-10-19 | 2011-08-16 | Anobit Technologies Ltd. | Compensation for voltage drifts in analog memory cells |
US8527819B2 (en) * | 2007-10-19 | 2013-09-03 | Apple Inc. | Data storage in analog memory cell arrays having erase failures |
US8068360B2 (en) * | 2007-10-19 | 2011-11-29 | Anobit Technologies Ltd. | Reading analog memory cells using built-in multi-threshold commands |
WO2009063450A2 (en) * | 2007-11-13 | 2009-05-22 | Anobit Technologies | Optimized selection of memory units in multi-unit memory devices |
CN101441597B (zh) * | 2007-11-22 | 2012-09-26 | 威刚科技股份有限公司 | 可调式混合密度内存储存装置的控制方法及其热门数据控管模块 |
US8225181B2 (en) | 2007-11-30 | 2012-07-17 | Apple Inc. | Efficient re-read operations from memory devices |
US8209588B2 (en) * | 2007-12-12 | 2012-06-26 | Anobit Technologies Ltd. | Efficient interference cancellation in analog memory cell arrays |
US8456905B2 (en) | 2007-12-16 | 2013-06-04 | Apple Inc. | Efficient data storage in multi-plane memory devices |
US8085586B2 (en) * | 2007-12-27 | 2011-12-27 | Anobit Technologies Ltd. | Wear level estimation in analog memory cells |
US8156398B2 (en) * | 2008-02-05 | 2012-04-10 | Anobit Technologies Ltd. | Parameter estimation based on error correction code parity check equations |
US7924587B2 (en) * | 2008-02-21 | 2011-04-12 | Anobit Technologies Ltd. | Programming of analog memory cells using a single programming pulse per state transition |
US7864573B2 (en) | 2008-02-24 | 2011-01-04 | Anobit Technologies Ltd. | Programming analog memory cells for reduced variance after retention |
US8230300B2 (en) * | 2008-03-07 | 2012-07-24 | Apple Inc. | Efficient readout from analog memory cells using data compression |
US8400858B2 (en) | 2008-03-18 | 2013-03-19 | Apple Inc. | Memory device with reduced sense time readout |
US8059457B2 (en) * | 2008-03-18 | 2011-11-15 | Anobit Technologies Ltd. | Memory device with multiple-accuracy read commands |
US8060719B2 (en) * | 2008-05-28 | 2011-11-15 | Micron Technology, Inc. | Hybrid memory management |
KR101521493B1 (ko) * | 2008-07-16 | 2015-05-19 | 시게이트 테크놀로지 엘엘씨 | 통신 속도를 조절할 수 있는 컨트롤러, 상기 컨트롤러를포함하는 데이터 저장 장치, 및 상기 데이터 저장 장치를포함하는 데이터 통신 시스템 |
US7995388B1 (en) | 2008-08-05 | 2011-08-09 | Anobit Technologies Ltd. | Data storage using modified voltages |
US7924613B1 (en) | 2008-08-05 | 2011-04-12 | Anobit Technologies Ltd. | Data storage in analog memory cells with protection against programming interruption |
US8949684B1 (en) | 2008-09-02 | 2015-02-03 | Apple Inc. | Segmented data storage |
US8169825B1 (en) | 2008-09-02 | 2012-05-01 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells subjected to long retention periods |
KR101038167B1 (ko) | 2008-09-09 | 2011-05-31 | 가부시끼가이샤 도시바 | 프로세서로부터 메모리로의 액세스를 관리하는 메모리 관리 장치를 포함하는 정보 처리 장치 및 메모리 관리 방법 |
JP2011022933A (ja) * | 2009-07-17 | 2011-02-03 | Toshiba Corp | メモリ管理装置を含む情報処理装置及びメモリ管理方法 |
US8482978B1 (en) | 2008-09-14 | 2013-07-09 | Apple Inc. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8000135B1 (en) | 2008-09-14 | 2011-08-16 | Anobit Technologies Ltd. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8239734B1 (en) | 2008-10-15 | 2012-08-07 | Apple Inc. | Efficient data storage in storage device arrays |
US8713330B1 (en) | 2008-10-30 | 2014-04-29 | Apple Inc. | Data scrambling in memory devices |
US8208304B2 (en) * | 2008-11-16 | 2012-06-26 | Anobit Technologies Ltd. | Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N |
US8174857B1 (en) | 2008-12-31 | 2012-05-08 | Anobit Technologies Ltd. | Efficient readout schemes for analog memory cell devices using multiple read threshold sets |
US8248831B2 (en) * | 2008-12-31 | 2012-08-21 | Apple Inc. | Rejuvenation of analog memory cells |
US8924661B1 (en) | 2009-01-18 | 2014-12-30 | Apple Inc. | Memory system including a controller and processors associated with memory devices |
US8543756B2 (en) * | 2009-02-02 | 2013-09-24 | Marvell World Trade Ltd. | Solid-state drive command grouping |
US8228701B2 (en) | 2009-03-01 | 2012-07-24 | Apple Inc. | Selective activation of programming schemes in analog memory cell arrays |
JP5298982B2 (ja) * | 2009-03-17 | 2013-09-25 | 日本電気株式会社 | ストレージシステム |
US8259506B1 (en) | 2009-03-25 | 2012-09-04 | Apple Inc. | Database of memory read thresholds |
US8832354B2 (en) * | 2009-03-25 | 2014-09-09 | Apple Inc. | Use of host system resources by memory controller |
EP2417524A4 (de) * | 2009-04-10 | 2013-03-06 | Kaminario Tehnologies Ltd | A mass-storage system utilizing auxiliary solid-state storage subsystem |
US8238157B1 (en) | 2009-04-12 | 2012-08-07 | Apple Inc. | Selective re-programming of analog memory cells |
KR101600951B1 (ko) * | 2009-05-18 | 2016-03-08 | 삼성전자주식회사 | 고체 상태 드라이브 장치 |
TWI400707B (zh) * | 2009-07-09 | 2013-07-01 | Phison Electronics Corp | 快閃記憶體邏輯區塊管理方法及其控制電路與儲存系統 |
US8479080B1 (en) | 2009-07-12 | 2013-07-02 | Apple Inc. | Adaptive over-provisioning in memory systems |
JP2011186559A (ja) * | 2010-03-04 | 2011-09-22 | Toshiba Corp | メモリ管理装置 |
JP2011186554A (ja) * | 2010-03-04 | 2011-09-22 | Toshiba Corp | メモリ管理装置及び方法 |
CN102473140B (zh) | 2009-07-17 | 2015-05-13 | 株式会社东芝 | 存储器管理装置 |
JP2011186561A (ja) * | 2010-03-04 | 2011-09-22 | Toshiba Corp | メモリ管理装置 |
JP2011186558A (ja) * | 2010-03-04 | 2011-09-22 | Toshiba Corp | メモリ管理装置及び方法 |
JP5322978B2 (ja) * | 2010-03-04 | 2013-10-23 | 株式会社東芝 | 情報処理装置及び方法 |
JP2011186562A (ja) * | 2010-03-04 | 2011-09-22 | Toshiba Corp | メモリ管理装置及び方法 |
US20110047316A1 (en) * | 2009-08-19 | 2011-02-24 | Dell Products L.P. | Solid state memory device power optimization |
US20120166749A1 (en) * | 2009-09-08 | 2012-06-28 | International Business Machines Corporation | Data management in solid-state storage devices and tiered storage systems |
US8473680B1 (en) * | 2009-09-18 | 2013-06-25 | Marvell International Ltd. | Hotspot detection and caching for storage devices |
GB2484841B (en) * | 2009-09-24 | 2016-10-26 | Ibm | Data storage using bitmaps |
US8495465B1 (en) | 2009-10-15 | 2013-07-23 | Apple Inc. | Error correction coding over multiple memory pages |
KR100979750B1 (ko) * | 2009-11-06 | 2010-09-03 | (주)피스페이스 | 분산 저장 시스템에서 파일을 관리하는 장치 및 방법 |
EP2507700A1 (de) * | 2009-12-04 | 2012-10-10 | Marvell World Trade Ltd. | Virtualisierung von speichervorrichtungen |
US8677054B1 (en) | 2009-12-16 | 2014-03-18 | Apple Inc. | Memory management schemes for non-volatile memory devices |
US8438334B2 (en) * | 2009-12-22 | 2013-05-07 | International Business Machines Corporation | Hybrid storage subsystem with mixed placement of file contents |
CN102110063B (zh) * | 2009-12-28 | 2013-11-06 | 宇瞻科技股份有限公司 | 可提升作业速度的存储系统 |
US8694814B1 (en) | 2010-01-10 | 2014-04-08 | Apple Inc. | Reuse of host hibernation storage space by memory controller |
US8677203B1 (en) | 2010-01-11 | 2014-03-18 | Apple Inc. | Redundant data storage schemes for multi-die memory systems |
JP2011154547A (ja) * | 2010-01-27 | 2011-08-11 | Toshiba Corp | メモリ管理装置及びメモリ管理方法 |
JP5533887B2 (ja) * | 2010-02-10 | 2014-06-25 | 日本電気株式会社 | ストレージ装置 |
US8458417B2 (en) * | 2010-03-10 | 2013-06-04 | Seagate Technology Llc | Garbage collection in a storage device |
US8438361B2 (en) * | 2010-03-10 | 2013-05-07 | Seagate Technology Llc | Logical block storage in a storage device |
US8700949B2 (en) | 2010-03-30 | 2014-04-15 | International Business Machines Corporation | Reliability scheme using hybrid SSD/HDD replication with log structured management |
US8700841B2 (en) * | 2010-04-19 | 2014-04-15 | International Business Machines Corporation | Sub-LUN input/output profiling for SSD devices |
US9183134B2 (en) | 2010-04-22 | 2015-11-10 | Seagate Technology Llc | Data segregation in a storage device |
US8635494B2 (en) * | 2010-04-30 | 2014-01-21 | Taejin Info Tech Co., Ltd. | Backup and restoration for a semiconductor storage device |
US9015441B2 (en) * | 2010-04-30 | 2015-04-21 | Microsoft Technology Licensing, Llc | Memory usage scanning |
US8694853B1 (en) | 2010-05-04 | 2014-04-08 | Apple Inc. | Read commands for reading interfering memory cells |
US9355109B2 (en) * | 2010-06-11 | 2016-05-31 | The Research Foundation For The State University Of New York | Multi-tier caching |
US8572423B1 (en) | 2010-06-22 | 2013-10-29 | Apple Inc. | Reducing peak current in memory systems |
US8595591B1 (en) | 2010-07-11 | 2013-11-26 | Apple Inc. | Interference-aware assignment of programming levels in analog memory cells |
US9104580B1 (en) | 2010-07-27 | 2015-08-11 | Apple Inc. | Cache memory for hybrid disk drives |
US8767459B1 (en) | 2010-07-31 | 2014-07-01 | Apple Inc. | Data storage in analog memory cells across word lines using a non-integer number of bits per cell |
US8856475B1 (en) | 2010-08-01 | 2014-10-07 | Apple Inc. | Efficient selection of memory blocks for compaction |
JP5553309B2 (ja) * | 2010-08-11 | 2014-07-16 | 国立大学法人 東京大学 | データ処理装置 |
US8694854B1 (en) | 2010-08-17 | 2014-04-08 | Apple Inc. | Read threshold setting based on soft readout statistics |
CN101923514A (zh) * | 2010-08-27 | 2010-12-22 | 深圳市江波龙电子有限公司 | 一种闪存存储设备的管理方法及系统 |
US9021181B1 (en) | 2010-09-27 | 2015-04-28 | Apple Inc. | Memory management for unifying memory cell conditions by using maximum time intervals |
US9684590B2 (en) | 2010-10-25 | 2017-06-20 | Seagate Technology Llc | Storing corresponding data units in a common storage unit |
CN102073602B (zh) * | 2010-12-14 | 2012-11-21 | 鸿富锦精密工业(深圳)有限公司 | 计算机系统、连接控制装置及连接与断开方法 |
WO2012103209A2 (en) | 2011-01-27 | 2012-08-02 | Soft Machines, Inc. | Guest instruction to native instruction range based mapping using a conversion look aside buffer of a processor |
WO2012103253A2 (en) | 2011-01-27 | 2012-08-02 | Soft Machines, Inc. | Multilevel conversion table cache for translating guest instructions to native instructions |
WO2012103359A2 (en) | 2011-01-27 | 2012-08-02 | Soft Machines, Inc. | Hardware acceleration components for translating guest instructions to native instructions |
WO2012103245A2 (en) | 2011-01-27 | 2012-08-02 | Soft Machines Inc. | Guest instruction block with near branching and far branching sequence construction to native instruction block |
WO2012103367A2 (en) | 2011-01-27 | 2012-08-02 | Soft Machines, Inc. | Guest to native block address mappings and management of native code storage |
KR101795629B1 (ko) | 2011-02-15 | 2017-11-13 | 삼성전자주식회사 | 호스트에서 파일 시스템 관리 방법 및 상기 방법을 수행할 수 있는 장치들 |
KR101800444B1 (ko) | 2011-03-28 | 2017-12-20 | 삼성전자주식회사 | 불휘발성 메모리의 제어 방법 및 그것을 포함하는 메모리 시스템 |
CN103620563B (zh) | 2011-04-26 | 2015-04-29 | Lsi公司 | 用于非易失性存储器的可变超量配置 |
US8782370B2 (en) * | 2011-05-15 | 2014-07-15 | Apple Inc. | Selective data storage in LSB and MSB pages |
EP2710497B1 (de) * | 2011-05-19 | 2019-01-23 | Oracle International Corporation | Verfahren zur automatischen datenplatzierung mit komprimierung und säulenspeicherung |
KR20120132278A (ko) * | 2011-05-26 | 2012-12-05 | 삼성전자주식회사 | 메모리 칩, 메모리 시스템, 및 메모리 칩에 대한 액세스 방법 |
US20120317337A1 (en) * | 2011-06-09 | 2012-12-13 | Microsoft Corporation | Managing data placement on flash-based storage by use |
JP2013061847A (ja) * | 2011-09-14 | 2013-04-04 | Sony Corp | 情報処理装置および情報処理方法 |
US8838916B2 (en) | 2011-09-15 | 2014-09-16 | International Business Machines Corporation | Hybrid data storage management taking into account input/output (I/O) priority |
US9417803B2 (en) * | 2011-09-20 | 2016-08-16 | Apple Inc. | Adaptive mapping of logical addresses to memory devices in solid state drives |
EP3382556A1 (de) | 2011-09-30 | 2018-10-03 | INTEL Corporation | Speicherkanal zur unterstützung von nah- und fernspeicherzugriffen |
WO2013048500A1 (en) | 2011-09-30 | 2013-04-04 | Intel Corporation | Apparatus and method for implementing a multi-level memory hierarchy over common memory channels |
WO2013048503A1 (en) | 2011-09-30 | 2013-04-04 | Intel Corporation | Apparatus and method for implementing a multi-level memory hierarchy having different operating modes |
CN103946812B (zh) * | 2011-09-30 | 2017-06-09 | 英特尔公司 | 用于实现多级别存储器分级体系的设备和方法 |
US9600407B2 (en) | 2011-09-30 | 2017-03-21 | Intel Corporation | Generation of far memory access signals based on usage statistic tracking |
CN103092867B (zh) * | 2011-11-03 | 2017-02-01 | 中国移动通信集团甘肃有限公司 | 一种数据管理方法及系统、数据分析装置 |
US8977803B2 (en) * | 2011-11-21 | 2015-03-10 | Western Digital Technologies, Inc. | Disk drive data caching using a multi-tiered memory |
CN105718223B (zh) * | 2011-12-27 | 2019-11-12 | 英特尔公司 | 管理工作负载存储器分配的方法和设备 |
CN107273302B (zh) | 2011-12-27 | 2021-02-09 | 英特尔公司 | 管理工作负载存储器分配的方法、设备和系统 |
CN106469029B (zh) * | 2011-12-31 | 2019-07-23 | 华为数字技术(成都)有限公司 | 数据分层存储处理方法、装置和存储设备 |
CN102609360B (zh) * | 2012-01-12 | 2015-03-25 | 华为技术有限公司 | 一种数据处理方法、装置及系统 |
JP5790532B2 (ja) * | 2012-02-13 | 2015-10-07 | セイコーエプソン株式会社 | 電子機器、及びメモリー制御方法 |
US9800658B2 (en) * | 2012-07-30 | 2017-10-24 | Marvell International Ltd. | Servers and methods for controlling a server |
KR20140033964A (ko) * | 2012-09-11 | 2014-03-19 | 삼성전자주식회사 | 단말기의 데이터 저장장치 및 방법 |
CN102902628B (zh) * | 2012-09-18 | 2016-06-01 | 记忆科技(深圳)有限公司 | 一种基于闪存实现的冷热数据自动分离方法、系统及闪存 |
CN103677654B (zh) * | 2012-09-24 | 2018-03-23 | 联想(北京)有限公司 | 一种存储数据的方法及电子设备 |
CN104380259B (zh) * | 2012-10-17 | 2018-09-21 | 华为技术有限公司 | 降低内存系统功耗的方法和内存控制器 |
CN103839578B (zh) * | 2012-11-27 | 2017-02-08 | 广东华晟数据固态存储有限公司 | 一种提高基于nand的固态存储器数据保持时间的方法 |
US9684593B1 (en) * | 2012-11-30 | 2017-06-20 | EMC IP Holding Company LLC | Techniques using an encryption tier property with application hinting and I/O tagging |
US8984251B2 (en) | 2012-12-04 | 2015-03-17 | Apple Inc. | Hinting of deleted data from host to storage device |
CN103853500A (zh) * | 2012-12-07 | 2014-06-11 | 中国移动通信集团河南有限公司 | 一种基于海量数据的数据分配方法、装置及系统 |
US9098402B2 (en) | 2012-12-21 | 2015-08-04 | Intel Corporation | Techniques to configure a solid state drive to operate in a storage mode or a memory mode |
US9715445B2 (en) | 2013-03-14 | 2017-07-25 | Sandisk Technologies Llc | File differentiation based on data block identification |
WO2014151652A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines Inc | Method and apparatus to allow early dependency resolution and data forwarding in a microprocessor |
US9606935B2 (en) * | 2013-03-15 | 2017-03-28 | Intel Corporation | Method and apparatus for preventing non-temporal entries from polluting small structures using a transient buffer |
US10152327B2 (en) | 2013-03-15 | 2018-12-11 | Intel Corporation | Apparatus for gating a load operation based on entries of a prediction table |
US20140281129A1 (en) * | 2013-03-15 | 2014-09-18 | Tal Heller | Data tag sharing from host to storage systems |
US10467010B2 (en) | 2013-03-15 | 2019-11-05 | Intel Corporation | Method and apparatus for nearest potential store tagging |
EP2972798B1 (de) | 2013-03-15 | 2020-06-17 | Intel Corporation | Verfahren und vorrichtung für eine gastadressenstapelemulation mit unterstützung einer spekulation |
KR102023351B1 (ko) | 2013-03-19 | 2019-11-04 | 삼성전자 주식회사 | 저장 장치 내 할당 촉진을 위한 데이터 분석 방법 및 장치 |
JP6070371B2 (ja) * | 2013-03-29 | 2017-02-01 | 富士通株式会社 | データ配置プログラム、及び情報処理装置 |
WO2014209234A1 (en) * | 2013-06-26 | 2014-12-31 | Agency For Science, Technology And Research | Method and apparatus for hot data region optimized dynamic management |
KR101481633B1 (ko) * | 2013-07-03 | 2015-01-15 | 아주대학교산학협력단 | 플래시 메모리 기반 세가지 상태를 가지는 버퍼 관리 장치 및 방법 |
US9563371B2 (en) * | 2013-07-26 | 2017-02-07 | Globalfoundreis Inc. | Self-adjusting phase change memory storage module |
KR102133362B1 (ko) | 2013-08-14 | 2020-07-15 | 삼성전자주식회사 | 비휘발성 메모리 장치, 그것을 포함하는 메모리 시스템, 및 그것의 프로그램 방법 |
CN103744796A (zh) * | 2013-09-29 | 2014-04-23 | 记忆科技(深圳)有限公司 | 采用uSSD实现缓存的方法及其系统 |
CN103617007B (zh) * | 2013-12-04 | 2017-06-23 | 深圳市华云中盛科技有限公司 | 多级智能存储实现方法和系统 |
CN103631538B (zh) | 2013-12-05 | 2017-04-05 | 华为技术有限公司 | 冷热数据识别门限值计算方法、装置和系统 |
US9323457B2 (en) * | 2013-12-09 | 2016-04-26 | Xilinx, Inc. | Memory arrangement for implementation of high-throughput key-value stores |
US9720623B2 (en) * | 2013-12-30 | 2017-08-01 | Teradata Us, Inc. | Management of data in multi-storage systems that can include non-volatile and volatile storages |
CN103713861A (zh) * | 2014-01-09 | 2014-04-09 | 浪潮(北京)电子信息产业有限公司 | 一种基于层次划分的文件处理方法及系统 |
US10061532B2 (en) | 2014-01-30 | 2018-08-28 | Hewlett Packard Enterprise Development Lp | Migrating data between memories |
US9921747B2 (en) | 2014-01-31 | 2018-03-20 | Hewlett Packard Enterprise Development Lp | Unifying memory controller |
KR102218712B1 (ko) | 2014-02-11 | 2021-02-22 | 삼성전자주식회사 | 저장 장치의 어드레스 맵핑 방법 및 저장 장치의 데이터 독출 방법 |
CN104915298B (zh) * | 2014-03-13 | 2019-02-12 | 腾讯科技(北京)有限公司 | 关系链处理方法及装置 |
CN104932830B (zh) * | 2014-03-17 | 2019-01-15 | 联想(北京)有限公司 | 信息处理方法及电子设备 |
KR102289919B1 (ko) * | 2014-04-15 | 2021-08-12 | 삼성전자주식회사 | 스토리지 컨트롤러, 스토리지 장치, 스토리지 시스템 및 상기 스토리지 컨트롤러의 동작 방법 |
CN104391652A (zh) * | 2014-10-20 | 2015-03-04 | 北京兆易创新科技股份有限公司 | 一种硬盘的损耗均衡方法及装置 |
KR101691286B1 (ko) * | 2014-12-10 | 2017-01-09 | 한양대학교 산학협력단 | 입출력 정보 공유 방법, 상기 방법을 수행하는 저장 장치 및 호스트 장치 |
CN104461397A (zh) * | 2014-12-19 | 2015-03-25 | 上海新储集成电路有限公司 | 一种固态硬盘及其读写方法 |
KR102295223B1 (ko) * | 2015-01-13 | 2021-09-01 | 삼성전자주식회사 | 속도 모드 관리자를 포함하는 저장 장치 및 사용자 장치 |
US9564216B2 (en) | 2015-01-30 | 2017-02-07 | Macronix International Co., Ltd. | Stress trim and modified ISPP procedures for PCM |
CN104793901B (zh) * | 2015-04-09 | 2018-01-23 | 北京鲸鲨软件科技有限公司 | 一种存储装置及存储方法 |
CN104808953B (zh) * | 2015-05-07 | 2018-11-27 | 广东欧珀移动通信有限公司 | 控制数据存储的方法、装置及移动终端 |
CN106354718B (zh) * | 2015-07-13 | 2021-05-25 | 中国移动通信集团公司 | 用户识别模块的文件管理方法及装置 |
KR20170009000A (ko) * | 2015-07-15 | 2017-01-25 | 에스케이하이닉스 주식회사 | 메모리 콘트롤러, 이를 포함하는 메모리 시스템 및 메모리 콘트롤러의 동작 방법 |
JP6538496B2 (ja) * | 2015-09-11 | 2019-07-03 | 東芝メモリ株式会社 | メモリシステム |
KR102333220B1 (ko) * | 2015-09-24 | 2021-12-01 | 삼성전자주식회사 | 불휘발성 메모리 시스템의 동작 방법 |
CN105869028A (zh) * | 2015-11-11 | 2016-08-17 | 乐卡汽车智能科技(北京)有限公司 | 订单回退处理系统、处理方法以及业务支撑系统 |
US9832277B2 (en) * | 2015-11-13 | 2017-11-28 | Western Digital Technologies, Inc. | Systems and methods for adaptive partitioning in distributed cache memories |
US9934154B2 (en) * | 2015-12-03 | 2018-04-03 | Samsung Electronics Co., Ltd. | Electronic system with memory management mechanism and method of operation thereof |
JP2017107321A (ja) * | 2015-12-08 | 2017-06-15 | 京セラドキュメントソリューションズ株式会社 | 電子機器およびデータアクセス制御プログラム |
CN112416812A (zh) | 2015-12-30 | 2021-02-26 | 华为技术有限公司 | 访问请求处理方法、装置及计算机系统 |
CN108431783B (zh) | 2015-12-30 | 2020-09-18 | 华为技术有限公司 | 访问请求处理方法、装置及计算机系统 |
CN105760114B (zh) * | 2016-02-05 | 2020-07-03 | 浪潮(北京)电子信息产业有限公司 | 一种并行文件系统资源管理方法、装置和系统 |
CN113377695B (zh) * | 2016-03-17 | 2024-04-12 | 北京忆恒创源科技股份有限公司 | 读写分离的固态存储设备的数据分布方法 |
US10452539B2 (en) | 2016-07-19 | 2019-10-22 | Sap Se | Simulator for enterprise-scale simulations on hybrid main memory systems |
US10474557B2 (en) | 2016-07-19 | 2019-11-12 | Sap Se | Source code profiling for line-level latency and energy consumption estimation |
US10387127B2 (en) | 2016-07-19 | 2019-08-20 | Sap Se | Detecting sequential access data and random access data for placement on hybrid main memory for in-memory databases |
US10540098B2 (en) | 2016-07-19 | 2020-01-21 | Sap Se | Workload-aware page management for in-memory databases in hybrid main memory systems |
US10698732B2 (en) * | 2016-07-19 | 2020-06-30 | Sap Se | Page ranking in operating system virtual pages in hybrid memory systems |
US10437798B2 (en) | 2016-07-19 | 2019-10-08 | Sap Se | Full system simulator and memory-aware splay tree for in-memory databases in hybrid memory systems |
US10783146B2 (en) | 2016-07-19 | 2020-09-22 | Sap Se | Join operations in hybrid main memory systems |
KR102550343B1 (ko) | 2016-07-27 | 2023-07-03 | 삼성전자주식회사 | 솔리드 스테이트 드라이브 장치 및 그것의 동작 방법 |
CN106503079A (zh) * | 2016-10-10 | 2017-03-15 | 语联网(武汉)信息技术有限公司 | 一种日志管理方法及系统 |
CN106406771B (zh) * | 2016-10-20 | 2019-10-11 | 福建天泉教育科技有限公司 | 日志记录方法及日志记录器 |
US10649665B2 (en) | 2016-11-08 | 2020-05-12 | Micron Technology, Inc. | Data relocation in hybrid memory |
CN107122126B (zh) * | 2016-12-22 | 2020-09-08 | 华为技术有限公司 | 数据的迁移方法、装置和系统 |
CN108268485B (zh) * | 2016-12-30 | 2021-04-30 | 亿阳安全技术有限公司 | 一种日志实时分析方法及系统 |
CN106873912B (zh) * | 2017-02-16 | 2020-02-07 | 苏州浪潮智能科技有限公司 | Tlc芯片固态硬盘的动态分区存储方法及装置、系统 |
US10318175B2 (en) * | 2017-03-07 | 2019-06-11 | Samsung Electronics Co., Ltd. | SSD with heterogeneous NVM types |
US10761750B2 (en) * | 2017-03-09 | 2020-09-01 | Netapp Inc. | Selectively storing data into allocation areas using streams |
CN107341112A (zh) * | 2017-06-29 | 2017-11-10 | 西安交通大学 | 一种基于页面访问间隔的闪存数据缓冲区置换方法 |
CN107368436B (zh) * | 2017-06-29 | 2020-08-18 | 西安交通大学 | 一种联合地址映射表的闪存冷热数据分离存储方法 |
CN107291633A (zh) * | 2017-07-14 | 2017-10-24 | 长沙开雅电子科技有限公司 | 一种新型集群存储写缓存分级管理方法 |
US11010379B2 (en) | 2017-08-15 | 2021-05-18 | Sap Se | Increasing performance of in-memory databases using re-ordered query execution plans |
CN107480073A (zh) * | 2017-08-20 | 2017-12-15 | 长沙曙通信息科技有限公司 | 一种存储系统热点数据缓存预读实现方法 |
CN107562378A (zh) * | 2017-08-28 | 2018-01-09 | 记忆科技(深圳)有限公司 | 一种提升固态存储设备寿命的方法 |
US11100996B2 (en) * | 2017-08-30 | 2021-08-24 | Micron Technology, Inc. | Log data storage for flash memory |
CN107748649B (zh) * | 2017-09-18 | 2021-03-30 | 北京京东尚科信息技术有限公司 | 一种缓存数据的方法和装置 |
US10909271B2 (en) | 2017-09-28 | 2021-02-02 | Citrix Systems, Inc. | Policy based persistence |
CN107621927B (zh) * | 2017-09-29 | 2020-08-14 | 南京宏海科技有限公司 | 一种基于超融合系统的纵向扩展方法及其装置 |
US10915475B2 (en) * | 2017-10-12 | 2021-02-09 | Western Digital Technologies, Inc. | Methods and apparatus for variable size logical page management based on hot and cold data |
CN107844269B (zh) * | 2017-10-17 | 2020-06-02 | 华中科技大学 | 一种基于一致性哈希的分层混合存储系统 |
CN107967121B (zh) | 2017-10-25 | 2020-04-14 | 华为技术有限公司 | 数据写入方法和存储设备 |
CN107807796B (zh) * | 2017-11-17 | 2021-03-05 | 北京联想超融合科技有限公司 | 一种基于超融合存储系统的数据分层方法、终端及系统 |
CN108108131B (zh) * | 2017-12-29 | 2020-09-22 | 深圳忆联信息系统有限公司 | 一种ssd硬盘的数据处理方法和装置 |
KR20190085642A (ko) * | 2018-01-11 | 2019-07-19 | 에스케이하이닉스 주식회사 | 메모리 시스템 |
KR102535104B1 (ko) | 2018-03-19 | 2023-05-23 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
CN108519862B (zh) * | 2018-03-30 | 2020-03-17 | 百度在线网络技术(北京)有限公司 | 区块链系统的存储方法、装置、系统和存储介质 |
US10776268B2 (en) * | 2018-04-19 | 2020-09-15 | Western Digital Technologies, Inc. | Priority addresses for storage cache management |
CN108984124B (zh) * | 2018-07-13 | 2022-03-25 | 深圳忆联信息系统有限公司 | 减少写放大的方法、装置、计算机设备及存储介质 |
CN108920107B (zh) * | 2018-07-13 | 2022-02-01 | 深圳忆联信息系统有限公司 | 筛选冷数据的方法、装置、计算机设备及存储介质 |
CN108920108B (zh) * | 2018-07-13 | 2022-02-01 | 深圳忆联信息系统有限公司 | 冷数据的筛选方法、装置、计算机设备及存储介质 |
CN110737391B (zh) * | 2018-07-20 | 2023-08-22 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法、设备和计算机程序产品 |
US11010410B1 (en) * | 2018-10-12 | 2021-05-18 | Facebook, Inc. | Processing data groupings belonging to data grouping containers |
US11188250B2 (en) | 2018-10-25 | 2021-11-30 | Micron Technology, Inc. | Two-stage hybrid memory buffer for multiple streams |
CN109407995B (zh) * | 2018-11-05 | 2020-03-27 | 北京三快在线科技有限公司 | 冷热数据管理方法、装置、电子设备及计算机可读介质 |
US11163473B2 (en) * | 2018-11-19 | 2021-11-02 | Micron Technology, Inc. | Systems, devices, techniques, and methods for data migration |
US11182090B2 (en) | 2018-11-19 | 2021-11-23 | Micron Technology, Inc. | Systems, devices, and methods for data migration |
US11256437B2 (en) | 2018-11-19 | 2022-02-22 | Micron Technology, Inc. | Data migration for memory operation |
KR20200078047A (ko) | 2018-12-21 | 2020-07-01 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
CN109739646A (zh) * | 2018-12-28 | 2019-05-10 | 北京神州绿盟信息安全科技股份有限公司 | 一种数据处理方法及装置 |
CN109799958A (zh) * | 2019-01-17 | 2019-05-24 | 湖南大学 | 固态硬盘及其数据处理方法 |
KR20200092710A (ko) * | 2019-01-25 | 2020-08-04 | 주식회사 리얼타임테크 | 이기종 스토리지 기반의 데이터베이스 관리시스템에서 하이브리드 색인장치 |
CN110134514B (zh) * | 2019-04-18 | 2021-04-13 | 华中科技大学 | 基于异构内存的可扩展内存对象存储系统 |
CN110109620B (zh) * | 2019-04-25 | 2023-08-04 | 上海淇毓信息科技有限公司 | 混合存储方法、装置和电子设备 |
KR20200142219A (ko) | 2019-06-12 | 2020-12-22 | 삼성전자주식회사 | 전자 장치 및 그의 저장 공간 이용 방법 |
US11088707B2 (en) * | 2019-06-29 | 2021-08-10 | Intel Corporation | Low density parity check (LDPC) decoder architecture with check node storage (CNS) or bounded circulant |
US11036434B2 (en) | 2019-08-22 | 2021-06-15 | Micron Technology, Inc. | Hierarchical memory systems |
CN110531938A (zh) * | 2019-09-02 | 2019-12-03 | 广东紫晶信息存储技术股份有限公司 | 一种基于多维度的冷热数据迁移方法及系统 |
CN111078144A (zh) * | 2019-11-30 | 2020-04-28 | 苏州浪潮智能科技有限公司 | 一种提高自动分层效率的方法、系统、终端及存储介质 |
KR20210077230A (ko) * | 2019-12-17 | 2021-06-25 | 에스케이하이닉스 주식회사 | 메모리 시스템의 동작 방법 및 장치 |
CN113010091B (zh) * | 2019-12-20 | 2023-06-16 | 华为技术有限公司 | 数据写入固态硬盘的方法、垃圾回收的方法、装置 |
CN111506262B (zh) * | 2020-03-25 | 2021-12-28 | 华为技术有限公司 | 一种存储系统、文件存储和读取方法及终端设备 |
CN111581024A (zh) * | 2020-05-06 | 2020-08-25 | 深圳忆联信息系统有限公司 | Ssd日志的动态备份恢复方法、装置和计算机设备 |
CN111722804B (zh) * | 2020-06-12 | 2022-07-08 | 浪潮电子信息产业股份有限公司 | 一种非易失内存调度的方法、系统、设备及可读存储介质 |
CN112114748B (zh) * | 2020-09-02 | 2022-10-25 | 厦门安胜网络科技有限公司 | 一种用于冷热数据的分离方法和系统 |
CN112214169B (zh) * | 2020-09-28 | 2021-08-10 | 深圳大学 | 一种数据存储装置及存储数据的迁移方法 |
KR102619300B1 (ko) * | 2020-11-27 | 2023-12-29 | 한양대학교 에리카산학협력단 | 데이터 저장 처리 장치 및 방법 |
US11515891B2 (en) | 2020-12-22 | 2022-11-29 | Intel Corporation | Application of low-density parity-check codes with codeword segmentation |
CN112650453A (zh) * | 2020-12-31 | 2021-04-13 | 北京千方科技股份有限公司 | 一种用于存储、查询交通数据的方法和系统 |
US11681471B2 (en) * | 2021-04-07 | 2023-06-20 | EMC IP Holding Company LLC | Bypassing of tier-1 storage in a streaming data storage system |
US11556416B2 (en) | 2021-05-05 | 2023-01-17 | Apple Inc. | Controlling memory readout reliability and throughput by adjusting distance between read thresholds |
KR20220169772A (ko) | 2021-06-21 | 2022-12-28 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
US11847342B2 (en) | 2021-07-28 | 2023-12-19 | Apple Inc. | Efficient transfer of hard data and confidence levels in reading a nonvolatile memory |
US11822699B1 (en) * | 2021-10-21 | 2023-11-21 | Secure Computing, Llc | Preventing surreptitious access to file data by malware |
KR20230059911A (ko) * | 2021-10-26 | 2023-05-04 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060152981A1 (en) | 2005-01-11 | 2006-07-13 | Ryu Dong-Ryul | Solid state disk controller apparatus |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0628246A (ja) * | 1991-06-24 | 1994-02-04 | Nec Corp | 記憶装置 |
KR970008188B1 (ko) * | 1993-04-08 | 1997-05-21 | 가부시끼가이샤 히다찌세이사꾸쇼 | 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치 |
JP3507132B2 (ja) * | 1994-06-29 | 2004-03-15 | 株式会社日立製作所 | フラッシュメモリを用いた記憶装置およびその記憶制御方法 |
JPH08314794A (ja) * | 1995-02-28 | 1996-11-29 | Matsushita Electric Ind Co Ltd | 安定記憶装置へのアクセス待ち時間を短縮するための方法およびシステム |
US5671388A (en) * | 1995-05-03 | 1997-09-23 | Intel Corporation | Method and apparatus for performing write operations in multi-level cell storage device |
KR100205240B1 (ko) * | 1996-09-13 | 1999-07-01 | 윤종용 | 단일 비트 및 다중 비트 셀들이 장착된 불휘발성 반도체 메모리 장치 |
JP3282525B2 (ja) * | 1996-12-20 | 2002-05-13 | 松下電器産業株式会社 | データ管理装置及びネットワークデータ管理システム |
WO2000004483A2 (en) * | 1998-07-15 | 2000-01-27 | Imation Corp. | Hierarchical data storage management |
US8078794B2 (en) * | 2000-01-06 | 2011-12-13 | Super Talent Electronics, Inc. | Hybrid SSD using a combination of SLC and MLC flash memory arrays |
US7457897B1 (en) * | 2004-03-17 | 2008-11-25 | Suoer Talent Electronics, Inc. | PCI express-compatible controller and interface for flash memory |
US6701421B1 (en) * | 2000-08-17 | 2004-03-02 | International Business Machines Corporation | Application-level memory affinity control |
US6785767B2 (en) * | 2000-12-26 | 2004-08-31 | Intel Corporation | Hybrid mass storage system and method with two different types of storage medium |
JP2003022687A (ja) | 2001-07-09 | 2003-01-24 | Mitsubishi Electric Corp | 半導体記憶装置 |
JP2003216460A (ja) | 2002-01-21 | 2003-07-31 | Hitachi Ltd | 階層ストレージ装置及びその制御装置 |
WO2004025476A1 (en) * | 2002-09-16 | 2004-03-25 | Tigi Corporation | Storage system architectures and multiple caching arrangements |
US7010645B2 (en) * | 2002-12-27 | 2006-03-07 | International Business Machines Corporation | System and method for sequentially staging received data to a write cache in advance of storing the received data |
US8788764B2 (en) * | 2003-10-08 | 2014-07-22 | Oracle International Corporation | Access controller for storage devices |
US20050251617A1 (en) * | 2004-05-07 | 2005-11-10 | Sinclair Alan W | Hybrid non-volatile memory system |
US8315973B1 (en) * | 2004-09-28 | 2012-11-20 | Symantec Operating Corporation | Method and apparatus for data moving in multi-device file systems |
KR100704037B1 (ko) * | 2005-04-15 | 2007-04-04 | 삼성전자주식회사 | 이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법 |
US8010764B2 (en) * | 2005-07-07 | 2011-08-30 | International Business Machines Corporation | Method and system for decreasing power consumption in memory arrays having usage-driven power management |
KR101257848B1 (ko) * | 2005-07-13 | 2013-04-24 | 삼성전자주식회사 | 복합 메모리를 구비하는 데이터 저장 시스템 및 그 동작방법 |
US7752382B2 (en) * | 2005-09-09 | 2010-07-06 | Sandisk Il Ltd | Flash memory storage system and method |
SG130988A1 (en) * | 2005-09-29 | 2007-04-26 | Trek 2000 Int Ltd | Portable data storage device incorporating multiple flash memory units |
CN101273413B (zh) * | 2005-09-29 | 2011-11-16 | 特科2000国际有限公司 | 使用单层单元和多层单元闪速存储器的便携式数据存储 |
US7558913B2 (en) * | 2006-06-20 | 2009-07-07 | Microsoft Corporation | Atomic commit of cache transfer with staging area |
US7496711B2 (en) * | 2006-07-13 | 2009-02-24 | International Business Machines Corporation | Multi-level memory architecture with data prioritization |
KR100771521B1 (ko) * | 2006-10-30 | 2007-10-30 | 삼성전자주식회사 | 멀티 레벨 셀을 포함하는 플래시 메모리 장치 및 그것의데이터 쓰기 방법 |
KR100833188B1 (ko) * | 2006-11-03 | 2008-05-28 | 삼성전자주식회사 | 데이터의 특성에 따라 싱글 레벨 셀 또는 멀티 레벨 셀에데이터를 저장하는 불휘발성 메모리 시스템 |
US8370562B2 (en) * | 2007-02-25 | 2013-02-05 | Sandisk Il Ltd. | Interruptible cache flushing in flash memory systems |
US7730171B2 (en) * | 2007-05-08 | 2010-06-01 | Teradata Us, Inc. | Decoupled logical and physical data storage within a database management system |
US7849275B2 (en) * | 2007-11-19 | 2010-12-07 | Sandforce, Inc. | System, method and a computer program product for writing data to different storage devices based on write frequency |
US7975105B1 (en) * | 2007-12-03 | 2011-07-05 | Yingju Sun | Solid state storage devices with changeable capacity |
-
2007
- 2007-08-14 KR KR1020070081832A patent/KR101498673B1/ko active IP Right Grant
-
2008
- 2008-01-17 US US12/015,548 patent/US20090049234A1/en not_active Abandoned
- 2008-05-27 CN CN2013102935199A patent/CN103400598A/zh active Pending
- 2008-05-27 JP JP2008138348A patent/JP2009048613A/ja active Pending
- 2008-05-27 CN CNA2008101085798A patent/CN101369451A/zh active Pending
- 2008-08-06 DE DE102008036822A patent/DE102008036822A1/de not_active Withdrawn
-
2011
- 2011-02-15 US US13/027,299 patent/US20110138115A1/en not_active Abandoned
-
2012
- 2012-10-09 US US13/647,630 patent/US8626996B2/en active Active
-
2013
- 2013-07-26 JP JP2013155538A patent/JP2013242908A/ja active Pending
- 2013-12-10 US US14/101,469 patent/US20140101377A1/en not_active Abandoned
-
2014
- 2014-01-03 US US14/146,870 patent/US20140122783A1/en not_active Abandoned
- 2014-07-29 US US14/445,126 patent/US20140337566A1/en not_active Abandoned
-
2015
- 2015-05-20 US US14/717,476 patent/US9208079B2/en active Active
-
2016
- 2016-04-15 US US15/130,464 patent/US20160231941A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060152981A1 (en) | 2005-01-11 | 2006-07-13 | Ryu Dong-Ryul | Solid state disk controller apparatus |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102014111990B4 (de) | 2013-09-18 | 2023-11-30 | Intel Corporation | Heterogener Speicherzugriff |
DE102014216130A1 (de) * | 2014-08-13 | 2016-02-18 | Siemens Aktiengesellschaft | Vorrichtung und Verfahren zur Speicherung von Protokollierungsdaten |
Also Published As
Publication number | Publication date |
---|---|
US20110138115A1 (en) | 2011-06-09 |
JP2009048613A (ja) | 2009-03-05 |
US20140122783A1 (en) | 2014-05-01 |
JP2013242908A (ja) | 2013-12-05 |
KR20090017238A (ko) | 2009-02-18 |
US20130042058A1 (en) | 2013-02-14 |
CN101369451A (zh) | 2009-02-18 |
US20090049234A1 (en) | 2009-02-19 |
US9208079B2 (en) | 2015-12-08 |
US20150261667A1 (en) | 2015-09-17 |
KR101498673B1 (ko) | 2015-03-09 |
US20160231941A1 (en) | 2016-08-11 |
US8626996B2 (en) | 2014-01-07 |
US20140337566A1 (en) | 2014-11-13 |
CN103400598A (zh) | 2013-11-20 |
US20140101377A1 (en) | 2014-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102008036822A1 (de) | Verfahren zum Speichern von Daten in einem Solid-State-Speicher, Solid-State-Speichersystem und Computersystem | |
DE102008057219B4 (de) | Verfahren zum Betreiben eines Solid-State-Speichersystems, Solid-State-Speichersystem und Computersystem | |
DE102017104150B4 (de) | Abnutzungsausgleich in Speichervorrichtungen | |
DE102020106971A1 (de) | Datenschreibverwaltung im nichtflüchtigen speicher | |
DE112020005060T5 (de) | Ratengrenze für den übergang von zonen zum öffnen | |
DE102019132371A1 (de) | Zuordnungsverwaltung logisch zu physisch unter Verwendung von nichtflüchtigem Speicher | |
DE102020112512A1 (de) | Datenspeichergerät und Betriebsverfahren dafür | |
DE112014006118B4 (de) | Spekulatives Vorab-Holen von in einem Flash-Speicher gespeicherten Daten | |
DE102020107659A1 (de) | Zonenbildung für gezonte namensräume | |
DE102018214013A1 (de) | Automatische kontinuierliche Prüfpunktsetzung | |
DE102017104125A1 (de) | Zonen von Übersetzungstabellen von logischen in physische Datenadressen mit parallelisiertem Log-Listenreplay | |
DE102015012566A1 (de) | Mehrlagenkonzept für logische speicherungsverwaltung | |
DE102017113439A1 (de) | Abbildungstabellen für Speichervorrichtungen | |
DE102018105984A1 (de) | Prioritätsbasierte interne Datenverschiebung | |
DE112020000139T5 (de) | Nicht sequentiell in zonen aufgeteilte namensräume | |
DE202010017613U1 (de) | Datenspeichervorrichtung mit host-gesteuerter Speicherbereinigung | |
DE102018105854A1 (de) | Dynamische Größenanpassung logischer Speicherblöcke | |
DE102013020269A1 (de) | Umordnen des Zurückschickens für einen Host-Lesebefehl basierend auf der Zeitschätzung des Abschlusses eines Flash-Lesebefehls | |
DE112019005511T5 (de) | Halten von schreibbefehlen in gezonten namensräumen | |
DE112020002792B4 (de) | Verschleissorientierte blockmodusumwandlung in nichtflüchtigen speichern | |
DE102018123880A1 (de) | Adaptive Verwaltung von Zwischenspeichern | |
DE102016009807A1 (de) | Korrelieren von physikalischen seitenadressen für soft-decision-dekodierung | |
DE112020004591T5 (de) | L2P-Übersetzungstechniken in begrenzten RAM-Systemen | |
DE102021115763A1 (de) | Identifizierung und klassifizierung der schreibstrompriorität | |
DE112017005782T5 (de) | Warteschlange für Speichervorgänge |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee | ||
R409 | Internal rectification of the legal status completed | ||
R409 | Internal rectification of the legal status completed | ||
R005 | Application deemed withdrawn due to failure to request examination |