SoC Virtualization Access Control for DMA Memory Isolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In mobile environments, there is a need for efficient memory isolation and sharing of input/output (IO) devices like neural processing units (NPUs) and graphics processing units (GPUs) among various services, ensuring memory isolation and efficient device sharing.
Innovation Solution
A system-on-chip (SoC) that isolates memory storage areas for each virtual machine and controls IO devices based on virtual identifiers, using an access control device to manage direct memory access operations and a hypervisor to update mapping information for memory access control.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple virtual machines share IO devices, then device utilization efficiency is improved, but memory security and isolation between virtual machines deteriorates
Solution Approach 1:
The patent segments the unified memory space into isolated regions for each virtual machine using memory protection units. Each virtual machine is assigned specific memory ranges that it can access, while other regions are protected from access. This segmentation allows multiple virtual machines to share IO devices while maintaining strict memory isolation, thus resolving the contradiction between device utilization efficiency and memory security.
2Reliability
If memory access is isolated for each virtual machine, then memory security is improved, but IO device sharing efficiency deteriorates
Solution Approach 1:
The patent introduces an access control device as an intermediary between virtual machines and IO devices. This access control device receives memory access requests from virtual machines, checks whether the requested memory address falls within the virtual machine's authorized range, and permits or blocks access accordingly. This intermediary mechanism enables both memory isolation and efficient IO device sharing by automating access control without requiring complex coordination between virtual machines.
3Reliability
If access control mechanisms are implemented for memory isolation, then memory security is improved, but system complexity deteriorates
Solution Approach 1:
The patent implements self-service memory isolation by configuring memory protection units and access control devices with predefined memory ranges for each virtual machine. Once configured, these components automatically enforce memory isolation policies without requiring continuous intervention from the host processor or management software. The system self-manages access control decisions, reducing the operational complexity despite the presence of additional hardware components.
Data Source
AI summary
A system-on-chip includes an input output (IO) device configured to perform a direct memory access operation on a memory, an access control device configured to search for mapping information between a plurality of virtual identifiers respectively corresponding to a plurality of virtual machines, and block the direct memory access operation based on the search result, and a host processor configured to provide, to the access control device, a target address accessed by the direct memory access operation and a target virtual identifier corresponding to a driving virtual machine driving the IO device.


