Non-Volatile Memory Block Management for Power Failure Recovery

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Flash memory management is inefficient and unstable due to the need for scanning the entire memory to correct mapping tables after power failures, which reduces data access accuracy and system stability.

Innovation Solution

A method that determines the validity of data in partial blocks of non-volatile memory to produce a mapping table, allowing for efficient and stable data access by identifying and correcting invalid data, thereby reducing the need for full memory scans.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the entire flash memory is scanned to produce and correct the mapping table after power failure, then the stability of the flash memory is enhanced, but the time consumption increases significantly

Engineering Contradiction:
ImprovestabilityVSAvoidtime consumption
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The flash memory is divided into multiple blocks, and the mapping table production process is segmented to operate only on specific blocks containing valid data rather than scanning the entire memory. This segmentation allows the system to maintain stability while reducing the scope of operation and time consumption.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of performing a complete scan of the entire flash memory, the invention applies partial action by scanning only the necessary blocks that contain valid data. This partial scanning approach maintains the required stability while significantly reducing time consumption compared to exhaustive scanning.

Inventive Principle:
Principle #16Partial or excessive action

2Productivity

If a mapping table is used to manage flash memory, then data access efficiency is improved, but incorrect data access occurs when power is suddenly cut-off

Engineering Contradiction:
Improvedata access efficiencyVSAvoiddata access correctness
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system performs preliminary actions by storing valid data blocks and their positions before potential power failure occurs. When power is restored, the mapping table can be quickly reconstructed using this pre-stored information, maintaining both access efficiency and correctness without requiring a complete memory scan.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention implements feedback mechanisms where the system continuously tracks and records valid data block positions. This feedback information is used to correct and update the mapping table, ensuring data access correctness while maintaining efficiency by avoiding unnecessary scans of invalid blocks.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8296506B2Method for managing a non-violate memory and computer readable medium thereof
Publication Date: 2012.10.23 SOLID STATE STORAGE TECH CORP
  • US8296506B2 patent drawing
  • US8296506B2 patent drawing
  • US8296506B2 patent drawing

AI summary

A method for managing a non-volatile memory is provided. The non-volatile memory has a number of blocks, and each block has a number of sub-blocks. The method includes a number of steps. First, a last physical address is obtained. The last physical address corresponds to a sub-block which is close to another sub-block where data is newly stored. Next, it is determined, for each sub-block of at least one block, the validity of data being stored. The at least one block is at least one neighboring block of a block containing the corresponding sub-block of the last physical address. Then, a mapping table is produced according to the step of determining the validity of data.