Updating and upgrading system

By introducing FPGA-based online loading components in the remote upgrade system, supporting multiple communication protocols and physical characteristics, the problem that existing systems cannot meet the unified loading and upgrading of multiple heterogeneous platforms is solved, and efficient and flexible remote upgrades are achieved.

CN119829499AActive Publication Date: 2025-04-15HUNAN QIONGYUE TECHNOLOGY CO LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
CN202510334056.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-20
Publication Date
2025-04-15
Estimated Expiration
2045-03-20

AI Technical Summary

Technical Problem

The existing remote upgrade system cannot meet the unified loading and upgrading and overall system management needs of multiple heterogeneous platforms in comprehensive complex systems. The traditional firmware or program download and upgrade process is difficult to implement in remote or harsh environments.

Method used

It provides an update and upgrade system, including the main control unit and the online loading component. The online loading component is implemented based on the FPGA platform, equipped with multiple I/O ports with customizable different physical characteristics, communicates with the main control unit through fiber connection, supports RS422 and SPI protocols, and realizes unified loading and upgrading of multiple heterogeneous platforms.

Benefits of technology

It realizes unified loading and upgrading of multiple heterogeneous platforms and overall system management, improves system flexibility and maintenance efficiency, adapts to different physical characteristics requirements, and ensures efficient remote upgrades in complex environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119829499A_ABST
    Figure CN119829499A_ABST
Patent Text Reader

Abstract

The invention discloses an updating and upgrading system. The system comprises a main control unit and an online loading component. The online loading assembly is realized based on an FPGA platform and is provided with an I / O port capable of customizing physical characteristics. The main control unit is connected and communicated with the on-line loading component through an optical fiber, and the equipment to be updated is connected with the I / O port through an RS422 physical channel. And the main control unit sends equipment search and state query instructions to the online loading component by using an SRIO protocol. The online loading component checks the equipment state, requests to load a file and sends the file to the main control unit; and the main control unit sends the loading file to the online loading component based on an SRIO protocol, and the online loading component transmits the loading file to the to-be-updated equipment by using an RS422 and / or SPI protocol to finish remote updating and upgrading operation. The online loading component is provided with a plurality of customizable I / O ports, supports various physical characteristic connections, and is convenient to communicate with different devices and update and upgrade.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of equipment updating and upgrading, and in particular to an updating and upgrading system. Background Art

[0002] In systems with complex environments, embedded devices such as those based on Field-Programmable GateArra (FPGA), Digital Signal Processor (DSP) or Advanced RISC Machine (ARM) chips often run in remote or harsh environments, or as part of complex systems. When these devices need to be upgraded, the traditional firmware or program download upgrade process, such as using an emulator or Joint Test Action Group (JTAG) downloader, becomes difficult to implement. Existing remote loading and upgrading systems usually transfer the update files to the designated storage device of the device to be updated through a network communication system, and then upgrade the firmware of the device through an independently designed update system in the device. However, the current remote upgrade system usually only targets a single device or a single type of main chip, and uses a single communication protocol to achieve independent upgrade loading of a certain device, which cannot meet the needs of unified loading and upgrading of multiple heterogeneous platforms contained in a comprehensive and complex system and overall system management.

[0003] Therefore, how to provide a more flexible remote upgrade system that is applicable to a variety of heterogeneous platforms and can achieve unified loading and upgrading and overall system management is a technical problem that technical personnel in this field urgently need to solve. Summary of the invention

[0004] Based on the above problems, the present application provides an update and upgrade system, which can provide a more flexible remote upgrade system suitable for multiple heterogeneous platforms and capable of unified loading and upgrading and overall system management.

[0005] To solve the above problems, the technical solutions provided in the embodiments of the present application are as follows: A updating and upgrading system, the system comprising: a main control unit and an online loading component; the online loading component comprises a plurality of input / output I / O ports with customizable different physical characteristics; the online loading component is implemented based on an FPGA platform; The main control unit is connected to the online loading component via an optical fiber; one or more devices to be updated are connected to one or more I / O ports of the online loading component via an RS422 physical channel; The main control unit is used to send the device search instruction and the device status query instruction to the online loading component based on the SRIO protocol; The online loading component is used to search for the device to be updated and check the device status of the device to be updated; if the device status of the device to be updated is a ready state, the online loading component requests the main control unit to load a file; The main control unit is further used to send the loading file to the online loading component based on the SRIO protocol; The online loading component is further used to send the loading file to the device to be updated based on the RS422 protocol and / or the SPI protocol, and remotely update and upgrade the device to be updated based on the loading file.

[0006] In a possible implementation, the device to be updated includes a communication submodule and an online upgrade submodule; the communication submodule of the device to be updated is connected to the online upgrade submodule of the device to be updated; The communication submodule of the device to be updated is used to receive the loading file; The online upgrade submodule of the device to be updated is used to perform remote update and upgrade based on the loading file under the control of the online loading component.

[0007] In a possible implementation, the online loading component includes the file read and write control module including a data verification module, a file reading module and a file sending module; The data verification module is connected to the file reading module; the file reading module is connected to the file sending module; The data verification module is used to verify the loaded file cached in the file reading module; If the verification of the loaded file passes, the file reading module is used to receive and cache the loaded file; The file sending module is used to send the loading file cached in the file reading module to the corresponding device to be updated.

[0008] In a possible implementation, each data packet in the load file is provided with a checksum and a check sequence number; The data verification module is specifically used for: Check whether the checksum of each data packet in the loaded file is consistent with the agreed checksum, if they are consistent, the checksum verification of the loaded file passes; Check whether the check sequence numbers of the data packets in the loaded file are continuous, if so, the continuity check of the loaded file passes; If the checksum check and / or the continuity check fails, it is determined that the check of the loaded file cached in the file reading module fails.

[0009] In a possible implementation, the file reading module is connected to the file sending module via a data cache module; The data cache module is used to reduce the difference in data transmission speed between the file reading module and the file sending module.

[0010] In a possible implementation, the online loading component includes a device checking module; The device checking module is used to check whether the working status of the online loading component is normal, and if so, to check whether the device status of the device to be updated is in the ready state.

[0011] In a possible implementation, the online loading component is specifically used to: utilize a multi-image loading MultiBoot mode to remotely update and upgrade the device to be updated based on the loading file.

[0012] In a possible implementation, the I / O port includes a three-wire port and / or a two-wire port; If the I / O port is a three-wire port, sending the loading file to the device to be updated based on the RS422 protocol; If the I / O port is a two-wire port, the loading file is sent to the device to be updated based on the SPI protocol.

[0013] Compared with the prior art, this application has the following beneficial effects: The present application provides an update and upgrade system, which includes a main control unit and an online loading component. The online loading component is implemented based on an FPGA platform and is equipped with multiple input / output (I / O) ports with customizable physical characteristics. The main control unit and the online loading component are connected through optical fiber to ensure high-speed and stable communication. One or more devices to be updated are connected to one or more I / O ports of the online loading component through the Recommended Standard 422 (RS422) physical channel. The main control unit is responsible for sending device search instructions and device status query instructions to the online loading component through the Serial Rapid IO (SRIO) protocol. The online loading component searches for the device to be updated according to these instructions and checks its device status. If the device to be updated is in a ready state, the online loading component will request the main control unit to load the file. The main control unit sends the loading file to the online loading component according to the SRIO protocol. Subsequently, the online loading component transmits the loading file to the device to be updated through the RS422 protocol and / or the Serial Peripheral Interface (SPI) protocol, and remotely updates and upgrades the device based on the loading file. The online loading component of this application is implemented based on the FPGA platform and includes multiple I / O ports with customizable physical characteristics. This enables the system to flexibly connect various types of devices and adapt to different physical characteristics requirements. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. 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 paying creative labor.

[0015] Figure 1 A structural diagram of an update and upgrade system provided in an embodiment of the present application. DETAILED DESCRIPTION

[0016] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0017] In complex system environments, embedded devices based on FPGA, DSP or ARM chips are often located in remote locations or harsh environments, or run as part of a large system. Traditional firmware or program download and upgrade processes, such as using an emulator or JTAG downloader, become difficult to implement in this situation. The existing remote loading and upgrading system transfers the update files to the designated storage device of the device to be updated through the network communication system, and performs firmware upgrades through the independently designed update system in the device. However, the current remote upgrade system only targets a single device or main chip type, and uses a single communication protocol to achieve independent upgrade loading of the device, which cannot meet the unified loading and upgrading and overall system management requirements of multiple heterogeneous platforms in a comprehensive and complex system.

[0018] In order to solve this problem, an update and upgrade system is provided in an embodiment of the present application, and the update and upgrade system includes a main control unit and an online loading component, wherein the online loading component is implemented based on an FPGA platform and has multiple I / O ports with different customizable physical characteristics. Through an optical fiber connection, the main control unit communicates with the online loading component, and one or more devices to be updated are connected to one or more I / O ports of the online loading component through an RS422 physical channel. The main control unit uses the SRIO protocol to send a device search instruction and a device status query instruction to the online loading component. The online loading component is responsible for finding and checking the status of the device to be updated, and once the device is ready, the request to load the file is sent to the main control unit. The main control unit then transmits the load file to the online loading component based on the SRIO protocol, and then the online loading component uses the RS422 protocol and / or the SPI protocol to pass the load file to the device to be updated, and remotely updates and upgrades the device to be updated through the load file. The online loading component of the present application is implemented based on an FPGA platform and includes multiple I / O ports with different customizable physical characteristics. This enables the system to flexibly connect various types of devices and adapt to different physical property requirements.

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

[0020] See also Figure 1 , Figure 1 This is a structural diagram of an update and upgrade system provided in an embodiment of the present application. Figure 1 The update and upgrade system shown includes: a main control unit and an online loading component. The online loading component includes multiple I / O ports with customizable different physical characteristics. The online loading component is implemented based on an FPGA platform.

[0021] The main control unit is connected to the online loading component via an optical fiber; one or more devices to be updated are connected to one or more I / O ports of the online loading component via an RS422 physical channel.

[0022] The main control unit is used to send the device search instruction and the device status query instruction to the online loading component based on the Serial Rapid Interconnect SRIO protocol.

[0023] The online loading component is used to search for the device to be updated and check the device status of the device to be updated; if the device status of the device to be updated is a ready state, the online loading component requests the main control unit to load a file.

[0024] The main control unit is further used to send the loading file to the online loading component based on the SRIO protocol.

[0025] The online loading component is also used to send the loading file to the device to be updated based on the RS422 protocol and / or the serial peripheral interface SPI protocol, and remotely update and upgrade the device to be updated based on the loading file.

[0026] In a possible implementation, the device to be updated includes a communication submodule and an online upgrade submodule; the communication submodule of the device to be updated is connected to the online upgrade submodule of the device to be updated; The communication submodule of the device to be updated is used to receive the loading file; The online upgrade submodule of the device to be updated is used to perform remote update and upgrade based on the loading file under the control of the online loading component.

[0027] This design enables the device to be updated to efficiently receive and process update files, thereby achieving remote and automated firmware or software upgrades, improving system flexibility and maintenance efficiency.

[0028] In a possible implementation, the online loading component includes the file read and write control module including a data verification module, a file reading module and a file sending module.

[0029] The data verification module is connected to the file reading module. The file reading module is connected to the file sending module.

[0030] The data verification module is used to verify the loaded file cached in the file reading module.

[0031] In order to ensure the correctness of the loaded file when it is sent down and avoid loading failure, it is necessary to verify the loaded file data before caching it in the file reading module.

[0032] In a possible implementation, each data packet in the load file is provided with a checksum and a check sequence number; The data verification module is specifically used for: Check whether the checksum of each data packet in the loading file is consistent with the agreed checksum. If they are consistent, the checksum verification of the loading file passes.

[0033] Check whether the check sequence numbers of the data packets in the loaded file are continuous, if so, the continuity check of the loaded file passes; If the checksum check and / or the continuity check fails, it is determined that the check of the loaded file cached in the file reading module fails.

[0034] This double verification mechanism ensures the integrity and correctness of the loaded file, thereby improving the reliability and security of the update process.

[0035] In a possible implementation, if the loading file fails to pass the inspection, the data verification module needs to feed back a signal to the main control unit so that the main control unit re-uploads the loading file.

[0036] In a possible implementation, if the verification of the loading file passes, the file reading module is used to receive and cache the loading file.

[0037] Since the amount of effectively loaded file data is large and the transmission bandwidth is high, if only the FPGA hardware resources on the main control board are used, there will be a problem of insufficient application cache leading to data loss, resulting in the final loading failure. Therefore, it is necessary to use the file reading module on the FPGA board (such as Double Data Rate 3 (DDR3) dynamic random access memory) external memory resources to complete data caching.

[0038] In a possible implementation, the file sending module is used to send the loading file cached in the file reading module to the corresponding device to be updated.

[0039] It should be noted that the file sending module will limit the transmission length of the loaded file (such as 1Mbytes), so the file sending module needs to divide the loaded file into multiple data packets when sending the data of the loaded file.

[0040] In a possible implementation, the file reading module is connected to the file sending module via a data cache module. The data cache module is used to reduce the difference in data transmission speed between the file reading module and the file sending module.

[0041] The data cache module acts as a buffer between the file reading module and the file sending module, and performs a "speed matching" operation. In this case, the data cache module will perform speed matching to reduce the data transmission speed difference between the file reading module and the file sending module to ensure smooth data transmission between the two modules.

[0042] Specifically, the data cache module will cache the received loading files and gradually release them to the file sending module according to the working rate or processing capacity of each module, so that the data transmission speed between the file reading module and the file sending module can match. In this way, data exchange at different speeds can be effectively coordinated to avoid data loss or transmission errors caused by rate mismatch, thereby improving the efficiency and stability of the system.

[0043] In a possible implementation, the online loading component includes a device checking module; The device checking module is used to check whether the working status of the online loading component is normal, and if so, to check whether the device status of the device to be updated is in the ready state.

[0044] After receiving the self-test command from the host computer, the main control module of the online loading component starts the board self-test program and notifies the device inspection module to complete the self-test and the check of the status of the device to be updated. Self-test refers to the inspection of its own working status, checking whether the working status of the online loading component is normal, mainly including the read and write test of the file reading module, the file sending module and the detection of other peripheral chips. The check of the status of the device to be updated is to check whether the device status of the device to be updated is in the ready state. After the device inspection module completes the self-test and the check of the status of the device to be updated, the FPGA internal device status register (DSTATUS) is set to notify the main control module to upload the status information of the device self-test and the status check of the device to be updated.

[0045] In a possible implementation, the online loading component is specifically used to: utilize a multi-image loading MultiBoot mode to remotely update and upgrade the device to be updated based on the loading file.

[0046] The configuration process of the MultiBoot mode includes: reading the Golden_image configuration file from the 0 address of the FPGA (i.e., the platform implementing the FPGA for online loading components) FLASH, and jumping to the address where the MultiBoot_image is stored when the Golden_image contains a jump instruction during the loading process. At this time, the FPGA attempts to load the MultiBoot_image bitstream file. If the configuration is successful, the configured function is executed. If the MultiBoot_image configuration is wrong, the fallback operation is triggered, and the FPGA reloads the Golden_image to ensure that the FPGA can run basic functions and avoid the situation where the FPGA cannot be used due to the error of the MultiBoot_image.

[0047] This method can effectively implement equipment upgrade operations and improve system flexibility and efficiency.

[0048] In a possible implementation, the I / O port includes a three-wire port and / or a two-wire port; If the I / O port is a three-wire port, sending the loading file to the device to be updated based on the RS422 protocol; If the I / O port is a two-wire port, the loading file is sent to the device to be updated based on the SPI protocol.

[0049] This design enables the system to flexibly select different communication protocols to adapt to different types of ports, thereby improving the compatibility and applicability of the system.

[0050] The present application provides an update and upgrade system, which includes a main control unit and an online loading component. The online loading component includes multiple I / O ports with customizable different physical characteristics and is implemented based on an FPGA platform. The main control unit is connected to the online loading component via an optical fiber, and one or more devices to be updated are connected to one or more I / O ports of the online loading component via an RS422 physical channel. The main control unit is used to send device search instructions and device status query instructions to the online loading component based on the SRIO protocol. The online loading component is responsible for finding the device to be updated and checking its device status; if the device status of the device to be updated is in a ready state, the component requests the main control unit to load the file. The main control unit sends the loading file to the online loading component based on the SRIO protocol. The online loading component sends the loading file to the device to be updated based on the RS422 protocol and / or the SPI protocol, and remotely updates and upgrades the device based on the loading file. The online loading component of the present application is implemented based on an FPGA platform and includes multiple I / O ports with customizable different physical characteristics. This enables the system to flexibly connect various types of devices to adapt to different physical property requirements.

[0051] It should be noted that each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. Some or all of them can be selected according to actual needs to achieve the purpose of the embodiment scheme. Ordinary technicians in this field can understand and implement it without paying creative work.

[0052] The above description of the disclosed embodiments enables those skilled in the art to implement or use the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to the embodiments shown herein, but will conform to the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. An update and upgrade system, characterized in that: The system comprises: a main control unit and an online loading component; the online loading component comprises a plurality of input / output I / O ports with customizable different physical characteristics; the online loading component is implemented based on a field programmable gate array FPGA platform; The main control unit is connected to the online loading component via an optical fiber; one or more devices to be updated are connected to one or more I / O ports of the online loading component via an RS422 physical channel; The main control unit is used to send the device search instruction and the device status query instruction to the online loading component based on the serial rapid interconnect SRIO protocol; The online loading component is used to search for the device to be updated and check the device status of the device to be updated; if the device status of the device to be updated is a ready state, the online loading component requests the main control unit to load a file; The main control unit is further used to send the loading file to the online loading component based on the SRIO protocol; The online loading component is also used to send the loading file to the device to be updated based on the RS422 protocol and / or the serial peripheral interface SPI protocol, and remotely update and upgrade the device to be updated based on the loading file.

2. The system according to claim 1, characterized in that The device to be updated includes a communication submodule and an online upgrade submodule; the communication submodule of the device to be updated is connected to the online upgrade submodule of the device to be updated; The communication submodule of the device to be updated is used to receive the loading file; The online upgrade submodule of the device to be updated is used to perform remote update and upgrade based on the loading file under the control of the online loading component.

3. The system according to claim 1, characterized in that The online loading component includes a data verification module, a file reading module and a file sending module; The data verification module is connected to the file reading module; the file reading module is connected to the file sending module; The data verification module is used to verify the loaded file cached in the file reading module; If the verification of the loaded file passes, the file reading module is used to receive and cache the loaded file; The file sending module is used to send the loading file cached in the file reading module to the corresponding device to be updated.

4. The system according to claim 3, characterized in that Each data packet in the loading file is provided with a checksum and a check sequence number; The data verification module is specifically used for: Check whether the checksum of each data packet in the loaded file is consistent with the agreed checksum, if they are consistent, the checksum verification of the loaded file passes; Check whether the check sequence numbers of the data packets in the loaded file are continuous, if so, the continuity check of the loaded file passes; If any one or more of the checksum check and the continuity check fails, it is determined that the check of the loaded file cached in the file reading module fails.

5. The system according to claim 3, characterized in that The file reading module is connected to the file sending module via a data buffer module; The data cache module is used to reduce the difference in data transmission speed between the file reading module and the file sending module.

6. The system according to claim 1, characterized in that The online loading component includes a device inspection module; The device checking module is used to check whether the working status of the online loading component is normal, and if so, to check whether the device status of the device to be updated is in the ready state.

7. The system according to claim 1, characterized in that The online loading component is specifically used to: utilize the multi-image loading MultiBoot mode to remotely update and upgrade the device to be updated based on the loading file.

8. The system according to claim 1, characterized in that The I / O port includes a three-wire port and / or a two-wire port; If the I / O port is a three-wire port, sending the loading file to the device to be updated based on the RS422 protocol; If the I / O port is a two-wire port, the loading file is sent to the device to be updated based on the SPI protocol.

Citation Information

Patent Citations

  • Method for online upgrading FLASH (Flash Memory) based on in-band Ethernet

    CN106130771A

  • Device and method for online upgrade of FPGA program based on fiber communication

    CN106598650A

  • Data sending method and device, data receiving method and device and electronic equipment

    CN109756491A

  • Multi-type communication interface to network communication equipment and application method thereof

    CN113242206A

  • Multi-interface compatible expansion system based on SRIO bus and communication method

    CN114116594A