Method for processing data for a driving function of a vehicle
10676099 ยท 2020-06-09
Assignee
Inventors
Cpc classification
B60W50/023
PERFORMING OPERATIONS; TRANSPORTING
G05D1/0088
PHYSICS
B60W2556/00
PERFORMING OPERATIONS; TRANSPORTING
International classification
B60W50/02
PERFORMING OPERATIONS; TRANSPORTING
B60W50/023
PERFORMING OPERATIONS; TRANSPORTING
G05D1/00
PHYSICS
Abstract
A method for processing data for a driving function of a vehicle is described, a predefined quantity of computation units being provided; the computation units supplying data, in particular redundant data, to a decision unit; the decision unit deciding, based on a comparison of the data delivered by the computation units, whether the data are correct; a synchronization unit being provided; the synchronization unit synchronizing the computation units in such a way that the computation units deliver the data to the decision unit in a specified time period; and the synchronization unit informing the decision unit as to when the data are transmitted by the computation units, so that the decision unit can specify which data of the computation units are used for a check of the data.
Claims
1. A method for processing data for a driving function of a vehicle, using a predefined quantity of computers which supply redundant data, the method comprising: supplying the redundant data to a processor; deciding, by the processor based on a comparison of the data delivered whether the data are correct; synchronizing the computers to deliver the data to the processor in a specified time period; informing the processor as to when the data are transmitted, so that the processor can specify which data are used for a check of the data; and informing the computers, by the synchronizing via a control interface, as to which of received input data are processed in a subsequent task, and specifying at least one of a sequence of tasks and a beginning of the respective task.
2. The method as recited in claim 1, wherein synchronization signals are conveyed to the computers and to the processor.
3. The method as recited in claim 2, wherein at least one of: i) electrical signals being transferred via a signal lead as the synchronization signals, and ii) data signals being transferred via a data interface as the synchronization signals.
4. The method as recited in claim 2, wherein the synchronizing is provided to each of the computers via a respective signal line or a data interface.
5. The method as recited in claim 2, wherein the synchronizing is provided to each of the computers at least one of: i) via a plurality of signal leads, and ii) via a plurality of data interfaces.
6. The method as recited in claim 1, further comprising: starting, by the synchronizing, processing of a task in the computers.
7. The method as recited in claim 1, further comprising: conveying to the computers and to the processor, by the synchronizing, a number of a current synchronization cycle.
8. The method as recited in claim 1, wherein the computers convey checksums of the input data.
9. The method as recited in claim 8, wherein at least one of: i) the input data are grouped into time-related blocks and the checksums each being calculated over one block, ii) a quantity of messages, in which the input data are received, are incorporated into the checksum, iii) the input data are equipped with a time stamp, and the time stamps being incorporated into the checksum; and iv) the input data being received from the computers via a network interface, the input data having network checksums and the network checksums being incorporated into the checksum calculation.
10. A processor unit for processing data for a driving function of a vehicle, comprising: a processor for processing the data for the driving function of the vehicle, using a predefined quantity of computers which supply redundant data, by performing the following: supplying the redundant data to a processor; deciding, by the processor based on a comparison of the data delivered whether the data are correct; synchronizing the computers to deliver the data to the processor in a specified time period; informing the processor as to when the data are transmitted, so that the processor can specify which data are used for a check of the data; and informing the computers, by the synchronizing via a control interface, as to which of received input data are processed in a subsequent task, and specifying at least one of a sequence of tasks and a beginning of the respective task.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)
DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS
(11) An object of the present invention is to implement synchronization between a decision unit and several computation units in such a way that synchronicity exists between the computation units, and optionally that the input data on the computation units and the decision unit are synchronized. The results calculated from the input data are thus synchronized for comparison in the decision unit. In addition, restarting and resynchronization of individual computation units should optionally be possible. As one example embodiment, a synchronization unit is provided which performs the mutual synchronization among the computation units and the synchronization of the computation units with the decision unit. An advantage of the system described, and of the method described, is that the decision unit can decide unambiguously, based on a synchronization information item of the synchronization unit, which data can be utilized for verifying the correctness of the data of the computation units. The method additionally makes possible an increase in availability as a result of restarting (the system is completely available again after a successful restart of individual computation units recognized as faulty). The method ensures that this kind of individual restarting of individual computation units is possible.
(12) An object of the decision unit is, for example, to check, from a predefined quantity N of data of a quantity N of computation units, whether the data conveyed from the N computation units are correct. In the simplest case the same input data are received, and the same tasks processed, by the computation units, so that the data of the computation units which are conveyed to the decision unit should be identical. If the decision unit recognizes that the data of the N computation units are identical, the data are then recognized as correct and are used for the driving function of the vehicle, in particular for an automatic driving function of the vehicle.
(13) For a precise check of the data of the various computation units, it is advantageous if the computation units are precisely synchronized with one another and the computation units are precisely synchronized with the decision unit. In the event of discrepancies in synchronization, defective recognition of fault situations by the decision unit can occur, so that the failure rate of the computer system is increased.
(14)
(15) The synchronization signals can be transferred in the form of electrical signals via electrical leads. In this embodiment the second data connections are thus configured in the form of electrical leads. Synchronization of computation units 1 and decision unit 2 is implemented, for example, by the fact that tasks of the computation units are started by way of a synchronization signal. The electrical signal can start the pertinent task processing of the computation units, for example, with the aid of a level change, for example by way of an interrupt.
(16) In a further embodiment, the synchronization signal is transferred, for example serially, via a data interface (
(17) In a further embodiment, the synchronization signals are transferred in parallel fashion via a data interface.
(18) In a further embodiment (
(19) Depending on the embodiment selected, the tasks of computation units 1 can be started by synchronization unit 3.
(20) In a further embodiment, in addition to transfer of the synchronization signal by synchronization unit 3, a number of a current synchronization cycle is conveyed to the N computation units 1 and to decision unit 2. A reset line of the computation units can be used for signaling the synchronization signal and/or for signaling the number of the current synchronization cycle. For example, upon a reset signal the number of the synchronization cycle can be set to a predetermined value, for example 0.
(21) In a further embodiment, an additional lead can set the number of the current synchronization cycle in the N computation units and in the decision unit to a predetermined value, for example to the value 0, for example via a level change and thus via additional signaling that a setting state has been reached.
(22) In addition, in a further embodiment the synchronization signal can be transferred in the selected data connections by way of an additional code, the code setting the number of the synchronization cycle in the N computation units and in the decision unit to a predetermined value, for example to the value 0.
(23) In a further embodiment, the number of the synchronization cycle can be additionally transferred and can be established by synchronization unit 3.
(24) In a further embodiment, the N computation units 1 additionally have a reply interface to synchronization unit 3 (
(25) A control interface can additionally be provided between synchronization unit 3 and the computation units (
(26) Depending on the embodiment selected, the reply interface can be implemented, for example, by N separate data interfaces from the N computation units 1 to synchronization unit 3 (
(27) In a further embodiment, the control interface can be configured via one common one-to-N unidirectional interface, for example CAN, SPI, I2C, BUS, etc.
(28) In a further embodiment, the multi-master-capable bus interface can be configured in the form of a specified quantity M of redundant multi-master-capable bus interfaces. Fail-safe performance is thereby enhanced.
(29) In a further embodiment, the unidirectional interface can be configured in the form of a quantity M of redundant unidirectional interfaces. A combination of the above-described data connections can also be implemented.
(30) In a further embodiment, unique checksums of the input data can be conveyed to synchronization unit 3 via the reply interface. The amount of data to be transferred is thereby considerably reduced. It is no longer necessary to transfer the input data themselves. The unique checksums are also conveyed via the control interface from synchronization unit 3 to the N computation units 1. The input data which are to be processed, and in which tasks, are thereby specified. The checksums must be unique for the N computation units. This can be achieved, for example, by the fact that the input data are grouped into time-related blocks, and the checksum is calculated over the entire block. In a further embodiment, message counters can be incorporated into the checksum calculation. Message counters are provided as a rule, for example, when the input data are received via the network, for example CAN, FlexRay, Ethernet, etc. In a further embodiment, a time stamp that belongs to the input data can additionally be incorporated into the checksum calculation. This time stamp must be created, if applicable, from the synchronization information or at least synchronized with it. Upon reception via a network interface, the network checksums belonging to the data can be incorporated into the checksum calculation. Combinations of the above-described methods can also be used.
(31)
(32)
(33)
(34)
(35)
(36)
(37) For better clarity, the further data connections 9 between computation units 1 and decision unit 2 are not depicted in
(38)
(39) Decision unit 2 has an output 10 through which data item or data recognized as correct, and/or the information that a data item is correct, is outputted. The output of decision unit 2 is used, for example, in order to use the data of the computation units for a driving function of a vehicle, for example autonomous driving or steering of the vehicle.
(40)
(41) Computation unit 1 correspondingly uses the specified input data to execute specified tasks 14 in a processing block 12. Computation unit 1 furthermore receives, via first data connection 4, a synchronization signal that specifies the start for carrying out task 14 and/or the time for conveying the result of task 14 to decision unit 2 via further data connection 9. Depending on the embodiment selected, only the point in time for transferring the result of task 14 to decision unit 2, or the starting point for carrying out task 14, can be specified by synchronization unit 3 with the aid of the synchronization signal.
(42)
(43) The input data can be grouped into time-related blocks, and the checksum can be calculated over one respective block.
(44) The input data can furthermore be received serially in the form of multiple messages. The messages can be counted, and the quantity of messages can be incorporated into the calculation of the checksum. The input data can moreover be provided with a time stamp. The time stamp can likewise be incorporated into the calculation of the checksum. The input data can furthermore be received from the computation units via a network interface, the input data having network checksums. The network checksums can also be incorporated into the checksum calculation.