一种固态硬盘纠错优化方法、系统、设备及介质技术方案

技术编号:37416404 阅读:10 留言:0更新日期:2023-04-30 09:40
本发明专利技术属于计算机领域,具体涉及一种固态硬盘纠错优化方法、系统、设备及可读存储介质。其中,方法包括:以预定方式统计硬盘中对存储块的纠错次数;响应于对应的存储块的纠错次数达到第一预定值,按照预定策略将所述存储块标记为坏块并将对应的存储块的数据迁移到其他存储块中。通过本发明专利技术提供的一种固态硬盘纠错优化方法,对固态硬盘上存储块读数据出错时的纠错次数进行统计,并根据存储块的纠错次数优化存储块的读出错对固态硬盘的性能的影响。可以实现:及时对有异常的block中的数据进行转移,保证数据安全性;减少标坏块的次数;可以避免频繁进入纠错流程而导致的性能降低。免频繁进入纠错流程而导致的性能降低。免频繁进入纠错流程而导致的性能降低。

【技术实现步骤摘要】
一种固态硬盘纠错优化方法、系统、设备及介质


[0001]本专利技术属于计算机领域,具体涉及一种固态硬盘纠错优化方法、系统、设备及可读存储介质。

技术介绍

[0002]随着SSD的高速发展和广泛应用,安全性和性能是SSD的重要指标。
[0003]在SSD领域中,由于SSD芯片的芯片颗粒的电气原因,会存在一些已经存储的数据出现异常的情况,为此,在SSD领域内容,在读取数据时并不是目标数据是多少而读取多少,而是一次将一段数据区间全部读取,然后将对应的目标数据反馈给上游的应用或CPU处理。因此常常采用在这一段数据区间上实现纠错编码,在读取这一段数据时,通过算法对这一段数据进行校验,来验证数据在存储后是否因物理原因而发生错误。目前读纠错流程是保证数据安全性的重要手段,通过shift read、soft LDPC、RAID等流程依次读失败进行纠错,恢复数据。
[0004]但对于soft LDPC成功的block,目前有以下两种处理方式:
[0005]①
不做处理:此方法有可能会出现此block频繁进入纠错流程,影响性能;
[0006]②
根据soft LDPC成功后ErrorBits数进行判断是否进行标记坏块:此方法可能会导致标记过多坏块。
[0007]因此,传统的实现方式中,因固态硬盘中频繁纠错会导致硬盘处理其他任务的时间受到挤压,导致固态硬盘的整体性能会随着固态硬盘的使用而下降。

技术实现思路

[0008]为解决上述问题,本专利技术提出一种固态硬盘纠错优化方法,包括:
[0009]以预定方式统计硬盘中对存储块的纠错次数;
[0010]响应于对应的存储块的纠错次数达到第一预定值,按照预定策略将所述存储块标记为坏块并将对应的存储块的数据迁移到其他存储块中。
[0011]在本专利技术的一些实施方式中,以预定方式统计硬盘中对存储块的纠错次数包括:
[0012]在硬盘的内存中创建用于存储对应存储块的纠错次数的纠错次数表。
[0013]在本专利技术的一些实施方式中,方法还包括:
[0014]响应于所述纠错次数表记录的存储块记录数大于预设阈值,根据所述纠错次数表中对应存储块的纠错次数的排序,将纠错次数少的存储块的纠错次数迁移到存储块读数据记录表中的指定位置。
[0015]在本专利技术的一些实施方式中,将纠错次数少的存储块的纠错次数迁移到存储块读数据记录表中的指定位置包括:
[0016]根据对应的存储块在存储块读数据记录表中数据区域的空闲空间,将预定位数的空闲空间作为所述存储块的纠错次数记录区域。
[0017]在本专利技术的一些实施方式中,方法还包括:
[0018]响应于所述存储块的纠错次数已记录到所述预定位数的空闲空间,且所述存储块在存储块读数据记录表中的读数据次数的记录位置与所述空闲空间的数据之差少于第二预定值,将所述存储块的纠错次数从所述存储块读数据记录表中迁移到纠错次数表中。
[0019]在本专利技术的一些实施方式中,方法还包括:
[0020]响应于所述存储块在存储块读数据记录表中的空闲空间不满足所述预定位数,将所述存储块的纠错次数保留在所述纠错次数表中。
[0021]在本专利技术的一些实施方式中,方法还包括:
[0022]响应于对存储块的纠错失败,将所述存储块标记为坏块。
[0023]本专利技术的另一方面还提出一种固态硬盘纠错优化系统,包括:
[0024]纠错管理模块,所述纠错管理模块配置用于以预定方式统计硬盘中对存储块的纠错次数;
[0025]存储块管理模块,所述存储块管理模块配置用于响应于对应的存储块的纠错次数达到第一预定值,按照预定策略将所述存储块标记为块块并将对应的存储块的数据迁移到其他存储块中。
[0026]本专利技术的又一方面还提出一种计算机设备,包括:
[0027]至少一个处理器;以及
[0028]存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现上述实施方式中任意一项所述方法的步骤。
[0029]本专利技术的再一方面还提出一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述实施方式中任意一项所述方法的步骤。
[0030]通过本专利技术提供的一种固态硬盘纠错优化方法,对固态硬盘上存储块读数据出错时的纠错次数进行统计,并根据存储块的纠错次数优化存储块的读出错对固态硬盘的性能的影响。可以实现:及时对有异常的block中的数据进行转移,保证数据安全性;减少标坏块的次数;可以避免频繁进入纠错流程而导致的性能降低。
附图说明
[0031]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0032]图1为本专利技术实施例提供的一种固态硬盘纠错优化方法的方法流程图;
[0033]图2为本专利技术实施例提供的一种固态硬盘纠错优化系统的结构示意图;
[0034]图3为本专利技术实施例提供的一种计算机设备的结构示意图;
[0035]图4为本专利技术实施例提供的一种计算机可读存储介质的结构示意图;
[0036]图5为本专利技术一实施例提供的一种固态硬盘纠错优化方法具体实施流程示意图。
具体实施方式
[0037]为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照
附图,对本专利技术实施例进一步详细说明。
[0038]需要说明的是,本专利技术实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本专利技术实施例的限定,后续实施例对此不再一一说明。
[0039]本专利技术旨在优化SSD硬盘的纠错流程,如前所述,由于SSD硬盘为防止数据因存储颗粒的电气原因导致数据异常,通常采用以一段存储区间内的数据进行纠错方式进行存储,并在读取数据时对读取的内容进行校验,如果出现读出错,按照对应的纠错算法恢复错误存储区域的数据。而传统的固态硬盘的纠错机制上,对于出现读出错的存储块,也即Block并没有对应的优化处理,这就导致存在某些Block出错的概率远高于其他Block,SSD上的主控芯片在读取该Block时需要反复(出现一次读出错就要恢复一次)的对该Block中的数据通过纠错算法进行修复。又因为随着SSD硬盘的使用原因以及存储芯片的颗粒问题,在SSD后续使用中可能存在越来越多低质量的Block,导致SSD的主控芯片将花费大量的时间对这些低质量的Block进行纠错及恢复处理,进而使得主控处理正常数据读写任务的执行时间降低,因此对于上层的操作系统及应用来说会因固态硬盘的读写性能降低导致整体性能的下降。
[0040]如图1所示,为解本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种固态硬盘纠错优化方法,其特征在于,包括:以预定方式统计硬盘中对存储块的纠错次数;响应于对应的存储块的纠错次数达到第一预定值,按照预定策略将所述存储块标记为坏块并将对应的存储块的数据迁移到其他存储块中。2.根据权利要求1所述的方法,其特征在于,所述以预定方式统计硬盘中对存储块的纠错次数包括:在硬盘的内存中创建用于存储对应存储块的纠错次数的纠错次数表。3.根据权利要求2所述的方法,其特征在于,还包括:响应于所述纠错次数表记录的存储块记录数大于预设阈值,根据所述纠错次数表中对应存储块的纠错次数的排序,将纠错次数少的存储块的纠错次数迁移到存储块读数据记录表中的指定位置。4.根据权利要求3所述的方法,其特征在于,所述将纠错次数少的存储块的纠错次数迁移到存储块读数据记录表中的指定位置包括:根据对应的存储块在存储块读数据记录表中数据区域的空闲空间,将预定位数的空闲空间作为所述存储块的纠错次数记录区域。5.根据权利要求4所述的方法,其特征在于,还包括:响应于所述存储块的纠错次数已记录到所述预定位数的空闲空间,且所述存储块在存储块读数据记录表中的读数据次数的记录位置与所述空闲空间的数据之差少于第二预定值,将...

【专利技术属性】
技术研发人员:钱翔邵文豪苏军
申请(专利权)人:山东云海国创云计算装备产业创新中心有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1