Information processing method, device, system, equipment, medium and program product
By receiving configuration instructions before the server is powered on and matching the quota and actual asset information, the problem that the BIOS cannot accurately identify the PCIe device serial number is solved, and the flexible management and accurate transmission of asset information in complex server systems is realized.
Patent Information
- Application Number
- CN202510756904.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-06
- Publication Date
- 2025-07-08
- Estimated Expiration
- 2045-06-06
AI Technical Summary
In complex server systems, the BIOS cannot accurately identify and sort the serial numbers of multiple PCIe devices, resulting in a lack of completeness and accuracy of asset information. The existing technology has problems such as large hardware resource usage, complex identification logic and insufficient error feedback.
By receiving configuration instructions before the server is powered on, the substrate management controller is used to read the rated asset information from the nonvolatile memory, and after powered on, the actual configuration information is detected through the input and output system to match, ensuring the completeness and accuracy of the information.
It realizes flexible switching of configuration types in complex server systems, saves software and hardware resources, improves the transmission integrity and accuracy of asset information, and issues alarm prompts when configurations do not match.
Smart Images

Figure CN120276780A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of information processing, and in particular, to an information processing method, apparatus, system, device, medium, and program product. Background Art
[0002] With the industrial upgrade and the rapid development of the electronic information industry, the current performance requirements for servers are getting higher and higher. Not only are the number of devices equipped with the Peripheral Component Interconnect Express (PCIe) in the server increasing, but also their device forms and specifications are becoming more and more diverse. For example, Peripheral Component Interconnect Express (PCIe) devices such as Graphics Processing Unit (GPU), PCIe hard disk, Redundant Array of Independent Disks (RAID), and network card are often integrated into the same server system. In a server system, the asset information maintained by the Baseboard Management Controller (BMC) usually includes the complete identity information of various PCIe devices, so that users can master the server system configuration through the asset list and achieve physical positioning by combining the chassis silk screen information.
[0003] The asset information in the BMC is mainly generated by the Basic Input / Output System (BIOS) when initializing PCIe devices during the Power-On Self-Test (POST) phase. However, under different server configurations, especially when multiple PCIe devices are led out from the same device port, their spatial positions and serial numbers may vary. The BIOS cannot recognize and correctly sort the serial numbers of multiple PCIe devices, resulting in the BIOS lacking a complete understanding of the current actual device layout and identity information and being unable to complete the complete construction of asset information.
[0004] Currently, for a server system with a fixed structure, the BIOS can allocate device serial numbers in a fixed way. However, for a complex server system with flexible configuration and strong scalability, the BIOS can identify the device identity through the ID identification code (Pin) set on the PCIe device. Although this method can achieve basic identity recognition, it has problems such as large hardware resource occupation and complex recognition logic, and it is difficult to meet the requirements of high-performance and high-density server systems for the dynamic matching and correction capabilities of asset information, thereby affecting the integrity and accuracy of the information reported by the BIOS to the BMC. Summary of the Invention
[0005] The present application provides an information processing method, apparatus, system, device, medium, and program product to at least solve the problem of information processing in the related art.
[0006] The present application provides an information processing method, including: Before the server is powered on, receiving a configuration instruction, where the configuration instruction includes the current configuration type of at least one device configured by the server; Reading target rated information from a target area through a baseboard management controller, where the target area is a storage area in a non-volatile memory for storing rated asset information of the current configuration type; After the server is powered on, detecting the actual configuration information of at least one device through an input / output system; Matching the target rated information and the actual configuration information through the input / output system, and when the target rated information and the actual configuration information are consistent, transmitting complete configuration information to the baseboard management controller.
[0007] The present application further provides an information processing apparatus, including: A receiving module, configured to receive a configuration instruction before the server is powered on, where the configuration instruction includes the current configuration type of at least one device configured by the server; A determining module, configured to read target rated information from a target area through a baseboard management controller, where the target area is a storage area in a non-volatile memory for storing rated asset information of the current configuration type; An obtaining module, configured to detect the actual configuration information of at least one device through an input / output system after the server is powered on; A matching module, configured to match the target rated information and the actual configuration information through the input / output system, and when the target rated information and the actual configuration information are consistent, transmit complete configuration information to the baseboard management controller.
[0008] The present application further provides an information processing system. The information processing system includes a display, a baseboard management controller, an input / output system, and a non-volatile memory. The baseboard management controller and the non-volatile memory perform information transmission through a first bus, the baseboard management controller and the display perform information transmission through a second bus, and the baseboard management controller and the input / output system perform information transmission through a third bus, where: The display is configured to generate a configuration instruction before the server is powered on and transmit the configuration instruction to the baseboard management controller via the second bus, where the configuration instruction includes the current configuration type of at least one device configured by the server; The baseboard management controller is used to receive configuration instructions and read target rated information from a target area via a first bus, where the target area is a storage area in a non-volatile memory for storing rated asset information of the current configuration type; The input / output system is used to receive the target rated information transmitted by the baseboard management controller via a third bus; after the server is powered on, detect the actual configuration information of at least one device; match the target rated information and the actual configuration information, and when the target rated information and the actual configuration information are consistent, transmit complete configuration information to the baseboard management controller.
[0009] This application also provides an electronic device, including: a memory for storing a computer program; a processor for implementing the steps of any of the above information processing methods when executing the computer program.
[0010] This application also provides a computer-readable storage medium storing a computer program, where the computer program implements the steps of any of the above information processing methods when executed by a processor.
[0011] This application also provides a computer program product including a computer program that implements the steps of any of the above information processing methods when executed by a processor.
[0012] The information processing method provided by this application provides at least one optional configuration type, and realizes flexible switching of specific configurations by selecting different configuration types. Rated asset information of different configuration types is pre-stored in a non-volatile memory. During the power-on verification process, by matching the rated asset information and the actual configuration information, the input / output system can accurately obtain the asset information under the current configuration type. The method of the baseboard management controller transmitting the rated asset information to the input / output system not only saves software and hardware resources, but also realizes the verification of configuration information by the input / output system, further improving the integrity and accuracy of the transmitted information. BRIEF DESCRIPTION OF THE DRAWINGS
[0013] To more clearly illustrate the embodiments of this application, the following will briefly introduce the drawings required for the embodiments. Obviously, the drawings in the following description are only some embodiments of this application. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0014] Figure 1 It is a schematic structural diagram of an information processing system provided by an embodiment of this application; Figure 2 It is a schematic flow diagram of an information processing method provided by an embodiment of this disclosure; Figure 3Flow diagram of an information processing method provided by an embodiment of the present disclosure; Figure 4 Structural diagram of an information processing apparatus provided by an embodiment of the present disclosure. Detailed implementation manners
[0015] Next, the technical solutions in the embodiments of the present application will be clearly and completely described with reference to the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
[0016] It should be noted that in the description of the present application, the terms "include", "comprise" or any other variant thereof are intended to cover a non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not expressly listed, or further includes elements inherent to such process, method, article or device. The terms "first", "second", etc. in the present application are used to distinguish similar objects, rather than to describe a specific order or sequence.
[0017] To enable those skilled in the art of the present technology to better understand the solutions of the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific implementation manners.
[0018] Combined with the specific application environment architecture or specific hardware architecture on which the execution of the information processing method depends, the specific application environment architecture or specific hardware architecture will be described herein.
[0019] Embodiments of the present application provide an information processing method. In combination with the execution process of the information processing method, the method will be described in detail. Before making a similar description of the method provided by the present application, the terms involved will be explained first, where: BMC: Baseboard Management Controller, a dedicated microcontroller used to monitor and manage the status of server hardware and provide remote management functions.
[0020] CPLD: Complex Programmable Logic Device, an electronic component suitable for digital circuit design.
[0021] PCIe: Peripheral Component Interconnect Express, a high-speed serial computer expansion bus standard, is a high-speed serial computer expansion bus standard used to connect various external and internal devices to the computer motherboard.
[0022] E2PROM: Electrically Erasable Programmable read only memory, non-volatile memory, is a non-volatile memory used to save data even when power is off.
[0023] BIOS: Basic Input / Output System is a firmware interface in a computer that performs hardware initialization when the computer is started and provides running services for the operating system.
[0024] POST: Power-On Self-Test is an important function of BIOS, which is used to check whether each part of the computer can function normally.
[0025] CPU Root Port: is the port connected to the PCIe controller on the CPU.
[0026] BDF: Bus-Device-Function, an identifier used to uniquely identify each PCIe device in the system. Bus refers to the bus number to which the device is connected, Device refers to the number of the device on the bus, and Function refers to one of the multiple functions that the device may support. Each device has at least one function.
[0027] Currently, in server systems, the asset information log maintained by the BMC usually contains the complete identity information of various PCIe devices, such as CPU Root Port, bandwidth configuration, device serial number, and BDF address. This information not only makes it easy for users to grasp the system configuration through asset information, but also can be combined with the chassis silk screen to achieve physical positioning. Among them, the chassis silk screen usually refers to the various identification information added on the outer shell (ie chassis) of a computer or electronic device through printing or marking technology. The asset information in the BMC is mainly generated by the BIOS when it initializes the PCIe device during the POST phase. However, under different server configurations, especially when multiple PCIe devices are led out from the same CPU PCIe Port, their spatial positions and serial numbers may be different, and the BIOS cannot automatically identify and correctly sort the serial numbers of these devices.
[0028] In the related art, for a server system with a fixed structure, the BIOS can allocate device serial numbers in a firmware way. However, for a complex system with flexible configuration and strong scalability, it is necessary to rely on an additional auxiliary mechanism. For example, the ID is identified through the ID pins on the PCIe device. The ID is usually set on the PCIe Riser card or the PCIe hard disk backplane. Different devices define different ID truth tables through the pull-up and pull-down levels of resistors. The ID truth table corresponds to specific silk screen and serial number information. Subsequently, the BIOS can directly read the information of the ID pins to determine the specific information of the devices mounted under each PCIe Port of the CPU. Although this physical ID pin method can achieve basic identification, for a server system with a large variety and quantity of components, the required number of ID pins will also be relatively large, occupying a large amount of hardware resources. There is also a redundant BIOS identification logic, that is, there are problems such as large hardware resource occupation, complex identification logic, and lack of error feedback mechanism. Moreover, for this one-way information transmission, if the ID pin data transmission is incorrect or some PCIe devices are not initialized normally due to their own failures, the system cannot actively report errors or give warnings, affecting the accuracy and reliability of asset management. Therefore, for a server system with complex PCIe device configurations, there is an urgent need to provide a software and hardware mechanism that can dynamically match device asset information and silk screen information and has a correction ability to improve the flexibility and stability of PCIe device asset information management under complex configurations.
[0029] Figure 1 FIG. 1 is a schematic structural diagram of an information processing system provided by an embodiment of the present application. The information processing system (hereinafter referred to as the system) includes a display, a baseboard management controller, an input / output system, and a non-volatile memory. The baseboard management controller and the non-volatile memory perform information transmission through a first bus. The baseboard management controller and the display perform information transmission through a second bus. The baseboard management controller and the input / output system perform information transmission through a third bus.
[0030] It can be understood that Figure 1It can be understood as a system schematic diagram for the transfer of asset information and silk screen information within the entire server. Among them, the display (UI) is denoted as 104, the baseboard management controller (BMC) is denoted as 101, the input / output system (BIOS) is denoted as 102, and the non-volatile memory (E2PROM) is denoted as 103. Specifically, the baseboard management controller is the BMC chip on the motherboard. In the design of general servers, its main function is to implement the out-of-band monitoring functions of various aspects such as the temperature, voltage, and operating status of the entire server, and to visually display the asset information of the server. Through the transmission of asset information between the baseboard management controller and the input / output system, under different PCIe configurations, the BIOS can flexibly obtain the original PCIe asset information (rated asset information), especially the serial number information of PCIe devices and transfer the completed information to the BMC.
[0031] Among them, the display is used to generate configuration instructions before the server boots up and transmit the configuration instructions to the baseboard management controller via the second bus. Among them, the configuration instructions include the current configuration type of at least one device configured in the server.
[0032] It can be understood that a configuration list is displayed on the display. The configuration list includes at least one preset configuration type set in advance. The rated asset information of the preset configuration type reflects the specific configuration of at least one device included in the server, and the rated asset information of different configuration types is different. Subsequently, after the user determines a certain preset configuration type, in response to the trigger operation for a certain preset configuration type, configuration instructions are generated. Among them, the current configuration type included in the configuration instructions is the triggered preset configuration type, and the current configuration type is also the server configuration type selected by the user himself. Subsequently, the user can operate the server using this configuration type. Subsequently, via the second bus ( Figure 1 S3 in it) transmits the configuration instructions to the baseboard management controller.
[0033] Among them, the baseboard management controller is used to receive the configuration instructions and determine the target rated information corresponding to the current configuration type among at least one preset configuration information corresponding to at least one preset configuration type pre-stored in the non-volatile memory, and read the target rated information via the first bus.
[0034] It can be understood that the non-volatile memory is the non-volatile storage chip on the motherboard, which is interconnected with the baseboard management controller via the first bus. Among them, the first bus is Figure 1S1 and S2 therein can specifically be in the form of an I2C bus. In the design of related server systems, the non-volatile memory on the motherboard is mainly used to store the basic identity information of the board, such as the board part number, manufacturer, and date, etc. On this basis, corresponding storage areas are divided in the non-volatile memory for the rated asset information of different configuration types, that is, the non-volatile memory stores the possible rated asset information of all PCIe devices of the server. For example, the first type of configuration (Configuration 1) stores the asset information related to CPU0 and CPU1, and the second type of configuration (Configuration 2) only stores the asset information related to CPU0. Among them, the asset information is used to record all relevant information of the server, including but not limited to model, configuration, purchase date, supplier, warranty period, etc. The baseboard management controller, in response to the configuration instruction, reads the target rated information from the storage area divided for the current configuration type in the non-volatile memory. The target rated information is the rated asset information of the current configuration type. The information transmission process between the non-volatile memory and the baseboard management controller is as follows: The baseboard management controller transmits the configuration instruction or the read instruction generated based on the configuration instruction to the non-volatile memory through S1, and the non-volatile memory transmits the target rated information to the baseboard management controller through S2.
[0035] Among them, the input / output system is used to receive the target rated information transmitted by the baseboard management controller via the third bus. After the server is powered on, it obtains the actual configuration information of at least one device, and matches the target rated information with the actual configuration information to generate the configuration result of at least one device.
[0036] Understandably, Figure 1 S4 and S5 therein can be understood as the third bus. Specifically, the input / output system receives the target rated information transmitted by the baseboard management controller through S4. After the input / output system completes the matching of the rated information and the real-time information, when the rated information and the real-time information are consistent, it transmits the complete information to the baseboard management controller through S5. Among them, the complete information is obtained by integrating the rated information and the real-time information, and can also reflect the serial number information of multiple PCIe devices led out from the same CPU PCIe Port. The complete information is also the complete identity information or complete asset information with accuracy and reliability, which is convenient for subsequent accurate asset management.
[0037] Among them, the baseboard management controller is further used for: According to the device requirements of the server, determine at least one candidate configuration type composed of at least one device. The rated asset information of the candidate configuration type includes the asset information and silk screen information of at least one device; obtain the production requirements of the target user for the server, and determine at least one preset configuration type that meets the production requirements from at least one candidate configuration type; burn the rated asset information of at least one preset configuration type into the storage area pre-divided in the non-volatile memory in the form of a preset code.
[0038] It can be understood that according to the possible uses of the server (such as high-performance computing, storage, network services, etc.) and hardware limitations, set at least one configuration plan. Each plan includes the devices used (such as network cards, hard disks, GPUs, etc.) and the asset information of the devices (such as model numbers, serial numbers, etc.). A configuration plan is regarded as a candidate configuration type, that is, the configuration options provided by the service provider for users to choose from. Subsequently, obtain the specific usage requirements of the user for the server (such as performance requirements, functional modules, network configuration, etc.), and select one or more most suitable preset configuration types from the prepared candidate configuration types, that is, flexibly select the configuration plan according to the user's needs, which means that customized services can be provided for users. Subsequently, write the rated asset information (including asset information and silk screen information) of the selected preset configuration type into a specific area of the non-volatile memory (such as EEPROM) on the server motherboard in a certain coding format (such as binary shelving). In this way, even if the power is cut off, these rated configuration information will not be lost, and at the same time, the accurate rated configuration information is retained, that is, the configuration information is solidified and saved for later asset management, maintenance and fault troubleshooting.
[0039] Among them, the baseboard management controller is also used for: Obtain the adjustment requirements of the target user for the server configuration, and re-determine the preset configuration type according to the adjustment requirements; write the rated asset information of the re-determined preset configuration type into the non-volatile memory via the bus through the baseboard management controller.
[0040] It can be understood that in addition to directly burning the rated asset information into the non-volatile memory when the server leaves the factory, during the deployment or use of the server, if the user puts forward new adjustment requirements for the hardware configuration (such as adding a network card, replacing the hard disk model, etc.), a suitable configuration type can be re-selected according to the user's needs, that is, re-select a new configuration plan that best matches from the existing candidate configuration types. Subsequently, write the updated rated asset information into the non-volatile memory through the baseboard management controller, so that when the server is powered on next time, the baseboard management controller can automatically identify and load the latest configuration information stored in the non-volatile memory, ensure that the hardware state of the system is consistent with the user's needs, and at the same time facilitate subsequent asset management, remote monitoring and fault diagnosis.
[0041] Among them, the baseboard management controller is further configured to: Latch the configuration instruction, so that the baseboard management controller directly responds to the configuration instruction during the next power-on process, reads the target rated information, and transfers the target rated information to the input / output system.
[0042] It can be understood that a mechanism for locking and automatically loading the server configuration information is provided, so that the server can automatically identify and load the previous configuration information when powered on next time. Latching can be understood as confirming the configuration command. When this command is executed, the system will "lock" or "save" the currently specified target rated information or save the configuration instruction, and directly use the target rated information or directly execute the configuration instruction to obtain the target rated information when powered on next time. Specifically, when the server starts up next time, the BMC will actively read the previously "latched" configuration instruction and the corresponding target rated information, that is, the user can use the fixed configuration information.
[0043] Among them, the input / output system is further configured to: Match other configuration information in the target rated information except the preset sequence information with the actual configuration information; when the other configuration information is consistent with the actual configuration information, generate actual sequence information of the target device under the actual configuration information according to the preset sequence information and the port number corresponding to the target device connected by the preset sequence information; transfer the sequence information and the actual configuration information to the baseboard management controller.
[0044] It can be understood that the system compares other configuration information (such as device model, function, bandwidth, slot position, etc.) in the target rated information except the preset sequence information (such as device serial number) with the detected actual configuration information. If the information matches, it means that the device installed on the server is the expected configuration type. Subsequently, the system generates the actual sequence information of the device under the current configuration according to the preset sequence information (i.e., the slot where the device should be inserted) and the port number actually connected by the device. Finally, the system transfers the generated complete configuration information including the actual sequence information to the baseboard management controller for subsequent asset management, remote monitoring, and logging.
[0045] Among them, the input / output system is further configured to: When any one of the other configuration information and the actual configuration information is different, determine the alarm device corresponding to any one of the configuration information; generate a configuration result indicating that the configuration information of the alarm device does not match during the power-on process.
[0046] It is understandable that there is other configuration information and actual configuration information. Here, other configuration information refers to pre-set target rated information (such as the hard disk model installed in the server, bandwidth allocation, etc.), and actual configuration information refers to the real hardware information detected through BIOS or firmware after the server is powered on. If any one of the configurations is inconsistent, such as different device models, incorrect slot positions, mismatched bandwidth configurations, or mismatched device quantities, it indicates that the configuration of a certain current device does not meet the expected requirements. In this case, based on the inconsistent configuration item, the specific hardware device is located, and an alarm prompt / report / information (such as model, slot number, bandwidth mismatch) is generated. Subsequently, the baseboard management controller receives the alarm information and can further report it to the remote management system for operation and maintenance personnel to view and process.
[0047] The system provided by this application can be applied to server asset information and silk screen transfer. It not only realizes flexible switching of configurations, but also saves software and hardware resources, further completes the verification of configuration information, and ensures the accuracy of the transmitted configuration information.
[0048] Based on the above embodiments, Figure 2 The following is a schematic flowchart of an information processing method provided by an embodiment of the present disclosure, which is applied to the above system and specifically includes the following steps as Figure 2 shown: S201. Before the server is powered on, receive a configuration instruction.
[0049] Among them, the configuration instruction includes the current configuration type of at least one device configured in the server.
[0050] It is understandable that before the server is powered on but not yet started, the baseboard management controller receives the configuration instruction transmitted by the display. Among them, the baseboard management controller and the display are directly connected through a bus. The configuration instruction is a command used to manage and set the server, and the configuration type refers to the configuration information of at least one device (such as network interface card, storage device, etc.) connected to the server, including its model, function, and connection method, etc. Subsequently, the user can also set different configuration information for the server through the display, that is, the user can flexibly switch within the configuration types supported by the server according to application requirements.
[0051] Optionally, before receiving the configuration instruction, the method further includes: According to the device requirements of the server, determine at least one candidate configuration type composed of at least one device. The rated asset information of the candidate configuration type includes the asset information and silk screen information of at least one device; obtain the production requirements of the target user for the server, and determine at least one preset configuration type that meets the production requirements from at least one candidate configuration type; burn the rated asset information of at least one preset configuration type into the storage area pre-divided in the non-volatile memory in a preset coding form.
[0052] Understandably, the process of storing the rated asset information of all PCIe configurations of the server in the non-volatile memory is as follows: According to the hardware architecture and functional requirements of the server, enumerate all possible device combinations, and each device combination is determined as a candidate configuration type. Among them, the hardware architecture includes the number of CPU Root Ports, PCIe bandwidth allocation, chassis physical slot layout, etc., and the functional requirements include GPU acceleration, storage redundancy RAID, network throughput, etc. The candidate configuration information of the candidate configuration type includes asset information and silk screen information, and the candidate configuration information is the rated asset information of the candidate configuration type. Obtain the production requirements of the user for the server and screen out at least one preset configuration type from multiple candidate configuration types. Among them, the production requirements include performance requirements, reliability requirements, and / or hardware deployment requirements. For example, the performance requirement of supporting PCIe 4.0 x4 bandwidth, the deployment requirement of installing the GPU in the rear slot of the chassis. Specifically, it can be screened according to the production requirements in the asset information of the candidate configuration information, and then the physical layout can be checked through the silk screen information in the candidate configuration information. Traverse different configuration types, encode the rated asset information of each configuration type, and store different configuration information in different address areas of the non-volatile memory in a preset coding form, that is, each configuration type corresponds to a storage area for storing rated asset information. Among them, the preset coding form can be in binary form. Subsequently, before the server leaves the factory, burn the rated asset information of at least one preset configuration type into the dedicated storage area divided in the non-volatile memory, that is, the rated asset information stored in each address area of the E2PROM can be burned according to the user configuration requirements before the server leaves the factory, effectively improving the flexibility and reliability of the configuration.
[0053] In one embodiment, the rated asset information stored in the E2PROM mainly includes: the source of the PCIe device CPU Root Port, the rated allocated bandwidth information, the PCIe device type (such as hard disk, network card, RAID card, etc.), the preset serial number information of the PCIe device, etc., as shown in Table 1 specifically.
[0054] Table 1:
[0055] Optionally, after receiving the configuration instruction, the method further includes: Latching the configuration instruction so that the baseboard management controller directly responds to the configuration instruction during the next power-on process, reads the target rated information, and transfers the target rated information to the input / output system.
[0056] Understandably, after receiving the configuration instruction sent by the display, latching the configuration instruction, that is, saving the configuration instruction. Subsequently, without modifying the configuration type, during the next power-on process, the baseboard management controller directly responds to the latched configuration instruction, reads the target rated information of the configuration type in the configuration instruction, and transfers the target rated information to the input / output system for power-on verification. That is, by latching the configuration instruction, the user can fixedly use a certain configuration type without having to select the configuration type each time without changing the configuration type. Subsequently, if the configuration needs to be changed, the user can re-select the configuration type in the configuration list displayed on the display to generate a new configuration instruction.
[0057] S202. Reading the target rated information from the target area through the baseboard management controller.
[0058] Among them, the target area is a storage area in the non-volatile memory for storing the rated asset information of the current configuration type.
[0059] Understandably, on the basis of S201 above, in response to the configuration instruction, the baseboard management controller reads the target rated information from the target area specifically storing the current configuration type in the non-volatile memory.
[0060] In an embodiment, after the server is powered on, according to the actual application situation, after the user selects Configuration 1 on the display, the display writes the configuration instruction to the non-volatile memory on the BMC body and latches it, specifying that the BMC accesses a specific area of the non-volatile memory, which is the storage area of the rated asset information of Configuration 1, and loads the asset information and silk screen information of Configuration 1. Among them, the rated asset information includes the asset information and the silk screen information. At the same time, it is specified that the BMC loads the rated asset information for Configuration 1 during the subsequent power-on process and transfers the rated asset information of Configuration 1 to the BIOS.
[0061] Optionally, the baseboard management controller and the non-volatile memory are connected through a bus. The baseboard management controller and the non-volatile memory are deployed on the main board of the server, and the non-volatile memory is also used to store the basic information of the baseboard management controller.
[0062] Understandably, the basic information of the baseboard management controller can be understood as basic identity information, such as the board part number, manufacturer, and date, etc. That is, a dedicated storage area for storing the rated asset information of different configuration types is divided from the original non-volatile memory of the baseboard management controller. Without adding additional devices, flexible storage of the rated asset information is achieved.
[0063] Optionally, before the baseboard management controller reads the target rated information from the target area, the method further includes: Obtain the adjustment requirements of the target user for the server configuration, and re-determine the preset configuration type according to the adjustment requirements; write the rated asset information of the re-determined preset configuration type into the non-volatile memory via the bus by the baseboard management controller.
[0064] Among them, the target rated information includes at least one configuration information of a central processing unit, port information, allocated bandwidth information, device type, and preset sequence information.
[0065] Understandably, in the case where at least one preset configuration type of rated asset information has been burned into the non-volatile memory, the user can also adjust or update the stored content in the non-volatile memory in real time through the baseboard management controller. Specifically, during the server configuration adjustment process, obtain the specific adjustment requirements of the user for the server configuration. For example, changes in the layout of PCIe devices, bandwidth allocation, or addition or deletion of functional modules. Subsequently, according to the adjustment requirements provided by the user, re-screen and determine the preset configuration type that meets the adjustment requirements. The re-determined preset configuration type includes the updated device asset information and silk screen information. Subsequently, write the rated asset information of the re-determined preset configuration type into the non-volatile memory again in a preset encoding form via the bus (such as I2C, SMBus, or PCIe) by the baseboard management controller. This process ensures the dynamic update and persistent storage of the server configuration information, improving the flexibility and traceability of the configuration.
[0066] S203. After the server is powered on, detect the actual configuration information of at least one device through the input / output system.
[0067] Understandably, based on the above S202, after the server is powered on, the baseboard management controller will transfer the target rated information to the input / output system through the IPMITool tool bus. The input / output system will also detect at least one connected device through the power-on self-test (POST) process to identify and record the actual configuration information of at least one device. Specifically, the input / output system performs steps such as device initialization and configuration information collection after the server is powered on. The input / output system initializes all the connected hardware devices when the server is powered on, including memory, processor, storage devices, network interface cards (NICs), PCIe devices, etc. Subsequently, the input / output system collects the real-time configuration information of the devices according to the physical connection conditions and hardware characteristics of the devices, including information such as the CPU Root Port to which it belongs, bandwidth mode, and function type.
[0068] S204. Match the target rated information and the actual configuration information through the input / output system, and when the target rated information and the actual configuration information are consistent, transmit the complete configuration information to the baseboard management controller.
[0069] Understandably, based on the above S203, the input / output system matches the collected actual configuration information with the target rated information read from the non-volatile memory sent by the baseboard management controller, that is, compares whether the specific information included in the actual configuration information and the target rated information is consistent. If the actual configuration information is consistent with the target rated information, it is confirmed that the configuration is correct. The information matching step can ensure that the hardware configuration of the server meets the expected design and requirements, and transmit the complete configuration information to the baseboard management controller. The complete configuration information is obtained by integrating the target rated information and the actual configuration information. Subsequently, the baseboard management controller stores the complete configuration information in the firmware for subsequent monitoring, management, and fault diagnosis, facilitating the maintenance of the server configuration status, and also enabling users to directly view the current configuration through the asset information log.
[0070] Optionally, matching the target rated information and the actual configuration information to generate the configuration result of at least one device can be specifically implemented through the following steps: Match other configuration information in the target rated information except the preset sequence information with the actual configuration information; when the other configuration information is consistent with the actual configuration information, generate the actual sequence information of the target device under the actual configuration information according to the preset sequence information and the port number corresponding to the preset sequence information of the target device; transmit the actual sequence information and the actual configuration information to the baseboard management controller.
[0071] It is understandable that other configuration information includes bandwidth information, PCIe device type, etc. Generally, the actual configuration information does not include the serial number information of the device. That is, in the case where the input / output system cannot collect the accurate serial number information of at least one device when multiple PCIe devices are led out from one CPU PCIe Port, while the target rated information includes the accurate serial number information. In this case, the other configuration information is matched with the actual configuration information to determine whether the number of devices, device type, bandwidth information, etc. are consistent. And when they are consistent, according to the preset sequence information or preset information and the serial numbers of the connection ports of each device, the actual serial number information of the target device under the actual configuration information is generated. The target device can be understood as the device that matches the other configuration information. Among them, the actual serial number information includes the serial number of the device.
[0072] Optionally, when the other configuration information is consistent with the actual configuration information, the method further includes: Writing the preset sequence information into the corresponding field of the target device.
[0073] It is understandable that when the other configuration information is consistent with the actual configuration information, the preset sequence information in the target rated information is assigned to the target device, so as to clarify the serial number of the device in the subsequent management process.
[0074] Optionally, after matching the other configuration information in the target rated information except the preset sequence information with the actual configuration information, the method further includes: When any one of the configuration information included in the other configuration information and the actual configuration information is different, determining the warning device corresponding to any one of the configuration information; generating a configuration result of the configuration information mismatch of the warning device during the startup process.
[0075] It is understandable that according to the inconsistency of the configuration information, the specific warning device is located. In Configuration 1 shown in Table 1, the bandwidth allocated to PE0 in CPU0 does not match, and only one bandwidth is allocated to PE0. At this time, the warning device can be located as PE0. Subsequently, a configuration result of the mismatch of the warning device information is generated, that is, a configuration result of the mismatch of the bandwidth of PE0 is generated, and the configuration result can also be sent to the baseboard management controller to record an alarm log in the baseboard management controller.
[0076] Among them, the configuration result of the failure of the alarm information processing includes device loss, device quantity, device type, and / or bandwidth information configuration information mismatch.
[0077] It is understandable that after the power-on self-test of the input / output system is completed, the current complete configuration information is transmitted to the baseboard management controller, facilitating the user to directly view the current configuration data through the baseboard management controller log. Through the above method, the configuration type can be flexibly selected according to different configuration requirements, and the mismatches such as device loss and bandwidth speed information during the power-on process can also be verified and an alarm prompt can be issued.
[0078] For the problem that the serial number information of each PCIe device cannot be effectively obtained when the BIOS transmits asset information to the BMC in the information processing method provided by the embodiments of the present disclosure, the rated asset information of each configuration type is pre-stored in the E2PROM, and the flexible switching of the configuration type can be realized according to the user's needs. By matching the rated asset information and the actual asset information, the serial number information of each PCIe device is determined, so that the BIOS can accurately obtain the complete configuration information under the current configuration, saving software and hardware resources compared with the related information transmission methods. And an alarm prompt is issued for the mismatches such as device loss and bandwidth speed information during the power-on process to help the user identify the device failures during the power-on process.
[0079] Based on the above embodiments, Figure 3 is a schematic flowchart of an information processing method provided by an embodiment of the present disclosure, specifically including the following steps as Figure 3 shown: 1) Traverse all possible configuration types of PCIe devices and burn the rated asset information of different configuration types into the E2PROM; 2) The user specifies the current configuration type for the BMC through the display; 3) After the server is powered on, the BMC loads the rated configuration information of the current configuration type from the specified area of the E2PROM and transmits it to the BIOS; 4) The BIOS initializes the PCIe device; 5) The PCIe device compares whether the collected actual configuration information is consistent with the rated configuration information; 6) When the actual configuration information is consistent with the rated configuration information, the BIOS transmits the complete asset information and silk screen information to the BMC; 7) When the actual configuration information is inconsistent with the rated configuration information, the BIOS transmits the consistent asset information and silk screen information to the BMC and transmits a PCIe device alarm prompt; 8) The system is powered on.
[0080] Understandably, the E2PROM non-volatile memory on the motherboard is interconnected with the BMC. Rated asset information for all PCIe configurations of the server is pre-stored in the E2PROM, and the rated asset information for all PCIe configurations is combined to determine different PCIe configuration types. Users or developers can traverse different PCIe configuration types, encode the asset information and silkscreen information under each PCIe configuration type, and the configuration information under different PCIe configuration types is stored in different address areas of the E2PROM on the motherboard in binary form, that is, the rated configuration information under different PCIe configuration types is stored in different address areas, that is, the rated configuration information under each PCIe configuration type is stored in one address area. The data in the E2PROM can be pre-burned according to the configuration requirements of the customer before the server leaves the factory, that is, personalized factory customization. It can also be updated in real time via the S1 bus in Figure 1 by the BMC, that is, after the server leaves the factory, rated configuration information of other types can be stored in the E2PROM. The main data information stored in the E2PROM includes: the source of the PCIe device CPU Root Port, the rated allocated bandwidth information, the PCIe device type (such as hard disk, network card, RAID card, etc.), the preset serial number information of the PCIe device, etc.
[0081] Understandably, before the server is powered on and starts up, the user can write an instruction to the E2PROM of the BMC according to the current actual configuration (i.e., the actual configuration type). This instruction is used to specify a specific area of the E2PROM for the BMC to access, and the rated configuration information of the actual configuration type is stored in this specific area, and the rated configuration information of the current configuration is loaded, where the rated configuration information includes asset information and silkscreen information. As the running entity of the BIOS program, after the server is powered on, the BMC will transfer the asset information and silkscreen information of the specified configuration to the BIOS through the IPMITool tool. During the server startup process, the BIOS will initialize all PCIe devices and set the configuration space. After the BIOS obtains the asset information transferred by the BMC, it will match it with the current actually initialized PCIe device data (i.e., the actual configuration information), and assign the PCIe serial number information read from the rated configuration information to the corresponding device. The BIOS will also compare the actually identified devices with the data information pre-transferred by the BMC, that is, compare the actual configuration information and the rated configuration information. When the information such as the number, type, and bandwidth of the devices does not match, it will also be via Figure 1The S5 bus in it records an alarm log to the BMC, that is, generates an alarm prompt. After the BIOS finishes POST, it transmits the current complete configuration information to the BMC, facilitating the customer to directly view the current configuration information through the BMC log. Through the above system design and method, the format of the BIOS silk-screen information can be flexibly selected according to different configuration requirements, and the problems of device loss and bandwidth speed information mismatch during startup can also be verified, with relatively strong practicability.
[0082] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by means of software plus a necessary general hardware platform. Of course, it can also be implemented by hardware, but in many cases, the former is a better implementation method.
[0083] Figure 4 It is a schematic structural diagram of an information processing device provided by an embodiment of the present disclosure. The information processing device 400 includes a receiving module 401, a determining module 402, an obtaining module 403, and a matching module 404, wherein: The receiving module 401 is configured to receive a configuration instruction before the server boots up, where the configuration instruction includes the current configuration type of at least one device configured by the server; The determining module 402 is configured to read target rated information from a target area through a baseboard management controller, where the target area is a storage area in a non-volatile memory for storing the rated asset information of the current configuration type; The obtaining module 403 is configured to detect the actual configuration information of at least one device through an input / output system after the server boots up; The matching module 404 is configured to match the target rated information and the actual configuration information through the input / output system, and transmit the complete configuration information to the baseboard management controller when the target rated information and the actual configuration information are consistent.
[0084] Optionally, the information processing device 400 is further configured to: Determine at least one candidate configuration type composed of at least one device according to the device requirements of the server, where the rated asset information of the candidate configuration type includes the asset information and silk-screen information of at least one device; Obtain the production requirements of the target user for the server, and determine at least one preset configuration type that meets the production requirements from at least one candidate configuration type; Burn the rated asset information of at least one preset configuration type into the storage area pre-divided in the non-volatile memory in the form of a preset code.
[0085] Wherein, the baseboard management controller and the non-volatile memory are connected through a bus.
[0086] Optionally, the information processing device 400 is further configured to: Obtain the adjustment requirements of the target user for the server configuration, and re-determine the preset configuration type according to the adjustment requirements; Write the rated asset information of the re-determined preset configuration type into the non-volatile memory via the baseboard management controller through the bus.
[0087] Optionally, the information processing device 400 is further configured to: Latch the configuration instruction, so that the baseboard management controller directly responds to the configuration instruction during the next boot process, reads the target rated information, and transmits the target rated information to the input / output system.
[0088] Wherein, the target rated information includes at least one configuration information of the central processing unit, port information, allocated bandwidth information, device type, and preset sequence information.
[0089] Optionally, the matching module 404 is configured to: Match other configuration information in the target rated information except the preset sequence information with the actual configuration information; When the other configuration information is consistent with the actual configuration information, generate the actual serial number information of the target device under the actual configuration information according to the preset sequence information and the port serial number corresponding to the target device connected by the preset sequence information; Transmit the actual serial number information and the actual configuration information to the baseboard management controller.
[0090] Optionally, the matching module 404 is further configured to: Write the preset sequence information into the corresponding field of the target device.
[0091] Optionally, the information processing device 400 is further configured to: When any one of the configuration information included in the other configuration information and the actual configuration information is different, determine the alarm device corresponding to any one of the configuration information; Generate a configuration result indicating that the configuration information does not match during the boot process of the alarm device.
[0092] Wherein, the configuration result includes device loss, device quantity, device type, and / or bandwidth information configuration information mismatch.
[0093] Wherein, the baseboard management controller and the non-volatile memory are deployed on the motherboard of the server, and the non-volatile memory is further used to store the basic information of the baseboard management controller.
[0094] For the description of the features in the embodiments corresponding to the information processing device, reference can be made to the relevant description of the embodiments corresponding to the information processing method, which will not be elaborated here one by one.
[0095] An embodiment of the present application further provides an electronic device, including a memory and a processor. A computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any one of the above-described information processing method embodiments.
[0096] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored. The computer program is configured to execute the steps in any one of the above-described information processing method embodiments when running.
[0097] In an exemplary embodiment, the above computer-readable storage medium may include, but is not limited to: various media such as USB flash drives, read-only memories (ROMs), random access memories (RAMs), mobile hard disks, magnetic disks, or optical discs that can store computer programs.
[0098] An embodiment of the present application further provides a computer program product. The computer program product includes a computer program, and when the computer program is executed by a processor, the steps in any one of the above-described information processing method embodiments are implemented.
[0099] An embodiment of the present application further provides another computer program product, including a non-volatile computer-readable storage medium. The non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in any one of the above-described information processing method embodiments are implemented.
[0100] Those skilled in the art can further realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. To clearly illustrate the interchangeability of hardware and software, the components and steps of each example have been generally described according to their functions in the above description. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.
[0101] The above has introduced in detail an information processing method provided by the present application. Specific examples are used herein to elaborate on the principle and implementation manner of the present application. The description of the above embodiments is only used to help understand the method and its core idea of the present application. It should be noted that for those of ordinary skill in the art in the technical field, without departing from the principle of the present application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the protection scope of the claims of the present application.
Claims
1. An information processing method, characterized in that, Including: Before the server is powered on, receiving a configuration instruction, where the configuration instruction includes the current configuration type of at least one device configured by the server; Reading target rated information from a target area through a baseboard management controller, where the target area is a storage area in a non-volatile memory for storing rated asset information of the current configuration type; After the server is powered on, detecting the actual configuration information of the at least one device through an input / output system; Matching the target rated information and the actual configuration information through the input / output system, and when the target rated information and the actual configuration information are consistent, transmitting complete configuration information to the baseboard management controller.
2. The method according to claim 1, characterized in that Before receiving the configuration instruction, the method further includes: Determining at least one candidate configuration type composed of the at least one device according to the device requirements of the server, where the rated asset information of the candidate configuration type includes the asset information and silk screen information of the at least one device; Obtaining the production requirements of a target user for the server, and determining at least one preset configuration type that meets the production requirements from the at least one candidate configuration type; Burning the rated asset information of the at least one preset configuration type into a storage area pre-divided in the non-volatile memory in a preset coding form.
3. The method according to claim 2, characterized in that The baseboard management controller and the non-volatile memory are connected through a bus. Before reading the target rated information from the target area through the baseboard management controller, the method further includes: Obtaining the adjustment requirements of the target user for the server configuration, and re-determining the preset configuration type according to the adjustment requirements; Writing the rated asset information of the re-determined preset configuration type into the non-volatile memory through the baseboard management controller via the bus.
4. The method according to claim 1, characterized in that, After receiving the configuration instruction, the method further includes: Latching the configuration instruction so that the baseboard management controller directly responds to the configuration instruction in the next power-on process, reads the target rated information, and transmits the target rated information to the input / output system.
5. The method according to claim 1, characterized in that, The target rated information includes at least one configuration information of a central processing unit, port information, allocated bandwidth information, device type, and preset sequence information.
6. The method according to claim 5, wherein The matching the target rated information and the actual configuration information includes: Matching other configuration information in the target rated information except the preset sequence information with the actual configuration information; When the other configuration information and the actual configuration information are consistent, generating actual sequence information of the target device under the actual configuration information according to the preset sequence information and the port number corresponding to the target device connected by the preset sequence information; Transmitting the actual sequence information and the actual configuration information to the baseboard management controller.
7. The method according to claim 6, characterized in that, When the other configuration information and the actual configuration information are consistent, the method further includes: Writing the preset sequence information into the corresponding field of the target device.
8. The method according to claim 6, characterized in that, After matching other configuration information in the target rated information except the preset sequence information with the actual configuration information, the method further includes: When any of the configuration information included in the other configuration information and the actual configuration information is different, determining an alarm device corresponding to the any configuration information; Generating a configuration result that the configuration information does not match during the startup process of the alarm device.
9. The method according to claim 8, wherein The configuration result includes that the device is lost, the number of devices, the device type, and / or the bandwidth information configuration information does not match.
10. The method according to claim 1, characterized in that, The baseboard management controller and the non-volatile memory are deployed on the main board of the server, and the non-volatile memory is further used to store the basic information of the baseboard management controller.
11. An information processing apparatus, characterized in that, Including: A receiving module, configured to receive a configuration instruction before the server is powered on, where the configuration instruction includes the current configuration type of at least one device configured by the server; A determining module, configured to read target rated information from a target area through a baseboard management controller, where the target area is a storage area in the non-volatile memory for storing the rated asset information of the current configuration type; An obtaining module, configured to detect the actual configuration information of the at least one device through an input / output system after the server is powered on; A matching module, configured to match the target rated information and the actual configuration information through the input / output system, and when the target rated information and the actual configuration information are consistent, transmit complete configuration information to the baseboard management controller.
12. An information processing system, characterized in that, The information processing system includes a display, a baseboard management controller, an input / output system, and a non-volatile memory. The baseboard management controller and the non-volatile memory perform information transmission through a first bus, the baseboard management controller and the display perform information transmission through a second bus, and the baseboard management controller and the input / output system perform information transmission through a third bus, where: The display is configured to generate a configuration instruction before the server is powered on, and transmit the configuration instruction to the baseboard management controller via the second bus, where the configuration instruction includes the current configuration type of at least one device configured by the server; The baseboard management controller is configured to receive the configuration instruction, and read target rated information from a target area via the first bus, where the target area is a storage area in the non-volatile memory for storing the rated asset information of the current configuration type; The input / output system is configured to receive the target rated information transmitted by the baseboard management controller via the third bus; detect the actual configuration information of the at least one device after the server is powered on; match the target rated information and the actual configuration information, and when the target rated information and the actual configuration information are consistent, transmit complete configuration information to the baseboard management controller.
13. The system according to claim 12, wherein, The baseboard management controller is further configured to: Determine at least one candidate configuration type composed of the at least one device according to the device requirements of the server, wherein the rated asset information of the candidate configuration type includes the asset information and silk screen information of the at least one device; Obtain the production requirements of the target user for the server, and determine at least one preset configuration type that meets the production requirements from the at least one candidate configuration type; Burn the rated asset information of the at least one preset configuration type into a pre-divided storage area of the non-volatile memory in a preset coding form.
14. The system according to claim 13, characterized in that, The baseboard management controller is further configured to: Obtain the adjustment requirements of the target user for the server configuration, and re-determine the preset configuration type according to the adjustment requirements; Write the rated asset information of the re-determined preset configuration type into the non-volatile memory via the bus by the baseboard management controller.
15. The system according to claim 13, wherein The baseboard management controller is further configured to: Latch the configuration instruction, so that the baseboard management controller directly responds to the configuration instruction during the next power-on process, reads the target rated information, and transmits the target rated information to the input / output system.
16. The system according to claim 12, characterized in that, The input / output system is further configured to: Match other configuration information in the target rated information except the preset sequence information with the actual configuration information; When the other configuration information is consistent with the actual configuration information, generate actual sequence information of the target device under the actual configuration information according to the preset sequence information and the port number corresponding to the target device connected by the preset sequence information; Transmit the actual sequence information and the actual configuration information to the baseboard management controller.
17. The system according to claim 16, characterized in that, The input / output system is further configured to: When any one of the configuration information included in the other configuration information and the actual configuration information is different, determine the alarm device corresponding to the any one of the configuration information; Generate a configuration result that the configuration information of the alarm device does not match during the power-on process.
18. An electronic device, characterized in that, Comprising: A memory for storing a computer program; A processor for implementing the steps of the information processing method according to any one of claims 1 to 10 when executing the computer program.
19. A computer-readable storage medium, characterized in that A computer program is stored in the computer-readable storage medium, wherein the computer program implements the steps of the information processing method according to any one of claims 1 to 10 when executed by a processor.
20. A computer program product comprising a computer program, characterized in that, The computer program implements the steps of the information processing method according to any one of claims 1 to 10 when executed by a processor.
Citation Information
Patent Citations
PCIe port resource allocation method, system and device, and storage medium
CN108762939A
BIOS configuration information self-checking method and device and storage medium
CN111158968A
Peripheral configuration identification method and device of server, screen printing layout method and device of server and server
CN115904884A
Server control method and device, storage medium and electronic device
CN117131495A
Resource configuration method of intelligent network card, computer equipment and medium
CN118605964A
Cited By
Dynamic bandwidth allocation system, server and dynamic bandwidth allocation method
CN122316908A