US11880690B1ActiveUtilityA1

Method, system and apparatus for monitoring bios booting process of server

47
Assignee: INSPUR SUZHOU INTELLIGENT TECHNOLOGY CO LTDPriority: Aug 25, 2021Filed: Nov 29, 2021Granted: Jan 23, 2024
Est. expiryAug 25, 2041(~15.1 yrs left)· nominal 20-yr term from priority
Inventors:Zhanliang Chen
G06F 9/4403G06F 11/302G06F 9/4401
47
PatentIndex Score
0
Cited by
16
References
20
Claims

Abstract

A method, system and apparatus for monitoring a BIOS booting process of a server. The method includes: detecting whether a PCH in a server starts to transmit data to a BMC; when the PCH starts to transmit data to the BMC, acquiring data from an IO transmission line between the PCH and the BMC and parsing same, and determining whether the parsed data includes process data which represents a BIOS booting process of the server; and when the parsed data includes the process data, displaying the process data. It can be seen that a user may directly and quickly determine the current booting process of a BIOS by means of displayed information, such that quick trouble locating of a server during a BIOS booting process is facilitated.

Claims

exact text as granted — not AI-modified
The invention claimed is: 
     
       1. A method for monitoring a Basic Input Output System (BIOS) booting process of a server, wherein the method is applied to a processor, comprising:
 detecting whether a Platform Controller Hub (PCH) in a server starts to transmit data to a Baseboard Management Controller (BMC); 
 in response to the PCH starting to transmit data to the BMC, acquiring data from an Input/Output (IO) transmission line between the PCH and the BMC and parsing same, and determining whether parsed data includes process data which represents a BIOS booting process of the server; and 
 in response to the parsed data including the process data, displaying the process data; 
 wherein a connecting line between the PCH and the BMC comprises a clock signal line, an enhanced serial peripheral interface_input/output (eSPI_IO) transmission line and a chip select (CS) signal line; 
 the detecting whether a Platform Controller Hub (PCH) in a server starts to transmit data to a Baseboard Management Controller (BMC) comprises: 
 detecting a clock signal on the clock signal line and a CS signal on the CS signal line, and determining whether the clock signal is at a low level and whether the CS signal has a falling edge; 
 in response to a determination result being that the clock signal is at the low level and the CS signal has the falling edge, determining that the PCH starts to transmit the data to the BMC; and 
 in response to the determination result being that the clock signal is not at the low level and/or the CS signal does not have the falling edge, determining that the PCH does not start to transmit the data to the BMC; 
 wherein the data transmitted by the PCH to the BMC successively comprises command prompt (CMD) information, High Data Register (HDR) information and DATA information; 
 the acquiring data from an IO transmission line between the PCH and the BMC and parsing same, and determining whether the parsed data includes process data which represents a BIOS booting process of the server comprises: 
 acquiring the CMD information from the eSPI_IO transmission line and parsing same, and determining whether the parsed CMD information corresponds to a write data mode; 
 in response to the parsed CMD information corresponding to a write data mode, continuing to acquire the HDR information from the eSPI_IO transmission line and parsing same, and determining whether the parsed HDR information is an address of a BIOS booting process code; 
 in response to the parsed HDR information being an address of a BIOS booting process code, continuing to acquire the DATA information from the eSPI_IO transmission line and parsing same to obtain process data representing the BIOS booting process of the server, so as to enter the step of displaying the process data. 
 
     
     
       2. The method for monitoring the BIOS booting process of the server according to  claim 1 , wherein acquiring target information from the eSPI_IO transmission line comprises:
 starting from acquiring the target information from the eSPI_IO transmission line, acquiring one bit of data from the eSPI_IO transmission line every time a falling edge of the clock signal is detected; when the total number of bits continuously acquired is equal to the total number of bits of the target information, combining the continuously acquired bits to obtain the target information; 
 wherein the target information is any information contained in the data transmitted by the PCH to the BMC. 
 
     
     
       3. The method for monitoring the BIOS booting process of the server according to  claim 2 , wherein the CMD information is 8 bit valid data, and when the CMD information is 0100_0100, the CMD information corresponds to the write data mode; the HDR information is 16 bit valid data, and the address of the BIOS booting process code is 0080 h; the DATA information is 8 bit valid data. 
     
     
       4. The method for monitoring the BIOS booting process of the server according to  claim 1 , wherein the data transmitted by the PCH to the BMC further comprises CRC information;
 after obtaining the process data representing the BIOS booting process of the server and before displaying the process data, the method for monitoring the BIOS booting process of the server further comprises: 
 continuing to acquire the CRC information from the eSPI_IO transmission line and parsing same, and verifying the process data according to the parsed CRC information; 
 in response to the verification passing, entering the step of displaying the process data; and 
 in response to the verification not passing, not entering the step of displaying the process data. 
 
     
     
       5. The method for monitoring the BIOS booting process of the server according to  claim 4 , wherein the method further comprises:
 receiving, by the BMC, the data sent by the PCH; 
 ensuring that a verification result is accurate; 
 feeding back, by the BMC, a reception result to the PCH; and 
 when the PCH does not receive the reception result fed back by the BMC within a preset time, considering that the BMC does not receive the transmitted data this time, and performing data retransmission to ensure that the BMC receives the transmitted data. 
 
     
     
       6. The method for monitoring the BIOS booting process of the server according to  claim 1 , wherein the method further comprises:
 when the PCH does not start to transmit the data to the BMC, continuing to detect whether the PCH starts to transmit the data to the BMC. 
 
     
     
       7. The method for monitoring the BIOS booting process of the server according to  claim 1 , wherein the method further comprises:
 when the parsed data does not include the process data which represents the BIOS booting process of the server, not processing the data transmitted this time. 
 
     
     
       8. The method for monitoring the BIOS booting process of the server according to  claim 1 , wherein the step of displaying the process data comprises:
 displaying the process data via a plurality of light-emitting diode. 
 
     
     
       9. The method for monitoring the BIOS booting process of the server according to  claim 1 , wherein the PCH in the server supports an Enhanced Serial Peripheral Interface (eSPI) bus, and the eSPI bus is a point-to-point communication mode for massive data communication between the PCH and the BMC. 
     
     
       10. The method for monitoring the BIOS booting process of the server according to  claim 1 , wherein the connecting line between the PCH and the BMC in the server further comprises an alert signal line and a reset signal line. 
     
     
       11. An apparatus for monitoring a BIOS booting process of a server, comprising:
 a memory configured for storing computer programs; and 
 a processor configured for, when executing the computer programs, implementing operations comprising: 
 detecting whether a Platform Controller Hub (PCH) in a server starts to transmit data to a Baseboard Management Controller (BMC); 
 in response to the PCH starting to transmit data to the BMC, acquiring data from an Input/Output (IO) transmission line between the PCH and the BMC and parsing same, and determining whether parsed data includes process data which represents a BIOS booting process of the server; and 
 in response to the parsed data including the process data, displaying the process data; 
 wherein a connecting line between the PCH and the BMC comprises a clock signal line, an eSPI_IO transmission line and a chip select (CS) signal line; 
 the operation of detecting whether a Platform Controller Hub (PCH) in a server starts to transmit data to a Baseboard Management Controller (BMC) comprises: 
 detecting a clock signal on the clock signal line and a CS signal on the CS signal line, and determining whether the clock signal is at a low level and whether the CS signal has a falling edge; 
 in response to a determination result being that the clock signal is at the low level and the CS signal has the falling edge, determining that the PCH starts to transmit the data to the BMC; and 
 in response to the determination result being that the clock signal is not at the low level and/or the CS signal does not have the falling edge, determining that the PCH does not start to transmit the data to the BMC; 
 wherein the data transmitted by the PCH to the BMC successively comprises command prompt (CMD) information, High Data Register (HDR) information and DATA information; 
 the operation of acquiring data from an IO transmission line between the PCH and the BMC and parsing same, and determining whether the parsed data includes process data which represents a BIOS booting process of the server comprises: 
 acquiring the CMD information from the eSPI_IO transmission line and parsing same, and determining whether the parsed CMD information corresponds to a write data mode; 
 in response to the parsed CMD information corresponding to a write data mode, continuing to acquire the HDR information from the eSPI_IO transmission line and parsing same, and determining whether the parsed HDR information is an address of a BIOS booting process code; 
 in response to the parsed HDR information being an address of a BIOS booting process code, continuing to acquire the DATA information from the eSPI_IO transmission line and parsing same to obtain process data representing the BIOS booting process of the server, so as to enter the step of displaying the process data. 
 
     
     
       12. The apparatus for monitoring the BIOS booting process of the server according to  claim 11 , wherein the processor is a CPLD. 
     
     
       13. The apparatus for monitoring a BIOS booting process of a server according to  claim 11 , wherein the operation of acquiring target information from the eSPI_IO transmission line comprises:
 starting from acquiring the target information from the eSPI_IO transmission line, acquiring one bit of data from the eSPI_IO transmission line every time a falling edge of the clock signal is detected; when the total number of bits continuously acquired is equal to the total number of bits of the target information, combining the continuously acquired bits to obtain the target information; 
 wherein the target information is any information contained in the data transmitted by the PCH to the BMC. 
 
     
     
       14. The apparatus for monitoring the BIOS booting process of the server according to  claim 13 , wherein the CMD information is 8 bit valid data, and when the CMD information is 0100_0100, the CMD information corresponds to the write data mode; the HDR information is 16 bit valid data, and the address of the BIOS booting process code is 0080 h; the DATA information is 8 bit valid data. 
     
     
       15. The apparatus for monitoring the BIOS booting process of the server according to  claim 11 , wherein the data transmitted by the PCH to the BMC further comprises CRC information;
 after obtaining the process data representing the BIOS booting process of the server and before displaying the process data, the operations further comprise: 
 continuing to acquire the CRC information from the eSPI_IO transmission line and parsing same, and verifying the process data according to the parsed CRC information; 
 in response to the verification passing, entering the step of displaying the process data; and 
 in response to the verification not passing, not entering the step of displaying the process data. 
 
     
     
       16. The apparatus for monitoring the BIOS booting process of the server according to  claim 11 , wherein the operations further comprise:
 when the PCH does not start to transmit the data to the BMC, continuing to detect whether the PCH starts to transmit the data to the BMC. 
 
     
     
       17. The apparatus for monitoring the BIOS booting process of the server according to  claim 11 , wherein the operations further comprise:
 when the parsed data does not include the process data which represents the BIOS booting process of the server, not processing the data transmitted this time. 
 
     
     
       18. The apparatus for monitoring the BIOS booting process of the server according to  claim 11 , wherein the operation of displaying the process data comprises:
 displaying the process data via a plurality of light-emitting diode. 
 
     
     
       19. The apparatus for monitoring the BIOS booting process of the server according to  claim 11 , wherein the PCH in the server supports an Enhanced Serial Peripheral Interface (eSPI) bus, and the eSPI bus is a point-to-point communication mode for massive data communication between the PCH and the BMC. 
     
     
       20. The apparatus for monitoring the BIOS booting process of the server according to  claim 11 , wherein the connecting line between the PCH and the BMC in the server further comprises an alert signal line and a reset signal line.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.