In-vehicle device, program, and information processing method

The in-vehicle device optimizes communication processing by separating high-processing tasks for vehicle control and communication control, ensuring efficient and reliable communication within the vehicle system.

JP7718586B2Active Publication Date: 2025-08-05AUTONETWORKS TECH LTD +2
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2024517954
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2022-04-27
Filing Date
2023-04-10
Publication Date
2025-08-05
Estimated Expiration
2043-04-10

AI Technical Summary

Technical Problem

Existing in-vehicle ECUs face inefficiencies in communication-related processing when executing multiple applications, with a lack of consideration for optimizing communication control and logical operation processing.

Method used

The in-vehicle device is configured with a first processing unit and a second processing unit, where the first unit handles high-processing tasks like vehicle control and the second unit handles communication control, connected via upper layer communication units, distributing processing loads and optimizing communication data selection and filtering.

Benefits of technology

This configuration enables efficient communication-related processing, reduces monopolization of high-processing units, optimizes communication bandwidth, and ensures reliable communication within the vehicle system, while maintaining safety and efficiency across different safety levels.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007718586000001
    Figure 0007718586000001
  • Figure 0007718586000002
    Figure 0007718586000002
  • Figure 0007718586000003
    Figure 0007718586000003
Patent Text Reader

Abstract

This in-vehicle device is connected to an in-vehicle network that is installed in a vehicle. The in-vehicle device comprises a first processing unit, a second processing unit that is connected to the first processing unit, and a physical layer communication unit that is connected to the second processing unit, the first processing unit including a first upper layer communication unit that corresponds to an upper layer above the physical layer communication unit, and the second processing unit including a second upper layer communication unit that corresponds to an upper layer above the physical layer communication unit. The first and second processing units are connected via the first upper layer communication unit, and the second processing unit and the physical layer communication unit are connected via the second upper layer communication unit.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to an in-vehicle device, a program, and an information processing method. This application claims priority from Japanese Application No. 2022-073430, filed April 27, 2022, and incorporates by reference all of the contents of said Japanese application. [Background technology]

[0002] A vehicle is equipped with a body ECU, which is an on-board ECU (Electronic Control Unit) that controls body-related devices such as a wiper drive device, interior and exterior lighting devices, door lock devices, and power windows (see, for example, Patent Document 1). The wiper drive device of Patent Document 1 includes an on-board ECU (body ECU) and is driven by a control program applied to the on-board ECU. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Publication No. 2017-224926 Summary of the Invention

[0004] An in-vehicle device according to one embodiment of the present disclosure is an in-vehicle device connected to an in-vehicle network mounted on a vehicle, and comprises a first processing unit, a second processing unit connected to the first processing unit, and a physical layer communication unit connected to the second processing unit, wherein the first processing unit includes a first upper layer communication unit corresponding to a layer higher than the physical layer communication unit, and the second processing unit includes a second upper layer communication unit corresponding to a layer higher than the physical layer communication unit, and the first processing unit and the second processing unit are connected via the first upper layer communication unit, and the second processing unit and the physical layer communication unit are connected via the second upper layer communication unit. [Brief explanation of the drawings]

[0005] [Figure 1]1 is a schematic diagram illustrating a system configuration of an in-vehicle system according to a first embodiment. [Figure 2] FIG. 2 is a block diagram illustrating an example of the internal configuration of an in-vehicle device included in the in-vehicle system. [Figure 3] FIG. 10 is an explanatory diagram illustrating an example of a communication control table. [Figure 4] 4 is a flowchart illustrating processing by a first processing unit and a second processing unit included in the in-vehicle device. DETAILED DESCRIPTION OF THE INVENTION

[0006] [Problem to be solved by this disclosure] In the in-vehicle ECU of Patent Document 1, when a control unit provided in the in-vehicle ECU executes multiple applications, no consideration is given to efficiently performing communication-related processing executed in accordance with the operation of these applications.

[0007] The present disclosure aims to provide an in-vehicle device or the like that can efficiently perform communication-related processing.

[0008] [Effects of this disclosure] According to one aspect of the present disclosure, it is possible to provide an in-vehicle device or the like that efficiently performs communication-related processing.

[0009] [Description of the embodiments of the present disclosure] First, embodiments of the present disclosure will be listed and described. At least some of the embodiments described below may be combined in any desired manner.

[0010] (1) An in-vehicle device according to one embodiment of the present disclosure is an in-vehicle device connected to an in-vehicle network mounted on a vehicle, and includes a first processing unit, a second processing unit connected to the first processing unit, and a physical layer communication unit connected to the second processing unit, wherein the first processing unit includes a first upper layer communication unit corresponding to a layer higher than the physical layer communication unit, and the second processing unit includes a second upper layer communication unit corresponding to a layer higher than the physical layer communication unit, and the first processing unit and the second processing unit are connected via the first upper layer communication unit, and the second processing unit and the physical layer communication unit are connected via the second upper layer communication unit.

[0011] In this aspect, the in-vehicle device includes a plurality of processing units, each consisting of a first processing unit and a second processing unit, and these processing units (the first processing unit and the second processing unit) are configured, for example, by a microcomputer. The in-vehicle device includes a physical layer communication unit, such as a CAN (Control Area Network) transceiver or an Ethernet (registered trademark) PHY unit, and is connected to an in-vehicle network, such as a CAN bus or an Ethernet cable, via the physical layer communication unit. The first processing unit (first microcomputer) and the second processing unit (second microcomputer) each include an upper layer communication unit corresponding to a layer higher than the physical layer communication unit, and the upper layer communication unit is configured, for example, by a CAN controller. That is, the first processing unit includes a first upper layer communication unit (CAN controller), and the second processing unit includes a second upper layer communication unit (CAN controller). When the in-vehicle device is connected to the in-vehicle network via the physical layer communication unit, the second upper layer communication unit of the second processing unit is connected to the physical layer communication unit, and the first upper layer communication unit of the first processing unit is connected to the second processing unit. As a result, the physical layer communication unit, the second processing unit (second upper layer communication unit), and the first processing unit (first upper layer communication unit) are connected in series to the in-vehicle network in this order. Therefore, since the first processing unit is connected to the physical layer communication unit and the in-vehicle network via the second processing unit, the second processing unit can be responsible for outputting communication data output from the first processing unit to the in-vehicle network via the physical layer communication unit. By distributing the processing load related to communication control such as CAN control (aggregating the processing amount) to the second processing unit, communication-related processing can be performed efficiently. The processing load related to communication control such as CAN control in the first processing unit can be reduced, preventing the first processing unit from being monopolized by communication control. Furthermore, the first processing unit can be made to efficiently execute logical arithmetic processing related to vehicle control itself, such as processing compliant with AUTOSAR (realizing logical functions as an in-vehicle device).

[0012] (2) In the in-vehicle device according to one aspect of the present disclosure, the processing capability of the first processing unit is higher than the processing capability of the second processing unit.

[0013] In this aspect, the processing power of the first processing unit is higher than that of the second processing unit directly connected to the physical layer communication unit. Therefore, the first processing unit, which has a relatively high processing power and is expensive, can be made to perform logical operation processing related to vehicle control itself, such as processing conforming to AUTOSAR, thereby enabling the first processing unit to be effectively utilized. The second processing unit, which has a relatively low processing power and is inexpensive, can be made to perform communication control, such as CAN control, which requires high real-time performance but mainly involves I / O control, thereby enabling the second processing unit to be effectively utilized. By dividing the processing to be performed by the first processing unit, which has a high processing power and is expensive, and the second processing unit, which has a low processing power and is inexpensive, depending on the type of operation processing, it is possible to efficiently perform both logical operation processing related to vehicle control and processing related to communication control, such as CAN control.

[0014] (3) In one embodiment of the in-vehicle device of the present disclosure, the first processing unit executes a plurality of programs related to the control of the vehicle, and the second processing unit executes a process related to selecting communication data to be output to the in-vehicle network from the communication data generated by the first processing unit executing the programs.

[0015] In this aspect, the first processing unit generates communication data by executing a plurality of programs related to vehicle control and outputs the generated communication data to the second processing unit. The second processing unit executes a process related to selecting communication data to be output to the in-vehicle network via the physical layer communication unit from the communication data output from the first processing unit, thereby preventing unnecessary communication data (CAN messages, etc.) from being output (transmitted) from the in-vehicle device to the in-vehicle network. This makes it possible to suppress an increase in traffic (communication bandwidth usage) on the in-vehicle network.

[0016] (4) In one embodiment of the in-vehicle device of the present disclosure, the first processing unit has multiple first upper layer communication units, and the multiple first upper layer communication units are connected to a bus connection circuit included in the second processing unit.

[0017] In this aspect, the first processing unit includes a plurality of first upper layer communication units, and the second processing unit includes a bus connection circuit to which each of the plurality of first upper layer communication units is connected. This allows the first processing unit and the second processing unit to be connected via multiple paths via the plurality of first upper layer communication units, thereby providing redundancy in the communication paths between the first processing unit and the second processing unit and increasing the communication bandwidth, thereby ensuring communication quality. The plurality of first upper layer communication units of the first processing unit are connected to the bus connection circuit included in the second processing unit, and the bus connection circuit forms a closed network (in-vehicle CAN bus) within the in-vehicle device. This allows communication between programs (applications) (inter-process communication) that is performed only within the in-vehicle device to be performed via the bus connection circuit (in-vehicle CAN bus), enabling efficient communication within the in-vehicle device without being affected by communication conditions in the in-vehicle network outside the in-vehicle device.

[0018] (5) In one embodiment of the in-vehicle device of the present disclosure, the first processing unit executes multiple programs with different safety levels defined by ASIL, and the multiple first upper layer communication units are divided according to the safety levels of the programs.

[0019] In this aspect, the first processing unit executes a plurality of programs having different safety levels defined by ASIL (Automotive Safety Integrity Level), and each of the communication data output by executing these programs is output to the second processing unit via one of the plurality of first upper layer communication units. The plurality of first upper layer communication units are divided according to the safety levels of the programs, and are set so that the allocation of communication data varies depending on the safety levels. That is, the plurality of first upper layer communication units include a first upper layer communication unit (high-level first upper layer communication unit) to which communication data of a program having a relatively high safety level is allocated, and a first upper layer communication unit (low-level first upper layer communication unit) to which communication data of a program having a relatively low safety level is allocated. By dividing the plurality of first upper layer communication units according to the safety levels of the programs (allocating communication data), it is possible to mitigate the influence of communication of a program having a high safety level on communication of a program having a low safety level.

[0020] (6) In an in-vehicle device according to one embodiment of the present disclosure, the second processing unit includes a filter unit that filters communication data output from the first processing unit via the bus connection circuit, and the filter unit is disposed between the bus connection circuit and the second upper layer communication unit.

[0021] In this aspect, the second processing unit includes a filter unit, and the filter unit is provided between the bus connection circuit and the second upper layer communication unit. The second processing unit uses the filter unit to filter the communication data output from the first processing unit via the bus connection circuit. This allows the in-vehicle device to efficiently perform processing related to selecting the communication data to be output to the in-vehicle network from the communication data generated and output by the first processing unit executing the program.

[0022] (7) In the in-vehicle device according to one aspect of the present disclosure, the second processing unit acquires a control signal output from the first processing unit, and performs filtering by the filter unit according to the acquired control signal.

[0023] In this aspect, when filtering the communication data output from the first processing unit, the second processing unit controls the filter unit to perform filtering in accordance with the control signal output from the first processing unit. By performing filtering in accordance with the control signal, it is possible to efficiently sort the communication data output from the first processing unit into communication data to be output to the in-vehicle network via the physical layer communication unit and communication data not to be output.

[0024] (8) In the in-vehicle device according to one aspect of the present disclosure, the first processing unit and the second processing unit each include a control signal I / F for transmitting and receiving the control signal.

[0025] In this aspect, the control signal generating unit included in the first processing unit generates a control signal indicating whether or not communication data is subject to filtering, based on communication data received by the first upper layer communication unit, and outputs the control signal to the control I / F of the second processing unit. The control signal generating unit of the first processing unit and the control I / F of the second processing unit function as a control signal I / F when transmitting and receiving control signals and the like between these functional components. Control signals for performing processing related to filtering are transmitted and received via the control signal I / Fs of the first processing unit and the second processing unit (the control signal generating unit of the first processing unit, the control I / F of the second processing unit), respectively, and therefore can be prevented from affecting the first upper layer communication unit and the bus connection circuit through which communication data such as CAN messages flow.

[0026] (9) A program according to one embodiment of the present disclosure is a program for causing a computer to execute processing, the program being connected to an in-vehicle network mounted on a vehicle and including a first processing unit, a second processing unit connected to the first processing unit, and a physical layer communication unit connected to the second processing unit, the first processing unit including a first upper layer communication unit corresponding to a layer higher than the physical layer communication unit, the second processing unit including a second upper layer communication unit corresponding to a layer higher than the physical layer communication unit, the first processing unit and the second processing unit being connected via the first upper layer communication unit, and the second processing unit and the physical layer communication unit being connected via the second upper layer communication unit, the program causing the first processing unit to execute a plurality of programs related to control of the vehicle and output communication data generated by execution of the programs to the second processing unit via the first upper layer communication unit, and the second processing unit to receive the communication data output from the first processing unit and execute a process of selecting communication data from the received communication data to be output to the in-vehicle network.

[0027] In this aspect, it is possible to provide a program that causes a computer to function as an in-vehicle device that efficiently performs communication-related processing.

[0028] (10) An information processing method according to one aspect of the present disclosure is an information processing method for causing a computer to execute processing, the information processing method comprising: a computer connected to an in-vehicle network mounted on a vehicle, the computer comprising: a first processing unit; a second processing unit connected to the first processing unit; and a physical layer communication unit connected to the second processing unit; the first processing unit including a first upper layer communication unit corresponding to a layer higher than the physical layer communication unit; the second processing unit including a second upper layer communication unit corresponding to a layer higher than the physical layer communication unit; the first processing unit and the second processing unit being connected via the first upper layer communication unit; and the second processing unit and the physical layer communication unit being connected via the second upper layer communication unit, the information processing method comprising causing the first processing unit to execute a plurality of programs related to control of the vehicle and output communication data generated by execution of the programs to the second processing unit via the first upper layer communication unit; and causing the second processing unit to receive the communication data output from the first processing unit and execute a process of selecting communication data from the received communication data to be output to the in-vehicle network.

[0029] In this aspect, it is possible to provide an information processing method that causes a computer to function as an in-vehicle device that efficiently performs communication-related processing.

[0030] [Details of the embodiments of the present disclosure] The present disclosure will be specifically described with reference to drawings showing embodiments thereof. An in-vehicle device 1 according to an embodiment of the present disclosure will be described below with reference to the drawings. Note that the present disclosure is not limited to these examples, but is defined by the claims, and is intended to include all modifications within the meaning and scope equivalent to the claims.

[0031] (Embodiment 1) Hereinafter, embodiments will be described with reference to the drawings. Fig. 1 is a schematic diagram illustrating the system configuration of an in-vehicle system S according to embodiment 1. The in-vehicle system S is configured with an in-vehicle device 1 and an in-vehicle ECU 3 mounted on a vehicle C, a relay device 2 that communicatively connects these, and an in-vehicle network 4.

[0032] The in-vehicle device 1 may be an integrated ECU that performs integrated control of the entire vehicle C. Alternatively, the in-vehicle device 1 may be configured as a body ECU that controls body actuators of the vehicle C. The in-vehicle device 1 may be connected to in-vehicle devices such as sensors or actuators. Details of the in-vehicle device 1 will be described later.

[0033] The in-vehicle ECU 3 includes a processing unit, a storage unit, an input / output I / F, an in-vehicle communication unit, etc., and may be connected to in-vehicle devices such as sensors or actuators. The in-vehicle ECU 3 performs processing related to the control of these in-vehicle devices. The in-vehicle ECU 3 may be an individual ECU connected under the control of the in-vehicle device 1 that functions as an integrated ECU.

[0034] The relay device 2 is configured by, for example, a CAN gateway or an Ethernet switch. A plurality of communication lines 41, such as a CAN bus or an Ethernet cable, are connected to the relay device 2, and the relay device 2 relays communication data transmitted and received between the in-vehicle ECUs 3 connected to these communication lines 41, and between the in-vehicle device 1 and the in-vehicle ECU 3. The in-vehicle network 4 is configured by the plurality of communication lines 41 connected to the relay device 2. The in-vehicle device 1 and the in-vehicle ECUs 3, etc. are connected via the in-vehicle network 4 so that they can communicate with each other.

[0035] 2 is a block diagram illustrating an example of the internal configuration of an in-vehicle device 1 included in an in-vehicle system S. The in-vehicle device 1 includes a first processing unit 100, a second processing unit 200, and a physical layer communication unit 300. The first processing unit 100, the second processing unit 200, and the physical layer communication unit 300 are connected, for example, by an internal bus or inter-board wiring. When the in-vehicle device 1 is connected to the in-vehicle network 4, the physical layer communication unit 300, the second processing unit 200, and the first processing unit 100 are connected in series in this order from the in-vehicle network 4 side.

[0036] The first processing unit 100 (first microcomputer) may be configured with a microcomputer or the like having a higher processing power than the second processing unit 200 (second microcomputer). The first processing unit 100 (first microcomputer) and the second processing unit 200 (second microcomputer) may be configured on a single chip or multiple chips. In the case of a single chip configuration, the in-vehicle device 1 may be configured with a chip having an eFPGA configuration in which a microcomputer (first processing unit 100) is integrated with an FPGA (second processing unit 200). In this way, the in-vehicle device 1 may be configured as a heterogeneous multiprocessor system.

[0037] The first processing unit 100 (first microcomputer) is configured with, for example, a microcomputer, and efficiently executes logical calculation processing related to vehicle C control itself, such as processing conforming to AUTOSAR (realizing the logical functions of the in-vehicle device 1). The first processing unit 100 includes a first control unit 101, a first storage unit 102, a first internal bus 103, a first upper layer communication unit 104, and a control signal generation unit 105. The first control unit 101, the first storage unit 102, the first upper layer communication unit 104, and the control signal generation unit 105 are connected to each other via the first internal bus 103 so as to be able to communicate with each other.

[0038] The first control unit 101 is configured with a CPU (Central Processing Unit) or an MPU (Micro Processing Unit), and performs various control processes and arithmetic processes by reading and executing a control program P (program product) and data pre-stored in the first storage unit 102. The control unit includes, for example, a single-core single CPU, a single-core multiple CPU, a multi-core single CPU, and a multi-core multiple CPU.

[0039] The control program P may include multiple programs (applications) with different safety levels defined by ASIL (Automotive Safety Integrity Level). The first control unit 101 executes these multiple programs (applications) using pipeline parallelism or the like to perform logical operation processing related to vehicle C control itself, such as processing conforming to AUTOSAR. The first control unit 101 outputs communication data generated by executing these multiple programs (applications) to the first upper layer communication unit 104 via the first internal bus 103.

[0040] The first storage unit 102 is configured with a volatile memory element such as a random access memory (RAM), a non-volatile memory element such as a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory, or a combination of these storage devices, and pre-stores a control program P (program product) and data to be referenced during processing. The control program P (program product) stored in the first storage unit 102 may be a control program P (program product) read from a recording medium M readable by the in-vehicle device 1. Alternatively, the control program P (program product) may be downloaded from an external computer (not shown) connected to a communication network (not shown) and stored in the first storage unit 102. The first storage unit 102 may also store a communication control table (described later).

[0041] The first internal bus 103 is configured by, for example, lands, a conductor pattern, etc. formed on a board on which the first control unit 101 etc. are mounted, or on a microcomputer board etc. that constitutes the first processing unit 100. The first control unit 101, the first storage unit 102, the first upper layer communication unit 104, and the control signal generation unit 105 are communicatively connected via the first internal bus 103.

[0042] The first upper layer communication unit 104 is a communication unit corresponding to a data link layer or the like, which is a layer higher than the physical layer, such as a CAN controller or an Ethernet controller. In this embodiment, the first processing unit 100 may include two or more first upper layer communication units 104. These multiple first upper layer communication units 104 may be classified according to the security levels of the programs (applications) executed by the first control unit 101. This classification, i.e., the allocation of the first upper layer communication units 104 according to the programs (applications), may be defined in a communication control table, which will be described later.

[0043] The control signal generating unit 105 is a hardware processing unit configured with an arithmetic circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). Alternatively, the control signal generating unit 105 may be a software processing unit configured with an MPU or the like, similar to the first control unit 101. The control signal generating unit 105 acquires, monitors, or samples communication data generated and output by the first control unit 101 executing a program via the first internal bus 103. The control signal generating unit 105 reads, for example, a communication control table stored in the first storage unit 102, determines whether filtering of the communication data output from the first control unit 101 is necessary, and outputs a control signal (control request) to the control I / F 205 of the second processing unit 200 according to the determination result. The control signal may be, for example, an SPI, I2C, UART, or GPIO used on or between the boards on which the first processing unit 100 and the second processing unit 200 are mounted. The control signal generating unit 105 functions as a control signal I / F when transmitting and receiving control signals and the like.

[0044] The second processing unit 200 (second microcomputer) is configured by, for example, a microcomputer, and mainly performs communication control such as CAN control, and performs processing related to the selection of communication data to be output from the in-vehicle device 1 to the in-vehicle network 4. The second processing unit 200 includes a second control unit 201, a second memory unit 202, a second internal bus 203, a second upper layer communication unit 204, a control I / F 205, a circuit control unit 206, a bus connection circuit 207, and a filter unit 208.

[0045] The second control unit 201, the second storage unit 202, the control I / F 205, and the circuit control unit 206 are communicatively connected via a second internal bus 203. The circuit control unit 206 and the filter unit 208 are communicatively connected via the internal bus. The bus connection circuit 207, the filter unit 208, and the second upper layer communication unit 204 are communicatively connected in series in this order via the internal bus. The bus connection circuit 207 is communicatively connected to each of the multiple first upper layer communication units 104 included in the first processing unit 100 via the internal bus. The second upper layer communication unit 204 is communicatively connected to the physical layer communication unit 300 via the internal bus. Therefore, in the flow direction of communication data transmitted from the first processing unit 100 to the second processing unit 200, these functional units are connected in series in the following order: first upper layer communication unit 104 of the first processing unit 100, bus connection circuit 207, filter unit 208, second upper layer communication unit 204 of the second processing unit 200, and physical layer communication unit 300. This forms a communication circuit that runs from the first processing unit 100 via the second processing unit 200 to the physical layer communication unit 300.

[0046] The second control unit 201, like the first control unit 101, is configured with a CPU or the like, and performs various control processes and arithmetic processes by reading and executing a control program P (program product) and data pre-stored in the second storage unit 202. The second control unit 201 may be configured as a simple processor with lower processing power than the first control unit 101. Alternatively, the second control unit 201 may be configured with an FPGA or the like. The second control unit 201 acquires a control signal (control request) output from the first processing unit 100 (control signal generating unit 105) via the control I / F 205, performs processing such as interpretation of the acquired control signal, and performs processing for controlling the circuit control unit 206. The second control unit 201 may generate a signal for controlling the circuit control unit 206 in response to the control signal (control request) from the first processing unit 100 (control signal generating unit 105), and output the signal to the circuit control unit 206.

[0047] The second storage unit 202 is configured with RAM, ROM, or the like, similar to the first storage unit 102, and stores in advance the control program P (program product) and data to be referenced during processing. The storage capacity of the second storage unit 202 may be smaller than that of the first storage unit 102. This allows the component cost of the second processing unit 200 to be reduced.

[0048] The second internal bus 203 is configured by, for example, lands, a conductor pattern, etc. formed on a board on which the second control unit 201 etc. are mounted, or on a microcomputer board etc. that constitutes the second processing unit 200. The second control unit 201, the second storage unit 202, the control I / F 205, and the circuit control unit 206 are communicatively connected via the second internal bus 203.

[0049] The control I / F 205 is an I / F that receives a control signal (control request) from the control signal generating unit 105 of the first processing unit 100, and functions as a control signal I / F when transmitting and receiving a control signal, etc. The control I / F 205 may transmit the received control signal (control request) to the second control unit 201 via the second storage unit 202 configured by a RAM or the like, or by using a control register.

[0050] The circuit control unit 206 is a functional part that uses means such as a register to provide an interface to a communication circuit including the filter unit 208, etc. The circuit control unit 206 activates filtering processing by the filter unit 208 in accordance with control by the second control unit 201.

[0051] The bus connection circuit 207 is configured by an electric circuit provided on, for example, a board on which the second control unit 201 and the like are mounted, or a microcomputer board that constitutes the second processing unit 200. Alternatively, the bus connection circuit 207 may be configured (realized) as a logic circuit using programmable logic such as an FPGA. The first upper layer communication unit 104 of the first processing unit 100 and the filter unit 208 of the second processing unit 200 are connected to the bus connection circuit 207, thereby functioning as a network within the in-vehicle device 1 (such as a CAN bus within the in-vehicle device 1).

[0052] The filter unit 208 is a functional component that performs filtering processing in accordance with the control of the circuit control unit 206. The filter unit 208 may include a communication unit corresponding to a data link layer, such as a CAN controller, and a filtering circuit. The communication unit corresponding to the data link layer may have the same configuration as the second upper layer communication unit 204, and may be connected to the bus connection circuit 207. The communication unit included in the filter unit 208 may control CAN communication and the like within a board on which the first processing unit 100 and the second processing unit 200 are mounted.

[0053] The filter unit 208 (filtering circuit) may be configured to perform a transparency process in which communication data output from the bus connection circuit 207 is not filtered and is output to the second upper layer communication unit 204 in a steady state, i.e., in a state where control is not being performed by the circuit control unit 206. Alternatively, the filter unit 208 may switch between performing filtering and not performing filtering depending on the type of control signal (control request) output from the first processing unit 100 (filtering required control signal, filtering not required control signal).

[0054] Similar to the first upper layer communication unit 104, the second upper layer communication unit 204 is a communication unit corresponding to a data link layer or the like, which is a layer higher than the physical layer, such as a CAN controller or an Ethernet controller. The second upper layer communication unit 204 is provided between the filter unit 208 and the physical layer communication unit 300. The second upper layer communication unit 204 may control CAN communication or the like outside the board on which the first processing unit 100 and the second processing unit 200 are mounted, i.e., communication transmitted and received from the in-vehicle device 1 over the in-vehicle network 4.

[0055] The physical layer communication unit 300 is configured, for example, by a CAN transceiver compatible with CAN or CAN-FD, or an Ethernet PHY unit compatible with Ethernet, and is a communication unit compatible with a communication line 41 (physical layer) such as a CAN bus or an Ethernet cable. Via the physical layer communication unit 300, the in-vehicle device 1 is connected to an in-vehicle network 4 and is communicatively connected to an in-vehicle ECU 3 connected to the in-vehicle network 4. The physical layer communication unit 300 configured by a CAN transceiver or the like may have multiple channels.

[0056] 3 is an explanatory diagram showing an example of a communication control table. The communication control table is stored, for example, in the first storage unit 102 of the first processing unit 100 (first microcomputer). The first control unit 101 and control signal generation unit 105 included in the first processing unit 100 (first microcomputer) may refer to the communication control table and perform various processes. Management items (fields) defined in the communication control table include, for example, the program name, ASIL, communication data type, first upper layer communication unit No., and whether filtering is required.

[0057] The management item of program name stores the name (executable file name) of a program (application) executed by the first control unit 101. The management item of ASIL stores the value of ASIL (Automotive Safety Integrity Level), which defines the safety level of the program (application).

[0058] The management item of communication data type stores a value indicating the type of communication data output by executing a program (application). The value indicating the type of communication data may be, for example, a message ID (CAN-ID) in CAN communication, or a TCP port number in TCP / IP communication.

[0059] The management item of the first upper layer communication unit No. stores the device number of the first upper layer communication unit 104 assigned according to the security level of the program (application). In this embodiment, the first processing unit 100 includes two first upper layer communication units 104 (CC-1, CC-2). In this case, a program (application) with a higher security level is assigned to the first upper layer communication unit 104 (CC-1) than to the first upper layer communication unit 104 (CC-2).

[0060] The management item for whether filtering is necessary defines whether communication data output by executing a program (application) is subject to filtering by the second processing unit 200 (filter unit 208) (whether filtering is necessary or not). Communication data (communication data type) defined as requiring filtering corresponds to internal communication data that is not output to the in-vehicle network 4. Communication data (communication data type) defined as not requiring filtering corresponds to external communication data that is output to the in-vehicle network 4. By defining whether filtering is necessary or not based on the type of communication data or the name of the program (application) in this way, it is possible to efficiently execute processing related to the selection of communication data to be output from the in-vehicle device 1 to the in-vehicle network 4.

[0061] 4 is a flowchart illustrating processing by the first processing unit 100 and the second processing unit 200 provided in the in-vehicle device 1. The processing by the first processing unit 100 and the second processing unit 200 is related to each other, but first the processing by the first processing unit 100 will be described, and thereafter the processing by the second processing unit 200 will be described.

[0062] The first processing unit 100 outputs communication data (S101). The first control unit 101 of the first processing unit 100 executes multiple programs (applications) in parallel, and executes logical operation processing related to the vehicle C control itself, such as processing conforming to AUTOSAR, using pipeline parallelism or the like. The first control unit 101 of the first processing unit 100 generates communication data by executing these programs.

[0063] The first control unit 101 of the first processing unit 100 outputs the generated communication data to a first upper layer communication unit 104 that is assigned (classified) according to a safety level (ASIL: Automotive Safety Integrity Level) defined for each of the programs, via the first internal bus 103. The first control unit 101 of the first processing unit 100 may refer to a communication control table stored in the first storage unit 102 to identify the first upper layer communication unit 104 that is assigned according to the safety level defined for each of the programs.

[0064] The communication data output to each of the first upper layer communication units 104, which are classified according to the security level of the program, is output to the bus connection circuit 207 of the second processing unit 200. This allows communication between the first processing unit 100 and the second processing unit 200. Furthermore, communication (inter-process communication) is performed via the bus connection circuit 207 of the second processing unit 200 between the plurality of first upper layer communication units 104 connected to the bus connection circuit 207.

[0065] These first upper layer communication units 104 are each classified according to the security level of the corresponding program, and communication data is transmitted and received between these first upper layer communication units 104 via the bus connection circuit 207, thereby performing communication (inter-process communication) between the multiple programs being executed in parallel in the first control unit 101. This allows the bus connection circuit 207 of the second processing unit 200 to function as a network inside the in-vehicle device 1 (CAN bus within the in-vehicle device 1).

[0066] The first processing unit 100 determines whether filtering is required for the output communication data (S102). The control signal generating unit 105 of the first processing unit 100, either alone or in cooperation with the first processing unit 100, acquires, monitors, or samples the communication data generated and output by the first control unit 101 executing a program via the first internal bus 103, and determines whether filtering is required for the bus connection circuit 207.

[0067] When determining whether filtering is necessary, the control signal generating unit 105 of the first processing unit 100 may identify the type of communication data of the communication data output from the first processing unit 100. The control signal generating unit 105 of the first processing unit 100 may determine whether filtering is necessary or not (whether filtering is necessary or not) for the identified type of communication data by, for example, referring to a communication control table stored in the first storage unit 102.

[0068] When it is determined that filtering is necessary (S102: YES), the first processing unit 100 outputs a control signal to make the second processing unit 200 execute filtering (S103). When it is determined that filtering is necessary for the communication data output from the first processing unit 100, the control signal generation unit 105 of the first processing unit 100 generates a control signal (control request) to make the second processing unit 200 execute filtering, and outputs the generated control signal (control request) to the control I / F 205 of the second processing unit 200. The second control unit 201 of the second processing unit 200 acquires the control signal (control request) output from the control signal generation unit 105 of the first processing unit 100 via the control I / F 205.

[0069] After executing S103, or when it is determined that filtering is unnecessary (S102: NO), the first processing unit 100 performs loop processing to execute the processing from S101 again. When it is determined that filtering is unnecessary, the first processing unit 100 may output a control signal indicating that filtering is unnecessary (a control signal for transparently processing communication data).

[0070] The second processing unit 200 determines whether or not it has received a control signal for executing filtering from the first processing unit 100 (T101). The second control unit 201 of the second processing unit 200 continuously performs processing to wait for a control signal (control request) output from the control signal generating unit 105 of the first processing unit 100 via the control I / F 205, and determines whether or not it has received a control signal from the control I / F 205. The control I / F 205 may transmit the control signal (control request) to the second control unit 201 using a second storage unit 202 such as a control register or RAM, for example.

[0071] When it is determined that a control signal has been acquired (T101: YES), the second processing unit 200 executes filtering on the communication data output from the first processing unit 100 (T102). When it is determined that a control signal (a control signal for executing filtering) has been acquired, the second control unit 201 of the second processing unit 200 executes processing such as interpretation of the control signal and controls the circuit control unit 206.

[0072] The circuit control unit 206 controlled by the second control unit 201 activates the filtering function of the filter unit 208 and filters the communication data output from the first processing unit 100. As a result, the communication data output from the first processing unit 100 to the second processing unit 200 is discarded without being output to the physical layer communication unit 300, and the communication data can be prevented from being output from the in-vehicle device 1 to the in-vehicle network 4.

[0073] When it is determined that a control signal has not been acquired (T101: NO), the second processing unit 200 does not filter the communication data output from the first processing unit 100. The filter unit 208 is set to perform transparency processing of outputting the communication data output from the bus connection circuit 207 to the second upper layer communication unit 204 without filtering the communication data in a steady state, i.e., when no control signal is input. Therefore, the communication data output from the first processing unit 100 to the second processing unit 200 is output from the second processing unit 200 to the physical layer communication unit 300 without being filtered by the second processing unit 200, and is output to the in-vehicle network 4 via the physical layer communication unit 300. Note that the second processing unit 200 may not filter the communication data output from the first processing unit 100 even when it acquires a control signal indicating that filtering is not necessary (a control signal for transparently processing the communication data) from the first processing unit 100. After executing T101, or when it is determined that a control signal has not been acquired (T101: NO), the second processing unit 200 performs loop processing to execute T101 again.

[0074] When the filter unit 208 switches between performing filtering and not performing filtering depending on the type of control signal (control request) output from the first processing unit 100, the second control unit 201 may control the circuit control unit 206 and the filter unit 208 depending on the type of the control signal. That is, when the control signal from the first processing unit 100 is a control signal for performing filtering (filtering required control signal), the second control unit 201 may control the circuit control unit 206 to perform filtering processing by the filter unit 208. When the control signal from the first processing unit 100 is a control signal indicating that filtering is not required (filtering no control signal), the second control unit 201 may control the circuit control unit 206 not to perform filtering processing by the filter unit 208, and may perform transparent processing of the communication data.

[0075] When multiple applications (software) perform processing such as CAN communications, it is expected that the communication unit, such as a CAN controller or CAN transceiver, will be shared by these multiple applications. In contrast, it is possible for a specific application (representative software) to control the communication unit on behalf of the applications, but in this case, there is a concern that the processing by the representative software will result in a concentration of load (CPU processing load) on the control unit, or that the CPU cores that make up the control unit will be monopolized.

[0076] In contrast, the in-vehicle device 1 is configured with multiple processing units (microcomputers) consisting of the first processing unit 100 (first microcomputer) and the second processing unit 200 (second microcomputer), and allocates the applications (software) to be executed according to the processing capabilities of each processing unit. In other words, a processing unit (second processing unit 200) with relatively low processing capabilities is assigned to communication control such as CAN control.

[0077] This prevents a processing unit with high processing power (first processing unit 100) from being monopolized by communication control, thereby improving program processing efficiency. Furthermore, an increase in the number of communication units, such as a CAN controller, installed in the in-vehicle device 1 can be suppressed, thereby suppressing increases in parts costs and product weight due to such additional hardware. Furthermore, communication between these multiple applications is performed within the in-vehicle device 1, preventing unnecessary communication data (such as CAN messages) from being output (transmitted) from the in-vehicle device 1 to the in-vehicle network 4. Furthermore, processes such as software simulation and proxy transmission of CAN signals, etc., can be eliminated. Furthermore, by using the filter unit 208, only necessary communication data (signals) can be selected and sent to the communication line 41 (in-vehicle network 4), such as a CAN bus, thereby reducing the amount of communication on the in-vehicle network 4.

[0078] The embodiments disclosed herein are to be considered as illustrative in all respects and not restrictive. The scope of the present invention is defined by the claims, not by the above meaning, and is intended to include all modifications within the meaning and scope of the claims.

[0079] Multiple claims in the claims may be combined with each other regardless of the form of reference. Multiple dependent claims are defined in the claims that depend on multiple dependent claims. Multiple dependent claims that depend on multiple dependent claims may not be defined in the claims, but multiple dependent claims that depend on multiple dependent claims may be defined. [Explanation of symbols]

[0080] C vehicle S In-vehicle system 1 On-vehicle device 100 First processing unit (first microcomputer) 101 First Control Section 102 1st memory section 103 First Internal Bus 104 First Upper Layer Communication Unit 105 Control signal generation unit (control signal I / F) 200 Second processing unit (second microcomputer) 201 Second Control Section 202 2nd memory section 203 Second Internal Bus 204 Second Upper Layer Communication Unit 205 Control I / F (Control signal I / F) 206 Circuit Control Unit 207 Bus connection circuit 208 Filter section 300 Physical layer communication section P Control Program (Program Product) M Recording medium 2. Relay device 3 In-vehicle ECU 4. In-vehicle network 41 Communication line

Claims

1. An in-vehicle device connected to an in-vehicle network mounted in a vehicle, a first processing unit; a second processing unit connected to the first processing unit; a physical layer communication unit connected to the second processing unit, the first processing unit includes a first upper layer communication unit corresponding to a layer higher than the physical layer communication unit, the second processing unit includes a second upper layer communication unit corresponding to a layer higher than the physical layer communication unit, the first processing unit and the second processing unit are connected via the first upper layer communication unit, the second processing unit and the physical layer communication unit are connected via the second upper layer communication unit, In the first processing unit, a plurality of first upper layer communication units are provided, the plurality of first upper layer communication units are connected to a bus connection circuit included in the second processing unit, the second processing unit includes a filter unit that filters the communication data output from the first processing unit via the bus connection circuit; the filter unit is provided between the bus connection circuit and the second upper layer communication unit, The second processing unit is Acquire a control signal output from the first processing unit; The filter unit performs filtering in accordance with the acquired control signal. In-vehicle device.

2. An in-vehicle device connected to an in-vehicle network installed in a vehicle, a first processing unit; a second processing unit connected to the first processing unit; a physical layer communication unit connected to the second processing unit, the first processing unit includes a first upper layer communication unit corresponding to a layer higher than the physical layer communication unit, the second processing unit includes a second upper layer communication unit corresponding to a layer higher than the physical layer communication unit, the first processing unit and the second processing unit are connected via the first upper layer communication unit, the second processing unit and the physical layer communication unit are connected via the second upper layer communication unit, The first processing unit Execute a plurality of programs related to the control of the vehicle; outputting communication data generated by the execution of the program to the second processing unit via the first upper layer communication unit; The second processing unit is receiving the communication data output from the first processing unit; Selecting communication data to be output to the in-vehicle network from the received communication data. In-vehicle device.

3. The processing capacity of the first processing unit is higher than the processing capacity of the second processing unit. The in-vehicle device according to claim 1 or 2.

4. the first processing unit executes a plurality of programs related to control of the vehicle, The second processing unit executes a process for selecting communication data to be output to the in-vehicle network from communication data generated by the first processing unit executing a program. The in-vehicle device according to claim 3 .

5. the first processing unit executes a plurality of programs having different safety levels defined by ASIL, The plurality of first upper layer communication units are divided according to the security level of the program. The in-vehicle device according to any one of claims 1 to 4.

6. Each of the first processing unit and the second processing unit includes a control signal I / F for transmitting and receiving the control signal. The in-vehicle device according to claim 1 .

7. It is connected to the in-vehicle network installed in the vehicle, a first processing unit; a second processing unit connected to the first processing unit; a physical layer communication unit connected to the second processing unit, the first processing unit includes a first upper layer communication unit corresponding to a layer higher than the physical layer communication unit, the second processing unit includes a second upper layer communication unit corresponding to a layer higher than the physical layer communication unit, the first processing unit and the second processing unit are connected via the first upper layer communication unit, The second processing unit and the physical layer communication unit are connected via the second upper layer communication unit. A program that causes a computer to execute a process, The first processing unit, Execute a plurality of programs related to the control of the vehicle; outputting communication data generated by the execution of the program to the second processing unit via the first upper layer communication unit; The second processing unit, receiving the communication data output from the first processing unit; Selecting communication data to be output to the in-vehicle network from the received communication data. A program that executes a process.

8. It is connected to the in-vehicle network installed in the vehicle, a first processing unit; a second processing unit connected to the first processing unit; a physical layer communication unit connected to the second processing unit, the first processing unit includes a first upper layer communication unit corresponding to a layer higher than the physical layer communication unit, the second processing unit includes a second upper layer communication unit corresponding to a layer higher than the physical layer communication unit, the first processing unit and the second processing unit are connected via the first upper layer communication unit, The second processing unit and the physical layer communication unit are connected via the second upper layer communication unit. An information processing method for causing a computer to execute processing, comprising: The first processing unit, Execute a plurality of programs related to the control of the vehicle; outputting communication data generated by the execution of the program to the second processing unit via the first upper layer communication unit; The second processing unit, receiving the communication data output from the first processing unit; Selecting communication data to be output to the in-vehicle network from the received communication data. An information processing method for executing a process.

Citation Information

Patent Citations

  • Chattering elimination circuit

    JP2017224926A

  • Monitoring device, monitoring system and monitoring method

    JP2019125867A

  • On-vehicle relay device, and computer program

    JP2021138263A