CN112783056B - Data programming method, device and equipment of ECU and storage medium - Google Patents

Data programming method, device and equipment of ECU and storage medium Download PDF

Info

Publication number
CN112783056B
CN112783056B CN202110001856.0A CN202110001856A CN112783056B CN 112783056 B CN112783056 B CN 112783056B CN 202110001856 A CN202110001856 A CN 202110001856A CN 112783056 B CN112783056 B CN 112783056B
Authority
CN
China
Prior art keywords
data
compressed
original data
buffer area
compression
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110001856.0A
Other languages
Chinese (zh)
Other versions
CN112783056A (en
Inventor
付世杰
艾聪
潘文卿
宋碧雄
葛云东
田东明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Weichai Power Co Ltd
Original Assignee
Weichai Power Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Weichai Power Co Ltd filed Critical Weichai Power Co Ltd
Priority to CN202110001856.0A priority Critical patent/CN112783056B/en
Publication of CN112783056A publication Critical patent/CN112783056A/en
Application granted granted Critical
Publication of CN112783056B publication Critical patent/CN112783056B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25257Microcontroller

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

According to the data programming method, the data programming device, the data programming equipment and the data programming storage medium of the ECU, at an upper computer end, original data are written into a first buffer area and then written into a second buffer area in sequence; starting from the original data written first in the second buffer area, judging whether a plurality of continuous original data in the second buffer area are the same in the first buffer area; compressing the successfully judged original data by using the data characteristics; moving the judged original data from the second buffer area to the first buffer area, and moving the same amount of original data to the second buffer area so as to sequentially judge each original data; and finally, obtaining a transmission data sequence by using the compression result and transmitting the transmission data sequence to the ECU. Receiving a transmission data sequence transmitted by an upper computer at an ECU (electronic control unit) end; sequentially judging whether transmission data in the transmission data sequence are compressed data or not; decompressing the compressed data according to the characteristics of the decompressed data at the corresponding previous position, and programming the decompressed data after decompression is finished.

Description

Data programming method, device and equipment of ECU and storage medium
Technical Field
The invention relates to the technical field of computers, in particular to a data programming method, a data programming device, data programming equipment and a storage medium for an Electronic Control Unit (ECU).
Background
An Electronic Control Unit (ECU) of a motor vehicle, commonly known as a "driving computer", is a core Control device applied to a motor vehicle. A single ECU or a system of multiple ECUs is used to monitor driving control data (e.g., braking, gear shifting, etc.) and vehicle operating status data (e.g., driving speed, slip, fuel consumption, etc.) and control the corresponding actuators (e.g., engine, transmission, etc.) of the vehicle according to a software program pre-stored in the ECU.
In the production process of the ECU, an upper computer is required to be used for programming firmware data such as application programs and the like into the ECU. For manufacturing enterprises, in the process of programming firmware data to the ECU in large batch, the speed of directly programming the firmware data to the ECU without any processing in the prior art is slow, and further improvement is needed.
Disclosure of Invention
The embodiment of the invention provides a data programming method, a data programming device, data programming equipment and a storage medium of an ECU (electronic control unit), which are used for solving the problem that the speed of directly programming firmware data to the ECU without any processing is low in the prior art.
The embodiment of the invention provides a data programming method of an Electronic Control Unit (ECU), which is applied to an upper computer for programming data to the ECU and comprises the following steps:
acquiring original data, and sequentially writing the original data into a first buffer area and then writing the original data into a second buffer area;
when the first buffer area is completely written for the first time or data movement is completed for one time, starting from the original data written in the second buffer area for the first time, judging whether the original data in the second buffer area is a compressed object, wherein the compressed object is a plurality of continuous original data which are the same as those in the first buffer area; compressing the judged compression object by utilizing the characteristics of a plurality of continuous same original data in the corresponding first buffer area;
when data movement is triggered, the number n of original data judged by data compression at this time is determined, and the original data of the first buffer area and the second buffer area are integrally moved by n original data according to a first-in first-out mode;
and when the last original data is judged, obtaining a transmission data sequence by using a compression result and transmitting the transmission data sequence to the ECU.
Optionally, obtaining the transmission data sequence by using the compression result includes:
putting the original data written into the first buffer area for the first time into a transmission data sequence as transmission data;
then according to the judging sequence, when the judged original data is determined not to be a compression object, putting the judged original data into a transmission data sequence as transmission data;
and when the judged original data is determined to be the compression object, compressing the compression object to obtain compressed data, and putting the compressed data serving as transmission data into a transmission data sequence.
Optionally, the data programming method further includes:
and determining a compression mark according to whether the corresponding transmission data is compression data or not, and placing the compression mark at a position before the transmission data.
Optionally, determining a compression flag according to whether the corresponding transmission data is compression data includes:
sequentially generating corresponding compression zone bits according to whether the transmission data put into the transmission data sequence for the latest m times is compression data; wherein m is a positive integer other than 1;
and combining the compressed flag bits into a binary compressed flag according to the sequence corresponding to the transmission data.
Optionally, triggering data movement, comprising:
when one-time compression is completed, data movement is triggered;
or, when the judgment of the P original data is completed, triggering data to move; wherein P is a positive integer;
or when the original data is judged for Q times, triggering data movement; wherein Q is a positive integer.
Optionally, compressing the determined compression object by using the features of a plurality of consecutive same original data in the corresponding first buffer includes:
and compressing the judged compressed object by using the search distance between a plurality of continuous same original data in the first buffer and the compressed object and the compressed data amount of the compressed object.
Correspondingly, the embodiment of the invention also provides a data programming method of the electronic control unit ECU, which is applied to the ECU and comprises the following steps:
receiving a transmission data sequence transmitted by an upper computer;
sequentially judging whether transmission data in the transmission data sequence are compressed data or not;
when the transmission data are determined not to be compressed data, the transmission data are placed into the data sequence to be programmed as decompressed data;
if the transmission data are the same compressed data as the plurality of continuous decompressed data, decompressing the compressed data by utilizing the characteristics of the plurality of continuous same decompressed data, and putting the obtained decompressed data into a data sequence to be programmed;
and programming the data sequence to be programmed into a memory of the ECU.
Based on the same inventive concept, the embodiment of the present invention further provides a data writing device for an ECU, which is applied to an upper computer for writing data to the ECU, and includes:
the data acquisition module is used for acquiring original data and sequentially writing the original data into the first buffer area and then writing the original data into the second buffer area;
the data compression module is used for determining whether the original data in the second buffer area is a compression object or not from the original data written first in the second buffer area when the first buffer area is full or finishes one-time data movement, wherein the compression object is a plurality of continuous original data which are the same as those in the first buffer area; compressing the judged compressed object by utilizing the characteristics of a plurality of continuous same original data in the corresponding first buffer area;
the circulating module is used for determining the number n of the original data judged by the data compression when triggering the data movement, and integrally moving the original data of the first buffer area and the second buffer area by n original data according to a first-in first-out mode;
and the data sending module is used for obtaining a transmission data sequence by utilizing a compression result and transmitting the transmission data sequence to the ECU when the last original data is judged.
Correspondingly, the embodiment of the invention also provides a data programming device of the electronic control unit ECU, which is applied to the ECU and comprises the following components:
the data receiving module is used for receiving a transmission data sequence transmitted by the upper computer;
the compression judging module is used for sequentially judging whether the transmission data in the transmission data sequence are compression data or not;
the first decompression module is used for taking the transmission data as decompressed data and putting the decompressed data into the data sequence to be programmed when the transmission data is determined not to be compressed data;
the second decompression module is used for decompressing the compressed data by utilizing the characteristics of a plurality of previous continuous decompressed data and putting the obtained decompressed data into a data sequence to be programmed if the transmission data is the compressed data which is the same as the plurality of previous continuous decompressed data;
and the programming module is used for programming the data sequence to be programmed into a memory of the ECU.
Based on the same inventive concept, an embodiment of the present invention further provides an electronic device, including: a processor and a memory for storing processor-executable instructions;
the processor is configured to execute the instructions to realize the data programming method applied to the upper computer for programming data to the ECU or execute the data programming method applied to the ECU.
Based on the same inventive concept, the embodiment of the present invention further provides a storage medium, where the storage medium stores a computer program, and the computer program is used to implement the data programming method applied to the upper computer for programming data to the ECU, or execute the data programming method applied to the ECU.
The invention has the following beneficial effects:
according to the data programming method, the data programming device, the data programming equipment and the data programming storage medium of the ECU, the programming data are compressed by the upper computer and then transmitted to the ECU, and the ECU decompresses the received transmission data and then performs programming, so that the transmitted data volume is reduced, and the programming speed is accelerated.
Drawings
FIG. 1 is a flowchart of a data programming method applied to an upper computer for programming data to an ECU according to an embodiment of the present invention;
FIG. 2 is a second flowchart of a data programming method applied to an upper computer for programming data to an ECU according to an embodiment of the present invention;
FIG. 3 is a flowchart of a data programming method applied to an ECU according to an embodiment of the present invention;
FIG. 4 is a schematic structural diagram of a data writing device applied to an upper computer for writing data to an ECU according to an embodiment of the present invention;
FIG. 5 is a schematic structural diagram of a data writing device applied to an ECU according to an embodiment of the present invention;
fig. 6 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
Detailed Description
In order to make the aforementioned objects, features and advantages of the present invention comprehensible, the present invention is further described with reference to the accompanying drawings and examples. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art. The same reference numerals in the drawings denote the same or similar structures, and thus their repetitive description will be omitted. The words indicating positions and directions in the present invention are illustrated by way of example in the accompanying drawings, but may be changed as required and are within the scope of the present invention. The drawings of the present invention are for illustrative purposes only and do not represent true scale.
It should be noted that in the following description, specific details are set forth in order to provide a thorough understanding of the present invention. The invention can be implemented in a number of ways different from those described herein and similar generalizations can be made by those skilled in the art without departing from the spirit of the invention. Therefore, the present invention is not limited to the specific embodiments disclosed below. The description which follows is a preferred embodiment of the present application, but is made for the purpose of illustrating the general principles of the application and not for the purpose of limiting the scope of the application. The scope of the present application is to be considered as defined by the appended claims.
The following describes a data writing method, device, apparatus, and storage medium for an ECU according to an embodiment of the present invention with reference to the accompanying drawings.
The ECU data programming method, device, equipment and storage medium provided by the embodiments of the present invention may be applied to the programming of data in binary, octal, decimal, hexadecimal, and other binary formats, and are not limited herein. The following description will be mainly given taking hexadecimal data as an example.
The embodiment of the invention can be applied to data programming of the ECU, and can also be applied to data programming of embedded equipment of other purposes, and is not limited herein. Hereinafter, the data writing applied to the ECU will be mainly described as an example.
In the process of writing data to the ECU, a Unified Diagnostic Services (UDS) protocol may be used between the upper computer and the ECU for data transmission, or an On Board Diagnostics (OBD) protocol may be used for data transmission, which is not limited herein. For example, when the UDS protocol is used, the data writing of the ECU is performed using the 0x36 service.
The embodiment of the invention provides a data programming method of an Electronic Control Unit (ECU), which is applied to an upper computer for programming data to the ECU, and as shown in figure 1, the data programming method comprises the following steps:
s1, acquiring original data, and writing the original data into the first buffer area and then writing the original data into the second buffer area in sequence until the first buffer area is full for the first time;
s2, starting from the first written original data in the second buffer, determining whether the original data in the second buffer is a compressed object, where the compressed object is a plurality of consecutive original data the same as the original data in the first buffer, if yes, performing step S3, otherwise, performing step S5;
s3, compressing the judged compression object by using the characteristics of a plurality of continuous same original data in the corresponding first buffer area;
s5, judging whether the data movement is triggered, if so, executing a step S6, otherwise, returning to the step S2;
s6, when data movement is triggered, determining the number n of original data judged by data compression;
s7, moving the original data of the first buffer area and the second buffer area by n original data as a whole according to a first-in first-out mode;
s8, judging whether the last original data is obtained or not; if yes, go to step S9; otherwise, returning to the step S2;
and S9, obtaining a transmission data sequence by using the compression result and transmitting the transmission data sequence to the ECU.
In a specific implementation, in order to improve the compression rate, it is necessary to enable the compression object to include the maximum number of consecutive original data. The method for determining the compressed object specifically comprises the following steps:
when the first buffer area is completely written for the first time or one-time data movement is completed, starting from the original data written in the second buffer area firstly, judging whether t continuous original data in the second buffer area are compression objects or not;
in the second buffer area, when t continuous original data including the original data currently judged are found to be the same as t continuous original data in the first buffer area, adding one original data after the t continuous original data to the continuous original data to obtain t +1 continuous original data, and finding whether the t +1 continuous original data are the same as each other in the first buffer area;
repeating the above process to make T continuously increase until T is T +1, and when the same T +1 continuous original data are not found in the first buffer area, taking the T continuous original data as compression objects;
t is more than or equal to 2 and less than or equal to T and less than or equal to S, S is the length of the first buffer area, and N, N and S are positive integers.
For example, the transmission data sequence adopts a 16-ary system, and the compression flag is used for indicating whether the data of the next 8 corresponding positions are compressed data or not, wherein the compressed data is represented by two data. One of the transmission data sequence segments is shown in table 1 below (the table is only for ease of understanding, and there is no separator between the original data to separate the uncompressed original data from the compressible original data):
TABLE 1
Figure BDA0002881747150000071
Sequentially judging the original data of the segments, and comparing the first original data (FE) 16 When t is 2, looking up whether there is (FE) in the first buffer area 16 (FA) 16 If not found, the first original data (FE) 16 Is not the compression object. Thereafter, the second original data (FA) is judged 16 When t is 2, looking up whether there is (FA) in the first buffer area 16 (AA) 16 If not found, the second original data (FA) 16 Is not the compression object. Then, the third original data (AA) is judged 16 When t is 2, looking up whether there is (AA) in the first buffer area 16 (XX) 16 ((XX) 16 Not shown in table 1), found to have the same 2 consecutive original data (AA) 16 (XX) 16 (ii) a When t is 3, looking up whether there is (AA) in the first buffer area 16 (XX) 16 (XX) 16 ((XX) 16 Not shown in table 1), found to have the same 3 consecutive original data (AA) 16 (XX) 16 (XX) 16 (ii) a … … when t is 4; when t is 5, the same 5 continuous original data (AA) are found 16 、……、(17) 16 (ii) a When t is 6, the same six consecutive original data (AA) are not found in the first buffer area 16 、……、(17) 16 、(D4) 16 Then finally determining the compression object as the 5 consecutive original data (AA) 16 、……、(17) 16
Therefore, the programming data are compressed by the upper computer and then transmitted to the ECU, and the ECU decompresses the received transmission data and then performs programming, so that the transmitted data volume is reduced, and the programming speed is accelerated. And the original data is subjected to front-back comparison compression in the compression process, and a dictionary does not need to be additionally generated.
Optionally, the method further includes:
s41, putting the original data written into the first buffer area for the first time into a transmission data sequence as transmission data;
then, when it is determined that the judged original data is not the compression target according to the judgment sequence, S42, putting the judged original data as transmission data into the transmission data sequence;
and S43, when the judged original data is the compression object, compressing the compression object to obtain compressed data serving as transmission data and putting the compressed data into the transmission data sequence.
Therefore, by putting the compressed data into the transmission data sequence, the data volume needing to be transmitted is reduced, and the programming speed is accelerated.
Optionally, the data programming method further includes:
and determining a compression mark according to whether the corresponding transmission data is compression data or not, and placing the compression mark at a position before the transmission data.
In this way, the data at the corresponding position in the transmission data sequence is indicated to be compressed data or original data by using the compression flag, so that the subsequent decompression processing of the ECU is facilitated.
In a specific implementation process, data at a plurality of consecutive positions with the same compression property may be indicated (for example, a certain compression flag indicates that data at 25 consecutive positions after the compression flag are all original data, and a next compression flag indicates that data at 48 consecutive positions after the next compression flag are all compressed data); the compressed mark can also sequentially indicate that the data at each corresponding position is compressed data or original data; other indication modes are also possible; and is not limited herein. The compression flag sequentially indicates that the data at each corresponding position is compressed data or original data, and may be a compression flag determined according to whether the corresponding transmission data is compressed data and placed at a position before the transmission data of m times when the transmission data is placed in the transmission sequence every m times; wherein m is a positive integer. For example, if m is 1, 0 is used to indicate that the transmission data corresponding to the position is original data, and 1 is used to indicate that the transmission data corresponding to the position is compressed data, then the transmission data sequence may be: "0 original data 1 compressed data 0 original data … …".
Or, when m ≠ 1, optionally, determining a compression flag according to whether the corresponding transmission data is compression data, includes:
sequentially generating corresponding compression zone bits according to whether the transmission data put into the transmission data sequence for the latest m times is compression data;
and combining the compressed flag bits into a binary compressed flag according to the sequence corresponding to the transmission data.
In a specific implementation process, the compressed flag bit is generated sequentially according to whether the corresponding transmission data is compressed data, where 1 may be used as the compressed data flag bit and 0 may be used as the original data flag bit. Taking the case shown in Table 1 as an example, for the original data (FE) at the first position of the fragment 16 The transmission data corresponding to the transmission data output as transmission data to the transmission data sequence without compression is still (FE) 16 Then a compression flag bit of 0 is generated. For the original data (FA) at the second position 16 The transmission data corresponding to the transmission data output as transmission data to the transmission data sequence without compression is still (FA) 16 Then a compression flag bit of 0 is generated. For 5 consecutive raw data (AA) at the third location 16 、……、(17) 16 Compressed into compressed data, and the compressed data is correspondingly output to the transmission data sequence as transmission data, so that a compressed flag bit 1 is generated. The same applies to the fourth to eighth positions, and therefore, the description thereof is omitted. Finally, 8 compressed flag bits are obtained and combined into a binary data (00110110) 2 As a compression flag.
In a specific implementation process, according to a value of a corresponding bit of the binary format of the compression flag, it is determined whether each corresponding transmission data is a compressed data, or 0 is used as a flag bit of the compressed data, and 1 is used as a flag bit of the original data. And is not limited herein.
In this way, by using the value of the corresponding bit in the binary format of the compression flag to indicate that the data at the corresponding position is compressed data or original data, when the ECU decompresses the transmission data, the compression flag can occupy less registers of the ECU, thereby saving the computational resources of the ECU.
Optionally, if the transmission data is not binary, the compression flag in the binary format is converted into a corresponding binary format.
For example, in the case that the transmission data sequence takes a 16-ary system as shown in Table 1, the compression flag (00110110) 2 Conversion to (36) 16 And is arranged before the transmission data corresponding to the segment. Namely, the finally obtained transmission data sequence fragment corresponding to the fragment is as follows: (36) 16 (FE) 16 (FA) 16 ……(10) 16
as an optional implementation, triggering data movement includes:
when one compression is completed, data movement is triggered.
In a specific implementation, as shown in Table 1, the first of the raw data (FE) is illustrated from Table 1 16 Starting, sequentially judging the original data in the second buffer area, and when judging 5 continuous original data (AA) at the third position 16 、……、(17) 16 Triggering data movement when there is the same continuous raw data in the first buffer. When judging that 19 pieces of original data are continued to the fourth position (D4) 16 、……、(5B) 16 When there is the same continuous original data in the first buffer, data movement is triggered. By analogy, the description is omitted.
As another optional implementation manner, when the judgment on the P pieces of original data is completed, data movement is triggered; wherein P is a positive integer.
For example, let P be 3. For the case shown in Table 1, the first of the raw data (FE) is illustrated from Table 1 16 At the beginning, when judging to include the third original data (AA) 16 5 consecutive original data (AA) 16 、……、(17) 16 At this time, 8 original data are judged, the requirement of judging 3 original data is met, and data movement is triggered. After that (D4) 16 、……、(5B) 16 Is greater than 3, triggering data movement. Judgment (78) 16 Then judge to include (62) 16 Of (C9) 16 、(62) 16 、(23) 16 And then judging 4 original data, meeting the requirements of judging 3 original data and triggering data to move. Then, judge to (10) 16 And then, the requirement of judging 3 original data is met, and data movement is triggered.
As another optional implementation, when the judgment of the original data is completed Q times, data movement is triggered; wherein Q is a positive integer.
For example, let Q be 2, for the case shown in table 1, the first of the raw data (FE) illustrated from table 1 16 And starting to trigger data movement when the judgment of the original data of the second position, the fourth position, the sixth position and the eighth position is finished respectively.
In a specific implementation process, when P ═ Q ═ 1, the technical solutions of the two optional embodiments are the same. In this case, the problem that the compression target is limited by the data capacity of the second buffer, and one piece of data that can be compressed is divided into two pieces of data and compressed twice.
Thus, a higher compression rate of the original data is guaranteed by the data movement.
Optionally, compressing the determined compression object by using the features of a plurality of consecutive same original data in the corresponding first buffer includes:
and compressing the judged compressed object by using the search distance between a plurality of continuous same original data in the first buffer and the compressed object and the compressed data amount of the compressed object.
In the specific implementation, as shown in Table 1 as an example, the third position has 5 consecutive original data (AA) 16 、……、(17) 16 To compressObject, the distance between the same consecutive 5 original data in the corresponding first buffer is 32, then the search distance is 32 ═ 20 16 The compressed data amount is 5 ═ (5) 16 The compressed data is: (20) 16 (5) 16 . Similarly, the transmission data sequence segments corresponding to the original data segments shown in table 1 are finally shown in table 2 below (the following table is only for convenience of understanding, and there is no separator between the data in the transmission data sequence to separate the uncompressed data and the compressed data):
TABLE 2
Figure BDA0002881747150000121
Thus, by compressing the compression target using the search distance and the compression data amount, the transmission data amount is greatly reduced.
In combination with the embodiment of the technical solution shown in table 2, where a binary bit value applied with a compression flag indicates a compression state, and data movement is triggered when a determination on the original data is completed once, an obtained transmission data sequence segment is shown in table 3 below, and specific steps are shown in fig. 2, and the method includes:
s101, acquiring original data, and sequentially writing the original data into a first buffer area and then writing the original data into a second buffer area;
s1041, putting the original data written into the first buffer area for the first time into a transmission data sequence as transmission data;
s1020, setting k to be 2;
s1021, starting from the original data written first in the second buffer, determining whether k consecutive original data in the second buffer are compression objects, if yes, performing step S1022, otherwise, performing step S1043;
s1022, let k be k + 1;
s1023, determining whether k consecutive original data in the second buffer, including the original data written first, are compression objects, if yes, returning to step S1022, otherwise, executing step S103;
s103, taking k-1 continuous original data including the original data written firstly as compression objects, and compressing the compression objects by using the data characteristics of a plurality of continuous same original data in the first buffer area;
s1042, outputting the compressed data as transmission data to a transmission data sequence;
s1061, determining the data volume n which is determined by the data compression at this time to be k-1;
s1043, outputting the original data written firstly as transmission data to a transmission data sequence;
s1062, determining that the data volume n of the data compression judgment is 1;
s107, moving the original data of the first buffer area and the second buffer area by n original data integrally according to a first-in first-out mode;
s1071, judging whether T times of transmission data output to the transmission data sequence is carried out; if yes, go to step S072; otherwise, returning to the step S021;
s1072, according to said transmission data whether compress succeed confirm one compress mark while being said correspondingly, and place in said T times and output to the said transmission data of the said transmission data sequence before the position;
s108, judging whether compression marks are set for all the transmission data; if yes, go to step S109; otherwise, returning to the step S021;
and S109, compressing all the original data to obtain a transmission data sequence, and transmitting the transmission data sequence to the ECU so that the ECU generates the original data according to the transmission data sequence and writes the original data in a burning mode.
It should be noted that, in the above steps, since the data movement is triggered when the primary data is determined once, the step of determining whether to trigger the movement is omitted. The remaining embodiments of the embodiments may refer to the corresponding contents above, and thus are not described again.
Correspondingly, an embodiment of the present invention further provides a data programming method for an ECU, which is applied to the ECU, and as shown in fig. 3, the method includes:
s201, receiving a transmission data sequence transmitted by an upper computer;
s202, sequentially determining the data in the transmission data sequence for judgment until the data in all the transmission data sequences are processed;
s205, judging whether the transmission data which is judged currently is compressed data;
s2061, if the transmission data are not the compressed data, the transmission data are used as decompressed data and are put into the data sequence to be programmed;
s2062, if the transmission data is the same compressed data as the plurality of continuous decompressed data, decompressing the compressed data by utilizing the characteristics of the plurality of continuous decompressed data, and putting the obtained decompressed data into a data sequence to be programmed;
and S207, programming the data sequence to be programmed into a memory of the ECU.
In a specific implementation process, the data burning method applied to the ECU may return to step S202 for each time the step S2061 and the step S2062 are executed, until the last data in the transmission data sequence is processed in step S2061 or step S2062, and then execute step S207, that is, data is first decompressed, and data burning is then performed after all data is decompressed; the step S207 may be executed once after the step S2061 and the step S2062 are executed once, that is, the data is programmed while being decompressed; and is not limited herein.
Therefore, data needing to be programmed by the ECU are compressed and then transmitted to the ECU, the ECU decompresses the data and then programs the data, the data volume transmitted to the ECU by the upper computer is reduced, and the data programming speed is accelerated.
Optionally, the transmission data sequence further includes a compression flag, where the compression flag is used to determine whether transmission data at a corresponding position is compressed data;
before the step S205 of determining whether the transmission data currently determined is compressed data, the method further includes:
s203, judging whether the transmission data currently judged is a compression mark;
if so, S204, determining that the transmission data currently judged is a compression mark;
the step S205 of determining whether the transmission data currently determined is compressed data includes:
and sequentially judging whether the transmission data corresponding to the compression marks are compression data or not according to the compression marks in the transmission data sequence.
In a specific implementation process, the compression flag may sequentially indicate whether transmission data at each corresponding position is compressed data; or indicating transmission data at a plurality of consecutive positions with the same compression property (for example, a certain compression flag indicates that data at 25 consecutive positions after the compression flag are all original data, and a next compression flag indicates that data at 48 consecutive positions after the next compression flag are all compressed data); other indication modes are also possible; and is not limited thereto.
In this way, whether the transmission data at the corresponding position in the transmission data sequence is the compressed data is indicated by using the compression flag, and the subsequent decompression processing is facilitated.
Optionally, sequentially judging whether the transmission data corresponding to the compression flag is compressed data according to the compression flag in the transmission data sequence, including:
and determining whether each corresponding transmission data is the compressed data or not according to the numerical value of the corresponding bit of the binary format of the compression mark in the transmission data sequence.
In a specific implementation process, according to a value of a corresponding bit in a binary format of the compression flag, it is determined whether each corresponding transmission data is compression data, where 1 may be used as a flag bit of the compression data, and 0 may be used as a flag bit of the non-compression data. For example, the transmission data sequence adopts a 16-ary system, and the compression flag is used to indicate whether the data of the next 8 corresponding positions are compressed data, and the compressed data is represented by two data. One of the transmission data sequence segments is shown in table 3 below (the table is only for convenience of understanding, and there is no separator between the data in the transmission data sequence to separate the uncompressed data from the compressed data):
TABLE 3
Figure BDA0002881747150000151
The compression mark is (36) 16 =(00110110) 2 I.e. the first data after presentation (FE) 16 Not compressed data, second data (FA) 16 Not compressed data, third data (20) 16 Is compressed data. Since the compressed data is represented by two data, the fourth data (5) 16 And the third data and the fourth data are positioned at the third position indicated by the compressed mark, and the fourth data is also compressed data. The same applies to the fourth to eighth positions, and therefore, the description thereof is omitted.
In a specific implementation process, the compression status may be indicated for all values of corresponding bits of the binary format of the compression flag, or may be indicated using only partial values of the bits (for example, for a 16-ary compression flag, the corresponding binary has 8 bits, and only 5 bits of the corresponding binary indicate the compression status), which is not limited herein.
In a specific implementation process, according to a value of a corresponding bit of the binary format of the compression flag, it is determined whether each corresponding transmission data is a compression data, or 0 is used as a flag bit of the compression data, and 1 is used as a flag bit of the non-compression data. And is not limited herein.
In this way, the data of the corresponding position is indicated to be compressed data or original data by using the numerical value of the corresponding bit of the binary format of the compression mark, the compression mark occupies less registers of the ECU, and the operation resources of the ECU are saved.
Optionally, decompressing the compressed data into original data, and outputting the original data to a data sequence to be programmed, including:
extracting the search distance and the compressed data amount in the compressed data;
and starting from the position which is before the compressed data and is spaced by the searching distance, determining the continuously decompressed data of the compressed data amount as the decompressed data corresponding to the compressed data, and putting the decompressed data into the data sequence to be programmed.
In the specific implementation, taking the situation shown in table 3 as an example, the compressed data at the fourth position is (5A) 16 、(13) 16 The decompressed data representing the fourth position is: transmitting data from the fifth (5A) 16 Front interval (5A) 16 Beginning with 90 decompressed data, (13) 16 19 consecutive decompressed data.
Thus, by compressing the transmission data using the search distance and the compressed data amount, the transmission data amount is greatly reduced.
Based on the same inventive concept, an embodiment of the present invention further provides a data writing device for an ECU, which is applied to an upper computer for writing data to the ECU, as shown in fig. 4, and includes:
the data acquisition module M11 is configured to acquire original data, and write the original data into the first buffer area and then write the original data into the second buffer area in sequence;
a data compression module M12, configured to determine, when the first buffer is full or completes one data movement for the first time, whether the original data in the second buffer is a compressed object or not, where the compressed object is a plurality of consecutive original data that are the same as those in the first buffer, starting from the original data written first in the second buffer; compressing the judged compression object by utilizing the characteristics of a plurality of continuous same original data in the corresponding first buffer area;
the circulation module M13 is configured to, when data movement is triggered, determine the number n of original data determined by data compression this time, and move the original data of the first buffer area and the second buffer area by n original data as a whole in a first-in first-out manner;
and the data sending module M15 is used for obtaining a transmission data sequence by using a compression result and transmitting the transmission data sequence to the ECU when the last original data is judged.
Optionally, obtaining the transmission data sequence by using the compression result includes:
putting the original data written into the first buffer area for the first time into a transmission data sequence as transmission data;
then according to the judging sequence, when the judged original data is determined not to be a compression object, putting the judged original data into a transmission data sequence as transmission data;
and when the judged original data is determined to be a compression object, compressing the compression object to obtain compressed data serving as transmission data and putting the compressed data into a transmission data sequence.
Optionally, the data writing device further includes:
a compression flag module M14, configured to determine a compression flag for compressed data according to whether the corresponding transmission data is successfully compressed every M times when the transmission data is placed in the transmission data sequence, and place the compression flag at a position before the M times of transmission data; wherein m is a positive integer.
Optionally, determining a compression flag according to whether the corresponding transmission data is compressed data includes:
sequentially generating corresponding compressed zone bits according to whether the corresponding transmission data which are put into the transmission data sequence for the latest m times are compressed data or not;
and combining the compressed flag bits into a binary compressed flag according to the sequence corresponding to the transmission data.
Optionally, triggering data movement, comprising:
when one-time compression is completed, data movement is triggered;
or when the judgment of the P original data is completed, triggering data movement; wherein P is a positive integer;
or, when the Q times of judgment on the original data is completed, triggering data to move; wherein Q is a positive integer.
Optionally, compressing the determined compression object by using the features of a plurality of consecutive same original data in the corresponding first buffer includes:
and compressing the judged compressed object by using the search distance between a plurality of continuous same original data in the first buffer and the compressed object and the compressed data amount of the compressed object.
Correspondingly, an embodiment of the present invention further provides a data writing device for an electronic control unit ECU, applied to the ECU, as shown in fig. 5, including:
the data receiving module M21 is configured to receive a transmission data sequence transmitted by the upper computer;
a compression judging module M23, configured to sequentially judge whether transmission data in the transmission data sequence is compressed data;
the first decompression module M24 is used for determining that the transmission data are not compressed data when determining that the transmission data are not compressed data, and determining that the transmission data are placed in the to-be-programmed data sequence as decompressed data;
a second decompression module M25, configured to, if the transmission data is compressed data that is the same as the previous consecutive multiple decompressed data, decompress the compressed data by using the characteristics of the previous consecutive multiple same decompressed data, and place the obtained decompressed data into a data sequence to be programmed;
and the programming module M26 is used for programming the data sequence to be programmed into the memory of the ECU.
Optionally, the transmission data sequence further includes a compression flag, where the compression flag is used to determine whether transmission data at a corresponding position is compressed data;
the data programming device further comprises:
a compression flag determining module M22, configured to determine whether the currently determined transmission data is a compression flag;
the compression judgment module M23 specifically includes:
and sequentially judging whether the transmission data corresponding to the compression marks are compression data or not according to the compression marks in the transmission data sequence.
Optionally, sequentially judging whether the transmission data corresponding to the compression flag is compressed data according to the compression flag in the transmission data sequence, including:
and determining whether each corresponding transmission data is compression data according to the numerical value of the corresponding bit of the binary format of the compression mark in the transmission data sequence.
Optionally, decompressing the compressed data into decompressed data and outputting the decompressed data to the sequence of data to be programmed, including:
extracting the search distance and the compressed data amount in the compressed data;
and determining continuous decompressed data of the compressed data amount as decompressed data corresponding to the compressed data from a position before the compressed data and spaced by the search distance, and placing the decompressed data into the to-be-programmed data sequence.
Based on the same inventive concept, an embodiment of the present invention further provides an electronic device, as shown in fig. 6, including: a processor 110 and a memory 120 for storing instructions executable by the processor 110; wherein the processor 110 is configured to execute the instructions to implement the data programming method applied to the upper computer programming data to the ECU or to execute the data programming method applied to the ECU.
In particular implementations, the devices may vary widely depending on configuration or performance, and may include one or more processors 110 and memory 120, one or more storage media 130 storing applications 131 or data 132. Memory 120 and storage medium 130 may be, among other things, transient storage or persistent storage. The application 131 stored in the storage medium 130 may include one or more units (not shown in fig. 6) described above, and each module may include a series of instruction operations in the information processing apparatus. Still further, the processor 110 may be configured to communicate with the storage medium 130 to execute a sequence of instruction operations in the storage medium 130 on the device. The apparatus may also include one or more power supplies (not shown in FIG. 6); one or more transceivers 140, the transceivers 140 comprising a wired or wireless network interface 141, one or more input-output interfaces 142; and/or one or more operating systems 133, such as Windows, Mac OS, Linux, IOS, Android, Unix, FreeBSD, etc.
Based on the same inventive concept, the embodiment of the present invention further provides a storage medium, wherein the storage medium stores a computer program, and the computer program is used for implementing the data programming method applied to the upper computer for programming data to the ECU or executing the data programming method applied to the ECU.
According to the data programming method, the data programming device, the data programming equipment and the data programming storage medium of the ECU, the programming data are compressed by the upper computer and then transmitted to the ECU, and the ECU decompresses the received transmission data and then performs programming, so that the transmitted data volume is reduced, and the programming speed is accelerated.
As will be appreciated by one skilled in the art, embodiments of the present application may be provided as a method, system, or computer program product. Accordingly, the present application may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present application may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and so forth) having computer-usable program code embodied therein.
The present application is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to the application. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present application without departing from the spirit and scope of the application. Thus, if such modifications and variations of the present application fall within the scope of the claims of the present application and their equivalents, the present application is intended to include such modifications and variations as well.

Claims (5)

1. A data programming method of an Electronic Control Unit (ECU) is applied to an upper computer for programming data to the ECU, and is characterized by comprising the following steps:
acquiring original data, and writing the original data into a first buffer area and then writing the original data into a second buffer area in sequence;
when the first buffer area is completely written for the first time or data movement is completed for one time, starting from the original data written in the second buffer area for the first time, judging whether the original data in the second buffer area is a compressed object, wherein the compressed object is a plurality of continuous original data which are the same as those in the first buffer area; compressing the judged compressed object by using the search distance between a plurality of continuous same original data in the first buffer area and the compressed object and the compressed data volume of the compressed object;
when data movement is triggered, the number n of original data judged by data compression at this time is determined, and the original data of the first buffer area and the second buffer area are integrally moved by n original data according to a first-in first-out mode;
when the last original data is judged, the original data written into the first buffer area for the first time is taken as transmission data and is put into a transmission data sequence;
then according to the judging sequence, when the judged original data is determined not to be a compression object, putting the judged original data into a transmission data sequence as transmission data;
when the judged original data is determined to be a compression object, compressing the compression object to obtain compressed data serving as transmission data and putting the compressed data into a transmission data sequence;
sequentially generating corresponding compression zone bits according to whether the transmission data put into the transmission data sequence for the latest m times is compression data; wherein m is a positive integer other than 1;
combining the compressed flag bits into a binary compressed flag according to the sequence corresponding to the transmission data and placing the binary compressed flag at the position before the transmission data;
and transmitting the transmission data sequence to the ECU by using a Unified Diagnostic Service (UDS) protocol or an on-board automatic diagnostic system (OBD) protocol.
2. The data writing method of claim 1, wherein triggering data movement comprises:
when one-time compression is completed, data movement is triggered;
or, when the judgment of the P original data is completed, triggering data to move; wherein P is a positive integer;
or, when the Q times of judgment on the original data is completed, triggering data to move; wherein Q is a positive integer.
3. The utility model provides an electronic control unit ECU's data burns writes device, be applied to ECU burns the host computer of data which characterized in that includes:
the data acquisition module is used for acquiring original data and sequentially writing the original data into the first buffer area and then writing the original data into the second buffer area;
the data compression module is used for determining whether the original data in the second buffer area is a compressed object or not from the original data written first in the second buffer area when the first buffer area is full for the first time or the data movement is completed for one time, wherein the compressed object is a plurality of continuous original data which are the same as those in the first buffer area; compressing the judged compressed object by using the search distance between a plurality of continuous same original data in the first buffer area and the compressed object and the compressed data volume of the compressed object;
the circulating module is used for determining the number n of the original data judged by the data compression when triggering the data movement, and integrally moving the original data of the first buffer area and the second buffer area by n original data according to a first-in first-out mode;
the data sending module is used for putting the original data which is written into the first buffer area for the first time into a transmission data sequence as transmission data when the last original data is judged; then according to the judging sequence, when the judged original data is determined not to be a compression object, putting the judged original data into a transmission data sequence as transmission data; when the judged original data is determined to be a compression object, compressing the compression object to obtain compressed data serving as transmission data and putting the compressed data into a transmission data sequence; transmitting the transmission data sequence to the ECU in a UDS protocol or an OBD protocol;
the compression mark module is used for sequentially generating corresponding compression mark bits according to whether the corresponding transmission data which is put into the transmission data sequence for the latest m times is compression data or not; combining the compressed flag bits into a binary compressed flag according to the sequence corresponding to the transmission data, and placing the binary compressed flag at the position before the m times of transmission data; wherein m is a positive integer other than 1.
4. An electronic device, comprising: a processor and a memory for storing processor-executable instructions;
wherein the processor is configured to execute the instructions to implement the data burning method as claimed in any one of claims 1 to 2, applied to the upper computer that burns data to the ECU.
5. A storage medium characterized in that it stores a computer program for implementing the data burning method according to any one of claims 1-2 applied to an upper computer that burns data to the ECU.
CN202110001856.0A 2021-01-04 2021-01-04 Data programming method, device and equipment of ECU and storage medium Active CN112783056B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110001856.0A CN112783056B (en) 2021-01-04 2021-01-04 Data programming method, device and equipment of ECU and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110001856.0A CN112783056B (en) 2021-01-04 2021-01-04 Data programming method, device and equipment of ECU and storage medium

Publications (2)

Publication Number Publication Date
CN112783056A CN112783056A (en) 2021-05-11
CN112783056B true CN112783056B (en) 2022-09-23

Family

ID=75753655

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110001856.0A Active CN112783056B (en) 2021-01-04 2021-01-04 Data programming method, device and equipment of ECU and storage medium

Country Status (1)

Country Link
CN (1) CN112783056B (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5457667A (en) * 1992-01-23 1995-10-10 Sharp Kabushiki Kaisha Data recording/reproducing apparatus with alternating access of compressed works
CN1671103A (en) * 2004-03-15 2005-09-21 微软公司 Data compression
WO2018214140A1 (en) * 2017-05-26 2018-11-29 深圳配天智能技术研究院有限公司 Data compression method and data decompression method, and related device

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5384567A (en) * 1993-07-08 1995-01-24 International Business Machines Corporation Combination parallel/serial execution of sequential algorithm for data compression/decompression
US6434455B1 (en) * 1999-08-06 2002-08-13 Eaton Corporation Vehicle component diagnostic and update system
US7366589B2 (en) * 2004-05-13 2008-04-29 General Motors Corporation Method and system for remote reflash
JP4175296B2 (en) * 2004-06-25 2008-11-05 キャタピラージャパン株式会社 Construction machine data processing apparatus and construction machine data processing method
US9576404B2 (en) * 2004-09-16 2017-02-21 Harris Corporation System and method of transmitting data from an aircraft
JP2008143418A (en) * 2006-12-12 2008-06-26 Hitachi Ltd Data rewriting state display control device
CN101159125B (en) * 2007-11-06 2010-05-26 广东威创视讯科技股份有限公司 Method for detecting data variation
CN101470411B (en) * 2007-12-28 2011-06-01 联合汽车电子有限公司 System and method for safely updating ECU data
JP4453764B2 (en) * 2008-02-22 2010-04-21 トヨタ自動車株式会社 Vehicle diagnostic device, vehicle diagnostic system, and diagnostic method
CN101320372B (en) * 2008-05-22 2012-07-04 上海爱数软件有限公司 Compression method for repeated data
CN102062855A (en) * 2010-11-03 2011-05-18 安徽四创电子股份有限公司 Radar echo compression/decompression algorithm based on run difference coding
US20140108704A1 (en) * 2012-10-16 2014-04-17 Delphi Technologies, Inc. Data decompression method for a controller equipped with limited ram
CN103412864B (en) * 2013-06-06 2017-04-05 莱诺斯科技(北京)股份有限公司 A kind of data compression storage method
CN104636349B (en) * 2013-11-07 2018-05-22 阿里巴巴集团控股有限公司 A kind of index data compression and the method and apparatus of index data search
TWI554893B (en) * 2014-12-03 2016-10-21 仁寶電腦工業股份有限公司 Method and system for transmitting data
JP6216730B2 (en) * 2015-03-16 2017-10-18 日立オートモティブシステムズ株式会社 Software update device and software update method
CN105049055B (en) * 2015-06-30 2019-04-05 郑州宇通客车股份有限公司 A kind of data compression method and data decompressing method
US10706642B2 (en) * 2015-09-24 2020-07-07 Ford Global Technologies, Llc Efficient telematics data upload
CN106354526A (en) * 2016-08-16 2017-01-25 北京汽车股份有限公司 Updating method and system of car-mounted terminal
CN106874018A (en) * 2017-03-16 2017-06-20 武汉理工大学 A kind of electric automobile Electric Air-Conditioner Controller software refreshing system and method
CN106950940A (en) * 2017-03-31 2017-07-14 北京新能源汽车股份有限公司 A kind of vehicle electronic control unit ECU writes with a brush dipped in Chinese ink method and device
CN110109690B (en) * 2019-07-02 2019-10-15 潍柴动力股份有限公司 A kind of ECU data writes with a brush dipped in Chinese ink method and system
CN110162330B (en) * 2019-07-08 2021-04-13 上海赫千电子科技有限公司 System and method applied to automobile ECU (electronic control Unit) file upgrading
CN111078694A (en) * 2019-11-29 2020-04-28 航天恒星科技有限公司 Data storage method and device
CN111198705A (en) * 2019-12-19 2020-05-26 潍柴动力股份有限公司 Memory backup method and device for preventing ECU from being swiped up, storage medium and electronic equipment
CN110958022A (en) * 2019-12-25 2020-04-03 平安证券股份有限公司 Data compression method and device for continuity curve and related equipment
CN110989567B (en) * 2019-12-31 2022-01-25 潍柴动力股份有限公司 Controller writing method, controller and upper computer
CN111813076B (en) * 2020-06-23 2021-09-07 深圳市元征科技股份有限公司 Vehicle ECU (electronic control Unit) flashing method and device, vehicle ECU and storage medium

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5457667A (en) * 1992-01-23 1995-10-10 Sharp Kabushiki Kaisha Data recording/reproducing apparatus with alternating access of compressed works
CN1671103A (en) * 2004-03-15 2005-09-21 微软公司 Data compression
WO2018214140A1 (en) * 2017-05-26 2018-11-29 深圳配天智能技术研究院有限公司 Data compression method and data decompression method, and related device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A Binary Line Buffer Circuit Featuring Lossy Data Compression at Fixed Maximum Data Rate;Ettore Napoli;《2020 IEEE International Symposium on Circuits and Systems (ISCAS)》;20200928;全文 *

Also Published As

Publication number Publication date
CN112783056A (en) 2021-05-11

Similar Documents

Publication Publication Date Title
US9407287B2 (en) Parallel history search and encoding for dictionary-based compression
US20070174588A1 (en) Processes and devices for compression and decompression of executable code by a microprocessor with RISC architecture
US10164654B2 (en) Data compressing device, data decompressing device, and data compressing/decompressing apparatus
US20200294629A1 (en) Gene sequencing data compression method and decompression method, system and computer-readable medium
CN109962711B (en) Data compression method, electronic equipment and storage medium
US8947272B2 (en) Decoding encoded data
CN106708822B (en) File storage method and device
CN112783056B (en) Data programming method, device and equipment of ECU and storage medium
CN105513099A (en) Compression method and apparatus for bone animation data
CN113630125A (en) Data compression method, data encoding method, data decompression method, data encoding device, data decompression device, electronic equipment and storage medium
US20130251025A1 (en) Memory bandwidth reduction during video capture
CN113613289A (en) Bluetooth data transmission method, system and communication equipment
CN111628779A (en) Parallel compression and decompression method and system for FASTQ file
US8976048B2 (en) Efficient processing of Huffman encoded data
CN107315752B (en) Data transfer method and system
US8786471B1 (en) Lossless data compression with variable width codes
CN1656688B (en) Processing digital data prior to compression
CN115001628B (en) Data encoding method and device, data decoding method and device and data structure
US20240013864A1 (en) System and method for auto-configurable data compression framework
CN116016724B (en) Message parsing method, device, equipment and medium
CN115037981B (en) Decoding method and device of data stream, electronic equipment and storage medium
CN109861949B (en) Message filtering method and device and electronic equipment
CN111602111A (en) Data processing method and device
CN117111845A (en) Data compression method, device, equipment and storage medium
JPS6134620A (en) Inputting method to computer

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant