SENSOR INTERFACE THAT PROVIDES A LONG PACKAGE CRC TO IMPROVE FUNCTIONAL SAFETY
A data transmission system comprising an Automotive Sensor Network System (ASNS) connected to a plurality of source locations via a common bus, wherein the ASNS is configured to ascertain the source from which the data-frames and first package checksum are received and based on the ascertainment of the source, appropriate decoding methods are used to calculate the ASNS location data-frame checksums and the ASNS location package checksums. A higher order redundancy check is done over a series of data-frames to detect errors in the reception caused by temporary high interference that may exist in the transmission path.
This Application is a Continuation of U.S. application Ser. No. 14/606,472 filed on Jan. 27, 2015, the contents of which is hereby incorporated by reference in its entirety.
BACKGROUNDSensor interfaces like Sent, SPC, Lin, PSI5 or DSI usually focus on the simplicity and power efficiency of the physical transmission level in order to provide cost efficient solutions. This is typically achieved by sacrificing the transmission speed. In order to keep the Net data rate of the transmission system in an acceptable range, the channel encoding is kept simple by just adding a short redundancy to the net data. For example, 3-bit CRC, 4-bit CRC, etc.
Sensor interfaces rely on the assumption that the Bit Error Rate is low due to the relatively high signaling levels that are used and can thus achieve good fault coverage with a short Cyclic Redundancy Check (CRC) or method code checksum. The performance of these short CRC is good as long as the bit error probability is kept low. However, as soon as the probability of random bit errors increase due to temporary high interference, the short CRC can no longer recognize the fault in the received bits.
SUMMARYA data transmission system is disclosed. In accordance with one example of the invention, the system comprises of a source, one or more data transmission lines and a Communication Control System (CCS) or alternatively an Automotive Sensor Network System (ASNS). The ASNS further comprises of a transceiver, a source component, a data-frame decoder and a package decoder. The source is configured to send data-frames and a first package checksum on the transmission line. The transceiver is configured to transmit requests on the transmission line and to receive the data-frames and a first package checksum from the at least one transmission line. The data-frames include a first data-frame checksum calculated at the source. The source component is configured to generate a determination of the source from which the data-frames are received. The data-frame decoder component is configured to calculate a second data-frame checksum for the at least one data-frame by generating a first decoding method based on the determination of the source and compare the second data-frame checksum with the first data-frame checksum. If the checksums do not match, a transmission error warning is issued and required safety measures are initiated. The package decoder unit is configured to calculate a second package checksum for a plurality of data-frames received from the transceiver by generating a second decoding method based on the first and compare the second package checksum with the first package checksum.
Further, in another embodiment, multiple source locations communicating with a single Automotive Sensor Network System (ASNS) is disclosed. The multiple source locations can either be connected to the ASNS via independent transmission lines or they can be connected to the ASNS via a common bus. In case of multiple source locations connected to the ASNS via independent transmission lines, the operation is similar to the system having a single source location and a single ASNS i.e., each interface acts as an independent ASNS-source location interface. However, when the multiple source locations are connected to the ASNS via a common bus, the ASNS generates a determination of the source location from which the data-frames are received to use the appropriate decoding method to calculate the second data-frame checksum and the second package checksum.
Additionally, a method for receiving data-frames and a first package checksum from at least one source is disclosed. In accordance with a further example, the method comprises generating a determination of the source locations from which the data-frames and the package checksum are received. The method further discloses the initiation of safety measures based on the results of comparison of the first data-frame checksum and the second data-frame checksum; the first package checksum and the second package checksum.
The present invention will now be described with reference to the attached drawing figures, wherein like reference numerals are used to refer to like elements throughout, and wherein the illustrated structures and devices are not necessarily drawn to scale. As utilized herein, terms “component,” “system,” “interface,” “decoder” and the like are intended to refer to a computer-related entity, hardware, software (e.g., in execution), or firmware. For example, a component can be a processor, a process running on a processor, an object, an executable, a program, a storage device, an electronic circuit or a computer with a processing device. By way of illustration, an application running on a server and the server can also be a component. One or more components can reside within a process, and a component can be localized on one computer and/or distributed between two or more computers.
Further, these components can execute from various computer readable storage media having various data structures stored thereon such as with a module, for example. The components can communicate via local and/or remote processes such as in accordance with a signal having one or more data packets (e.g., data from one component interacting with another component in a local system, distributed system, and/or across a network, such as, the Internet, a local area network, a wide area network, or similar network with other systems via the signal).
As another example, a component can be an apparatus with specific functionality provided by mechanical parts operated by electric or electronic circuitry, in which the electric or electronic circuitry can be operated by a software application or a firmware application executed by one or more processors. The one or more processors can be internal or external to the apparatus and can execute at least a part of the software or firmware application. As yet another example, a component can be an apparatus that provides specific functionality through electronic components without mechanical parts; the electronic components can include one or more processors therein to execute software and/or firmware that confer(s), at least in part, the functionality of the electronic components.
Data transmission in some communication systems such as automotive sensor networks use sensor interfaces like Sent, SPC, Lin, PS15, or other interface, for example. A desired data rate is maintained such that the cost efficiency is kept in check. The small bandwidth of the data rate limited sensor network does not allow the protection of each frame alone with a strong redundancy. To maintain the desired data rate, the channel encoding is usually kept simple by adding short redundancy to the net data such as, a parity bit, a 3-bit Cyclic Redundancy Check (CRC), a 5-bit CRC, etc. The short redundancy protection mechanisms are good as long as the bit error probability is very low. However, in the case of a temporary high interference in the transmission lines, the messages that may have been destroyed during transmission would not be recognized by the CRC. Disclosed herein is a protection scheme that adds an additional redundant code to a package (a group of data-frames) on top of the CRC of each data-frame. The code that is used for the protection of the package could be stronger than the data-frame CRC, e.g. a longer CRC of 16-Bit, 32-bit, a Reed Solomon code, a turbo code, or other redundancy code. The combination of the simple protection of single data-frames together with the package protection of a block messages is set up in a way that the safety goal is reached even for bad transmission conditions.
The ASNS 303 comprises a receiver 308, a source component 318, a data-frame decoder 319 and a package decoder 309. The receiver 308 is configured to receive the data-frames from the transmission lines 302. The received data frames are sent to the source component 318. The source component 318 is configured to generate a determination of the source location from which the data-frames are received. The data-frames that contain the first data-frame checksums are forwarded to the data-frame decoder 319. The data-frame decoder 319 is configured to calculate a second data-frame checksum for the data-frames received by generating a first decoding method based on the determination of the source and compare the second data-frame checksum with the first data-frame checksum. The data-frame decoder is configured to output the received sensor messages and notify the fidelity of the transmission based on the results of comparison. The data-frame decoder 319 further sends the data-frames to the package decoder 309. The package decoder 309 is configured to calculate a second package checksum based on the data-frames received. The number of data-frames over which the package decoder 309 calculates the receiver location package checksum is the same as the number of data-frames used to calculate the first package checksum. The package decoder 309 is further configured to compare the first package checksum and the second package checksum. If the checksums are not equal, the package decoder 309 initiates a safety measure.
The ASNS 311 comprises of a transceiver 317, a source component 320, a data-frame decoder 321 and a package decoder 322. The transceiver 317 is configured to receive the data-frames from the transmission lines 312. The received data frames are sent to the source component 320. The source component 320 is configured to generate a determination of the source location from which the data-frames are received. The data-frames which contain the first data-frame checksums are forwarded to the data-frame decoder 321. The data-frame decoder 321 is configured to calculate a second data-frame checksum for the data-frames received by generating a first decoding method based on the determination of the source and compare the second data-frame checksum with the first data-frame checksum. The data-frame decoder is configured to output the received sensor messages and notify the fidelity of the transmission based on the results of comparison. The data-frame decoder 321 further sends the data-frames to the package decoder 322.
The ASNS 311 of
Data transmission systems with multiple source locations and a single ASNS are disclosed.
In response to a ASNS 507 being communicatively connected to multiple source locations 501(a)-501(b) via a common bus 506, the ASNS 507 generates the determination of the source location from which the data-frames and the first package checksums are being received in order to use the appropriate decoding methods for the data-frame checksum and the package checksum. The first data-frame checksum and the first package checksum are either calculated using the same decoding method or using different decoding methods. Therefore, in order to calculate the second data-frame checksums and the second package checksums of the received data-frames at the ASNS 507, appropriate decoding methods need to be used.
In another embodiment, the transceiver generates the determination of the source location from which the data-frames and the first package checksums are received based on the time frame in which the data-frames are received. Every source location is assigned a specific time frame during which it transfers the data-frames and the package checksums on the bus.
A method for generating a determination of the source location and performing a higher order redundancy check to avoid safety critical failure in case of multiple source locations connected to the ASNS is disclosed.
Although the invention has been illustrated and described with respect to one or more implementations, alterations and/or modifications may be made to the illustrated examples without departing from the spirit and scope of the appended claims.
The term “computer readable media” as used herein includes computer readable storage media and communication media. Computer readable storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for tangible storage of information such as computer readable instructions or other data. Data stores or memory disclosed herein are examples of computer readable storage media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, Digital Versatile Disks (DVDs) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium, which can be used to store the desired information.
The term “computer readable media” may also include communication media. Communication media typically embodies computer readable instructions or other data that can be communicated in a “modulated data signal” such as a carrier wave or other transport mechanism and includes any information delivery media. The term “modulated data signal” may include a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
One or more of the operations described can constitute computer readable instructions stored on one or more computer readable media, which if executed by a computing device, will cause the computing device to perform the operations described. The order in which some or all of the operations are described should not be construed as to imply that these operations are necessarily order dependent. Alternative ordering will be appreciated by one skilled in the art having the benefit of this description. Further, it will be understood that not all operations are necessarily present in each embodiment provided herein
Moreover, in particular regard to the various functions performed by the above described components or structures (assemblies, devices, circuits, systems, etc.), the terms (including a reference to a “means”) used to describe such components are intended to correspond, unless otherwise indicated, to any component or structure which performs the specified function of the described component (e.g., that is functionally equivalent), even though not structurally equivalent to the disclosed structure which performs the function in the herein illustrated exemplary implementations of the invention. In addition, while a particular feature of the invention may have been disclosed with respect to only one of several implementations, such feature may be combined with one or more other features of the other implementations as may be desired and advantageous for any given or particular application. Furthermore, to the extent that the terms “including”, “includes”, “having”, “has”, “with”, or variants thereof are used in either the detailed description and the claims, such terms are intended to be inclusive in a manner similar to the term “comprising”.
Claims
1. An automotive sensor network system comprising:
- a transceiver configured to receive at least one data-frame and a first package checksum from a source location, wherein the at least one data-frame includes a first data-frame checksum calculated at the source location;
- a source component configured to generate a determination of the source location from which the at least one data-frame is received;
- a data-frame decoder component configured to calculate a second data-frame checksum for the at least one data-frame based on the determination of the source and compare the second data-frame checksum with the first data-frame checksum; and
- a package decoder component configured to calculate a second package checksum for a plurality of the data-frames received from the transceiver based on the source location and compare the second package checksum with the first package checksum.
2. The automotive sensor network system of claim 1, wherein the package decoder component is further configured to update the second package checksum on receiving at least one data-frame from the transceiver.
3. The automotive sensor network system of claim 1, further comprising a look-up table configured to output a data-frame decoding instruction set and a package decoding instruction set based on the determination of the source location by the transceiver.
4. The automotive sensor network system of claim 3, wherein the look-up table comprises of polynomial checksums or non-polynomial checksums for the data frame decoding and package decoding instructions sets.
5. The automotive sensor network system of claim 4, wherein the data-frame decoder component generates the second data-frame checksum via decoding based on information within the at least one data-frame received at the transceiver.
6. The automotive sensor network system of claim 5, wherein the data-frame decoder component generates the second data-frame checksum via decoding using a cyclic redundancy check (CRC), wherein the decoding used to generate the second data-frame checksum is the data-frame decoding obtained from the look-up table based on the determination of the source location of the at least one received data-frame.
7. The automotive sensor network system of claim 4, wherein the package decoder component generates a second package checksum via decoding based on information within a plurality of data-frames received at the transceiver.
8. The automotive sensor network system of claim 7, wherein the package decoder generates the second package checksum using a cyclic redundancy check (CRC),
- wherein the length of the second package checksum is greater than the length of the second data-frame checksum.
9. The automotive sensor network system of claim 8, wherein the decoding used to generate the second package checksum is the package decoding obtained from the look-up table based on the determination of the source location of the at least one received data-frame.
10. The automotive sensor network system of claim 7, wherein the package decoder component is further configured to output a message based on the results of the comparison within a fault tolerant time of the Automotive Sensor Network System.
11. The automotive sensor network system of claim 3, wherein the package decoding is configured to detect higher order multi-bit faults in comparison to the data-frame decoding.
12. The automotive sensor network system of claim 11, wherein the package decoding is configured to use a checksum which is Low Density Parity Check, Turbo Code or Reed Solomon code.
13. The automotive sensor network system of claim 11, wherein the data-frame decoding is configured to use a checksum which is either Cyclic Redundancy Check or Hamming Code.
14. The automotive sensor network system of claim 1, wherein the transceiver is configured to receive the package checksum from the source location on sending a request to the source location.
15. A method for a communication device comprising:
- receiving at least one data-frame and a first package checksum from a source location, wherein the at least one received data-frame includes a first data-frame checksum calculated at the source location;
- generating a determination of the source location from which the at least one data-frame is received;
- calculating a second data-frame checksum for the at least one received data-frame based on the determination of the source location and comparing the calculated second data-frame checksum with a first data-frame checksum; and
- calculating a second package checksum for a plurality of data-frames received based on the determination of the source location and comparing the calculated second package checksum with the first package checksum.
16. The method of claim 15, wherein generating the determination of the source location based on a time slot during which them data-frame is received.
17. The method of claim 15, wherein generating the determination of the source location based on a plurality of source identification bits attached to the at least one data-frame received.
18. The method of claim 15, further comprising:
- obtaining a data-frame decoding method and a package decoding method from a look-up table based on the determination of the source location.
Type: Application
Filed: Nov 28, 2016
Publication Date: Mar 16, 2017
Inventors: Dirk Hammerschmidt (Villach), Wolfgang Scherr (Villach)
Application Number: 15/361,767