NAND块动态重映射、读写命令处理方法及存储设备技术

技术编号:35355588 阅读:21 留言:0更新日期:2022-10-26 12:32
本申请提供一种NAND块动态重映射和读写命令处理方法及存储设备,涉及计算机领域,NAND块动态重映射方法包括:对不同LUN中相同物理索引的NAND块进行绑定,组成大块;以大块索引和LUN索引分别为行和列,建立NAND块动态映射表,根据NAND块的物理索引对NAND块动态映射表的表项进行初始化;获取第一大块和第二大块,其中,第一大块中好块数量大于第二大块中好块数量;在相同LUN索引内,将第一大块内的好块与第二大块内的坏块进行交换,更新NAND块动态映射表。本申请根据SSD生产完成后坏块的实时分布情况,对坏块进行重映射,实现SSD中所有大块中好块数量均衡,提高SSD写性能。提高SSD写性能。提高SSD写性能。

【技术实现步骤摘要】
NAND块动态重映射、读写命令处理方法及存储设备


[0001]本申请涉及计算机
,尤其涉及一种NAND块动态重映射、读写命令处理方法及存储设备。

技术介绍

[0002]目前固态硬盘(SSD)在使用非易失性存储块(NAND块)时,会将位于不同数据存储位置(die)的相同物理索引块绑定,组成一个大块(superblock,或xblock),作为写入和擦除单元。大块包括来自多个逻辑单元(LUN)的每个的物理块,为大块提供物理块的多个逻辑单元被称为逻辑单元组,逻辑单元组的每个逻辑单元可以为大块提供一个物理块。
[0003]非易失性存储器(NAND)在出厂时,有一定数量的出厂坏块。同一代,同一批次或不同批次NAND,出厂坏块可能集中在若干个相同索引的NAND块中,这就会导致若干个大块中可用好块数量明显少于其他大块,或者无好块可用。
[0004]存储设备接收主机的写命令并向NAND写入数据时,将要写入的数据按页条带的格式组装,使得按照页条带为单位,每次向整个页条带写入数据。当大块中存在坏块,或者多个大块中坏块的数量不同时,导致来自大块的页条带的容量或物理页数量发生变化(因为坏块不能被写入数据)。页条带来自不同LUN的物理页可被同时写入数据,从而页条带的容量或物理页数量,直接影响向页条带写入数据时的并行度,并影响存储设备处理写命令的性能。随着大块的坏块数量增加,由来自该大块的页条带承载写入数据时,处理写命令的性能下降。当各大块的坏块数量不同,坏块分布不均衡,导致在实际的写操作中,速度会非常不稳定,由来自这些大块的页条带各自承载写入数据时,处理写命令的性能发生抖动。
[0005]这种性能的明显下降或抖动对于固态硬盘(SSD)产品是不可接受的。

技术实现思路

[0006]本申请的目的在于提供一种NAND块动态重映射和读写命令处理方法及存储设备,NAND块动态重映射方法根据SSD生产完成后坏块的实时分布情况,对坏块进行重映射,实现SSD中所有大块中好块数量均衡,提高SSD写性能,降低抖动。
[0007]为达到上述目的,在第一方面,本申请提供一种NAND块动态重映射方法,该方法包括如下步骤:对不同LUN中相同物理索引的NAND块进行绑定,组成大块;以大块索引和LUN索引分别为行和列,建立NAND块动态映射表,根据NAND块的物理索引对NAND块动态映射表的表项进行初始化;获取各大块内好块的数量;根据各大块内好块的数量,对不同大块内的好块与坏块进行重映射;更新NAND块动态映射表。
[0008]如上所述的NAND块动态重映射方法,其中优选的是,所述根据各大块内好块的数量,对不同大块内的好块与坏块进行重映射包括:根据各大块内好块的数量确定第一大块和第二大块,其中,第一大块中好块数量大于第二大块中好块数量;将第一大块内的好块与第二大块内的坏块进行交换,完成重映射。
[0009]如上所述的NAND块动态重映射方法,其中优选的是,所述第一大块为所有大块中
好块数量最多的大块,所述第二大块为所有大块中好块数量最少的大块。
[0010]如上所述的NAND块动态重映射方法,其中优选的是,还包括:对交换后的各大块内好块数量的最大值和最小值的差值与第一阈值进行比较,如果最大值与最小值的差值大于第一阈值,则重复根据大块内好块的数量,对不同大块内的好块与坏块进行重映射,直到最大值与最小值的差值不大于第一阈值,完成重映射。
[0011]如上所述的NAND块动态重映射方法,其中优选的是,还包括:计算各大块中好块数量的平均值,将各大块中好块数量大于平均值的确定为第一大块,将各大块中好块数量小于平均值的确定为第二大块。
[0012]如上所述的NAND块动态重映射方法,其中优选的是,对交换后的各大块内好块的数量的最大值和最小值的差值与第一阈值进行比较,如果最大值与最小值的差值大于第一阈值,则重复根据大块内好块的数量,对不同大块内的好块与坏块进行重映射,直到最大值与最小值的差值不大于第一阈值,完成重映射;或
[0013]计算交换后第一大块中好块的数量与所述平均值的差值和第二大块中好块的数量与所述平均值的差值,分别为第一差值和第二差值,如果第一差值和第二差值均大于第二阈值,则重复根据大块内好块的数量,对不同大块内的好块与坏块进行重映射,直到第一差值和第二差值不大于第二阈值,完成重映射。
[0014]如上所述的NAND块动态重映射方法,其中优选的是,获取包含好块的数量最多和最少的两个大块,分别为第一大块和第二大块;将所述第一大块内的好块与所述第二大块内的坏块进行交换,直到两个大块中好块相差数量符合阈值。
[0015]如上所述的NAND块动态重映射方法,其中优选的是,获取好块数量大于各大块好块数量平均值的大块作为第一大块,好块数量小于各大块好块数量平均值的大块作为第二大块;将所述第一大块内的好块与所述第二大块内的坏块进行交换,直到两个大块中好块相差数量符合阈值
[0016]如上所述的NAND块动态重映射方法,其中优选的是,重复获取包含好块的数量最多和最少的两个大块,分别为第一大块和第二大块;对两个大块中的好块和坏块进行交换,直至所有大块中好块的相差数量符合阈值。
[0017]如上所述的NAND块动态重映射方法,其中优选的是,保存NAND块动态映射表到NAND和/或SSD系统信息中。
[0018]如上所述的NAND块动态重映射方法,其中优选的是,对NAND块动态映射表中尚未被写入数据的空闲大块实施NAND块的动态重映射。
[0019]如上所述的NAND块动态重映射方法,其中优选的是,NAND块动态映射表中对坏块和好块进行标注,或对好块数量进行标注。
[0020]第二方面,本申请还提供一种写命令处理方法,在所述的NAND块动态重映射方法之后执行,该方法包括如下步骤:存储设备获取主机发送的写命令,从NAND块动态映射表中获取空闲大块,从空闲大块中获取页条带;将写命令的数据按照获取的所述页条带组装;将组装后的数据写入所述页条带。
[0021]第三方面,本申请还提供一种读命令处理方法,在所述的NAND块动态重映射方法之后执行,该方法包括如下步骤:存储设备获取主机发送的读命令;根据读命令,从物理页读出数据,判断读出数据是否存在错误,若是,则根据NAND块动态映射表获取出错的物理页
所属的大块,否则,无需获取大块;从获取大块中的各个好块中获取页条带;利用获取的页条带重建出错的数据;更新NAND块动态映射表。
[0022]第四方面,本申请还提供一种存储设备,该存储设备周期性地实施所述的NAND块动态重映射方法,或者响应于识别出坏块,在NAND块动态映射表中记录坏块后,再判断是否需要执行NAND块动态重映射方法;该存储设备包括控制部件,用于管理NAND块动态映射表。
[0023]与现有技术相比,本申请实现的有益效果如下:
[0024](1)本申请通过实施NAND块动态重映射方法,使得存储设备的各大块所包括的好块数量彼此接近,从本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种NAND块动态重映射方法,其特征在于,该方法包括如下步骤:对不同LUN中相同物理索引的NAND块进行绑定,组成大块;以大块索引和LUN索引分别为行和列,建立NAND块动态映射表,根据NAND块的物理索引对NAND块动态映射表的表项进行初始化;获取各大块内好块的数量;根据各大块内好块的数量,对不同大块内的好块与坏块进行重映射;更新NAND块动态映射表。2.根据权利要求1所述的NAND块动态重映射方法,其特征在于,所述根据各大块内好块的数量,对不同大块内的好块与坏块进行重映射包括:根据各大块内好块的数量确定第一大块和第二大块,其中,第一大块中好块数量大于第二大块中好块数量;将第一大块内的好块与第二大块内的坏块进行交换,完成重映射。3.根据权利要求2所述的NAND块动态重映射方法,其特征在于,所述第一大块为所有大块中好块数量最多的大块,所述第二大块为所有大块中好块数量最少的大块。4.根据权利要求3所述的NAND块动态重映射方法,其特征在于,还包括:对交换后的各大块内好块数量的最大值和最小值的差值与第一阈值进行比较,如果最大值与最小值的差值大于第一阈值,则重复根据大块内好块的数量,对不同大块内的好块与坏块进行重映射,直到最大值与最小值的差值不大于第一阈值,完成重映射。5.根据权利要求2所述的NAND块动态重映射方法,其特征在于,还包括:计算各大块中好块数量的平均值,将各大块中好块数量大于平均值的确定为第一大块,将各大块中好块数量小于平均值的确定为第二大块。6.根据权利要求5所述的NAND块动态重映射方法,其特征在于,还包括:对交换后的各大块内好块的数量的最大值和最小值的差值与第一阈值进行比较,如果最大值与最小值的差值大于第一阈值,则重复根据大块内好块的数量,对不同大块内的好块与...

【专利技术属性】
技术研发人员:张星袁戎张志青
申请(专利权)人:苏州启恒融智信息科技有限公司
类型:发明
国别省市:

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

1