Trace Circuitry Lockup Detection and Bandwidth Optimization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing trace units fail to detect and indicate lockup states in processing circuitry, leading to incomplete trace data and wasted bandwidth, making it difficult to determine when and why lockup states occur.
Innovation Solution
Incorporating trace circuitry that detects lockup states and includes a lockup identifier in trace data, allowing for efficient detection and analysis of lockup states by treating them as exceptional conditions within the existing exception trace data packet format.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If the trace unit continuously generates trace data during normal operation, then the trace data provides complete information about processing activities, but the trace bandwidth is wasted when the processor is in lockup state generating repeated identical packets
Solution Approach 1:
The trace unit detects lockup state beforehand by monitoring processor state indicators (such as PC not advancing or exception flags) and preemptively stops generating trace packets when lockup is detected, preventing wasteful bandwidth consumption before it occurs
Solution Approach 2:
A lockup detection mechanism acts as an intermediary between the processor and trace unit, monitoring processor state and controlling trace packet generation to stop when lockup is detected, thereby mediating between complete trace data generation and bandwidth conservation
2Loss of energy
If the trace unit stops generating trace data when lockup state is detected, then the trace bandwidth is conserved, but the trace data loses information about when and why the lockup state occurred
Solution Approach 1:
The trace unit performs preliminary actions by capturing and recording lockup state information (such as program counter value, exception type, and processor state) before stopping trace packet generation, ensuring that diagnostic information is preserved even when subsequent trace data is suppressed
Solution Approach 2:
The trace unit extracts and separates lockup state information from the continuous trace data stream, isolating this critical diagnostic information for special handling and preservation while stopping generation of redundant trace packets during lockup state
3Measurement precision
If the trace unit generates detailed trace packets for every instruction executed, then the trace data provides comprehensive diagnostic information, but the trace bandwidth is exhausted by repeated packets during lockup state making it difficult to identify the triggering event
Solution Approach 1:
The trace unit captures critical lockup state information (program counter, exception type, processor state) before the lockup state causes repeated instruction execution, ensuring that the triggering event information is recorded while preventing bandwidth exhaustion from subsequent repeated packets
Data Source
AI summary
A data processing apparatus has processing circuitry for executing program instructions and trace circuitry for generating trace data indicating processing activities of the processing circuitry. The trace circuitry may detect a lockup state of the processing circuitry in which the processing circuitry does not make forward progress of execution of the program instructions. In response to detecting the lockup state, the trace circuitry may include in the trace data a lockup identifier indicating that the lockup state has occurred.


