CN106528438A - 一种固态存储设备的分段式垃圾回收方法 - Google Patents

一种固态存储设备的分段式垃圾回收方法 Download PDF

Info

Publication number
CN106528438A
CN106528438A CN201610880223.0A CN201610880223A CN106528438A CN 106528438 A CN106528438 A CN 106528438A CN 201610880223 A CN201610880223 A CN 201610880223A CN 106528438 A CN106528438 A CN 106528438A
Authority
CN
China
Prior art keywords
block
write
caching
data
request
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.)
Granted
Application number
CN201610880223.0A
Other languages
English (en)
Other versions
CN106528438B (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.)
Huazhong University of Science and Technology
Original Assignee
Huazhong University of Science and Technology
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 Huazhong University of Science and Technology filed Critical Huazhong University of Science and Technology
Priority to CN201610880223.0A priority Critical patent/CN106528438B/zh
Publication of CN106528438A publication Critical patent/CN106528438A/zh
Application granted granted Critical
Publication of CN106528438B publication Critical patent/CN106528438B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/0253Garbage collection, i.e. reclamation of unreferenced memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种固态存储设备的分段式垃圾回收方法,其包括:增加专门用来服务垃圾回收有效数据迁移的掉电不易失缓存,在垃圾回收操作的有效数据迁移中,利用该缓存暂时存储需要迁移的有效数据;在进行擦除操作时,通过设置标志器标识在进行块擦除操作的目标块所在分组或晶圆,以此方式向上层反应垃圾回收操作完成并继续响应到来的请求,即该所在的分组或晶圆不响应请求,以避免写请求分配该分组或晶圆的空闲页,造成响应的延时;在读写请求到来的间隙时间,将迁移到掉电不易失缓存的有效数据写回至固态存储设备。本发明的方法可以实现在不影响垃圾回收效率的情况下,有效地降低垃圾回收带来的读写响应时延。

Description

一种固态存储设备的分段式垃圾回收方法
技术领域
本发明属于固态盘垃圾回收技术领域,尤其是涉及一种固体存储设备的分段式垃圾回收方法,用于降低垃圾回收操作造成的读写时延。
背景技术
近些年来,基于NAND Flash的固态硬盘(Solid State Drive,SSD)由于性能高、功耗低、可靠性高、抗震性好、无噪声等诸多优点获得广泛的应用。但是SSD在使用一段时间之后,其访问性能会有显著下降。垃圾回收对SSD的性能有显著的影响,通过对Intel SSD DCP3700(800G)进行测试发现,针对读写粒度为4KB,读写比例是7:3的随机混合请求。当IntelSSD是空盘时,其IOPS能达到20万,读写带宽能达到800MB/s;当对Intel SSD进行数据预埋和碎片化处理后,其IOPS下降到9W,读写带宽下降到360MB/s。主要原因是,在使用一段时间后,SSD内部垃圾回收的频繁触发,降低了SSD的读写性能。
由于闪存芯片具有写前擦除的特性,更新数据时通常采用异地更新策略,这会产生大量无效页。为保证SSD的正常使用,需要对无效页进行垃圾回收操作,擦除选择的目标块以便再使用。由于闪存芯片的读写粒度和擦除粒度不同,在擦除一个块之前,垃圾回收一般涉及到有效数据的迁移,在数据迁移时,数据的源物理页和目的物理页所处的芯片(chip)和通道(channel)会被占用。在执行擦除操作时,虽然不会占用通道资源,但擦除对象所处的晶元(die)会被占用。因此,垃圾回收过程中SSD的读写性能将受到较大影响。
如图3所示,一个完整的垃圾回收操作包括三步:1)选择要回收的目标块,2)进行有效数据的迁移,3)擦除目标块。在擦除目标块时,整个die将被占用,容易造成请求冲突,不能及时响应外界请求。写请求的冲突可以通过缓存和预留空间等方式解决,相较之下读冲突更难处理,一般只能被迫等待擦除操作完成,另外同步的读操作不仅影响本channel的请求,还会影响各个channel的响应。比较Flash的擦除操作和读操作时间,擦除操作时间为ms级,读操作时间为us级,两者时间比接近100:1;并且随着SSD容量的增加,擦除块大小进一步变大,两者的时间相差会越来越大。综上所述,对读请求而言,被迫等待擦除操作的完成会显著降低SSD的访问性能。
因为垃圾回收涉及到有效数据的迁移和块擦除操作,占用大量系统资源,为尽可能减少垃圾回收对SSD访问性能的影响,目前存在充分利用系统空闲资源进行垃圾回收或通过最大程度提高垃圾回收效率的垃圾回收的方案,但是这些方案中垃圾回收始终被视为一个不可拆分整体,缺少垃圾回收对SSD正常请求冲突的考虑。为解决上述问题,现有技术中出现了一种可中断的垃圾回收机制,其在有效数据迁移期间,每迁移一个数据页能够中断正在进行的垃圾回收响应正常的读写请求。该方案能够在一定程度上解决垃圾回收和正常请求的冲突,但是其中断时间选择有局限性,只能在数据迁移中发生,没有考虑垃圾回收过程中耗时最长的擦除操作和读写请求的冲突。
发明內容
针对现有技术的以上缺陷或改进需求,本发明提供一种固态存储设备的分段式垃圾回收方法,其通过采用拆分垃圾回收操作以及利用一个非易失的缓存以充分利用固态存储设备的空闲时段进行垃圾回收操作中的有效数据迁移,并将回收块的擦除时间隐藏的方式,实现在不影响垃圾回收效率的情况下,有效地降低垃圾回收带来的读写响应时延。
为实现上述目的,按照本发明,提供一种固态存储设备的分段式垃圾回收方法,其包括:
增加专门用于服务垃圾回收有效数据迁移的掉电不易失缓存,在垃圾回收操作的有效数据迁移中,利用该缓存暂时存储需要迁移的有效数据;
在进行擦除操作时,通过设置标志器标识正在进行块擦除操作的数据块所在分组(plane)或晶圆(die),从而在针对该目标数据块的写请求到来时将其转移映射到其他分组(plane)或晶圆(die),使得该目标数据块的擦除可以立即执行而不必等到有效数据迁移完成;
在读写请求到来的间隙时间,将迁移到所述掉电不易失缓存的有效数据写回至固态存储设备。
本发明方案中,通过上述手段使得在进行擦除操作时,通过设置标志器标识在进行块擦除操作的目标块所在分组(plane)或晶圆(die),以此方式向上层反应垃圾回收操作完成并继续响应到来的请求,即该所在的分组(plane)或晶圆(die)不响应请求,以避免写请求分配该分组(plane)或晶圆(die)的空闲页,造成响应的延时。其中,不响应请求包括控制映射方式,转移对该分组(plane)或晶圆(die)的相关写请求映射,使得不会对该分组(plane)或晶圆(die)分发写请求,读请求则会先读原有缓存和专门处理垃圾回收的缓存器,需要该分组(plane)或晶圆(die)响应则等待,以实现减少用户等待时间。
作为本发明的进一步优选,针对该目标数据块所在分组(plane)或晶圆(die)的读请求,如果缓冲不命中,则等待块擦除完成后响应。
作为本发明的进一步优选,所述缓存中因垃圾回收写入的数据缓存可支持正常的读写请求,提高缓存命中率,其采用提前写回的缓存管理策略进行管理,即系统中没有读写请求或其它高优先级请求,则对所述缓存中的内容进行管理,首先判断所述缓存中是否有数据需要提前写回,如果有则写回到固态存储设备中。
按照本发明的另一方面,提供一种固态存储设备的分段式垃圾回收方法,其包括:
(1)有效数据的迁移
1a)开始目标块的有效数据迁移,计数器i=0(i为目标块中的页数编号);利用队列Q记录从触发垃圾回收到数据迁移结束过程中的写请求的逻辑地址;
1b)判断第i页是否为有效页,若是转步骤1c),不是则转步骤1d);
1c)判断第i页的逻辑地址是否在队列Q中,如果是,则转步骤1d),如果不是,将第i页中的有效数据直接读到专门用于垃圾回收的缓存器,更新缓存逻辑地址,转步骤1d);
1d)更新映射关系,i++,判断i是否等于块中的总页数,是则完成了数据迁移,不是则转步骤1b);
(2)目标回收块的擦除
2a)调用闪存控制器提供的擦除命令,对目标物理块进行擦除,转步骤2b);
2b)修改标志器,继续响应请求但不响应需要该分组(plane)或晶圆(die)的请求;
2c)擦除操作完成,修改相应的位图或表项,将该块中的页标记为空闲页;
2d)相应的空闲页计数器加PNB,其中PNB为一个物理块中包含的物理页的数目,修改标志器;
3)在读写请求到来的间隙时间,将迁移到掉电不易失缓存的有效数据写回至固态存储设备。
作为本发明的进一步优选,所述所在的分组(plane)或晶圆(die)不响应请求包括不会对该分组(plane)或晶圆(die)分发写请求,读请求则会先读原有缓存和专门处理垃圾回收的缓存器,需要该分组(plane)或晶圆(die)响应则等待。
作为本发明的进一步优选,所述缓存中因垃圾回收写入的数据缓存采用提前写回的缓存管理策略进行管理,即系统中没有读写请求或其它高优先级请求,则对所述缓存中的内容进行管理,首先判断所述缓存中是否有数据需要提前写回,如果有则写回到固态存储设备中。
按照本发明的又一方面,提供一种固态存储设备的分段式垃圾回收方法,其包括:
1)判断读写请求队列是否为空;如果是,转步骤2);否则,转步骤3);
2)判断服务于垃圾回收操作的缓存是否为空;如果是,转步骤4);否则,采用提前写回机制,将所述缓存中的一页数据写回固态存储设备,转步骤1);
3)选择并处理一条读写请求但避免选择正在进行块擦除的分组(plane)或晶圆(die)响应请求,在执行请求过程中判断是否触发垃圾回收操作,如果是转步骤5);如果不用触发垃圾回收操作,转步骤1);
4)判断系统原来缓存是否为空;如果是,转步骤1);否则,采用提前写回机制管理该缓存,执行完毕,转步骤1);
5)选中目标块,将有效数据迁移到掉电非易失缓存,执行完毕,转步骤6);
6)开始目标块的擦除操作,修改标志器,返回垃圾回收操作结束信号,转步骤1),执行块的擦除操作。
作为本发明的进一步优选,步骤3)中,通过设置一个标志器标识在进行块擦除操作的目标块所在分组(plane)或晶圆(die),通过对标志器的判断从而实现避免选择正在进行块擦除的分组(plane)或晶圆(die)响应请求。
作为本发明的进一步优选,块的擦除操作完成后修改标志器和相关的位图信息。
作为本发明的进一步优选,所述提前写回机制指系统中没有读写请求或其它高优先级请求,则对所述缓存中的内容进行管理,首先判断所述缓存中是否有数据需要提前写回,如果有则写回到固态存储设备中。
本发明的针对闪存设备的垃圾回收方法,其中包括利用缓存进行回收块的有效数据处理方法,以及有效隐藏垃圾回收操作中耗时的回收块擦除时间,可以有效降低基于NAND Flash的固态存储设备中垃圾回收操作造成的读写时延。
本发明中提出利用缓存来暂时存储需要迁移的有效数据,在空闲时间写入Flash芯片,减少因数据迁移产生的时耗。
本发明中当回收块进行擦除操作时,其所在的分组(plane)或晶圆(die)是不响应请求的,而上层要对该分组(plane)或晶圆(die)操作,则需要等待,本发明中使用一个标志器来说明目标块所在分组(plane)或晶圆(die)在进行块擦除操作,避免写请求分配该分组(plane)或晶圆(die)的空闲页,造成响应的延时。
本发明中,服务于垃圾回收的掉电不易失缓存器将采用提前写回的缓存管理策略对这些数据进行管理,充分利用固态盘的空闲时间。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下有益效果:本发明利用非易失缓存暂时存储垃圾回收需要迁移的有效数据,将垃圾回收操作分段,使得目标块擦除和有效数据写回可以同时进行,大大减少开销;同时,其充分利用固态存储设备的空闲时段进行垃圾回收操作中的有效数据迁移,以实现在不影响垃圾回收效率的情况下,有效地降低垃圾回收带来的读写响应时延。
附图说明
图1是本发明实施例的方法适用的一种多通道SSD架构示意图;
图2是NAND Flash芯片的内部结构示意图;
图3是本发明实施例的方法的整体流程框架示意图;
图4是本发明实施例的方法中的有效数据迁移流程图;
图5是本发明实施例的方法中目标回收块的擦除流程图;
图6是本发明实施例的方法中缓存管理流程图;。
图7是本发明实施例的方法的具体工作流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
按照本发明实施例的一种固态存储设备的分段式垃圾回收方法,包括有效数据的迁移、目标回收块的擦除、间隙时间将迁移到掉电不易失缓存的有效数据写回至固态存储设备三个过程。
(1)有效数据的迁移
具体来说,对于有效数据的迁移,由于NAND Flash的物理特性(写前擦除、异地更新)决定了基于闪存芯片的固态盘在响应用户写请求过程中会触发垃圾回收,而垃圾回收是一个耗时的操作,其包括目标回收块的选择、有效数据的迁移以及目标块的擦除。垃圾回收的操作步骤中有效数据迁移和目标块的擦除是主要的耗时点。这样会严重影响系统对用户请求的响应。本发明实施例中通过利用缓存器来将垃圾回收的操作步骤分离,达到减少对后续请求响应等待的时间开销,该步骤操作可以为如下:
①开始目标块的有效数据迁移,计数器i=0(i为目标块中的第几页);利用队列Q记录从触发垃圾回收到数据迁移结束过程中的写请求的逻辑地址;
②判断第i页是否为有效页,若是转步骤③,不是则转步骤④;
③判断第i页的逻辑地址是否在队列Q中,如果是,则转步骤④,如果不是,将第i页中的有效数据直接读到专门用于垃圾回收的缓存器,更新缓存逻辑地址,转步骤④;
④更新映射关系,i++,判断i是否等于块中的总页数,是则完成了数据迁移,不是则转步骤②。
本发明实施例中应用了缓存器的高性能写,快速将目标块中的有效数据存储,减少了有效数据迁移的时间。通过增加缓存,把数据迁移到上述缓存,即可以提前执行目标块擦除操作。
本发明实施例中,缓存中因垃圾回收写入的数据缓存采用提前写回的缓存管理策略进行管理,即系统中没有读写请求或其它高优先级请求,则对所述缓存中的内容进行管理,首先判断所述缓存中是否有数据需要提前写回,如果有则写回到固态存储设备中。
需要说明的是,本发明在于针对固态盘中垃圾回收的操作步骤进行分段完成,对垃圾回收如何触发,对具体依据哪种算法来选择垃圾回收的目标物理块没有限制,不是本发明的关注点,在此不再赘述。本实施例中默认在垃圾回收请求执行前,已经确定了垃圾回收的目标物理块。
(2)目标回收块的擦除
对于目标回收块的擦除,在物理块中所有的有效页都进行了数据迁移之后,就可以执行擦除操作了。本发明实施例中,通过设置一个标志器来标识正在进行块擦除操作的目标块所在plane。由于不同Flash芯片设计有区别,本实施例中选择标识plane是由于默认底层命令寄存器的对应单元是plane,如果其他芯片设计的命令寄存器对应单元为die,则将标识对象替换为die。也就是说本发明中目标块擦除所影响的单元可以为plane也可以die。
对上层反应垃圾回收操作完成,继续响应到来的请求,先会判断标志器,不会对标识为正在进行块擦除操作的该plane分发写请求,读请求则会先读系统原有缓存和专门处理垃圾回收的缓存器,需要该plane响应则等待。标志器就是为了说明哪个plane中有块在进行擦除操作,此时不能响应请求。这样上层就不会给这个plane发送写请求,读请求那是因为数据在里面,只能等待块擦除完成,再响应这个读请求。
通过上述的处理,可以有效隐藏垃圾回收中目标块的擦除时延。该步骤可以采用如下操作实现:
①调用闪存控制器提供的擦除命令,对目标物理块进行擦除。转步骤②;
②修改标志器,继续响应请求(不响应需要该plane的请求);
③擦除操作完成,修改相应的位图或表项,将该块中的页标记为空闲页。转步骤④;
④相应的空闲页计数器加PNB,PNB为一个物理块中包含的物理页的数目,修改标志器。
(3)服务于垃圾回收的掉电不易失缓存器
本方案中利用特殊的缓存来进行垃圾回收中有效数据的迁移。由于要保证数据的一致性,考虑到系统突然掉电或者出现其他故障,这里用来存储垃圾回收过程中的有效数据是使用带有备用电池的存储器,其可以支持在出现突发状况时保证将其中的数据存储好,不造成丢失。
目前一般基于NAND Flash的固态盘的页大小为4KB、8KB,每个块中有64个页。考虑到垃圾回收的效率,一般目标块的选择,其中有效数据不会超过15%,及为10页,80KB(取大的值);同时为了支持多个垃圾回收操作,可以将该特殊的缓存器大小定位为4MB。
本发明增加的专门用来服务垃圾回收有效数据迁移的缓存器,采用提前写回的缓存管理策略。当固态存储设备每完成一个请求或操作而进入空闲状态时,会调用仲裁程序选取下一个要执行的请求:如果系统中没有读写请求或其它高优先级请求,这里会对缓存里的内容进行管理,首先判断服务于垃圾回收操作的缓存器里是否有数据需要提前写回,如果没有则对系统原有的缓存进行操作。
这里需要说明的是,一般的垃圾回收方法都会尽量避免出现垃圾回收操作集中爆发的情况,这种情况出现的也比较少,但是当集中触发多个垃圾回收操作将这个缓存器存满时,这里会采用先进先出策略替换该缓存中的数据。这样子,会加重对系统读写请求的响应时延,不过这种情况出现的概率很小,一般是可以保证利用请求到来的间隙,将该缓存器中的数据及时写回。
本发明中,垃圾回收被触发时,进行步骤(1)-(2)就可以减少有效数据迁移的时间和隐藏垃圾回收中耗时的目标块擦除,做到及时响应用户后继到来的请求。同时由步骤(3)利用请求到来的间隙,将垃圾回收操作中迁移到掉电不易失的有效数据写回至固态存储设备,并且由于其掉电不易失性可以有效保证数据的一致性。
在不考虑具有更高优先级的其他请求或命令的情况下,系统总的工作流程如图7所示,具体为:
1)判断读写请求队列是否为空;如果是,转步骤2);否则,转步骤3);
2)判断服务于垃圾回收操作的缓存是否为空;如果是,转步骤4);否则,采用提前写回机制,将特殊缓存中的1页数据写回固态存储设备,执行完毕,转步骤1);
3)选择并处理一条读写请求(根据标志器,以免选择正在进行块擦除的plane响应请求),在执行请求过程中判断是否触发垃圾回收操作,如果是转步骤5);如果不用触发垃圾回收操作,转步骤1);
4)判断系统原来缓存是否为空;如果是,转步骤1);否则,采用提前写回机制管理该缓存,执行完毕,转步骤1);
5)选中目标块,将有效数据迁移到掉电非易失缓存,执行完毕,转步骤6);
6)开始目标块的擦除操作,修改标志器,返回垃圾回收操作结束信号,转步骤1)。执行块的擦除操作,直到完成,则修改标志器和相关的位图信息。
在该步骤6)中,考虑到块的擦除操作不会对其他plane造成影响,故本发明中提出设置标志器,用来隐藏正在执行擦除操作的plane,做到将垃圾回收中的块擦除操作隐藏,达到及时响应后继到达请求的目的。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种固态存储设备的分段式垃圾回收方法,其包括:
增加专门用于服务垃圾回收有效数据迁移的掉电不易失缓存,在垃圾回收操作的有效数据迁移中,利用该缓存暂时存储需要迁移的有效数据;
在进行擦除操作时,通过设置标志器标识正在进行块擦除操作的数据块所在分组(plane)或晶圆(die),从而在针对该目标数据块的写请求到来时将其转移映射到其他分组(plane)或晶圆(die),使得该目标数据块的擦除可以立即执行而不必等到有效数据迁移完成;
在读写请求到来的间隙时间,将迁移到所述掉电不易失缓存的有效数据写回至固态存储设备。
2.根据权利要求1所述的一种固态存储设备的分段式垃圾回收方法,其中,针对该目标数据块所在分组(plane)或晶圆(die)的读请求,如果缓冲不命中,则等待块擦除完成后响应。
3.根据权利要求1或所述的一种固态存储设备的分段式垃圾回收方法,其中,所述缓存中因垃圾回收写入的数据缓存可支持正常的读写请求,提高缓存命中率,其采用提前写回的缓存管理策略进行管理,即系统中没有读写请求或其它高优先级请求,则对所述缓存中的内容进行管理,首先判断所述缓存中是否有数据需要提前写回,如果有则写回到固态存储设备中。
4.一种固态存储设备的分段式垃圾回收方法,其包括:
(1)有效数据的迁移
1a)开始目标块的有效数据迁移,计数器i=0,利用队列Q记录从触发垃圾回收到数据迁移结束过程中的写请求的逻辑地址,其中i为目标块中的页数序号;
1b)判断第i页是否为有效页,若是转步骤1c),不是则转步骤1d);
1c)判断第i页的逻辑地址是否在队列Q中,如果是,则转步骤1d),如果不是,将第i页中的有效数据直接读到专门用于垃圾回收的缓存器,更新缓存逻辑地址,转步骤1d);
1d)更新映射关系,i++,判断i是否等于块中的总页数,是则完成了数据迁移,不是则转步骤1b);
(2)目标回收块的擦除
2a)调用闪存控制器提供的擦除命令,对目标物理块进行擦除,转步骤2b);
2b)修改标志器,继续响应请求但不响应需要该分组(plane)或晶圆(die)的请求;
2c)擦除操作完成,修改相应的位图或表项,将该块中的页标记为空闲页;
2d)相应的空闲页计数器加PNB,其中PNB为一个物理块中包含的物理页的数目,修改标志器;
3)在读写请求到来的间隙时间,将迁移到掉电不易失缓存的有效数据写回至固态存储设备。
5.根据权利要求4所述的一种固态存储设备的分段式垃圾回收方法,其中,所述所在的分组(plane)或晶圆(die)不响应请求包括不会对该分组(plane)或晶圆(die)分发写请求,读请求则会先读原有缓存和专门处理垃圾回收的缓存器,需要该分组(plane)或晶圆(die)响应则等待。
6.根据权利要求4或5所述的一种固态存储设备的分段式垃圾回收方法,其中,所述缓存中因垃圾回收写入的数据缓存采用提前写回的缓存管理策略进行管理,即系统中没有读写请求或其它高优先级请求,则对所述缓存中的内容进行管理,首先判断所述缓存中是否有数据需要提前写回,如果有则写回到固态存储设备中。
7.一种固态存储设备的分段式垃圾回收方法,其包括:
1)判断读写请求队列是否为空;如果是,转步骤2);否则,转步骤3);
2)判断服务于垃圾回收操作的缓存是否为空;如果是,转步骤4);否则,采用提前写回机制,将所述缓存中的一页数据写回固态存储设备,转步骤1);
3)选择并处理一条读写请求但避免选择正在进行块擦除的分组(plane)或晶圆(die)响应请求,在执行请求过程中判断是否触发垃圾回收操作,如果是转步骤5);如果不用触发垃圾回收操作,转步骤1);
4)判断系统原来缓存是否为空;如果是,转步骤1);否则,采用提前写回机制管理该缓存,执行完毕,转步骤1);
5)选中目标块,将有效数据迁移到掉电非易失缓存,执行完毕,转步骤6);
6)开始目标块的擦除操作,修改标志器,返回垃圾回收操作结束信号,转步骤1),执行块的擦除操作。
8.根据权利要求7所述的一种固态存储设备的分段式垃圾回收方法,其中,步骤3)中,通过设置一个标志器标识在进行块擦除操作的目标块所在分组(plane)或晶圆(die),通过对标志器的判断从而实现避免选择正在进行块擦除分组(plane)或晶圆(die)响应请求。
9.根据权利要求7或8所述的一种固态存储设备的分段式垃圾回收方法,其中,块的擦除操作完成后修改标志器和相关的位图信息。
10.根据权利要求7-9中任一项所述的一种固态存储设备的分段式垃圾回收方法,其中,所述提前写回机制指系统中没有读写请求或其它高优先级请求,则对所述缓存中的内容进行管理,首先判断所述缓存中是否有数据需要提前写回,如果有则写回到固态存储设备中。
CN201610880223.0A 2016-10-08 2016-10-08 一种固态存储设备的分段式垃圾回收方法 Active CN106528438B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610880223.0A CN106528438B (zh) 2016-10-08 2016-10-08 一种固态存储设备的分段式垃圾回收方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610880223.0A CN106528438B (zh) 2016-10-08 2016-10-08 一种固态存储设备的分段式垃圾回收方法

Publications (2)

Publication Number Publication Date
CN106528438A true CN106528438A (zh) 2017-03-22
CN106528438B CN106528438B (zh) 2019-08-13

Family

ID=58331546

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610880223.0A Active CN106528438B (zh) 2016-10-08 2016-10-08 一种固态存储设备的分段式垃圾回收方法

Country Status (1)

Country Link
CN (1) CN106528438B (zh)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391392A (zh) * 2017-07-21 2017-11-24 重庆大学 一种基于闪存存储设备并行特征的垃圾回收优化方法
CN107797772A (zh) * 2017-11-27 2018-03-13 郑州云海信息技术有限公司 一种基于闪存介质的垃圾回收系统及方法
CN108170614A (zh) * 2018-01-19 2018-06-15 湖南国科微电子股份有限公司 一种避免数据重复回收的方法、装置及固态硬盘
CN108304145A (zh) * 2018-01-30 2018-07-20 国科美国研究实验室 数据贮存装置的垃圾回收方法
CN108733578A (zh) * 2017-04-21 2018-11-02 慧荣科技股份有限公司 快闪存储器的垃圾回收断电回复方法及使用该方法的装置
CN108932106A (zh) * 2017-05-26 2018-12-04 上海宝存信息科技有限公司 固态硬盘访问方法以及使用该方法的装置
CN109240941A (zh) * 2018-09-21 2019-01-18 郑州云海信息技术有限公司 一种存储系统的垃圾回收方法及相关装置
CN110058795A (zh) * 2018-01-19 2019-07-26 慧荣科技股份有限公司 管理闪存模块的方法及相关的闪存控制器及电子装置
CN110554970A (zh) * 2018-05-31 2019-12-10 北京忆恒创源科技有限公司 显著降低写放大的垃圾回收方法及存储设备
CN111506256A (zh) * 2019-01-31 2020-08-07 睿宽智能科技有限公司 减少写入效能变化并防止io阻塞的方法
CN111610930A (zh) * 2019-02-26 2020-09-01 慧荣科技股份有限公司 数据储存装置以及非挥发式存储器控制方法
CN112069089A (zh) * 2020-09-11 2020-12-11 杭州海康威视系统技术有限公司 回收存储块的方法及装置
CN112148631A (zh) * 2020-09-25 2020-12-29 华侨大学 一种基于高速缓存感知的垃圾回收方法、设备及存储介质
CN113508382A (zh) * 2019-01-03 2021-10-15 铠侠股份有限公司 Ssd中数据的选择性擦除
CN114281247A (zh) * 2021-11-29 2022-04-05 深圳三地一芯电子有限责任公司 一种基于混合介质的flash带宽分配方法及装置
CN114942714A (zh) * 2022-05-24 2022-08-26 深圳市奥振电子科技有限公司 一种电子白板智能辅助方法、系统及存储介质
CN117234962A (zh) * 2023-11-10 2023-12-15 成都佰维存储科技有限公司 空间回收方法、装置、可读存储介质及电子设备
CN114942714B (zh) * 2022-05-24 2024-07-09 深圳市奥振电子科技有限公司 一种电子白板智能辅助方法、系统及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102713866A (zh) * 2009-12-15 2012-10-03 国际商业机器公司 减少基于闪存的存储系统中的存取争用
CN103336744A (zh) * 2013-06-20 2013-10-02 华中科技大学 一种固态存储设备的垃圾回收方法及其系统
CN104484283A (zh) * 2014-11-27 2015-04-01 记忆科技(深圳)有限公司 一种降低固态硬盘写放大的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102713866A (zh) * 2009-12-15 2012-10-03 国际商业机器公司 减少基于闪存的存储系统中的存取争用
CN103336744A (zh) * 2013-06-20 2013-10-02 华中科技大学 一种固态存储设备的垃圾回收方法及其系统
CN104484283A (zh) * 2014-11-27 2015-04-01 记忆科技(深圳)有限公司 一种降低固态硬盘写放大的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SUZHEN WU等: "GCaR:Garbage Collection aware Cache Management with Improved Performance for Flash一based SSDs", 《ICS "16:PROCEEDINGS OF THE 2016 INTERNATIONAL CONFERENCE ON SUPERCOMPUTING》 *
吴素贞等: "GC_RAIS_一种基于垃圾回收感知的固态盘阵列", 《计算机研究与发展》 *

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108733578A (zh) * 2017-04-21 2018-11-02 慧荣科技股份有限公司 快闪存储器的垃圾回收断电回复方法及使用该方法的装置
CN108932106B (zh) * 2017-05-26 2021-07-02 上海宝存信息科技有限公司 固态硬盘访问方法以及使用该方法的装置
CN108932106A (zh) * 2017-05-26 2018-12-04 上海宝存信息科技有限公司 固态硬盘访问方法以及使用该方法的装置
CN107391392A (zh) * 2017-07-21 2017-11-24 重庆大学 一种基于闪存存储设备并行特征的垃圾回收优化方法
CN107797772A (zh) * 2017-11-27 2018-03-13 郑州云海信息技术有限公司 一种基于闪存介质的垃圾回收系统及方法
CN110058795B (zh) * 2018-01-19 2022-04-05 慧荣科技股份有限公司 管理闪存模块的方法及相关的闪存控制器及电子装置
CN108170614A (zh) * 2018-01-19 2018-06-15 湖南国科微电子股份有限公司 一种避免数据重复回收的方法、装置及固态硬盘
CN110058795A (zh) * 2018-01-19 2019-07-26 慧荣科技股份有限公司 管理闪存模块的方法及相关的闪存控制器及电子装置
CN108170614B (zh) * 2018-01-19 2022-01-11 湖南国科微电子股份有限公司 一种避免数据重复回收的方法、装置及固态硬盘
CN108304145A (zh) * 2018-01-30 2018-07-20 国科美国研究实验室 数据贮存装置的垃圾回收方法
CN110554970A (zh) * 2018-05-31 2019-12-10 北京忆恒创源科技有限公司 显著降低写放大的垃圾回收方法及存储设备
CN109240941B (zh) * 2018-09-21 2021-12-03 郑州云海信息技术有限公司 一种存储系统的垃圾回收方法及相关装置
CN109240941A (zh) * 2018-09-21 2019-01-18 郑州云海信息技术有限公司 一种存储系统的垃圾回收方法及相关装置
CN113508382A (zh) * 2019-01-03 2021-10-15 铠侠股份有限公司 Ssd中数据的选择性擦除
CN113508382B (zh) * 2019-01-03 2024-03-29 铠侠股份有限公司 Ssd中数据的选择性擦除
CN111506256B (zh) * 2019-01-31 2023-03-28 睿宽智能科技有限公司 减少写入效能变化并防止io阻塞的方法
CN111506256A (zh) * 2019-01-31 2020-08-07 睿宽智能科技有限公司 减少写入效能变化并防止io阻塞的方法
CN111610930A (zh) * 2019-02-26 2020-09-01 慧荣科技股份有限公司 数据储存装置以及非挥发式存储器控制方法
CN111610930B (zh) * 2019-02-26 2023-05-02 慧荣科技股份有限公司 数据储存装置以及非挥发式存储器控制方法
CN112069089A (zh) * 2020-09-11 2020-12-11 杭州海康威视系统技术有限公司 回收存储块的方法及装置
CN112069089B (zh) * 2020-09-11 2022-09-27 杭州海康威视系统技术有限公司 回收存储块的方法及装置
CN112148631B (zh) * 2020-09-25 2023-05-26 华侨大学 一种基于高速缓存感知的垃圾回收方法、设备及存储介质
CN112148631A (zh) * 2020-09-25 2020-12-29 华侨大学 一种基于高速缓存感知的垃圾回收方法、设备及存储介质
CN114281247A (zh) * 2021-11-29 2022-04-05 深圳三地一芯电子有限责任公司 一种基于混合介质的flash带宽分配方法及装置
CN114942714A (zh) * 2022-05-24 2022-08-26 深圳市奥振电子科技有限公司 一种电子白板智能辅助方法、系统及存储介质
CN114942714B (zh) * 2022-05-24 2024-07-09 深圳市奥振电子科技有限公司 一种电子白板智能辅助方法、系统及存储介质
CN117234962A (zh) * 2023-11-10 2023-12-15 成都佰维存储科技有限公司 空间回收方法、装置、可读存储介质及电子设备
CN117234962B (zh) * 2023-11-10 2024-03-26 成都佰维存储科技有限公司 空间回收方法、装置、可读存储介质及电子设备

Also Published As

Publication number Publication date
CN106528438B (zh) 2019-08-13

Similar Documents

Publication Publication Date Title
CN106528438B (zh) 一种固态存储设备的分段式垃圾回收方法
CN103136121B (zh) 一种固态盘的缓存管理方法
CN107193646B (zh) 一种基于混合主存架构的高效动态页面调度方法
CN103336744B (zh) 一种固态存储设备的垃圾回收方法及其系统
CN103197899B (zh) 增强基于闪存的存储的寿命和性能
CN102981963B (zh) 一种固态盘的闪存转换层的实现方法
CN109471594B (zh) 一种mlc闪存读写方法
CN110515859A (zh) 一种固态硬盘读写请求并行处理方法
CN105335098A (zh) 一种基于存储级内存的日志文件系统性能提高方法
CN103902475B (zh) 一种基于队列管理机制的固态硬盘并行访问方法及装置
KR20040007395A (ko) 플래시 메모리를 위한 포스트방식의 라이트-스루 캐시
CN102163175A (zh) 一种基于局部性分析的混合地址映射方法
CN106201335B (zh) 存储系统
CN103678149B (zh) 数据处理的方法及设备
CN102768645A (zh) 混合缓存的固态硬盘预取方法和固态硬盘ssd
CN103092766A (zh) 一种用于nand flash的均衡损耗实现方法
CN107015763A (zh) 混合存储系统中ssd管理方法及装置
CN106815152A (zh) 一种优化页级闪存转换层的方法
CN107943719A (zh) 一种基于请求分类的闪存转换层控制方法
CN109240939B (zh) 一种快速处理固态硬盘trim的方法
CN105204783B (zh) 一种基于数据生存期的固态盘垃圾回收方法
CN110309077B (zh) 主机与设备协同工作的闪存转换层构建方法及装置
CN107797772A (zh) 一种基于闪存介质的垃圾回收系统及方法
CN112835534B (zh) 一种基于存储阵列数据访问的垃圾回收优化方法及装置
CN107515728A (zh) 发挥闪存设备内部并发特性的数据管理方法和装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant