CN111625200B - 一种非易失性存储器的读取方法、装置及系统 - Google Patents
一种非易失性存储器的读取方法、装置及系统 Download PDFInfo
- Publication number
- CN111625200B CN111625200B CN202010473308.3A CN202010473308A CN111625200B CN 111625200 B CN111625200 B CN 111625200B CN 202010473308 A CN202010473308 A CN 202010473308A CN 111625200 B CN111625200 B CN 111625200B
- Authority
- CN
- China
- Prior art keywords
- reading
- condition
- result
- preset
- preset requirement
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000010586 diagram Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种非易失性存储器的读取方法、装置及系统,该方法包括使用初始读取条件对数据页中的数据进行读取,得到初始读取结果,初始读取条件为预设的多个读取条件中的一个;判断初始读取结果是否满足预设要求,预设要求为读取结果中的错误比特数量小于等于预设数量;若不满足预设要求,执行预设步骤,直至各个读取条件得到的读取结果均不满足预设要求,或者直至某个读取条件得到的读取结果满足预设要求;对满足预设要求的读取结果进行纠错,并将纠错后的数据发送至上位机;预设步骤包括:从预设的多个读取条件中选取未使用的读取条件并进行读取,得到读取结果;判断读取结果是否满足预设要求。本发明可以提升读取准确率和速度,并降低系统的硬件开销。
Description
技术领域
本发明涉及非易失性存储器技术领域,特别涉及一种非易失性存储器的读取方法、装置及系统。
背景技术
在非易失性存储器的芯片中,通常需要加入错误编码纠正(Error CorrectingCode,ECC)模块,以提高芯片读取数据的可靠性。现有的非易失性存储器的读取流程是先从非易失性存储器的存储阵列中读取数据,然后交给ECC模块去纠错,最后将纠错后的数据输出给外界。但是由于非易失性存储器的易错性,以及外界环境的影响,可能会出现ECC纠错资源不够用的情况,即错误比特数目超过了ECC可以纠正的错误上限,导致输出数据产生错误。而如果把ECC纠错能力设计的非常强的话,带来的硬件成本开销会显著增加,并且完成纠错的时间较长。同时由于ECC纠错机制本身的机理,在超出纠错能力上限后,输出数据的错误数可能会远远大于原始数据的错误数,使得纠错机制出现问题带来的影响可能会更加严重。因此,如何提高读取准确率和速度,并降低系统的硬件开销,成为本领域亟待解决的技术问题。
发明内容
本发明的目的是提供一种非易失性存储器的读取方法、装置及系统,以提高读取准确率和速度,并降低系统的硬件开销。
为实现上述目的,本发明实施例提供一种非易失性存储器的读取方法,包括:
使用初始读取条件对非易失性存储器的数据页中的数据进行读取,得到初始读取结果,所述初始读取条件为预设的多个读取条件中的一个;
判断所述初始读取结果是否满足预设要求,所述预设要求为读取结果中的错误比特数量小于等于预设数量;
若所述初始读取结果不满足预设要求,执行预设步骤,直至使用所述多个读取条件中的各个读取条件得到的读取结果均不满足所述预设要求,或者直至使用所述多个读取条件中的某个读取条件得到的读取结果满足所述预设要求;
当使用所述某个读取条件得到的读取结果满足所述预设要求时,对满足所述预设要求的所述读取结果进行纠错,并将纠错后的数据发送至上位机;
其中,所述预设步骤包括:
从所述预设的多个读取条件中选取未使用的读取条件;
基于所述未使用的读取条件对所述数据页中的数据进行读取,得到读取结果;
判断所述读取结果是否满足所述预设要求。
在本发明的一实施例中,当使用所述多个读取条件中的各个读取条件得到的读取结果均不满足所述预设要求时,将未经纠错的读取结果以及纠错提示信息发送至所述上位机。
在本发明的一实施例中,所述读取条件中包括多个参数,所述多个参数包括读取电压、电流阈值以及读取时长。
在本发明的一实施例中,在从所述预设的多个读取条件中选取未使用的读取条件时,根据外部影响因素的变化情况选取相对应的读取条件,所述外部影响因素包括电源电压、外界温度以及噪声。
在本发明的一实施例中,所述非易失性存储器包括:阻变存储器、相变存储器以及磁存储器。
本发明实施例还提供一种非易失性存储器的读取装置,包括:
第一读取单元,用于使用初始读取条件对非易失性存储器的数据页中的数据进行读取,得到初始读取结果,所述初始读取条件为预设的多个读取条件中的一个;
第一判断单元,用于判断所述初始读取结果是否满足预设要求,所述预设要求为读取结果中的错误比特数量小于等于预设数量;
循环迭代单元,用于若所述初始读取结果不满足预设要求,执行预设步骤,直至使用所述多个读取条件中的各个读取条件得到的各个读取结果均不满足所述预设要求,或者直至使用所述多个读取条件中的某个读取条件得到的读取结果满足所述预设要求;
数据纠错单元,用于在使用所述多个读取条件中的某个读取条件得到的读取结果满足所述预设要求的情况下,对所述读取结果进行纠错,并将纠错后的数据发送至上位机;
其中,所述循环迭代单元包括:
读取条件选取子单元,用于从所述预设的多个读取条件中选取未使用的读取条件;
第二读取子单元,用于基于所述未使用的读取条件对所述数据页中的数据进行读取,得到读取结果;
第一判断子单元,用于判断所述读取结果是否满足所述预设要求。
本发明实施例还提供一种非易失性存储器的读取系统,包括:
非易失性存储器,所述非易失性存储器包括存储阵列与错误编码纠正模块;
与所述非易失性存储器相连的控制模块;
与所述控制模块相连的上位机;
其中,所述存储阵列用于存储数据页;
所述错误编码纠正模块用于接收所述控制模块发来的读取结果,判断所述读取结果是否满足预设要求,以及对满足所述预设要求的读取结果进行纠错,所述预设要求为读取结果中的错误比特数量小于等于预设数量;
所述控制模块用于从预设的多个读取条件中选择读取条件,并利用选择的读取条件对所述数据页中的数据进行读取,将读取结果输入所述错误编码纠正模块,当所述初始读取结果不满足所述预设要求时,从预设的多个读取条件中选取其他读取条件进行读取,直至各个读取条件得到的读取结果均不满足所述预设要求,或者直至某个读取条件得到的读取结果满足所述预设要求;所述控制模块还用于将纠错后的数据发送至上位机。
在本发明的一实施例中,所述控制模块还用于在使用所述多个读取条件中的各个读取条件得到的读取结果均不满足所述预设要求的情况下,将未经纠错的读取结果以及纠错提示信息发送至所述上位机。
在本发明的一实施例中,所述上位机还用于在接收到所述控制模块发来的未经纠错的读取结果以及纠错提示信息后,运行指定纠错软件对所述未经纠错的读取结果进行纠错。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现上述所述读取方法的步骤。
由以上本发明实施例提供的技术方案可以看出,本发明通过将读取结果输入错误编码纠正模块,计算出错误比特数量是否大于预定数量,只要超过预设数量,就更换读取条件,再次进行读取操作,避免了利用同一读取条件进行多次读取所导致的时延,同时通过改变读取条件可以抵消外界环境变化导致的数据错误,提高读取的准确率,此外,还可以有效降低错误编码纠正模块的纠错能力上限,从而减小系统的硬件开销。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种非易失性存储器的读取方法的流程图;
图2是本发明实施例提供的一种非易失性存储器的读取装置的模块结构图;
图3是本发明实施例提供的一种非易失性存储器的读取系统的结构示意图。
具体实施方式
下面将结合附图和具体实施方式,对本发明的技术方案作详细说明,应理解这些实施方式仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落入本发明所附权利要求所限定的范围内。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施方式的目的,不是旨在于限制本发明。
参考图1所示,为本发明实施例提供的一种非易失性存储器的读取方法的流程图,该读取方法可以包括如下步骤:
S1:使用初始读取条件对非易失性存储器的数据页中的数据进行读取,得到初始读取结果,所述初始读取条件为预设的多个读取条件中的一个。
具体的,非易失性存储器可以包括阻变存储器、相变存储器以及磁存储器。
具体的,非易失性存储器含有存储阵列和错误编码纠正模块,在存储阵列中以页的形式存储数据,即固定数量的字节组成一个页,页也是对数据进行访问的最小长度单位,因此,在从存储阵列获取数据时,至少获取一页的数据。
具体的,所述读取条件中包括多个参数,所述多个参数包括读取电压、电流阈值以及读取时长,在不同的读取条件中,各个参数的参数值不完全相同。
S2:判断所述初始读取结果是否满足预设要求,所述预设要求为读取结果中的错误比特数量小于等于预设数量。
S3:若所述初始读取结果不满足预设要求,执行预设步骤,直至使用所述多个读取条件中的各个读取条件得到的读取结果均不满足所述预设要求,或者直至使用所述多个读取条件中的某个读取条件得到的读取结果满足所述预设要求。
其中,所述预设步骤包括以下子步骤:
S301:从所述预设的多个读取条件中选取未使用的读取条件。
S302:基于所述未使用的读取条件对所述数据页中的数据进行读取,得到读取结果。
S303:判断所述读取结果是否满足所述预设要求。
例如,初始读取条件中的各个参数可以是读取电压V1、电流阈值I1以及读取时长T1,初始读取结果不满足预设要求时,从预设的多个读取条件中选取其他读取条件,例如,其他读取条件中的各个参数可以是读取电压V2、电流阈值I1以及读取时长T1,也可以是读取电压V2、电流阈值I2以及读取时长T1,对此本申请不一一列举,只要在不同的读取条件中,各个参数的参数值不完全相同即可。
此外,在从所述预设的多个读取条件中选取未使用的读取条件时,可以根据外部影响因素的变化情况选取相对应的读取条件,所述外部影响因素包括电源电压、外界温度以及噪声。
例如,初始读取条件中的各个参数为读取电压V1、电流阈值I1以及读取时长T1,在外界温度升高的情况下,可以将读取电压的值V1修改为V2,其中V2大于V1,电流阈值I1以及读取时长T1可以保持不变,具体的,可以将V1增大5%,当然,也可以同时将电流阈值I1和/或读取时长T1增大,对此本发明不做限定。在将读取电压调整为V2后再次进行读取,如果数据中需要纠错的比特数量仍然大于预定数量,还可以将读取电压的值从V2继续增大至V3,当然,也可以将电流阈值I1的值调整为I2,I2大于I1,和/或将读取时长T1的值调整为T2,T2大于T1。此外,在外界温度降低的情况下,可以将读取电压V1、电流阈值I1以及读取时长T1中的一个或多个的值减小,以抵消外界温度的影响,提高读取的准确率。
S4:当使用所述某个读取条件得到的读取结果满足所述预设要求时,对满足所述预设要求的所述读取结果进行纠错,并将纠错后的数据发送至上位机。
在本发明一实施例中,所述读取方法还包括:
S5:当使用所述多个读取条件中的各个读取条件得到的读取结果均不满足所述预设要求时,将未经纠错的读取结果以及纠错提示信息发送至所述上位机。
参考图2所示,为本发明实施例提供的一种非易失性存储器的读取装置的模块结构示意图,包括:
第一读取单元10,用于使用初始读取条件对非易失性存储器的数据页中的数据进行读取,得到初始读取结果,所述初始读取条件为预设的多个读取条件中的一个;
第一判断单元20,用于判断所述初始读取结果是否满足预设要求,所述预设要求为读取结果中的错误比特数量小于等于预设数量;
循环迭代单元30,用于若所述初始读取结果不满足预设要求,执行预设步骤,直至使用所述多个读取条件中的各个读取条件得到的各个读取结果均不满足所述预设要求,或者直至使用所述多个读取条件中的某个读取条件得到的读取结果满足所述预设要求;
数据纠错单元40,用于在使用所述多个读取条件中的某个读取条件得到的读取结果满足所述预设要求的情况下,对所述读取结果进行纠错,并将纠错后的数据发送至上位机;
其中,所述循环迭代单元30包括:
读取条件选取子单元301,用于从所述预设的多个读取条件中选取未使用的读取条件;
第二读取子单元302,用于基于所述未使用的读取条件对所述数据页中的数据进行读取,得到读取结果;
第一判断子单元303,用于判断所述读取结果是否满足所述预设要求。
参考图3所示,为本发明实施例提供的一种非易失性存储器的读取系统的结构示意图,包括:
非易失性存储器,所述非易失性存储器包括存储阵列与错误编码纠正模块;
与所述非易失性存储器相连的控制模块;
与所述控制模块相连的上位机;
其中,所述存储阵列用于存储数据页;
所述错误编码纠正模块用于接收所述控制模块发来的读取结果,判断所述读取结果是否满足预设要求,以及对满足所述预设要求的读取结果进行纠错,所述预设要求为读取结果中的错误比特数量小于等于预设数量;
所述控制模块用于从预设的多个读取条件中选择读取条件,并利用选择的读取条件对所述数据页中的数据进行读取,将读取结果输入所述错误编码纠正模块,当所述初始读取结果不满足所述预设要求时,从预设的多个读取条件中选取其他读取条件进行读取,直至各个读取条件得到的读取结果均不满足所述预设要求,或者直至某个读取条件得到的读取结果满足所述预设要求;所述控制模块还用于将纠错后的数据发送至上位机。
在本发明一实施例中,所述控制模块还用于在使用所述多个读取条件中的各个读取条件得到的读取结果均不满足所述预设要求的情况下,将未经纠错的读取结果以及纠错提示信息发送至所述上位机。
在本发明一实施例中,所述上位机还用于在接收到所述控制模块发来的未经纠错的读取结果以及纠错提示信息后,运行指定纠错软件对所述未经纠错的读取结果进行纠错。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现上述所述读取方法的步骤。
本说明书中的上述各个实施方式均采用递进的方式描述,各个实施方式之间相同相似部分相互参照即可,每个实施方式重点说明的都是与其他实施方式不同之处。
以上所述仅为本发明的几个实施方式,虽然本发明所揭露的实施方式如上,但所述内容只是为了便于理解本发明的技术方案而采用的实施方式,并非用于限定本发明。任何本发明所属技术领域的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施方式的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附权利要求书所界定的范围为准。
Claims (8)
1.一种非易失性存储器的读取方法,其特征在于,包括:
使用初始读取条件对非易失性存储器的数据页中的数据进行读取,得到初始读取结果,所述初始读取条件为预设的多个读取条件中的一个,所述读取条件中包括多个参数,所述多个参数包括读取电压、电流阈值以及读取时长;
判断所述初始读取结果是否满足预设要求,所述预设要求为读取结果中的错误比特数量小于等于预设数量;
若所述初始读取结果不满足预设要求,执行预设步骤,直至使用所述多个读取条件中的各个读取条件得到的读取结果均不满足所述预设要求,或者直至使用所述多个读取条件中的某个读取条件得到的读取结果满足所述预设要求;
当使用所述某个读取条件得到的读取结果满足所述预设要求时,对满足所述预设要求的所述读取结果进行纠错,并将纠错后的数据发送至上位机;
其中,所述预设步骤包括:
从所述预设的多个读取条件中选取未使用的读取条件,其中,在所述选取未使用的读取条件时,根据外部影响因素的变化情况选取相对应的所述读取条件,所述外部影响因素包括外界温度;
基于所述未使用的读取条件对所述数据页中的数据进行读取,得到读取结果;
判断所述读取结果是否满足所述预设要求;
所述根据外部影响因素的变化情况选取相对应的所述读取条件,包括:
所述初始读取条件中的各个参数包括读取电压V1、电流阈值I1以及读取时长T1,在外界温度升高的情况下,将所述读取电压的值V1修改为V2,其中V2大于V1,所述电流阈值I1以及所述读取时长T1保持不变;
所述基于所述未使用的读取条件对所述数据页中的数据进行读取,得到读取结果,包括:
使用读取条件对所述非易失性存储器的数据页中的数据进行读取,得到读取结果,其中,所述读取条件中的各个参数包括读取电压V2、电流阈值I1以及读取时长T1;
所述根据外部影响因素的变化情况选取相对应的所述读取条件,还包括:
在所述读取结果中的错误比特数量大于所述预定数量的情况下,将所述读取电压的值从V2增大至V3,所述电流阈值I1以及所述读取时长T1保持不变。
2.根据权利要求1所述的读取方法,其特征在于,还包括:
当使用所述多个读取条件中的各个读取条件得到的读取结果均不满足所述预设要求时,将未经纠错的读取结果以及纠错提示信息发送至所述上位机。
3.根据权利要求1所述的读取方法,其特征在于,所述非易失性存储器包括:阻变存储器、相变存储器以及磁存储器。
4.一种非易失性存储器的读取装置,其特征在于,包括:
第一读取单元,用于使用初始读取条件对非易失性存储器的数据页中的数据进行读取,得到初始读取结果,所述初始读取条件为预设的多个读取条件中的一个,所述读取条件中包括多个参数,所述多个参数包括读取电压、电流阈值以及读取时长;
第一判断单元,用于判断所述初始读取结果是否满足预设要求,所述预设要求为读取结果中的错误比特数量小于等于预设数量;
循环迭代单元,用于在所述初始读取结果不满足预设要求的情况下,执行预设步骤,直至使用所述多个读取条件中的各个读取条件得到的各个读取结果均不满足所述预设要求,或者直至使用所述多个读取条件中的某个读取条件得到的读取结果满足所述预设要求;
数据纠错单元,用于在使用所述多个读取条件中的某个读取条件得到的读取结果满足所述预设要求的情况下,对所述读取结果进行纠错,并将纠错后的数据发送至上位机;
其中,所述循环迭代单元包括:
读取条件选取子单元,用于从所述预设的多个读取条件中选取未使用的读取条件,其中,在所述选取未使用的读取条件时,根据外部影响因素的变化情况选取相对应的所述读取条件,所述外部影响因素包括外界温度;
第二读取子单元,用于基于所述未使用的读取条件对所述数据页中的数据进行读取,得到读取结果;
第一判断子单元,用于判断所述读取结果是否满足所述预设要求;
所述根据外部影响因素的变化情况选取相对应的所述读取条件,包括:
所述初始读取条件中的各个参数包括读取电压V1、电流阈值I1以及读取时长T1,在外界温度升高的情况下,将所述读取电压的值V1修改为V2,其中V2大于V1,所述电流阈值I1以及所述读取时长T1保持不变;
所述基于所述未使用的读取条件对所述数据页中的数据进行读取,得到读取结果,包括:
使用读取条件对所述非易失性存储器的数据页中的数据进行读取,得到读取结果,其中,所述读取条件中的各个参数包括读取电压V2、电流阈值I1以及读取时长T1;
所述根据外部影响因素的变化情况选取相对应的所述读取条件,还包括:
在所述读取结果中的错误比特数量大于所述预定数量的情况下,将所述读取电压的值从V2增大至V3,所述电流阈值I1以及所述读取时长T1保持不变。
5.一种非易失性存储器的读取系统,其特征在于,包括:
非易失性存储器,所述非易失性存储器包括存储阵列与错误编码纠正模块;
与所述非易失性存储器相连的控制模块;
与所述控制模块相连的上位机;
其中,所述存储阵列用于存储数据页;
所述错误编码纠正模块用于接收所述控制模块发来的读取结果,判断所述读取结果是否满足预设要求,以及对满足所述预设要求的读取结果进行纠错,所述预设要求为读取结果中的错误比特数量小于等于预设数量;
所述控制模块用于从预设的多个读取条件中选择读取条件,并利用选择的读取条件对所述数据页中的数据进行读取,将读取结果输入所述错误编码纠正模块,当所述初始读取结果不满足所述预设要求时,从预设的多个读取条件中选取其他读取条件进行读取,直至各个读取条件得到的读取结果均不满足所述预设要求,或者直至某个读取条件得到的读取结果满足所述预设要求;所述控制模块还用于将纠错后的数据发送至上位机;
所述读取条件中包括多个参数,所述多个参数包括读取电压、电流阈值以及读取时长;
其中,在所述选取未使用的读取条件时,根据外部影响因素的变化情况选取相对应的所述读取条件,所述外部影响因素包括外界温度;
所述根据外部影响因素的变化情况选取相对应的所述读取条件,包括:
初始读取条件中的各个参数包括读取电压V1、电流阈值I1以及读取时长T1,在外界温度升高的情况下,将所述读取电压的值V1修改为V2,其中V2大于V1,所述电流阈值I1以及所述读取时长T1保持不变;
基于所述未使用的读取条件对所述数据页中的数据进行读取,得到读取结果,包括:
使用读取条件对所述非易失性存储器的数据页中的数据进行读取,得到读取结果,其中,所述读取条件中的各个参数包括读取电压V2、电流阈值I1以及读取时长T1;
所述根据外部影响因素的变化情况选取相对应的所述读取条件,还包括:
在所述读取结果中的错误比特数量大于所述预定数量的情况下,将所述读取电压的值从V2增大至V3,所述电流阈值I1以及所述读取时长T1保持不变。
6.根据权利要求5所述的系统,其特征在于,所述控制模块还用于在使用所述多个读取条件中的各个读取条件得到的读取结果均不满足所述预设要求的情况下,将未经纠错的读取结果以及纠错提示信息发送至所述上位机。
7.根据权利要求6所述的系统,其特征在于,所述上位机还用于在接收到所述控制模块发来的未经纠错的读取结果以及纠错提示信息后,运行指定纠错软件对所述未经纠错的读取结果进行纠错。
8.一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时用于实现权利要求1-3中任意一项所述的读取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010473308.3A CN111625200B (zh) | 2020-05-29 | 2020-05-29 | 一种非易失性存储器的读取方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010473308.3A CN111625200B (zh) | 2020-05-29 | 2020-05-29 | 一种非易失性存储器的读取方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111625200A CN111625200A (zh) | 2020-09-04 |
CN111625200B true CN111625200B (zh) | 2024-02-27 |
Family
ID=72259244
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010473308.3A Active CN111625200B (zh) | 2020-05-29 | 2020-05-29 | 一种非易失性存储器的读取方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111625200B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6381725B1 (en) * | 1998-08-18 | 2002-04-30 | Fujitsu Limited | Disk device and data error correction method thereof |
CN1790292A (zh) * | 2004-11-03 | 2006-06-21 | 三星电子株式会社 | 用于提高数据可靠性的数据管理技术 |
CN101339525A (zh) * | 2008-08-22 | 2009-01-07 | 北京星网锐捷网络技术有限公司 | 一种对数据进行错误检测的方法、系统和设备 |
CN108573722A (zh) * | 2017-03-13 | 2018-09-25 | 三星电子株式会社 | 操作非易失性存储器件的方法和非易失性存储器件 |
CN109164978A (zh) * | 2018-07-27 | 2019-01-08 | 深圳市江波龙电子股份有限公司 | 闪存管理方法、闪存存储设备及计算机可读存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9905314B2 (en) * | 2014-10-09 | 2018-02-27 | Sandisk Technologies Llc | Storage module and method for datapath bypass |
JP6378102B2 (ja) * | 2015-01-28 | 2018-08-22 | 東芝メモリ株式会社 | 半導体装置および読み出し方法 |
US9864545B2 (en) * | 2015-04-14 | 2018-01-09 | Sandisk Technologies Llc | Open erase block read automation |
-
2020
- 2020-05-29 CN CN202010473308.3A patent/CN111625200B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6381725B1 (en) * | 1998-08-18 | 2002-04-30 | Fujitsu Limited | Disk device and data error correction method thereof |
CN1790292A (zh) * | 2004-11-03 | 2006-06-21 | 三星电子株式会社 | 用于提高数据可靠性的数据管理技术 |
CN101339525A (zh) * | 2008-08-22 | 2009-01-07 | 北京星网锐捷网络技术有限公司 | 一种对数据进行错误检测的方法、系统和设备 |
CN108573722A (zh) * | 2017-03-13 | 2018-09-25 | 三星电子株式会社 | 操作非易失性存储器件的方法和非易失性存储器件 |
CN109164978A (zh) * | 2018-07-27 | 2019-01-08 | 深圳市江波龙电子股份有限公司 | 闪存管理方法、闪存存储设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111625200A (zh) | 2020-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10691535B2 (en) | Flash memory error correction method and apparatus | |
US11386952B2 (en) | Memory access module for performing a plurality of sensing operations to generate digital values of a storage cell in order to perform decoding of the storage cell | |
US10811091B2 (en) | Adaptive processing for read threshold voltage calibration | |
JP5735186B2 (ja) | 相変化メモリの読出しエラーを減少させるための読出しバイアス管理 | |
US10326479B2 (en) | Apparatuses and methods for layer-by-layer error correction | |
US20170250714A1 (en) | Error correction circuit and error correction method | |
US9213599B2 (en) | Method of erase state handling in flash channel tracking | |
CN111143107B (zh) | 一种fpga单粒子反转校验电路和方法 | |
WO2007135657A2 (en) | Error correction decoding by trial and error | |
US20160372161A1 (en) | Data storage device and operating method thereof | |
US20160266970A1 (en) | Memory system and method of controlling nonvolatile memory | |
KR20170068681A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
KR20150125490A (ko) | 플래시 메모리 장치, 플래시 메모리 시스템 및 이의 동작 방법 | |
CN106776104B (zh) | 一种Nand Flash控制器和终端以及控制Nand Flash的方法 | |
US9467170B2 (en) | NAND flash memory systems with efficient soft information interface | |
WO2021015823A1 (en) | Memory controller and method for decoding memory devices with early hard-decode exit | |
US20150149856A1 (en) | Decoding with log likelihood ratios stored in a controller | |
CN111625200B (zh) | 一种非易失性存储器的读取方法、装置及系统 | |
US8869009B2 (en) | Read commands specifying error performance | |
CN114913900A (zh) | 静态ecc纠错的nand错误处理方法、装置、计算机设备及存储介质 | |
US10680658B2 (en) | Decoder controller, error correction circuit, operating method thereof and data storage device including the same | |
US20200310911A1 (en) | Systems and methods for an ecc architecture with prioritized task queues | |
CN108363639B (zh) | 一种参数可配置的动态bch纠错方法及装置 | |
CN112540866B (zh) | 存储器装置及其数据存取方法 | |
US20230251926A1 (en) | Processing system, related integrated circuit and method |
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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210118 Address after: Room 1506, building F1, phase II, innovation industrial park, 2800 innovation Avenue, high tech Zone, Hefei City, Anhui Province, 230088 Applicant after: Hefei Zhongke Zhicun Technology Co.,Ltd. Address before: 100029 Beijing city Chaoyang District Beitucheng West Road No. 3 Applicant before: Institute of Microelectronics, Chinese Academy of Sciences |
|
GR01 | Patent grant | ||
GR01 | Patent grant |