CN116994632A - Flash memory particle grading method, system, controller and medium based on reading time - Google Patents

Flash memory particle grading method, system, controller and medium based on reading time Download PDF

Info

Publication number
CN116994632A
CN116994632A CN202310801830.3A CN202310801830A CN116994632A CN 116994632 A CN116994632 A CN 116994632A CN 202310801830 A CN202310801830 A CN 202310801830A CN 116994632 A CN116994632 A CN 116994632A
Authority
CN
China
Prior art keywords
page
flash memory
reading
bad
blocks
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.)
Granted
Application number
CN202310801830.3A
Other languages
Chinese (zh)
Other versions
CN116994632B (en
Inventor
吴思平
贺乐
赖鼐
龚晖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Miaocun Technology Co ltd
Original Assignee
Zhuhai Miaocun Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhuhai Miaocun Technology Co ltd filed Critical Zhuhai Miaocun Technology Co ltd
Priority to CN202310801830.3A priority Critical patent/CN116994632B/en
Publication of CN116994632A publication Critical patent/CN116994632A/en
Application granted granted Critical
Publication of CN116994632B publication Critical patent/CN116994632B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/06Acceleration testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/14Implementation of control logic, e.g. test mode decoders
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

The application discloses a flash memory granule grading method, a system, a controller and a medium based on reading time, wherein the method comprises the steps of obtaining code word decoding time of flash memory granules and determining a page decoding time threshold according to the code word decoding time; reading a plurality of pages in a plurality of blocks of the flash memory particles according to a first writing and reading scene, and acquiring a plurality of page reading times so as to mark the page corresponding to the page reading time as a bad page under the condition that the page reading time is greater than a page decoding time threshold; marking a block including a bad page among the plurality of blocks as a bad block; and determining the flash memory particles as good products, defective products or defective products according to the number of the bad blocks, wherein the bad pages and the bad blocks in the flash memory particles can be confirmed by comparing the decoding time of the code words and the page reading time because the decoding time of the code words in the reading process is related to the number of the error code words, and then grading the flash memory particles according to the number of the bad blocks, so that a high-precision grading result is simply and effectively obtained.

Description

Flash memory particle grading method, system, controller and medium based on reading time
Technical Field
The application relates to the technical field of flash memory particle classification, in particular to a flash memory particle classification method, a flash memory particle classification system, a flash memory particle classification controller and a flash memory particle classification medium based on reading time.
Background
In the existing flash memory particle manufacturing process, in order to ensure the quality and performance stability of the factory particles, a Sorting grading method is generally adopted to sort the flash memory particles, wherein the Sorting grading method is a method for Sorting semiconductor products according to performance parameters or other characteristics, and since reliability and stability of the products are reflected by ECC (Error Checking and Correcting, error checking and correction), most of the existing Sorting grading methods still use card-controlled ECC as a main means to sort the semiconductor products;
however, in the actual operation process, how to accurately obtain the ECC value and reasonably classify the ECC value according to the value is a relatively complex problem, the ECC value is related to the accuracy of the classification result, a technician needs a large amount of experiments and experimental data support when considering the rationality of the classified ECC value, if the number of samples is too small, the classification result is not accurate enough, finally the problem of false slaughter and misplacement of the chip is caused, the product quality safety problem is finally directly affected, the number of samples is too large, a large amount of analysis work is needed for analyzing the data, the precision of the existing flash memory particle classification result is unstable, and the sample requirement is large and takes a long time, so that the existing flash memory particle classification result cannot be effectively implemented.
Disclosure of Invention
The embodiment of the application provides a flash memory particle grading method based on reading time, a controller and a computer storage medium, which can at least ensure that a plurality of blocks and pages of flash memory particles are marked based on the reading time, so that the flash memory particles can be graded simply and effectively, the grading precision and the result precision are improved, and the ECC (error correction code) is not required to be controlled in a clamping way, so that the problems of unstable precision, large sample demand, long time consumption and the like of the traditional scheme are solved.
In a first aspect, an embodiment of the present application provides a flash memory granule classification method based on a read time, where the method includes:
acquiring the code word decoding time of flash memory particles, and determining a page decoding time threshold according to the code word decoding time;
reading a plurality of pages in a plurality of blocks of the flash memory particles according to a first writing and reading scene, and acquiring a plurality of page reading times, so that the page corresponding to the page reading time is marked as a bad page under the condition that the page reading time is greater than the page decoding time threshold;
marking a block including the bad page among a plurality of blocks as a bad block;
and determining the flash memory particles as good products, defective products or defective products according to the number of the bad blocks.
In some embodiments, the determining the flash memory particle as good, bad, or bad according to the number of bad blocks includes:
under the condition that the number of the bad blocks is zero, determining the flash memory particles as good products;
and under the condition that the number of the bad blocks is not zero, obtaining the proportion of the bad blocks according to the number of the bad blocks and the total number of the blocks in the flash memory particles, determining the flash memory particles with the proportion of the bad blocks smaller than or equal to a preset proportion threshold value as defective products, and determining the flash memory particles with the proportion of the bad blocks larger than the preset proportion threshold value as defective products.
In some embodiments, the first writing and reading scenario is high temperature writing and high temperature reading, and after the flash memory particles are determined to be good, bad or bad according to the number of bad blocks, the method further includes:
under the condition that the flash memory particles are good or defective, reading a plurality of pages in a plurality of blocks of the flash memory particles according to a second writing and reading scene, and acquiring a plurality of page reading times, so that the page corresponding to the page reading time is marked as a bad page under the condition that the page reading time is greater than the page decoding time threshold, wherein the second writing and reading scene comprises high-temperature writing and low-temperature reading, low-temperature writing and high-temperature reading;
marking a block including the bad page among a plurality of blocks as a bad block;
and determining the flash memory particles corresponding to the good products or the defective products as the good products, the defective products or the defective products according to the number of the bad blocks.
In some embodiments, the reading a plurality of pages in a plurality of blocks of the flash memory grain according to a first write-read scenario, and acquiring a plurality of page read times to mark a page corresponding to the page read time as a bad page if the page read time is greater than the page decode time threshold, includes:
reading a plurality of pages in a plurality of blocks of the flash memory particles one by one according to a first writing and reading scene, and acquiring page reading time for reading a current target page in a current target block;
reading the next target page in the current target block under the condition that the page reading time of the current target page is less than or equal to the page decoding time threshold value;
and under the condition that the page reading time of the current target page is larger than the page decoding time threshold, marking the current target page as a bad page, skipping over the next target page in the current target block, and reading a plurality of pages in the next target block.
In some embodiments, the preset ratio threshold is 5%.
In some embodiments, after the determining the flash memory particle as good, bad, or bad according to the number of bad blocks, the method further includes:
storing first writing and reading scene classification data, wherein the first writing and reading scene classification data is used for representing whether the flash memory particles are good products, inferior products or defective products;
and reading the first writing and reading scene classification data, and judging whether the flash memory particles are good or defective.
In some embodiments, the flash memory granule is packaged with one or more chips, one of the chips comprises a plurality of blocks, one of the blocks comprises a plurality of pages, one of the pages comprises eight code words, the code word decoding time is the decoding time of one code word, and the page decoding time threshold is less than eight times the code word decoding time.
In a second aspect, an embodiment of the present application provides a flash memory granule classification system based on a read time, the system including:
the threshold value determining module is used for obtaining the code word decoding time of the flash memory particles and determining a page decoding time threshold value according to the code word decoding time;
the flash memory reading module is used for reading a plurality of pages in a plurality of blocks of the flash memory particles according to a first writing and reading scene and obtaining a plurality of page reading times, so that the page corresponding to the page reading time is marked as a bad page under the condition that the page reading time is greater than the page decoding time threshold;
and the flash memory grading module is used for marking the blocks comprising the bad pages in the blocks as bad blocks and determining the flash memory particles as good products, defective products or defective products according to the number of the bad blocks.
In a third aspect, an embodiment of the present application provides a controller, including a memory, a processor, and a computer program stored on the memory and capable of running on the processor, where the processor implements the flash memory granule classification method based on read time according to any one of the embodiments of the first aspect when the processor executes the computer program.
In a fourth aspect, embodiments of the present application provide a computer readable storage medium storing computer executable instructions for performing the flash memory grain classification method according to any one of the embodiments of the first aspect.
The application has at least the following beneficial effects: the application provides a flash memory granule grading method based on reading time, which comprises the steps of obtaining code word decoding time of flash memory granules and determining a page decoding time threshold according to the code word decoding time; reading a plurality of pages in a plurality of blocks of the flash memory particles according to a first writing and reading scene, and acquiring a plurality of page reading times, so that the page corresponding to the page reading time is marked as a bad page under the condition that the page reading time is greater than the page decoding time threshold; marking a block including the bad page among a plurality of blocks as a bad block; and determining the flash memory particles as good products, defective products or defective products according to the number of bad blocks, wherein in the process of reading the data of the flash memory, the time spent in decoding is related to the number of erroneous code words, namely, when the code words are decoded for the first time, the code words are decoded for the second time, so that whether all the plurality of code words in a single page are decoded successfully or not can be judged by comparing the reading time and the decoding time, if all the code words cannot be decoded successfully at one time, the code word error is higher, the marking of a plurality of blocks and pages of the flash memory particles according to the code word decoding time and the page reading time can be realized, the bad pages and the bad blocks in the flash memory particles are confirmed, then the flash memory particles are classified according to the number of the bad blocks, and further, the high-precision classification result is simply and effectively obtained under the condition that the ECC is not clamped, so that the problems of unstable precision, large sample requirement, long time consumption and the like of the existing scheme are overcome.
Additional features and advantages of the application will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the application. The objectives and other advantages of the application may be realized and attained by the structure particularly pointed out in the written description and drawings.
Drawings
FIG. 1 is a flow chart of flash memory granule classification based on read time according to an embodiment of the application;
FIG. 2 is a flow chart of determining flash memory particles as good, bad or bad according to another embodiment of the present application;
FIG. 3 is a flow chart of reading a plurality of pages in a plurality of blocks of a flash memory granule according to a second write-read scenario according to another embodiment of the present application;
FIG. 4 is a flowchart of marking a page corresponding to a page read time as a bad page according to another embodiment of the present application;
FIG. 5 is an additional process flow diagram according to another embodiment of the present application;
FIG. 6 is a flow chart of performing high temperature writing and reading according to another embodiment of the present application;
FIG. 7 is a flow chart of performing high temperature writing/low temperature reading, low temperature writing/low temperature reading or low temperature writing/high temperature reading according to another embodiment of the present application;
fig. 8 is a schematic diagram of a controller according to another embodiment of the application.
Detailed Description
The present application will be described in further detail with reference to the drawings and examples, in order to make the objects, technical solutions and advantages of the present application more apparent. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the scope of the application.
In some embodiments, although functional block division is performed in a system diagram, logical order is shown in a flowchart, in some cases, steps shown or described may be performed in a different order than block division in a system, or in a flowchart. The terms first, second and the like in the description and in the claims and in the above-described figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order.
Furthermore, unless explicitly specified and limited otherwise, the term "coupled/connected" is to be interpreted broadly, as for example, being either fixedly coupled or movably coupled, being either detachably coupled or not detachably coupled, or being integrally coupled; can be mechanically connected, electrically connected or can be communicated with each other; can be directly connected or indirectly connected through an intermediate medium.
In the description of the embodiments of the present application, the descriptions of the terms "one embodiment/implementation," "another embodiment/implementation," or "certain embodiments/implementations," "the above embodiments/implementations," etc., mean that a particular feature, structure, material, or characteristic described in connection with the embodiment or examples is included in at least two embodiments or implementations of the present disclosure. In the present disclosure, schematic representations of the above terms do not necessarily refer to the same illustrative embodiment or implementation. It should be noted that although a logical order is illustrated in the flowchart, in some cases, the steps illustrated or described may be performed in an order different from that in the flowchart.
In the existing flash memory particle manufacturing process, in order to ensure the quality and performance stability of the factory particles, a Sorting grading method is generally adopted to sort the flash memory particles, wherein the Sorting grading method is a method for Sorting semiconductor products according to performance parameters or other characteristics, and since reliability and stability of the products are reflected by ECC (Error Checking and Correcting, error checking and correction), most of the existing Sorting grading methods still use card-controlled ECC as a main means to sort the semiconductor products; however, in the actual operation process, how to accurately obtain the ECC value and reasonably classify the ECC value according to the value is a relatively complex problem, the ECC value is related to the accuracy of the classification result, a technician needs a large amount of experiments and experimental data support when considering the rationality of the classified ECC value, if the number of samples is too small, the classification result is not accurate enough, finally the problem of false slaughter and misplacement of the chip is caused, the product quality safety problem is finally directly affected, the number of samples is too large, a large amount of analysis work is needed for analyzing the data, the precision of the existing flash memory particle classification result is unstable, and the sample requirement is large and takes a long time, so that the existing flash memory particle classification result cannot be effectively implemented.
In order to solve at least the above problems, the present application provides a flash memory granule classifying method based on a read time, by obtaining a codeword decoding time of a flash memory granule, and determining a page decoding time threshold according to the codeword decoding time; reading a plurality of pages in a plurality of blocks of the flash memory particles according to a first writing and reading scene, and acquiring a plurality of page reading times so as to mark the page corresponding to the page reading time as a bad page under the condition that the page reading time is greater than a page decoding time threshold; marking a block including a bad page among the plurality of blocks as a bad block; the method comprises the steps of determining the flash memory particles as good products, defective products or defective products according to the number of bad blocks, wherein in the process of reading data of the flash memory, when decoding is needed, the time spent in decoding is related to the number of erroneous code words, namely when the first time of decoding is unsuccessful, the code words are needed to be decoded for the second time, so that whether all the plurality of code words in a single page are decoded successfully at one time can be judged by comparing the reading time with the decoding time, if all the code words cannot be decoded successfully at one time, the code words are higher in error and possibly are bad pages, further, the fact that a plurality of blocks and pages of the flash memory particles are marked according to the code word decoding time and the page reading time can be realized, the bad pages and the bad blocks in the flash memory particles are confirmed, then the flash memory particles are classified according to the number of the bad blocks, and further, the problem that the precision of the existing scheme is unstable, the sample requirement is large, the time is long and the like can be overcome simply and effectively.
In some embodiments, flash memory is a non-volatile memory technology that can retain data when powered down, while flash memory granules (or flash chips, flash cells) in the present application are the most basic components that make up flash memory devices, including but not limited to NAND flash memory and NOR flash memory.
In some embodiments, the classification method refers to a method for classifying and controlling quality of products according to characteristics such as performance and quality in the manufacturing process of the products, and the classification method can effectively improve classification precision, thereby helping to ensure that the products reach expected performance standards and improve customer satisfaction.
Embodiments of the present application are further described below with reference to the accompanying drawings.
Referring to fig. 1, fig. 1 is a flowchart of a flash memory granule classification method based on read time according to an embodiment of the present application; in some embodiments, a flash memory grain classification method based on read time at least comprises the following steps:
step S110, obtaining the code word decoding time of the flash memory particles, and determining a page decoding time threshold according to the code word decoding time;
in some embodiments, the code word decoding time is used as a grading basis instead of the traditional ECC value, so that the problem of ECC value selection is avoided, the accuracy of grading results is improved, the dependence on the number of samples is reduced, and the risk of inaccurate grading results caused by too few samples is reduced.
Step S120, reading a plurality of pages in a plurality of blocks of the flash memory particles according to a first writing and reading scene, and acquiring a plurality of page reading times, so as to mark the page corresponding to the page reading time as a bad page under the condition that the page reading time is greater than a page decoding time threshold;
step S130, marking a block comprising bad pages in a plurality of blocks as a bad block;
and step S140, determining the flash memory particles as good products, defective products or defective products according to the number of the bad blocks.
In some embodiments, the structure of the flash memory granule is hierarchical, as follows: a flash memory granule may contain one or more chips (chips); each chip contains a plurality of blocks; each block contains multiple pages (pages): each page contains a plurality of code words (codes); specifically, in some embodiments of the present application, if 8 codewords are included in each page, the codeword decoding time is one codeword decoding time, the page decoding time threshold is less than eight times the codeword decoding time, for example, one codeword decoding time is 100us, and 8 CW decoding times is less than 800us, where 800us is the page decoding time threshold.
In some embodiments, the reason for performing the flash grain bad page and bad block judgment based on the decoding time and the page read time is that the decoding time and the page read time may indirectly reflect the quality and reliability of the data stored in the flash grain; in the flash memory particles, a certain Error Correction Coding (ECC) technology is adopted when data is stored, each codeword is coded, when the data is read, the coded codeword is required to be decoded and restored, the decoding time is related to the number of codeword errors, the more the number of error codewords is, the longer the decoding time is, if decoding fails, multiple attempts are required to be carried out, and the decoding time is increased, so that the reliability and quality of the flash memory unit can be indirectly reflected by the decoding time; the page read time mainly comprises data transmission time (such as RB time and DMA transmission time), when normal data is processed, the page read time is relatively fixed and is not affected by the decoding process, therefore, by observing the comparison result of the page read time and the decoding time threshold, whether more error code words exist in the data of the current page or not can be evaluated, further, the decoding time threshold under the condition of no error code words can be determined according to the decoding time of single code words, then, whether all the code words in a certain page are successfully decoded once is judged by comparing the actual page read time and the decoding time threshold, if all the code words can not be successfully decoded once, the page possibly exists more error code words, namely, the page is a bad page, on the basis, the blocks (bad blocks) containing the bad page are further marked, and the flash memory particles are classified according to the number of the bad blocks.
Specifically, since the flash memory is used for reading data normally, the time for reading data is fixed under the condition that decoding is not needed, only RB time and DMA transmission time are needed, if a single chip granule is provided, 2012 blocks exist inside, 1152 pages exist inside each block, if the RB time for reading one page and the DMA transmission time are 70us, the time for reading the whole block under the condition that decoding is not needed is 2012 x 1152 x 70us=162 s; if decoding is needed, the decoding time is determined according to the number of the error code words, and the number of the error code words and the decoding time are not in a linear relation; in addition, there are cases where repeated decoding of the same codeword is performed, and if the first decoding of the codeword is unsuccessful, a second decoding is required until the decoding is successful. What is meant by the aforementioned non-linear relationship is that if the time to decode one codeword is 40us, then the time spent decoding 8 codewords is less than 320us, provided that all one-time decoding is successful; for the convenience of statistics, the grading method only needs to count the time of reading each page to judge. If the time to read a page is 50us and it takes 100us to decode a codeword (codeword decoding time), then the decoding time of 8 codewords is less than 800us (decoding time threshold).
In summary, the decoding time threshold value can be determined through the decoding time, the bad pages are marked through the comparison of the decoding time threshold value and the page reading time, and then the flash memory particles can be classified according to the marked bad pages and the number of the bad blocks containing the bad pages, so that the method can simply and effectively classify the flash memory particles with high precision under the condition that ECC (error correction code) is not clamped, the classification result is simpler, more efficient and accurate, the problems of unstable precision, large sample demand, long time consumption and the like in the existing scheme can be overcome, the accuracy and efficiency of classifying the flash memory particles are improved, and the method is suitable for screening and classifying in the production process of the flash memory particles so as to meet the demands of different application scenes on the particle quality and performance; meanwhile, the grading method has positive effects on improving the productivity of flash memory manufacturers and reducing the production cost.
Referring to fig. 2, fig. 2 is a flowchart illustrating determining flash memory particles as good, bad or bad according to another embodiment of the present application; in some embodiments, the flash memory particles are determined to be good, bad, or bad according to the number of bad blocks, including but not limited to the following steps:
step S210, determining the flash memory particles as good products under the condition that the number of bad blocks is zero;
step S220, under the condition that the number of bad blocks is not zero, the proportion of the bad blocks is obtained according to the number of the bad blocks and the total number of the blocks in the flash memory particles, the flash memory particles with the proportion of the bad blocks smaller than or equal to a preset proportion threshold value are determined to be defective products, and the flash memory particles with the proportion of the bad blocks larger than the preset proportion threshold value are determined to be defective products.
In some embodiments, if the number of bad blocks is found to be zero after the flash memory pellet is detected, the flash memory pellet is determined to be good. This indicates that no bad pages or bad blocks appear in the granule, and the performance is good; and when the number of bad blocks is not zero, the proportion of the bad blocks needs to be calculated according to the number of the bad blocks and the total number of the blocks in the flash memory granules. Then comparing the proportion of the bad blocks with a preset proportion threshold value, and if the proportion of the bad blocks is smaller than or equal to the preset proportion threshold value, determining the flash memory particles as defective products; if the proportion of the bad blocks is greater than a preset proportion threshold, determining the flash memory particles as defective products; the grading method fully considers the existence degree of bad blocks in the flash memory particles, and judges the quality of the flash memory particles by comparing the proportion of the bad blocks with a preset threshold value, thereby reasonably grading the flash memory particles.
In some embodiments, the preset proportion threshold is 5%, and the flash memory particles can be effectively determined as defective or defective according to the effective proportion value.
Referring to fig. 3, fig. 3 is a flowchart illustrating reading a plurality of pages in a plurality of blocks of a flash granule according to a second write-read scenario according to another embodiment of the present application; in some embodiments, after the first writing/reading scenario is high temperature writing/high temperature reading and the flash memory particles are determined to be good, bad or bad according to the number of bad blocks, the method includes, but is not limited to, the following steps:
step S310, under the condition that the flash memory particles are good or inferior, reading a plurality of pages in a plurality of blocks of the flash memory particles according to a second writing and reading scene, and obtaining a plurality of page reading times, so as to mark the page corresponding to the page reading time as a bad page under the condition that the page reading time is greater than a page decoding time threshold, wherein the second writing and reading scene comprises high-temperature writing and low-temperature reading, low-temperature writing and low-temperature reading and low-temperature writing and high-temperature reading;
step S320, marking a block comprising bad pages in the plurality of blocks as a bad block;
and step S330, determining the flash memory particles corresponding to the good products or the defective products as the good products, the defective products or the defective products according to the number of the bad blocks.
In some embodiments, during the high temperature write and high temperature read phase, the grain characteristics are more stable than the cross temperature read and write, so the high temperature write and high temperature read is used as the first write and read scenario, and when each page is read, the time to read the page from the beginning to the end needs to be calculated, and the time is determined as the page read time.
In some embodiments, after the high-temperature writing and high-temperature reading are performed, when the flash memory particles are judged to be good or bad, a second writing and reading scene (including high-temperature writing and low-temperature reading, low-temperature writing and low-temperature reading and low-temperature writing and high-temperature reading) is used for reading a plurality of blocks in the flash memory particles and a plurality of pages in the blocks, reading time of the pages is obtained, the pages with the reading time greater than a set page decoding time threshold are marked as bad pages, the blocks containing the bad pages are marked as bad blocks, then the flash memory particles are rated to be good or bad according to the number of the bad blocks, the performance of the flash memory particles in different writing and reading scenes is comprehensively evaluated by the method, the quality of the flash memory particles can be judged more accurately by comparing the reading time in different scenes, and the precision of the grading result is improved.
In some embodiments, in the case that the flash memory grain is good, reading a plurality of pages in each block of the flash memory grain according to the second writing and reading scene; under the condition that the flash memory particles are defective products, reading a plurality of pages in the blocks which are not marked as bad blocks in the flash memory particles according to a second writing and reading scene, wherein the first writing and reading scene is a high-temperature writing Gao Wendou, the second writing and reading scene comprises a high-temperature writing and low-temperature reading, a low-temperature writing and high-temperature reading, the judgment of four stages of high-temperature writing and high-temperature reading HH\high-temperature writing and low-temperature reading HL\low-temperature writing and high-temperature reading LL\low-temperature writing and high-temperature reading is respectively completed through the writing and reading scenes, the marking results of the bad blocks produced in the four stages are combined, the marking results of all the blocks are finally obtained, if the marking results of all the blocks are judged, the particles are judged to be defective products, and if the bad blocks of bad blocks do not exist, the particles are judged to be defective products, and if the bad blocks of less than 5% of the total blocks are present, the particles can be judged to be defective products; if the number of bad blocks of the bad block is greater than 5% of the total number of blocks, the granule can be judged as defective.
It is conceivable that, when the high-temperature writing and low-temperature reading, the low-temperature writing and low-temperature reading and the low-temperature writing and high-temperature reading are performed, only a plurality of pages in a block which is not marked as a bad block in the flash memory granule are read and marked, so that the marking speed of the bad block in the flash memory granule can be effectively improved, and the grading speed is increased.
Referring to fig. 4, fig. 4 is a flowchart of marking a page corresponding to a page read time as a bad page according to another embodiment of the present application; in some embodiments, reading a plurality of pages in a plurality of blocks of flash memory granules according to a first write-read scenario and obtaining a plurality of page read times to mark a page corresponding to a page read time as a bad page if the page read time is greater than a page decode time threshold, including, but not limited to, the steps of:
step S410, reading a plurality of pages in a plurality of blocks of the flash memory grain one by one according to a first writing and reading scene, and acquiring page reading time for reading a current target page in a current target block;
step S420, under the condition that the page reading time of the current target page is less than or equal to the page decoding time threshold, the next target page in the current target block is read;
in step S430, in the case that the page read time of the current target page is greater than the page decode time threshold, the current target page is marked as a bad page, and the next target page in the current target block is skipped, and a plurality of pages in the next target block are read.
In some embodiments, by marking the current target page as a bad page and skipping the next target page in the current target block if the page read time of the current target page is greater than the page decode time threshold, invalid read marking operations are reduced, avoiding unnecessary reads and writes on blocks that have been determined to be bad blocks due to the inclusion of bad pages, thereby increasing flash grain classification speed.
Referring to fig. 5, fig. 5 is an additional process flow diagram according to another embodiment of the present application; in some embodiments, after determining the flash memory particles as good, bad, or bad according to the number of bad blocks, the method further includes, but is not limited to, the steps of:
step S510, storing first writing and reading scene classification data, wherein the first writing and reading scene classification data is used for representing whether flash memory particles are good, inferior or defective;
step S520, the first writing and reading scene classification data is read, and whether the flash memory particles are good or defective is judged.
In some embodiments, the first write-read scene classification data for characterizing whether the flash memory grain is good, bad, or bad is read before the plurality of pages in the plurality of blocks of the flash memory grain are read according to the second write-read scene to determine whether the flash memory grain is good or bad, so that the subsequent operation is performed normally.
FIG. 6 is a flow chart of performing high temperature writing and reading according to another embodiment of the present application; in some embodiments, the specific process of performing high temperature writing and high temperature reading is as follows:
in the process of reading each page, calculating the time required for reading the page from the beginning to the end, if the time is greater than the time spent for decoding 8 CWs (codes), marking the page, and further, after the page reading of the whole block (block) is completed, giving a mark whether the time reaches the standard to all pages;
when the marking of all pages is completed, the whole block can be marked, and if the reading time of all pages of the block is less than the time of decoding 8 CWs, the block can be judged as a good block; otherwise, judging the block as a bad block (bad block);
while in evaluating the quality of the whole particle, the following judgment will be made based on the labeling of all the blocks:
if no bad block exists, judging the particles as good products;
if there is less than 5% bad block, it can be judged as defective;
if the proportion of bad blocks (bad blocks) is greater than 5%, the granule is judged as defective.
By the method, the quality of the particles can be judged and classified rapidly and effectively under the high-temperature writing and high-temperature reading scene.
Compared with the scheme that only particles can be divided into good products and defective products in the prior art, the application has finer grading specifications, and can divide the particles into good products, defective products and defective products, so that grading precision is effectively improved, and further, the requirements for particles with different precision are met.
FIG. 7 is a flow chart of performing high temperature writing/low temperature reading, low temperature writing/low temperature reading or low temperature writing/high temperature reading according to another embodiment of the present application; in some embodiments, since the test environment (write-read scenario) includes phases of high-temperature write-high-temperature read (HH), high-temperature write-low-temperature read (HL), low-temperature write-low-temperature read (LL), low-temperature write-high-temperature read (LH), and the like, after the temperature write-high-temperature read (HH) phase is completed, it is determined whether the flash memory grain is defective, and if the flash memory grain is not defective, the steps of the temperature write-high-temperature read (HH) phase are followed. And only changing the environment temperature, performing high-temperature writing and low-temperature reading (HL), low-temperature writing and low-temperature reading (LL), low-temperature writing and high-temperature reading (LH) and other stages on the flash memory particles, and so on, respectively completing the steps of testing each block in different stages such as high-temperature writing and high-temperature reading (HH), high-temperature writing and low-temperature reading (HL), low-temperature writing and low-temperature reading (LL), low-temperature writing and high-temperature reading (LH), and finally obtaining the marking results of all blocks by combining the bad block marking results in each stage, judging whether the particles are good products, defective products or defective products, and effectively improving the grading precision.
Referring to fig. 8, fig. 8 is a schematic structural diagram of a controller according to an embodiment of the present application.
Some embodiments of the present application provide a controller including a memory, a processor, and a computer program stored on the memory and executable on the processor, the processor implementing the flash memory granule classification method based on read time of any of the above embodiments when executing the computer program, for example, performing the method steps S110 to S140 in fig. 1, the method steps S210 to S220 in fig. 2, the method steps S310 to S330 in fig. 3, the method steps S410 to S430 in fig. 4, and the method steps S510 to S520 in fig. 5 described above.
The controller 800 of the present embodiment includes one or more processors 810 and a memory 820, with one processor 810 and one memory 820 being illustrated in fig. 8.
Processor 810 and memory 820 may be connected by a bus or otherwise, for example in fig. 8.
Memory 820 acts as a non-transitory computer readable storage medium that can be used to store non-transitory software programs as well as non-transitory computer executable programs. In addition, memory 820 may include high-speed random access memory, and may also include non-transitory memory, such as at least one magnetic disk storage device, flash memory device, or other non-transitory solid state storage device. In some embodiments, memory 820 may optionally include memory 820 remotely located from processor 810, which may be connected to controller 800 via a network, examples of which include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
In some embodiments, the processor executes the computer program to perform the flash memory particle classification method based on the read time according to any one of the above embodiments at preset intervals.
Those skilled in the art will appreciate that the device structure shown in fig. 8 is not limiting and may include more or fewer components than shown, or may combine certain components, or a different arrangement of components.
In the controller 800 shown in fig. 8, the processor 810 may be used to invoke the read time based flash memory granule classification method stored in the memory 820, thereby implementing the read time based flash memory granule classification method.
Based on the hardware structure of the controller 800, various embodiments of the flash memory granule grading system based on the read time of the present application are presented, and at the same time, the non-transitory software program and instructions required for implementing the flash memory granule grading method based on the read time of the above embodiments are stored in the memory, and when executed by the processor, the flash memory granule grading method based on the read time of the above embodiments is executed.
In addition, an embodiment of the present application further provides a flash memory granule classification system based on a read time, where the flash memory granule classification system based on a read time includes the controller described above, and includes: the threshold value determining module is used for obtaining the code word decoding time of the flash memory particles and determining a page decoding time threshold value according to the code word decoding time; the flash memory reading module is used for reading a plurality of pages in a plurality of blocks of the flash memory particles according to a first writing and reading scene and obtaining a plurality of page reading times so as to mark the page corresponding to the page reading time as a bad page under the condition that the page reading time is greater than a page decoding time threshold value; and the flash memory grading module is used for marking the blocks comprising the bad pages in the blocks as bad blocks and determining flash memory particles as good products, defective products or defective products according to the number of the bad blocks.
In some embodiments, since the flash memory particle classification system based on read time according to the embodiment of the present application has the controller of the above embodiment, and the controller of the above embodiment is capable of executing the flash memory particle classification method based on read time according to the above embodiment, specific implementation and technical effects of the flash memory particle classification system based on read time according to the embodiment of the present application may refer to specific implementation and technical effects of the flash memory particle classification method based on read time according to any of the above embodiments.
The embodiment of the present application also provides a computer-readable storage medium storing computer-executable instructions for performing the above-described flash memory particle classification method based on read time, for example, the one or more processors may be caused to perform the flash memory particle classification method based on read time in the above-described method embodiment, and perform the above-described method steps S110 to S140 in fig. 1, the method steps S210 to S220 in fig. 2, the method steps S310 to S330 in fig. 3, the method steps S410 to S430 in fig. 4, and the method steps S510 to S520 in fig. 5.
The above described apparatus embodiments are merely illustrative, wherein the units illustrated as separate components may or may not be physically separate, i.e. may be located in one place, or may be distributed over a plurality of network nodes. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
Those of ordinary skill in the art will appreciate that all or some of the steps, systems, and methods disclosed above may be implemented as software, firmware, hardware, and suitable combinations thereof. Some or all of the physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application specific integrated circuit. Such software may be distributed on computer readable media, which may include computer readable storage media (or non-transitory media) and communication media (or transitory media). The term computer-readable storage medium includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules or other data, as known to those skilled in the art. Computer-readable storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital Versatile Disks (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by a computer. Furthermore, as is well known to those of ordinary skill in the art, communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media.
While the preferred embodiment of the present application has been described in detail, the present application is not limited to the above embodiment, and those skilled in the art can make various equivalent modifications or substitutions without departing from the spirit of the present application, and these equivalent modifications or substitutions are included in the scope of the present application as defined in the appended claims.

Claims (10)

1. A method for classifying flash memory particles based on read time, the method comprising:
acquiring the code word decoding time of flash memory particles, and determining a page decoding time threshold according to the code word decoding time;
reading a plurality of pages in a plurality of blocks of the flash memory particles according to a first writing and reading scene, and acquiring a plurality of page reading times, so that the page corresponding to the page reading time is marked as a bad page under the condition that the page reading time is greater than the page decoding time threshold;
marking a block including the bad page among a plurality of blocks as a bad block;
and determining the flash memory particles as good products, defective products or defective products according to the number of the bad blocks.
2. The method for classifying flash memory particles based on read time according to claim 1, wherein the determining the flash memory particles as good, bad or bad according to the number of bad blocks comprises:
under the condition that the number of the bad blocks is zero, determining the flash memory particles as good products;
and under the condition that the number of the bad blocks is not zero, obtaining the proportion of the bad blocks according to the number of the bad blocks and the total number of the blocks in the flash memory particles, determining the flash memory particles with the proportion of the bad blocks smaller than or equal to a preset proportion threshold value as defective products, and determining the flash memory particles with the proportion of the bad blocks larger than the preset proportion threshold value as defective products.
3. The method for classifying flash memory particles based on read time according to claim 1, wherein the first write-read scenario is high-temperature write-read, and the method further comprises, after determining the flash memory particles as good, bad, or bad according to the number of bad blocks:
under the condition that the flash memory particles are good or defective, reading a plurality of pages in a plurality of blocks of the flash memory particles according to a second writing and reading scene, and acquiring a plurality of page reading times, so that the page corresponding to the page reading time is marked as a bad page under the condition that the page reading time is greater than the page decoding time threshold, wherein the second writing and reading scene comprises high-temperature writing and low-temperature reading, low-temperature writing and high-temperature reading;
marking a block including the bad page among a plurality of blocks as a bad block;
and determining the flash memory particles corresponding to the good products or the defective products as the good products, the defective products or the defective products according to the number of the bad blocks.
4. The method of claim 1, wherein the reading a plurality of pages in a plurality of blocks of the flash memory grain according to a first write-read scenario and obtaining a plurality of page read times to mark a page corresponding to the page read time as a bad page if the page read time is greater than the page decode time threshold, comprises:
reading a plurality of pages in a plurality of blocks of the flash memory particles one by one according to a first writing and reading scene, and acquiring page reading time for reading a current target page in a current target block;
reading the next target page in the current target block under the condition that the page reading time of the current target page is less than or equal to the page decoding time threshold value;
and under the condition that the page reading time of the current target page is larger than the page decoding time threshold, marking the current target page as a bad page, skipping over the next target page in the current target block, and reading a plurality of pages in the next target block.
5. The method of claim 2, wherein the predetermined proportion threshold is 5%.
6. The method for classifying flash memory particles based on read time according to claim 3, wherein after the flash memory particles are determined as good, bad or defective according to the number of bad blocks, the method further comprises:
storing first writing and reading scene classification data, wherein the first writing and reading scene classification data is used for representing whether the flash memory particles are good products, inferior products or defective products;
and reading the first writing and reading scene classification data, and judging whether the flash memory particles are good or defective.
7. The method of claim 1, wherein the flash memory granule is packaged with one or more chips, one of the chips comprising a plurality of blocks, one of the blocks comprising a plurality of pages, one of the pages comprising eight codewords, the codeword decoding time being a decoding time of one codeword, the page decoding time threshold being less than eight times the codeword decoding time.
8. A flash memory grain classification system based on read time, the system comprising:
the threshold value determining module is used for obtaining the code word decoding time of the flash memory particles and determining a page decoding time threshold value according to the code word decoding time;
the flash memory reading module is used for reading a plurality of pages in a plurality of blocks of the flash memory particles according to a first writing and reading scene and obtaining a plurality of page reading times, so that the page corresponding to the page reading time is marked as a bad page under the condition that the page reading time is greater than the page decoding time threshold;
and the flash memory grading module is used for marking the blocks comprising the bad pages in the blocks as bad blocks and determining the flash memory particles as good products, defective products or defective products according to the number of the bad blocks.
9. A controller comprising a memory, a processor and a computer program stored on the memory and executable on the processor, the processor implementing the read time based flash memory particle classification method of any one of claims 1 to 7 when the computer program is executed.
10. A computer readable storage medium storing computer executable instructions for performing the read time based flash memory grain classification method of any one of claims 1 to 7.
CN202310801830.3A 2023-06-30 2023-06-30 Flash memory particle grading method, system, controller and medium based on reading time Active CN116994632B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310801830.3A CN116994632B (en) 2023-06-30 2023-06-30 Flash memory particle grading method, system, controller and medium based on reading time

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310801830.3A CN116994632B (en) 2023-06-30 2023-06-30 Flash memory particle grading method, system, controller and medium based on reading time

Publications (2)

Publication Number Publication Date
CN116994632A true CN116994632A (en) 2023-11-03
CN116994632B CN116994632B (en) 2024-04-19

Family

ID=88520445

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310801830.3A Active CN116994632B (en) 2023-06-30 2023-06-30 Flash memory particle grading method, system, controller and medium based on reading time

Country Status (1)

Country Link
CN (1) CN116994632B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117809725A (en) * 2024-03-01 2024-04-02 四川云海芯科微电子科技有限公司 Flash memory particle screening and grading method

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101540202A (en) * 2008-03-21 2009-09-23 深圳市朗科科技股份有限公司 Method and system for quickly screening flash memory medium
CN106681936A (en) * 2016-12-29 2017-05-17 记忆科技(深圳)有限公司 Bad block management method for NANDFLASH
US20170294237A1 (en) * 2016-04-08 2017-10-12 SK Hynix Inc. Detect developed bad blocks in non-volatile memory devices
CN108648779A (en) * 2018-03-29 2018-10-12 深圳忆联信息系统有限公司 A kind of method of flash memory particle screen selecting classification
CN109411002A (en) * 2017-08-15 2019-03-01 华为技术有限公司 A kind of method and flash controller of reading data
CN110148435A (en) * 2019-04-16 2019-08-20 珠海妙存科技有限公司 A kind of flash memory particle screen selecting stage division
CN110659146A (en) * 2019-08-05 2020-01-07 广州妙存科技有限公司 Temperature-based flash memory re-reading method
CN110928488A (en) * 2019-10-28 2020-03-27 广州妙存科技有限公司 Method for optimizing high-low temperature read-write reliability of NAND flash memory
CN114077509A (en) * 2020-08-12 2022-02-22 深圳市得一微电子有限责任公司 Detection method and detection device for reliability detection of flash memory chip
CN114220470A (en) * 2021-11-04 2022-03-22 浙江大华存储科技有限公司 Flash memory particle screening method, terminal and computer readable storage medium
CN116230066A (en) * 2023-02-09 2023-06-06 合肥大唐存储科技有限公司 Method for realizing quality grade division, computer storage medium and terminal

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101540202A (en) * 2008-03-21 2009-09-23 深圳市朗科科技股份有限公司 Method and system for quickly screening flash memory medium
US20170294237A1 (en) * 2016-04-08 2017-10-12 SK Hynix Inc. Detect developed bad blocks in non-volatile memory devices
CN106681936A (en) * 2016-12-29 2017-05-17 记忆科技(深圳)有限公司 Bad block management method for NANDFLASH
CN109411002A (en) * 2017-08-15 2019-03-01 华为技术有限公司 A kind of method and flash controller of reading data
CN108648779A (en) * 2018-03-29 2018-10-12 深圳忆联信息系统有限公司 A kind of method of flash memory particle screen selecting classification
CN110148435A (en) * 2019-04-16 2019-08-20 珠海妙存科技有限公司 A kind of flash memory particle screen selecting stage division
CN110659146A (en) * 2019-08-05 2020-01-07 广州妙存科技有限公司 Temperature-based flash memory re-reading method
CN110928488A (en) * 2019-10-28 2020-03-27 广州妙存科技有限公司 Method for optimizing high-low temperature read-write reliability of NAND flash memory
CN114077509A (en) * 2020-08-12 2022-02-22 深圳市得一微电子有限责任公司 Detection method and detection device for reliability detection of flash memory chip
CN114220470A (en) * 2021-11-04 2022-03-22 浙江大华存储科技有限公司 Flash memory particle screening method, terminal and computer readable storage medium
CN116230066A (en) * 2023-02-09 2023-06-06 合肥大唐存储科技有限公司 Method for realizing quality grade division, computer storage medium and terminal

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GABRYS, R ET AL.: "Graded Bit-Error-Correcting Codes With Applications to Flash Memory", 《IEEE TRANSACTIONS ON INFORMATION THEORY》, 31 December 2013 (2013-12-31) *
曹操;: "闪存、主控、缓存 固态硬盘最重要的三颗芯", 电脑爱好者, no. 22 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117809725A (en) * 2024-03-01 2024-04-02 四川云海芯科微电子科技有限公司 Flash memory particle screening and grading method
CN117809725B (en) * 2024-03-01 2024-05-14 四川云海芯科微电子科技有限公司 Flash memory particle screening and grading method

Also Published As

Publication number Publication date
CN116994632B (en) 2024-04-19

Similar Documents

Publication Publication Date Title
CN116994632B (en) Flash memory particle grading method, system, controller and medium based on reading time
US7210077B2 (en) System and method for configuring a solid-state storage device with error correction coding
US7447955B2 (en) Test apparatus and test method
CN108536548B (en) Method and device for processing bad track of disk and computer storage medium
CN110148435B (en) Flash memory particle screening and grading method
KR20080007544A (en) Test apparatus and test method
CN113223583B (en) Method for re-reading data in NAND FLASH bad blocks, electronic equipment and storage medium
CN108829358A (en) The bad block management method and solid state hard disk of solid state hard disk
CN116994631B (en) ECC-based flash memory particle multiple screening method, controller and medium
WO2022037168A1 (en) Method and system for testing conversion relationship between block reading and page reading in flash memory chip
CN114327258A (en) Solid state disk processing method, system, equipment and computer storage medium
US20240013843A1 (en) Method for finding common optimal read voltage of multi-dies, storage system
CN106648969B (en) Method and system for inspecting damaged data in disk
CN106847342B (en) Nonvolatile memory device and empty page detection method thereof
CN115344433B (en) Data recovery method, data recovery device, solid state disk and storage medium
CN109444570B (en) Electronic product fault diagnosis module and method based on memory
CN107481764B (en) 3D Nand Flash scanning detection method and system
CN110444247A (en) Store the test device of equipment write error error correcting capability
US9104568B2 (en) Detection of memory cells that are stuck in a physical state
CN116994628B (en) Flash memory particle grading method, controller and medium based on offset read voltage
CN113052244B (en) Classification model training method and classification model training device
US10176043B2 (en) Memory controller
CN108648778B (en) Solid state disk reading system and method thereof
CN112447241A (en) Method and device for realizing data rereading, computer storage medium and terminal
CN112306382A (en) Flash memory controller, storage device and reading method thereof

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