US20170077952A1 - Sensor interface that provides a long package crc to improve functional safety - Google Patents

Sensor interface that provides a long package crc to improve functional safety Download PDF

Info

Publication number
US20170077952A1
US20170077952A1 US15/361,767 US201615361767A US2017077952A1 US 20170077952 A1 US20170077952 A1 US 20170077952A1 US 201615361767 A US201615361767 A US 201615361767A US 2017077952 A1 US2017077952 A1 US 2017077952A1
Authority
US
United States
Prior art keywords
data
frame
package
checksum
source location
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US15/361,767
Inventor
Dirk Hammerschmidt
Wolfgang Scherr
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies AG
Original Assignee
Infineon Technologies AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Infineon Technologies AG filed Critical Infineon Technologies AG
Priority to US15/361,767 priority Critical patent/US20170077952A1/en
Publication of US20170077952A1 publication Critical patent/US20170077952A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • H03M13/095Error detection codes other than CRC and single parity bit codes
    • H03M13/096Checksums
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/22Safety or indicating devices for abnormal conditions
    • F02D41/222Safety or indicating devices for abnormal conditions relating to the failure of sensors or parameter detection devices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • H03M13/296Particular turbo code structure
    • H03M13/2966Turbo codes concatenated with another code, e.g. an outer block code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/611Specific encoding aspects, e.g. encoding by means of decoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0064Concatenated codes
    • H04L1/0065Serial concatenated codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • F02D41/28Interface circuits
    • F02D2041/281Interface circuits between sensors and control unit
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D2400/00Control systems adapted for specific engine types; Special features of engine control systems not otherwise provided for; Power supply, connectors or cabling for engine control systems
    • F02D2400/08Redundant elements, e.g. two sensors for measuring the same parameter
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25157Checksum CRC
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1515Reed-Solomon codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/19Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Definitions

  • Sensor 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.
  • 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.
  • a data transmission 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.
  • multiple source locations communicating with a single Automotive Sensor Network System can either be connected to the ASNS via independent transmission lines or they can be connected to the ASNS via a common bus.
  • 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.
  • the ASNS 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.
  • a method for receiving data-frames and a first package checksum from at least one source 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.
  • FIG. 1 illustrates a block diagram of a data communication between a source location and an Automotive Sensor Network System.
  • FIG. 2 illustrates a data-frame, a package and a data-frame with sensor ID.
  • FIGS. 3A-3B illustrate descriptive block diagrams of a data communication system.
  • FIGS. 4A-4B illustrate different ways of data communication between multiple source locations and an Automotive Sensor Network System.
  • FIG. 5A illustrates a block diagram of a source location configured to send data-frames onto the transmission line.
  • FIG. 5B illustrates a block diagram of a plurality of source locations connected to an Automotive Sensor Network System via a common bus.
  • FIG. 6 illustrates a timing diagram wherein time slots are allotted to each source location during which the data-frames are to be sent on to the data transmission line/lines.
  • FIG. 7A illustrates a block diagram of a source location configured to send data-frames onto the transmission line at the allotted time.
  • FIG. 7B illustrates a block diagram of a plurality of such source locations connected to the Automotive Sensor Network System via a common bus.
  • FIG. 8 illustrates a flow diagram of a method for a functionally safe verification of the received data-frames from one or more sensors.
  • 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.
  • 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.
  • 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).
  • 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).
  • 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.
  • 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.
  • 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.
  • CRC Cyclic Redundancy Check
  • the short redundancy protection mechanisms are good as long as the bit error probability is very low.
  • the messages that may have been destroyed during transmission would not be recognized by the CRC.
  • 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.
  • FIG. 1 is a block diagram that illustrates a data transmission system 100 .
  • the source location 101 is configured to send one or more data-frames and a first package checksum on the transmission lines 103 . Every data-frame has its own set of redundancy bits, which is termed as a data-frame checksum. A group of multiple data-frames along with the additional higher order redundancy bits is termed as a package.
  • the Automotive Sensor Network System (ASNS) 102 is configured to receive the data-frames and the first package checksum from the transmission lines.
  • the ASNS is further configured to calculate a second data-frame checksum for each of the received data-frames and compare the second data-frame checksum with the first data-frame checksum.
  • the ASNS is further configured to calculate a second package checksum for the plurality of data-frames received and compare the calculated second package checksum with the first package checksum. If the checksums are found to be different, the ASNS issues a warning indicating the unfaithful data transmission over the transmission lines.
  • FIG. 2 discloses the contents of a data-frame and a package.
  • a data-frame 200 contains a series of data bits 201 in addition to the redundancy bits 202 required for the protection of data-frame. These redundancy bits 202 can be of a smaller order in order to keep an efficient net data rate.
  • the package 210 contains a group of data-frames 203 (each data-frame has its own redundancy bits as described above) in addition to the higher order redundancy bits 204 for the protection of the package 210 .
  • the data-frame 220 can also contain a series of bits which represent the sensor ID 205 in addition to the data bits 201 and the redundancy bits 202 .
  • FIG. 3A illustrates a data transmission system 300 , which comprises of a source location 301 , transmission lines 302 and an Automotive Sensor Network System (ASNS) 303 .
  • the source location 301 further contains a sensor 304 , a transmitter 305 , a package encoder 306 and a package counter 307 .
  • the sensor 304 sends the data bits to the transmitter 305 .
  • the transmitter 305 calculates the first data-frame checksum for each set of data bits from the sensor 304 and transmits the data-frame, which now includes the data bits and the calculated first data-frame checksum on the transmission line 302 .
  • the transmitter 305 also sends the data-frame to the package encoder 306 .
  • the package encoder 306 is configured to calculate the first package checksum for a predetermined number of data-frames.
  • the package counter 307 counts the number of data-frames that enter the package encoder 306 . Once the count in the package counter 307 reaches the predetermined number, the calculated first package checksum is sent to the transmitter 305 , which further transmits the first package checksum on to the transmission line 302 .
  • 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.
  • FIG. 3B discloses another embodiment of a data transmission system 320 which has a source location 310 , transmission lines 312 and an Automotive Sensor Network System (ASNS) 311 .
  • the source location 310 further comprises of a sensor 314 , a transceiver 315 and a package encoder 316 .
  • the sensor 314 sends the data bits to the transceiver 315 .
  • the transceiver 315 calculates the first data-frame checksum for each set of data bits from the sensor 314 and transmits the data-frame which now includes the data bits and the calculated first data-frame checksum on the transmission line 312 .
  • the transceiver 315 also sends the data-frame to the package encoder 316 .
  • the package encoder 316 is configured to calculate the first package checksum for a plurality of data-frames.
  • 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 FIG. 3B sends a request to the source location 310 via the transmission lines 312 to respond with the first package checksum.
  • the package encoder 316 sends the calculated first package checksum to the transceiver 315 .
  • the transceiver 315 responds to the ASNS 311 with the first package checksum.
  • the package decoder 322 is configured to calculate the ASNS location package checksum based on the data-frames received. The number of data-frames over which the package decoder 322 calculates the second package checksum is the same as the number of data-frames used to calculate the first package checksum.
  • the package decoder 321 is further configured to compare the first package checksum and the calculated second package checksum. If the checksums are not equal, then the package decoder 322 initiates a safety measure.
  • FIG. 4A and FIG. 4B illustrate two ways of how multiple source locations can be connected to the Automotive Sensor Network System (ASNS) 402 .
  • ASNS Automotive Sensor Network System
  • FIG. 4A the multiple source locations 401 ( a )- 401 ( n ) are connected to the ASNS 402 via independent transmission lines 403 .
  • the ASNS 402 thus treats each source location as an independent source location and the operation of the sensor—ASNS interface is as appreciated above in the paragraphs [0018]-[0022].
  • FIG. 4B discloses an embodiment wherein the source locations 411 ( a )- 411 ( n ) are connected to the ASNS 412 via a common bus 413 .
  • the source locations 411 ( a )- 411 ( n ) transmit respective data-frames (which comprises of data bits and a first data-frame checksum) and respective first package checksums onto the common bus 413 .
  • the ASNS 412 receives the transmitted data-frames and first package checksums from the common bus 413 .
  • the working of an ASNS when connected to multiple sensors is appreciated below.
  • the ASNS 507 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.
  • FIG. 5A-5B illustrate an embodiment wherein the ASNS 507 generates the determination of the source component from which the data-frames are received by checking the sensor ID of each data-frame and using the respective decoding method.
  • FIG. 5A discloses a source location 500 which has a sensor 501 , a transceiver 502 , a package encoder 503 , a package counter 504 and data transmission lines 505 .
  • the transceiver 502 calculates the first data-frame checksum for each set of data bits from the sensor 501 and transmits the data-frame (which now includes the data bits and the calculated first data-frame checksum) and the sensor ID on the transmission lines 505 .
  • the transceiver 502 also sends the data-frame to the package encoder 503 .
  • the package encoder 503 is configured to calculate the first package checksum for a predetermined number of data-frames.
  • the package counter 504 counts the number of data-frames that enter the package encoder 503 . Once the count in the package counter 504 reaches the predetermined number, the calculated first package checksum is sent to the transceiver 502 which further transmits the first package checksum on the transmission line 505 .
  • FIG. 5B discloses the interface of the multiple source locations 500 ( a )- 500 ( n ) with ASNS 507 .
  • the source locations 500 ( a )- 500 ( n ) are connected to the common bus 506 via the transmission lines 505 ( a )- 505 ( n ) respectively.
  • the ASNS 507 comprises of a transceiver 508 , a source component 512 a look up table 509 , a data-frame decoder 510 and a package decoder 511 .
  • the bus 506 is connected to the transceiver 508 .
  • the data-frames and the first package checksums on the bus are from a plurality of source locations 500 ( a )- 500 ( n ) connected to the bus 506 .
  • the transceiver 508 is configured to receive the data-frames and the first package checksums from the bus 506 .
  • the transceiver 508 further sends the sensor ID to the look up table 509 .
  • the source component 512 generates the determination of the source location from which the data-frames and the first package checksums were received by checking the sensor ID.
  • the look-up table 509 contains the data-frame checksum decoding methods and the package checksum decoding methods for every sensor connected to the ASNS 507 .
  • the look up table 509 is configured to receive the sensor ID from the transceiver 508 and output the data-frame checksum decoding method and the package checksum decoding method based on the sensor ID obtained from the transceiver 508 .
  • the data-frame decoder 510 is configured to receive the data-frames from the transceiver 508 and calculate a second data-frame checksum for the data-frames received by using the data-frame decoding method obtained from the look-up table 509 .
  • the data-frame decoder 510 is further configured to compare the calculated second data-frame checksum with the first data-frame checksum.
  • the data-frame decoder 510 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 510 further sends the data-frames to the package decoder 511 .
  • the package decoder 511 is configured to calculate the second package checksum based on the data-frames received using the appropriate package decoding method from the look up table 509 .
  • the number of data-frames over which the package decoder 511 calculates the receiver location package checksum is the same as the number of data-frames used to calculate the respective first package checksum. If the checksums are not equal, the package decoder 511 initiates a safety measure.
  • 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.
  • FIG. 6 gives an example of how multiple source locations 611 ( a )- 611 ( n ) are assigned different time slots 601 ( a )- 601 ( n ) to transmit data to the bus. Once the source location 611 ( n ) completes its transfer during the time slot 601 ( n ), the sensor 611 ( a ) transmits data to the bus during the time slot 602 ( a ) and so on. It should be noted that the time slots allotted to the sensors might not be in a cyclic manner as it might not be necessary to read from every sensor in regular intervals.
  • FIG. 7A-7B illustrate another embodiment wherein the ASNS 720 is connected to multiple source locations 700 ( a )- 700 ( n ) via a common bus 707 , wherein the source component 713 generates a determination of the source location based on the time slot in which the ASNS 720 receives the data-frames and the first package checksums.
  • FIG. 7 a shows a source location 700 which has a sensor 701 , a buffer 702 , a package encoder 703 , a package counter 704 , a transceiver 705 and data transmission lines 706 .
  • the buffer 702 calculates the first data-frame checksum for each set of data bits from the sensor 701 and sends the data-frame (which now includes the data bits and the calculated first data-frame checksum) and the sensor ID to the transceiver 705 .
  • the buffer 702 also sends the data-frame to the package encoder 703 .
  • the package encoder 703 is configured to calculate the first package checksum for a predetermined number of data-frames.
  • the package counter 704 counts the number of data-frames that enter the package encoder 703 . Once the count in the package counter 704 reaches the predetermined number, the calculated first package checksum is sent to the buffer 702 which further sends the first package checksum to the transceiver 705 .
  • the transceiver 705 further transmits the data-frames and the first package checksum on to the data transmission lines 706 during the assigned time slot.
  • FIG. 7B shows the interface of the multiple source locations 700 ( a )- 700 ( n ) with ASNS 720 .
  • the source locations 700 ( a )- 700 ( n ) are connected to the common bus 707 via the transmission lines 706 ( a )- 706 ( n ) respectively.
  • the ASNS 720 further comprises of a transceiver 708 , a source component 713 , a timing generator 709 , a data-frame decoder 711 , a look up table 710 and a package decoder 712 .
  • the bus 707 is connected to the transceiver 708 .
  • the transceiver 708 is configured to receive the data-frames and the first package checksums from the bus 707 .
  • the data-frames and the first package checksums on the bus are from a plurality of source locations 700 ( a )- 700 ( n ) connected to the bus 707 .
  • the source component 713 generates the determination of the source location from which the data-frames and the first package checksums were received by checking for the time slots during which the data is being received.
  • the timing for the transceiver 708 is provided by the timing generator 709 .
  • the source component 713 further sends the timing information to the look up table 710 .
  • the look up table 710 contains the data-frame checksum decoding methods and the package checksum decoding methods for every source location connected to the ASNS 720 .
  • the look up table 710 is configured to receive the timing information from the source component 713 and output the data-frame checksum decoding method and the package checksum decoding method based on the time slot during which the data-frames are being received.
  • the data-frame decoder 711 is configured to receive the data-frames from the transceiver 708 and calculate a second data-frame checksum for the data-frames received by using the data-frame decoding method obtained from the look-up table 710 .
  • the data-frame decoder 711 is further configured to compare the calculated 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 711 further sends the data-frames to the package decoder 712 .
  • the package decoder 712 is configured to calculate a second package checksum based on the data-frames received using the appropriate package decoding method from the look up table 710 .
  • the number of data-frames over which the package decoder 712 calculates the receiver location package checksum is the same as the number of data-frames used to calculate the respective first package checksum. If the checksums are not equal, the package decoder 712 initiates a safety measure.
  • FIG. 8 illustrates a flow diagram of an ASNS which generates a determination of the source location and performs a CRC check in multiple levels.
  • An example in the field of automobiles is discussed. There are multiple sensors in an automobile such as temperature sensor, tire pressure sensor, accelerometer and so on. These sensors which are placed at different locations of the automobile communicate with the ASNS via a common bus. These sensors send their data-frames and the first package checksum to the ASNS through the common bus.
  • the ASNS generates the determination of the source location from which the data-frames are being received and uses the appropriate method required to calculate the ASNS location data-frame checksum and the ASNS location package checksum for the corresponding sensor and as discussed before, compares these calculated checksums with the corresponding first data-frame checksum and the first package checksum. Based on the results of comparison, the ASNS outputs whether there was faithful data transmission from the sensors to the ASNS.
  • Computer readable media 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.
  • 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.
  • 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

Abstract

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.

Description

    REFERENCE TO RELATED APPLICATION
  • 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.
  • BACKGROUND
  • Sensor 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.
  • SUMMARY
  • A 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.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 illustrates a block diagram of a data communication between a source location and an Automotive Sensor Network System.
  • FIG. 2 illustrates a data-frame, a package and a data-frame with sensor ID.
  • FIGS. 3A-3B illustrate descriptive block diagrams of a data communication system.
  • FIGS. 4A-4B illustrate different ways of data communication between multiple source locations and an Automotive Sensor Network System.
  • FIG. 5A illustrates a block diagram of a source location configured to send data-frames onto the transmission line.
  • FIG. 5B illustrates a block diagram of a plurality of source locations connected to an Automotive Sensor Network System via a common bus.
  • FIG. 6 illustrates a timing diagram wherein time slots are allotted to each source location during which the data-frames are to be sent on to the data transmission line/lines.
  • FIG. 7A illustrates a block diagram of a source location configured to send data-frames onto the transmission line at the allotted time.
  • FIG. 7B illustrates a block diagram of a plurality of such source locations connected to the Automotive Sensor Network System via a common bus.
  • FIG. 8 illustrates a flow diagram of a method for a functionally safe verification of the received data-frames from one or more sensors.
  • DETAILED DESCRIPTION
  • 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.
  • FIG. 1 is a block diagram that illustrates a data transmission system 100. The source location 101 is configured to send one or more data-frames and a first package checksum on the transmission lines 103. Every data-frame has its own set of redundancy bits, which is termed as a data-frame checksum. A group of multiple data-frames along with the additional higher order redundancy bits is termed as a package. The Automotive Sensor Network System (ASNS) 102 is configured to receive the data-frames and the first package checksum from the transmission lines. The ASNS is further configured to calculate a second data-frame checksum for each of the received data-frames and compare the second data-frame checksum with the first data-frame checksum. If the checksums are found to be different, the ASNS issues a warning of an unfaithful or a flawed data transmission over the transmission lines. However, the possibility of temporary high interference in the transmission lines makes it desirable to verify if the received message is indeed a transmission error or a correct message. The ASNS is further configured to calculate a second package checksum for the plurality of data-frames received and compare the calculated second package checksum with the first package checksum. If the checksums are found to be different, the ASNS issues a warning indicating the unfaithful data transmission over the transmission lines.
  • FIG. 2 discloses the contents of a data-frame and a package. A data-frame 200 contains a series of data bits 201 in addition to the redundancy bits 202 required for the protection of data-frame. These redundancy bits 202 can be of a smaller order in order to keep an efficient net data rate. The package 210 contains a group of data-frames 203 (each data-frame has its own redundancy bits as described above) in addition to the higher order redundancy bits 204 for the protection of the package 210. In some cases, the data-frame 220 can also contain a series of bits which represent the sensor ID 205 in addition to the data bits 201 and the redundancy bits 202.
  • FIG. 3A illustrates a data transmission system 300, which comprises of a source location 301, transmission lines 302 and an Automotive Sensor Network System (ASNS) 303. The source location 301 further contains a sensor 304, a transmitter 305, a package encoder 306 and a package counter 307. The sensor 304 sends the data bits to the transmitter 305. The transmitter 305 calculates the first data-frame checksum for each set of data bits from the sensor 304 and transmits the data-frame, which now includes the data bits and the calculated first data-frame checksum on the transmission line 302. The transmitter 305 also sends the data-frame to the package encoder 306. The package encoder 306 is configured to calculate the first package checksum for a predetermined number of data-frames. The package counter 307 counts the number of data-frames that enter the package encoder 306. Once the count in the package counter 307 reaches the predetermined number, the calculated first package checksum is sent to the transmitter 305, which further transmits the first package checksum on to the transmission line 302.
  • 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.
  • FIG. 3B discloses another embodiment of a data transmission system 320 which has a source location 310, transmission lines 312 and an Automotive Sensor Network System (ASNS) 311. The source location 310 further comprises of a sensor 314, a transceiver 315 and a package encoder 316. The sensor 314 sends the data bits to the transceiver 315. The transceiver 315 calculates the first data-frame checksum for each set of data bits from the sensor 314 and transmits the data-frame which now includes the data bits and the calculated first data-frame checksum on the transmission line 312. The transceiver 315 also sends the data-frame to the package encoder 316. The package encoder 316 is configured to calculate the first package checksum for a plurality of data-frames.
  • 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 FIG. 3B sends a request to the source location 310 via the transmission lines 312 to respond with the first package checksum. When the request is received by the source location 310, the package encoder 316 sends the calculated first package checksum to the transceiver 315. The transceiver 315 responds to the ASNS 311 with the first package checksum. The package decoder 322 is configured to calculate the ASNS location package checksum based on the data-frames received. The number of data-frames over which the package decoder 322 calculates the second package checksum is the same as the number of data-frames used to calculate the first package checksum. The package decoder 321 is further configured to compare the first package checksum and the calculated second package checksum. If the checksums are not equal, then the package decoder 322 initiates a safety measure.
  • Data transmission systems with multiple source locations and a single ASNS are disclosed. FIG. 4A and FIG. 4B illustrate two ways of how multiple source locations can be connected to the Automotive Sensor Network System (ASNS) 402. In FIG. 4A the multiple source locations 401(a)-401(n) are connected to the ASNS 402 via independent transmission lines 403. The ASNS 402 thus treats each source location as an independent source location and the operation of the sensor—ASNS interface is as appreciated above in the paragraphs [0018]-[0022].
  • FIG. 4B discloses an embodiment wherein the source locations 411(a)-411(n) are connected to the ASNS 412 via a common bus 413. The source locations 411(a)-411(n) transmit respective data-frames (which comprises of data bits and a first data-frame checksum) and respective first package checksums onto the common bus 413. The ASNS 412 receives the transmitted data-frames and first package checksums from the common bus 413. The working of an ASNS when connected to multiple sensors is appreciated below.
  • 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. FIG. 5A-5B illustrate an embodiment wherein the ASNS 507 generates the determination of the source component from which the data-frames are received by checking the sensor ID of each data-frame and using the respective decoding method.
  • FIG. 5A discloses a source location 500 which has a sensor 501, a transceiver 502, a package encoder 503, a package counter 504 and data transmission lines 505. The transceiver 502 calculates the first data-frame checksum for each set of data bits from the sensor 501 and transmits the data-frame (which now includes the data bits and the calculated first data-frame checksum) and the sensor ID on the transmission lines 505. The transceiver 502 also sends the data-frame to the package encoder 503. The package encoder 503 is configured to calculate the first package checksum for a predetermined number of data-frames. The package counter 504 counts the number of data-frames that enter the package encoder 503. Once the count in the package counter 504 reaches the predetermined number, the calculated first package checksum is sent to the transceiver 502 which further transmits the first package checksum on the transmission line 505.
  • FIG. 5B discloses the interface of the multiple source locations 500(a)-500(n) with ASNS 507. The source locations 500(a)-500(n) are connected to the common bus 506 via the transmission lines 505(a)-505(n) respectively. The ASNS 507 comprises of a transceiver 508, a source component 512 a look up table 509, a data-frame decoder 510 and a package decoder 511. The bus 506 is connected to the transceiver 508. The data-frames and the first package checksums on the bus are from a plurality of source locations 500(a)-500(n) connected to the bus 506. The transceiver 508 is configured to receive the data-frames and the first package checksums from the bus 506. The transceiver 508 further sends the sensor ID to the look up table 509. The source component 512 generates the determination of the source location from which the data-frames and the first package checksums were received by checking the sensor ID. The look-up table 509 contains the data-frame checksum decoding methods and the package checksum decoding methods for every sensor connected to the ASNS 507. The look up table 509 is configured to receive the sensor ID from the transceiver 508 and output the data-frame checksum decoding method and the package checksum decoding method based on the sensor ID obtained from the transceiver 508. The data-frame decoder 510 is configured to receive the data-frames from the transceiver 508 and calculate a second data-frame checksum for the data-frames received by using the data-frame decoding method obtained from the look-up table 509. The data-frame decoder 510 is further configured to compare the calculated second data-frame checksum with the first data-frame checksum. The data-frame decoder 510 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 510 further sends the data-frames to the package decoder 511. The package decoder 511 is configured to calculate the second package checksum based on the data-frames received using the appropriate package decoding method from the look up table 509. The number of data-frames over which the package decoder 511 calculates the receiver location package checksum is the same as the number of data-frames used to calculate the respective first package checksum. If the checksums are not equal, the package decoder 511 initiates a safety measure.
  • 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. FIG. 6 gives an example of how multiple source locations 611(a)-611(n) are assigned different time slots 601(a)-601(n) to transmit data to the bus. Once the source location 611(n) completes its transfer during the time slot 601(n), the sensor 611(a) transmits data to the bus during the time slot 602(a) and so on. It should be noted that the time slots allotted to the sensors might not be in a cyclic manner as it might not be necessary to read from every sensor in regular intervals.
  • FIG. 7A-7B illustrate another embodiment wherein the ASNS 720 is connected to multiple source locations 700(a)-700(n) via a common bus 707, wherein the source component 713 generates a determination of the source location based on the time slot in which the ASNS 720 receives the data-frames and the first package checksums. FIG. 7a shows a source location 700 which has a sensor 701, a buffer 702, a package encoder 703, a package counter 704, a transceiver 705 and data transmission lines 706. The buffer 702 calculates the first data-frame checksum for each set of data bits from the sensor 701 and sends the data-frame (which now includes the data bits and the calculated first data-frame checksum) and the sensor ID to the transceiver 705. The buffer 702 also sends the data-frame to the package encoder 703. The package encoder 703 is configured to calculate the first package checksum for a predetermined number of data-frames. The package counter 704 counts the number of data-frames that enter the package encoder 703. Once the count in the package counter 704 reaches the predetermined number, the calculated first package checksum is sent to the buffer 702 which further sends the first package checksum to the transceiver 705. The transceiver 705 further transmits the data-frames and the first package checksum on to the data transmission lines 706 during the assigned time slot.
  • FIG. 7B shows the interface of the multiple source locations 700(a)-700(n) with ASNS 720. The source locations 700(a)-700(n) are connected to the common bus 707 via the transmission lines 706(a)-706(n) respectively. The ASNS 720 further comprises of a transceiver 708, a source component 713, a timing generator 709, a data-frame decoder 711, a look up table 710 and a package decoder 712. The bus 707 is connected to the transceiver 708. The transceiver 708 is configured to receive the data-frames and the first package checksums from the bus 707. The data-frames and the first package checksums on the bus are from a plurality of source locations 700(a)-700(n) connected to the bus 707. The source component 713 generates the determination of the source location from which the data-frames and the first package checksums were received by checking for the time slots during which the data is being received. The timing for the transceiver 708 is provided by the timing generator 709. The source component 713 further sends the timing information to the look up table 710. The look up table 710 contains the data-frame checksum decoding methods and the package checksum decoding methods for every source location connected to the ASNS 720. The look up table 710 is configured to receive the timing information from the source component 713 and output the data-frame checksum decoding method and the package checksum decoding method based on the time slot during which the data-frames are being received. The data-frame decoder 711 is configured to receive the data-frames from the transceiver 708 and calculate a second data-frame checksum for the data-frames received by using the data-frame decoding method obtained from the look-up table 710. The data-frame decoder 711 is further configured to compare the calculated 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 711 further sends the data-frames to the package decoder 712. The package decoder 712 is configured to calculate a second package checksum based on the data-frames received using the appropriate package decoding method from the look up table 710. The number of data-frames over which the package decoder 712 calculates the receiver location package checksum is the same as the number of data-frames used to calculate the respective first package checksum. If the checksums are not equal, the package decoder 712 initiates a safety measure.
  • 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. FIG. 8 illustrates a flow diagram of an ASNS which generates a determination of the source location and performs a CRC check in multiple levels. An example in the field of automobiles is discussed. There are multiple sensors in an automobile such as temperature sensor, tire pressure sensor, accelerometer and so on. These sensors which are placed at different locations of the automobile communicate with the ASNS via a common bus. These sensors send their data-frames and the first package checksum to the ASNS through the common bus. The ASNS generates the determination of the source location from which the data-frames are being received and uses the appropriate method required to calculate the ASNS location data-frame checksum and the ASNS location package checksum for the corresponding sensor and as discussed before, compares these calculated checksums with the corresponding first data-frame checksum and the first package checksum. Based on the results of comparison, the ASNS outputs whether there was faithful data transmission from the sensors to the ASNS.
  • 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 (18)

What is claimed is:
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.
US15/361,767 2015-01-27 2016-11-28 Sensor interface that provides a long package crc to improve functional safety Abandoned US20170077952A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/361,767 US20170077952A1 (en) 2015-01-27 2016-11-28 Sensor interface that provides a long package crc to improve functional safety

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/606,472 US9509445B2 (en) 2015-01-27 2015-01-27 Sensor interface that provides a long package CRC to improve functional safety
US15/361,767 US20170077952A1 (en) 2015-01-27 2016-11-28 Sensor interface that provides a long package crc to improve functional safety

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US14/606,472 Continuation US9509445B2 (en) 2015-01-27 2015-01-27 Sensor interface that provides a long package CRC to improve functional safety

Publications (1)

Publication Number Publication Date
US20170077952A1 true US20170077952A1 (en) 2017-03-16

Family

ID=56364663

Family Applications (2)

Application Number Title Priority Date Filing Date
US14/606,472 Active 2035-05-06 US9509445B2 (en) 2015-01-27 2015-01-27 Sensor interface that provides a long package CRC to improve functional safety
US15/361,767 Abandoned US20170077952A1 (en) 2015-01-27 2016-11-28 Sensor interface that provides a long package crc to improve functional safety

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US14/606,472 Active 2035-05-06 US9509445B2 (en) 2015-01-27 2015-01-27 Sensor interface that provides a long package CRC to improve functional safety

Country Status (3)

Country Link
US (2) US9509445B2 (en)
CN (1) CN105827362B (en)
DE (1) DE102016101349A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021171057A1 (en) * 2020-02-24 2021-09-02 Sonova Ag Systems and methods for selective storing of data included in a corrupted data packet

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7205103B2 (en) * 2018-08-08 2023-01-17 富士電機株式会社 Receiving device, receiving method, and receiving program
DE102019109597B4 (en) * 2019-04-11 2023-02-16 Bayerische Motoren Werke Aktiengesellschaft Method, bus system and means of transportation for controlling utilization of the bus system of the means of transportation
US11671409B2 (en) 2021-02-17 2023-06-06 Infineon Technologies Ag Encrypted communication of a sensor data characteristic

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020051465A1 (en) * 2000-08-24 2002-05-02 Fang Rong C. Unified data packet for encapsulating data packets having diverse formats
US20030139140A1 (en) * 2002-01-23 2003-07-24 Tao Chen Selective combining of multiple non-synchronous transmissions in a wireless communication system
US20040100937A1 (en) * 2002-11-26 2004-05-27 Tao Chen Multi-channel transmission and reception with block coding in a communication system
US6853292B1 (en) * 1997-03-27 2005-02-08 Elan Schaltelemente Gmbh & Co Kg Security control system, method for the operation thereof
US20050047401A1 (en) * 2003-06-02 2005-03-03 Pierre Garnero Methods and apparatus for controlling signalling gateways
US20120226965A1 (en) * 2011-03-04 2012-09-06 Infineon Technologies Austria Ag Reliable Data Transmission with Reduced Bit Error Rate
US20130170504A1 (en) * 2010-09-22 2013-07-04 Fujitsu Limited Routing method and node equipment

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0510201A (en) * 1991-07-04 1993-01-19 Fuji Heavy Ind Ltd Car controlling method
US5598543A (en) * 1994-09-26 1997-01-28 John Notarianni Method of interfacing between data transmission systems having an unequal number of transceiver ports
US6363164B1 (en) * 1996-05-13 2002-03-26 Cummins-Allison Corp. Automated document processing system using full image scanning
US6012839A (en) * 1995-06-30 2000-01-11 Quantum Corporation Method and apparatus to protect data within a disk drive buffer
US5959568A (en) * 1996-06-26 1999-09-28 Par Goverment Systems Corporation Measuring distance
US5955969A (en) * 1997-04-09 1999-09-21 Texas Instruments Incorporated Method to prevent rouge transponder responses in automatic vehicle identification systems
US6081570A (en) * 1997-09-02 2000-06-27 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Parallel integrated frame synchronizer chip
DE19740525C1 (en) * 1997-09-15 1999-02-04 Siemens Ag Method of data storage and recovery in control system, esp. in motor vehicle, such as taxi
US6385210B1 (en) * 1998-04-17 2002-05-07 Ford Global Technologies, Inc. Method for detecting and resolving data corruption in a UART based communication network
US6647528B1 (en) * 2000-11-02 2003-11-11 Computer Network Technology Corporation Fiber channel CRC for internal error checking on a switching platform
US9619742B2 (en) * 2001-05-18 2017-04-11 Nxp B.V. Self-descriptive data tag
US7953536B2 (en) * 2005-07-29 2011-05-31 GM Global Technology Operations LLC Inertial sensor software architecture security method
US7882424B2 (en) * 2005-07-29 2011-02-01 GM Global Technology Operations LLC Serial data communication—CAN memory error detection methods
US7464203B2 (en) * 2005-07-29 2008-12-09 Gm Global Technology Operations, Inc. Method of validating plurality of data during serial communication using a dual path across a single serial link
DE602005020632D1 (en) * 2005-10-21 2010-05-27 Infineon Technologies Ag Record of a Tire Monitoring System with Coded Recognition Set ID
US8103946B2 (en) * 2007-05-18 2012-01-24 GM Global Technology Operations LLC Secure data strategy for vehicle control systems
US8183982B2 (en) 2007-08-14 2012-05-22 Infineon Technologies Ag System including reply signal that at least partially overlaps request
DE102008031498B4 (en) 2008-07-03 2012-03-08 Infineon Technologies Ag Clock determination of a sensor
US7916010B2 (en) * 2008-12-12 2011-03-29 Ford Global Technologies Method and system for associating a tire pressure sensor to a wheel location in an intitiator based tire pressure monitoring system
US8233389B2 (en) * 2009-08-19 2012-07-31 Mitsubishi Electric Research Laboratories, Inc. Method and protocol for congestion control in a vehicular network
US8995327B2 (en) * 2009-12-02 2015-03-31 Mitsubishi Electric Research Laboratories, Inc. Broadcasting messages in multi-channel vehicular networks
US8677205B2 (en) * 2011-03-10 2014-03-18 Freescale Semiconductor, Inc. Hierarchical error correction for large memories
US9397895B2 (en) * 2011-12-13 2016-07-19 Viavi Solutions Inc. Method and system for collecting topology information
US8914712B2 (en) * 2012-02-27 2014-12-16 Freescale Semiconductor, Inc. Hierarchical error correction

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6853292B1 (en) * 1997-03-27 2005-02-08 Elan Schaltelemente Gmbh & Co Kg Security control system, method for the operation thereof
US20020051465A1 (en) * 2000-08-24 2002-05-02 Fang Rong C. Unified data packet for encapsulating data packets having diverse formats
US20030139140A1 (en) * 2002-01-23 2003-07-24 Tao Chen Selective combining of multiple non-synchronous transmissions in a wireless communication system
US20040100937A1 (en) * 2002-11-26 2004-05-27 Tao Chen Multi-channel transmission and reception with block coding in a communication system
US20050047401A1 (en) * 2003-06-02 2005-03-03 Pierre Garnero Methods and apparatus for controlling signalling gateways
US20130170504A1 (en) * 2010-09-22 2013-07-04 Fujitsu Limited Routing method and node equipment
US20120226965A1 (en) * 2011-03-04 2012-09-06 Infineon Technologies Austria Ag Reliable Data Transmission with Reduced Bit Error Rate

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Stephen B. Wicker, Error Control for Digital Communication and Storage, Prentice-Hall 1995; pp.99-121 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021171057A1 (en) * 2020-02-24 2021-09-02 Sonova Ag Systems and methods for selective storing of data included in a corrupted data packet

Also Published As

Publication number Publication date
CN105827362B (en) 2020-06-23
DE102016101349A1 (en) 2016-07-28
US20160218828A1 (en) 2016-07-28
US9509445B2 (en) 2016-11-29
CN105827362A (en) 2016-08-03

Similar Documents

Publication Publication Date Title
US9037941B2 (en) Systems and methods for error checking and correcting for memory module
US20170077952A1 (en) Sensor interface that provides a long package crc to improve functional safety
US9094163B2 (en) Assessment and correction of transmitted data
US20070089044A1 (en) Method and apparatus for error management
US8359518B2 (en) 2D product code and method for detecting false decoding errors
US11356201B2 (en) SPC sensor interface with partial parity protection
US7137057B2 (en) Method and apparatus for performing error correction code (ECC) conversion
US11409688B1 (en) System and method for checking data to be processed or stored
US8612842B2 (en) Apparatus for generating a checksum
TW201642275A (en) Method and device for protecting a data transport block against memory errors and transmission errors
WO2017012389A1 (en) Link detection method, receiving device and computer storage medium
KR20120112981A (en) Receiving node and method of reducing retransmission of data frame
EP2784965B1 (en) Data communication method and apparatus using forward error correction
US10931314B2 (en) Method and apparatus for providing a joint error correction code for a combined data frame comprising first data of a first data channel and second data of a second data channel and sensor system
US8694850B1 (en) Fast erasure decoding for product code columns
US10601448B2 (en) Reduced latency error correction decoding
US11677104B2 (en) Functional safety in a battery management system
US7516393B2 (en) System and method of error detection for unordered data delivery
CN114513285B (en) Method, device, equipment and readable storage medium for detecting and correcting transmission data
EP1271828A1 (en) Apparatus and method for generating a checkbits for error detection using a pseudo-random sequence
Subhasri et al. VLSI design of parity check code with hamming code for error detection and correction
AU2022211512A1 (en) Data transmission method and apparatus, and device, system and computer-readable storage medium
CN109217982B (en) Data transmission method and device, sending equipment and receiving equipment
CN111130695A (en) Method for calculating CANOPEN protocol CRC through redundant code words
KR20160073725A (en) Interleaving method and apparatus for determing adaptively interleaving depth

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION