# US 2014/0157080 A1 · Method and apparatus for adapting the data transmission security in a serial bus system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0157080 A1
- Document ID: US20140157080A1
- Status: Published application
- Kind: A1
- Application number: 14/009,774
- Filed: 2012-03-29
- Published: 2014-06-05
- Earliest claimed: 2011-04-06
- Assignees: Robert Bosch GmbH
- Inventors: Florian Hartwich
- Web page: https://patentgrep.com/patent/US20140157080A1

## CPC

- G06F 13/362: with centralised access control
- G06F 13/4282: {on a serial bus, e.g. I2C bus, SPI bus (on daisy chain buses G06F13/4247)}
- H03M 13/091: {Parallel or block-wise CRC computation}
- H04L 1/0083: {Formatting with frames or packets; Protocol or part of protocol for error control}
- H04L 12/4013: {Management of data rate on the bus (systems modifying transmission characteristics according to link quality H04L1/0001)}
- H04L 12/40169: {Flexible bus arrangements (arrangements for maintenance or administration involving management of faults; events, alarms H04L41/06; automatic restoration of network faults H04L41/0654)}
- H04L 12/4135: {using bit-wise arbitration}
- H04L 1/0061: {Error detection codes}
- H04L 2001/0094: {Bus}
- H04L 2012/40215: {Controller Area Network CAN}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H03M: CODING; DECODING; CODE CONVERSION IN GENERAL (using fluidic means F15C4/00; optical analogue/digital converters G02F7/00; coding, decoding or code conversion, specially adapted for particular applications, see the relevant subclasses, e.g. G01D, G01R, G06F, G06T, G09G, G10L, G11B, G11C, H04B, H04L, H04M, H04N; ciphering or deciphering for cryptography or other purposes involving the need for secrecy G09C)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method for serial data transmission in a bus system having at least two subscribed data processing units, the data processing units exchanging messages via the bus, the transmitted messages having a logical structure in accordance with the CAN standard ISO 11898-1, the logical structure including a start-of-frame bit, an arbitration field, a control field, a data field, a CRC field, an acknowledge field and an end-of-frame sequence, the control field including a data length code, which contains information regarding the length of the data field. The CRC field of the transmitted messages may have at least two different numbers of bits as a function of the content of the data length code.

## Claims

### Claim at position 1

1-19. (canceled)

### Claim 20

A method for serial data transmission in a bus system having at least two subscribed data processing units, the method comprising:
exchanging messages via the bus;
providing that the transmitted messages have a logical structure according to CAN standard ISO 11898-1, the logical structure including a start-of-frame bit, an arbitration field, a control field, a data field, a CRC field, an acknowledge field and an end-of-frame sequence;
providing that the control field includes a data length code, which contains information about the length of the data field;
wherein as a function of the content of the data length code, the CRC field of transmitted messages may have at least two different numbers of bits.

### Claim 21 (depends on 20)

The method of claim 20, wherein at least two different generator polynomials are used for defining the content of the CRC field as a function of the content of the data length code.

### Claim 22 (depends on 20)

The method of claim 20, wherein for at least one valid value of the data length code, the number of bits in the CRC field and the generator polynomial used to define the content of the CRC field correspond to the CAN standard ISO 11898-1.

### Claim 23 (depends on 20)

The method of claim 20, wherein the number of bits in the CRC field is derived as a function of the content of the data length code, the receiving process being adapted as a function of the derived number of bits in the CRC field.

### Claim 24 (depends on 20)

The method of claim 20, wherein at the beginning of a message the calculation of at least two CRC checksums is started in parallel using different generator polynomials and a decision is made as a function of the content of the data length code as to which result is used from one of the CRC calculations that were started in parallel.

### Claim 25 (depends on 20)

The method of claim 20, wherein possible stuff bits within the segments of the message in front of the CRC field are also taken into account in at least one of the CRC calculations performed in parallel.

### Claim 26 (depends on 20)

The method of claim 20, wherein the data field of the messages may comprise more than eight bytes in deviation from the CAN standard ISO 11898-1, the values of the data length code being interpreted as least partially in deviation from the CAN standard ISO 11898-1 for determining the size of the data field.

### Claim 27 (depends on 26)

The method of claim 26, wherein each of the possible value combinations of the bits of the data length code is assigned to one of the admissible sizes of the data field.

### Claim 28 (depends on 26)

The method of claim 26, wherein the content of the data length code is evaluated in the subscribed data processing units for determining the size of the data field and the receiving process is adapted to the size of the data field.

### Claim 29 (depends on 26)

The method of claim 26, wherein the values between 0b0001 and 0b1000 of the data length code are used for the sizes of the data field between 1 and 8 bytes in accordance with the CAN standard ISO 11898-1 and the remaining values of the data length code are used for the additional admissible sizes of the data field up to the maximum possible size.

### Claim 30 (depends on 20)

The method of claim 20, wherein the bit length in time may assume at least two different values within a message, the bit length in time being greater than or equal to a specified minimum value of approximately one microsecond for at least one first specifiable area within the message and the bit length in time in at least one second specifiable area within the message having a reduced value in comparison to the first area.

### Claim 31 (depends on 30)

The method of claim 30, wherein the at least two different values of the bit length in time within a message are implemented by using at least two different scaling factors for setting the bus time unit relative to a smallest time unit or the oscillator clock pulse in ongoing operation.

### Claim 32 (depends on 30)

The method of claim 30, wherein the messages in which the bit length in time within the message may assume at least two different values are recognizable by an identification in the control field.

### Claim 33 (depends on 20)

The method of claim 20, wherein the messages are transmitted in a time-controlled manner in accordance with the method described in the TTCAN standard ISO 11898-4.

### Claim 34

A device for serial data transmission in a bus system having at least two subscribed data processing units, comprising:
an exchange arrangement to exchange messages via the bus;
wherein the transmitted messages having a logical structure according to the CAN standard ISO 11898-1, the logical structure including a start-of-frame bit, an arbitration field, a control field, a data field, a CRC field, an acknowledge field and an end-of-frame sequence,
wherein the control field including a data length code, which contains information about the length of the data field, and
wherein, as a function of the content of the data length code, the CRC field of the transmitted messages may have at least two different numbers of bits.

### Claim 35 (depends on 34)

The device of claim 34, wherein at least two different generator polynomials are used for defining the content of the CRC field as a function of the content of the data length code.

### Claim 36 (depends on 35)

The device of claim 35, wherein there is included a sufficient number of shift registers for calculating the content of the CRC field using the at least two different generator polynomials.

### Claim 37

A method for serial data transmission in a bus system having at least two subscribed data processing units, for use in normal operation of a motor vehicle for transmitting data between the at least two subscribed data processing units of the motor vehicle, the method comprising:
exchanging messages via the bus;
providing that the transmitted messages have a logical structure according to CAN standard ISO 11898-1, the logical structure including a start-of-frame bit, an arbitration field, a control field, a data field, a CRC field, an acknowledge field and an end-of-frame sequence;
providing that the control field includes a data length code, which contains information about the length of the data field;
wherein as a function of the content of the data length code, the CRC field of transmitted messages may have at least two different numbers of bits.

### Claim 38

A method for serial data transmission in a bus system having at least two units, for use during the manufacturing or maintenance of a motor vehicle for transmitting data between a programming unit connected to the data bus for programming purposes and at least one control unit of the motor vehicle that is connected to the data bus, the method comprising:
exchanging messages via the bus;
providing that the transmitted messages have a logical structure according to CAN standard ISO 11898-1, the logical structure including a start-of-frame bit, an arbitration field, a control field, a data field, a CRC field, an acknowledge field and an end-of-frame sequence;
providing that the control field includes a data length code, which contains information about the length of the data field;
wherein as a function of the content of the data length code, the CRC field of transmitted messages may have at least two different numbers of bits.
