SSD Memory Block Endurance Management via Segmented Garbage Collection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash-based SSD devices face limited write-erase cycle count and uneven wear-out of memory blocks due to 'write amplification' and inefficient wear-leveling, leading to reduced endurance lifetime.

Innovation Solution

A memory management system that dynamically sorts free memory blocks by write-erase endurance cycle count, separates user-write and relocation data, and implements a windowed garbage collection process to balance block usage and reduce write amplification.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If relocate-on-write is used for performance reasons, then I/O performance is improved, but write amplification increases and endurance lifetime decreases

Engineering Contradiction:
ImproveI/O performanceVSAvoidwrite amplification
Core Design Contradiction:
SpeedVSLoss of substance

Solution Approach 1:

The patent segments free memory blocks into different categories (young blocks and old blocks) based on their endurance characteristics, and segments data into user data and relocation data. This segmentation allows differential placement strategies that reduce overall write amplification while maintaining performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by placing user data preferentially on young blocks (with higher remaining endurance) and relocation data on old blocks (with lower remaining endurance). This localized quality assignment optimizes the overall system endurance by matching data types with appropriate block characteristics.

Inventive Principle:
Principle #3Local quality

2Reliability

If wear-leveling techniques are used to exhaust cycle budget of blocks, then endurance is maximized, but wear-leveling insufficiency occurs when garbage collection cannot return free blocks

Engineering Contradiction:
ImproveenduranceVSAvoidwear-leveling insufficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic block management where the system continuously monitors block status and dynamically adjusts data placement strategies. The free block pool is dynamically updated based on garbage collection results, allowing the system to adapt to changing block availability and prevent wear-leveling insufficiency.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent employs feedback mechanisms where garbage collection results feed back into the free block pool management. The system monitors the state of free blocks and uses this information to adjust wear-leveling operations, ensuring that wear-leveling continues effectively even under heavy workload conditions.

Inventive Principle:
Principle #23Feedback

3Reliability

If static wear-leveling forces migration of cold data from new blocks to old blocks, then uneven wear-out is addressed, but write amplification increases due to frequent cold data movement

Engineering Contradiction:
Improvewear distributionVSAvoidwrite amplification
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The patent applies local quality by differentiating between user data and relocation data, and by differentiating between young blocks and old blocks. Cold data (relocation data) is preferentially placed on old blocks, reducing the need for frequent migrations and thereby reducing write amplification while maintaining even wear distribution.

Inventive Principle:
Principle #3Local quality

4Device complexity

If free memory blocks are not sorted by endurance cycle count, then data placement is simpler, but uneven wear-out occurs and endurance lifetime is reduced

Engineering Contradiction:
Improvedata placement complexityVSAvoidendurance lifetime
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent applies preliminary action by pre-sorting free memory blocks in the free block pool according to their endurance cycle count before data placement occurs. This preliminary organization enables simple, efficient data placement operations that automatically achieve even wear distribution without complex real-time decision-making.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9776673B2Write-erase endurance lifetime of memory storage devices
Publication Date: 2017.10.03 SK HYNIX INC
  • US9776673B2 patent drawing
  • US9776673B2 patent drawing
  • US9776673B2 patent drawing

AI summary

A memory management system and method for managing memory blocks of a memory device of a computer. The system includes a free block data structure including free memory blocks for writing, and sorting the free memory blocks in a predetermined order based on block write-erase endurance cycle count and receiving new user-write requests to update existing data and relocation write requests to relocate existing data separately, a user-write block pool for receiving youngest blocks holding user-write data (i.e., any page being updated frequently) from the free block data structure, a relocation block pool for receiving oldest blocks holding relocation data (i.e., any page being updated infrequently) from the free block data structure, and a garbage collection pool structure for selecting at least one of user-write blocks and relocation blocks for garbage collection, wherein the selected block is moved back to the free block data structure upon being relocated and erased.