Flash Memory Wear Leveling via Erase Time Thresholds

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional wear leveling methods for flash memory blocks are ineffective in evenly distributing program and erase cycles, leading to premature wear and reduced lifespan, as they fail to accurately identify blocks with lower erase times for redistribution, thereby accelerating wear and reducing the performance of flash drives.

Innovation Solution

A wear leveling method that divides non-volatile memory into data, spare, and substitution-transient areas, where erase times are recorded and blocks are selectively moved based on threshold values to balance usage, using a controller with a memory management module to manage erase times and perform wear leveling procedures in random or sequential modes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional wear leveling method sequentially exchanges blocks between data area and spare area, then block distribution is attempted, but blocks with greater erase times may be exchanged accelerating wear

Engineering Contradiction:
Improveflash drive lifespanVSAvoidwear leveling effectiveness
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-categorizing data blocks into lately-used and lately-unused groups before the exchange operation. This allows the wear leveling process to selectively exchange only lately-unused blocks with spare area blocks, ensuring that blocks with lower erase times are prioritized for exchange, thereby preventing acceleration of wear on already-worn blocks.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent applies local quality by differentiating treatment for different subsets of data blocks. Instead of uniformly exchanging all data area blocks, the method applies specific exchange rules to lately-unused blocks while preserving lately-used blocks. This localized approach ensures that wear leveling operations are performed only on blocks suitable for exchange, improving overall effectiveness.

Inventive Principle:
Principle #3Local quality

2Ease of operation

If blocks are frequently programmed and erased to maintain data, then data accessibility is improved, but block wearing accelerates reducing lifespan

Engineering Contradiction:
Improvedata accessibilityVSAvoidblock lifespan
Core Design Contradiction:
Ease of operationVSDuration of action of stationary object

Solution Approach 1:

The patent applies feedback by continuously tracking and recording erase times for each block in the flash memory. This information is used to dynamically adjust the wear leveling strategy, identifying blocks with lower erase times that are suitable for exchange. The feedback mechanism ensures that data accessibility is maintained while preventing further wear on blocks that are already heavily used.

Inventive Principle:
Principle #23Feedback

3Reliability

If worn blocks are removed from service to maintain performance, then performance is preserved, but unused blocks are wasted reducing utilization

Engineering Contradiction:
Improveflash drive performanceVSAvoidusable block capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies parameter changes by using erase time as a dynamic parameter to determine block exchange eligibility. Blocks are exchanged based on their erase time parameter, with preference given to blocks having lower erase times. This parameter-based approach ensures that blocks are removed from service only when necessary, maximizing the utilization of available block capacity while maintaining performance.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS7649794B2Wear leveling method and controller using the same
Publication Date: 2010.01.19 PHISON ELECTRONICS
  • US7649794B2 patent drawing
  • US7649794B2 patent drawing
  • US7649794B2 patent drawing

AI summary

A wear leveling method under limited system resources is provided, the wear levelling method is suitable for a non-volatile memory, the non-volatile memory is substantially divided into a plurality of blocks, and the blocks are at least grouped into a data area, a spare area and a substitution-transient area. The blocks within the data area may be divided into a plurality of lately-used blocks and a plurality of lately-unused blocks. The method includes only recording erase times of the lately-used blocks and blocks within the spare area and selecting a block used for the substitution-transient area is selected from the spare area according to a judgment condition of erase times of another block within the spare area plus a first threshold value. The method also includes performing a wear leveling procedure. Wherein, the selected block and the other block are selected in a random mode or a sequential mode.