A read disturb optimization method

By optimizing the read interference handling of SSDs using a CNN model with multi-source parameters and attention mechanism, the problem of data errors caused by read interference in solid-state drives is solved, the accuracy of risk block identification and verification efficiency are improved, and the model is adapted to different working conditions and optimized for read interference handling.

CN121614412BActive Publication Date: 2026-08-04国创芯科技(江苏)有限公司
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
国创芯科技(江苏)有限公司
Filing Date
2025-11-27
Publication Date
2026-08-04

AI Technical Summary

Technical Problem

Read interference caused by read operations in existing solid-state drives (SSDs) leads to data reading errors, affecting performance and reliability. The existing fixed read count threshold cannot adapt to different application scenarios and workloads, resulting in reduced performance and reliability.

Method used

By collecting multi-source parameters, calculating the final threshold using the multi-source parameters within a dynamic window, and combining an attention-based CNN model to filter high-risk pages, differential verification and data migration are performed to optimize read interference processing.

Benefits of technology

It improves the accuracy of risk block identification, reduces the performance loss of page-level verification, improves verification efficiency, reduces the false negative rate and read latency fluctuation, and optimizes the adaptability of read interference handling.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121614412B_ABST
    Figure CN121614412B_ABST
Patent Text Reader

Abstract

The application belongs to the technical field of data storage, and provides a read interference optimization method, which comprises the following steps: collecting multi-source parameters; determining final threshold values of all data blocks in a dynamic window based on multi-source parameters of a current data block and its adjacent data blocks in the dynamic window; inputting the current data block and the adjacent data blocks similar to the final threshold value of the current data block into a pre-trained CNN model containing an attention mechanism, and dividing high-risk pages and low-risk pages according to the size of attention weights; performing differential verification on the high-risk pages and the low-risk pages, and determining the pages needing to be migrated in the high-risk pages; determining a data migration target block, and writing data of the pages needing to be migrated into the data migration target block. The application overcomes the poor adaptability of different working conditions caused by triggering overall recovery based on a fixed threshold value, solves the threshold rigidity problem under complex working conditions, and improves the risk block identification accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data storage technology, and more specifically to a method for optimizing read interference. Background Technology

[0002] In solid-state drives (SSDs), read operations can cause changes in the charge state of adjacent storage cells, leading to read interference. Read interference can cause data reading errors and affect the performance and reliability of SSDs.

[0003] Since read interference can severely affect the data integrity and reliability of different pages within the same storage block, common methods to deal with read interference mainly include the following two: One strategy is to continuously monitor the read count of the same storage block. When the accumulated value reaches a preset threshold, the system will automatically migrate all valid data in the storage block to another free storage block, while marking the original storage block as invalid or garbage, waiting for subsequent garbage collection mechanisms to clean it up and reallocate it for use; The other method is to reclaim the entire data in units of block stripes through the garbage collection process, and complete the centralized migration of valid data at the same time as the reclamation, thereby reducing the potential risks caused by read interference.

[0004] However, the widely used read count threshold is usually a fixed value. That is, when the number of reads of a data block reaches a pre-set fixed threshold, a refresh or reclamation operation of the entire data block is triggered. This fixed threshold mechanism lacks dynamic adaptability to different application scenarios and workloads. It cannot be flexibly adjusted according to actual read / write pressure, data access patterns, or device status. This may lead to premature or excessive reclamation under certain high load conditions, affecting performance, or failure to respond to read interference threats in a timely manner under low load conditions, reducing the overall efficiency and reliability of the system. Summary of the Invention

[0005] To address the shortcomings of existing technologies, this invention provides a read interference optimization method to solve the problem that the current fixed read count threshold for dealing with read interference results in poor threshold adaptability in complex environments.

[0006] This invention provides a read interference optimization method, comprising: Collect parameters from multiple sources, including flash memory hardware parameters, operating condition parameters, environmental parameters, and data attribute parameters; Based on the multi-source parameters of the current data block and its adjacent data blocks within the dynamic window, the final threshold of all data blocks within the dynamic window is determined. The current data block and its neighboring data blocks with a final threshold close to the current data block are input into a pre-trained CNN model with an attention mechanism to obtain the attention weights of each page, and high-risk pages and low-risk pages are divided according to the magnitude of the attention weights. Perform differentiated validation on high-risk and low-risk pages, and identify the pages that need to be migrated from the high-risk pages; Determine the target block for data migration, and during idle periods of the controller or when bandwidth is reserved in the background, write the data of the pages to be migrated into the target block.

[0007] As can be seen from the above technical solution, the read interference optimization method provided by the present invention calculates the SSD threshold through multi-source parameters, which overcomes the problem of poor adaptability to different working conditions caused by the current method of triggering overall recycling based on a fixed threshold, solves the problem of threshold rigidity under complex working conditions, and improves the accuracy of risk block identification.

[0008] Optionally, the final threshold is determined based on the local window threshold and the global baseline threshold, specifically as follows: Local window threshold Base_RDT is the preset baseline read interference judgment value for the flash memory chip. x To read the frequency term coefficients, This represents the average read speed of all data blocks within the dynamic window. y This is the coefficient for the aging term. This represents the aging status of the current data block. Global baseline threshold Global_RDT = Base_RDT × Correction factor Determined based on the current data block's operating condition type, hot / cold block classification, and data block type; Final threshold (Final_RDT) = Local_RDT × +Global_RDT×(1- ), fusion weight It is positively correlated with IOPS.

[0009] Optionally, read the frequency term coefficients. The aging coefficient is y=2x, R is the false negative rate, and W is the write magnification rate; the initial value of x is 0.05.

[0010] Optionally, correction factor This is determined based on the current data block's operating condition, hot / cold block classification, and data block type, specifically including: The basic correction coefficient is determined based on the current data block's operating condition type and hot / cold block classification; among which, the operating condition type is determined according to the priority order of concentrated aging blocks, high temperature heavy load, and dense metadata. If the data block is a metadata block, add an additional correction factor associated with the operating condition type to the basic correction factor.

[0011] Optionally, the basic correction coefficients are as follows: under the condition of concentrated aging blocks, the correction coefficient for hot blocks is 0.5, the correction coefficient for warm blocks is 0.7, and the correction coefficient for cold blocks is 1.5; under the condition of high temperature and heavy load, the correction coefficient for hot blocks is 0.6, the correction coefficient for warm blocks is 0.8, and the correction coefficient for cold blocks is 1.8; under the condition of dense metadata, the correction coefficient for hot blocks is 0.65, the correction coefficient for warm blocks is 0.9, and the correction coefficient for cold blocks is 1.9. The additional correction factor is as follows: -0.15 for aging block concentration, -0.1 for high temperature and heavy load, and -0.2 for metadata-intensive conditions.

[0012] Optionally, the size of the dynamic window is determined based on IOPS, specifically: IOPS < first IOPS threshold, Size=16; First IOPS threshold ≤ IOPS ≤ Second IOPS threshold round(·) means rounding to the nearest integer; IOPS > second IOPS threshold, Size=4.

[0013] Optionally, the size update frequency of the dynamic window is determined based on read latency fluctuations and the number of I / O request processing, including: If the read latency fluctuation is less than or equal to the first fluctuation threshold, then update once every 100 IO requests are processed; If the read latency fluctuation is greater than the first fluctuation threshold and less than or equal to the second fluctuation threshold, then update once every 50 IO requests are processed; If the read latency fluctuation exceeds the second fluctuation threshold, an update will be performed every 30 IO requests.

[0014] Optionally, the differential verification performed on high-risk pages and low-risk pages includes: A global scan is performed on high-risk pages to verify the number of ECC error bits. When the number of error bits exceeds the first error correction capability threshold, the page is identified as needing to be migrated. For low-risk pages, sample verification of abnormal behavior is performed. If no abnormality is found, the verification ends. If an abnormality is found, the sampling ratio is increased. For low-risk pages, if the number of ECC error bits does not exceed the second error correction capability threshold, the data integrity verification result is completely consistent with the original record, and there are no other hardware log-related anomalies, then it is determined that there is no abnormal behavior.

[0015] Optionally, the method further includes: At regular intervals, assess write amplification, false negative rate, and read latency fluctuations. If any of the write amplification rate, false negative rate, or read latency fluctuation exceeds the corresponding preset threshold, the correction coefficient will be adjusted.

[0016] Optionally, it further includes: adjusting the correction coefficient if any one of the write amplification rate, false negative rate, and read latency fluctuation exceeds a corresponding preset threshold, including: If the write amplification exceeds the corresponding preset threshold, the base correction factor of the cold block is increased; If the read latency fluctuation and / or the missed detection rate exceed the corresponding preset thresholds, the base correction coefficient of the hot block / aging block will be reduced; the base correction coefficient adjustment rate of the warm block and the base correction coefficient adjustment rate of the hot block are positively correlated.

[0017] By adopting the above technical solution, this application has the following beneficial effects: This invention calculates the SSD threshold using multiple source parameters, overcoming the problem of poor adaptability to different working conditions caused by the current method of triggering overall recycling based on a fixed threshold, solving the problem of threshold just waking up under complex working conditions, and improving the accuracy of risk block identification. This invention utilizes a CNN model with an attention mechanism to screen SSD risk pages, replacing full-page scanning, reducing the performance overhead of page-level verification, prioritizing high-risk pages, and improving verification efficiency. Attached Figure Description

[0018] To more clearly illustrate the specific embodiments of the present invention or the technical solutions in the prior art, the accompanying drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. In all the drawings, similar elements or parts are generally identified by similar reference numerals. In the drawings, the elements or parts are not necessarily drawn to scale.

[0019] Figure 1 A flowchart of a read interference optimization method provided by an embodiment of the present invention is shown. Detailed Implementation

[0020] The embodiments of the technical solution of the present invention will now be described in detail with reference to the accompanying drawings. These embodiments are only used to more clearly illustrate the technical solution of the present invention and are therefore merely examples, and should not be construed as limiting the scope of protection of the present invention. It should be noted that, unless otherwise stated, the technical or scientific terms used in this application should have the ordinary meaning as understood by one of ordinary skill in the art to which this invention pertains.

[0021] In one embodiment, a read interference optimization method is provided, comprising: S1. Collect parameters from multiple sources, including flash memory hardware parameters, operating condition parameters, environmental parameters, and data attribute parameters.

[0022] The sampling frequency is 10ms / time, and the multi-source parameters specifically include: Flash memory hardware parameters: chip temperature, block-level erase / write cycles (percentage of lifetime), and region ECC historical error rate (average over the past hour). Operating parameters: Real-time IO load (IOPS, i.e., real-time read and write frequency), read and write bandwidth utilization (%). Environmental parameters: SSD operating ambient temperature (obtained via motherboard sensors); Data attribute parameters: Data block type (metadata=1.0, user data=0.7, temporary cache data=0.3, data type weight flag).

[0023] S2. Based on the multi-source parameters of the current data block and its adjacent data blocks within the dynamic window, determine the final threshold of all data blocks within the dynamic window.

[0024] The final threshold is determined based on the local window threshold and the global baseline threshold, specifically: Local window threshold Base_RDT is the preset reference read interference judgment value of the flash memory chip (preset by the manufacturer when the flash memory chip leaves the factory). x To read the frequency term coefficients, This represents the average read speed of all data blocks within the dynamic window. y This is the coefficient for the aging term. This represents the aging degree of the current data block. The coefficient for the read frequency term is included. The aging coefficient is y=2x, R is the false negative rate, and W is the write magnification rate; the initial value of x is 0.05.

[0025] Global baseline threshold Global_RDT = Base_RDT × Correction factor The determination is based on the current data block's operating condition type, hot / cold block classification, and data block type.

[0026] Correction coefficient The methods for determining this include: The basic correction coefficient is determined based on the current data block's operating condition type and hot / cold block classification; among which, the operating condition type is determined according to the priority order of concentrated aging blocks, high temperature heavy load, and dense metadata. If the data block type is a metadata block, add an additional correction factor associated with the operating condition type to the basic correction factor.

[0027] The basic correction factor and the additional correction factor are determined as follows.

[0028] The basic correction factors are as follows: under the condition of concentrated aging blocks, the correction factor for hot blocks is 0.5, the correction factor for warm blocks is 0.7, and the correction factor for cold blocks is 1.5; under the condition of high temperature and heavy load, the correction factor for hot blocks is 0.6, the correction factor for warm blocks is 0.8, and the correction factor for cold blocks is 1.8; under the condition of dense metadata, the correction factor for hot blocks is 0.65, the correction factor for warm blocks is 0.9, and the correction factor for cold blocks is 1.9. The additional correction factor is as follows: -0.15 for aging block concentration, -0.1 for high temperature and heavy load, and -0.2 for metadata-intensive conditions.

[0029] In summary, the correspondence can be formed as shown in Table 1.

[0030] Table 1

[0031] Final threshold (Final_RDT) = Local_RDT × +Global_RDT×(1- ), fusion weight It is positively correlated with IOPS.

[0032] In this step, the size of the dynamic window is determined based on IOPS, specifically: IOPS < first IOPS threshold, Size=16; First IOPS threshold ≤ IOPS ≤ Second IOPS threshold round(·) means rounding to the nearest integer; IOPS > second IOPS threshold, Size=4.

[0033] The first and second IOPS thresholds vary for different SSDs, and these two values ​​need to be set according to the actual situation.

[0034] The frequency of dynamic window size updates is determined based on read latency fluctuations and the number of I / O request processing, including: If the read latency fluctuation is less than or equal to the first fluctuation threshold, then update once every 100 IO requests are processed; If the read latency fluctuation is greater than the first fluctuation threshold and less than or equal to the second fluctuation threshold, then update once every 50 IO requests are processed; If the read latency fluctuation exceeds the second fluctuation threshold, an update will be performed every 30 IO requests.

[0035] S3. Input the current data block and the neighboring data blocks with a final threshold close to that of the current data block into a pre-trained CNN model with an attention mechanism, obtain the attention weights of each page, and divide the high-risk pages and low-risk pages according to the magnitude of the attention weights.

[0036] In this step, the CNN model with an attention mechanism takes page-level 3D features of the data block as input, specifically: read frequency in the past hour, historical ECC error rate, and data type weights; the output is the page weights of the data block. The data type weights are determined during data collection for the three data types: metadata, user data, and temporary cache data, with weights of 1.0 for metadata, 0.7 for user data, and 0.3 for temporary cache data.

[0037] The softmax function outputs the attention weights (0~1.0) for each page of the corresponding data block. Pages with attention weights greater than or equal to 0.6 are marked as "high-risk pages"; pages with attention weights less than 0.6 are marked as "low-risk pages".

[0038] It should be noted that the CNN model with attention mechanism in this step can be updated according to the actual application situation: Data preparation: Collect three types of data from the previous month: (1) operating condition data; (2) threshold data; (3) effect data; Model fine-tuning: Based on the original model, the model is trained with new data, focusing on optimizing the mapping logic between page-level 3D features and attention weights to enhance the model's sensitivity to identifying high-risk pages under new working conditions.

[0039] Validation and Deployment: Test the recognition accuracy of the updated model with a validation set. Once the accuracy is achieved, deploy the model to the SSD controller to replace the original model.

[0040] Based on this, the adaptability of the CNN model to different usage scenarios can be guaranteed, and the effect of handling reading interference can be improved.

[0041] S4. Perform differential validation on high-risk and low-risk pages, and identify the pages that need to be migrated from the high-risk pages.

[0042] Perform differentiated validation on high-risk and low-risk pages, including: A global scan is performed on high-risk pages to verify the number of ECC error bits. When the number of error bits exceeds the first error correction capability threshold, the page is identified as needing to be migrated. For low-risk pages, sample verification of abnormal behavior is performed. If no abnormality is found, the verification ends. If an abnormality is found, the sampling ratio is increased. For low-risk pages, if the number of ECC error bits does not exceed the second error correction capability threshold, the data integrity verification result is completely consistent with the original record, and there are no other hardware log-related anomalies, then it is determined that there is no abnormal behavior.

[0043] Since different flash memory types have different error correction capabilities, the first and second error correction capability thresholds can be determined based on the actual application. For example, if TLC flash memory has high redundancy, the first error correction capability threshold can be set to 50%, and the second error correction capability threshold can be set to a value less than 50%.

[0044] S5. Determine the data migration target block, and during the controller's idle period or when bandwidth is reserved in the background, write the data of the pages to be migrated into the data migration target block.

[0045] In one implementation, the data migration target block is a free block cleared by garbage collection, thereby achieving synergy between read interference handling and the garbage collection mechanism.

[0046] Data is written during the controller's idle period (IO bandwidth usage <30%) or during the background reserved bandwidth (20% dedicated bandwidth). Metadata is updated after the migration is complete, the FTL mapping table is updated, and the original page is marked as invalid, awaiting subsequent garbage collection.

[0047] The method provided in this embodiment further includes: S6. Evaluating write amplification rate, false negative rate, and read latency fluctuation at regular intervals; if any of these parameters exceeds a corresponding preset threshold, adjusting the correction coefficient. The correction coefficient is a key parameter determining the dynamic threshold. By dynamically adjusting the correction coefficient, the threshold can be made more closely aligned with actual operating conditions, thereby enabling earlier and more accurate screening of data blocks with read interference risks for verification, ultimately reducing unnecessary data migration and providing timely warnings of high-risk data.

[0048] Step S6 specifically includes: If the write amplification exceeds the corresponding preset threshold, the base correction factor of the cold block is increased; If the read latency fluctuation and / or the missed detection rate exceed the corresponding preset thresholds, the basic correction coefficient of the hot block will be reduced; the adjustment rate of the basic correction coefficient of the warm block and the adjustment rate of the basic correction coefficient of the hot block are positively correlated.

[0049] Specifically, this step involves updating the correction coefficients. In practical applications, adjustments can be made according to the following rules: Data analysis: Statistics on the optimization effect under different working conditions last month, and analysis on the adaptability of the original correction coefficients under the corresponding working conditions.

[0050] Coefficient adjustment: For operating conditions where the effect is not up to standard, adjust the corresponding correction coefficient in the matrix; for example, for operating conditions where the read latency fluctuation exceeds the standard, reduce the basic correction coefficient of the hot block / aging block; At the same time, the priority order of the aforementioned operating conditions should be maintained.

[0051] Effect verification: Substitute the adjusted matrix into the simulated working conditions to calculate the global baseline threshold, verify whether the optimization effect meets the standard, and apply it to the actual threshold calculation process after confirmation.

[0052] It should be noted that write amplification ratio refers to the ratio of the total amount of data written by the SSD controller to the physical flash memory to the amount of data written by the user; miss detection rate refers to the ratio of the number of pages or blocks that are actually at risk but not identified to the total number of pages or blocks with read interference risk; and read latency fluctuation refers to the difference between the maximum and minimum read latency within the statistical period.

[0053] The read interference optimization method provided in this embodiment has at least the following technical effects: (1) By calculating the SSD threshold through multi-source parameters, the problem of poor adaptability to different working conditions caused by the current overall recycling based on fixed threshold is overcome, the problem of threshold just waking up under complex working conditions is solved, and the accuracy of risk block identification is improved; the false negative rate is reduced to below 2% (5%~8% in the existing technology) and the false negative rate is reduced to below 1%. (2) Using a CNN model with attention mechanism to screen SSD risk pages instead of full page scanning reduces the performance loss of page-level verification, enables priority processing of high-risk pages, and improves verification efficiency; attention verification shortens the page-level verification time by 80% (256 page blocks from 100ms to 20ms) and reduces read latency fluctuation by 40% (from 15% to 9%).

[0054] The method of this embodiment will be described below with reference to a specific scenario.

[0055] Equipment: Enterprise-grade TLC SSD (pre-defined Base_RDT=40000 times), supporting database services (metadata accounts for 35%); Initial operating conditions: The temperature in the data center rose sharply in summer (40℃→65℃), and IOPS surged from 8000 to 12000 (identified as "high temperature heavy load + metadata intensive" operating conditions). Target block: Block X (the storage block corresponding to the IO request received by the SSD, with 70% of its lifespan erased / written and 15,000 reads currently). IOPS threshold: Used to determine the dynamic window size, set as follows: first IOPS threshold = 2000, second IOPS threshold = 8000.

[0056] Read latency fluctuation threshold: used to trigger window update frequency and correction coefficient adjustment, set as follows: first fluctuation threshold = 20%, second fluctuation threshold = 50%.

[0057] Error correction capability threshold: Used for page-level verification, set as follows: first error correction capability threshold = 50%, second error correction capability threshold = 30%.

[0058] Performance evaluation thresholds: used to trigger correction factor adjustments, set as follows: write amplification threshold = 1.2, false negative threshold = 2%, read latency fluctuation threshold = 10%.

[0059] The collected multi-source parameters are as follows: Hardware specifications: Block X temperature 62℃, 28,000 write / erase cycles (40,000 cycles lifespan), ECC error rate 0.03%; Operating parameters: IOPS=12500, bandwidth utilization 85%; Data Attribute: Block X stores metadata (weight 1.0).

[0060] Window size: IOPS>8000, size is 4 data blocks (including Block X); then calculate the final threshold from Block X to Block X+3.

[0061] Calculate the final threshold using the current data block X as an example: Local_RDT: Average read speed of all data blocks within the window The aging rate is 1200 times / hour, and the current data block's aging rate is... If the reading frequency coefficient x is 0.05, then y is 0.1. Local_RDT = 40000 × (1 - 0.05 × 1200 / 1000 - 0.1 × 70%) = 40000 × (1 - 0.06 - 0.07) = 40000 × 0.87 = 34800 times; Global_RDT: "High Temperature Heavy Load + Metadata Intensive" operating conditions. High temperature heavy load has higher priority than metadata intensive operating conditions. Therefore, the correction factor = hot block correction factor (0.6) + additional metadata correction (-0.1) = 0.5. Global_RDT=40000×0.5=20000 times; Final_RDT: IOPS > 8000, weighted fusion Given 0.7, then: The final threshold, Final_RDT, is calculated as follows: Final_RDT = 34800 × 0.7 + 20000 × 0.3 = 26320 + 6000 = 30360 times.

[0062] It should be noted that the aforementioned fusion weights The positive correlation between IOPS and weight can be achieved in practice by setting an IOPS threshold range. As an example, when IOPS is higher than the second IOPS threshold, the fusion weight can be set to a relatively high value (e.g., 0.7); when IOPS is lower than the first IOPS threshold, it can be set to a relatively low value (e.g., 0.3); and when it is in between, an intermediate value (e.g., 0.5) can be used.

[0063] In step S3, within the dynamic window, the adjacent data blocks that are close to the final threshold (30360 times) of the current data block (adjacent data blocks whose reading count is 80%~120% of the final threshold 30360) are input into the CNN model to determine the attention weights of each page.

[0064] Block X consists of 256 pages. The CNN outputs 18 pages with weights ≥ 0.6 (high-risk pages) and 238 pages with weights < 0.6 (low-risk pages). Block X+1 identifies 14 high-risk pages. Block X+2 identifies 18 high-risk pages. Block X+3 identifies 16 high-risk pages. Therefore, high-risk validation is performed on the 66 high-risk pages (18+14+18+16), and low-risk sampling validation is performed on the remaining low-risk pages.

[0065] High-risk verification identified 3 pages out of 66 that needed to be migrated, while low-risk sampling (10%) verification showed no anomalies. Perform the data migration operation: Garbage collection simultaneously cleans up Block Y and generates an empty Block Z; Using the reserved bandwidth (20%) in the background, write the 3 pages that need to be migrated into Block Z; Update the FTL mapping table; mark the original 3 pages that need to be migrated as invalid.

[0066] The above embodiments are only used to provide a detailed description of the technical solutions of this application. However, the descriptions of the above embodiments are only for the purpose of helping to understand the methods of the embodiments of the present invention and should not be construed as limiting the embodiments of the present invention. Any variations or substitutions that can be easily conceived by those skilled in the art should be covered within the protection scope of the embodiments of the present invention.

Claims

1. A method for optimizing read interference, characterized in that, include: Collect parameters from multiple sources, including flash memory hardware parameters, operating condition parameters, environmental parameters, and data attribute parameters; Based on multi-source parameters of the current data block and its adjacent data blocks within the dynamic window, the final threshold for all data blocks within the dynamic window is determined. The final threshold is determined according to the local window threshold and the global baseline threshold, specifically: Local window threshold Base_RDT is the preset baseline read interference judgment value for the flash memory chip. x To read the frequency term coefficients, This represents the average read speed of all data blocks within the dynamic window. y This is the coefficient for the aging term. This represents the aging status of the current data block. Global baseline threshold Global_RDT = Base_RDT × Correction factor Determined based on the current data block's operating condition type, hot / cold block classification, and data block type; Final threshold (Final_RDT) = Local_RDT × +Global_RDT×(1- ), fusion weight It is positively correlated with IOPS; The current data block and its neighboring data blocks with a final threshold close to the current data block are input into a pre-trained CNN model with an attention mechanism to obtain the attention weights of each page, and high-risk pages and low-risk pages are divided according to the magnitude of the attention weights. Perform differentiated validation on high-risk and low-risk pages, and identify the pages that need to be migrated from the high-risk pages; The differential verification performed on high-risk pages and low-risk pages includes: A global scan is performed on high-risk pages to verify the number of ECC error bits. When the number of error bits exceeds the first error correction capability threshold, the page is identified as needing to be migrated. For low-risk pages, sample verification of abnormal behavior is performed. If no abnormality is found, the verification ends. If an abnormality is found, the sampling ratio is increased. For low-risk pages, if the number of ECC error bits does not exceed the second error correction capability threshold, the data integrity verification result is completely consistent with the original record, and there are no other hardware log-related anomalies, then it is determined that there is no abnormal behavior. Determine the target block for data migration, and during idle periods of the controller or when bandwidth is reserved in the background, write the data of the pages to be migrated into the target block.

2. The method according to claim 1, characterized in that, Read the frequency term coefficient The aging coefficient is y=2x, R is the false negative rate, and W is the write magnification rate; the initial value of x is 0.

05.

3. The method according to claim 1, characterized in that, Correction coefficient This is determined based on the current data block's operating condition, hot / cold block classification, and data block type, specifically including: The basic correction coefficient is determined based on the current data block's operating condition type and hot / cold block classification; among which, the operating condition type is determined according to the priority order of concentrated aging blocks, high temperature heavy load, and dense metadata. If the data block is a metadata block, add an additional correction factor associated with the operating condition type to the basic correction factor.

4. The method according to claim 3, characterized in that, The specific basic correction coefficients are as follows: under the condition of concentrated aging blocks, the correction coefficient for hot blocks is 0.5, the correction coefficient for warm blocks is 0.7, and the correction coefficient for cold blocks is 1.5; under the condition of high temperature and heavy load, the correction coefficient for hot blocks is 0.6, the correction coefficient for warm blocks is 0.8, and the correction coefficient for cold blocks is 1.8; under the condition of dense metadata, the correction coefficient for hot blocks is 0.65, the correction coefficient for warm blocks is 0.9, and the correction coefficient for cold blocks is 1.

9. The additional correction factor is specifically: -0.15 for the condition of concentrated aging blocks; and -0.1 for the condition of high temperature and heavy load. In metadata-intensive scenarios, the additional correction factor is -0.

2.

5. The method according to claim 1, characterized in that, The size of the dynamic window is determined based on IOPS, specifically: IOPS < first IOPS threshold, Size=16; First IOPS threshold ≤ IOPS ≤ Second IOPS threshold round(·) means rounding to the nearest integer; IOPS > second IOPS threshold, Size=4.

6. The method according to claim 5, characterized in that, The size update frequency of the dynamic window is determined based on read latency fluctuations and the number of I / O request processing, including: If the read latency fluctuation is less than or equal to the first fluctuation threshold, then update once every 100 IO requests are processed; If the read latency fluctuation is greater than the first fluctuation threshold and less than or equal to the second fluctuation threshold, then update once every 50 IO requests are processed; If the read latency fluctuation exceeds the second fluctuation threshold, an update will be performed every 30 IO requests.

7. The method according to claim 2, characterized in that, The method further includes: At regular intervals, assess write amplification, false negative rate, and read latency fluctuations. If any of the write amplification rate, false negative rate, or read latency fluctuation exceeds the corresponding preset threshold, the correction coefficient will be adjusted.

8. The method according to claim 7, characterized in that, Also includes: If any of the write amplification rate, false negative rate, and read latency fluctuation exceeds the corresponding preset threshold, the correction coefficient is adjusted, including: If the write amplification exceeds the corresponding preset threshold, the base correction factor of the cold block is increased; If the read latency fluctuation and / or the missed detection rate exceed the corresponding preset thresholds, the basic correction coefficient of the hot block will be reduced; the adjustment rate of the basic correction coefficient of the warm block and the adjustment rate of the basic correction coefficient of the hot block are positively correlated.