Hardware-Software Cooperative Pipeline Error Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Compute-class processors face challenges in detecting and correcting pipeline errors, as existing error detection mechanisms like ECC codes leave coverage holes and require additional costly mechanisms like spatial or temporal duplication, which incur high overhead or design complexity.

Innovation Solution

The implementation of SEC-DED-DP and SEC-DP techniques, which involve storing data bits and ECC check bits separately to detect and correct single-bit storage errors without duplicating data or ECC check bits, and using parity bits to distinguish between storage errors and pipeline errors, thereby maintaining error correction capabilities while avoiding mis-correction of pipeline errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If spatial duplication is used to protect against pipeline errors, then reliability is improved, but chip area cost and design complexity increase significantly

Engineering Contradiction:
Improvepipeline error protectionVSAvoidchip area
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

The patent segments the error protection mechanism into separate components: ECC codes are applied only to storage registers, while pipeline stages use lighter-weight detection mechanisms. This segmentation allows each component to be optimized independently, reducing overall chip area while maintaining reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different error protection strategies are applied to different parts of the system based on their specific requirements. Storage registers use full ECC protection, while pipeline stages use more area-efficient detection methods. This local quality approach ensures that area-intensive ECC hardware is only deployed where absolutely necessary.

Inventive Principle:
Principle #3Local quality

2Reliability

If temporal duplication is used to detect pipeline errors, then reliability is improved, but performance overhead increases significantly

Engineering Contradiction:
Improvepipeline error detectionVSAvoidexecution speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements preliminary error detection within the pipeline by placing checkers at strategic points before errors can propagate. This preliminary action allows errors to be detected early in the execution flow, enabling faster recovery and reducing the performance impact compared to post-execution verification methods.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The design allows the pipeline to continue executing instructions without stopping for error checking, skipping the traditional stop-check-resume cycle. Error detection occurs in parallel with instruction execution, and recovery mechanisms are pre-positioned to minimize disruption to the instruction stream.

Inventive Principle:
Principle #21Skipping (Rushing through)

3Reliability

If full ECC protection is applied to pipeline operations, then reliability is improved, but hardware cost and design complexity increase

Engineering Contradiction:
Improvedata integrityVSAvoidhardware complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the application of ECC protection to only those pipeline components where it is most beneficial—primarily storage registers and critical data paths. Other pipeline stages use simpler protection mechanisms, reducing overall hardware complexity while maintaining data integrity where it matters most.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Full ECC protection is applied locally to specific high-risk areas of the pipeline rather than uniformly across all stages. This local quality approach ensures that complex ECC hardware is deployed only where the probability of errors is highest or the impact of errors would be most severe.

Inventive Principle:
Principle #3Local quality

4Device complexity

If no error protection is used, then hardware cost is reduced, but coverage holes remain in error detection

Engineering Contradiction:
Improvehardware costVSAvoiderror detection coverage
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent segments error protection into multiple layers: ECC for storage, lighter checkers for pipeline stages, and targeted protection for critical operations. This segmented approach provides comprehensive coverage across all pipeline components without requiring full ECC protection everywhere, balancing cost and reliability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The design uses multi-functional error detection mechanisms that can operate in different modes depending on the pipeline stage. A single detection unit can provide both lightweight checking for area efficiency and full ECC-like protection when needed, achieving universal coverage across diverse pipeline components with a unified hardware structure.

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

Data Source

PatentUS12099407B2System and methods for hardware-software cooperative pipeline error detection
Publication Date: 2024.09.24 NVIDIA CORP
  • US12099407B2 patent drawing
  • US12099407B2 patent drawing
  • US12099407B2 patent drawing

AI summary

An error reporting system utilizes a parity checker to receive data results from execution of an original instruction and a parity bit for the data. A decoder receives an error correcting code (ECC) for data resulting from execution of a shadow instruction of the original instruction, and data error correction is initiated on the original instruction result on condition of a mismatch between the parity bit and the original instruction result, and the decoder asserting a correctable error in the original instruction result.