CN104298605A - 固态储存装置中用于垃圾搜集动作的区块分组方法 - Google Patents

固态储存装置中用于垃圾搜集动作的区块分组方法 Download PDF

Info

Publication number
CN104298605A
CN104298605A CN201310300066.8A CN201310300066A CN104298605A CN 104298605 A CN104298605 A CN 104298605A CN 201310300066 A CN201310300066 A CN 201310300066A CN 104298605 A CN104298605 A CN 104298605A
Authority
CN
China
Prior art keywords
block
live data
data number
solid state
storage device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201310300066.8A
Other languages
English (en)
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.)
Lite On IT Corp
Lite On Technology Corp
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 CN201310300066.8A priority Critical patent/CN104298605A/zh
Priority to US14/042,808 priority patent/US9280459B2/en
Publication of CN104298605A publication Critical patent/CN104298605A/zh
Pending legal-status Critical Current

Links

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/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
    • 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/0253Garbage collection, i.e. reclamation of unreferenced memory
    • 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/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)
  • Memory System (AREA)
  • Read Only Memory (AREA)

Abstract

一种固态储存装置中用于垃圾搜集动作的区块分组方法,包括下列步骤:(a)建立一连结表,其中该连结表根据每一区块所对应的一有效资料数目将所述区块区分为多个群组;(b)判断一主机是否更改或者新增资料于该固态储存装置中的一闪存;(c)于确认该主机更改或者新增资料于该固态储存装置中的该闪存时,根据更改或者新增资料来更改对应区块的该有效资料数目,并据以更新该连结表;以及(d)于该固态储存装置未进行一垃圾搜集动作时,回到步骤(b);以及,于该固态储存装置进行该垃圾搜集动作时,根据该连结表的内容来选择区块,并进行该垃圾搜集动作。

Description

固态储存装置中用于垃圾搜集动作的区块分组方法
技术领域
本发明是有关于一固态储存装置,且特别是有关于一种固态储存装置中用于垃圾搜集动作的区块分组方法。
背景技术
众所周知,固态储存装置(Solid State Drive,SSD)使用与非门闪存(NAND flash memory)为主要储存元件,而此类的储存装置为一种非挥发性(non-volatile)的存储器元件。也就是说,当资料写入闪存后,一旦***电源关闭,资料仍保存在固态储存装置中。
请参照图1,其所绘示为已知固态储存装置的示意图。固态储存装置10中包括一控制单元101、一缓存单元103与一闪存105。控制单元101与闪存105之间利用一内部总线107进行资料的存取,而控制单元101利用一外部总线20与主机(host)12之间进行指令与资料的传递。再者,缓存单元103可为随机存取存储器,用以暂时储存读取资料、写入资料、或者控制单元101所需的暂存参数;再者,外部总线20可为USB总线、IEEE1394总线或SATA总线等等。
一般来说,闪存中105包括许多区块(block),而每个区块中又包括多个页(page)。例如,一个区块中有64页,而每个页的容量为4K bytes。再者,由于闪存105的特性,每次资料写入时是以页为写入单位,而每次擦除(erase)时则是以区块为擦除单位来进行资料擦除。
由于闪存105中每个页内的资料是无法任意更新的,因此当闪存105接收到更新资料时,必须将更新资料储存在新页(空白页)内,而原来的旧页中的原始资料会被设定为无效资料。当整个区块中的每一页内都是无效资料时,即可将该区块擦除进而成为一个空白区块。
然而,由于闪存105经过长时间的存取之后,几乎每个区块中都会包含一些有效资料以及一些无效资料。当区块中还存在有效资料时,该区块将无法进行擦除,如此,将会造成太多的无效资料占据闪存105的空间,使得闪存105的可写入空间变少。因此,一种垃圾搜集动作(garbagecollection)即被提出。而以下的范例是以闪存105中有八个区块(Block_1-Block_8),每个区块中有四个页(Page_1-Page_4)为例来进行说明,但并不限定于此。
请参照图2A至图2F,其所绘示为闪存进行资料更新、搬移及擦除的示意图。基本上,固态储存装置的架构与图1相同。
如图2A所示,假设第一区块(Block_1)与第二区块(Block_2)中所有的页内储存有Data1-Data8的资料。如图2B所示,当主机12欲将Data1、Data2、Data4、Data6、Data7的资料更新为Data1’、Data2’、Data4’、Data6’、Data7’时,控制单元101会在闪存中寻找空白页来储存更新的资料。例如,将Data1’写在第四区块(Block_4)第二页(page_2);Data2’写在第五区块(Block_5)第三页(page_3);Data4’写在第七区块(Block_7)第二页(page_2);Data6’写在第六区块(Block_6)第二页(page_2);Data7’写在第六区块(Block_6)第三页(page_3)。之后,原储存Data1、Data2、Data4、Data6、Data7的资料页将被视为无效资料(以斜线来表示)。
如图2C所示,当主机12欲将Data1’、Data2’、Data4’、Data6’、Data7’的资料再更新为Data1”、Data2”、Data4”、Data6”、Data7”时,控制单元101同样地会在闪存中寻找空白页来储存更新的资料。例如,将Data1”写在第五区块(Block_5)第二页(page_2);Data2”写在第四区块(Block_4)第一页(page_1);Data4”写在第六区块(Block_6)第一页(page_1);Data6”写在第三区块(Block_3)第二页(page_2);Data7”写在第六区块(Block_6)第四页(page_4)。之后,原储存Data1’、Data2’、Data4’、Data6’、Data7’的资料页将被视为无效资料(以斜线来表示)。
如图2D所示,当主机12欲将Data7”的资料再更新为Data7”’时,控制单元101同样地又会在闪存中寻找空白页来储存更新的资料。例如,将Data7”’写在第四区块(Block_4)第四页(page_4)。之后,原储存Data7”的资料页将被视为无效资料(以斜线来表示)。
由以上的说明可知,当主机12经过多次的存取之后,如图2D中的斜线部分所示,在闪存105中将会出现许多的无效资料。由于闪存的擦除最小单位为区块,而图2D的闪存中虽然有很多无效资料,但是每个区块中都还是有部份的有效资料,因此控制单元101无法擦除任何一个区块。而太多的无效资料将占据闪存的空间,使得闪存可写入的空间变少。
因此,固态储存装置10中的控制单元101需要在适当的时间进行垃圾搜集(garbage collection)动作,并解决写入空间变少的问题。所谓的垃圾搜集动作即是控制单元101将区块中的有效资料搜集起来另外存放在新的区块中,使原区块中的每个页全部变成无效资料,因此可以进行区块擦除(block erase)动作,并且产生空白区块,使闪存释放更多可写入的空间。在经过垃圾搜集动作后,新产生的空白区块即可再次成为可使用的空间。
例如,在图2D所示的情况下控制单元101开始执行垃圾搜集动作。此时控制单元101可将第一区块(Block_1)第三页(Page_3)中的Data3,第二区块(Block_2)第一页(Page_1)中的Data5,第二区块(Block_2)第四页(Page_4)中的Data8,第六区块(Block_6)第一页(Page_1)中的Data4”写入一个空白的第八区块(Block_8)。
如图2E所示,当Data3、Data5、Data8、Data4”写入第八区块(Block_8)后,闪存中的第一区块(Block_1)、第二区块(Block_2)、第六区块(Block_6)中的每个页都是无效资料。因此,控制单元101可以对第一区块(Block_1)、第二区块(Block_2)、第六区块(Block_6)进行区块擦除动作。之后,如图2F所示,第一区块(Block_1)、第二区块(Block_2)、第六区块(Block_6)变成空白的区块,并且使得闪存释放更多可写入的空间。
由以上的说明可知,垃圾搜集动作确实可以让闪存105增加更多可写入的空间。然而,在大容量的闪存105中,其区块数目至少上千个。当固态储存装置10欲进行垃圾搜集动作之前,控制单元101需要逐一检查每个区块中的有效资料,并选择有效资料数目较少的区块来进行垃圾搜集动作,以尽量减少需要进行搬移的有效资料数目。
由于每次进行一次垃圾搜集动作皆需要逐一搜集每个区块中的有效资料的信息,如此控制单元101需要花费许多的时间来进行搜寻,而且也非常没有效率。
发明内容
本发明有关于一种固态储存装置,连接至一主机,包括:一闪存,具有多个区块;一控制单元,接收该主机的更改或者新增资料,并储存于该闪存;一缓存单元,连接至该控制单元;其中,该控制单元用以建立一链接表并储存于该缓存单元中,其中该连结表根据每一区块所对应的一有效资料数目将所述区块区分为多个群组;当该主机更改或者新增资料于该闪存时,该控制单元用以根据更改或者新增资料来更改对应区块的该有效资料数目,并据以更新该连结表;以及,于进行一垃圾搜集动作时,该控制单元用以根据该链接表的内容来选择区块,并进行该垃圾搜集动作。
本发明更提出一种固态储存装置中用于垃圾搜集动作的区块分组方法,包括下列步骤:(a)建立一连结表,其中该连结表根据每一区块所对应的一有效资料数目将所述区块区分为多个群组;(b)判断一主机是否更改或者新增资料于该固态储存装置中的一闪存;(c)于确认该主机更改或者新增资料于该固态储存装置中的该闪存时,根据更改或者新增资料来更改对应区块的该有效资料数目,并据以更新该连结表;以及(d)于该固态储存装置未进行一垃圾搜集动作时,回到步骤(b);以及,于该固态储存装置进行该垃圾搜集动作时,根据该连结表的内容来选择区块,并进行该垃圾搜集动作。
附图说明
为了对本发明的上述及其他方面有更佳的了解,下文特举较佳实施例,并配合所附附图,作详细说明如下,其中:
图1所绘示为已知固态储存装置的示意图。
图2A至图2F所绘示为闪存进行资料更新、搬移及擦除的示意图。
图3A与图3B所绘示为根据有效资料数目来进行区块分组的示意图。
图4所绘示为本发明运用于垃圾搜集动作的区块分组方法流程图。
具体实施方式
本发明提出藉由控制单元提供另一种垃圾搜集动作时的控制方法,以提高固态储存装置进行垃圾搜集动作的效率。本发明可运用于图1的固态储存装置10。再者,以下的范例皆以图1的固态储存装来进说明,但并不限定于此。本发明所揭露的方法可以运用于所有具备垃圾搜集动作的固态储存装置。
由于已知固态储存装置10每次进行垃圾搜集动作时,内部的控制单元101需要逐一的搜寻每个区块中的有效资料,并选择有效资料数目较少的区块来进行垃圾搜集动作。如此,控制单元需要花费许多的时间来进行搜寻,而且也会让垃圾搜集动作变的非常没有效率。
根据本发明的实施例,当固态储存装置10接收电源并进行初始化动作时,控制单元101会先根据所有区块的有效资料数目(Valid data count)于缓存单元103中建立一个连结表(Link list)。该链接表是根据所有区块中有效资料数目,将所有的区块区分成多个群组。
而在初始化动作完成后,主机12可以正常存取固态储存装置中的资料时,控制单元101会将主机12所提供的更新资料储存于空白页中,并且被更新的旧资料会被视为无效资料,而储存旧资料以及更新资料的相关区块的有效资料数目也会一并更新。再者,当区块的有效资料数目变更时,控制单元101也会一并更新缓存单元103中的连结表。
请参照图3A与图3B,其所绘示为根据有效资料数目来进行区块分组的示意图。在本实施例中,固态储存装置10在初始化动作时,控制单元101将有效资料数目区分为十个有效资料数目区间。例如,有效资料数目在1-100定义为第一个有效资料数目区间,有效资料数目在101-200定义为第二个有效资料数目区间,有效资料数目在201-300定义为第三个有效资料数目区间,并依此类推。而有效资料数目在901以上则定义为第十个有效资料数目区间。
接着,根据闪存105中所有的区块的有效资料数目分别进行归类。而归类完成后,如图3A所示,所有的区块被区分为十组(1-10)。在第一群组(1)中,共有A1-A4个区块;在第二组(2)中,共有B1-B2个区块;在第三群组(3)中,共有C1-C5个区块;在第四群组(4)中,共有D1-D3个区块;在第五群组(5)中,共有E1-E2个区块;在第六群组(6)中,共有F1-F6个区块;在第七群组(7)中,共有G1-G3个区块;在第八群组(8)中,共有H1-H3个区块;在第九群组(9)中,共有I1-I5个区块;在第十群组(10)中,共有J1-J3个区块。
再者,每个群组中可以根据特定参数来将所属群组的区块进行排序并连结。假设特定参数即为有效资料数目,则以第一群组(1)为例,最下方的A4区块的有效资料数目最小,最上方的A1区块的有效资料数目最大。当然,特定参数也可以是每个区块的擦除次数(erase count),或者是历史数目(history number)。
当固态储装置10中控制单元101将链接表建立完成并储存于缓存单元103后,固态储装置即可让主机12来正常存取闪存105中的资料。
而随着主机12传送写入指令的增加,每个区块的有效资料数目也会随之改变。举例来说,当写入资料为新的资料时,被写入的区块的有效资料数目会增加;而当写入资料为更新的资料时,除了被写入的区块的有效资料数目会增加之外,由于被更新的旧资料会被视为无效资料,因此储存旧资料的区块的有效资料数目会减少。当然,主机12也可以传送删除指令至固态储存装置10,使得储存有相关资料的特定区块的有效资料数目会减少。
而控制单元101即根据主机12传送的指令以及闪存105的资料修改情形来更新缓存单元103中的连结表。当某一区块的有效资料数目被更新时,控制单元101会根据更新的有效资料数目及其特定参数来判断是否需要将该区块归类于其他群组,或是将群组内的区块进行重新排序。经过多次的存取后,当固态储存装置10欲进行垃圾搜集动作时,即根据当时缓存单元103中连结表的内容来快速找出对应区块以进行垃圾搜集动作。
假设经过多次的存取后,缓存单元103中的连结表的内容如图3B所示。而当固态储存装置10欲进行垃圾搜集动作时,控制单元101无须逐一的搜寻每个区块中的有效资料数目。控制单元101仅选取链接表中第一群组(1)中的区块来进行垃圾搜集动作即可。
举例来说,假设特定参数为有效资料数目,则第一群组(1)中,A2、A4、C3、A3、F4区块的有效资料数目较低,因此可被控制单元101选择成为垃圾搜集动作的区块,并进行垃圾搜集动作。当然,如果第一群组(1)的区块数目太少时,控制单元101也可以一并选择第二群组(2)中的区块来进行垃圾搜集动作。
请参照图4,其所绘示为本发明运用于垃圾搜集动作的区块分组方法流程图。当固态储存装置进行初始化动作时,搜寻闪存中的所有区块,并根据有效资料数目将区块区分为多个群组,并建立一连结表(步骤S401)。
接着,当主机12可以正常存取固态储存装置中的资料时,判断主机是否有更改或者新增资料(步骤S403)。当主机未更改或者新增资料时,回到步骤S403;反之,当主机更改或者新增资料时,根据修改或者新增资料更改对应区块的有效资料数目,并据以更新连结表(步骤S405)。
接着,当固态储存装置未进行资料搜集动作时,回到步骤S403。当固态储存装置进行资料搜集动作时,根据连结表内容来选择区块,并进行垃圾搜集动作(步骤S409)。
由以上的说明可知,本发明在固态储存装置的缓存单元中建立一个连结表,该连接表将所有的群组依照有效资料数目区分为多个群组。而控制单元随着闪存中的资料更新状况,来修改连结表。当固态储存装置欲进行垃圾搜集动作时,控制单元无须逐一的搜寻每个区块中的有效资料数目。控制单元仅需选取链接表中有效资料数目较少的群组,并从中选择区块并据以进行垃圾搜集动作即可。因此,可以大幅提高垃圾搜集动作的效率。
再者,本发明更可以利用相同的方法在每个群组之中再细分出更多的子群组。以图3A为例,将第十群组(10)定义的901以上的第十有效资料数目区间,更细分出更多的子有效资料数目区间。并利用特定参数建立该第十群组(10)中的子连结表。由于方法相同,因此不再赘述。
此外,在上述的实施例中,各群组的有效资料数目范围为采用均分的方式,然而,本发明并不以此为限。在另一实施例中,控制单元101可根据所有区块的有效资料数目分布状态来设定各群组的有效资料数目范围。假设在所有区块中,有10%的区块其有效资料数目在1-900之间,而有90%的区块其有效资料数目在901-1000之间,则控制单元101可将有效资料数目在1-900定义为第一个有效资料数目区间,并将有效资料数目在901-1000的区间细分为多个区间。例如,有效资料数目在901-920定义为第二个有效资料数目区间,有效资料数目在901-920定义为第三个有效资料数目区间,以此类推。
综上所述,虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视后附的权利要求范围所界定的为准。

Claims (10)

1.一种固态储存装置中用于垃圾搜集动作的区块分组方法,包括下列步骤:
(a)建立一连结表,其中该连结表为根据每一区块所对应的一有效资料数目将所述区块区分为多个群组;
(b)判断一主机是否更改或者新增资料于该固态储存装置中的一闪存;
(c)于确认该主机更改或者新增资料于该固态储存装置中的该闪存时,根据更改或者新增资料来更改对应区块的该有效资料数目,并据以更新该连结表;以及
(d)于该固态储存装置未进行一垃圾搜集动作时,回到步骤(b);以及,于该固态储存装置进行该垃圾搜集动作时,根据该连结表的内容来选择区块,并进行该垃圾搜集动作。
2.如权利要求1所述的固态储存装置中用于垃圾搜集动作的区块分组方法,其中建立该连接表还包括下列步骤:
提供多个有效资料数目区间;
将所述区块中的M个区块归类至所述有效资料数目区间中的一第一有效资料数目区间,并定义为一第一群组;以及
将所述区块中的N个区块归类至所述资料数目区间中的一第二有效资料数目区间,并定义为一第二群组;
其中,M与N为大于等于0的整数,且该M个区块所对应的M个有效资料数目皆位于该第一有效资料数目区间,该N个区块所对应的N个有效资料数目皆位于该第二有效资料数目区间。
3.如权利要求2所述的固态储存装置中用于垃圾搜集动作的区块分组方法,其中还包括下列步骤:
根据一特定参数来进行排序并连结该第一群组中的M个区块;以及
根据该特定参数来进行排序并连结该第二群组中的N个区块。
4.如权利要求2所述的固态储存装置中用于垃圾搜集动作的区块分组方法,其中还包括下列步骤:
根据所述区块的该有效资料数目的一分布状态来提供所述有效资料数目区间。
5.如权利要求1所述的固态储存装置中用于垃圾搜集动作的区块分组方法,其中该特定参数为区块的该有效资料数目、区块的一擦除次数、或者区块的一历史数目。
6.一种固态储存装置,连接至一主机,包括:
一闪存,具有多个区块;
一控制单元,接收该主机的更改或者新增资料,并储存于该闪存;
一缓存单元,连接至该控制单元;
其中,该控制单元用以建立一链接表并储存于该缓存单元中,其中该连结表为根据每一区块所对应的一有效资料数目将所述区块区分为多个群组;当该主机更改或者新增资料于该闪存时,该控制单元用以根据更改或者新增资料来更改对应区块的该有效资料数目,并据以更新该连结表;以及,于进行一垃圾搜集动作时,该控制单元用以根据该链接表的内容来选择区块,并进行该垃圾搜集动作。
7.如权利要求6所述的固态储存装置,其中该控制单元所建立该连接表中包括:多个群组,每一个该群组皆对应至多个有效资料数目区间其中之一;其中,一第一群组包括所述区块中的M个区块,且该M个区块对应的M个有效资料数目皆位于一第一有效资料数目区间;一第二群组包括所述区块中的N个区块,且该N个区块对应的N个有效资料数目皆位于一第二有效资料数目区间;以及M与N为大于等于0的整数。
8.如权利要求7所述的固态储存装置,其中:该第一群组中的M个区块根据一特定参数来进行排序与连结;以及,该第二群组中的N个区块根据该特定参数来进行排序与连结。
9.如权利要求8所述的固态储存装置,其中该特定参数系为区块的该有效资料数目、区块的一擦除次数、或者区块的一历史数目。
10.如权利要求7所述的固态储存装置,其中所述有效资料数目区间是根据所述区块的该有效资料数目的一分布状态来提供。
CN201310300066.8A 2013-07-17 2013-07-17 固态储存装置中用于垃圾搜集动作的区块分组方法 Pending CN104298605A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310300066.8A CN104298605A (zh) 2013-07-17 2013-07-17 固态储存装置中用于垃圾搜集动作的区块分组方法
US14/042,808 US9280459B2 (en) 2013-07-17 2013-10-01 Block grouping method for garbage collection of solid state drive

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310300066.8A CN104298605A (zh) 2013-07-17 2013-07-17 固态储存装置中用于垃圾搜集动作的区块分组方法

Publications (1)

Publication Number Publication Date
CN104298605A true CN104298605A (zh) 2015-01-21

Family

ID=52318340

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310300066.8A Pending CN104298605A (zh) 2013-07-17 2013-07-17 固态储存装置中用于垃圾搜集动作的区块分组方法

Country Status (2)

Country Link
US (1) US9280459B2 (zh)
CN (1) CN104298605A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106201327A (zh) * 2015-01-22 2016-12-07 光宝科技股份有限公司 具有固态储存装置的***及其相关控制方法
US10635599B2 (en) 2018-07-26 2020-04-28 Sandisk Technologies Llc Memory controller assisted address mapping
CN111813326A (zh) * 2019-04-12 2020-10-23 建兴储存科技(广州)有限公司 具多数据流写入的固态存储装置及其相关写入方法

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10621143B2 (en) * 2015-02-06 2020-04-14 Ashish Govind Khurange Methods and systems of a dedupe file-system garbage collection
KR102301772B1 (ko) * 2015-03-09 2021-09-16 삼성전자주식회사 불휘발성 메모리 장치를 포함하는 저장 장치 및 그것의 가비지 컬렉션 방법
US9645922B2 (en) 2015-09-10 2017-05-09 HoneycombData Inc. Garbage collection in SSD drives
KR102501751B1 (ko) * 2015-09-22 2023-02-20 삼성전자주식회사 메모리 콘트롤러, 불휘발성 메모리 시스템 및 그 동작방법
US9977615B2 (en) * 2015-09-28 2018-05-22 Qualcomm Incorporated Smart refresh of data on flash devices
US10102119B2 (en) * 2015-10-30 2018-10-16 Sandisk Technologies Llc Garbage collection based on queued and/or selected write commands
US10506262B2 (en) * 2015-12-29 2019-12-10 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for optimized media delivery
US9740609B1 (en) 2016-02-19 2017-08-22 International Business Machines Corporation Garbage collection techniques for a data storage system
US10095414B2 (en) 2016-03-07 2018-10-09 Toshiba Memory Corporation Memory system including a controller and a nonvolatile memory having memory blocks
US20170300249A1 (en) * 2016-04-15 2017-10-19 Western Digital Technologies, Inc. Validity tracking for garbage collection
US10254969B2 (en) 2016-05-13 2019-04-09 Seagate Technology Llc Data refresh in flash memory
TWI642059B (zh) * 2017-06-02 2018-11-21 群聯電子股份有限公司 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置
KR20200066906A (ko) * 2018-12-03 2020-06-11 에스케이하이닉스 주식회사 메모리 시스템, 그것의 동작방법 및 컨트롤러
TWI711048B (zh) * 2020-02-07 2020-11-21 大陸商合肥兆芯電子有限公司 快閃記憶體之資料整理方法、控制電路單元與儲存裝置
KR20220030090A (ko) * 2020-09-02 2022-03-10 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120239853A1 (en) * 2008-06-25 2012-09-20 Stec, Inc. Solid state device with allocated flash cache
CN103150258A (zh) * 2013-03-20 2013-06-12 中国科学院苏州纳米技术与纳米仿生研究所 一种固态存储***的写入、读取及垃圾收集方法
US20130166818A1 (en) * 2011-12-21 2013-06-27 Sandisk Technologies Inc. Memory logical defragmentation during garbage collection

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120028581A (ko) * 2010-09-15 2012-03-23 삼성전자주식회사 비휘발성 메모리 장치, 이의 동작 방법, 및 이를 포함하는 장치들

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120239853A1 (en) * 2008-06-25 2012-09-20 Stec, Inc. Solid state device with allocated flash cache
US20120239851A1 (en) * 2008-06-25 2012-09-20 Stec, Inc. Prioritized erasure of data blocks in a flash storage device
US20130166818A1 (en) * 2011-12-21 2013-06-27 Sandisk Technologies Inc. Memory logical defragmentation during garbage collection
CN103150258A (zh) * 2013-03-20 2013-06-12 中国科学院苏州纳米技术与纳米仿生研究所 一种固态存储***的写入、读取及垃圾收集方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106201327A (zh) * 2015-01-22 2016-12-07 光宝科技股份有限公司 具有固态储存装置的***及其相关控制方法
CN106201327B (zh) * 2015-01-22 2019-01-04 光宝科技股份有限公司 具有固态储存装置的***及其相关控制方法
US10635599B2 (en) 2018-07-26 2020-04-28 Sandisk Technologies Llc Memory controller assisted address mapping
CN111813326A (zh) * 2019-04-12 2020-10-23 建兴储存科技(广州)有限公司 具多数据流写入的固态存储装置及其相关写入方法
CN111813326B (zh) * 2019-04-12 2024-04-19 建兴储存科技(广州)有限公司 具多数据流写入的固态存储装置及其相关写入方法

Also Published As

Publication number Publication date
US20150026391A1 (en) 2015-01-22
US9280459B2 (en) 2016-03-08

Similar Documents

Publication Publication Date Title
CN104298605A (zh) 固态储存装置中用于垃圾搜集动作的区块分组方法
US20160188227A1 (en) Method and apparatus for writing data into solid state disk
CN101582052B (zh) 存储器模组及于存储器模组中实现平均磨损的方法
CN102498522B (zh) 用于减小固态器件中的写入放大的容器标记方案
CN110018983B (zh) 一种元数据查询方法及装置
CN104102585B (zh) 映射信息记录方法、存储器控制器与存储器储存装置
CN105573681B (zh) 一种ssd盘片内部raid组建方法及***
CN102508788B (zh) Ssd及ssd垃圾回收方法和装置
CN102981959B (zh) 固态存储装置及其垃圾搜集动作的控制方法
CN104126178A (zh) Slc-mlc损耗平衡
DE112015000378T5 (de) Selektives Rückkopieren für einen auf einem Chipplättchen gepufferten nichtflüchtigen Speicher
CN104298606A (zh) 固态存储装置中垃圾搜集动作的控制方法
CN106775436B (zh) 数据存取方法、存储器控制电路单元与存储器
CN106802867B (zh) 固态储存装置及其数据编程方法
CN103080911A (zh) 存储器块的先占式垃圾回收
CN106383666B (zh) 一种数据存储方法及装置
CN105893275A (zh) 缓存及读取即将写入储存单元的数据的方法以及使用该方法的装置
EP2718823A1 (en) Dual flash translation layer
CN110928807A (zh) 用于检查存储器***中的有效数据的设备和方法
CN106372000B (zh) 映射表更新方法、存储器控制电路单元及存储器存储装置
CN104503703A (zh) 缓存的处理方法和装置
CN102169460A (zh) 变长数据管理方法及装置
US20170003911A1 (en) Information processing device
CN102819494A (zh) 一种闪存顺序写入时的优化方法
CN114297092A (zh) 数据处理方法、***、设备、存储***及介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20150121