Mainboard firmware update management method and device based on CPLD (Complex Programmable Logic Device)

Through the motherboard firmware update management method based on CPLD, the problem that motherboard firmware cannot be flexible online update management in the existing technology is solved, simplified update process and reduced operation complexity are achieved, and the motherboard maintenance and troubleshooting efficiency is improved.

CN120215974APending Publication Date: 2025-06-27HANGZHOU EBOYLAMP ELECTRONICS CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510225458.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-27
Publication Date
2025-06-27

AI Technical Summary

Technical Problem

The existing technology cannot realize flexible online update management of motherboard firmware, especially when the CPU's BIOS firmware is damaged or the motherboard fails to start, the online update cannot be performed, resulting in difficulty in motherboard maintenance and troubleshooting.

Method used

The motherboard firmware update management method based on CPLD is adopted, and the locking instruction is detected through the first interface switching module and switched to the corresponding serial port. The protocol analysis module analyzes the switching instruction, control instruction and firmware information, and the switching control module outputs the switching switch signal, establishes the connection between the storage control module and the chip firmware, and performs the firmware update operation.

Benefits of technology

It realizes flexible online update management of motherboard firmware, simplifies the firmware update process, reduces operation complexity, and can perform online updates when the CPU's BIOS firmware is damaged or the motherboard is faulty, improving the motherboard maintenance and troubleshooting efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120215974A_ABST
    Figure CN120215974A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of computers, and discloses a CPLD (Complex Programmable Logic Device)-based mainboard firmware update management method and device.The method comprises the following steps: when a first interface switching module detects a locking instruction, switching to a corresponding serial port and outputting a signal of the serial port to a protocol analysis module; the protocol analysis module analyzes a switching instruction, a control instruction and firmware information; the protocol analysis module sends the switching instruction to the switching control module, and sends a control instruction and firmware information to the storage control module; the switching control module outputs a switching switch signal to the second interface switching module so as to establish connection between the storage control module and the chip firmware; and the storage control module executes updating operation on the chip firmware. According to the method, the switching instruction and the control instruction are received through the serial port, so that the firmware updating process can flexibly adapt to different updating requirements and scenes, the firmware updating process is simplified, and the operation complexity is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technologies, and particularly to a method and device for managing the update of motherboard firmware based on CPLD. Background Art

[0002] In a CPU and functional chips in an ARM architecture computer motherboard, generally EEPROM or flash is used to carry their own firmware, such as network chips, PCIE switch bridge chips, BIOS firmware of the CPU, USB chips, RTC chips, FPGA chips, etc. The download or update of these firmware generally requires disassembling the EEPROM or flash chip and solidifying it through a programming tool, such as the front chip of the PCIE switch, network chips, etc.

[0003] However, the existing solutions can neither achieve the online update of the firmware of some chips, nor can they avoid disassembling the flash chip during the first solidification when implementing the online update of the BIOS firmware of the CPU. In addition, when the BIOS firmware is damaged or the motherboard fails to start, online update is also not possible, which brings difficulties to motherboard maintenance, debugging, and fault troubleshooting. At the same time, the online update method of the BIOS firmware of the CPU requires a specific programming tool for the first write, and then it can be written online through the network or serial port, or the BIOS chip can be mounted on the BMC, and then the firmware is sent to the BMC through software and written to the BIOS by the BMC. These solutions cannot achieve flexible online update management of motherboard firmware. Summary of the Invention

[0004] To solve the problem that the motherboard firmware cannot be flexibly managed for online update mentioned above, the embodiments of this application provide a method and device for managing the update of motherboard firmware based on CPLD, and the technical solutions are as follows: In a first aspect, the embodiments of this application provide a method for managing the update of motherboard firmware based on CPLD. This method is applied to a CPLD device, and the CPLD device includes a first interface switching module, a second interface switching module, a protocol parsing module, a switching control module, and a storage control module. The method includes: When the first interface switching module detects a locking instruction, switch to the serial port corresponding to the locking instruction and output the signal of the serial port to the protocol parsing module; The protocol parsing module parses out a switching instruction, a control instruction, and firmware information according to the signal of the serial port; The protocol parsing module sends the switching instruction to the switching control module, and sends the control instruction and the firmware information to the storage control module; The switching control module outputs a switching switch signal to the second interface switching module according to the switching instruction, so as to establish a connection between the storage control module and the chip firmware through the second interface switching module; The storage control module performs an update operation on the chip firmware according to the control instruction and the firmware information.

[0005] In an alternative solution of the first aspect, after the first interface switching module switches to the serial port corresponding to the lock instruction when detecting the lock instruction, it further includes: When the first interface switching module detects an unlock instruction, it switches to the initial monitoring state to monitor the data input of at least two serial ports.

[0006] In another alternative solution of the first aspect, the CPLD device further includes a data encapsulation module; After the storage control module performs an update operation on the chip firmware according to the control instruction and the firmware information, it further includes: The data encapsulation module receives the feedback information and the firmware information sent by the storage control module, and encapsulates the feedback information and the firmware information to obtain encapsulated data; The encapsulated data is sent to the first interface switching module and transmitted to an external device through the first interface switching module for viewing and confirmation by a user or an administrator.

[0007] In another alternative solution of the first aspect, before the data encapsulation module receives the feedback information and the firmware information sent by the storage control module, it further includes: When the storage control module detects that the update operation is completed, it generates feedback information based on the working state information and the data verification information; The feedback information and the firmware information are sent to the data encapsulation module.

[0008] In another alternative solution of the first aspect, before the data encapsulation module encapsulates the feedback information and the firmware information, it further includes: The data encapsulation module calculates the hash values of the feedback information and the firmware information, and compares them with the expected hash values provided by the storage control module; When the comparison result is that the hash values match, the encapsulation step is continued; When the comparison result is that the hash values do not match, an error log is recorded and an error notification is sent to an external device to indicate that the information has been tampered with or damaged during transmission.

[0009] In another alternative solution of the first aspect, after the storage control module performs an update operation on the chip firmware according to the control instruction and the firmware information, it further includes: When the storage control module detects that the difference between the performance parameters of the chip firmware after the update and the preset performance parameters is not within the preset threshold range, it is connected to the backup storage area through the second interface switching module and reads the old version firmware from the backup storage area; wherein, the backup storage area is used to store the old version firmware; Write the old version firmware into the chip firmware to restore the normal operation of the system.

[0010] In another alternative solution of the first aspect, the CPLD device further includes a remote management interface; After the storage control module performs an update operation on the chip firmware according to the control instruction and the firmware information, it further includes: The first interface switching module displays real-time data to the administrator through the remote management interface, so that the administrator can monitor the firmware update status from a remote location.

[0011] In a second aspect, an embodiment of the present application provides a motherboard firmware update management device based on a CPLD. The device is applied to a CPLD device, and the CPLD device includes a first interface switching module, a second interface switching module, a protocol parsing module, a switching control module, and a storage control module. The device includes: The first processing module is used to switch to the serial port corresponding to the lock instruction when the first interface switching module detects the lock instruction, and output the signal of the serial port to the protocol parsing module; The second processing module is used to parse out the switching instruction, the control instruction, and the firmware information from the signal of the serial port by the protocol parsing module; The third processing module is used to send the switching instruction to the switching control module by the protocol parsing module, and send the control instruction and the firmware information to the storage control module; The fourth processing module is used to output a switching switch signal to the second interface switching module by the switching control module, so as to establish a connection between the storage control module and the chip firmware through the second interface switching module; The fifth processing module is used to perform an update operation on the chip firmware by the storage control module according to the control instruction and the firmware information.

[0012] In a third aspect, an embodiment of the present application further provides a motherboard firmware update management device based on a CPLD, including a processor and a memory; The processor is connected to the memory; The memory is used to store executable program code; The processor runs the program corresponding to the executable program code by reading the executable program code stored in the memory, so as to implement the motherboard firmware update management method based on the CPLD provided in the first aspect or any implementation manner of the first aspect of the embodiments of the present application.

[0013] In a fourth aspect, an embodiment of the present application provides a computer storage medium storing a computer program, where the computer program includes program instructions that, when executed by a processor, can implement the method for managing the update of the motherboard firmware based on CPLD provided in the first aspect or any implementation manner of the first aspect of the embodiments of the present application.

[0014] The beneficial effects brought by the technical solutions provided in some embodiments of this specification at least include: During the process of managing the update of the motherboard firmware based on CPLD, the first interface switching module quickly detects the lock instruction and switches to the corresponding serial port. Then, the protocol parsing module accurately parses the switching instruction, control instruction, and firmware information in the serial port signal, so that the switching control module outputs a switching switch signal according to the parsed switching instruction, and the second interface switching module establishes a connection between the storage control module and the chip firmware, so as to perform an update operation on the chip firmware according to the control instruction and firmware information. It realizes receiving the switching instruction and control instruction through the serial port, enables the firmware update process to flexibly adapt to different update requirements and scenarios, simplifies the firmware update process, and reduces the operation complexity. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following will briefly introduce the drawings required for 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 also be obtained based on these drawings.

[0016] Figure 1 It is the overall flowchart of a method for managing the update of the motherboard firmware based on CPLD provided by an embodiment of the present application; Figure 2 It is the structural schematic diagram of a device for managing the update of the motherboard firmware based on CPLD provided by an embodiment of the present application; Figure 3 It is the structural schematic diagram of another device for managing the update of the motherboard firmware based on CPLD provided by an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0017] The following will clearly and completely describe the technical solutions in the embodiments of the present application in conjunction with the drawings in the embodiments of the present application.

[0018] In the following description, the terms "first" and "second" are for descriptive purposes only and should not be construed as indicating or implying relative importance. The following description provides multiple embodiments of the present application. Different embodiments can be replaced or combined. Therefore, the present application can also be considered to include all possible combinations of the same and / or different embodiments described. Thus, if one embodiment includes features A, B, and C, and another embodiment includes features B and D, then the present application should also be considered to include embodiments with one or more of all other possible combinations of A, B, C, and D, even if such embodiments may not be explicitly described in the following content.

[0019] The following description provides examples and does not limit the scope, applicability, or examples set forth in the claims. Changes can be made to the functions and arrangements of the described elements without departing from the scope of the present application. Various processes or components can be appropriately omitted, substituted, or added to each example. For example, the described method can be performed in a different order than the described order, and various steps can be added, omitted, or combined. In addition, the features described for some examples can be combined into other examples.

[0020] Please refer to Figure 1 , Figure 1 which shows the overall flowchart of a CPLD-based mainboard firmware update management method provided by an embodiment of the present application.

[0021] As Figure 1 shown, the CPLD-based mainboard firmware update management method can at least include the following steps: Step 101: When the first interface switching module detects a lock instruction, switch to the serial port corresponding to the lock instruction and output the signal of the serial port to the protocol parsing module.

[0022] In the embodiment of the present application, the motherboard firmware update management method based on CPLD is applied to a CPLD device, which includes a first interface switching module, a second interface switching module, a protocol parsing module, a switching control module, and a storage control module. Among them, the first interface switching module is used to monitor the input data of multiple serial ports at all times and perform serial port switching according to instructions; the second interface switching module is used to establish a connection between the storage control module and the chip firmware; the protocol parsing module is used to parse the received serial port signal and output it; the switching control module is used to receive the switching instruction from the protocol parsing module and output the corresponding switching switch signal to the second interface switching module; the storage control module is used to execute the update operation of the chip firmware. In the process of motherboard firmware update management based on CPLD, the first interface switching module quickly detects the locking instruction and switches to the corresponding serial port, and then the protocol parsing module accurately parses the switching instruction, control instruction, and firmware information in the serial port signal, so that the switching control module outputs the switching switch signal according to the parsed switching instruction, and the second interface switching module establishes a connection between the storage control module and the chip firmware to execute the update operation of the chip firmware according to the control instruction and firmware information, realizing the reception of switching instructions and control instructions through the serial port, making the firmware update process can flexibly adapt to different update requirements and scenarios, simplifying the firmware update process, and reducing the operation complexity.

[0023] Specifically, in the process of motherboard firmware update management based on CPLD, when the first interface switching module receives the locking instruction, it can switch to the serial port corresponding to the instruction and transmit the signal of the serial port to the protocol parsing module for processing.

[0024] It can be understood that the first interface switching module is a module responsible for managing and switching different interfaces (such as serial ports, network interfaces, etc.). In this solution, it specifically refers to a module that can detect and respond to the locking instruction, which is used to specify the specific serial port to be used. The locking instruction is a specific signal or command used to tell the first interface switching module which serial port is currently needed. This instruction can come from, but is not limited to, user input, upper-layer software logic, or external devices.

[0025] After the interface switching module receives the locking instruction, it can find and switch to the corresponding serial port according to the information specified in the instruction. This process may involve closing the currently used serial port (if any) and opening or activating the specified serial port. Once switched to the specified serial port, the first interface switching module can start receiving the signals on that serial port. These signals can then be transmitted to the protocol parsing module, which is responsible for parsing the data in the signals to extract useful information or perform corresponding operations.

[0026] As an option in the embodiment of the present application, after the first interface switching module detects a locking instruction and switches to the serial port corresponding to the locking instruction, it further includes: When the first interface switching module detects an unlocking instruction, it switches to the initial monitoring state to monitor the data input of at least two serial ports.

[0027] Specifically, after switching to the serial port corresponding to the locking instruction, when the first interface switching module receives an unlocking instruction, it can switch back from the currently active serial port to the initial monitoring state and start monitoring the data input of at least two serial ports simultaneously.

[0028] It can be understood that the first interface switching module is a module responsible for managing and switching different interfaces (especially serial ports). It can detect and respond to instructions from the system or other modules to change the currently active serial port. The unlocking instruction is a specific signal or command used to tell the first interface switching module to stop monitoring the currently active serial port and return to a state where it can monitor multiple serial ports simultaneously. This instruction can come from, but is not limited to, user input, upper-layer software logic, or external devices, indicating that the system no longer needs to focus on the input of a specific serial port.

[0029] After the first interface switching module receives the unlocking instruction, it can stop the currently active serial port communication and then switch to an initial monitoring state, which allows it to monitor the data input of at least two serial ports simultaneously. The initial monitoring state means that the first interface switching module is listening to all connected serial ports and is ready to switch the active serial port according to subsequent instructions or data activities.

[0030] It should be noted that in the initial monitoring state, the interface switching module can simultaneously pay attention to the data input of at least two serial ports. This means that it can receive and cache the data from these serial ports until the system decides which serial port's data needs to be further processed. Monitoring multiple serial ports allows the system to respond more flexibly to data from different sources, improving the system's availability and response speed.

[0031] Step 102: The protocol parsing module parses out the switching instruction, control instruction, and firmware information according to the signals of the serial port.

[0032] Specifically, after obtaining the signals of the serial port, the protocol parsing module is responsible for parsing the signals from the serial port and extracting the key instruction information, including the switching instruction, control instruction, and firmware information.

[0033] It is understandable that the protocol parsing module is a specially designed module for parsing and understanding the data signals received from the serial port. It can parse out the valid information and instructions in the data according to predefined protocols or rules. Serial port signals refer to the data streams transmitted through the serial port, usually including a series of bits or bytes. These signals may represent text data, control commands, or other types of information. The switching instruction is a special command used to switch other modules to another serial port or interface. In some systems, the switching instruction may be used to switch between multiple devices or data sources so that the system can process data from different sources. Control instructions are commands used to control the behavior of devices or systems. These instructions include start, stop, configuration parameter changes, etc. After receiving the control instructions, the system will perform corresponding operations according to the content of the instructions. Firmware information refers to the data related to the device firmware, such as firmware version, update status, etc. Firmware is the software embedded in the device, responsible for the underlying operations and controls of the device. By parsing the firmware information in the serial port signal, the system can understand the firmware status of the device and update or configure it as needed.

[0034] Step 103: The protocol parsing module sends the switching instruction to the switching control module, and sends the control instruction and the firmware information to the storage control module.

[0035] Specifically, after parsing out the key information in the serial port signal, the protocol parsing module can distribute this information to the corresponding modules of the system. Among them, the switching instruction will be sent to the switching control module, while the control instruction and the firmware information will be sent to the storage control module.

[0036] It should be noted that the switching control module is responsible for receiving the switching instruction and performing corresponding switching operations according to the content of the instruction. It involves closing the currently active serial port or interface and opening or activating the specified new serial port or interface; the storage control module is responsible for receiving and processing the control instruction and the firmware information. For the control instruction, it may perform corresponding operations, such as changing the device configuration or starting a specific function. For the firmware information, it is responsible for storing, updating, or verifying the firmware version of the device.

[0037] Step 104: The switching control module outputs a switching switch signal to the second interface switching module according to the switching instruction, so as to establish a connection between the storage control module and the chip firmware through the second interface switching module.

[0038] Specifically, after receiving the switching instruction from the protocol parsing module, the switching control module can generate and output a switching switch signal to the second interface switching module to guide the second interface switching module to establish a connection between the storage control module and the chip firmware.

[0039] It is understandable that the switching control module is responsible for receiving switching instructions and generating corresponding switching switch signals according to these instructions. It communicates with the protocol parsing module, receives the parsed switching instructions, and converts them into specific control signals.

[0040] The switching switch signal is a control signal output by the switching control module, which is used to guide the second interface switching module to perform interface switching. This signal may be an electrical signal, a change in logic level, or other forms of control signals.

[0041] The second interface switching module is responsible for switching interfaces or paths according to the switching switch signal. It is connected to the switching control module, the storage control module, and the chip firmware interface, and is responsible for establishing connections between them.

[0042] The storage control module is responsible for managing and controlling the operations of storage devices, such as reading and writing data, firmware updates, etc. In this solution, it needs to establish a connection with the chip firmware for firmware updates or reading firmware information.

[0043] The chip firmware is software embedded in the hardware device, which is responsible for the underlying operations and control of the device. The storage control module needs to establish a connection with the chip firmware for firmware updates, configuration changes, and other operations.

[0044] Step 105: The storage control module performs an update operation on the chip firmware according to the control instruction and the firmware information.

[0045] Specifically, after receiving the control instruction and the firmware information from the protocol parsing module, the storage control module is responsible for performing the update operation on the chip firmware. This step is a key link in firmware management and device maintenance, ensuring that the device can run the latest firmware version and thus enjoy the latest functions and security fixes.

[0046] It is understandable that the storage control module is a component responsible for managing and controlling the operations of storage devices (such as flash memory, hard disks, etc.). In this solution, it is particularly responsible for handling operations related to chip firmware updates.

[0047] The control instruction is issued by the upper-layer software or the user and is a command used to guide the storage control module to perform specific operations. In the context of firmware updates, the control instruction can but is not limited to include starting the update, verifying the integrity of the firmware, confirming the completion of the update, etc.

[0048] The firmware information is detailed data about the chip firmware, including the firmware version, the size of the update package, the checksum, etc. These information are crucial for ensuring the correctness and integrity of the firmware update.

[0049] Chip firmware is software embedded in hardware devices and is responsible for the underlying operations and control of the devices. Firmware updates are usually used to fix known bugs, add new features, or improve device performance.

[0050] The firmware update operation involves writing a new firmware version to the chip firmware storage area and may include steps such as verifying the integrity of the new firmware, backing up the old firmware version, and restarting the device to apply the new firmware.

[0051] As another option in the embodiments of this application, the CPLD device further includes a data encapsulation module; After the storage control module performs a firmware update operation on the chip firmware according to the control instruction and firmware information, it further includes: The data encapsulation module receives the feedback information and firmware information sent by the storage control module, and encapsulates the feedback information and firmware information to obtain encapsulated data; Send the encapsulated data to the first interface switching module and transmit it to an external device through the first interface switching module for viewing and confirmation by the user or administrator.

[0052] Specifically, during the motherboard firmware update management based on CPLD, the CPLD device may further include a data encapsulation module. After the storage control module performs a firmware update operation on the chip firmware, the data encapsulation module is responsible for receiving the feedback information and firmware information sent by the storage control module, and encapsulating this information into a specific format or data packet, and then transmitting it to an external device through the first interface switching module to ensure that the user or administrator can conveniently view and confirm the results and detailed information of the firmware update.

[0053] It can be understood that the data encapsulation module is a key component in the firmware update process, which is responsible for the reception, encapsulation, and transmission of information. This module can parse the feedback information (such as update status, error code, etc.) and firmware information (such as firmware version, update description, etc.) sent by the storage control module, and integrate this information into a format that is easy to transmit and parse. The encapsulation process involves multiple steps, including information formatting, adding checksum, encryption, etc. The formatting step converts the information into a specific data structure or protocol format so that the external device can correctly parse it. Adding a checksum ensures the integrity of the encapsulated data and can detect whether the data is damaged during transmission. The encryption step ensures the security of the encapsulated data and prevents unauthorized access or tampering.

[0054] As another option in the embodiments of this application, before the data encapsulation module receives the feedback information and firmware information sent by the storage control module, it further includes: When the storage control module detects that the update operation is completed, generate feedback information based on the working status information and data verification information; Send the feedback information and firmware information to the data encapsulation module.

[0055] Specifically, before the data encapsulation module receives the feedback information and firmware information sent by the storage control module, when the storage control module detects that the update operation is completed, it can generate feedback information based on the working status information and data verification information to ensure that the system can accurately understand the status of the firmware update and provide reliable update results for the user.

[0056] It can be understood that the storage control module continuously tracks the progress of the firmware update, including key steps such as writing the new firmware and verifying the integrity of the firmware. During the update process, the storage control module collects and records the working status information, such as the update progress, writing speed, error logs, etc. These information are crucial for diagnosing problems and optimizing the update process. To ensure the accuracy of the firmware update, the storage control module verifies the data after the update is completed. This usually involves calculating the checksum of the data and comparing it with the expected checksum. If the two match, it indicates that the firmware data is complete and not damaged.

[0057] It should be noted that once the storage control module detects that the update operation is completed and the data verification passes, it can generate feedback information based on the collected working status information and data verification information. The feedback information usually includes the status of whether the update is successful, any error codes or logs encountered, and the new version information of the firmware, etc. After generating the feedback information, the storage control module can send it together with the firmware information (such as firmware version, update description, etc.) to the data encapsulation module. The firmware information may have been provided by other modules during the update process, or parsed by the storage control module from the firmware update package.

[0058] As another option of the embodiment of the present application, before the data encapsulation module encapsulates the feedback information and firmware information, it further includes: The data encapsulation module calculates the hash values of the feedback information and firmware information and compares them with the expected hash values provided by the storage control module; When the comparison result is that the hash values match, continue to execute the encapsulation step; When the comparison result is that the hash values do not match, record the error log and send an error notification to the external device to indicate that the information has been tampered with or damaged during the transmission process.

[0059] Specifically, before the data encapsulation module encapsulates the feedback information and firmware information, after receiving the feedback information and firmware information sent by the storage control module, the data encapsulation module can first calculate the hash values of these information. A hash value is a digital digest of a fixed length, which is obtained by performing specific mathematical operations on the original information and has uniqueness and irreversibility. Therefore, the hash value can be used to verify the integrity and authenticity of the information. The calculated hash value will be compared with the expected hash value provided by the storage control module. The expected hash value is calculated by the storage control module based on the feedback information and firmware information during the firmware update process and sent to the data encapsulation module as a reference standard.

[0060] Next, when the calculated hash value matches the expected hash value, it indicates that the feedback information and firmware information have not been tampered with or damaged during the transmission process, and the data encapsulation module will continue to perform the encapsulation steps. The encapsulation steps may include data formatting, encryption, adding checksums, etc. to ensure the integrity and security of the data during subsequent transmission.

[0061] When the calculated hash value does not match the expected hash value, it indicates that the feedback information and firmware information may have been tampered with or damaged during the transmission process. At this time, the data encapsulation module will record an error log, detailing the time, reason, and information involved in the error. At the same time, the data encapsulation module will also send an error notification to an external device, prompting the user or administrator that the information may have been tampered with or damaged during the transmission process and suggesting taking corresponding measures for troubleshooting and repair.

[0062] As another alternative in the embodiment of the present application, after the storage control module performs an update operation on the chip firmware according to the control instruction and the firmware information, it further includes: When the storage control module detects that the difference between the performance parameters of the chip firmware after the update and the preset performance parameters is not within the preset threshold range, it connects to the backup storage area through the second interface switching module and reads the old version firmware from the backup storage area; wherein, the backup storage area is used to store the old version firmware; Write the old version firmware into the chip firmware to restore the normal operation of the system.

[0063] Specifically, after the storage control module performs an update operation on the chip firmware, when the storage control module detects that the difference between the performance parameters of the chip firmware after the update and the preset performance parameters is not within the preset threshold range, it can connect to the backup storage area through the second interface switching module, and then read the old version firmware from the backup storage area, so that the old version firmware can be written into the chip firmware to make the system return to the state before the update, thereby ensuring the normal operation of the system, wherein the backup storage area is used to store the old version firmware.

[0064] It can be understood that the storage control module is responsible for monitoring the performance parameters after the chip firmware is updated. These parameters can include, but are not limited to, key indicators such as read / write speed, power consumption, and stability. The preset performance parameters are the performance standards expected by the system, and the preset threshold range is the acceptable range allowing the performance parameters to deviate from the preset values. When the difference between the actual performance parameters and the preset parameters exceeds this range, the system believes that there may be problems with the new firmware. Once the storage control module detects that the performance parameters exceed the threshold range, a fallback mechanism will be triggered to ensure the stability and reliability of the system and prevent system failures or data losses caused by problems with the new firmware. The second interface switching module is responsible for connecting to the backup storage area when needed. This module may involve the switching of physical interfaces or the selection of logical channels to ensure that the system can smoothly access the data in the backup storage area. The backup storage area is a dedicated area for storing the old version of the firmware. Before the firmware is updated, the system will back up the currently running firmware version to this area so that when a fallback is needed, the system can quickly read the old version of the firmware from the backup storage area. Once connected to the backup storage area, the system will read the old version of the firmware from this area and write it into the chip firmware. This process involves steps such as decompression, verification, and validation of the firmware to ensure the correctness and integrity of the old version of the firmware.

[0065] As another alternative of the embodiment of the present application, the CPLD device further includes a remote management interface; After the storage control module performs an update operation on the chip firmware according to the control instruction and the firmware information, it further includes: The first interface switching module displays real-time data to the administrator through the remote management interface so that the administrator can monitor the firmware update status from a remote location.

[0066] Specifically, in the process of managing the motherboard firmware update based on the CPLD, the CPLD device further includes a remote management interface. After the storage control module performs an update operation on the chip firmware, the first interface switching module can further display real-time data to the administrator through the remote management interface so that the administrator can monitor the status of the firmware update from a remote location, ensuring the smooth progress of the update process and timely response to possible problems. It can be understood that the remote management interface is a dedicated communication channel for transmitting real-time data and management instructions during the firmware update process.

[0067] Please refer to Figure 2 , Figure 2 which shows a schematic structural diagram of a motherboard firmware update management device provided by an embodiment of the present application.

[0068] As Figure 2As shown in the figure, the main board firmware update management device based on CPLD may at least include a first processing module 201, a second processing module 202, a third processing module 203, a fourth processing module 204, and a fifth processing module 205, where: The first processing module 201 is configured to switch to the serial port corresponding to the lock instruction when the first interface switching module detects the lock instruction, and output the signal of the serial port to the protocol parsing module; The second processing module 202 is configured to parse out the switching instruction, control instruction, and firmware information from the signal of the serial port by the protocol parsing module; The third processing module 203 is configured to send the switching instruction to the switching control module by the protocol parsing module, and send the control instruction and firmware information to the storage control module; The fourth processing module 204 is configured to output a switching switch signal to the second interface switching module by the switching control module according to the switching instruction, so as to establish a connection between the storage control module and the chip firmware through the second interface switching module; The fifth processing module 205 is configured to perform an update operation on the chip firmware by the storage control module according to the control instruction and firmware information.

[0069] In some possible embodiments, after switching to the serial port corresponding to the lock instruction when the first interface switching module detects the lock instruction, it further includes: The first processing module 201 is specifically configured to: When the first interface switching module detects the unlock instruction, switch to the initial monitoring state to monitor the data input of at least two serial ports.

[0070] In some possible embodiments, the CPLD device further includes a data encapsulation module; After the storage control module performs an update operation on the chip firmware according to the control instruction and firmware information, it further includes: The fifth processing module 205 is specifically configured to: Receive the feedback information and firmware information sent by the storage control module by the data encapsulation module, and encapsulate the feedback information and firmware information to obtain encapsulated data; Send the encapsulated data to the first interface switching module, and transmit it to the external device through the first interface switching module for the user or administrator to view and confirm.

[0071] In some possible embodiments, before the data encapsulation module receives the feedback information and firmware information sent by the storage control module, it further includes: The fifth processing module 205 is specifically configured to: When the storage control module detects that the update operation is completed, generate feedback information based on the working state information and data verification information; Send the feedback information and firmware information to the data encapsulation module.

[0072] In some possible embodiments, before the data encapsulation module encapsulates the feedback information and firmware information, it further includes: The fifth processing module 205 is specifically configured to: The data encapsulation module calculates the hash values of the feedback information and firmware information, and compares them with the expected hash values provided by the storage control module; When the comparison result shows that the hash values match, continue to execute the encapsulation step; When the comparison result shows that the hash values do not match, record an error log and send an error notification to an external device to indicate that the information has been tampered with or damaged during transmission.

[0073] In some possible embodiments, after the storage control module performs an update operation on the chip firmware according to the control instruction and firmware information, it further includes: The fifth processing module 205 is specifically configured to: When the storage control module detects that the difference between the performance parameters of the chip firmware after the update and the preset performance parameters is not within the preset threshold range, connect to the backup storage area through the second interface switching module and read the old version firmware from the backup storage area; wherein, the backup storage area is used to store the old version firmware; Write the old version firmware into the chip firmware to restore the normal operation of the system.

[0074] In some possible embodiments, the CPLD device further includes a remote management interface; After the storage control module performs an update operation on the chip firmware according to the control instruction and firmware information, it further includes: The fifth processing module 205 is specifically configured to: The first interface switching module displays real-time data to the administrator through the remote management interface, so that the administrator can monitor the firmware update status from a remote location.

[0075] Please refer to Figure 3 , Figure 3 which shows a schematic structural diagram of another motherboard firmware update management device based on CPLD provided by the embodiments of the present application.

[0076] As Figure 3 shown, the motherboard firmware update management device 300 based on CPLD may include at least one processor 301, at least one network interface 304, a user interface 303, a memory 305, and at least one communication bus 302.

[0077] Among them, the communication bus 302 can be used to realize the connection and communication of the above-mentioned various components.

[0078] Among them, the user interface 303 may include buttons, and the optional user interface may also include standard wired interfaces and wireless interfaces.

[0079] Among them, the network interface 304 may include, but is not limited to, a Bluetooth module, an NFC module, a Wi-Fi module, etc.

[0080] Among them, the processor 301 may include one or more processing cores. The processor 301 connects various parts within the entire CPLD-based motherboard firmware update management device 300 using various interfaces and lines. By running or executing instructions, programs, code sets, or instruction sets stored in the memory 305, and by calling data stored in the memory 305, the processor 301 performs various functions of the CPLD-based motherboard firmware update management device 300 and processes data. Optionally, the processor 301 may be implemented in at least one of the hardware forms of DSP, FPGA, and PLA. The processor 301 may integrate one or a combination of several of CPU, GPU, and modem, etc. Among them, the CPU mainly processes the operating system, user interface, application programs, etc.; the GPU is responsible for rendering and drawing the content to be displayed on the display screen; the modem is used to process wireless communication. It can be understood that the above-mentioned modem may not be integrated into the processor 301 and may be implemented separately by a single chip.

[0081] Among them, the memory 305 may include RAM and may also include ROM. Optionally, the memory 305 includes a non-transitory computer-readable medium. The memory 305 can be used to store instructions, programs, code, code sets, or instruction sets. The memory 305 may include a program storage area and a data storage area. Among them, the program storage area may store instructions for implementing the operating system, instructions for at least one function (such as touch function, sound playback function, image playback function, etc.), instructions for implementing the above-mentioned various method embodiments, etc.; the data storage area may store the data involved in the above-mentioned various method embodiments. Optionally, the memory 305 may also be at least one storage device located far from the aforementioned processor 301. As Figure 3 shown, the memory 305, as a computer storage medium, may include an operating system, a network communication module, a user interface module, and a CPLD-based motherboard firmware update management application program.

[0082] Specifically, the processor 301 may be used to call the CPLD-based motherboard firmware update management application program stored in the memory 305 and specifically perform the following operations: When the first interface switching module detects a lock instruction, switch to the serial port corresponding to the lock instruction and output the signal of the serial port to the protocol parsing module; The protocol parsing module parses the switching instruction, control instruction, and firmware information from the signals of the serial port; The protocol parsing module sends the switching instruction to the switching control module, and sends the control instruction and firmware information to the storage control module; The switching control module outputs a switching switch signal to the second interface switching module according to the switching instruction, so as to establish a connection between the storage control module and the chip firmware through the second interface switching module; The storage control module performs an update operation on the chip firmware according to the control instruction and firmware information.

[0083] This application also provides a computer-readable storage medium, on which a computer program is stored. When the program is executed by a processor, the steps of the above method are implemented. Among them, the computer-readable storage medium may include, but is not limited to, any type of disk, including floppy disks, optical disks, DVDs, CD-ROMs, microdrives, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, DRAMs, VRAMs, flash memory devices, magnetic cards or optical cards, nanosystems (including molecular memory ICs), or any type of medium or device suitable for storing instructions and / or data.

[0084] It should be noted that for the foregoing method embodiments, for the sake of simple description, they are all expressed as a series of action combinations. However, those skilled in the art should know that this application is not limited by the described action sequence, because according to this application, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to this application.

[0085] In the above embodiments, the descriptions of the various embodiments have their own emphases. For the parts not detailed in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0086] In several embodiments provided by this application, it should be understood that the disclosed device can be implemented in other ways. For example, the device embodiments described above are only illustrative. For example, the division of units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed coupling or direct coupling or communication connection between each other can be through some service interfaces. The indirect coupling or communication connection of the device or unit can be in an electrical or other form.

[0087] The unit described as a separation component may or may not be physically separated. The component shown as a unit may or may not be a physical unit, that is, it may be located in one place or distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0088] In addition, each functional unit in various embodiments of the present application may be integrated in a processing unit, may exist physically separately for each unit, or two or more units may be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of a software functional unit.

[0089] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable memory. Based on such an understanding, the technical solution of the present application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a memory and includes several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods in various embodiments of the present application. The aforementioned memory includes: USB flash drives, read-only memories (ROM), random access memories (RAM), mobile hard disks, magnetic disks, or optical disks and other media that can store program codes.

[0090] Those of ordinary skill in the art can understand that all or part of the steps in the various methods of the above embodiments can be completed by instructing relevant hardware through a program. This program can be stored in a computer-readable memory. The memory can include: flash drives, read-only memories (ROM), random access memories (RAM), magnetic disks, or optical disks, etc.

[0091] The above are only exemplary embodiments of the present disclosure, and the scope of the present disclosure cannot be limited thereby. That is, any equivalent changes and modifications made according to the teachings of the present disclosure still fall within the scope covered by the present disclosure. After considering the specification and practicing the present disclosure, those skilled in the art will easily think of other embodiments of the present disclosure. The present application aims to cover any variations, uses, or adaptive changes of the present disclosure. These variations, uses, or adaptive changes follow the general principles of the present disclosure and include common general knowledge or conventional technical means in the technical field not recorded in the present disclosure. The specification and embodiments are only regarded as exemplary, and the scope and spirit of the present disclosure are defined by the claims.

Claims

1. A mainboard firmware update management method based on CPLD, characterized in that: The method is applied to a CPLD device, the CPLD device includes a first interface switching module, a second interface switching module, a protocol parsing module, a switching control module and a storage control module, and the method includes: When the first interface switching module detects a locking instruction, it switches to the serial port corresponding to the locking instruction, and outputs the signal of the serial port to the protocol parsing module; The protocol parsing module parses the signal of the serial port to obtain the switching instruction, the control instruction and the firmware information; The protocol parsing module sends the switching instruction to the switching control module, and sends the control instruction and the firmware information to the storage control module; The switching control module outputs a switching switch signal to the second interface switching module according to the switching instruction, so as to establish a connection between the storage control module and the chip firmware through the second interface switching module; The storage control module performs an update operation on the chip firmware according to the control instruction and the firmware information.

2. The method according to claim 1, characterized in that After the first interface switching module detects a locking instruction and switches to a serial port corresponding to the locking instruction, the method further includes: When the first interface switching module detects an unlocking instruction, it switches to an initial monitoring state to monitor data input of at least two serial ports.

3. The method according to claim 1, characterized in that The CPLD device also includes a data encapsulation module; After the storage control module performs an update operation on the chip firmware according to the control instruction and the firmware information, the method further includes: The data encapsulation module receives the feedback information and the firmware information sent by the storage control module, and encapsulates the feedback information and the firmware information to obtain encapsulated data; The encapsulated data is sent to the first interface switching module, and transmitted to an external device through the first interface switching module for viewing and confirmation by a user or administrator.

4. The method according to claim 3, characterized in that: Before the data encapsulation module receives the feedback information and the firmware information sent by the storage control module, the method further includes: When the storage control module detects that the update operation is completed, generating feedback information based on the working status information and the data verification information; The feedback information and the firmware information are sent to a data encapsulation module.

5. The method according to claim 4, characterized in that Before the data encapsulation module encapsulates the feedback information and the firmware information, the method further includes: The data encapsulation module calculates hash values ​​of the feedback information and the firmware information, and compares them with expected hash values ​​provided by the storage control module; When the comparison result is a hash value match, continue to execute the encapsulation step; When the comparison result is that the hash value does not match, an error log is recorded and an error notification is sent to the external device to prompt that the information has been tampered with or damaged during the transmission process.

6. The method according to claim 1, characterized in that After the storage control module performs an update operation on the chip firmware according to the control instruction and the firmware information, the method further includes: When the storage control module detects that the difference between the performance parameter of the chip firmware after the update and the preset performance parameter is not within the preset threshold range, the second interface switching module is connected to the backup storage area and reads the old version of the firmware from the backup storage area; wherein the backup storage area is used to store the old version of the firmware; The old version of the firmware is written into the chip firmware to restore the normal operation of the system.

7. The method according to claim 1, characterized in that The CPLD device also includes a remote management interface; After the storage control module performs an update operation on the chip firmware according to the control instruction and the firmware information, the method further includes: The first interface switching module displays real-time data to the administrator through the remote management interface, so that the administrator can monitor the firmware update status from a remote location.

8. A mainboard firmware update management device based on CPLD, characterized in that: The device is applied to a CPLD device, the CPLD device includes a first interface switching module, a second interface switching module, a protocol parsing module, a switching control module and a storage control module, and the device includes: A first processing module, configured to switch to a serial port corresponding to the locking instruction when the first interface switching module detects the locking instruction, and output a signal of the serial port to the protocol parsing module; A second processing module, configured to parse the signal of the serial port by the protocol parsing module to obtain a switching instruction, a control instruction and firmware information; A third processing module, configured to send the switching instruction to the switching control module by the protocol parsing module, and send the control instruction and the firmware information to the storage control module; a fourth processing module, configured to cause the switching control module to output a switching switch signal to the second interface switching module according to the switching instruction, so as to establish a connection between the storage control module and the chip firmware through the second interface switching module; A fifth processing module is used for the storage control module to perform an update operation on the chip firmware according to the control instruction and the firmware information.

9. A mainboard firmware update management device based on CPLD, characterized in that: including a processor and a memory; The processor is connected to the memory; The memory is used to store executable program code; The processor runs a program corresponding to the executable program code by reading the executable program code stored in the memory, so as to execute the steps of the method according to any one of claims 1 to 7.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: The computer-readable storage medium stores instructions, and when the instructions are executed on a computer or a processor, the computer or the processor executes the steps of the method according to any one of claims 1 to 7.