一种提高SSD生命周期的方法技术

技术编号:36098399 阅读:11 留言:0更新日期:2022-12-24 11:17
本发明专利技术提出一种提高SSD生命周期的方法,提高SSD生命周期的方法包括如下步骤:S1、将SSD的闪存单元N比特位序列编码成2

【技术实现步骤摘要】
一种提高SSD生命周期的方法


[0001]本专利技术涉及数据存储
,特别是一种提高SSD生命周期的方法。

技术介绍

[0002]众所周知,相较于传统机械硬盘(HDD),基于闪存的固态硬盘(SSD)提供更快的读写速率,更低的读写延时,但其有一个主要局限性:与机械硬盘可以重写已经写入数据区域不同,闪存单元在重写之前需要进行擦除操作,每次擦除操作都会导致磨损,从而缩短单元的寿命。旧一代的闪存SLC(single

level cell)在一个单元中只存储一个位,通常可以在磨损之前容忍上万个P/E(Program/Erase)周期。然而,为了满足日益增长的存储容量需求,需要在一个单元中存储更多的位。但是每增加一位存储在1个SSD单元中,SSD可以承受的擦除周期数减少了一个数量级。到了QLC(Quad

Level Cell,4位/单元)和PLC(Penta

Level Cell,5位/单元)这样的高密度SSD,可以看到P/E周期下降到几十或几百。为了使高密度SSD驱动器(如QLC和PLC)在更多的应用程序中可用,减少存储介质的擦除次数至关重要。
[0003]为了提高SSD的寿命,业界提供很多技术来减少闪存颗粒P/E次数。目前减少固态硬盘P/E次数的主要技术包括:1)地址空间虚拟化技术,该技术避免热点数据频繁往同一个物理区域进行擦除和写入;2)容量冗余,为了避免部分闪存损坏所导致的整块 SSD失效,SSD在设计时都会做到容量冗余,比如一块标称100GB的SSD,内部实际的闪存物理容量一般都做到了110GB以上,一般而言,冗余比越大,则SSD的可靠性、寿命、性能就越好,企业级存储产品的冗余比一般要达到28%以上;3)磨损均衡,该技术记录每一个块的P/E次数,然后在需要擦除或者写入数据时,尽量选择那些P/E次数相对较少的块,经过了磨损均衡的SSD,使用寿命可以得到最大化。
[0004]现有的技术,都着重于SSD的擦除均衡,尽量让SSD的擦写周期接近闪存颗粒的理论擦除周期,没有改变每一个闪存单元擦除前只能写一次的现状。

技术实现思路

[0005]为了解决现有技术中每一个闪存单元在擦除前只能写一次的技术问题,本专利技术提出的提高SSD生命周期的方法,其特征在于, 所述提高SSD生命周期的方法包括如下步骤:S1、将SSD的闪存单元N比特位序列编码成2
N
个编码组,对应2
N
个参考电压,N>1,为正整数;S2、将编码组映射到k比特位的数据,获得M个重写组,0<k<N,k和M均为正整数;S3、基于M个重写组将数据写入闪存单元,每次只能写k个比特位。
[0006]优选的,在所述S1中,以QLC SSD驱动器为例,将QLC驱动器的闪存单元4比特位序列编码成16个编码组,其对应QLC驱动器的16个参考电压,0000为最低参考电压,1111为最大参考电压。
[0007]优选的,在所述S2中,当k=1时,M=2
N

1,1<k<N时,M=[2
N
/(2
k
ꢀ‑
1)],“[]”表示取整操作,提取计算结果的整数部分。
[0008]优选的,在所述S2中,编码过程包括如下步骤:S21、将2
N
个编码组中的前2
k
个编码组映射为重写组1,将参数i初始化为1;S22、以重写组i中的最后一个编码组作为共享编码组,成为新的起点,重新获取2
k
个编码组,映射为重写组(i+1),将参数i加1递增后进行更新;S23、判断(2
N

(2
k
ꢀ‑
1)*i)< 2
k
是否成立,如果成立,进入S24,否则,返回S22;S24、结束编码。
[0009]优选的,在所述S2中,以QLC SSD驱动器为例,在k=1的情况下,分为15个重写组,分别为(0000,0001)、(0001,0010)、(0010,0011)、(0011,0100)、(0100,0101)、(0101,0110)、(0110,0111)、(0111,1000)、(1000,1001)、(1001,1010)、(1010,1011)、(1011,1100)、(1100,1101)、(1101,1110)、(1110,1111)。
[0010]优选的,在所述S2中,以QLC SSD驱动器为例,在k=2的情况下,分为5个重写组,分别为(0000,0001,0010,0011)、(0011,0100,0101,0110)、(0110,0111,1000,1001)、(1001,1010,1011,1100)、(1100, 1101,1110,1111)。
[0011]优选的,在所述S2中,以QLC SSD驱动器为例,在k=3的情况下,分为2个重写组,分别为(0000,0001,0010,0011,0100,0101,0110,0111),(0111,1000,1001,1010,1011,1100,1101,1110)。
[0012]优选的,在所述S3中,分为两种写入方式: 1)在M个重写组之间进行跳跃,实现数据的写入;2)在相同重写组内进行数据转换。
[0013]优选的,在所述S3中,通过在M个重写组之间进行跳跃实现数据写入时,以QLC SSD驱动器为例,在k=1的情况下,重写次数为15,在k=2的情况下,重写次数为5,在k=3的情况下,重写次数为2。
[0014]本专利技术提出的计算机存储介质存储有计算机程序,处理器通过运行所述计算机程序能够实现上述提高SSD生命周期的方法。
[0015]相对于现有技术,本专利技术具有如下有益效果:通过重新编码每一闪存单元的位,使得每一闪存单元在被擦除前可以重写多次,减少闪存单元的擦除次数,从而提高整个SSD的生命周期。
附图说明
[0016]图1是本专利技术提高SSD生命周期的方法的流程图。
具体实施方式
[0017]为了对本专利技术的技术特征、目的和效果有更加清楚的理解,现对照附图说明本专利技术的具体实施方式。
[0018]为了更加清楚地描述系统异常重启下的缓存数据保护方法,现对本专利技术中高速缓存部分的存储结构进行说明:为了更好地描述本专利技术,现对N

Level Cell SSD驱动器的存储原理进行说明。N

Level Cell SSD驱动器的一个闪存单元可以存储N个比特位,这N个比特位对应着SSD里晶体管的16个不同水平的参考电压,其中每个参考电压表示一个N位二进制代码,以QLC SSD驱动器为例,QLC SSD的一个闪存单元可以储存4个比特位,这4个比特位对应着SSD里晶体
管的16个不同水平的参考电压,其中每个参考电压表示一个4位二进制代码。闪存单元不同状态之间的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种提高SSD生命周期的方法,其特征在于, 所述提高SSD生命周期的方法包括如下步骤:S1、将SSD的闪存单元N比特位序列编码成2
N
个编码组,对应2
N
个参考电压,N>1,为正整数;S2、将编码组映射到k比特位的数据,获得M个重写组,0<k<N,k和M均为正整数;S3、基于M个重写组将数据写入闪存单元,每次只能写k个比特位。2.根据权利要求1所述的提高SSD生命周期的方法,其特征在于,在所述S1中,以QLC SSD驱动器为例,将QLC驱动器的闪存单元4比特位序列编码成16个编码组,其对应QLC驱动器的16个参考电压,0000为最低参考电压,1111为最大参考电压。3.根据权利要求1所述的提高SSD生命周期的方法,其特征在于,在所述S2中,当k=1时,M=2
N

1,1<k<N时,M=[2
N
/(2
k
ꢀ‑
1)],“[]”表示取整操作,提取计算结果的整数部分。4.根据权利要求1所述的提高SSD生命周期的方法,其特征在于,在所述S2中,编码过程包括如下步骤:S21、将2
N
个编码组中的前2
k
个编码组映射为重写组1,将参数i初始化为1;S22、以重写组i中的最后一个编码组作为共享编码组,成为新的起点,重新获取2
k
个编码组,映射为重写组(i+1),将参数i加1递增后进行更新;S23、判断(2
N

(2
k
ꢀ‑
1)*i)< 2
k
是否成立,如果成立,进入S24,否则,返回S22;S24、结束编码。5.根据权利要求4所述的提高SSD生命周期的方法,其特征在于,在所述S2中,以QLC...

【专利技术属性】
技术研发人员:陈林杜小华王锐曹学贵常清雪黄成坤钟吉林徐明军朱超黄耀年
申请(专利权)人:四川省华存智谷科技有限责任公司
类型:发明
国别省市:

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

1