Firmware upgrading system and server
By introducing a switching component and a version management module into the server system, the problem of limited firmware upgrades in multi-PCIe switching component extended systems is solved, enabling convenient and reliable firmware upgrades and ensuring maintenance convenience and system security in data center environments.
Patent Information
- Application Number
- CN202511454342.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-13
- Publication Date
- 2026-01-27
- Estimated Expiration
- 2045-10-13
AI Technical Summary
In server systems with multiple PCIe switching components, firmware upgrades are limited and maintenance is difficult, especially in data center environments. Traditional in-band upgrade methods are prone to failure, and when corrupted firmware causes the switching components to be unrecognizable, the server must be disassembled for recovery, which is complex and inconvenient.
By setting a switching component between the control component and multiple switching components, selective connectivity can be achieved, and the programming interface of the target switching component can be flexibly selected, avoiding the risks of traditional in-band upgrades. Furthermore, the version management module ensures the compatibility and security of the upgrade.
It enables convenient and reliable firmware upgrades in data center environments without disassembling servers, reducing operational complexity and risk, and ensuring the security and controllability of the upgrade process.
Smart Images

Figure CN120950102B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a firmware upgrade system and server. Background Technology
[0002] With the rapid development of cloud computing, big data, and artificial intelligence technologies, data center servers need to handle ever-increasing computing and graphics processing loads, significantly increasing the demand for high-speed interconnect capabilities within servers. To overcome the limitation of the number of PCIe (Peripheral Component Interconnect Express) lanes on the central processing unit itself, PCIe switching components are used to expand the lanes, thereby enabling multiple graphics processors to be mounted within a single server, meeting the scalability requirements of high-performance computing scenarios. In such systems with multiple PCIe switching components, upon system power-up, each switching component loads its firmware and completes a complex initialization configuration to adapt to different PCIe topologies.
[0003] During the development and debugging phase, each PCIe switching component typically features a dedicated firmware programming interface (such as an SDB (Serial Debug Bus) interface) for ease of operation. However, for product design and aesthetic reasons, these interfaces are usually reserved on the board and not brought to the external panel. Once the product enters mass production, if firmware upgrades are needed for feature optimization or bug fixing, an in-band upgrade method based on the PCIe link is usually adopted. Although this method does not require physical contact, it carries a certain risk of failure. If the upgrade process is unexpectedly interrupted or the firmware is corrupted, the switching component may malfunction, and because it cannot be recognized by the system, the in-band upgrade method will also fail. In this case, the only way to recover is to re-program the firmware using the onboard dedicated firmware programming interface, but this often requires disassembling the entire server, which is extremely inconvenient in the cramped space of a data center, posing a serious challenge to maintenance after large-scale deployment. Summary of the Invention
[0004] This application provides a firmware upgrade system and server to at least solve the problems of limited firmware upgrades and difficult maintenance of switching components in related technologies.
[0005] This application provides a firmware upgrade system, comprising: a control component configured with a signal channel; the signal channel being independent of the service data link of the switching component in the server; multiple switching components, each equipped with a firmware flashing interface; and a switching component connected between the signal channel of the control component and each of the switching components; the control component is configured to control the switching component according to target requirements, connecting the signal channel and the flashing interface of the target switching component to flash the firmware of the target switching component.
[0006] This application also provides a server including the aforementioned firmware upgrade system.
[0007] This application, by setting a switching component between the control component and multiple switching components, allows the control component to flexibly select and connect to the programming interface of the target switching component as needed, thereby enabling firmware reprogramming without disassembling the entire device. This solution avoids the failure risks associated with in-band upgrades relying solely on the PCIe link in related technologies, and overcomes the problem of relying solely on the on-board interface when the switching component becomes unrecognizable due to firmware corruption, which is complex and inconvenient. Therefore, this application solves the technical problems of limited firmware upgrades and difficult maintenance of switching components, achieving the technical effect of convenient and reliable online firmware upgrades in data center environments. Attached Figure Description
[0008] To more clearly illustrate the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0009] Figure 1 This is a schematic diagram illustrating the application of a switching component in related technologies.
[0010] Figure 2 This is a schematic diagram of the interface of a switching component in related technologies.
[0011] Figure 3 This is a schematic diagram of a firmware upgrade system provided in an embodiment of this application.
[0012] Figure 4 This is a schematic diagram of another firmware upgrade system provided in an embodiment of this application. Detailed Implementation
[0013] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.
[0014] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.
[0015] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0016] Figure 1 In this technology, switching components are used to expand the PCIe lanes of the central processing unit to connect more graphics processors, network cards, solid-state drives, and other devices. Figure 2 The diagram shows that the switching component includes a debug interface for performing debug work, including collecting logs of the switching component, and a flashing interface for flashing firmware.
[0017] like Figure 3 As shown, in a first aspect, this application provides a firmware upgrade system, comprising: a control component 1 configured with a signal channel; the signal channel being independent of the service data link of the switching component in the server; multiple switching components, each equipped with a firmware burning interface; and a switching component connected between the signal channel of the control component 1 and each switching component; the control component 1 is configured to control the switching component according to target requirements, connecting the signal channel and the burning interface of the target switching component to perform firmware burning on the target switching component.
[0018] In this embodiment, the firmware upgrade system establishes selective links between control component 1 and multiple switching components through a switching component. Control component 1 itself has a signal channel that can carry the data interaction required for firmware burning. Since different switching components each have their own independent burning interfaces for firmware writing, a fixed connection would prevent control component 1 from flexibly selecting a specific target. In this embodiment, the switching component acts as an intermediate hub, enabling control component 1 to selectively connect its signal channel to the burning interface of a target switching component according to actual needs, forming an effective data transmission path.
[0019] During firmware flashing, control component 1 first sends a selection signal, adjusting its internal connectivity through a switching component. The key to this process is ensuring the switching component accurately identifies the target switching component and establishes a single, reliable channel, preventing conflicts caused by signals acting on multiple switching components simultaneously. Once the switching is complete, the signal channel is directly connected to the flashing interface of the target switching component, allowing firmware data to be transmitted from control component 1 to that switching component, thus completing the firmware writing process.
[0020] The entire system operates by separating the firmware data transmission process from the switching component selection process. Control component 1 only needs to issue commands to the switching components according to the target requirements, and the switching components are responsible for establishing and disconnecting the physical link. In this way, although multiple switching components share the same signal channel of control component 1, only one switching component is connected to it at any given time during actual operation, ensuring the accuracy and stability of the firmware burning operation.
[0021] Therefore, this embodiment achieves firmware management for multiple switching components without altering the inherent structure of the switching components. Control component 1 establishes communication with the different switching components' programming interfaces one by one through the switching component, enabling firmware programming to be completed within a single control environment. This principle of selective connectivity ensures that firmware data can form an independent transmission link between control component 1 and the target switching component, thereby facilitating the smooth execution of the firmware programming operation.
[0022] In one exemplary embodiment, the control component 1 includes a control signal terminal and a data signal terminal; the switching component includes a plurality of signal switching switches 2, each signal switching switch 2 being connected to the programming interface of a switching component; the common terminal of the signal switching switch 2 is connected to the data signal terminal of the control component 1, and the control terminal of the signal switching switch 2 is connected to the control signal terminal of the control component 1; the control component 1 is specifically configured to output a selection signal through the control signal terminal according to the target requirements, so as to select the target signal switching switch corresponding to the target switching component, so that the data signal terminal is connected to the programming interface of the target switching component through the selected target signal switching switch.
[0023] In this embodiment, the control component 1 consists of two parts: a control signal terminal and a data signal terminal. The control signal terminal is responsible for outputting a selection signal to indicate the working status of the switching component; the data signal terminal is responsible for data transmission during firmware burning. The switching component internally has multiple signal switching switches 2, each corresponding to the burning interface of a switching component. This correspondence ensures that during firmware burning, the control component 1 can select a specific switching component using the selection signal.
[0024] The common terminal of signal switch 2 is connected to the data signal terminal of control component 1, meaning that regardless of which switching component is selected for the burning operation, the firmware data will ultimately be transmitted through the same data output. The control signal terminal of control component 1 is connected to the control terminals of each signal switch 2, allowing control component 1 to manage the signal switch 2 using selection signals. Through this connection method, control component 1 can flexibly determine which switching component's burning interface its current data signal terminal is connected to.
[0025] When control component 1 needs to flash firmware onto a target switching component, its control signal terminal outputs a corresponding selection signal. This signal acts on the control terminal of the target signal switching switch, activating the switch. At this time, the data signal terminal of control component 1 connects to the flashing interface of the target switching component through the selected signal switching switch 2. Firmware data can then be transmitted from control component 1 to the target switching component along this uniquely established link, completing the firmware writing process.
[0026] In a specific implementation, the signal switching switch 2 can adopt a multiplexer structure. Through the selection signal input terminal of the multiplexer, the control component 1 can specify the connectivity between the data signal terminal and a specific target output terminal, thereby enabling selective access to different switching component programming interfaces. This multiplexer-based implementation ensures that the data signal is transmitted through only one defined path at any given time, guaranteeing the reliability of the firmware programming process.
[0027] In one exemplary embodiment, the switching component further includes a switch controller 3; the input terminal of the switch controller 3 is connected to the control signal terminal of the control component 1 via a serial bus, and multiple control output terminals of the switch controller 3 are connected one-to-one with the control terminals of multiple signal switching switches 2; the switch controller 3 is configured to respond to the selection signal sent by the control component 1 via the serial bus, and output a strobe signal to the target signal switching switch according to the selection signal, so as to turn on the target signal switching switch 2.
[0028] In this embodiment, the switching component includes a switch controller 3. The switch controller 3 acts as a relay and distribution unit for control signals, and its input terminal is connected to the control signal terminal of the control component 1 via a serial bus. The serial bus handles the transmission of control information, enabling the control component 1 to accurately transmit the target selection signal to the switch controller 3 using a standard bus communication method. The control component 1 does not need to directly drive each signal switching switch 2; instead, it communicates with the switch controller 3 through a unified serial bus to manage the downstream switches.
[0029] The multiple control outputs of the switch controller 3 are connected one-to-one with the control terminals of multiple signal switching switches 2. Through this correspondence, each switching component's programming interface has an independent control channel. After receiving a selection signal from the control component 1, the switch controller 3 can parse the signal and determine the target switching component, thereby selecting one output strobe signal from its multiple control outputs to drive the corresponding signal switching switch 2 to conduct. Other unselected signal switching switches 2 remain closed to avoid multi-path data signal conflicts. Figure 3 and Figure 4 Among them, SWA_UART_EN_N, SWB_UART_EN_N, SWC_UART_EN_N...SWn_UART_EN_N output by switch controller 3 are selection signals corresponding to each signal switching switch 2.
[0030] In the actual operation, control component 1 first sends a selection signal via the serial bus, which carries information about the target switching component to be connected. Switch controller 3 responds to this selection signal, selects the corresponding control output, and transmits a strobe signal to the control terminal of the target signal switching switch. The selected signal switching switch 2 then turns on, creating a unique communication channel between the data signal terminal of control component 1 and the programming interface of the target switching component. At this point, firmware data can be transmitted through this channel, completing the firmware programming operation.
[0031] In one implementation, the switch controller 3 can adopt an I2C Expander structure. With this structure, the control component 1 can expand to multiple independent control outputs using only the I2C bus. Each control output corresponds to a signal switching switch 2, enabling the control and management of multiple switching components to be completed within a unified serial communication framework. This structure provides a clear hierarchical relationship for signal interaction between the control component 1 and the switching components in the system, ensuring the correct execution of signal switching.
[0032] In one exemplary embodiment, the switch controller 3 is further configured with a global enable terminal, which is connected to the enable terminals of each signal switching switch 2. Specifically, the switch controller 3 is configured to respond to a selection signal sent by the control component 1 via a serial bus, first outputting an enable signal through the global enable terminal to enable all or some of the signal switching switches 2, and then outputting a gating signal to the target signal switching switch through the control output terminal to turn on the target signal switching switch. Figure 3 and Figure 4 Among them, SW_UART_SEL output by switch controller 3 is the enable signal output by the global enable terminal of switch controller.
[0033] In this embodiment, the switch controller 3 is equipped with a global enable terminal, which is connected to the enable terminals of each signal switch 2. Through this connection, the switch controller 3 can uniformly manage the enable states of multiple signal switches 2. Before receiving a command from the control component 1, the signal switches 2 remain in the default off state; when the switch controller 3 outputs an enable signal through the global enable terminal, the signal switches 2 enter a selectable operating state. The switch controller 3 can comprehensively grasp the operating start conditions of multiple signal switches 2.
[0034] After the control component 1 sends a selection signal, the switch controller 3 first receives the selection signal via the serial bus. The switch controller 3 will first set the global enable terminal to the active state, thereby driving the enable terminals of all or part of the signal switching switches 2 to take effect. At this time, the signal switching switches 2 are already in a selectable state, but an effective connection with the data signal terminal of the control component 1 has not yet been established, and further instructions are still needed to complete the selection action.
[0035] Next, the switch controller 3 selects one of its multiple output terminals based on the target information indicated in the selection signal, and outputs a strobe signal to the control terminal of the target signal switching switch through that output terminal. Upon receiving the strobe signal, the target signal switching switch enters the conducting state, effectively connecting the data signal terminal of the control component 1 with the programming interface of the target switching component. At this time, the firmware data can be transmitted to the target switching component along the uniquely established link, thereby completing the firmware programming.
[0036] By combining unified control of the global enable terminal with specific gating control, the switch controller 3 implements two-level control logic. The global enable terminal ensures that all signal switching switches 2 can be activated as a whole when needed, while the specific gating signal ensures that only the target signal switching switch is turned on. This control method forms a sequence of first overall activation and then individual gating, giving the control process clear stages and avoiding uncertainty in the signal switching process.
[0037] like Figure 4 In one exemplary embodiment, the control component 1 includes at least two controllers, an arbitrator, and a signal selector; each controller includes a control signal terminal and a data signal terminal; the control signal terminal of each controller is connected to the input terminal of the arbitrator, and the data signal terminal of each controller is connected to the input terminal of the signal selector; the output terminal of the arbitrator is connected to the input terminal of the switch controller 3, and the arbitrator is configured to select a target controller as the master controller from all controllers and transmit the selection signal output by the master controller to the switch controller 3; the output terminal of the signal selector is connected to the common terminal of each signal switching switch 2, and the signal selector is configured to connect the data signal terminal of the master controller to the target signal switching switch.
[0038] In this embodiment, the control component 1 includes at least two controllers, an arbitrator, and a signal selector. Each controller has a control signal terminal and a data signal terminal. The control signal terminal is used to output signals related to channel selection, and the data signal terminal is used to output data required for firmware burning. The arbitrator and the signal selector receive the outputs from the control signal terminals and data signal terminals of each controller, respectively, enabling signal coordination and selection in scenarios with multiple controllers.
[0039] The arbitrator's output is connected to the input of the switch controller 3. During operation, the arbitrator receives control signals from all controllers and determines one of the controllers as the master controller based on a preset arbitration mechanism. After completing the selection, the arbitrator transmits the selection signal output by the determined master controller to the switch controller 3, enabling the switch controller 3 to control the downstream signal switching switch 2 based on this signal, thereby achieving the selection of the target path.
[0040] The output of the signal selector is connected to the common terminal of each signal switching switch 2. During operation, the signal selector receives data signals from multiple controllers and, based on the master controller information determined by the arbitrator, connects the data signal terminal of that master controller to the target signal switching switch, thereby ensuring that the transmission path of the firmware burning data remains consistent with the control path. In this way, the signal switching process is completed collaboratively by the arbitrator and the signal selector, ensuring the uniformity of control signals and data signals.
[0041] In practical implementation, the arbitrator can be an I2C Master Arbiter, capable of allocating and determining master control authority when multiple controllers have I2C bus control functionality; the signal selector can be a UART MUX, whose function is to establish corresponding physical paths between multiple data signal terminals based on the arbitration result. This architecture design ensures that both control and data signals can be independently taken over and transmitted to the target signal switching switch by the selected master terminal, guaranteeing the continuity and accuracy of the programming operation.
[0042] It is important to understand that in this embodiment, at least two controllers are configured. This serves two purposes: providing different control sources and implementing redundancy. If any controller malfunctions or fails during operation, the remaining controllers can take over the master controller role, thus maintaining the continuity and reliability of the firmware burning operation. Under normal operating conditions, a default master controller can be set. For example, in a scenario with two controllers, a BMC (Baseboard Management Controller) and a CPU (Central Processing Unit), the BMC can be set as the default master controller. After receiving control signals from each controller, the arbitrator first determines whether the default master controller is functioning correctly. If it is available, it is directly output as the master controller to the switch controller 3 and the signal selector. If the default master controller malfunctions or is not available, the arbitrator will reselect a master controller from among the other controllers based on a preset priority judgment mechanism. This priority judgment mechanism can be based on a fixed priority order, such as the CPU controller having a higher priority than other backup controllers, or it can be based on a dynamic detection strategy, such as determining the online status, response time, or heartbeat signal of each controller to identify the target controller that can take over.
[0043] Through the aforementioned redundancy and priority judgment mechanism, it is ensured that in a multi-controller architecture, the control path and data path of firmware burning can always be taken over by a master control terminal that is in an effective state, avoiding the interruption of the entire burning process due to the failure of a single controller.
[0044] In one exemplary embodiment, a level conversion component 4 is further included, which is disposed between the signal switching switch 2 and the programming interface of the switching component; the level conversion component 4 is configured to perform level conversion on the transmitted signal to match the signal level between the control component 1 and the switching component.
[0045] In this embodiment, a level conversion component 4 is also provided, which is installed between the signal switching switch 2 and the programming interface of the switching component. The level conversion component 4 performs the function of signal level adaptation, so that the data signal output by the control component 1 can match the level of the programming interface of the switching component, ensuring correct identification of the signal during physical transmission.
[0046] During firmware burning, control component 1 sends data to the target switching component via the data signal terminal. The transmitted signal first passes through the link established by signal switching switch 2, and then enters level conversion component 4. Level conversion component 4 adjusts the signal to a level range that the switching component can recognize, based on the level difference between control component 1 and the switching component, ensuring that the burned data can be accurately received.
[0047] The level conversion component 4 not only handles the level adaptation of data signals, but also adjusts the level of control signals when necessary, ensuring that the strobe signal sent by the control component 1 can correctly trigger the signal switching switch 2. In this way, the level compatibility problem between control signals and data signals is solved, avoiding signal failure or programming failure caused by level mismatch.
[0048] It is necessary to understand that Figure 3 and Figure 4 In addition to the programming interface, the diagram also illustrates the debugging interface. The two lines between signal switch 2 and level conversion component 4 are used for firmware data transmission and daily debugging data transmission, respectively. Specifically, the programming interface and debugging interface achieve physical link multiplexing and sharing through the switching component. Its working principle is as follows: When firmware upgrades are needed for the target switching component, control component 1 selects the corresponding signal switch 2 through switch controller 3. The data signal terminal of control component 1 is then connected to the programming interface of the target switching component via level conversion component 4, thereby establishing an independent firmware data transmission channel for firmware programming. When daily debugging or log collection is needed, the same UART signal link can be switched to the debugging interface of the target switching component for transmitting debugging information. This design allows for the reuse of board-side connector resources; a single physical interface and line can meet both programming and debugging core maintenance needs.
[0049] also, Figure 4 The document also showcases connectors on four sides of the board: two connectors on the control component 1 side and two connectors on the switching component side. These four connectors together form the signal bridge between the system and the external environment.
[0050] In one exemplary embodiment, a version management module is also included. The version management module is connected to the control component 1. The version management module pre-stores a compatibility mapping table between the firmware version information of each switching component and the system configuration. The control component 1 is further configured to query the current firmware version of the target switching component before initiating a firmware upgrade, and determine whether the firmware version to be upgraded is compatible with the current state of other components in the system based on the compatibility mapping table. If it is determined to be incompatible, the firmware upgrade operation is blocked and an alarm message is generated. If it is determined to be compatible, the firmware upgrade process is executed.
[0051] In this embodiment, a version management module is also provided. This module pre-stores firmware version information for each switching component, as well as a compatibility mapping table between system configuration and each version. Before a firmware upgrade operation, control component 1 can obtain the current firmware version information of the target switching component through the version management module to determine the feasibility of the upgrade operation.
[0052] In actual operation, when control component 1 prepares to initiate a firmware upgrade for the target switching component, it first queries the existing firmware version of the switching component through the version management module. Subsequently, control component 1 compares and judges the firmware version to be upgraded with the current status of other components in the system according to the compatibility mapping table to confirm whether the upgraded firmware version can maintain compatibility with the existing system configuration.
[0053] If the assessment indicates that the firmware version to be upgraded is incompatible with the current system state, control component 1 will prevent the firmware upgrade operation from executing and generate an alarm message to alert maintenance personnel or system management programs to potential conflict risks. This allows for the identification of version conflicts that may cause system malfunctions before the upgrade, preventing incompatible firmware from causing abnormal operation of switching components or the entire system.
[0054] If the assessment result indicates that the firmware version to be upgraded is compatible with the current system state, control component 1 will follow the firmware upgrade process, sequentially transmitting the firmware data to the burning interface of the target switching component via the switching component, signal switching switch 2, and level conversion component 4, thus completing the firmware writing operation. Throughout the process, the version management module provides firmware version query and compatibility assessment functions, ensuring that the upgrade operation can be performed while guaranteeing system security.
[0055] The approach in this embodiment ensures the controllability and security of firmware upgrade operations in multi-switch component and multi-controller systems, ensuring that firmware upgrades will only be performed when compatibility is confirmed, thereby preventing system anomalies or data transmission errors caused by version conflicts.
[0056] In one exemplary embodiment, the control component 1 is further configured to receive an upgrade task package containing the identifiers of multiple target switching components and their corresponding firmware files; establish communication links with each target switching component sequentially or in parallel, and burn the corresponding firmware files; record the upgrade status of each target switching component during the upgrade process, and generate a summary report after the entire upgrade task is completed.
[0057] In this embodiment, control component 1 is configured to receive an upgrade task package containing identifiers of multiple target switching components and their corresponding firmware files. This task package records a list of switching components to be upgraded and firmware file information for each component, providing control component 1 with complete data and operation instructions for performing the firmware upgrade.
[0058] During the upgrade process, control component 1 establishes communication links with each target switching component sequentially or in parallel, based on the information in the task package. Through switching components and signal switching switches 2, control component 1 connects the data signal terminal to the programming interface of the target switching component, while level conversion component 4 performs level matching to ensure data accuracy during transmission.
[0059] Subsequently, control component 1 transmits the corresponding firmware file to the target switching component via the established communication link, thus completing the firmware flashing operation. During this process, after each switching component is flashed, control component 1 records the upgrade status of that component in real time, including success or failure information, in order to track and manage the upgrade process.
[0060] After the entire upgrade task is completed, control component 1 will summarize the upgrade status of each target switching component and generate a complete summary report. This report clearly shows the upgrade results of each switching component, providing a reference for operation and maintenance management, and facilitating troubleshooting or repeating operations when necessary.
[0061] Through this task package management and status recording mechanism, control component 1 can perform firmware upgrades on multiple switching components in a single operation, ensuring the controllability and traceability of the operation, while facilitating centralized management and result analysis of the upgrade process.
[0062] In one exemplary embodiment, the control component 1 is communicatively connected to the device's management platform; the control component 1 is also configured to trigger a preset functional self-test process for the target switching component after completing the firmware flashing of the target switching component, encapsulate the upgrade result and the self-test result into an audit log, and upload it to the management platform. The audit log includes the version number before and after the upgrade, the upgrade timestamp, and the self-test pass status information.
[0063] In this embodiment, the control component 1 establishes a communication connection with the device's management platform, enabling the transmission of firmware upgrade and operational status information to the centralized management terminal. After completing the firmware flashing of the target switching component, the control component 1 triggers a preset functional self-test process to check the basic functions and operational status of the target switching component.
[0064] After the self-test process is completed, control component 1 integrates the firmware upgrade result with the self-test result and encapsulates it into an audit log. This audit log records key upgrade information, including the firmware version number of the target switching component before and after the upgrade, the timestamp of the upgrade operation, and the status information indicating whether the self-test passed. This information clarifies the execution status of the firmware upgrade and the operational status of the components.
[0065] Subsequently, control component 1 uploads the encapsulated audit logs to the management platform, enabling centralized recording and management of firmware upgrades and component self-tests. The management platform can then use the audit logs to statistically analyze and track the upgrade status of each switching component in the system, supporting operation and maintenance management and troubleshooting.
[0066] In this embodiment, control component 1 not only completes the firmware burning operation, but also performs functional verification after the upgrade and systematically transmits the results to the management platform, realizing closed-loop management of the upgrade operation. This ensures that each upgrade is recorded and verifiable, and provides evidence for the success of the upgrade and the health status of the components.
[0067] In one exemplary embodiment, the server also integrates the aforementioned firmware upgrade system, but further employs a distributed architecture in the implementation of control component 1. In this embodiment, control component 1 is divided into a main control unit and an auxiliary unit. The main control unit is responsible for scheduling and link control of the overall upgrade task, while the auxiliary unit is responsible for collecting upgrade status, version information, and self-test results, and synchronizing data with the main control unit. During the upgrade process, the main control unit receives the upgrade task package and parses out the identifiers and corresponding firmware files of each target switching component. The main control unit establishes communication links with the target switching components sequentially or in parallel through switching components and signal switching switches 2, and transmits the firmware data to the burning interface of the target switching component through level conversion component 4. After completing the firmware burning of each component, the auxiliary unit records the upgrade status of that component and feeds the data back to the main control unit, forming a distributed status management mechanism. After the upgrade is completed, the main control unit triggers the functional self-test process of the target switching component, the auxiliary unit collects the self-test results, and integrates the upgrade information and self-test status to generate an audit log. The audit log includes version numbers before and after the upgrade, upgrade timestamps, upgrade status, and self-test pass status information, and is uploaded through the server's management platform to achieve centralized management and traceable recording. In this embodiment, the distributed control component 1 architecture can achieve parallel task processing in a multi-switch component and multi-controller environment, improving the flexibility and response speed of upgrade tasks. Simultaneously, even if some auxiliary units malfunction, the main control unit can still complete firmware upgrades and status management, thereby ensuring the continuity and reliability of the overall system upgrade operation. This example embodiment provides another internal server firmware upgrade solution, which can select centralized or distributed control methods according to specific deployment requirements to achieve online firmware upgrades, version compatibility management, and upgrade result auditing functions for multiple switching components within the server.
[0068] Secondly, this application provides a server including the firmware upgrade system described above.
[0069] The server integrates the aforementioned firmware upgrade system. The firmware upgrade architecture, constructed according to the aforementioned embodiments, including control component 1, switching component, signal switching switch 2, level conversion component 4, and version management module, is all implemented within the server. The server can use this firmware upgrade system to perform functions such as firmware burning, version compatibility checks, upgrade task management, and self-test and audit log uploading for multiple internal switching components.
[0070] During server operation, when a firmware upgrade request arises, control component 1 receives the upgrade task package, establishes a communication link with the target switching component, completes firmware burning sequentially or in parallel, and records the upgrade status of each switching component. After the upgrade is completed, control component 1 triggers the self-test process of the target switching component and generates an audit log with the upgrade results and self-test results, which is then uploaded to the management platform to form a traceable upgrade record.
[0071] By integrating this firmware upgrade system into the server, online, controllable, and traceable firmware upgrades can be achieved even in environments with multiple switching components and multiple controllers. This integration method ensures that firmware upgrades can be completed without disassembling the server during mass production deployment and maintenance, and a complete record of the upgrade process and results is created, guaranteeing the continuity and reliability of system operation.
[0072] This application will not elaborate on the specific implementation of the server. For details, please refer to the configuration and operation principles of the firmware upgrade system embodiment described above, including the control logic of the control component, the link establishment of the switching component and the signal switching switch, the level matching of the level conversion component, the version query and compatibility judgment of the version management module, and the functions of upgrade task management and audit log generation.
[0073] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0074] The firmware upgrade system and server provided in this application have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only intended to help understand the method and core ideas of this application. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of the claims of this application.
Claims
1. A firmware upgrade system, characterized in that, include: The control component is configured with a signal channel, which is independent of the business data link of the switching component in the server. The plurality of said switching components, the switching components being provided with a flashing interface for flashing firmware; A switching component is connected between the signal channel of the control component and each of the switching components; The control component is configured to control the switching component according to the target requirements, and connect the signal channel and the burning interface of the target switching component to burn firmware to the target switching component. The control component includes a control signal terminal and a data signal terminal; the switching component includes multiple signal switching switches, each of which is connected to a programming interface of the switching component. The common terminal of the signal switching switch is connected to the data signal terminal of the control component, and the control terminal of the signal switching switch is connected to the control signal terminal of the control component. The control component is specifically configured to output a selection signal through the control signal terminal according to the target requirements, so as to select the target signal switching switch corresponding to the target switching component, so that the data signal terminal is connected to the programming interface of the target switching component through the selected target signal switching switch; The switching component also includes a switch controller; The input terminal of the switch controller is connected to the control signal terminal of the control component via a serial bus, and the multiple control output terminals of the switch controller are connected one-to-one with the control terminals of the multiple signal switching switches. The switch controller is configured to respond to a selection signal sent by the control component via the serial bus, and output a strobe signal to the target signal switching switch according to the selection signal, so as to turn on the target signal switching switch; The switch controller is also equipped with a global enable terminal, which is connected to the enable terminal of each of the signal switching switches. The switch controller is specifically configured to respond to the selection signal sent by the control component via the serial bus, and first output an enable signal through the global enable terminal to enable all or part of the signal switching switches according to the selection signal, and then output the strobe signal to the target signal switching switch through the control output terminal to turn on the target signal switching switch. The control component includes at least two controllers, an arbitrator, and a signal selector; each controller includes a control signal terminal and a data signal terminal. The control signal terminal of each controller is connected to the input terminal of the arbitrator, and the data signal terminal of each controller is connected to the input terminal of the signal selector; The output of the arbitrator is connected to the input of the switch controller. The arbitrator is configured to select a target controller as the master controller from all the controllers and transmit the selection signal output by the master controller to the switch controller. The output terminal of the signal selector is connected to the common terminal of each of the signal switching switches, and the signal selector is configured to connect the data signal terminal of the main control terminal to the target signal switching switch; It also includes a level conversion component, which is disposed between the signal switching switch and the programming interface of the switching component; The level conversion component is configured to perform level conversion on the transmitted signal to match the signal level between the control component and the switching component; It also includes a version management module, which is connected to the control component. The version management module pre-stores a compatibility mapping table between the firmware version information of each switching component and the system configuration. The control component is further configured to query the current firmware version of the target switching component before initiating a firmware upgrade for the target switching component, and determine whether the firmware version to be upgraded is compatible with the current state of other components in the system based on the compatibility mapping table. If it is determined to be incompatible, the firmware upgrade operation is blocked and an alarm message is generated. If it is determined to be compatible, then proceed with the firmware upgrade process; The control component is divided into two parts: a main control unit and an auxiliary unit. The main control unit is responsible for scheduling and link control of the overall upgrade task, while the auxiliary unit is responsible for collecting upgrade status, version information and self-test results, and synchronizing data with the main control unit.
2. The firmware upgrade system according to claim 1, characterized in that, The control component is further configured to receive an upgrade task package containing identifiers of multiple target switching components and corresponding firmware files; establish communication links with each target switching component sequentially or in parallel, and burn the corresponding firmware files; During the upgrade process, the upgrade status of each target switching component is recorded, and a summary report is generated upon completion of the entire upgrade task.
3. The firmware upgrade system according to claim 1, characterized in that, The control component is communicatively connected to the device's management platform; The control component is further configured to trigger a preset functional self-test process for the target switching component after completing the firmware flashing of the target switching component, encapsulate the upgrade result and the self-test result into an audit log, and upload it to the management platform. The audit log includes the version number before and after the upgrade, the upgrade timestamp, and the self-test pass status information.
4. A server, characterized in that, Including the firmware upgrade system as described in any one of claims 1-3.
Citation Information
Patent Citations
Asynchrous AHB interconnection matrix interface device
CN101071405A
Automatic test device and automatic test method for voltage detection chip
CN119147935A
Switching board card and switching board card management method
CN120075169A