CN104424103B - 固态储存装置中高速缓存的管理方法 - Google Patents

固态储存装置中高速缓存的管理方法 Download PDF

Info

Publication number
CN104424103B
CN104424103B CN201310365417.3A CN201310365417A CN104424103B CN 104424103 B CN104424103 B CN 104424103B CN 201310365417 A CN201310365417 A CN 201310365417A CN 104424103 B CN104424103 B CN 104424103B
Authority
CN
China
Prior art keywords
solid state
storage device
state storage
write
cache
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
CN201310365417.3A
Other languages
English (en)
Other versions
CN104424103A (zh
Inventor
林信宇
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.)
Jianxing Storage Technology Co., Ltd
Original Assignee
Lite On Technology Corp
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 Lite On Technology Corp filed Critical Lite On Technology Corp
Priority to CN201310365417.3A priority Critical patent/CN104424103B/zh
Priority to US14/142,107 priority patent/US20150058534A1/en
Publication of CN104424103A publication Critical patent/CN104424103A/zh
Priority to US14/989,129 priority patent/US9928177B2/en
Application granted granted Critical
Publication of CN104424103B publication Critical patent/CN104424103B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • 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
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7203Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control

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)
  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Computer Security & Cryptography (AREA)

Abstract

一种运用于固态储存装置中高速缓存的管理方法,包括下列步骤:于该固态储存装置决定执行一垃圾搜集操作时,将一高速缓存的储存空间区分为多个部分;设定该高速缓存中一第一部分储存空间作为一垃圾搜集用途;以及设定该高速缓存中一第二部分储存空间作为一写入用途。

Description

固态储存装置中高速缓存的管理方法
技术领域
本发明是有关于一种固态储存装置的控制方法,且特别是有关于一种固态储存装置中高速缓存的管理方法。
背景技术
请参照图1,其所绘示为已知储存装置(storage device)示意图。储存装置10连接至主机(host)12,可接收主机10发出的读取指令或者写入指令。其中,主机12可为计算机主机,储存装置10可为硬式磁盘驱动器(Hard disc drive)或者光驱(Optical drive)。
储存装置10中包括一控制单元101、一高速缓存103与一储存元件105。其中,控制单元101利用一外部总线20与主机12之间进行指令与数据的传递。而控制单元101根据主机的指令,以存取储存元件105中的数据。再者,高速缓存(cache memory)103连接至控制单元101用以暂时储存主机20输入的写入数据、以及主机20要求的读取数据。
另外,外部总线20可为USB总线、IEEE1394总线或SATA总线等等。而储存元件105可为光盘片或者磁盘片。
众所周知,高速缓存103可用来暂时储存主机20输入的写入数据、以及主机20要求的读取数据。举例来说,当主机12发出写入指令以及对应的写入数据至储存装置10时,控制单元101会先将写入数据暂存于高速缓存103中。之后,控制单元101会处理写入数据(例如产生ECC码),并且将写入数据储存于储存元件105。或者,当主机12发出读取指令至储存装置10时,控制单元101会将储存元件105中的读取数据先暂存于高速缓存103中。之后,控制单元101再将读取数据输出至主机12。
由以上的说明可知,当主机12发出写入指令时,高速缓存103是作为写入用途用以暂存写入数据。当主机12发出读取指令时,高速缓存103是作为读取用途用以暂存读取数据。
近几年来,一种新的固态储存装置(Solid state device,简称SSD)逐渐流行,其可取代已知硬式磁盘驱动器(Hard disc drive)或者光驱(Optical drive)。
固态储存装置(Solid State Storage Device)内部使用与非门闪存(NAND flashmemory)为储存元件,而此类的储存元件为一种非易失性(non-volatile)的存储器元件。也就是说,当数据写入闪存后,一旦系统电源关闭,数据仍保存在固态储存装置中。
由于储存元件的差异,固态储存装置中的高速缓存需要有另外的管理方式,以提高固态储存装置的效率。
发明内容
本发明是有关于一种运用于固态储存装置中高速缓存的管理方法,包括下列步骤:于该固态储存装置决定执行一垃圾搜集操作时,将一高速缓存的储存空间区分为多个部分;设定该高速缓存中一第一部分储存空间作为一垃圾搜集用途;以及设定该高速缓存中一第二部分储存空间作为一写入用途。
本发明是有关于一种运用于固态储存装置中高速缓存的管理方法,包括下列步骤:(a)于该固态储存装置尚未执行一垃圾搜集操作时,根据一主机的一存取指令将一高速缓存作为一写入用途或者一读取用途;(b)于该固态储存装置决定执行一垃圾搜集操作时,设定该高速缓存中一第一部分储存空间作为一垃圾搜集用途,以及设定该高速缓存中一第二部分储存空间作为该写入用途;以及(c)当该固态储存装置完成该垃圾搜集操作时,回到步骤(a)。
本发明是有关于一种固态储存装置,连接至一主机,该固态储存装置包括:一控制单元,连接至该主机用以接收该主机发出的一存取指令;一闪存,连接至该控制单元;以及一高速缓存,连接至该控制单元;其中,当该控制单元决定执行一垃圾搜集操作时,设定该高速缓存中一第一部分储存空间作为一垃圾搜集用途,并设定该高速缓存中一第二部分储存空间作为一写入用途。
为了对本发明的上述及其它方面有更佳的了解,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
图1所绘示为已知储存装置示意图。
图2所绘示为固态储存装置的示意图。
图3所绘示为垃圾搜集操作示意图。
图4所绘示为固态储存装置在执行写入指令时进行垃圾搜集操作时的写入速度示意图。
图5A所绘示为本发明运用于固态储存装置中高速缓存的管理方法。
图5B所绘示为根据本发明实施例的固态储存装置在执行写入指令时进行垃圾搜集操作时的写入速度示意图。
图6所绘示为本发明固态储存装置运作时高速缓存的管理方法。
[标号说明]
10:储存装置 12:主机
20:外部总线 101:控制单元
103:高速缓存 105:储存元件
210:固态储存装置 212:主机
220:外部总线 201:控制单元
203:高速缓存 205:闪存
S502~S508:步骤流程 S601~S612:步骤流程
具体实施方式
请参照图2,其所绘示为固态储存装置的示意图。固态储存装置210中包括一控制单元201、一高速缓存203与一闪存205。控制单元201与闪存205之间利用一内部总线207进行数据的存取,而控制单元201利用一外部总线220与主机212之间进行指令与数据的传递。再者,高速缓存103连接至控制单元101用以暂时储存主机220输入的写入数据、以及主机220要求的读取数据。其中,外部总线220可为USB总线、IEEE1394总线或SATA总线等等。
由于固态储存装置210与传统的硬式磁盘驱动器或者光驱中的储存元件的材料特性差异,其数据储存方式也有极大的不同。
固态储存装置210中的闪存205包括许多区块(block),而每个区块中又包括多个页(page)。例如,一个区块中有64页,而每个页的容量为4K bytes。再者,由于闪存205的特性,每次数据写入时是以页为最小单位,而每次抹除(erase)时则是以区块为单位进行数据抹除。
基本上,在闪存205中,尚未储存数据的区块称为空白区块(free block);而已经储存数据的区块则称为使用区块(used block)。当使用区块中的数据全部都是无效数据时,该使用区块即可被抹除并成为空白区块。而空白区块即可再次被用来储存数据。
由于闪存205经过长时间的存取之后,几乎每个使用区块中都会涵盖着有效数据以及无效数据。然而,只要使用区块中还存在有效数据时,该使用区块即无法被抹除为空白区块。因此,会造成太多的无效数据占据闪存205的空间,使得闪存205的可写入空间变少。
当闪存205中的使用区块越来越多而空白区块越来越少时,就必须要进行垃圾搜集动作(garbage collection)。一般来说,当闪存205中空白区块的数目下降到达一临限数目(threshold number)时,控制单元201即启动垃圾搜集动作。垃圾搜集动作主要的目的在于释放出使用区块中无效数据的储存空间,让闪存205可以继续储存主机212输入的写入数据。
请参照图3,其所绘示为垃圾搜集动作示意图。假设使用区块c(Block_c)中的数据D1为有效数据,数据D2为无效数据,而区块d(Block_d)为空白区块。如步骤1(step1)所示,假设控制单元101经过搜寻后,决定针对使用区块c(Block_c)进行垃圾搜集动作。此时,如步骤2(step2)所示,控制单元201会将使用区块c(Block_c)中的有效数据D1写入空白区块d(Block_d)中成为有效数据D1’。在写入有效数据D1’后,空白区块d(Block_d)转变为一使用区块d(Block_d)。接着,将使用区块c(Block_c)中的所有数据设定为无效数据。最后,如步骤3(step3)所示,将使用区块c(Block_c)抹除成为一个新的空白区块c(Block_c),即完成一次垃圾搜集动作。
换句话说,于垃圾搜集动作后,区块c(Block_c)将成为一个新的空白区块,而使用区块d(Block_d)中尚有其它空白空间B(free space)可以用来储存数据。也就是说,进行垃圾搜集动作后,空白空间B即为一释放空间,供主机12来继续储存数据,该空白空间B的大小是小于一空白区块的大小。
在上述的垃圾搜集动作过程的步骤2(step2)中,控制单元201将使用区块c(Block_c)中的有效数据D1写入空白区块d(Block_d)中成为有效数据D1’。在此步骤的过程中,控制单元201需要先将使用区块c(Block_c)中的有效数据D1暂时储存于高速缓存203。之后,再读取高速缓存203中的有效数据D1,并写入空白区块d(Block_d)中成为有效数据D1’。
由上述的说明可知,固态储存装置210中的高速缓存203可作为写入用途用以暂存写入数据、作为读取用途用以暂存读取数据、以及作为垃圾搜集用途用以暂存闪存205中的搬移数据。
请参照图4,其所绘示为固态储存装置在执行写入指令时进行垃圾搜集动作时的写入速度示意图。当固态储存装置210在执行写入指令时,高速缓存203是作为写入用途,用以暂存写入数据。此时的写入速度几乎维持在一个最高速度(M1)。上述的最高速度(M1)是相关于高速缓存203的容量以及控制单元201的操作速度。
然而,于时间点t1时,闪存205中空白区块的数目下降到达一临限数目(thresholdnumber)时,控制单元201必须启动垃圾搜集动作。换句话说,于时间点t1时,控制单元201暂时无法执行主机的写入指令,并且必须执行垃圾搜集动作用以释放出使用区块中无效数据的储存空间,让闪存205可以继续执行写入指令,并且储存主机212输入的写入数据。
于时间点t1至t2之间,控制单元201执行垃圾搜集动作,此时的高速缓存203是作为垃圾搜集用途,用以暂存闪存205中的搬移数据。因此,固态储存装置210的写入速度下降至(M2),例如0Byte/sec。
于时间点t2,控制单元201完成垃圾搜集动作,并且释放出储存空间用以继续执行写入指令。因此,时间点t2至t3之间,高速缓存203是作为写入用途,而此时的写入速度会回到最高速度(M1)。
同理,时间点t3至t4之间、时间点t5至t6之间、以及时间点t7至t8之间,控制单元201执行垃圾搜集动作。因此,固态储存装置210的写入速度会再次下降至(M2),例如0Byte/sec。而控制单元201在执行写入指令时,固态储存装置210的写入速度会再次上升至(M1)。
由以上的说明可知,当固态储存装置210的控制单元201在执行写入指令时进行垃圾搜集动作时,将会造成写入速度断断续续的现象发生。而在使用者端,会觉得固态储存装置210耗费很长的时间执行部分写入指令。因此,造成固态储存装置210的效能在单位时间内急遽降低。
同理,当固态储存装置210的控制单元201在执行读取指令时进行垃圾搜集动作时,也会造成读取速度断断续续的现象发生,造成固态储存装置210的效能在单位时间内急遽降低。
请参照图5A,其所绘示为本发明运用于固态储存装置中高速缓存的管理方法。请参照图5B,其所绘示为根据本发明实施例的固态储存装置在执行写入指令时进行垃圾搜集动作时的写入速度示意图。而运用本发明可以维持固态储存装置210维持在较平稳的效能。
如图5A所示,当固态储存装置210的控制单元201决定执行垃圾搜集动作(步骤S502)时,将高速缓存203的储存空间区分为多个部分(步骤S504)。接着,设定高速缓存203第一部分的储存空间作为垃圾搜集用途(步骤S506);以及,设定高速缓存203第二部分的储存空间作为写入用途(步骤S506)。
根据上述方式来区分高速缓存203。当固态储存装置210的控制单元201在进行垃圾搜集动作时,可以利用第一部分的储存空间来暂存闪存205中的搬移数据。同时,如果固态储存装置210的控制单元201收到主机212所发出的写入指令时,亦可以利用高速缓存203第二部分的储存空间来暂存写入数据。因此,在固态储存装置210的控制单元201在进行垃圾搜集动作时,控制单元201仍旧可以利用第二部分的储存空间来暂存写入数据并执行写入指令。
因此,如图5B所示,当固态储存装置210在执行写入指令时,高速缓存203是作为写入用途,用以暂存写入数据。此时的写入速度几乎维持在一个最高速度(M1)。
于时间点ta时,闪存205中空白区块的数目下降到达一临限数目(thresholdnumber)时,控制单元201必须启动垃圾搜集动作。由于本发明设定高速缓存203的第二部分的储存空间来暂存写入数据。因此,控制单元201仍可以执行写入指令,而其写入速度降至M3。
换句话说,利用本发明高速缓存的管理方法,可以让固态储存装置210进行垃圾搜集动作时,仍可以执行主机212所发出的写入指令。让固态储存装置210维持在较佳效能。
当然,固态储存装置210也可设定高速缓存203第三部分的储存空间作为读取用途用以暂存读取数据。因此,可以让固态储存装置210进行垃圾搜集动作时,亦可以执行主机212所发出的写入指令与读取指令。让固态储存装置210维持在较佳效能。
请参照图6,其所绘示为本发明固态储存装置运作时高速缓存的管理方法。当固态储存装置210的控制单元201开始动作时,根据主机212的存取指令将高速缓存203分作为写入/读取用途和垃圾搜集用途(步骤S602)。
当固态储存装置210的控制单元201执行写入、读取、垃圾搜集动作(步骤S604)时,设定高速缓存203第一部分的储存空间作为垃圾搜集用途(步骤S610);设定高速缓存203第二部分的储存空间作为写入用途(步骤S612);以及设定高速缓存203第三部分的储存空间作为读取用途(步骤S614)。接着,执行写入、读取、垃圾搜集动作(步骤S616)后回到步骤S602。
反之,当固态储存装置210的控制单元201不执行写入、读取、垃圾搜集动作(步骤S604)时,即结束此流程。
由以上的说明可知,本发明是提出一种运用于固态储存装置中高速缓存的管理方法。可以让固态储存装置210在执行垃圾搜集动作时,仍可以执行主机212发出的存取指令,使得固态储存装置210维持在较佳的效能。
综上所述,虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视所附的权利要求范围所界定者为准。

Claims (13)

1.一种用于固态储存装置中高速缓存的管理方法,包括下列步骤:
于该固态储存装置尚未执行一垃圾搜集操作时,将一高速缓存作为一写入用途或者一读取用途;
于该固态储存装置决定执行该垃圾搜集操作时,将该高速缓存的储存空间区分为多个部分;
设定该高速缓存中一第一部分储存空间作为一垃圾搜集用途;以及
设定该高速缓存中一第二部分储存空间作为该写入用途。
2.根据权利要求1所述的管理方法,其中,当该固态储存装置收到一写入指令时,利用该第二部分储存空间来暂存一写入数据并执行该写入指令。
3.根据权利要求1所述的管理方法,其中,该固态储存装置利用该第一部分储存空间来暂存一闪存的一搬移数据。
4.根据权利要求1所述的管理方法,其中还包括:设定该高速缓存中一第三部分储存空间作为一读取用途;以及,于该固态储存装置收到一读取指令时,利用该第三部分储存空间来暂存一读取数据并执行该读取指令。
5.一种用于固态储存装置中高速缓存的管理方法,包括下列步骤:
(a)于该固态储存装置尚未执行一垃圾搜集操作时,根据一主机的一存取指令将一高速缓存作为一写入用途或者一读取用途;
(b)于该固态储存装置决定执行一垃圾搜集操作时,设定该高速缓存中一第一部分储存空间作为一垃圾搜集用途,以及设定该高速缓存中一第二部分储存空间作为该写入用途;以及
(c)当该固态储存装置完成该垃圾搜集操作时,回到步骤(a)。
6.根据权利要求5所述的管理方法,其中,当该固态储存装置收到一写入指令时,利用该第二部分储存空间来暂存一写入数据并执行该写入指令。
7.根据权利要求5所述的管理方法,其中,该固态储存装置利用该第一部分储存空间来暂存一闪存的一搬移数据。
8.根据权利要求5所述的管理方法,其中步骤(b)还包括:设定该高速缓存中一第三部分储存空间作为一读取用途;以及,于该固态储存装置收到一读取指令时,利用该第三部分储存空间来暂存一读取数据并执行该读取指令。
9.一种固态储存装置,连接至一主机,该固态储存装置包括:
一控制单元,连接至该主机用以接收该主机发出的一存取指令;
一闪存,连接至该控制单元;以及
一高速缓存,连接至该控制单元;
其中,当该控制单元尚未执行一垃圾搜集操作时,将该高速缓存作为一写入用途或者一读取用途,当该控制单元决定执行该垃圾搜集操作时,设定该高速缓存中一第一部分储存空间作为一垃圾搜集用途,并设定该高速缓存中一第二部分储存空间作为该写入用途。
10.根据权利要求9所述的固态储存装置,其中,当该存取指令为一写入指令时,利用该第二部分储存空间来暂存一写入数据并执行该写入指令。
11.根据权利要求9所述的固态储存装置,其中,该固态储存装置利用该第一部分储存空间来暂存一闪存的一搬移数据。
12.根据权利要求9所述的固态储存装置,其中还包括:设定该高速缓存中一第三部分储存空间作为一读取用途;以及,该存取指令为一读取指令时,利用该第三部分储存空间来暂存一读取数据并执行该读取指令。
13.根据权利要求9所述的固态储存装置,其中,当该控制单元未执行该垃圾搜集操作时,根据该存取指令将该高速缓存作为该写入用途或者该读取用途。
CN201310365417.3A 2013-08-21 2013-08-21 固态储存装置中高速缓存的管理方法 Active CN104424103B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310365417.3A CN104424103B (zh) 2013-08-21 2013-08-21 固态储存装置中高速缓存的管理方法
US14/142,107 US20150058534A1 (en) 2013-08-21 2013-12-27 Managing method for cache memory of solid state drive
US14/989,129 US9928177B2 (en) 2013-08-21 2016-01-06 Managing method for cache memory of solid state drive

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310365417.3A CN104424103B (zh) 2013-08-21 2013-08-21 固态储存装置中高速缓存的管理方法

Publications (2)

Publication Number Publication Date
CN104424103A CN104424103A (zh) 2015-03-18
CN104424103B true CN104424103B (zh) 2018-05-29

Family

ID=52481435

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310365417.3A Active CN104424103B (zh) 2013-08-21 2013-08-21 固态储存装置中高速缓存的管理方法

Country Status (2)

Country Link
US (1) US20150058534A1 (zh)
CN (1) CN104424103B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3002716A1 (fr) * 2013-02-26 2014-08-29 France Telecom Derivation de vecteur de mouvement de disparite, codage et decodage video 3d utilisant une telle derivation
KR20160075229A (ko) * 2014-12-19 2016-06-29 삼성전자주식회사 가비지 컬렉션 동작 방법 및 이를 적용하는 레이드 스토리지 시스템
CN106802867B (zh) * 2015-11-25 2020-12-01 建兴储存科技(广州)有限公司 固态储存装置及其数据编程方法
US10126981B1 (en) * 2015-12-14 2018-11-13 Western Digital Technologies, Inc. Tiered storage using storage class memory
US10185511B2 (en) * 2015-12-22 2019-01-22 Intel Corporation Technologies for managing an operational characteristic of a solid state drive
TWI584289B (zh) * 2016-01-20 2017-05-21 大心電子(英屬維京群島)股份有限公司 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
CN107122124B (zh) * 2016-02-25 2021-06-15 中兴通讯股份有限公司 数据处理方法及装置
CN107544748B (zh) * 2016-06-28 2020-06-16 建兴储存科技(广州)有限公司 固态储存装置及其数据写入方法
JP2019046238A (ja) 2017-09-04 2019-03-22 東芝メモリ株式会社 メモリシステム
US10956071B2 (en) 2018-10-01 2021-03-23 Western Digital Technologies, Inc. Container key value store for data storage devices
US10769062B2 (en) 2018-10-01 2020-09-08 Western Digital Technologies, Inc. Fine granularity translation layer for data storage devices
US10740231B2 (en) 2018-11-20 2020-08-11 Western Digital Technologies, Inc. Data access in data storage device including storage class memory
US11016905B1 (en) 2019-11-13 2021-05-25 Western Digital Technologies, Inc. Storage class memory access
US11249921B2 (en) 2020-05-06 2022-02-15 Western Digital Technologies, Inc. Page modification encoding and caching

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101673188A (zh) * 2008-09-09 2010-03-17 上海华虹Nec电子有限公司 一种固态硬盘的数据存取方法
CN101689140A (zh) * 2008-03-01 2010-03-31 株式会社东芝 存储器系统
CN102722449A (zh) * 2012-05-24 2012-10-10 中国科学院计算技术研究所 基于SSD的Key-Value型本地存储方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8386714B2 (en) * 2010-06-29 2013-02-26 International Business Machines Corporation Reducing write amplification in a cache with flash memory used as a write cache
WO2012116369A2 (en) * 2011-02-25 2012-08-30 Fusion-Io, Inc. Apparatus, system, and method for managing contents of a cache
US9767032B2 (en) * 2012-01-12 2017-09-19 Sandisk Technologies Llc Systems and methods for cache endurance
US20130198453A1 (en) * 2012-01-26 2013-08-01 Korea Electronics Technology Institute Hybrid storage device inclucing non-volatile memory cache having ring structure
GB2511325A (en) * 2013-02-28 2014-09-03 Ibm Cache allocation in a computerized system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101689140A (zh) * 2008-03-01 2010-03-31 株式会社东芝 存储器系统
CN101673188A (zh) * 2008-09-09 2010-03-17 上海华虹Nec电子有限公司 一种固态硬盘的数据存取方法
CN102722449A (zh) * 2012-05-24 2012-10-10 中国科学院计算技术研究所 基于SSD的Key-Value型本地存储方法及系统

Also Published As

Publication number Publication date
US20150058534A1 (en) 2015-02-26
CN104424103A (zh) 2015-03-18

Similar Documents

Publication Publication Date Title
CN104424103B (zh) 固态储存装置中高速缓存的管理方法
US10552317B2 (en) Cache allocation in a computerized system
CN109240938B (zh) 存储系统以及控制非易失性存储器的控制方法
Hu et al. Write amplification analysis in flash-based solid state drives
TWI446345B (zh) 用來進行區塊管理之方法以及記憶裝置及控制器
US9542278B2 (en) Data storage device and flash memory control method
TWI467369B (zh) 混合密度記憶體系統及其控制方法
EP2439645B1 (en) Method and apparatus for storing data in a multi-level cell flash memory device
TWI506430B (zh) 映射資訊記錄方法、記憶體控制器與記憶體儲存裝置
JP5089823B1 (ja) コンピュータのメモリ・デバイスに関するメモリ管理システム、コンピュータによって実装される方法、およびコンピュータ・プログラム
US8688894B2 (en) Page based management of flash storage
US20070016721A1 (en) Flash file system power-up by using sequential sector allocation
TWI479313B (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
US9304900B2 (en) Data reading method, memory controller, and memory storage device
JP4977703B2 (ja) 予定再生操作を伴う不揮発性メモリ
US8225050B2 (en) Memory storage device and a control method thereof
CN107203330B (zh) 一种面向读写数据流的闪存数据分布方法
KR101374065B1 (ko) 칩 레벨 평행 플래시 메모리를 위한 정보 분별 방법 및 장치
TW201443644A (zh) 管理非揮發性記憶體之方法及其非揮發性儲存裝置
CN111538680A (zh) 基于逻辑饱和度选择用于垃圾收集的大容量存储装置流
US20150220433A1 (en) Method for managing flash memories having mixed memory types using a finely granulated allocation of logical memory addresses to physical memory addresses
TWI517165B (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
US9928177B2 (en) Managing method for cache memory of solid state drive
US9304906B2 (en) Memory system, controller and control method of memory
US20160124650A1 (en) Data Storage Device and Flash Memory Control Method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200102

Address after: 21 / F, 392 Ruiguang Road, Neihu district, Taipei, Taiwan, China

Patentee after: Jianxing Storage Technology Co., Ltd

Address before: Taipei City, Taiwan, China

Patentee before: Lite-On Technology Corporation

TR01 Transfer of patent right