NandFlash Wear-Leveling Bad Block Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing NandFlash memory systems in embedded systems with limited resources face challenges in managing bad blocks and ensuring even wear-leveling, leading to reduced memory lifetime due to insufficient hardware and software resources.

Innovation Solution

A wear-leveling method that creates a file information table to identify and avoid bad blocks, using a swap area to replace faulty blocks and maintain consistent writing operations, with low computational and RAM requirements, dividing the NandFlash memory into storage, file, and swap areas for efficient data management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a common file system driver (e.g., YAFFS) is used to support unlimited files with preparation format, then file reading/writing capability is improved, but hardware and software resource requirements increase

Engineering Contradiction:
Improvefile reading/writing capabilityVSAvoidhardware and software resource requirements
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent extracts and removes the complex file system driver layer (YAFFS) from the system. Instead of using a full-featured file system that requires significant RAM and CPU resources, the invention implements a simplified file management mechanism directly in the NandFlash controller that handles only the essential wear-leveling and bad block management functions, thereby reducing hardware and software resource requirements while maintaining core functionality

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent replaces expensive, resource-intensive file system software with a lightweight, disposable-style management approach. The simplified file information table and direct mapping mechanism consume minimal RAM (only tens of KB) and CPU cycles, effectively using low-cost, simple structures to achieve the necessary file management capability without the overhead of persistent complex file system drivers

Inventive Principle:
Principle #27Cheap short-living objects (Disposable)

2Quantity of substance

If NandFlash memory is used for data storage with block-based writing, then storage capacity is improved, but the number of writing operations is limited

Engineering Contradiction:
Improvestorage capacityVSAvoidnumber of writing operations
Core Design Contradiction:
Quantity of substanceVSDuration of action of moving object

Solution Approach 1:

The patent implements preliminary action by maintaining a file information table that pre-records the mapping between logical file addresses and physical NandFlash block addresses. Before actual writing operations occur, the system determines the target block and checks its status (good or bad). This advance preparation allows the system to proactively manage wear by selecting optimal blocks for writing and preemptively handling bad blocks, thereby extending the total number of usable writing operations over the memory's lifetime

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the operational parameters of NandFlash by implementing wear-leveling algorithms that dynamically adjust writing patterns. The system monitors and equalizes the number of writing operations across different blocks, ensuring uniform wear distribution. Additionally, the system changes the state management of blocks by maintaining detailed status information (good, bad, erased, etc.) and transitioning blocks between states based on wear conditions, thereby maximizing the usable writing operations before the memory reaches end-of-life

Inventive Principle:
Principle #35Parameter changes

3Reliability

If bad blocks are identified and avoided during writing operations, then memory reliability is improved, but additional processing time is required

Engineering Contradiction:
Improvememory reliabilityVSAvoidprocessing time for bad block identification
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by pre-identifying and marking bad blocks during initial memory characterization or during previous writing operations. The bad block information is stored in the file information table and bad block registration table before actual data writing begins. When a writing operation is initiated, the system immediately checks the pre-prepared mapping information to determine whether the target block is good or bad, eliminating the need for time-consuming runtime detection and allowing proactive selection of alternative blocks if needed

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10120795B2Wear-leveling nandflash memory reading/writing method
Publication Date: 2018.11.06 INSTITUTE OF GEOLOGY AND GEOPHYSICS CHINESE ACADEMY OF SCIENCES
  • US10120795B2 patent drawing
  • US10120795B2 patent drawing
  • US10120795B2 patent drawing

AI summary

A wear-leveling NandFlash memory reading/writing method can identify a bad block, avoid the bad block, and equalize writing operations to ensure that all the blocks are identical in number of the writing operations so as to guarantee wear-leveling NandFlash memory reading and writing of the entire memory. This method has characteristics of low computational and small RAM cost, is suitable for the application scenario like operating a single file for a long time with an imbedded system with low cost and poor hardware resource, and can provide a complete file system solution.