A data transmission method and related device
By encoding and obtaining and sending the encoded data with the smallest difference from the previous sent data at the sending end of the data transmission system, the problem of high data transmission power consumption is solved, and the effect of reducing data transmission power consumption when the data transmission amount is determined is achieved.
Patent Information
- Application Number
- CN202111570997.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-21
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2041-12-21
AI Technical Summary
During the data transmission process, how to further reduce data transmission power consumption when the data transmission amount is determined, especially in the chip. As the data transmission distance increases, the proportion of chip power consumption occupied by data transmission is also increasing.
By encoding the data to be sent at the sending end of the data transmission system, the code obtains the data to be sent for each code and determines the number of bits of the same as the previous sent data, and obtains and transmits the code to be sent for encoding and sends the code to be sent for encoding. This method transmits with the minimum bit inversion amount, thereby reducing the number of bits in data flips during data transmission and reducing the power consumption of data transmission.
By reducing the number of bits of data flip during data transmission, the power consumption of data transmission is reduced, effectively solving the problem of high data transmission power consumption in large-scale integrated circuit chips.
Smart Images

Figure CN114039704B_ABST
Abstract
Description
Technical Field
[0001] The embodiments of the present application relate to the field of chip technology, and in particular to a data transmission method and related devices. Background Art
[0002] Chips have been widely used in computers, mobile phones and other digital appliances. The maturity of chips will bring about great development of science and technology. Therefore, breakthroughs in both chip design technology and chip processing technology are extremely important.
[0003] Low-power technology is an important design method in chip technology, which directly affects the chip's heat dissipation cost and user experience. Data transmission and calculation are the parts of the chip that consume the most power. As chips become larger and larger, the distance for data transmission from the sender to the receiver becomes longer and longer, and the proportion of chip power consumption occupied by data transmission also increases steadily. Therefore, the chip power consumption can be reduced by improving the system power consumption during data transmission.
[0004] In the prior art, the power consumption of the chip during data transmission is reduced mainly by reducing the data transmission amount. However, if the data transmission amount cannot be reduced, the power consumption of data transmission cannot be reduced.
[0005] Therefore, how to further reduce the power consumption of data transmission when the data transmission volume is determined becomes a technical problem that needs to be solved urgently.
[0006] Application Contents
[0007] The technical problem solved by the embodiments of the present application is to reduce the power consumption of data transmission.
[0008] To solve the above problems, the present application provides a data transmission method and related devices, including:
[0009] In a first aspect, an embodiment of the present application provides a data transmission method, the method is executed by a sending end of a data transmission processor, the processor performing data transmission includes a sending end and a receiving end, and the method includes:
[0010] Acquire the current data to be sent and the previous sent data, wherein the previous sent data is the latest sent data;
[0011] According to each encoding rule, encoding operations are performed on the current data to be sent respectively to obtain each encoded current data to be sent;
[0012] Compare the previously sent data and the currently to-be-sent data of each code respectively, and obtain the number of each bit position that is the same as the same bit position data of the two;
[0013] Obtain the maximum number of bits among the respective bit numbers, and the coded current data to be sent and the coding rule corresponding to the maximum number of bits, obtain the coded current data to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent;
[0014] According to the sending rule, the current data to be sent and the rule code of the coding rule to be sent are sent.
[0015] In a second aspect, an embodiment of the present application provides a data transmission method, the method being executed by a receiving end of a data transmission processor, the method comprising:
[0016] According to the received information, obtain the data to be decoded and the rule encoding of the encoding rule corresponding to the data to be decoded, wherein the encoding rule includes the encoding rule to be sent in the data transmission method according to the first aspect;
[0017] Determine the decoding rule of the data to be decoded according to the rule encoding;
[0018] The data to be decoded is decoded according to the decoding rule to obtain decoded data.
[0019] In a third aspect, an embodiment of the present application provides a data transmission device, the device being located at a transmitting end of a data transmission processor, and being configured to execute the data transmission method according to the first aspect, the device comprising:
[0020] An acquisition module, used to acquire the current data to be sent and the previous data sent, wherein the previous data sent is the latest data sent;
[0021] The encoding module is used to perform encoding operations on the current data to be sent according to various encoding rules to obtain various encoded current data to be sent;
[0022] A judgment module is used to compare and judge the previously sent data and each of the encoded current data to be sent, determine the number of bits of the same bit data, obtain the encoded current data to be sent and the encoding rule corresponding to the maximum number of bits, obtain the encoded current data to be sent and the encoding rule to be sent, and obtain the rule code of the encoding rule to be sent;
[0023] The sending module is used to send the current data to be sent and the rule code of the coding rule to be sent according to the sending rule.
[0024] In a fourth aspect, an embodiment of the present application provides a data transmission device, the device is located at a receiving end of a data transmission processor, and is used to execute the data transmission method according to the second aspect, the device comprising:
[0025] A data acquisition module, adapted to acquire, according to the information to be received, data to be decoded and a rule encoding of an encoding rule corresponding to the data to be decoded, wherein the encoding rule includes the encoding rule to be sent by the data transmission device according to the third aspect;
[0026] A decoding rule determination module, adapted to determine a decoding rule for the data to be decoded according to the rule code;
[0027] A decoding module decodes the data to be decoded according to the decoding rule to obtain decoded data.
[0028] In a fifth aspect, an embodiment of the present application further provides a data transmission system, comprising a transmitting end and a receiving end, wherein the transmitting end of the data transmission system can send data to implement the data transmission method as described in the first aspect, and the receiving end of the data transmission system can receive data to implement the data transmission method as described in the second aspect.
[0029] In a sixth aspect, an embodiment of the present application further provides an integrated circuit, comprising a relay and a data transmission system as described in the fifth aspect.
[0030] Compared with the prior art, the technical solution of the embodiment of the present application has the following advantages:
[0031] In the data transmission method provided in the embodiment of the present application, the encoding operation of the data to be sent is completed at the sending end, and the number of identical bits between the encoded current data to be sent and the previously sent data calculated under different encoding rules is counted, and then the encoded current data to be sent with the largest number of identical bits is judged and compared, so as to determine the encoding rule that can cause the least flipping of the current data to be sent during transmission, and the encoding rule to be sent and the encoded current data to be sent are obtained. Finally, the sending end sends the encoded current data to be sent and the encoding rule to be sent.
[0032] It can be seen that the technical solution provided by the embodiment of the present application, by encoding and obtaining each coded current data to be sent at the sending end of the data transmission system, and determining the coded current data to be sent with the largest number of bits identical to the previously sent data, obtains and sends the coding rules to be sent and the coded current data to be sent. The current data to be sent can be sent by sending the coded current data to be sent, and is sent with the least bit inversion, thereby reducing the number of bits for data flipping during the data transmission process and reducing the power consumption of data transmission. BRIEF DESCRIPTION OF THE DRAWINGS
[0033] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.
[0034] Figure 1 Schematic diagram of the basic system architecture of an integrated circuit.
[0035] Figure 2 Schematic diagram of the basic system architecture for integrated circuits to implement data transfer.
[0036] Figure 3 A schematic diagram of an architecture for implementing data transmission in a data transmission method provided in an embodiment of the present application.
[0037] Figure 4 A flowchart of a data transmission method provided in an embodiment of the present application.
[0038] Figure 5 Another flowchart of the data transmission method provided in an embodiment of the present application.
[0039] Figure 6 Another flowchart of the data transmission method provided in an embodiment of the present application.
[0040] Figure 7 Another flow chart of the data transmission method provided in the embodiment of the present application.
[0041] Figure 8 Another flowchart of the data transmission method provided in an embodiment of the present application.
[0042] Fig. 9 A structural block diagram of a data transmission device at the sending end provided in an embodiment of the present application.
[0043] Fig.10 A structural block diagram of a data transmission device at the processing end provided in an embodiment of the present application.
[0044] Fig.11 A schematic diagram of the structure of a data transmission system provided in an embodiment of the present application. DETAILED DESCRIPTION
[0045] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0046] Figure 1 The system architecture diagram of the integrated circuit is shown as an example. Figure 1 As shown, the system architecture may include: a transmitting end 110 , a register 111 , and a receiving end 112 .
[0047] The transmitting end 110 transmits data to be transmitted, and the receiving end 112 receives the data transmitted by the transmitting end 110. As the functions of the integrated circuit become more and more, the number of internal devices also increases, resulting in a longer and longer distance between the transmitting end 110 and the receiving end 112. In order to increase the operating frequency of the system, it is necessary to insert a multi-level register 111 between the transmitting end 110 and the receiving end 112 to meet the timing requirements.
[0048] Register 111 is a circuit structure that can temporarily store logic values. A clock is needed to trigger the register to work. The speed of the register clock determines the length of the register latched data. The fastest value of the clock depends on the logic and line delay between the two registers. As shown in the figure, D in register 111 is input, Q is output, and the position marked with a triangle on the left inputs the clock signal.
[0049] To understand the data transmission process, please refer to Figure 2 , Figure 2 The schematic diagram exemplarily shows a basic system architecture of an integrated circuit to implement data transmission.
[0050] As shown in the figure, the transmitting end 110 sends the data that really needs to be sent, and after being transmitted through the relay 113, it is sent to the receiving end 112. In the whole data transmission process, the transmitted signal mainly includes: control signals and real transmission data.
[0051] It should be noted that relay 113 is a register pipeline, that is, multiple Figure 1 The register 111 shown in FIG. 1 is mainly used to increase the clock frequency of data transmission.
[0052] However, the more registers 111 included in the relay 113, the greater the corresponding power consumption generated during the data transmission process. For example, when the integrated circuit includes only one register 111, the trigger clock generated when the data is transmitted to the receiving end 112 through the register 111 is recorded as a one-time trigger clock, and the power consumption at this time includes the one-time trigger clock and the power consumption generated by changing the data of each bit in one register 111. When the integrated circuit includes two registers 111, the data is first transmitted to the second register 111 through the first register 111, generating a one-time trigger clock, and then transmitted to the receiving end 112 through the second register 111, generating another one-time trigger clock. Then, the power consumption generated when data is transmitted in the integrated circuit including the two registers 111 includes two one-time trigger clocks and the power consumption of changing the data of each bit in the two registers 111. By analogy, the more registers 111 there are, the higher the power consumption generated inside the integrated circuit will be.
[0053] In a wide bus (such as 512 or 1024) within a large-scale integrated circuit, the amount of data transmitted is very large. During the transmission of this data, the number of data changes (flips) of each bit in the register 111 will increase, thereby generating a large amount of power consumption, which significantly increases its proportion in the overall power consumption.
[0054] The number of data flips refers to the number of logical changes of the data. Taking the clock edge as an example, the rise or fall of a clock edge is regarded as a flip.
[0055] As the functions of integrated circuits increase, the structure of the integrated circuits themselves will become larger during design. Therefore, more and more registers 111 are required during data transmission, and correspondingly, the power consumption will increase. Therefore, reducing the power consumption inside the integrated circuit has become an urgent problem to be solved.
[0056] Currently, there are several solutions for low power consumption design during data transmission:
[0057] First, it is mainly to improve the hit rate of data through cache or buffer cache, so as to reduce the amount of data moved;
[0058] Second, when there is no data transmission, a gated clock is used to reduce the flipping of the clock network to reduce power consumption;
[0059] The third is to allow data to be reused and shared among various processing units.
[0060] Although the above technical solutions can significantly reduce the amount of data transmission, thereby achieving the purpose of reducing the power consumption of data transmission, in data transmission solutions one and three, the required data may still be missed or the multiplexed shared data may not contain the required target data. At this time, there is still a need for data transmission, and the problem of high power consumption during data transmission still exists. Solution two reduces power consumption by controlling the gated clock when there is no data transmission, but it cannot reduce the situation where data actually needs to be transmitted, and the overall power consumption generated by data transmission has not changed.
[0061] It can be seen that the above existing solutions cannot guarantee the reduction of the internal power consumption of the integrated circuit when data transmission is required.
[0062] The data transmission method provided in the embodiment of the present application optimizes the data flipping generated during the data transmission of the wide bus in the large-scale integrated circuit chip, effectively reduces the number of data flipping, thereby achieving the purpose of reducing the power consumption of data transmission.
[0063] Figure 3 A schematic diagram of the architecture for implementing data transmission of the data transmission method provided in the embodiment of the present application. The system architecture includes: a transmitting end 110, a relay 113 and a receiving end 112, wherein a transmitting encoding module 1101 is added to the transmitting end 110, and a corresponding receiving decoding module 1121 is added to the receiving end 112. The data to be transmitted mainly includes: control signals, transmission data, and regular coding is added.
[0064] During data transmission, the sending coding module 1101 of the sending end 110 encodes the data currently required to be sent according to the coding rules, wherein the coding rules may include operation rules of at least two different operation methods. In order to facilitate the receiving end to understand the coding rules used by the transmitted data, the coding rules can also be encoded to obtain rule codes. The receiving decoding module 1121 of the receiving end 112 receives the operation result data calculated based on the coding rules and the rule codes corresponding to the coding rules sent by the sending coding module 1101. The receiving decoding module 1121 determines the coding rules according to the received rule codes, and then obtains the corresponding decoding rules. The operation result data is decoded using the decoding rules to finally obtain the currently required data.
[0065] Specifically, within the sending coding module 1101, the following operations need to be performed:
[0066] First, according to different encoding rules, the current data to be sent (that is, the data that needs to be sent at present) is subjected to corresponding encoding operations to obtain the operation results under different encoding rules, that is, to encode the current data to be sent;
[0067] Then, the encoded current data to be sent under different encoding rules are compared with the previously sent data (i.e., the latest sent data) of the transmitting end 110 to determine the number of identical bits corresponding to the data at the same bit position of the encoded current data to be sent under different encoding rules;
[0068] Then, the bit numbers determined under different encoding rules are compared again, and the maximum bit number with the largest number of bits of the same data is selected, and the encoded current data to be sent and the encoding rule corresponding to the maximum bit number are obtained at the same time;
[0069] Finally, the coding rule corresponding to the maximum number of bits is encoded to obtain a rule code, and the rule code and the encoded data to be sent corresponding to the maximum number of bits are sent to the receiving end 112 .
[0070] Inside the receiving end 112, the receiving decoding module 1121 receives the regular code and the encoded data currently to be sent sent by the sending end 110, and performs the inverse operation of the encoding rule on the received encoded data currently to be sent according to the encoding rule corresponding to the received regular code, so as to obtain the data currently to be sent.
[0071] In this way, since the current data to be sent is needed, in order to reduce power consumption during data transmission, the data transmission method provided in the embodiment of the present application takes into account that an operation can be performed on the current data to be sent at the transmission front end, that is, the sending end 110, to reduce the number of flips. Based on the aforementioned basis, in order to reduce the number of flips, it is necessary to ensure that the difference between the previously sent data and the next data to be sent is minimized, that is, the number of bits with the same data on the same bit position is the largest, so that multiple flips will not occur at the arrival time of the clock edge (that is, when the data needs to be transmitted). Based on this, the data transmission method provided in the embodiment of the present application performs operations on the current data to be sent to ensure that the difference between the operation result and the previously sent data is minimized.
[0072] There can be multiple options for encoding rules. When comparing the calculation results, the comparison can be between the calculation result data under two encoding rules and the previously sent data, or between the calculation result data under three encoding rules, four encoding rules or more encoding rules and the previously sent data. Then, the encoding rule with the largest number of identical bits and the encoded calculation result data are selected as the data to be sent currently. The largest number of identical bits means that the difference between the calculation result obtained under the encoding rule and the previously sent data is the smallest. Therefore, during the data transmission process, the number of data flips that occur is the least, and the power consumption generated is lower.
[0073] It can be seen that the data transmission method provided in the embodiment of the present application implements the architecture of data transmission. By setting a sending coding module 1101 at the sending end 110, a coding rule that can achieve the least number of flips and a calculation result based on the coding rule (i.e., encoding the current data to be sent) are obtained. Therefore, when the encoded current data to be sent is transmitted, the flipping frequency during the data transmission process can be reduced, thereby achieving the purpose of reducing system power consumption.
[0074] In order to further illustrate the implementation of the embodiments of the present application, Figure 4 FIG. 1 is a flow chart showing a data transmission method provided by an embodiment of the present application. In some embodiments, the process may be Figure 3 The architecture shown is executed in the system.
[0075] like Figure 4 As shown, the data transmission method provided by the embodiment of the present invention may include the following steps:
[0076] First, for the data sender:
[0077] In step S210, the current data to be sent and the previous sent data are obtained, wherein the previous sent data is the latest sent data;
[0078] In order to realize data transmission, the transmitting end first needs to obtain the data to be sent (ie, the current data to be sent) and the previously sent data.
[0079] Based on the above description, it can be seen that the previously sent data can be used to compare whether the same bit data is the same as the result data after the encoding operation of the current data to be sent; of course, based on different encoding rules, the previously sent data can also be used in combination with the current data to be sent to realize data encoding.
[0080] In step S211, encoding operations are performed on the current data to be sent according to various encoding rules to obtain various encoded current data to be sent.
[0081] After obtaining the current data to be sent and the previously sent data, various encoding rules are determined, and then encoding operations are performed on the current data to be sent according to the various encoding rules to obtain the encoded current data to be sent.
[0082] It should be noted that, in a specific implementation, the determination of each encoding rule can be achieved by the following steps:
[0083] Obtain application scenarios for data transmission;
[0084] Each of the encoding rules is determined from an encoding rule library according to the application scenario.
[0085] In this way, different types of encoding rules can be pre-stored in the encoding rule library. When needed, appropriate encoding rules can be selected and combined according to the actual application scenario, which makes the operation more convenient and provides more choices.
[0086] Of course, the number of the encoded data currently to be sent is the same as the number of the encoding rules, and there is a one-to-one correspondence between the encoding rules and the encoded data currently to be sent.
[0087] Based on the above description, it can be known that the number of encoding rules can be 2, 3, 4 or even more to achieve subsequent comparison, and the content of the specific encoding rules can also be selected as needed.
[0088] Specifically, the encoding rules may include a first encoding rule that keeps the current data to be sent unchanged, a second encoding rule that inverts the current data to be sent, a third encoding rule that performs an XOR operation on the current data to be sent and the previously sent data, and a fourth encoding rule that performs an XOR operation on the current data to be sent and the previously sent data.
[0089] For ease of understanding, the following uses two different encoding rules as examples:
[0090] Assume that the previously sent data is 8-bit 10010001, and after encoding the current data to be sent using two different encoding rules, the 8-bit encoded current data to be sent are 10000001 and 00110011 respectively.
[0091] In step S212, the previously sent data and each of the encoded currently sent data are compared respectively to obtain the number of bits of the same bit data of the two.
[0092] After obtaining the encoded data to be sent, the number of each bit is further obtained.
[0093] It should be noted that the “two” refers to the currently encoded data to be sent and the previously sent data under a certain encoding rule.
[0094] When there are two coding rules, there are two codes corresponding to the data to be sent. The two codes of the data to be sent are compared with the previously sent data respectively, and the number of bits with the same bit position is obtained; when there are three coding rules, there are three codes corresponding to the data to be sent. The three codes of the data to be sent are compared with the previously sent data respectively, and the number of bits with the same bit position is obtained. And so on, the number of coding rules corresponds to the number of bits.
[0095] For easier understanding, let’s continue to explain it with the above case:
[0096] After obtaining the two coded current data to be sent as 10010001 and 01101110 respectively, the two coded current data to be sent are compared with the previously sent data 10000001 for the same data at the same bit position. It can be seen that the number of bits of the same data at the same bit position between 10000001 and 10010001 is 7, and the number of bits of the same data at the same bit position between 10000001 and 01101110 is 1, so the two bit numbers are 7 and 1 respectively.
[0097] In step S213, the maximum number of bits among the various bit numbers, and the encoded current data to be sent and the encoding rule corresponding to the maximum number of bits are obtained, the encoded current data to be sent and the encoding rule to be sent are obtained, and the rule code of the encoding rule to be sent is obtained.
[0098] The maximum number of bits among the various bit numbers is obtained, so that it can be determined which encoding rule obtains the smallest difference between the encoded current data to be sent and the previously sent data, that is, the number of flips occurring during the transmission process is the least.
[0099] When two maximum bit numbers appear, that is, the previously sent data and each of the encoded data to be sent are compared, and among the bit numbers of the same bit data, two bit numbers are the same and both are the maximum values, then a bit number corresponding to the encoding rule to be sent and the encoding of the current data to be sent are randomly selected.
[0100] For easier understanding, let’s continue to explain it with the above case:
[0101] After obtaining the two bit numbers of 7 and 1 respectively, by comparison, it can be known that the maximum bit number is 7, and then the encoding corresponding to the maximum bit number 7, the current data to be sent 10010001 and the encoding rules to be sent are obtained.
[0102] Since the encoding rule is a kind of operation rule, in order to facilitate the transmission of the encoding rule, the operation rule needs to be encoded again to obtain the rule code.
[0103] Specifically, the rule coding can be represented by 1 bit, 1 and 0 respectively represent different coding rules; of course, the rule coding can also be represented by 2 bits, for example: 00, 01, 10, 11 respectively represent different coding rules. Of course, in other embodiments, when the number of coding rules increases, the rule coding can also be represented by more than 2 bits.
[0104] Specifically, when the number of coding rules is within 8, the rule code can be represented by 3 bits. When the number of coding rules is within 16, the rule code can be represented by 4 bits. The number of bits of the rule code can be sufficient to be encoded according to the number of coding rules.
[0105] The corresponding relationship between the coding rules and the rule codes can be set in advance as needed, and when the coding rules to be sent are obtained, they can be obtained by searching.
[0106] Therefore, in the above example, the coding rule with a maximum number of bits of 7 needs to be re-encoded to obtain the corresponding rule code to be sent.
[0107] In step S214, according to the sending rule, the current data to be sent and the rule code of the coding rule to be sent are sent.
[0108] The coded data to be sent here refers to the coded data to be sent corresponding to the coding rule with the least number of flips and the largest number of bits;
[0109] The sending rule may specifically include a bit width determination situation and a bit width non-determination situation.
[0110] It should be noted that the bit width is the total number of bits of data to be transmitted.
[0111] In a specific implementation, when the sending rule does not include the case of determining the bit width, that is, regardless of whether the maximum number of bits is equal to the bit width, the sender needs to send the rule code of the current data to be sent and the encoding rule to be sent.
[0112] When the sending rule includes the judgment of bit width, it is necessary to compare the maximum number of bits and the bit width. For details, please refer to Figure 5 As shown, Figure 5 A flow chart of determining a gating signal for a data transmission method provided in an embodiment of the present application.
[0113] Specifically, step S214 may further include:
[0114] In step S2140, it is determined whether the maximum number of bits is equal to the bit width. When it is determined that the maximum number of bits is less than the bit width (ie, the maximum number of bits is not equal to the bit width), step S2141 is executed; otherwise, step S2142 is executed.
[0115] In step S2141, a gating signal is disabled and the current data to be sent and the rule code of the coding rule to be sent are sent;
[0116] In step S2142, the sending of the currently to-be-sent data of the coding to be sent is stopped, the previously sent data is kept, and an enable gating signal and the rule coding of the coding rule to be sent are sent.
[0117] The enable gate signal and the disable gate signal are both coded, and the transmission of the control signal is realized by the enable gate signal and the disable gate signal, so as to control whether each register transmits data.
[0118] Specifically, the number of coding bits may be 1 bit, for example, coding 1 indicates enabling the gating signal, and coding 0 indicates disabling the gating signal.
[0119] When the information sent by the first register at the data sending end includes an enable gating signal, it means that the data currently being transmitted is the same as the data previously transmitted, and there is no need to send the previously transmitted data again. Only the previously transmitted data needs to be maintained. As long as the subsequent registers receive the enable gating signal, the previously transmitted data will be maintained, and the rule code of the coding rule to be sent and the enable gating signal will be sent to the next register at the same time, thereby reducing the power consumption generated by sending the code to be sent and the current data to be sent, and can further reduce the power consumption during data transmission. Since the enable gating signal accounts for a very small proportion of the bits, it is very low compared to the power consumption generated by transmitting the entire data, and will not cause additional load during data transmission.
[0120] In this way, by adding one bit of coding information of the gating signal, the receiving end can obtain data when the sending end does not send data, which can further reduce power consumption loss when transmitting data.
[0121] Continuing with the above case, the coded data to be sent refers to the coded data to be sent 10010001 calculated by the coding rule with a maximum number of bits of 7.
[0122] The encoded data to be sent corresponding to the maximum number of bits and the rule encoding corresponding to the encoding rule are sent to the receiving end, and data intervention is performed from the sending end of the data transmission to effectively reduce the number of flipping times during the data transmission process, thereby reducing the power consumption generated during the data transmission process.
[0123] It can be seen that the technical solution provided by the embodiment of the present application, by encoding and obtaining each coded current data to be sent at the sending end of the data transmission system, and determining the coded current data to be sent with the largest number of bits identical to the previously sent data, obtains and sends the coding rules to be sent and the coded current data to be sent. The current data to be sent can be sent by sending the coded current data to be sent, and is sent with the least bit inversion, thereby reducing the number of bits for data flipping during the data transmission process and reducing the power consumption of data transmission.
[0124] For the data receiving end, please continue to refer to Figure 4 :
[0125] In step S310, according to the received information, the data to be decoded and the rule encoding of the encoding rule corresponding to the data to be decoded are obtained, the data to be decoded includes the current data to be sent encoded by the sender, and the encoding rule includes the encoding rule to be sent by the sender.
[0126] It is easy to understand that after the sending end sends the current data to be sent and the rule code corresponding to the coding rule to be sent, the receiving end receives the current data to be sent, which is to obtain the data to be decoded, and receives the rule code corresponding to the coding rule of the data to be decoded, which is to obtain the rule code corresponding to the coding rule of the data to be decoded.
[0127] Of course, when the sending rule includes the case of determining the bit width, the received information includes two cases of whether or not it contains an enable signal, and the data to be received obtained are different. When it is determined that the received information includes the enable signal, the data to be decoded is the previously received data, wherein the previously received data is the latest received data;
[0128] When it is determined that the received information includes a disable signal, the data to be decoded is obtained as the current data to be sent that is encoded and sent by the data transmission method of the aforementioned sending end.
[0129] That is, when the received information includes an enable signal, the previously received data of the receiving end is obtained and used as the data to be decoded; when the received information includes a disable signal, the data transmission method of the receiving end sends the encoded current data to be sent, thereby obtaining the data to be decoded.
[0130] Therefore, when the maximum number of bits is equal to the bit width, the power consumption generated during data transmission can be further reduced.
[0131] In step S311, a decoding rule of the to-be-decoded data is determined according to the rule coding.
[0132] After the rule code is obtained, the encoding rule is determined according to the rule code, and then the inverse operation rule of the encoding rule is obtained to obtain the decoding rule, so as to decode the data to be decoded.
[0133] Specifically, if the encoding rule is determined to be a first encoding rule that keeps the current data to be sent unchanged based on the obtained rule encoding, then the decoding rule is determined to be a first decoding rule that keeps the data to be decoded unchanged.
[0134] Similarly, if the encoding rule is determined to be a second encoding rule that inverts the data to be decoded based on the obtained rule encoding, then the decoding rule is determined to be a second decoding rule that inverts the data to be decoded.
[0135] If based on the obtained rule encoding, the encoding rule is determined to be a third encoding rule for performing an XOR operation on the current data to be sent and the previously sent data, then the decoding rule is determined to be a third decoding rule for performing an XOR operation on the data to be decoded and the previously received data. Of course, the previously received data is the most recently received data before the data to be decoded, which is equivalent to the aforementioned previously sent data.
[0136] If based on the obtained rule encoding, the encoding rule is determined to be the fourth encoding rule for performing an XOR operation on the current data to be sent and the previously sent data, then the decoding rule is determined to be the fourth decoding rule for performing an XOR operation on the data to be decoded and the previously received data, and the previously received data is the most recently received data before the data to be decoded, which is equivalent to the aforementioned previously sent data.
[0137] If there are other regular codes, then the corresponding encoding rules and decoding rules can be determined to achieve subsequent decoding of the data to be decoded.
[0138] In step S312, the data to be decoded is decoded according to the decoding rule to obtain decoded data.
[0139] Of course, depending on the maximum number of bits determined by the encoding module at the transmitting end, the decoding rules obtained after the inverse operation are different, and the operation on the decoded data is also different.
[0140] Specifically, when the obtained decoding rule corresponding to the data to be decoded is the first decoding rule, the decoded data can be obtained by keeping the data to be decoded unchanged.
[0141] When the obtained decoding rule corresponding to the data to be decoded is the second decoding rule, each bit of the data to be decoded is inverted to obtain the decoded data.
[0142] When the obtained decoding rule corresponding to the data to be decoded is the third decoding rule, an XOR operation is performed on the data to be decoded and the previously received data to obtain decoded data.
[0143] When the obtained decoding rule corresponding to the data to be decoded is the fourth decoding rule, an XOR operation is performed on the data to be decoded and the previously received data to obtain decoded data.
[0144] When the obtained decoding rule corresponding to the data to be decoded is the fifth decoding rule, an AND operation is performed on the data to be decoded and the previously received data to obtain decoded data.
[0145] When the obtained decoding rule corresponding to the data to be decoded is the sixth decoding rule, an OR operation is performed on the data to be decoded and the previously received data to obtain decoded data.
[0146] When the obtained decoding rule corresponding to the data to be decoded is other decoding rules, the data to be decoded is decoded according to the corresponding decoding rule to obtain decoded data.
[0147] On the basis of low power consumption, data miss will not occur, multiplexing will not meet the current target data, and it can ensure the reception of all data that should be sent, that is, the integrity of the data will not be destroyed.
[0148] In some embodiments, in order to reduce the amount of encoding operations, the encoding rules can be two, such as Figure 6 As shown, Figure 6 Another flow chart of the data transmission method provided by an embodiment of the present application is shown.
[0149] Specifically, Figure 6 As shown, the encoding rule may include a first encoding rule that keeps the current data to be sent unchanged and a second encoding rule that inverts the current data to be sent. In this case, the process may include the following steps:
[0150] In step S410, the current data to be sent and the previous sent data are obtained, wherein the previous sent data is the latest sent data;
[0151] For details of step S410, please refer to Figure 4 The description of step S210 shown is not repeated here.
[0152] In step S411, according to the first encoding rule, the current data to be sent is kept unchanged to obtain the first encoded current data to be sent, and according to the second encoding rule, the current data to be sent is inverted to obtain the second encoded current data to be sent.
[0153] For part of step S411, please refer to Figure 4 The description of step S211 shown is different in that the first encoding rule is to keep the current data to be sent unchanged, so the first-coded current data to be sent is the same as the current data to be sent; the second encoding rule is to invert the current data to be sent, so the second-coded current data to be sent is the data after inverting each bit of the current data to be sent.
[0154] Here, for ease of understanding, the previous sent data and the current data to be sent in the above case are continued for explanation.
[0155] The previously sent data is 8 bits of 10000001, and the current data to be sent is 8 bits of 10010001. Then, according to the operation rule of the first coding rule, the first coded current data to be sent is 10010001. According to the second coding rule, the second coded current data to be sent is 01101110.
[0156] In step S412, the previously sent data and the currently to-be-sent data of the first code are compared to obtain the first bit quantity of the same bit data, and the previously sent data and the currently to-be-sent data of the second code are compared to obtain the second bit quantity of the same bit data.
[0157] For details of step S412, please refer to Figure 4 The description of step S212 shown is not repeated here.
[0158] For easier understanding, let’s continue with the above examples:
[0159] The first coded current data to be sent 10010001 obtained in the above step S411 is compared with the previously sent data 10000001, and the number of first bits with the same bit data is 7. The second coded current data to be sent 01101110 is compared with the previously sent data 10000001, and the number of second bits with the same bit data is 1.
[0160] In step S413, it is determined whether the first bit quantity is the maximum, if so, step S414 is executed, otherwise step S416 is executed.
[0161] Here, the first bit number is used as the basis for judgment. Of course, in other embodiments, the second bit number can also be used as the basis for judgment. The essence is to compare the first bit number and the second bit number to determine which bit number is the largest.
[0162] In combination with the above case, the first bit number 7 is compared with the second bit number 1. The first bit number 7 is the maximum bit number, so step S414 is executed.
[0163] In step S414, the first-coded current data to be sent and the first coding rule are obtained, the current data to be sent and the coding rule to be sent are obtained, and the rule code of the coding rule to be sent is obtained.
[0164] When the first bit number is the largest, the first coded current data to be sent is the coded current data to be sent, and the first coding rule is the coding rule to be sent.
[0165] Then, the rule code corresponding to the first coding rule is obtained. For example, 00 can be used to represent the first coding rule that keeps the current data to be sent unchanged.
[0166] Combined with the above case: the code to be sent and the current data to be sent here is the first code and the current data to be sent is 10010001.
[0167] In step S415, the first encoding of the current data to be sent and the rule encoding of the first encoding rule are sent.
[0168] Specifically, based on the previous case: send 10010001 and 00.
[0169] In step S416, the second bit number and the second encoding rule are obtained, the current data to be sent and the encoding rule to be sent are obtained, and the rule code of the encoding rule to be sent is obtained.
[0170] When it is determined that the first bit number is not the maximum, then execute step S416, where the current data to be sent is the second coded data to be sent, and the coding rule to be sent is the second coding rule: invert the current data to be sent, and obtain the rule code of the second coding rule.
[0171] Correspondingly, in step S417, the second encoding currently to-be-sent data and the rule encoding of the second encoding rule are sent.
[0172] In this way, by keeping the first encoding rule of the currently to-be-sent data unchanged and inverting the second encoding rule of the currently to-be-sent data, the currently to-be-sent data is operated, and the original data and the inverted data are compared. The encoded current data to be sent with the smallest difference compared with the previously sent data and the encoding rule corresponding to the data can be determined between the two, the rule encoding corresponding to the encoding rule can be determined, and the rule encoding and the encoded current data to be sent can be sent to the sending end. With a smaller amount of calculation and lower calculation difficulty, the least flipping in the data transmission process can be achieved, thereby reducing the power consumption of data transmission.
[0173] In the following various embodiments, when there are two encoding rules, both are Figure 6 For reference, you only need to adjust the encoding rules.
[0174] In other embodiments, the encoding rule may include a first encoding rule that keeps the current data to be sent unchanged and a third encoding rule that performs an XOR operation on the current data to be sent and the previously sent data, which may specifically include the following steps:
[0175] Acquire the current data to be sent and the previous sent data, wherein the previous sent data is the latest sent data;
[0176] According to the first coding rule, the current data to be sent is kept unchanged to obtain the first coded current data to be sent, and according to the third coding rule, the current data to be sent and the previously sent data are XORed to obtain the third coded current data to be sent;
[0177] Compare the previously sent data with the first coded data to be sent currently, and obtain the number of first bits with the same bit data; compare the previously sent data with the third coded data to be sent currently, and obtain the number of third bits with the same bit data;
[0178] Determine whether the first bit number is the maximum. If so, obtain the first-coded current data to be sent and the first coding rule, obtain the current data to be sent of the coding to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent, and send the first-coded current data to be sent and the first coding rule; if not, obtain the third bit number and the third coding rule, obtain the current data to be sent of the coding to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent, and send the third-coded current data to be sent and the rule code of the third coding rule.
[0179] In combination with the above case: the current data to be sent is encoded according to the first coding rule and the third coding rule respectively, and the first-coded current data to be sent is 10010001, and the third-coded current data to be sent is 00010000. The first-coded current data to be sent 10010001 is compared with the previously sent data 10000001, and the number of first bits with the same bit data is 7. The third-coded current data to be sent 00010000 is compared with the previously sent data 10000001, and the number of third bits with the same bit data is 5. The first bit number 7 is the maximum bit number. Therefore, the rule coding of the first-coded current data to be sent and the first coding rule is obtained, and the rule coding of the first-coded current data to be sent and the first coding rule is sent.
[0180] In this way, the types of encoding rules can be enriched, and different encodings of the current data to be sent can be obtained to meet the needs of different types of data transmission.
[0181] In another embodiment, the encoding rules further include a first encoding rule for keeping the current data to be sent unchanged and a fourth encoding rule for performing an XOR operation on the current data to be sent and the previously sent data. The process may specifically include the following steps:
[0182] Acquire the current data to be sent and the previous sent data, wherein the previous sent data is the latest sent data;
[0183] According to the first coding rule, the current data to be sent is kept unchanged to obtain the first coded current data to be sent, and according to the fourth coding rule, the current data to be sent and the previously sent data are XORed to obtain the fourth coded current data to be sent;
[0184] Compare the previously sent data with the first coded data to be sent currently, and obtain the number of first bits with the same bit data; compare the previously sent data with the fourth coded data to be sent currently, and obtain the number of fourth bits with the same bit data;
[0185] Determine whether the first bit number is the maximum. If so, obtain the first coding current data to be sent and the first coding rule, obtain the current data to be sent of the coding to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent, and send the first coding current data to be sent and the first coding rule; if not, obtain the fourth bit number and the fourth coding rule, obtain the current data to be sent of the coding to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent, and send the fourth coding current data to be sent and the rule code of the fourth coding rule.
[0186] In combination with the above case: the current data to be sent are encoded according to the first coding rule and the fourth coding rule respectively, and the first-coded current data to be sent is 10010001, and the fourth-coded current data to be sent is 11101111; the first-coded current data to be sent 10010001 is compared with the previously sent data 10000001, and the number of first bits with the same bit data is 7; the fourth-coded current data to be sent 11101111 is compared with the previously sent data 10000001, and the number of fourth bits with the same bit data is 3; therefore, the rule coding of the first-coded current data to be sent and the first coding rule is obtained, and the first-coded current data to be sent and the rule coding of the first coding rule are sent.
[0187] In this way, the types of encoding rules can be enriched in another way, and different encodings of the current data to be sent can be obtained to meet the needs of different types of data transmission.
[0188] Of course, the encoding rules may also be other operation rules. This application only describes some of the operation rules, including but not limited to the implementation schemes of the operation rules described in the embodiments of this application.
[0189] In other embodiments, any two combinations can be selected from various encoding rules, such as the second encoding rule and the third encoding rule, the second encoding rule and the fourth encoding rule, etc., to meet the needs of different data transmission. The specific operations at the sending end can refer to any of the aforementioned methods and will not be repeated here.
[0190] In this way, the data to be sent is encoded differently through a variety of encoding rules to obtain different encoded data to be sent. The data with the least difference from the previously sent data and the corresponding operation rules can be compared. During the data transmission process, various operation rules can be flexibly combined to minimize the number of data flipping times, thereby achieving the purpose of low-power data transmission.
[0191] Still taking the above-mentioned different encoding rules as an example, when there are three encoding rules, the embodiments of the present application are all based on Figure 7 For reference, explanation is given. Figure 7 Another flow chart of the data transmission method provided in the embodiment of the present application.
[0192] In one embodiment, the encoding rule may include a first encoding rule that keeps the current data to be sent unchanged, a second encoding rule that inverts the current data to be sent, and a third encoding rule that performs an XOR operation on the current data to be sent and the previously sent data, such as Figure 7As shown, the process may include the following steps:
[0193] In step S510, the current data to be sent and the previous sent data are obtained, wherein the previous sent data is the latest sent data.
[0194] For details of step S510, please refer to Figure 6 The relevant description of step S410 is not repeated here.
[0195] In step S511, according to the first encoding rule, the current data to be sent is kept unchanged to obtain the first encoded current data to be sent; according to the second encoding rule, the current data to be sent is inverted to obtain the second encoded current data to be sent; according to the third encoding rule, an XOR operation is performed on the current data to be sent and the previously sent data to obtain the third encoded current data to be sent.
[0196] For details of step S511, please refer to Figure 6 The related description of step S411 only requires obtaining the third-coded current data to be sent according to the third coding rule.
[0197] Continuing with the above case, according to the operation rules of the first coding rule, the first code currently to be sent is 10010001, according to the second coding rule, the second code currently to be sent is 01101110, and according to the third coding rule, the third code currently to be sent is 00010000.
[0198] In step S512, the previously sent data and the currently to-be-sent data of the first code are compared to obtain the number of first bits with the same bit data; the previously sent data and the currently to-be-sent data of the second code are compared to obtain the number of second bits with the same bit data; the previously sent data and the currently to-be-sent data of the third code are compared to obtain the number of third bits with the same bit data.
[0199] For details of step S512, please refer to Figure 6 The description of step S412 only requires comparing the previously sent data with the third encoded data to be sent to obtain the same third bit number of the same bit data.
[0200] Continuing with the above case, the first-coded current data to be sent 10010001 obtained in the above step S511 is compared with the previously sent data 10000001, and the number of first bits with the same bit data is 7. The second-coded current data to be sent 01101110 is compared with the previously sent data 10000001, and the number of second bits with the same bit data is 1. The third-coded current data to be sent 00010000 is compared with the previously sent data 10000001, and the number of second bits with the same bit data is 5.
[0201] In step S513, it is determined whether the first bit quantity is the maximum, if so, step S514 is executed, otherwise, step S516 is executed.
[0202] Here, the first bit quantity is used as the judgment basis. Of course, in other embodiments, the second bit quantity or the third bit quantity may also be used as the judgment basis.
[0203] For details of step S513, please refer to Figure 6 The relevant description of step S413 is not repeated here.
[0204] According to the first bit number 7, the second bit number 1 and the third bit number 5 obtained in step S512, it is determined that the first bit number 7 is the maximum bit number, so step S514 is executed.
[0205] In step S514, the first coding current data to be sent and the first coding rule are obtained, the current data to be sent and the coding rule to be sent are obtained, and the rule code of the coding rule to be sent is obtained.
[0206] In step S515, the first encoding currently to-be-sent data and the rule encoding of the first encoding rule are sent;
[0207] For details of step S514 and step S515, please refer to Figure 6 The relevant descriptions of step S414 and step S415 are not repeated here.
[0208] In step S516, it is determined whether the second bit quantity is the maximum, if so, step S517 is executed, if not, step S519 is executed.
[0209] When it is determined that the first bit quantity is not the maximum, it is further determined whether the second bit quantity is the maximum, and subsequent steps are performed.
[0210] In step S517, the second bit number and the second encoding rule are obtained, the current data to be sent and the encoding rule to be sent are obtained, and the rule code of the encoding rule to be sent is obtained.
[0211] In step S518, the second encoding of the current data to be sent and the rule encoding of the second encoding rule are sent.
[0212] For details of step S517 and step S518, please refer to Figure 6 The relevant descriptions of step S416 and step S417 are not repeated here.
[0213] In step S519, the third bit number and the third encoding rule are obtained, the current data to be sent and the encoding rule to be sent are obtained, and the rule code of the encoding rule to be sent is obtained.
[0214] In step S520, the third encoding of the current data to be sent and the rule encoding of the third encoding rule are sent.
[0215] In another embodiment, the encoding rules may also include a first encoding rule that keeps the current data to be sent unchanged, a second encoding rule that inverts the current data to be sent, and a fourth encoding rule that performs an XOR operation on the current data to be sent and the previously sent data. For specific processing steps, please continue to refer to Figure 7 , it is only necessary to adjust the third encoding rule to the fourth encoding rule, and the third encoding current data to be sent is adjusted to the fourth encoding current data to be sent, which will not be repeated here.
[0216] Of course, when the encoding rules include three types, there can be multiple implementation examples, such as including the first encoding rule, the third encoding rule and the fourth encoding rule, and all combination schemes of different permutations and combinations of the second encoding rule, the third encoding rule and the fourth encoding rule can be implemented according to the data transmission method provided in the embodiment of the present application.
[0217] In this way, different operations are performed on the current data to be sent through a variety of operation rules to obtain different variants of the current data to be sent. Adding a variety of operation rules for comparison can make it possible to compare a variant that is the least different from the previously sent data and the corresponding operation rule has a better transmission effect. During the data transmission process, the number of data flipping times can be reduced to a greater extent, thereby achieving the purpose of low-power data transmission.
[0218] Of course, the number of encoding rules can be more. Still taking the above-mentioned different encoding rules as an example, when there are four encoding rules, the embodiments of the present application are all based on Figure 8 For reference, explanation is given. Figure 8Another flowchart of the data transmission method provided in an embodiment of the present application.
[0219] In the embodiment provided in the present application, the encoding rules include a first encoding rule that keeps the current data to be sent unchanged, a second encoding rule that inverts the current data to be sent, a third encoding rule that performs an XOR operation on the current data to be sent and the previously sent data, and a fourth encoding rule that performs an XOR operation on the current data to be sent and the previously sent data, such as Figure 8 As shown, the process may include the following steps:
[0220] In step S610, the current data to be sent and the previous sent data are obtained, wherein the previous sent data is the latest sent data.
[0221] For details of step S610, please refer to Figure 6 The relevant description of step S410 is not repeated here.
[0222] In step S611, according to the first coding rule, the current data to be sent is kept unchanged to obtain the first coded current data to be sent; according to the second coding rule, the current data to be sent is inverted to obtain the second coded current data to be sent; according to the third coding rule, an XOR operation is performed on the current data to be sent and the previous sent data to obtain the third coded current data to be sent; according to the fourth coding rule, an XOR operation is performed on the current data to be sent and the previous sent data to obtain the fourth coded current data to be sent;
[0223] For details of step S611, please refer to Figure 6 The relevant description of step S411 and Figure 7 The related description of step S511 only requires obtaining the fourth-coded current data to be sent according to the fourth coding rule.
[0224] Continuing with the above case, according to the first coding rule, the first coded data to be sent is 10010001, according to the second coding rule, the second coded data to be sent is 01101110, according to the third coding rule, the third coded data to be sent is 00010000, and according to the fourth coding rule, the fourth coded data to be sent is 11101111;
[0225] In step S612, the previously sent data and the first-coded data currently to be sent are compared to obtain the number of first bits with the same bit data; the previously sent data and the second-coded data currently to be sent are compared to obtain the number of second bits with the same bit data; the previously sent data and the third-coded data currently to be sent are compared to obtain the number of third bits with the same bit data; the previously sent data and the fourth-coded data currently to be sent are compared to obtain the number of fourth bits with the same bit data.
[0226] For details of step S612, please refer to Figure 6 The relevant description of step S412 and Figure 7 The description of step S512 only requires comparing the previously sent data with the fourth encoded data to be sent to obtain the same fourth bit number of the same bit data.
[0227] Continuing with the above case, the first coded current data to be sent 10010001 obtained in the above step S611 is compared with the previous sent data 10000001, and the number of first bits with the same bit data is 7. The second coded current data to be sent 01101110 is compared with the previous sent data 10000001, and the number of second bits with the same bit data is 1. The third coded current data to be sent 00010000 is compared with the previous sent data 10000001, and the number of third bits with the same bit data is 5. The fourth coded current data to be sent 11101111 is compared with the previous sent data 10000001, and the number of fourth bits with the same bit data is 3.
[0228] In step S613, it is determined whether the first bit quantity is the maximum, if so, step S614 is executed, otherwise, step S616 is executed.
[0229] Here, the first bit number is used as the basis for judgment. Of course, in other embodiments, the second bit number, the third bit number, or the fourth bit number may also be used as the basis for judgment.
[0230] For details of step S613, please refer to Figure 6 The relevant description of step S413 is not repeated here.
[0231] According to the first bit number 7, the second bit number 1, the third bit number 5, and the fourth bit number 3 obtained in step S612, it is determined that the first bit number 7 is the maximum bit number, so step S614 is executed.
[0232] In step S614, the first coding current data to be sent and the first coding rule are obtained, the current data to be sent and the coding rule to be sent are obtained, and the rule code of the coding rule to be sent is obtained.
[0233] In step S615, the first encoding of the current data to be sent and the rule encoding of the first encoding rule are sent.
[0234] For details of step S614 and step S615, please refer to Figure 6 The relevant descriptions of step S414 and step S415 are not repeated here.
[0235] In step S616, it is determined whether the second bit quantity is the maximum, if so, step S617 is executed, if not, step S619 is executed.
[0236] In step S617, the second bit number and the second encoding rule are obtained, the current data to be sent and the encoding rule to be sent are obtained, and the rule code of the encoding rule to be sent is obtained.
[0237] In step S618, the second encoding currently to-be-sent data and the rule encoding of the second encoding rule are sent.
[0238] For details of steps S616 to S618, please refer to Figure 7 The relevant descriptions of step S516 and step S518 are not repeated here.
[0239] In step S619, it is determined whether the third bit quantity is the maximum, if so, step S620 is executed, if not, step S622 is executed.
[0240] When it is determined that the first bit quantity is not the maximum and the second bit quantity is not the maximum, it is further determined whether the third bit quantity is the maximum, and subsequent steps are performed.
[0241] In step S620, the third bit number and the third encoding rule are obtained, the current data to be sent and the encoding rule to be sent are obtained, and the rule code of the encoding rule to be sent is obtained.
[0242] In step S621, the third encoding of the current data to be sent and the rule encoding of the third encoding rule are sent.
[0243] In step S622, the fourth bit quantity and the fourth coding rule are obtained, the current data to be sent and the coding rule to be sent are obtained, and the rule code of the coding rule to be sent is obtained.
[0244] In step S623, the fourth encoding of the current data to be sent and the rule encoding of the fourth encoding rule are sent.
[0245] Of course, when other encoding rules different from the above are included, there may be other combinations. Regardless of the combination, it can be executed according to the above data transmission method provided in the embodiment of the present application.
[0246] In this way, by continuously increasing the types of different operation rules, different operations can be performed on the current data to be sent, and different variants of the current data to be sent can be obtained. The more variants obtained, the more beneficial the comparison results will be for data transmission. In this way, during the data transmission process, the number of data flipping times can be further reduced to the greatest extent, thereby achieving the purpose of low-power data transmission.
[0247] The encoding rule described in any of the above embodiments is an encoding including at least 2 bits, which is specifically determined according to the type of operation rule included in the encoding rule.
[0248] In order to solve the above problems, the embodiment of the present application also provides a data transmission device, which is applicable to the sending end and can be considered as a functional module required to be set at the sending end to implement the data transmission method provided in the embodiment of the present application. The device content described below can be referenced to the method content described above at the sending end.
[0249] As an optional implementation, Fig. 9 An optional structural block diagram of a data transmission device at the sending end provided in an embodiment of the present application is shown.
[0250] like Fig. 9 As shown, the data transmission device may include:
[0251] The acquisition module 710 is used to acquire the current data to be sent and the previous sent data, wherein the previous sent data is the latest sent data;
[0252] The encoding module 711 is used to perform encoding operations on the currently to-be-sent data according to each encoding rule to obtain each encoded currently to-be-sent data; the judgment module 712 is used to compare and judge the previously sent data and each encoded currently to-be-sent data, determine the number of each bit position of the same bit position data, obtain the encoded currently to-be-sent data and the encoding rule corresponding to the maximum number of bits, obtain the encoded currently to-be-sent data to be sent and the encoding rule to be sent, and obtain the rule code of the encoding rule to be sent;
[0253] The sending module 713 is used to send the current data to be sent and the rule code of the coding rule to be sent according to the sending rule.
[0254] Of course, in some embodiments, a coding rule determination module 7110 may also be included. The coding rule determination module 7110 is used to obtain an application scenario for data transmission and determine each coding rule from a coding rule library according to the application scenario.
[0255] Since the number of coding rules can be 2, 3, 4 or even more, a coding basis is provided for subsequent data comparison, and the content of specific coding rules can also be selected according to needs.
[0256] Specifically, when the number of coding rules is within 8, the rule code can be represented by 3 bits. When the number of coding rules is within 16, the rule code can be represented by 4 bits. The number of bits of the rule code can be sufficient to be encoded according to the number of coding rules.
[0257] The corresponding relationship between the coding rules and the rule codes can be set in advance as needed. When the coding rules to be sent are obtained, they can be obtained by searching, and various coding rules can be combined and called flexibly and conveniently.
[0258] Therefore, in the above example, the coding rule with a maximum number of bits of 7 needs to be re-encoded to obtain the corresponding rule code to be sent.
[0259] In some other embodiments, the sending module 713 may be used to send the current data to be sent and the rule code of the coding rule to be sent according to the sending rule, including:
[0260] When it is determined that the maximum number of bits is less than the bit width, a gating signal is not enabled and the rule code of the encoding rule to be sent and the encoding rule to be sent is sent;
[0261] When it is determined that the maximum number of bits is equal to the bit width, stop sending the currently to-be-sent data of the encoding to be sent, keep the previously sent data, and send an enable gating signal and the rule encoding of the encoding rule to be sent.
[0262] The enable gate signal and the disable gate signal are both coded, and the transmission of the control signal is realized by the enable gate signal and the disable gate signal, so as to control whether each register transmits data.
[0263] Specifically, the number of coding bits can be 1 bit, for example, coding 1 indicates enabling the gating signal, and coding 0 indicates disabling the gating signal. In this way, adding one bit of coding information of the gating signal can facilitate the transmitter to reduce unnecessary power consumption when transmitting data in each register.
[0264] In some further embodiments, the encoding rules may include a first encoding rule that keeps the currently-to-be-sent data unchanged and a second encoding rule that inverts the currently-to-be-sent data. The encoding module 711 is used to perform encoding operations on the currently-to-be-sent data according to each encoding rule to obtain each encoded currently-to-be-sent data, including: according to the first encoding rule, keeping the currently-to-be-sent data unchanged to obtain a first encoded currently-to-be-sent data; according to the second encoding rule, inverting the currently-to-be-sent data to obtain a second encoded currently-to-be-sent data.
[0265] The judgment module 712 is also used to compare and judge the previously sent data and each of the encoded currently sent data respectively, determine the number of bits with the same bit data, obtain the encoded currently sent data and the encoding rule corresponding to the maximum bit number, obtain the encoded currently sent data and the encoding rule to be sent, and obtain the rule code of the encoding rule to be sent, including: comparing the previously sent data and the first encoded currently sent data, obtaining the first number of bits with the same bit data, comparing the previously sent data and the second encoded currently sent data, obtaining the second number of bits with the same bit data, determining the maximum number of bits in the first number of bits and the second number of bits, and the encoded currently sent data and the encoding rule corresponding to the maximum number of bits, obtaining the encoded currently sent data and the encoding rule to be sent, and obtaining the rule code of the encoding rule to be sent.
[0266] According to the contents of the above embodiments, in a further embodiment, when the encoding rules may also include a third encoding rule for performing an XOR operation on the current data to be sent and the previously sent data, the encoding module 711 is also used to: according to the third encoding rule, perform an XOR operation on the current data to be sent and the previously sent data to obtain the third-coded current data to be sent.
[0267] The judgment module 712 is also used to: compare the previously sent data and the third coded data to be sent, obtain the same third bit number of the same bit data, determine the maximum number of bits among the first number of bits, the second number of bits and the third number of bits, and the coded data to be sent and the coding rule corresponding to the maximum number of bits, obtain the coded data to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent.
[0268] According to the content of the above further embodiment, the encoding rules also include a fourth encoding rule for performing an XOR operation on the current data to be sent and the previously sent data, and the encoding module 711 is also used to perform an XOR operation on the current data to be sent and the previously sent data according to the fourth encoding rule to obtain the fourth encoded current data to be sent.
[0269] The judgment module 712 is also used to compare the previously sent data and the fourth coded data to be sent, obtain the fourth bit number that is the same as the same bit data, determine the maximum number of bits among the first number of bits, the second number of bits, the third number of bits and the fourth number of bits, and the coded data to be sent and the coding rule corresponding to the maximum number of bits, obtain the coded data to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent.
[0270] In other embodiments, the encoding rule may also include a first encoding rule that keeps the current data to be sent unchanged and a third encoding rule that performs an XOR operation on the current data to be sent and the previously sent data, and the encoding module 711 is used to perform encoding operations on the current data to be sent according to each encoding rule to obtain each encoded current data to be sent, including:
[0271] According to the first coding rule, the current data to be sent is kept unchanged to obtain the first coded current data to be sent, and according to the third coding rule, the current data to be sent and the previously sent data are XORed to obtain the third coded current data to be sent.
[0272] The judgment module 712 is used to compare and judge the previously sent data and each of the encoded current data to be sent, determine the number of bits of the same bit data, obtain the encoded current data to be sent and the encoding rule corresponding to the maximum number of bits, obtain the encoded current data to be sent and the encoding rule to be sent, and obtain the rule code of the encoding rule to be sent, including:
[0273] Compare the previously sent data with the first coded data to be sent, obtain the first bit number of the same bit data, compare the previously sent data with the third coded data to be sent, obtain the third bit number of the same bit data, determine the maximum number of bits between the first number of bits and the third number of bits, and the coded data to be sent and the coding rule corresponding to the maximum number of bits, obtain the coded data to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent.
[0274] In other embodiments, the encoding rules may also include a first encoding rule that keeps the current data to be sent unchanged and a fourth encoding rule that performs an XOR operation on the current data to be sent and the previously sent data. Correspondingly, the encoding module 711 is used to perform encoding operations on the current data to be sent according to each encoding rule to obtain each encoded current data to be sent, including: according to the first encoding rule, keeping the current data to be sent unchanged to obtain the first encoded current data to be sent; according to the fourth encoding rule, performing an XOR operation on the current data to be sent and the previously sent data to obtain the fourth encoded current data to be sent.
[0275] The judgment module 712 is used to compare and judge the previously sent data and each of the encoded current data to be sent, determine the number of bits of the same bit data, obtain the encoded current data to be sent and the encoding rule corresponding to the maximum number of bits, obtain the encoded current data to be sent and the encoding rule to be sent, and obtain the rule code of the encoding rule to be sent, including:
[0276] Compare the previously sent data with the first coded data to be sent, obtain the first bit number of the same bit data, compare the previously sent data with the fourth coded data to be sent, obtain the fourth bit number of the same bit data, determine the maximum number of bits between the first number of bits and the fourth number of bits, and the coded data to be sent and the coding rule corresponding to the maximum number of bits, obtain the coded data to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent.
[0277] In this way, the data transmission device at the sending end ensures that the sending end can intervene in the data in advance and deform the data to achieve that the transmitted data has the smallest difference and the least flipping compared with the previously sent data, thereby reducing the power consumption of data transmission.
[0278] The above device is required by the transmitting end. In addition, the embodiment of the present application also provides a data transmission device, which is suitable for the receiving end and can be considered as a functional module required to be set at the receiving end to implement the data transmission method provided in the embodiment of the present application. The device content described below can be referenced to the method content described above for the receiving end.
[0279] As an optional implementation, Fig.10 An optional structural block diagram of a data transmission device at a receiving end provided in an embodiment of the present application is shown.
[0280] like Fig.10 As shown, the device may include:
[0281] The data acquisition module 810 is adapted to acquire the data to be decoded and the encoding rules corresponding to the data to be decoded according to the received information, wherein the encoding rules include the encoding rules to be sent by the data transmission device at the sending end;
[0282] A decoding rule determination module 811, adapted to determine a decoding rule for the data to be decoded according to the rule code;
[0283] The decoding module 812 decodes the data to be decoded according to the decoding rule to obtain decoded data.
[0284] In this way, the inverse operation can be performed based on the data with the least flipping that has been pre-judged by the sender, and finally the data that should be transmitted can be obtained, which effectively reduces the problem of high power consumption caused by too many data flipping times during data transmission, reduces the power consumption inside data transmission, and extends the service life of the device.
[0285] In some embodiments, the data acquisition module 810 is adapted to acquire the data to be decoded according to the received information, including:
[0286] When it is determined that the received information includes an enable signal, obtaining previously received data, wherein the previously received data is the most recently received data;
[0287] When it is determined that the received information includes a disable signal, the encoded current data to be sent sent by the data transmission device as described in any one of the aforementioned transmitting ends is obtained.
[0288] The embodiment of the present application also provides a data transmission system 910, which is suitable for implementing the data transmission method provided in the embodiment of the present application.
[0289] Fig.11 The structure diagram of the data transmission system provided by the embodiment of the present application is shown as follows: Fig.11 As shown, the data transmission system 910 includes a transmitting end 911 and a receiving end 912. The transmitting end 911 of the data transmission system 910 can send data to implement the data transmission method described in any of the above embodiments, and the receiving end 912 of the data transmission system 910 can receive data to implement the data transmission method described in any of the above embodiments.
[0290] The embodiment of the present application also provides an integrated circuit, which may include a relay and the data transmission system 910 provided in the embodiment of the present application.
[0291] Although the embodiments of the present application are disclosed above, the present application is not limited thereto. Any person skilled in the art may make various changes and modifications without departing from the spirit and scope of the present application. Therefore, the scope of protection of the present application shall be subject to the scope defined by the claims.
Claims
1. A data transmission method, characterized in that: Applicable to data sending end, including: Acquire the current data to be sent and the previous sent data, wherein the previous sent data is the latest sent data; According to each encoding rule, encoding operations are performed on the current data to be sent respectively to obtain each encoded current data to be sent; Compare the previously sent data and the currently to-be-sent data of each code respectively, and obtain the number of each bit position that is the same as the same bit position data of the two; Obtain the maximum number of bits among the respective bit numbers, and the coded current data to be sent and the coding rule corresponding to the maximum number of bits, obtain the coded current data to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent; according to the sending rule, send the coded current data to be sent and the rule code of the coding rule to be sent; The step of sending the current data to be sent and the rule code of the coding rule to be sent according to the sending rule comprises: When it is determined that the maximum number of bits is less than the bit width, a disable gating signal is sent, and the code to be sent, the current data to be sent, and the rule code of the coding rule to be sent are sent; when it is determined that the maximum number of bits is equal to the bit width, the sending of the current data to be sent is stopped, the previously sent data is kept, and an enable gating signal and the rule code of the coding rule to be sent are sent; the rule code is obtained by encoding the coding rule corresponding to the maximum number of bits, and the rule code is used to determine the coding rule to obtain the corresponding decoding rule, and the decoding rule is used for decoding.
2. The data transmission method according to claim 1, characterized in that: Each of the encoding rules is determined by the following steps: Obtain application scenarios for data transmission; Each of the encoding rules is determined from an encoding rule library according to the application scenario.
3. The data transmission method according to any one of claims 1 to 2, characterized in that: The encoding rules include a first encoding rule that keeps the current data to be sent unchanged and a second encoding rule that inverts the current data to be sent; The step of performing encoding operations on the current data to be sent according to the respective encoding rules to obtain the respective encoded current data to be sent comprises: According to the first coding rule, the current data to be sent is kept unchanged to obtain the first coded current data to be sent, and according to the second coding rule, the current data to be sent is inverted to obtain the second coded current data to be sent; The step of comparing the previously sent data and each of the encoded data to be sent to obtain the number of bits of the same bit data between the two comprises: comparing the previously sent data and the first encoded data to be sent to obtain the number of first bits of the same bit data, and comparing the previously sent data and the second encoded data to be sent to obtain the number of second bits of the same bit data; The step of obtaining the maximum number of bits among the numbers of bits comprises: Obtain a maximum number of bits between the first number of bits and the second number of bits.
4. The data transmission method according to claim 3, characterized in that: The encoding rules also include a third encoding rule for performing an XOR operation on the current data to be sent and the previously sent data; The step of performing encoding operations on the current data to be sent according to the respective encoding rules to obtain the respective encoded current data to be sent also includes: According to the third coding rule, performing an XOR operation on the current data to be sent and the previously sent data to obtain the third coded current data to be sent; The step of comparing the previously sent data and each of the encoded currently to be sent data to obtain the number of each bit of the same bit data between the two also includes: comparing the previously sent data and the third encoded currently to be sent data to obtain the number of third bits of the same bit data; The step of obtaining the maximum number of bits among the numbers of bits comprises: Obtain a maximum number of bits among the first number of bits, the second number of bits, and the third number of bits.
5. The data transmission method according to claim 4, characterized in that: The encoding rules also include a fourth encoding rule for performing an XOR operation on the current data to be sent and the previously sent data; The step of performing encoding operations on the current data to be sent according to the respective encoding rules to obtain the respective encoded current data to be sent also includes: Perform XOR on the current data to be sent and the previously sent data to obtain fourth coded current data to be sent; The step of comparing the previously sent data and each of the encoded currently to be sent data to obtain the number of each bit of the same bit data between the two also includes: comparing the previously sent data and the fourth encoded currently to be sent data to obtain the number of fourth bits of the same bit data; The step of obtaining the maximum number of bits among the numbers of bits comprises: Obtain a maximum number of bits among the first number of bits, the second number of bits, the third number of bits, and the fourth number of bits.
6. The data transmission method according to any one of claims 1 to 2, characterized in that: The encoding rules include a first encoding rule for keeping the current data to be sent unchanged and a third encoding rule for performing an XOR operation on the current data to be sent and the previously sent data; The step of performing encoding operations on the current data to be sent according to the respective encoding rules to obtain the respective encoded current data to be sent comprises: According to the first coding rule, the current data to be sent is kept unchanged to obtain the first coded current data to be sent, and according to the third coding rule, the current data to be sent and the previously sent data are XORed to obtain the third coded current data to be sent; The step of comparing the previously sent data and each of the encoded currently to be sent data respectively to obtain the number of each bit of the same bit data between the two comprises: comparing the previously sent data and the first encoded currently to be sent data to obtain the number of first bits of the same bit data, comparing the previously sent data and the third encoded currently to be sent data to obtain the number of third bits of the same bit data; The step of obtaining the maximum number of bits among the numbers of bits comprises: Obtain a maximum number of bits between the first number of bits and the third number of bits.
7. The data transmission method according to any one of claims 1 to 2, characterized in that: The encoding rules include a first encoding rule for keeping the current data to be sent unchanged and a fourth encoding rule for performing an XOR operation on the current data to be sent and the previously sent data; The step of performing encoding operations on the current data to be sent according to the respective encoding rules to obtain the respective encoded current data to be sent comprises: According to the first coding rule, the current data to be sent is kept unchanged to obtain the first coded current data to be sent, and according to the fourth coding rule, the current data to be sent and the previously sent data are XORed to obtain the fourth coded current data to be sent; The step of comparing the previously sent data and each of the encoded currently to be sent data to obtain the number of each bit of the same bit data between the two comprises: comparing the previously sent data and the first encoded currently to be sent data to obtain the number of first bits of the same bit data, and comparing the previously sent data and the fourth encoded currently to be sent data to obtain the number of fourth bits of the same bit data; The step of obtaining the maximum number of bits among the numbers of bits comprises: Obtain a maximum number of bits between the first number of bits and the fourth number of bits.
8. The data transmission method according to any one of claims 1 to 2, characterized in that: The rule code includes at least 2 bits.
9. A data transmission method, characterized in that: Applicable to data receiving end, including: According to the received information, obtaining the data to be decoded and the rule encoding of the encoding rule corresponding to the data to be decoded, wherein the encoding rule includes the encoding rule to be sent of the data transmission method according to any one of claims 1 to 8; Determine the decoding rule of the data to be decoded according to the rule encoding; Decoding the data to be decoded according to the decoding rule to obtain decoded data; The step of obtaining the data to be decoded according to the received information includes: When it is determined that the received information includes an enable signal, obtaining previously received data, wherein the previously received data is the most recently received data; When it is determined that the received information includes a disable signal, obtaining the coded current data to be sent sent by the data transmission method; The rule code is obtained by encoding the coding rule corresponding to the maximum number of bits, and the rule code is used to determine the coding rule to obtain the corresponding decoding rule, and the decoding rule is used for decoding.
10. The data transmission method according to claim 9, characterized in that: The decoding rules include a first decoding rule that keeps the to-be-decoded data unchanged.
11. The data transmission method according to claim 9, characterized in that: The decoding rule includes a second decoding rule that inverts the data to be decoded.
12. The data transmission method according to claim 9, characterized in that: The decoding rule includes a third decoding rule for performing an XOR operation on the data to be decoded and previously received data, wherein the previously received data is the most recently received data before the data to be decoded.
13. The data transmission method according to claim 9, characterized in that: The decoding rule includes a fourth decoding rule of performing an XOR operation on the data to be decoded and previously received data, wherein the previously received data is the most recently received data before the data to be decoded.
14. A data transmission device, suitable for a data sending end, characterized in that: include: An acquisition module, used to acquire the current data to be sent and the previous data sent, wherein the previous data sent is the latest data sent; The encoding module is used to perform encoding operations on the current data to be sent according to various encoding rules to obtain various encoded current data to be sent; A judgment module is used to compare and judge the previously sent data and each of the encoded current data to be sent, determine the number of bits of the same bit data, obtain the encoded current data to be sent and the encoding rule corresponding to the maximum number of bits, obtain the encoded current data to be sent and the encoding rule to be sent, and obtain the rule code of the encoding rule to be sent; A sending module, used for sending the current data to be sent and the rule code of the coding rule to be sent according to the sending rule; The sending module is used to send the current data to be sent and the rule code of the coding rule to be sent according to the sending rule, including: When it is determined that the maximum number of bits is less than the bit width, a gating signal is not enabled, and the current data to be sent and the rule code of the coding rule to be sent are sent; when it is determined that the maximum number of bits is equal to the bit width, the current data to be sent is stopped, the previously sent data is kept, and an enabling gating signal and the rule code of the coding rule to be sent are sent; The rule code is obtained by encoding the coding rule corresponding to the maximum number of bits, and the rule code is used to determine the coding rule to obtain the corresponding decoding rule, and the decoding rule is used for decoding.
15. The data transmission device according to claim 14, characterized in that: Also includes: The coding rule determination module is used to obtain an application scenario of data transmission and determine each coding rule from a coding rule library according to the application scenario.
16. The data transmission device according to any one of claims 14 to 15, characterized in that: The encoding rules of the encoding module are a first encoding rule in which the current data to be sent is unchanged and a second encoding rule in which the current data to be sent is inverted, and the encoding module is further adapted to: according to the first encoding rule, keep the current data to be sent unchanged to obtain the first encoded current data to be sent, and according to the second encoding rule, invert the current data to be sent to obtain the second encoded current data to be sent; The determination module is also suitable for: Compare the previously sent data with the first coded data to be sent, obtain the same first bit number of the same bit data, compare the previously sent data with the second coded data to be sent, obtain the same second bit number of the same bit data, determine the maximum number of bits between the first number of bits and the second number of bits, and the coded data to be sent and the coding rule corresponding to the maximum number of bits, obtain the coded data to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent.
17. The data transmission device according to claim 16, characterized in that: The encoding rules of the encoding module also include a third encoding rule for performing an XOR operation on the current data to be sent and the previously sent data, and the encoding module is also suitable for: According to the third coding rule, performing an XOR operation on the current data to be sent and the previously sent data to obtain the third coded current data to be sent; The determination module is also suitable for: Compare the previously sent data with the third coded data to be sent, obtain the same third bit number of the same bit data, determine the maximum number of bits among the first number of bits, the second number of bits and the third number of bits, and the coded data to be sent and the coding rule corresponding to the maximum number of bits, obtain the coded data to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent.
18. The data transmission device according to claim 17, characterized in that: The encoding rules of the encoding module also include a fourth encoding rule of performing an XOR operation on the current data to be sent and the previously sent data, and the encoding module is also suitable for: According to the fourth coding rule, performing an XOR operation on the current data to be sent and the previously sent data to obtain the fourth coded current data to be sent; The determination module is also suitable for: Compare the previously sent data with the fourth coded data to be sent, obtain the same fourth bit number for the same bit data, determine the maximum number of bits among the first number of bits, the second number of bits, the third number of bits and the fourth number of bits, and the coded data to be sent and the coding rule corresponding to the maximum number of bits, obtain the coded data to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent.
19. The data transmission device according to any one of claims 14 to 15, characterized in that: When the encoding rule of the encoding module includes a first encoding rule for keeping the current data to be sent unchanged and a third encoding rule for performing an XOR operation on the current data to be sent and the previously sent data, the encoding module is further adapted to: According to the first coding rule, the current data to be sent is kept unchanged to obtain the first coded current data to be sent, and according to the third coding rule, the current data to be sent and the previously sent data are XORed to obtain the third coded current data to be sent; The determination module is also suitable for: Compare the previously sent data with the first coded data to be sent, obtain the first bit number of the same bit data, compare the previously sent data with the third coded data to be sent, obtain the third bit number of the same bit data, determine the maximum number of bits between the first number of bits and the third number of bits, and the coded data to be sent and the coding rule corresponding to the maximum number of bits, obtain the coded data to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent.
20. The data transmission device according to any one of claims 14 to 15, characterized in that: When the encoding rules of the encoding module include a first encoding rule for keeping the current data to be sent unchanged and a fourth encoding rule for performing an XOR operation on the current data to be sent and the previously sent data, the encoding module is further adapted to: According to the first coding rule, the current data to be sent is kept unchanged to obtain the first coded current data to be sent, and according to the fourth coding rule, the current data to be sent and the previously sent data are XORed to obtain the fourth coded current data to be sent; The determination module is also suitable for: Compare the previously sent data with the first coded data to be sent, obtain the first bit number of the same bit data, compare the previously sent data with the fourth coded data to be sent, obtain the fourth bit number of the same bit data, determine the maximum number of bits between the first number of bits and the fourth number of bits, and the coded data to be sent and the coding rule corresponding to the maximum number of bits, obtain the coded data to be sent and the coding rule to be sent, and obtain the rule code of the coding rule to be sent.
21. A data transmission device, characterized in that: Applicable to the receiving end, including: A data acquisition module, adapted to acquire, according to received information, data to be decoded and a rule encoding of an encoding rule corresponding to the data to be decoded, wherein the encoding rule includes the encoding rule to be sent by the data transmission device according to any one of claims 14 to 20; A decoding rule determination module, adapted to determine a decoding rule for the data to be decoded according to the rule code; A decoding module, adapted to decode the data to be decoded according to the decoding rule to obtain decoded data; The data acquisition module is adapted to acquire the data to be decoded according to the received information, and the steps include: When it is determined that the received information includes an enable signal, obtaining previously received data, wherein the previously received data is the most recently received data; When it is determined that the received information includes a disable signal, obtaining the coded current data to be sent sent by the data transmission device; The rule code is obtained by encoding the coding rule corresponding to the maximum number of bits, and the rule code is used to determine the coding rule to obtain the corresponding decoding rule, and the decoding rule is used for decoding.
22. A data transmission system, characterized in that: include: Sending end; The receiving end, the sending end of the data transmission system can send data to implement the data transmission method as described in any one of claims 1-8, and the receiving end of the data transmission system can receive data to implement the data transmission method as described in any one of claims 9-13.
23. An integrated circuit, characterized in that: A data transmission system comprising a relay and a data transmission system as claimed in claim 22.
Citation Information
Patent Citations
Coding and decoding device capable of reducing bus coupling overturn
CN105760329A