Storage particle pre-screening method and device, storage control chip and storage medium
By pre-screening Flash memory using a partial scanning method, combined with read/write operations in SLC and TLC modes, the problem of low efficiency in Flash quality screening in existing technologies is solved, enabling rapid and accurate screening of storage products and improving mass production efficiency.
Patent Information
- Application Number
- CN202511299098.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-11
- Publication Date
- 2025-12-16
AI Technical Summary
In existing technologies, storage product manufacturers face difficulties in efficiently screening Flash storage chips of different qualities, resulting in low mass production efficiency and an inability to quickly prepare inventory.
A partial scanning method is used to pre-screen the Flash memory. The quality of the Flash memory is judged by the first and second rounds of partial scanning combined with preset standards, including read and write operations in SLC and TLC modes. Multiple scan results are generated to distinguish the quality of the Flash memory.
It improves the mass production efficiency of storage products, accelerates the rapid inventory preparation of storage product manufacturers, and quickly and accurately screens out medium-to-high quality and low-quality Flash through partial scanning.
Smart Images

Figure CN121144827A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of flash memory controller chip technology, and in particular to a method, apparatus, memory controller chip, and memory medium for pre-screening memory chips. Background Technology
[0002] NAND Flash (or Flash for short) is used to store data and is the mainstream storage chip, widely used in various types of storage products, such as USB flash drives. Storage products include storage controller chips, Flash memory, and PCBs. The storage controller chip controls the Flash memory and is the control chip that interacts with the external host. The Flash memory receives commands from the storage controller chip to read and write data. The PCB acts as a "bridge" between the storage controller chip and the Flash memory, enabling the electrical connection between the two.
[0003] USB flash drives include U2 (USB 2.0 compliant) and U3 (USB 3.0 compliant). U3 offers higher read / write performance than U2, primarily due to the higher quality of its flash memory. In actual mass production, if storage product manufacturers can screen flash memory quality in advance, they can manufacture storage products of different quality levels to suit their needs, thereby improving mass production efficiency and accelerating inventory preparation. Summary of the Invention
[0004] The purpose of this invention is to overcome the shortcomings of the prior art and provide a storage particle pre-screening method, device, storage control chip and storage medium that can pre-screen Flash and allow Flash of different qualities to be manufactured into storage products of appropriate types.
[0005] The first aspect of this application provides a method for pre-screening storage particles, comprising: Perform an initial partial scan on the Flash memory and generate the initial partial scan results; Based on the results of the first round of local scanning, if the results of the first round of local scanning meet the first preset standard, the Flash is determined to be a medium-to-high quality Flash; if the results of the first round of local scanning do not meet the first preset standard, the Flash is determined to be a low-quality Flash.
[0006] Furthermore, in one preferred embodiment, after determining that the Flash is a medium-to-high quality Flash, the method further includes: Perform the two rounds of local scanning on the Flash memory to generate the results of the two rounds of local scanning. Based on the results of the two rounds of local scanning, if the results of the two rounds of local scanning reach the second preset standard, the Flash is determined to be a high-quality Flash; if the results of the two rounds of local scanning reach the third preset standard, the Flash is determined to be a medium-quality Flash.
[0007] Furthermore, in one preferred embodiment, before performing the two-round local scan on the Flash and generating the two-round local scan results, the method further includes: Send at least one erase command to the Flash to erase the Block that was subjected to the first round of local scanning in the Flash.
[0008] Further, in one preferred embodiment, performing a first-round partial scan on the Flash and generating the first-round partial scan results includes: Configure the first preset ratio; Select the local scan block of each Plane according to the first preset ratio; Configure the local scan block to run in SLC mode, perform read and write operations on the local scan block, and generate the first round of SLC local scan results of Flash based on the results of the read and write operations; Configure the local scan block to run in TLC mode, perform read and write operations on the local scan block, and generate the first round of local scan results of Flash TLC based on the results of the read and write operations.
[0009] Further, in one preferred embodiment, the first preset standard includes: If the capacity in the first round of partial scanning of the SLC is less than the capacity in the first round of partial scanning of the TLC, and the sector template of the Flash is complete, then the Flash is determined to be a medium-to-high quality Flash. If the capacity in the first round of partial scanning results of the SLC is greater than or equal to the capacity in the first round of partial scanning results of the TLC, or if the sector template of the Flash is incomplete, then the Flash is determined to be a low-quality Flash.
[0010] Further, in one preferred embodiment, performing the two-round local scan on the Flash to generate the two-round local scan results includes: Configure a second preset ratio; Select the local scan block of each Plane according to the second preset ratio; Configure the local scan block to run in SLC mode, perform read and write operations on the local scan block, and generate the SLC second-round local scan results of Flash based on the results of the read and write operations; Based on the page template, sector template, and block template of the SLC second-round partial scan results in the Flash TLC first-round partial scan, generate the Flash TLC second-round partial scan results.
[0011] Furthermore, in one preferred embodiment, the second preset standard includes: If the page template loss rate in the TLC second-round partial scan result is less than or equal to the first preset page loss rate, has two or more plane bindings, and the sector template is complete, then the Flash is determined to be a high-quality Flash.
[0012] Furthermore, in one preferred embodiment, the third preset standard includes: If the page template loss rate in the TLC second-round partial scan result is greater than the first preset page loss rate and less than or equal to the second preset page loss rate, has two or more plane bindings, and the sector template is complete, then the Flash is determined to be a medium-quality Flash.
[0013] A second aspect of this application provides a storage particle pre-screening apparatus, comprising: The first-round scan module is used to perform the first-round partial scan on the Flash and generate the first-round partial scan results.
[0014] The first screening module is used to make a judgment based on the results of the first round of local scanning. If the results of the first round of local scanning meet the first preset standard, the Flash is determined to be a medium-to-high quality Flash. If the results of the first round of local scanning do not meet the first preset standard, the Flash is determined to be a low-quality Flash.
[0015] A third aspect of this application provides a memory control chip, including: the memory chip device as described above.
[0016] The technical solution of this application includes: performing a first-round partial scan on the Flash memory and generating the first-round partial scan result; judging based on the first-round partial scan result, if the first-round partial scan result meets a first preset standard, then the Flash memory is determined to be of medium to high quality; if the first-round partial scan result does not meet the first preset standard, then the Flash memory is determined to be of low quality. By using a pre-set standard, after performing the first-round partial scan on the Flash memory, the quality range of the Flash memory is determined based on whether the result of the first-round partial scan meets the standard requirements. Furthermore, because a partial scan is used, compared to a full-disk scan, partial scanning can accelerate the quality screening of Flash memory by storage product manufacturers, thereby improving the mass production efficiency of storage products and accelerating the rapid inventory preparation of storage product manufacturers. Attached Figure Description
[0017] To more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings used in the embodiments will be briefly introduced below. It should be understood that the following drawings only show some embodiments of the present invention and should not be regarded as a limitation on the scope. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0018] Figure 1 This is a schematic flowchart illustrating a storage particle pre-screening method according to an embodiment of this application; Figure 2 This is a schematic flowchart illustrating a storage particle pre-screening method according to another embodiment of this application; Figure 3 The diagram shown is a structural schematic of a storage particle pre-screening device according to an embodiment of this application; Figure 4 The diagram shown is a structural schematic of a storage particle pre-screening device according to another embodiment of this application; Figure 5 The diagram shown is a schematic diagram of the structure of a storage control chip in one embodiment of this application. Detailed Implementation
[0019] To facilitate understanding of the present invention, a more complete description of the invention is provided below with reference to the accompanying drawings. Preferred embodiments of the invention are shown in the drawings. However, the invention can be implemented in many different forms and is not limited to the embodiments described herein. Rather, these embodiments are provided to provide a thorough and complete understanding of the disclosure of the invention.
[0020] It should be noted that when an element is referred to as being "fixed to" another element, it can be directly attached to the other element or there may be an intervening element. When an element is referred to as being "connected to" another element, it can be directly connected to the other element or there may be an intervening element. The terms "vertical," "horizontal," "left," "right," and similar expressions used herein are for illustrative purposes only and do not represent the only possible implementation.
[0021] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. The terminology used herein in the description of the invention is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. The term "and / or" as used herein includes any and all combinations of one or more of the associated listed items.
[0022] In related technologies, USB flash drives include U2 (USB flash drives compliant with the USB 2.0 standard) and U3 (USB flash drives compliant with the USB 3.0 standard). U3 has higher read and write performance than U2, primarily because U3 uses higher-quality flash memory. In actual mass production, if storage product manufacturers can screen flash memory quality in advance, they can manufacture storage products of different quality levels to suit different types of storage products, thereby improving mass production efficiency and accelerating inventory preparation.
[0023] Therefore, in order to solve the above-mentioned technical problems, this application provides a storage particle pre-screening method and corresponding embodiments, which can pre-screen Flash and allow Flash of different qualities to be manufactured into storage products of appropriate types.
[0024] The technical solution of this application will be described in detail below with reference to the accompanying drawings.
[0025] Figure 1 The diagram shown is a flowchart of a storage particle pre-screening method according to an embodiment of this application.
[0026] Please see Figure 1 A method for pre-screening storage particles includes the following steps: Step S110: Perform the first round of partial scanning on the Flash and generate the first round of partial scanning results.
[0027] It's important to note that Flash memory follows a hierarchical architecture: LUN (DIE) - Plane - Block - Page - Bit. A Block is the smallest unit for erasing Flash, and a Page is the smallest unit for reading and writing. Each DIE contains several Planes, each Plane contains several Blocks, each Block contains several Pages, and each Page contains several Bits. Because of this architectural design, a full Flash scan is quite time-consuming, as it involves every LUN, Plane, Block, Page, and Bit within the Flash memory.
[0028] Flash memory, as the most critical component affecting the capacity and read / write performance of a USB flash drive, also comes in different types. Flash memory can be divided into SLC, MLC, TLC, and QLC types. SLC flash memory cells can store single bits of data, while MLC, TLC, and QLC flash memory cells can store multiple bits of data. It's understandable that the capacity of SLC, MLC, TLC, and QLC flash memory types increases from low to high, while their stability decreases from high to low.
[0029] In addition, Flash memory can configure the operating mode of a block via instructions. There are typically two operating modes: SLC mode and TLC mode. In SLC mode, each memory cell can store 1 bit of data; in TLC mode, each memory cell can store 3 bits of data, and the capacity of a TLC block is three times that of an SLC block.
[0030] It should be noted that due to the unique physical architecture of Flash memory, performing a full Flash scan involves every LUN, Plane, Block, Page, and Bit. The large number of Blocks and Pages results in a lengthy full Flash scan. Therefore, considering this, a partial scan is used instead of a full scan. The results of the partial scan reflect the overall quality of the Flash memory, achieving pre-screening. However, this application's solution does not blindly use partial scan results to represent the overall quality of the Flash memory. Instead, there are scanning standard requirements. Only when the partial scan results fall within the acceptable range of the scanning standard is the Flash memory considered suitable for manufacturing U3; otherwise, it is manufactured as U2.
[0031] In this embodiment, the first round of partial scanning of the Flash can be performed as follows: configure a first preset ratio; select partial scanning blocks for each plane according to the first preset ratio; configure the partial scanning blocks to run in SLC mode, perform read and write operations on the partial scanning blocks, and generate the first round of partial scanning results of the Flash in SLC mode based on the results of the read and write operations; configure the partial scanning blocks to run in TLC mode, perform read and write operations on the partial scanning blocks, and generate the first round of partial scanning results of the Flash in TLC mode based on the results of the read and write operations.
[0032] It should be noted that the first round of partial scanning involves reading and writing operations on a subset of blocks in each Plane of Flash, not all blocks. The number of blocks is calculated based on a pre-configured first preset ratio. For example, in this embodiment, the first preset ratio is configured as 8%. If the total number of blocks in the current Plane is 100, then the number of blocks selected for the first round of partial scanning in the current Plane is 100 * 8% = 8. If the calculated result is not an integer, it is rounded down without carrying over. In this way, a certain number of blocks in each Plane are selected for the first round of partial scanning. The configuration value of the first preset ratio can be set according to specific circumstances, but it should not be set too high, resulting in too many blocks being selected for partial scanning. A preferred setting range is between 8% and 10%. The principle of partial scanning is the same as that of full scanning. Both involve writing a piece of data to fill the entire block in advance, then reading the written data and comparing it with the read data. Based on the comparison result, a partial scan result of the Flash is generated. The partial scan result includes data information such as capacity, BlockMask, PageMask, SectorMask, and Plane binding rules.
[0033] Capacity, or the size of the Flash storage space, reflects the data storage capacity of the Flash. It is understandable that capacity and price are positively correlated; the higher the capacity, the higher the price of the storage product.
[0034] BlockMask, or block template, is a binary template reflecting the quality of a block. For example, when the BlockMask of the current target plane is 1111 1110, it means that the target plane has a total of 8 blocks, of which 7 are valid blocks and 1 is invalid. A valid block is one that can store data, and an invalid block is one that cannot store data. In this embodiment, the block to be selected for the first round of local scanning needs to be selected based on the BlockMask. It can be understood that, to ensure that the selected blocks are distributed as evenly as possible within the block offset range of the current plane, this embodiment can use a method of selecting blocks every N (N is a positive integer greater than or equal to 5) blocks. This avoids the selected blocks being too concentrated in the blocks before the BlockMask, which could affect the error of the first round of local scanning.
[0035] Similar to BlockMask, PageMask is a page template, a binary template that reflects the quality of a page. For example, when the PageMask of the current target block is 1111 0110, it means that the target block has a total of 8 pages, of which 6 are valid pages and 2 are invalid pages. Valid pages are those that can store data, and invalid pages are those that cannot store data.
[0036] The SectorMask, or sector template, is used to represent the integrity of 16KB frames in most Flash memory pages. Each page is 16KB long, divided into 16 1KB frames. For example, if SectorMask = 1111 1111 1111 1110, it means that 1KB of the page is incomplete. "Incomplete" can be understood as this 1KB frame being unusable, meaning the page cannot store data correctly.
[0037] Plane binding rules, which are the binding relationships between Planes, are operations allowed by Flash to improve read and write performance. By binding two or more Planes together, read and write operations are performed simultaneously on the Blocks in the Planes that are bound together.
[0038] After selecting the local scan blocks for each plane, configure the local scan blocks to run in SLC mode and perform read and write operations on the local scan blocks running in SLC mode to generate the first round of SLC local scan results for the Flash. Then, configure the local scan blocks to run in TLC mode and perform read and write operations on the local scan blocks to generate the first round of TLC local scan results for the Flash. Essentially, the first round of local scans will generate two types of information: the first is the SLC first round local scan result, and the second is the TLC first round local scan result.
[0039] Step S120: Based on the results of the first round of local scanning, if the results of the first round of local scanning reach the first preset standard, the Flash is determined to be a medium-high quality Flash; if the results of the first round of local scanning do not reach the first preset standard, the Flash is determined to be a low quality Flash.
[0040] SLC mode scanning aims to identify fundamentally damaged memory cells, where the voltage difference between write and read operations is greatest. If a memory cell fails to function properly even in SLC mode (e.g., unable to charge to the target voltage, or experiencing excessive charge leakage), it indicates a fatal physical defect (such as oxide layer damage, tunnel breakdown, etc.). Such bad blocks are "hopeless" and will be bad in any mode. TLC mode scanning, on the other hand, identifies memory cells that will fail in real-world usage scenarios. Some memory cells may perform perfectly in SLC mode because it only requires distinguishing between two broad states. However, once switched to the highly demanding TLC mode (which requires precise differentiation between eight narrow states), these cells' minute defects will be exposed. By analyzing the scan results from both modes, storage product manufacturers can grade the quality of Flash memory.
[0041] It should be noted that in this embodiment, the first preset criterion includes: 1) if the capacity (i.e., CAP) in the first round of local scanning results of SLC SLC The capacity (CAP) is smaller than that in the first round of local scans of TLC. TLC If the Flash's sector template (SectorMask) is complete (i.e., SectorMask = 1111 11111111 1111, assuming a Page length of 16K, 16 "1"s represent a complete SectorMask), then the Flash is determined to be of medium to high quality. If the capacity in the first partial scan result of SLC is greater than or equal to the capacity in the first partial scan result of TLC, or if the Flash's sector template (SectorMask) is incomplete, then the Flash is determined to be of low quality. By using conditions 1) and 2), the quality of the Flash can be differentiated, classifying it into medium to high quality and low quality. TLC mode is the high-capacity mode for Flash; if in this mode, CAP... TLC Still less than CAP SLC This means that there are definitely many bad blocks inside the Flash memory, and this is even considering only a selected portion of the blocks. Due to the similarity between blocks, the number of bad blocks will be large, making this Flash memory highly likely to be of low quality. Furthermore, an incomplete SectorMask causes Pages to be unable to store data correctly. Because of the inconsistencies between Pages, most Pages within the same block become unusable, which should also be considered indicative of a low-quality Flash memory.
[0042] The technical solution of this embodiment, through a pre-set standard, determines the quality range of the Flash after the first round of partial scanning based on whether the result of the first round of partial scanning meets the requirements of the first preset standard. Since partial scanning is used, compared with full-disk scanning, partial scanning can speed up the quality screening of Flash by storage product manufacturers, thereby improving the mass production efficiency of storage products and accelerating the rapid inventory preparation of storage product manufacturers.
[0043] Figure 2 The diagram shown is a flowchart of a storage particle pre-screening method according to another embodiment of this application.
[0044] Please see Figure 2 A method for pre-screening storage particles includes the following steps: Step S210: Perform the first round of partial scanning on the Flash and generate the first round of partial scanning results.
[0045] Please refer to step S110 for a description of step S210, which will not be repeated here.
[0046] Step S220: Based on the results of the first round of local scanning, if the results of the first round of local scanning reach the first preset standard, the Flash is determined to be a medium-high quality Flash; if the results of the first round of local scanning do not reach the first preset standard, the Flash is determined to be a low quality Flash.
[0047] Please refer to step S120 for a description of step S220, which will not be repeated here.
[0048] Step S230: Send at least one erase command to the Flash to erase the Blocks that are being partially scanned in the Flash.
[0049] It should be noted that in this embodiment, before performing the second round of partial scanning, in order to prevent the data written in the first round of partial scanning from affecting the second round of scanning, the storage control chip needs to send an erase command to the Flash memory to erase the written data, restoring all blocks in the Flash memory to their state before any data was stored. Furthermore, the erase command is sent at least once; that is, the erase command can be sent multiple times to prevent erase failure of the blocks.
[0050] Step S240: Perform a second round of local scanning on the Flash and generate the results of the second round of local scanning.
[0051] It should be noted that after the first round of partial scanning of the Flash memory, the Flash memory has been divided into high-quality and medium-quality categories. However, for the U3 storage product, it can be further subdivided. Specifically, a U3 manufactured with high-quality Flash memory will have superior performance compared to a U3 manufactured with medium-quality Flash memory. In this embodiment, a second round of partial scanning is used to filter between high-quality and medium-quality Flash memory.
[0052] In this embodiment, the second round of partial scanning of Flash can be performed as follows: configure a second preset ratio; select the partial scanning block of each plane according to the second preset ratio; configure the partial scanning block to run in SLC mode, perform read and write operations on the partial scanning block, and generate the SLC second round partial scanning result of Flash based on the results of the read and write operations; generate the TLC second round partial scanning result of Flash based on the page template, sector template in the first round partial scanning of Flash and the block template of the SLC second round partial scanning result.
[0053] It should be noted that, similar to the principle of the first round of partial scanning, the read and write results of a subset of blocks are used to verify the quality of the Flash memory. However, the difference lies in the number of blocks in the second round of partial scanning. For example, in this embodiment, the second preset ratio is configured as 32%, which is four times the first preset ratio. In the previous embodiment, eight blocks were selected for partial scanning, while in this embodiment, 32 blocks are selected. If the calculated result is not an integer, it is rounded without carrying over. In this way, a certain number of blocks are selected for the second round of partial scanning for each plane. The configuration value of the second preset ratio can be set according to specific circumstances, but it should not be set too high, resulting in too many blocks performing partial scanning. The preferred setting range is between 32% and 40%.
[0054] Furthermore, due to the large number of selected local scan blocks, this embodiment only configures the local scan blocks to run in SLC mode. Read and write operations are performed on these blocks, and the SLC second-round local scan results for the Flash are generated based on the results of these operations. This is done for two reasons: First, low-quality Flash memory has already been excluded in the first round of local scans, meaning it will not enter the second round. Therefore, in the second round, only the blocks can be configured to run in SLC mode, since medium- and high-quality Flash memory is stable and there is no need to spend extra time verifying blocks in TLC mode. Second, SLC mode blocks have higher read and write efficiency, saving a significant amount of time.
[0055] Since U3 storage products are primarily high-capacity storage products, it's impossible for Flash blocks to be configured in SLC mode for data storage (the "impossible" here refers to the fact that most U3 Flash blocks operate in multi-bit mode, with only a very small number configured in SLC mode. These SLC blocks are used to store Flash management data, essentially storing Flash system-level files, which are Flash runtime files and require relatively stable block storage). Therefore, although the second-round partial scan does not configure blocks in SLC mode, it utilizes the PageMask and SectorMask from the first-round partial scan of TLC, as well as the BlockMask from the second-round partial scan results of SLC, to generate the TLC second-round partial scan results for Flash. The reason this can be done is that the PageMask and SectorMask in the first round of TLC partial scanning are basically the same for medium-to-high-quality Flash. The difference in the second round of partial scanning lies in the BlockMask, that is, the difference in the number of blocks in the partial scan. Therefore, the PageMask and SectorMask in the first round of TLC partial scanning, as well as the BlockMask from the second round of SLC partial scanning results, can be used to directly reconstruct and generate the results of the second round of TLC partial scanning, thereby improving the efficiency of the second round of partial scanning.
[0056] Step S250: Based on the results of the second round of local scanning, if the results of the second round of local scanning reach the second preset standard, the Flash is determined to be a high-quality Flash; if the results of the second round of local scanning reach the third preset standard, the Flash is determined to be a medium-quality Flash.
[0057] It should be noted that in this embodiment, the following two standards will be used to specifically distinguish between medium and high quality Flash.
[0058] The second preset standard includes: if the page template loss rate in the TLC second-round partial scan result is less than or equal to the first preset page loss rate, has two or more plane bindings, and the sector template is complete, then the Flash is determined to be a high-quality Flash. In this embodiment, the first preset page loss rate is configured to 2%. Thus, based on the second preset standard, if the Flash's TLC second-round partial scan result meets the second preset standard, then the Flash is determined to be a high-quality Flash.
[0059] For example, after two rounds of partial scanning, if the current Flash page template (PageMask) is 1111 1111 1111 11111111, and the PageMask loss rate is 0 / 20 = 0, which is less than the first preset page loss rate, and the Flash has at least two bound planes and a complete sector template (SectorMask), then the Flash is determined to be a high-quality Flash. It should be noted that "the PageMask loss rate is less than or equal to the first preset page loss rate" means that all planes in the current Flash must meet this condition. Similarly, "a complete sector template (SectorMask)" also means that all planes in the current Flash must meet this condition.
[0060] The third preset criterion includes: if the page template loss rate in the second round of TLC partial scanning results is greater than the first preset page loss rate and less than or equal to the second preset page loss rate, has two or more plane bindings, and the sector template is complete, then the Flash is determined to be a medium-quality Flash. In this embodiment, the second preset page loss rate is configured to 10%. Thus, based on the third preset criterion, if the second round of TLC partial scanning results of the Flash meets the third preset criterion, the Flash is determined to be a medium-quality Flash.
[0061] For example, after two rounds of partial scanning, the current Flash page template PageMask = 1111 1111 1111 11101101. The loss rate of this Flash page template PageMask is 2 / 20 = 0.1, which is equal to the second preset page loss rate. If it has two or more plane bindings and a complete sector template SectorMask, then the Flash is determined to be a high-quality Flash. It should be noted that "the page template loss rate is greater than the first preset page loss rate and less than or equal to the second preset page loss rate" means that all planes in the current Flash must meet this condition. Similarly, "a complete sector template SectorMask" also means that all planes in the current Flash must meet this condition.
[0062] The technical solution of this embodiment further completes the quality screening of Flash by performing two rounds of local scanning, combined with the second preset standard and the third preset standard, thereby accelerating the mass production efficiency of storage products and speeding up the inventory preparation of storage product manufacturers.
[0063] Corresponding to the aforementioned method embodiments, this application provides a storage particle pre-screening device and corresponding embodiments.
[0064] Figure 3 A schematic diagram of the structure of a storage particle pre-screening device according to an embodiment of this application is shown.
[0065] Please see Figure 3 A storage particle pre-screening device 300, comprising: The first-round scanning module 310 is used to perform a first-round partial scan on the Flash and generate the first-round partial scan results.
[0066] The first screening module 320 is used to make a judgment based on the results of the first round of local scanning. If the results of the first round of local scanning meet the first preset standard, the Flash is determined to be a medium-to-high quality Flash; if the results of the first round of local scanning do not meet the first preset standard, the Flash is determined to be a low-quality Flash.
[0067] Further, please refer to Figure 3 The first-round scanning module 310 includes: The first configuration unit 311 configures the first preset ratio.
[0068] The first selection unit 312 selects the local scan block of each plane according to the first preset ratio.
[0069] The first SLC configuration unit 313 configures the local scan block to run in SLC mode, performs read and write operations on the local scan block, and generates the first round of local scan results of Flash based on the results of the read and write operations.
[0070] TLC configuration unit 314 configures the local scan block to run in TLC mode, performs read and write operations on the local scan block, and generates the first round of local scan results of Flash based on the results of the read and write operations.
[0071] It should be noted that in this embodiment, the first preset standard includes: if the capacity in the first round of partial scanning of SLC is less than the capacity in the first round of partial scanning of TLC, and the sector template of Flash is complete, then Flash is determined to be medium-high quality Flash; if the capacity in the first round of partial scanning of SLC is greater than or equal to the capacity in the first round of partial scanning of TLC, or the sector template of Flash is incomplete, then Flash is determined to be low quality Flash.
[0072] It should be noted that the storage particle pre-screening method implemented by the storage particle pre-screening device disclosed in this embodiment is the same as that in the above embodiments, and therefore will not be described in detail here. Optionally, each module and the other operations or functions described above in this embodiment are respectively for implementing the methods in the foregoing embodiments.
[0073] Figure 4 A schematic diagram of the structure of a storage particle pre-screening device according to another embodiment of this application is shown.
[0074] Please see Figure 3 A storage particle pre-screening device 300, comprising: The first-round scanning module 310 is used to perform a first-round partial scan on the Flash and generate the first-round partial scan results.
[0075] The first screening module 320 is used to make a judgment based on the results of the first round of local scanning. If the results of the first round of local scanning meet the first preset standard, the Flash is determined to be a medium-to-high quality Flash; if the results of the first round of local scanning do not meet the first preset standard, the Flash is determined to be a low-quality Flash.
[0076] The erase module 330 is used to send at least one erase command to the Flash to erase the Block that performs the first round of partial scanning of the Flash.
[0077] The second-round scanning module 340 is used to perform a second-round local scan on the Flash and generate the second-round local scan results.
[0078] The second screening module 350 makes a judgment based on the results of the second round of local scanning. If the results of the second round of local scanning reach the second preset standard, the Flash is determined to be a high-quality Flash; if the results of the second round of local scanning reach the third preset standard, the Flash is determined to be a medium-quality Flash.
[0079] Further, please refer to Figure 4 The second-round scanning module 340 includes: The second configuration unit 341 is used to configure the second preset ratio.
[0080] The second selection unit 342 selects the local scan block of each plane according to the second preset ratio.
[0081] The second SLC configuration unit 343 configures the local scan block to run in SLC mode, performs read and write operations on the local scan block, and generates the SLC second-round local scan results of the Flash based on the results of the read and write operations. The TLC generation unit 344 generates the TLC second-round partial scan results of Flash based on the page template, sector template, and block template from the SLC second-round partial scan results in the first-round partial scan of Flash.
[0082] It should be noted that in this embodiment, the second preset standard includes: if the page template loss rate in the TLC second-round partial scan result is less than or equal to the first preset page loss rate, has more than two plane bindings, and the sector template is complete, then the Flash is determined to be a high-quality Flash.
[0083] It should be noted that in this embodiment, the third preset standard includes: if the page template loss rate in the TLC second-round partial scan result is greater than the first preset page loss rate and less than or equal to the second preset page loss rate, has two or more plane bindings and the sector template is complete, then the Flash is determined to be a medium-quality Flash.
[0084] It should be noted that the storage particle pre-screening method implemented by the storage particle pre-screening device disclosed in this embodiment is the same as that in the above embodiments, and therefore will not be described in detail here. Optionally, each module and the other operations or functions described above in this embodiment are respectively for implementing the methods in the foregoing embodiments.
[0085] like Figure 5 The diagram shown is a structural schematic of a storage control chip according to an embodiment of this application.
[0086] Please refer to 5, a storage control chip 400, including a storage particle device 300.
[0087] It should be noted that the storage controller chip 400 is a logic chip, consisting of analog circuits, digital circuits, and a firmware layer. Other components performing complex digital logic functions, such as protocol processing, error correction, address mapping, and storage management algorithms, fall under the category of logic chips. Furthermore, the storage controller chip 400 of this application runs a storage chip pre-screening method. This method is an analysis algorithm embedded in the firmware layer of the storage controller chip 400. Based on pre-set standards, after performing an initial partial scan of the Flash memory, it determines the quality range of the Flash memory based on whether the results of the initial partial scan meet the standard requirements. Because it uses partial scanning, compared to full-disk scanning, partial scanning can accelerate the quality screening of Flash memory by storage product manufacturers, thereby improving the mass production efficiency of storage products and accelerating the rapid inventory preparation of storage product manufacturers.
[0088] Furthermore, the method according to this application can also be implemented as a computer program or computer program product, which includes computer program code instructions for performing some or all of the steps in the method described above.
[0089] Alternatively, this application may be implemented as a computer-readable storage medium (or a non-transitory machine-readable storage medium or a machine-readable storage medium) storing executable code (or computer program or computer instruction code) thereon, which, when executed by a processor of an electronic device (or server, etc.), causes the processor to perform part or all of the steps of the methods described above according to this application.
[0090] The various embodiments of this application have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or improvement of the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.
Claims
1. A method for pre-screening storage particles, characterized in that, include: Perform an initial partial scan on the Flash memory and generate the initial partial scan results; Based on the results of the first round of local scanning, if the results of the first round of local scanning meet the first preset standard, the Flash is determined to be a medium-to-high quality Flash; if the results of the first round of local scanning do not meet the first preset standard, the Flash is determined to be a low-quality Flash.
2. The storage particle pre-screening method according to claim 1, characterized in that, After determining that the Flash is a medium-to-high quality Flash, the process also includes: Perform the two rounds of local scanning on the Flash memory to generate the results of the two rounds of local scanning. Based on the results of the two rounds of local scanning, if the results of the two rounds of local scanning reach the second preset standard, the Flash is determined to be a high-quality Flash; if the results of the two rounds of local scanning reach the third preset standard, the Flash is determined to be a medium-quality Flash.
3. The method for pre-screening storage particles according to claim 2, characterized in that, Before performing the two-round local scan on the Flash and generating the two-round local scan results, the process also includes: Send at least one erase command to the Flash to erase the Block that was subjected to the first round of local scanning in the Flash.
4. The method for pre-screening storage particles according to claim 2, characterized in that, The process of performing a first-round partial scan on the Flash memory and generating the first-round partial scan results includes: Configure the first preset ratio; Select the local scan block of each Plane according to the first preset ratio; Configure the local scan block to run in SLC mode, perform read and write operations on the local scan block, and generate the first round of SLC local scan results of Flash based on the results of the read and write operations; Configure the local scan block to run in TLC mode, perform read and write operations on the local scan block, and generate the first round of local scan results of Flash TLC based on the results of the read and write operations.
5. The method for pre-screening storage particles according to claim 3, characterized in that, The first preset standard includes: If the capacity in the first round of partial scanning results of the SLC is less than the capacity in the first round of partial scanning results of the TLC, and the sector template of the Flash is complete, then the Flash is determined to be a medium-to-high quality Flash. If the capacity in the first round of partial scanning results of the SLC is greater than or equal to the capacity in the first round of partial scanning results of the TLC, or if the sector template of the Flash is incomplete, then the Flash is determined to be a low-quality Flash.
6. The method for pre-screening storage particles according to claim 5, characterized in that, The process of performing the two-round local scan on the Flash and generating the two-round local scan results includes: Configure a second preset ratio; Select the local scan block of each Plane according to the second preset ratio; Configure the local scan block to run in SLC mode, perform read and write operations on the local scan block, and generate the SLC second-round local scan results of Flash based on the results of the read and write operations; Based on the page template, sector template, and block template of the SLC second-round partial scan results in the Flash TLC first-round partial scan, the Flash TLC second-round partial scan results are generated.
7. The method for pre-screening storage particles according to claim 6, characterized in that, The second preset standard includes: If the page template loss rate in the TLC second-round partial scan result is less than or equal to the first preset page loss rate, has two or more plane bindings, and the sector template is complete, then the Flash is determined to be a high-quality Flash.
8. The method for pre-screening storage particles according to claim 7, characterized in that, The third preset standard includes: If the page template loss rate in the TLC second-round partial scan result is greater than the first preset page loss rate and less than or equal to the second preset page loss rate, has two or more plane bindings, and the sector template is complete, then the Flash is determined to be a medium-quality Flash.
9. A storage particle pre-screening device, characterized in that, include: The first-round scan module is used to perform the first-round partial scan on the Flash and generate the first-round partial scan results; The first screening module is used to make a judgment based on the results of the first round of local scanning. If the results of the first round of local scanning meet the first preset standard, the Flash is determined to be a medium-to-high quality Flash. If the results of the first round of local scanning do not meet the first preset standard, the Flash is determined to be a low-quality Flash.
10. A storage control chip, characterized in that, include: The storage particle device as described in claim 9.
Citation Information
Patent Citations
Flash memory particle screening and grading method
CN110148435A
Flash memory particle screening method, terminal and computer readable storage medium
CN114220470A
Method for realizing quality grade division, computer storage medium and terminal
CN116230066A
Method for managing flash memories having mixed memory types using a finely granulated allocation of logical memory addresses to physical memory addresses
US20150220433A1
High, medium, low-order flash memory classification method
WO2020015125A1