CN114047887B - 一种提高数据读取的成功率的方法、装置及介质 - Google Patents
一种提高数据读取的成功率的方法、装置及介质 Download PDFInfo
- Publication number
- CN114047887B CN114047887B CN202210034592.3A CN202210034592A CN114047887B CN 114047887 B CN114047887 B CN 114047887B CN 202210034592 A CN202210034592 A CN 202210034592A CN 114047887 B CN114047887 B CN 114047887B
- Authority
- CN
- China
- Prior art keywords
- reference voltage
- data
- test sample
- success rate
- reading
- 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 65
- 238000012360 testing method Methods 0.000 claims abstract description 122
- 238000012937 correction Methods 0.000 claims abstract description 32
- 230000014759 maintenance of location Effects 0.000 claims description 35
- 239000002245 particle Substances 0.000 claims description 27
- 238000010248 power generation Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 claims description 7
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 239000007787 solid Substances 0.000 abstract description 25
- 230000032683 aging Effects 0.000 abstract description 6
- 238000013500 data storage Methods 0.000 abstract description 5
- 101100231695 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FRT1 gene Proteins 0.000 description 11
- 101100231696 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) FRT2 gene Proteins 0.000 description 10
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 210000004027 cell Anatomy 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004321 preservation Methods 0.000 description 2
- 208000010378 Pulmonary Embolism Diseases 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000008187 granular material Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000005012 migration Effects 0.000 description 1
- 238000013508 migration Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
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/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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- 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
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
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)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种提高数据读取的成功率的方法、装置及介质,应用于固态硬盘技术领域,读取各参考电压下测试样本数据的读操作的成功样本数并计算各成功率,其中成功样本数为以解码单元为单位的测试样本数据的错误比特数小于解码纠错限值的数据;根据各成功率选取对应的参考电压组以生成固定查表;根据固定查表的目标参考电压读取数据。通过收集Nand闪存周期内不同阶段的参考电压候选表所有参考电压的读操作信息的成功率来选取参考电压组生成固定查表,避免在Nand闪存的终期由于芯片的老化导致的参考电压发生偏转从而影响读取数据失败的问题,提高固态硬盘的读操作成功率,提高吞吐量和命中率,保证固态硬盘的数据存储能力。
Description
技术领域
本发明涉及固态硬盘技术领域,特别是涉及一种提高数据读取的成功率的方法、装置及介质。
背景技术
Nand 闪存(Nand Flash)是目前应用广泛的存储介质,其原理是通过存储在存储单元中不同的电荷量呈现出不同的电压值来记录数据。但由于Nand颗粒的电气特性,在其生命周期中随着闪存擦/写次数(Program/Erase counts,PE),数据的保留时间(RetentionTime,RT),读取次数(Read Disturb,RD)等因素的变化,会使存储单元存储电荷的特性发生改变,因此参考电压轴也要随之改变,否则会导致比特出错率(Bit Error Rate,BER)过高,超出解码能力导致读取失败。
通常情况下,普遍通过固定查表( Fixed Read Tables,FRT )解决上述情况,其固定查表的生成是Nand 闪存的生命周期不同阶段的PE、RT、RD三个维度根据生产厂家提供的一份具有多个参考电压候选表,逐步根据每个参考电压下对多个环境周期的三个维度中选择最优的三个参考电压,在Nand 闪存的生命周期的前期选用参考电压候选表生成的固定查表可以提高读取数据的成功率,但Nand 闪存的生命周期有限,尤其在终期时随着芯片的老化,固态硬盘对于数据的存储能力降低,参考电压会发生偏转,降低了固态硬盘的读操作成功率,同时要求达到的吞吐量也很慢,导致命中率降低。
因此,如何提高数据读取的成功率是本领域技术人员亟需要解决的。
发明内容
本发明的目的是提供一种提高数据读取的成功率的方法、装置及介质。提高固态硬盘的读操作成功率,提高吞吐量和命中率。
为解决上述技术问题,本发明提供一种提高数据读取的成功率的方法,包括:
获取参考电压候选表中的多个参考电压和以解码单元为单位的测试样本数据的读操作信息;
读取各参考电压下测试样本数据的读操作的成功样本数并计算各成功率,其中成功样本数为测试样本数据的错误比特数小于解码纠错限值的样本数;
根据各成功率选取对应的参考电压组以生成固定查表;
根据固定查表的目标参考电压读取数据。
优选地,参考电压组包括第一目标参考电压,根据各成功率选取对应的参考电压组以生成固定查表,包括:
将各成功率从大到小进行排序生成成功率表;
在成功率表中选取各成功率大于第一限值对应的参考电压,并将参考电压加入第一候选表中;
选取第一候选表中成功率最大的测试样本数据对应的参考电压作为第一目标参考电压并生成固定查表。
优选地,获取以解码单元为单位的测试样本数据的读操作信息,包括:
获取多个闪存颗粒的存储块数据;
将多个闪存颗粒根据闪存擦/写次数阶段的预设间隔对应不同的闪存擦/写次数阶段,将存储块数据根据数据保留时间阶段的预设间隔对应闪存擦/写次数阶段下的不同数据保留时间阶段;
根据不同数据保留时间阶段的存储块数据执行对应的数据保留时间操作;
根据参考电压候选表中的多个参考电压对数据保留时间阶段对应读干扰操作阶段下的存储块数据进行读操作并记录读操作信息;
将闪存擦/写次数阶段的读操作信息根据固定查表的闪存擦/写次数间隔将对应的读操作信息进行合并得到测试样本数据的读操作信息;
将测试样本数据的读操作信息以存储块形式转换为以解码单元为单位的测试样本数据的读操作信息。
优选地,参考电压组包括第一目标参考电压和第二目标参考电压,根据各成功率选取对应的参考电压组以生成固定查表,包括:
记录在第一目标参考电压下读取测试样本数据的读操作的成功样本数并将测试样本数据失败的数据作为第一位置信息;
在参考电压候选表中选取除第一目标参考电压之外的剩余参考电压并加入第二候选表中;
选取第二候选表中成功率最大的测试样本数据对应的参考电压作为第二目标参考电压;
记录第二目标参考电压读取第一位置信息中的测试样本数据,当第一位置信息中的测试样本数据在第二目标参考电压下读取失败时记录为第二位置信息;
统计第二目标参考电压在第一位置信息中读取的成功样本数据和在第二位置信息下的失败样本数据并计算第一成功率;
在第二候选表中判断第一成功率是否大于第二限值,其中第二限值大于第一限值;
若是,则保存第二目标参考电压;
将第一目标参考电压与第二目标参考电压作为参考电压组生成固定查表。
优选地,参考电压组包括第一目标参考电压、第二目标参考电压和第三目标参考电压,根据各成功率选取对应的参考电压组以生成固定查表,包括:
在第二候选表中选取除第一目标参考电压和第二目标参考电压之外的其他电压并加入第三候选表中;
选取第三候选表中成功率最大的样本数据对应的参考电压作为第三目标参考电压;
记录第三目标参考电压读取第二位置信息中的测试样本数据,当第二位置信息中的测试样本数据在第三目标参考电压下读取失败时记录为第三位置信息;
统计第三目标参考电压在第二位置信息中读取的成功样本数据和在第三位置信息下的失败样本数据并计算第二成功率;
判断第二成功率是否大于第三限值,其中第三限值大于第二限值;
若是,则保存第三目标参考电压;
将第一目标参考电压、第二目标参考电压和第三目标参考电压作为参考电压组生成固定查表。
优选地,还包括:
当读取到多个参考电压下的测试样本数据的错误比特数大于解码纠错的临界值时,则输出提示信息,其中临界值大于解码纠错限值。
优选地,存储块数据以数据保留时间阶段的间隔数的整倍数出现,其中,间隔数为数据保留时间阶段的限值除以数据保留时间阶段的预设间隔加1的数据。
为解决上述技术问题,本发明还提供一种提高数据读取的成功率的装置,包括:
获取模块,用于获取参考电压候选表中的多个参考电压和以解码单元为单位的测试样本数据的读操作信息;
计算模块,用于读取各参考电压下测试样本数据的读操作的成功样本数并计算各成功率,其中成功样本数为测试样本数据的错误比特数小于解码纠错限值的样本数;
生成模块,用于根据各成功率选取对应的参考电压组以生成固定查表;
读取模块,用于根据固定查表的目标参考电压读取数据。
为解决上述技术问题,本发明还提供一种提高数据读取的成功率的装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述提高数据读取的成功率的方法的步骤。
为解决上述技术问题,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述提高数据读取的成功率的方法的步骤。
本发明提供的一种提高数据读取的成功率的方法,获取参考电压候选表中的多个参考电压和以解码单元为单位的测试样本数据的读操作信息;读取各参考电压下测试样本数据的读操作的成功样本数并计算各成功率,其中成功样本数为测试样本数据的错误比特数小于解码纠错限值的样本数;根据各成功率选取对应的参考电压组以生成固定查表;根据固定查表的目标参考电压读取数据。该方法通过收集Nand 闪存周期内不同阶段的参考电压候选表所有参考电压的读操作信息的成功率来选取参考电压组生成固定查表,避免在Nand 闪存的终期由于芯片的老化导致的参考电压发生偏转从而影响读取数据失败的问题,提高固态硬盘的读操作成功率,提高吞吐量和命中率,保证固态硬盘的数据存储能力。
另外,本发明还提供了一种提高数据读取的成功率的装置及介质,具有如上述提高数据读取的成功率的方法相同的有益效果。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种提高数据读取的成功率的方法的流程图;
图2为本发明实施例提供的一种采集样本数据的流程图;
图3为本发明实施例提供的一种提高数据读取的成功率的装置的结构图;
图4为本发明实施例提供的另一种提高数据读取的成功率的装置的结构图;
图5为本发明实施例提供的另一种提高数据读取的成功率的方法的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
本发明的核心是提供一种提高数据读取的成功率的方法、装置及介质。提高固态硬盘的读操作成功率,提高吞吐量和命中率。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
需要说明的是,本发明基于Nand 闪存特性测试中FRT表生成的情况提供一种提高数据读取成功率的方法,由于Nand颗粒的电气特性,其生命周期中PE、RT、RD因素变化,其存储电荷特性发生改变,参考电压轴也随之改变,需要通过FRT表的参考电压读取数据,提高读取成功率。
图1为本发明实施例提供的一种提高数据读取的成功率的方法的流程图,如图1所示,该方法包括:
S11:获取参考电压候选表中的多个参考电压和以解码单元为单位的测试样本数据的读操作信息。
可以理解的是,一块Nand 闪存芯片分为多个存储块(Block),而每一个Block又由多个解码单元(Chunk)构成。闪存由Block组成,是擦除的基本单元。一个Block包含若干个页(Page),本发明基于3D 三层单元 (3 Dimensions Triple-Level Cell,3D TLC)闪存,一个Block包括n个字线(wordline),一个wordline包含3个page,一个page包含4个Chunk,也就是说一个Block包含n*3*4=12n个Chunk。
具体地,测试样本数据以Block形式存在,故在读操作信息时需要转换为以Chunk为单位的测试样本数数据,获取测试样本数据的读操作,也就是将处理好的测试样本数据进行导入至内存的某一区域以便后续的读操作,读取包括数据的文本格式、二进制格式等,对测试样本数据根据参考电压候选表中的多个参考电压进行读取,根据闪存生命周期的不同阶段(PE、RT、RD)形成的三维数据,即一个PE阶段包括多个RT阶段,而一个RT阶段包括多个RD对应的读干扰(Read Disturb,RDD)操作,对于RT阶段中形成了多个环境点,针对每个环境点对应多个参考电压进行读取RDD操作。
读操作信息包括所有参考电压下对Nand 闪存生命周期内的各个环境点进行的读操作,包括读取数据的位置,错误比特数/解码单元(Error bit/Chunk)等,对于不同环境点的数据得到的所有参考电压下的读操作信息可能相同,甚至读取的成功率相差极小,需要将不同PE阶段的数据进行合并得到测试样本数据以简化数据量。
本实施例提到的获取以存储单元为单位的测试样本数据的读操作信息,只是获取一个PE阶段的,其他PE阶段的方法相同,不再赘述。参考电压候选表中的多个参考电压是根据Nand闪存的生产厂商提供的参考电压候选表,由于Nand闪存的生命周期终期的电子老化,导致参考电压轴发生偏转,读取数据的成功率不高,因此,在生产厂商提供的参考电压候选表的参考电压的基础上进行生成FRT表。
S12:读取各参考电压下测试样本数据的读操作的成功样本数并计算各成功率,其中成功样本数为测试样本数据的错误比特数小于解码纠错限值的样本数。
获取一个阶段的测试样本数据后,根据参考电压候选表中的多个参考电压,计算各参考电压下测试样本数据的读操作的成功样本数,由于测试样数据是以Chunk为单位,例如,1个Chunk数据的二进制数据为3万个,在二进制数据中,第3个数按照正确读取应该为0,在参考电压的读取下反位为1,则记为第3个二进制数读取错误,统计1个Chunk的反位情况,如果1个Chunk数据的反位情况大于解码纠错限值,则读取失败,作为失败样本数据记录。
在Nand闪存中都存在BER的问题,随着PE擦写次数增加,BER将逐渐变大,在2DNAND闪存中BCH编码还可以完成纠正,对于TLC出错率太高造成硬盘寿命达不到要求,若为3D TLC Nand出错率比2D MLC Nand高出很多,低密度奇偶校验码(Low Density ParityCheck Code,LDPC)可以充分利用Nand的错误偏移特点进行解码。LDPC分为硬解码和软解码两种,在寿命前中后期大量使用硬解码,到了寿命末期部分数据使用软硬解码,具有同样的低延时特性,其硬解码的纠错能力是BCH的2-3倍。因此,本发明基于LDPC解码纠错机制实现读取各参考电压下测试样本数据的读操作的成功样本数。
需要说明的是,解码纠错限值的设置根据具体Nand 闪存的颗粒型号进行设定,通常情况下设置为200,也就是Error bit/Chunk不超过LDPC解码纠错限值即为读取成功,作为读操作的成功样本数。例如:测试样本数据共有3万个Chunk,读一个Chunk里的数据,如果bit反位超过200,表示该Chunk数据读取失败,并记录该Chunk的位置。记录多个参考电压下的Chunk测试样本数据的读操作的成功样本数,根据成功样本数除以总样本数得到成功率。
S13:根据各成功率选取对应的参考电压组以生成固定查表。
根据得到的各成功率,进行选取合适的参考电压组,生成FRT表,其选取方式可以将各成功率进行排列,其顺序从大到小或者从小到大顺序,选取成功率中最高的成功率对应的参考电压作为参考电压组,或者选取成功率中前几个较高的成功率对应的参考电压作为参考电压组,需要说明的是,参考电压组的参考电压可以为1个,2个,或者3个,不做具体要求,需要根据具体的Nand 闪存的颗粒特性进行设置,当然考虑固态硬盘的读取速度,不需要设置过多的参考电压。
当设置为1个参考电压(A)进行读取数据时,读取速度较快,成功率较高,若1个参考电压读取数据失败则直接跳出读取指令;当设置为2个参考电压(A和B)进行读取数据时,若A参考电压读取数据失败,则在B参考电压下继续读取数据,在B参考电压下读取数据失败时直接跳出读取指令;当设置为3个参考电压(A、B和C),当A、B参考电压下读取数据失败时,可以用C参考电压继续读取数据。
可以理解的是,参考电压组的选取规则是选取大于成功率限值的成功率对应的参考电压,其成功率限值根据Nand 闪存的颗粒型号的实际情况进行设定,在此不做要求。如:参考电压组的目标参考电压为1个,则成功率限值为,参考电压组的目标参考电压为2个,则成功率限值为和,参考电压组的目标参考电压为3个,则成功率限值为、和。
将FRT1,FRT2,FRT3读取成功率分别记为事件A、B、C,读取失败记为非A、非B、非C,根据统计概率公式:
根据上述公式计算参考电压组合的成功率,选取各阶段成功率最高的组合来生成FRT表。
S14:根据固定查表的目标参考电压读取数据。
在生成FRT表后,根据FRT表中的参考电压组选取目标参考电压进行读取数据。
本发明提供的一种提高数据读取的成功率的方法,获取参考电压候选表中的多个参考电压和以解码单元为单位的测试样本数据的读操作信息;读取各参考电压下测试样本数据的读操作的成功样本数并计算各成功率,其中成功样本数为测试样本数据的错误比特数小于解码纠错限值的样本数;根据各成功率选取对应的参考电压组以生成固定查表;根据固定查表的目标参考电压读取数据。该方法通过收集Nand闪存周期内不同阶段的参考电压候选表所有参考电压的读操作信息的成功率来选取参考电压组生成固定查表,避免在Nand 闪存的终期由于芯片的老化导致的参考电压发生偏转从而影响读取数据失败的问题,提高固态硬盘的读操作成功率,提高吞吐量和命中率,保证固态硬盘的数据存储能力。
当参考电压组中包括第一目标参考电压时,其上述实施例中提到的根据各成功率选取对应的参考电压组以生成固定查表,具体包括:
将各成功率从大到小进行排序生成成功率表;
在成功率表中选取各成功率大于第一限值对应的参考电压,并将参考电压加入第一候选表中;
选取第一候选表中成功率最大的测试样本数据对应的参考电压作为第一目标参考电压并生成固定查表。
在上述实施例的基础上,将各成功率从大到小排序生成一个成功率表,在成功率表中选取各成功率大于第一限值对应的参考电压,将大于第一限值对应的参考电压加入第一候选表中,在第一候选表中选取成功率最大的测试样本数据对应的参考电压作为第一目标参考电压(V1),第一目标参考电压作为参考电压组生成FRT表进而根据第一目标参考电压读取数据。
需要说明的是,每个参考电压组有一个目标参考电压,但是会有多个参考电压组,也就是多个目标参考电压,本发明提到的第一目标参考电压是相对于数据的读取成功率最高的参考电压,只要是大于第一限值的参考电压都可作为第一目标参考电压出现,不做具体说明。
本实施例提供的参考电压组中包括第一目标参考电压时,根据各成功率选取对应的参考电压组以生成FRT表,提升固态硬盘的读取数据速度,以一个目标参考电压读取数据,当读取数据失败时,则会直接跳转出。
在上述实施例的基础上,获取以解码单元为单位的测试样本数据的读操作信息,具体包括:
获取多个闪存颗粒的存储块数据;
将多个闪存颗粒根据闪存擦/写次数阶段的预设间隔对应不同的闪存擦/写次数阶段,将存储块数据根据数据保留时间阶段的预设间隔对应闪存擦/写次数阶段下的不同数据保留时间阶段;
根据不同数据保留时间阶段的存储块数据执行对应的数据保留时间操作;
根据参考电压候选表中的多个参考电压对数据保留时间阶段对应读干扰操作阶段下的存储块数据进行读操作并记录读操作信息;
将闪存擦/写次数阶段的读操作信息根据数据保留时间固定查表的闪存擦/写次数间隔将对应的读操作信息进行合并得到测试样本数据的读操作信息;
将测试样本数据的读操作信息以存储块形式转换为以解码单元为单位的测试样本数据的读操作信息。
需要说明的是,闪存颗粒是一种非易失性存储器,是固态硬盘中负责容量存储和传输的介质,即在断电的情况下依旧可以保存已经写入的数据,而且是以固定的区块(Block)为单位,而不是以单个字节为单位,根据Nand闪存中电子单元密度的差异,可以分为SLC、MLC以及TLC,此三种存储单元在寿命以及造价上有着明显的区别。其中对于Nand闪存包括2D和3D,不同点在于垂直方向堆叠的颗粒层数不同和选用的颗粒种类不同。3D NAND技术能够在同等体积下,提供更多的存储空间。本发明对于颗粒类型不做具体要求,根据实际情况进行设定。
以3D TLC颗粒为例,假设3D TLC的PE、RT、RDD最大值分别为7K、90d、10K ,LDPC解码纠错限值为200,参考电压候选表中参考电压数为y。将PE、RT、RDD阶段测试间隔分别设置为500、10d和5000,每个颗粒有n个block数据,一个颗粒对应一个PE阶段,选取15个3D TLC颗粒对应15个PE阶段(0-500、500-1000、1000-1500……),将一个颗粒对应的n个Block根据RT预设间隔以及最大值的关系,得出PE阶段下的RT阶段数量,最大值90d除以预设间隔得到的数量加1为RT阶段数量(90d/10d+1=10),也就是一个PE阶段下包括10个RT阶段(0、10d、20d、30d……),将n个测试Block均分为10份对应不同的RT阶段,一个RT阶段下根据RDD最大值10K与对应的RDD预设间隔得到(10K/5000+1=3),也就是一个RT阶段有3个RDD阶段(0、5000、10K),需要说明的是,RDD读干扰越多,其bit错误率越高,针对一个环境点(0-500,0,0)分别对y个参考电压进行读取采集样本数据。同时,根据参考电压的y值进行累加RDD操作次数,如果y值较大,则需要执行RDD操作为当前的读干扰次数加预设间隔再减去y的值以到达下一个RDD操作进行执行,如果y值较小,则需要执行RDD操作为当前的读干扰次数加预设间隔以到达下一个RDD操作执行,具体根据实际情况进行设定。
需要说明的是,RT阶段对于不同型号的颗粒其限值不同,与固态硬盘运行时的温度有关,若实际温度较高,则RT限值缩短,实际温度与RT限值呈线性关系出现,实际RT阶段的保留时间较短,根据具体情况进行设置。
将测试Block擦写到对应的PE阶段,如对应1000PE的颗粒,需将其测试Block擦写到1000次。对应不同RT阶段的Block数据执行对应的RT操作,在RT操作下对应不同的RDD操作,用参考电压候选表中的y个参考电压依次对测试Block进行读操作并记录读操作信息,同时执行RDD读干扰操作,当一个环境点读取完成时,则继续遍历下一个环境点直到所有的环境点读取完成。
图2为本发明实施例提供的一种采集样本数据的流程图,如图2所示,该步骤具体为:
S21:输入对应的PE阶段;
S22:执行对应PE次数的PE操作;
S23:判断RT阶段对否大于RT的临界值,若是,则结束,若否,则进入步骤S24;
S24:判断当前的Block数据是否为当前的RT阶段的测试Block,若否,则进入步骤S25,若是,则进入步骤S26;
S25:在当前RT操作的基础上增加一个RT操作对应的预设间隔进行执行并返回至步骤S23;
S26:判断当前的RDD操作是否大于RDD操作的临界值,若是,则结束,若否,则进入步骤S27;
S27:参考电压候选表中的y个参考电压依次对测试Block进行读操作并记录读操作信息;
S28:在当前执行RDD操作的基础上增加一个RDD操作对应的预设间隔减去y进行执行并返回至步骤S26。
需要说明的是,图2针对一个PE阶段进行的读取操作采集的测试样本,需要对多个PE阶段同时进行读操作采集,最后,按照FRT表间隔拆分/合并测试样本数据,FRT表中每个阶段对应一个测试数据样本集。例如:FRT表中PE间隔0-1500为一个阶段,则需要将测试中多个PE阶段(0-500,500-1000,1000-1500)的对应的测试样本合并为一个样本集,也就是对应FRT表中的一个PE阶段。将测试样本数据的读操作信息以Block形式转换为以Chunk单位的测试样本数据的读操作信息,其转换算法在上述实施例中提到,在此不再赘述。
本实施例提供的获取以解码单元为单位的测试样本数据的读操作信息,对数据预先处理,对于不同闪存擦/写次数阶段的存储块数据同时处理,减少测试周期,由于各个数据对应读取的成功率相差极小,预先对相差较小的成功率的数据进行合并,提高读取速度。
在上述实施例的基础上,当参考电压组包括两个目标参考电压时,分别为第一目标参考电压和第二目标参考电压,根据各成功率选取对应的参考电压组以生成固定查表,包括:
记录在第一目标参考电压下读取测试样本数据的读操作的成功样本数并将测试样本数据失败的数据作为第一位置信息;
在参考电压候选表中选取除第一目标参考电压之外的剩余参考电压并加入第二候选表中;
选取第二候选表中成功率最大的测试样本数据对应的参考电压作为第二目标参考电压;
记录第二目标参考电压读取第一位置信息中的测试样本数据,当第一位置信息中的测试样本数据在第二目标参考电压下读取失败时记录为第二位置信息;
统计第二目标参考电压在第一位置信息中读取的成功样本数据和在第二位置信息下的失败样本数据并计算第一成功率;
在第二候选表中判断第一成功率是否大于第二限值,其中第二限值大于第一限值;
若是,则保存第二目标参考电压;
将第一目标参考电压与第二目标参考电压作为参考电压组生成固定查表。
在选出第一目标参考电压后,将以第一目标参考电压(V1)读取测试样本数据,记录读取失败样本的位置信息,其失败样本数为和成功样本总数。可以理解的是,在第一候选表中有多个参考电压,其中在多个参考电压下读取数据的成功率大于第一限值,已经选取V1,对于第一候选表中除V1之外的剩余参考加入FRT2表,并找到成功率最大的测试样本数据对应的参考电压作为第二目标参考电压V2,在失败样本数标记为第一位置信息,在第一位置信息上以V2第二目标参考电压读取失败样本数,若读取失败,则记录失败的位置信息为第二位置信息,并统计失败样本总数和成功样本总数,其中为在第一位置信息上以V2读取成功的样本数,计算组合的第一成功率,其计算方式为:
需要说明的是,每个参考电压组有两个目标参考电压,但是会有多个参考电压组,也就是多个目标参考电压,本发明提到的第一目标参考电压和第二目标参考电压是相对于数据的读取成功率最高的参考电压,只要是大于第一限值的参考电压都可作为第一目标参考电压出现,大于第二限值的参考电压都可作为第二目标参考电压出现,例如:第一候选表中满足大于第一限值的有5个参考电压(A、B、C、D、E),其中A作为第一目标参考电压,则第二候选表中有除A之外的4个参考电压,根据读取计算,B作为第二目标参考电压,A+B组合为优选地最高读取成功率,在此情况下,需要在A作为第一目标参考电压的基础上,遍历C、D、E是否满足大于第二限值,若大于,则保存,除此之外,在B作为第一目标参考电压的基础上,遍历剩余的4个参考电压作为第二目标参考电压,以此类推,得到20种组合,找到满足限值的情况生成FRT表,不做具体说明。
本实施例提供的参考电压组中包括两个目标参考电压时,分别为第一目标参考电压和第二目标参考电压,根据各成功率选取对应的参考电压组以生成固定查表,保证数据读取的成功率,以第一目标参考电压读取数据失败时,则会根据第二目标参考电压进行读取数据,若读取失败,则直接跳转出,若读取成功,则作为目标参考电压。
在上述实施例的基础上,当参考电压组包括第一目标参考电压、第二目标参考电压和第三目标参考电压,根据各成功率选取对应的参考电压组以生成固定查表,包括:
在第二候选表中选取除第一目标参考电压和第二目标参考电压之外的其他电压并加入第三候选表中;
选取第三候选表中成功率最大的样本数据对应的参考电压作为第三目标参考电压;
记录第三目标参考电压读取第二位置信息中的测试样本数据,当第二位置信息中的测试样本数据在第三目标参考电压下读取失败时记录为第三位置信息;
统计第三目标参考电压在第二位置信息中读取的成功样本数据和在第三位置信息下的失败样本数据并计算第二成功率;
判断第二成功率是否大于第三限值,其中第三限值大于第二限值;
若是,则保存第三目标参考电压;
将第一目标参考电压、第二目标参考电压和第三目标参考电压作为参考电压组生成固定查表。
在选出第一目标参考电压和第二目标参考电压后,在上述实施例的基础上,在第二候选表中去掉V2剩余的其他参考电压加入第三候选表中,进而选取第三候选表中成功率最大的样本数据对应的参考电压作为第三目标参考电压(V3),以V3目标参考电压读取第二位置信息上的失败数据,并统计失败样本总数和成功的样本总数,其中为在第一位置信息上以V1读取失败的基础上,再以V2读取失败得到的第二位置信息,进而以V3读取第二位置信息成功的样本数,计算组合的第二成功率,其计算方式为:
判断第二成功率是否大于第三限值,其中第三限值大于第二限值,若大于第三限值,则说明V3可以作为第三目标参考电压并进行保存,将第一目标参考电压、第二目标参考电压和第三目标参考电压作为参考电压组生成FRT表。
结合上述的例子,每个参考电压组有三个目标参考电压,第一候选表中满足大于第一限值的有5个参考电压(A、B、C、D、E),其中A作为第一目标参考电压,则第二候选表中有除A之外的4个参考电压,根据读取计算,B作为第二目标参考电压,A+B组合为优选地最高读取成功率,第三候选表中只存在C、D、E3个参考电压,根据读取计算成功率,假设C为第三候选表中成功率最大的对应参考电压,即A+B+C组合为优选地最高读取成功率,在此情况下,需要在B作为第二目标参考电压的基础上,遍历D、E是否大于第三限值,若大于,则保存,进而回到需要在A作为第一目标参考电压的基础上,遍历C、D、E是否大于第二限值,若大于,则保存,除此之外,在B作为第一目标参考电压的基础上,遍历剩余的4个参考电压作为第二目标参考电压,以此类推,得到60种组合,找到满足限值的情况生成FRT表,不做具体说明。
需要说明的是,本发明可以根据实际情况,闪存颗粒的型号选取参考电压组合的大于3个目标参考电压的参考电压,若选取第四参考电压,则需要生成第四候选表进而在第四候选表中选取成功率最大的测试样本对应的参考电压作为第四目标参考电压出现。通常情况下,3个目标参考电压居多,若选取较多的目标参考电压,则说明固态硬盘的读取成功率较低,字节错误率较高,不作为下一次的尝试。
本实施例提供的参考电压组中包括三个目标参考电压时,分别为第一目标参考电压、第二目标参考电压和第三目标参考电压,根据各成功率选取对应的参考电压组以生成固定查表,提升固态硬盘的读取数据成功率,以第一目标参考电压读取数据失败时,则会根据第二目标参考电压进行读取数据,若读取失败,根据第三目标参考电压进行读取数据,若读取失败,则直接跳转出,若读取成功,则作为目标参考电压。
在上述实施例的基础上,步骤S12中的成功样本数为测试样本数据的错误比特数小于解码纠错限值的数据,其解码纠错限值还包括:
当读取到多个参考电压下的测试样本数据的错误比特数大于解码纠错的临界值时,则输出提示信息,其中临界值大于解码纠错限值。
当测试样本数据的Error bit/Chunk大于解码纠错限值时,则读取失败,对于解码纠错存在临界值,当Error bit/Chunk大于解码纠错的临界值时,则说明测试样本数据的读取出现其他错误,可能是固态硬盘的生命周期读取数据失败,导致BER过高,解码出现的错误信息过多,因此,当测试样本数据的Error bit/Chunk大于解码纠错的临界值时,则输出提示信息以提醒用户及时检查。通常情况下,解码纠错限值设置为200,其临界值设置为250,需要说明的是,解码纠错的临界值根据具体Nand 闪存的颗粒型号进行设定,在此不做要求。
提示信息的形式不做具体要求,可以是在显示页面弹出对话框,还可以是设置代码程序,当超出解码纠错的临界值时,则显示错误提示运行代码错误等形式,本发明不做具体要求。
本实施例提供的当读取到多个参考电压下的测试样本数据的错误字节存储单元大于解码纠错的临界值时,则输出提示信息,方便用户了解当前数据的读取情况,以便用户及时检查固态硬盘。
具体地,在获取以存储单元为单位的测试样本数据的读操作信息中,获取多个闪存颗粒的存储块数据, 存储块数据以数据保留时间阶段的间隔数的整倍数出现,其中,间隔数为数据保留时间阶段的限值除以数据保留时间阶段的预设间隔加1的数据。
在上述的实施例中,每个颗粒有n个Block数据,一个颗粒对应一个PE阶段,选取15个3D TLC颗粒对应15个PE阶段(0-500、500-1000、1000-1500……),将一个颗粒对应的n个Block根据RT预设间隔以及最大值的关系,得出PE阶段下的RT阶段数量,最大值90d除以测试间隔得到的数量加1为RT阶段数量(90d/10d+1=10),也就是一个PE阶段下包括10个RT阶段(0、10d、20d、30d……),将n个测试Block均分为10份对应不同的RT阶段,n个Block数据以10的倍数形式出现,以便实现对n个测试Block在进行RT阶段时进行均分,保证数据的完整性测试。
本实施例提供的存储块数据以数据保留时间阶段的间隔数的整倍数出现,便于存储块测试数据在数据保留时间阶段根据对应的间隔数进行均分,保证数据的完成性测试。
上述详细描述了提高数据读取的成功率的方法对应的各个实施例,在此基础上,本发明还公开与上述方法对应的提高数据读取的成功率的装置,图3为本发明实施例提供的一种提高数据读取的成功率的装置的结构图。如图3所示,提高数据读取的成功率的装置包括:
获取模块11,用于获取参考电压候选表中的多个参考电压和以解码单元为单位的测试样本数据的读操作信息;
计算模块12,用于读取各参考电压下测试样本数据的读操作的成功样本数并计算各成功率,其中成功样本数为测试样本数据的错误比特数小于解码纠错限值的样本数;
生成模块13,用于根据各成功率选取对应的参考电压组以生成固定查表;
读取模块14,用于根据固定查表的目标参考电压读取数据。
由于装置部分的实施例与上述的实施例相互对应,因此装置部分的实施例请参照上述装置部分的实施例描述,在此不再赘述。
本发明提供的一种提高数据读取的成功率的装置,获取参考电压候选表中的多个参考电压和以解码单元为单位的测试样本数据的读操作信息;读取各参考电压下测试样本数据的读操作的成功样本数并计算各成功率,其中成功样本数为测试样本数据的错误比特数小于解码纠错限值的样本数;根据各成功率选取对应的参考电压组以生成固定查表;根据固定查表的目标参考电压读取数据。该装置通过收集Nand 闪存周期内不同阶段的参考电压候选表所有参考电压的读操作信息的成功率来选取参考电压组生成固定查表,避免在Nand闪存的终期由于芯片的老化导致的参考电压发生偏转从而影响读取数据失败的问题,提高固态硬盘的读操作成功率,提高吞吐量和命中率,保证固态硬盘的数据存储能力。
请参照图4为本发明实施例提供的另一种提高数据读取的成功率的装置的结构图,如图4所示,该装置包括:
存储器21,用于存储计算机程序;
处理器22,用于执行计算机程序时实现提高数据读取的成功率的方法的步骤。
本实施例提供的提高数据读取的成功率的装置可以包括但不限于平板电脑、笔记本电脑或者台式电脑等。
其中,处理器22可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器22可以采用数字信号处理器 (Digital Signal Processor,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列 (Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器22也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(CentralProcessing Unit,CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器22可以在集成有图像处理器 (Graphics Processing Unit,GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器22还可以包括人工智能 (Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器21可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器21还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器21至少用于存储以下计算机程序201,其中,该计算机程序被处理器22加载并执行之后,能够实现前述任一实施例公开的提高数据读取的成功率的方法的相关步骤。另外,存储器21所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括Windows、Unix、Linux等。数据203可以包括但不限于提高数据读取的成功率的方法所涉及到的数据等等。
在一些实施例中,提高数据读取的成功率的装置还可包括有显示屏23、输入输出接口24、通信接口25、电源26以及通信总线27。
领域技术人员可以理解,图4为本发明实施例提供的另一种提高数据读取的成功率的装置的结构图。图4中示出的结构并不构成对提高数据读取的成功率的装置的限定,可以包括比图示更多或更少的组件。
处理器22通过调用存储于存储器21中的指令以实现上述任一实施例所提供的提高数据读取的成功率的方法。
本发明提供的一种提高数据读取的成功率的装置,获取参考电压候选表中的多个参考电压和以解码单元为单位的测试样本数据的读操作信息;读取各参考电压下测试样本数据的读操作的成功样本数并计算各成功率,其中成功样本数为测试样本数据的错误比特数小于解码纠错限值的样本数;根据各成功率选取对应的参考电压组以生成固定查表;根据固定查表的目标参考电压读取数据。该装置通过收集Nand 闪存周期内不同阶段的参考电压候选表所有参考电压的读操作信息的成功率来选取参考电压组生成固定查表,避免在Nand 闪存的终期由于芯片的老化导致的参考电压发生偏转从而影响读取数据失败的问题,提高固态硬盘的读操作成功率,提高吞吐量和命中率,保证固态硬盘的数据存储能力。
进一步的,本发明还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器22执行时实现如上述提高数据读取的成功率的方法的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本发明提供的一种计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不再赘述,其具有上述提高数据读取的成功率的方法相同的有益效果。
为了使本领域的技术人员更好的理解本发明的技术方案,下面结合附图、本发明实施例提供的提高数据读取的成功率的方法、装置及介质,作进一步的详细说明。
图5为本发明实施例提供的另一种提高数据读取的成功率的方法的流程图,如图5所示,该流程图包括:
S31:输入当前阶段的数据样本集;
S32:计算y个参考电压的读成功率并排序生成成功率表;
S33:选取成功率表中符合FRT1限值成功率要求的参考电压生成FRT1候选表;
S34:遍历FRT1候选表,并选取FRT1候选表中的一个参考电压记为V1,判断是否为最后一个参考电压,若是,则结束,若否,则进入步骤S35;
S35:判断V1的成功率是否为1,若是,则进入步骤S36,若否,则进入步骤S37;
S36:保存V1并进入步骤S34;
S37:统计V1读取失败位置及失败样本总数;
S38:将成功率表中V1位置之后的参考电压生成FRT2候选表;
S39:遍历FRT2候选表,并选取FRT2候选表中的一个参考电压记为V2,判断是否为最后一个参考电压,若是,则返回至步骤S34,若否,则进入步骤S40;
S40:计算在V1位置失败的基础上读取V2的成功率;
S41:判断V2的成功率是否为1,若是,则进入步骤S42,若否,则进入步骤S43;
S42:保存V1+V2并进入步骤S39;
S43:当成功率满足FRT1+FRT2要求的V1+V2组合时,统计V2读取失败位置及样本总数;
S44:FRT2候选表去掉当前遍历的V2,生成FRT3候选表;
S45:遍历FRT3候选表,并选取FRT3候选表中的一个参考电压记为V3,判断是否为最后一个参考电压,若是,则返回至步骤S39,若否,则进入步骤S46;
S46:计算在V2位置失败的基础上读取V3的成功率并满足FRT1+FRT2+ FRT3成功率要求时,则保存V1+V2+V3组合,并返回至步骤S45。
需要说明的是,本实施例提供的参考电压组选取三个目标参考电压,对y个参考电压进行遍历,将满足成功率要求的所有参考电压组合进行保存生成FRT表,最后按照成功率进行排序,选择最优的参考电压FRT1,FRT2,FRT3组合。
上文通过对本发明实施例提供的另一种提高数据读取的成功率的方法的流程图进行了介绍,具有与上述提到的提高数据读取的成功率的方法相同的有益效果。
以上对本发明所提供的一种提高数据读取的成功率的方法、装置及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (9)
1.一种提高数据读取的成功率的方法,其特征在于,包括:
获取参考电压候选表中的多个参考电压和以解码单元为单位的测试样本数据的读操作信息,其中,获取所述以解码单元为单位的测试样本数据的读操作信息,具体通过以下步骤获得:
获取多个闪存颗粒的存储块数据;
将多个所述闪存颗粒根据闪存擦/写次数阶段的预设间隔对应不同的闪存擦/写次数阶段,将所述存储块数据根据数据保留时间阶段的预设间隔对应所述闪存擦/写次数阶段下的不同数据保留时间阶段;
根据不同所述数据保留时间阶段的所述存储块数据执行对应的数据保留时间操作;
根据所述参考电压候选表中的多个参考电压对所述数据保留时间阶段下对应读干扰操作阶段下的所述存储块数据进行读操作并记录所述读操作信息;
将所述闪存擦/写次数阶段的所述读操作信息根据所述参考电压候选表对应的闪存擦/写次数间隔将对应的所述读操作信息进行合并得到所述测试样本数据的读操作信息;
将所述测试样本数据的读操作信息以存储块形式转换为以所述解码单元为单位的所述测试样本数据的读操作信息;
读取各所述参考电压下所述测试样本数据的读操作的成功样本数并计算各成功率,其中所述成功样本数为所述测试样本数据的错误比特数小于解码纠错限值的样本数;
根据各所述成功率选取对应的参考电压组以生成固定查表;
根据所述固定查表的目标参考电压读取所述数据。
2.根据权利要求1所述的提高数据读取的成功率的方法,其特征在于,所述参考电压组包括第一目标参考电压,所述根据各所述成功率选取对应的参考电压组以生成固定查表,包括:
将各所述成功率从大到小进行排序生成成功率表;
在所述成功率表中选取各所述成功率大于第一限值对应的参考电压,并将所述参考电压加入第一候选表中;
选取所述第一候选表中成功率最大的测试样本数据对应的参考电压作为所述第一目标参考电压并生成所述固定查表。
3.根据权利要求2所述的提高数据读取的成功率的方法,其特征在于,所述参考电压组包括所述第一目标参考电压和第二目标参考电压,所述根据各所述成功率选取对应的参考电压组以生成固定查表,包括:
记录在所述第一目标参考电压下读取所述测试样本数据的读操作的成功样本数并将所述测试样本数据失败的数据作为第一位置信息;
在所述参考电压候选表中选取除所述第一目标参考电压之外的剩余参考电压并加入第二候选表中;
选取所述第二候选表中成功率最大的测试样本数据对应的参考电压作为所述第二目标参考电压;
记录所述第二目标参考电压读取所述第一位置信息中的测试样本数据,当所述第一位置信息中的测试样本数据在所述第二目标参考电压下读取失败时记录为第二位置信息;
统计所述第二目标参考电压在所述第一位置信息中读取的成功样本数据和在所述第二位置信息下的失败样本数据并计算第一成功率;
在所述第二候选表中判断所述第一成功率是否大于第二限值,其中所述第二限值大于所述第一限值;
若是,则保存所述第二目标参考电压;
将所述第一目标参考电压与所述第二目标参考电压作为所述参考电压组生成所述固定查表。
4.根据权利要求3所述的提高数据读取的成功率的方法,其特征在于,所述参考电压组包括所述第一目标参考电压、所述第二目标参考电压和第三目标参考电压,所述根据各所述成功率选取对应的参考电压组以生成固定查表,包括:
在所述第二候选表中选取除所述第一目标参考电压和所述第二目标参考电压之外的其他电压并加入第三候选表中;
选取所述第三候选表中成功率最大的样本数据对应的参考电压作为所述第三目标参考电压;
记录所述第三目标参考电压读取所述第二位置信息中的测试样本数据,当所述第二位置信息中的测试样本数据在所述第三目标参考电压下读取失败时记录为第三位置信息;
统计所述第三目标参考电压在所述第二位置信息中读取的成功样本数据和在所述第三位置信息下的失败样本数据并计算第二成功率;
判断所述第二成功率是否大于第三限值,其中所述第三限值大于所述第二限值;
若是,则保存所述第三目标参考电压;
将所述第一目标参考电压、所述第二目标参考电压和所述第三目标参考电压作为所述参考电压组生成所述固定查表。
5.根据权利要求1所述的提高数据读取的成功率的方法,其特征在于,还包括:
当读取到多个所述参考电压下的所述测试样本数据的错误比特数大于所述解码纠错的临界值时,则输出提示信息,其中所述临界值大于所述解码纠错限值。
6.根据权利要求1所述的提高数据读取的成功率的方法,其特征在于,所述存储块数据以所述数据保留时间阶段的间隔数的整倍数出现,其中,所述间隔数为所述数据保留时间阶段的限值除以所述数据保留时间阶段的预设间隔加1的数据。
7.一种提高数据读取的成功率的装置,其特征在于,包括:
获取模块,用于获取参考电压候选表中的多个参考电压和以解码单元为单位的测试样本数据的读操作信息,其中,所述获取模块的获取所述以解码单元为单位的测试样本数据的读操作信息,具体通过以下步骤获得:
获取多个闪存颗粒的存储块数据;
将多个所述闪存颗粒根据闪存擦/写次数阶段的预设间隔对应不同的闪存擦/写次数阶段,将所述存储块数据根据数据保留时间阶段的预设间隔对应所述闪存擦/写次数阶段下的不同数据保留时间阶段;
根据不同所述数据保留时间阶段的所述存储块数据执行对应的数据保留时间操作;
根据所述参考电压候选表中的多个参考电压对所述数据保留时间阶段下对应读干扰操作阶段下的所述存储块数据进行读操作并记录所述读操作信息;
将所述闪存擦/写次数阶段的所述读操作信息根据所述参考电压候选表对应的闪存擦/写次数间隔将对应的所述读操作信息进行合并得到所述测试样本数据的读操作信息;
将所述测试样本数据的读操作信息以存储块形式转换为以所述解码单元为单位的所述测试样本数据的读操作信息;
计算模块,用于读取各所述参考电压下所述测试样本数据的读操作的成功样本数并计算各成功率,其中所述成功样本数为所述测试样本数据的错误比特数小于解码纠错限值的样本数;
生成模块,用于根据各所述成功率选取对应的参考电压组以生成固定查表;
读取模块,用于根据所述固定查表的目标参考电压读取所述数据。
8.一种提高数据读取的成功率的装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的提高数据读取的成功率的方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的提高数据读取的成功率的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210034592.3A CN114047887B (zh) | 2022-01-13 | 2022-01-13 | 一种提高数据读取的成功率的方法、装置及介质 |
PCT/CN2022/102868 WO2023134132A1 (zh) | 2022-01-13 | 2022-06-30 | 一种提高数据读取的成功率的方法、装置及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210034592.3A CN114047887B (zh) | 2022-01-13 | 2022-01-13 | 一种提高数据读取的成功率的方法、装置及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114047887A CN114047887A (zh) | 2022-02-15 |
CN114047887B true CN114047887B (zh) | 2022-04-22 |
Family
ID=80196443
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210034592.3A Active CN114047887B (zh) | 2022-01-13 | 2022-01-13 | 一种提高数据读取的成功率的方法、装置及介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114047887B (zh) |
WO (1) | WO2023134132A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114047887B (zh) * | 2022-01-13 | 2022-04-22 | 苏州浪潮智能科技有限公司 | 一种提高数据读取的成功率的方法、装置及介质 |
CN115295048A (zh) * | 2022-07-28 | 2022-11-04 | 山东华芯半导体有限公司 | 一种nand flash的最优固定电压轴的筛选方法 |
CN115793991B (zh) * | 2023-01-20 | 2023-04-14 | 苏州浪潮智能科技有限公司 | 一种数据的读取方法、装置、电子设备及可读存储介质 |
CN117420963B (zh) * | 2023-12-18 | 2024-02-23 | 合肥康芯威存储技术有限公司 | 一种存储器及其控制方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9563502B1 (en) * | 2013-12-20 | 2017-02-07 | Seagate Technology Llc | Read retry operations with read reference voltages ranked for different page populations of a memory |
CN106816179B (zh) * | 2015-11-30 | 2020-12-25 | 华为技术有限公司 | 一种闪存纠错方法和装置 |
US10025661B1 (en) * | 2016-12-27 | 2018-07-17 | Sandisk Technologies Llc | Adaptive hard and soft bit decoding |
US10395728B2 (en) * | 2018-06-26 | 2019-08-27 | Intel Corporation | Demarcation voltage determination via write and read temperature stamps |
CN109144771A (zh) * | 2018-09-10 | 2019-01-04 | 浪潮电子信息产业股份有限公司 | 一种纠错方法、系统、装置及计算机可读存储介质 |
CN109660263B (zh) * | 2018-11-22 | 2022-07-05 | 华中科技大学 | 一种适用于mlc nand闪存的ldpc码译码方法 |
CN110390987A (zh) * | 2019-06-22 | 2019-10-29 | 合肥致存微电子有限责任公司 | 一种数据加速重读的方法以及存储设备 |
CN111309544B (zh) * | 2020-02-11 | 2021-01-26 | 上海威固信息技术股份有限公司 | 一种读参考电压受多维因子影响的预测建模及施加方法 |
CN113625947B (zh) * | 2021-06-28 | 2023-08-25 | 苏州浪潮智能科技有限公司 | 一种数据纠错方法、装置、设备及计算机可读存储介质 |
CN114047887B (zh) * | 2022-01-13 | 2022-04-22 | 苏州浪潮智能科技有限公司 | 一种提高数据读取的成功率的方法、装置及介质 |
-
2022
- 2022-01-13 CN CN202210034592.3A patent/CN114047887B/zh active Active
- 2022-06-30 WO PCT/CN2022/102868 patent/WO2023134132A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023134132A1 (zh) | 2023-07-20 |
CN114047887A (zh) | 2022-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114047887B (zh) | 一种提高数据读取的成功率的方法、装置及介质 | |
US11074125B2 (en) | Data storage system and method for decoding data based on extrapolated flipped-bit data | |
KR101981355B1 (ko) | 메모리 시스템들을 위한 소프트 정보 생성 | |
US20110258495A1 (en) | Methods of calculating compensation voltage and adjusting threshold voltage and memory apparatus and controller | |
US20120072805A1 (en) | Memory storage device, memory controller thereof, and method thereof for generating log likelihood ratio | |
US20210027845A1 (en) | Read retry threshold voltage selection | |
CN111192620B (zh) | 一种SSD中优化NAND Flash读参考电压的方法 | |
US20220027083A1 (en) | Regression Neural Network for Identifying Threshold Voltages to be Used in Reads of Flash Memory Devices | |
US20110078541A1 (en) | Storage device and data process method | |
US20080320064A1 (en) | Method and apparatus for controlling reading level of memory cell | |
KR20130130485A (ko) | 비트 상태 맵핑 동작을 수행하는 코드 변조 인코더와 코드 변조 디코더를 포함하는 메모리 컨트롤러, 그것을 포함하는 데이터 저장 장치 및 플래시 메모리 시스템 | |
KR20130027138A (ko) | 에러 정정 방법 및 이를 이용하는 메모리 장치 | |
CN111813591B (zh) | Nand Flash的数据纠错方法、装置、电子设备及存储介质 | |
US11630722B2 (en) | Method and system for decoding data based on association of first memory location and second memory location | |
CN111078123A (zh) | 一种闪存块的磨损程度的评估方法及装置 | |
CN108255634A (zh) | 一种数据读取方法及装置 | |
CN115237351B (zh) | Nand块动态重映射、读写命令处理方法及存储设备 | |
CN108962322B (zh) | 使用非易失性存储器来实施非易失性计数器的方法和系统 | |
CN110673788A (zh) | 固态硬盘的数据读取方法、装置、设备及可读存储介质 | |
CN115810386A (zh) | 闪存块的寿命预测方法、闪存设备及存储介质 | |
JP2001250386A (ja) | 半導体メモリ | |
CN114822675A (zh) | 存储器检测方法及装置、电子设备和存储介质 | |
CN113419682A (zh) | 一种数据处理方法、装置和计算机闪存设备 | |
CN114968650B (zh) | 数据巡检方法及装置、介质、ssd设备 | |
US12039176B2 (en) | Providing multiple error correction code protection levels in memory |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220831 Address after: Room 401, 4th Floor, Gangsheng Building, No. 2177 Gangxi Road, High-tech Zone, Jinan City, Shandong Province, 250000 Patentee after: Shandong Yunhai guochuang cloud computing equipment industry innovation center Co.,Ltd. Address before: Building 9, No.1, guanpu Road, Guoxiang street, Wuzhong Economic Development Zone, Wuzhong District, Suzhou City, Jiangsu Province Patentee before: SUZHOU LANGCHAO INTELLIGENT TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |