Server backboard lamp control method, complex programmable logic device and server
By using complex programmable logic devices and independent transmission channels of the substrate management controller in the server, the problem of manual instructions being automatically overwritten is solved, and troubleshooting efficiency and indication reliability are improved.
Patent Information
- Application Number
- CN202510885235.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-30
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2045-06-30
AI Technical Summary
During the server operation and maintenance process, the backplane fault light instructions manually triggered by the operation and maintenance personnel are easily overwritten by the automatic instructions of the substrate management controller, resulting in low troubleshooting efficiency.
The complex programmable logic device (CPLD) is used to connect to the substrate management controller (BMC), and manual and automatic light control instructions are transmitted through two independent transmission channels. The state machine determines priority to avoid instruction conflicts and prioritizes manual instructions when necessary.
It improves the efficiency of troubleshooting of operation and maintenance personnel, ensures that the manually triggered light status is not overwritten by the automatic extinguishing command, and the fault indication is continuously reliable.
Smart Images

Figure CN120371657A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of servers, and in particular, to a complex programmable logic device for a server backplane, a server, and a method for controlling a fault light of a server backplane. Background Art
[0002] In the design of a server backplane, a backplane fault light is usually used to indicate hard disk fault information. The control of the fault light depends on the collaborative work of the BMC (Baseboard Management Controller) and the CPLD (Complex Programming Logic Device). The baseboard management controller periodically polls the hard disk status and sends an automatic light-on instruction or an automatic light-off instruction to the CPLD of the backplane according to the hard disk fault detection result. The CPLD lights on or off the fault light according to the received light control instruction.
[0003] During the operation and maintenance of the server, the operation and maintenance personnel trigger the backplane fault light through a manual instruction to mark the hard disk with a fault found by manual troubleshooting. However, the manual light control instruction issued by the operation and maintenance personnel will be overwritten by the automatic light control instruction polled by the baseboard management controller. For example, the manual light-on instruction of the operation and maintenance personnel will be overwritten by the automatic light-off instruction issued by the baseboard management controller, resulting in the accidental extinguishing of the fault light manually triggered by the operation and maintenance personnel, forcing a secondary troubleshooting verification of the fault, and causing a decrease in the fault troubleshooting efficiency during the operation and maintenance of the server hard disk. Summary of the Invention
[0004] This application provides a complex programmable logic device for a server backplane, a server, and a method for controlling a fault light of a server backplane, so as to at least solve the problem that the manual light-on instruction is overwritten by the automatic light-off instruction in the related art, and the low fault troubleshooting efficiency during the operation and maintenance of the server hard disk.
[0005] This application provides a complex programmable logic device for a server backplane. The complex programmable logic device is respectively connected to a baseboard management controller and a backplane fault light, and includes a state machine, a register, and a first interface and a second interface for receiving a light control instruction from the baseboard management controller.
[0006] The light control instruction includes a manual light-on instruction or a manual light-off instruction representing the result of manual fault troubleshooting transmitted to the first interface, or an automatic light-on instruction or an automatic light-off instruction representing the result of fault troubleshooting polled by the baseboard management controller transmitted to the second interface.
[0007] The state machine is used to receive the current lamp control instruction from the first interface or the second interface. When the current lamp control instruction is an automatic lamp-off instruction indicating that there is no fault in the server hard disk, and the historical lamp control instruction during the execution of the backplane fault lamp is a manual lamp-on instruction indicating that there is a fault in the server hard disk, the manual lamp-on instruction is determined as the target lamp control instruction.
[0008] The register is used to control the backplane fault lamp according to the target lamp control instruction from the state machine.
[0009] This application also provides a server, which includes an artificial instruction tool, a baseboard management controller, a backplane fault lamp, and any one of the above complex programmable logic devices.
[0010] Between the baseboard management controller and the complex programmable logic device, there are a first transmission channel and a second transmission channel corresponding to the first interface and the second interface respectively.
[0011] The backplane fault lamp is used to indicate the fault condition of the server hard disk.
[0012] The artificial instruction tool is used for the operation and maintenance personnel to issue a manual lamp-on instruction or a manual lamp-off instruction according to the result of manual detection and fault troubleshooting.
[0013] The baseboard management controller is used to generate an automatic lamp-on instruction or an automatic lamp-off instruction according to the result of automatic polling for detecting hard disk faults, and transmit the automatic lamp-on instruction or the automatic lamp-off instruction to the complex programmable logic device through the second transmission channel; receive the manual lamp-on instruction or the manual lamp-off instruction from the artificial instruction tool, and transmit the manual lamp-on instruction or the manual lamp-off instruction to the complex programmable logic device through the first transmission channel.
[0014] This application also provides a method for controlling the backplane lamp of a server, which is applied to the above complex programmable logic device. The method includes: receiving the current lamp control instruction from the first interface or the second interface; when the current lamp control instruction is an automatic lamp-off instruction indicating that there is no fault in the server hard disk, and the historical lamp control instruction during the execution of the backplane fault lamp is a manual lamp-on instruction indicating that there is a fault in the server hard disk, determining the manual lamp-on instruction as the target lamp control instruction; controlling the backplane fault lamp according to the target lamp control instruction.
[0015] Through this application, a complex programmable logic device includes a first interface for transmitting a manual lamp control instruction and a second interface for transmitting an automatic lamp control instruction. The manual lamp control instruction and the automatic lamp control instruction are transmitted through two independent transmission channels, achieving signal isolation between the manual lamp control instruction and the automatic lamp control instruction, and avoiding the situation of transmission conflicts between the two types of instructions at the physical level. Moreover, the state machine in the complex programmable logic device is used to determine the manual lighting instruction as the target lamp control instruction when the current lamp control instruction is an automatic lamp-off instruction and the historical lamp control instruction is a manual lighting instruction, and the register controls the backplane fault lamp according to the target lamp control instruction, which can prevent the manual lighting instruction triggered by the operation and maintenance personnel from being overwritten by the automatic lamp-off instruction issued by the baseboard management controller according to the reset mechanism, and avoid the situation that the manually triggered lighting state is forcibly changed by the automatic lamp-off instruction, improving the efficiency of fault troubleshooting for the operation and maintenance personnel. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] To more clearly illustrate the embodiments of the present application, the following will briefly introduce the drawings required in the embodiments. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0017] Figure 1 Schematic diagram of a server structure provided by an embodiment of the present application; Figure 2 Schematic diagram of a server structure including a non-volatile storage unit provided by an embodiment of the present application; Figure 3 Schematic diagram of a server structure including a manual instruction tool provided by an embodiment of the present application; Figure 4 Flow chart of a method for controlling the backplane lamp of a server provided by an embodiment of the present application; Figure 5 Flow chart of a method for receiving the current lamp control instruction provided by an embodiment of the present application; Figure 6 Schematic diagram of the lighting state switching logic provided by an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0018] The following will clearly and completely describe the technical solutions in the embodiments of the present application with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some embodiments of the present application, rather than all embodiments. Based on the embodiments of the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the protection scope of the present application.
[0019] It should be noted that in the description of this application, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements but also includes other elements not explicitly listed, or further includes elements inherent to such process, method, article or device. The terms "first", "second", etc. in this application are used to distinguish similar objects and not to describe a specific order or sequence.
[0020] To enable those skilled in the art of this technology to better understand the solution of this application, the following further detailed description of this application will be given in conjunction with the accompanying drawings and specific embodiments.
[0021] An embodiment of this application provides a complex programmable logic device for a server backplane, such as Figure 1 As shown, the server 100 includes a complex programmable logic device 110, a baseboard management controller 120, and a backplane fault light 130. Among them, the complex programmable logic device 110 is respectively connected to the baseboard management controller 120 and the backplane fault light 130. The complex programmable logic device 110 includes a state machine 111, a register 112, and a first interface 113 and a second interface 114.
[0022] Among them, the first interface 113 and the second interface 114 are used to receive the lamp control instructions from the baseboard management controller.
[0023] The lamp control instructions include a manual lighting instruction or a manual extinguishing instruction representing the result of manual fault troubleshooting transmitted to the first interface 113, or an automatic lighting instruction or an automatic extinguishing instruction representing the result of polling fault troubleshooting by the baseboard management controller 120 transmitted to the second interface 114. That is, the lamp control instructions include manual lamp control instructions and automatic lamp control instructions. The manual lamp control instructions include a manual lighting instruction and a manual extinguishing instruction. The automatic lamp control instructions include an automatic lighting instruction and an automatic extinguishing instruction. The manual lamp control instructions are generated by the operation and maintenance personnel according to the result of manual fault troubleshooting and are transmitted to the backplane complex programmable logic device 110 through the baseboard management controller 120. The automatic lamp control instructions are generated by the baseboard management controller 120 polling the hard disk health status parameters at a preset period according to the result of polling fault troubleshooting. In some examples, the automatic extinguishing instruction may be a reset instruction sent by the baseboard management controller 120 when the hard disk health status parameters are all within the normal threshold range.
[0024] The state machine 111 is used to receive the current lamp control instruction from the first interface 113 or the second interface 114. When the current lamp control instruction is an automatic lamp-off instruction indicating that there is no fault in the server hard disk, and the historical lamp control instruction being executed by the backplane fault lamp 130 is a manual lamp-on instruction indicating that there is a fault in the server hard disk, the manual lamp-on instruction is determined as the target lamp control instruction.
[0025] Among them, the complex programmable logic device 110 establishes a communication connection with the baseboard management controller 120 through the first interface 113 and the second interface 114, respectively forming a first transmission channel and a second transmission channel. Correspondingly, the first transmission channel is used to transmit the manual lamp-on instruction and the manual lamp-off instruction, and the second transmission channel is used to transmit the automatic lamp-on instruction and the automatic lamp-off instruction. In some examples, the first transmission channel and the second transmission channel can be physical channels through which signals can be transmitted between the baseboard management controller 120 and the complex programmable logic device 110, and can be either unidirectional channels or bidirectional channels.
[0026] Specifically, the state machine 111 determines the target lamp control instruction based on a preset lamp control priority, and takes the instruction with a higher priority as the target lamp control instruction. In the preset lamp control priority, the lamp control priority of the automatic lamp-off instruction is lower than that of the manual lamp-on instruction.
[0027] The register 112 is used to control the backplane fault lamp 130 according to the target lamp control instruction from the state machine 111.
[0028] In the related art, there is only one channel for transmitting the lamp control instruction between the baseboard management controller 120 and the backplane control unit, which may lead to conflicts between the manual lamp control instruction and the automatic lamp control instruction during the transmission stage. In the above complex programmable logic device 110, the first interface 113 for transmitting the manual lamp control instruction and the second interface 114 for transmitting the automatic lamp control instruction are included, and the manual lamp control instruction and the automatic lamp control instruction are transmitted through two independent transmission channels, realizing signal isolation between the manual lamp control instruction and the automatic lamp control instruction, and avoiding the situation of transmission conflicts between the two types of instructions from the physical level. And the state machine 111 in the complex programmable logic device 110 is used to determine the manual lamp-on instruction as the target lamp control instruction when the current lamp control instruction is an automatic lamp-off instruction and the historical lamp control instruction is a manual lamp-on instruction, and the register 112 controls the backplane fault lamp 130 according to the target lamp control instruction, which can prevent the manual lamp-on instruction manually triggered by the operation and maintenance personnel from being overwritten by the automatic lamp-off instruction sent by the baseboard management controller 120 according to the reset mechanism, and avoid the situation that the manually triggered lamp-on state is forcibly changed by the automatic lamp-off instruction, improving the efficiency of fault troubleshooting by the operation and maintenance personnel.
[0029] In some embodiments, such as Figure 2As shown, the complex programmable logic device 110 in the server 200 further includes a non-volatile storage unit 210, which is used to receive and store the target lamp control instruction.
[0030] In some examples, the non-volatile storage unit 210 can be an EEPROM (Electrically Erasable Programmable Read Only Memory, a type of electrically erasable programmable read-only memory).
[0031] The non-volatile storage unit can be used to store the target control instruction, and can automatically restore the last instruction state after the system power-off or restart, avoiding the loss of the fault lamp instruction during execution, and ensuring state persistence.
[0032] In some embodiments, the complex programmable logic device 110 provided in this application further includes a state monitoring unit (not shown in the figure) for monitoring the operating state of the baseboard management controller 120.
[0033] Specifically, the state monitoring unit can be implemented by a monitoring circuit scheme. In some specific examples, a watchdog circuit can be used to judge the operating state of the baseboard management controller 120 by monitoring the voltage value. The state monitoring unit can also be monitored by adding sensors, and sensor data such as temperature, voltage, and intensity can be obtained through the sensor data to judge whether there is an abnormality in the operating state of the baseboard management controller 120. It can also be monitored and judged by obtaining the hardware communication error log. The specific monitoring method is not limited here, and those skilled in the art can set it according to actual needs.
[0034] The register 112 is also used to control the backplane fault lamp 130 according to the last executed lamp control instruction recorded in the non-volatile storage unit when the operating state indicates an abnormality.
[0035] By storing the target lamp control instruction executed by the backplane fault lamp 130 in the non-volatile storage unit and monitoring the operating state of the baseboard management controller 120, it is possible to continue to execute the last executed lamp control instruction when the baseboard management controller 120 loses power or has other abnormal interruptions, ensuring the continuous reliability of the fault indication of the backplane fault lamp 130.
[0036] In some embodiments, the state monitoring unit is also used to monitor the communication states of the first interface 113 and the second interface 114.
[0037] The register 112 is also used to control the backplane fault lamp 130 according to the last executed lamp control instruction recorded in the non-volatile storage unit when the communication state indicates a communication interruption.
[0038] By storing the target lamp control instruction executed by the backplane fault lamp 130 in a non-volatile storage unit and monitoring the communication status of the interface, when the communication of the transmission channel formed by the interface is abnormally interrupted, the last executed lamp control instruction can be continuously executed, ensuring the continuous reliability of the fault indication of the backplane fault lamp 130.
[0039] In the related art, when a firmware-level fault occurs in the baseboard management controller 120 of the server motherboard or the communication of the complex programmable logic device 110 is interrupted, the system cannot maintain the fault indication state due to relying on the volatile register 112, resulting in a hardware diagnosis vacuum. In the embodiments provided in the present application, by setting a non-volatile storage unit and storing the target lamp control instruction executed by the backplane fault lamp 130 in the non-volatile storage unit, when it is detected that the operating state of the baseboard management controller 120 is abnormal or the communication state of the complex programmable logic device 110 is interrupted, the control instruction last executed by the backplane fault lamp 130 recorded in the non-volatile storage unit can be obtained, enabling the backplane fault lamp 130 to continue to maintain the lit state, ensuring the continuity and reliability of the error indication.
[0040] In some embodiments, the state machine 111 is further configured to determine the current lamp control instruction as the target lamp control instruction when both the current lamp control instruction and the historical lamp control instruction come from the first interface or both come from the second interface.
[0041] Specifically, both the current lamp control instruction and the historical lamp control instruction come from the first interface, that is, both are manual lamp control instructions, or both come from the second interface, that is, both are automatic lamp control instructions. In some examples, the manual lamp control instruction is an IPMI (Intelligent Platform Management Interface) instruction, and the automatic lamp control instruction is an instruction generated by the baseboard management controller 120 according to the polling detection result.
[0042] Specifically, when both the current lamp control instruction and the historical lamp control instruction are manual lamp control instructions or both are automatic lamp control instructions, the same type of lamp control instructions can be directly switched, that is, the backplane fault lamp 130 is controlled according to the current lamp control instruction. For example, when the current lamp control instruction is a manual lamp-off instruction and the historical lamp control instruction is a manual lamp-on instruction, controlling the backplane fault lamp 130 to execute the manual lamp-off instruction, the backplane fault lamp 130 switches from the manual lamp-on state to the manual lamp-off state. Another example is when the current lamp control instruction is an automatic lamp-on instruction and the historical lamp control instruction is an automatic lamp-off instruction, the state machine 111 determines the automatic lamp-on instruction as the target lamp control instruction, that is, the backplane fault lamp 130 switches from the automatic lamp-off state to the automatic lamp-on state.
[0043] In some specific embodiments, the manual lamp control instruction may be an IPMI instruction sent by an operation and maintenance personnel through an IPMI command line tool. The IPMI instruction may be defined by a preset hard disk lighting instruction code. In some specific examples, the hard disk lighting instruction code may include first byte information indicating the backplane type, second byte information indicating the hard disk number, third byte information indicating the instruction control type, and fourth byte information used to represent the control state.
[0044] Among them, the first byte information may include: 0x00, 0x01, and 0x02, which respectively represent the front backplane, the middle backplane, and the rear backplane. The second byte information may include 0x01, 0x02, and 0x03, which respectively represent the first slot, the second slot, and the third slot. The third byte information may include 0x01, indicating the fault indicator light. In the fourth byte information, 0x00 indicates turning off the fault light, and 0x01 indicates turning on the fault light.
[0045] In some specific embodiments, the automatic lamp control instruction may be that the baseboard management controller 120 polls the hard disk health status through the SMBus system management bus at a preset period. The preset period may be 5 seconds, 10 seconds, 15 seconds, or other interval durations. By collecting key parameters such as the original value of SMART (Self-Monitoring Analysis and Reporting Technology, a hard disk self-monitoring analysis and reporting technology) attributes, the temperature sensor threshold, and the media error count, it is determined whether it is within the normal threshold range, and accordingly, an automatic lamp-off instruction indicating no fault and an automatic lamp-on instruction indicating a fault are generated.
[0046] In some embodiments, the state machine 111 is further configured to determine the current lamp control instruction as the target lamp control instruction when the current lamp control instruction is an automatic lamp-on instruction and the historical lamp control instruction is a manual lamp-on instruction or a manual lamp-off instruction.
[0047] Specifically, the priority of the automatic lamp-on instruction is higher than that of the manual lamp control instruction, and the state machine 111 is configured to determine the automatic lamp-on instruction as the target lamp control instruction.
[0048] In some embodiments, the state machine 111 is further configured to determine the current lamp control instruction as the target lamp control instruction when the current lamp control instruction is a manual lamp-on instruction or an automatic lamp-on instruction and the historical lamp control instruction is an automatic lamp-off instruction or a manual lamp-off instruction.
[0049] In some embodiments, the state machine 111 is further configured to, when receiving a first lamp control instruction and a second lamp control instruction from different interfaces simultaneously, determine the instruction with a higher priority as a candidate lamp control instruction according to preset priority information, where the priority of the lighting instruction is higher than that of the extinguishing instruction, and use the candidate lamp control instruction as the current lamp control instruction.
[0050] When receiving lamp control instructions from different channels simultaneously, determining the target lamp control instruction according to the preset priority information solves the problem of instruction conflict. Determining the instruction with a higher priority as the target lamp control instruction can ensure that the lighting instruction is successfully executed and avoid the situation where the manual lighting instruction is overwritten by the automatic extinguishing instruction.
[0051] In some embodiments, the first interface 113 and the second interface 114 are integrated circuit bus interfaces. For example, it can be an I2C (Inter-Integrated Circuit, a serial communication bus) interface.
[0052] An embodiment of the present application provides a server, as Figure 3 shown, the server 300 includes an artificial instruction tool 310, a baseboard management controller 120, a backplane fault lamp 130, and the complex programmable logic device 110 involved in any of the above embodiments. Between the baseboard management controller 120 and the complex programmable logic device 110, there are a first transmission channel 302 and a second transmission channel 304 corresponding to the first interface 113 and the second interface 114 respectively.
[0053] The artificial instruction tool is used for the operation and maintenance personnel to issue a manual lighting instruction or a manual extinguishing instruction according to the results of manual detection and fault troubleshooting.
[0054] The backplane fault lamp 130 is used to indicate the hard disk fault situation of the server. In some examples, the fault situation can be indicated according to the lighting state and / or the lighting color.
[0055] The baseboard management controller 120 is configured to generate an automatic lighting instruction or an automatic extinguishing instruction according to the results of automatic polling detection of hard disk faults, and transmit the automatic lighting instruction or the automatic extinguishing instruction to the complex programmable logic device 110 through the second transmission channel. Receive a manual lighting instruction or a manual extinguishing instruction from the artificial instruction tool, and transmit the manual lighting instruction or the manual extinguishing instruction to the complex programmable logic device 110 through the first transmission channel.
[0056] In some specific embodiments, the artificial instruction tool 310 can be an IPMI command line tool. Correspondingly, the manual lamp control instruction is an IPMI instruction.
[0057] In some specific embodiments, the manual light control instruction is determined according to the IPMI hard disk light control instruction code. The operation and maintenance personnel can manually trigger the manual light-on instruction and the manual light-off instruction through the pre-defined IPMI hard disk light control instruction code. In some examples, when it is necessary to manually trigger the error indicator light of slot 1 on the front backplane, the complete IPMI instruction can be: "ipmi tool raw 0x3C 0x50 0x00 0x01 0x01 0x01".
[0058] In some embodiments, the server further includes a non-volatile storage unit and a status monitoring circuit.
[0059] The non-volatile storage unit is used to record the last executed light control instruction of the backplane fault light 130 of the server.
[0060] The status monitoring circuit is used to monitor the communication status of the first channel and the second channel.
[0061] The backplane control unit is further configured to obtain the last executed light control instruction recorded in the non-volatile storage unit when the communication status indicates a communication interruption, and control the backplane fault light 130 to continue to execute the last executed light control instruction.
[0062] In some embodiments, the status monitoring circuit is further used to monitor the operating status of the baseboard management controller 120 of the server motherboard.
[0063] The backplane control unit is further configured to obtain the last executed light control instruction recorded in the non-volatile storage unit when the operating status indicates an abnormality, and control the backplane fault light 130 to continue to execute the last executed light control instruction.
[0064] In some embodiments, the baseboard management controller 120 is installed on the server motherboard, the complex programmable logic device 110, the hard disk, and the backplane fault light 130 are all installed on the backplane, and the server motherboard and the backplane can be connected through the SFF-8643 interface, and the slot number of the hard disk is aligned with the silk screen identification.
[0065] An embodiment of the present application provides a method for controlling the backplane lights of a server, and this method is applied to the complex programmable logic device 110 in the above embodiment, as Figure 4 shown, the backplane light control method may include steps S401 to S403. The following describes each step.
[0066] Step S401: Receive the current light control instruction from the first interface 113 or the second interface 114.
[0067] Step S402: When the current lamp control instruction is an automatic lamp-off instruction indicating no server hard disk failure, and the historical lamp control instruction being executed by the backplane fault lamp 130 is a manual lamp-on instruction indicating server hard disk failure, determine the manual lamp-on instruction as the target lamp control instruction.
[0068] Step S403: Control the backplane fault lamp 130 according to the target lamp control instruction.
[0069] Specifically, the current lamp control instruction received by the complex programmable logic device 110 is a manual lamp-on instruction, a manual lamp-off instruction, an automatic lamp-on instruction, or an automatic lamp-off instruction. The relevant explanations of the lamp control instruction are elaborated above and will not be repeated here.
[0070] The historical lamp control instruction being executed by the backplane fault lamp 130 can be obtained by the complex programmable logic device 110 from its built-in or external storage device for the lamp control instruction currently being executed by the backplane fault lamp 130.
[0071] Specifically, when the backplane fault lamp 130 is executing a manual lamp-on instruction generated by the operation and maintenance personnel according to the results of manual troubleshooting, if the complex programmable logic device 110 receives an automatic lamp-off instruction from the second channel, and the lamp control priority of this automatic lamp-off instruction is lower than that of the manual lamp-on instruction, the complex programmable logic device 110 determines the manual lamp-on instruction as the target lamp control instruction to control the backplane fault lamp 130 to execute this target lamp control instruction and remain lit.
[0072] In some examples, the complex programmable logic device 110 can control the backplane fault lamp 130 through the register 112 mapping method. For example, it can be achieved by accessing a specific memory address or I / O (Input / Output) port and writing a predefined bit pattern (such as 0x01 = lamp on, 0x00 = lamp off). The method for the complex programmable logic device 110 to control the backplane fault lamp 130 to execute the lamp control instruction is not limited here, and those skilled in the art can set it according to actual needs.
[0073] In some embodiments, the backplane lamp control method further includes the step of storing the target lamp control instruction in a non-volatile storage unit.
[0074] In some embodiments, the backplane lamp control method further includes the steps of monitoring the operating state of the baseboard management controller 120 of the server motherboard, and when the operating state indicates an abnormality, obtaining the last executed lamp control instruction recorded in the non-volatile storage unit and controlling the backplane fault lamp 130 to continue executing the last executed lamp control instruction.
[0075] In some embodiments, the backplane light control method further includes the steps of: monitoring the communication status of the first interface 113 and the second interface 114, and when the communication status indicates a communication interruption, obtaining the last executed light control instruction recorded in the non-volatile storage unit, and controlling the backplane fault light 130 to continue to execute the last executed light control instruction.
[0076] By storing the light control instruction executed by the backplane fault light 130 in the non-volatile storage unit, the last instruction state can be automatically restored after the system is powered off or restarted, avoiding the loss of the fault light instruction during execution and ensuring state persistence.
[0077] In some specific embodiments, the server backplane fault light control method may further include the following steps: establishing a historical instruction log according to the light control instruction recorded in the non-volatile storage unit for analyzing the triggering rule of the backplane fault light 130 for the operation and maintenance personnel to check.
[0078] In some specific embodiments, storing the light control instruction executed by the backplane fault light 130 in the non-volatile storage unit includes: storing the light control instruction, timestamp, and instruction type executed by the backplane fault light 130 in the non-volatile storage unit. Correspondingly, the server backplane fault light control method may further include the following steps: generating a server hard disk fault analysis report according to the light control instruction recorded in the non-volatile storage unit for the operation and maintenance personnel to refer to.
[0079] In some embodiments, as Figure 5 shown, step S401 may include step S501 and step S502.
[0080] Step S501: When receiving the first light control instruction and the second light control instruction from different channels simultaneously, determining the instruction with a higher priority as the candidate light control instruction according to the preset priority information, where the priority of the lighting instruction is higher than that of the extinguishing instruction; Step S502: Using the candidate light control instruction as the current light control instruction.
[0081] Among them, the priority of the lighting instruction is higher than that of the extinguishing instruction. For example, when the first light control instruction is a manual extinguishing instruction and the second light control instruction is an automatic lighting instruction, the priority of the automatic lighting instruction is higher than that of the manual extinguishing instruction, so the second light control instruction is the target light control instruction.
[0082] In some embodiments, the priorities of the automatic lighting instruction, the manual lighting instruction, the manual extinguishing instruction, and the automatic extinguishing instruction decrease in sequence. For example, when the first light control instruction is a manual lighting instruction and the second light control instruction is an automatic extinguishing instruction, since the priority of the manual lighting instruction is higher than that of the automatic extinguishing instruction, the manual lighting instruction is the candidate light control instruction and thus the current light control instruction.
[0083] When receiving lighting control instructions from different channels simultaneously, determine the target lighting control instruction according to the preset priority information, which solves the problem of instruction conflict. Determining the instruction with a higher priority as the target lighting control instruction can ensure that the lighting instruction is successfully executed and avoid the situation where the manual lighting instruction is overwritten by the automatic lighting-off instruction.
[0084] In some embodiments, the server backplane fault light control method further includes the following steps: when both the current lighting control instruction and the historical lighting control instruction are manual lighting control instructions or both are automatic lighting control instructions, control the backplane fault light 130 to continue executing the current lighting control instruction.
[0085] Specifically, when both the current lighting control instruction and the historical lighting control instruction are manual lighting control instructions or both are automatic lighting control instructions, the same type of lighting control instructions can be directly switched, that is, control the backplane fault light 130 according to the current lighting control instruction. For example, when the current lighting control instruction is a manual lighting-off instruction and the historical lighting control instruction is a manual lighting-on instruction, control the backplane fault light 130 to execute the manual lighting-off instruction, then the backplane fault light 130 switches from the manual lighting-on state to the manual lighting-off state. Another example, when the current lighting control instruction is an automatic lighting-on instruction and the historical lighting control instruction is an automatic lighting-off instruction, control the backplane fault light 130 to execute the automatic lighting-on instruction, then the backplane fault light 130 switches from the automatic lighting-off state to the automatic lighting-on state.
[0086] In some embodiments, the server backplane fault light control method further includes the following steps: when the current lighting control instruction is an automatic lighting-on instruction and the historical lighting control instruction is a manual lighting control instruction, control the backplane fault light 130 to execute the current lighting control instruction.
[0087] Specifically, the priority of the automatic lighting-on instruction is higher than that of the manual lighting control instruction, and the complex programmable logic device 110 can control the backplane fault light 130 to light up automatically according to the automatic lighting-on instruction.
[0088] In some embodiments, the server backplane fault light control method further includes the following steps: when the current lighting control instruction is a manual lighting-on instruction or an automatic lighting-on instruction, and the historical lighting control instruction is an automatic lighting-off instruction or a manual lighting-off instruction, control the backplane fault light 130 to execute the current lighting control instruction.
[0089] Specifically, the priority of the lighting-on instruction is higher than that of the lighting-off instruction. When the historical lighting control instruction currently executed by the backplane fault light 130 is an automatic lighting-off instruction or a manual lighting-off instruction, and the current lighting control instruction is a manual lighting-on instruction or an automatic lighting-on instruction, the complex programmable logic device 110 can control the backplane fault light 130 to light up according to the lighting-on instruction.
[0090] In some embodiments, the backplane fault light 130 has multiple lighting states corresponding to respective lighting control instructions, and each lighting state corresponds to various scenarios. The specific correspondence between the instructions and the lighting states is shown in Table 1.
[0091] Table 1:
[0092] When the lighting state is automatic lighting or manual lighting, the backplane fault light 130 performs the action of continuously lighting the red light. When the lighting state is manual extinguishing or automatic extinguishing, the backplane fault light 130 performs the action of extinguishing the red light.
[0093] As shown in Table 1, each lighting control instruction corresponds to a specific scenario. In some examples, when the baseboard management controller 120 polls and detects a hard disk failure, the complex programmable logic device 110 receives an automatic lighting instruction from the baseboard management controller 120 and lights up the backplane fault light 130. When the baseboard management controller 120 polls and detects that the hard disk is normal, the complex programmable logic device 110 receives an automatic extinguishing instruction from the baseboard management controller 120 and extinguishes the backplane fault light 130. When the operation and maintenance personnel mark a faulty hard disk through IPMI instructions, the complex programmable logic device 110 receives a manual lighting instruction and lights up the backplane fault light 130. When the operation and maintenance personnel cancel the marking of the faulty device, the backplane fault light 130 is extinguished according to the received manual extinguishing instruction.
[0094] In some embodiments, the lighting state of the backplane fault light 130 further includes a default state. In the default state, the backplane fault light 130 is in the extinguished state.
[0095] In some specific embodiments, the logic for switching the lighting state of the backplane fault light 130 can be as Figure 6 shown. The arrow direction in the figure indicates the switching logic existing between the two states. Specifically, it can include the following switching logic: (1) When the current lighting state of the backplane fault light 130 is the default state, its state can be switched to the manual lighting state and the automatic lighting state respectively according to the manual lighting instruction and the automatic lighting instruction; (2) When the current lighting state of the backplane fault light 130 is the manual lighting state, its state can be switched to the automatic lighting state and the manual extinguishing state respectively according to the automatic lighting instruction and the manual extinguishing instruction; (3) When the current lighting state of the backplane fault light 130 is the automatic lighting state, its state can be switched to the automatic extinguishing state according to the automatic extinguishing instruction; (4)When the current lighting state of the backplane fault lamp 130 is the manual extinguishing state, its state can be switched to the automatic lighting state and the manual lighting state respectively according to the automatic lighting instruction and the manual lighting instruction. It can also be switched to the default state when the duration of maintaining the manual extinguishing state exceeds the preset duration. (5)When the current lighting state of the backplane fault lamp 130 is the automatic extinguishing state, its state can be switched to the automatic lighting state according to the automatic lighting instruction. It can also be switched to the default state when the duration of maintaining the automatic extinguishing state exceeds the preset duration.
[0096] Among them, the duration of maintaining the manual extinguishing state and the automatic extinguishing state can be monitored by the baseboard management controller 120 or the complex programmable logic device 110. The preset duration can be set to 1 minute, 2 minutes or 3 minutes. Here, there are no special restrictions on the monitoring method, monitoring entity of the maintaining duration and the setting time of the preset duration. Those skilled in the art can set according to actual needs. And the preset duration corresponding to the manual extinguishing state and the preset duration corresponding to the automatic extinguishing state can be the same or different.
[0097] In some specific embodiments, the lighting instructions can be set with priorities. When the current lighting state of the backplane fault lamp 130 is the lighting state (including manual lighting and automatic lighting) (that is, when the currently executed instruction is the manual lighting instruction or the automatic lighting instruction), according to the preset first priority, the instruction to be executed is determined to control the backplane fault lamp 130 to execute. In the preset first priority, the priority of the manual lighting instruction is higher than the priority of the automatic extinguishing instruction, the priority of the manual extinguishing instruction is higher than the priority of the manual lighting instruction, and the priority of the automatic extinguishing instruction is higher than the priority of the automatic lighting. That is, when the current lighting state of the backplane fault lamp 130 is the manual lighting state and needs to be switched to the extinguishing state, it will only be successfully switched when receiving the manual extinguishing instruction, and the automatic extinguishing instruction will not be executed.
[0098] In still some other specific embodiments, when the current lighting state of the backplane fault lamp 130 is the extinguishing state (automatic extinguishing state, manual extinguishing state or default state), receiving any lighting instruction (automatic lighting instruction or manual lighting instruction) can realize the switching (being lit) of the state of the backplane fault lamp 130.
[0099] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by means of software plus the necessary general hardware platform. Of course, it can also be implemented by hardware, but in many cases the former is a better implementation method.
[0100] An embodiment of the present application further provides an electronic device, including a memory and a processor. A computer program is stored in the memory, and the processor is configured to run the computer program to execute the steps in any of the above embodiments of the server backplane light control method.
[0101] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored. The computer program is configured to execute the steps in any of the above embodiments of the server backplane light control method when running.
[0102] In an exemplary embodiment, the above computer-readable storage medium may include, but is not limited to: various media such as a USB flash drive, a read-only memory (ROM for short), a random access memory (RAM for short), a mobile hard disk, a magnetic disk, or an optical disc that can store a computer program.
[0103] An embodiment of the present application further provides a computer program product. The computer program product includes a computer program, and when the computer program is executed by a processor, it implements the steps in any of the above embodiments of the server backplane light control method.
[0104] An embodiment of the present application further provides another computer program product, including a non-volatile computer-readable storage medium. The non-volatile computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, it implements the steps in any of the above embodiments of the server backplane light control method.
[0105] Those skilled in the art can further realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. To clearly illustrate the interchangeability of hardware and software, the components and steps of each example have been generally described according to their functions in the above description. Whether these functions are executed in a hardware or software manner depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the present application.
[0106] The above has introduced in detail a server backplane light control method, a complex programmable logic device, and a server provided by the present application. Specific examples are used in this article to elaborate on the principle and implementation manner of the present application. The description of the above embodiments is only used to help understand the method and its core idea of the present application. It should be noted that for those of ordinary skill in the art in this technical field, without departing from the principle of the present application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the protection scope of the present application.
Claims
1. A complex programmable logic device for a server backplane, which is respectively connected to a baseboard management controller and a backplane fault light, characterized in that It includes a state machine, registers, a first interface, and a second interface for receiving control lamp instructions from the baseboard management controller; The control lamp instructions include a manual lighting instruction or a manual extinguishing instruction representing the result of manual fault troubleshooting transmitted to the first interface, or an automatic lighting instruction or an automatic extinguishing instruction representing the result of polling fault troubleshooting by the baseboard management controller transmitted to the second interface; The state machine is configured to: receive the current control lamp instruction from the first interface or the second interface; when the current control lamp instruction is an automatic extinguishing instruction indicating that the server hard disk has no fault, and the historical control lamp instruction during the execution of the backplane fault lamp is a manual lighting instruction indicating that the server hard disk has a fault, determine the manual lighting instruction as the target control lamp instruction; The register is configured to control the backplane fault lamp according to the target control lamp instruction from the state machine.
2. The complex programmable logic device according to claim 1, wherein The complex programmable logic device further includes a non-volatile storage unit for receiving and storing the target control lamp instruction.
3. The complex programmable logic device according to claim 2, wherein The complex programmable logic device further includes a state monitoring unit for monitoring the operating state of the baseboard management controller; The register is further configured to: when the operating state indicates an abnormality, control the backplane fault lamp according to the last executed control lamp instruction recorded in the non-volatile storage unit.
4. The complex programmable logic device according to claim 3, characterized in that, The state monitoring unit is further configured to monitor the communication states of the first interface and the second interface; The register is further configured to: when the communication state indicates a communication interruption, control the backplane fault lamp according to the last executed control lamp instruction recorded in the non-volatile storage unit.
5. The complex programmable logic device according to claim 1, wherein The state machine is further configured to: When both the current control lamp instruction and the historical control lamp instruction are from the first interface or both are from the second interface, determine the current control lamp instruction as the target control lamp instruction.
6. The complex programmable logic device according to claim 1, characterized in that, The state machine is further configured to: When the current control lamp instruction is an automatic lighting instruction and the historical control lamp instruction is the manual lighting instruction or the manual extinguishing instruction, or when the current control lamp instruction is a manual lighting instruction or an automatic lighting instruction and the historical control lamp instruction is an automatic extinguishing instruction or a manual extinguishing instruction, Determine the current control lamp instruction as the target control lamp instruction.
7. The complex programmable logic device according to claim 1, characterized in that, The state machine is further configured to: When receiving a first control lamp instruction and a second control lamp instruction from different interfaces simultaneously, according to the preset priority information, determine the instruction with a higher priority as the candidate control lamp instruction, where the priority of the lighting instruction is higher than that of the extinguishing instruction; Use the candidate control lamp instruction as the current control lamp instruction.
8. The complex programmable logic device according to claim 1, characterized in that, The first interface and the second interface are integrated circuit bus interfaces.
9. A server, characterized in that, The server includes a manual instruction tool, a baseboard management controller, a backplane fault lamp, and the complex programmable logic device according to any one of claims 1 to 8. There are a first transmission channel and a second transmission channel corresponding to the first interface and the second interface respectively between the baseboard management controller and the complex programmable logic device; the backplane fault lamp is used to indicate the fault condition of the server hard disk; The manual instruction tool is used for the operation and maintenance personnel to issue a manual lighting instruction or a manual extinguishing instruction according to the results of manual detection of fault troubleshooting; The baseboard management controller is used for: Generating an automatic lighting instruction or an automatic extinguishing instruction according to the results of automatic polling detection of hard disk faults, and transmitting the automatic lighting instruction or the automatic extinguishing instruction to the complex programmable logic device through the second transmission channel; Receiving a manual lighting instruction or a manual extinguishing instruction from the manual instruction tool, and transmitting the manual lighting instruction or the manual extinguishing instruction to the complex programmable logic device through the first transmission channel.
10. The server according to claim 9, characterized in that The manual instruction tool is a command-line tool of the intelligent platform management interface.
11. A server backplane light control method, characterized in that Applied to the complex programmable logic device according to any one of claims 1-9, the method includes: Receiving a current lighting control instruction from the first interface or the second interface; When the current lighting control instruction is an automatic extinguishing instruction indicating that the server hard disk has no fault, and the historical lighting control instruction being executed by the backplane fault light is a manual lighting instruction indicating that the server hard disk has a fault, determining the manual lighting instruction as the target lighting control instruction; Controlling the backplane fault light according to the target lighting control instruction.
12. The method according to claim 11, characterized in that, The method further includes: storing the target lighting control instruction in a non-volatile storage unit.
13. The method according to claim 12, wherein The method further includes: Monitoring the operating state of the baseboard management controller of the server motherboard; When the operating state indicates an abnormality, obtaining the last executed lighting control instruction recorded in the non-volatile storage unit, and controlling the backplane fault light to continue to execute the last executed lighting control instruction.
14. The method according to claim 12, wherein The method further includes: Monitoring the communication states of the first interface and the second interface; When the communication state indicates a communication interruption, obtaining the last executed lighting control instruction recorded in the non-volatile storage unit, and controlling the backplane fault light to continue to execute the last executed lighting control instruction.
15. The method according to claim 11, wherein The receiving the current lighting control instruction from the first interface or the second interface includes: When receiving a first lighting control instruction and a second lighting control instruction from different channels simultaneously, determining the instruction with a higher priority as the candidate lighting control instruction according to the preset priority information, wherein the priority of the lighting instruction is higher than that of the extinguishing instruction; Taking the candidate lighting control instruction as the current lighting control instruction.
Citation Information
Patent Citations
An on-board SATA hard disk lighting system and method based on IPMI
CN109086192A
Hard disk lighting method and device, server and product
CN118245335A
Hard disk lamp control method, device and equipment and readable storage medium
CN119396663A
Method and apparatus for generating fault locating information, electronic device, and storage medium
WO2025026240A1