In-vehicle communication device and in-vehicle communication system

The in-vehicle communication device improves system expandability by using TCP or UDP protocols to unify communication within and between ECUs, addressing flexibility issues in existing vehicle control systems.

JP7704051B2Active Publication Date: 2025-07-08AUTONETWORKS TECH LTD +2
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2022036516
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-03-09
Publication Date
2025-07-08
Estimated Expiration
2042-03-09

AI Technical Summary

Technical Problem

Existing vehicle control systems face limitations in flexibility and expandability when communicating between ECUs using different communication protocols, requiring software updates and module corrections, which hinders function expansion.

Method used

An in-vehicle communication device with an application processing unit and a relay processing unit that uses a unified communication protocol, such as TCP or UDP, to facilitate data transmission and reception between ECUs, allowing for seamless communication regardless of protocol differences.

Benefits of technology

Enhances the expandability and flexibility of the in-vehicle communication system by enabling efficient data exchange across various ECUs using standardized protocols, improving reliability and reducing the need for software updates.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007704051000001
    Figure 0007704051000001
  • Figure 0007704051000002
    Figure 0007704051000002
  • Figure 0007704051000003
    Figure 0007704051000003
Patent Text Reader

Abstract

To provide an in-vehicle communication device and an in-vehicle communication system with which improvements in extensibility can be expected.SOLUTION: An in-vehicle communication device according to the present embodiment comprises an application processing unit that executes an application program, and a relay processing unit that performs communication to one or a plurality of onboard devices to communicate with the application processing unit by a prescribed communication protocol and relays the data transmission / reception of the onboard devices and the application processing unit. The application processing unit has a plurality of modules, each of which performs processing related to the execution of the application program, and the plurality of modules perform communication by the prescribed communication protocol. The prescribed communication protocol can be TCP or UDP.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to an in-vehicle communication device mounted on a vehicle and performing communication between the inside of the vehicle or other devices outside the vehicle, and an in-vehicle communication system.

Background Art

[0002] In Patent Document 1, a vehicle control system is proposed that includes a control system ECU (Electronic Control Unit) having a processor on which a real-time OS (Operating System) is arranged, and an information system ECU having a processor on which a real-time OS is arranged and a processor on which a multimedia OS is arranged. In this vehicle control system, communication between the control system ECU and the information system ECU is performed by a processor on which a real-time OS is arranged, and communication within the information system ECU is performed by the core-to-core communication function of the processor on which the real-time OS is arranged and the core-to-core communication function of the processor on which the multimedia OS is arranged.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] In the vehicle control system according to Patent Document 1, communication is performed between the processor of the control system ECU and the processor of the information system ECU by a communication protocol such as CAN (Controller Area Network), and communication is performed between a plurality of cores in the processor by an inter-core communication function using, for example, a shared memory. In this vehicle control system, for example, when the information system ECU needs to communicate with another ECU that communicates using a communication protocol other than CAN, or when the information system ECU needs to communicate with the control system ECU using a communication protocol other than CAN, etc., a function for communicating using the new communication protocol needs to be added to the information system ECU, and it is necessary to correct the application programs and software modules operating in the information system ECU, etc., and there is a problem that the flexibility regarding function expansion is low.

[0005] The present disclosure has been made in view of such circumstances, and an object thereof is to provide an in-vehicle communication device and an in-vehicle communication system that can be expected to have improved expandability.

Means for Solving the Problems

[0006] The in-vehicle communication device according to this aspect is an in-vehicle communication device mounted on a vehicle, and includes an application processing unit that executes an application program, and communicates with one or more in-vehicle devices, communicates with the application processing unit using a predetermined communication protocol, and relays the transmission and reception of data between the in-vehicle devices and the application processing unit. The application processing unit has a plurality of modules each of which performs processing related to the execution of the application program, and the plurality of modules communicate using the predetermined communication protocol.

[0007] The present application can be realized not only as an apparatus including such a characteristic processing unit, but also as a method including such a characteristic process as steps, or as a computer program for causing a computer to execute such steps. It can be realized as a semiconductor integrated circuit for realizing part or all of these apparatuses, or as other apparatuses or systems including these apparatuses.

Advantages of the Invention

[0008] According to the above, it can be expected to improve the expandability of the in-vehicle communication apparatus and the in-vehicle communication system.

Brief Description of the Drawings

[0009]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Embodiments for Carrying Out the Invention

[0010] [Description of Embodiments of the Present Disclosure] First, embodiments of the present disclosure will be listed and described. At least a part of the embodiments described below may be arbitrarily combined.

[0011] (1) The in-vehicle communication device according to this aspect is an in-vehicle communication device mounted on a vehicle, and includes an application processing unit that executes an application program, and a relay processing unit that communicates with one or more in-vehicle devices, communicates with the application processing unit according to a predetermined communication protocol, and relays the transmission and reception of data between the in-vehicle device and the application processing unit. The application processing unit has a plurality of modules each of which performs processing related to the execution of the application program, and the plurality of modules communicate according to the predetermined communication protocol.

[0012] In this aspect, the in-vehicle communication device includes an application processing unit and a relay processing unit. The application processing unit is a processor, a core, an IC (Integrated Circuit), or the like that executes an application program. The relay processing unit is a processor, a core, an IC, or the like that communicates with one or more in-vehicle devices and relays the transmission and reception of data between the in-vehicle device and the application processing unit by communicating with the application processing unit according to a predetermined communication protocol. The application processing unit has a plurality of software or hardware modules that perform processing related to the execution of the application program. These plurality of modules communicate according to the same communication protocol used for the communication between the application processing unit and the relay processing unit. By unifying the communication protocol inside and outside the application processing unit in this way, it is expected that the addition or change of the functions of the application processing unit can be facilitated and the expandability of the in-vehicle communication device can be improved.

[0013] (2) It is preferable that the predetermined communication protocol is TCP (Transmission Control Protocol) or UDP (User Datagram Protocol).

[0014] In this aspect, the communication between the application processing unit and the relay processing unit and the communication between a plurality of modules within the application processing unit are performed using a communication protocol of TCP (Transmission Control Protocol) or UDP (User Datagram Protocol). The communication protocols of TCP and UDP are communication protocols that have been widely used conventionally, and it can be expected to achieve highly reliable communication. Also, the communication protocols of TCP and UDP are communication protocols of the transport layer of the OSI (Open Systems Interconnection) reference model, and both are upper layer protocols of IP (Internet Protocol), which is a communication protocol of the network layer, and can coexist.

[0015] (3) The predetermined communication protocol is TCP and UDP. The relay processing unit communicates with the in-vehicle device using communication protocols of LIN (Local Interconnect Network) and CAN (Controller Area Network). It is preferable that data received using the LIN communication protocol is transmitted to the application processing unit using the UDP communication protocol, and data received using the CAN communication protocol is transmitted to the application processing unit using the TCP communication protocol.

[0016] In this aspect, the relay processing unit communicates with one or more in-vehicle devices using the communication protocols of LIN (Local Interconnect Network) and CAN (Controller Area Network). The relay processing unit transmits the data received using the LIN communication protocol to the application processing unit using the UDP communication protocol, and transmits the data received using the CAN communication protocol to the application processing unit using the TCP communication protocol. Thereby, the data transmitted and received using the CAN communication protocol, for which relatively high reliability is required, can be handled using the highly reliable TCP communication protocol, and the data transmitted and received using the LIN communication protocol, for which relatively high reliability is not required, can be handled using the UDP communication protocol, which has low reliability but enables fast communication.

[0017] (4) The predetermined communication protocols are TCP and UDP, and it is preferable that the application processing unit, the relay processing unit, and the module transmit and receive the data using either the TCP or UDP communication protocol based on the content of the data to be transmitted and received.

[0018] In this aspect, the communication between the application processing unit and the relay processing unit and the communication between a plurality of modules within the application processing unit are performed using the TCP or UDP communication protocol. The application processing unit, the relay processing unit, and the module appropriately select between the TCP and UDP communication protocols based on the content of the data to be transmitted and received. By appropriately selecting between the TCP and UDP communication protocols according to the content of the data, it is expected to achieve both suppressing the possibility of important data being lost and suppressing the processing load related to communication processing.

[0019] (5) The application processing unit, the relay processing unit, and the module use either the TCP or UDP communication protocol according to the ASIL (Automotive Safety Integrity Level) required for the data to be transmitted and received the said dataIt is preferable to perform transmission and reception.

[0020] In this aspect, either the TCP or UDP communication protocol is used according to the ASIL (Automotive Safety Integrity Level, automotive safety level) required for the data transmitted and received by the application processing unit, the relay processing unit, and the module. As a result, data with a high required ASIL can be transmitted and received using the highly reliable TCP communication protocol, and data with a low required ASIL can be transmitted and received using the UDP communication protocol that can communicate at high speed although it is less reliable compared to TCP.

[0021] (6) The data to be transmitted and received includes data related to handshake between a plurality of in-vehicle devices or data related to sequence control between a plurality of in-vehicle devices. It is preferable that the application processing unit, the relay processing unit, and the module transmit and receive the data related to the handshake or the data related to the sequence control using the TCP communication protocol.

[0022] In this aspect, by transmitting and receiving data related to handshake or data related to sequence control using the TCP communication protocol, these data can be surely transmitted and received as compared with the case of transmitting and receiving using the UDP communication protocol. Therefore, it can be expected that the cooperative operation by a plurality of in-vehicle devices is accurately performed.

[0023] (7) The data to be transmitted and received includes data related to message authentication or data related to the history of cyberattacks. It is preferable that the application processing unit, the relay processing unit, and the module transmit and receive the data related to the message authentication or the data related to the history of cyberattacks using the TCP communication protocol.

[0024] In this aspect, by transmitting and receiving data related to message authentication or data related to the history of cyberattacks using the TCP communication protocol, it can be expected to suppress the possibility of these data disappearing, and it can be expected to reduce the risk related to the security of the vehicle.

[0025] (8) The data to be transmitted and received includes data related to the interior environment of the vehicle, and it is preferable that the application processing unit, the relay processing unit, and the module transmit and receive the data related to the interior environment using the UDP communication protocol.

[0026] In this aspect, by transmitting and receiving data related to the interior environment of the vehicle using the UDP communication protocol, compared with the case of transmitting and receiving using the TCP communication protocol, the data can be transmitted to the devices related to the interior environment faster, and it can be expected to contribute to maintaining a comfortable interior environment.

[0027] (9) The data to be transmitted and received includes time-series data related to the driving state of the vehicle, and it is preferable that the application processing unit, the relay processing unit, and the module transmit and receive the time-series data related to the driving state using the UDP communication protocol.

[0028] In this aspect, by transmitting and receiving time-series data related to the driving state of the vehicle using the UDP communication protocol, compared with the case of transmitting and receiving using the TCP communication protocol, it can be expected to reduce the processing load related to data transmission and reception. Note that even if some of the time-series data related to the driving state of the vehicle is missing, the data before and after it can be disappear estimated based on the surrounding data, and the necessary data can be supplemented.

[0029] (10) It is preferable to encrypt the data transmitted and received between the application processing unit and the relay processing unit.

[0030] In this aspect, the in-vehicle communication device encrypts data transmitted and received between the application processing unit and the relay processing unit, and does not encrypt data transmitted and received between a plurality of modules within the application processing unit. As a result, the in-vehicle communication device can encrypt data that is easily intercepted from the outside to enhance security, and can be expected to transmit and receive data at high speed without encrypting data that is difficult to intercept from the outside.

[0031] (11) The in-vehicle communication device according to this aspect is an in-vehicle communication device mounted on a vehicle, and includes an application core that executes an application program. The application core executes a plurality of software modules related to the application program, and the plurality of software modules transmit and receive data using a communication protocol of TCP or UDP.

[0032] In this aspect, the in-vehicle communication device includes an application core that executes an application program, and the application core executes a plurality of software modules related to the application program. The plurality of software modules transmit and receive data using a communication protocol of TCP or UDP. As a result, the in-vehicle communication device can perform communication of software modules within the core using a communication protocol of TCP or UDP, which is often adopted for communication between cores or between devices, etc., and by unifying the communication protocol inside and outside the core, it can be expected to improve the expandability of the in-vehicle communication device.

[0033] (12) The in-vehicle communication system according to this aspect is an in-vehicle communication system mounted on a vehicle, which includes an application processing device that executes an application program, communicates with one or more in-vehicle devices, communicates with the application processing device according to a predetermined communication protocol, and a relay processing device that relays the transmission and reception of data between the in-vehicle device and the application processing device. The application processing device has a plurality of modules each of which performs processing related to the execution of the application program, and the plurality of modules communicate with each other according to the predetermined communication protocol. As the application processing device, for example, there is an ECU on which an application program can be executed. Also, as the relay processing device, for example, there is a gateway ECU.

[0034] In this aspect, similar to aspect (1), it can be expected to improve the expandability of the in-vehicle communication device.

[0035] Further, the in-vehicle communication device according to this aspect is an in-vehicle communication device mounted on a vehicle, which includes an application processing unit that executes an application program. The application processing unit has a plurality of modules each of which performs processing related to the execution of the application program, communicates with the outside according to a predetermined communication protocol, and the plurality of modules communicate with each other according to the predetermined communication protocol.

[0036] In this aspect, the in-vehicle communication device includes an application processing unit that executes an application program, and this application processing unit has a plurality of modules related to the execution of the application program. The application processing unit communicates with the outside (other processing units or other devices) according to a predetermined communication protocol, and the plurality of modules within the application processing unit also communicate with each other according to the predetermined communication protocol. Thereby, it can be expected to improve the expandability of the in-vehicle communication device by unifying the communication protocol inside and outside the application processing unit.

[0037] [Details of Embodiments of the Present Disclosure] A specific example of an in-vehicle communication system according to an embodiment of the present disclosure will be described below with reference to the drawings. The present disclosure is not limited to these examples, but is shown by the claims, and is intended to include all modifications within the meaning and scope equivalent to the claims.

[0038] <System Configuration> FIG. 1 is a schematic diagram showing the configuration of an in-vehicle communication system according to the present embodiment. The in-vehicle communication system according to the present embodiment is a system in which an in-vehicle communication device 3 mounted on a vehicle 1 collects various information from one or more other ECUs 4 and transmits the collected information to a server device 2 provided outside the vehicle 1. In the vehicle 1 according to the present embodiment, a plurality of ECUs 4 that perform various processes such as, for example, control processing related to the running of the vehicle 1, information processing for collecting peripheral information of the vehicle 1, or information providing processing for a user are appropriately mounted. These plurality of ECUs 4 are connected via communication lines arranged in the vehicle 1, and cooperate with each other by transmitting, receiving, and exchanging data via these communication lines.

[0039] Further, these plurality of ECUs 4 are connected to the in-vehicle communication device 3 via communication lines. The in-vehicle communication system shown in FIG. 1 has a network configuration in which three communication lines are connected to the in-vehicle communication device 3, and three ECUs 4 are respectively connected to each communication line. That is, three ECUs 4 are connected to one communication line in a bus-type network configuration, and the three communication lines constituting this bus-type network are respectively connected to the in-vehicle communication device 3 in a star-type network configuration. However, the illustrated network configuration is an example and is not limited thereto, and the in-vehicle communication device 3 and the plurality of ECUs 4 mounted on the vehicle 1 may be connected in various network configurations such as a bus type, a star type, or a ring type.

[0040] The in-vehicle communication device 3 relays the transmission and reception of data between a plurality of connected communication lines, and also relays the transmission and reception of data between the server device 2 provided outside the vehicle 1 and the ECU 4 in the vehicle 1. For example, the in-vehicle communication device 3 relays the transmission and reception of data between the ECUs 4 mounted on the vehicle 1 by transmitting the data received from one communication line via one or more other communication lines. Also, for example, the in-vehicle communication device 3 relays the transmission and reception of data between the server device 2 and the ECU 4 by transmitting the data received from the server device 2 via one or more communication lines. Also, for example, the in-vehicle communication device 3 relays the transmission and reception of data between the server device 2 and the ECU 4 by transmitting the data received from the ECU 4 to the server device 2.

[0041] <Device Configuration> FIG. 2 is a block diagram showing the hardware configuration of the in-vehicle communication device 3 according to the present embodiment. The in-vehicle communication device 3 according to the present embodiment includes an application core 10, a real-time core 20, storage units 31 and 32, a wireless communication unit 33, and the like. In the present embodiment, the core included in the in-vehicle communication device 3 is an IC in which a computing processing unit such as a CPU (Central Processing Unit) or an MPU (Micro-Processing Unit), a storage unit such as an SRAM (Static Random Access Memory) or a DRAM (Dynamic Random Access Memory), and one or a plurality of communication units that communicate using a communication protocol such as CAN, LIN, or Ethernet (registered trademark) are integrated in one package. Note that in the present embodiment, the in-vehicle communication device 3 includes two cores, an application core 10 and a real-time core 20, and these two cores are so-called single-core ICs, and the IC of the application core 10 and the IC of the real-time core 20 are mounted on a circuit board or the like of the in-vehicle communication device 3. However, the in-vehicle communication device 3 may be configured to mount a so-called multi-core IC and include the application core 10 and the real-time core 20 in one IC.

[0042] The storage units 31 and 32 are configured using non-volatile memory elements such as flash memories or EEPROMs (Electrically Erasable Programmable Read Only Memories). The storage unit 31 stores various computer programs such as application programs and the OS executed by the application core 10, and data necessary for the execution of these computer programs. The storage unit 32 stores various computer programs such as communication programs and real-time OSs executed by the real-time core 20, and data necessary for the execution of these computer programs. In the present embodiment, the in-vehicle communication device 3 is configured to include the storage units 31 and 32 for each core, but the present invention is not limited to this, and a configuration in which one storage unit is shared by the application core 10 and the real-time core 20 may be used.

[0043] The wireless communication unit 33 communicates with a server device 2 provided outside the vehicle 1 by wireless communication such as mobile phone communication networks or wireless LANs (Local Area Networks). Note that the wireless communication unit 33 may communicate with various devices provided outside the vehicle 1 in addition to the server device 2. The wireless communication unit 33 transmits data given from the application core 10 to the server device 2 and gives the data received from the server device 2 to the application core 10. The wireless communication unit 33 is mounted on the circuit board of the in-vehicle communication device 3 as, for example, one IC, and can exchange data with the application core 10 via wiring provided on the circuit board. However, the wireless communication unit 33 may be provided within the application core 10.

[0044] The application core 10 included in the in-vehicle communication device 3 according to this embodiment is, for example, a core that executes an application program, and the real-time core 20 is a core that performs relay processing related to communication within the vehicle 1. The application core 10 and the real-time core 20 are, for example, mounted on a circuit board of the in-vehicle communication device 3, electrically connected via wiring provided on the circuit board, and data can be exchanged via this wiring. In this embodiment, the application core 10 and the real-time core 20 exchange data by communicating with each other using the communication protocols of TCP (or UDP), IP, and Ethernet via this wiring.

[0045] The real-time core 20 communicates with one or more ECUs 4 provided within the vehicle 1 via one or more communication lines connected to the in-vehicle communication device 3. In the illustrated example, three communication lines conforming to the CAN communication protocol and three communication lines conforming to the LIN communication protocol are connected to the in-vehicle communication device 3. For example, these communication lines are connected to one or more connectors provided on the circuit board of the in-vehicle communication device 3, and these connectors and the real-time core 20 are electrically connected via wiring provided on the circuit board. The real-time core 20 relays the transmission and reception of data between the ECUs 4 connected to these communication lines, and also relays the transmission and reception of data between the application core 10 and the ECUs 4.

[0046] FIG. 3 is a block diagram showing the software configuration of the in-vehicle communication device 3 according to this embodiment. In the in-vehicle communication device 3 according to this embodiment, software modules indicated by the broken-line blocks in FIG. 3 are realized by the application core 10 and the real-time core 20 executing programs stored in the storage units 31 and 32. Note that in this embodiment, the modules indicated by the broken-line blocks in FIG. 3 are software modules realized by the execution of programs, but are not limited thereto, and may be hardware modules realized as hardware.

[0047] In this embodiment, the application core 10 includes a communication processing module 11, a CAN manager module 12, a LIN manager module 13, an application module 14, an uploader module 15, and the like. The real-time core 20 includes a CAN transceiver processing module 21, a LIN transceiver processing module 22, a relay processing module 23, and the like. In FIG. 3, the name of each block is abbreviated by omitting "module".

[0048] In the in-vehicle communication device 3 according to this embodiment, a plurality of modules in the core perform communication according to the TCP or UDP communication protocol to exchange data between the modules. Also, in the in-vehicle communication device 3 according to this embodiment, the application core 10 and the real-time core 20 perform communication according to the TCP or UDP communication protocol to exchange data between the cores. Thus, in the in-vehicle communication device 3 according to this embodiment, the data exchange within the core and the data exchange between the cores are performed by communication using a common communication protocol. In FIG. 3, the communication according to the TCP or UDP communication protocol is indicated by a solid arrow, and the communication according to other communication protocols (for example, CAN or LIN, etc.) is indicated by a dashed-dotted arrow.

[0049] Note that in the OSI reference model for communication protocols, TCP or UDP is a communication protocol classified in the transport layer. In this embodiment, for the communication between the application core 10 and the real-time core 20, the TCP or UDP communication protocol is used for the transport layer, for example, the IP communication protocol is used for the network layer, and the Ethernet communication protocol is used for the data link layer.

[0050] On the other hand, the communication between modules within the cores of the application core 10 and the real-time core 20 is realized by virtually implementing at least the transport layer's TCP or UDP communication protocol in software (such as an OS, etc.), and it is not necessary (or may be) to virtually reproduce the communication protocols of the network layer and the data link layer. In the in-vehicle communication device 3 according to the present embodiment, the IP communication protocol of the network layer is virtually reproduced in the communication between modules, and it is assumed that the communication protocol of the data link layer is not reproduced. One or more port numbers are respectively assigned to each module within the core, and each module can transmit data by specifying the port number of the destination module. Software such as the OS operating in each core identifies the module corresponding to the port number attached to the data transmitted by each module, and provides this data to the identified module, thereby performing the exchange of data between modules.

[0051] Also, in the in-vehicle communication device 3 according to the present embodiment, IP addresses are respectively preset for the application core 10 and the real-time core 20. Each module within the cores of the application core 10 and the real-time core 20 can exchange data with modules in another core by specifying the IP address and the port number. Software such as the OS operating in each core can determine whether the destination of this data is a module within its own core or a module in another core based on the IP address attached to the data transmitted by each module.

[0052] The CAN transmission / reception processing module 21 of the real-time core 20 is a module for communicating with the ECU 4 in the vehicle 1 according to the CAN communication protocol. The CAN transmission / reception processing module 21 receives data (messages, frames, etc.) conforming to the CAN communication protocol from the ECU 4 via a communication line, converts the received data into data conforming to the TCP or UDP communication protocol, and transmits it to the relay processing module 23. Also, the CAN transmission / reception processing module 21 receives data conforming to the TCP or UDP communication protocol from the relay processing module 23, converts the received data into data conforming to the CAN communication protocol, and transmits it to the ECU 4. In this embodiment, when three communication lines conforming to the CAN communication protocol are connected to the in-vehicle communication device 3, at least three port numbers are assigned to the CAN transmission / reception processing module 21, and the three port numbers and the three communication lines are associated with each other. Thereby, other modules can transmit data to the CAN transmission / reception processing module 21 by specifying these port numbers, and transmit data to the communication line corresponding to the port number.

[0053] The LIN transmission / reception processing module 22 is a module for communicating with the ECU 4 in the vehicle 1 according to the LIN communication protocol. The LIN transmission / reception processing module 22 receives data conforming to the LIN communication protocol from the ECU 4 via a communication line, converts the received data into data conforming to the TCP or UDP communication protocol, and transmits it to the relay processing module 23. Also, the LIN transmission / reception processing module 22 receives data conforming to the TCP or UDP communication protocol from the relay processing module 23, converts the received data into data conforming to the LIN communication protocol, and transmits it to the ECU 4. In this embodiment, similar to the case of the CAN transmission / reception processing module 21, when three communication lines conforming to the LIN communication protocol are connected to the in-vehicle communication device 3, at least three port numbers are assigned to the LIN transmission / reception processing module 22, and the three port numbers and the three communication lines are associated with each other.

[0054] The relay processing module 23 performs the process of relaying data transmission and reception between the CAN transmission / reception processing module 21, the LIN transmission / reception processing module 22, and the application core 10. For example, the relay processing module 23 transmits the data received from the CAN transmission / reception processing module 21 to the LIN transmission / reception processing module 22, and transmits the data received from the LIN transmission / reception processing module 22 to the CAN transmission / reception processing module 21, thereby relaying data between CAN and LIN in the vehicle 1. Also, for example, the relay processing module 23 transmits the data received from the CAN transmission / reception processing module 21 or the LIN transmission / reception processing module 22 to the application core 10 (or a specific module within the application core 10), and transmits the data received from the application core 10 to the CAN transmission / reception processing module 21 or the LIN transmission / reception processing module 22, thereby relaying data between the application core 10 and the ECU 4 in the vehicle 1.

[0055] The communication processing module 11 of the application core 10 performs data transmission and reception with the real-time core 20, transmits the data received from the real-time core 20 to the modules within the application core 10, and transmits the data received from the modules within the application core 10 to the real-time core 20. For example, the communication processing module 11 relays data between the CAN manager module 12 and the LIN manager module 13 within the application core 10 and the real-time core 20 (its relay processing module 23).

[0056] The CAN manager module 12 is a module for virtually providing the communication function based on the CAN communication protocol performed by the in-vehicle communication device 3 to the application module 14. Thereby, the application module 14 can transmit and receive data to and from the ECU 4 mounted on the vehicle 1 by transmitting and receiving data to and from the CAN manager module 12. A plurality of port numbers corresponding to the plurality of port numbers assigned to the CAN transmission / reception processing module 21 are assigned to the CAN manager module 12, and the application module 14 can transmit data to the ECU 4 from the corresponding CAN communication line by designating a port number and transmitting data to the CAN manager module 12.

[0057] The LIN manager module 13 is a module for virtually providing the communication function based on the LIN communication protocol performed by the in-vehicle communication device 3 to the application module 14. Thereby, the application module 14 can transmit and receive data to and from the ECU 4 mounted on the vehicle 1 by transmitting and receiving data to and from the LIN manager module 13. A plurality of port numbers corresponding to the plurality of port numbers assigned to the LIN transmission / reception processing module 22 are assigned to the LIN manager module 13, and the application module 14 can transmit data to the ECU 4 from the corresponding LIN communication line by designating a port number and transmitting data to the LIN manager module 13.

[0058] The application module 14 is a module that performs various processes such as providing information to the driver of the vehicle 1 or transmitting information to the outside of the vehicle 1 based on the data collected from the ECU 4 mounted on the vehicle 1. Although only one application module 14 is illustrated in FIG. 3, a plurality of application modules 14 can be executed in parallel in the application module 14. The application module 14 according to the present embodiment performs a process of transmitting the data in the vehicle 1 to the external server device 2 and transmitting the data received from the server device 2 to the ECU 4 of the vehicle 1. The application module 14 can receive data from the CAN manager module 12 or the LIN manager module 13, appropriately process the received data, and transmit the data to the uploader module 15, thereby transmitting the data to the server device 2. Further, the application module 14 can receive data from the uploader module 15, and transmit the received data to the ECU 4 connected to the CAN or LIN communication line corresponding to the port number by designating an appropriate port number and transmitting it to the CAN manager module 12 or the LIN manager module 13.

[0059] The uploader module 15 is a module that communicates with the server device 2 by controlling the operation of the wireless communication unit 33. In the present embodiment, the uploader module 15 receives data from the application module 14 and transmits (uploads) the received data to the server device 2. Further, when the uploader module 15 receives some data as a response from the server device 2 for the transmission of the data, the received data may be transmitted to the application module 14.

[0060] <Core Function Expansion> The in-vehicle communication device 3 according to this embodiment performs communication between the application core 10 and the real-time core 20 using the TCP or UDP communication protocol, and also performs communication between a plurality of modules within the application core 10 using the TCP or UDP communication protocol. As a result, each module within the application core 10 can transmit and receive data using the same communication method regardless of whether the communication partner exists within the same core.

[0061] FIG. 4 is a block diagram for explaining the scalability of the in-vehicle communication device 3 according to this embodiment. The in-vehicle communication device 3 illustrated in FIG. 4 has a configuration in which a CAN communication line is directly connected to the application core 10 and a function of directly performing CAN communication is added to the application core 10 without going through the real-time core 20, as compared with the configuration of the in-vehicle communication device 3 shown in FIG. 3.

[0062] For this function addition, the application core 10 is provided with a CAN transmission / reception processing module 16 similar to that of the real-time core 20. The CAN transmission / reception processing module 16 communicates with the ECU 4 in the vehicle 1 using the CAN communication protocol, and also communicates with each module within the application core 10, for example, the CAN manager module 12, using the TCP or UDP communication protocol. An appropriate port number is assigned to the CAN transmission / reception processing module 16. For example, the CAN manager module 12 can transmit data to the ECU 4 in the vehicle 1 by specifying the port number regardless of whether the CAN communication line is connected to the application core 10 or the real-time core 20.

[0063] <Proper Use of TCP and UDP> The in-vehicle communication device 3 according to this embodiment performs inter-core communication between the application core 10 and the real-time core 20 and communication between modules within the core using the TCP or UDP communication protocol. Both TCP and UDP, which are transport layer communication protocols, are upper-layer protocols of the IP, which is a network layer communication protocol, and can coexist. In the in-vehicle communication device 3 according to this embodiment, both the TCP and UDP communication protocols are available. When each module transmits data, it may select the TCP or UDP communication protocol according to the content, type, or importance of the data, and transmit the data using the selected communication protocol.

[0064] For example, the in-vehicle communication device 3 may transmit and receive data that the ECU 4 transmits and receives using the CAN communication protocol outside the in-vehicle communication device 3 using the TCP communication protocol inside the in-vehicle communication device 3, and transmit and receive data that the ECU 4 transmits and receives using the LIN communication protocol outside the in-vehicle communication device 3 using the UDP communication protocol inside the in-vehicle communication device 3. In this case, when the CAN transmission / reception processing module 21 receives data from the ECU 4 of the vehicle 1, it transmits this data to the relay processing module 23 using the TCP communication protocol, and the module that receives this data later performs data transmission and reception using the TCP communication protocol. When the LIN transmission / reception processing module 22 receives data from the ECU 4 of the vehicle 1, it transmits this data to the relay processing module 23 using the UDP communication protocol, and the module that receives this data later performs data transmission and reception using the UDP communication protocol. Each module such as the application module 14 transmits the data it generates using the TCP communication protocol when transmitting it to the ECU 4 connected to the CAN communication line, and transmits this data using the UDP communication protocol when transmitting it to the ECU 4 connected to the LIN communication line.

[0065] For example, the in-vehicle communication device 3 may select a communication protocol of TCP or UDP according to the ASIL required for the data to be transmitted and received. ASIL is a safety level defined in ISO 26262, which is a functional safety standard for the automotive industry. Five levels of safety levels, D, C, B, A, and QM, are defined in descending order of high safety criteria. For example, the system related to brakes or steering is level D, the system related to cruise control is level C, the system related to headlights and brake lights is level B, the system related to backlights is level A, and those unrelated to vehicle safety are set as QM. Each module of the in-vehicle communication device 3 can use the TCP communication protocol when transmitting and receiving data related to systems with ASIL levels D and C set, and use the UDP communication protocol when transmitting and receiving data related to systems with levels B, A, and QM set.

[0066] For example, when the in-vehicle communication device 3 transmits and receives data related to handshake or sequence control between a plurality of ECUs 4, it uses the TCP communication protocol to transmit and receive these data. The data related to handshake is, for example, data exchanged by a plurality of ECUs 4 prior to the start of communication, and may include information such as settings related to communication. Sequence control is a control method that proceeds through each stage of control in a predetermined order. The data related to sequence control may include, for example, data that notifies or commands the start or end of a control stage.

[0067] For example, when the in-vehicle communication device 3 transmits and receives data related to message authentication or data related to the history of cyberattacks, it uses the TCP communication protocol to transmit and receive this data. The data related to message authentication is, for example, data with a MAC (Message Authentication Code) attached or data including key information used for encryption. Also, when the ECU 4 detects a cyberattack such as a DoS (Denial of Service) attack, it may notify other ECUs 4 etc. that it has been subjected to a cyberattack. The data related to the history of cyberattacks may include notification data transmitted from the ECU 4 that has been subjected to such a cyberattack.

[0068] For example, when the in-vehicle communication device 3 transmits and receives data related to the in-vehicle environment of the vehicle 1, it uses the UDP communication protocol to transmit and receive this data. The data related to the in-vehicle environment may include data related to the settings or operations of in-vehicle devices such as air conditioning equipment or lighting equipment.

[0069] For example, when the in-vehicle communication device 3 transmits and receives time-series data related to the driving state of the vehicle 1, it uses the UDP communication protocol to transmit and receive this data. The time-series data related to the driving state may include data periodically detected by sensors such as the speed, acceleration, or steering angle of the vehicle 1.

[0070] Note that the criteria for selectively using the TCP or UDP communication protocol in the inter-core communication and inter-module communication of the in-vehicle communication device 3 are not limited to the criteria based on the communication protocol used in the network within the vehicle 1 such as CAN or LIN described above and the criteria based on the ASIL level required for the data, and any criteria may be adopted.

[0071] <Encryption> The in-vehicle communication device 3 according to this embodiment performs communication between cores of the application core 10 and the real-time core 20 and communication between modules within the cores using the communication protocol of TCP or UDP. For communication between cores, data is encrypted and transmitted and received, and for within the cores, data may be transmitted and received without encryption. For example, the relay processing module 23 of the real-time core 20 encrypts the data to be transmitted to the application core 10 and transmits the encrypted data to the communication processing module 11 of the application core 10. The communication processing module 11 that has received the encrypted data decrypts the encrypted data and transmits the decrypted data to the CAN manager module 12 or the LIN manager module 13 or the like. Similarly, the communication processing module 11 of the application core 10 encrypts the data to be transmitted to the real-time core 20 and transmits the encrypted data to the relay processing module 23 of the real-time core 20. The relay processing module 23 that has received the encrypted data decrypts the encrypted data and transmits the decrypted data to the CAN transmission / reception processing module 21 or the LIN transmission / reception processing module 22 or the like. The relay processing module 23 and the communication processing module 11 perform encryption and decryption using, for example, a common key, on the data to be transmitted and received. Note that the in-vehicle communication device 3 can encrypt data using SSL (Secure Sockets Layer) or TLS (Transport Layer Security).

[0072] Whether to encrypt the data to be transmitted and received can be determined based on, for example, whether the data to be transmitted and received is output as a signal to the outside of the IC. The configuration in which data transmitted and received between cores is encrypted and data transmitted and received within the cores is not encrypted is assumed when the application core 10 and the real-time core 20 are each mounted on the circuit board of the in-vehicle communication device 3 as separate ICs. In the case of a configuration in which the application core 10 and the real-time core 20 are housed in one IC, that is, a so-called multi-core configuration, it is not necessary to encrypt the data transmitted and received between the cores either.

[0073] The criterion for determining whether to encrypt the data transmitted and received by the in-vehicle communication device 3 is not limited to the criterion based on whether it is output to the outside of the IC, and any criterion may be adopted. Further, the in-vehicle communication device 3 may perform encryption for both data transmission and reception between cores and data transmission and reception within a core, or conversely, may not perform encryption for both data transmission and reception between cores and data transmission and reception within a core.

[0074] <Modified Example 1> FIG. 5 is a block diagram showing the configuration of the in-vehicle communication device 3 according to Modified Example 1. The in-vehicle communication device 3 according to Modified Example 1 has a configuration including one application core 10 and two real-time cores 20a and 20b. The application core 10 of the in-vehicle communication device 3 according to Modified Example 1 has the same configuration as the application core 10 shown in FIG. 3.

[0075] The two real-time cores 20a and 20b of the in-vehicle communication device 3 according to Modified Example 1 correspond to the functions of the real-time core 20 shown in FIG. 3 divided into two. That is, the first real-time core 20a includes a CAN transmission / reception processing module 21 and a relay processing module 23, and performs data transmission and reception with the ECU 4 of the vehicle 1 according to the CAN communication protocol, and also performs data transmission and reception with the application core 10 according to the TCP or UDP communication protocol. Further, the second real-time core 20b includes a LIN transmission / reception processing module 22 and a relay processing module 23, and performs data transmission and reception with the ECU 4 of the vehicle 1 according to the LIN communication protocol, and also performs data transmission and reception with the application core 10 according to the TCP or UDP communication protocol.

[0076] The three cores included in the in-vehicle communication device 3 according to Modification Example 1 may be mounted as individual ICs, for example, or two or three cores may be mounted as one IC. Further, the in-vehicle communication device 3 according to Modification Example 1 includes the first real-time core 20a having a CAN communication function and the second real-time core 20b having a LIN communication function, but is not limited thereto. For example, two of the same real-time cores 20 as shown in FIG. 3 may be provided. That is, the in-vehicle communication device 3 may include two real-time cores 20 having a CAN communication function and a LIN communication function. Further, the in-vehicle communication device 3 may include three or more real-time cores.

[0077] <Modification Example 2> FIG. 6 is a block diagram showing the configuration of the in-vehicle communication device 3 according to Modification Example 2. The in-vehicle communication device 3 according to Modification Example 2 includes two application cores 10a and 10b and one real-time core 20. The real-time core 20 of the in-vehicle communication device 3 according to Modification Example 2 has the same configuration as the real-time core 20 shown in FIG. 3. Further, in FIG. 6, the configuration of the modules in the two application cores 10a and 10b is simplified, and only the communication processing module 11 and the application module 14 are shown, and the illustration of the other modules is omitted.

[0078] The two application cores 10a and 10b of the in-vehicle communication device 3 according to Modification Example 2 execute application programs that perform different processes, respectively, so that application modules 14 that perform different processes are provided. The two application cores 10a and 10b may have the same hardware configuration (or may have different hardware configurations). By providing the in-vehicle communication device 3 with two application cores 10a and 10b, it becomes possible to execute a plurality of application programs in parallel.

[0079] The three cores included in the in-vehicle communication device 3 according to Modification Example 2 may be mounted, for example, as individual ICs, or, for example, two or three cores may be mounted as one IC. Further, the in-vehicle communication device 3 may include three or more application cores. Furthermore, the in-vehicle communication device 3 may include a plurality of application cores and a plurality of real-time cores. In this case, for example, a device or a core that performs a process of relaying communication between the plurality of cores may be included.

[0080] <Modification Example 3> FIG. 7 is a block diagram showing the configuration of the in-vehicle communication system according to Modification Example 3. The in-vehicle communication system according to Modification Example 3 includes a first in-vehicle communication device 3A having an application core 10 and a second in-vehicle communication device 3B having a real-time core 20. The first in-vehicle communication device 3A and the second in-vehicle communication device 3B are connected via a communication line. The communication processing module 11 of the application core 10 of the first in-vehicle communication device 3A and the relay processing module 23 of the real-time core 20 of the second in-vehicle communication device 3B can perform communication based on communication protocols such as TCP, IP, and Ethernet via this communication line.

[0081] As shown in Modification Example 3, the application core 10 and the real-time core 20 may be distributed and mounted on a plurality of in-vehicle communication devices instead of being mounted on one in-vehicle communication device.

[0082] <Summary> The in-vehicle communication device 3 according to the present embodiment configured as described above includes an application core (application processing unit) 10 and a real-time core (relay processing unit) 20. The application core 10 is a processor, an IC, or the like that executes an application program. The real-time core 20 is a processor, an IC, or the like that communicates with one or a plurality of ECUs (in-vehicle devices) 4 and relays the transmission and reception of data between the ECU 4 and the application core 10 by performing communication using a predetermined communication protocol with the application core 10. The application core 10 has a plurality of modules that perform processes related to the execution of the application program. These plurality of modules communicate with each other using the same predetermined communication protocol as that used for the communication between the application core 10 and the real-time core 20. By unifying the communication protocol inside and outside the application core 10 in this way, it is expected that the addition or change of the functions of the application core 10 can be facilitated, and the expandability of the in-vehicle communication device 3 can be improved.

[0083] Also, the in-vehicle communication device 3 according to the present embodiment performs the communication between the application core 10 and the real-time core 20 and the communication between the plurality of modules within the application core 10 using the communication protocol of TCP or UDP. The communication protocols of TCP and UDP are communication protocols that have been widely used conventionally, and it is expected that highly reliable communication can be realized. Also, the communication protocols of TCP and UDP are communication protocols of the transport layer of the OSI reference model, and are both upper layer protocols of IP, which is a communication protocol of the network layer, and can coexist.

[0084] Also, in the in-vehicle communication device 3 according to the present embodiment, the real-time core 20 transmits the data received by the LIN communication protocol to the application core 10 by the UDP communication protocol, and transmits the data received by the CAN communication protocol to the application core 10 by the TCP communication protocol. Thereby, the in-vehicle communication device 3 can handle the data transmitted and received by the CAN communication protocol, which is likely to handle data that requires relatively high reliability, by the highly reliable TCP communication protocol, and can handle the data transmitted and received by the LIN communication protocol, which is likely to handle data that does not require relatively high reliability, by the UDP communication protocol that has low reliability but can communicate at high speed.

[0085] Also, in the in-vehicle communication device 3 according to the present embodiment, in the communication between the application core 10 and the real-time core 20 and in the communication between the modules within the application core 10, either the TCP or UDP communication protocol is used according to the ASIL required for the data to be transmitted and received. Thereby, the in-vehicle communication device 3 can transmit and receive data that requires a high safety level by the highly reliable TCP communication protocol, and can transmit and receive data that requires a low safety level by the UDP communication protocol that has lower reliability than TCP but can communicate at high speed.

[0086] Also, the in-vehicle communication device 3 according to the present embodiment encrypts the data transmitted and received between the application core 10 and the real-time core 20, and does not encrypt the data transmitted and received between a plurality of modules within the application core 10. Thereby, the in-vehicle communication device 3 can encrypt the data that is easily intercepted from the outside to enhance safety, and can be expected to transmit and receive data that is difficult to intercept from the outside at high speed without encryption.

[0087] In the present embodiment, the communication between the cores of the application core 10 and the real-time core 20 and the communication within the cores are performed using the TCP or UDP communication protocol. However, the present invention is not limited to this, and the communication between the cores and the communication within the cores may be performed using communication protocols other than TCP and UDP, such as various communication protocols such as DCCP (Datagram Congestion Control Protocol), SCTP (Stream Control Transmission Protocol), RSVP (Resource Reservation Protocol), CAN, or LIN. Also, in the present embodiment, the in-vehicle communication device 3 is configured to communicate with the ECU 4 in the vehicle 1 using the CAN or LIN communication protocol. However, the present invention is not limited to this, and the communication may be performed using communication protocols other than CAN or LIN, such as various communication protocols such as CAN-FD (CAN with Flexible Data Rate), FlexRay (registered trademark), or Ethernet. Further, in the present embodiment, an example is shown in which the application program executed by the application core 10 performs a process of transmitting data to the server device 2 outside the vehicle 1. However, the present invention is not limited to this, and the application program may perform any process.

[0088] The embodiments disclosed this time should be considered as illustrative in all respects and not restrictive. The scope of the present disclosure is shown not by the above description but by the claims, and it is intended that all modifications within the meaning and scope equivalent to the claims are included.

[0089] <Appendix> An in-vehicle communication device mounted on a vehicle, comprising an application processing unit that executes an application program, the application processing unit has a plurality of modules each of which performs a process related to the execution of the application program, and communicates with the outside using a predetermined communication protocol, the plurality of modules communicate with each other using the predetermined communication protocol. In-vehicle communication device.

Explanation of symbols

[0090] 1 Vehicle 2 Server device 3 In-vehicle communication device 3A First in-vehicle communication device (application processing device) 3B Second in-vehicle communication device (relay processing device) 4 ECU (in-vehicle device) 10, 10a, 10b Application core (application processing unit) 11 Communication processing module 12 CAN manager module 13 LIN manager module 14 Application module 15 Uploader module 16 CAN transmission / reception processing module 20, 20a, 20b Real-time core (relay processing unit) 21 CAN transmission / reception processing module 22 LIN transmission / reception processing module 23 Relay processing module 31, 32 Storage unit 33 Wireless communication unit

Claims

1. An in-vehicle communication device mounted on a vehicle, an application processing unit that executes an application program, a relay processing unit that communicates with one or more in-vehicle devices, communicates with the application processing unit using a predetermined communication protocol, and relays the transmission and reception of data between the in-vehicle devices and the application processing unit and comprising the application processing unit has a plurality of modules each of which performs processing related to the execution of the application program, the plurality of modules communicate with each other using the predetermined communication protocol, the predetermined communication protocol is TCP (Transmission Control Protocol) and UDP (User Datagram Protocol), the application processing unit, the relay processing unit, and the modules transmit and receive the data using either TCP or UDP communication protocol according to the ASIL (Automotive Safety Integrity Level) required for the data to be transmitted and received, an in-vehicle communication device.

2. The relay processing unit communicates with the in-vehicle device using communication protocols of LIN (Local Interconnect Network) and CAN (Controller Area Network), transmits data received by the LIN communication protocol to the application processing unit using the UDP communication protocol, transmits data received by the CAN communication protocol to the application processing unit using the TCP communication protocol, the in-vehicle communication device according to claim 1.

3. the data to be transmitted and received includes data related to handshake between a plurality of in-vehicle devices or data related to sequence control between a plurality of in-vehicle devices, the application processing unit, the relay processing unit, and the modules transmit and receive the data related to the handshake or the data related to the sequence control using the TCP communication protocol, the in-vehicle communication device according to claim 1 or claim 2.

4. the data to be transmitted and received includes data related to message authentication or data related to the history of cyber attacks, The application processing unit, the relay processing unit, and the module transmit and receive data related to the message authentication or data related to the history of the cyber attack using the communication protocol of TCP. The in-vehicle communication device according to any one of claims 1 to 3.

5. The data to be transmitted and received includes data related to the interior environment of the vehicle. The application processing unit, the relay processing unit, and the module transmit and receive the data related to the interior environment using the communication protocol of UDP. The in-vehicle communication device according to any one of claims 1 to 4.

6. The data to be transmitted and received includes time-series data related to the driving state of the vehicle. The application processing unit, the relay processing unit, and the module transmit and receive the time-series data related to the driving state using the communication protocol of UDP. The in-vehicle communication device according to any one of claims 1 to 5.

7. Encrypt the data transmitted and received between the application processing unit and the relay processing unit. The in-vehicle communication device according to any one of claims 1 to 6.

8. An in-vehicle communication device mounted on a vehicle, Comprising an application core that executes an application program, The application core executes a plurality of software modules related to the application program, The plurality of software modules transmit and receive data using a communication protocol of TCP or UDP according to the ASIL required for the data to be transmitted and received. In-vehicle communication device.

9. An in-vehicle communication system mounted on a vehicle, An application processing device that executes an application program, A relay processing device that communicates with one or more in-vehicle devices, communicates with the application processing device using a predetermined communication protocol, and relays the transmission and reception of data between the in-vehicle device and the application processing device And The application processing device has a plurality of modules each of which performs processing related to the execution of the application program, The plurality of modules communicate using the predetermined communication protocol, The predetermined communication protocol is TCP and UDP. The application processing device, the relay processing device, and the module transmit and receive the data using either a TCP or UDP communication protocol according to the ASIL required for the data to be transmitted and received. In-vehicle communication system.

Citation Information

Patent Citations

  • Control system for vehicle

    JP2008174098A

  • Electronic control units and service management system for vehicles

    JP2017220220A

  • Computational unit and determination method

    JP2020166583A

  • Communication method based on automotive safety integrity level in vehicle network and apparatus for the same

    US20180076970A1

  • Management device, on-board system, vehicle, communication management method and communication management program

    WO2021079638A1