Transient Error Correction in Spatial Fabric Architectures
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Spatial fabric architectures like FPGAs and CGRAs face challenges in correcting transient errors due to the lack of distinction between canonical and speculative states, and traditional error correction methods like N-modular redundancy are costly in terms of hardware overhead.
Innovation Solution
The proposed solution involves inferring a corrected state from a corrupted state by replaying architectural execution using portions of the corrupted state, utilizing latent state within the system to recreate the valid state without significant additional hardware overhead, and optimizing buffer configurations for improved recoverability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If N-modular redundancy is used to correct transient errors, then error correction capability is improved, but hardware area increases significantly
Solution Approach 1:
The patent creates a logical copy of the computational state by capturing and storing state information (register values, configuration data) that can be used to replay computations. Instead of physically replicating hardware components N times as in N-modular redundancy, the system uses software-based state copying and replay mechanisms to achieve error correction with minimal additional hardware overhead.
Solution Approach 2:
The patent performs preliminary actions by capturing and storing the computational state (register files, configuration parameters, intermediate results) before errors can propagate. This state capture mechanism allows the system to rewind and replay computations from a known good state, preventing the need for redundant hardware while maintaining error correction capability.
2Reliability
If computational state is captured for error recovery, then error correction is enabled, but system complexity increases
Solution Approach 1:
The patent makes existing hardware components multi-functional by having them serve both their primary computational function and error recovery function. For example, register files store both active computational data and recovery state information; configuration memory holds both operational parameters and restoration data. This eliminates the need for separate dedicated recovery hardware, reducing overall system complexity.
Solution Approach 2:
The system performs self-service error recovery by automatically capturing its own state, detecting errors, and replaying computations without external intervention. The computational device uses its existing resources (registers, memory, control logic) to autonomously recover from transient errors, minimizing the need for additional complex control mechanisms.
Data Source
AI summary
Examples relate to a concept for handling transient errors. An apparatus for correcting transient errors in a computational device comprises interface circuitry, machine-readable instructions and processing circuitry for executing the machine-readable instructions to obtain a signal indicating that a transient error has been detected in the computational device, the computational device being configured to perform computations using processing elements and connections between the processing elements, extract a state of the computational device, the state comprising at least one of present and previous values transmitted via the connections between the processing elements and state contained within the one or more processing elements, compute a corrected state of the computational device based on the state extracted from the computational device, and configure a computational device with the corrected state.


