CN112420111B - 一种NANDFlash LUN自组读电压序列的方法 - Google Patents
一种NANDFlash LUN自组读电压序列的方法 Download PDFInfo
- Publication number
- CN112420111B CN112420111B CN202011331568.3A CN202011331568A CN112420111B CN 112420111 B CN112420111 B CN 112420111B CN 202011331568 A CN202011331568 A CN 202011331568A CN 112420111 B CN112420111 B CN 112420111B
- Authority
- CN
- China
- Prior art keywords
- lun
- optimal
- voltage
- block
- searching
- 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 16
- 238000007689 inspection Methods 0.000 claims abstract description 7
- 230000014759 maintenance of location Effects 0.000 claims description 9
- 230000007613 environmental effect Effects 0.000 abstract description 2
- 238000013500 data storage Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3404—Convergence or correction of memory cell threshold voltages; Repair or recovery of overerased or overprogrammed cells
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开一种NANDFlash LUN自组读电压序列的方法,本方法在每一种影响因素到达一定步长阈值时应该进行一次电压值序列的查找,当NAND内Block状态巡检时发现某LUN内首个Block接近影响因素步长阈值时,查找该Block各个Wordline分组在当前环境条件下的最优读电压值序列,并将该条件与读电压值序列保存在内存内。当该LUN内其他Block达到影响因素步长阈值时,首先查找是否已经存在该影响因素步长阈值条件下的读电压值序列,如果存在直接使用。本方法可以在NAND Flash每个LUN内根据实际运行环境自组最优电压序列,有效减少读错误数和读操作错误率,极大提高SSD运行时效率和对不同环境的适应性。
Description
技术领域
本发明涉及存储领域,具体的说,是一种NANDFlash LUN自组读电压序列的方法。
背景技术
NAND Flash在使用过程中会有很多影响读取数据准确性的因素,比如磨损次数(PE Cycle)、数据保存时长(Data Retention)、温度(Temperature)、读干扰(ReadDisturb)、驻留时间(Dwell Time)等等。当受到这些因素干扰时,如果仍然使用NAND Flash默认电压读取数据很可能会导致错误数较多而读取失败。
如果在测试环境内模拟各个因素的影响效果,查找出在影响因素下可以正确读取数据的电压序列,在使用中根据影响因素查找匹配的电压序列进行读取即可。但是这种方法存在一个测试环境与实际使用环境不同的关键分析点,通过测试环境查找的电压序列在实际使用环境内可能不能有效进行纠错。
发明内容
针对现有技术的缺陷,本发明提供一种NANDFlash LUN自组读电压序列的方法,在NAND Flash每个LUN内根据实际运行环境自组最优电压序列,有效减少读错误数和读操作错误率。
为了解决所述技术问题,本发明采用的技术方案是:一种NANDFlash LUN自组读电压序列的方法,其特征在于:包括以下步骤:
S01)、确定NANDFlash读电压的影响因素,确定影响因素的基数和步长;
S02)、Block状态定时巡检,定时巡检以LUN为单位、对LUN内所有Block进行巡检,将LUN内首个达到影响因素步长阈值的Block放入查找最优电压值序列的队列内,然后根据影响因素查找最优读电压V1;
S03)、将最优读电压V1和最优读电压V1对应的影响因素保存起来;
S04)、当同一LUN内有Block达到影响因素条件时,使用符合该条件的最优读电压V1读取数据;
S05)、读取完成后检查该Block的错误数是否大于错误数阈值与错误数溢出上限的和,如果大于则将该Block添加到查找最优电压值序列的队列中,然后查找该Block对应的最优读电压V2;
S06)、对同一LUN内达到影响因素条件的其他Block执行步骤S04、S05的操作,根据读取情况最优电压值序列的队列扩展到最优读电压V3;
S07)、电压值序列V1、V2、V3每次使用成功时权重加1,将权重最高的设置为V1;使用V1失败后使用V2,使用V2失败后使用V3。
进一步的,影响因素包括磨损次数、数据保存时长、温差、读干扰和驻留时间。
进一步的,步骤S01同时设定不同影响因素的优先级,步骤S02、S05中,根据影响因素优先级查找Block对应的最优读电压。
进一步的,影响因素步长阈值=基数+n*步长+余量,n为0或正整数。设置余量是为了留出一定时间余量来查找Block最优读电压轴序列。
本发明的有益效果:本发明可以在NAND Flash每个LUN内根据实际运行环境自组最优电压序列,有效减少读错误数和读操作错误率,极大提高SSD运行时效率和对不同环境的适应性。
附图说明
图1为查找最优读电压序列的流程图;
图2为使用最优读电压序列的流程图;
图3为存储最优读电压序列的示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步的说明。
实施例1
LUN是NAND Flash内执行操作指令和报告执行状态的最小单位,每个LUN内包括很多Block,处于同一LUN的Block拥有基本相同的特性,即同一LUN内的Block可以使用其他Block查找的电压值序列。
每一种影响因素到达一定步长阈值时应该进行一次电压值序列的查找,影响因素多少决定电压值序列的多少,影响因素的步长阈值大小决定电压值序列的颗粒度。NAND典型的影响因素有磨损次数(PE Cycle)、数据保存时长(Data Retention)、温差(Temperature Diff)、读干扰(Read Disturb)、驻留时间(Dwell Time)等,也可以根据实际需求进行添加或者删除。
当NAND内Block状态巡检时发现某LUN内首个Block接近影响因素步长阈值时(这里接近影响因素步长阈值是为了流出一定时间余量用来查找Block最优读电压轴序列),查找该Block各个Wordline分组在当前环境条件下的最优读电压值序列(记为V1),并将该条件与读电压值序列保存在内存内。
当该LUN内其他Block达到影响因素步长阈值时,首先查找是否已经存在该影响因素步长阈值条件下的读电压值序列,如果存在直接使用,如果没有则使用前一条件下的读电压值序列。
为了避免同一LUN内出现同一影响因素下差异较大的Block,设置读取时的错误数阈值THfbc,如果某一Block的某一页读取错误数大于(Thfbc+50),则查找该Block的最优电压值序列(记为V2)。该LUN内Block后续使用V1不满足要求的话可以使用V2,使用者可以根据需要使用同样原理设置V3。
本实施例所述方法包括查找最优读电压序列和使用最优读电压序列两部分,如图1所示,查找最优读电压序列包括以下步骤:
S01)、选定读电压的影响因素为:磨损次数(PE Cycle)、数据保存时长(DataRetention)、温差(Temperature Diff)、读干扰(Read Disturb)、驻留时间(Dwell Time)。
各个影响因素之间根据实际需求设置优先级,比如数据保存时长在使用中最为重要,则其优先级为最高,优先查找数据保存时长对应的最优读电压。
其次,选定各个影响因素步长,比如磨损次数PE 步长为1000,数据保存时长DataRetention Step为2小时@85℃,温差步长为10℃,读干扰Read Disturb 步长为500。影响因素的基数根据实际情况设定。
S02)、Block状态定时巡检,定时巡检以LUN为单位、对LUN内所有Block进行巡检;
S03)、将LUN内首个达到影响因素步长阈值的Block放入查找最优电压值序列的队列内,然后根据影响因素查找最优读电压V1;
如果设置了影响因素的优先级,则根据影响因素优先级进行查找最优电压值。
本实施例中,影响因素步长阈值=基数+n*步长+余量,n为0或正整数。设置余量是为了留出一定时间余量来查找Block最优读电压轴序列。
S03)、将最优读电压V1和最优读电压V1对应的影响因素保存起来。
如图2所示,使用最优读电压序列包括以下步骤:
S04)、当同一LUN内有Block达到影响因素条件时,使用符合该条件的最优读电压V1读取数据;
S05)、为了避免同一LUN内出现同一影响因素下差异较大的Block,读取完成后检查该Block的错误数是否大于错误数阈值与错误数溢出上限的和,如果大于则将该Block添加到查找最优电压值序列的队列中,然后查找该Block对应的最优读电压V2;
S06)、对同一LUN内达到影响因素条件的其他Block执行步骤S04、S05的操作,根据读取情况最优电压值序列的队列扩展到最优读电压V3;
S07)、电压值序列V1、V2、V3每次使用成功时权重加1,将权重最高的设置为V1;使用V1失败后使用V2,使用V2失败后使用V3。
如图3所示,为存储最优读电压序列的示意图,针对同一种影响因素条件设置了三组最优读电压序列,即V1、V2、V3,当该LUN内其他Block达到影响因素步长阈值时,首先查找是否已经存在该影响因素步长阈值条件下的读电压值序列,如果存在直接使用,如果没有则使用前一条件下的读电压值序列。
本实施例所述方法在实际运行时实施,可以在NAND Flash每个LUN内根据实际运行环境自组最优电压序列,有效减少读错误数和读操作错误率,极大提高SSD运行时效率和对不同环境的适应性。
以上描述的仅是本发明的基本原理和优选实施例,本领域技术人员根据本发明做出的改进和替换,属于本发明的保护范围。
Claims (3)
1.一种NANDFlash LUN自组读电压序列的方法,其特征在于:包括以下步骤:
S01)、确定NANDFlash读电压的影响因素,确定影响因素的基数和步长;
S02)、Block状态定时巡检,定时巡检以LUN为单位、对LUN内所有Block进行巡检,将LUN内首个达到影响因素步长阈值的Block放入查找最优电压值序列的队列内,然后根据影响因素查找最优读电压V1;
S03)、将最优读电压V1和最优读电压V1对应的影响因素保存起来;
S04)、当同一LUN内有Block达到影响因素步长阈值时,使用符合该条件的最优读电压V1读取数据;
S05)、读取完成后检查该Block的错误数是否大于错误数阈值与错误数溢出上限的和,如果大于则将该Block添加到查找最优电压值序列的队列中,然后查找该Block对应的最优读电压V2;
S06)、对同一LUN内达到影响因素步长阈值的其他Block执行步骤S04、S05的操作,根据读取情况最优电压值序列的队列扩展到最优读电压V3;
影响因素步长阈值=基数+n*步长+余量,n为0或正整数;
S07)、最优电压值序列V1、V2、V3每次使用成功时权重加1,将权重最高的设置为V1;使用V1失败后使用V2,使用V2失败后使用V3。
2.根据权利要求1所述的NANDFlash LUN自组读电压序列的方法,其特征在于:影响因素包括磨损次数、数据保存时长、温差、读干扰和驻留时间。
3.根据权利要求1或2所述的NANDFlash LUN自组读电压序列的方法,其特征在于:步骤S01同时设定不同影响因素的优先级,步骤S02、S05中,根据影响因素优先级查找Block对应的最优读电压。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011331568.3A CN112420111B (zh) | 2020-11-24 | 2020-11-24 | 一种NANDFlash LUN自组读电压序列的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011331568.3A CN112420111B (zh) | 2020-11-24 | 2020-11-24 | 一种NANDFlash LUN自组读电压序列的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112420111A CN112420111A (zh) | 2021-02-26 |
CN112420111B true CN112420111B (zh) | 2024-01-26 |
Family
ID=74778518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011331568.3A Active CN112420111B (zh) | 2020-11-24 | 2020-11-24 | 一种NANDFlash LUN自组读电压序列的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112420111B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103811072A (zh) * | 2012-11-15 | 2014-05-21 | 北京兆易创新科技股份有限公司 | 一种高可靠性NAND Flash的读取方法及其系统 |
CN107170484A (zh) * | 2017-03-17 | 2017-09-15 | 北京兆易创新科技股份有限公司 | 一种NAND Flash电压自动补偿方法和装置 |
CN108052414A (zh) * | 2017-12-28 | 2018-05-18 | 湖南国科微电子股份有限公司 | 一种提升ssd工作温度范围的方法及系统 |
CN111192620A (zh) * | 2019-12-31 | 2020-05-22 | 山东华芯半导体有限公司 | 一种SSD中优化NAND Flash读参考电压的方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10430112B2 (en) * | 2014-12-22 | 2019-10-01 | Sandisk Technologies Llc | Memory block cycling based on memory wear or data retention |
US10289341B2 (en) * | 2017-06-30 | 2019-05-14 | Western Digital Technologies, Inc. | Operating parameter offsets in solid state memory devices |
-
2020
- 2020-11-24 CN CN202011331568.3A patent/CN112420111B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103811072A (zh) * | 2012-11-15 | 2014-05-21 | 北京兆易创新科技股份有限公司 | 一种高可靠性NAND Flash的读取方法及其系统 |
CN107170484A (zh) * | 2017-03-17 | 2017-09-15 | 北京兆易创新科技股份有限公司 | 一种NAND Flash电压自动补偿方法和装置 |
CN108052414A (zh) * | 2017-12-28 | 2018-05-18 | 湖南国科微电子股份有限公司 | 一种提升ssd工作温度范围的方法及系统 |
CN111192620A (zh) * | 2019-12-31 | 2020-05-22 | 山东华芯半导体有限公司 | 一种SSD中优化NAND Flash读参考电压的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112420111A (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107527644B (zh) | 一种固态硬盘读参考电压的优化方法及装置 | |
CN101369463B (zh) | 闪存检测分类方法 | |
CN111192620B (zh) | 一种SSD中优化NAND Flash读参考电压的方法 | |
CN110109897A (zh) | 数据库脚本生成方法、装置、计算机设备和存储介质 | |
US20200201569A1 (en) | Data reading method, storage controller and storage device | |
US20190304546A1 (en) | Decoding method and storage controller | |
US10482978B2 (en) | Read voltage optimization method, memory storage device and memory control circuit unit | |
US11557382B2 (en) | Method for automatically collecting and matching of laboratory data | |
CN112466378A (zh) | 一种固态硬盘运行纠错方法、装置及相关组件 | |
CN112420111B (zh) | 一种NANDFlash LUN自组读电压序列的方法 | |
CN105302679B (zh) | 一种智能终端存储稳定性的检测方法及系统 | |
CN110689914A (zh) | 一种固态硬盘的读纠错方法、装置、设备及存储介质 | |
CN107577440B (zh) | 提高存储器寿命的方法 | |
US20240013843A1 (en) | Method for finding common optimal read voltage of multi-dies, storage system | |
CN112802529A (zh) | 一种军工级Nand闪存的检测方法、装置、电子设备及存储介质 | |
CN107481764B (zh) | 一种3D Nand Flash扫描检测方法和系统 | |
CN114360628B (zh) | 闪存的检测方法以及装置 | |
CN116225317A (zh) | 用户识别卡的数据读写方法、装置、用户识别卡及介质 | |
TWI684106B (zh) | 訓練人工智慧更正儲存裝置的對數概度比的方法 | |
CN110265083B (zh) | 存储器装置的数据探测方法 | |
CN110364197B (zh) | 解码方法以及存储控制器 | |
CN111930318B (zh) | 周期值调节方法及周期值调节系统 | |
CN112486849B (zh) | 闪存开卡程序的方法、闪存装置的闪存控制器及电子装置 | |
CN116719682B (zh) | 数据保持测试方法和系统、电子设备、存储介质 | |
US20210342714A1 (en) | Dynamic intelligent test method and computer device employing the 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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |