技术新讯 > 信息存储应用技术 > 固态硬盘中QLC数据恢复方法、装置、设备及介质与流程  >  正文

固态硬盘中QLC数据恢复方法、装置、设备及介质与流程

  • 国知局
  • 2024-07-31 20:09:07

本发明涉及数据处理,尤其涉及一种固态硬盘中qlc数据恢复方法、装置、设备及介质。

背景技术:

1、随着互联网、云计算、物联网等技术的发展及广泛应用,在人类生活中,时时刻刻都会产生海量的数据需要处理及存储,信息技术的高速发展对存储系统的性能提出了更高的要求。固态硬盘ssd因其读写速度快、能耗较低,而被广泛采用。ssd里面的存储颗粒就是一颗颗nand flash(闪存),nand是目前闪存颗粒用的技术。

2、由于nand本身的物理定性,随着cell内部bit越来越多,即单位存储容量增加,但读写性能和耐磨损程度进一步下降。写入nand同样的数量数据量,相比写入slc数据块的时间,qlc数据块则需要延长10~15倍。

3、由于qlc颗粒超长的落入nand时间,导致按照qlc在下电保存的时间很长,则很容易超过电容的上限能力。基于ssd成本的考虑,也不会采用超大电容的方式来解决。

4、通常的做法是将待写入qlc的数据量改写到slc block(即slc数据块)中,来加速下电时间,可有效的降低对电容容量的影响。但这种做法需要在ssd盘在上电初始期间快速恢复qlc的数据,待恢复数据后,ssd才能继续执行其它上电流程。

5、目前数据从slc区域快速移动到qlc区域,需要经过ecc纠错校验,导致数据转移的效率较低。

技术实现思路

1、针对现有技术存在的问题,本发明提供一种固态硬盘中qlc数据恢复方法、装置、设备及介质。

2、本发明提供一种固态硬盘中qlc数据恢复方法,包括:

3、统计slc数据块中的fbc值;

4、确定统计的fbc值低于预设阈值时,生成对qlc数据进行恢复的数据恢复请求,所述数据恢复请求包括slc读请求、qlc写请求和不构建ddr空间的指令;

5、基于所述数据恢复请求,从slc数据块中读出数据到nand缓冲区;

6、基于qlc数据块的存储要求,将nand缓冲区中的数据落入qlc数据块中。

7、在一个实施例中,所述方法还包括:

8、确定统计的fbc值等于或高于预设阈值时,生成对qlc数据进行恢复的数据恢复请求,所述数据恢复请求包括slc读请求、qlc写请求和构建ddr空间的指令;

9、基于构建ddr空间的指令,构建ddr空间;

10、基于所述数据恢复请求,从slc数据块中读出数据到nand缓冲区;

11、将nand缓冲区中的数据经过ecc解密,并传输到ddr空间;其中,所述ddr空间基于qlc数据块的存储要求进行构建;

12、基于qlc数据块的存储要求,将ddr空间中的数据写入到nand缓冲区,并将nand缓冲区中的数据落入qlc数据块中。

13、在一个实施例中,在统计slc数据块中的fbc值之前,所述方法还包括:

14、在固态硬盘中每个lun上选择预设数目的block;

15、将预设数目的block划定为slc数据块,用于固态硬盘下电期间缓存qlc数据。

16、在一个实施例中,在统计slc数据块中的fbc值之前,所述方法还包括:

17、对划定的第一数目的slc数据块设置用于全局检查的判断标记;

18、对判断标记为第一标记的slc数据块,进行检测以得到所述slc数据块的fbc值,待得到所述slc数据块的fbc值之后,将判断标记由第一标记变更为第二标记;

19、对判断标记为第二标记的slc数据块,直接获取所述slc数据块的fbc值。

20、在一个实施例中,基于qlc数据块的存储要求,将nand缓冲区中的数据落入qlc数据块中,包括:

21、基于qlc数据块的存储要求,确定qlc数据块对slc page页的页数;

22、从nand缓冲区中集合到所述页数的slc数据后,将集合到的数据落入qlc数据块中。

23、在一个实施例中,所述方法还包括:

24、待qlc数据从slc数据块恢复完成后,擦除slc数据块中的数据。

25、在一个实施例中,所述方法还包括:

26、选择第二数目的slc数据块,评估各个slc数据块的fbc值,基于各个fbc值确定一平均值;

27、基于所述平均值的预设百分比,确定预设阈值,所述预设阈值大于所述平均值。

28、本发明还提供一种固态硬盘中qlc数据恢复装置,包括:

29、统计模块,用于统计slc数据块中的fbc值;

30、生成模块,用于确定统计的fbc值低于预设阈值时,生成对qlc数据进行恢复的数据恢复请求,所述数据恢复请求包括slc读请求、qlc写请求和不构建ddr空间的指令;

31、读取模块,用于基于所述数据恢复请求,从slc数据块中读出数据到nand缓冲区;

32、处理模块,用于基于qlc数据块的存储要求,将nand缓冲区中的数据落入qlc数据块中。

33、本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述固态硬盘中qlc数据恢复方法。

34、本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述固态硬盘中qlc数据恢复方法。

35、本发明提供的一种固态硬盘中qlc数据恢复方法、装置、设备及介质,确定统计的fbc值低于预设阈值时,生成不构建ddr空间的对qlc数据进行恢复的数据恢复请求,并基于数据恢复请求,从slc数据块中读出数据到nand缓冲区,基于qlc数据块的存储要求,将nand缓冲区中的数据落入qlc数据块中,实现数据的快速恢复,避免了同通道内的串行数据传输和校验的过程,提高了数据转移的效率。

技术特征:

1.一种固态硬盘中qlc数据恢复方法,其特征在于,包括:

2.根据权利要求1所述的固态硬盘中qlc数据恢复方法,其特征在于,所述方法还包括:

3.根据权利要求1所述的固态硬盘中qlc数据恢复方法,其特征在于,在统计slc数据块中的fbc值之前,所述方法还包括:

4.根据权利要求3所述的固态硬盘中qlc数据恢复方法,其特征在于,在统计slc数据块中的fbc值之前,所述方法还包括:

5.根据权利要求1所述的固态硬盘中qlc数据恢复方法,其特征在于,基于qlc数据块的存储要求,将nand缓冲区中的数据落入qlc数据块中,包括:

6.根据权利要求1所述的固态硬盘中qlc数据恢复方法,其特征在于,所述方法还包括:

7.根据权利要求1所述的固态硬盘中qlc数据恢复方法,其特征在于,所述方法还包括:

8.一种固态硬盘中qlc数据恢复装置,其特征在于,包括:

9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述固态硬盘中qlc数据恢复方法。

10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述固态硬盘中qlc数据恢复方法。

技术总结本发明涉及数据处理技术领域,提供一种固态硬盘中QLC数据恢复方法、装置、设备及介质,该方法包括:统计SLC数据块中的FBC值;确定统计的FBC值低于预设阈值时,生成对QLC数据进行恢复的数据恢复请求,数据恢复请求包括SLC读请求、QLC写请求和不构建DDR空间的指令;基于所述数据恢复请求,从SLC数据块中读出数据到NAND缓冲区;基于QLC数据块的存储要求,将NAND缓冲区中的数据落入QLC数据块中。本发明确定统计的FBC值低于预设阈值时,生成不构建DDR空间的对QLC数据进行恢复的数据恢复请求,并基于数据恢复请求,从SLC数据块中读出数据到NAND缓冲区,基于QLC数据块的存储要求,将NAND缓冲区中的数据落入QLC数据块中,实现数据的快速恢复,避免了同通道内的串行数据传输和校验的过程,提高了数据转移的效率。技术研发人员:苏军,郑善龙受保护的技术使用者:苏州元脑智能科技有限公司技术研发日:技术公布日:2024/7/4

本文地址:https://www.jishuxx.com/zhuanli/20240731/185325.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。