DE102008033518B4 - Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit, Solid-State-Disk-Steuereinheit und Datenspeicherelement - Google Patents

Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit, Solid-State-Disk-Steuereinheit und Datenspeicherelement Download PDF

Info

Publication number
DE102008033518B4
DE102008033518B4 DE102008033518.5A DE102008033518A DE102008033518B4 DE 102008033518 B4 DE102008033518 B4 DE 102008033518B4 DE 102008033518 A DE102008033518 A DE 102008033518A DE 102008033518 B4 DE102008033518 B4 DE 102008033518B4
Authority
DE
Germany
Prior art keywords
bit map
sector
sector bit
map values
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.)
Active
Application number
DE102008033518.5A
Other languages
English (en)
Other versions
DE102008033518A1 (de
Inventor
Tae Hack Lee
Kyu Wook Han
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 DE102008033518A1 publication Critical patent/DE102008033518A1/de
Application granted granted Critical
Publication of DE102008033518B4 publication Critical patent/DE102008033518B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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
    • 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/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]

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)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Read Only Memory (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit (30) mit den Schritten:- Lesen eines Sektorbitabbildungszeigers, der in einem ersten Register (41) gespeichert ist, mit einer Zustandsmaschine (45),- Lesen von Sektorbitabbildungswerten, die in einem ersten Speicherbereich (33) eines flüchtigen Speichers (31) gespeichert sind, mit der Zustandsmaschine (45),- wobei die Sektorbitabbildungswerte durch den Sektorbitabbildungszeiger angezeigt sind und die Sektorbitabbildungswerte angeben, welche Sektoren eines externen nichtflüchtigen Speichers (50), die eine Seite bilden, zu lesen oder nicht zu lesen sind,- Speichern der aus dem ersten Speicherbereich gelesenen Sektorbitabbildungswerte in ein zweites Register,- Bereitstellen der Sektorbitabbildungswerte von dem zweiten Register an die Zustandsmaschine (45), und- Lesen von Daten aus mindestens einem der Sektoren, aber nicht aus allen Sektoren, der Seite basierend auf den Sektorbitabbildungswerten mit der Zustandsmaschine (45).

Description

  • Die vorliegende Erfindung betrifft ein Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit, eine Solid-State-Disk-Steuereinheit und ein Datenspeicherelement.
  • Herkömmlicherweise werden Magnetplatten als Datenspeicherelemente in elektronischen Systemen, wie Computersystemen, verwendet. Mit der Entwicklung der Halbleitertechnologie wurden anstelle von Magnetplatten Solid-State-Disks (SSDs) unter Verwendung von elektrisch löschbaren und programmierbaren Nurlesespeichern (EEPROM) (z. B. EEPROM vom NAND-Typ oder EEPROM vom NOR-Typ) basierend auf einem nichtflüchtigen Speicher als Datenspeicherelement in Computersystemen und tragbaren Geräten zunehmend verwendet.
  • Da die SSDs keine mechanischen Antriebselemente, wie einen Motor, enthalten, der im Wesentlichen in Festplattenlaufwerken (HDDs) enthalten ist, erzeugen die SSDs während des Betriebs kaum Wärme und Geräusche. Außerdem weisen die SSDs eine hohe Zugriffsgeschwindigkeit, eine hohe Integration und Stabilität gegen äußere Einflüsse auf und werden daher als Datenspeicherelemente bevorzugt.
  • Darüber hinaus ist die Datenübertragungsgeschwindigkeit der SSDs viel höher als die von HDDs.
  • Wenn eine SSD als Datenspeicherelement verwendet wird, steuert eine Steuereinheit die Datenübertragung zwischen einem Host und einem EEPROM-basierten nichtflüchtigen Speicher. Die Steuereinheit überträgt Daten zu und empfängt Daten vom nichtflüchtigen Speicher unter der Steuerung einer Firmware, wenn Daten jeder Seite verarbeitet werden, was die Leistung der SSD beeinträchtigt.
  • Kim, Jesung, et al. A space-efficient flash translation layer for Compact-Flash systems. IEEE Transactions on Consumer Electronics, 2002, 48. Jg., Nr. 2, S. 366-375 offenbart ein Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuerein heit.
  • US 2006/0002096 A1 offenbart ein Flash-Speicher-System mit einem Pufferspeicher.
  • US 2005/0114587 A1 offenbart eine ExpressCard mit einem Flash-Speicher, wobei der Flash-Speicher eine Mehrzahl von Flash-Speicher-Chips aufweist. Die Flash-Speicher-Chips sind über zwei voneinander unabhängige und jeweils verschachtelte Kanäle mit einer Steuereinheit des Flash-Speichers verbunden.
  • Der Erfindung liegt die technische Aufgabe zugrunde, ein Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit, eine Solid-State-Disk-Steuereinheit und ein Datenspeicherelement zur Verfügung zu stellen, die eine optimale Leistungsfähigkeit aufweisen und/oder eine verschachtelte Leseoperation mittels Hardware ohne Einsatz von Firmware durchführen.
  • Die Erfindung löst diese Aufgabe durch ein Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit mit den Merkmalen des Anspruch 1, 6 oder 10, eine Solid-State-Disk-Steuereinheit mit den Merkmalen des Anspruch 11, 12 oder 13 und ein Datenspeicherelement mit den Merkmalen des Anspruch 15.
  • Vorteilhafte Ausführungsformen der Erfindung sind in den Unteransprüchen angegeben, deren Wortlaut hiermit durch Bezugnahme zum Inhalt dieser Beschreibung gemacht wird, um unnötige Textwiederholungen zu vermeiden.
  • Vorteilhafte Ausführungsformen der Erfindung, die unten ausführlich beschrieben werden, sind in den Zeichnungen dargestellt. Hierbei zeigt/zeigen:
    • 1 ein Blockdiagramm eines Systems einer Solid-State-Disk(SSD)-Steuereinheit gemäß einigen Ausführungsformen der vorliegenden Erfindung,
    • 2 ein Flussdiagramm eines Datenverarbeitungsverfahrens der in 1 dargestellten SSD-Steuereinheit,
    • 3A und 3B Schaubilder zur Erläuterung der zufälligen Datenausgabeoperation der in 1 dargestellten SSD-Steuereinheit,
    • 4 ein Flussdiagramm einer verschachtelten Hardware-Leseoperation, die von der in 1 dargestellten SSD-Steuereinheit durchgeführt wird, und
    • 5A und 5B Diagramme zur Erläuterung einer zufälligen Datenausgabeoperation für die verschachtelte Hardware-Leseoperation der in 1 dargestellten SSD-Steuereinheit.
  • In den Zeichnungen können die Abmessungen und relativen Abmessungen von Schichten und Bereichen zum Zwecke der Deutlichkeit vergrößert sein. Gleiche Bezugszeichen bezeichnen gleiche Elemente.
  • 1 ist ein Blockdiagramm eines Systems 10, das eine Solid-State-Disk(SSD)-Steuereinheit 30 gemäß einigen Ausführungsformen der vorliegenden Erfindung beinhaltet. Mit Bezug zu 1 beinhaltet das System 10, das ein Computersystem oder ein mobiles Gerät sein kann, einen Host 20, die SSD-Steuereinheit 30 und ein nichtflüchtiges Speicherelement 50. Eine SSD beinhaltet das nichtflüchtige Speicherelement 50 oder sie beinhaltet die SSD-Steuereinheit 30 und das nichtflüchtige Speicherelement 50.
  • Der Host 20 überträgt einen Operationsbefehl (z. B. einen Lesebefehl, einen Programmierbefehl oder einen Löschbefehl) und Adressen über eine Hostschnittstelle (Host-I/F) 49 und einen Systembus BUS zur SSD-Steuereinheit 30. Alternativ kann der Host 20 den Operationsbefehl und die Adressen direkt über die Host-I/F 49 zur SSD-Steuereinheit 30 übertragen. Die SSD-Steuereinheit 30 beinhaltet einen flüchtigen Speicher 31, eine Speichersteuereinheit (oder eine Flashspeichersteuereinheit) 39, einen Pufferspeicher 47 und die Host-I/F 49.
  • Der flüchtige Speicher 31 ist durch einen dynamischen Direktzugriffspeicher (DRAM) oder einen statischen Direktzugriffspeicher (SRAM) implementiert und beinhaltet eine Mehrzahl von Speicherbereichen 33, 35 und 37, die jeweils Sektorbitabbildungswerte (sector bit map values) speichern. Die in den Speicherbereichen 33, 35 und 37 gespeicherten Sektorbitabbildungswerte können unter Verwendung spezieller Hardware oder Firmware programmiert oder festgesetzt werden.
  • Die Speichersteuereinheit 39 beinhaltet ein erstes Register (oder ein Sektorbitabbildungszeigerregister) 41, das einen Sektorbitabbildungszeiger speichert, ein zweites Register (oder ein Sektorbitabbildungsregister) 43, das Sektorbitabbildungswerte speichert, die vom flüchtigen Speicher 31 basierend auf dem Sektorbitabbildungszeiger ausgegeben sind, und eine Zustandsmaschine 45. Die Zustandsmaschine 45 schreibt über mindestens einen zugehörigen Kanal aus einer Mehrzahl von Kanälen 51, 57, 63 und 69 Daten DATA in das nichtflüchtige Speicherelement 50 ein oder liest Daten DATA daraus aus, wobei eine Mehrzahl von Steuersignalen, wie ein Befehlzwischenspeicherfreigabe(CLE)-Signal, ein Chipfreigabe(CE)-Signal, ein Schreibfreigabe(WE)-Signal, ein Adressenzwischenspeicherfreigabe(ALE)-Signal, ein Lese/Belegt(R/B)-Ausgabesignal und ein Schreibfreigabe(RE)-Signal, verwendet wird.
  • Die von der Zustandsmaschine 45 aus dem nichtflüchtigen Speicherelement 50 gelesenen Daten DATA können über den Systembus BUS temporär im Pufferspeicher 47 gespeichert werden. Der Pufferspeicher 47 kann Daten DATA, die zwischen dem Host 20 und dem nichtflüchtigen Speicherelement 50 übertragen werden, temporär speichern. Die Host-I/F 49 überträgt die Daten DATA zum Host 20 und empfängt sie von ihm. Die Host-I/F 49 kann ein serielles Advanced-Technology-Attachment(ATA)-Protokoll, ein paralleles ATA-Protokoll oder andere Kommunikationsprotokolle verwenden.
  • Die SSD-Steuereinheit 30 und das nichtflüchtige Speicherelement 50 übertragen die Daten DATA über mindestens einen Kanal aus der Mehrzahl von Kanälen 51, 57, 63 und 69. Die beiden Chips 53 und 55, 59 und 61, 65 und 67 oder 71 und 73 können mit jedem der Kanäle 51, 57, 63 und 69 verbunden sein. Die Anzahl der mit jedem der Kanäle 51, 57, 63 und 69 verbundenen Chips kann jedoch Eins oder mehr als Zwei betragen.
  • Jeder der Chips 53, 55, 59, 61, 65, 67, 71 und 73 beinhaltet einen Seitenpuffer (nicht gezeigt) und ein Speicherzellenfeld (nicht gezeigt), das eine Mehrzahl von Speicherzellen beinhaltet. Jede der Speicherzellen kann durch elektrisch löschbare und programmierbare Flash-Nurlesespeicher (EEPROM) implementiert sein. Der Flash-EEPROM kann durch eine Single-Level-Cell(SLC)-Zelle oder eine Multi-Level-Cell(MLC)-Zelle implementiert sein.
  • 2 ist ein Flussdiagramm eines Datenverarbeitungsverfahrens der in 1 dargestellten SSD-Steuereinheit 30. Die 3A und 3B sind Diagramme zur Erläuterung der zufälligen Datenausgabeoperation von der in 1 dargestellten SSD-Steuereinheit 30. Hier bezeichnet „tR“ die Datenübertragungsdauer von einer Speicherzelle im Speicherzellenfeld zum Seitenpuffer.
  • Mit Bezug zu den 1 bis 3B wird eine zufällige Datenausgabeoperation durch Lesen mindestens eines Sektors mit einem Sektorbitabbildungswert von „1“ aus „n“ Sektoren (wobei „n“ eine natürliche Zahl ist, zum Beispiel 8), die eine erste Seite des mit dem ersten Kanal 51 verbundenen ersten Chips 53 bilden, durchgeführt. Hier kann ein einzelner Sektor „m“ Bytes umfassen (wobei „m“ eine natürliche Zahl ist, zum Beispiel 512 oder 1024).
  • Bei der zufälligen Datenausgabeoperation erzeugt die Zustandsmaschine 45 die Mehrzahl von Steuersignalen, d. h. das CLE-Signal, das CE-Signal, das WE-Signal, das ALE-Signal, das R/B-Ausgabesignal und das RE-Signal, um in Abhängigkeit von einem Lesebefehl READ, der vom Host 20 ausgegeben worden ist, die Daten DATA zu lesen, die in der ersten Seite des ersten Chips 53 gespeichert sind, der mit dem ersten Kanal 51 verbunden ist. Der erste Chip 53 analysiert die Steuersignale und führt den Lesebefehl READ aus.
  • Die Zustandsmaschine 45 liest einen Sektorbitabbildungszeiger, der im ersten Register 41 gespeichert ist, liest Sektorbitabbildungswerte (z. B. 01100010), die im ersten Speicherbereich 33 des flüchtigen Speichers 31 gespeichert sind, der durch den Sektorbitabbildungszeiger angezeigt ist, und speichert die Sektorbitabbildungswerte im zweiten Register 43 in Operation S10 (2). Beispielsweise gibt unter den Sektorbitabbildungswerten, z. B. 01100010, eine „1“ einen gültigen Sektor an und eine „0“ gibt einen ungültigen Sektor an oder umgekehrt.
  • Die Zustandsmaschine 45 liest und analysiert die Sektorbitabbildungswerte (z. B. 01100010), die im zweiten Register 43 gespeichert sind, und gibt eine Sektoradresse und einen zufälligen Datenausgabebefehl sequentiell aus, um Sektor 2, Sektor 6 und Sektor 7 aus der ersten Seite (oder dem Seitenpuffer des ersten Chips 53) basierend auf dem Ergebnis der Analyse in Operation S20 (2) sequentiell zu lesen, wie es in 3A dargestellt ist. Mit anderen Worten, die Zustandsmaschine 45 liest gemäß der zufälligen Datenausgabeoperation aus den Sektorbitabbildungswerten (z. B. 01100010), die im zweiten Register 43 gespeichert sind, von der ersten Seite oder dem Seitenpuffer des ersten Chips 53 nur Sektoren (z. B. Sektor 2, Sektor 6 und Sektor 7), die einen Sektorbitabbildungswert von „1“ aufweisen.
  • Die Zustandsmaschine 45 kann den gelesenen Sektor 2, Sektor 6 und Sektor 7 über den Systembus BUS zum Pufferspeicher 47 übertragen, um sie im Pufferspeicher 47 zu speichern. Alternativ kann die Zustandsmaschine 45 den gelesenen Sektor 2, Sektor 6 und Sektor 7 direkt zum Pufferspeicher 47 übertragen. Dementsprechend liest die SSD-Steuereinheit 30 nicht alle Sektoren von einer Seite, sondern liest stattdessen nur selektiv mindestens einen gültigen Sektor von der Seite, basierend auf Sektorbitabbildungswerten, wodurch sie eine erhöhte Leistungsfähigkeit aufweist.
  • 4 ist ein Flussdiagramm einer verschachtelten Hardware-Leseoperation, die von der in 1 abgebildeten SSD-Steuereinheit 30 durchgeführt wird. Die 5A und 5B sind Diagramme zur Erläuterung einer zufälligen Datenausgabeoperation für die verschachtelte Hardware-Leseoperation der in 1 abgebildeten SSD-Steuereinheit 30. Mit Bezug zu den 1 und 4 und den 5A und 5B wird die zufällige Datenausgabeoperation durch eine verschachtelte Operation ausgeführt, bei der nur Sektoren mit einem Sektorbitabbildungswert von „1“ aus den „n“ Sektoren, die die erste Seite des ersten Chips 53 bilden, der mit dem ersten Kanal 51 verbunden ist, und nur Sektoren mit einem Sektorbitabbildungswert von „1“ aus den „n“ Sektoren, die eine zweite Seite des fünften Chips 55 bilden, der mit dem ersten Kanal 51 verbunden ist, gelesen werden.
  • Hierbei gibt in Operation S11 (4) die Zustandsmaschine 45 die Mehrzahl von Steuersignalen (d. h. das CLE-Signal, das CE-Signal, das WE-Signal, das ALE-Signal, das R/B-Ausgabesignal und das RE-Signal) an den ersten Kanal aus, um in Abhängigkeit von einem Lesebefehl READ (5A), der vom Host 20 ausgegeben ist, in der ersten Seite des ersten Chips 53 gespeicherte Daten und in der zweiten Seite des fünften Chips 55 gespeicherte Daten zu lesen.
  • Danach liest in Operation S21 (4) die Zustandsmaschine 45 einen Sektorbitabbildungszeiger, der im ersten Register 41 gespeichert ist, liest erste Sektorbitabbildungswerte (z. B. 01100010), die im ersten Speicherbereich 33 des flüchtigen Speichers 31 gespeichert sind, der durch den Sektorbitabbildungszeiger angezeigt ist, speichert die ersten Sektorbitabbildungswerte im zweiten Register 43 und liest den Sektor 2, Sektor 6 und Sektor 7 aus den „n“ Sektoren, die die erste Seite des ersten Chips 53 bilden, basierend auf den ersten Sektorbitabbildungswerten (z. B. 01100010), die im zweiten Register 43 gespeichert sind, wie es in 5A dargestellt ist. Mit anderen Worten, die Zustandsmaschine 45 liest durch die zufällige Datenausgabeoperation nur Sektoren (d. h. den Sektor 2, Sektor 6 und Sektor 7) mit einem Sektorbitabbildungswert von „1“ aus den Sektorbitabbildungswerten, 01100010, die im zweiten Register 43 gespeichert sind, aus der ersten Seite (5B) oder dem Seitenpuffer des ersten Chips 53. Die Zustandsmaschine 45 kann den gelesenen Sektor 2, Sektor 6 und Sektor 7 zum Pufferspeicher 47 direkt oder über den Systembus BUS übertragen, um sie im Pufferspeicher 47 zu speichern.
  • Nachdem die zufällige Datenausgabeoperation der ersten Seite abgeschlossen ist, liest die Zustandsmaschine 45 zweite Sektorbitabbildungswerte (z. B. 10101000), die im zweiten Speicherbereich 35 des flüchtigen Speichers 31 gespeichert sind, speichert die zweiten Sektorbitabbildungswerte im zweiten Register 43 und liest Sektor 12, Sektor 14 und Sektor 16 aus den „n“ Sektoren, die die zweite Seite des fünften Chips 55 bilden, der zweiten Seite (5B) oder dem Seitenpuffer des fünften Chips 55 basierend auf den zweiten Sektorbitabbildungswerten (d. h. 10101000), die im zweiten Register 43 gespeichert sind, in Operation S31 (4), wie es in 5A dargestellt ist. Der zweite Speicherbereich 35 kann ein Speicherbereich sein, der den Sektorbitabbildungszeiger, der im ersten Speicherbereich 33 angezeigt ist, erweitert. Mit anderen Worten, die Zustandsmaschine 45 liest nur Sektoren (d. h. den Sektor 12, Sektor 14 und Sektor 16) mit einem Sektorbitabbildungswert von „1“ aus den Sektorbitabbildungswerten, 10101000, die im zweiten Register 43 gespeichert sind, aus der zweiten Seite oder dem Seitenpuffer des fünften Chip 55 durch die zufällige Datenausgabeoperation. Die Zustandsmaschine 45 kann den gelesenen Sektor 12, Sektor 14 und Sektor 16 direkt oder über den Systembus BUS zum Pufferspeicher 47 übertragen, um sie im Pufferspeicher 47 zu speichern.
  • Dementsprechend liest in der verschachtelten Leseoperation die SSD-Steuereinheit 30 gemäß einigen Ausführungsformen der vorliegenden Erfindung automatisch Sektorbitabbildungswerte, die in jedem der Mehrzahl von Speicherbereichen des flüchtigen Speichers 31 gespeichert sind, ohne dass Firmware beteiligt ist, und liest selektiv nur mindestens einen Sektor einer bestimmten Seite, wodurch sie eine verbesserte Leistungsfähigkeit aufweist. Zur Verdeutlichung wurde die Leseoperation beschrieben, aber das Datenverarbeitungsverfahren unter Verwendung eines Zeigers gemäß einiger Ausführungsformen der vorliegenden Erfindung kann ebenso in einer Schreib- oder Programmieroperation angewendet werden.
  • Zum Beispiel liest bei der Schreiboperation (oder Programmieroperation) die Zustandsmaschine 45 einen im ersten Register 41 gespeicherten Sektorbitabbildungszeiger, liest Sektorbitabbildungswerte (z. B. 01100010), die im ersten Speicherbereich 33 des flüchtigen Speichers 31 gespeichert sind, der durch den Sektorbitabbildungszeiger angezeigt wird, und speichert die Sektorbitabbildungswerte (d. h. 01100010) im zweiten Register 43. Danach liest und analysiert die Zustandsmaschine 45 die Sektorbitabbildungswerte, 01100010, die im zweiten Register 43 gespeichert sind, und schreibt (oder programmiert) selektiv nur Sektor 2, Sektor 6 und Sektor 7 aus den Daten, die vom Host 20 zum ersten Chip 53 über den Kanal 51 ausgegeben sind, basierend auf dem Ergebnis der Analyse (z. B. dem Ergebnis der Analyse, ob jeder Sektorbitabbildungswert „1“ oder „0“ beträgt).
  • Außerdem kann die Zustandsmaschine 45 in der verschachtelten Operation nur mindestens einen Sektor mit einem Sektorbitabbildungswert von „1“ in die erste Seite des ersten Chips 53, der mit dem ersten Kanal 51 verbunden ist, und nur mindestens ein Sektor mit einem Sektorbitabbildungswert von „1“ in die zweite Seite des fünften Chips 55, der mit dem ersten Kanal 51 verbunden ist, schreiben oder programmieren.
  • Zum Beispiel liest die Zustandsmaschine 45 einen Sektorbitabbildungszeiger, der im ersten Register 41 gespeichert ist, in Abhängigkeit von einem Schreib- oder Programmierbefehl, der vom Host 20 ausgegeben worden ist. Danach liest die Zustandsmaschine 45 die ersten Sektorbitabbildungswerte (z. B. 01100010), die im ersten Speicherbereich 33 des flüchtigen Speichers 31 gespeichert sind, der durch den Sektorbitabbildungszeiger angezeigt ist, speichert die ersten Sektorbitabbildungswerte im zweiten Register 43 und schreibt selektiv den Sektor 2, Sektor 6 und Sektor 7 von Daten, die vom Host 20 ausgegeben sind, in die erste Seite des ersten Chips 53 basierend auf den ersten Sektorbitabbildungswerten (d. h. 01100010), die im zweiten Register 43 gespeichert sind. Nach Beenden der Schreib- oder Programmieroperation der ersten Seite liest die Zustandsmaschine 45 die zweiten Sektorbitabbildungswerte (z. B. 10101000), die im zweiten Speicherbereich 35 des flüchtigen Speichers 31 gespeichert sind, speichert die zweiten Sektorbitabbildungswerte im zweiten Register 43 und schreibt selektiv Sektor 12, Sektor 14 und Sektor 16 von Daten, die vom Host 20 ausgegeben sind, in die zweite Seite des fünften Chips 55 basierend auf den zweiten Sektorbitabbildungswerten (d. h. 10101000), die im zweiten Register 43 gespeichert sind.
  • Dementsprechend liest bei der verschachtelten Schreib- oder Programmieroperation die SSD-Steuereinheit 30 gemäß einigen Ausführungsformen der vorliegenden Erfindung automatisch Sektorbitabbildungswerte, die in jedem der Mehrzahl von Speicherbereichen des flüchtigen Speichers 31 gespeichert sind, ohne dass Firmware beteiligt ist, und schreibt oder programmiert basierend auf den Sektorbitabbildungswerten selektiv nur mindestens einen Sektor in Daten, die von einem Host ausgegeben sind, in eine bestimmte Seite. Da die SSD-Steuereinheit 30 nicht unnötig alle Daten auf eine bestimmte Seite schreibt oder programmiert, ist die Leistungsfähigkeit der SSD-Steuereinheit 30 erhöht.
  • Gemäß der vorliegenden Erfindung liest in einer verschachtelten Leseoperation eine SSD-Steuereinheit automatisch Sektorbitabbildungswerte, die in jedem einer Mehrzahl von Speicherbereichen eines flüchtigen Speichers gespeichert sind, ohne Beteiligung von Firmware und liest selektiv nur mindestens einen Sektor aus einer bestimmten Seite, wodurch sie eine erhöhte Leistung aufweist. Außerdem liest die SSD-Steuereinheit automatisch Sektorbitabbildungswerte, die in jedem der Mehrzahl von Speicherbereichen des flüchtigen Speichers gespeichert sind, ohne Beteiligung von Firmware und schreibt oder programmiert nur mindestens einen Sektor in von einem Host ausgegebenen Daten in eine bestimmte Seite basierend auf den Sektorbitabbildungswerten, wodurch sie eine erhöhte Leistung aufweist.

Claims (15)

  1. Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit (30) mit den Schritten: - Lesen eines Sektorbitabbildungszeigers, der in einem ersten Register (41) gespeichert ist, mit einer Zustandsmaschine (45), - Lesen von Sektorbitabbildungswerten, die in einem ersten Speicherbereich (33) eines flüchtigen Speichers (31) gespeichert sind, mit der Zustandsmaschine (45), - wobei die Sektorbitabbildungswerte durch den Sektorbitabbildungszeiger angezeigt sind und die Sektorbitabbildungswerte angeben, welche Sektoren eines externen nichtflüchtigen Speichers (50), die eine Seite bilden, zu lesen oder nicht zu lesen sind, - Speichern der aus dem ersten Speicherbereich gelesenen Sektorbitabbildungswerte in ein zweites Register, - Bereitstellen der Sektorbitabbildungswerte von dem zweiten Register an die Zustandsmaschine (45), und - Lesen von Daten aus mindestens einem der Sektoren, aber nicht aus allen Sektoren, der Seite basierend auf den Sektorbitabbildungswerten mit der Zustandsmaschine (45).
  2. Datenverarbeitungsverfahren nach Anspruch 1, wobei das Lesen in Abhängigkeit von mindestens einem zufälligen Datenausgabebefehl durchgeführt wird.
  3. Datenverarbeitungsverfahren nach Anspruch 1 oder 2, weiter umfassend, dass - Daten, die aus mindestens einem der Sektoren gelesen wurden, in einem Pufferspeicher gespeichert werden.
  4. Datenverarbeitungsverfahren nach einem der Ansprüche 1 bis 3, - wobei jeder Sektorbitabbildungswert ein binärer Wert ist, wobei ein erster binärer Wert einen zu lesenden Sektor der Seite bezeichnet und ein zweiter binärer Wert einen nicht zu lesenden Sektor der Seite bezeichnet.
  5. Datenverarbeitungsverfahren nach einem der Ansprüche 1 bis 4, weiter umfassend, - bei einer Schreiboperation, Lesen von Sektorbitabbildungswerten, die in einem zweiten Speicherbereich des flüchtigen Speichers gespeichert sind, und - Schreiben von Daten in die Sektoren einer Seite des nichtflüchtigen Speichers in Abhängigkeit von den aus dem zweiten Speicherbereich gelesenen Sektorbitabbildungswerten.
  6. Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit (30) mit den Schritten: - Lesen eines Sektorbitabbildungszeigers, der in einem ersten Register (41) gespeichert ist, mit einer Zustandsmaschine (45), - Lesen von ersten Sektorbitabbildungswerten, die in einem ersten Speicherbereich (33) eines flüchtigen Speichers (31) gespeichert sind, mit der Zustandsmaschine (45), - wobei die ersten Sektorbitabbildungswerte durch den Sektorbitabbildungszeiger angezeigt sind und die ersten Sektorbitabbildungswerte angeben, welche Sektoren eines ersten nichtflüchtigen Speichers (50), die eine erste Seite bilden, zu lesen oder nicht zu lesen sind, - Speichern der aus dem ersten Speicherbereich gelesenen ersten Sektorbitabbildungswerte in ein zweites Register, - Bereitstellen der ersten Sektorbitabbildungswerte von dem zweiten Register an die Zustandsmaschine (45), - selektives Lesen von Daten mit der Zustandsmaschine (45) aus mindestens einem Sektor (53), aber nicht aus allen Sektoren, aus einer Mehrzahl von Sektoren des ersten nichtflüchtigen Speichers, die die erste Seite bilden, basierend auf den ersten Sektorbitabbildungswerten, und - selektives Lesen von Daten mit der Zustandsmaschine (45) aus mindestens einem Sektor aus einer Mehrzahl von Sektoren eines zweiten nichtflüchtigen Speichers (55), die eine zweite Seite bilden, basierend auf zweiten Sektorbitabbildungswerten, die in einem zweiten Speicherbereich (35) des flüchtigen Speichers (50) gespeichert sind, - wobei die ersten und die zweiten Sektorbitabbildungswerte von der Zustandsmaschine (45) ohne Beteiligung einer Firmware gelesen werden.
  7. Datenverarbeitungsverfahren nach Anspruch 6, weiter umfassend, dass für eine verschachtelte Leseoperation ein Lesebefehl zu einem Kanal übertragen wird, der mit dem ersten nichtflüchtigen Speicher und dem zweiten nichtflüchtigen Speicher verbunden ist.
  8. Datenverarbeitungsverfahren nach Anspruch 6 oder 7, wobei das selektive Lesen basierend auf den ersten Sektorbitabbildungswerten umfasst: - Lesen der ersten Sektorbitabbildungswerte, die in dem ersten Speicherbereich gespeichert sind, und - Analysieren der ersten Sektorbitabbildungswerte und selektives Lesen des mindestens einen Sektors, aber nicht aller Sektoren, aus der Mehrzahl von Sektoren, die die erste Seite bilden, basierend auf einem Ergebnis der Analyse in Abhängigkeit von mindestens einem ersten zufälligen Datenausgabebefehl.
  9. Datenverarbeitungsverfahren nach Anspruch 8, wobei das selektive Lesen basierend auf zweiten Sektorbitabbildungswerten umfasst: - Lesen der zweiten Sektorbitabbildungswerte, die in dem zweiten Speicherbereich gespeichert sind, und - Analysieren der zweiten Sektorbitabbildungswerte und selektives Lesen des mindestens einen Sektors aus der Mehrzahl von Sektoren, die die zweite Seite bilden, basierend auf einem Ergebnis der Analyse in Abhängigkeit von mindestens einem zweiten zufälligen Datenausgabebefehl.
  10. Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit (30), wobei das Datenverarbeitungsverfahren die Schritte umfasst: - Lesen eines Sektorbitabbildungszeigers, der in einem ersten Register (41) gespeichert ist, mit einer Zustandsmaschine (45), - Lesen von Sektorbitabbildungswerten, die in einem Speicherbereich eines flüchtigen Speichers gespeichert sind, mit der Zustandsmaschine (45), - wobei die Sektorbitabbildungswerte durch den Sektorbitabbildungszeiger angezeigt sind, - Speichern der aus dem Speicherbereich gelesenen Sektorbitabbildungswerte in ein zweites Register, - Bereitstellen der Sektorbitabbildungswerte von dem zweiten Register an die Zustandsmaschine (45), und - selektives Programmieren mindestens eines Sektors, aber nicht aller Sektoren, aus einer Mehrzahl von Sektoren eines externen nichtflüchtigen Speichers, die eine Seite bilden, mit Daten, die von einem Host ausgegeben werden, basierend auf den Sektorbitabbildungswerten mit der Zustandsmaschine (45).
  11. Solid-State-Disk-Steuereinheit (30), umfassend: - einen flüchtigen Speicher (31) mit einem Speicherbereich (33, 35, 37), der Sektorbitabbildungswerte speichert, und - eine Speichersteuereinheit, umfassend: - ein erstes Register (41), - ein zweites Register (43) und - eine Zustandsmaschine (45), - wobei das erste Register zum Speichern eines Zeigers ausgebildet ist und die Zustandsmaschine dazu ausgebildet ist, den Zeiger auszulesen, der im ersten Register (41) gespeichert ist, und die Sektorbitabbildungswerte auszulesen, die in dem flüchtigen Speicher (31) gespeichert sind, - wobei die Sektorbitabbildungswerte durch den Zeiger angezeigt sind, - wobei das zweite Register (43) dazu ausgebildet ist, die gelesenen Sektorbitabbildungswerte zu empfangen und zu speichern, und - wobei die Zustandsmaschine (45) dazu ausgebildet ist, die Sektorbitabbildungswerte zu lesen und zu analysieren, die in dem zweiten Register gespeichert sind, um eine SektorAdresse und einen zufälligen Datenausgabebefehl auszugeben, um mindestens einen Sektor, aber nicht alle Sektoren, aus einer Mehrzahl von Sektoren eines externen nichtflüchtigen Speichers, die eine Seite bilden, basierend auf der Analyse der im zweiten Register (43) gespeicherten Sektorbitabbildungswerte zu lesen.
  12. Solid-State-Disk-Steuereinheit, umfassend: - einen flüchtigen Speicher (31) mit einem Speicherbereich (33, 35, 37), der Sektorbitabbildungswerte speichert, und - eine Speichersteuereinheit, die dazu ausgebildet ist: - mit einer Zustandsmaschine (45) einen Sektorbitabbildungszeiger zu lesen, der in einem ersten Register gespeichert ist, - mit der Zustandsmaschine (45) die Sektorbitabbildungswerte zu lesen, die in dem Speicherbereich gespeichert sind, wobei die Sektorbitabbildungswerte durch den Sektorbitabbildungszeiger angezeigt sind, - die aus dem Speicherbereich gelesenen Sektorbitabbildungswerte in ein zweites Register zu speichern, - der Zustandsmaschine (45) die Sektorbitabbildungswerte von dem zweiten Register bereitzustellen, und - mindestens einen Sektor, aber nicht alle Sektoren, aus einer Mehrzahl von Sektoren eines externen nichtflüchtigen Speichers, die eine Seite bilden, selektiv mit der Zustandsmaschine (45) mit Daten, die von einem Host ausgegeben sind, basierend auf den Sektorbitabbildungswerten, zu programmieren.
  13. Solid-State-Disk-Steuereinheit (30), umfassend: - einen flüchtigen Speicher (31) mit einem ersten Speicherbereich (33), der erste Sektorbitabbildungswerte speichert, und einem zweiten Speicherbereich (35), der zweite Sektorbitabbildungswerte speichert, und - eine Speichersteuereinheit (39), die dazu ausgebildet ist: - mit einer Zustandsmaschine (45) einen Sektorbitabbildungszeiger zu lesen, der in einem ersten Register gespeichert ist, - mit der Zustandsmaschine (45) die ersten Sektorbitabbildungswerte zu lesen, die in dem ersten Speicherbereich gespeichert sind, wobei die ersten Sektorbitabbildungswerte durch den Sektorbitabbildungszeiger angezeigt sind und die ersten Sektorbitabbildungswerte angeben, welche Sektoren eines ersten externen nichtflüchtigen Speichers, die eine erste Seite bilden, zu lesen oder nicht zu lesen sind, - die ersten Sektorbitabbildungswerte in ein zweites Register zu speichern, - der Zustandsmaschine die ersten Sektorbitabbildungswerte aus dem zweiten Register bereitzustellen, - selektiv mindestens einen Sektor, aber nicht alle Sektoren, aus einer Mehrzahl von Sektoren der ersten Seite des ersten externen nichtflüchtigen Speichers basierend auf den ersten Sektorbitabbildungswerten mit der Zustandsmaschine (45) zu lesen, und - selektiv mindestens einen Sektor aus einer Mehrzahl von Sektoren eines zweiten externen nichtflüchtigen Speichers, die eine zweite Seite bilden, basierend auf den zweiten Sektorbitabbildungswerten, die in dem zweiten Speicherbereich gespeichert sind, mit der Zustandsmaschine (45) zu lesen, - wobei die Speichersteuereinheit (39) nicht von einer Firmware gesteuert ist, um erste und zweite Sektorbitabbildungswerte zu lesen.
  14. Solid-State-Disk-Steuereinheit nach Anspruch 13, wobei die Speichersteuereinheit einen Lesebefehl an einen Kanal ausgibt, der mit dem ersten externen nichtflüchtigen Speicher und dem zweiten externen nichtflüchtigen Speicher verbunden ist, wenn die Leseoperation eine überlappende Leseoperation ist.
  15. Datenspeicherelement, umfassend: - einen nichtflüchtigen Speicher (50), - eine Solid-State-Disk-Steuereinheit (30) und - einen Kanal (51, 57, 63, 69), der zwischen dem nichtflüchtigen Speicher (50) und der Solid-State-Disk-Steuereinheit (30) eingeschleift ist, - wobei die Solid-State-Disk-Steuereinheit (30) aufweist: - einen flüchtigen Speicher mit einem Speicherbereich, der Sektorbitabbildungswerte speichert, und - eine Speichersteuereinheit, die dazu ausgebildet ist: - mit einer Zustandsmaschine (45) einen Sektorbitabbildungszeiger zu lesen, der in einem ersten Register gespeichert ist, - mit der Zustandsmaschine (45) die Sektorbitabbildungswerte zu lesen, die in dem Speicherbereich des flüchtigen Speicher gespeichert sind, wobei die Sektorbitabbildungswerte durch den Sektorbitabbildungszeiger angezeigt sind und die Sektorbitabbildungswerte angeben, welche Sektoren des nichtflüchtigen Speichers, die eine Seite bilden, zu lesen oder nicht zu lesen sind, - die von dem Speicherbereich gelesenen Sektorbitabbildungswerte in ein zweites Register zu speichern, - der Zustandsmaschine (45) die Sektorbitabbildungswerte von dem zweiten Register bereitzustellen, und - mindestens einen Sektor, aber nicht alle Sektoren, aus einer Mehrzahl von Sektoren der Seite basierend auf den Sektorbitabbildungswerten selektiv mit der Zustandsmaschine (45) zu lesen.
DE102008033518.5A 2007-07-19 2008-07-14 Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit, Solid-State-Disk-Steuereinheit und Datenspeicherelement Active DE102008033518B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2007-0071998 2007-07-19
KR1020070071998A KR101424782B1 (ko) 2007-07-19 2007-07-19 솔리드 스테이트 디스크 컨트롤러 및 솔리드 스테이트디스크 컨트롤러의 데이터 처리 방법

Publications (2)

Publication Number Publication Date
DE102008033518A1 DE102008033518A1 (de) 2009-02-05
DE102008033518B4 true DE102008033518B4 (de) 2021-10-14

Family

ID=40176125

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102008033518.5A Active DE102008033518B4 (de) 2007-07-19 2008-07-14 Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit, Solid-State-Disk-Steuereinheit und Datenspeicherelement

Country Status (6)

Country Link
US (1) US8738842B2 (de)
JP (1) JP5368735B2 (de)
KR (1) KR101424782B1 (de)
CN (1) CN101349963B (de)
DE (1) DE102008033518B4 (de)
TW (1) TWI479502B (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101070511B1 (ko) * 2009-03-20 2011-10-05 (주)인디링스 Ssd 컨트롤러 및 ssd 컨트롤러의 동작 방법
US20110252435A1 (en) * 2009-07-13 2011-10-13 Juhnho Park Disk drive
US8164936B2 (en) * 2009-10-14 2012-04-24 Seagate Technology Llc Switched memory devices
US9229809B2 (en) 2011-09-11 2016-01-05 Microsoft Technology Licensing Llc Nonvolatile media journaling of verified data sets
US8456972B2 (en) * 2011-09-12 2013-06-04 Microsoft Corporation Efficient access to storage devices with usage bitmaps
CN103377130A (zh) * 2012-04-13 2013-10-30 日立(中国)研究开发有限公司 数据存储设备以及相应的数据存储方法
CN106155578A (zh) * 2015-04-27 2016-11-23 四川效率源信息安全技术有限责任公司 手机闪存芯片数据重组的方法
KR102465321B1 (ko) 2016-03-02 2022-11-11 에스케이하이닉스 주식회사 데이터 저장 장치
KR102535104B1 (ko) * 2018-03-19 2023-05-23 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
KR20190128392A (ko) * 2018-05-08 2019-11-18 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
CN110262753A (zh) * 2019-05-30 2019-09-20 合肥致存微电子有限责任公司 一种加快命令响应的方法、***以及ssd
CN114063933B (zh) * 2021-12-02 2022-06-28 深圳市宝佳乐电子科技有限公司 区块管理方法、存储器控制器和存储器存储装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050114587A1 (en) 2003-11-22 2005-05-26 Super Talent Electronics Inc. ExpressCard with On-Card Flash Memory with Shared Flash-Control Bus but Separate Ready Lines
US20060002096A1 (en) 2004-06-30 2006-01-05 Kuang-Yu Wang System and method for providing a flash memory assembly

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6481028A (en) * 1987-09-22 1989-03-27 Fanuc Ltd Data memory system
JPH0628261A (ja) 1992-04-17 1994-02-04 Hitachi Ltd データ転送方法及び装置
JPH07262059A (ja) 1994-03-25 1995-10-13 Sony Corp ファイル管理方法
JPH07319636A (ja) 1994-05-27 1995-12-08 Fuji Xerox Co Ltd 磁気ディスクのデータ格納制御装置
JPH0877099A (ja) * 1994-09-02 1996-03-22 Fuji Xerox Co Ltd Dmaコントローラ
GB2291990A (en) * 1995-09-27 1996-02-07 Memory Corp Plc Flash-memory management system
JP3063669B2 (ja) 1997-04-04 2000-07-12 三菱電機株式会社 情報処理システム
JP3849241B2 (ja) * 1997-08-11 2006-11-22 ソニー株式会社 記憶装置
US5956743A (en) * 1997-08-25 1999-09-21 Bit Microsystems, Inc. Transparent management at host interface of flash-memory overhead-bytes using flash-specific DMA having programmable processor-interrupt of high-level operations
JP2000285017A (ja) * 1999-03-31 2000-10-13 Seiko Epson Corp 記憶装置
US7702831B2 (en) * 2000-01-06 2010-04-20 Super Talent Electronics, Inc. Flash memory controller for electronic data flash card
US7318117B2 (en) * 2004-02-26 2008-01-08 Super Talent Electronics, Inc. Managing flash memory including recycling obsolete sectors
US20060075395A1 (en) * 2004-10-01 2006-04-06 Lee Charles C Flash card system
JP3923715B2 (ja) * 2000-09-29 2007-06-06 株式会社東芝 メモリカード
US7089379B1 (en) * 2002-06-28 2006-08-08 Emc Corporation Large high bandwidth memory system
US7675828B2 (en) 2003-02-25 2010-03-09 Lg Electronics Inc. Recording medium having data structure for managing at least a data area of the recording medium and recording and reproducing methods and apparatuses
KR100528482B1 (ko) * 2003-12-31 2005-11-15 삼성전자주식회사 데이타를 섹터 단위로 랜덤하게 입출력할 수 있는 플래시메모리 시스템
EP1607879A1 (de) * 2004-06-14 2005-12-21 Dialog Semiconductor GmbH Speicherverschachtelung in einem Rechnersystem
JP4665510B2 (ja) * 2004-12-20 2011-04-06 ソニー株式会社 暗号化データ記録装置
KR100621631B1 (ko) * 2005-01-11 2006-09-13 삼성전자주식회사 반도체 디스크 제어 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050114587A1 (en) 2003-11-22 2005-05-26 Super Talent Electronics Inc. ExpressCard with On-Card Flash Memory with Shared Flash-Control Bus but Separate Ready Lines
US20060002096A1 (en) 2004-06-30 2006-01-05 Kuang-Yu Wang System and method for providing a flash memory assembly

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Kim: A SPACEEFFICIENT FLASH TRANSLATION LAYER FOR COMPACTFLASH SYSTEMS. In: IEEE Transactions on Consumer Electronics, 2002, 366-375.

Also Published As

Publication number Publication date
TW200905696A (en) 2009-02-01
DE102008033518A1 (de) 2009-02-05
TWI479502B (zh) 2015-04-01
KR101424782B1 (ko) 2014-08-04
KR20090008766A (ko) 2009-01-22
CN101349963B (zh) 2013-03-06
JP5368735B2 (ja) 2013-12-18
US8738842B2 (en) 2014-05-27
US20090024791A1 (en) 2009-01-22
JP2009026301A (ja) 2009-02-05
CN101349963A (zh) 2009-01-21

Similar Documents

Publication Publication Date Title
DE102008033518B4 (de) Datenverarbeitungsverfahren für eine Solid-State-Disk-Steuereinheit, Solid-State-Disk-Steuereinheit und Datenspeicherelement
DE102014204716B4 (de) Nichtflüchtiges Speicherbauelement und Programmierverfahren für ein Betriebssystem(OS)-Image
DE102014101267B4 (de) Speichersystem mit nichtflüchtiger Speichervorrichtung und Programmierverfahren davon
DE112018000180T5 (de) System und verfahren zum adaptiven senden frühzeitiger beendigung unter verwendung eines steuerungsspeicherpuffers
DE102017128939A1 (de) System und Verfahren zum dynamischen und adaptiven Zusammenführen von Interrupts
DE102018105943A1 (de) Kontextbewusste dynamische Befehlsplanung für ein Datenspeichersystem
DE112018000834T5 (de) System und verfahren zur adaptiven befehlsabruf-aggregation
DE102018123891A1 (de) Handhabung nichtabgestimmter Schreibvorgänge
DE112018000181T5 (de) System und verfahren für die schnelle ausführung von kapselinternen befehlen
DE102013108491A1 (de) Nichtflüchtige Speichervorrichtung und Betriebsverfahren mit variablen Speicherzellenzustandsdefinitionen
DE112008002553T5 (de) Einsatz eines MLC-Flash als SLC durch Schreiben von Dummy-Daten
DE112018000230T5 (de) System und Verfahren zur spekulativen Befehlsausführung unter Verwendung des Steuerungsspeicherpuffers
DE102008009235A1 (de) Speichersystem
DE112015005102T5 (de) Systeme und verfahren zum erzeugen von einem hostbefehl zugeordneten hinweisinformationen
DE102019135863B4 (de) Speichercontroller, Speichervorrichtung und Speichersystem mit verbesserten Schwellenspannungs-Verteilungseigenschaften und ähnliche Betriebsverfahren
DE112019000161T5 (de) Speicher-cache-verwaltung
DE102015011991A1 (de) Codierungsschema für vertikale 3D-Flash-Speicher
DE102020119190A1 (de) Speichervorrichtung und Betriebsverfahren derselben
DE102021118940A1 (de) Speichersteuerung und speichereinrichtung mit derselben
DE102020202379A1 (de) Speichersystem, speicher-controller und deren betriebsverfahren
DE102013108456A1 (de) Nichtflüchtige Speichervorrichtung und Programmierverfahren
DE112020000159T5 (de) Systeme und verfahren zum definieren von speicher-unterblöcken
DE102020211544A1 (de) Steuerung, betriebsverfahren der steuerung und speichergerät mit derselben
DE112015004531T5 (de) Latch-Initialisierung für eine Datenspeichervorrichtung
DE112020005395T5 (de) Kapazitätserweiterung für speicher-untersysteme

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0012000000

Ipc: G11C0008000000

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final