Flash Memory Storage Restoration via Conflict Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage devices based on flash memories face inconsistencies due to power loss during operations like garbage collection, writing, or erasing, leading to conflicting blocks and requiring additional hardware for backup power or performance-degrading validation processes.

Innovation Solution

A method to restore storage devices by detecting conflicting physical blocks, determining their validity indexes, and selecting the correct blocks based on root counters or completion flags to maintain data integrity without additional hardware, allowing for effective recovery during power loss scenarios.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If additional hardware backup structures are provided to maintain power supply during operations, then reliability is improved, but device complexity increases

Engineering Contradiction:
ImprovereliabilityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system uses existing completion flags stored in the flash memory to automatically detect and resolve inconsistent conditions after power loss, without requiring external backup power hardware. The completion flags themselves serve as the recovery mechanism, making the system self-sufficient.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

Completion flags are introduced as intermediary markers that mediate between the writing/erasing operations and the consistency verification process. These flags enable the system to detect whether operations completed successfully without additional hardware.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If validation processes are performed to ensure data integrity after power loss, then reliability is improved, but productivity deteriorates

Engineering Contradiction:
ImprovereliabilityVSAvoidproductivity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Completion flags are set during the normal operation of writing and erasing processes, before any potential power loss can occur. This preliminary marking allows rapid verification of operation completion without requiring time-consuming validation processes after power restoration.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements a feedback mechanism where completion flags provide immediate information about the status of writing and erasing operations. This allows the controller to quickly determine whether operations completed successfully without performing extensive validation checks.

Inventive Principle:
Principle #23Feedback

3Productivity

If garbage collection procedures are performed to recover space in full blocks, then productivity is improved, but reliability deteriorates due to increased risk of inconsistent conditions

Engineering Contradiction:
ImproveproductivityVSAvoidreliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

Completion flags are set during the garbage collection process before blocks are erased, providing a safety marker that allows the system to detect and recover from interrupted operations. This preliminary marking prevents the reliability deterioration that would otherwise result from power loss during garbage collection.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The completion flag mechanism converts the potential harm of power loss during garbage collection into a beneficial recovery opportunity. By detecting inconsistent conditions through missing or conflicting completion flags, the system can automatically restore consistency, turning a reliability risk into a self-correcting feature.

Inventive Principle:
Principle #22Blessing in disguise (Convert harm into benefit)

4Adaptability or versatility

If multiple physical blocks are used to store data versions in a tree structure, then adaptability is improved, but device complexity increases

Engineering Contradiction:
ImproveadaptabilityVSAvoiddevice complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

Completion flags are used universally across all physical blocks in the tree structure, regardless of whether they contain root nodes, leaf nodes, or intermediate data. This universal application of completion flags simplifies the management of complex multi-block structures by providing a consistent verification mechanism throughout.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS9146854B2Restoring storage devices based on flash memories and related circuit, system, and method
Publication Date: 2015.09.29 STMICROELECTRONICS INT NV
  • US9146854B2 patent drawing
  • US9146854B2 patent drawing
  • US9146854B2 patent drawing

AI summary

A restoring operation of a storage device based on a flash memory. In an embodiment, a storage device emulates a logical memory space (including a plurality of logical blocks each one having a plurality of logical sectors), which is mapped on a physical memory space of the flash memory (including a plurality of physical blocks each one having a plurality of physical sectors for storing different versions of the logical sectors). A method may detect a plurality of conflicting physical blocks for a corrupted logical block and determines a plurality of validity indexes. One or more of the conflicting physical blocks are selected according to the validity indexes. The selected conflicting physical blocks are then associated with the corrupted logical block. At the end, each one of the non-selected conflicting physical blocks is discarded.