Virtual Function Driver Mapping via Global Configuration Register

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Standard approaches lock PF and VF drivers to I/O devices, requiring upgrades or new installations when changes occur in I/O device mappings, which is inefficient, especially in cloud-based environments with thousands of virtual machines.

Innovation Solution

A computing device with a virtual machine manager that sets a global configuration status register to a mapping-value, allowing VF and PF drivers to adapt to new I/O device mappings without needing upgrades, enabling backward compatibility and efficient resource management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If standard approaches lock PF and VF drivers to I/O devices, then driver stability is ensured, but driver upgrades or new installations are required when I/O device mappings change

Engineering Contradiction:
Improvedriver stabilityVSAvoiddriver compatibility with new I/O devices
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent changes the mapping parameters between Base Address Registers (BARs) and BAR roles dynamically through a configuration status register (CSR). Instead of locking drivers to fixed mappings, the system allows the mapping parameters to be changed by updating the CSR, enabling the same driver to work with different I/O device mappings without requiring driver upgrades or reinstallation.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If PF driver and I/O device set global CSR to mapping-value, then VF drivers can adapt to new I/O devices without upgrades, but system complexity increases due to mapping management

Engineering Contradiction:
Improvedriver compatibilityVSAvoidmapping management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a configuration status register (CSR) as an intermediary between the PF driver/I/O device and the VF drivers. The CSR holds the mapping-value that defines how BARs map to BAR roles. This intermediary simplifies the complexity by providing a centralized, standardized interface for mapping configuration, allowing VF drivers to adapt to different mappings without direct complex management logic in each driver.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The global CSR serves multiple functions: it stores the mapping-value, provides a standardized interface for the PF driver and I/O device to configure mappings, and enables all VF drivers to adapt to different I/O devices uniformly. This universal mechanism reduces overall system complexity by consolidating mapping management in a single multi-functional component.

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

3Loss of time

If VF drivers obtain mapping-value from global CSR, then installation frequency is reduced, but memory access overhead increases

Engineering Contradiction:
Improveinstallation timeVSAvoidmemory access energy
Core Design Contradiction:
Loss of timeVSUse of energy by moving object

Solution Approach 1:

The mapping-value is pre-configured in the global CSR by the PF driver and/or I/O device before the VF drivers need to use it. This preliminary action ensures that when VF drivers start or need to adapt, the mapping information is already available in a readily accessible location (the CSR), minimizing the need for repeated installations or complex setup procedures while managing memory access efficiently.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP4018304B1Interchangeable interface role remapping
Publication Date: 2024.03.13 HUAWEI TECH CO LTD
  • EP4018304B1 patent drawingFigure 1
  • EP4018304B1 patent drawingFigure 2
  • EP4018304B1 patent drawingFigure 3A

AI summary

In response to a bootup or a reset of an input/output, I/O, device providing virtualized hardware resources for use by virtual function, VF, drivers of virtual machines, VM and a load of a physical function, PF, driver, a global configuration status register, CSR, is set by the PF driver and/or the I/O device, to a mapping-value defining a certain mapping between base address register, BAR, roles supported by virtual functions exposed by the I/O device and I/O device BARs of the virtual functions. In response to the setting, the VF drivers for the virtual functions corresponding to the PF driver are loaded. Each respective VF driver obtains the mapping-value of the global CSR and maps, according to the certain mapping, BARs of the VF driver designated for the BAR roles, to the corresponding I/O device BARs of the virtual functions mapped to the BAR roles.