本申请实施例涉及闪存数据存储,尤其是一种闪存介质的数据稳定性增强方法及其相关设备。
背景技术:
1、随着存储技术的发展,tlc(三层单元)类型的闪存因其高密度和成本优势,在消费电子市场中得到了广泛应用,然而,tlc类型的闪存相比于slc(单层单元)、mlc(多层单元)类型,由于每个存储单元需要区分更多的电荷状态(8种状态),因而更容易发生误码,数据稳定性相对较低。
2、在实际使用过程中,tlc类型的闪存经常面临高低温环境和长时间数据保存的挑战,这会导致闪存错误比特数显著升高,为了应对这些挑战,通常的做法是通过重读(readretry)技术来提高数据纠错的成功概率;然而,重读命令会显著增加读取操作的时间,有可能导致读取超时,且重读命令要求设置合适的偏移读电压,而该电压通常未知,因此会影响重读命令有效性,当闪存单元的阈值电压分布恶化到一定程度时,即便是使用重读技术也无法恢复数据,严重影响闪存的数据稳定性。
技术实现思路
1、本申请实施例提供一种闪存介质的数据稳定性增强方法及其相关设备,可以有效增加不同电荷状态之间的阈值电压间隔,且无需使用重读命令反复调整读电压,进而可以减少读延迟,并有效提升数据稳定性。
2、为实现上述目的,本申请实施例的第一方面提供了一种闪存介质的数据稳定性增强方法,包括:获取闪存介质的初始闪存类型,并确定所述初始闪存类型对应的m个数据页;获取所述闪存介质的目标闪存类型,并根据所述目标闪存类型获取n组用户数据;基于预设运算规则生产所述n组用户数据对应的冗余数据;将所述n组用户数据分别写入到任意n个所述数据页中,并将所述冗余数据写入到所述m个数据页剩余的数据页中;对所述初始闪存类型对应的2^m个初始读取电压进行偏移矫正处理,得到2^n个目标读取电压,以根据所述2^n个目标读取电压读取所述n个所述数据页中的用户数据。
3、在一些实施例中,所述m大于所述n,所述初始闪存类型包括tlc,所述目标闪存类型包括mlc。
4、在一些实施例中,在所述将所述n组用户数据分别写入到任意n个所述数据页中,并将所述冗余数据写入到所述m个数据页剩余的数据页中,包括:将2组用户数据分别写入到任意2个所述数据页中,并将所述冗余数据写入到3个所述数据页剩余的1个数据页中。
5、在一些实施例中,所述将2组用户数据分别写入到任意2个所述数据页中,并将所述冗余数据写入到3个所述数据页剩余的1个数据页中,包括:将2组用户数据分别写入到lsb和msb中,并将所述冗余数据写入到csb中。
6、在一些实施例中,所述对所述初始闪存类型对应的2^m个初始读取电压进行偏移矫正处理,得到2^n个目标读取电压,包括:获取所述初始闪存类型对应的8个初始读取电压:er、a、b、c、d、e、f以及g;将所述lsb对应的读取电压偏移到er和b的中心点以及d和f的中心点,分别得到所述lsb对应的目标读取电压a和e;将所述msb对应的读取电压偏移到b和d的中心点以及f的外侧,分别得到所述msb对应的目标读取电压c和g。
7、在一些实施例中,所述将所述n组用户数据分别写入到任意n个所述数据页中,并将所述冗余数据写入到所述m个数据页剩余的数据页中,包括:在预设数据范围内,将所述n组用户数据分别写入到任意n个所述数据页中,并将所述冗余数据写入到所述m个数据页剩余的数据页中;其中,所述预设数据范围包括单个字线、整个块或者整个芯片。
8、在一些实施例中,所述预设运算规则包括同或运算或者异或运算。
9、本申请实施例的第二方面提供了一种闪存介质的数据稳定性增强装置,包括:类型确定模块,用于获取闪存介质的初始闪存类型,并确定所述初始闪存类型对应的m个数据页;数据获取模块,用于获取所述闪存介质的目标闪存类型,并根据所述目标闪存类型获取n组用户数据;数据生成模块,用于基于预设运算规则生产所述n组用户数据对应的冗余数据;数据写入模块,用于将所述n组用户数据分别写入到任意n个所述数据页中,并将所述冗余数据写入到所述m个数据页剩余的数据页中;读电压调整模块,对所述初始闪存类型对应的2^m个初始读取电压进行偏移矫正处理,得到2^n个目标读取电压,以根据所述2^n个目标读取电压读取所述n个所述数据页中的用户数据。
10、本申请实施例的第三方面提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于执行如第一方面中任意一项所述的闪存介质的数据稳定性增强方法。
11、本申请实施例的第四方面提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如第一方面中任意一项所述的闪存介质的数据稳定性增强方法。
12、根据本申请实施例提供一种闪存介质的数据稳定性增强方法及其相关设备,至少具有以下有益效果:本申请实施例可以获取通过闪存介质的初始闪存类型,并确定初始闪存类型对应的m个数据页;获取闪存介质的目标闪存类型,并根据目标闪存类型获取n组用户数据;基于预设运算规则生产n组用户数据对应的冗余数据;将n组用户数据分别写入到任意n个数据页中,并将冗余数据写入到m个数据页剩余的数据页中;对初始闪存类型对应的2^m个初始读取电压进行偏移矫正处理,得到2^n个目标读取电压,以根据2^n个目标读取电压读取n个数据页中的用户数据,可以理解的是,基于预设运算规则生产的冗余数据用于辅助校验和恢复用户数据,从本质上提升了闪存单元阈值状态之间的冗余度,进而可以提升闪存单元的可靠度,且通过调整读电压,本申请可以将原本8个状态的tlc闪存转换为4个状态的mlc闪存,从而提高了数据的稳定性,调整后的读电压使得状态之间的间隔最大化,即使在极端条件下阈值电压发生变化,也不容易出现状态之间的混淆,可以有效增加不同电荷状态之间的阈值电压间隔,且无需使用重读命令反复调整读电压,进而可以减少读延迟,并有效提升数据稳定性。
1.一种闪存介质的数据稳定性增强方法,其特征在于,包括:
2.根据权利要求1所述的闪存介质的数据稳定性增强方法,其特征在于,所述m大于所述n,所述初始闪存类型包括tlc,所述目标闪存类型包括mlc。
3.根据权利要求2所述的闪存介质的数据稳定性增强方法,其特征在于,在所述将所述n组用户数据分别写入到任意n个所述数据页中,并将所述冗余数据写入到所述m个数据页剩余的数据页中,包括:
4.根据权利要求3所述的闪存介质的数据稳定性增强方法,其特征在于,所述将2组用户数据分别写入到任意2个所述数据页中,并将所述冗余数据写入到3个所述数据页剩余的1个数据页中,包括:
5.根据权利要求4所述的闪存介质的数据稳定性增强方法,其特征在于,所述对所述初始闪存类型对应的2^m个初始读取电压进行偏移矫正处理,得到2^n个目标读取电压,包括:
6.根据权利要求1所述的闪存介质的数据稳定性增强方法,其特征在于,所述将所述n组用户数据分别写入到任意n个所述数据页中,并将所述冗余数据写入到所述m个数据页剩余的数据页中,包括:
7.根据权利要求1所述的闪存介质的数据稳定性增强方法,其特征在于,所述预设运算规则包括同或运算或者异或运算。
8.一种闪存介质的数据稳定性增强装置,其特征在于,包括:
9.一种计算机可读存储介质,存储有计算机可执行指令,其特征在于,所述计算机可执行指令用于执行如权利要求1至7中任意一项所述的闪存介质的数据稳定性增强方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任意一项所述的闪存介质的数据稳定性增强方法。