Debugging Multiprocessor Locked Mode Transitions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Debugging data processing systems operating in locked mode is challenging due to the need for fault tolerance, which overwrites debug state, making it difficult to debug the switching process between split and locked modes.
Innovation Solution
The introduction of an emulation-locked mode where at least one processor is active for debugging while others maintain their debug state unaltered, allowing for preservation of debug state across mode transitions and enabling effective debugging without fault tolerance, along with clamping circuitry to prevent inactive processors from influencing the system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If processors are normalised before entering locked mode to ensure fault tolerance, then reliability is improved, but debug state is overwritten making debugging difficult
Solution Approach 1:
The system segments processor operation into distinct modes: split mode for independent execution, locked mode for synchronized fault-tolerant operation, and emulation-locked mode for debugging. Each mode has specialized characteristics optimized for its purpose, allowing debug state preservation during locked mode transitions through the emulation-locked intermediate state.
Solution Approach 2:
The emulation-locked mode serves as an intermediary state between split mode and locked mode during debugging operations. This intermediate mode allows processors to transition through locked mode execution while preserving debug state, enabling post-transition debugging without losing debug information.
2Ease of operation
If debug state is preserved across mode transitions, then debugging capability is maintained, but fault tolerance mechanisms are bypassed
Solution Approach 1:
The system dynamically adjusts processor behavior based on operational mode. In emulation-locked mode, processors execute locked mode code while maintaining debug state preservation, whereas in normal locked mode, processors perform full normalization for fault tolerance. The system adapts its operation characteristics to match debugging or production requirements.
Solution Approach 2:
The system changes operational parameters based on mode: in emulation-locked mode, debug state preservation is enabled and processors do not fully normalize, while in normal locked mode, full normalization occurs for fault tolerance. This parameter switching allows the same hardware to support both debugging and fault-tolerant operation.
3Reliability
If all processors track each other in locked mode, then fault tolerance is ensured, but debugging of switching process becomes complex
Solution Approach 1:
The emulation-locked mode extracts the debugging function from the normal locked mode operation. By creating a specialized debug mode, the system separates debugging requirements from production requirements, allowing simplified debugging operations without compromising the fault tolerance of normal locked mode execution.
Data Source
AI summary
A data processing system 2 is provided with multiple processors 4, 6 which can operate in either a split-mode in which each processor executes its own program flow or a locked-mode in which the processors execute the same program flow. Debug circuitry 8, 10 is associated with each of the processors. In an emulation-locked mode of operation, one of the processors 4 is active and its respective debug circuitry 8 is active to update the debug state data so as to debug the locked mode code. At the same time, the second processor 6 is held inactive and its state is maintained as well as the debug state data of the debug circuitry 10 within that inactive processor. This maintains the debug state data of the processor 6 across entry and exit to the locked mode of operation.


