BIOS-BMC Memory Mapping During POST to Cut GPIO Latency
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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
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.
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
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.
Data Source
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.


