Communication Controller Bypassing Virtual Machine Monitor

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing virtual machine monitor in multi-core processing devices is resource-intensive due to the need for inter-partition and inter-core communication, requiring the hypervisor to serialize accesses, emulate host controller interfaces, and manage shared resources, leading to potential interference and increased computational load.

Innovation Solution

A system on a chip with a first communication controller and at least one second communication controller, allowing data frames to be routed directly between partitions without going through the virtual machine monitor, thereby reducing the hypervisor's workload by offloading communication functions and using hardware emulation for data frame reception and interrupt handling.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the hypervisor emulates the host controller interface to support inter-partition communication, then communication between partitions is enabled, but computational resources are heavily consumed and performance deteriorates

Engineering Contradiction:
Improveinter-partition communication capabilityVSAvoidcomputational resource consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent extracts the host controller interface emulation functionality from the hypervisor software layer and implements it directly in hardware within the communication controller. This hardware implementation includes dedicated logic for generating and routing interrupts to multiple partitions, eliminating the need for the hypervisor to emulate these functions and significantly reducing computational resource consumption while maintaining full inter-partition communication capability.

Inventive Principle:
Principle #2Taking out (Extraction)

2Reliability

If the hypervisor serializes accesses to shared peripherals to prevent interference, then system stability is improved, but processing speed and productivity decrease

Engineering Contradiction:
Improvesystem stabilityVSAvoidprocessing speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the communication controller functionality into partition-specific hardware interfaces, where each partition has its own dedicated interrupt handling logic and data buffers within the communication controller. This segmentation allows multiple partitions to access the communication controller simultaneously through hardware-multiplexed resources, eliminating the need for software serialization while maintaining system stability through hardware-controlled access arbitration.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The communication controller acts as a hardware intermediary between multiple partitions and shared peripherals, providing dedicated interface logic for each partition that handles communication independently. This hardware mediation enables concurrent access by multiple partitions without requiring hypervisor intervention or software-based serialization, thus maintaining reliability while improving processing speed.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If the hypervisor manages shared transmission and reception resources for multiple partitions, then resource utilization is optimized, but device complexity and operational overhead increase

Engineering Contradiction:
Improveshared resource managementVSAvoidhypervisor operational complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The communication controller implements self-service functionality through hardware-based automatic interrupt routing, where the controller autonomously generates and directs interrupts to the appropriate partition based on hardware-configured routing tables. The hardware automatically manages data buffer allocation and transmission/reception resource coordination without requiring hypervisor software intervention, thereby reducing operational complexity while maintaining optimized shared resource utilization.

Inventive Principle:
Principle #25Self-service

4Adaptability or versatility

If the hypervisor emulates host controller interface functions for each partition, then independent partition operation is enabled, but the performance requirements of the hypervisor increase

Engineering Contradiction:
Improveindependent partition operationVSAvoidhypervisor performance requirements
Core Design Contradiction:
Adaptability or versatilityVSPower

Solution Approach 1:

The patent replaces the software-based mechanical emulation of host controller interface functions with hardware-based logic circuits implemented directly in the communication controller. This substitution includes hardware logic for interrupt generation, routing, and status management that operates independently of the hypervisor, thereby enabling independent partition operation while dramatically reducing the performance requirements of the hypervisor software.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS10261817B2System on a chip and method for a controller supported virtual machine monitor
Publication Date: 2019.04.16 NXP USA INC
  • US10261817B2 patent drawing
  • US10261817B2 patent drawing
  • US10261817B2 patent drawing

AI summary

A system on a chip comprising: a first communication controller; at least one second communication controller operably coupled to the first communication controller; at least one processing core operably coupled to the first communication controller and arranged to support software running on a first partition and a second partition; and a virtual machine monitor located between the first and second partitions, and the at least one processing core and arranged to support communications there between. The first communication controller is arranged to: generate or receive at least one data frame; and communicate the at least one data frame to the at least one second communication controller; such that the at least one second communication controller is capable of routing the at least one data frame to the second partition bypassing the virtual machine monitor.