A method for dynamically predicting NAND block performance at the end of life
Through the dynamic prediction method, the polynomial equation model combined with real-time data acquisition is used to solve the problem of performance prediction at the end of the life of NAND Flash Block, and dynamic prediction with high efficiency and low resource consumption is achieved, reducing read errors and error correction losses.
Patent Information
- Application Number
- CN202111586445.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-23
- Publication Date
- 2025-02-25
- Estimated Expiration
- 2041-12-23
AI Technical Summary
The prior art is difficult to effectively predict the end-of-life performance of NAND Flash Block, resulting in frequent read errors, requiring a large amount of resources and data for static prediction, and the prediction accuracy is not high.
The dynamic prediction method is adopted to collect Block operation data in real time, and a polynomial equation prediction model is constructed, and the block's final voltage value and performance are dynamically predicted based on factors such as wear times, data storage time, read interference, and maximum error number.
It realizes dynamic prediction of block end-of-life performance under low resource consumption, identifying blocks with poor performance in advance, reducing the probability of operational errors, and reducing the loss caused by error correction measures.
Smart Images

Figure CN114283875B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of storage, and in particular to a method for dynamically predicting the performance of a NAND Block at the end of its life for a NAND Flash. Background Art
[0002] As the number of wear cycles (PE cycles) of NAND Flash increases during use, data retention and read disturbance resistance gradually weaken. The number of wear cycles (PE cycles) can be understood as the life of NAND. At the end of the operating life, the NAND Flash blocks may have different predictable errors, such as write failures and read failures (read operation failures or too high read errors).
[0003] like Figure 1 As shown in the figure, after NAND Flash is packaged, although the manufacturer guarantees that the performance of each block is consistent, due to factors such as material, internal circuit, operating voltage, etc., the performance of each block will be different. After analyzing a large amount of block data in NAND Flash from different manufacturers and different batches, it is found that the block performance is fixed after the chip is packaged, rather than mutating with the increase of service life.
[0004] Based on this rule, predicting the life of NAND Flash blocks can reduce a series of error correction measures caused by too many read errors. If static prediction methods such as machine learning are used for life prediction, firstly, a large amount of data needs to be collected in advance. Secondly, the performance characteristics of each block are inconsistent and cannot cover all blocks, resulting in low prediction accuracy. Thirdly, the use of machine learning algorithms in the SSD chip master requires a lot of resources or proprietary modules. These reasons make it difficult to implement static prediction methods such as machine learning in SSDs. Summary of the invention
[0005] The purpose of the present invention is to provide a method for dynamically predicting the performance of a NAND Block at the end of its lifespan. Based on this method, the performance of a Block at the end of its lifespan can be dynamically predicted with low resource consumption and full use of data, and blocks with poor performance can be identified in advance, thereby reducing the probability of operational errors.
[0006] In order to solve the technical problem, the technical solution adopted by the present invention is: a method for dynamically predicting the performance of NAND Block at the end of its life, comprising the following steps:
[0007] S01), NAND data center collects block operation data in real time, selects the number of wear times in the life cycle as n as the stage separation point, the data retention time as a hour at temperature t as the stage separation point, and the number of read disturbances as b as the stage separation point. The maximum number of errors FBCmax, the NAND voltage value used when reading the maximum number of errors, the direction of voltage change, the number of reads, and the number of read failures in different stages are collected to form a three-dimensional data set;
[0008] S02) Whenever the NAND data center completes data collection, it notifies the dynamic prediction module to analyze the data;
[0009] S03), the dynamic prediction module checks the number of read failures, and if the value is greater than 2, the block is marked as a bad block;
[0010] S04), the dynamic prediction module checks whether the maximum number of errors FBCmax at the beginning of the Block life is greater than the error number threshold FBCth and the number of reads is 2, and the voltage change direction is left. If all the conditions are met, the performance mark EOL_L is recorded plus 1. When EOL_L is greater than 2, the Block is marked as a performance low Block;
[0011] S05), the dynamic prediction module predicts the voltage value at the end of the block based on the historical data of the NAND data center, and performs dynamic prediction based on the number of wear times, data retention time, read interference, maximum number of errors, voltage value, and voltage direction.
[0012] Further, in step S05), a polynomial equation prediction model is constructed, and the voltage value is used as the solution according to the historical data, and the influencing factors and the number of errors are used as variables to calculate various parameters to form a polynomial equation. When calculating the voltage value, the influencing factors and the number of errors at that time are substituted into the polynomial equation for calculation and solution;
[0013] The constructed polynomial equation is:
[0014] Vt = aXret^3 + bXpe^2 + cXfbc + dXret^2*Xpe + eXret*Xpe + f,
[0015] Among them, a, b, c, d, e, f are the coefficients to be sought, Xret, Xpe, Xfbc are the storage time, wear times, and maximum number of errors of the collected data, and Vt is the predicted voltage value;
[0016] When calculating the voltage value, the influencing factors and error number at that time are substituted into the polynomial equation to calculate and solve.
[0017] Furthermore, in step S05), the difference between two FBCs and the voltage value change value are calculated each time the influencing factor changes, and the average values of the two are obtained respectively. The above-mentioned change value and the average value are regarded as the FBC change value affected by each voltage value change in a certain voltage change direction of the Block, and the required voltage value under a certain type of influencing factor at the end is calculated based on the value.
[0018] Furthermore, the initial stage of the Block life in step S04) means that the number of Block wear times is within 3000.
[0019] Further, n=500 or n=1000.
[0020] Further, t=85°C, a=2 hours.
[0021] Further, b=500.
[0022] Beneficial effects of the present invention: Through the method described in this patent, block information under various influencing factors can be collected in real time and the information can be analyzed to dynamically predict whether the performance of the block at the end of its life meets the design requirements and dynamically calculate the voltage value required at the end of its life. Users can take corresponding measures based on the results of this method to reduce the huge losses caused by a large number of read errors or other error correction measures at the end of the life of NAND Flash. BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Figure 1 This is a schematic diagram of the maximum number of read errors during the entire life of a block;
[0024] Figure 2 It is a flow chart of the present invention. DETAILED DESCRIPTION
[0025] The present invention will be further described below in conjunction with the accompanying drawings and specific embodiments.
[0026] Example 1
[0027] This embodiment discloses a method for dynamically predicting the performance of a NAND Block at the end of its lifespan. Figure 2 As shown, the following steps are included:
[0028] S01), NAND data center collects block operation data in real time, selects the number of wear times during the life cycle as 500 as the stage separation point, the data retention time is 2 hours at a temperature of 85°C as the stage separation point, and the number of read disturbances is 500 as the stage separation point. The maximum number of errors FBCmax, the NAND voltage value used when reading the maximum number of errors, the direction of voltage change, the number of reads, and the number of read failures in different stages are collected to form a three-dimensional data set;
[0029] S02) Whenever the NAND data center completes data collection, it notifies the dynamic prediction module to analyze the data;
[0030] S03), the dynamic prediction module checks the number of read failures, and if the value is greater than 2, the block is marked as a bad block;
[0031] S04), the dynamic prediction module checks whether the maximum number of errors FBCmax at the beginning of the Block life is greater than the error number threshold FBCth and the number of reads is 2, and the voltage change direction is left. If all the conditions are met, the performance mark EOL_L is recorded plus 1. When EOL_L is greater than 2, the Block is marked as a performance low Block;
[0032] S05), the dynamic prediction module predicts the voltage value at the end of the block based on the historical data of the NAND data center, and performs dynamic prediction based on the number of wear times, data retention time, read interference, maximum number of errors, voltage value, and voltage direction.
[0033] In this embodiment, step S05) constructs a polynomial equation prediction model, using the voltage value as the solution according to historical data, and using the influencing factors and the number of errors as variables to calculate various parameters to form a polynomial equation. When calculating the voltage value, the influencing factors and the number of errors at that time are substituted into the polynomial equation for calculation and solution;
[0034] The constructed polynomial equation is:
[0035] Vt = aXret^3 + bXpe^2 + cXfbc + dXret^2*Xpe + eXret*Xpe + f,
[0036] Among them, a, b, c, d, e, f are the coefficients to be sought, Xret, Xpe, Xfbc are the storage time, wear times, and maximum number of errors of the collected data, and Vt is the predicted voltage value;
[0037] When calculating the voltage value, the influencing factors and error number at that time are substituted into the polynomial equation to calculate and solve.
[0038] Step S05 adopts another method: calculate the difference between two FBCs and the voltage value change value each time the influencing factor changes, and obtain the average value of the two respectively. The above change value and the average value are regarded as the FBC change value affected by each voltage value change in a certain voltage change direction of the Block, and the required voltage value under a certain type of influencing factor at the end is calculated based on the value.
[0039] In this embodiment, the initial stage of the Block life in step S04) means that the number of times the Block is worn is within 3000.
[0040] Through the method described in this embodiment, block information under various influencing factors can be collected in real time and the information can be analyzed to dynamically predict whether the performance of the block at the end of its life meets the design requirements and dynamically calculate the voltage value required at the end of its life. Users can take corresponding measures based on the results of this method to reduce the huge losses caused by a large number of read errors or other error correction measures at the end of the life of the NAND Flash.
[0041] The above description is only the basic principle and preferred embodiments of the present invention. Improvements and substitutions made by those skilled in the art based on the present invention belong to the protection scope of the present invention.
Claims
1. A method for dynamically predicting the performance of a NAND block at the end of its life, characterized by: The following steps are involved: S01), NAND data center collects Block operation data in real time, selects the number of wear times in the life cycle as n as the stage separation point, the data retention time as a hour at temperature t as the stage separation point, and the number of read disturbances as b as the stage separation point, collects the maximum number of errors FBCmax and the NAND voltage value used when reading the maximum number of errors FBCmax in the above different stages, the voltage change direction, the number of reads, and the number of read failures, to form a three-dimensional data set; S02) Whenever the NAND data center completes data collection, it notifies the dynamic prediction module to analyze the data; S03), the dynamic prediction module checks the number of read failures, and if the number of read failures is greater than 2, the block is marked as a bad block; S04), the dynamic prediction module checks whether the maximum number of errors FBCmax at the beginning of the Block life is greater than the error number threshold FBCth and the number of reads is 2, and the voltage change direction is left. If all the conditions are met, the performance mark EOL_L is recorded plus 1. When EOL_L is greater than 2, the Block is marked as a weak performance Block; S05), the dynamic prediction module predicts the voltage value at the end of the block according to the historical data of the NAND data center, and performs dynamic prediction according to the number of wear times, data retention time, read disturbance times, maximum error number FBCmax, the NAND voltage value used when reading the maximum error number FBCmax, and the voltage change direction; Specifically, step S05) constructs a polynomial equation prediction model, and uses the NAND voltage value used when reading the maximum error number FBCmax as a solution based on historical data, and uses the data storage time, the number of wear times, and the maximum error number FBCmax as variables to calculate various coefficients, thereby forming a polynomial equation. When predicting the voltage value at the end of the block, the data storage time, the number of wear times, and the maximum error number FBCmax at this time are substituted into the polynomial equation for calculation and solution; The constructed polynomial equation is of the following form: Vt = aXret^3 + bXpe^2 + cXfbc + dXret^2*Xpe + eXret*Xpe + f Where a, b, c, d, e, and f are the required coefficients; Xret, Xpe, and Xfbc are the storage time, wear times, and maximum error number FBCmax of the collected data; and Vt is the predicted voltage value at the end of the Block.
2. The method for dynamically predicting NAND Block end-of-life performance according to claim 1, characterized in that: The initial stage of the Block life in step S04) means that the number of times the Block is worn is within 3000.
3. The method for dynamically predicting NAND Block end-of-life performance according to claim 1, characterized in that: n=500 or n=1000.
4. The method for dynamically predicting NAND Block end-of-life performance according to claim 1, characterized in that: t=85°C, a=2 hours.
5. The method for dynamically predicting NAND Block end-of-life performance according to claim 1, characterized in that: b=500。
Citation Information
Patent Citations
Method and device for dynamically predicting service life of flash memory chip online
CN108766496A