Data Processor Fault Detection via Identical Execution Thread Comparison
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data processors, such as graphics processors, face challenges in reliably detecting faults, particularly in safety-critical applications like automotive and medical environments, where errors can have severe safety implications, and existing fault detection methods often require suspending processing operations, leading to inefficiencies and increased power consumption.
Innovation Solution
The method involves generating sets of identical execution threads to redundantly process work items, allowing for real-time comparison of results to detect potential faults within the data processor, enabling fault detection during normal processing operations without suspending the job, and adjusting operating parameters to maintain reliability and reduce power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional fault detection methods are used, then faults can be detected, but processing operations must be suspended leading to reduced productivity and increased power consumption
Solution Approach 1:
The patent applies preliminary action by generating identical execution threads in advance that will process the same work item through the same instruction sequence. These redundant threads are prepared before fault detection is needed, allowing continuous processing while enabling fault detection through comparison of results from identical threads executed in parallel
Solution Approach 2:
The patent implements copying by creating identical copies of execution threads that process the same work item. These copied threads execute the same program instructions simultaneously, and their results are compared to detect faults. The copying principle allows fault detection without suspending processing because the copied threads continue execution alongside normal operations
2Reliability
If processing operations are suspended for fault detection, then faults can be detected, but power consumption increases and processing efficiency decreases
Solution Approach 1:
The patent maintains continuity of useful action by executing identical threads in parallel with normal processing operations rather than suspending work. The redundant threads continue to process work items while enabling fault detection through result comparison, eliminating the need to stop processing and thereby reducing power consumption associated with suspension and resumption overhead
Solution Approach 2:
The system performs self-service fault detection by having identical threads automatically compare their own results. The execution unit itself generates the redundant threads and compares their outputs without requiring external testing equipment or separate detection phases, allowing continuous operation at normal power levels while maintaining reliability
3Reliability
If identical execution threads are generated for fault detection, then fault detection capability improves, but device complexity increases
Solution Approach 1:
The execution unit is designed with multi-functionality to handle both normal processing and fault detection using the same hardware resources. The same execution unit generates and executes both regular and identical threads, and the same result comparison mechanism serves both performance validation and fault detection purposes, reducing the need for separate dedicated fault detection hardware
4Measurement precision
If redundant processing is performed by identical threads, then fault detection precision improves, but processing time increases
Solution Approach 1:
The patent implements periodic action by selectively generating identical threads at specific intervals or for specific work items rather than continuously for all processing. This periodic application of redundant processing maintains fault detection precision while minimizing the time overhead associated with executing additional threads, as identical threads are only created when fault detection is beneficial
Data Source
AI summary
A fault detection scheme for a data processor that comprises a programmable execution unit operable to execute programs to perform processing operations, and in which when executing a program, the execution unit executes the program for respective execution threads, each execution thread corresponding to a respective work item. In order to detect faults, a set of two or more identical execution threads is generated. The identical execution threads when executed perform identical processing for the same work item and a result of the processing of the same work item can thus be compared to determine whether there is a fault associated with the data processor.


