Flash Memory Controller Super Block Recovery After Power Failure

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing flash memory systems face challenges in efficiently determining valid data in a super block after an abnormal power failure, which affects data integrity and continuity during power recovery.

Innovation Solution

A method for controlling a flash memory module that involves determining if an abnormal power failure occurred, identifying the last super block written before power-on, determining the last successfully read page for each block, identifying data weak regions, and moving data from these regions to other areas within the super block or to another super block.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the flash memory controller performs garbage collection on the entire super block after abnormal power failure, then data integrity is ensured, but the time and resources required for recovery increase significantly

Engineering Contradiction:
Improvedata integrityVSAvoidrecovery time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The super block is divided into multiple blocks, and each block is further divided into pages. The controller segments the garbage collection process by identifying and processing only the specific blocks and pages containing valid data, rather than treating the entire super block as a single unit. This segmentation allows selective recovery operations that reduce overall recovery time while maintaining data integrity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller performs preliminary identification of valid data locations during the power-on self-test phase by checking power failure flags and reading block status information. This preliminary action enables the controller to pre-determine which blocks require garbage collection before actually executing the data migration, optimizing the subsequent recovery process and reducing total recovery time.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If the flash memory controller determines valid data in each block sequentially, then accuracy is maintained, but the processing speed decreases

Engineering Contradiction:
Improvevalid data identification accuracyVSAvoidprocessing speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The controller divides the super block into multiple independent blocks and processes each block separately. By segmenting the determination process, the controller can maintain high accuracy for each individual block while improving overall processing throughput through parallel or pipelined operations across multiple blocks, rather than sequentially processing the entire super block as one unit.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The controller performs determination operations on only the necessary portions of the super block based on power failure flags and block status information. Instead of uniformly processing every block with the same level of scrutiny, the controller applies partial determination actions only where needed, optimizing the balance between accuracy and processing speed by avoiding redundant operations on already-validated blocks.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If the flash memory controller moves all data from weak regions, then data reliability is improved, but the complexity of the control logic increases

Engineering Contradiction:
Improvedata reliabilityVSAvoidcontrol logic complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The controller identifies and processes weak regions in segments rather than treating the entire super block uniformly. By dividing the data migration task into smaller regional operations based on detected weak areas, the control logic becomes more manageable and easier to implement, while still achieving comprehensive data protection across the entire super block through systematic segment-by-segment processing.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS20250053314A1Method for controller flash memory module and associated flash memory controller and memory device
Publication Date: 2025.02.13 SILICON MOTION INC
  • US20250053314A1 patent drawing
  • US20250053314A1 patent drawing
  • US20250053314A1 patent drawing

AI summary

The present invention provides a method for controlling a flash memory module. The method includes: after the flash memory module is powered on, determining whether the flash memory module encountered an abnormal power failure before the flash memory module is powered on; if the flash memory module encounters the abnormal power failure before the flash memory module is powered on, determining a last super block written by the flash memory module before powering on, where the super block comprises multiple first blocks respectively located in the multiple dies; for each first block in the super block, determining a last successfully read page of the first block; determining a data weak region of the super block according to the last successfully read pages of the first blocks in the super block; and moving data in the weak data region to other regions of the super block or to another super block.