CN114093409A - 一种闪存校验方法、装置、计算机设备和存储介质 - Google Patents
一种闪存校验方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN114093409A CN114093409A CN202210071239.2A CN202210071239A CN114093409A CN 114093409 A CN114093409 A CN 114093409A CN 202210071239 A CN202210071239 A CN 202210071239A CN 114093409 A CN114093409 A CN 114093409A
- Authority
- CN
- China
- Prior art keywords
- flash memory
- storage
- memory
- error
- storage page
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012795 verification Methods 0.000 title claims abstract description 60
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000004590 computer program Methods 0.000 claims description 25
- 238000012937 correction Methods 0.000 claims description 12
- 238000009826 distribution Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000012360 testing method Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013524 data verification Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/10—Test algorithms, e.g. memory scan [MScan] algorithms; Test patterns, e.g. checkerboard patterns
Landscapes
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本申请涉及一种闪存校验方法、装置、计算机设备和存储介质。所述方法包括:对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页;将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。采用本方法能够增强校验数据的可靠性,确定有坏点的存储块,清晰直观地对错误数据进行分析,对闪存的健壮性的提高和寿命预估具有重要意义。
Description
技术领域
本申请涉及硬件测试技术领域,特别是涉及一种闪存校验方法、装置、计算机设备和存储介质。
背景技术
闪存是一种目前广泛应用于各种存储场合的非易失性存储器,由存储块(block)构成,存储块由存储页(page)组成,功能是数据的存储,在闪存的使用过程中,会产生错误,每一次读写都会减少自身的寿命。block在使用过一段时间后,保存电荷的能力会削弱,导致其存储的数据出错,此时芯片的数据保留错误和读干扰情况也越来越严重,进而出现有坏点的存储块,影响闪存数据存储的可靠性。
当前常用的错误纠正方法有奇偶校验法、ECC(Error Checking and Correcting,错误检查和纠正)校验法,其中,奇偶校验法的主要功能是发现错误,而且当数据量非常大时,数据出错的几率也就越大;ECC校验法在测试过程中,由于数据会经常发生变动,连续两次校验数据后,得到的ECC分布也可能会有差别,可靠性差。
发明内容
基于此,有必要针对准确有效地分析和纠正闪存错误的技术问题,提供一种能够分析闪存信息和纠正闪存错误的存储设备校验方法、装置、计算机设备和存储介质。
一方面,提供一种闪存校验方法,所述方法包括:
根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;
将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,其中,所述第一存储页包括小于或等于所述校验阈值的错误比特数,所述第二存储页包括大于所述校验阈值的错误比特数;
将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;
通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。
在其中一个实施例中,还包括:
对所述第二存储页进行N次校验,N为正整数,将所述错误比特数与所述校验阈值进行对比,
若完成M次校验后,所述错误比特数小于或等于所述校验阈值,则停止校验,其中,M为正整数,0<M≤N;
若完成N次校验后,所述错误比特数大于所述校验阈值,则判定所述第二存储页存在坏点。
在其中一个实施例中,还包括:
将采集到的所述存储页与所述数量区间对应,在各个所述数量区间中,分别对所述存储页的数量进行累加,得到各个所述数量区间的统计值。
在其中一个实施例中,还包括:
对所述存储块中的统计值进行验证,所述存储块中的统计值满足的数学表达为:
其中,每个所述存储块有B个所述存储页,第i个所述存储块的第j个所述存储页的所述错误比特数为,设置P个所述数量区间,且1≤P,检查 对应的所述数量区间,若处于所述数量区间k,则所述数量区间k的统计值为。
在其中一个实施例中,还包括:
对所述闪存中的统计值进行验证,所述闪存中的统计值满足的数学表达为:
其中,所述闪存的所述存储块总数为A,每个所述存储块有B个所述存储页,第i个所述存储块的第j个所述存储页的所述错误比特数为,设置P个所述数量区间,且1≤P,检查对应的所述数量区间,若处于所述数量区间k,所述数量区间k的统计值为。
在其中一个实施例中,还包括:
将所述闪存数据写入内存,检测所述闪存数据中的错误和/或纠正所述闪存数据中的错误;
其中,对比所述闪存数据的写入内存前的校验位和写入内存后的校验位;
若不同,则将所述校验位解码,确定所述闪存数据中的错误,以使内存中获取正确的所述闪存数据,纠正所述错误。
在其中一个实施例中,还包括:
将存在坏点的所述存储块标记为坏块,若所述坏块数量超出预设的安全阈值,则判定该闪存不合格。
另一方面,提供了一种闪存校验装置,所述装置包括:
校验模块,用于根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;
对比模块,用于将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,其中,所述第一存储页包括小于或等于所述校验阈值的错误比特数,所述第二存储页包括大于所述校验阈值的错误比特数;
采集模块,用于将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;
标记模块,用于通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。
再一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;
将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,其中,所述第一存储页包括小于或等于所述校验阈值的错误比特数,所述第二存储页包括大于所述校验阈值的错误比特数;
将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;
通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。
又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;
将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,其中,所述第一存储页包括小于或等于所述校验阈值的错误比特数,所述第二存储页包括大于所述校验阈值的错误比特数;
将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;
通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。
上述闪存校验方法、装置、计算机设备和存储介质,可通过根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;可通过将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,实现将存储页按错误比特数分类;可通过将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;可通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。通过对闪存数据进行校验,将其中的存储页分类,并根据对应的数量区间,采集对应数量区间中的存储页的数量,形成校验结果,最终确定有坏点的存储块,清晰直观地对错误数据进行分析,对闪存的健壮性的提高和寿命预估具有重要意义。
附图说明
图1为一个实施例中闪存校验方法的应用环境图;
图2为一个实施例中闪存校验方法的流程示意图;
图3为一个实施例中存储页分类的示意图;
图4为一个实施例中多次校验第二存储页的流程示意图;
图5为一个实施例中闪存校验装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的闪存校验方法,可以应用于如图1所示的应用环境中。其中,闪存102通过与校验设备104进行通信。
校验设备104根据闪存数据的校验位对闪存102进行校验,获取所述闪存102中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;
将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,其中,所述第一存储页包括小于或等于所述校验阈值的错误比特数,所述第二存储页包括大于所述校验阈值的错误比特数;
将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;
通过所述校验结果确定所述闪存102中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。
在一个实施例中,如图2所示,提供了一种闪存校验方法,以该方法应用于图1中的校验设备为例进行说明,包括以下步骤:
步骤S1,根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数。
其中,对闪存进行校验是一种内存纠错,可以发现错误并纠正错误,校验位指的是用数据位上额外的位存储一个用数据加密的代码。
具体地,通过计算读取前和读取后的闪存数据的校验位是否一致,从而在一定程度上检测出闪存错误,若闪存数据的数据位每增加一倍,则相应地增加一位检验位。
步骤S2,将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,其中,所述第一存储页包括小于或等于所述校验阈值的错误比特数,所述第二存储页包括大于所述校验阈值的错误比特数。
其中,若存储页中的错误比特数小于或等于所述校验阈值,则认为该存储页中的错误是可以纠正的,即第一存储页是错误可纠正存储页;若存储页中的错误比特数大于所述校验阈值,则认为该存储页中的错误是不可纠正的,即第二存储页是错误不可纠正存储页。
示例性地,如图3所示,在72bit校验法中,预设72bit为校验阈值,根据单存储页中的错误比特数,判断存储页中的错误可否纠正,若错误比特<=72bit,则该存储页的错误可以纠正;若错误比特数>72bit,则认为该存储页有不可纠正的错误。
步骤S3,将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果。
其中,数量区间是为了直观清晰地分析错误数据的分布情况而预设的至少一个区间段,校验结果包括统计值和分布情况。
根据存储页中的错误比特数,将存储页记录到对应的数量区间中,采集各个数量区间中存储页的数量,即统计值,再根据存储页的错误比特数和对应的数量区间得到错误数据的分布情况。
步骤S4,通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。
具体地,根据校验结果中的分布情况,确定错误不可纠正的存储页,即存在坏点的存储页,再根据存储页确定对应的存储块。
上述闪存校验方法中,可通过根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;可通过将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,实现将存储页按错误比特数分类;可通过将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;可通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。通过对闪存数据进行校验,发现闪存数据中的错误信息,将其中的存储页分类,并根据对应的数量区间,采集对应数量区间中的存储页的数量,形成校验结果,最终确定有坏点的存储块,可以清晰直观地对错误数据进行可靠分析,对闪存的健壮性的提高和寿命预估具有重要意义。
在其中一个实施例中,获取第一存储页和第二存储页,包括:
对所述第二存储页进行N次校验,N为正整数,将所述错误比特数与所述校验阈值进行对比,
若完成M次校验后,所述错误比特数小于或等于所述校验阈值,则停止校验,其中,M为正整数,0<M≤N;
若完成N次校验后,所述错误比特数大于所述校验阈值,则判定所述第二存储页存在坏点。
需要说明的,通过实验数据发现,即使第二存储页为错误不可纠正的存储页,但将第一次对闪存校验后得到的第二存储页再进行多次校验,其中部分第二存储页的错误可以得到纠正,证明在第一次校验后得到的数据存在一定误差,因此,在获取第一存储页和第二存储页时,会对通过第一次校验获取的第二存储页再进行多次校验,以保证后续的数据充分可靠。
示例性地,如图4所示,图4为对第二存储页进行多次校验的流程图,在对闪存进行第一次校验后,对比错误比特数和校验阈值,获取错误比特数大于校验阈值的第二存储页,对该存储页进行校验,再次判断该存储页的错误比特数和校验阈值的大小关系,若所述错误比特数小于或等于所述校验阈值,则停止校验;若所述错误比特数大于所述校验阈值,则判断是否校验了N次,若是,则停止校验;若否,则再次进行校验。
在其中一个实施例中,分别采集各个所述数量区间中所述存储页的数量,包括:
将采集到的所述存储页与所述数量区间对应,在各个所述数量区间中,分别对所述存储页的数量进行累加,得到各个所述数量区间的统计值。
需要说明的是,经过校验后可以得知每个存储页中的错误比特数,数量区间根据错误比特数进行设置,每个存储页都能对应到相应错误比特数的数量区间,将各个数量区间中的存储页的数量分别求和,则能得到各个数量区间中包含的存储页的数量,即统计值,以及存储页在各个数量区间中的分布情况。
示例性地说明,如表1所示,对于72bit校验法而言,可以将数量区间分为以下4个数量区间进行分析:
表 1
若当前校验的存储页中的错误比特数为20,则将该存储页记录到安全区间中,安全区间的统计值加一,通过分区间进行统计,避免了单一错误比特记录过程的繁琐,能够直观地对各个数量区间的数据进行分析。
按照上述方法,可以得到不同数量区间的统计值,分别代表了闪存的错误分布情况,可以理解的是,不可纠正区间、危险区间和纠正区间的统计值越小越好,安全区间的统计值越大越好。
对于危险区间的统计值,因为这部分错误比特数已经相当接近于不可纠正区间的错误比特数,在闪存使用过程中,若闪存经过若干次擦写,处于危险区间的存储页可能会因为错误比特数的增加,而变成不可纠正区间的存储页,因此在闪存使用过程中,将会尽量避免频繁使用该类数量区间的存储页或该类存储页对应的存储块。
在其中一个实施例中,还包括:
对所述存储块中的统计值进行验证,所述存储块中的统计值满足的数学表达为:
将单个存储块中全部存储页记录在数量区间后,可以对该存储块中的统计值进行验证,可以理解的是,统计值实际上就是存储页在对应的数量区间中的一种体现数量的方式,因此一个存储页只会记录在一个数量区间中,对于单个存储块,将所有数量区间中的统计值求和,即为该存储块中存储页的数量。
在其中一个实施例中,还包括:
对所述闪存中的统计值进行验证,所述闪存中的统计值满足的数学表达为:
其中,所述闪存的所述存储块总数为A,每个所述存储块有B个所述存储页,第i个所述存储块的第j个所述存储页的所述错误比特数为,设置P个所述数量区间,且1≤P,检查对应的所述数量区间,若处于所述数量区间k,所述数量区间k的统计值为。
将闪存中全部存储页记录在数量区间后,可以对该闪存中的统计值进行验证,可以理解的是,对于单个闪存,将所有数量区间中的统计值求和,即为该闪存中所有存储块中存储页的数量。
在其中一个实施例中,根据闪存数据的校验位对闪存进行校验,包括:
将所述闪存数据写入内存,检测所述闪存数据中的错误和/或纠正所述闪存数据中的错误;
其中,对比所述闪存数据的写入内存前的校验位和写入内存后的校验位;
若不同,则将所述校验位解码,确定所述闪存数据中的错误,以使内存中获取正确的所述闪存数据,纠正所述错误。
其中,需要说明的是,闪存数据中有数据位和校验位,校验位中存有被加密的校验码,当闪存数据被写入内存时,相应的校验位中的校验码也会被保存下来,当重新读取刚才写入的闪存数据时,刚才保存下来的校验码就会和读数据时产生的校验码做比较,如果两个校验码不相同,则将两个校验码解码,以确定闪存数据中的哪一位是不正确的,然后错误位会被抛弃,内存控制器会释放出正确的数据,完成错误的纠正。
在其中一个实施例中,通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块,包括:
将存在坏点的所述存储块标记为坏块,若所述坏块数量超出预设的安全阈值,则判定该闪存不合格。
可以理解的是,闪存的频繁使用会导致存储块出现较多的不可纠正的错误,即存储块出现坏点,出现坏点的存储块不可继续使用,在坏块表里将出现坏点的存储块标记为坏块,在后续测试中,跳过被标记的坏块。
在其中一个实施例中,包括:
示例性地说明,以镁光的L06B NAND闪存为例,单个闪存有512个存储块,单个存储块有256个页。在实际测试过程中,因为存储块0和存储块1里面储存的是用于管理闪存的信息表,因此会跳过对这两个存储块的测试,此外还会跳过在坏块表中已经被标记的出厂坏块。
本次实验选择500个存储块,则待分析的存储页总数为500*256,使用72bit ECC校验法进行校验。
首先使用ECC校验法依次对所有的存储页进行校验,对于错误不可纠正的存储页,会再次进行读取和校验,若在规定次数N内没有纠正,则认为该页不可纠正;若在N次内纠正成功,则认为该页时可纠的,同时,记录各个存储页的错误比特数。
再用本申请所提供的方法,设置数量区间,以存储块为维度对存储页进行统计,以其中的存储块5和存储块6为例,结果如表2所示:
表 2
以整个NAND闪存为维度进行统计,结果如表3所示:
表 3
从表2中可以得知,存储块5和存储块6是不存在处于不可纠正区间的存储页的,因此存储块5和存储块6都可以进行正常使用,但是因为这两个存储块各自存在一个存储页在危险区间中,因此在使用过程中应该尽量避免频繁使用这些存储页;
从表3中可以得知,对于整个NAND闪存而言,其中有两个存储页具有不可纠正的错误,将两个存储页所在的对应的存储块加入坏块表,标记为坏块。
应该理解的是,虽然图2、图4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2、图4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种闪存校验装置,包括:校验模块、对比模块、采集模块和标记模块,其中:
校验模块,用于根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;
对比模块,用于将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,其中,所述第一存储页包括小于或等于所述校验阈值的错误比特数,所述第二存储页包括大于所述校验阈值的错误比特数;
采集模块,用于将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;
标记模块,用于通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。
在一些实施例中,包括:
对所述第二存储页进行N次校验,N为正整数,将所述错误比特数与所述校验阈值进行对比,
若完成M次校验后,所述错误比特数小于或等于所述校验阈值,则停止校验,其中,M为正整数,0<M≤N;
若完成N次校验后,所述错误比特数大于所述校验阈值,则判定所述第二存储页存在坏点。
在一些实施例中,还包括:
将采集到的所述存储页与所述数量区间对应,在各个所述数量区间中,分别对所述存储页的数量进行累加,得到各个所述数量区间的统计值。
在一些实施例中,还包括:
对所述存储块中的统计值进行验证,所述存储块中的统计值满足的数学表达为:
在一些实施例中,还包括:
对所述闪存中的统计值进行验证,所述闪存中的统计值满足的数学表达为:
其中,所述闪存的所述存储块总数为A,每个所述存储块有B个所述存储页,第i个所述存储块的第j个所述存储页的所述错误比特数为,设置P个所述数量区间,且1≤P,检查对应的所述数量区间,若处于所述数量区间k,所述数量区间k的统计值为。
在一些实施例中,还包括:
将所述闪存数据写入内存,检测所述闪存数据中的错误和/或纠正所述闪存数据中的错误;
其中,对比所述闪存数据的写入内存前的校验位和写入内存后的校验位;
若不同,则将所述校验位解码,确定所述闪存数据中的错误,以使内存中获取正确的所述闪存数据,纠正所述错误。
在一些实施例中,还包括:
将存在坏点的所述存储块标记为坏块,若所述坏块数量超出预设的安全阈值,则判定该闪存不合格。
关于闪存校验装置的具体限定可以参见上文中对于闪存校验方法的限定,在此不再赘述。上述闪存校验装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种闪存校验方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;
将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,其中,所述第一存储页包括小于或等于所述校验阈值的错误比特数,所述第二存储页包括大于所述校验阈值的错误比特数;
将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;
通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对所述第二存储页进行N次校验,N为正整数,将所述错误比特数与所述校验阈值进行对比,
若完成M次校验后,所述错误比特数小于或等于所述校验阈值,则停止校验,其中,M为正整数,0<M≤N;
若完成N次校验后,所述错误比特数大于所述校验阈值,则判定所述第二存储页存在坏点。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将采集到的所述存储页与所述数量区间对应,在各个所述数量区间中,分别对所述存储页的数量进行累加,得到各个所述数量区间的统计值。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对所述存储块中的统计值进行验证,所述存储块中的统计值满足的数学表达为:
其中,每个所述存储块有B个所述存储页,第i个所述存储块的第j个所述存储页的所述错误比特数为,设置P个所述数量区间,且1≤P,检查 对应的所述数量区间,若处于所述数量区间k,则所述数量区间k的统计值为。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
对所述闪存中的统计值进行验证,所述闪存中的统计值满足的数学表达为:
其中,所述闪存的所述存储块总数为A,每个所述存储块有B个所述存储页,第i个所述存储块的第j个所述存储页的所述错误比特数为 ,设置P个所述数量区间,且1≤P,检查对应的所述数量区间,若处于所述数量区间k,所述数量区间k的统计值为。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将所述闪存数据写入内存,检测所述闪存数据中的错误和/或纠正所述闪存数据中的错误;
其中,对比所述闪存数据的写入内存前的校验位和写入内存后的校验位;
若不同,则将所述校验位解码,确定所述闪存数据中的错误,以使内存中获取正确的所述闪存数据,纠正所述错误。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
将存在坏点的所述存储块标记为坏块,若所述坏块数量超出预设的安全阈值,则判定该闪存不合格。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;
将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,其中,所述第一存储页包括小于或等于所述校验阈值的错误比特数,所述第二存储页包括大于所述校验阈值的错误比特数;
将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;
通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对所述第二存储页进行N次校验,N为正整数,将所述错误比特数与所述校验阈值进行对比,
若完成M次校验后,所述错误比特数小于或等于所述校验阈值,则停止校验,其中,M为正整数,0<M≤N;
若完成N次校验后,所述错误比特数大于所述校验阈值,则判定所述第二存储页存在坏点。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将采集到的所述存储页与所述数量区间对应,在各个所述数量区间中,分别对所述存储页的数量进行累加,得到各个所述数量区间的统计值。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对所述存储块中的统计值进行验证,所述存储块中的统计值满足的数学表达为:
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
对所述闪存中的统计值进行验证,所述闪存中的统计值满足的数学表达为:
其中,所述闪存的所述存储块总数为A,每个所述存储块有B个所述存储页,第i个所述存储块的第j个所述存储页的所述错误比特数为,设置P个所述数量区间,且1≤P,检查 对应的所述数量区间,若处于所述数量区间k,所述数量区间k的统计值为。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将所述闪存数据写入内存,检测所述闪存数据中的错误和/或纠正所述闪存数据中的错误;
其中,对比所述闪存数据的写入内存前的校验位和写入内存后的校验位;
若不同,则将所述校验位解码,确定所述闪存数据中的错误,以使内存中获取正确的所述闪存数据,纠正所述错误。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将存在坏点的所述存储块标记为坏块,若所述坏块数量超出预设的安全阈值,则判定该闪存不合格。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种闪存校验方法,其特征在于,包括:
根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;
将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,其中,所述第一存储页包括小于或等于所述校验阈值的错误比特数,所述第二存储页包括大于所述校验阈值的错误比特数;
将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;
通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。
2.根据权利要求1所述的方法,其特征在于,获取第一存储页和第二存储页,包括:
对所述第二存储页进行N次校验,N为正整数,将所述错误比特数与所述校验阈值进行对比;
若完成M次校验后,所述错误比特数小于或等于所述校验阈值,则停止校验,其中,M为正整数,0<M≤N;
若完成N次校验后,所述错误比特数大于所述校验阈值,则判定所述第二存储页存在坏点。
3.根据权利要求1所述的方法,其特征在于,分别采集各个所述数量区间中所述存储页的数量,包括:
将采集到的所述存储页与所述数量区间对应,在各个所述数量区间中,分别对所述存储页的数量进行累加,得到各个所述数量区间的统计值。
6.根据权利要求1所述的方法,其特征在于,根据闪存数据的校验位对闪存进行校验,包括:
将所述闪存数据写入内存,检测所述闪存数据中的错误和/或纠正所述闪存数据中的错误;
对比所述闪存数据写入内存前的校验位和写入内存后的校验位;
若不同,则将所述校验位解码,确定所述闪存数据中的错误,以使内存中获取正确的所述闪存数据,纠正所述错误。
7.根据权利要求1所述的方法,其特征在于,通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块,还包括:
将存在坏点的所述存储块标记为坏块,若所述坏块数量超出预设的安全阈值,则判定该闪存不合格。
8.一种闪存校验装置,其特征在于,所述装置包括:
校验模块,用于根据闪存数据的校验位对闪存进行校验,获取所述闪存中存储页的错误数据,并根据所述错误数据确定所述存储页中的错误比特数;
对比模块,用于将所述错误比特数与预设的校验阈值进行对比,获取第一存储页和第二存储页,其中,所述第一存储页包括小于或等于所述校验阈值的错误比特数,所述第二存储页包括大于所述校验阈值的错误比特数;
采集模块,用于将所述第一存储页与所述第二存储页的错误比特数分别与预设的数量区间进行对应,采集各个所述数量区间中所述存储页的数量,获取所述闪存的校验结果;
标记模块,用于通过所述校验结果确定所述闪存中坏点的存储页,以及确定坏点的所述存储页对应的所述存储块。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述闪存校验方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述闪存校验方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210071239.2A CN114093409A (zh) | 2022-01-21 | 2022-01-21 | 一种闪存校验方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210071239.2A CN114093409A (zh) | 2022-01-21 | 2022-01-21 | 一种闪存校验方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114093409A true CN114093409A (zh) | 2022-02-25 |
Family
ID=80309043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210071239.2A Pending CN114093409A (zh) | 2022-01-21 | 2022-01-21 | 一种闪存校验方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114093409A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114880164A (zh) * | 2022-07-12 | 2022-08-09 | 合肥康芯威存储技术有限公司 | 一种管理存储页的方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104881370A (zh) * | 2015-05-11 | 2015-09-02 | 中国人民解放军国防科学技术大学 | 协同使用纠删码和纠错码的可靠闪存存储系统构建方法 |
CN107544749A (zh) * | 2016-06-24 | 2018-01-05 | 慧荣科技股份有限公司 | 数据储存媒体的损坏数据行的筛选方法 |
CN109408260A (zh) * | 2018-09-25 | 2019-03-01 | 深圳忆联信息系统有限公司 | 错误比特个数估计方法、装置、计算机设备及存储介质 |
-
2022
- 2022-01-21 CN CN202210071239.2A patent/CN114093409A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104881370A (zh) * | 2015-05-11 | 2015-09-02 | 中国人民解放军国防科学技术大学 | 协同使用纠删码和纠错码的可靠闪存存储系统构建方法 |
CN107544749A (zh) * | 2016-06-24 | 2018-01-05 | 慧荣科技股份有限公司 | 数据储存媒体的损坏数据行的筛选方法 |
CN109408260A (zh) * | 2018-09-25 | 2019-03-01 | 深圳忆联信息系统有限公司 | 错误比特个数估计方法、装置、计算机设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114880164A (zh) * | 2022-07-12 | 2022-08-09 | 合肥康芯威存储技术有限公司 | 一种管理存储页的方法和装置 |
CN114880164B (zh) * | 2022-07-12 | 2022-09-20 | 合肥康芯威存储技术有限公司 | 一种管理存储页的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108052414B (zh) | 一种提升ssd工作温度范围的方法及系统 | |
US8255773B2 (en) | System and method of tracking error data within a storage device | |
US10755787B2 (en) | Efficient post programming verification in a nonvolatile memory | |
TWI512742B (zh) | 非揮發性快閃記憶體擦除異常存儲塊修復方法和裝置 | |
CN110136769B (zh) | Otp寄存器数据修正方法、装置、计算机设备和存储介质 | |
US20120324276A1 (en) | Intelligent bit recovery for flash memory | |
CN108829358B (zh) | 固态硬盘的坏块管理方法以及固态硬盘 | |
CN110459259A (zh) | 存储设备写错误纠错能力的测试方法、系统及存储介质 | |
CN111459708B (zh) | 坏块处理方法及装置 | |
CN114093409A (zh) | 一种闪存校验方法、装置、计算机设备和存储介质 | |
CN107562563B (zh) | Nand Flash控制方法和装置 | |
CN112732181B (zh) | 一种ssd的数据迁移方法及相关装置 | |
CN110910938A (zh) | 一种数据纠正方法、装置、存储设备及存储介质 | |
US20160210063A1 (en) | Data writing method and system | |
KR100577988B1 (ko) | 오류 검출 능력이 강화된 플래시 메모리 및 다비트 오류검출 방법 | |
CN104269190A (zh) | 存储器的数据校验方法 | |
US12045120B2 (en) | Error rate analysis method, system and apparatus for MLC chip | |
CN115620781A (zh) | 用于固态硬盘的闪存控制器配置方法、装置、设备及介质 | |
CN113421605B (zh) | 一种电能表存储器寿命测试方法及装置 | |
CN110826114B (zh) | 基于ssd安全擦除后的用户数据测试方法和装置 | |
Zambelli et al. | Investigating 3D NAND flash read disturb reliability with extreme value analysis | |
CN115705914A (zh) | 闪存坏块的检测方法、检测设备和计算机存储介质 | |
CN110781043A (zh) | 存储产品的品质检测方法、装置、存储介质及设备 | |
CN113129993B (zh) | 内存装置及其数据读取方法 | |
CN116185704A (zh) | 芯片及其数据存储方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20220225 |