Device information updating method and system for hot-swappable device, and device and medium
By monitoring the presence status of hot-swappable devices using programmable logic devices, adjusting voltage levels, sending interrupt signals, and executing interrupt service routines, the problem of the baseboard management controller being unable to update information after the hot-swappable devices are replaced or adjusted during the server OS control phase is solved. This enables device information updates under changes in presence status, thereby improving the high availability of the server.
Patent Information
- Application Number
- PCT/CN2025/084230
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-04-30
- Filing Date
- 2025-03-21
- Publication Date
- 2025-11-06
AI Technical Summary
When the server is under OS control, if hot-swappable devices are replaced or adjusted, the baseboard management controller cannot update the device information in a timely manner, resulting in reduced server high availability.
The system monitors the presence status of the hot-swap device using a programmable logic device, determines the target hot-swap slot and the corresponding target pin, adjusts the voltage level, sends an interrupt signal to the central processing unit, executes the interrupt service routine, rescans the device information, and updates the board management controller.
Updating device information in the baseboard management controller without restarting the server improves server availability.
Smart Images

Figure CN2025084230_06112025_PF_FP_ABST
Abstract
Description
Device information updating method, system, device and medium of hot plug device
[0001] Cross-reference to related applications
[0002] The present application claims priority from the Chinese patent application No. 202410534339.3 filed on April 30, 2024, and entitled "Device information updating method, system, device and medium of hot plug device", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD
[0003] The present application relates to the technical field of servers, and in particular to a device information updating method, system, device and medium of a hot plug device. BACKGROUND
[0004] In the technical field of servers, hot plug technology can allow users to remove and replace system hardware components without shutting down the system or cutting off the power supply, greatly improving the disaster recovery capability and functional expansion capability of the system, providing users with good maintenance and use experience. Common FRUs (Field Replaceable Unit, field replaceable unit) include external interface cards, hard drives, and other pluggable cards.
[0005] In actual technical applications, server component information is generally obtained during server hardware self-checking. Hardware self-checking relies on the cooperation of the BIOS firmware of the server and the peripheral circuit on the server motherboard to complete the acquisition of the server function state and the collection of FRU information. During the server startup process, the BIOS (Basic Input Output System) will generally complete data transmission through the IPMI interface (Intelligent Platform Management Interface) between the BIOS and the BMC (Baseboard Manager Controller) by transmitting the result information of the self-checking, such as the hardware information, manufacturer information, and link connection information of the network card. Once the BIOS startup is completed, the server enters the OS (Operating System) control phase, and the hot plug device on the server is replaced or adjusted. The BMC cannot obtain detailed information of the device for updating. SUMMARY
[0006] Therefore, the application provides a device information updating method, system, device and medium of hot plug equipment. In the case that the server is in the OS control stage and the hot plug equipment is replaced or adjusted, the device information in the baseboard management controller can be updated without restarting the server, thereby improving the high availability of the server.
[0007] In a first aspect of the embodiments of the application, a device information updating method of hot plug equipment is provided, applied to a server, the server comprising a programmable logic device, an expansion chip, a central processing unit and a baseboard management controller, and the method comprises:
[0008] According to the in-place state of the hot plug equipment, the programmable logic device determines a target hot plug slot and determines a target pin in the expansion chip corresponding to the target hot plug slot;
[0009] The programmable logic device adjusts the level of the target pin to a target level value through a link connected between the programmable logic device and the target pin, and sends an interrupt signal to the central processing unit through an interrupt link connected between the programmable logic device and the central processing unit;
[0010] According to the interrupt signal, the central processing unit controls the target interrupt service program of the basic input / output system to be executed;
[0011] The target interrupt service program reads the level values of all pins in the expansion chip through a first link connected between the expansion chip and the central processing unit, so as to determine the pins at the target level value;
[0012] The target interrupt service program re-scans the hot plug equipment in the target device link corresponding to the pins at the target level value, and obtains new device information in the target device link;
[0013] The target interrupt service program sends the new device information to the baseboard management controller, so as to update the device information in the baseboard management controller.
[0014] In some embodiments of the application, according to the in-place state of the hot plug equipment, the programmable logic device determines a target hot plug slot, comprising:
[0015] According to the in-place state of the hot plug equipment, the programmable logic device determines a hot plug slot whose in-place state changes;
[0016] The hot plug equipment whose in-place state changes is determined as the target hot plug slot.
[0017] In some embodiments of the application, according to the in-place state of the hot plug equipment, the programmable logic device determines a hot plug slot whose in-place state changes, comprising:
[0018] According to the hardware-in-signal detection, the programmable logic device receives the hardware-in-signal of the hot plug device;
[0019] According to the hardware-in-signal, the programmable logic device determines the hardware-in-state of the hot plug device;
[0020] According to the hardware-in-state of the hot plug device and the hardware-in-state at the previous time, the programmable logic device determines whether the hot plug slot where the hot plug device is located is a hot plug slot where the hardware-in-state changes.
[0021] In some embodiments of the present application, the target pin corresponding to the target hot plug device in the extension chip is determined, comprising:
[0022] According to the hardware-in-signal of the target hot plug device, the programmable logic device determines the target hot plug slot where the target hot plug device is located;
[0023] According to the target hot plug slot and the target mapping relationship, the programmable logic device determines the target pin corresponding to the target hot plug slot in the extension chip.
[0024] In some embodiments of the present application, according to the target hot plug slot and the target mapping relationship, the programmable logic device determines the target pin corresponding to the target hot plug slot in the extension chip, comprising:
[0025] According to the target hot plug slot and the first target mapping relationship, the programmable logic device determines the device link corresponding to the target hot plug slot, and the first target mapping relationship is the mapping relationship between the hot plug slot and the device link;
[0026] According to the determined device link corresponding to the target hot plug slot and the second target mapping relationship, the programmable logic device determines the target pin corresponding to the device link, and the second target mapping relationship is the mapping relationship between the device link and the pin in the extension chip.
[0027] In some embodiments of the present application, according to the interrupt signal, the central processing unit controls the target interrupt service program of the basic input and output system to be executed, comprising:
[0028] According to the interrupt signal, the central processing unit triggers the system management interrupt;
[0029] The basic input and output system in the sleep state is awakened through the system management interrupt, and the target interrupt service program of the basic input and output system is executed.
[0030] In some embodiments of the present application, the target hot plug device in the target device link corresponding to the pin at the target level value is re-scanned through the target interrupt service program, and new device information in the target device link is obtained, comprising:
[0031] According to the determined pin at the target level value and the second target mapping relationship, the target interrupt service program determines a target device link corresponding to the pin at the target level value, and the second target mapping relationship is a mapping relationship between the device link and the pin in the expansion chip;
[0032] The target interrupt service program re-performs access scanning on the hot plug device in the target device link to obtain new device information in the target device link.
[0033] In some embodiments of the present application, the target interrupt service program sends the new device information to the baseboard management controller to update the device information in the baseboard management controller, including:
[0034] The target interrupt service program stores the new device information in the target register and deletes the old device information in the target register through the second link connected between the programmable logic device and the central processing unit, and the target register is a register corresponding to the target device link in the memory of the programmable logic device;
[0035] In the case that the new device information is stored in the target register, the baseboard management controller reads the new device information in the target register to update the device information in the baseboard management controller.
[0036] In some embodiments of the present application, the target interrupt service program stores the new device information in the target register and deletes the old device information in the target register through the second link connected between the programmable logic device and the central processing unit, including:
[0037] The target interrupt service program obtains the old device information in the target register and compares the old device information with the new device information through the second link connected between the programmable logic device and the central processing unit to obtain a comparison result;
[0038] According to the comparison result, the old device information in the target register is differentially updated.
[0039] In some embodiments of the present application, in the case that the new device information is stored in the target register, the baseboard management controller reads the new device information in the target register to update the device information in the baseboard management controller, including:
[0040] In the case that the new device information is stored in the target register, the target interrupt service program sends an interrupt processing completion signal to the programmable logic device through the second link connected between the programmable logic device and the central processing unit;
[0041] According to the interrupt processing completion signal, the target variable of the target register is set by the programmable logic device;
[0042] According to the setting state of the target variable of the target register, the baseboard management controller reads new device information in the target register to update the device information in the baseboard management controller.
[0043] In some embodiments of the present application, according to the setting state of the target variable of the target register, the baseboard management controller reads new device information in the target register to update the device information in the baseboard management controller, comprising:
[0044] By polling the target variable of each register in the programmable logic device through the baseboard management controller, the register in which the target variable is in the setting state in the programmable logic device is determined;
[0045] According to the determined register in which the target variable is in the setting state, the baseboard management controller reads the device information in the register in which the target variable is in the setting state to update the device information in the baseboard management controller.
[0046] In some embodiments of the present application, the method further comprises:
[0047] According to the determined target pin, the corresponding verification level value is determined through the programmable logic device;
[0048] According to the verification level value, the programmable logic device adjusts the level of the verification pin to the verification level value through the link connecting the programmable logic device and the verification pin in the expansion chip;
[0049] Through the first link connecting the expansion chip and the central processing unit, the target interrupt service program reads the level value of all pins in the expansion chip to determine the pin in the target level value, comprising:
[0050] Through the first link connecting the expansion chip and the central processing unit, the target interrupt service program reads the level value and the verification level value of the pin corresponding to the device link in the expansion chip;
[0051] According to the level value of the pin corresponding to the device link in the expansion chip, the corresponding to-be-verified level value is determined through the target interrupt service program;
[0052] The to-be-verified level value is compared with the verification level value to obtain the corresponding comparison verification result;
[0053] According to the comparison verification result, the pin corresponding to the device link in the expansion chip in the target level value is determined through the target interrupt service program.
[0054] In some embodiments of the present application, according to the comparison verification result, the pin corresponding to the device link in the expansion chip in the target level value is determined through the target interrupt service program, comprising:
[0055] In the case that the comparison result is a pass, the target interrupt service program is used to determine the pin in the extension chip corresponding to the device link and having the target level value;
[0056] In the case that the comparison result is a fail, the determination of the pin in the extension chip corresponding to the device link and having the target level value is ended.
[0057] In some embodiments of the present application, according to the interrupt processing completion signal, the target variable of the target register is set by the programmable logic device, including:
[0058] In the case that the interrupt processing completion signal is received, according to the pin corresponding to the target device link, the new check level value is determined by the programmable logic device;
[0059] The programmable logic device updates the level value of the check pin to the new check level value through the link connecting itself and the check pin in the extension chip;
[0060] The target variable of the target register is set by the programmable logic device, and the level value of the pin corresponding to the target device link is restored.
[0061] In some embodiments of the present application, the method further includes:
[0062] In the case that the target interrupt service program sends the interrupt processing completion signal to the programmable logic device, the central processing unit controls the basic input / output system to sleep.
[0063] In some embodiments of the present application, the hot plug device includes a PCIe hot plug device connected to the server through the Riser expansion card.
[0064] In the second aspect of the embodiments of the present application, the present application provides a device information updating system of a hot plug device, the system including a server, the server including a programmable logic device, an extension chip, a central processing unit and a baseboard management controller, the central processing unit including a target terminal service program;
[0065] The programmable logic device is used to determine the target hot plug slot according to the in-place state of the hot plug device, to determine the target pin in the extension chip corresponding to the target hot plug slot, to adjust the level of the target pin to the target level value through the link connecting itself and the target pin, and to send an interrupt signal to the central processing unit through the interrupt link connecting itself and the central processing unit;
[0066] The central processing unit is configured to control a target interrupt service program of a basic input / output system according to the interrupt signal; the target interrupt service program reads the level values of all pins in the expansion chip through a first link connected between the target interrupt service program and the central processing unit, to determine the pins at the target level values; and the target interrupt service program re-performs access scanning on a hot plug device in a target device link corresponding to the pins at the target level values, to obtain new device information in the target device link.
[0067] The baseboard management controller is configured to receive the new device information sent by the target interrupt service program, to update the device information in the baseboard management controller.
[0068] In the third aspect of the embodiments of the present application, the present application provides an electronic device, comprising a processor, a memory, and a computer program stored in the memory and running on the processor, and the computer program is used to implement the steps in the device information updating method of the hot plug device according to the first aspect of the present application.
[0069] In the fourth aspect of the embodiments of the present application, the present application provides a non-volatile readable storage medium, and the non-volatile readable storage medium stores a computer program, and the computer program is used to implement the steps in the device information updating method of the hot plug device according to the first aspect of the present application.
[0070] In the fifth aspect of the embodiments of the present application, the present application provides a computer program product, comprising computer programs / instructions, and the computer programs / instructions are used to implement the steps in the device information updating method of the hot plug device according to the first aspect of the present application.
[0071] Compared with the prior art, the present application has the following advantages:
[0072] The device information updating method of the hot plug device provided in the embodiment of the application is applied to a server, and according to the in-place state of the hot plug device, a programmable logic device determines a target hot plug slot in which the in-place state changes occur, and determines a target pin in an extension chip corresponding to the target hot plug slot; the programmable logic device adjusts the level of the target pin to a target level value through a link connected between the programmable logic device and the target pin in the extension chip, and sends an interrupt signal to a central processing unit through an interrupt link connected between the programmable logic device and the central processing unit; according to the interrupt signal, the central processing unit controls a target interrupt service program of a basic input / output system to be executed; the execution process of the target interrupt service program is as follows: reading the level values of all pins in the extension chip through a first link connected between the extension chip and the central processing unit, so as to determine the pins at the target level value; re-scanning the hot plug device in the target device link corresponding to the pins at the target level value through the target interrupt service program, so as to obtain new device information in the target device link; and sending the new device information to a baseboard management controller through the target interrupt service program, so as to update the device information in the baseboard management controller. In this way, after the in-place state of the hot plug device changes, the programmable logic device determines which hot plug device or which hot plug devices change, at this time, all hot plug devices in the device link in which the changed hot plug device is located are re-scanned through the corresponding link and the corresponding program, new device information in the device link is obtained, and the baseboard management controller is updated with the corresponding device information. In this way, in the OS control stage of the server, if the hot plug device is replaced or adjusted, the device information in the baseboard management controller can be updated without restarting the server, so that the high availability of the server is improved.
[0073] The above description is only a summary of the technical solutions of the application, in order to more clearly understand the technical means of the application, the specific embodiments of the application can be implemented according to the content of the description, and in order to make the above and other purposes, characteristics and advantages of the application more obvious and easy to understand, the following will specifically describe the embodiments of the application. BRIEF DESCRIPTION OF DRAWINGS
[0074] In order to more clearly illustrate the technical solutions in the embodiments of the application or the prior art, the following will briefly introduce the drawings needed to be used in the embodiment or the prior art description.
[0075] Fig. 1 is a flowchart of a device information updating method of a hot plug device provided in the embodiment of the application;
[0076] Fig. 2 is a hardware architecture diagram of a server to which the device information updating method of the hot plug device provided in the embodiment of the application is applied;
[0077] FIG. 3 is a schematic diagram of a device information updating system of a hot plug device according to an embodiment of the present application;
[0078] FIG. 4 is a schematic diagram of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION
[0079] Embodiments of the present application will be described in detail below with reference to the accompanying drawings.
[0080] For the sake of understanding, the relevant professional terms mentioned later are explained:
[0081] BIOS (Basic Input Output System) is a set of programs fixed in the ROM (Read-Only Memory) chip, which provides the lowest and most direct hardware settings and controls for the server;
[0082] BMC (Baseboard Manager Controller) is the core component of the out-of-band management of the server, which uses the IPMI protocol to provide an access interface, and is the center of the server device information management. Users can access the BMC through web pages (web management interface), redfish (redfish interface), snmp (Simple Network Management Protocol), and other out-of-band management interfaces to obtain the current server hardware information.
[0083] PCH (Platform Controller Hub) is an integrated blue bridge in the central processing unit.
[0084] CPLD (Complex Programmable Logic Device) is a programmable logic device, which is a hardware signal management device on the motherboard, and can provide server power sequence management, hardware signal detection, and other functions.
[0085] CPU (Central Processing Unit) is a central processing unit.
[0086] Before the present application is described, the background of the present application is described.
[0087] In the field of server technology, hot plug technology is one of the key technologies for coping with server device expansion, replacement of faulty components, hardware debugging and other business scenarios. It can allow users to remove and replace system hardware components without shutting down the system and cutting off the power supply, greatly improving the system's disaster recovery capability and functional expansion capability, and providing users with a good maintenance and use experience. In the actual technical application process, due to the characteristics of the hot plug device that can be replaced at any time, it brings new challenges to the server on-board management, as follows: The device management mode in the server is mainly divided into out-of-band management and in-band management. The in-band management mainly relies on the business software installed on the server side of the system to achieve, and the out-of-band management is mainly managed through the baseboard management controller (BMC). Commonly seen hot plug FRUs include: external interface cards, hard drives, and other plug-in cards. Server component information is generally obtained during server hardware self-checking. Hardware self-checking relies on the cooperation of the server's BIOS firmware and the peripheral circuit on the server motherboard to complete the acquisition of server function status and the collection of FRU information. During the server startup process, the BIOS will usually complete data transmission through the IPMI interface between the BIOS and the BMC, such as network card hardware information, manufacturer information, link connection information, etc. Once the BIOS startup is completed, the server enters the OS control phase. After the server enters the OS control phase, the hot plug device on the server will be replaced or adjusted, and the BMC will no longer be able to obtain detailed information about the device to update the old device in itself. Typical server hot plug devices mainly include network cards, SAS cards (Serial Attached SCSI Card), HBA cards (Host Bus Adapter Card), etc., which are usually connected to the server motherboard using a PCIe interface.
[0088] Therefore, the present application provides a hot plug device information updating method. After the hot plug device changes its in-place state, the programmable logic device determines that the hot plug device has changed. At this time, all hot plug devices in the device link where the changed hot plug device is located are re-scanned through the corresponding link and program, and the new device information in the device link is obtained to update the corresponding device information in the baseboard management controller. In this way, if the hot plug device is replaced or adjusted when the server is in the OS control phase, the device information in the baseboard management controller can be updated without restarting the server, thereby achieving high availability function under the condition of uninterrupted power supply of the server.
[0089] Figure 1 is a flow chart of a device information updating method of a hot plug device according to an embodiment of the present application. As shown in Figure 1, the method is applied to a server, and the server comprises a programmable logic device, an expansion chip, a central processing unit and a baseboard management controller. The method comprises the following steps:
[0090] Step S1: determining a target hot plug slot and a target pin corresponding to the target hot plug slot in the expansion chip based on the in-place state of the hot plug device by the programmable logic device.
[0091] In this embodiment, as shown in Figure 2, Figure 2 is a hardware architecture diagram of a server to which the device information updating method of a hot plug device according to an embodiment of the present application is applied. The hardware architecture of the server comprises a link (such as L1, L2, Ln in Figure 2) connecting each hot plug slot of the server with a programmable logic device (CPLD, Complex Programmable Logic Device) in the server, which is used for the programmable logic device to monitor the in-place state of the hot plug device; an interrupt link connecting the programmable logic device with an integrated blue bridge (PCH) in the central processing unit (CPU), which is used for the programmable logic device to deliver an interrupt signal to the central processing unit; a plurality of links connecting the programmable logic device with a plurality of pins of the expansion chip, which are used for the programmable logic device to control the level of the corresponding pins in the expansion chip to a specified level value based on the in-place state of the hot plug device; and a first link connecting the expansion chip with the integrated blue bridge of the central processing unit, which is used for the central processing unit to acquire the level information of each pin in the expansion chip. The expansion chip comprises but is not limited to a PCA9555 chip (PCA9555 is the model information). The first link is preferably an i2c (Inter-Integrated Circuit, Inter-Integrated Circuit) connection link.
[0092] In the embodiment, the hot plug device is connected with the server through the hot plug slot. When the hot plug device inserted in the hot plug slot of the server changes (including the change of the hot plug device being replaced and the change of the hot plug device being unplugged), the in-place state of the hot plug device will inevitably change. Therefore, the programmable logic device monitors the in-place state of the hot plug device in each hot plug slot through the link connected with each hot plug slot, and determines the hot plug device whose in-place state changes, and determines the hot plug slot where the hot plug device whose in-place state changes as the target hot plug slot, and the target hot plug slot belongs to the hot plug slot where the hot plug device changes. The change includes that the hot plug device in the target hot plug slot is unplugged and no new hot plug device is inserted in the target hot plug slot, and includes that the hot plug device in the target hot plug slot is unplugged and a new hot plug device is inserted in the hot plug slot.
[0093] In the embodiment, a large number of pins are included in the expansion chip, and each hot plug slot has a corresponding pin in the expansion chip. When the programmable logic device determines the target hot plug slot where the in-place state of the hot plug device changes, the pin in the expansion chip corresponding to the target hot plug slot is determined as the target pin corresponding to the target hot plug slot.
[0094] Step S2: The programmable logic device adjusts the level of the target pin to the target level value through the link connected with the target pin, and sends an interrupt signal to the central processing unit through the interrupt link connected with the central processing unit.
[0095] In the embodiment, after the programmable logic device determines the target pin corresponding to the target hot plug slot, the programmable logic device adjusts the level of the target pin to a target level value through the link connected between the programmable logic device and the target pin in the expansion chip, so as to be used for subsequent re-access scanning of the device information of the hot plug device in the target hot plug slot corresponding to the target pin by the central processing unit. If a new hot plug device is inserted into the target hot plug slot after the old hot plug device is pulled out, the device information of the new hot plug device is scanned; if no new hot plug device is inserted into the target hot plug slot after the old hot plug device is pulled out, the scanned device information is empty, and at this time, the empty device information is also updated to the baseboard management controller, so as to inform the baseboard management controller that the target hot plug slot does not have a hot plug device at this time. It should be understood that the target level value is only one embodiment of the target level value, and the target level value can also be other level values, which are not limited here. At the same time when the programmable logic device adjusts the level of the target pin to the target level value, the programmable logic device sends an interrupt signal to the central processing unit through the interrupt link connected between the programmable logic device and the central processing unit, so as to inform the central processing unit that the target interrupt service program in the basic input and output system for access scanning of the hot plug device needs to be executed.
[0096] Step S3: According to the interrupt signal, the central processing unit controls the target interrupt service program of the basic input and output system to be executed.
[0097] In the embodiment, after the central processing unit receives the interrupt signal sent by the programmable logic device, the target interrupt service program of the basic input and output system is controlled to be executed, and the function of the interrupt service program is to determine the hot plug device at the hot plug slot which needs to be re-scanned and re-scan the hot plug device.
[0098] Step S4: The target interrupt service program reads the level values of all pins in the expansion chip through the first link connected between the expansion chip and the central processing unit, so as to determine the pin in the target level value.
[0099] In the embodiment, after the target interrupt service program starts to be executed, the level values of all pins in the expansion chip are read through the first link connected between the expansion chip and the central processing unit, and then the pin in the target level value is determined based on the read level values of all pins.
[0100] Step S5: The target interrupt service program re-scans the hot plug device in the target device link corresponding to the pin in the target level value, and obtains new device information in the target device link.
[0101] In the embodiment, the PCIe (Peripheral Component Interconnect Express) link in the server motherboard is led out from the central processor side, and the motherboard is connected with the gold finger of the external hot plug device through the connector, so that the device information of the hot plug device is collected by the central processor. Meanwhile, a plurality of device links are included between the central processor and the hot plug slots, and the device links for data transmission between the hot plug slots and the central processor are in a one-to-many relationship, that is, a plurality of hot plug slots share one device link to transmit the data of each hot plug device on the plurality of hot plug slots to the central processor. For example, the hot plug slots of the server include a1 to a6, and each hot plug device on the hot plug slots a1 to a3 transmits data to the central processor through the device link A1, and each hot plug device on the hot plug slots a4 to a6 transmits data to the central processor through the device link A2. In the application, the pins of the expansion chip and each device link are in a one-to-one correspondence, that is, one pin corresponds to only one device link. After the target interrupt service program determines the pin at the target level value through step S4, the corresponding device link corresponding to the pin at the target level value can also be determined based on the mapping relationship between the pin and the device link, and the device link is the target device link. Then, after determining the target device link corresponding to the pin at the target level value, the target interrupt service program re-scans each hot plug device in the target device link to obtain the new device information of each hot plug device in the current target device link. For example, the target interrupt service program determines that the target device link is the device link A1, and the hot plug slots corresponding to the device link A1 are a1 to a3. At this time, the target interrupt service program re-scans the hot plug devices on the hot plug slots a1 to a3 to collect the device information of the latest hot plug devices on the hot plug slots a1 to a3 in the device link A1. In the embodiment, the pins in the expansion chip and the device links are in a one-to-one correspondence, and the hot plug slots and the device links are in a one-to-many correspondence, so the hot plug slots and the pins in the expansion chip are in a one-to-many correspondence, that is, a plurality of hot plug slots correspond to the same pin in the expansion chip. In the embodiment, the device link is a link for data transmission between the hot plug device and the central processor, not a control link. For example, the dashed line in FIG. 2 is a device link for data transmission between the hot plug device and the central processor, and the solid line is a control link for interaction between each unit.
[0102] Step S6: Send the new device information to the baseboard management controller through the target interrupt service program to update the device information in the baseboard management controller.
[0103] In the embodiment, after the current new device information in the target device link is obtained by re-performing the access scan in step S5, that is, the device information of the current new hot plug device in the target device link, the new device information is sent to the baseboard management controller through the target interrupt service program to update the previous device information corresponding to the target device link recorded in the baseboard management controller. For example, when the server is started, the hot plug devices originally inserted in each hot plug slot in the target device link are b1 to b3, and the baseboard management controller will receive and record the device information of the hot plug devices b1 to b3 in the target device link. When the hot plug device b1 is pulled out and the hot plug device b7 is inserted in the hot plug slot where the hot plug device b1 is located, the device information updating method for hot plug devices provided in the application will collect the latest device information of the hot plug devices b2, b3 and b7 currently having in the target device link through the target interrupt service program without restarting the server, and give the baseboard management controller to update the device information of the old hot plug devices b1 to b3 corresponding to the target device link recorded in the baseboard management controller, that is, replace the device information of the old hot plug devices b1 to b3 corresponding to the target device link recorded in the baseboard management controller with the device information of the hot plug devices b2, b3 and b7.
[0104] The device information updating method of the hot plug device provided in the embodiments of the present application is applied to a server, and according to the in-place state of the hot plug device, a target hot plug slot in which the in-place state changes is determined through a programmable logic device, and a target pin corresponding to the target hot plug slot in an extension chip is determined; the programmable logic device adjusts the level of the target pin to a target level value through a link connected between the programmable logic device and the target pin in the extension chip, and sends an interrupt signal to a central processing unit through an interrupt link connected between the programmable logic device and the central processing unit; according to the interrupt signal, the central processing unit controls execution of a target interrupt service program of a basic input / output system; the execution process of the target interrupt service program is as follows: the level values of all pins in the extension chip are read through a first link connected between the extension chip and the central processing unit, so as to determine the pins at the target level value; the hot plug devices in a target device link corresponding to the pins at the target level value are re-scanned through the target interrupt service program, so as to obtain new device information in the target device link; and the new device information is sent to a baseboard management controller through the target interrupt service program, so as to update the device information in the baseboard management controller. In this way, after the in-place state of the hot plug device changes, the programmable logic device determines which hot plug device or which hot plug devices change, at this time, all hot plug devices in the device link in which the changed hot plug device is located are re-scanned through the corresponding link and the corresponding program, new device information in the device link is obtained, and the baseboard management controller is updated with the corresponding device information. In this way, in the OS control stage of the server, if the hot plug device is replaced or adjusted, the device information in the baseboard management controller can be updated without restarting the server, so that the high availability of the server is improved.
[0105] In combination with the above embodiments, in an implementation, the embodiments of the present application further provide a device information updating method of a hot plug device. In the device information updating method of the hot plug device, the step S1 of determining a target hot plug slot through a programmable logic device according to the in-place state of the hot plug device can include steps S11 to S12:
[0106] The step S11 includes: determining a hot plug slot in which the in-place state changes through the programmable logic device according to the in-place state of the hot plug device.
[0107] The step S12 includes: determining the hot plug device in which the in-place state changes as the target hot plug slot.
[0108] In the embodiment, the programmable logic device monitors the in-place state of the hot plug device in each hot plug slot through the link connected by itself and each hot plug slot, and determines the hot plug slot in which the in-place state changes based on the in-place state of the hot plug device in each hot plug slot, determines the hot plug slot in which the in-place state changes as the target hot plug slot, and the target hot plug slot belongs to the hot plug slot in which the hot plug device changes. The change includes two types, one is that the hot plug device in the target hot plug slot is pulled out and no new hot plug device is inserted into the target hot plug slot, and the other is that the hot plug device in the target hot plug slot is pulled out and a new hot plug device is inserted into the hot plug slot.
[0109] In combination with the above embodiment, in an implementation, the embodiment of the present application further provides a device information updating method of a hot plug device. In the device information updating method of the hot plug device, step S11 can include steps S111 to S113:
[0110] Step S111: According to the hardware in-place signal detection, the programmable logic device receives the in-place signal of the hot plug device.
[0111] In the embodiment, based on the hardware in-place signal detection, the programmable logic device monitors the in-place state of the hot plug device in each hot plug slot in real time. When the hot plug slot has the hot plug device, the programmable logic device will receive a corresponding in-place signal representing the in-place of the hot plug device, and when the hot plug slot does not have the hot plug device, the programmable logic device will receive a corresponding in-place signal representing the out-of-place of the hot plug device, so that the programmable logic device can know whether there is a hot plug device in place in each hot plug slot. The slot identification of the hot plug slot corresponding to the in-place signal is recorded in the in-place signal, so as to be used for the programmable logic device to determine which hot plug slot the in-place signal corresponds to after receiving the in-place signal.
[0112] Step S112: According to the in-place signal, the in-place state of the hot plug device is determined by the programmable logic device.
[0113] In the embodiment, after the programmable logic device receives each in-place signal corresponding to each hot plug slot, the in-place signal is analyzed to determine whether there is a hot plug device in place in each hot plug slot.
[0114] Step S113: According to the in-place state of the hot plug device and the in-place state at the previous moment, the programmable logic device determines whether the hot plug slot in which the hot plug device is located is the hot plug slot in which the in-place state changes.
[0115] In the embodiment, after determining the result of whether there is a hot plug device in each current hot plug slot, the current obtained in-situ state of the hot plug device at the hot plug slot is compared with the in-situ state of the hot plug device at the hot plug slot recorded by the programmable logic device at the current previous time. If the comparison result is that the current in-situ state is inconsistent with the current previous in-situ state, it is determined that the hot plug slot is a hot plug slot in which the in-situ state of the hot plug device changes. At this time, the hot plug slot is determined as the target hot plug slot. For example, the current in-situ state of the hot plug slot is that there is a hot plug device in the slot, and the in-situ state of the hot plug slot recorded by the programmable logic device at the current previous time is that there is no hot plug device in the slot. Therefore, it is determined that the hot plug slot is a hot plug slot in which the in-situ state changes. It should be understood that the time interval (such as 0.1 seconds) of the programmable logic device in monitoring the in-situ state of the hot plug device on each hot plug slot based on the hardware-based in-situ signal detection is very short, and the replacement time interval (such as 3 seconds) of the user in actually replacing the hot plug device will be much longer than the time interval. Therefore, as long as the user replaces the hot plug device on the hot plug slot, the programmable logic device can monitor the replacement operation.
[0116] In combination with the above embodiments, in an implementation, the embodiments of the present application also provide a device information updating method of a hot plug device. In the device information updating method of the hot plug device, the step S1 of determining the target pin corresponding to the target hot plug slot in the extension chip can include the step S114 of determining, by the programmable logic device, the target pin corresponding to the target hot plug slot in the extension chip according to the target hot plug slot and the target mapping relationship.
[0117] In the embodiment, the present application pre-constructs the mapping relationship between the hot plug slot and the pin in the extension chip in the programmable logic device. The mapping relationship is the target mapping relationship. After determining the target hot plug slot by the programmable logic device, the pin corresponding to the target hot plug slot is determined based on the pre-constructed target mapping relationship. The pin is the target pin corresponding to the target hot plug slot.
[0118] In combination with the above embodiments, in an implementation, the embodiments of the present application also provide a device information updating method of a hot plug device. In the device information updating method of the hot plug device, the step S114 can include the steps S1141 to S1142:
[0119] The step S1141 includes determining, by the programmable logic device, the device link corresponding to the target hot plug slot according to the target hot plug slot and the first target mapping relationship. The first target mapping relationship is the mapping relationship between the hot plug slot and the device link.
[0120] In the embodiment, two mapping relationships are pre-built in the programmable logic device to realize the mapping relationship between the hot plug slot and the pin in the expansion chip, which are the first target mapping relationship and the second target mapping relationship. The first target mapping relationship is built based on the correspondence between the hot plug device on the hot plug slot and the device link. The hot plug device on the hot plug slot transmits data to the central processor through a certain specific device link, and the hot plug slot and the certain specific device link form a mapping relationship. For example, the server includes hot plug slots a1 to a6, and the hot plug devices on the hot plug slots a1 to a3 will transmit data to the central processor through the device link A1, so the mapping relationship between the device link A1 and the hot plug slots a1 to a3 is recorded in the first target mapping relationship, that is, the hot plug slots a1 to a3 all correspond to the device link A1; and the hot plug devices on the hot plug slots a4 to a6 will transmit data to the central processor through the device link A2, so the mapping relationship between the device link A2 and the hot plug slots a4 to a6 is recorded in the first target mapping relationship, that is, the hot plug slots a4 to a6 all correspond to the device link A2. The second target mapping relationship is the mapping relationship between the device link and the pin in the expansion chip, and one device link corresponds to a unique pin in the expansion chip. After the programmable logic device determines the target hot plug slot, the device link corresponding to the target hot plug slot is determined based on the target hot plug slot and the first target mapping relationship, and the device link is the device link through which the hot plug device on the target hot plug slot transmits data to the central processor.
[0121] Step S1142: According to the determined device link corresponding to the target hot plug slot and the second target mapping relationship, the programmable logic device determines the target pin corresponding to the device link, and the second target mapping relationship is the mapping relationship between the device link and the pin in the expansion chip.
[0122] In the embodiment, after the programmable logic device determines the device link corresponding to the target hot plug slot, the pin in the expansion chip corresponding to the device link (that is, the device link corresponding to the target hot plug slot) is determined based on the second target mapping relationship, and the pin is the target pin.
[0123] In combination with the above embodiments, in an implementation, the embodiment of the present application further provides a device information updating method of a hot plug device. In the device information updating method of the hot plug device, step S3 can include steps S31 to S32:
[0124] Step S31: According to the interrupt signal, the central processor triggers a system management interrupt.
[0125] In the embodiment, when the OS system at the server is running normally, the basic input / output system firmware is at the runtime stage (i.e. the hibernation stage), and after the central processing unit receives the interrupt signal sent by the programmable logic device, the central processing unit triggers the system management interrupt (System Management Interrupt, SMI) to execute.
[0126] Step S32: The basic input / output system in the hibernation state is woken up by the system management interrupt, and the target interrupt service program of the basic input / output system is executed.
[0127] In the embodiment, after the central processing unit triggers the system management interrupt SMI, the basic input / output system at the runtime stage is woken up by the system management interrupt, and the target interrupt service program is registered in the basic input / output system in advance, so that after the basic input / output system is woken up, based on the interrupt signal received by the central processing unit and sent by the programmable logic device, the basic input / output system will execute the target interrupt service program.
[0128] In combination with the above embodiment, in an implementation, the embodiment also provides a device information updating method of a hot plug device. In the device information updating method of the hot plug device, step S5 can include steps S51 to S52:
[0129] Step S51: According to the determined pin at the target level value and the second target mapping relationship, the target interrupt service program determines the target device link corresponding to the pin at the target level value, and the second target mapping relationship is the mapping relationship between the device link and the pin in the expansion chip.
[0130] In the embodiment, after the target interrupt service program determines the pin at the target level value, the second target mapping relationship will be used to further determine the target device link corresponding to the pin at the target level value. The second target mapping relationship can be obtained from the programmable logic device, can be stored in the storage space corresponding to the basic input / output system in advance, can be obtained when needed in the future, can also be obtained by other means, which is not limited here. After the target interrupt service program determines the pin at the target level value and obtains the second target mapping relationship, the device link corresponding to the pin at the target level value is determined based on the second target mapping relationship, and the device link is the target device link.
[0131] Step S52: The hot plug device in the target device link is re-scanned by the target interrupt service program, and new device information in the target device link is obtained.
[0132] In the embodiment, after the target interrupt service program determines the target device link, all hot plug devices which transmit data with the central processor through the target device link are re-scanned to obtain new device information of all new hot plug devices which transmit data with the central processor through the target device link.
[0133] In combination with the above embodiment, in an implementation, the embodiment further provides a device information updating method of a hot plug device. In the device information updating method of the hot plug device, step S6 can include steps S61 and S62.
[0134] Step S61: The target interrupt service program stores the new device information into a target register and deletes old device information in the target register through a second link connected between the programmable logic device and the central processor, the target register being a register corresponding to the target device link in a memory of the programmable logic device.
[0135] In the embodiment, since the basic input / output system can cause performance impact on the program running in the OS system in the central processor if it is in the interrupt service program of the system management interrupt (SMI) for a long time. Therefore, the method for updating the device information of the hot-plugging device provided in the application can reduce the time length of the basic input / output system in the interrupt service program of the system management interrupt (SMI) as much as possible during the process of updating the device information of the hot-plugging device, and the time consumed by the basic input / output system for transmitting the new device information to the baseboard management controller through the IPMI protocol is relatively long. Therefore, another implementation manner is provided for the step S6 in the above embodiment, that is, the new device information obtained by re-performing the access scanning is stored in a UFS RAM (Universal Flash Storage, Random Access Memory) memory in the programmable logic device, and then the basic input / output system exits the interrupt service program of the system management interrupt (SMI), which can effectively reduce the time length of the basic input / output system in the interrupt service program of the system management interrupt (SMI), thereby avoiding the performance impact on the program running in the OS system in the central processor. In order to realize the embodiment, the hardware architecture of the server to which the method for updating the device information of the hot-plugging device provided in the application is applied further comprises a second link connected between the programmable logic device and the integrated blue bridge (PCH) in the central processor (CPU), which is used for information transmission and data interaction between the programmable logic device and the central processor, as shown in FIG. 2. Specifically, the programmable logic device allocates a corresponding register for each device link in the server, that is, there is a corresponding register for each device link, and the allocated register is used to store the new device information in the corresponding device link. After the target interrupt service program obtains the new device information by re-performing the access scanning, the target interrupt service program stores the obtained new device information in the register for storing the target device link in the programmable logic device through the second link connected between the programmable logic device and the central processor, the register is the target register corresponding to the target device link, and the old device information in the target register is deleted. Preferably, the second link is an i2c connection link.
[0136] Step S62: In the case where the new device information is stored in the target register, the baseboard management controller reads the new device information in the target register to update the device information in the baseboard management controller.
[0137] In the embodiment, after the target interrupt service program stores the new device information obtained by the re-accessed scan into the corresponding target register, the basic input / output system exits the interrupt service processing program of the system management interrupt (SMI), and the baseboard management controller reads the new device information in the target register after determining that the device information in the target register has changed, and then updates the old device information corresponding to the target device link recorded in the baseboard management controller with the new device information. When the user re-queries the device information of the hot-pluggable device of the server through a page or an interface, the updated device information is provided.
[0138] In combination with the above embodiment, in an implementation, the embodiment of the present application further provides a device information updating method of a hot-pluggable device. In the device information updating method of the hot-pluggable device, step S61 can include steps S611 to S612:
[0139] Step S611: The target interrupt service program obtains the old device information in the target register through the second link connected between the programmable logic device and the central processing unit, and compares the old device information with the new device information to obtain a comparison result.
[0140] Step S612: According to the comparison result, the old device information in the target register is differentially updated.
[0141] In the embodiment, the target interrupt service program stores the new device information obtained by re-scanning the access into the corresponding target register, and then the baseboard management controller reads the new device information from the target register, which can effectively reduce the duration of the basic input / output system in the interrupt service processing program of the system management interrupt (SMI). In order to further reduce the duration, another implementation is provided for step S61, specifically: after the target interrupt service program obtains new device information by re-scanning the access, the target interrupt service program reads the old device information in the target register corresponding to the current target device link through the second link connected between the programmable logic device and the central processing unit, and then compares the old device information with the new device information obtained by re-scanning the access to obtain a corresponding comparison result. Then, based on the comparison result, the old device information in the target register is differentially updated. In this way, the target interrupt service program can only store the differential increment part of the obtained new device information in the target register, so the time spent will be less, thereby further reducing the duration of the basic input / output system in the interrupt service processing program of the system management interrupt (SMI). The differential increment update is specifically: determining, by the target interrupt service program, first device information that is the same between the new device information and the old device information in the target register, second device information that is not included in the new device information but is included in the old device information, and third device information that is included in the new device information but not included in the old device information. For the first device information, since the target register already has the device information, the target interrupt service program does not store the first device information in the new device information in the target register. For the second device information, since the new device information does not include the second device information, it indicates that the hot plug device corresponding to the second device information is no longer included on the current server, so the second device information in the target register is directly deleted. For the third device information, since the new device information includes the third device information but the old device information does not include the third device information, it indicates that a new hot plug device corresponding to the third device information appears on the current server, so the third device information is stored in the target register. In this way, the target interrupt service program only stores the third device information in the new device information, which can further reduce the duration of the basic input / output system in the interrupt service processing program of the system management interrupt (SMI).
[0142] In combination with the above embodiments, in an implementation, the embodiments of the present application also provide a device information updating method of a hot plug device. In the device information updating method of the hot plug device, step S62 can include steps S621 to S623:
[0143] Step S621: In the case that the new device information is stored in the target register, the target interrupt service program sends an interrupt processing completion signal to the programmable logic device through the second link connected between the programmable logic device and the central processing unit.
[0144] In the embodiment, after the target interrupt service program stores the new device information in the corresponding target register, the target interrupt service program sends an interrupt processing completion signal to the programmable logic device through the second link connected between the programmable logic device and the central processing unit, to inform the programmable logic device that the target interrupt service program completes the interrupt processing, that is, completes the operation of storing the new device information in the corresponding target register.
[0145] Step S622: According to the interrupt processing completion signal, the target variable of the target register is set by the programmable logic device.
[0146] In the embodiment, after the programmable logic device receives the interrupt processing completion signal sent by the target interrupt service program, it is determined that the target interrupt service program completes the interrupt processing, at this time, the programmable logic device controls the target variable of the target register in its own memory to be set. For example, the target variable of the target register originally takes the value of 0, and by setting it, its value is adjusted from 0 to 1.
[0147] Step S623: According to the setting of the target variable of the target register, the baseboard management controller reads the new device information in the target register to update the device information in the baseboard management controller.
[0148] In the embodiment, according to the setting of the target variable of the target register, the baseboard management controller monitors that the target variable of the target register is set. After the baseboard management controller monitors it, the baseboard management controller reads the new device information in the target register which has been operated by the target variable setting to update the old device information corresponding to the target register recorded by the baseboard management controller. After completing the reading of the new device information in the target register, the value of the target variable of the target register is restored, for example, in the case that the setting of the target variable is adjusted from 0 to 1, the value of the target variable is restored to be adjusted from 1 to 0.
[0149] In combination with the above embodiments, in an implementation, the embodiments of the present application also provide a device information updating method of a hot plug device. In the device information updating method of the hot plug device, step S623 can include steps S6231 to S6232:
[0150] Step S6231: The baseboard management controller polls the target variables of each register in the programmable logic device to determine the registers in the programmable logic device in which the target variables are in the set state.
[0151] In this embodiment, the baseboard management controller polls the target variables of each register in the memory of the programmable logic device once every certain time length to determine which registers in the programmable logic device have target variables in the set state.
[0152] Step S6231: According to the determined registers in which the target variables are in the set state, the baseboard management controller reads the device information in the registers in which the target variables are in the set state to update the device information in the baseboard management controller.
[0153] In this embodiment, after the baseboard management controller determines the registers in which the target variables are in the set state in the polling process, it is determined that the device information in the registers has changed. At this time, the baseboard management controller reads the device information in the registers in which the target variables are in the set state to update the old device information corresponding to the registers recorded in the baseboard management controller. After the reading of the device information in the registers in which the target variables are in the set state is completed, the value of the target variable of the register is restored.
[0154] In combination with the above embodiments, in an implementation, the embodiments of the present application further provide a device information updating method of a hot plug device. In the device information updating method of the hot plug device, the method further includes step S02, which is executed simultaneously with step S2 or before step S2 or after step S2 and before step S4. Step S02 includes steps S021 to S02:
[0155] Step S021: According to the determined target pin, the programmable logic device determines the corresponding check level value.
[0156] In the embodiment, when the programmable logic device adjusts the level of the determined target pin to the target level value, other interference can occur, which can cause the level of the target pin to be adjusted to a level value different from the target level value. The target interrupt service program only reads the level value of the pin of the expansion chip, and cannot know whether the level of the target pin adjusted by the programmable logic device is the correct adjustment to the corresponding level value, thereby causing the device information updating process to be abnormal. Therefore, the present application provides another embodiment, which introduces a check level value when the determined target pin is adjusted to the target level value, so that the target interrupt service program can perform corresponding checking on the read level value after reading the level value of the pin of the expansion chip, to determine whether the read level value is correct. Specifically, the present application divides the pins in the expansion chip into two parts, one part is the pins corresponding to the device link, and the other part is the independent check pin. After the programmable logic device determines the target pin through step S1, the corresponding programmable logic device knows that the level of the target pin will be subsequently adjusted to the target level value, and the programmable logic device is the main body of adjusting the level of the pin of the expansion chip, so the programmable logic device knows the real level values of the other pins corresponding to the device link in the expansion chip except the target pin. At this time, the programmable logic device obtains the corresponding check level value by calculating the target level value of the target pin and the real level values of the other pins corresponding to the device link in the expansion chip except the target pin recorded at present.
[0157] Step S022: According to the check level value, the programmable logic device adjusts the level of the check pin to the check level value through the link connected between the programmable logic device and the check pin in the expansion chip.
[0158] In the embodiment, the programmable logic device is connected with the link of the check pin in the expansion chip, and after the programmable logic device determines the check level value through step S021, the programmable logic device adjusts the level of the check pin in the expansion chip to the check level value through the link connected between the programmable logic device and the check pin in the expansion chip.
[0159] In the present application, in the case where the device information updating method of the hot plug device provided by the present application further includes step S02, one embodiment of step S4 in the method is step S41 to step S4:
[0160] Step S41: The target interrupt service program reads the level value of the pin corresponding to the device link in the expansion chip and the check level value through the first link connected between the expansion chip and the central processing unit.
[0161] In the embodiment, the target interrupt service program first reads the level values of the pins corresponding to the device link in the extension chip and the check level value of the check pin through the first link connecting the extension chip and the central processor.
[0162] Step S42: According to the level values of the pins corresponding to the device link in the extension chip, the target interrupt service program determines the corresponding to-be-checked level value.
[0163] In the embodiment, the target interrupt service program calculates the level values of all the pins corresponding to the device link in the extension chip to obtain the corresponding to-be-checked level value. If the level value of the target pin is indeed adjusted to the target level value when the programmable logic device adjusts the level of the target pin to the target level value, and the level value of the check pin is indeed adjusted to the check level value when the programmable logic device adjusts the level of the check pin to the check level value, the to-be-checked level value obtained by the target interrupt service program through the calculation of the level values of all the pins corresponding to the device link in the extension chip will be consistent with the read check level value. If they are not consistent, it is determined that the programmable logic device has an abnormality when adjusting the level of the target pin to the target level value, i.e., the level value of the target pin is not adjusted to the target level value. It should be understood that the programmable logic device may also have an abnormality when adjusting the level of the check pin, i.e., the level value of the check pin is not adjusted to the check level value.
[0164] Step S43: Comparing the to-be-checked level value with the check level value to obtain the corresponding comparison check result.
[0165] In the embodiment, after the target interrupt service program calculates the to-be-checked level value, the to-be-checked level value and the check level value of the check pin read by the target interrupt service program are compared to obtain the corresponding comparison check result.
[0166] Step S44: According to the comparison check result, the target interrupt service program determines the pin corresponding to the device link in the extension chip that is at the target level value.
[0167] In the embodiment, after the comparison check result is obtained through step S43, the target interrupt service program determines the pin corresponding to the device link in the extension chip that is at the target level value according to the comparison check result.
[0168] In combination with the above embodiments, in an implementation, the embodiments of the present application further provide a device information updating method of a hot plug device. In the device information updating method of the hot plug device, step S021 can include steps S0211 to S0212:
[0169] Step S0211: According to the determined target pin, the programmable logic device determines that the level value of the target pin is to be adjusted to the target level value.
[0170] Step S0212: The programmable logic device calculates the target level value of the target pin and the recorded level values of the other pins corresponding to the device link in the current expansion chip to obtain a corresponding check level value.
[0171] In this embodiment, after the programmable logic device determines the target pin through step S1, the corresponding programmable logic device knows that the level of the target pin will be adjusted to the target level value in the future. Meanwhile, the programmable logic device is the main body of controlling the level adjustment of the pins of the expansion chip, and thus the programmable logic device knows the real level values of the other pins corresponding to the device link in the current expansion chip except the target pin. At this time, the programmable logic device calculates the target level value of the target pin and the recorded real level values of the other pins corresponding to the device link in the current expansion chip except the target pin to obtain a corresponding check level value.
[0172] In combination with the above embodiments, in an implementation, the embodiments of the present application further provide a device information updating method of a hot plug device. In the device information updating method of the hot plug device, step S44 can include steps S441 to S442:
[0173] Step S441: In the case where the comparison check result is a check pass, the target interrupt service program is used to determine the pins corresponding to the device link in the expansion chip and having the target level value.
[0174] Step S442: In the case where the comparison check result is a check fail, the determination of the pins corresponding to the device link in the expansion chip and having the target level value is ended.
[0175] In this embodiment, in the case where the comparison check result obtained through step S43 is that the to-be-checked level value obtained by the target interrupt service program by calculating the level values of all the pins corresponding to the device link in the expansion chip is consistent with the read check level value, it is determined that the comparison check result is a check pass, at this time, it is determined that the programmable logic device indeed adjusts the level of the target pin to the target level value, at this time, the target interrupt service program performs the determination of the pins corresponding to the device link in the expansion chip and having the target level value.
[0176] In the embodiment, in the case that the comparison check result obtained through step S43 is that the to-be-checked level value obtained by the target interrupt service program through calculation on the level values of all the pins of the extension chip corresponding to the device link read is inconsistent with the read check level value, it is determined that the comparison check result is that the check fails, at this time, it indicates that the programmable logic device has an abnormality when adjusting the level of the target pin to the target level value, and the level value of the target pin is not adjusted to the target level value. Meanwhile, it can also be that the programmable logic device has an abnormality when adjusting the level of the check pin, and the level value of the check pin is not adjusted to the check level value. For the case that the comparison check result is not checked through, in order to avoid that the device information is not updated in the hot plug device information updating process which has changed the hot plug slot, the execution of the subsequent steps is directly ended at this time, and the device information is not updated, that is, the target interrupt service program does not determine the pin in the extension chip corresponding to the device link which is at the target level value, and the execution of the subsequent steps is not performed.
[0177] In the embodiment, since the IO (Input / Output, input / output) pin level adopts binary, the principle of checking whether the pin corresponding to the target device link is indeed correctly adjusted to the target level value based on the check pin in the application adopts parity check coding. In the application, the pin corresponding to the device link is taken as the information bit in the parity check coding, and the check pin is taken as the parity check bit in the parity check coding. The programmable logic device adjusts the pin corresponding to the target device link to the target level value based on the pin corresponding to the target device link which is to be adjusted to the target level value and the level values of the other pins corresponding to the device link to determine a check level value, and then controls the check pin to output the check level value. If the programmable logic device correctly adjusts the pin corresponding to the target device link to the target level value and correctly adjusts the check pin to the check level value, the to-be-checked level value obtained by the target interrupt service program through calculation on the level values of all the pins corresponding to the device link after the subsequent target interrupt service program obtains the level values of all the pins corresponding to the device link will be consistent with the check level value.
[0178] In combination with the above embodiments, in an implementation manner, the embodiment of the application further provides a device information updating method of a hot plug device. In the device information updating method of the hot plug device, step S622 can include steps S6221 to S6223:
[0179] Step S6221: in the case that the interrupt processing completion signal is received, a new check level value is determined through the programmable logic device according to the pin corresponding to the target device link.
[0180] In the embodiment, in the case that the check pin is included in the expansion chip, the corner level value of the check pin also needs to be restored while the level value of the pin corresponding to the target device link is restored to the initial level value before the target level value is adjusted. Specifically: in the case that the interrupt processing completion signal is received, the programmable logic device will know that it will restore the pin corresponding to the target device link to the initial level value, at this time, the programmable logic device calculates the initial level value of the pin corresponding to the target device link and the level values of other pins corresponding to device links recorded by the programmable logic device currently except the pin corresponding to the target device link to obtain a corresponding new check level value.
[0181] Step S6222: The programmable logic device updates the level value of the check pin to the new check level value through the link connected between the programmable logic device and the check pin in the expansion chip.
[0182] In the embodiment, after the new check level value is determined through step S6222, the programmable logic device updates the level value of the check pin to the new check level value through the link connected between the programmable logic device and the check pin in the expansion chip. At this time, if the target interrupt service program reads the level values of all pins corresponding to device links and reads the check level value of the check pin, and calculates the read level values of all pins corresponding to device links to obtain a to-be-checked level value, the to-be-checked level value will be consistent with the read check level value, while the programmable logic device adjusts the level value of the check pin to the new check level value determined in step S6222, and the programmable logic device restores the level value of the pin corresponding to the target device link to the initial level value.
[0183] Step S6223: The programmable logic device sets the target variable of the target register and restores the level value of the pin corresponding to the target device link.
[0184] In the embodiment, the programmable logic device sets the target variable of the target register and restores the level value of the pin corresponding to the target device link to the initial level value at the same time.
[0185] In combination with the above embodiments, in an implementation, the embodiment of the present application further provides a device information updating method of a hot plug device. In the device information updating method of the hot plug device, the method further includes step S7: in the case that the target interrupt service program sends an interrupt processing completion signal to the programmable logic device, the central processing unit controls the basic input / output system to sleep.
[0186] In the embodiment, after the target interrupt service program sends the interrupt processing completion signal to the programmable logic device, the central processing unit controls the basic input / output system to restore the runtime stage again, that is, controls the basic input / output system to sleep.
[0187] In combination with the above embodiments, in an implementation, the embodiments of the present application further provide a device information updating method of a hot plug device. In the device information updating method of the hot plug device, the hot plug device comprises a PCIe hot plug device connected with a server through a riser expansion card (expansion adapter card).
[0188] In the embodiment, in order to reserve the expansion capability of the server external component, a flying slot is reserved in the hardware design of the mainboard of the server, so that the server can connect the expanded PCIe hot plug device through the riser card. For such a PCIe hot plug device, as shown in FIG. 2, a connection link of the PCIe hot plug device (a position represented by plugging in FIG. 2) and the programmable logic device can be constructed. The programmable logic device can also monitor the change of the in-place state of the PCIe hot plug device, so as to control the level adjustment of the pin corresponding to the device link corresponding to the PCIe hot plug device to the target level value, so that the central processing unit can perform re-access scanning on the PCIe hot plug device without restarting.
[0189] The device information updating method of the hot plug device provided in the application can realize the real-time updating of the device information of the hot plug device in the server actual application scene of maintenance, expansion, upgrade and the like without power-off and restart, improves the high availability of the server, and realizes the real-time updating of the device information of the hot plug device in the server. When the operation and maintenance personnel perform online maintenance, replacement and expansion of the device, the server does not need to be powered off and restarted to stop user services, ensuring the high availability of continuous operation of the server and improving the user experience. Meanwhile, the problem of long communication time between the BMC and the BIOS is solved, the current hardware link is reused, the data push updating (i.e., the new device information is stored in the memory of the CPLD, and then the BMC is notified to acquire the new device information) is completed in the mode of asynchronous notification, and the long SMI interruption time of the OS system is avoided to affect the running performance of the system. The application specifically includes the following advantages: 1) the CPLD detects the in-place state of the hot plug device, and then wakes up the BIOS in the mode of hardware interruption generated between the extension chip and the central processor; 2) the extension chip pins are divided, the CPLD and the external cable detection are unified, and the reliability is enhanced, the extension chip pin level and the redundant pin level are combined and encoded, the automatic updating and checking during the updating of the CPLD are realized, and the reliability of the pin level control is realized; 3) the BMC and the BIOS information transmission discards the default IPMI channel mode, and completes the transmission of the device information of the hot plug device in the mode of sharing the memory of the CPLD, reuses the hardware link in the design, and has higher asynchronous information transmission efficiency in effect, and avoids the performance loss caused by the long interruption time of the OS system.
[0190] Based on the same inventive concept, the second aspect of the application provides a device information updating system of a hot plug device, as shown in FIG. 3, the system 300 includes a server 301, the server includes a programmable logic device 3011, an extension chip 3012, a central processor 3013 and a baseboard management controller 3014, the central processor 3013 includes a target terminal service program;
[0191] The programmable logic device 3011 is configured to determine a target hot plug slot according to the in-place state of the hot plug device, determine a target pin corresponding to the target hot plug slot in the extension chip 3012, adjust the level of the target pin to a target level value through a link connected between the programmable logic device 3011 and the target pin, and send an interruption signal to the central processor 3013 through an interruption link connected between the programmable logic device 3011 and the central processor 3013;
[0192] The central processing unit 3013 is configured to control execution of a target interrupt service program of the basic input / output system according to the interrupt signal; the target interrupt service program reads the level values of all pins in the expansion chip 3012 through the first link connected between the target interrupt service program and the central processing unit 3013, to determine the pins in the target level values; the target interrupt service program re-performs access scanning on the hot plug device in the target device link corresponding to the pins in the target level values, to obtain new device information in the target device link;
[0193] The baseboard management controller 3014 is configured to receive the new device information sent by the target interrupt service program, to update the device information in the baseboard management controller 3014.
[0194] In some embodiments of the present application, the programmable logic device is configured to determine the hot plug slot in which the presence status changes according to the presence status of the hot plug device; and determine the hot plug device in which the presence status changes as the target hot plug slot.
[0195] In some embodiments of the present application, the programmable logic device is configured to receive the presence signal of the hot plug device according to the hardware presence signal detection; and determine the presence status of the hot plug device according to the presence signal; and determine whether the hot plug slot in which the hot plug device is located is the hot plug slot in which the presence status changes according to the presence status of the hot plug device and the presence status at the previous moment.
[0196] In some embodiments of the present application, the programmable logic device is configured to determine the target pin in the expansion chip corresponding to the target hot plug slot according to the target hot plug slot and the target mapping relationship.
[0197] In some embodiments of the present application, the programmable logic device is configured to determine the device link corresponding to the target hot plug slot according to the target hot plug slot and the first target mapping relationship, the first target mapping relationship being the mapping relationship between the hot plug slot and the device link; and determine the target pin corresponding to the device link according to the determined device link corresponding to the target hot plug slot and the second target mapping relationship, the second target mapping relationship being the mapping relationship between the device link and the pin in the expansion chip.
[0198] In some embodiments of the present application, the central processing unit is configured to trigger a system management interrupt according to the interrupt signal; and wake up the basic input / output system in the sleep state through the system management interrupt, and execute the target interrupt service program of the basic input / output system.
[0199] In some embodiments of the present application, the central processor is configured to determine, according to the determined pin at the target level value and a second target mapping relationship, a target device link corresponding to the pin at the target level value, the second target mapping relationship being a mapping relationship between a device link and a pin in the expansion chip; and re-perform, by the target interrupt service program, access scanning on a hot plug device in the target device link to obtain new device information in the target device link.
[0200] In some embodiments of the present application, the central processor is configured to store, by the target interrupt service program, the new device information into a target register and delete old device information in the target register through a second link connected between the programmable logic device and the central processor, the target register being a register corresponding to the target device link in a memory of the programmable logic device.
[0201] The baseboard management controller is configured to read the new device information in the target register to update device information in the baseboard management controller in a case where the new device information is stored into the target register.
[0202] In some embodiments of the present application, the central processor is configured to obtain, by the target interrupt service program, the old device information in the target register and compare the old device information with the new device information to obtain a comparison result through the second link connected between the programmable logic device and the central processor; and perform differential incremental update on the old device information in the target register according to the comparison result.
[0203] In some embodiments of the present application, the central processor is configured to send, by the target interrupt service program, an interrupt processing completion signal to the programmable logic device through the second link connected between the programmable logic device and the central processor in a case where the new device information is stored into the target register.
[0204] The programmable logic device is configured to set a target variable of the target register according to the interrupt processing completion signal.
[0205] The baseboard management controller is configured to read the new device information in the target register to update device information in the baseboard management controller according to the setting of the target variable of the target register.
[0206] In some embodiments of the present application, the baseboard management controller is configured to poll target variables of all registers in the programmable logic device to determine registers in which the target variables are in a set state in the programmable logic device.
[0207] The baseboard management controller is configured to read device information in the registers in which the target variables are in the set state to update device information in the baseboard management controller according to the determined registers in which the target variables are in the set state.
[0208] The programmable logic device is configured to determine a corresponding check level value according to the determined target pin;
[0209] The programmable logic device is configured to adjust the level of the check pin to the check level value through a link connected between the programmable logic device and the check pin in the expansion chip according to the check level value;
[0210] The central processing unit is configured to read the level value and the check level value of the pin corresponding to the device link in the expansion chip through a first link connected between the expansion chip and the central processing unit by the target interrupt service program, and determine a corresponding to-be-checked level value through the target interrupt service program according to the level value of the pin corresponding to the device link in the expansion chip, and compare and check the to-be-checked level value and the check level value to obtain a corresponding comparison and check result, and determine the pin corresponding to the device link in the expansion chip at the target level value through the target interrupt service program according to the comparison and check result.
[0211] In some embodiments of the present application, the central processing unit is configured to determine the pin corresponding to the device link in the expansion chip at the target level value through the target interrupt service program in the case that the comparison and check result is a check pass, and end the determination of the pin corresponding to the device link in the expansion chip at the target level value in the case that the comparison and check result is a check fail.
[0212] In some embodiments of the present application, the programmable logic device is configured to determine a new check level value according to the pin corresponding to the target device link in the case that the interrupt processing completion signal is received;
[0213] The programmable logic device is configured to update the level value of the check pin to the new check level value through a link connected between the programmable logic device and the check pin in the expansion chip;
[0214] The programmable logic device is configured to set a target variable of a target register, and restore the level value of the pin corresponding to the target device link.
[0215] In some embodiments of the present application, the central processing unit is configured to control the basic input and output system to sleep in the case that the target interrupt service program sends an interrupt processing completion signal to the programmable logic device.
[0216] In some embodiments of the present application, the hot plug device in the system 300 includes a PCIe hot plug device connected to the server through the Riser expansion card.
[0217] Based on the same inventive concept, in a third aspect of the embodiments of the present application, as shown in Fig. 4, the present application provides an electronic device, which comprises a processor 401, a memory 402, and a computer program stored in the memory and running on the processor, and the computer program, when executed by the processor, implements the steps in the device information updating method of the hot plug device according to the first aspect of the present application.
[0218] Based on the same inventive concept, in a fourth aspect of the embodiments of the present application, the present application provides a non-volatile readable storage medium, and the non-volatile readable storage medium stores a computer program, and the computer program, when executed by a processor, implements the steps in the device information updating method of the hot plug device according to the first aspect of the present application.
[0219] Based on the same inventive concept, in a fifth aspect of the embodiments of the present application, the present application provides a computer program product, which comprises computer program / instructions, and the computer program / instructions, when executed by a processor, implements the steps in the device information updating method of the hot plug device according to the first aspect of the present application.
[0220] In the above embodiments, all or part of the embodiments can be implemented by software, hardware, firmware, or any combination thereof. When implemented by software, all or part of the embodiments can be implemented in the form of a computer program product. The computer program product comprises one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions according to the embodiments of the present application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions can be stored in a non-volatile readable storage medium or transferred from one non-volatile readable storage medium to another non-volatile readable storage medium, for example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center through wired (such as coaxial cable, optical fiber, digital subscriber line (DSL, Domain-Specific Language)) or wireless (such as infrared, wireless, microwave, etc.) mode. The non-volatile readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. integrated with one or more available media. The available media can be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a DVD, Digital Video Disc), or a semiconductor medium (for example, a solid state disk, Solid State Disk (SSD)), etc.
[0221] It is to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting; it is not intended to exclude myriad other embodiments of the present application that other inventors can develop based on the description herein. It must be stressed, however, that any combination of the components or features taught according to any of the embodiments herein can be important to the working of the application. In this document, relational terms such as first and second and the like can be used solely to distinguish one entity or action from another entity or action without necessarily implying any actual relationship or order between such entities or actions. Also, the terms "comprises", "comprising", or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but can also include other elements not expressly listed or inherent to such process, method, article, or apparatus. An element proceeded by "comprises... a" does not, without more constraints, exclude the presence of additional identical elements in the process, method, article, or apparatus that comprises the element.
[0222] Various embodiments are described herein with reference to particular applications for illustration purposes. Those of ordinary skill in the art will recognize that the various embodiments described herein can be used in other applications as the one described herein without departing from the spirit and essential characteristics of the various embodiments. Embodiments can have other features or alternatives as applicable.
[0223] The specific embodiments described herein have been shown by way of example in the accompanying drawings. It will be apparent to those skilled in the art that other embodiments can be practiced without departing from the spirit and essential characteristics of the application. Thus, the present application should not be limited by the above described embodiments but should be given the full scope of the appended claims.
Claims
1. A device information update method of a hot plug device, characterized by, The application is applied to a server, the server comprises a programmable logic device, an expansion chip, a central processing unit and a baseboard management controller, and the method comprises the following steps: According to the in-place state of the hot plug device, the programmable logic device determines a target hot plug slot, and determines a target pin in the expansion chip corresponding to the target hot plug slot; The programmable logic device adjusts the level of the target pin to a target level value through a link connected between the programmable logic device and the target pin, and sends an interrupt signal to the central processing unit through an interrupt link connected between the programmable logic device and the central processing unit; According to the interrupt signal, the central processing unit controls the target interrupt service program of the basic input / output system to be executed; The target interrupt service program reads the level values of all pins in the expansion chip through a first link connected between the expansion chip and the central processing unit, so as to determine the pins in the target level value; The target interrupt service program re-scans the hot plug device in the target device link corresponding to the pin in the target level value, and obtains new device information in the target device link; The target interrupt service program sends the new device information to the baseboard management controller, so as to update the device information in the baseboard management controller.
2. The device information update method of a hot plug device according to claim 1, wherein According to the in-place state of the hot plug device, the programmable logic device determines a target hot plug slot, and comprises the following steps: According to the in-place state of the hot plug device, the programmable logic device determines a hot plug slot whose in-place state changes; The hot plug device whose in-place state changes is determined as the target hot plug slot.
3. The device information update method of a hot plug device according to claim 2, wherein According to the in-place state of the hot plug device, the programmable logic device determines a hot plug slot whose in-place state changes, and comprises the following steps: According to the hardware in-place signal detection, the programmable logic device receives the in-place signal of the hot plug device; According to the in-place signal, the programmable logic device determines the in-place state of the hot plug device; According to the in-place state of the hot plug device and the in-place state at the previous moment, the programmable logic device determines whether the hot plug slot where the hot plug device is located is the hot plug slot whose in-place state changes.
4. The device information update method of a hot plug device according to claim 1, wherein The programmable logic device determines a target pin in the expansion chip corresponding to the target hot plug slot, and comprises the following steps: According to the target hot plug slot and a target mapping relationship, the programmable logic device determines a target pin in the expansion chip corresponding to the target hot plug slot.
5. The device information update method of a hot plug device according to claim 4, wherein According to the target hot plug slot and a target mapping relationship, the programmable logic device determines a target pin in the expansion chip corresponding to the target hot plug slot, and comprises the following steps: According to the target hot plug slot and a first target mapping relationship, the programmable logic device determines a device link corresponding to the target hot plug slot, and the first target mapping relationship is a mapping relationship between the hot plug slot and the device link; According to the determined device link corresponding to the target hot plug slot and the second target mapping relationship, the programmable logic device determines a target pin corresponding to the device link, and the second target mapping relationship is a mapping relationship between a device link and a pin in the expansion chip.
6. The device information update method of a hot plug device according to claim 1, wherein According to the interrupt signal, the central processing unit controls a target interrupt service program of a basic input and output system to be executed, including: According to the interrupt signal, the central processing unit triggers a system management interrupt; The basic input and output system in a sleep state is woken up through the system management interrupt, and a target interrupt service program of the basic input and output system is executed.
7. The device information update method of a hot plug device according to claim 1, wherein Through the target interrupt service program, a hot plug device in a target device link corresponding to a pin at a target level value is re-scanned, and new device information in the target device link is obtained, including: According to the determined pin at the target level value and the second target mapping relationship, the target interrupt service program determines a target device link corresponding to the pin at the target level value, and the second target mapping relationship is a mapping relationship between a device link and a pin in the expansion chip. Through the target interrupt service program, a hot plug device in a target device link corresponding to a pin at a target level value is re-scanned, and new device information in the target device link is obtained.
8. The device information update method of a hot plug device according to claim 1, wherein Through the target interrupt service program, the new device information is sent to the baseboard management controller to update the device information in the baseboard management controller, including: Through a second link connected between the programmable logic device and the central processing unit, the target interrupt service program stores the new device information in a target register and deletes old device information in the target register, and the target register is a register corresponding to the target device link in a memory of the programmable logic device. In the case that the new device information is stored in the target register, the baseboard management controller reads the new device information in the target register to update the device information in the baseboard management controller.
9. The device information update method of a hot plug device according to claim 8, wherein Through a second link connected between the programmable logic device and the central processing unit, the target interrupt service program stores the new device information in a target register and deletes old device information in the target register, including: Through a second link connected between the programmable logic device and the central processing unit, the target interrupt service program obtains the old device information in the target register and compares the old device information with the new device information to obtain a comparison result. According to the comparison result, the old device information in the target register is differentially updated.
10. The device information update method of a hot plug device according to claim 8, wherein In the case that the new device information is stored in the target register, the baseboard management controller reads the new device information in the target register to update the device information in the baseboard management controller, including: In the case that the new device information is stored in the target register, the target interrupt service program sends an interrupt processing completion signal to the programmable logic device through a second link connected between the programmable logic device and the central processing unit; According to the interrupt processing completion signal, the programmable logic device sets a target variable of the target register; According to the setting of the target variable of the target register, the baseboard management controller reads the new device information in the target register to update the device information in the baseboard management controller.
11. The device information update method of a hot plug device according to claim 10, wherein According to the setting of the target variable of the target register, the baseboard management controller reads the new device information in the target register to update the device information in the baseboard management controller, comprising: The baseboard management controller polls the target variable of each register in the programmable logic device to determine the register in which the target variable is in a set state; According to the determined register in which the target variable is in a set state, the baseboard management controller reads the device information in the register to update the device information in the baseboard management controller.
12. The device information update method of a hot plug device according to claim 10, wherein The method further comprises: According to the determined target pin, the programmable logic device determines a corresponding verification level value; According to the verification level value, the programmable logic device adjusts the level of the verification pin to the verification level value through a link connected between the programmable logic device and the verification pin in the expansion chip; The target interrupt service program reads the level value of all pins in the expansion chip through the first link connected between the expansion chip and the central processing unit to determine the pin in the target level value, comprising: The target interrupt service program reads the level value of the pin corresponding to the device link in the expansion chip and the verification level value through the first link connected between the expansion chip and the central processing unit; According to the level value of the pin corresponding to the device link in the expansion chip, the target interrupt service program determines a corresponding to-be-verified level value; Comparing the to-be-verified level value with the verification level value to obtain a corresponding comparison verification result; According to the comparison verification result, the target interrupt service program determines the pin corresponding to the device link in the expansion chip in the target level value.
13. The device information update method of a hot plug device according to claim 12, wherein According to the comparison verification result, the target interrupt service program determines the pin corresponding to the device link in the expansion chip in the target level value, comprising: In the case that the comparison verification result is verification passed, the target interrupt service program determines the pin corresponding to the device link in the expansion chip in the target level value; In the case that the comparison verification result is verification failed, the determination of the pin corresponding to the device link in the expansion chip in the target level value is ended.
14. The device information update method of a hot plug device according to claim 13, wherein According to the interrupt processing completion signal, the programmable logic device sets a target variable of the target register, comprising: In the case of receiving the interrupt processing completion signal, the programmable logic device determines a new check level value according to the pin corresponding to the target device link; The programmable logic device updates the level value of the check pin to the new check level value through the link connected between the programmable logic device and the check pin in the expansion chip; The programmable logic device sets the target variable of the target register and restores the level value of the pin corresponding to the target device link.
15. The device information update method of a hot plug device according to claim 10, wherein The method further comprises: In the case of the target interrupt service program sending an interrupt processing completion signal to the programmable logic device, the central processing unit controls the basic input / output system to sleep.
16. The device information update method of a hot plug device according to claim 1, wherein The hot plug device comprises a PCIe hot plug device connected to the server through a Riser expansion card.
17. A device information update system of a hot plug device, characterized by comprising: The system comprises a server, and the server comprises a programmable logic device, an expansion chip, a central processing unit and a baseboard management controller, and the central processing unit comprises a target terminal service program; The programmable logic device is configured to determine a target hot plug slot according to the in-place state of the hot plug device, determine a target pin in the expansion chip corresponding to the target hot plug slot, adjust the level of the target pin to a target level value through the link connected between the programmable logic device and the target pin, and send an interrupt signal to the central processing unit through the interrupt link connected between the programmable logic device and the central processing unit; The central processing unit is configured to control a target interrupt service program of the basic input / output system to execute according to the interrupt signal; The target interrupt service program reads the level values of all pins in the expansion chip through the first link connected between the expansion chip and the central processing unit to determine the pins at the target level value, re-performs access scanning on the hot plug device in the target device link corresponding to the pin at the target level value through the target interrupt service program, and obtains new device information in the target device link; The baseboard management controller is configured to receive the new device information sent by the target interrupt service program to update the device information in the baseboard management controller.
18. An electronic device, comprising: Comprise: A processor, a memory and a computer program stored on the memory and running on the processor, the computer program being executed by the processor to implement the steps in the device information updating method of the hot plug device according to any one of claims 1 to 16.
19. A non-volatile readable storage medium, characterized by The non-volatile readable storage medium stores a computer program, and the computer program is executed by the processor to implement the steps in the device information updating method of the hot plug device according to any one of claims 1 to 16.
20. A computer program product comprising computer programs / instructions, characterized in that, The computer program / instruction is executed by the processor to implement the steps in the device information updating method of the hot plug device according to any one of claims 1 to 16.
Citation Information
Patent Citations
Hot plug method, system and device of expansion board and computer storage medium
CN113609051A
Server system and server hard disk hot plug method
CN117435536A
Equipment information updating method, system and equipment of hot plug equipment and medium
CN118132489A
Hot-plug control system and method
US20070136504A1