Multi-Stage SLC to MLC Folding for Storage Performance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing storage systems face performance degradation and increased SLC block budget requirements due to the time-consuming nature of folding SLC blocks into MLC blocks, leading to delays in releasing SLC blocks for storing incoming data.
Innovation Solution
A two-stage folding method is implemented, where two SLC blocks are first folded into the lower and middle pages of a QLC block, and then the remaining two SLC blocks are folded into the upper and top pages at a later time, allowing earlier release of source SLC blocks for hosting data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is folded from SLC blocks into MLC blocks using a traditional single-stage process, then data protection against defects is improved, but the time required to complete the folding operation increases significantly
Solution Approach 1:
The folding operation is divided into multiple stages (e.g., first stage folds SLC blocks to lower pages of MLC block, second stage folds to upper pages). This segmentation allows intermediate completion points where SLC blocks can be released earlier, reducing the total time SLC blocks are occupied while still completing the full fold operation for data protection.
Solution Approach 2:
The folding operation begins with preliminary actions of folding data to intermediate locations (lower pages) before completing the full fold to final locations. This preliminary action enables earlier release of SLC blocks while the folding process continues in the background, improving throughput without sacrificing data protection.
2Reliability
If SLC blocks are held longer to complete full folding into MLC blocks, then data integrity is improved, but the availability of SLC blocks for incoming data decreases
Solution Approach 1:
The folding process is segmented into stages that can be interrupted and resumed. SLC blocks are released after intermediate folding stages while the fold operation resumes later, maintaining data integrity through completion while improving SLC block availability for incoming data.
Solution Approach 2:
The folding operation transitions from a static all-or-nothing approach to a dynamic multi-stage process where SLC blocks can be released and reallocated during the folding process. This dynamic approach allows the system to balance data integrity requirements with productivity needs by flexibly managing SLC block availability.
3Productivity
If a multi-stage folding process is implemented to release SLC blocks earlier, then productivity is improved, but the complexity of the folding operation increases
Solution Approach 1:
The folding operation is segmented into manageable stages with clear intermediate completion points. Each stage can be independently managed and tracked, making the complex multi-stage process more controllable and easier to implement than a monolithic folding operation.
Data Source
AI summary
Rather than use one long folding operation to fold data from single-level cell (SLC) blocks into a multi-level cell (MLC) block, a storage system uses a multi-stage folding operation. By breaking up the folding process into stages, SLC blocks involved in an earlier stage can be released prior to a subsequent stage being performed. This can increase performance of the storage system by releasing SLC source blocks sooner and reducing an SLC block budget requirement.


