NAND Flash Wear Leveling via Partitioned Endurance Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The endurance of NAND flash storage devices has decreased due to smaller floating gate areas and reduced electron charge storage, necessitating improved wear leveling techniques to maintain even memory block conditions and extend device lifespan.

Innovation Solution

The method involves partitioning memory blocks into multiple partitions, where data is stored in one partition until it reaches an end-of-life condition, then switching to storing compressed data to extend its life, and using additional partitions when necessary, allowing for increased error detection through parity bits.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If memory block size is reduced to increase storage capacity, then storage density is improved, but endurance decreases

Engineering Contradiction:
Improvestorage capacityVSAvoidendurance
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The memory block is divided into multiple partitions (first partition, second partition, third partition) with different endurance thresholds. This segmentation allows the system to manage wear differently across partitions, storing data in partitions with higher remaining endurance while using partitions with lower endurance for compressed data or less frequently accessed data, thereby extending overall device lifespan.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different partitions are assigned different quality characteristics based on their endurance conditions. The first partition is used for normal data storage when healthy, the second partition handles compressed data when the first partition degrades, and the third partition serves as backup. This local differentiation of storage quality allows the system to adapt to varying endurance conditions across different memory regions.

Inventive Principle:
Principle #3Local quality

2Reliability

If wear leveling is implemented to extend device lifespan, then endurance is improved, but device complexity increases

Engineering Contradiction:
ImproveenduranceVSAvoidcontroller complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The wear leveling system operates autonomously through automated monitoring of endurance thresholds and dynamic data redirection. The controller automatically tracks the endurance status of each partition, determines when thresholds are reached, and redirects data storage operations without requiring manual intervention or complex external management, thereby managing complexity through self-service mechanisms.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system dynamically changes operational parameters based on endurance conditions. When the first partition reaches its endurance threshold, the system changes the active storage parameter to use the second partition for compressed data. This parameter-based adaptation allows the system to respond to wear conditions through configurable thresholds and dynamic parameter adjustment rather than hard-coded complex logic.

Inventive Principle:
Principle #35Parameter changes

3Duration of action of stationary object

If data compression is used to extend memory block life, then storage efficiency is improved, but processing time increases

Engineering Contradiction:
Improvememory block lifespanVSAvoidcompression processing time
Core Design Contradiction:
Duration of action of stationary objectVSLoss of time

Solution Approach 1:

Compression is applied selectively rather than universally. The system uses compression only for data blocks stored in the second partition when the first partition reaches its endurance threshold, or for specific data types that benefit from compression. This partial application of compression reduces the overall processing overhead while still providing the lifespan extension benefit for the affected memory blocks.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system performs preliminary assessment of data compressibility before applying compression. By evaluating whether data blocks are suitable for compression (e.g., checking data patterns or types) before the compression process, the system avoids unnecessary compression operations on already-compressed or incompressible data, thereby reducing wasted processing time while maintaining the lifespan extension benefit where applicable.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9037779B2Systems and methods for performing variable flash wear leveling
Publication Date: 2015.05.19 SANDISK TECHNOLOGIES LLC
  • US9037779B2 patent drawing
  • US9037779B2 patent drawing
  • US9037779B2 patent drawing

AI summary

Systems and methods for performing wear leveling are disclosed. In one implementation, a controller partitions a memory block into at least a first partition and a second partition. The controller utilizes the first partition of the memory block for storage of data blocks until the first partition reaches a first end of life condition. After the first partition reaches the first end of life condition, the controller utilizes the first partition for storage of data blocks associated with a compression ratio that is less than a compression threshold until the first portion reaches a second end of life condition. The controller additionally utilizes the second partition for the storage of data blocks until the second partition reaches the first end of life condition.