SSD Runtime Variable RAID Protection With Adaptive ECC Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional solid-state drive (SSD) systems face inefficiencies due to varying endurance of flash memory blocks, leading to increased bit errors over the device's lifecycle, which affects data storage reliability and lifespan.

Innovation Solution

The implementation of a data storage device with a controller that dynamically adjusts the size of error correction code (ECC) and data portions within flash pages, using variably-sized error correction codes and Check Pages to extend the SSD's useful lifetime by adapting to the condition of individual blocks and pages.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional SSD systems provision ECC resources according to the worst-performing blocks, then reliability is improved, but storage capacity is reduced

Engineering Contradiction:
Improvedata storage reliabilityVSAvoidstorage capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies local quality by provisioning ECC resources based on the specific condition of each block rather than uniformly across all blocks. The controller assesses block quality metrics and dynamically allocates ECC resources to match actual error rates, providing stronger protection only where needed and preserving capacity in healthier blocks.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically adjusts ECC provisioning based on real-time block condition assessment. As blocks degrade over time, the controller reevaluates their status and modifies ECC resource allocation accordingly, transitioning from static worst-case provisioning to adaptive, condition-based protection.

Inventive Principle:
Principle #15Dynamics

2Device complexity

If fixed-size ECC portions are used in all flash pages, then device complexity is reduced, but adaptability to varying block endurance is worsened

Engineering Contradiction:
ImproveECC management complexityVSAvoidadaptation to block condition
Core Design Contradiction:
Device complexityVSAdaptability or versatility

Solution Approach 1:

The patent implements dynamic ECC sizing where the controller adjusts the size of ECC portions based on assessed block quality. Healthier blocks receive smaller ECC portions preserving capacity, while degraded blocks receive larger ECC portions for enhanced protection, all managed through automated assessment and allocation algorithms.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of ECC portion size based on block condition metrics. Rather than using a fixed ECC size, the controller modifies the ECC parameter dynamically to match the actual error characteristics of each block, optimizing the balance between protection and capacity.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If larger ECC portions are allocated to all pages, then reliability is improved, but storage capacity is reduced

Engineering Contradiction:
Improveerror correction capabilityVSAvoidusable storage capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies local quality by allocating ECC resources according to the specific needs of each block. Instead of uniformly increasing ECC across all pages, the controller identifies blocks requiring enhanced protection and allocates larger ECC portions only to those blocks, preserving capacity in blocks with lower error rates.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system applies partial action by providing enhanced ECC protection only to the extent necessary for each block's actual condition. Rather than over-provisioning all blocks with maximum ECC, the controller applies just enough correction capability to meet reliability targets for each specific block.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentEP2926256B1Method and data storage devices having a runtime variable raid protection scheme
Publication Date: 2019.07.24 WESTERN DIGITAL TECHNOLOGIES INC
  • EP2926256B1 patent drawingFigure 1A
  • EP2926256B1 patent drawingFigure 1B~2
  • EP2926256B1 patent drawingFigure 3~4

AI summary

A data storage device may comprise a flash controller and an array of flash memory devices coupled to the flash controller. The array may comprise a plurality of S~Pages that may each comprise a plurality of F~Pages, In turn, each of the plurality of F~Pages may be configured to store a variable amount of data and a variable amount of error correction code. The flash controller may be configured to generate an error correction code across each F-Page of an S~Page and to store the generated error correction code within one or more F-Pages having the largest amount of data.