Concatenated BCH-LDPC Error Correction for Storage Controllers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face inefficiencies in error correction, as existing methods consume memory, slow down data storage devices, and require additional circuitry to detect and correct larger data errors effectively.

Innovation Solution

A method employing a concatenated error correction code system using an inner Bose-Chaudhuri-Hocquenghem (BCH) code and an outer Low-Density Parity Check (LDPC) code, where data is initially encoded with BCH and then with LDPC, allowing for efficient error correction with reduced hardware requirements by leveraging LDPC's soft-error correction capabilities only when BCH fails.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If typical error correction techniques are used to detect and correct large errors, then data integrity is improved, but memory consumption increases, device speed decreases, and additional circuitry is required

Engineering Contradiction:
Improvedata integrityVSAvoidcircuitry requirements
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent divides the error correction task into two segments: BCH code handles common single-bit errors, while LDPC code handles larger error patterns. This segmentation allows each decoder to be optimized for its specific error type, reducing overall system complexity compared to using a single powerful decoder for all error types.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the operational parameters of the error correction system by using BCH code as the primary correction mechanism for typical errors, and only invoking LDPC code when BCH correction fails. This parameter change (conditional deployment based on error detection) reduces average-case complexity while maintaining maximum error correction capability when needed.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If typical error correction techniques are used to detect and correct large errors, then data integrity is improved, but device speed decreases

Engineering Contradiction:
Improvedata integrityVSAvoiddevice speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies partial action by using BCH correction for the majority of cases (single-bit errors) and only applying the more computationally intensive LDPC correction when necessary. This partial deployment of full error correction capability maintains data integrity while significantly improving average device speed.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The two-stage error correction process segments computation based on error severity: fast BCH correction handles typical cases, and slower LDPC correction handles exceptional cases. This segmentation creates a speed advantage for common operations while preserving the ability to correct large errors when they occur.

Inventive Principle:
Principle #1Segmentation

3Reliability

If typical error correction techniques are used to detect and correct large errors, then data integrity is improved, but memory consumption increases

Engineering Contradiction:
Improvedata integrityVSAvoidmemory consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent segments the error correction functionality into two distinct code types with different memory requirements. BCH code requires less memory and handles common errors, while LDPC code with higher memory requirements is only invoked when necessary. This segmentation reduces average memory consumption while maintaining the capability to correct large errors.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10719389B2Enhanced data storage with concatenated inner and outer error correction codes
Publication Date: 2020.07.21 BURLYWOOD LLC
  • US10719389B2 patent drawing
  • US10719389B2 patent drawing
  • US10719389B2 patent drawing

AI summary

A method of operating a storage controller is provided. The method includes determining encoded data to be written to a storage media by applying at least an initial encoding comprising a first error correcting code type and a subsequent encoding comprising a second error correcting code type. The method further includes writing the encoded data to the storage media, and responsive to reading the encoded data from the storage media, processing the encoded data into primary decoded data using one or more primary decoders employing the second error correcting code type and detecting when data errors arise in the decoded data. The method also includes based at least on detecting one or more data errors in the decoded data, processing the encoded data into secondary decoded data using one or more secondary decoders employing the first error correcting code type.