Control Circuitry for Secure Peripheral Access Mode Locking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In data processing circuitry, efficiently managing access to peripheral devices in secure and non-secure modes without duplicating resources, while ensuring synchronization to prevent simultaneous access in both modes, is a challenge due to the complexity and resource-intensive nature of existing solutions like mutexes or semaphores.
Innovation Solution
The implementation of control circuitry that indicates and locks the current execution mode for accessing peripheral devices, allowing access requests to specify the mode and retaining that setting until released, thereby avoiding simultaneous secure and non-secure mode access through a state machine and configuration data store.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If a single peripheral device is shared between secure and non-secure modes, then resource usage is improved, but access synchronization complexity increases
Solution Approach 1:
The patent extracts the synchronization control logic from the peripheral device itself and places it in a separate control circuit (130). This control circuit maintains a state indicator (locked/unlocked) that is independently managed, separating the resource sharing mechanism from the device functionality and reducing the complexity burden on the peripheral device.
Solution Approach 2:
The control circuit acts as an intermediary between the processing circuitry and the peripheral device. It mediates access requests by checking the current execution mode against the locked mode indicator, and only permits access when the modes match. This intermediary layer simplifies the access control logic compared to implementing complex mutex or semaphore mechanisms within the peripheral device.
2Reliability
If complex synchronization mechanisms like mutexes or semaphores are used, then access control reliability is improved, but processing overhead increases
Solution Approach 1:
The patent removes the synchronization state management from the processing circuitry's software execution flow and places it in dedicated control circuitry with a hardware-maintained locked mode indicator. This extraction eliminates the need for software-based mutex or semaphore operations, significantly reducing processing overhead while maintaining reliable access control.
Solution Approach 2:
The control circuit automatically manages the synchronization state by comparing the current execution mode with the locked mode indicator and autonomously permitting or blocking access. This self-service mechanism eliminates the need for processing circuitry to execute complex synchronization algorithms, reducing clock cycle consumption while ensuring reliable mode-based access control.
3Reliability
If separate peripheral device instances are provided for each execution mode, then access reliability is improved, but resource consumption increases
Solution Approach 1:
The patent makes the single peripheral device universal by enabling it to serve both secure and non-secure modes through the control circuit's mode-based access management. The peripheral device maintains a single instance but can be dynamically accessed by different execution modes based on the locked mode indicator, eliminating the need for separate instances while preserving mode-specific isolation requirements.
Solution Approach 2:
The patent merges multiple mode-specific access requirements into a single unified peripheral device instance, managed by the control circuit. Instead of having separate instances for secure and non-secure modes, the system combines them into one shared resource with intelligent access control, reducing resource consumption while maintaining the necessary isolation through the locked mode indicator mechanism.
Data Source
AI summary
Circuitry comprises processing circuitry to execute program instructions to access a secondary device in an execution mode selected from at least a first execution mode and a second execution mode; and control circuitry to indicate a current execution mode by which the processing circuitry currently accesses the secondary device in response to an access request initiated by the execution by the processing circuitry of program instructions, in which the control circuitry is configured to require the access request to indicate a given execution mode as the current execution mode to be initiated by program instructions executed in the given execution mode.


