Firmware file transmission method and device, computer equipment, storage medium and product

By performing segmented processing and verification of firmware files, combined with the transmission network and device performance, the problems of insecure and inefficiency of traditional firmware file transmission are solved, and more efficient and secure firmware file transmission is achieved.

CN119109917APending Publication Date: 2024-12-10CHONGQING SELIS PHOENIX INTELLIGENT INNOVATION TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411258566.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-09
Publication Date
2024-12-10

AI Technical Summary

Technical Problem

Due to the openness of wireless transmission, traditional firmware file transfer methods make firmware upgrades unsafe, reducing the efficiency of firmware file transfer and upgrade.

Method used

By obtaining the firmware coded file, the firmware file to be transferred is divided into at least two firmware segmented files according to the segmented reference data of the firmware file to be transferred in at least one dimension, and the firmware file to be installed is generated after verification at the on-board terminal. Verify data to ensure file integrity and adjust the transmission sequence and method according to factors such as the transmission network and equipment performance.

Benefits of technology

It improves the security and efficiency of firmware file transfer, ensures the accuracy and rationality of segmented files, flexibly adjusts the transmission method, and enhances the adaptability and integrity of the transmission process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119109917A_ABST
    Figure CN119109917A_ABST
Patent Text Reader

Abstract

The invention relates to a firmware file transmission method and device, computer equipment, a storage medium and a product. The method comprises the following steps: acquiring a firmware coding file corresponding to a firmware file to be transmitted; wherein the firmware coding file comprises firmware data under a firmware data bit and check data under a redundancy check bit; splitting the firmware coding file into at least two firmware segmented files according to segmented reference data of the firmware file to be transmitted in at least one dimension; and transmitting the at least two firmware segment files to the vehicle-mounted terminal, so that the vehicle-mounted terminal generates a to-be-installed firmware file according to the at least two firmware segment files after the at least two firmware segment files are verified based on the verification data. By adopting the method, the security of firmware file transmission can be improved, and the efficiency of firmware file transmission and upgrading can be reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of communication technology, and in particular to a firmware file transmission method, device, computer equipment, storage medium and product. Background Art

[0002] With the rapid development of automotive intelligence, the functions of vehicle computer systems are constantly enriched and upgraded, and firmware updates have become a key link in ensuring the performance, safety and functional expansion of vehicle computer systems.

[0003] At present, the traditional method of firmware file transmission is generally to integrate a chip with wireless transmission function in the device, and use the chip to access the OTA (Over-The-Air) server to download the firmware package to achieve firmware upgrade. However, in the above method, due to the openness of the wireless transmission used, it is easy to cause the insecurity of firmware upgrade, reducing the efficiency of firmware file transmission and upgrade. Summary of the invention

[0004] Based on this, it is necessary to provide a firmware file transmission method, device, computer equipment, storage medium and product to address the above technical problems, which can improve the security of firmware file transmission and reduce the efficiency of firmware file transmission and upgrade.

[0005] In a first aspect, the present application provides a firmware file transmission method, which is applied to a server, comprising:

[0006] Obtain a firmware encoding file corresponding to the firmware file to be transmitted; wherein the firmware encoding file includes firmware data under the firmware data bit and check data under the redundant check bit;

[0007] Splitting the firmware encoding file into at least two firmware segment files according to the segment reference data of the firmware file to be transmitted in at least one dimension;

[0008] The at least two firmware segment files are transmitted to the vehicle terminal, so that the vehicle terminal generates a firmware file to be installed according to the at least two firmware segment files after the at least two firmware segment files are verified based on the verification data.

[0009] In one of the embodiments, the firmware encoding file is split into at least two firmware segment files according to the segment reference data of the firmware file to be transmitted in at least one dimension, including:

[0010] Determine the amount of single-segment data according to the segmented reference data of the firmware file to be transmitted in at least one dimension; determine the number of segments according to the ratio of the file size of the firmware encoding file to the amount of single-segment data; and split the firmware encoding file into at least two firmware segment files according to the number of segments.

[0011] In one embodiment, determining the number of segments according to the ratio of the file size of the firmware encoding file to the amount of data in the single segment includes:

[0012] Determine a data volume adjustment coefficient based on the data type and / or numerical value of the data contained in the segmented reference data under at least one dimension; adjust the single-segment data volume based on the data volume adjustment coefficient; determine the number of segments based on the ratio of the file size of the firmware encoding file to the adjusted single-segment data volume.

[0013] In one of the embodiments, the segmented reference data under at least one dimension includes at least one of the following: network performance data of the transmission network corresponding to the firmware file to be transmitted, device performance data of the transmission device corresponding to the firmware file to be transmitted, data importance of the firmware file to be transmitted, transmission time data of the file type corresponding to the firmware file to be transmitted, and encryption complexity of the firmware file to be transmitted.

[0014] In one embodiment, the method further comprises:

[0015] Obtain a segment identifier of a problem segment file; wherein the problem segment file is obtained by the vehicle terminal verifying the at least two firmware segment files according to the verification data; and retransmit the problem segment file to the vehicle terminal according to the segment identifier of the problem segment file.

[0016] In one embodiment, transmitting the at least two firmware segment files to the vehicle-mounted terminal includes:

[0017] According to the importance of the firmware data corresponding to the at least two firmware segment files, a transmission order of the firmware segment files is determined; and according to the transmission order, the at least two firmware segment files are transmitted to the vehicle-mounted terminal.

[0018] In a second aspect, the present application provides a firmware file transmission method, which is applied to a vehicle-mounted terminal, comprising:

[0019] Obtain at least two firmware segment files; wherein the at least two firmware segment files are obtained by splitting the firmware encoding file corresponding to the firmware file to be installed by the server according to the segmentation reference data of the firmware file to be installed in at least one dimension; the firmware encoding file includes firmware data under the firmware data bit and check data under the redundant check bit;

[0020] Verify the at least two firmware segment files according to the verification data;

[0021] If the verification passes, the firmware file to be installed is generated according to the at least two firmware segment files.

[0022] In one embodiment, the method further comprises:

[0023] If the verification fails, the problematic segmented file in the at least two firmware segmented files is determined according to the problematic data bit in the verification result; the segment identifier of the problematic segmented file is sent to the server so that the server retransmits the problematic segmented file; according to the problematic segmented file, the at least two firmware segmented files are updated, and the verification operation on the at least two firmware segmented files is returned to be performed until the verification termination condition is met.

[0024] In a third aspect, the present application further provides a firmware file transmission device, which is configured on a server and includes:

[0025] A file acquisition module, used to acquire a firmware encoding file corresponding to the firmware file to be transmitted; wherein the firmware encoding file includes firmware data under the firmware data bit and check data under the redundant check bit;

[0026] A file segmentation module, configured to split the firmware encoding file into at least two firmware segment files according to segmentation reference data of the firmware file to be transmitted in at least one dimension;

[0027] The file transmission module is used to transmit the at least two firmware segment files to the vehicle terminal, so that the vehicle terminal generates a firmware file to be installed according to the at least two firmware segment files after the at least two firmware segment files are verified based on the verification data.

[0028] In a fourth aspect, the present application further provides a firmware file transmission device, which is configured in a vehicle-mounted terminal, comprising:

[0029] A file receiving module, configured to obtain at least two firmware segment files; wherein the at least two firmware segment files are obtained by splitting a firmware encoding file corresponding to the firmware file to be installed by the server according to segment reference data of the firmware file to be installed in at least one dimension; the firmware encoding file includes firmware data under firmware data bits and check data under redundant check bits;

[0030] A file verification module, configured to verify the at least two firmware segment files according to the verification data;

[0031] The file installation module is used to generate the firmware file to be installed according to the at least two firmware segment files if the verification passes.

[0032] In a fifth aspect, the present application further provides a computer device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the first and second aspects mentioned above when executing the computer program.

[0033] In a sixth aspect, the present application further provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the steps of the first and second aspects described above are implemented.

[0034] In a seventh aspect, the present application further provides a computer program product, comprising a computer program, which implements the steps of the first and second aspects above when executed by a processor.

[0035] The firmware file transmission method, device, computer equipment, storage medium and product described above obtain a firmware encoding file corresponding to the firmware file to be transmitted, including firmware data under the firmware data bit and verification data under the redundant check bit, and split the firmware encoding file into at least two firmware segment files according to the segment reference data of the firmware file to be transmitted in at least one dimension; further, the at least two firmware segment files are transmitted to the vehicle terminal, so that the vehicle terminal generates a firmware file to be installed according to the at least two firmware segment files after verifying the at least two firmware segment files based on the verification data. The above scheme, by segmenting the firmware encoding file according to the segment reference data of the firmware file to be transmitted in at least one dimension, is equivalent to fully considering the influencing factors of the firmware file to be transmitted in at least one dimension, and ensuring the accuracy and rationality of the at least two firmware segment files obtained; at the same time, through segment transmission, the transmission mode of the firmware segment files can be flexibly adjusted, which improves the flexibility of the transmission process and also improves the transmission efficiency. In addition, this scheme ensures the integrity of at least two firmware segment files transmitted to the vehicle terminal by introducing verification data. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the drawings required for use in the embodiments of the present application or related technical descriptions 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 related drawings can be obtained based on these drawings without paying creative work.

[0037] Figure 1 An application environment diagram of a firmware file transmission method in an embodiment;

[0038] Figure 2 A schematic diagram of a firmware file transmission method according to an embodiment of the present invention;

[0039] Figure 3A schematic diagram of a process for determining at least two firmware segment files in one embodiment;

[0040] Figure 4 A schematic diagram of a process for determining the number of segments in one embodiment;

[0041] Figure 5 A schematic diagram of a process of retransmitting a problematic segmented file in one embodiment;

[0042] Figure 6 A schematic diagram of a process of transmitting at least two firmware segment files to a vehicle-mounted terminal in one embodiment;

[0043] Figure 7 is a flowchart of a firmware file transmission method in another embodiment;

[0044] Figure 8 A signaling diagram of a firmware file transmission method in one embodiment;

[0045] Fig. 9 is a structural block diagram of a firmware file transmission device in an embodiment;

[0046] Fig.10 is a structural block diagram of a firmware file transmission device in another embodiment;

[0047] Fig.11 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION

[0048] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0049] The firmware file transmission method provided in the embodiment of the present application can be applied to Figure 1 In the application environment shown. Among them, the server 110 is a server that generates a firmware file and transmits information with the vehicle terminal; the vehicle terminal 120 is a terminal in the vehicle that needs to be upgraded. Optionally, after obtaining the firmware encoding file corresponding to the firmware file to be transmitted, including the firmware data under the firmware data bit and the verification data under the redundant check bit, the server 110 splits the firmware encoding file into at least two firmware segment files according to the segmentation reference data of the firmware file to be transmitted in at least one dimension; further, the server 110 transmits the at least two firmware segment files to the vehicle terminal 120, so that the vehicle terminal 120 generates the firmware file to be installed according to the at least two firmware segment files after verifying the at least two firmware segment files based on the verification data.

[0050] In one embodiment, Figure 2 As shown, a firmware file transmission method is provided, which is applied to Figure 1 The server 110 in the example is used as an example to illustrate, and specifically includes the following steps:

[0051] S210, obtaining a firmware encoding file corresponding to the firmware file to be transmitted.

[0052] Among them, the firmware file is a file containing the program code required for the vehicle terminal upgrade; the firmware encoding file is a file obtained after the firmware file is preset encoded. In the embodiment of the present application, the firmware encoding file can be a binary file. Exemplarily, the firmware encoding file may include firmware data under the firmware data bit and verification data under the redundant check bit. Among them, the firmware data is the data obtained after the original program code in the firmware file is encoded; the redundant check bit is the redundant bit used for parity check; the verification data is the data corresponding to the redundant check bit for the actual parity check.

[0053] Optionally, after obtaining the firmware file to be transmitted, first convert the firmware file into a binary firmware file containing only the firmware data under the firmware data bit, and input the binary firmware file, key and initialization vector into the encryption library based on the AES-256-GCM (Advanced Encryption Standard -256-Galois / Counter Mode, which combines the AES encryption algorithm and the GCM mode) algorithm (such as OpenSSL, Libsodium) to encrypt the binary firmware file, and obtain the encrypted binary firmware file and authentication label. Further, add redundant check bits to the firmware file according to the Hamming code and BCC (Bose-Chaudhuri-Hocquenghem, XOR check) algorithm, and generate check data under the redundant check bits.

[0054] For example, if the binary firmware file contains bits of firmware data, that is, the number of firmware data bits is First, we need to determine the number of redundant check bits based on the number of firmware data bits. Specifically, we can determine the number of redundant check bits based on the following formula (1):

[0055] (1)

[0056] in, is the number of redundant check bits.

[0057] That is, the total number of data bits in the firmware encoding file is Optionally, in the embodiment of the present application, the position of the redundant check bit may be specified as ( ), such as 1, 2, 4, 8, etc. Further, set a For an empty firmware encoding file of a data bit, first insert the redundant check bit into the corresponding position, and fill the firmware data in the empty data bit in sequence. Among them, each redundant check bit is responsible for checking the firmware data bit at the preset position, and the check data on each redundant check bit is determined by the XOR algorithm, and the check data is filled into the corresponding redundant check bit to generate a firmware encoding file.

[0058] For example, first fill in 0 in the redundant data bit of the firmware code file, and then fill in the firmware data bit in order. The first bit of check data is located at the first bit of the firmware code file ( ), calculate the XOR of the 1st, 3rd, 5th, 7th, 9th, 11th, 13th, 15th… bits, and fill in the first bit of the firmware code file.

[0059] The second checksum is located in the second position of the firmware code file ( ), calculate the XOR of the 2nd, 3rd, 6th, 7th, 10th, 11th, 14th, 15th… bits, and fill in the 2nd bit of the firmware encoding file.

[0060] The third checksum is located in the fourth position of the firmware code file ( ), calculate the XOR of the 4th, 5th, 6th, 7th, 12th, 13th, 14th, 15th, 20th, 21st, 22nd, 23rd... bits, and fill in the 4th bit of the firmware code file.

[0061] The 4th checksum is located in the 8th position of the firmware code file ( ), calculate the XOR of bits 8-15, 24-31, 40-47... and fill in the 8th bit of the firmware encoding file.

[0062] The fifth checksum is located at the 16th position of the firmware code file ( ), calculate the XOR of bits 16-31, 48-63, 80-95... and fill in the 16th bit of the firmware encoding file.

[0063] Specifically, taking the 10101 code as an example, create a Hamming code encoding space and fill the source code into the corresponding bit of the code, because && , so a 4-bit redundant check code is required, and the resulting code is _ _ 1 _ 0 10 _ 1, and the check digit on the redundant check bit is set to 0 first.

[0064] Calculate the first bit of the redundant check bit (1, 3, 5, 7, and 9 are XORed): The result is 0, so the first bit of the Hamming code is 0, and the result is 0 _ 1 _ 0 10 _ 1.

[0065] Calculate the second bit of the redundant check bit (2, 3, 6, and 7 are XORed): The result is 0, so the second bit of the Hamming code is 0, and the result is 001 _ 0 10 _ 1.

[0066] Calculate the 3rd bit of the redundant check bit (4, 5, 6, and 7 are XORed): The result is 1, so the 4th bit of the Hamming code is 0, and the result is 0011 0 10 _ 1.

[0067] Calculate the 4th bit of the redundant check bit (8, 9 are XORed): The result is 0, so the 8th bit of the Hamming code is 1, and the result is 0011 0101 1. So the final code is 001101011.

[0068] In addition, in addition to binary firmware files with program codes, firmware encoding files can also carry firmware configuration files, drivers, system libraries, resource files, etc.; among them, the configuration files contain configuration parameters required for device operation; the driver is the driver code required for the hardware device; the system library is the system library file that the program code depends on to run; the resource files include resources such as graphical interface, sound, language pack, etc.

[0069] S220: Split the firmware encoding file into at least two firmware segment files according to segment reference data of the firmware file to be transmitted in at least one dimension.

[0070] The dimensions are different dimensions of the firmware file to be transmitted during the transmission process, and exemplary dimensions include but are not limited to transmission network dimension, device dimension, file data dimension, transmission requirement dimension, and encryption dimension, etc.; the segmentation reference data is data associated with the firmware encoding file splitting process. The firmware segmentation file can be a file obtained by segmenting the firmware encoding file.

[0071] Optionally, by analyzing the network status of the vehicle's on-board system, such as monitoring real-time bandwidth, evaluating network latency, and counting packet loss rates, segmented reference data under the transmission network dimension can be obtained; at the same time, by analyzing the hardware performance parameters of the on-board system, such as CPU (Central Processing Unit) processing power, memory capacity, and storage read and write speeds, segmented reference data under the device dimension can be obtained; further, by comprehensively considering the characteristics of the file, such as the file size, structure, and data importance distribution, segmented reference data under the file data dimension can be obtained; it is also possible to obtain segmented reference data under the transmission requirement dimension based on historical transmission data of the same type of firmware files; for the encrypted firmware files to be transmitted, segmented reference data under the encryption dimension can be obtained based on the encryption algorithm.

[0072] Exemplarily, in the embodiment of the present application, the segmented reference data under at least one dimension includes but is not limited to at least one of the following: network performance data of the transmission network corresponding to the firmware file to be transmitted, device performance data of the transmission device corresponding to the firmware file to be transmitted, data importance of the firmware file to be transmitted, transmission time data of the file type corresponding to the firmware file to be transmitted, and encryption complexity of the firmware file to be transmitted, etc. Among them, the network performance data is the segmented reference data under the transmission network dimension, for example, the network performance data includes but is not limited to the average network bandwidth, network stability factor, etc.; the device performance data is the segmented reference data under the device dimension, for example, the device performance data includes but is not limited to the device processing capacity factor; the data importance is the segmented reference data under the file data dimension, for example, the data importance includes but is not limited to the data importance factor, etc.; the transmission time data is the segmented reference data under the transmission requirement dimension, for example, the transmission time data includes but is not limited to the average expected transmission time and the transmission time fluctuation factor, etc.; the encryption complexity is the segmented reference data under the encryption dimension, for example, the encryption complexity includes but is not limited to the encryption complexity factor, etc.

[0073] It should be noted that the average network bandwidth is the amount of data that the transmission network can transmit per unit time; the network stability factor is used to measure the ability of the transmission network system to maintain its functions and service quality in the face of various challenges and changes; the device processing capacity factor represents the amount and speed of data that the device can process; the data importance factor represents the importance of the data; the average expected transmission time is the average time for transmitting the same type of firmware files in historical time; the transmission time fluctuation factor represents the fluctuation of the time it takes to complete data transmission; the encryption complexity factor represents the complexity of the encryption algorithm used to encrypt the firmware file to be transmitted.

[0074] Optionally, the segmentation reference data of the firmware file to be transmitted in at least one dimension can be analyzed and calculated to obtain a segmentation rule for the firmware encoding file, and the firmware encoding file can be split into at least two firmware segment files according to the preset segmentation rule. Further, a segment identifier is added to each firmware segment file to mark the position of each firmware segment file in the firmware encoding file.

[0075] It should be noted that after the firmware encoding file is segmented, an end segment needs to be added, which includes but is not limited to a stop symbol, the number of firmware segment files, and the order in which the firmware segment files are sent, etc. The stop symbol can be used to inform the vehicle terminal that the firmware segment files have been transmitted.

[0076] S230, transmitting at least two firmware segment files to the vehicle terminal, so that the vehicle terminal generates a firmware file to be installed according to the at least two firmware segment files after verifying the at least two firmware segment files based on the verification data.

[0077] Optionally, the server may transmit at least two firmware segment files to the vehicle terminal in order according to the segment identifier of each firmware segment file. After receiving the at least two firmware segment files, the vehicle terminal verifies the at least two firmware segment files based on the verification data in the firmware segment files, and generates a firmware file to be installed according to the at least two firmware segment files after the verification passes.

[0078] In addition, the server can also dynamically adjust the transmission order of the firmware segmented files according to the real-time transmission network conditions and device status to improve the flexibility and adaptability of the transmission. In addition, in the event of a transmission interruption due to network problems, the vehicle terminal and the server will synchronously record the transmission progress. For example, the transmission progress may include the segment identifiers of the firmware segmented files that have been transmitted and the segment identifiers of the firmware segmented files that have not been transmitted. After the network recovery is detected, the firmware segmented files that have not been transmitted need only be transmitted according to the transmission progress.

[0079] It should be noted that in order to reduce storage space usage, speed up transmission speed, and speed up the download speed of the vehicle terminal, before transmitting at least two firmware segment files to the vehicle terminal, at least two firmware segment files need to be compressed, for example, ZIP, RAR or a device-specific compression format is selected to compress at least two firmware segment files.

[0080] In the above firmware file transmission method, a firmware encoding file corresponding to the firmware file to be transmitted, including firmware data under the firmware data bit and verification data under the redundant check bit, is obtained, and the firmware encoding file is split into at least two firmware segmented files according to the segmented reference data of the firmware file to be transmitted in at least one dimension; further, the at least two firmware segmented files are transmitted to the vehicle terminal, so that the vehicle terminal generates the firmware file to be installed according to the at least two firmware segmented files after verifying the at least two firmware segmented files based on the verification data. The above scheme, by segmenting the firmware encoding file according to the segmented reference data of the firmware file to be transmitted in at least one dimension, is equivalent to fully considering the influencing factors of the firmware file to be transmitted in at least one dimension, and ensuring the accuracy and rationality of the at least two firmware segmented files obtained; at the same time, through segmented transmission, the transmission mode of the firmware segmented file can be flexibly adjusted, which improves the flexibility of the transmission process and also improves the transmission efficiency. In addition, this scheme ensures the integrity of at least two firmware segmented files transmitted to the vehicle terminal by introducing verification data.

[0081] On the basis of the technical solutions of the above embodiments, in order to ensure the accuracy and rationality of the at least two firmware segment files obtained, the present application also provides an optional embodiment. In this optional embodiment, the step of determining the at least two firmware segment files in S220 is refined.

[0082] See also Figure 3 The steps of determining at least two firmware segment files shown include:

[0083] S310, determining a single-segment data amount according to segment reference data of a firmware file to be transmitted in at least one dimension.

[0084] The single-segment data volume refers to the data capacity corresponding to a firmware segment file.

[0085] Optionally, the product of the segmented reference data under different dimensions can be used as the single-segment data volume. Exemplarily, if the segmented reference data under at least one dimension includes network performance data, device performance data, data importance, transmission time data, and encryption complexity, the product of the network performance data, device performance data, data importance, transmission time data, and encryption complexity can be used as the single-segment data volume.

[0086] In order to avoid inaccurate determination of the single-segment data volume due to excessive multiplication, the segmented reference data under the above-mentioned different dimensions can also be standardized according to preset rules, and the product of the standardized processing results can be used as the single-segment data volume. Among them, the preset rules can be set by technicians according to needs or experience, or determined or adjusted through a large number of experiments, and this application does not impose any restrictions on this.

[0087] Furthermore, if the network performance data includes the average network bandwidth and the network stability factor, the device performance data includes the device processing capability factor, the data importance includes the data importance factor, the transmission time data includes the average expected transmission time and the transmission time fluctuation factor, and the encryption complexity includes the encryption complexity factor, then the amount of single-segment data can be calculated by the following formula: average network bandwidth × network stability factor × device processing capability factor × data importance factor × (average expected transmission time + transmission time fluctuation factor) × encryption complexity factor.

[0088] S320, determining the number of segments according to the ratio of the file size of the firmware encoding file to the amount of data in a single segment.

[0089] The number of segments is the total number of segments of the firmware encoding file.

[0090] Optionally, the ratio of the file size of the firmware encoding file to the amount of data in a single segment may be used as the number of segments.

[0091] It is understandable that if the ratio of the file size of the firmware code file to the amount of data in a single segment is not an integer, the number of segments can be determined by rounding the comparison value result. Exemplarily, it can be rounded up or down, and this application does not impose any limitation on this.

[0092] S330: Split the firmware encoding file into at least two firmware segment files according to the number of segments.

[0093] Optionally, the firmware encoding file may be evenly split into the above-mentioned number of firmware segment files, or divided in sequence according to the amount of single-segment data, and the remaining data at the tail that is less than the amount of single-segment data is taken as a complete firmware segment file.

[0094] In this embodiment, the amount of single-segment data is determined based on the segmented reference data of the firmware file to be transmitted in at least one dimension, the influencing factors of the firmware file to be transmitted in multiple dimensions are comprehensively considered, and the rationality of the determined number of segments is guaranteed based on the file size of the firmware encoding file, and the rationality and accuracy of the determined at least two firmware segment files are further guaranteed.

[0095] On the basis of the technical solutions of the above-mentioned embodiments, in order to ensure the accuracy and rationality of the determined number of segments, the present application also provides an optional embodiment, in which the step of determining the number of segments in S320 is refined.

[0096] See also Figure 4 The steps for determining the number of segments shown include:

[0097] S410: Determine a data volume adjustment coefficient according to the data type and / or value size of data included in the segmented reference data in at least one dimension.

[0098] The data volume adjustment coefficient may be understood as a pre-set coefficient for appropriately relaxing or shrinking the single-segment data volume.

[0099] Optionally, the data type and / or numerical size of the segmented reference data under at least one dimension can be fully considered, the importance of the segmented reference data under each dimension can be analyzed, and a single adjustment coefficient can be set for each segmented reference data according to the importance of each segmented reference data; further, the product of each single adjustment coefficient can be used as the data volume adjustment coefficient.

[0100] Optionally, in order to ensure the rationality and effectiveness of the determined data volume adjustment factor, the data type and numerical value of the data contained in the segmented reference data under each dimension can be analyzed respectively to determine the first importance corresponding to different data types and the second importance corresponding to different numerical values ​​corresponding to different segmented reference data, and based on the first importance and the second importance, comprehensively determine the importance corresponding to each segmented reference data. Further, determine the weight of each segmented reference data according to its importance, and calculate the weighted average of all segmented parameter data according to the weight to determine the data volume adjustment coefficient.

[0101] S420, adjusting the single-segment data volume according to the data volume adjustment coefficient.

[0102] Optionally, the single-segment data volume and the data volume adjustment coefficient may be multiplied to adjust the single-segment data volume to obtain the adjusted single-segment data volume. It should be noted that since the adjustment coefficient may not be an integer, the adjusted single-segment data volume obtained after the single-segment data volume is multiplied by the data volume adjustment coefficient is also not an integer. In this case, the adjusted single-segment data volume needs to be rounded, for example, rounded up or rounded down.

[0103] S430, determining the number of segments according to the ratio of the file size of the firmware encoding file to the adjusted single-segment data volume.

[0104] Optionally, the ratio of the file size of the firmware encoding file to the adjusted single-segment data volume can be used as the number of segments. It should be noted that, for the same consideration, when the calculated number of segments is not an integer, the number of segments also needs to be rounded, and this application does not impose any limitation on this.

[0105] For example, assume that the file size of the firmware encoding file is 500MB, the average network bandwidth is 20Mbps, the network stability factor is 0.8, the device processing capacity factor is 0.7, the data importance factor is 0.9 for the critical part and 0.6 for the non-critical part, the average expected transmission time is 5 seconds, the transmission time fluctuation factor is 1.5 seconds, the encryption complexity factor is 1.2, and the adjustment coefficient is 1. Based on the above values, the number of segments can be determined as: 500×1024×1024 / [(20×1024×1024×0.8×0.7×0.8)×(5+1.5)×1.2×1]≈58.

[0106] In this embodiment, by introducing an adjustment coefficient based on the data type and / or numerical size of the data contained in the segmented reference data under at least one dimension, and adjusting the single-segment data volume according to the adjustment coefficient, the single-segment data volume can be appropriately relaxed or shrunk according to actual conditions, thereby improving the rationality of the single-segment data volume.

[0107] It is understandable that after receiving at least two firmware segment files, the vehicle-mounted terminal will verify the firmware segment files. If the verification fails, the vehicle-mounted terminal will send the segment identifier of the problem segment file to the server. In this case, in order to ensure that the vehicle-mounted terminal can successfully complete the transmission process of the firmware file to be transmitted, based on the technical solutions of the above embodiments, the present application also provides an optional embodiment, in which a method for retransmitting the problem segment file is provided.

[0108] See also Figure 5 The steps shown for determining the retransmission of the problem segmented file include:

[0109] S510, obtaining the segment identifier of the problematic segmented file.

[0110] The problem segmented file is obtained by the vehicle terminal verifying at least two firmware segmented files according to verification data.

[0111] Optionally, after verifying at least two firmware segmented files according to the verification data, the vehicle-mounted terminal will determine the problematic segmented file among the firmware segmented files that failed the verification according to the verification result, and send the segment identifier of the problematic segmented file to the server; further, the server can receive the segment identifier of the problematic segmented file.

[0112] S520: retransmit the problematic segmented file to the vehicle-mounted terminal according to the segment identifier of the problematic segmented file.

[0113] Optionally, the firmware segment file corresponding to the segment identifier can be obtained according to the segment identifier of the problematic segment file, and the firmware segment file can be retransmitted to the vehicle-mounted terminal.

[0114] In this embodiment, the problem segmented file can be accurately located based on the segment identifier of the problem segmented file, and the problem segmented file can be retransmitted to the vehicle-mounted terminal, that is, the original firmware segmented file corresponding to the problem segmented file is retransmitted, thereby ensuring the complete transmission of the firmware file to be transmitted.

[0115] Based on the technical solutions of the above embodiments, in order to ensure that at least two firmware segment files can be smoothly transmitted to the vehicle-mounted terminal, the present application also provides an optional embodiment. In this optional embodiment, the step of transmitting at least two firmware segment files to the vehicle-mounted terminal in S230 is refined.

[0116] See also Figure 6 The steps of transmitting at least two firmware segment files to the vehicle terminal include:

[0117] S610: Determine a transmission order of the firmware segment files according to the importance of the firmware data corresponding to at least two firmware segment files.

[0118] Optionally, the data content of the firmware data corresponding to different firmware segment files is different, and the corresponding importance is also different. In order to ensure that the firmware segment files with high importance are accurately and efficiently transmitted to the vehicle terminal, the transmission order of each firmware segment file can be determined according to the importance of the firmware data corresponding to at least two firmware segment files, in descending order of importance.

[0119] Exemplarily, the importance of the firmware data can be determined based on the size, structure and data importance distribution of the files corresponding to at least two firmware segment files. For key startup parts or core functional modules, a higher transmission priority is given to the corresponding firmware segment files.

[0120] S620: Transmit at least two firmware segment files to the vehicle-mounted terminal in a transmission order.

[0121] Optionally, at least two firmware segment files are transmitted to the vehicle-mounted terminal in sequence according to the determined transmission order of the firmware segment files.

[0122] In this embodiment, by transmitting firmware segment files according to the importance of firmware data corresponding to at least two firmware segment files, compared with transmitting the firmware segment files in segment order, it is ensured that firmware segment files with high importance can be transmitted to the vehicle terminal preferentially and efficiently.

[0123] In one embodiment, Figure 7 As shown, a firmware file transmission method is provided, which is applied to Figure 1 Taking the vehicle-mounted terminal 120 in the example as an example, the following steps are specifically included:

[0124] S710: Obtain at least two firmware segment files.

[0125] Among them, at least two firmware segment files are obtained by splitting the firmware encoding file corresponding to the firmware file to be installed by the server according to the segmentation reference data of the firmware file to be installed in at least one dimension; the firmware encoding file includes firmware data under the firmware data bit and verification data under the redundant check bit.

[0126] S720, verify at least two firmware segment files according to the verification data; if the verification passes, execute S730; if the verification fails, execute S740.

[0127] Optionally, after obtaining at least two firmware segmented files, a BCC algorithm can be used to verify the at least two firmware segmented files through an XOR algorithm based on the verification data under the redundant check bits in the at least two firmware files. If the verification passes, it means that at least two firmware segmented files are complete and have not been tampered with during the transmission process. At this time, S730 can be executed; correspondingly, if the verification fails, it means that at least two firmware segmented files contain problematic segmented files. At this time, S740 can be executed.

[0128] Exemplarily, taking the encoding process in the above embodiment as an example, the received code is 001101001, and it can be found that the 8th bit of the Hamming code is different from the original Hamming code 001101011, then the verification method of the Hamming code is:

[0129] XOR 1, 3, 5, 7, and 9 to get 0; XOR 2, 3, 6, and 7 to get 0; XOR 4, 5, 6, and 7 to get 0; XOR 8 and 9 to get 1. Arrange the XOR results from left to right to get 1000, which is 8 in decimal, which means the error is at the 8th bit. Further replace the 0 at the 8th bit with 1 to get the original code 001101011.

[0130] S730: Generate a firmware file to be installed according to at least two firmware segment files.

[0131] Optionally, after verifying and passing at least two firmware segment files, it is necessary to splice the at least two firmware segment files according to the segment identifier, and decrypt the spliced ​​file. After the decryption is completed, the authentication tag is used again to verify the integrity. After the verification passes, the firmware file to be installed can be obtained.

[0132] Furthermore, the vehicle terminal will automatically back up the data of the current firmware, and decompress the firmware file to be installed and write it to the vehicle storage medium to complete the firmware update or installation process. It should be noted that after the firmware update or installation process is completed, the vehicle display device will be controlled to display the prompt message "Update / installation successful, the device will restart", and the vehicle terminal will be further controlled to automatically restart to finally complete the firmware update / installation process.

[0133] In addition, after the update / installation is completed, the firmware version, firmware size, secret key in the encryption process, initialization vector, authentication tag, verification data, update / installation results and execution time involved in this firmware update / installation are saved as a log record of this firmware update / installation.

[0134] S740: Determine a problematic segment file in at least two firmware segment files according to the problematic data bits in the verification result.

[0135] The verification result is obtained after verifying at least two firmware segment files; the verification result includes problematic data bits of the firmware segment files that failed the verification.

[0136] Optionally, the firmware segment file where the problematic data bit is located may be determined according to the problematic data bit in the verification result, and the determined firmware segment file may be used as the problematic segment file.

[0137] S750: Send the segment identifier of the problematic segment file to the server, so that the server retransmits the problematic segment file.

[0138] Optionally, after the problematic segmented file is determined, the segment identifier of the problematic segmented file is sent to the server. After receiving the segment identifier of the problematic segmented file, the server will replay the firmware segmented file corresponding to the segment identifier to the server.

[0139] S760, updating at least two firmware segment files according to the problematic segment file, and returning to perform a verification operation on the at least two firmware segment files until a verification termination condition is met.

[0140] Among them, the verification termination condition can be the condition for stopping verification set in the preview.

[0141] Optionally, after receiving the problematic segmented file retransmitted by the server, the vehicle terminal updates at least two firmware segmented files, that is, replaces the problematic segmented file in the at least two firmware segmented files; further, re-verifies the at least two updated firmware segmented files. If the re-verification passes, the verification termination condition is met; or, if the re-verification fails, after repeating the above retransmission step for a preset number of times (such as twice), the verification still fails, and the verification termination condition is met.

[0142] It should be noted that if the verification still fails after repeating the above resending steps for a preset number of times (such as twice), a rollback mechanism needs to be executed in order not to affect the use of the current software and hardware. Specifically, the rollback operation can be executed when the integrity and availability of the firmware data before the update that is automatically backed up in the above steps are ensured and can be successfully restored, that is, the backed-up data can be restored to the vehicle terminal to restore the previous firmware version.

[0143] In the embodiment of the present application, by verifying at least two firmware segmented files, the accuracy of the at least two firmware segmented files obtained is guaranteed; at the same time, in the case of failure in the verification, the problem segmented file is determined according to the problem data bit in the verification result, thereby ensuring the accuracy of the determined problem segmented file; further, by sending the segment identifier of the problem segmented file to the server and re-verifying the problem segmented file sent by the server, the accuracy of at least two firmware segmented files is further guaranteed. In addition, by locating the problem segmented file that fails the verification, the embodiment of the present application only needs the server to resend the problem segmented file without resending the entire firmware encoding file, thereby improving the resending efficiency of the server and reducing redundant workload.

[0144] Optionally, based on the technical solutions of the above embodiments, the present application also provides an optional embodiment, in which the firmware file transmission process is described in detail.

[0145] See also Figure 8 The signaling diagram of the firmware file transmission method shown includes:

[0146] S801, the server obtains a firmware encoding file corresponding to the firmware file to be transmitted.

[0147] The firmware encoding file includes firmware data under the firmware data bit and check data under the redundant check bit.

[0148] S802: The server determines the amount of single-segment data according to segment reference data of the firmware file to be transmitted in at least one dimension.

[0149] Among them, the segmented reference data under at least one dimension includes at least one of the following: network performance data of the transmission network corresponding to the firmware file to be transmitted, device performance data of the transmission device corresponding to the firmware file to be transmitted, data importance of the firmware file to be transmitted, transmission time data of the file type corresponding to the firmware file to be transmitted, and encryption complexity of the firmware file to be transmitted.

[0150] S803: The server determines a data volume adjustment coefficient according to the data type and / or value size of the data included in the segmented reference data under at least one dimension.

[0151] S804: The server adjusts the single-segment data volume according to the data volume adjustment coefficient.

[0152] S805, the server determines the number of segments according to the ratio of the file size of the firmware encoding file to the adjusted single-segment data volume.

[0153] S806: The server splits the firmware encoding file into at least two firmware segment files according to the number of segments.

[0154] S807, the server transmits at least two firmware segment files to the vehicle terminal.

[0155] Optionally, the transmission order of the firmware segment files is determined according to the importance of the firmware data corresponding to the at least two firmware segment files; and the at least two firmware segment files are transmitted to the vehicle-mounted terminal according to the transmission order.

[0156] S808, the vehicle-mounted terminal obtains at least two firmware segment files.

[0157] Among them, at least two firmware segment files are obtained by splitting the firmware encoding file corresponding to the firmware file to be installed by the server according to the segmentation reference data of the firmware file to be installed in at least one dimension; the firmware encoding file includes firmware data under the firmware data bit and verification data under the redundant check bit.

[0158] S809, the vehicle terminal verifies at least two firmware segment files according to the verification data; if the verification passes, execute S810; if the verification fails, execute S811.

[0159] S810: The vehicle-mounted terminal generates a firmware file to be installed according to at least two firmware segment files.

[0160] S811, the vehicle terminal determines a problematic segment file in at least two firmware segment files according to the problematic data bits in the verification result.

[0161] S812, the vehicle-mounted terminal sends the segment identifier of the problematic segmented file to the server.

[0162] S813: The server obtains the segment identifier of the problematic segmented file.

[0163] The problem segmented file is obtained by the vehicle terminal verifying at least two firmware segmented files according to verification data.

[0164] S814, the server retransmits the problematic segmented file to the vehicle-mounted terminal according to the segment identifier of the problematic segmented file.

[0165] S815, the vehicle terminal updates at least two firmware segment files according to the problematic segment file, and returns to perform a verification operation on the at least two firmware segment files until a verification termination condition is met.

[0166] The specific process of the above S801-S815 can refer to the description of the above method embodiment, and its implementation principle and technical effect are similar, which will not be repeated here.

[0167] It should be understood that, although the various steps in the flowcharts involved in the above-mentioned embodiments are displayed in sequence according to the indication of the arrows, these steps are not necessarily executed in sequence according to the order indicated by the arrows. Unless there is a clear explanation in this article, the execution of these steps does not have a strict order restriction, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the above-mentioned embodiments can include multiple steps or multiple stages, and these steps or stages are not necessarily executed at the same time, but can be executed at different times, and the execution order of these steps or stages is not necessarily to be carried out in sequence, but can be executed in turn or alternately with other steps or at least a part of the steps or stages in other steps.

[0168] Based on the same inventive concept, the embodiment of the present application also provides a firmware file transmission device for implementing the firmware file transmission method involved above. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme recorded in the above method, so the specific limitations in one or more firmware file transmission device embodiments provided below can refer to the limitations of the firmware file transmission method above, and will not be repeated here.

[0169] In one embodiment, Fig. 9 As shown, a firmware file transmission device 900 is provided, which is configured on a server and includes: a file acquisition module 910, a file segmentation module 920 and a file transmission module 930, wherein:

[0170] The file acquisition module 910 is used to acquire a firmware encoding file corresponding to the firmware file to be transmitted; wherein the firmware encoding file includes firmware data under the firmware data bit and check data under the redundant check bit;

[0171] A file segmentation module 920, configured to split the firmware encoding file into at least two firmware segment files according to the segmentation reference data of the firmware file to be transmitted in at least one dimension;

[0172] The file transmission module 930 is used to transmit the at least two firmware segment files to the vehicle terminal, so that the vehicle terminal generates a firmware file to be installed according to the at least two firmware segment files after verifying the at least two firmware segment files based on the verification data.

[0173] In one embodiment, the file segmentation module 920 includes:

[0174] The first determining unit is used to determine the amount of single-segment data according to the segment reference data of the firmware file to be transmitted in at least one dimension.

[0175] The second determining unit is used to determine the number of segments according to the ratio of the file size of the firmware encoding file to the amount of data of the single segment.

[0176] The file segmentation unit is used to split the firmware encoding file into at least two firmware segment files according to the segment quantity.

[0177] In one embodiment, the second determining unit is specifically configured to:

[0178] Determine a data volume adjustment coefficient based on the data type and / or numerical value of the data contained in the segmented reference data under at least one dimension; adjust the single-segment data volume based on the data volume adjustment coefficient; determine the number of segments based on the ratio of the file size of the firmware encoding file to the adjusted single-segment data volume.

[0179] In one embodiment, the segmented reference data under at least one dimension includes at least one of the following: network performance data of the transmission network corresponding to the firmware file to be transmitted, device performance data of the transmission device corresponding to the firmware file to be transmitted, data importance of the firmware file to be transmitted, transmission time data of the file type corresponding to the firmware file to be transmitted, and encryption complexity of the firmware file to be transmitted.

[0180] In one embodiment, the firmware file transmission device 900 further includes:

[0181] The identification acquisition module is used to obtain the segment identification of the problem segment file; wherein the problem segment file is obtained by the vehicle terminal verifying the at least two firmware segment files according to the verification data.

[0182] The file retransmission module is used to retransmit the problem segmented file to the vehicle-mounted terminal according to the segment identifier of the problem segmented file.

[0183] In one embodiment, the file transfer module 930 is specifically used to:

[0184] According to the importance of the firmware data corresponding to the at least two firmware segment files, a transmission order of the firmware segment files is determined; and according to the transmission order, the at least two firmware segment files are transmitted to the vehicle-mounted terminal.

[0185] In one embodiment, Fig.10 As shown, a firmware file transmission device 1000 is provided, which is configured in a vehicle-mounted terminal and includes: a file receiving module 1010, a file verification module 1020 and a file installation module 1030, wherein:

[0186] The file receiving module 1010 is used to obtain at least two firmware segment files; wherein the at least two firmware segment files are obtained by splitting the firmware encoding file corresponding to the firmware file to be installed by the server according to the segment reference data of the firmware file to be installed in at least one dimension; the firmware encoding file includes firmware data under the firmware data bit and check data under the redundant check bit;

[0187] A file verification module 1020, configured to verify the at least two firmware segment files according to the verification data;

[0188] The file installation module 1030 is configured to generate the firmware file to be installed according to the at least two firmware segment files if the verification passes.

[0189] In one embodiment, the firmware file transmission device 1000 further includes:

[0190] The problem determination module is used to determine the problematic segmented file in the at least two firmware segmented files according to the problematic data bits in the verification result if the verification fails.

[0191] The identifier sending module is used to send the segment identifier of the problem segment file to the server, so that the server retransmits the problem segment file.

[0192] The re-verification module is used to update the at least two firmware segment files according to the problem segment file, and return to perform the verification operation on the at least two firmware segment files until the verification termination condition is met.

[0193] Each module in the above firmware file transmission device can be implemented in whole or in part by software, hardware or a combination thereof. Each module can be embedded in or independent of a processor in a computer device in the form of hardware, or can be stored in a memory in a computer device in the form of software, so that the processor can call and execute operations corresponding to each module.

[0194] In one embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as follows: Fig.11As shown. The computer device includes a processor, a memory, an input / output interface (Input / Output, referred to as I / O) and a communication interface. The processor, the memory and the input / output interface are connected through a system bus, and the communication interface is connected to the system bus through the input / output interface. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The input / output interface of the computer device is used to exchange information between the processor and an external device. The communication interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a firmware file transmission method is implemented.

[0195] Those skilled in the art will understand that Fig.11 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0196] In one embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor implements the steps of the above firmware file transmission method when executing the computer program.

[0197] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the above-mentioned firmware file transmission method are implemented.

[0198] In one embodiment, a computer program product is provided, including a computer program, which implements the steps of the above firmware file transmission method when executed by a processor.

[0199] It should be noted that the data involved in this application (including but not limited to data used for analysis, storage, display, etc.) are all information and data fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant regulations.

[0200] A person of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment method can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to the memory, database or other medium used in the embodiments provided in the present application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM). The database involved in each embodiment provided in this application may include at least one of a relational database and a non-relational database. Non-relational databases may include distributed databases based on blockchains, etc., but are not limited to this. The processor involved in each embodiment provided in this application may be a general-purpose processor, a central processing unit, a graphics processor, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, an artificial intelligence (AI) processor, etc., but are not limited to this.

[0201] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this application.

[0202] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the present application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the present application shall be subject to the attached claims.

Claims

1. A firmware file transmission method, characterized in that: Applicable to servers, including: Obtain a firmware encoding file corresponding to the firmware file to be transmitted; wherein the firmware encoding file includes firmware data under the firmware data bit and check data under the redundant check bit; Splitting the firmware encoding file into at least two firmware segment files according to the segment reference data of the firmware file to be transmitted in at least one dimension; The at least two firmware segment files are transmitted to the vehicle terminal, so that the vehicle terminal generates a firmware file to be installed according to the at least two firmware segment files after the at least two firmware segment files are verified based on the verification data.

2. The method according to claim 1, characterized in that The step of splitting the firmware encoding file into at least two firmware segment files according to the segment reference data of the firmware file to be transmitted in at least one dimension comprises: Determine a single-segment data amount according to segment reference data of the firmware file to be transmitted in at least one dimension; Determining the number of segments according to a ratio of the file size of the firmware encoding file to the amount of data in the single segment; According to the number of segments, the firmware encoding file is split into at least two firmware segment files.

3. The method according to claim 2, characterized in that The determining the number of segments according to the ratio of the file size of the firmware encoding file to the amount of data in the single segment includes: Determine a data volume adjustment coefficient according to the data type and / or value size of the data included in the segmented reference data under the at least one dimension; According to the data volume adjustment coefficient, the single-segment data volume is adjusted; The number of segments is determined according to the ratio of the file size of the firmware encoding file to the adjusted single-segment data volume.

4. The method according to any one of claims 1 to 3, characterized in that: The segmented reference data under at least one dimension includes at least one of the following: network performance data of the transmission network corresponding to the firmware file to be transmitted, device performance data of the transmission device corresponding to the firmware file to be transmitted, data importance of the firmware file to be transmitted, transmission time data of the file type corresponding to the firmware file to be transmitted, and encryption complexity of the firmware file to be transmitted.

5. The method according to any one of claims 1 to 3, characterized in that: The method further comprises: Obtaining a segment identifier of a problem segment file; wherein the problem segment file is obtained by the vehicle-mounted terminal verifying the at least two firmware segment files according to the verification data; The problematic segmented file is retransmitted to the vehicle-mounted terminal according to the segment identifier of the problematic segmented file.

6. The method according to any one of claims 1 to 3, characterized in that: The transmitting the at least two firmware segment files to the vehicle-mounted terminal includes: Determining a transmission order of each of the firmware segment files according to the importance of the firmware data corresponding to the at least two firmware segment files; The at least two firmware segment files are transmitted to the vehicle-mounted terminal according to the transmission order.

7. A method for generating a firmware file, characterized in that: Applied to vehicle terminals, including: Obtain at least two firmware segment files; wherein the at least two firmware segment files are obtained by splitting the firmware encoding file corresponding to the firmware file to be installed by the server according to the segmentation reference data of the firmware file to be installed in at least one dimension; the firmware encoding file includes firmware data under the firmware data bit and check data under the redundant check bit; Verify the at least two firmware segment files according to the verification data; If the verification passes, the firmware file to be installed is generated according to the at least two firmware segment files.

8. The method according to claim 7, characterized in that The method further comprises: If the verification fails, determining the problematic segment file in the at least two firmware segment files according to the problematic data bits in the verification result; Sending the segment identifier of the problem segment file to the server, so that the server retransmits the problem segment file; According to the problem segmented file, the at least two firmware segmented files are updated, and the verification operation on the at least two firmware segmented files is returned to be performed until a verification termination condition is met.

9. A firmware file transmission device, characterized in that: Configured on a server, the device includes: A file acquisition module, used to acquire a firmware encoding file corresponding to the firmware file to be transmitted; wherein the firmware encoding file includes firmware data under the firmware data bit and check data under the redundant check bit; A file segmentation module, configured to split the firmware encoding file into at least two firmware segment files according to segmentation reference data of the firmware file to be transmitted in at least one dimension; The file transmission module is used to transmit the at least two firmware segment files to the vehicle terminal, so that the vehicle terminal generates a firmware file to be installed according to the at least two firmware segment files after the at least two firmware segment files are verified based on the verification data.

10. A firmware file transmission device, characterized in that: Configured in a vehicle-mounted terminal, the device includes: A file receiving module, configured to obtain at least two firmware segment files; wherein the at least two firmware segment files are obtained by splitting a firmware encoding file corresponding to the firmware file to be installed by the server according to segment reference data of the firmware file to be installed in at least one dimension; the firmware encoding file includes firmware data under firmware data bits and check data under redundant check bits; A file verification module, configured to verify the at least two firmware segment files according to the verification data; The file installation module is used to generate the firmware file to be installed according to the at least two firmware segment files if the verification passes.

11. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 8 are implemented.

12. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.

13. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.

Citation Information

Cited By

  • Hard disk data wireless receiving and real-time transmission method and system

    CN120602040A