Control method and system for baseboard management controller of node server

Through complex programmable logic devices, the watchdog timer signal of the node server substrate management controller is detected and the remote restart is performed, which solves the problem of difficulty in remote restarting in case of substrate management controller failure, and realizes the stable and reliable remote restart of the substrate management controller, reducing operation and maintenance costs.

WO2025045061A1PCT designated stage expired Publication Date: 2025-03-06INSPUR SUZHOU INTELLIGENT TECH CO LTD

Patent Information

Application Number
PCT/CN2024/115001
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-08-28
Filing Date
2024-08-28
Publication Date
2025-03-06

AI Technical Summary

Technical Problem

The prior art is difficult to achieve stable and reliable remote restart of the node server substrate management controller, especially when the substrate management controller fails, it is difficult to restart remotely.

Method used

The watchdog timer signal of the substrate management controller is detected through complex programmable logic devices. If a non-square wave signal is detected, the substrate management controller will be restarted; at the same time, the remote reset signal sent by the network card will be received to identify whether the substrate management controller needs to be restarted and perform corresponding operations.

Benefits of technology

Remote restart is achieved when the substrate management controller fails, ensuring the normal operation of the substrate management controller, reducing the operation and maintenance burden and reducing costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024115001_06032025_PF_FP_ABST
    Figure CN2024115001_06032025_PF_FP_ABST
Patent Text Reader

Abstract

The present application relates to a control method and system for a baseboard management controller of a node server, and a complex programmable logic device. The method comprises: detecting a signal sent by a watchdog timer of a baseboard management controller, and if it is detected that the signal sent by the watchdog timer is a non-square wave signal, restarting the baseboard management controller; and when a remote reset signal of the baseboard management controller sent by a network interface card is received, identifying whether the baseboard management controller needs to be restarted or not, and if yes, restarting the baseboard management controller. According to the method, when it is automatically detected that the baseboard management controller of the node server goes wrong, the baseboard management controller is restarted, and a remote reset signal sent remotely is received, so that the baseboard management controller works normally by remotely restarting the baseboard management controller when the baseboard management controller fails.
Need to check novelty before this filing date? Find Prior Art

Description

A control method and system for a baseboard management controller of a node server

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims priority to a Chinese patent application filed with the Patent Office of China on August 28, 2023, with application number 202311087332.3, entitled “A control method and system for a baseboard management controller of a node server,” the entire contents of which are incorporated herein by reference. Technical Field

[0003] The present application relates to the field of digital chip technology, and in particular to a control method, system, and complex programmable logic device for a baseboard management controller of a node server. Background Art

[0004] Server clusters typically use BMC (Baseboard Management Controller) commands for large-scale, unattended operations, including remote server management, monitoring, installation, and restart. As a core server management component, the BMC's operating status directly impacts server stability and backend maintenance. If a node server's BMC fails, most operations and maintenance will be performed remotely.

[0005] Therefore, a stable and reliable method for remotely restarting the baseboard management controller of a node server is needed to ensure that the baseboard management controller can be remotely restarted to enable the baseboard management controller to work normally when a failure occurs in the baseboard management controller.

[0006] Summary of the Invention

[0007] A control method for a baseboard management controller of a node server is applied to a complex programmable logic device (CPLD), wherein the CPLD is connected to the baseboard management controller, and the CPLD is also connected to a network card. The control method includes: detecting a signal emitted by a watchdog timer of the baseboard management controller, and restarting the baseboard management controller in response to detecting that the signal emitted by the watchdog timer is a non-square wave signal; and identifying whether the baseboard management controller needs to be restarted in response to receiving a remote reset signal of the baseboard management controller sent by the network card, and restarting the baseboard management controller in response to identifying that the baseboard management controller needs to be restarted.

[0008] In one embodiment, a control method for a baseboard management controller of a node server further includes: in response to detecting that the signal emitted by the watchdog timer is a continuous low-level signal or a high-level signal, determining that the signal emitted by the watchdog timer is a non-square wave signal.

[0009] In one embodiment, restarting the baseboard management controller includes: sending a low level signal to an external reset pin of the baseboard management controller to restart the baseboard management controller.

[0010] In one embodiment, sending a low-level signal to an external reset pin of a baseboard management controller to restart the baseboard management controller includes: continuously sending a low-level signal to the external reset pin of the baseboard management controller within a set time period, so that the baseboard management controller restarts when detecting a continuous low-level signal within the set time period.

[0011] In one embodiment, the complex programmable logic device is communicatively connected to a reserved pin of the network card, and the network card sends a remote reset signal to the complex programmable logic device through the reserved pin.

[0012] In one embodiment, the network card sends a pulse signal to the complex programmable logic device through a reserved pin, and the low-level signal in the pulse signal is a remote reset signal.

[0013] In one embodiment, a control method for a baseboard management controller of a node server further includes: receiving a pulse signal sent by a network card, filtering the pulse signal, and obtaining a low-level signal in the pulse signal.

[0014] In one embodiment, a method for controlling a baseboard management controller of a node server further includes: in response to detecting that a signal emitted by a watchdog timer is a non-square wave signal, setting a status flag of the baseboard management controller to a first flag; in response to detecting that the signal emitted by the watchdog timer is a square wave signal, setting the status flag of the baseboard management controller to a second flag; in response to identifying that the status flag of the baseboard management controller is the first flag, determining that the baseboard management controller needs to be restarted; in response to identifying that the status flag of the baseboard management controller is the second flag, determining that the baseboard management controller does not need to be restarted.

[0015] In one embodiment, the network card is also connected to the processor of the node server via a PCIE bus, and the processor of the node server is connected to the baseboard management controller via the PCIE bus; the network card executes IPMI instructions through the processor of the node server to restart the baseboard management controller.

[0016] In one embodiment, there are multiple baseboard management controllers and multiple network cards, and a complex programmable logic device is respectively connected to each baseboard management controller, and the complex programmable logic device is also respectively connected to each network card; in response to detecting that the signal emitted by the watchdog timer is a non-square wave signal, restarting the baseboard management controller includes: in response to detecting that the signal emitted by the watchdog timer of any baseboard management controller is a non-square wave signal, restarting any baseboard management controller; in response to receiving a remote reset signal of the baseboard management controller sent by the network card, identifying whether the baseboard management controller needs to be restarted, and in response to identifying that the baseboard management controller needs to be restarted, restarting the baseboard management controller includes: in response to receiving a remote reset signal sent by any network card, identifying the baseboard management controller corresponding to the remote reset signal, identifying whether the corresponding baseboard management controller needs to be restarted, and in response to identifying that the corresponding baseboard management controller needs to be restarted, restarting the corresponding baseboard management controller.

[0017] A complex programmable logic device is provided, wherein the complex programmable logic device is connected to a baseboard management controller of a node server and is also connected to a network card. The complex programmable logic device is provided with a storage unit, a processing unit, and computer-readable instructions stored in the storage unit and executable on the processing unit. When the processing unit executes the computer-readable instructions, the steps of any of the above methods are implemented.

[0018] A control system for a baseboard management controller of a node server, the control system comprising a complex programmable logic device (CPLD) and a network card, wherein the network card is connected to the CPLD, and the CPLD is also connected to the baseboard management controller; wherein the CPLD detects a signal emitted by a watchdog timer of the baseboard management controller, and restarts the baseboard management controller in response to detecting that the signal emitted by the watchdog timer is a non-square wave signal; when the CPLD receives a remote reset signal of the baseboard management controller sent by the network card, it identifies whether the baseboard management controller needs to be restarted, and restarts the baseboard management controller in response to identifying that the baseboard management controller needs to be restarted.

[0019] In one embodiment, the network card is also connected to the processor of the node server, all PCIE links of the network card are connected to the PCIE port of the processor of the node server, and the processor of the node server is connected to the baseboard management controller through the PCIE bus; the network card executes IPMI instructions through the processor of the node server to restart the baseboard management controller.

[0020] In one embodiment, the gold finger of the network card is connected to the PCIE port of the node server, and the PCIE bus of the node server is connected to the PCIE port of the processor of the node server.

[0021] In one embodiment, the network card sends a sideband signal of a gold finger to the complex programmable logic device through a reserved pin of the network card, and the sideband signal of the gold finger serves as a remote reset signal.

[0022] In one embodiment, the network card is a multi-channel network card, there are multiple network cards, each network card is connected to a complex programmable logic device, each network card is also connected to multiple baseboard management controllers, and the complex programmable logic device is connected to each baseboard management controller; the complex programmable logic device detects that the signal sent by the watchdog timer of any baseboard management controller is a non-square wave signal, and restarts any baseboard management controller; when the complex programmable logic device receives a remote reset signal sent by any network card, it identifies the baseboard management controller corresponding to the remote reset signal, identifies whether the corresponding baseboard management controller needs to be restarted, and restarts the corresponding baseboard management controller in response to identifying that the baseboard management controller needs to be restarted.

[0023] In one embodiment, the gold fingers of each network card are inserted into the PCIE port of the adapter board. The adapter board splits the PCIE bus into multiple PCIE lines through cables and connects them to the PCIE port of the processor of each node server through each PCIE line. The processor of each node server is connected to the corresponding baseboard management controller through the PCIE bus.

[0024] In one embodiment, there are two network cards, and the gold fingers of the two network cards are inserted into the PCIE ports of the adapter board. The adapter board splits the PCIE X16 bus of each network card into two PCIE X8 lines through cables, and each PCIE X8 line is connected to the PCIE port of the processor of a node server.

[0025] In one embodiment, any network card sends a sideband signal of the gold finger of any network card to the complex programmable logic device through a reserved pin of any network card, and the sideband signal of the gold finger of any network card serves as a remote reset signal sent by any network card.

[0026] In one embodiment, the control system further includes a management switch connected to the network card, and the management switch is used to control the network card to send a remote reset signal. BRIEF DESCRIPTION OF THE DRAWINGS

[0027] FIG1 is a structural block diagram of a control system of a baseboard management controller of a node server in one or more embodiments;

[0028] FIG2 is a schematic diagram of circuit connections for restarting a baseboard management controller of a remote control node server according to one or more embodiments;

[0029] FIG3 is a flow chart of a control method of a baseboard management controller of a node server in one or more embodiments;

[0030] FIG4 is a schematic diagram of a process for restarting a baseboard management controller of a remote control node server according to one or more embodiments;

[0031] FIG5 is a diagram illustrating the internal structure of a complex programmable logic device in one or more embodiments. DETAILED DESCRIPTION

[0032] To make the purpose, technical solutions, and advantages of this application more clear, the technical solutions in the embodiments of this application will be clearly and completely described below in conjunction with the drawings in the embodiments of this application. Obviously, the described embodiments are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0033] It should be understood that in the description of this application, unless the context clearly requires otherwise, words such as "include", "comprises", and the like throughout the specification should be interpreted as inclusive rather than exclusive or exhaustive; that is, as "including but not limited to".

[0034] It should also be understood that the terms "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or implying relative importance. In addition, in the description of this application, unless otherwise specified, the meaning of "plurality" is two or more.

[0035] It should be noted that the terms "S1", "S2", etc. are used only for the purpose of describing the steps and do not specifically refer to the order or sequence, nor are they used to limit this application. They are merely for the convenience of describing the method of this application and should not be understood as indicating the order of the steps. In addition, the technical solutions between the various embodiments can be combined with each other, but this must be based on the fact that ordinary technicians in this field can implement them. When the combination of technical solutions is contradictory or cannot be implemented, it should be deemed that such combination of technical solutions does not exist and is not within the scope of protection required by this application.

[0036] The present application provides a control system for a baseboard management controller of a node server, as shown in FIG1 . The control system for a baseboard management controller of a node server includes a complex programmable logic device (CPLD) and a network card, wherein the network card is connected to the CPLD, and the CPLD is also connected to the baseboard management controller; wherein the CPLD detects the signal sent by the watchdog timer of the baseboard management controller, and restarts the baseboard management controller if the signal sent by the watchdog timer is detected to be a non-square wave signal; when the CPLD receives the remote reset signal of the baseboard management controller sent by the network card, it identifies whether the baseboard management controller needs to be restarted, and if so, restarts the baseboard management controller. Therefore, when a problem occurs in the baseboard management controller of the node server, the baseboard control manager can be restarted, ensuring that the baseboard control manager can be restarted remotely when a failure occurs in the baseboard control manager.

[0037] In one embodiment, as shown in Figure 1, the network card is also connected to the processor of the node server, all PCIE links of the network card are connected to the PCIE port of the processor of the node server, and the processor of the node server is connected to the baseboard management controller through the PCIE bus; the network card executes IPMI instructions through the processor of the node server to restart the baseboard management controller.

[0038] Specifically, all PCIE links of a PCIe network card are connected to the PCIe ports of the processor of the same node server. This means that the network card is connected to the processor of only one node server and is responsible for managing only one node server. PCIe (Peripheral Component Interconnect Express) is a high-speed serial computer expansion bus standard. PCIe links are PCIe x8 or x16.

[0039] In one embodiment, the gold finger of the network card is connected to the PCIE port of the node server, and the PCIE bus of the node server is connected to the PCIE port of the processor of the node server.

[0040] Specifically, the network card's network port is connected to the management switch's network port via a network cable or optical cable. The network card's gold finger is inserted into the server's PCIE slot and connected to the node server's processor via the PCIE bus. The node server's baseboard management controller is also connected to the processor via the PCIE bus. Therefore, backend operations can remotely log in to the server's operating system and execute IPMI commands within the operating system to restart the node server's baseboard management controller. IPMI is a set of standard management specifications for interaction. The core component of IPMI is the baseboard management controller. IPMI commands allow the baseboard management controller to interact with the CPU, BIOS, and other components.

[0041] In one embodiment, the network card sends a sideband signal of a gold finger to the complex programmable logic device through a reserved pin of the network card, and the sideband signal of the gold finger serves as a remote reset signal.

[0042] Specifically, the gold finger of the network card is connected to the complex programmable logic device using a reserved pin, and sends a sideband signal (Sideband signal) to the complex programmable logic device as a remote reset signal.

[0043] In one embodiment, the network card is a multi-channel network card, and there are multiple network cards. Each network card is connected to a complex programmable logic device, and each network card is also connected to multiple baseboard management controllers. The complex programmable logic device is connected to each baseboard management controller; the complex programmable logic device detects that the signal sent by the watchdog timer of any baseboard management controller is a non-square wave signal, and restarts any baseboard management controller; when the complex programmable logic device receives a remote reset signal sent by any network card, it identifies the baseboard management controller corresponding to the remote reset signal, identifies whether the corresponding baseboard management controller needs to be restarted, and if so, restarts the corresponding baseboard management controller. The gold fingers of each network card are inserted into the PCIE port of the adapter board, and the adapter board splits the PCIE bus into multiple PCIE lines through cables and connects each PCIE line to the PCIE port of the processor of each node server. The processor of each node server is connected to the corresponding baseboard management controller through the PCIE bus.

[0044] In one example, there are two network cards, and the gold fingers of the two network cards are inserted into the PCIE ports of the adapter board. The adapter board splits the PCIE X16 bus of each network card into two PCIE X8 lines through cables. Each PCIE X8 line is connected to the PCIE port of the processor of a node server.

[0045] In one example, any network card sends a sideband signal of a gold finger of any network card to a complex programmable logic device through a reserved pin of any network card, and the sideband signal of the gold finger of any network card serves as a remote reset signal sent by any network card.

[0046] Specifically, a control system of a baseboard management controller of a node server further includes a management switch, which is connected to a network card and is used to control the network card to send a remote reset signal.

[0047] Specifically, as shown in Figure 2, multiple network cards include PCIE network card 1 and PCIE network card 2, each of which is equipped with an IC master controller. PCIE network card 1 and PCIE network card 2 are both connected to a CPLD (Complex Programmable Logic Device) via their internal IC master controller. Both PCIE network card 1 and PCIE network card 2 have PCIE X16 bandwidth, which can be divided into two PCIE X8s. These two PCIE X8s are respectively connected to the processors of two different node servers. As shown in Figure 2, namely the CPU of Node 1 and the CPU of Node 2, one network card can manage two node servers.

[0048] The gold fingers of PCIE network card 1 and PCIE network card 2 are plugged into the standard PCIE ports on the adapter board. The adapter board uses cables to split the PCIE x16 into two PCIE x8 ports, which are connected to the CPU PCIE ports on two different nodes. The gold fingers of the two network cards use reserved pins to send the REMOTE_RST_BMC1 and REMOTE_RST_BMC2 signals to the CPLD, respectively. The REMOTE_RST_BMC1 and REMOTE_RST_BMC2 signals are sideband signals for the gold fingers of the two network cards and serve as corresponding remote reset signals. Both REMOTE_RST_BMC1 and REMOTE_RST_BMC2 signals are pulse signals, and a low level in the pulse signals indicates a valid remote reset signal.

[0049] The CPLD filters the REMOTE_RST_BMC1 signal and sends the FM_BMC1_RST_N signal to the BMC at node 1. It also filters the REMOTE_RST_BMC2 signal and sends the FM_BMC2_RST_N signal to the BMC at node 2. Specifically, the CPLD is connected to the external reset pins of the BMCs at node 1 and node 2, respectively. The BMC at node 1 receives the FM_BMC1_RST_N signal through the external reset pin, and the BMC at node 2 receives the FM_BMC2_RST_N signal through the external reset pin. The FM_BMC1_RST_N and FM_BMC2_RST_N signals are corresponding trigger signals, each of which is a low-level signal.

[0050] Node 1's BMC sends the BMC1_WDT signal, which is connected to the CPLD. This signal is generated by the watchdog timer within Node 1's BMC. When the BMC1_WDT signal continuously pulses as a square wave, the CPLD assumes that Node 1's BMC is functioning properly. When the BMC1_WDT signal remains low or high without changing, the CPLD assumes that Node 1's BMC is dead. Similarly, the same logic applies to Node 1's BMC.

[0051] When the CPLD detects that the BMC1_WDT signal is continuously a square wave pulse, it sets the internal flag flag_bmc1_alive to 1. When the CPLD detects that the BMC1_WDT signal is continuously low or high without changing, it clears the internal flag flag_bmc1_alive. The CPLD handles the BMC2_WDT signal in a similar manner.

[0052] As shown in Figure 2, when PCIE network card 1 sends the REMOTE_RST_BMC1 signal and it persists for a certain period, the CPLD detects it and first checks the value of the internal flag, flag_bmc1_alive. If flag_bmc1_alive is 1, the corresponding node 1 BMC does not restart. If flag_bmc1_alive is 0, the CPLD pulls down the FM_BMC1_RST_N signal corresponding to this node 1 BMC, which in turn pulls down the external reset pin of the corresponding node 1 BMC, restarting the node 1 BMC and resetting the device. This explains the information exchange process between PCIE network card 2 and the CPLD.

[0053] The control system for the baseboard management controller of the aforementioned node server does not use the PCIe network card's in-band or the BMC RJ45 network to remotely restart the baseboard management controller. Instead, it uses the PCIe network card's reserved pins outside the PCIe protocol specification as GPIO (general-purpose input / output) to issue a restart signal for the baseboard management controller. The GPIO signal is stable and reliable, and is not restricted by OS permissions or the baseboard management controller's operating status.

[0054] The CPLD uses the signal from the watchdog timer of the baseboard management controller as a filtering condition. When the signal from the watchdog timer is a square wave, the baseboard management controller is operating normally. Even if a restart signal is sent remotely, the baseboard management controller will not be restarted, ensuring that the baseboard management controller's operation is not interrupted. Only when the signal from the watchdog timer is not a square wave will the CPLD receive the remote restart signal and then pull down the external reset pin of the corresponding node baseboard management controller to restart the baseboard management controller.

[0055] This design relies on the existing hardware conditions of the server, that is, the server itself is equipped with a network card, a baseboard management controller, and a CPLD chip. Only by modifying the GPIO design can the remote control node server be restarted. No additional hardware consumption is required, which can reduce costs.

[0056] The control system of the baseboard management controller of a node server in the above embodiment has the following technical effects:

[0057] (1) Potential market:

[0058] BMC plays an important role in the server and is an indispensable component of the server. Therefore, this application has broad application prospects and huge market potential.

[0059] (2) Value of problem solving:

[0060] This application effectively solved the problem of remotely restarting the server BMC, greatly reducing the burden of operation and maintenance, reducing online work orders, and reducing manpower investment.

[0061] (3) Cost savings:

[0062] The application is based on existing hardware and does not require additional hardware investment, saving costs compared to other complex solutions.

[0063] (4) Advancedness:

[0064] This application uses the cooperation of conventional hardware such as network cards, BMC, CPLD, etc. to achieve remote restart of BMC, reduce server maintenance costs, and greatly enhance the competitiveness of server products.

[0065] (5) Innovation:

[0066] By leveraging the reserved PIN of the network card and combining the BMC and CPLD, the server BMC can be remotely restarted. This solution can be applied to single or multiple nodes. Compared with traditional solutions, it is more stable and applicable, and has certain innovations.

[0067] (6) Feasibility:

[0068] The solution mentioned in this application can be easily implemented through hardware wiring connection and the cooperation of BMC and CPLD.

[0069] The present application also provides a control method for a baseboard management controller of a node server, which is applied to the complex programmable logic device shown in Figure 1. As shown in Figure 3, a control method for a baseboard management controller of a node server includes the following steps:

[0070] S302 , detecting a signal sent by a watchdog timer of a baseboard management controller. If it is detected that the signal sent by the watchdog timer is a non-square wave signal, restarting the baseboard management controller.

[0071] In one example, after detecting the signal emitted by the watchdog timer of the baseboard management controller, the method further includes: if the signal emitted by the watchdog timer is detected to be a continuous low-level signal or a high-level signal, determining that the signal emitted by the watchdog timer is a non-square wave signal.

[0072] S304 , when receiving the remote reset signal of the baseboard management controller sent by the network card, identifying whether the baseboard management controller needs to be restarted, and if so, restarting the baseboard management controller.

[0073] In one example, restarting the baseboard management controller includes: sending a low-level signal to an external reset pin of the baseboard management controller to restart the baseboard management controller.

[0074] Among them, sending a low-level signal to the external reset pin of the baseboard management controller to restart the baseboard management controller includes: continuously sending a low-level signal to the external reset pin of the baseboard management controller within a set time period, so that the baseboard management controller restarts when detecting a continuous low-level signal within the set time period.

[0075] In one embodiment, before the above-mentioned identification of whether the baseboard management controller needs to be restarted, it also includes: if it is detected that the signal emitted by the watchdog timer is a non-square wave signal, the status flag of the baseboard management controller is set to the first flag; if it is detected that the signal emitted by the watchdog timer is a square wave signal, the status flag of the baseboard management controller is set to the second flag; when it is identified that the status flag of the baseboard management controller is the first flag, it is determined that the baseboard management controller needs to be restarted; when it is identified that the status flag of the baseboard management controller is the second flag, it is determined that the baseboard management controller does not need to be restarted.

[0076] Specifically, the node server's baseboard management controller (BMC) sends a BMC_WDT (watchdog timer, a component of the microcontroller) signal to the complex programmable logic device (CPLD). When this signal is a continuous square wave pulse, the CPLD assumes the BMC is functioning properly. If this signal remains low or high without changing, the CPLD assumes the BMC is dead and restarts it.

[0077] When the complex programmable logic device detects that the BMC_WDT signal is continuously a square wave, the internal flag flag_bmc_alive is set to 1, that is, the second flag is flag 1. At this time, even if the network card sends a remote reset signal to the baseboard management controller, the complex programmable logic device will not respond, that is, it will not pull down the external reset pin of the baseboard management controller, and the baseboard management controller will not restart.

[0078] When the CPLD detects that the BMC_WDT signal is non-square wave, that is, it remains at a low or high level without changing, it clears the internal flag flag_bmc_alive, that is, the first flag is flag bit 0. At this time, when the network card sends a remote reset signal to the baseboard management controller, the CPLD responds by pulling down the external reset pin of the baseboard management controller, restarting the baseboard management controller. Specifically, the CPLD sends a low pulse signal to the baseboard management controller for a certain duration, which is determined by the reset pin requirements of the baseboard management controller chip. That is, by pulling down the external reset pin of the baseboard management controller for a certain period of time, the baseboard management controller restarts and the device is reset.

[0079] Therefore, through complex programmable logic devices, it is possible to automatically detect fault problems of the baseboard management controller and automatically restart the baseboard management controller, and it is possible to receive a remote reset signal sent remotely through the network card and restart the baseboard management controller based on the remote reset signal and the status of whether the baseboard management controller needs to be restarted. In this way, when a problem occurs in the baseboard management controller of the node server, the baseboard control manager can be restarted, ensuring that the baseboard control manager can be remotely restarted when a fault occurs in the baseboard control manager.

[0080] In one embodiment, the complex programmable logic device is communicatively connected to a reserved pin of a network interface card, and the network interface card sends a remote reset signal to the complex programmable logic device via the reserved pin. The network interface card sends a pulse signal to the complex programmable logic device via the reserved pin, and a low-level signal in the pulse signal is the remote reset signal.

[0081] In one example, before the above step S304, the method further includes: receiving a pulse signal sent by the network card, filtering the pulse signal, and obtaining a low-level signal in the pulse signal.

[0082] Specifically, the network card's gold finger uses a reserved pin to send a pulse signal to the complex programmable logic device (CPLD). A low-level pulse signal is considered valid. This low-level pulse signal serves as the remote reset signal. The CPLD then filters the pulse signal to obtain a low-level pulse signal. Based on this low-level pulse signal, it issues the FM_BMC_RST_N signal, which is connected to the external reset pin of the baseboard management controller.

[0083] In one embodiment, as shown in FIG1 , the network card is also connected to the processor of the node server via a PCIE bus, and the processor of the node server is connected to the baseboard management controller via the PCIE bus; the network card executes IPMI instructions through the processor of the node server to restart the baseboard management controller.

[0084] In one embodiment, there are multiple baseboard management controllers and multiple network cards, and a complex programmable logic device is respectively connected to each baseboard management controller, and the complex programmable logic device is also respectively connected to each network card; if it is detected that the signal emitted by the watchdog timer is a non-square wave signal, the baseboard management controller is restarted, including: if it is detected that the signal emitted by the watchdog timer of any baseboard management controller is a non-square wave signal, any baseboard management controller is restarted; when a remote reset signal of the baseboard management controller sent by the network card is received, whether the baseboard management controller needs to be restarted is identified, and if so, the baseboard management controller is restarted, including: when a remote reset signal of the baseboard management controller is received from any network card, the baseboard management controller corresponding to the remote reset signal is identified, whether the corresponding baseboard management controller needs to be restarted is identified, and if so, the corresponding baseboard management controller is restarted.

[0085] The connection relationship between multiple baseboard management controllers and multiple network cards and complex programmable logic devices is shown in Figure 2. Specifically, two network cards and two baseboard management controllers are used as an example for explanation. As shown in Figure 4:

[0086] 1) After the entire system is powered on, the system's complex programmable logic device checks whether each network card has pulled the REMOTE_RST_BMC* signal low. If not, the system repeats this step. If any network card's REMOTE_RST_BMC* signal is pulled low, the system proceeds to the next step, step 3). The REMOTE_RST_BMC* signal refers to the remote reset signal sent by the corresponding network card.

[0087] 2) After the entire system is powered on, the system's complex programmable logic device simultaneously detects whether the BMC*_WDT signal emitted by the baseboard management controller of each node server is a square wave signal. If so, the internal flag flag_bmc*_alive corresponding to the baseboard management controller of the node server is set to 1 inside the complex programmable logic device; if not, the BMC*_WDT signal is high or low and does not change, then the flag flag_bmc*_alive corresponding to the internal flag of the baseboard management controller of the node server is cleared to 0 inside the complex programmable logic device. Among them, the BMC*_WDT signal refers to the signal emitted by the watchdog timer of the corresponding baseboard management controller.

[0088] 3) If step 1 detects that the REMOTE_RST_BMC* signal of any network card is pulled low, and the internal flag flag_bmc*_alive corresponding to the baseboard management controller of a node server is 0, the complex programmable logic device pulls down the corresponding FM_BMC*_RST signal of the node server for a certain period of time, and the baseboard management controller of the node server restarts, resets the device, and then returns to the beginning to continue detecting the REMOTE_RST_BMC* signal and BMC*_WDT signal. Among them, the FM_BMC*_RST signal refers to the trigger signal of the corresponding baseboard management controller, and is valid at a low level, that is, a low level triggers the baseboard management controller to restart.

[0089] 4) If step 1) detects that the REMOTE_RST_BMC* signal of any network card is pulled low, but the internal flag flag_bmc*_alive of a node server is 1, the complex programmable logic device will not pull low the FM_BMC*_RST signal corresponding to the node server, and the baseboard management controller of the node server will not restart, and then return to the beginning to continue detecting the REMOTE_RST_BMC* signal and BMC*_WDT signal.

[0090] The control method of the baseboard management controller of a node server of the above embodiment uses the reserved pin within the non-PCIE protocol specification of the network card to send a restart signal of the baseboard management controller to the system complex programmable logic device. The system complex programmable logic device uses the signal sent by the watchdog timer of the baseboard management controller as a locking condition. When the signal sent by the watchdog timer is a square wave signal, it indicates that the baseboard management controller is operating normally. Even if a signal to restart the baseboard management controller is sent remotely, the baseboard management controller will not be restarted, ensuring that the operation of the baseboard management controller will not be interrupted; only when the signal sent by the watchdog timer is not a square wave signal, the system complex programmable logic device will receive the remote reset signal, and then pull down the external reset pin of the complex programmable logic device of the corresponding node server to restart the baseboard management controller.

[0091] The control method of a baseboard management controller of a node server in the above embodiment has the following technical effects:

[0092] (1) Potential market:

[0093] BMC plays an important role in the server and is an indispensable component of the server. Therefore, this application has broad application prospects and huge market potential.

[0094] (2) Value of problem solving:

[0095] This application effectively solved the problem of remotely restarting the server BMC, greatly reducing the burden of operation and maintenance, reducing online work orders, and reducing manpower investment.

[0096] (3) Cost savings:

[0097] The application is based on existing hardware and does not require additional hardware investment, saving costs compared to other complex solutions.

[0098] (4) Advancedness:

[0099] This application uses the cooperation of conventional hardware such as network cards, BMC, CPLD, etc. to achieve remote restart of BMC, reduce server maintenance costs, and greatly enhance the competitiveness of server products.

[0100] (5) Innovation:

[0101] By leveraging the reserved PIN of the network card and combining the BMC and CPLD, the server BMC can be remotely restarted. This solution can be applied to single or multiple nodes. Compared with traditional solutions, it is more stable and applicable, and has certain innovations.

[0102] (6) Feasibility:

[0103] The solution mentioned in this application can be easily implemented through hardware wiring connection and the cooperation of BMC and CPLD.

[0104] It should be understood that, although the various steps in the flow chart are shown in sequence as indicated by the arrows, these steps are not necessarily performed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order restriction on the execution of these steps, and these steps may be performed in other orders. Moreover, at least a portion of the steps in the flow chart may include multiple sub-steps or multiple stages, and these sub-steps or stages are not necessarily performed at the same time, but may be performed at different times. The execution order of these sub-steps or stages is not necessarily to be performed in sequence, but may be performed in turn or alternately with other steps or at least a portion of the sub-steps or stages of other steps.

[0105] In one embodiment, a complex programmable logic device (CPLD) is provided. As shown in FIG5 , the CPLD is connected to a baseboard management controller (BMC) of a node server. The CPLD is also connected to a network interface card (NIC). The CPLD includes a storage unit, a processing unit, and computer-readable instructions stored in the storage unit and executable on the processing unit. When the computer-readable instructions in the storage unit are executed by the processing unit, a control method for a BMC of a node server of the present application is implemented.

[0106] Those skilled in the art will understand that the structure shown in FIG5 is merely a block diagram of a portion of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than shown in the figure, or combine certain components, or have a different arrangement of components.

[0107] In one embodiment, a complex programmable logic device is provided, which is connected to a baseboard management controller of a node server and is also connected to a network card. The complex programmable logic device is provided with a storage unit, a processing unit, and computer-readable instructions stored in the storage unit and executable on the processing unit. When the processing unit executes the computer-readable instructions, the following steps are implemented: detecting a signal emitted by a watchdog timer of the baseboard management controller, and restarting the baseboard management controller if the signal emitted by the watchdog timer is detected to be a non-square wave signal; and upon receiving a remote reset signal of the baseboard management controller sent by the network card, identifying whether the baseboard management controller needs to be restarted, and if so, restarting the baseboard management controller.

[0108] In one embodiment, when the processing unit executes the computer-readable instructions, it further implements the following steps: if it is detected that the signal emitted by the watchdog timer is a continuous low-level signal or a high-level signal, it is determined that the signal emitted by the watchdog timer is a non-square wave signal.

[0109] In one embodiment, when the processing unit executes the computer-readable instructions to implement the above-mentioned step of restarting the baseboard management controller, the following steps are specifically implemented: sending a low-level signal to the external reset pin of the baseboard management controller to restart the baseboard management controller.

[0110] In one embodiment, when the processing unit executes computer-readable instructions to implement the above-mentioned step of sending a low-level signal to the external reset pin of the baseboard management controller to restart the baseboard management controller, the following steps are specifically implemented: continuously sending a low-level signal to the external reset pin of the baseboard management controller within a set time period, so that the baseboard management controller restarts when it detects a continuous low-level signal within the set time period.

[0111] In one embodiment, the complex programmable logic device is communicatively connected to a reserved pin of the network card, and the network card sends a remote reset signal to the complex programmable logic device through the reserved pin.

[0112] In one embodiment, the network card sends a pulse signal to the complex programmable logic device through a reserved pin, and the low-level signal in the pulse signal is a remote reset signal.

[0113] In one embodiment, when the processing unit executes the computer-readable instructions, it further implements the following steps: receiving a pulse signal sent by the network card, filtering the pulse signal, and obtaining a low-level signal in the pulse signal.

[0114] In one embodiment, when the processing unit executes the computer-readable instructions, it further implements the following steps: if it is detected that the signal emitted by the watchdog timer is a non-square wave signal, the status flag of the baseboard management controller is set to the first flag; if it is detected that the signal emitted by the watchdog timer is a square wave signal, the status flag of the baseboard management controller is set to the second flag; when it is identified that the status flag of the baseboard management controller is the first flag, it is determined that the baseboard management controller needs to be restarted; when it is identified that the status flag of the baseboard management controller is the second flag, it is determined that the baseboard management controller does not need to be restarted.

[0115] In one embodiment, the network card is also connected to the processor of the node server via a PCIE bus, and the processor of the node server is connected to the baseboard management controller via the PCIE bus; the network card executes IPMI instructions through the processor of the node server to restart the baseboard management controller.

[0116] In one embodiment, there are multiple baseboard management controllers and multiple network cards, and a complex programmable logic device is connected to each baseboard management controller respectively, and the complex programmable logic device is also connected to each network card respectively; when the processing unit executes computer-readable instructions to implement the above-mentioned step of restarting the baseboard management controller if it is detected that the signal emitted by the watchdog timer is a non-square wave signal, the following steps are specifically implemented: if it is detected that the signal emitted by the watchdog timer of any baseboard management controller is a non-square wave signal, restart any baseboard management controller; when the processing unit executes computer-readable instructions to implement the above-mentioned step of identifying whether the baseboard management controller needs to be restarted when a remote reset signal of the baseboard management controller sent by the network card is received, and if so, restarting the baseboard management controller, the following steps are specifically implemented: when a remote reset signal sent by any network card is received, the baseboard management controller corresponding to the remote reset signal is identified, and whether the corresponding baseboard management controller needs to be restarted, and if so, restarting the corresponding baseboard management controller.

[0117] Those skilled in the art will understand that all or part of the processes in the above-mentioned embodiment methods can be implemented by instructing related hardware through computer-readable instructions, and the computer-readable instructions can be stored in a non-volatile computer-readable storage medium. When the computer-readable instructions are executed, they may include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application may include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0118] The technical features of the above embodiments can be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0119] The above embodiments merely illustrate several implementation methods of the present application. While the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the present invention. It should be noted that a person skilled in the art could make numerous variations and improvements without departing from the spirit of the present application, all of which fall within the scope of protection of the present application.

Claims

1. A control method for a baseboard management controller of a node server, characterized in that: The control method is applied to a complex programmable logic device, the complex programmable logic device is connected to the baseboard management controller, and the complex programmable logic device is also connected to a network card, and the method includes: detecting a signal sent by a watchdog timer of the baseboard management controller, and restarting the baseboard management controller in response to detecting that the signal sent by the watchdog timer is a non-square wave signal; In response to receiving a remote reset signal of the baseboard management controller sent by the network card, identifying whether the baseboard management controller needs to be restarted, and in response to identifying that the baseboard management controller needs to be restarted, restarting the baseboard management controller.

2. The control method according to claim 1, characterized in that: The method further comprises: In response to detecting that the signal emitted by the watchdog timer is a continuous low level signal or a high level signal, it is determined that the signal emitted by the watchdog timer is detected to be a non-square wave signal.

3. The control method according to claim 1, characterized in that: The restarting the baseboard management controller includes: sending a low level signal to an external reset pin of the baseboard management controller, so that the baseboard management controller is restarted.

4. The control method according to claim 3, characterized in that: The sending of a low level signal to an external reset pin of the baseboard management controller so as to restart the baseboard management controller includes: A low level signal is continuously sent to an external reset pin of the baseboard management controller within a set time period, so that the baseboard management controller restarts when a continuous low level signal is detected within the set time period.

5. The control method according to claim 1, characterized in that: The complex programmable logic device is communicatively connected with a reserved pin of the network card, and the network card sends the remote reset signal to the complex programmable logic device through the reserved pin.

6. The control method according to claim 5, characterized in that: The network card sends a pulse signal to the complex programmable logic device through the reserved pin, and the low-level signal in the pulse signal is the remote reset signal.

7. The control method according to claim 6, characterized in that: The method further comprises: The pulse signal sent by the network card is received, and the pulse signal is filtered to obtain a low-level signal in the pulse signal.

8. The control method according to claim 1, characterized in that: The method further comprises: In response to detecting that the signal sent by the watchdog timer is a non-square wave signal, setting the status flag of the baseboard management controller to a first flag; In response to detecting that the signal sent by the watchdog timer is a square wave signal, the status flag of the baseboard management controller is Bit is set to the second flag; In response to identifying that the status flag of the baseboard management controller is the first identification, determining that the baseboard management controller needs to be restarted; and In response to identifying that the status flag of the baseboard management controller is the second identification, it is determined that the baseboard management controller does not need to be restarted.

9. The control method according to claim 1, characterized in that: The network card is also connected to the processor of the node server through a PCIE bus, and the processor of the node server is connected to the baseboard management controller through a PCIE bus; the network card executes an IPMI instruction through the processor of the node server to restart the baseboard management controller.

10. The control method according to claim 1, characterized in that: There are multiple baseboard management controllers, there are multiple network cards, the complex programmable logic device is connected to each baseboard management controller respectively, and the complex programmable logic device is also connected to each network card respectively; The step of restarting the baseboard management controller in response to detecting that the signal sent by the watchdog timer is a non-square wave signal comprises: restarting any baseboard management controller in response to detecting that the signal sent by the watchdog timer of any baseboard management controller is a non-square wave signal; The step of identifying whether the baseboard management controller needs to be restarted in response to receiving a remote reset signal of the baseboard management controller sent by the network card, and restarting the baseboard management controller in response to identifying that the baseboard management controller needs to be restarted, comprises: in response to receiving a remote reset signal sent by any network card, identifying the baseboard management controller corresponding to the remote reset signal, identifying whether the corresponding baseboard management controller needs to be restarted, and restarting the corresponding baseboard management controller in response to identifying that the corresponding baseboard management controller needs to be restarted.

11. A complex programmable logic device, characterized in that: The complex programmable logic device is connected to the baseboard management controller of the node server, and the complex programmable logic device is also connected to the network card, wherein the complex programmable logic device is provided with a storage unit, a processing unit and computer-readable instructions stored in the storage unit and executable on the processing unit, and when the processing unit executes the computer-readable instructions, the steps of the method described in any one of claims 1 to 10 are implemented.

12. A control system of a baseboard management controller of a node server, characterized in that: The control system includes a complex programmable logic device and a network card, the network card is connected to the complex programmable logic device, and the complex programmable logic device is also connected to the baseboard management controller; wherein, The complex programmable logic device detects a signal sent by a watchdog timer of the baseboard management controller, and restarts the baseboard management controller in response to detecting that the signal sent by the watchdog timer is a non-square wave signal; When the complex programmable logic device receives the remote reset signal of the baseboard management controller sent by the network card, it identifies whether the baseboard management controller needs to be restarted, and restarts the baseboard management controller in response to identifying that the baseboard management controller needs to be restarted.

13. The control system according to claim 12, characterized in that: The network card is also connected to the processor of the node server, all PCIE links of the network card are connected to the PCIE port of the processor of the node server, and the processor of the node server is connected to the baseboard management controller through a PCIE bus; The network card executes an IPMI instruction through the processor of the node server to restart the baseboard management controller.

14. The control system according to claim 13, characterized in that: The gold finger of the network card is connected to the PCIE port of the node server, and the PCIE bus of the node server is connected to the PCIE port of the processor of the node server.

15. The control system according to claim 14, characterized in that: The network card sends the sideband signal of the gold finger to the complex programmable logic device through the reserved pin of the network card, and the sideband signal of the gold finger serves as the remote reset signal.

16. The control system according to claim 12, characterized in that: The network card is a multi-channel network card, there are multiple network cards, each network card is connected to the complex programmable logic device, each network card is also connected to multiple baseboard management controllers, and the complex programmable logic device is connected to each baseboard management controller; The complex programmable logic device detects that the signal sent by the watchdog timer of any baseboard management controller is a non-square wave signal, and restarts any baseboard management controller; When the complex programmable logic device receives a remote reset signal sent by any network card, it identifies the baseboard management controller corresponding to the remote reset signal, identifies whether the corresponding baseboard management controller needs to be restarted, and restarts the corresponding baseboard management controller in response to identifying that the baseboard management controller needs to be restarted.

17. The control system according to claim 16, characterized in that: The gold fingers of each network card are inserted into the PCIE port of the adapter board. The adapter board splits the PCIE bus into multiple PCIE lines through cables and connects them to the PCIE port of the processor of each node server through each PCIE line. The processor of each node server is connected to the corresponding baseboard management controller through the PCIE bus.

18. The control system according to claim 17, characterized in that: There are two network cards, and the gold fingers of the two network cards are inserted into the PCIE ports of the adapter board. The adapter board splits the PCIE X16 bus of each network card into two PCIE X8 lines through cables, and each PCIE X8 line is connected to the PCIE port of the processor of a node server respectively.

19. The control system according to claim 17, characterized in that: Any network card sends a sideband signal of the gold finger of any network card to the complex programmable logic device through the reserved pin of any network card, and the sideband signal of the gold finger of any network card serves as a remote reset signal sent by any network card.

20. The control system according to claim 12, characterized in that: The control system further comprises a management switch, the management switch is connected to the network card, and the management switch is used to control the network card to send the remote reset signal.

Citation Information

Patent Citations

  • Service method and system, mainboard and computer readable storage medium

    CN109656739A

  • Method for remote system recovery

    CN110032462A

  • Clock output configuration device and method

    CN115097900A

  • Method and system for remotely resetting BMC chip, storage medium and equipment

    CN115145381A

  • Control method and system of baseboard management controller of node server

    CN116820827A

Cited By

  • Baseboard management controller platform identification method, product, equipment and medium

    CN120561757A