ECC Decoder Pipeline with Out-of-Order Frame Completion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Newer error correction code (ECC) decoder designs, such as iterative low density parity check (LDPC) and iterative Reed Solomon decoders, exhibit variable latency, leading to potential delays and increased memory requirements due to unpredictable processing times, which can result in data loss or errors if not adequately managed.

Innovation Solution

Implementing an ECC decoder with out-of-order processing capabilities, where data can be processed through stages without waiting for previous data to complete, allowing for simultaneous processing in different stages and reducing memory needs by enabling data to move forward when it requires less processing time, thus minimizing latency and memory requirements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If iterative ECC decoders (LDPC, Reed Solomon) are used to improve error correction capability, then reliability is improved, but variable latency increases causing delays

Engineering Contradiction:
Improveerror correction capabilityVSAvoidprocessing latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The decoder is divided into multiple independent processing stages (first stage, second stage, third stage, etc.), where each stage can process different data packets simultaneously. This segmentation allows parallel processing of multiple packets through the same decoder resource, reducing overall latency while maintaining the reliability benefits of iterative decoding.

Inventive Principle:
Principle #1Segmentation

2Reliability

If data is processed in order through decoder stages to maintain data integrity, then reliability is improved, but productivity decreases due to waiting for previous data to complete

Engineering Contradiction:
Improvedata integrityVSAvoidprocessing throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system dynamically manages data packet flow through decoder stages, allowing packets to move forward when processing is complete rather than waiting for all previous packets to finish. This dynamic approach maintains data integrity through proper sequencing while significantly improving throughput by eliminating unnecessary waiting time.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The decoder maintains continuous useful action by immediately processing the next available data packet in each stage when the current packet completes processing. This eliminates idle time in the decoder pipeline, ensuring that the decoder is continuously productive while maintaining proper data sequencing for integrity.

Inventive Principle:
Principle #20Continuity of useful action

3Reliability

If memory is increased to buffer data during variable latency processing to prevent data loss, then reliability is improved, but device complexity and cost increase

Engineering Contradiction:
Improvedata loss preventionVSAvoidmemory requirements
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of using large monolithic memory to buffer all potentially delayed data, the system segments the buffering function across multiple smaller memory units associated with each decoder stage. This segmentation reduces the memory requirement at each stage while collectively providing the necessary buffering capacity to handle variable latency without data loss.

Inventive Principle:
Principle #1Segmentation

4Productivity

If parallel processing is implemented to reduce latency, then productivity is improved, but device complexity increases due to multiple processing units

Engineering Contradiction:
Improveprocessing speedVSAvoidnumber of processing units
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system uses dynamic resource allocation where a single decoder can be dynamically assigned to process different data packets at different stages. This dynamic time-multiplexing approach achieves parallel processing throughput without requiring multiple complete decoder units, thereby reducing device complexity while maintaining high productivity.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8136008B1ECC with out of order completion
Publication Date: 2012.03.13 SK HYNIX MEMORY SOLUTIONS AMERICA INC
  • US8136008B1 patent drawing
  • US8136008B1 patent drawing
  • US8136008B1 patent drawing

AI summary

Processing a sequence of data frames in an error correction code (ECC) decoder is disclosed. Processing includes receiving a first data frame in the sequence of data frames, initiating processing of the first data frame through the ECC decoder, receiving a second data frame from the input sequence of data frames, and initiating processing of the second data frame through the ECC decoder before the first data frame is finished being processed through the ECC decoder. The ECC decoder includes one or more stages and at least one of the stages is coupled to a memory configured to store data associated with the at least one stage.