Memory Protection Proxy for Fine-Grained Accelerator and I/O Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
ImproveperformanceVSAvoidsecurity risks
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

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.

Inventive Principle:
Principle #24Intermediary (Mediator)

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

Engineering Contradiction:
Improvememory protectionVSAvoidprotection granularity
Core Design Contradiction:
ReliabilityVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

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

Engineering Contradiction:
Improvepermission verificationVSAvoidaccess efficiency
Core Design Contradiction:
ReliabilityVSProductivity

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.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12399841B2Memory protection method and protection proxy control apparatus
Publication Date: 2025.08.26 HUAWEI TECH CO LTD
  • US12399841B2 patent drawing
  • US12399841B2 patent drawing
  • US12399841B2 patent drawing

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.