NVMe Root Port Function Number Mapping for Stable Hot Plugging

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing method for assigning function numbers to NVME interface root ports by UEFI is complex and inaccurate, leading to instability in the hot plugging function of the NVME interface.

Innovation Solution

A method involving a first firmware management module, such as UEFI, assigns communication channels to target hardware interfaces and sends parameters to a second system management module, like SMU, to ensure the output function numbers match those assigned by SMU, thereby stabilizing the hot plugging function.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Extent of automation

If UEFI calculates and generates function numbers according to the complex rule provided by AMD SMU, then the assignment process can be automated, but the accuracy and reliability of function number assignment cannot be ensured

Engineering Contradiction:
Improveautomation of function number assignmentVSAvoidaccuracy of function number assignment
Core Design Contradiction:
Extent of automationVSMeasurement precision

Solution Approach 1:

The patent introduces a communication channel assignment parameter as an intermediary between UEFI and SMU. Instead of UEFI directly calculating function numbers using complex AMD SMU rules, the system uses communication channel assignment parameters as a mediator to convey interface identification information to SMU, which then generates the function numbers. This intermediary mechanism simplifies the interaction between UEFI and SMU while ensuring accurate function number assignment.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of manufacture

If UEFI independently calculates function numbers using complex rules, then the process can be self-contained, but the function numbers may not match those assigned by SMU, causing hot plugging instability

Engineering Contradiction:
Improveself-containment of UEFI function number assignmentVSAvoidhot plugging function stability
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent establishes a feedback mechanism where UEFI sends communication channel assignment parameters to SMU, and SMU returns the generated function numbers to UEFI. This feedback loop ensures that the function numbers generated by UEFI (based on communication channel assignment) match the function numbers generated by SMU, thereby ensuring the stability of hot plugging function while maintaining UEFI's self-contained operation.

Inventive Principle:
Principle #23Feedback

3Device complexity

If the function number assignment process is simplified, then the implementation is easier, but the function numbers may not be unique or accurate for each hardware interface

Engineering Contradiction:
Improvecomplexity of function number assignment processVSAvoiduniqueness and accuracy of function numbers
Core Design Contradiction:
Device complexityVSManufacturing precision

Solution Approach 1:

The patent changes the parameter used for function number generation from direct hardware interface identifiers to communication channel assignment parameters. These parameters are derived from the communication channel assignment process, which assigns unique identifiers to each hardware interface. By using these transformed parameters, the system maintains simple and easy-to-implement function number assignment while ensuring uniqueness and accuracy for each hardware interface.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20260030126A1Processing method, processing apparatus, and electronic device
Publication Date: 2026.01.29 LENOVO (BEIJING) LTD
  • US20260030126A1 patent drawing
  • US20260030126A1 patent drawing
  • US20260030126A1 patent drawing

AI summary

A processing method includes performing, by a first firmware management module, a target operation for assigning communication channels to target hardware interfaces of an electronic device, respectively, to obtain a communication channel assignment parameter generated for each of the target hardware interfaces, sending, by the first firmware management module, the communication channel assignment parameter generated for each of the target hardware interfaces to a second system management module of the electronic device, so that the second system management module outputs corresponding function numbers for the target hardware interfaces based on corresponding communication channel assignment parameters, respectively, and obtaining, by the first firmware management module, the function numbers output by the second system management module for the target hardware interfaces, each function number corresponding to a target hardware interface.