Exception Handling Circuitry Syndrome Register Emulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In data processing systems, especially in virtualized environments, there is a challenge in securely handling exceptions such as memory aborts while maintaining the security of guest system data, as hypervisors need to emulate memory access without accessing private data.
Innovation Solution
The implementation of exception handling circuitry that uses a syndrome data store with replay state data to emulate exception-triggering operations, allowing the suppression of exception handling when necessary and ensuring that the hypervisor does not access private guest system data, by using a syndrome register to store and manage data values and states during exception handling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the hypervisor emulates memory access operations by accessing guest system state, then exception handling can be performed, but security is compromised as the hypervisor gains access to private guest data
Solution Approach 1:
The patent introduces syndrome data as an intermediary structure that mediates between the exception handling circuitry and guest system state. The syndrome data store captures exception information (including data values) without requiring the hypervisor to directly access guest registers or memory, thus enabling exception handling while maintaining security boundaries.
Solution Approach 2:
The patent creates a copy of relevant guest system state information in the syndrome data store. Instead of the hypervisor accessing the actual guest registers and memory during exception handling, it operates on copied data values stored in the syndrome data, eliminating the need for direct access to private guest data while still enabling emulation.
2Reliability
If exception handling program instructions are triggered for every exception-triggering operation, then complete emulation can be achieved, but processing efficiency deteriorates due to redundant handling
Solution Approach 1:
The patent performs preliminary action by setting the replay state data to indicate that an exception-triggering operation has been handled before the operation is re-executed. This preliminary marking allows the exception handling circuitry to quickly detect and suppress redundant exception handling, avoiding the need to trigger full exception handling program instructions for already-handled operations.
Solution Approach 2:
The patent implements a feedback mechanism using replay state data that provides information about the handling status of exception-triggering operations. The exception handling circuitry monitors this feedback state and uses it to determine whether to trigger exception handling program instructions or suppress them, creating a closed-loop control system that prevents redundant processing.
3Object-affected harmful factors
If the hypervisor is prevented from accessing guest system state for security reasons, then security is improved, but the ability to emulate exception operations deteriorates
Solution Approach 1:
The syndrome data acts as an intermediary layer that allows the hypervisor to perform emulation operations without directly accessing protected guest system state. The syndrome data store contains the necessary information (including data values from guest registers) to perform emulation, serving as a secure interface between the untrusted guest system and the privileged hypervisor.
Solution Approach 2:
The patent extracts only the specific information needed for exception handling (exception type, data values, addresses) from the guest system state and places it in the syndrome data store. This selective extraction allows the hypervisor to obtain necessary data for emulation without gaining access to the broader guest system state, maintaining security while enabling functionality.
Data Source
Figure 1
Figure 2
Figure 3~4
AI summary
A data processing system (2) includes exception handling circuitry (26) to detect attempted execution of an exception-triggering processing operation which includes transfer of a data value with a given register of a register bank (20). Upon detection of such an exception-triggering processing operation, syndrome data is stored within a syndrome register (32) characterising the exception-triggering processing operation with that syndrome data including the data value. The value may be stored into the syndrome register upon occurrence of the exception in the case of an aborting write instruction. The data value may be stored into the syndrome register by emulating code triggered by exception in the case of an aborting read instruction.