Corrupted Data Recovery Through Speculative Bitflip Cross-Validation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data storage systems face inefficiencies in managing storage drives, particularly in flash-based systems, due to the need for redundant write operations and lack of direct control by the operating system, leading to reduced reliability and increased latency.

Innovation Solution

Implementing a direct-mapped flash storage system where the operating system directly addresses data blocks without intermediate storage controllers, offloading device management tasks, and utilizing non-volatile RAM for fast-write operations to enhance reliability and reduce latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If traditional storage controllers manage flash storage operations, then device management is centralized and simplified, but write operations become redundant and latency increases

Engineering Contradiction:
Improvestorage management complexityVSAvoidwrite latency
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent extracts the storage management functions from the traditional storage controller and places them directly in the operating system. The OS now directly addresses data blocks on flash storage devices, eliminating the intermediate storage controller layer that caused redundant write operations and latency.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a new intermediary layer in the form of a filesystem that sits between the OS and flash storage, providing direct OS control while managing flash-specific operations. This filesystem handles wear leveling, bad block management, and garbage collection directly, eliminating the need for traditional storage controllers.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If redundant write operations are implemented for reliability, then data integrity is improved, but storage efficiency decreases

Engineering Contradiction:
Improvedata integrityVSAvoidstorage efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements preliminary wear leveling and error correction at the filesystem level before data is written to flash storage. By pre-distributing write operations across valid blocks and maintaining a pool of spare blocks for recovery, the system achieves reliability without redundant write operations.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The flash storage filesystem performs self-healing through automatic garbage collection and bad block management. When data corruption or block failures occur, the filesystem automatically redistributes data and marks failed blocks as unusable, maintaining reliability without requiring redundant writes.

Inventive Principle:
Principle #25Self-service

3Ease of operation

If storage controllers manage all flash operations, then device control is centralized, but system-level control is reduced

Engineering Contradiction:
Improvedevice controlVSAvoidsystem-level control
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent inverts the traditional control hierarchy by allowing the operating system to directly control flash storage operations instead of the storage controller managing all operations. The filesystem provides the necessary abstractions while enabling the OS to make storage management decisions at the system level.

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

Data Source

PatentUS12393485B2Recover corrupted data through speculative bitflip and cross-validation
Publication Date: 2025.08.19 PURE STORAGE INC
  • US12393485B2 patent drawing
  • US12393485B2 patent drawing
  • US12393485B2 patent drawing

AI summary

Recovering corrupted data through speculative bitflip and cross-validation, including altering a first data portion stored in a storage device, wherein the first data portion contains an error; calculating a hash value using the altered first data portion; comparing the hash value calculated using the altered first data portion to a stored hash value for the first data portion; and based on the comparing, determining whether the altering corrects the error in the first data portion.