Exception Handling Mechanism for Consistent Trace Activation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing exception handling mechanisms fail to ensure that additional functionalities, such as trace functionality, are triggered consistently after exceptions occur between instructions that have a combined meaning, leading to potential loss of critical information due to arbitrary exception patterns.
Innovation Solution
Implementing a method where the subsequent instruction is always executed with its additional functionality after a Return From Exception (RFE) instruction, regardless of the presence of a special instruction, ensuring that the additional functionality is triggered without relying on the context of the special instruction before the exception.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If exception handling is implemented using conventional mechanisms, then the system can handle interrupts and traps, but additional functionalities (e.g., trace functionality) may be lost when exceptions occur between instructions with combined meaning
Solution Approach 1:
The system performs preliminary action by setting a flag or state before executing the instruction sequence that indicates additional functionality should be triggered. This preliminary state is preserved through the exception handling process, ensuring that when the exception is resolved and execution resumes, the additional functionality can be re-triggered even though the original special instruction was separated from its target instruction by the exception interruption
Solution Approach 2:
An intermediary mechanism (such as a status register, flag, or control bit) is introduced to carry information about the need for additional functionality across the exception boundary. This intermediary preserves the intent to trigger additional functionality without requiring the original special instruction and target instruction to remain adjacent, thus preventing loss of additional functionality while maintaining reliable exception handling
2Adaptability or versatility
If special instructions are used to trigger additional functionalities, then trace and monitoring capabilities are enabled, but the system complexity increases due to context storage requirements
Solution Approach 1:
The system extracts the essential information needed to trigger additional functionality from the complex instruction context. Instead of storing and managing entire instruction sequences or detailed contextual information, the system extracts a simple flag or state indicator that suffices to trigger the additional functionality when appropriate, thereby reducing device complexity while maintaining trace and monitoring capabilities
Solution Approach 2:
The system changes parameters by using a simplified representation (such as a single bit flag or status register value) to represent the complex state of whether additional functionality should be triggered. This parameter change from complex contextual information to a simple binary state reduces the storage and processing requirements, thereby reducing device complexity while preserving the ability to enable trace functionality
3Productivity
If exceptions are handled by returning to the previously interrupted program, then normal execution is resumed, but additional functionalities may not be triggered due to separation of instructions
Solution Approach 1:
The system implements feedback by checking the state of the intermediary mechanism (flag, status register, or control bit) when execution resumes after an exception. This feedback mechanism ensures that if the intermediary indicates that additional functionality should be triggered, the system will do so upon resuming execution, thereby maintaining functionality consistency while allowing efficient exception handling and rapid resumption of normal execution
Data Source
AI summary
Handling an exception includes (i) executing a return from an exception; and (ii) executing a subsequent instruction with an additional functionality in case the additional functionality of the subsequent instruction can be triggered by a special instruction.

