Wear Leveling in SSDs via Data Age and P/E Count Selection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face inefficiencies in garbage collection and wear leveling, particularly in solid-state storage systems, where static wear leveling can be resource-intensive and inefficiently distribute erase operations across memory blocks, leading to premature data failures.

Innovation Solution

The system improves garbage collection and wear leveling by selecting candidate blocks based on their program/erase (P/E) count and data age, postponing static wear leveling on blocks likely to be overwritten soon, and using data age classification to determine whether data is static or dynamic, thereby optimizing block selection and resource allocation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If static wear leveling is performed on all candidate blocks, then wear is evenly distributed across memory blocks, but resource consumption increases and operations become inefficient

Engineering Contradiction:
Improvewear distribution uniformityVSAvoidoperation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent introduces data age as a new parameter to differentiate between static and dynamic data blocks. By classifying blocks based on data age thresholds, the system changes the selection criteria for wear leveling operations, performing static wear leveling only on blocks with old static data while skipping blocks with dynamic data that will be overwritten soon, thus resolving the contradiction between uniform wear distribution and operation efficiency

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent applies different wear leveling strategies to different types of memory blocks based on their data characteristics. Static wear leveling is applied locally only to blocks containing static data (old, unlikely to be overwritten), while dynamic data blocks are excluded from static wear leveling. This localized application of wear leveling maintains reliability where needed while improving overall productivity by avoiding unnecessary operations

Inventive Principle:
Principle #3Local quality

2Quantity of substance

If garbage collection operations are performed frequently, then free space is maintained in the storage system, but system resources are consumed excessively

Engineering Contradiction:
Improvefree space availabilityVSAvoidresource consumption
Core Design Contradiction:
Quantity of substanceVSUse of energy by moving object

Solution Approach 1:

The patent performs garbage collection operations selectively rather than on all blocks. By identifying and prioritizing blocks with static data for garbage collection while potentially reducing operations on dynamic data blocks, the system maintains adequate free space availability through partial action, thereby reducing excessive resource consumption while still meeting storage management requirements

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10417123B1Systems and methods for improving garbage collection and wear leveling performance in data storage systems
Publication Date: 2019.09.17 WESTERN DIGITAL TECHNOLOGIES INC
  • US10417123B1 patent drawing
  • US10417123B1 patent drawing
  • US10417123B1 patent drawing

AI summary

Disclosed embodiments are directed to systems and methods for improving garbage collection and wear leveling performance in data storage systems. The embodiments can improve the efficiency of static wear leveling by picking the best candidate block for static wear leveling and/or postponing static wear leveling on certain candidate blocks. In one embodiment, one or more source blocks for a static wear leveling operation are selected based at least on whether the one or more blocks have a low P/E count and contain static data, such as data that has been garbage collected.