Computer-implemented method for transmitting or receiving data, device for transmitting or receiving data

By introducing a single bit for synchronization in data transmission and coordinating the time base of the receiver and transmitter, the problem of difficulty in achieving reliable, asynchronous, unidirectional, and serial data transmission in the prior art is solved, and the problem of single transmission media is difficult to achieve reliable, asynchronous, unidirectional, and serial data transmission is realized. Low overhead and high efficiency data transmission.

CN119182503APending Publication Date: 2024-12-24ROBERT BOSCH GMBH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410809154.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-06-22
Filing Date
2024-06-21
Publication Date
2024-12-24

AI Technical Summary

Technical Problem

The prior art is difficult to achieve reliable, asynchronous, unidirectional, serial binary coded data transmission through a single transmission medium, and it also requires high time base accuracy of receivers and transmitters, resulting in high data transmission efficiency and overhead.

Method used

By introducing a single bit for synchronization in the bitstream, ensuring that edge transformation occurs at least once per frame, coordinating the time base of the receiver and transmitter, and using bit-by-bit operations to determine the start position of the frame, realizing asynchronous and continuous data transmission. And no initial clock synchronization is required on the receiver side.

Benefits of technology

Asynchronous and continuous data transmission with minimum overhead and maximum data throughput is achieved, reducing the time-base accuracy requirements of receivers and transmitters, and improving the reliability and efficiency of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119182503A_ABST
    Figure CN119182503A_ABST
Patent Text Reader

Abstract

Apparatus and computer-implemented method for receiving data, in which data is received asynchronously and serially in a bitstream via a transmission medium (114), in which the data is received in the form of frames, the frames each comprising a portion of the data, in which the frames each comprise bits (206) for synchronization, in which the frames received successively have alternating values for the bits (206) for synchronization, wherein the start of successive frames is determined according to the value of the bits of the frames, and wherein portions of the data of the successive frames are compiled into data without bits for synchronization. Apparatus and computer-implemented method for transmitting data, in which data is transmitted asynchronously and serially in a bitstream via a transmission medium (114), in which the data is transmitted in the form of frames, the frames each comprising a portion of the data, in which the frames each comprise bits (206) for synchronization, in which the frames transmitted successively have alternating values for the bits (206) for synchronization. An apparatus and a computer-implemented method for transmitting data.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention is based on a computer-implemented method for transmitting or receiving data and a device for transmitting or receiving data. Background Art

[0002] For each specific application case with corresponding requirements on transmission security and speed, data rate or overhead, it is possible to transmit binary-coded data via a transmission channel with a large number of different implementations. Summary of the invention

[0003] A reliable, asynchronous, unidirectional, serial transmission of binary coded data via only one transmission medium is enabled by the method and the device according to the independent claims.

[0004] The advantage is that asynchronous, continuous data transmission can be achieved with minimal overhead and maximum data throughput, in particular by using only a single bit for synchronization. On the receiver side, only the position of the bit used for synchronization in the frame must be known. The number of bits transmitted per frame can then be determined by statistical consideration of the received bit stream. The bit used for synchronization ensures that at least one edge change occurs per frame, which makes it possible for the receiver to coordinate its reception time slot with the transmitter.

[0005] The accuracy requirements on the time base for the transmitter and receiver are therefore lower than with other serial transmission methods. When receiving a sufficiently long bit stream, the duration of the bit can also be determined due to the transmitted bits for synchronization and does not have to be known from the beginning on the receiver side.

[0006] A computer-implemented method for receiving data provides for receiving data asynchronously and serially in a bit stream via a transmission medium, wherein the data are received in frames, each of which includes a portion of the data, wherein each of the frames includes a bit for synchronization, wherein successively received frames have alternating values ​​of the bit for synchronization, wherein the start of successive frames is determined as a function of the value of the bit of the frame, wherein portions of the data of successive frames are compiled into the data without the bit for synchronization. The method has the advantage that asynchronous, continuous data transmission can be achieved with minimal overhead and maximum data throughput using only a single bit for synchronization.

[0007] It can be provided that the first frame, the second frame and the third frame are determined in the bit stream based on consecutive bits, wherein a bitwise "exclusive OR" operation of two mutually assigned bits from the first frame and from the second frame is determined, wherein a bitwise "exclusive OR" operation of two mutually assigned bits from the second frame and from the third frame is determined, and wherein the start position of the first frame is determined based on a bitwise "AND" operation of the bitwise "exclusive OR" operation of two mutually assigned bits of the bitwise "exclusive OR" operation.

[0008] It may be provided that a check is performed to determine whether the position is smaller than a predefined number of bits of a frame, and that the position is redefined if the number of bits of the frame is greater than the position.

[0009] It can be provided that the bits for the first frame are determined starting from this position.

[0010] It may be provided that a portion of the data of a frame is determined without the last bit of the frame in each case.

[0011] It can be provided that the position of the bits in the AND operation is changed in a rolling manner, wherein a minimum value is found which represents the values ​​of the AND operation that are changed in a rolling manner, and wherein the position of the start of the frame is determined from the minimum value in the AND operation according to the position of the least significant bit. For data that do not change in the region of the more significant bits of the frame, the position for the start is found using fewer frames, i.e. with less memory requirement.

[0012] It can be provided that an AND operation is determined for a number of frames for which the AND operation has only one bit with the value 1, wherein the position for the start of the frame is determined as a function of the position of the bit with the value 1 in the AND operation. In the case of a sufficiently large number of frames, all bits of the AND operation have the value zero except one. The position for the start can be determined by counting the positions of the bits with the value 1.

[0013] A computer-implemented method for transmitting data provides for transmitting data asynchronously and serially in a bit stream via a transmission medium, wherein the data is transmitted in the form of frames, each of which includes a portion of the data, wherein the frames each include a bit for synchronization, wherein successively transmitted frames have alternating values ​​of the bit for synchronization.

[0014] It can be provided that the bit used for synchronization is the last bit of the corresponding frame.

[0015] The device for receiving data comprises a receiver designed to receive a bit stream, wherein the device comprises means for compiling data, wherein the device is designed to carry out a method for receiving.

[0016] The device for transmitting data comprises a transmitter configured to transmit a bit stream, wherein the device comprises means for compiling a frame, wherein the device is configured to perform the method for transmitting.

[0017] Corresponding advantages hereto are provided by a computer program which comprises instructions executable by a computer and which, when executed by the computer, cause the method for transmitting and / or for receiving to run. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] Further advantageous embodiments can be learned from the following description and the accompanying drawings. In the accompanying drawings:

[0019] Figure 1 shows a device for transmitting data and a device for receiving data,

[0020] Figure 2 A schematic diagram showing an exemplary bit stream,

[0021] Figure 3 A sequence diagram showing the steps of a method for transmitting data and a method for receiving data,

[0022] Figure 4 A first exemplary association of bits is shown,

[0023] Figure 5 A second exemplary association of bits is shown. DETAILED DESCRIPTION

[0024] exist Figure 1 A device 102 for transmitting data is schematically shown in FIG.

[0025] The device 102 comprises a transmitter 104 which is designed to transmit a bit stream.

[0026] The apparatus 102 comprises means 106 for compiling a frame.

[0027] Device 102 is designed to carry out a method for transmitting data.

[0028] exist Figure 1 A device 108 for receiving data is schematically shown in FIG.

[0029] The device 108 comprises a receiver 110 which is designed to receive a bit stream.

[0030] The device 108 comprises means 112 for compiling data.

[0031] Device 108 is designed to carry out a method for receiving data.

[0032] In this example, the transmitter 104 and the receiver 110 are connected via only one transmission medium 114. The transmission medium may be a data line or a transmission channel, for example for transmitting data by means of light or by means of radio signals.

[0033] exist Figure 2 An example of a bit stream is shown in .

[0034] Figure 2 The time course of an electrical signal 202 is schematically shown, and above it the time course of a logic signal 204 corresponding thereto of a bit stream is shown.

[0035] The bit stream comprises frames, each of which comprises a portion of the data and each of which comprises a bit for synchronization 206. Successive frames have alternating bits for synchronization 206. That is, for example, a frame having a bit 206 for synchronization with the value 1 is followed by a frame having a bit 206 for synchronization with the value 0, which is followed by a frame having a bit 206 for synchronization with the value 1.

[0036] One frame contains k bits, including the bit 206 used for synchronization.

[0037] In this example, one frame includes 14 bits for the data portion and bits 206 additionally for synchronization.

[0038] In this example, the bit stream is transmitted in frames with a constant bit duration. In this example, the frames each include the most significant bit MSB of the data portion first. It can also be provided that the frames each include the least significant bit LSB of the data portion first. The frame can also include the bit 206 for synchronization first in the frame, followed by the other bits.

[0039] exist Figure 3 A sequence diagram with steps of a method for transmitting data and a method for receiving data is shown in FIG.

[0040] The data is transmitted bit by bit in a bit stream. The bit stream is transmitted bit by bit. In this example, the bit stream is transmitted at 10 kBaud. Other baud rates are also possible.

[0041] On the receiver side, a time stamp is determined for each edge transition and the number of like bits of the corresponding polarity is determined from the signal level and the time difference of the electrical signal 202. For example, the polarity here means whether the bit has the value 1 or 0. Like bits have substantially the same electrical signal level.

[0042] In the method for receiving, N frames with k bits including the bit 206 for synchronization are compiled with correct synchronization from the received bit stream of length (N+1)*k. To this end, the correct start of the frame is determined in the method for receiving.

[0043] In step 302 , data in a bit stream is asynchronously and serially transmitted from the transmitter 104 to the receiver 108 via the transmission medium 114 .

[0044] The data are transmitted in frames, each of which includes a portion of the data.

[0045] The frames each contain a bit 206 for synchronization.

[0046] In this example, the bit 206 used for synchronization is the last bit of the corresponding frame.

[0047] Successively received frames have alternating values of bit 206 for synchronization.

[0048] In step 304, the start of successive frames is determined based on the values of the bits of the frames.

[0049] In this example, the frames are determined iteratively.

[0050] In this example, a bitstream of length k*(N + 1) is formed by the timestamps of the edge transitions, and the variable MinVal is set to its maximum possible value. The maximum possible value of the variable MinVal is the maximum possible value that the bitwise "AND" operation of the bitwise "XOR" operation of two successive frames can have.

[0051] For the first iteration, the variable p for the starting position is set to the value p = 1, and the variable SyncPos for the starting synchronization position is set to the value SyncPos = 0.

[0052] In the iteration, starting respectively at position p, N frames with k data bits including bit 206 for synchronization are formed from the bitstream.

[0053] For two successive frames, the bitwise "XOR" operation of the corresponding bits in the frames is determined:

[0054] X(i) = F(i) XOR F(i + 1), i = 1, …, N

[0055] where F(i) represents the frame and i represents its position in the order of the N frames.

[0056] For the frames, the "AND" operation of the bitwise "XOR" operation of the bits of the frames is determined:

[0057] A = X(1) AND X(2), …, X(N - 2) AND X(N - 1)

[0058] If the value of A is less than the value of the variable MinVal and the value of A is odd, then set MinVal = A and SyncPos = p + 1.

[0059] Subsequently set p = p + 1 and check whether p < k.

[0060] If p < k, then starting from the new position p, the bitstream is formed in another iteration.

[0061] Otherwise, execute step 306.

[0062] In step 306, the parts of the data of successive frames are compiled into data without the corresponding bit 206 for synchronization.

[0063] For example, a portion of the data of a frame is determined in each case without the last bit of the frame. For example, the last bit is eliminated by shifting the bits of the frame to the right by one bit.

[0064] In this example, each portion of data i starts with the MSB first at position SyncPos+i*k.

[0065] The bit clock can be regenerated from the signal. In this example, the bit 206 used for synchronization causes an edge transition of all k bits. The requirements for the accuracy of the bit duration on the transmitting and receiving sides depend only on the value k used. In the worst case, i.e. when the value 0 is transmitted in the frame, the time deviation of all bits is therefore allowed to be a maximum of |Δt|≤tBit / 2(k-1).

[0066] In the case of a synchronization found, the correctness of the synchronization position SyncPos is checked, for example by checking the presence of alternating polarity of the bit 206 used for synchronization.

[0067] For example, a sensor signal, such as the rotational speed of an electric motor or a wheel, is transmitted. For example, the sensor signal is transmitted every 1.5 ms. On the transmitter side, only one port pin can be switched every 100 μs for this purpose. For example, the transmission can take place in a vehicle from a sensor to a control unit.

[0068] Assuming that the data does not change in the more significant bits of the frame, the starting position is determined as follows:

[0069] The bit positions in the AND operation are changed in a rolling manner until the minimum value representing the value of the AND operation that is changed in a rolling manner is found. Figure 4 An exemplary result 402 of an AND operation is shown in FIG. 4 , wherein a position 404 in the AND operation is unknown, which corresponds to the position of the bit 206 used for synchronization in the AND operation. Figure 4 An exemplary minimum value 406 is shown in FIG. 4 , wherein the bit 206 used for synchronization is arranged at the position of the least significant bit, ie, in this example, at the far right. Position

[0070] The position for the start of the frame is determined from the position 404 of the least significant bit in the AND operation 402. In this example, it is the position to the right next to the position 404 of the bit 206 used for synchronization.

[0071] As long as a sufficiently large number of frames is available, an AND operation is determined for a number of frames for which the AND operation has only one bit with the value 1. Figure 5 An exemplary AND operation 502 is shown in FIG. The position for the start of the frame is determined by the position 504 of the bit with value 1 in the AND operation. In this example, it is the position to the right next to the position 504 of the bit with value 1.

Claims

1. A computer-implemented method for receiving data, characterized in that Data are received (302) asynchronously and serially in a bit stream via a transmission medium (114), wherein the data are received in frames, each of which comprises a portion of the data, wherein each of the frames comprises a bit (206) for synchronization, wherein successively received frames have alternating values ​​of the bit (206) for synchronization, wherein the start of successive frames is determined (304) depending on the value of the bit of the frame, and wherein portions of the data of consecutive frames are compiled (306) into the data without the bit for synchronization.

2. The method according to claim 1, characterized in that In the bit stream, a first frame, a second frame and a third frame are determined based on consecutive bits, wherein a bitwise exclusive OR operation of two mutually assigned bits from the first frame and from the second frame is determined, wherein a bitwise exclusive OR operation of two mutually assigned bits from the second frame and from the third frame is determined, and wherein the start position of the first frame is determined based on a bitwise AND operation of the bitwise exclusive OR operation of two mutually assigned bits of the bitwise exclusive OR operation.

3. The method according to claim 2, characterized in that A check is performed to determine whether the position is smaller than a predefined number of bits of a frame, and if the number of bits of the frame is greater than the position, the position is redefined.

4. The method according to claim 2 or 3, characterized in that: The bits for the first frame are determined starting at the position.

5. The method according to any one of claims 1 to 4, characterized in that The portion of the data of the frame is determined without the last bit of the frame in each case.

6. The method according to any one of claims 1 to 5, characterized in that The position of the bits in the AND operation is changed in a rolling manner, wherein a minimum value (406) representing the values ​​of the AND operation that are changed in a rolling manner is found, and wherein the position of the start of the frame is determined from the minimum value (406) in the AND operation (402) according to the position (404) of the least significant bit.

7. The method according to any one of claims 1 to 5, characterized in that The AND operation is determined for a number of frames for which the AND operation has only one bit with the value 1, wherein the position for the start of a frame is determined depending on the position of the bit with the value 1 in the AND operation.

8. A computer-implemented method for transmitting data, characterized in that Data are transmitted (302) asynchronously and serially in a bit stream via a transmission medium (114), wherein the data are transmitted in the form of frames, each of which comprises a portion of the data, wherein the frames each comprise a bit (206) for synchronization, wherein successively transmitted frames have alternating values ​​of the bit (206) for synchronization.

9. The method according to claim 8, characterized in that The bit used for synchronization is the last bit of the corresponding frame.

10. A device (108) for receiving data, characterized in that The device (108) comprises a receiver (110) designed to receive a bit stream, wherein the device (108) comprises means (112) for compiling data, wherein the device (108) is designed to perform the method according to any one of claims 1 to 7.

11. A device (102) for transmitting data, characterized in that The device (102) comprises a transmitter (104) configured to transmit a bit stream, wherein the device (102) comprises means (106) for compiling a frame, wherein the device (102) is configured to perform the method according to any one of claims 8 or 9.

12. A computer program, characterized in that The computer program comprises instructions executable by a computer, and when the instructions are executed by a computer, the method according to any one of claims 1 to 7 and / or the method according to claim 8 or 9 is executed.