SSD Write Balancing Across SLC and MLC Partitions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The endurance performance of solid-state drives (SSDs) using both single-level cells (SLC) and multi-level cells (MLC) varies significantly, leading to premature failure of partitions with lower endurance, rendering the SSD partially inoperable.
Innovation Solution
A technique for balancing write commands by caching them into a write cache and directing data to either SLC or MLC partitions based on available capacity thresholds, and utilizing a balancing manager to proportionally distribute writes to maintain parity in P/E cycles across both types.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If write commands are directed to MLC partitions to maximize storage capacity, then storage density is improved, but endurance performance deteriorates due to lower P/E cycle tolerance
Solution Approach 1:
The non-volatile memory is divided into multiple partitions with different cell types (SLC and MLC). The controller manages these partitions separately, allowing SLC partitions to handle wear-intensive operations while MLC partitions provide high-capacity storage, thus resolving the contradiction between storage density and endurance
2Reliability
If write commands are directed to SLC partitions to improve endurance performance, then reliability is improved, but storage capacity utilization deteriorates due to higher cost per byte
Solution Approach 1:
Different partitions of the non-volatile memory have different local qualities (SLC with high endurance, MLC with high capacity). The controller assigns write commands to appropriate partitions based on local characteristics, allowing SLC partitions to be used when endurance is prioritized and MLC partitions when capacity is prioritized, thus resolving the contradiction
3Duration of action of stationary object
If a multi-partition arrangement with both SLC and MLC is used to balance endurance, then operational life is improved, but device complexity increases due to additional partition management
Solution Approach 1:
The controller acts as an intermediary between the host and the multi-partition non-volatile memory. It implements a partition manager that abstracts the complexity of managing multiple partitions with different characteristics, automatically selecting appropriate partitions for write commands based on current wear levels and available capacity, thus resolving the contradiction between extended operational life and management complexity
Data Source
AI summary
Disclosed herein are techniques for balancing write commands directed to a non-volatile memory. According to some embodiments, a method may include caching a plurality of write commands into a write cache, and, in response to determining that an available capacity of the write cache satisfies a first threshold value: performing at least one write operation by directing data associated with the write commands in the write cache to the first partition of the non-volatile memory in response to determining that an available capacity of a first partition of the non-volatile memory satisfies a second threshold value; and performing at least one write operation by directing data associated with the write commands in the write cache to a second partition of the non-volatile memory in response to determining that the available capacity of the first partition of the non-volatile memory does not satisfy the second threshold value.


