SSD Cache Management for MSB Write Interference
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In solid state drives (SSDs) using multi-level cell storage, writing data into most significant bit (MSB) pages causes interference with least significant bit (LSB) pages, leading to severe error correcting code errors and uncorrectable read errors due to write interference, which existing ECC error correction methods struggle to fully mitigate.
Innovation Solution
Implementing a data reading method that caches data subject to write interference from MSB pages in a preset cache area and preferentially reads from this cache to avoid errors, establishing mapping relationships between cache and non-volatile storage addresses to ensure data integrity.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data is written into MSB pages, then storage capacity is utilized, but write interference occurs on shared LSB pages causing read errors
Solution Approach 1:
The patent segments the storage system into two distinct data paths: a first data path for writing data to non-volatile storage space, and a second data path for reading data from either cache area or non-volatile storage space. This segmentation allows independent optimization of write operations and read operations, enabling the system to maintain storage capacity while protecting against write interference through the alternative read path.
Solution Approach 2:
The patent introduces a cache area as an intermediary component between the controller and the non-volatile storage space. This cache area stores copies of data that may be subject to write interference, acting as a mediator that provides clean read data without requiring additional ECC resources. The cache area is managed through mapping relationships that track which data has been cached and from where it should be read.
2Reliability
If ECC error correction capability is improved, then read errors are corrected, but spare area space is consumed and cannot be further improved
Solution Approach 1:
The patent performs preliminary action by caching data in the cache area before write interference can corrupt the original data in non-volatile storage. By proactively storing backup copies of data that are likely to be affected by write interference, the system prevents read errors rather than attempting to correct them afterward, eliminating the need for additional ECC space.
Solution Approach 2:
The patent creates copies of data in the cache area that are separate from the original data in non-volatile storage. These cached copies serve as clean backup versions that can be read without being affected by write interference on the original storage medium. This copying approach provides error-free data retrieval without consuming additional ECC space.
3Reliability
If data is cached in preset cache area, then read errors are avoided, but cache space must be dynamically allocated and released
Solution Approach 1:
The patent implements dynamic cache space management where the cache area is allocated and released based on actual read requirements. The mapping relationship mechanism dynamically tracks which data has been cached and manages the lifecycle of cached data, allowing the system to adapt cache usage to varying read patterns without wasting cache resources. This dynamic approach balances reliability improvement with resource efficiency.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A data accessing method comprising: receiving a write instruction which comprises to be written data and a write target address; and determining (201) whether the write target address belongs to a most significant bit (MSB) page in a non-volatile storage space. If the write target address does not belong to an MSB page in the non-volatile storage space, the method comprises storing (202), in a preset cache area and a non-volatile storage space that is corresponding to the write target address, the to be written data, and establishing a first mapping relationship between the cache address and the write target address. If the write target address belongs to an MSB page in the non-volatile storage space, the method comprises storing (203), in the non-volatile storage space corresponding to the write target address, the to be written data.