一种纠错方法、系统、装置及计算机可读存储介质与流程

文档序号:16530925发布日期:2019-01-05 10:45阅读:145来源:国知局
一种纠错方法、系统、装置及计算机可读存储介质与流程
本发明涉及数据纠错
技术领域
,更具体地说,涉及一种纠错方法、系统、装置及计算机可读存储介质。
背景技术
:闪存(flashmemory)是一种长寿命的非易失性的存储器,在断电情况下仍能保持所存储的数据信息。使用闪存介质是未来存储技术发展的趋势,随着闪存制造工艺的提升,闪存误码率也随之上升。造成误码率上升的原因即是闪存中每个bit数据对应的电子数会随着闪存制造工艺的提升而减少,再加上随着使用时长和环境温度的影响,电子也会慢慢丢失,很容易造成bit数据的翻转,即0与1之间翻转,从而造成误码率上升。目前通常采用ldpc纠错算法来进行数据纠错,从而降低误码率,但是对于ldpc的纠错算法来说,其中包括了硬解码算法,该算法是通过给定的参考电压经验值,来尝试读取数据,如果读取到的数据的出错率在其纠错能力范围内,则对读取数据进行纠错,从而降低数据的误码率,但是其纠错的效果还是有待提高。因此,如何提过数据纠错效果,是本领域技术人员需要解决的问题。技术实现要素:本发明的目的在于提供一种纠错方法、系统、装置及计算机可读存储介质,以解决如何提过数据纠错效果的问题。为实现上述目的,本发明实施例提供了如下技术方案:一种纠错方法,包括:利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率;其中,所述第一预设参考电压为预先通过读写仿真操作确定的最优参考电压;判断所述第一读取出错率是否在ldpc硬解码算法的纠错能力范围内;若是,则利用所述ldpc硬解码算法对读取操作中出错的数据进行纠错。其中,所述利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率之前,还包括:利用第二预设参考电压读取所述待读取数据,确定第二读取出错率;其中,所述第二预设参考电压为ldpc硬解码算法对应的预设参考电压;判断所述第二读取出错率是否在所述ldpc硬解码算法的纠错能力范围内;若是,则利用所述ldpc硬解码算法对读取操作中出错的数据进行纠错;若否,则执行所述利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率的步骤。其中,所述判断所述第一读取出错率是否在所述ldpc硬解码算法的纠错能力范围内之后,还包括:若否,则利用ldpc软解码算法对读取操作中出错的数据进行纠错。其中,所述待读取数据的目标环境信息包括所述待读取数据所在页的目标页类型;则利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率,包括:确定与所述目标页类型对应的第一预设参考电压;利用与所述目标页类型对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率。其中,所述待读取数据的目标环境信息包括所述闪存的目标闪存环境信息;则所述利用与所述待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率,包括:确定与所述目标闪存环境信息对应的第一预设参考电压;利用与所述目标闪存环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率。其中,所述目标闪存环境信息包括:所述闪存当前累积被读取的次数信息、所述待读取数据在所述闪存中保存时间信息、所述闪存当前累积被擦与写的次数信息与所述待读取数据的读写横跨温度;所述读写横跨温度为所述闪存被写入所述待读取数据时的温度与所述闪存被读取所述待读取数据时的温度的差值。其中,所述利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率之前,还包括:向仿真闪存中写入仿真数据;所述仿真闪存为用于进行读写仿真操作的闪存,所述仿真数据为用于进行读写仿真操作的数据;利用所述目标环境信息对所述仿真数据进行预设次数读取操作,其中每次读取操作分别在不同参考电压下进行;统计每次读取操作的出错率;确定出错率最小的一次读取操作对应的最优参考电压,作为所述第一预设参考电压。本申请还提供了一种纠错系统,包括:读取模块,用于利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率;其中,所述第一预设参考电压为预先通过读写仿真操作确定的最优参考电压;判断模块,用于判断所述第一读取出错率是否在ldpc硬解码算法的纠错能力范围内;纠错模块,用于当所述第一读取出错率在ldpc硬解码算法的纠错能力范围内时,利用所述ldpc硬解码算法对读取操作中出错的数据进行纠错。本申请还提供了一种纠错装置,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如所述纠错方法的步骤。本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如所述纠错方法的步骤。通过以上方案可知,本发明提供的一种纠错方法,包括:利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率;其中,所述第一预设参考电压为预先通过读写仿真操作确定的最优参考电压;判断所述第一读取出错率是否在ldpc硬解码算法的纠错能力范围内;若是,则利用所述ldpc硬解码算法对读取操作中出错的数据进行纠错。由此可见,本申请实施例提供的一种纠错方法,利用第一预设参考电压来读取待读取数据,并确定第一读取出错率,在第一读取出错率在ldpc硬解码算法的纠错能力范围内时,利用ldpc硬解码算法进行纠错,由于第一预设参考电压是目标环境下通过读写仿真操作确定的最优参考电压,而不是厂商给出的固定参考电压,因此更符合闪存的实际情况,利用该电压对闪存进行读取操作就更合适,从而使读取操作的出错率得到有效降低,从而更易满足硬解码的纠错能力,使纠错效果得到提高。本申请还提供了一种纠错系统、装置及计算机可读存储介质,同样可以实现上述技术效果。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例公开的一种纠错方法流程图;图2为本发明实施例公开的一种具体的纠错方法流程图;图3为本发明实施例公开的一种具体的纠错方法流程图;图4为本发明实施例公开的一种纠错系统结构示意图;图5为本发明实施例公开的一种纠错装置结构示意图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例公开了一种纠错方法、系统、装置及计算机可读存储介质,以解决如何提过数据纠错效果的问题。参见图1,本发明实施例提供的一种纠错方法,具体包括:s101,利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率;其中,所述第一预设参考电压为预先通过读写仿真操作确定的最优参考电压。需要说明的是,在对闪存进行数据读取操作时,不同的电压条件,读取操作的出错率也会有所不同,当读取数据操作的参考电压是对应当前环境下闪存的最优参考电压时,也就是该参考电压下读取闪存中的数据出错率会最小,因此该参考电压也就最适合当前闪存的参考电压。在本方案中,预先通过仿真操作确定了目标环境下,闪存的最优参考电压,也就是第一预设参考电压,然后利用该最优参考电压读取待读取数据,并确定出此次读取的出错率。有关第一预设参考电压的确定方式将在下述实施例进行详细介绍,此处将不再赘述。需要说明的是,ldpc(lowdensityparitycheckcode,低密度奇偶校验码),其分为硬解码和软解码,硬解码是通过多次读取数据,并在多次读取数据操作对应的出错率中确定数值最小的,当数值最小的出错率在硬解码算法对应的纠错能力范围内时,则对该出错率对应的读取操作的数据进行纠错操作。由于ldpc硬解码算法涉及到多次读取数据操作,在本方案中,由于也是利用ldpc硬解码算法,因此在本步骤中的读取操作也是进行多次,具体进行几次,可以根据ldpc硬解码算法以及实际情况确定,在本方案中不做具体限定。而第一读取出错率,也即多次读取操作中,数值最小的出错率。在一个具体的实施方式中,采用3dtlc闪存存储待读取数据,在该闪存中,每个wordline可表示三种类型的页,而每种类型的页,对应的适合读取数据的参考电压都不相同。例如,三种类型的页分别为lowerpage,middlepage,upperpage。lowerpage对应的参考电压为参考电压1、参考电压5;middlepage对应的参考电压为参考电压2、参考电压4和参考电压6;upperpage对应的参考电压为参考电压3与参考电压7。因此,对于不同类型的页,需要确定与页类型对应的参考电压的参考电压值,例如,当待读取数据存储在lowerpage,则在确定其第一预设预设电压时,则需要确定与参考电压1、参考电压5对应的参考电压值。因此在本方案中,所述待读取数据的目标环境信息包括所述待读取数据所在页的目标页类型;则利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率,包括:确定与所述目标页类型对应的第一预设参考电压;利用与所述目标页类型对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率。在另一个具体的实施方式中,第一预设参考电压,还需要考虑到待读取数据所在闪存的闪存环境。闪存环境通常涉及retention,即待读取数据在闪存中的存储时间;readdisturb,闪存累积被进行读操作的次数;pe,即闪存累积被擦与写的次数,tcross,即横跨温度,闪存被写入待读取数据时的温度与所述闪存被读取所述待读取数据时的温度的差值。不同的闪存环境下,其适合的参考电压也会有所不同,因此在本方案中,待读取数据的目标环境信息包括所述闪存的目标闪存环境信息;则所述利用与所述待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率,包括:确定与所述目标闪存环境信息对应的第一预设参考电压;利用与所述目标闪存环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率。s102,判断所述第一读取出错率是否在ldpc硬解码算法的纠错能力范围内。在本步骤中,需要判断上述利用第一预设电压进行读取操作的出错率是否在ldpc硬解码算法的能力范围内。需要说明的是,目前硬解码的纠错能力一般为120bit/kbit,也就是可以在每1000bit数据中纠错120bit数据,如果超过这个范围,则硬解码算法将无法进行纠错。s103,若是,则利用所述ldpc硬解码算法对读取操作中出错的数据进行纠错。具体地,如果出错率在ldpc硬件解码算法的纠错能力范围内,则利用ldpc硬解码算法对出错数据进行纠错操作。有关ldpc硬件解码算法有多种形式,例如信息传递(messagpassing)算法,有关ldpc硬件解码算法的具体描述可以参考现有技术,在本方案中不再进行限定。由此可见,本申请实施例提供的一种纠错方法,利用第一预设参考电压来读取待读取数据,并确定第一读取出错率,在第一读取出错率在ldpc硬解码算法的纠错能力范围内时,利用ldpc硬解码算法进行纠错,由于第一预设参考电压是目标环境下通过读写仿真操作确定的最优参考电压,而不是厂商给出的固定参考电压,因此更符合闪存的实际情况,利用该电压对闪存进行读取操作就更合适,从而使读取操作的出错率得到有效降低,从而更易满足硬解码的纠错能力,使纠错效果得到提高。下面对本申请实施例提供的一种具体的纠错方法进行介绍,下文描述的一种具体的纠错方法与上述实施例可以相互参照。参见图2,本申请实施例提供的一种具体的纠错方法,具体包括:s201,利用第二预设参考电压读取所述待读取数据,确定第二读取出错率;其中,所述第二预设参考电压为ldpc硬解码算法对应的预设参考电压。在本方案中,首先利用现有的ldpc硬解码方法进行纠错。在现有的ldpc硬解码环节中,会预设有固定的参考电压值,即第二预设参考电压值。第二预设参考电压值是针对特定闪存的经验值,是由厂商自己采集数据,归纳整理得到的电压值,利用该电压值进行数据读取操作,可以。在本步骤中,也就是在现有的ldpc硬解码环节中,会利用第二预设参考电压值来读取待读取数据,并确定出读取出错率,作为第二读取出错率。需要说明的是,同样由于ldpc硬解码算法是通过多次读取并且取最小出错率的方式,因此在本方案中,同样也是利用第二预设参考电压值来进行多次读取,并确定值最小的第二读取出错率。s202,判断所述第二读取出错率是否在所述ldpc硬解码算法的纠错能力范围内;若是,则执行s203,若否,则执行s204。具体地,判断第二读取出错率是否在ldpc硬解码算法的纠错能力范围内。关于ldpc硬解码算法的纠错能力已在上述实施例做出详细介绍,具体内容可以参考上述实施例,此处不再进行赘述。s203,利用所述ldpc硬解码算法对读取操作中出错的数据进行纠错。s204,利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率;其中,所述第一预设参考电压为预先通过读写仿真操作确定的最优参考电压。需要说明的是,利用ldpc硬解码算法对应的第二预设参考电压进行读取操作,虽然大部分情况下,读取数据的出错率都会在ldpc硬解码算法的纠错能力范围内,但是还是会出现因为参考电压的原因导致出错率会大于ldpc硬解码算法的纠错能力的情况,因此,在本方案中,为了避免因为参考电压不合适导致读取出错率不在ldpc纠错能力范围内的情况,在原有的lpdc硬解码环节的基础上,添加一环节,即当利用第二预设参考电压进行读取操作,读取出错率超出ldpc硬解码算法纠错能力范围时,采用第一预设参考电压对待读取数据进行读取操作,并确定读取出错率。也就是说,在本方案中,先利用现有的ldpc硬解码环节尝试纠错,但是读取出错率超出其纠错能力范围,则利用本方案中添加的环节,利用更适合当前目标环境信息的第一预设参考电压来读取数据,此时的读取出错率,就会有所降低。s205,判断所述第一读取出错率是否在ldpc硬解码算法的纠错能力范围内;若是,则执行s206,若否,则执行s207。具体地,判断第一读取出错率是否在ldpc硬解码算法的纠错能力范围内。s206,利用所述ldpc硬解码算法对读取操作中出错的数据进行纠错。s207,利用ldpc软解码算法对读取操作中出错的数据进行纠错。需要说明的是,ldpc解码算法,包括硬解码环节和软解码环节,在现有纠错操作中,通常先进行ldpc硬解码环节,当读取出错率超出硬解码算法的纠错能力时,就进入到ldpc软解码环节,虽然进行软解码,其纠错能力会有所提高,但是纠错处理的延时也会大大提升,因此在本方案中,为了减少进入ldpc软解码环节,再ldpc硬解码环节不能进行纠错时,也就是利用第二预设参考电压读取待读取数据,其第二读取出错率超出ldpc硬解码算法的纠错能力时,先不进入软解码环节,而是将参考电压换成第一预设参考电压再进行读取操作,确定第一读取出错率,如果第一读取出错率在ldpc硬解码算法的纠错能力范围内,则还是利用ldpc硬解码算法进行纠错,因此相比于软解码算法,会节省很多时间。在第一读取出错率也不再ldpc硬解码算法的纠错能力范围内时,再进入ldpc软解码环节,利用ldpc软解码算法对读取的数据进行纠错。下面对本申请实施例提供的一种具体的纠错方法进行介绍,下文描述的一种具体的纠错方法在上述实施例的基础上,介绍如何确定第一预设参考电压,其他步骤内容与上述实施例大致相同,此处将不再进行赘述。参见图3,本申请实施例提供的一种具体的纠错方法,在上述实施例中所述利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率之前,还包括:s301,向仿真闪存中写入仿真数据;所述仿真闪存为用于进行读写仿真操作的闪存,所述仿真数据为用于进行读写仿真操作的数据。具体地,首先准备ssd产品,即用于进行读写仿真操作的仿真闪存。向仿真闪存中写入用于进行读写仿真操作的数据。s302,利用所述目标环境信息对所述仿真数据进行预设次数读取操作,其中每次读取操作分别在不同参考电压下进行。s303,统计每次读取操作的出错率。s304,确定出错率最小的一次读取操作对应的最优参考电压,作为所述第一预设参考电压。具体地,确定目标环境信息,目标环境信息的内容具体可以参考上述实施例,在本方案中,主要涉及闪存环境信息。对于同一闪存环境信息,确定预设次数,并确定与每次对应的参考电压。在当前的闪存环境下,进行预设次数的读取操作,每次读取操作的参考电压均为与次数对应的参考电压,统计出每一次的ber数据,也就是读取出错率数据,从中确定读取出错率最小的参考电压,作为当前闪存环境对应的最优参考电压。第一预设参考电压也就是在当前闪存环境为目标环境信息对应的闪存环境下的最优参考电压。需要说明的是,在进行纠错操作之前,可以预先准备出不同闪存环境下的最优参考电压,以在进行纠错操作时,直接确定与当前环境信息对应的最优参考电压。因此先设置预置闪存环境,例如下表1所示,对区间中的每个值组合和闪存环境均进行最优参考电压的确定,从而确定出不同闪存环境下的最优参考电压。表1retentionreaddisturbpetcross[6h,48h][250k,575k][5000,10000][25,70]下面对本申请实施例提供的一种纠错系统进行介绍,下文描述的一种纠错系统与上述实施例可以相互参照。参见图4,本申请实施例提供的一种纠错系统,具体包括:读取模块401,用于利用与待读取数据的目标环境信息对应的第一预设参考电压读取所述待读取数据,确定第一读取出错率;其中,所述第一预设参考电压为预先通过读写仿真操作确定的最优参考电压。判断模块402,用于判断所述第一读取出错率是否在ldpc硬解码算法的纠错能力范围内。纠错模块403,用于当所述第一读取出错率在ldpc硬解码算法的纠错能力范围内时,利用所述ldpc硬解码算法对读取操作中出错的数据进行纠错。本实施例的纠错系统用于实现前述的纠错方法,因此纠错系统中的具体实施方式可见前文中的纠错方法的实施例部分,例如,读取模块401,判断模块402,分别用于实现上述纠错方法中步骤s101,s102,s103和s104,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。下面对本申请实施例提供的一种纠错装置进行介绍,下文描述的一种纠错装置,与上述实施例可以相互参照。参见图5,本申请实施例提供的一种纠错装置,具体包括:存储器501,用于存储计算机程序;处理器502,用于执行所述计算机程序时实现上述任一实施例所述的纠错方法的步骤。本申请还提供了另一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1