Memory Protection Proxy for Fine-Grained Accelerator and I/O Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing hardware accelerator and I/O device interface technologies in heterogeneous systems expose system memory to security risks due to direct access to physical addresses, with conventional trust zone mechanisms providing inadequate protection granularity.
Innovation Solution
A memory protection method and apparatus that checks memory access permissions using a protection proxy control apparatus, which includes a protection stream table and physical page table protection table, with a cache for efficient permission information retrieval, ensuring secure access to system memory.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If accelerators or I/O devices are allowed to directly access system memory at physical addresses, then performance and power consumption are improved, but security and isolation risks are exposed
Solution Approach 1:
The patent introduces a protection proxy control apparatus as an intermediary between accelerators/I/O devices and system memory. This apparatus includes a protection stream table and physical page table protection table that intercept and control memory access requests, verifying permissions before allowing direct physical address access. This resolves the contradiction by maintaining the performance benefits of direct access while adding a security layer that prevents unauthorized memory access.
2Reliability
If a trust zone mechanism divides system resources into secure world and normal world, then insecure devices are prevented from accessing OS memory, but protection granularity is coarse and cannot protect normal world processes effectively
Solution Approach 1:
The patent segments the protection mechanism into multiple granular levels using protection stream tables and physical page table protection tables. Each table can independently control access permissions for different memory regions and data streams, enabling fine-grained protection for individual processes in the normal world while maintaining secure world isolation. This resolves the contradiction by providing both comprehensive protection coverage and detailed control granularity.
3Reliability
If permission information is stored in protection tables without caching, then memory security is maintained, but access efficiency is reduced due to repeated table lookups
Solution Approach 1:
The patent implements a cache mechanism that performs preliminary action by storing permission information from protection tables in advance. When memory access requests are made, the cache is checked first to retrieve permission information without requiring repeated lookups in the protection tables. This resolves the contradiction by maintaining security verification integrity while significantly improving access efficiency through cached permission data.
Data Source
AI summary
This application discloses a memory protection method and a protection proxy control apparatus. In an example method, in response to determining that an accelerator or an input/output (I/O) device requests to access a system memory by using a direct physical address, the protection proxy control apparatus may obtain, based on an identifier of a data stream of the accelerator or the I/O device, permission information of a physical page table in which a physical address requested to be accessed by the data stream is located, and perform permission check on the memory access request based on the permission information.


