Co-Processor Hang Detection and Selective Reset Circuit
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current methods for detecting and recovering from hangs in accelerated graphics rendering systems, such as those used in computer graphics processing, often fail to differentiate between slow responses and complete hangs, leading to unnecessary system restarts and resource wastage, and cannot selectively reset co-processors without affecting other processors.
Innovation Solution
A circuit and method that includes a hang detector module and a selective processor reset module to detect and reset co-processors like graphics processors without restarting other processors, allowing for targeted resets and reducing system instability by pausing communications during the reset and checking for successful recovery before resuming operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If a watchdog timer is used to detect hangs in the graphics driver, then hang detection capability is improved, but the system cannot differentiate between slow responses and complete hangs, leading to false positives
Solution Approach 1:
The patent implements a feedback mechanism where the hang detector module continuously monitors the co-processor's response to test commands and adjusts its detection logic based on the co-processor's busy state. The system sends test commands and waits for responses, using the feedback from whether the co-processor is busy or not to determine if a hang has truly occurred, thereby reducing false positives while maintaining accurate hang detection
Solution Approach 2:
The patent applies preliminary action by checking the co-processor's busy state before initiating hang detection. The system determines whether the co-processor is currently processing commands, and only performs hang detection when the co-processor should be idle. This preliminary check prevents false detection of hangs during normal processing, improving both detection accuracy and reliability
2Reliability
If the entire system is restarted when a hang is detected, then system stability is restored, but all hardware and software components are terminated regardless of whether they contributed to the hang
Solution Approach 1:
The patent applies segmentation by separating the reset operation from a full system restart. Instead of terminating all hardware and software components, the system selectively resets only the hung co-processor while leaving the host processor and other components running. This segmented approach restores system stability while preserving unaffected components, reducing unnecessary terminations
Solution Approach 2:
The patent extracts the hung co-processor from the rest of the system for isolated resetting. The hang detector module identifies the specific co-processor that is hung, and the reset mechanism targets only that component. This extraction allows the system to restore stability by removing the problematic element without affecting other healthy components, thereby avoiding unnecessary losses
3Reliability
If the system switches to non-accelerated mode when a hang is detected, then data loss is prevented, but the advantages of accelerated graphics rendering are lost and a total restart is required to return to accelerated mode
Solution Approach 1:
The patent applies dynamics by making the graphics rendering mode adaptable rather than static. Instead of permanently switching to non-accelerated mode, the system dynamically adjusts between accelerated and non-accelerated modes based on the operational state of the co-processor. When the co-processor is reset and becomes operational again, the system can return to accelerated mode, thus maintaining productivity while preventing data loss during hang conditions
4Measurement precision
If the watchdog timer executes periodically regardless of co-processor activity, then hang detection is continuous, but system resources are wasted when the co-processor is idle
Solution Approach 1:
The patent applies dynamics by making the watchdog timer execution conditional rather than continuous. The hang detector module dynamically adjusts its operation based on the co-processor's state, executing detection only when the co-processor is idle and should not be processing commands. This dynamic approach maintains continuous monitoring capability when needed while reducing system resource consumption during normal operation
Data Source
AI summary
A circuit monitors and resets a co-processor. The circuit includes a hang detector module for detecting a hang in co-processor. The circuit also includes a selective processor reset module for resetting the co-processor without resetting a processor in response to detecting a hang in the co-processor.


