BIOS-BMC Memory Mapping During POST to Cut GPIO Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing methods for firmware interaction in server systems, such as BIOS and BMC cooperation, suffer from high GPIO usage and increased latency, leading to inefficiencies and prolonged startup times during the power-on self-test stage.

Innovation Solution

A method and apparatus that utilizes memory mapping IO to facilitate interaction between BIOS and BMC, involving initialization and segmentation of memory mapping IO to reduce latency and GPIO usage, allowing for efficient interaction and reduced startup times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If traditional GPIO-based interaction methods are used between BIOS and BMC, then firmware interaction can be established, but GPIO usage increases and latency increases leading to prolonged startup times

Engineering Contradiction:
Improvestartup timeVSAvoidGPIO usage
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent replaces the traditional GPIO-based mechanical/electrical interaction system with a memory-mapped I/O system. The BIOS and BMC communicate through predefined memory addresses rather than through GPIO pins, substituting a slower, more complex physical signaling mechanism with a faster, simpler memory access mechanism. This is achieved by allocating specific memory regions that both BIOS and BMC can access, allowing direct data exchange without GPIO overhead.

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

2Productivity

If traditional GPIO-based interaction methods are used between BIOS and BMC, then firmware interaction can be established, but latency increases leading to reduced interaction efficiency

Engineering Contradiction:
Improvefirmware interaction efficiencyVSAvoidinteraction latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent substitutes the slow GPIO signaling mechanism with fast memory-access-based communication. By defining specific memory-mapped I/O regions that the BMC can directly access during BIOS execution, the system eliminates the latency inherent in GPIO read/write operations. The BMC writes configuration data directly to predefined memory addresses, and the BIOS reads from these addresses immediately, creating a low-latency communication channel.

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

3Productivity

If memory mapping IO is used for BIOS and BMC interaction, then startup time is reduced and interaction efficiency is improved, but system complexity increases due to initialization requirements

Engineering Contradiction:
Improvefirmware interaction efficiencyVSAvoidmemory mapping initialization
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent performs preliminary actions during system initialization to set up the memory-mapped I/O communication channel. The BIOS allocates specific memory regions and configures the BMC with the appropriate memory addresses before actual interaction begins. This preliminary setup, including defining memory boundaries and access permissions, eliminates the need for complex runtime negotiation and simplifies subsequent communication operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250370760A1Firmware interaction method and apparatus, and server and storage medium
Publication Date: 2025.12.04 INSPUR SUZHOU INTELLIGENT TECH CO LTD
  • US20250370760A1 patent drawing
  • US20250370760A1 patent drawing
  • US20250370760A1 patent drawing

AI summary

Provided is a firmware interaction method and apparatus, and a server and a storage medium. The method is applied to a server, the server includes a plurality of pieces of firmware, that are a central processing unit (CPU), a basic input/output system (BIOS) and a baseboard management controller (BMC). The method includes: acquiring, by the BIOS, an initial memory mapping IO from the CPU at a power-on self-test stage after the server is powered on; obtaining a target memory mapping IO through performing an initialization operation on the initial memory mapping IO by the BIOS; and using, by the BIOS, the target memory mapping IO to interact with the BMC.