Wear-Leveling Controller Using Swap Lists for Flash Memory Blocks

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing memory systems face challenges in maintaining stability and efficiency due to uneven erase count distribution across memory blocks, leading to performance reduction and reduced reliability.

Innovation Solution

A memory system with a controller that performs wear-leveling operations by selecting source and target memory blocks based on erase count information, swapping data to evenly distribute erase operations across memory blocks, thereby maximizing usage efficiency and reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If wear-leveling operations are performed to evenly distribute erase operations across memory blocks, then reliability and usage efficiency are improved, but device complexity and processing time increase

Engineering Contradiction:
Improvememory system stabilityVSAvoidwear-leveling operation complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The memory blocks are divided into multiple groups based on their erase count characteristics. The controller selectively performs wear-leveling operations on specific groups rather than all blocks, segmenting the wear-leveling process to reduce overall complexity while maintaining reliability benefits.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller adjusts wear-leveling operation parameters dynamically based on erase count distributions. By changing operational parameters such as selecting target blocks with lowest erase counts and adjusting the scope of wear-leveling operations, the system achieves improved reliability without proportionally increasing complexity.

Inventive Principle:
Principle #35Parameter changes

2Duration of action of stationary object

If wear-leveling operations are performed frequently to maintain even erase count distribution, then memory block longevity is improved, but processing time and performance reduction increase

Engineering Contradiction:
Improvememory block lifespanVSAvoidwear-leveling processing time
Core Design Contradiction:
Duration of action of stationary objectVSLoss of time

Solution Approach 1:

The controller performs wear-leveling operations periodically based on monitored erase count distributions rather than continuously. By implementing periodic wear-leveling at strategically determined intervals, the system extends memory block lifespan while minimizing the time lost to wear-leveling operations.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The controller dynamically adjusts wear-leveling operation frequency and scope based on current erase count distributions and system workload conditions. By changing operational parameters adaptively, the system optimizes the balance between extending memory block lifespan and minimizing processing time losses.

Inventive Principle:
Principle #35Parameter changes

3Stability of the object's composition

If comprehensive wear-leveling operations are performed across all memory blocks, then erase count distribution uniformity is improved, but system complexity and operational overhead increase

Engineering Contradiction:
Improveerase count distribution uniformityVSAvoidwear-leveling operation overhead
Core Design Contradiction:
Stability of the object's compositionVSDevice complexity

Solution Approach 1:

The controller applies wear-leveling operations locally to specific memory block groups that exhibit significant erase count variations rather than uniformly across all blocks. By targeting local areas with greatest need, the system achieves improved distribution uniformity while reducing overall operational overhead.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The controller modifies wear-leveling operation parameters such as target block selection criteria and operation scope based on current system state. By changing parameters adaptively, the system achieves better erase count distribution uniformity with reduced complexity compared to comprehensive uniform wear-leveling.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9792058B2System and method of selecting source and destination blocks for wear-leveling
Publication Date: 2017.10.17 SK HYNIX INC
  • US9792058B2 patent drawing
  • US9792058B2 patent drawing
  • US9792058B2 patent drawing

AI summary

A memory system includes a memory device, having a plurality of memory blocks, for storing data and a controller for performing a wear-leveling operation between source and target memory blocks selected from the memory blocks. The controller selects the source and target memory blocks based on an erase count list storing current erase count (EC) information of the memory blocks, selects one having the greatest EC as the source memory block from the erase count list, selects the target memory block from remaining ones among the memory blocks other than both of the source memory block and an immediately previous target memory block of an immediately previous wear-leveling operation, and identifies the immediately previous target memory block of the immediately previous wear-leveling operation through a swap list including swap information of the memory blocks and information on the source and target memory blocks.