Firmware Flash Memory Wear Leveling via Block Relocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Firmware flash memory devices face wear-out issues due to uneven erase operations across different blocks, leading to reduced operational lifetime, as some blocks experience significantly more erase operations than others, causing imbalance in memory wear.

Innovation Solution

A method is implemented to maintain a record of cumulative erase operations at each block of the firmware flash memory, identifying 'hot' and 'cold' blocks based on threshold values, and automatically relocating data from heavily used blocks to less used ones, thereby balancing wear across the memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data is stored at frequently accessed blocks, then data storage efficiency is improved, but memory block wear increases unevenly

Engineering Contradiction:
Improvedata storage efficiencyVSAvoidmemory block wear balance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The flash memory is divided into multiple blocks that can be independently managed and tracked. The system segments the memory into distinct addressable units (blocks) with individual wear counters, allowing selective wear leveling operations on specific blocks rather than treating the entire memory as a single unit.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary wear leveling by proactively relocating data from high-wear blocks to low-wear blocks before critical wear thresholds are reached. The wear counters track cumulative erase operations in advance, enabling predictive data relocation to prevent premature block failure and extend overall memory lifetime.

Inventive Principle:
Principle #10Preliminary action

2Duration of action of stationary object

If wear leveling operations are performed frequently, then memory lifetime is extended, but system complexity increases

Engineering Contradiction:
Improvememory operational lifetimeVSAvoidwear leveling system complexity
Core Design Contradiction:
Duration of action of stationary objectVSDevice complexity

Solution Approach 1:

The system implements feedback mechanisms by maintaining wear counters that continuously monitor the number of erase operations at each block. These counters provide real-time feedback on block wear status, enabling the wear leveling controller to make informed decisions about when and where to relocate data, thereby extending memory lifetime through adaptive rather than arbitrary operations.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The wear leveling system operates autonomously by automatically tracking wear counters and performing data relocation without requiring external intervention. The system serves itself by monitoring its own wear state and executing corrective actions (data relocation) to balance wear distribution, reducing the need for complex external control mechanisms.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10620867B2System and method for performing wear leveling at a non-volatile firmware memory
Publication Date: 2020.04.14 DELL PROD LP
  • US10620867B2 patent drawing
  • US10620867B2 patent drawing
  • US10620867B2 patent drawing

AI summary

A record is maintained of cumulative erase operations performed at each block of a firmware flash memory device. It is determined that a number of erase operations performed at a first block at the firmware flash memory device exceeds a first threshold value. It is further determined that a number of erase operations performed at a second block at the firmware flash memory device does not exceed a second threshold value. Data stored at the first block is relocated to the second block.