Firmware updating method and device for power supply unit, equipment and medium

The integrated circuit bus address of the power supply unit is obtained through the substrate management controller, firmware update instructions are broadcasted and data blocks are sent, which solves the problem of low firmware update efficiency of power supply unit power supply unit of high-density servers and multi-node servers, and realizes a more efficient firmware update process.

CN120491992APending Publication Date: 2025-08-15INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510462434.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-14
Publication Date
2025-08-15

AI Technical Summary

Technical Problem

The power supply units of high-density servers and multi-node servers are inefficient when firmware is updated, resulting in reduced production server efficiency.

Method used

The substrate management controller obtains the integrated circuit bus addresses of multiple power supply units, broadcasts firmware update instructions, and causes multiple power supply units to enter firmware update mode at the same time, and sends data blocks to update, generates firmware update information, and finally generates an exit update instruction to exit mode.

Benefits of technology

The firmware of multiple power supply units is updated simultaneously through the integrated circuit bus address, saving firmware update time and improving the efficiency of production servers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120491992A_ABST
    Figure CN120491992A_ABST
Patent Text Reader

Abstract

The invention discloses a firmware updating method and device for power supply units, equipment and a medium, and relates to the technical field of servers. Integrated circuit bus addresses of a plurality of to-be-updated power supply units are obtained through a substrate management controller; a firmware updating instruction is broadcasted to a plurality of to-be-updated power supply units through an integrated circuit bus address, the power supply units enter a firmware updating mode according to the firmware updating instruction, firmware updating is carried out on to-be-updated data blocks, firmware updating information is generated, the substrate management controller generates an updating quit instruction according to the firmware updating information, and the updating quit instruction is sent to the plurality of to-be-updated power supply units. Compared with the prior art, the firmware of the plurality of power supply units is updated at the same time through the bus address of the integrated circuit, the firmware updating time is saved, and the efficiency of producing the server is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of server technology, and in particular to a method, apparatus, device, and medium for updating firmware of a power supply unit. Background Art

[0002] The power supply unit is a key component in electronic equipment. It converts AC power into the DC power required by the equipment and provides power for the server. For high-density servers and multi-node servers, due to the high density and high power of the servers, multiple power supply units are required. The power supply unit is connected to the server's baseboard management controller through an integrated circuit bus. When the server is produced, the server firmware needs to be updated.

[0003] In the current related technologies, high-density servers and multi-node servers are configured with more power supply units and multiple power supply units are set on the same integrated circuit bus. When the firmware is updated, the firmware refresh time of each power supply unit is longer, resulting in reduced efficiency of the production server. Summary of the Invention

[0004] The present application provides a method, apparatus, device and medium for updating the firmware of a power supply unit, so as to at least solve the problem of reduced efficiency of production servers in the related art.

[0005] The present application provides a method for updating the firmware of a power supply unit, comprising:

[0006] Obtaining integrated circuit bus addresses of a plurality of power supply units to be updated;

[0007] generating a firmware update instruction according to the integrated circuit bus addresses of the plurality of power supply units to be updated;

[0008] Sending a firmware update instruction to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated enter a firmware update mode according to the firmware update instruction;

[0009] Sending the data block to be updated to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated perform firmware update according to the data block to be updated, and generate a plurality of firmware update information;

[0010] receiving a plurality of firmware update information sent by a plurality of power supply units to be updated;

[0011] generating an exit update instruction according to multiple firmware update information;

[0012] Sending an exit update instruction to the plurality of power supply units to cause the plurality of power supply units to exit the firmware update mode.

[0013] The present application also provides a firmware update device for a power supply unit, comprising:

[0014] An acquisition module, configured to acquire integrated circuit bus addresses of a plurality of power supply units to be updated;

[0015] a first generating module, configured to generate a firmware update instruction according to the integrated circuit bus addresses of the plurality of power supply units to be updated;

[0016] a first sending module, configured to send the firmware update instruction to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated enter a firmware update mode according to the firmware update instruction;

[0017] a second sending module, configured to send the data block to be updated to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated perform firmware update according to the data block to be updated, and generate a plurality of firmware update information;

[0018] A first receiving module, configured to receive a plurality of firmware update information sent by the plurality of power supply units to be updated;

[0019] A second generating module is configured to generate an exit update instruction according to the plurality of firmware update information;

[0020] The third sending module is configured to send the exit update instruction to a plurality of power supply units, so as to cause the plurality of power supply units to exit the firmware update mode.

[0021] The present application also provides an electronic device, comprising: a memory for storing a computer program; and a processor for implementing the steps of any of the above-mentioned methods for updating the firmware of a power supply unit when executing the computer program.

[0022] The present application also provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above-mentioned methods for updating the firmware of the power supply unit are implemented.

[0023] The present application also provides a computer program product, including a computer program, which implements the steps of any of the above-mentioned methods for updating the firmware of the power supply unit when the computer program is executed by a processor.

[0024] Through this application, since the baseboard management controller obtains the integrated circuit bus addresses of multiple power supply units to be updated, and broadcasts firmware update instructions to multiple power supply units to be updated through the integrated circuit bus addresses, the power supply units enter the firmware update mode according to the firmware update instructions, perform firmware updates on the data blocks to be updated, and generate firmware update information. The baseboard management controller generates an exit update instruction according to the firmware update information. Compared with the related technology, the firmware of multiple power supply units is updated simultaneously through the integrated circuit bus addresses, which saves firmware update time and improves the efficiency of production servers. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] In order to more clearly illustrate the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0026] Figure 1 A schematic diagram of an application scenario of a firmware update method for a power supply unit provided in an embodiment of the present application;

[0027] Figure 2 A flowchart of a method for updating the firmware of a power supply unit provided in an embodiment of the present application;

[0028] Figure 3 A schematic diagram of the structure of a firmware update device for a power supply unit provided in an embodiment of the present application;

[0029] Figure 4 This is a schematic diagram of the structure of the electronic device provided in this application. DETAILED DESCRIPTION

[0030] The following will be combined with the accompanying drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0031] It should be noted that, in the description of this application, the terms "comprises," "includes," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. The terms "first," "second," etc., in this application are used to distinguish similar objects, and are not used to describe a particular order or sequence.

[0032] First, let’s explain the terms involved in this application:

[0033] Integrated Circuit Bus: I2C (Inter-Integrated Circuit) is a serial communication bus that uses a multi-master-slave architecture to facilitate communication between motherboards, embedded systems or mobile phones and peripheral device components.

[0034] Power supply unit (PSU) is a key component in electronic devices. It is responsible for converting AC power into DC power required by the device, providing a stable power supply for various components of devices such as computers or servers.

[0035] Baseboard Management Controller: A baseboard management controller (BMC) is a microcontroller system that manages and monitors the server's hardware status, such as temperature, fan speed, and voltage, and can perform remote control and diagnostic functions.

[0036] In order to solve the problem of reduced efficiency of production servers in related technologies, the embodiments of the present application propose the following technical concepts: the inventor considers obtaining the integrated circuit bus addresses of multiple power supply units through a baseboard management controller, sending firmware update instructions to the power supply units by broadcasting, and the power supply units enter the firmware update mode according to the firmware update instructions. Multiple power supply units simultaneously perform firmware updates on the data blocks to be updated, generate firmware update information, generate an exit update instruction through the baseboard management controller, and the power supply units exit the firmware update mode. Compared with related technologies, the firmware of multiple power supply units is upgraded at the same time, saving firmware update time.

[0037] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below with reference to the accompanying drawings and specific implementation methods.

[0038] In conjunction with the specific application environment architecture or specific hardware architecture on which the execution of the firmware update method of the power supply unit depends, the specific application environment architecture or the specific hardware architecture is described herein.

[0039] refer to Figure 1 , Figure 1 Schematic diagram of an application scenario of the firmware update method of the power supply unit provided in the embodiment of the present application. Figure 1 As shown, the scenario includes: a baseboard management controller 101 and multiple power supply units 102 .

[0040] The baseboard management controller 101 is connected to the plurality of power supply units 102 via an integrated circuit bus.

[0041] Specifically, the baseboard management controller 101 obtains the integrated circuit bus addresses of multiple power supply units 102, generates a firmware update instruction, and sends the firmware update instruction to multiple power supply units 102. The power supply unit 102 enters the firmware update mode according to the update instruction, and receives the data block to be updated sent by the baseboard management controller 101, performs firmware update, and sends the generated multiple firmware update information to the baseboard management controller 101. The basic management controller 101 generates an exit update instruction according to the firmware update information, sends the firmware update instruction to the power supply unit 102, and the power supply unit 102 exits the firmware update mode.

[0042] Figure 2 A flowchart of a method for updating the firmware of a power supply unit according to an embodiment of the present invention is shown in FIG. Figure 2 As shown, an embodiment of the present application provides a method for updating the firmware of a power supply unit, and the method is described in detail as follows:

[0043] S201: Obtain integrated circuit bus addresses of a plurality of power supply units to be updated.

[0044] In this embodiment, the baseboard management controller and the multiple power supply units are in an I2C bus architecture, and one baseboard management controller master device is connected to multiple power supply unit slave devices.

[0045] In this embodiment, the baseboard management controller is a master node, and the multiple power supply units to be updated are slave nodes. The master node communicates with the slave nodes in a broadcasting manner.

[0046] In this embodiment, the multiple power supply units are of the same type.

[0047] S202: Generate a firmware update instruction according to the integrated circuit bus addresses of the power supply units to be updated.

[0048] In this embodiment, the baseboard management controller sets the power supply unit to be updated to the firmware update mode through the firmware update instruction.

[0049] S203: Sending a firmware update instruction to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated enter a firmware update mode according to the firmware update instruction.

[0050] Specifically, the baseboard management controller sends the firmware update instruction to the integrated circuit bus address of the power supply unit. After receiving the firmware update instruction, the power supply unit enters the firmware update mode and responds to the I2C broadcast address of the baseboard management controller.

[0051] S204: Sending the data block to be updated to the multiple power supply units to be updated, so that the multiple power supply units to be updated perform firmware update according to the data block to be updated, and generating multiple firmware update information.

[0052] Specifically, the baseboard management controller sends the data block to be updated to the multiple power supply units to be updated through I2C broadcast.

[0053] S205: Receive multiple firmware update information sent by multiple power supply units to be updated.

[0054] In this embodiment, the firmware update information records the firmware update completion degree and firmware update error information in the power supply unit.

[0055] The firmware update error information indicates whether an update error occurs during the update process of the power supply unit.

[0056] Specifically, the power supply unit sends the updated firmware update information to the baseboard management controller through a broadcast response operation.

[0057] S206: Generate an exit update instruction according to the multiple firmware update information.

[0058] Specifically, a confirmation instruction is generated according to the firmware update information, and whether the power supply unit needs to be retransmitted is determined according to the confirmation instruction. The retransmitted data block is sent to the power supply unit that needs to be retransmitted, the number of retransmissions is recorded, and an exit update instruction is generated.

[0059] S207: Sending an exit update instruction to the plurality of power supply units to cause the plurality of power supply units to exit the firmware update mode.

[0060] Specifically, the baseboard management controller sends an exit update instruction to the integrated circuit bus address of the power supply unit, and the power supply unit exits the firmware update mode.

[0061] It can be seen from the above embodiments that the integrated circuit bus addresses of multiple power supply units to be updated are obtained through the baseboard management controller, and the firmware update instructions are broadcast to the multiple power supply units to be updated through the integrated circuit bus addresses. The power supply units enter the firmware update mode according to the firmware update instructions, perform firmware updates on the data blocks to be updated, and generate firmware update information. The baseboard management controller generates an exit update instruction according to the firmware update information. Compared with the related art, the firmware of multiple power supply units is updated simultaneously through the integrated circuit bus addresses, which saves firmware update time and improves the efficiency of production servers.

[0062] In one embodiment of the present application, step S206 includes:

[0063] S2061: Generate a confirmation instruction according to the multiple firmware update information.

[0064] In this embodiment, the confirmation instruction is to confirm the power supply unit that needs to be retransmitted.

[0065] S2062: Send a confirmation instruction to the multiple power supply units, so that the multiple power supply units determine whether the firmware needs to be retransmitted according to the confirmation instruction and generate retransmission information.

[0066] In this embodiment, the retransmission information includes the integrated circuit bus address of the power supply unit that needs to be retransmitted and the integrated circuit bus address of the power supply unit that does not need to be retransmitted.

[0067] S2063: Receive retransmission information sent by multiple power supply units.

[0068] Specifically, the retransmission information sent by the power supply unit is received by wireless communication.

[0069] S2064: Determine the power supply unit that needs to be retransmitted among the multiple power supply units based on the retransmission information. Specifically, the baseboard management controller obtains the integrated circuit bus address of the power supply unit that needs to be retransmitted and sends the retransmission data block to the integrated circuit bus address of the power supply unit that needs to be retransmitted.

[0070] S2065: Send the retransmitted data block to the power supply unit that needs to retransmit, so that the power supply unit that needs to retransmit performs a firmware replication operation, and records the number of retransmissions according to the firmware replication operation.

[0071] Specifically, the baseboard management controller sends the retransmission data block to the power supply unit that needs to be retransmitted by broadcasting. The power supply unit updates its firmware according to the retransmission data block and records the number of retransmissions.

[0072] S2066: Receive the retransmission count sent by the power supply unit that needs to retransmit.

[0073] Specifically, the number of retransmissions sent by the power supply unit is received by wireless communication.

[0074] S2067: Determine whether the number of retransmissions exceeds the retransmission limit.

[0075] Specifically, if the number of retransmissions does not exceed the retransmission limit, the unupdated data blocks are updated.

[0076] Specifically, if the number of retransmissions exceeds the retransmission limit, an error is marked and the retransmission ends.

[0077] S2068: If the number of retransmissions does not exceed the retransmission limit, an exit update instruction is generated.

[0078] Specifically, if the number of retransmissions does not exceed the retransmission limit, the baseboard management controller generates a query instruction to query whether the firmware of the power supply unit has been completely updated. If the firmware has been completely updated, an exit update instruction is generated.

[0079] It can be seen from the above embodiment that by sending a confirmation instruction to the power supply unit to be updated during the data block transmission process, the power supply unit to be updated determines whether the firmware needs to be retransmitted based on the confirmation instruction and generates retransmission information. The baseboard management controller obtains the power supply unit that needs to be retransmitted based on the retransmission information and sends the retransmission data block. The power supply unit that needs to be retransmitted overwrites the firmware, records the number of retransmissions, and sends the number of retransmissions to the baseboard management controller to determine whether the retransmission limit is exceeded and generate an exit update instruction to avoid the occurrence of erroneous data blocks during the firmware update process, thereby improving transmission efficiency.

[0080] In one embodiment of the present application, after step S2067, the following steps are further included:

[0081] S2069: If the number of retransmissions exceeds the retransmission limit, the retransmission data block is released.

[0082] Specifically, if the number of retransmissions exceeds a preset maximum number of retransmissions, the baseboard management controller skips the corresponding data block.

[0083] S2070: Acquire the released retransmission data block and the integrated circuit bus address of the power supply unit that exceeds the retransmission limit.

[0084] Specifically, the baseboard management control marks the released retransmission data block and the integrated circuit bus address of the power supply unit that exceeds the retransmission limit. After the power supply units are all updated, the power supply unit that exceeds the retransmission limit is individually retransmitted to update the firmware.

[0085] S2071: Generate an error log according to the released retransmission data block and the integrated circuit bus address of the power supply unit that exceeds the retransmission limit.

[0086] In this embodiment, the contents recorded in the error log include but are not limited to the integrated circuit bus address of the power supply unit that exceeds the retransmission limit, the released retransmission data block, and the error code.

[0087] S2072: Generate an exit update instruction according to the error log.

[0088] Specifically, after generating the error log, the baseboard management controller generates a query instruction to query whether the firmware of the power supply unit has been completely updated. If the firmware has been completely updated, an exit update instruction is generated.

[0089] As can be seen from the above embodiment, if the number of retransmissions exceeds the retransmission limit, the retransmitted data block is released, and the retransmitted data block and the integrated circuit bus address of the power supply unit that exceeds the retransmission limit are recorded in the error log to avoid program jamming caused by unlimited retransmission. The power supply unit that needs to be retransmitted is updated separately according to the error log.

[0090] In one embodiment of the present application, step S2068 includes:

[0091] S301: If the number of retransmissions does not exceed the retransmission limit, a query instruction is sent to the plurality of power supply units, so that the plurality of power supply units obtain corresponding update completion degrees.

[0092] Specifically, the baseboard management controller sends a query instruction by broadcasting to obtain the update completion degree of the power supply unit.

[0093] S302: Receive multiple update completion levels sent by multiple power supply units.

[0094] Specifically, the update completion degree sent by the power supply unit is received via wireless communication.

[0095] S303: If the multiple power supply units in the multiple update completion levels are all updated, generate an exit update instruction.

[0096] Specifically, if the multiple power supply units are all updated, an exit update instruction is generated; if there is a power supply unit among the multiple power supply units that has not been updated, the firmware update operation is continued.

[0097] From the above embodiment, it can be seen that if the number of retransmissions does not exceed the retransmission limit, a query command is sent to obtain the update completion degree of the power supply unit. If all power supply units are updated, an exit update command is generated to end the firmware update state, thereby avoiding resource occupation caused by repeated firmware updates.

[0098] In one embodiment of the present application, before step S201, the following steps are further included:

[0099] S401: Sending an initialization instruction to a plurality of power supply units to be updated, so that the plurality of power supply units to be updated generate initial state information according to the initialization instruction.

[0100] Specifically, the baseboard management controller performs an initialization operation on the power supply unit through an initialization instruction, and sets an initial state of the I2C communication interface.

[0101] S402: Receive initial status information sent by multiple power supply units to be updated.

[0102] Specifically, the initial state information sent by the power supply unit is received by wireless communication.

[0103] S403: Divide the firmware to be updated into multiple data blocks according to the initial state information.

[0104] Specifically, according to the size of the buffer storage space of the power supply unit, the firmware to be updated is divided into a plurality of data blocks that do not exceed the size of the buffer storage space.

[0105] S404: Generate corresponding calculation check codes according to the multiple data blocks.

[0106] Specifically, according to a preset byte length, the byte text of the data block is intercepted, and the byte text is encrypted to obtain an encrypted calculation check code.

[0107] It can be seen from the above embodiment that by initializing multiple power supplies to be updated, obtaining the initial status information of the multiple power supplies to be updated, and dividing the firmware to be updated into multiple data blocks according to the initial status information, the efficiency of data transmission processing is improved, and a corresponding calculation check code is generated according to each data block, and the integrity of the data transmission process is ensured by calculating the check code.

[0108] In one embodiment of the present application, step S404 includes:

[0109] S4041: According to a preset byte length, truncate byte texts of multiple data blocks.

[0110] Exemplarily, the intercepted byte text may be the last 2 bytes of the data block.

[0111] S4042: Encrypt the byte text according to a preset encryption rule to obtain encrypted byte text.

[0112] In this embodiment, encryption rules include but are not limited to symmetric encryption, asymmetric encryption, and homomorphic encryption.

[0113] S4043: Determine the encrypted byte text as a calculation check code.

[0114] Specifically, the baseboard management controller sends the data block to be updated and the corresponding calculated check code to the power supply unit via I2C broadcast.

[0115] It can be seen from the above embodiments that by intercepting the byte text of the data block, encrypting the byte text according to the preset encryption rules, and determining the encrypted byte text as the calculation check code, the security of data transmission between the baseboard management controller and the power supply unit is improved through the encrypted calculation check code.

[0116] In one embodiment of the present application, after step S404, the following steps are further included:

[0117] S405: Generate a test instruction according to the integrated circuit bus addresses of the multiple power supply units to be updated, wherein the test instruction includes a test data block and a calculation check code corresponding to the test data block.

[0118] Specifically, the baseboard management controller sends the test data block and the corresponding calculation check code to the power supply unit through I2C broadcast.

[0119] S406: Sending a test instruction to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated write the test data block according to the calculated check code corresponding to the test data block, and generating a test result.

[0120] In this embodiment, the test results include two types of test results: success in writing the test data block and failure in writing the test data block.

[0121] S407: Receive test results sent by the multiple power supply units to be updated, and obtain communication status between the baseboard management controller and the multiple power supply units to be updated according to the test results.

[0122] Specifically, the test result sent by the power supply unit is received by wireless communication.

[0123] It can be seen from the above embodiment that after generating the calculation check code, a test instruction is generated, and the test data block and the corresponding check code are sent to the power supply unit to be updated, the test result is generated, and the communication status with the power supply unit is verified based on the test result to ensure that the communication channel is working normally.

[0124] In one embodiment of the present application, after step S207, the following steps are further included:

[0125] S501: Receive a firmware update request sent by a user terminal.

[0126] Specifically, a firmware update request sent by a user terminal is received by wireless communication.

[0127] S502: Generate a version query instruction according to the firmware update request.

[0128] In this embodiment, the content queried in the version query instruction includes but is not limited to the firmware name, firmware version number, and firmware update date.

[0129] S503: Sending a version query instruction to the power supply unit, so that the power supply unit obtains version data according to the version query instruction.

[0130] In this embodiment, the content recorded in the version data includes but is not limited to the firmware name, firmware version number, and firmware update date.

[0131] S504: Receive version data sent by the power supply unit, and generate a firmware update broadcast according to the version data.

[0132] Specifically, the firmware update date in the version data is obtained, compared with the latest firmware update date recorded in the baseboard management controller, the latest version of the firmware is obtained, and a firmware update broadcast is generated.

[0133] S505: Send a firmware update broadcast to the integrated circuit bus address of the power supply unit, so that the power supply unit updates the firmware version and generates an update result.

[0134] Specifically, the firmware update broadcast is sent to the integrated circuit bus address of the power supply unit by wireless communication.

[0135] S506: Receive the update result sent by the power supply unit, and send the update result to the user end.

[0136] Specifically, the update result sent by the power supply unit is received by wireless communication.

[0137] Specifically, the update result is sent to the client via wireless communication.

[0138] It can be seen from the above embodiments that by receiving a firmware update request sent by the user end, a version query instruction is generated according to the firmware update request, the power supply unit obtains version data according to the version query instruction, and the baseboard management controller generates a firmware update broadcast according to the version data, sends the firmware update broadcast to the integrated circuit bus address, updates the firmware version, and feeds back the update result to the user end. During the user's use, the firmware is updated in broadcast mode, which reduces the user's waiting time and improves the user experience.

[0139] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method.

[0140] Figure 3 This is a schematic diagram of the structure of the firmware update device of the power supply unit provided in the embodiment of the present application. Figure 3 As shown, an embodiment of the present application also provides a firmware update device 30 for a power supply unit, including: an acquisition module 301, a first generation module 302, a first sending module 303, a second sending module 304, a first receiving module 305, a second generation module 306 and a third sending module 307.

[0141] The acquisition module 301 is configured to acquire integrated circuit bus addresses of a plurality of power supply units to be updated.

[0142] The first generating module 302 is configured to generate a firmware update instruction according to the integrated circuit bus addresses of the power supply units to be updated.

[0143] The first sending module 303 is configured to send a firmware update instruction to a plurality of power supply units to be updated, so that the plurality of power supply units to be updated enter a firmware update mode according to the firmware update instruction.

[0144] The second sending module 304 is configured to send the data block to be updated to the multiple power supply units to be updated, so that the multiple power supply units to be updated perform firmware update according to the data block to be updated and generate multiple firmware update information.

[0145] The first receiving module 305 is configured to receive a plurality of firmware update information sent by a plurality of power supply units to be updated.

[0146] The second generating module 306 is configured to generate an exit update instruction according to the plurality of firmware update information.

[0147] The third sending module 307 is configured to send an exit update instruction to the plurality of power supply units, so as to cause the plurality of power supply units to exit the firmware update mode.

[0148] In one embodiment of the present application, the second generation module 306 includes:

[0149] The first generating unit is configured to generate a confirmation instruction according to a plurality of firmware update information.

[0150] The first sending unit is used to send a confirmation instruction to the multiple power supply units, so that the multiple power supply units determine whether the firmware needs to be retransmitted according to the confirmation instruction and generate retransmission information.

[0151] The first receiving unit is configured to receive retransmission information sent by a plurality of power supply units.

[0152] The first determining unit is configured to determine a power supply unit that needs to be retransmitted among the multiple power supply units according to the retransmission information.

[0153] The second sending unit is used to send the retransmitted data block to the power supply unit that needs to be retransmitted, so that the power supply unit that needs to be retransmitted performs a firmware replication operation and records the number of retransmissions according to the firmware replication operation.

[0154] The second receiving unit is configured to receive the number of retransmissions sent by the power supply unit that needs to retransmit.

[0155] The judgment unit is used to judge whether the number of retransmissions exceeds the retransmission limit.

[0156] The second generating unit is configured to generate an exit update instruction if the number of retransmissions does not exceed the retransmission limit.

[0157] In one embodiment of the present application, the second generating module 306 further includes:

[0158] The release unit is used to release the retransmitted data block if the number of retransmissions exceeds the retransmission limit.

[0159] The acquisition unit is used to acquire the released retransmission data block and the integrated circuit bus address of the power supply unit that exceeds the retransmission limit.

[0160] The third generating unit is configured to generate an error log according to the released retransmission data block and the integrated circuit bus address of the power supply unit that exceeds the retransmission limit.

[0161] The fourth generating unit is used to generate an exit update instruction according to the error log.

[0162] In one embodiment of the present application, the second generating unit includes:

[0163] The first sending subunit is configured to send a query instruction to the plurality of power supply units if the number of retransmissions does not exceed the retransmission limit, so that the plurality of power supply units obtain corresponding update completion degrees.

[0164] The receiving subunit is configured to receive multiple update completion levels sent by multiple power supply units.

[0165] The second sending sub-unit is configured to generate an exit update instruction if the multiple power supply units in the multiple update completion levels are all updated.

[0166] In one embodiment of the present application, the firmware updating device 30 of the power supply unit further includes:

[0167] The fourth sending module is configured to send an initialization instruction to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated generate initial state information according to the initialization instruction.

[0168] The second receiving module is configured to receive initial status information sent by a plurality of power supply units to be updated.

[0169] The segmentation module is used to segment the firmware to be updated into multiple data blocks according to the initial state information.

[0170] The third generating module is used to generate corresponding calculation check codes according to multiple data blocks.

[0171] In one embodiment of the present application, the third generation module includes:

[0172] The interception unit is used to intercept the byte text of multiple data blocks according to a preset byte length.

[0173] The encryption unit is used to encrypt the byte text according to the preset encryption rules to obtain the encrypted byte text.

[0174] The second determining unit is configured to determine the encrypted byte text as a calculation check code.

[0175] In one embodiment of the present application, the firmware updating device 30 of the power supply unit further includes:

[0176] The fourth generating module is configured to generate a test instruction according to the integrated circuit bus addresses of the multiple power supply units to be updated, wherein the test instruction includes a test data block and a calculation check code corresponding to the test data block.

[0177] The fifth sending module is used to send a test instruction to the multiple power supply units to be updated, so that the multiple power supply units to be updated write the test data block according to the calculated check code corresponding to the test data block to generate a test result.

[0178] The third receiving module is configured to receive test results sent by the multiple power supply units to be updated, and obtain the communication status between the baseboard management controller and the multiple power supply units to be updated according to the test results.

[0179] For the description of the features in the embodiment corresponding to the firmware updating device of the power supply unit, reference can be made to the relevant description of the embodiment corresponding to the firmware updating method of the power supply unit, which will not be repeated here.

[0180] Figure 4 This is a schematic diagram of the structure of the electronic device provided in this application. Figure 4 As shown, the electronic device 40 provided in this embodiment includes: at least one processor 401 and a memory 402. Optionally, the electronic device 40 further includes a communication component 403. The processor 401, the memory 402 and the communication component 403 are connected via a bus.

[0181] In a specific implementation process, at least one processor 401 executes the computer-executable instructions stored in the memory 402 , so that the at least one processor 401 executes the above-mentioned embodiment of the method for updating the firmware of the power supply unit.

[0182] The specific implementation process of the processor 401 can be found in the above method embodiment. Its implementation principle and technical effects are similar and will not be repeated here in this embodiment.

[0183] In the above embodiments, it should be understood that the processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), etc. A general-purpose processor may be a microprocessor or any conventional processor. The steps of the method disclosed in the application may be directly executed by a hardware processor or by a combination of hardware and software modules within the processor.

[0184] The memory may include random access memory (RAM) and may also include non-volatile memory (NVM), such as at least one disk storage.

[0185] A bus can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Architecture (EISA) bus. Buses can be categorized as address buses, data buses, and control buses. For ease of illustration, the buses in the drawings of this application are not limited to just one bus or just one type of bus.

[0186] An embodiment of the present application further provides a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps of any of the above-mentioned embodiments of the method for updating the firmware of the power supply unit when running.

[0187] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk.

[0188] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps of any of the above-mentioned embodiments of the method for updating the firmware of the power supply unit are implemented.

[0189] An embodiment of the present application also provides another computer program product, including a non-volatile computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the steps in any of the above-mentioned embodiments of the firmware update method for the power supply unit.

[0190] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0191] The above is a detailed introduction to the firmware update method, device, equipment and medium of a power supply unit provided by the present application. Specific examples are used herein to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method and core ideas of the present application. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of the present application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the scope of protection of the claims of the present application.

Claims

1. A method for updating the firmware of a power supply unit, characterized in that: include: Obtaining integrated circuit bus addresses of a plurality of power supply units to be updated; generating a firmware update instruction according to the integrated circuit bus addresses of the plurality of power supply units to be updated; Sending the firmware update instruction to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated enter a firmware update mode according to the firmware update instruction; Sending the data block to be updated to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated perform firmware update according to the data block to be updated, and generate a plurality of firmware update information; receiving a plurality of firmware update information sent by the plurality of power supply units to be updated; generating an exit update instruction according to the plurality of firmware update information; The exit update instruction is sent to a plurality of power supply units to make the plurality of power supply units exit the firmware update mode.

2. The method for updating the firmware of a power supply unit according to claim 1, wherein: The step of generating an exit update instruction according to the plurality of firmware update information includes: generating a confirmation instruction according to the plurality of firmware update information; sending the confirmation instruction to the plurality of power supply units, so that the plurality of power supply units determine whether the firmware needs to be retransmitted according to the confirmation instruction and generate retransmission information; receiving retransmission information sent by the plurality of power supply units; Determining a power supply unit that needs to be retransmitted among the multiple power supply units according to the retransmission information; Sending the retransmitted data block to the power supply unit that needs to be retransmitted, so that the power supply unit that needs to be retransmitted performs a firmware overwrite operation, and records the number of retransmissions according to the firmware overwrite operation; Receiving the number of retransmissions sent by the power supply unit that needs to retransmit; Determining whether the number of retransmissions exceeds a retransmission limit; If the number of retransmissions does not exceed the retransmission limit, an exit update instruction is generated.

3. The method for updating the firmware of a power supply unit according to claim 2, wherein: After determining whether the number of retransmissions exceeds the retransmission limit, the method further includes: If the number of retransmissions exceeds the retransmission limit, releasing the retransmitted data block; obtaining a released retransmission data block and an integrated circuit bus address of a power supply unit that exceeds a retransmission limit; generating an error log according to the released retransmitted data block and the integrated circuit bus address of the power supply unit that exceeds the retransmission limit; An exit update instruction is generated according to the error log.

4. The method for updating the firmware of a power supply unit according to claim 2, wherein: If the number of retransmissions does not exceed the retransmission limit, generating an exit update instruction includes: If the number of retransmissions does not exceed the retransmission limit, sending a query instruction to the multiple power supply units so that the multiple power supply units obtain corresponding update completion degrees; receiving a plurality of update completion levels sent by the plurality of power supply units; If the multiple power supply units in the multiple update completion levels are all updated, an exit update instruction is generated.

5. The method for updating the firmware of a power supply unit according to claim 1, wherein: Before obtaining the integrated circuit bus addresses of the multiple power supply units to be updated, the method further includes: Sending an initialization instruction to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated generate initial state information according to the initialization instruction; receiving initial status information sent by the plurality of power supply units to be updated; dividing the firmware to be updated into a plurality of data blocks according to the initial state information; A corresponding calculation check code is generated according to the multiple data blocks.

6. The method for updating the firmware of the power supply unit according to claim 5, wherein: Generating corresponding calculation check codes according to the multiple data blocks includes: According to a preset byte length, intercepting byte texts of the multiple data blocks; Encrypting the byte text according to a preset encryption rule to obtain an encrypted byte text; The encrypted byte text is determined as a calculation check code.

7. The method for updating the firmware of a power supply unit according to claim 5, wherein: After generating corresponding calculation check codes according to the plurality of data blocks, the method further includes: generating a test instruction according to the integrated circuit bus addresses of the plurality of power supply units to be updated, wherein the test instruction includes a test data block and a calculation check code corresponding to the test data block; Sending the test instruction to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated write the test data block according to the calculated check code corresponding to the test data block to generate a test result; Receive test results sent by the plurality of power supply units to be updated, and acquire communication status between the baseboard management controller and the plurality of power supply units to be updated according to the test results.

8. A firmware update device for a power supply unit, characterized in that: include: An acquisition module, configured to acquire integrated circuit bus addresses of a plurality of power supply units to be updated; a first generating module, configured to generate a firmware update instruction according to the integrated circuit bus addresses of the plurality of power supply units to be updated; a first sending module, configured to send the firmware update instruction to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated enter a firmware update mode according to the firmware update instruction; a second sending module, configured to send the data block to be updated to the plurality of power supply units to be updated, so that the plurality of power supply units to be updated perform firmware update according to the data block to be updated, and generate a plurality of firmware update information; A first receiving module, configured to receive a plurality of firmware update information sent by the plurality of power supply units to be updated; A second generating module is configured to generate an exit update instruction according to the plurality of firmware update information; The third sending module is configured to send the exit update instruction to a plurality of power supply units, so as to cause the plurality of power supply units to exit the firmware update mode.

9. An electronic device, characterized in that: include: memory for storing computer programs; A processor, configured to implement the steps of the method for updating the firmware of a power supply unit according to any one of claims 1 to 7 when executing the computer program.

10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, the steps of the method for updating the firmware of the power supply unit according to any one of claims 1 to 7 are implemented.