Solid-State Storage Data Recovery via RAID Stripe Verification

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for writing data to solid-state storage systems, such as MLC Nand Flash, are inconvenient and costly due to the risk of data loss during power interruptions, which requires external hardware support to ensure data integrity.

Innovation Solution

A method and system that allocates idle logic blocks with adjacent logical pages as RAID stripes for storing data and verification information, allowing for data restoration without additional hardware costs by using the verification information to recover damaged data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If standby power supply or super capacitor is added to ensure data integrity during power interruptions, then data reliability is improved, but device complexity and hardware cost increase

Engineering Contradiction:
Improvedata integrityVSAvoidhardware complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the verification function from the data storage structure by separating verification information from the actual data pages. Each logical page stores data, while a dedicated verification page stores verification information (such as checksums or parity data). This separation allows data integrity verification without requiring additional hardware components like standby power supplies or super capacitors, thus maintaining data reliability while avoiding increased hardware complexity.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent creates a copy of verification information (such as parity data or checksums) and stores it in a separate verification page within the same logical block. This copied verification data can be used to detect and correct errors or recover lost data pages without requiring additional hardware support, thereby ensuring data integrity while avoiding increased device complexity.

Inventive Principle:
Principle #26Copying

2Reliability

If verification information is stored with data to enable error detection and recovery, then data reliability is improved, but storage capacity is reduced

Engineering Contradiction:
Improvedata integrityVSAvoidstorage capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments the logical block into multiple logical pages, where most pages store data and one designated page (the verification page) stores verification information. This segmentation approach integrates verification capability into the existing storage structure without requiring separate hardware components, thereby improving data reliability while minimizing the impact on overall storage capacity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The verification page serves multiple functions: it stores verification information for error detection, provides data recovery capability, and maintains compatibility with existing storage protocols. By making the verification page multi-functional, the patent achieves improved data reliability without proportionally reducing storage capacity, as the verification page is an integral part of the logical block structure rather than an add-on.

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

Data Source

PatentUS9639441B2Solid-state storage system, apparatus and method of writing data
Publication Date: 2017.05.02 RAMAXEL TECH SHENZHEN
  • US9639441B2 patent drawing
  • US9639441B2 patent drawing
  • US9639441B2 patent drawing

AI summary

Provided is a method of writing data to a solid-state storage system, wherein the solid-state storage system comprises several logical disks. The method comprises the steps of: from each of the logical disks, allocating at least one idle logic block used for receiving parallel data, wherein each of the logic blocks comprises several logical pages; setting the logical pages with a same page number in respective logic block as one RAID stripe, wherein each RAID stripe is used for storing a set of parallel data and verification information associated with the parallel data; and when data in one of the logical pages is damaged, calculating and restoring the damaged data based on the other data and the associated verification information stored in the RAID stripe where the logical page is located. The present invention also provides a solid-state storage system for implementing the above-mentioned method.