SSD Read Disturb optimization method and device, computer equipment and storage medium

By dynamically correlating storage media characteristics and read interference management, differentiated inspection thresholds are set for different physical block types, and the efficiency waste and write amplification effects caused by existing SSD read interference management solutions are solved, achieving more efficient data migration and longer service life.

CN120162007APending Publication Date: 2025-06-17SUZHOU UNIONMEMORY INFORMATION SYST LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510312948.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-17
Publication Date
2025-06-17

AI Technical Summary

Technical Problem

The read interference management solution of existing SSDs adopts a unified threshold for the entire disk, which causes data migration to be triggered prematurely by high-durability media, resulting in waste of performance, and triggers significant write amplification effect and systemic performance loss.

Method used

By obtaining the read count of the physical block and obtaining the first trigger threshold and periodic check threshold according to its type, only the Read Disturb check is performed when the read count exceeds the threshold and the physical block is in a normal state to determine whether data migration is triggered.

Benefits of technology

This method can set differentiated inspection thresholds for different physical block types, avoid unnecessary data migration, reduce write amplification effects and systemic performance losses, and improve the service life and performance of SSDs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120162007A_ABST
    Figure CN120162007A_ABST
Patent Text Reader

Abstract

The invention discloses an SSD Read Disturb optimization method and device, computer equipment and a storage medium, and relates to the technical field of solid state disks. The method comprises the following steps: acquiring a read count of a physical block; acquiring a first triggering threshold value of the physical block based on the type of the physical block; judging whether the read count of the physical block is greater than the first trigger threshold value or not; if the read count of the physical block is greater than the first trigger threshold, performing Read Disturb check on the physical block to obtain a check result; and based on the check result, judging whether to trigger the migration of the data of the physical block to a newly erased / distributed target physical block. Therefore, according to the SSD Read Disturb optimization method, different check thresholds can be set for different physical block types, and data migration is triggered only when a data error risk is found, so that the influence of excessive migration on the SSD performance can be avoided, and the service life of the SSD is further prolonged.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of solid state drives, and in particular to an SSD Read Disturb optimization method, device, computer equipment and storage medium. Background Art

[0002] In the field of read disturbance management of solid-state drives (SSDs), the existing technical solutions use a working mechanism with a unified threshold for the entire disk, which has significant technical defects. The core processing flow is as follows: the system establishes a read count table for each physical block. When a read operation occurs on any physical page, the read count of the corresponding physical block is accumulated; when the physical block is erased and the data is rewritten, the relevant count is reset to zero. When the read count value of any physical block reaches the preset threshold, the system will force the data migration process to be started, and the data stored in the physical block will be moved as a whole to the newly erased physical block, thereby resetting the read count.

[0003] This unified threshold solution exposes three key technical contradictions in engineering practice:

[0004] First, the threshold setting mechanism is seriously mismatched with the physical characteristics of NAND storage media. NAND chips of different processes have differentiated anti-read interference capability indicators: the SLC (single-layer cell) structure can withstand about 1 million read operations, the MLC (multi-layer cell) corresponds to 500,000 times, and the QLC (quadruple-layer cell) can only guarantee 100,000 times of data reliability. The existing solution uses a conservative unified threshold (for example, 100,000 times), which can ensure the security of QLC media, but causes high-durability media (SLC / MLC) to trigger data migration prematurely. This "barrel effect" threshold setting method actually causes a waste of performance of high-reliability storage units.

[0005] Secondly, invalid data migration triggers a significant write amplification effect. Taking the SLC physical block as an example, its actual bearing capacity is 10 times the set threshold, but under the existing mechanism, it is forced to perform unnecessary data migration 9 times in advance. Each migration operation not only consumes additional write-erase cycles (P / E Cycle), but also produces a chain write amplification effect - the new physical block writing needs to occupy the reserved space (Over-Provisioning), and when the reserved space is insufficient, it will also trigger the garbage collection (GarbageCollection) operation, forming a multi-level linkage resource consumption.

[0006] Finally, the systematic performance degradation directly affects the product life cycle. Statistical data shows that the effective utilization rate of SLC blocks under the unified threshold scheme is less than 15% of the design potential, while QLC blocks need to frequently perform data maintenance. This contradiction results in the inability of the storage medium to achieve the optimal performance configuration: the high-cost SLC medium loses its speed advantage due to excessive maintenance, while the QLC medium accelerates aging due to frequent migration. Ultimately, it is reflected that the overall life of the SSD is shortened by about 30%-40% compared with the theoretical value, and the random write performance drops by more than 25%.

[0007] Industry research has confirmed that the root cause of the above problems lies in the fact that the existing technical solutions fail to establish a dynamic correlation mechanism between the characteristics of the storage medium and read disturbance management. How to achieve differential configuration of threshold parameters while ensuring data reliability and optimize the trigger logic of data migration has become the key technical bottleneck for improving the comprehensive performance of SSD products. Summary of the Invention

[0008] Embodiments of the present invention provide an SSD Read Disturb optimization method, device, computer device and storage medium, aiming to solve at least one of the technical problems in the above background technology.

[0009] In a first aspect, embodiments of the present invention provide an SSD Read Disturb optimization method, which includes:

[0010] Obtain the read count of a physical block;

[0011] Obtain the first trigger threshold of the physical block based on the type of the physical block;

[0012] Judge whether the read count of the physical block is greater than the first trigger threshold;

[0013] If the read count of the physical block is greater than the first trigger threshold, perform a Read Disturb check on the physical block to obtain a check result;

[0014] Based on the check result, judge whether to trigger the migration of the data of the physical block to a newly erased / assigned target physical block.

[0015] A further technical solution thereof is that the obtaining the read count of the physical block includes:

[0016] Read the read count of the physical block from a preset physical block read count tracking table.

[0017] A further technical solution thereof is that the method further includes:

[0018] If a read operation occurs on the physical block, increase the read count of the physical block by 1 in the physical block read count tracking table;

[0019] If an erase operation occurs on the physical block, zero out the read count of the physical block in the physical block read count tracking table.

[0020] A further technical solution thereof is that obtaining the first trigger threshold of the physical block based on the type of the physical block includes:

[0021] Determine the first trigger threshold of the physical block from a preset medium type - threshold correspondence table according to the type of the physical block.

[0022] A further technical solution thereof is that the inspection result includes the number of error bits (bit error count) in the physical pages of the physical block; based on the inspection result, determining whether to trigger migrating the data of the physical block to a newly erased / assigned target physical block includes:

[0023] Determine whether the number of error bits in any physical page of the physical block exceeds a preset error bit threshold;

[0024] If the number of error bits in any physical page of the physical block exceeds the preset error bit threshold, trigger migrating the data of the physical block to a newly erased / assigned target physical block.

[0025] A further technical solution thereof is that based on the inspection result, determining whether to trigger migrating the data of the physical block to a newly erased / assigned target physical block further includes:

[0026] If the number of error bits in all physical pages of the physical block does not exceed the preset error bit threshold, determine that the physical block is in a normal state.

[0027] A further technical solution thereof is that the method further includes:

[0028] After the read count of the physical block is greater than the first trigger threshold and it is determined that the physical block is in a normal state, every time the read count of the physical block increases by a preset periodic inspection threshold, go to the step of performing a Read Disturb inspection on the physical block.

[0029] In a second aspect, an embodiment of the present invention further provides an SSD Read Disturb optimization device, which includes a unit for executing the above method.

[0030] In a third aspect, an embodiment of the present invention further provides a computer device, which includes a memory and a processor, and a computer program is stored on the memory, and when the processor executes the computer program, the above method is implemented.

[0031] Fourthly, an embodiment of the present invention further provides a computer-readable storage medium storing a computer program, which can implement the above method when executed by a processor.

[0032] An embodiment of the present invention provides an SSD Read Disturb optimization method, device, computer device and storage medium. The method includes: obtaining the read count of a physical block; obtaining the first trigger threshold of the physical block based on the type of the physical block; determining whether the read count of the physical block is greater than the first trigger threshold; if the read count of the physical block is greater than the first trigger threshold, performing a Read Disturb check on the physical block to obtain a check result; and determining whether to trigger migrating the data of the physical block to a newly erased / assigned target physical block based on the check result. It can be seen that this SSD Read Disturb optimization method can set different check thresholds for different physical block types and trigger data migration only when a data error risk is found, which can avoid the impact on SSD performance caused by overly aggressive migration and thus improve the service life of the SSD. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] To more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for the description of the embodiments will be briefly introduced below. Obviously, the drawings in the following description are some embodiments of the present invention, and those of ordinary skill in the art can obtain other drawings without creative efforts based on these drawings.

[0034] Figure 1 It is a flowchart of an SSD Read Disturb optimization method provided by an embodiment of the present invention;

[0035] Figure 2 It is a screenshot of the medium type-threshold correspondence table of an SSD Read Disturb optimization method provided by an embodiment of the present invention;

[0036] Figure 3 It is a schematic diagram of an SSD Read Disturb optimization method provided by an embodiment of the present invention;

[0037] Figure 4 It is a flowchart of an SSD Read Disturb optimization method provided by a specific embodiment of the present invention;

[0038] Figure 5 It is a schematic block diagram of a computer device provided by an embodiment of the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0039] Next, the technical solutions in the embodiments of the present invention will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, rather than all the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the protection scope of the present invention.

[0040] It should be understood that when used in this specification and the appended claims, the terms "comprises" and "comprising" indicate the presence of the described features, wholes, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, wholes, steps, operations, elements, components, and / or their combinations.

[0041] It should also be understood that the terms used in this specification of the present invention are only for the purpose of describing specific embodiments and are not intended to limit the present invention. As used in this specification of the present invention and the appended claims, unless the context clearly indicates otherwise, the singular forms "a", "an", and "the" are intended to include the plural forms.

[0042] It should be further understood that the term "and / or" used in this specification of the present invention and the appended claims refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0043] As used in this specification and the appended claims, the term "if" can be interpreted as "when", "once", "in response to determining", or "in response to detecting" according to the context. Similarly, the phrase "if determined" or "if [the described condition or event] is detected" can be interpreted as meaning "once determined", "in response to determining", "once [the described condition or event] is detected", or "in response to detecting [the described condition or event]" according to the context.

[0044] Please refer to Figures 1-4 , an SSD Read Disturb optimization method is proposed in the embodiments of the present invention. The SSD Read Disturb optimization method can set different check thresholds for different physical block types, and only trigger data migration when a data error risk is found, which can avoid the impact on the SSD performance caused by overly aggressive migration, and thus also improve the service life of the SSD. Specifically, see Figure 1 , the SSD Read Disturb optimization method includes the following steps:

[0045] S1, obtain the read count of the physical block.

[0046] In specific implementation, obtain the read count of a physical block. The read count is the number of consecutive reads of the physical block.

[0047] For example, in some embodiments, such as this embodiment, the above step of "obtaining the read count of a physical block" specifically includes the following steps: Read the read count of the physical block from a preset physical block read count tracking table.

[0048] In specific implementation, maintain a physical block read count tracking table, which records the read counts of each physical block of the solid-state drive. Therefore, the read counts of each physical block can be read from the physical block read count tracking table. The physical block read count tracking table can be designed based on an SRAM or Flash mapping table and atomic operations to avoid multi-thread conflicts.

[0049] Further, the method further includes: If a read operation occurs on the physical block, increment the read count of the physical block by 1 in the physical block read count tracking table; if an erase operation occurs on the physical block, reset the read count of the physical block to zero in the physical block read count tracking table. Through the above steps, accurate update of the read count of the physical block can be achieved.

[0050] S2. Obtain the first trigger threshold of the physical block based on the type of the physical block.

[0051] In specific implementation, for each type of physical block, its first trigger threshold is preset in advance, and the first trigger thresholds of different types of physical blocks may be different. The first trigger threshold can be set by those skilled in the art, and the present application does not specifically limit this.

[0052] For example, in some embodiments, such as this embodiment, the above step of "obtaining the first trigger threshold of the physical block based on the type of the physical block" specifically includes the following steps: Determine the first trigger threshold of the physical block from a preset medium type-threshold correspondence table according to the type of the physical block.

[0053] Specifically, the medium type-threshold correspondence table is used to record the correspondence between the type of the physical block and the first trigger threshold. Further, the medium type-threshold correspondence table may also record the correspondence between the type of the physical block and the periodic check threshold. The first trigger threshold refers to the threshold corresponding to the count value of the physical block triggering the first Read Disturb check; the periodic check threshold refers to the threshold corresponding to the count value of the physical block triggering the Read Disturb check again after the count value of the physical block exceeds the first trigger threshold.

[0054] For example, refer to Figure 2 , which is a specific example of the medium type-threshold correspondence table. Figure 2In this case, Block Type is the type of physical block, Base_RD_CNT_TH is the first trigger threshold; INC_RD_CNT_TH is the periodic check threshold. Taking the type SLC as an example, the first trigger threshold is 1,000,000 and the periodic check threshold is 100,000. Then, when the read count of the physical block reaches 1,000,000, the first Read Disturb check is triggered. After the read count of the physical block exceeds 1,000,000, for every additional 100,000 in the read count, the Read Disturb check is triggered periodically.

[0055] Understandably, the physical block type identification can be achieved through the metadata identification of the NAND chip.

[0056] S3, determine whether the read count of the physical block is greater than the first trigger threshold.

[0057] S4, if the read count of the physical block is greater than the first trigger threshold, perform a ReadDisturb check on the physical block to obtain a check result.

[0058] In a specific implementation, if the read count of the physical block is greater than the first trigger threshold, a Read Disturb check is performed on the physical block. The check result is obtained by counting the number of error bits through the ECC check result of reading the physical page. The check result includes the number of error bits in the physical pages of the physical block. The Read Disturb check can be executed by a preset ReadDisturb monitoring service program.

[0059] S5, based on the check result, determine whether to trigger the migration of the data of the physical block to a newly erased / assigned target physical block.

[0060] In a specific implementation, the check result includes the number of error bits in the physical pages of the physical block. The above step "based on the check result, determine whether to trigger the migration of the data of the physical block to a newly erased / assigned target physical block" specifically includes: determining whether there is any physical page in the physical block whose number of error bits exceeds a preset error bit number threshold; if there is any physical page in the physical block whose number of error bits exceeds the preset error bit number threshold, trigger the operation of migrating the data of the physical block to a newly erased / assigned target physical block. Update the count value of the target physical block to 0. Understandably, the error bit number threshold should be lower than the maximum ECC error correction ability of the SSD.

[0061] If the number of error bits in all physical pages of the physical block does not exceed the preset error bit number threshold, it is determined that the physical block is in a normal state.

[0062] Further, in some embodiments, such as the present embodiment, the method further includes: after the read count of the physical block is greater than the first trigger threshold and it is determined that the physical block is in a normal state, every time the read count of the physical block increases by a preset periodic check threshold, it goes to the step of performing a Read Disturb check on the physical block, performs a Read Disturb check on the physical block again to obtain a check result, and based on the check result, determines whether to trigger an operation of migrating the data of the physical block to a newly erased / assigned target physical block.

[0063] See Figures 3-4 , Figure 3 which shows the logical relationship between threshold dynamic adjustment and data migration, Figure 4 and shows the execution operations of a specific embodiment. The execution process of a specific embodiment of the present invention includes the following steps:

[0064] Step 4.1, the SSD internally initiates read, write, and erase requests.

[0065] Step 4.2, determine whether it is an erase operation.

[0066] If so, continue to Step 4.3.

[0067] If not, jump to Step 4.4.

[0068] Step 4.3, clear the read count of the corresponding physical block in the BlockRCTable (Physical Block Read Count Tracking Table) to 0, and jump to Step 4.1.

[0069] Step 4.4, determine whether it is a write operation.

[0070] If so, continue to Step 4.5.

[0071] If not, jump to Step 4.6.

[0072] Step 4.5, perform a data write operation according to the traditional SSD process, and jump to Step 4.1.

[0073] Step 4.6, increment the read count (add 1) of the corresponding physical block X read in the BlockRCTable,

[0074] Step 4.7, the RD monitoring service program queries the thresholds Base_RD_CNT_TH / INC_RD_CNT_TH corresponding to the physical block type of the physical block X.

[0075] Step 4.8, compare the size relationship between the corresponding physical block read count (Block_RC_Table[x]) and the threshold.

[0076] Taking the SLC physical block as an example, according toFigure 2 It can be seen that Base_RD_CNT_TH = 1,000,000 and INC_RD_CNT_TH = 100,000;

[0077] Only when Block_RC_Table[x] is 1,000,000 + N * 100,000 (N = 0 / 1 / 2 / …), the RD check trigger condition is satisfied.

[0078] Step 4.9, determine whether the check condition is satisfied.

[0079] If so, continue with step 4.10.

[0080] If not, jump to step 4.1.

[0081] Step 4.10, the RD check service program reads each physical page of physical block X in sequence and obtains the error bit count of each physical page.

[0082] Step 4.11, determine whether the error bit count exceeds the threshold.

[0083] If so, continue with step 4.12.

[0084] If not, jump to step 4.1.

[0085] Step 4.12, the RD check service program erases / allocates a new physical block Y and clears its count to 0: Block_RC_Table[y] = 0.

[0086] 4.13, the RD check service program reads the data of physical block X and writes it to physical block Y, then jumps to step 4.1.

[0087] An embodiment of the present invention proposes an SSD Read Disturb optimization method, including: obtaining the read count of a physical block; obtaining the first trigger threshold of the physical block based on the type of the physical block; determining whether the read count of the physical block is greater than the first trigger threshold; if the read count of the physical block is greater than the first trigger threshold, performing a Read Disturb check on the physical block to obtain a check result; based on the check result, determining whether to trigger the migration of the data of the physical block to a newly erased / assigned target physical block. It can be seen that this SSD Read Disturb optimization method can set different check thresholds for different physical block types, and only triggers data migration when a data error risk is found, which can avoid the impact on SSD performance caused by overly aggressive migration, and thus also improves the service life of the SSD.

[0088] Corresponding to the above SSD Read Disturb optimization method, the present invention also provides an SSD Read Disturb optimization device. The SSD Read Disturb optimization device includes a unit for executing the above SSD Read Disturb optimization method, and the SSD Read Disturb optimization device can be configured in terminals such as desktop computers, tablet computers, laptop computers, etc. Specifically, the SSD Read Disturb optimization device includes:

[0089] A first acquisition unit for acquiring the read count of a physical block;

[0090] A second acquisition unit for acquiring the first trigger threshold of a physical block based on the type of the physical block;

[0091] A judgment unit for judging whether the read count of the physical block is greater than the first trigger threshold;

[0092] An inspection unit for performing a Read Disturb inspection on the physical block and obtaining an inspection result if the read count of the physical block is greater than the first trigger threshold;

[0093] A trigger unit for judging whether to trigger migrating the data of the physical block to a newly erased / assigned target physical block based on the inspection result.

[0094] In some embodiments, such as this embodiment, the acquiring the read count of a physical block includes:

[0095] Reading the read count of the physical block from a preset physical block read count tracking table.

[0096] In some embodiments, such as this embodiment, the SSD Read Disturb optimization device further includes:

[0097] An increment unit for incrementing the read count of the physical block by 1 in the physical block read count tracking table if a read operation occurs on the physical block;

[0098] A zeroing unit for zeroing the read count of the physical block in the physical block read count tracking table if an erase operation occurs on the physical block.

[0099] In some embodiments, such as this embodiment, the acquiring the first trigger threshold of a physical block based on the type of the physical block includes:

[0100] Determining the first trigger threshold of the physical block from a preset medium type - threshold correspondence table according to the type of the physical block.

[0101] In some embodiments, such as this embodiment, the inspection result includes the number of error bits in the physical pages of the physical block; based on the inspection result, determining whether to trigger migrating the data of the physical block to a newly erased / assigned target physical block includes:

[0102] Determining whether the number of error bits in any physical page of the physical block exceeds a preset error bit number threshold;

[0103] If the number of error bits in any physical page of the physical block exceeds the preset error bit number threshold, trigger migrating the data of the physical block to a newly erased / assigned target physical block.

[0104] In some embodiments, such as this embodiment, based on the inspection result, determining whether to trigger migrating the data of the physical block to a newly erased / assigned target physical block further includes:

[0105] If the number of error bits in all physical pages of the physical block does not exceed the preset error bit number threshold, determine that the physical block is in a normal state.

[0106] In some embodiments, such as this embodiment, the SSD Read Disturb optimization device further includes:

[0107] A jump unit, configured to, after the read count of the physical block is greater than the first trigger threshold and it is determined that the physical block is in a normal state, every time the read count of the physical block increases by a preset periodic inspection threshold, transfer to the step of performing a Read Disturb inspection on the physical block.

[0108] It should be noted that those skilled in the art can clearly understand that the specific implementation processes of the above SSD Read Disturb optimization device and each unit can refer to the corresponding descriptions in the foregoing method embodiments. For the sake of convenience and brevity of description, they will not be elaborated herein.

[0109] The above SSD Read Disturb optimization device can be implemented in the form of a computer program, and this computer program can run on a computer device as shown in Figure 5 shown.

[0110] Please refer to Figure 5 , Figure 5 is a schematic block diagram of a computer device provided by an embodiment of the present application. The computer device 500 can be a terminal or a server. Among them, the terminal can be an electronic device with a communication function such as a smart phone, a tablet computer, a notebook computer, a desktop computer, a personal digital assistant, and a wearable device. The server can be an independent server or a server cluster composed of multiple servers.

[0111] The computer device 500 includes a processor 502, a memory, and a network interface 505 connected via a system bus 501. Among them, the memory may include a non-volatile storage medium 503 and an internal memory 504.

[0112] The non-volatile storage medium 503 can store an operating system 5031 and a computer program 5032. When the computer program 5032 is executed, it can cause the processor 502 to execute an SSD Read Disturb optimization method.

[0113] The processor 502 is used to provide computing and control capabilities to support the operation of the entire computer device 500.

[0114] The internal memory 504 provides an environment for the operation of the computer program 5032 in the non-volatile storage medium 503. When the computer program 5032 is executed by the processor 502, it can cause the processor 502 to execute an SSD Read Disturb optimization method.

[0115] The network interface 505 is used for network communication with other devices. Those skilled in the art can understand that the above structure is only a block diagram of some structures related to the solution of this application, and does not constitute a limitation on the computer device 500 to which the solution of this application is applied. The specific computer device 500 may include more or fewer components than those shown in the figure, or combine some components, or have different component arrangements.

[0116] Among them, the processor 502 is used to run the computer program 5032 stored in the memory to implement an SSD Read Disturb optimization method, which specifically includes the following steps:

[0117] Obtain the read count of the physical block;

[0118] Obtain the first trigger threshold of the physical block based on the type of the physical block;

[0119] Judge whether the read count of the physical block is greater than the first trigger threshold;

[0120] If the read count of the physical block is greater than the first trigger threshold, perform a Read Disturb check on the physical block to obtain a check result;

[0121] Based on the check result, judge whether to trigger the migration of the data of the physical block to a newly erased / assigned target physical block.

[0122] In some embodiments, such as this embodiment, the obtaining of the read count of the physical block includes:

[0123] Read the read count of the physical block from a preset read count tracking table for physical blocks.

[0124] In some embodiments, such as this embodiment, the method further includes:

[0125] If a read operation occurs on the physical block, increment the read count of the physical block by 1 in the physical block read count tracking table;

[0126] If an erase operation occurs on the physical block, set the read count of the physical block to zero in the physical block read count tracking table.

[0127] In some embodiments, such as this embodiment, obtaining the first trigger threshold of the physical block based on the type of the physical block includes:

[0128] Determine the first trigger threshold of the physical block from a preset medium type - threshold correspondence table according to the type of the physical block.

[0129] In some embodiments, such as this embodiment, the inspection result includes the number of error bits in the physical pages of the physical block; based on the inspection result, determining whether to trigger migrating the data of the physical block to a newly erased / assigned target physical block includes:

[0130] Determine whether the number of error bits in any physical page of the physical block exceeds a preset error bit number threshold;

[0131] If the number of error bits in any physical page of the physical block exceeds the preset error bit number threshold, trigger migrating the data of the physical block to a newly erased / assigned target physical block.

[0132] In some embodiments, such as this embodiment, based on the inspection result, determining whether to trigger migrating the data of the physical block to a newly erased / assigned target physical block further includes:

[0133] If the number of error bits in all physical pages of the physical block does not exceed the preset error bit number threshold, determine that the physical block is in a normal state.

[0134] In some embodiments, such as this embodiment, the method further includes:

[0135] After the read count of the physical block is greater than the first trigger threshold and it is determined that the physical block is in a normal state, every time the read count of the physical block increases by a preset periodic inspection threshold, go to the step of performing a Read Disturb check on the physical block.

[0136] It should be understood that in the embodiments of the present application, the processor 502 may be a central processing unit (CPU), and the processor 502 may also be other general-purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Among them, the general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.

[0137] Those of ordinary skill in the art can understand that all or part of the processes in the methods of the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a storage medium, and the storage medium is a computer-readable storage medium. The computer program is executed by at least one processor in the computer system to implement the flow steps of the embodiments of the above methods.

[0138] Therefore, the present invention also provides a storage medium. The storage medium may be a computer-readable storage medium. The storage medium stores a computer program. When the computer program is executed by a processor, the processor executes an SSD ReadDisturb optimization method, which specifically includes the following steps:

[0139] Obtain the read count of the physical block;

[0140] Obtain the first trigger threshold of the physical block based on the type of the physical block;

[0141] Determine whether the read count of the physical block is greater than the first trigger threshold;

[0142] If the read count of the physical block is greater than the first trigger threshold, perform a Read Disturb check on the physical block to obtain a check result;

[0143] Based on the check result, determine whether to trigger the migration of the data of the physical block to a newly erased / assigned target physical block.

[0144] In some embodiments, such as this embodiment, the obtaining of the read count of the physical block includes:

[0145] Read the read count of the physical block from a preset physical block read count tracking table.

[0146] In some embodiments, such as this embodiment, the method further includes:

[0147] If a read operation occurs on the physical block, increment the read count of the physical block by 1 in the physical block read count tracking table;

[0148] If an erase operation occurs on the physical block, reset the read count of the physical block to zero in the physical block read count tracking table.

[0149] In some embodiments, such as this embodiment, obtaining the first trigger threshold of the physical block based on the type of the physical block includes:

[0150] Determine the first trigger threshold of the physical block from a preset medium type - threshold correspondence table according to the type of the physical block.

[0151] In some embodiments, such as this embodiment, the inspection result includes the number of error bits in the physical pages of the physical block; based on the inspection result, determining whether to trigger migrating the data of the physical block to a newly erased / assigned target physical block includes:

[0152] Determine whether the number of error bits in any one of the physical pages of the physical block exceeds a preset error bit threshold;

[0153] If the number of error bits in any one of the physical pages of the physical block exceeds the preset error bit threshold, trigger migrating the data of the physical block to a newly erased / assigned target physical block.

[0154] In some embodiments, such as this embodiment, based on the inspection result, determining whether to trigger migrating the data of the physical block to a newly erased / assigned target physical block further includes:

[0155] If the number of error bits in all the physical pages of the physical block does not exceed the preset error bit threshold, determine that the physical block is in a normal state.

[0156] In some embodiments, such as this embodiment, the method further includes:

[0157] After the read count of the physical block is greater than the first trigger threshold and it is determined that the physical block is in a normal state, every time the read count of the physical block increases by a preset periodic inspection threshold, go to the step of performing a Read Disturb inspection on the physical block.

[0158] The storage medium is a physical, non - transitory storage medium, such as a USB flash drive, a portable hard drive, a read - only memory (ROM), a magnetic disk, or an optical disc, etc., which are various physical storage media that can store program codes. The computer - readable storage medium can be non - volatile or volatile.

[0159] Those of ordinary skill in the art can realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. To clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described according to functions in the above description. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Professional technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present invention.

[0160] In several embodiments provided by the present invention, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of each unit is only a logical function division, and there may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed.

[0161] The steps in the method embodiments of the present invention can be adjusted, combined, and deleted according to actual needs. The units in the device embodiments of the present invention can be combined, divided, and deleted according to actual needs. In addition, the functional units in each embodiment of the present invention can be integrated into a processing unit, or each unit can exist physically alone, or two or more units can be integrated into one unit.

[0162] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a storage medium. Based on such an understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for causing a computer device (which can be a personal computer, a terminal, or a network device, etc.) to execute all or part of the steps of the methods described in each embodiment of the present invention.

[0163] In the above embodiments, the descriptions of each embodiment have their own emphases. For the parts not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0164] Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalent technologies, the present invention is also intended to include these changes and modifications.

[0165] As described above, it is only the specific implementation manner of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art within the technical scope disclosed by the present invention can easily think of various equivalent modifications or substitutions, and these modifications or substitutions should be covered within the protection scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims

1. A SSD Read Disturb optimization method, characterized in that: include: Get the read count of the physical block; Acquire a first trigger threshold of a physical block based on the type of the physical block; Determining whether the read count of the physical block is greater than the first trigger threshold; If the read count of the physical block is greater than the first trigger threshold, a Read Disturb check is performed on the physical block to obtain a check result; Based on the inspection result, it is determined whether to trigger migration of the data of the physical block to a newly erased / allocated target physical block.

2. The SSD Read Disturb optimization method according to claim 1, characterized in that: The obtaining of the read count of the physical block includes: The read count of the physical block is read from a preset physical block read count tracking table.

3. The SSD Read Disturb optimization method according to claim 2, characterized in that: The method further comprises: If a read operation occurs on the physical block, the read count of the physical block is increased by 1 in the physical block read count tracking table; If an erase operation occurs on the physical block, the read count of the physical block is reset to zero in the physical block read count tracking table.

4. The SSD Read Disturb optimization method according to claim 1, characterized in that: The obtaining of a first trigger threshold of a physical block based on the type of the physical block includes: According to the type of the physical block, the first trigger threshold of the physical block is determined from a preset medium type-threshold correspondence table.

5. The SSD Read Disturb optimization method according to claim 1, characterized in that: The inspection result includes the number of error bits in the physical page of the physical block; The determining, based on the inspection result, whether to trigger migration of the data of the physical block to a newly erased / allocated target physical block comprises: Determine whether there is any physical page in the physical block whose error bit number exceeds a preset error bit number threshold; If the number of error bits in any physical page of the physical block exceeds a preset error bit number threshold, it triggers the migration of data of the physical block to a newly erased / allocated target physical block.

6. The SSD Read Disturb optimization method according to claim 5, characterized in that: The step of determining whether to trigger migration of the data of the physical block to a newly erased / allocated target physical block based on the inspection result further includes: If the number of error bits in all physical pages in the physical block does not exceed a preset error bit number threshold, it is determined that the physical block is in a normal state.

7. The SSD Read Disturb optimization method according to claim 6, characterized in that: The method further comprises: After the read count of the physical block is greater than the first trigger threshold and it is determined that the physical block is in a normal state, the read count of the physical block increases by a preset periodic check threshold each time, and the process proceeds to the step of performing ReadDisturb check on the physical block.

8. An SSD Read Disturb optimization device, characterized in that: The method comprises a unit for executing the method according to any one of claims 1 to 7.

9. A computer device, characterized in that: The computer device includes a memory and a processor, the memory stores a computer program, and the processor implements the method according to any one of claims 1 to 7 when executing the computer program.

10. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 7 can be implemented.