Flash Storage Parity Data Reduction via Strip Set Merging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current storage technologies for small devices, such as smartphones and tablets, face high overheads and low effective-utilization of storage space due to the need for each strip to include parity data, which is inefficient in terms of space usage and reliability.

Innovation Solution

A data processing method that dynamically allocates storage space in a flash device with multiple independent programmable flash chips, using a customizable partial redundant array of independent NAND (CPR) form, where each strip set includes multiple adjacent strips sharing a parity data group, reducing parity data storage and improving space utilization while ensuring data reliability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If each strip includes one parity data group to ensure data reliability, then data reliability is improved, but storage space utilization deteriorates due to high overheads

Engineering Contradiction:
Improvedata reliabilityVSAvoidstorage space utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent merges multiple adjacent strips into a strip set, where multiple strips share a common parity data group. This combining approach reduces the total number of parity data groups needed, thereby improving storage space utilization while maintaining data reliability through the shared parity protection

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The parity data group serves multiple functions by protecting multiple adjacent strips simultaneously. This multi-functional parity group reduces redundancy overhead compared to having separate parity groups for each strip, thus improving storage efficiency while ensuring reliability

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

2Reliability

If parity data is stored in every strip to protect data, then data reliability is improved, but storage overhead increases

Engineering Contradiction:
Improvedata reliabilityVSAvoidstorage overhead
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The patent combines multiple strips into strip sets that share a single parity data group, reducing the total quantity of parity data stored. This merging eliminates redundant parity storage while maintaining protection across all strips in the set, thereby reducing storage overhead

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

Instead of providing full parity protection for every individual strip, the patent applies partial redundancy by having parity groups serve multiple strips. This partial action approach reduces the total amount of parity data stored while still providing adequate protection, thus reducing storage overhead

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If separate parity data groups are used for each strip to ensure reliability, then data reliability is improved, but storage efficiency deteriorates

Engineering Contradiction:
Improvedata reliabilityVSAvoidstorage efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent merges multiple adjacent strips into logical units called strip sets, where each strip set shares a common parity data group. This merging reduces the total number of parity groups from one per strip to one per strip set, thereby improving storage efficiency while maintaining reliability through the shared parity mechanism

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11593000B2Data processing method and apparatus
Publication Date: 2023.02.28 HUAWEI TECH CO LTD
  • US11593000B2 patent drawing
  • US11593000B2 patent drawing
  • US11593000B2 patent drawing

AI summary

Embodiments relate to the field of storage technologies. The method is applied to a flash device whose first physical storage space stores a data block at a first security level and a data block at a second security level and whose second physical storage space stores a data block at a second security level. The method includes: receiving a data write request used to request to write target data, and obtaining a security level of the target data; and writing the target data into the first physical storage space if the security level of the target data is the first security level; or writing the target data into the second physical storage space or writing the target data into the second physical storage space and the first physical storage space if the security level of the target data is the second security level.