SSD Free Pool Management via Startup Garbage Collection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
NAND flash memory systems face issues with limited erase cycles leading to block failure and reduced storage capacity due to wear and tear, and consumer devices often have excessive over-provisioning that unnecessarily reduces drive capacity and increases cost.
Innovation Solution
Implementing a media controller that detects an impending out-of-space condition by monitoring the free pool size and performing garbage collection within a startup time threshold to maintain normal operation, and switching to impending OOS mode when necessary, thereby preventing false-positive OOS detection and allowing user data recovery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If over-provisioning is increased to prevent out-of-space conditions, then storage capacity and reliability are improved, but drive capacity is reduced and cost per Gigabyte increases
Solution Approach 1:
The system performs preliminary garbage collection during startup to accumulate free blocks before normal operation begins. By proactively creating free space during the boot process rather than relying on pre-configured over-provisioning, the system ensures sufficient free blocks are available without requiring excessive over-provisioning of the drive capacity.
2Reliability
If garbage collection is performed frequently to maintain free space, then out-of-space conditions are prevented, but wear on NAND flash memory increases
Solution Approach 1:
The system performs garbage collection periodically during startup rather than continuously. By limiting garbage collection to specific startup phases and using a threshold-based approach to determine when free blocks are sufficient, the system maintains reliability while minimizing the cumulative wear on NAND flash memory from frequent erase operations.
3Reliability
If strict out-of-space detection is implemented, then data loss is prevented, but false-positive detection occurs reducing operational flexibility
Solution Approach 1:
The system performs preliminary garbage collection during startup to ensure free blocks are accumulated before normal operation begins. This preliminary action prevents false-positive out-of-space detections during normal operation, as the free block threshold is established during startup rather than being continuously monitored during normal data operations.
Solution Approach 2:
The system uses its own startup process to automatically accumulate free blocks through garbage collection, serving its own space management needs without requiring external intervention or strict continuous monitoring that would lead to false-positive detections.
Data Source
AI summary
Described embodiments detect an impending out-of-space (OOS) condition of a media. On startup, a media controller determines whether an impending OOS indicator is set from a previous startup. If the impending OOS indicator is not set, it is determined whether a free pool size has reached a threshold. The free pool is blocks of the solid-state media available to be written with data. If the free pool size has not reached the first threshold, while the startup time is less than a maximum startup time, garbage collection is performed on the solid-state media to accumulate blocks to the free pool. If the startup time reaches the maximum startup time and the free pool size has not reached the threshold, the impending OOS indicator is set and the media is operated in impending OOS mode. Otherwise, if the free pool size reaches the threshold, the media is operated in normal mode.


