Virtual PCIe Hot Plug for Remote Physical Function Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional PCIe hot plug mechanisms require physical intervention and are not suitable for remote management, especially in datacenter applications where devices are far from management sites, and they lack flexibility for dynamic allocation of Physical Functions.

Innovation Solution

A virtual hot plug controller manages a pool of Physical Functions via FPGA soft logics and software intervention, enabling remote configuration and dynamic allocation without a physical switch, mimicking PCIe switch behavior to support hot addition and removal of virtual devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If physical PCIe devices are hot-plugged during operation, then device replacement is enabled, but system instability and data corruption may occur

Engineering Contradiction:
Improvedevice replacement capabilityVSAvoidsystem stability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent creates a virtual copy of the physical PCIe device in the host system's memory space. This virtual device replica allows the physical device to be removed and replaced without affecting the running virtual machine, as the virtual machine continues to interact with the virtual copy rather than the physical hardware directly.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The virtual PCIe device acts as an intermediary layer between the virtual machine and the physical PCIe device. This intermediary enables hot-plugging by decoupling the virtual machine from direct physical device dependencies, allowing physical device changes without disrupting virtual machine operation.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If physical PCIe devices are hot-plugged, then device updates are enabled, but application performance may deteriorate due to re-detection and re-initialization

Engineering Contradiction:
Improvedevice update capabilityVSAvoidapplication performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The virtual PCIe device is pre-configured and initialized in the virtual machine's address space before any physical device changes occur. This preliminary setup ensures that the virtual machine has a ready-to-use device interface, eliminating the need for re-detection and re-initialization when physical devices are updated.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

By maintaining a virtual copy of the PCIe device that persists across physical device changes, the system avoids the performance penalty of re-initialization. The virtual copy retains its configuration and state, allowing seamless device updates without application performance deterioration.

Inventive Principle:
Principle #26Copying

3Adaptability or versatility

If virtualization technology is used to enable hot-plugging, then device replacement is enabled, but system complexity increases

Engineering Contradiction:
Improvehot-plug capabilityVSAvoidsystem architecture complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The virtual PCIe device serves multiple functions: it acts as a device replica for the virtual machine, a translation layer between virtual and physical devices, and a hot-plug enabler. This multi-functionality reduces the need for separate complex mechanisms, as the virtual device itself handles hot-plugging without requiring additional virtualization infrastructure.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Reliability

If virtual address space mapping is used, then device isolation is improved, but address translation overhead increases

Engineering Contradiction:
Improvedevice isolationVSAvoidaddress translation overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The virtual PCIe device is pre-mapped into the virtual machine's address space during virtual machine initialization. This preliminary mapping establishes fixed address translations that persist across physical device changes, eliminating the need for repeated address translation operations and reducing overhead while maintaining device isolation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP4222608B1Virtual hot plug system and method for pcie devices
Publication Date: 2026.05.20 XILINX INC
  • EP4222608B1 patent drawingFigure 1
  • EP4222608B1 patent drawingFigure 2
  • EP4222608B1 patent drawingFigure 3

AI summary

A method for managing a pool of physical functions in a PCIe integrated endpoint includes receiving a configuration instruction indicating a topology for a PCIe connected integrated endpoint (IE), and implementing the topology on the IE. The method further includes receiving a hot plug instruction, and, based at least in part, on the hot plug instruction, adding or removing a virtual endpoint (vEP) to or from a virtual downstream port (vDSP) on the IE.