SSD Refresh Algorithm Using Valid Data Tracking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing refresh algorithms for non-volatile mass storage devices, such as solid state drives, are inefficient due to their unsophisticated approach, which results in continuous overhead and delayed host accesses as they periodically read and rewrite data from every cell, leading to permanent performance loss.
Innovation Solution
A more sophisticated refresh algorithm that uses a transfer buffer and meta-data tracking to determine the refresh rate based on valid data, allowing only valid data to be refreshed, thereby reducing the refresh burden and overhead, and implementing a hold-off period before refreshing to ensure data is aged sufficiently before being refreshed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a fixed time schedule refreshes every cell before the critical time period expires, then data loss is prevented, but continuous overhead is incurred and host accesses are delayed
Solution Approach 1:
The refresh algorithm dynamically adjusts the refresh rate based on actual cell aging conditions. Instead of using a fixed time schedule, the system monitors individual cell characteristics and adapts the refresh timing accordingly, allowing faster refresh when necessary and reducing overhead when cells are still stable, thus resolving the contradiction between ensuring data retention and maintaining host access performance
Solution Approach 2:
The system changes the refresh parameter from a fixed time-based schedule to a condition-based schedule that considers actual cell aging state. By monitoring parameters such as cell age, write history, and retention characteristics, the system adjusts refresh timing to match actual needs, preventing both premature refresh (which causes overhead) and delayed refresh (which risks data loss)
2Productivity
If refresh activity is spread out over time to keep instantaneous overhead low, then performance impact is reduced, but overhead is continuously present
Solution Approach 1:
The system implements periodic refresh actions based on actual cell aging rather than fixed time intervals. By determining refresh needs based on when cells actually approach their critical retention threshold, the system creates variable periodic refresh cycles that eliminate unnecessary refresh operations while ensuring timely refresh before data loss, thus reducing cumulative overhead without compromising data integrity
3Device complexity
If relative ageing tracking is used instead of actual ageing, then implementation is simpler, but accurate refresh timing cannot be determined
Solution Approach 1:
The system implements feedback mechanisms that monitor actual cell retention characteristics and adjust refresh timing accordingly. By continuously assessing cell health and aging state through read operations and retention testing, the system gathers feedback on actual cell conditions and uses this information to precisely determine when refresh is needed, achieving accurate aging tracking while maintaining reasonable implementation complexity
Data Source
AI summary
A refreshing method is described. The method includes recognizing a set of blocks of a non-volatile memory for refreshing and then refreshing a subset of the data within the blocks, where, invalid data within the blocks is not recognized for refreshing and a group of blocks whose oldest data has not aged for a pre-set time period is not recognized for refreshing.


