Nonvolatile Memory Data Recovery via Reverse Scanning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data storage devices face challenges in efficiently recovering data from memory blocks during sudden power-offs, as existing technologies struggle to accurately determine target memory regions for recovery operations, leading to incomplete or interrupted recovery processes.

Innovation Solution

A data storage device with a controller and nonvolatile memory device that includes a recovery unit, which scans memory regions in reverse order of the write sequence to identify target memory regions for recovery, using dummy data and transaction data to manage and resume recovery operations effectively.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If memory regions are scanned in forward order of write sequence for recovery, then the recovery process can be simple to implement, but the recovery may be incomplete or interrupted during sudden power-offs

Engineering Contradiction:
Improvedata recovery completenessVSAvoidrecovery process complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent inverts the conventional forward scanning approach by implementing reverse order scanning of memory regions during recovery operations. The controller scans memory regions from the end of the write sequence backward to the beginning, allowing it to identify intact data portions and reconstruct lost information more reliably after sudden power-offs, thereby improving recovery completeness without requiring complex additional hardware

Inventive Principle:
Principle #13The other way round (Inversion)

2Reliability

If the controller performs comprehensive error correction checking on all memory regions, then data integrity is improved, but the recovery time and processing overhead increase

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

Solution Approach 1:

The patent extracts and utilizes transaction data and dummy data from memory regions to identify which specific regions require recovery operations. By taking out only the necessary portions of data that need recovery based on transaction records, rather than performing comprehensive checking on all memory regions, the system maintains data integrity while significantly reducing the time and processing overhead required for recovery operations

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If the recovery operation is resumed after repeated power-offs, then data recovery reliability is improved, but the system stability may be compromised due to multiple interruptions

Engineering Contradiction:
Improverecovery reliabilityVSAvoidsystem stability
Core Design Contradiction:
ReliabilityVSStability of the object's composition

Solution Approach 1:

The patent implements preliminary actions by storing transaction data and dummy data in memory regions before write operations commence. These preliminary markers enable the controller to quickly identify the state of memory regions upon power-resume, allowing the system to reliably determine whether recovery is needed and from where to resume, thereby maintaining both recovery reliability and system stability even after repeated power-off interruptions

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10191790B2Data storage device and error recovery method thereof
Publication Date: 2019.01.29 SK HYNIX INC
  • US10191790B2 patent drawing
  • US10191790B2 patent drawing
  • US10191790B2 patent drawing

AI summary

A data storage device includes a nonvolatile memory device including a memory block having a plurality of memory regions; and a controller suitable for searching a first memory region for which error correction is passed, by scanning the plurality of memory regions in a reverse order of a write sequence for the memory block, determining a target memory region in the memory block based on data stored in the first memory region, and performing a recovery operation for the target memory region.