Parallel Processing Unit Idle Cycle Fault Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing processing units configured for parallel processing in safety-critical systems, such as driver-assistance and autonomous vehicle systems, face challenges in efficiently detecting faults within the predetermined time frames required by standards like ASIL B and ASIL D of ISO 26262.
Innovation Solution
A processing unit with a parallel processing engine that includes a test instruction insertion logic to identify idle cycles and insert test instructions for processing, generating test outputs from multiple processing instances, and a check logic to compare these outputs and raise a fault signal if they do not match.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If test instructions are inserted during idle cycles of the parallel processing engine, then fault detection capability is improved, but processing throughput may be reduced due to insertion overhead
Solution Approach 1:
The system performs fault detection tests during idle cycles of the parallel processing engine, before faults occur and affect processing throughput. The test instruction insertion logic identifies idle cycles and inserts test instructions in advance, allowing the system to detect and respond to faults before they impact normal operations.
Solution Approach 2:
The system implements periodic fault detection by inserting test instructions during idle cycles of the parallel processing engine. This periodic testing mechanism ensures continuous monitoring of processing instances without requiring constant intervention, balancing fault detection needs with processing throughput requirements.
2Reliability
If multiple test instructions are inserted to cover all processing instances, then fault detection coverage is improved, but the complexity of the testing system increases
Solution Approach 1:
The testing system is segmented into distinct functional components: test instruction insertion logic that identifies idle cycles and inserts test instructions, multiple processing instances that execute tests in parallel, and check logic that compares outputs. This segmentation allows each component to be optimized independently while working together to achieve comprehensive fault detection coverage.
Solution Approach 2:
The parallel processing engine performs self-testing by inserting test instructions during its own idle cycles and using its processing instances to execute these tests. The engine compares outputs from different processing instances and raises fault signals if mismatches occur, eliminating the need for external testing equipment and reducing overall system complexity.
3Speed
If test outputs from multiple processing instances are compared in parallel, then fault detection speed is improved, but the resource consumption increases
Solution Approach 1:
The system merges fault detection operations with the existing parallel processing architecture by using the same processing instances for both normal processing and testing. Test instructions are inserted during idle cycles, and the same processing instances that perform normal work execute the tests, combining fault detection with existing computational resources rather than adding separate dedicated testing hardware.
Solution Approach 2:
The parallel processing engine maintains continuous useful action by executing test instructions during idle cycles rather than stopping completely for testing. The processing instances remain active, either performing normal processing tasks or executing test instructions, ensuring that the system is never completely idle and that resource consumption is minimized while maintaining fault detection capability.
Data Source
AI summary
A processing unit configured to perform parallel processing includes a parallel processing engine, the parallel processing engine including a plurality of processing instances configured to process instructions in parallel. Test instruction insertion logic identifies an idle cycle of the parallel processing engine and inserts a test instruction for processing during the idle cycle by each of the plurality of processing instances so as to generate a respective plurality of test outputs. Check logic compares a test output generated during the idle cycle by a first processing instance of the plurality of processing instances with a test output generated during the idle cycle by a second processing instance of the plurality of processing instances, and raises a fault signal if the compared test outputs do not match.


