Firmware maintenance method and system

By adding logic devices to the plug-in card and using the bus interface for memory programming, the problems of poor maintainability and difficulty in remote repair of existing firmware maintenance methods are solved, achieving highly reliable and convenient firmware maintenance, and reducing maintenance costs and downtime.

CN115437658BActive Publication Date: 2026-06-19XUNMU INFORMATION TECH (SHANGHAI) CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
XUNMU INFORMATION TECH (SHANGHAI) CO LTD
Filing Date
2022-09-02
Publication Date
2026-06-19

AI Technical Summary

Technical Problem

Existing firmware maintenance methods suffer from poor maintainability, inability to be repaired remotely, high repair costs, and increased downtime of electronic devices.

Method used

By adding logic devices to the plug-in card and setting or accessing the memory control module of the logic devices through the bus interface, the memory can be programmed, avoiding reliance on the processing unit for firmware maintenance.

Benefits of technology

This enables firmware maintenance even when the processing unit malfunctions, improving the reliability and convenience of maintenance, reducing repair costs, and minimizing downtime.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115437658B_ABST
    Figure CN115437658B_ABST
Patent Text Reader

Abstract

This application discloses a firmware maintenance method and system. The firmware maintenance method includes: establishing a connection with an expansion card via a bus interface, wherein the expansion card includes: a processing unit, logic devices, and a memory; the logic devices include a selector and a memory control module connected to each other; the selector selectively connects the memory to the processing unit or the memory control module; configuring the memory control module so that the selector connects the memory to the memory control module; after connecting the memory to the memory control module, accessing the memory control module to burn new firmware into the memory; after burning the new firmware into the memory, configuring the memory control module so that the selector connects the memory to the processing unit; and after connecting the memory to the processing unit, configuring the memory control module to trigger the processing unit to reload the new firmware.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a firmware maintenance method and system. Background Technology

[0002] With the development of industries such as artificial intelligence, image recognition, social software, and blockchain, various types of expansion cards are emerging, such as Peripheral Component Interconnect Express (PCIe) cards. PCIe cards typically contain devices such as dedicated processors, network processors, or Field Programmable Gate Arrays (FPGAs). The startup of these devices depends on their firmware, which is usually stored in external memory.

[0003] Firmware sometimes needs maintenance for reasons such as fixing defects or adding features. Typically, firmware maintenance of PCIe cards is achieved by using the electronic device on which the card resides to control the processor or FPGA on the PCIe card through the PCIe channel.

[0004] However, during the aforementioned firmware maintenance process, if an abnormal situation occurs that leads to firmware maintenance interruption, failure, or corruption, the PCIe card will be unable to function due to incomplete firmware. The electronic device will be unable to communicate with it, let alone repair it online. This forces engineers to open the server chassis and use tools such as programmers to burn the complete firmware into the memory on-site. Therefore, the existing firmware maintenance method has problems such as poor maintainability, inability to repair remotely, high repair costs, and increased downtime of electronic devices.

[0005] Therefore, how to provide a solution to the above-mentioned technical problems is a problem that needs to be solved by those skilled in the art. Summary of the Invention

[0006] This application provides a firmware maintenance method and system that can solve the problems of poor maintainability, inability to be remotely repaired, high maintenance costs, and increased downtime of electronic devices in existing firmware maintenance methods.

[0007] To solve the above-mentioned technical problems, this application is implemented as follows:

[0008] This application provides a firmware maintenance method, comprising: establishing a connection with an expansion card via a bus interface, wherein the expansion card includes: a processing unit, logic devices, and a memory; the logic devices include a selector and a memory control module interconnected thereto; the selector selectively connects the memory to the processing unit or the memory control module; the memory control module is connected to the processing unit; the memory control module is configured such that the selector selects to connect the memory to the memory control module; after connecting the memory to the memory control module, the memory control module is accessed to burn new firmware into the memory; after the new firmware is burned into the memory, the memory control module is configured such that the selector selects to connect the memory to the processing unit; and after connecting the memory to the processing unit, the memory control module is configured to trigger the processing unit to reload the new firmware in the memory.

[0009] This application provides a firmware maintenance system, comprising: a plug-in card and an electronic device. The plug-in card includes: a processing unit, a logic device, and a memory. The logic device includes a selector and a memory control module interconnected. The selector selectively connects the memory to either the processing unit or the memory control module, and the memory control module is connected to the processing unit. The electronic device includes: a bus interface and a control unit. The control unit is connected to the bus interface, and the bus interface is connected to the plug-in card. The control unit is configured to configure the memory control module such that the selector selects to connect the memory to the memory control module. Then, the memory control module is accessed to burn new firmware into the memory. Next, the memory control module is configured such that the selector selects to connect the memory to the processing unit. Finally, the memory control module is configured to trigger the processing unit to reload the new firmware from the memory.

[0010] In this embodiment, a logic device is added to the plug-in card, and the bus interface on the plug-in card is fully utilized. This allows the electronic device to set or access the memory control module of the logic device through the bus interface to program the memory on the plug-in card (i.e., burn new firmware into the memory). Since the processing unit on the plug-in card is not required during firmware maintenance, the electronic device can still perform firmware maintenance operations on the plug-in card even if the processing unit on the plug-in card is not working properly. This solves the problems of poor maintainability, inability to remotely repair, high repair costs, and increased downtime of electronic devices in existing firmware maintenance methods, and has the advantages of high reliability and convenient maintenance. Attached Figure Description

[0011] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:

[0012] Figure 1This is a block diagram of an embodiment of the firmware maintenance system according to this application;

[0013] Figure 2 This is a block diagram of another embodiment of the firmware maintenance system according to this application;

[0014] Figure 3 A flowchart illustrating an embodiment of the firmware maintenance method according to this application; and

[0015] Figure 4 This is a flowchart of another embodiment of the firmware maintenance method according to this application. Detailed Implementation

[0016] The embodiments of the present invention will be described below with reference to the accompanying drawings. In these drawings, the same reference numerals denote the same or similar components or method flows.

[0017] It must be understood that the use of terms such as "comprising" or "including" in this specification is intended to indicate the presence of specific technical features, values, method steps, work processes and / or components, but does not preclude the addition of more technical features, values, method steps, work processes, components, or any combination thereof.

[0018] It is important to understand that when a component is described as "connected" or "coupled" to another component, it can be a direct connection or coupling to other components, and there may be intermediate components. Conversely, when a component is described as "directly connected" or "directly coupled" to another component, there are no intermediate components.

[0019] Please see Figure 1 This is a block diagram of an embodiment of the firmware maintenance system according to this application. Figure 1 As shown, the firmware maintenance system 100 includes: a plug-in card 110 and an electronic device 120. The plug-in card 110 includes: a processing unit 112, a logic device 114, and a memory 116. The logic device 114 includes a selector 50 and a memory control module 60 connected to each other. The selector 50 selectively connects the memory 116 to the processing unit 112 or the memory control module 60. The memory control module 60 is connected to the processing unit 112. The electronic device 120 includes a mainboard 122. The mainboard 122 includes: a bus interface 70 and a control unit 80. The control unit 80 is connected to the bus interface 70.

[0020] The card 110 can be, but is not limited to, a smart network card, a graphics processing unit (GPU) card, or a digital signal processing card; the processing unit 112 can be, but is not limited to, a processor or a field-programmable logic array; and the memory 116 can be, but is not limited to, flash memory with a Serial Peripheral Interface (SPI) or an inter-integrated circuit (I-IC) bus. 2 C) The interface is an electrically erasable programmable read-only memory (EEPROM). The control unit 80 may be, but is not limited to, a Baseboard Management Controller (BMC) or a Central Processing Unit (CPU). In some embodiments, the plug-in card 110 may be, but is not limited to, a Peripheral Component Interconnect (PCIe) card with a standard PCIe slot interface; the motherboard 122 has a standard PCIe slot, allowing plug-in cards 110 developed by different manufacturers to be inserted into the PCIe slots of different motherboards 122; the electronic device 120 may be, but is not limited to, a server or a personal computer.

[0021] In this embodiment, the memory 116 is a flash memory with a serial peripheral interface. The processing unit 112 and the memory control module 60 also have serial peripheral interfaces. Therefore, the selector 50 can selectively connect the serial peripheral interface of the memory 116 to the serial peripheral interface of the processing unit 112 or the serial peripheral interface of the memory control module 60. In another embodiment, the memory 116 is an electrically erasable programmable read-only memory with an integrated circuit bus interface. The processing unit 112 and the memory control module 60 also have integrated circuit bus interfaces, allowing the selector 50 to selectively connect the integrated circuit bus interface of the memory 116 to the integrated circuit bus interface of the processing unit 112 or the integrated circuit bus interface of the memory control module 60.

[0022] After the card 110 is inserted into the slot of the motherboard 122, the motherboard 122 of the electronic device 120 establishes a connection with the card 110 through the bus interface 70 (i.e., the bus interface 70 is configured to establish a connection with the card 110); the control unit 80 is configured to set the memory control module 60 so that the selector 50 selects to connect the memory 116 to the memory control module 60; then, the memory control module 60 is accessed to burn new firmware into the memory 116 through the memory control module 60; then, the memory control module 60 is set so that the selector 50 selects to connect the memory 116 to the processing unit 112; after that, the memory control module 60 is set to trigger the processing unit 112 to reload the new firmware in the memory 116.

[0023] Specifically, based on the firmware maintenance requirements of the plug-in card 110, the electronic device 120 reads new firmware from the network or hard drive via the motherboard 122 (i.e., obtains new firmware); then, the control unit 80 of the motherboard 122 configures the memory control module 60 through the bus interface 70, causing the selector 50 to select to connect the serial peripheral interface of the memory 116 to the serial peripheral interface of the memory control module 60; then, the control unit 80 of the motherboard 122 accesses the memory control module 60 through the bus interface 70 to transfer the new firmware to the memory control module 60, thereby burning the new firmware into the memory 116 through the memory control module 60; after that, the control unit 80 of the motherboard 122 configures the memory control module 60 through the bus interface 70, causing the selector 50 to select to switch the serial peripheral interface of the memory 116 to the serial peripheral interface of the processing unit 112; finally, the control unit 80 of the motherboard 122 configures the memory control module 60 through the bus interface 70, causing the memory control module 60 to trigger the processing unit 112 to reload the new firmware in the memory 116.

[0024] In one example, for a field-programmable logic array (FPGA), firmware refers to the configuration file of the FPGA. Therefore, when the processing unit 112 is an FPGA, the control unit 80 triggers the processing unit 112 to reload the new firmware in the memory 116 through the memory control module 60. This can be the control unit 80 triggering the FPGA to reload the new configuration file in the memory 116 through the memory control module 60 (i.e., the control unit 80 is configured to set the memory control module 60 to trigger the FPGA to reload the new firmware in the memory 116).

[0025] In another example, for the processor, the firmware is its boot code. Therefore, when the processing unit 112 is the processor, the control unit 80 triggers the processing unit 112 to reload the new firmware in the memory 116 through the memory control module 60. This can be achieved by the control unit 80 restarting the processor through the memory control module 60 to reload the new firmware in the memory 116 (i.e., the control unit 80 is configured to set the memory control module 60 to restart the processor, thereby reloading the new firmware in the memory 116).

[0026] In one embodiment, by default, selector 50 connects memory 116 to processing unit 112.

[0027] Please see Figure 2 This is a block diagram of another embodiment of the firmware maintenance system according to this application. Figure 2 As shown, the memory control module 60 includes a control register 62, and the control unit 80 is configured to set the control register 62 to control the selection of the selector 50 (i.e., the control selector 50 connects the memory 116 to the processing unit 112 or the memory control module 60) or to trigger a restart signal or a reload signal to the processing unit 112 (i.e., restart the processor or trigger the field-programmable logic array to reload the new firmware in the memory 116).

[0028] In one embodiment, the bus interface 70 is a System Management Bus (SMB) interface, and the logic device 114 is a complex programmable logic device. The logic device 114 may further include a system management bus controller 90 connected to the system management bus interface (i.e., bus interface 70). The memory control module 60 may include a memory controller 64, a command register 66, and a data register 68. The control unit 80 is configured to read and write the command register 66 and the data register 68 through the system management bus controller 90, so that the memory controller 64 can access the memory 116 through the command register 66 and the data register 68 and burn new firmware into the memory 116. Specifically, the memory controller 64 is configured to send a write command to the memory 116 through the command register 66 and send new firmware data to the memory 116 through the data register 68.

[0029] In addition, the command register 66 can also be used to store commands sent by the memory controller 64 to the memory 116, such as read commands, write commands, erase commands, etc.; the data register 68 can also be used to store data related to the commands stored in the command register 66, and to store the data returned by the memory controller 64 after executing the commands.

[0030] In one example, when memory 116 is flash memory, the memory controller is a serial peripheral interface controller. In another example, when memory 116 is electrically erasable programmable read-only memory, the memory controller is an integrated circuit bus controller.

[0031] In one embodiment, bus interface 70 is a system management bus interface, and plug-in card 110 is a peripheral component quick interconnect plug-in card. When plug-in card 110 malfunctions, the system management bus interface (i.e., bus interface 70) is also configured to establish a connection with the malfunctioning peripheral component quick interconnect plug-in card (i.e., plug-in card 110), and control unit 80 is also configured to set the memory control module 60 of the malfunctioning peripheral component quick interconnect plug-in card (i.e., plug-in card 110) so that selector 50 selects to connect memory 116 to memory control module 60. Then, memory control module 60 is accessed to read back the current firmware stored in memory 116 and store it as a file on external storage, which may be, but is not limited to, disk 10 of electronic device 120. Then, based on the read-back file stored on external storage, it is determined whether the current firmware stored in memory 116 is corrupted. In some embodiments, disk 10 may be, but is not limited to, other non-disk type storage, such as solid-state drive. In some embodiments, the electronic device 120 may be, but is not limited to, a server or a personal computer, and the disk 10 may be, but is not limited to, located in a server or a personal computer.

[0032] Specifically, after a faulty peripheral component quick interconnect card (i.e., a malfunctioning card 110) returned during the production process or operation is inserted into the peripheral component quick interconnect slot of the motherboard 122, the motherboard 122 establishes a connection with the malfunctioning card 110 through the system management bus interface (i.e., bus interface 70). Next, the control unit 80 configures the memory control module 60 of the malfunctioning card 110 through the system management bus interface (i.e., bus interface 70), causing the selector 50 to select the memory 116 to be connected to the memory control module 60. Then, the control unit 80 accesses the memory control module 60 through the system management bus interface 70 to read back the current firmware stored in the memory 116 and store it as a file on the disk 10 of the electronic device 120. Afterward, the control unit 80 compares the read-back file with the correct file (i.e., the file corresponding to the complete current firmware). If they match, it is determined that the current firmware stored in the memory 116 is intact, and the reason why the card 110 is not working properly is elsewhere. Otherwise, it is determined that the current firmware stored in the memory 116 is corrupted. Therefore, the firmware maintenance system 100 can help locate faults in the plug-in card 110 that returns a fault during the production or operation process.

[0033] In one embodiment, the bus interface 70 is a system management bus interface, and the logic device 114 is a complex programmable logic device. The logic device 114 may further include a system management bus controller 90 connected to the system management bus interface (i.e., bus interface 70). The memory control module 60 may include a memory controller 64, a command register 66, and a data register 68. The control unit 80 is configured to read and write the command register 66 and the data register 68 through the system management bus controller 90, so that the memory controller 64 accesses the memory 116 through the command register 66 and the data register 68, and reads back the current firmware stored in the memory 116. Specifically, the memory controller 64 is configured to send a read command to the memory 116 through the command register 66; and read back the data of the current firmware stored in the memory 116 through the data register 68.

[0034] In one embodiment, the control unit 80 is further configured to access the memory control module 60 when it determines that the current firmware stored in the memory 116 is corrupted, so as to burn the lossless firmware corresponding to the current firmware into the memory 116 through the memory control module 60. Therefore, if the card 110 malfunctions due to firmware corruption, the firmware maintenance system 100 can help to repair it conveniently without the need for additional tools such as a programmer.

[0035] In one embodiment, the bus interface 70 is a system management bus interface, and the logic device 114 is a complex programmable logic device. The logic device 114 may further include a system management bus controller 90 connected to the system management bus interface (i.e., bus interface 70). The memory control module 60 may include a memory controller 64, a command register 66, and a data register 68. The control unit 80 is configured to read and write the command register 66 and the data register 68 through the system management bus controller 90, so that the memory controller 64 accesses the memory 116 through the command register 66 and the data register 68, and burns the complete and correct current firmware (i.e., the lossless firmware corresponding to the current firmware) into the memory 116.

[0036] Please see Figure 3 This is a flowchart of an embodiment of the firmware maintenance method according to this application. Figure 3As shown, the firmware maintenance method is applied to an electronic device and includes: establishing a connection with a plug-in card via a bus interface, wherein the plug-in card includes: a processing unit, a logic device, and a memory, the logic device including a selector and a memory control module interconnected, the selector selectively connecting the memory to the processing unit or the memory control module, and the memory control module connecting to the processing unit (step 310); setting the memory control module so that the selector selects to connect the memory to the memory control module (step 320); after connecting the memory to the memory control module, accessing the memory control module to burn new firmware into the memory through the memory control module (step 330); after burning the new firmware into the memory, setting the memory control module so that the selector selects to connect the memory to the processing unit (step 340); and after connecting the memory to the processing unit, setting the memory control module to trigger the processing unit to reload the new firmware in the memory (step 350).

[0037] Therefore, the electronic device sets or accesses the memory control module of the logic device added to the plug-in card through the bus interface to burn new firmware into the memory of the plug-in card, and triggers the processing unit on the plug-in card to reload the new firmware in the memory. This solves the problems of poor maintainability, inability to remotely repair, high repair costs, and increased downtime of electronic devices in the event of firmware maintenance failure in existing firmware maintenance methods. For detailed explanation, please refer to the relevant descriptions in the above embodiments, which will not be repeated here.

[0038] In one embodiment, the memory control module may include a control register; setting the memory control module in steps 320 and 340 may include setting the control register to control the selection of the selector. In other words, the selector may connect the memory to the processing unit or the memory control module based on the data in the control register. For detailed explanations, please refer to the relevant descriptions in the above embodiments, which will not be repeated here.

[0039] In one embodiment, the bus interface may be a system management bus interface, and the logic device may be a complex programmable logic device. The logic device may further include a system management bus controller connected to the system management bus interface. The memory control module may include a memory controller, a command register, and a data register. The memory controller is connected to the command register and the data register. Therefore, step 330, accessing the memory control module to burn the new firmware into the memory, may include reading and writing the command register and the data register through the system management bus controller, so that the memory controller accesses the memory through the command register and the data register and burns the new firmware into the memory. Specifically, the memory controller sends a write command to the memory through the command register and sends the data of the new firmware to the memory through the data register. Therefore, the memory controller burns the new firmware into the memory through the command register and the data register. For detailed explanation, please refer to the relevant descriptions of the above embodiments, which will not be repeated here.

[0040] In one embodiment, the memory control module may include a control register; setting the memory control module in step 350 may include setting the control register to trigger a restart signal or a reload signal to the processing unit.

[0041] In one embodiment, the processing unit may be a processor or a field-programmable logic array (FPGA). Step 350, triggering the processing unit to reload the new firmware in the memory, may include: restarting the processor to reload the new firmware in the memory; or triggering the FPGA to reload the new firmware in the memory. For detailed explanations, please refer to the relevant descriptions in the above embodiments; they will not be repeated here.

[0042] Please see Figure 4 This is a flowchart of another embodiment of the firmware maintenance method according to this application. In this embodiment, the bus interface is a system management bus interface, and the plug-in card can be a peripheral component quick interconnect plug-in card. In addition to steps 310 to 350, the firmware maintenance method may also include: establishing a connection with the malfunctioning peripheral component quick interconnect plug-in card through the system management bus interface, and setting a memory control module so that the selector selects to connect the memory to the memory control module (step 410); after connecting the memory to the memory control module, accessing the memory control module to read back the current firmware stored in the memory through the memory control module, and storing it as a file in external memory (step 420); determining whether the current firmware stored in the memory is corrupted based on the file read back from the external memory (step 430). Therefore, the effect of fault location can be achieved. For detailed description, please refer to the relevant description of the above embodiments, which will not be repeated here. It should be noted that, in order to avoid Figure 4 The drawing is too complex, so steps 310 to 350 are omitted.

[0043] In one embodiment, the firmware maintenance method may further include: when it is determined that the current firmware stored in the memory is corrupted, accessing the memory control module to burn the lossless firmware corresponding to the current firmware into the memory via the memory control module (step 440). Therefore, the firmware can be easily repaired. For detailed explanations, please refer to the relevant descriptions in the above embodiments, which will not be repeated here.

[0044] It should be noted that if there is no causal relationship between the above steps, this application does not limit the order in which they are performed.

[0045] In summary, the firmware maintenance method and system of this application add a logic device to the plug-in card and fully utilize the bus interface on the plug-in card. This allows the electronic device to set or access the memory control module of the logic device through the bus interface to program the memory on the plug-in card (i.e., burn new firmware into the memory). Since the processing unit on the plug-in card is not required during firmware maintenance, the electronic device can still perform firmware maintenance operations on the plug-in card even if the processing unit on the plug-in card is not working properly. This solves the problems of poor maintainability, inability to remotely repair, high repair costs, and increased downtime of electronic devices in the case of firmware maintenance failure in existing firmware maintenance methods, and has the advantages of high reliability and convenient maintenance.

[0046] Furthermore, for faulty expansion cards returned during production or operation, the firmware maintenance method and system of this application can help locate the fault. Moreover, if the expansion card malfunctions due to firmware corruption, the firmware maintenance method and system of this application can help with convenient repair without the need for additional tools such as programmers.

[0047] While the present invention has been described using the above embodiments, it should be noted that these descriptions are not intended to limit the invention. Rather, this invention encompasses modifications and similar arrangements that are obvious to those skilled in the art. Therefore, the scope of the claims should be interpreted in the broadest possible sense to include all obvious modifications and similar arrangements.

Claims

1. A firmware maintenance method suitable for an electronic device, characterized by, include: A connection is established with an expansion card via a bus interface. The expansion card includes a processing unit, a logic device, and a memory. The logic device includes a selector and a memory control module that are interconnected. The selector selectively connects the memory to the processing unit or the memory control module. The memory control module is connected to the processing unit. The memory control module is configured such that the selector selects to connect the memory to the memory control module. After connecting the memory to the memory control module, access the memory control module to burn new firmware into the memory through the memory control module; After the new firmware is burned into the memory, the memory control module is configured to allow the selector to choose to connect the memory to the processing unit; and After connecting the memory to the processing unit, the memory control module is configured to trigger the processing unit to reload the new firmware in the memory; Wherein, the bus interface is a system management bus interface, the plug-in card is a peripheral component quick interconnect plug-in card, and the firmware maintenance method further includes: The system management bus interface establishes a connection with the peripheral component quick interconnect card that is not working properly, and the memory control module is configured so that the selector selects to connect the memory to the memory control module; After connecting the memory to the memory control module, access the memory control module to read back the current firmware stored in the memory and store it as a file on external storage; and The file read back from the external storage is compared with the file corresponding to the complete current firmware to determine whether the current firmware stored in the storage has been corrupted.

2. The firmware maintenance method of claim 1, wherein, Also includes: When it is determined that the current firmware stored in the memory is corrupted, the memory control module is accessed so that the lossless firmware corresponding to the current firmware can be burned into the memory through the memory control module.

3. The firmware maintenance method of claim 1, wherein, The memory control module includes a control register; the steps for setting the memory control module include: The control register is configured to control the selection of the selector or to trigger a restart signal or reload signal to the processing unit.

4. The firmware maintenance method of claim 1, wherein, The logic device is a complex programmable logic device, and the logic device further includes: a system management bus controller connected to the system management bus interface; the memory control module includes: a memory controller, a command register, and a data register, the memory controller being connected to the command register and the data register; the step of accessing the memory control module to burn new firmware into the memory includes: The system management bus controller reads and writes the command register and the data register, enabling the memory controller to access the memory through the command register and the data register, and to burn the new firmware into the memory.

5. The firmware maintenance method of claim 4, wherein, The steps of the memory controller accessing the memory through the command register and the data register, and burning the new firmware to the memory include: The memory controller sends write commands to the memory through the command register; and The memory controller sends the new firmware data to the memory through the data register.

6. The firmware maintenance method of claim 1, wherein, The processing unit is a processor or a field-programmable logic array, and the step of triggering the processing unit to reload the new firmware in the memory includes: Reboot the processor to reload the new firmware from the memory; or The field-programmable logic array is triggered to reload the new firmware in the memory.

7. A firmware maintenance system characterized by comprising: include: An insert card includes: a processing unit, logic devices, and a memory, wherein the logic devices include a selector and a memory control module interconnected thereto, the selector selectively connecting the memory to the processing unit or the memory control module, and the memory control module being connected to the processing unit; and... Electronic devices, including: The bus interface is configured to establish a connection with the plug-in card; and The control unit, connected to the bus interface, is configured to set the memory control module such that the selector selects to connect the memory to the memory control module; then, access the memory control module to burn new firmware into the memory; then, set the memory control module such that the selector selects to connect the memory to the processing unit; and finally, set the memory control module such that it triggers the processing unit to reload the new firmware from the memory. Wherein, the bus interface is a system management bus interface, the plug-in card is a peripheral component quick interconnect plug-in card, and the system management bus interface is also configured to establish a connection with the peripheral component quick interconnect plug-in card that is not working properly; the control unit is also configured to set the memory control module of the peripheral component quick interconnect plug-in card that is not working properly, so that the selector selects to connect the memory to the memory control module; then, the memory control module is accessed to read back the current firmware stored in the memory through the memory control module and store it as a file on the external memory; then, the file read back stored on the external memory is compared with the file corresponding to the complete current firmware to determine whether the current firmware stored in the memory has been corrupted.

8. The firmware maintenance system of claim 7, wherein, The control unit is also configured to access the memory control module when it is determined that the current firmware stored in the memory is corrupted, so as to burn the lossless firmware corresponding to the current firmware into the memory through the memory control module.

9. The firmware maintenance system of claim 7, wherein, The memory is a flash memory or an electrically erasable programmable read-only memory. The memory control module includes a memory controller that is a serial peripheral interface controller or an integrated circuit bus controller. The external memory is a disk or solid-state drive of a server or personal computer.

10. The firmware maintenance system of claim 7, wherein, The memory control module includes a control register, and the control unit is configured to set the control register to control the selection of the selector or to trigger a restart signal or reload signal to the processing unit.

11. The firmware maintenance system of claim 7, wherein, The logic device is a complex programmable logic device, and the logic device further includes: a system management bus controller connected to the system management bus interface; the memory control module includes: a memory controller, a command register, and a data register; the control unit is configured to read and write the command register and the data register through the system management bus controller, so that the memory controller can access the memory through the command register and the data register, and burn the new firmware into the memory.

12. The firmware maintenance system of claim 11, wherein, The memory controller is configured to send write commands to the memory via the command register and to send data of the new firmware to the memory via the data register.

13. The firmware maintenance system of claim 7, wherein, The processing unit is a processor or a field-programmable logic array; the control unit is configured to set the memory control module to restart the processor or trigger the field-programmable logic array to reload the new firmware in the memory.

14. The firmware maintenance system of claim 7, wherein, By default, the selector connects the memory to the processing unit.