# US 2014/0156887 A1 · Method and device for serial data transmission which is adapted to memory sizes

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

- Number: US 2014/0156887 A1
- Document ID: US20140156887A1
- Status: Published application
- Kind: A1
- Application number: 14/114,161
- Filed: 2012-04-26
- Published: 2014-06-05
- Earliest claimed: 2011-04-26
- Assignees: Robert Bosch GmbH
- Inventors: Florian Hartwich
- Web page: https://patentgrep.com/patent/US20140156887A1

## CPC

- H04L 45/74: Address processing for routing
- G06F 5/065: {Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's}
- G06F 13/4282: {on a serial bus, e.g. I2C bus, SPI bus (on daisy chain buses G06F13/4247)}
- H04L 12/40013: {Details regarding a bus controller}
- H04L 12/4135: {using bit-wise arbitration}
- H04L 2012/40215: {Controller Area Network CAN}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method is described for serial data transmission in a bus system having at least two participating data processing units, the data processing units exchanging messages via the bus, the sent messages having a logical structure in accordance with CAN standard ISO 11898-1. When a first changeover condition is present, then, deviating from CAN, the data field of the messages can include more than eight bytes, the values of the data length code being interpreted, given the presence of the first changeover condition to determine the size of the data field. For forwarding data between the data field and the application software, at least one buffer memory is provided, and, if the size of the data field differs from the size of the buffer memory used, the forwarded quantity of data is adapted at least corresponding to the difference in size between the data field and the buffer memory.

## Claims

### Claim at position 1

1-28. (canceled)

### Claim 29

A method for serial data transmission in a bus system having at least two participating data processing units that exchange messages via the bus, sent messages having a logical structure in accordance with 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 that contains an item of information about the length of the data field, wherein given the presence of a first changeover condition, deviating from CAN standard ISO 11898-1, the data field of the messages can include more than eight bytes, at least one buffer memory being provided for forwarding of data between the data field and application software, the method comprising:
interpreting values of the data length code, at least partly in a manner deviating from CAN standard ISO 11898-1, to determine a size of the data field, when the first changeover condition is present; and
if the size of the data field differs from the size of the buffer memory, adapting the data to be forwarded to the application software in a manner at least corresponding to the difference in size between the data field and the buffer memory.

### Claim 30 (depends on 29)

The method as recited in claim 29, further comprising:
if the size of the data field is greater than the size of the buffer memory used, selecting from the data field of a message received via the bus a quantity of data corresponding to the size of the buffer memory according to a specified selection method, and forwarding the quantity of data to the buffer memory.

### Claim 31 (depends on 29)

The method as recited in claim 29, further comprising:
entering contents of the buffer memory into at least one region of the data field of a message to be sent via the bus, and filling remaining regions of the data field according to a specified method if the size of the data field is greater than the size of the buffer memory used.

### Claim 32 (depends on 29)

The method as recited in claim 29, wherein if the size of the data field of a message received via the bus is more than eight bytes, eight specified bytes of the data field are given to the application software via the at least one buffer memory.

### Claim 33 (depends on 32)

The method as recited in claim 32, wherein if the size of the data field of a message to be sent via the bus is more than eight bytes, remaining bits of the data field are filled with specified values.

### Claim 34 (depends on 33)

The method as recited in claim 33, wherein the bits in filled regions of the data field of a message to be sent via the bus are filled in such a way that, in accordance with the rules of CAN standard ISO 11898-1, no stuff bits need be inserted in these regions.

### Claim 35 (depends on 34)

The method as recited in claim 34, wherein as a function of the value of the first changeover condition, each of possible value combinations of the four bits of the data length code is assigned to one of the allowable sizes of the data field.

### Claim 36 (depends on 25)

The method as recited in claim 25, wherein the messages in which the data field includes more than eight bytes and the values of the data length code are interpreted in a manner deviating at least partly from CAN standard ISO 11898-1 to determine the size of the data field, are distinguished from messages conforming to the CAN standard through a first identifier in at least one of the arbitration field and the control field.

### Claim 37 (depends on 36)

The method as recited in claim 36, wherein the first identifier is evaluated in the participating data processing units to determine the first changeover condition, so that a receive process is adapted to the size of the data field as a function of the first changeover condition.

### Claim 38 (depends on 37)

The method as recited in claim 37, wherein a first identification takes place through a first identifier bit whose position is situated between the last bit of the first identifier and the first bit of the data length code, and at whose position there is situated, in messages according to CAN standard ISO 11898-1, a bit having a defined value.

### Claim 39 (depends on 29)

The method as recited in claim 29, wherein as a function of the value of a changeover condition, the CRC field of messages can have at least two different numbers of bits, at least one of the valid numbers of bits in the CRC field being a number of bits deviating from CAN standard ISO 11898-1, a generator polynomial deviating from CAN standard ISO 11898-1 being used to determine contents of a CRC field having a deviating number of bits.

### Claim 40 (depends on 38)

The method as recited in claim 38, wherein, as a function of the value of a further changeover condition, a temporal bit length inside a message can assume at least two different values, the temporal bit length being, for at least one first specifiable region inside the message, greater than or equal to a specified minimum value of approximately one microsecond, and the temporal bit length having, in at least one second specifiable region inside the message, a value that is reduced in comparison with the first region.

### Claim 41 (depends on 40)

The method as recited in claim 40, wherein the at least two different values of the temporal bit length within a message are realized through the use of at least two different scaling factors for setting a bus time unit relative to one of: i) a smallest time unit, or ii) an oscillator clock pulse in running operation.

### Claim 42 (depends on 40)

The method as recited in claim 40, wherein the messages in which, as a function of the value of a further changeover condition, the temporal bit length inside a message can assume at least two different values, can be recognized via a further identifier in at least one of the arbitration field and in the control field.

### Claim 43 (depends on 42)

The method as recited in claim 42, wherein the value of the further changeover condition in the participating data processing units one of: i) is determined as a function of the further identifier, ii) agrees with the first changeover condition, or iii) is derived from the first changeover condition, the receive process being adapted to the different values of the bit length inside a message as a function of the value of the further changeover condition.

### Claim 44 (depends on 43)

The method as recited in claim 43, wherein a further identifier takes place through a further identifier bit situated between the first identifier bit and a first bit of the data length code.

### Claim 45 (depends on 44)

The method as recited in claim 44, wherein at least one additional status bit is provided through which the application software is provided with information relating to the data transmission method deviating from CAN standard ISO 11898-1.

### Claim 46 (depends on 45)

The method as recited in claim 45, wherein the at least one additional status bit includes at least one of: i) a status bit for communicating successful transmission, ii) a status bit for communicating successful reception, and iii) at least one status bit for communicating a type of the error that most recently occurred.

### Claim 47 (depends on 46)

The method as recited in claim 46, wherein as a function of the frequency of occurrences of errors in a data transmission method deviating from CAN standard ISO 11898-1, a changeover takes place back to the transmission method according to CAN standard ISO 11898-1, and at least one status bit is provided for the communication of the change back that has taken place.

### Claim 48 (depends on 47)

The method as recited in claim 47, wherein in at least one of; i) the at least one buffer memory, and ii) at least one associated message memory, at least one additional message bit is provided that identifies the method of data transmission to use for the respective message.

### Claim 49 (depends on 48)

The method as recited in claim 48, wherein the at least one additional message bit corresponds to at least one of the values of the first identifier or further identifier or is derived from the values thereof, or corresponds to at least one of the values of bits r1 or r0 of the control field or SRR of the arbitration field.

### Claim 50

A device for serial data transmission in a bus system having at least two participating data processing units that exchange messages via the bus, the sent messages having a logical structure in accordance with 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 that contains an item of information about the length of the data field, wherein given the presence of a first changeover condition, deviating from CAN standard ISO 11898-1 the data field of the messages can include more than eight bytes, wherein the device is configured to interpret values of the data length code, when the first changeover condition is present, at least partly in a manner deviating from CAN standard ISO 11898-1 to determine the size of the data field, wherein the device includes at least one buffer memory for forwarding of data between the data field and application software, and wherein the device is configured to adapt a quantity of data to be forwarded to the application software in a manner at least corresponding to a difference in size between the data field and the buffer memory used if the size of the data field differs from the size of the buffer memory used.

### Claim 51 (depends on 50)

The device as recited in claim 50, wherein the device is configured to select from the data field of a message received via the bus, a quantity corresponding to the size of the memory buffer according to a detection method, and to forward the quantity of data to the buffer memory of the size of the data field is greater than the size of the buffer memory.

### Claim 52 (depends on 51)

The device as recited in claim 51, wherein the device further includes at least one protocol control unit to adapt the quantity of data forwarded between the data field and the buffer memory in a manner corresponding to the difference in size between the data field and the buffer memory.

### Claim 53 (depends on 52)

The device as recited in claim 52, wherein the device includes at least one additional or expanded status register whose content identifies at least one of: i) a type, ii) a success, and iii) a result, of the respectively used data transmission method.

### Claim 54 (depends on 53)

The device as recited in claim 53, wherein the device includes at least one of: i) an additional message memory, ii) an expanded message memory, and iii) a buffer memory, in which at least one additional message bit identifies the method of data transmission that is used for the respective message.

### Claim 55

A method for serial data transmission in a bus system of a motor vehicle having at least two control devices that exchange messages, via the bus, sent messages having a logical structure in accordance with 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 that contains an item of information about the length of the data field, wherein given the presence of a first changeover condition, deviating from CAN standard ISO 11898-1, the data field of the messages can include more than eight bytes, at least one buffer memory being provided for forwarding of data between the data field and application software, the method comprising:
interpreting values of the data length code, at least partly in a manner deviating from CAN standard ISO 11898-1, to determine a size of the data field, when the first changeover condition is present; and
if the size of the data field differs from the size of the buffer memory, adapting the data to be forwarded to the application software in a manner at least corresponding to the difference in size between the data field and the buffer memory.

### Claim 56

A method for serial data transmission in a bus system of an industrial installation having at least two control devices that exchange messages, via the bus, sent messages having a logical structure in accordance with 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 that contains an item of information about the length of the data field, wherein given the presence of a first changeover condition, deviating from CAN standard ISO 11898-1, the data field of the messages can include more than eight bytes, at least one buffer memory being provided for forwarding of data between the data field and application software, the method comprising:
interpreting values of the data length code, at least partly in a manner deviating from CAN standard ISO 11898-1, to determine a size of the data field, when the first changeover condition is present; and
if the size of the data field differs from the size of the buffer memory, adapting the data to be forwarded to the application software in a manner at least corresponding to the difference in size between the data field and the buffer memory.

### Claim 57

A method for serial data transmission in a bus system of a motor vehicle, the bus system including a control device of the motor vehicle and a programming unit connected to the bus system for programming during manufacturing or maintenance of the motor vehicle, the control device and the programming unit exchanging messages via the bus, sent messages having a logical structure in accordance with 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 that contains an item of information about the length of the data field, wherein given the presence of a first changeover condition, deviating from CAN standard ISO 11898-1, the data field of the messages can include more than eight bytes, at least one buffer memory being provided for forwarding of data between the data field and application software, the method comprising:
interpreting values of the data length code, at least partly in a manner deviating from CAN standard ISO 11898-1, to determine a size of the data field, when the first changeover condition is present; and
if the size of the data field differs from the size of the buffer memory, adapting the data to be forwarded to the application software in a manner at least corresponding to the difference in size between the data field and the buffer memory.

### Claim 58

A method for serial data transmission in a bus system of an industrial installation, the bus system including a control device of the industrial installation and a programming unit connected to the bus system for programming during manufacturing or maintenance of the industrial installation, the control device and the programming unit exchanging messages via the bus, sent messages having a logical structure in accordance with 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 that contains an item of information about the length of the data field, wherein given the presence of a first changeover condition, deviating from CAN standard ISO 11898-1, the data field of the messages can include more than eight bytes, at least one buffer memory being provided for forwarding of data between the data field and application software, the method comprising:
interpreting values of the data length code, at least partly in a manner deviating from CAN standard ISO 11898-1, to determine a size of the data field, when the first changeover condition is present; and
if the size of the data field differs from the size of the buffer memory, adapting the data to be forwarded to the application software in a manner at least corresponding to the difference in size between the data field and the buffer memory.
