磨损均衡方法及装置的制造方法
【技术领域】
[0001]本发明涉及计算机技术领域,特别涉及一种磨损均衡方法及装置。
【背景技术】
[0002]SSD (Solid State Disk,固态硬盘)是用固态电子存储芯片阵列制成的硬盘。若SSD采用NAND flash (闪存)作为存储介质,则在将数据写入SSD中的物理块时,需要将物理块中的原始数据擦除后再写入,而物理块只有有限的擦除次数。当物理块的擦除次数达到极限后,此物理块将变成无效块,对无效块写入数据会造成数据丢失的问题。因此,为了保证数据的安全性,可以对物理块进行磨损均衡,尽量平均每个物理块的擦除次数,避免某些物理块的擦除次数过高使得写入的数据失效的问题。
[0003]现有技术提供的磨损均衡包括动态磨损均衡方式和静态磨损均衡方式。动态磨损均衡方式将数据写入到擦除次数较小的空闲物理块,由于该数据可能马上又被更新,因此,为擦除次数较小的物理块增加了擦除次数,使得这些物理块能够得到更多的擦除次数。静态磨损均衡方式确定更新周期较长的数据,将该数据转移到擦除次数较高的处于空闲状态的物理块,使得原先存储该数据的物理块能够用于存储其他数据,由于其他数据可能马上被更新,因此,为存储该其他数据的物理块增加了擦除次数,使得这些物理块能够得到更多的擦除次数。
[0004]在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
[0005]现有技术中假设每个物理块的极限擦除次数相同,从而选取擦除次数较小的物理块进行数据写入来平均每个物理块的擦除次数。然而,由于SSD的制作工艺的局限性、新旧SSD搭配使用等原因,每个物理块的极限擦除次数不完全相同,选取的擦除次数较小的物理块可能是极限擦除次数较小的物理块,即该物理块的剩余寿命短于擦除次数较多的物理块的剩余寿命,将数据写入该物理块可能会导致数据失效,降低了数据的安全性。
[0006]比如,处于空闲状态的第一物理块的极限擦除次数为2000、第二物理块的极限擦除次数为10000,假设第一物理块的当前擦除次数是1950、第二物理块的极限擦除次数是2000,则会将数据写入擦除次数较少的第一物理块,而不是具有较大极限擦除次数的第二物理块,使得第一物理块的擦除次数更加接近于极限擦除次数,降低了写入该物理块的数据的安全性。
【发明内容】
[0007]为了解决选取的擦除次数较小的物理块可能是极限擦除次数较小的物理块,降低了写入该物理块的数据的安全性的问题,本发明实施例提供了一种磨损均衡方法及装置。所述技术方案如下:
[0008]第一方面,本发明实施例提供了一种磨损均衡方法,所述方法包括:
[0009]获取对读取的数据进行纠错的纠错位数,所述数据通过动态磨损均衡方式和/或静态磨损方式写入,所述纠错位数与所述数据所在的物理块的剩余寿命呈负相关关系;
[0010]检测所述纠错位数是否大于预设的位数阈值;
[0011]若检测结果为所述纠错位数大于所述位数阈值,则对所述数据进行转移。
[0012]第二方面,本发明实施例提供了一种磨损均衡装置,所述装置包括:
[0013]第一获取模块,用于获取对读取的数据进行纠错的纠错位数,所述数据通过动态磨损均衡方式和/或静态磨损方式写入,所述纠错位数与所述数据所在的物理块的剩余寿命呈负相关关系;
[0014]第一检测模块,用于检测所述第一获取模块获取到的所述纠错位数是否大于预设的位数阈值;
[0015]转移模块,用于若所述第一检测模块检测的结果为所述纠错位数大于所述位数阈值,则对所述数据进行转移。
[0016]通过获取对读取的数据进行纠错的纠错位数,所述数据通过动态磨损均衡方式和/或静态磨损方式写入,所述纠错位数与所述数据所在的物理块的剩余寿命呈负相关关系;检测所述纠错位数是否大于预设的位数阈值;若检测结果为所述纠错位数大于所述位数阈值,则对所述数据进行转移,由于对数据的纠错位数越多,该数据所在的物理块的剩余寿命越短,因此,在采用动态磨损均衡方式和/或静态磨损方式写入数据的基础上根据纠错位数预测物理块的剩余寿命,可以选取擦除次数较小且剩余寿命较长的物理块写入数据,解决了选取的擦除次数较小的物理块可能是极限擦除次数较小的物理块,降低了写入该物理块的数据的安全性的问题,达到了提高数据的安全性的效果。
【附图说明】
[0017]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0018]图1是本发明一个实施例提供的磨损均衡方法的方法流程图;
[0019]图2是本发明另一实施例提供的磨损均衡方法的方法流程图;
[0020]图3是本发明一个实施例提供的磨损均衡装置的结构框架图;
[0021]图4是本发明再一实施例提供的磨损均衡装置的结构框架图。
【具体实施方式】
[0022]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0023]请参考图1,其示出了本发明一个实施例提供的磨损均衡方法的方法流程图,该磨损均衡方法可以应用于FTL (Flash Translat1n Layer,闪存转换层)中。该磨损均衡方法,包括:
[0024]步骤101,获取对读取的数据进行纠错的纠错位数,该数据通过动态磨损均衡方式和/或静态磨损方式写入,该纠错位数与数据所在的物理块的剩余寿命呈负相关关系;
[0025]由于本实施例通过动态磨损均衡方式和/或静态磨损均衡方式写入数据,因此,可以根据物理块的擦除次数尽量平均每一个物理块的擦除次数,避免某些物理块的擦除次数过高使得仍然有很多未达到极限擦除次数的物理块的SSD整体失效,延长了 SSD的剩余寿命。
[0026]在读取通过动态磨损均衡方式和/或静态磨损方式写入的数据时,若物理块的擦除次数将要达到极限擦除次数,则读取该物理块中的数据会出现数据错误,因此,需要对读取的数据进行纠错。通常,物理块的擦除次数越接近极限擦除次数,数据出错的位数越多,对该数据进行纠错的纠错位数越多,因此,可以获取该纠错位数,并通过该纠错位数来表征物理块的剩余寿命。
[0027]步骤102,检测纠错位数是否大于预设的位数阈值;若检测结果为纠错位数大于位数阈值,则执行步骤103 ;
[0028]位数阈值是指对物理块中的数据进行转移的最小纠错位数,可以自行设置和修改,本实施例不作限定。
[0029]若纠错位数大于位数阈值,则说明该物理块的擦除次数将要达到极限擦除次数,该物理块的剩余寿命较短,此时需要对该物理块进行处理,执行步骤103 ;若纠错位数小于或等于位数阈值,则说明该物理块的擦除次数远远未达到极限擦除次数,该物理块的剩余寿命较