Flash Memory Wear Leveling via Adaptive Garbage Collection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing wear leveling techniques for flash memory devices do not effectively account for varying wear characteristics across different units, leading to premature degradation of some memory blocks and reduced overall device lifespan.

Innovation Solution

Implementing a wear leveling method that biases garbage collection control metrics based on the age metric of each erase unit relative to a representative age metric, adjusting valid-page counts or other metrics to prioritize garbage collection on units with different estimated remaining life, thereby optimizing the distribution of program-erase cycles.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Duration of action of stationary object

If uniform wear leveling is implemented by distributing program-erase cycles evenly across all memory blocks, then the overall device lifespan is extended, but individual blocks with different wear characteristics still experience premature degradation

Engineering Contradiction:
Improvedevice lifespanVSAvoidblock wear characteristic
Core Design Contradiction:
Duration of action of stationary objectVSReliability

Solution Approach 1:

The patent applies local quality by transitioning from uniform wear leveling to adaptive wear leveling, where each memory block is managed according to its specific wear characteristics. The system monitors individual block metrics (program-erase cycle counts, retention errors, threshold voltage shifts) and applies differentiated garbage collection thresholds and wear leveling strategies to each block, rather than treating all blocks uniformly. This localized approach accounts for variations in block wear rates and ensures that blocks with different wear characteristics are optimized individually.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements parameter changes by dynamically adjusting garbage collection thresholds and wear leveling parameters based on monitored block characteristics. Instead of using fixed thresholds for all blocks, the system modifies parameters such as garbage collection trigger points, valid page count thresholds, and program-erase cycle distribution strategies according to each block's actual wear state. This adaptive parameter adjustment allows the system to respond to changing block conditions and optimize performance and reliability over time.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If aggressive garbage collection is performed to reclaim space quickly, then storage availability is improved, but write amplification increases and accelerates wear on memory blocks

Engineering Contradiction:
Improvestorage availabilityVSAvoidwrite amplification
Core Design Contradiction:
ProductivityVSLoss of substance

Solution Approach 1:

The patent applies dynamics by implementing adaptive garbage collection that adjusts its aggressiveness based on real-time block conditions. The system dynamically modifies garbage collection thresholds and priorities according to block wear characteristics, valid page counts, and system workload demands. For blocks showing signs of high wear or degradation, the system reduces garbage collection frequency and aggressiveness to minimize additional write operations. Conversely, for healthy blocks with sufficient capacity, the system can perform more aggressive garbage collection to maintain storage availability. This dynamic adjustment optimizes the balance between storage availability and wear reduction.

Inventive Principle:
Principle #15Dynamics

3Manufacturing precision

If wear leveling prioritizes blocks with fewer program-erase cycles, then even distribution is achieved, but blocks with different inherent wear characteristics are not optimized

Engineering Contradiction:
Improvecycle distribution uniformityVSAvoidblock-specific wear optimization
Core Design Contradiction:
Manufacturing precisionVSReliability

Solution Approach 1:

The patent applies local quality by implementing block-specific wear leveling strategies that account for individual block characteristics. Instead of uniformly distributing program-erase cycles across all blocks, the system monitors each block's wear metrics (program-erase cycle history, retention error rates, threshold voltage drift) and applies differentiated management policies. Blocks with higher inherent wear resistance can tolerate more aggressive program-erase operations, while blocks showing signs of accelerated wear receive more conservative treatment. This localized optimization ensures that each block is utilized according to its specific capabilities rather than forcing uniform treatment.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent implements feedback mechanisms that continuously monitor block wear characteristics and use this information to adjust wear leveling decisions. The system tracks program-erase cycle counts, retention errors, and threshold voltage shifts for each block and feeds this information back into the wear leveling algorithm. Based on this feedback, the system dynamically adjusts which blocks are selected for programming, erasing, and garbage collection, optimizing the distribution strategy over time. This closed-loop feedback ensures that wear leveling adapts to actual block conditions rather than relying on predetermined uniform distribution patterns.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9298608B2Biasing for wear leveling in storage systems
Publication Date: 2016.03.29 SANDISK TECHNOLOGIES LLC
  • US9298608B2 patent drawing
  • US9298608B2 patent drawing
  • US9298608B2 patent drawing

AI summary

The various implementations described herein include systems, methods and/or devices used to enable biasing for wear leveling in storage systems. In one aspect, the method includes (1) determining, for each erase unit of a plurality of erase units in the storage medium, an age metric, (2) determining a representative age metric of the plurality of erase units, (3) for each respective erase unit of the plurality of erase units, biasing a respective garbage collection control metric for the respective erase unit in accordance with the age metric of the respective erase unit in relation to the representative age metric of the plurality of erase units to generate an adjusted garbage collection control metric for the respective erase unit, and (4) performing garbage collection for the storage medium in accordance with the adjusted garbage collection control metrics of the plurality of erase units.