System-Level ECC Allocation Using Storage Device Integrity Data

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Historical data storage systems with autonomous error redundancy schemes lead to overlap and reduced efficiency, increasing the failure footprint, latency, and cost due to unnecessary error correction coding across all data storage devices, regardless of actual data integrity needs.

Innovation Solution

Implementing system-level error correction coding based on data integrity information from individual data storage devices, where each device provides integrity metrics to a system controller, allowing for dynamic and scenario-specific allocation of error correction coding, optimizing ECC based on the risk of data corruption and storage conditions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If autonomous error redundancy schemes are implemented on each data storage device, then data integrity is improved, but system efficiency deteriorates due to overlap and unnecessary ECC generation

Engineering Contradiction:
Improvedata integrityVSAvoidsystem efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent merges autonomous device-level ECC schemes into a coordinated system-level approach. The system controller consolidates integrity information from multiple devices and centrally manages ECC generation, eliminating redundant parity creation while maintaining comprehensive data protection across the storage array.

Inventive Principle:
Principle #5Merging (Combining)

2Reliability

If ECC is allocated to protect all data regardless of actual needs, then data protection is improved, but computational overhead increases

Engineering Contradiction:
Improvedata protectionVSAvoidcomputational overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies local quality by allocating ECC resources selectively based on actual data integrity needs. The system controller analyzes integrity information from specific devices and applies ECC only where necessary, rather than uniformly across all data, thereby reducing unnecessary computational overhead while maintaining targeted protection.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system implements partial action by generating ECC only for data that actually requires protection based on integrity metrics. Instead of applying ECC universally (excessive action), the system controller determines which specific data portions need protection and allocates ECC resources accordingly, reducing waste.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If device-level autonomous ECC is implemented, then individual device reliability is improved, but system cost increases

Engineering Contradiction:
Improveindividual device reliabilityVSAvoidsystem cost
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system controller serves multiple functions: it collects integrity information from all devices, analyzes system-wide reliability needs, and coordinates ECC generation across the entire array. This universal approach replaces multiple independent device-level ECC systems, reducing overall system cost while maintaining reliability through centralized intelligent management.

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

Data Source

PatentUS10897273B2System-level error correction coding allocation based on device population data integrity sharing
Publication Date: 2021.01.19 WESTERN DIGITAL TECHNOLOGIES INC
  • US10897273B2 patent drawing
  • US10897273B2 patent drawing
  • US10897273B2 patent drawing

AI summary

A dynamic scalable error correction coding (ECC) scheme for a data storage system involves a system controller predicting a type and/or amount of ECC needed to reconstruct data to be stored on a particular data storage device(s) based on operational data integrity information accessed from the array of data storage devices. Thus, redundancy does not need to be allocated unless required. The devices may be logically grouped into subsets according to common characteristics, whereby the prediction made for a device in a subset may be based on the data integrity information from that subset, as well as from other relevant subsets.