WO2024101115A1 - 車載装置、機能制御方法および機能制御プログラム - Google Patents

車載装置、機能制御方法および機能制御プログラム Download PDF

Info

Publication number
WO2024101115A1
WO2024101115A1 PCT/JP2023/038011 JP2023038011W WO2024101115A1 WO 2024101115 A1 WO2024101115 A1 WO 2024101115A1 JP 2023038011 W JP2023038011 W JP 2023038011W WO 2024101115 A1 WO2024101115 A1 WO 2024101115A1
Authority
WO
WIPO (PCT)
Prior art keywords
function
core
vehicle
information
specific function
Prior art date
Application number
PCT/JP2023/038011
Other languages
English (en)
French (fr)
Inventor
菊地慶剛
河野仁志
松本真
井上和之
竹内祐介
Original Assignee
株式会社オートネットワーク技術研究所
住友電装株式会社
住友電気工業株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社オートネットワーク技術研究所, 住友電装株式会社, 住友電気工業株式会社 filed Critical 株式会社オートネットワーク技術研究所
Publication of WO2024101115A1 publication Critical patent/WO2024101115A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]

Definitions

  • the present disclosure relates to an in-vehicle device, a function control method, and a function control program.
  • This application claims priority based on Japanese Patent Application No. 2022-177882, filed on November 7, 2022, the disclosure of which is incorporated herein in its entirety.
  • Patent Document 1 JP Patent Publication No. 2018-671357 discloses the following technology. That is, a vehicle control device is a vehicle control device that controls the operation of a vehicle, and is characterized by having a storage unit that stores a task table that defines a calculation unit that should execute a control task that controls the operation of the vehicle, first and second calculation units that execute the control task according to the definition of the task table, and an update unit that updates the task table when the vehicle control device is started or terminated.
  • the on-board device of the present disclosure is an on-board device mounted on a vehicle, and includes multiple cores, each of which is capable of executing multiple functions.
  • Each core acquires specific function information indicating the execution state of a specific function that is a specific function of a first function group that is a multiple function that the core itself can execute, and the execution state of the specific function of a second function group that is a multiple function that the other core can execute, and performs a decision process based on the acquired specific function information to determine whether or not to execute a common function of the first function group that is common to the functions of the second function group and is other than the specific function.
  • One aspect of the present disclosure can be realized not only as an in-vehicle device equipped with such a characteristic processing unit, but also as a semiconductor integrated circuit that realizes part or all of the in-vehicle device, or as a system that includes the in-vehicle device.
  • FIG. 1 is a diagram illustrating a configuration of a communication system according to an embodiment of the present disclosure.
  • FIG. 2 is a diagram showing a configuration of an in-vehicle system according to an embodiment of the present disclosure.
  • FIG. 3 is a diagram illustrating a configuration of a relay device according to an embodiment of the present disclosure.
  • FIG. 4 is a conceptual diagram illustrating functions executed by a first core of a relay device according to an embodiment of the present disclosure.
  • FIG. 5 is a conceptual diagram illustrating functions executed by a second core of a relay device according to an embodiment of the present disclosure.
  • FIG. 6 is a diagram illustrating an example of a core status table stored in a relay device according to an embodiment of the present disclosure.
  • FIG. 7 is a diagram illustrating an example of an operation table for a first core stored in the relay device according to the embodiment of the present disclosure.
  • FIG. 8 is a diagram illustrating an example of an operation table for a second core stored in the relay device according to the embodiment of the present disclosure.
  • FIG. 9 is a diagram for explaining an example of a determination process performed by a relay device according to an embodiment of the present disclosure.
  • FIG. 10 is a flowchart defining an operation procedure of a decision process by a core of a relay device according to an embodiment of the present disclosure.
  • FIG. 11 is a diagram illustrating an example of a sequence of a determination process in a relay device according to an embodiment of the present disclosure.
  • a core may execute a function that imposes a high processing load.
  • the core may not be able to execute other functions.
  • the real-time nature of the other functions may be impaired.
  • the present disclosure has been made to solve the above-mentioned problems, and its purpose is to provide an in-vehicle device, a function control method, and a function control program that are capable of executing multiple functions in each core more stably.
  • An in-vehicle device is an in-vehicle device mounted on a vehicle, and includes a plurality of cores, each capable of executing a plurality of functions, and each core acquires specific function information indicating the execution state of a specific function that is a specific function among a first group of functions that is a plurality of functions that the core can execute, and the execution state of the specific function among a second group of functions that is a plurality of functions that the other core can execute, and performs a decision process based on the acquired specific function information to determine whether to execute a common function among the functions of the first group of functions that is common to the functions of the second group of functions and is other than the specific function.
  • each core can grasp the execution state of each specific function of its own core and the other cores, and can determine whether to execute a common function in its own core depending on the execution state of the specific function in each core. Therefore, multiple functions can be executed more stably in each core.
  • each of the cores may determine in the decision process not to execute the common function in its own core if its own core is executing the specific function, and each of the cores may determine in the decision process to execute the common function in its own core if its own core is not executing the specific function and the other core is executing the specific function.
  • the specific function and the common function can be executed on separate cores, so that even if the specific function is, for example, a function with a high processing load, the common function can be executed more reliably. In addition, it is possible to prevent a decrease in the real-time performance of the common function.
  • the in-vehicle device may further include a storage unit that stores correspondence information indicating a correspondence between the specific function information and common function information, which is information indicating whether the common function is being executed in each of the cores, and each of the cores may perform the determination process according to the common function information that corresponds to the acquired specific function information based on the correspondence information in the storage unit.
  • each core can easily use the correspondence information to determine whether or not to execute a common function.
  • each of the cores may further acquire vehicle state information indicating the state of the vehicle, and the storage unit may store the correspondence information indicating the correspondence between the specific function information, the vehicle state information, and the common function information, and each of the cores may perform the determination process according to the acquired specific function information and the common function information corresponding to the vehicle state information based on the correspondence information in the storage unit.
  • This configuration makes it possible to more appropriately determine whether or not to execute common functions depending on the execution state of specific functions in each core and the state of the vehicle in which the in-vehicle device is installed.
  • each core may periodically or irregularly acquire the specific function information and vehicle state information indicating the state of the vehicle, and determine whether or not to maintain the execution of the common function based on the specific function information and vehicle state information acquired this time and the specific function information and vehicle state information acquired last time, and may perform the determination process if the execution of the common function is not to be maintained.
  • This configuration makes it possible to appropriately determine whether or not to execute a decision process depending on the transition of the execution state of a specific function in each core and the transition of the vehicle state.
  • the specific function may be an OTA (Over The Air) function.
  • a function control method is a function control method in an on-board device mounted on a vehicle, the on-board device having a plurality of cores each capable of executing a plurality of functions, the method including a step of each of the cores acquiring specific function information indicating an execution state of a specific function that is a specific function of a first function group that is a plurality of functions that the core can execute, and an execution state of the specific function of a second function group that is a plurality of functions that the other cores can execute, and a step of each of the cores performing a decision process based on the acquired specific function information to determine whether or not to execute a common function of the first function group that is common to the functions of the second function group and is other than the specific function.
  • each core can grasp the execution state of each specific function of its own core and the other cores, and can determine whether to execute a common function in its own core depending on the execution state of the specific function in each core. Therefore, multiple functions can be executed more stably in each core.
  • a function control program is a function control program used in an on-board device mounted on a vehicle, the on-board device having a plurality of cores each capable of executing a plurality of functions, and causing each of the cores to execute the steps of acquiring specific function information indicating the execution state of a specific function that is a specific function of a first group of functions that is a plurality of functions that the core can execute, and the execution state of the specific function of a second group of functions that is a plurality of functions that the other core can execute, and performing a decision process to determine whether or not to execute a common function of the first group of functions that is common to the functions of the second group of functions and is other than the specific function, based on the acquired specific function information.
  • each core can grasp the execution state of each specific function of its own core and the other cores, and can determine whether to execute a common function in its own core depending on the execution state of the specific function in each core. Therefore, multiple functions can be executed more stably in each core.
  • Fig. 1 is a diagram showing a configuration of a communication system according to an embodiment of the present disclosure.
  • a communication system 501 includes a server 180 and one or more in-vehicle systems 301.
  • the in-vehicle systems 301 are mounted on a vehicle 1.
  • FIG. 2 is a diagram showing a configuration of an in-vehicle system according to an embodiment of the present disclosure.
  • the in-vehicle system 301 includes, for example, one relay device 101 and a plurality of in-vehicle devices 202.
  • the in-vehicle system 301 is mounted on a vehicle 1.
  • the relay device 101 is an example of the in-vehicle device mounted on the vehicle 1.
  • the in-vehicle system 301 includes the in-vehicle devices 202A, 202B, 202C, and 202D that are the in-vehicle devices 202.
  • the relay device 101 and the in-vehicle devices 202 configure the in-vehicle network 401.
  • the in-vehicle system 301 is not limited to a configuration including four in-vehicle devices 202, but may be a configuration including two, three, or five or more in-vehicle devices 202. Also, the in-vehicle system 301 is not limited to a configuration including one relay device 101, but may be a configuration including multiple relay devices 101.
  • the relay device 101 is, for example, a gateway device.
  • the relay device 101 can relay data between multiple in-vehicle devices 202 connected to it.
  • the relay device 101 and each in-vehicle device 202 generate frames including various information described below, and transmit them to other in-vehicle devices 202 or the relay device 101.
  • the in-vehicle device 202 is, for example, an in-vehicle ECU such as a TCU (Telematics Communication Unit), an automatic driving ECU (Electronic Control Unit), an ECU for face authentication, an ECU for door lock, etc.
  • the in-vehicle device 202 is not limited to an in-vehicle ECU, and may be a sensor, a navigation device, a human-machine interface, a camera, an OTA master, etc.
  • the multiple in-vehicle devices 202 are connected to the relay device 101, for example, via an Ethernet (registered trademark) cable 10 or a CAN bus 11 that conforms to the CAN (Controller Area Network) (registered trademark) standard.
  • Ethernet registered trademark
  • CAN Controller Area Network
  • the in-vehicle devices 202 connected to the relay device 101 via the Ethernet cable 10 are also referred to as "Ethernet devices.”
  • the in-vehicle devices 202 connected to the relay device 101 via the CAN bus 11 are also referred to as "CAN devices.”
  • in-vehicle device 202A, in-vehicle device 202B, in-vehicle device 202C, and in-vehicle device 202D are a TCU, an OTA master, a vehicle speed sensor, and a temperature sensor, respectively.
  • in-vehicle device 202A, in-vehicle device 202B, in-vehicle device 202C, and in-vehicle device 202D are also referred to as TCU 202A, OTA master 202B, vehicle speed sensor 202C, and temperature sensor 202D, respectively.
  • TCU 202A and OTA master 202B are connected to relay device 101, for example, via Ethernet cable 10.
  • TCU 202A is capable of communicating with server 180.
  • TCU 202A is capable of communicating with server 180 via wireless base station device 161 using, for example, IP packets.
  • the TCU 202A can perform wireless communication with the wireless base station device 161 in accordance with a communication standard such as LTE (Long Term Evolution) or 5G.
  • a communication standard such as LTE (Long Term Evolution) or 5G.
  • the wireless base station device 161 when the wireless base station device 161 receives an IP packet from the server 180 via an external network 170 such as the Internet, the wireless base station device 161 includes the received IP packet in a wireless signal and transmits it to the TCU 202A.
  • the TCU 202A When the TCU 202A receives a radio signal including an IP packet from the server 180 via the radio base station device 161, it acquires the IP packet from the received radio signal, stores the acquired IP packet in a frame, and transmits it to the relay device 101.
  • Server 180 is, for example, an OTA server, and is provided outside vehicle 1. Server 180 stores update programs for updating various software used in in-vehicle network 401.
  • the OTA master 202B controls the updates of various software used in the in-vehicle network 401.
  • the OTA master 202B transmits confirmation information to the server 180 via the relay device 101 and the TCU 202A to confirm whether the update program is present in the server 180.
  • the server 180 transmits information indicating the confirmation result to the OTA master 202B via the TCU 202A and the relay device 101.
  • OTA master 202B If OTA master 202B confirms in server 180 that an update program for updating the software built into relay device 101 exists, it transmits update information to relay device 101 to instruct the installation of the update program.
  • the relay device 101 When the relay device 101 receives update information from the OTA master 202B, it receives an update program from the server 180 via the TCU 202A. The relay device 101 then installs the received update program to update the software installed in the relay device 101.
  • the vehicle speed sensor 202C and the temperature sensor 202D are connected to the relay device 101, for example, via the CAN bus 11.
  • the vehicle speed sensor 202C measures the vehicle speed of the vehicle 1, for example, periodically, and transmits a frame that stores measurement information indicating the measurement result to the relay device 101 or another in-vehicle device 202.
  • the temperature sensor 202D measures the outside air temperature of the vehicle 1, for example, periodically, and transmits a frame that stores measurement information indicating the measurement result to the relay device 101 or other in-vehicle devices 202.
  • the relay device 101 is not limited to being connected to the in-vehicle device 202 via an Ethernet cable 10 and a CAN bus 11, but may be connected to the in-vehicle device 202 via a bus conforming to a communication standard such as CAN FD (CAN with Flexible Data Rate), FlexRay (registered trademark), MOST (Media Oriented System Transport) (registered trademark), and LIN (Local Interconnect Network).
  • CAN FD CAN with Flexible Data Rate
  • FlexRay registered trademark
  • MOST Media Oriented System Transport
  • LIN Local Interconnect Network
  • FIG. 3 is a diagram showing a configuration of a relay device according to an embodiment of the present disclosure.
  • relay device 101 includes a communication port 51, a relay unit 52, and a processing unit 53.
  • Processing unit 53 includes a plurality of cores 61 and a storage unit 62.
  • One or both of relay unit 52 and processing unit 53 are realized by, for example, a processing circuit including one or a plurality of processors.
  • core 61 corresponds to the processor.
  • the communication port 51 is, for example, a terminal to which an Ethernet cable 10 or a CAN bus 11 can be connected.
  • the relay device 101 has four communication ports 51A, 51B, 51C, and 51D, which are multiple communication ports 51.
  • the TCU 202A and the OTA master 202B are connected to the communication ports 51A and 51B, respectively, via the Ethernet cable 10, and the vehicle speed sensor 202C and the temperature sensor 202D are connected to the communication port 51C via the CAN bus 11.
  • relay device 101 is not limited to having four communication ports 51, but may have two or more communication ports 51.
  • the relay unit 52 performs relay processing to relay data transmitted and received between the in-vehicle devices 202.
  • the relay unit 52 is capable of performing relay processing involving conversion of communication protocols. Specifically, when the relay unit 52 receives a frame from a CAN device according to the CAN communication standard, it changes the format of the received frame to a format that complies with the Ethernet communication standard, and transmits the format-changed frame to the Ethernet device according to the Ethernet communication standard.
  • the relay unit 52 when the relay unit 52 receives a frame from an Ethernet device according to the Ethernet communication standard, it changes the format of the received frame to a format that complies with the CAN communication standard, and transmits the format-changed frame to the CAN device according to the CAN communication standard.
  • the relay unit 52 is also capable of performing relay processing without converting the communication protocol. Specifically, when the relay unit 52 receives a frame from an Ethernet device according to the Ethernet communication standard, it transmits the received frame to another Ethernet device according to the Ethernet communication standard.
  • the relay unit 52 when the relay unit 52 receives a frame from a CAN device according to the CAN communication standard, it transmits the received frame to another CAN device according to the CAN communication standard.
  • each of the multiple cores 61 can execute multiple functions.
  • the relay device 101 includes a first core 61A and a second core 61B that are the multiple cores 61. Note that the descriptions "first" and “second” do not imply a priority order.
  • the code area of the memory unit 62 in the relay device 101 stores programs for each function executed by each core 61.
  • Each core 61 executes each function by reading and executing a control program stored in the memory unit 62.
  • the memory unit 62 also stores an execution flag indicating the execution status of each function for each core 61.
  • FIG. 4 is a conceptual diagram showing a number of functions executed by a first core of a relay device according to an embodiment of the present disclosure.
  • FIG. 5 is a conceptual diagram showing a number of functions executed by a second core of a relay device according to an embodiment of the present disclosure.
  • the first core 61A can execute the relay function 21, the monitoring function 22, the calculation function 23, the protocol conversion function 31, the OTA function 41, and the status management function 42.
  • the second core 61B can execute the relay function 21, the monitoring function 22, the calculation function 23, the diagnostic function 32, the OTA function 41, and the status management function 42.
  • the relay function 21 is a function that relays data between multiple in-vehicle devices 202 connected to the relay device 101.
  • the monitoring function 22 is a function that monitors, for example, data transmitted and received between the in-vehicle devices 202 and the relay device 101, or between multiple in-vehicle devices 202.
  • the calculation function 23 is a function that performs various calculation processes.
  • the protocol conversion function 31 is a function that performs protocol conversion between different communication protocols.
  • the protocol conversion function 31 is a function that performs protocol conversion between the CAN and Ethernet communication protocols.
  • the diagnostic function 32 is a function that performs diagnostic processing to diagnose a fault in the own relay device 101, for example.
  • the OTA function 41 When the OTA function 41 receives update information from the OTA master 202B, it receives an update program from the server 180 via the TCU 202A and installs the update program, thereby updating the program stored in the storage unit 62.
  • the OTA function 41 is a function that imposes a higher processing load on the core 61 than the relay function 21, the monitoring function 22, the calculation function 23, the protocol conversion function 31, and the diagnostic function 32.
  • the OTA function 41 executed by the first core 61A will also be referred to as the "OTA function 41A.”
  • the OTA function 41 executed by the second core 61B will also be referred to as the "OTA function 41B.”
  • the state management function 42 shown in Figures 4 and 5 will be described later.
  • the OTA functions 41A and 41B are functions with a high processing load on the core 61. Therefore, for example, when the first core 61A in the relay device 101 is executing the OTA function 41A, it may not be possible to execute functions other than the OTA function 41A, and a processing delay may occur in the relay function 21, the monitoring function 22, and the calculation function 23, which may impair the real-time nature of each function.
  • the relay device 101 solves this problem by using the following configuration and operation.
  • the state management function 42 is a function that acquires specific function information indicating the execution state of a specific function (hereinafter also referred to as a "specific function") among a plurality of functions (hereinafter also referred to as a "first function group”) that can be executed by its own core 61, and the execution state of a specific function among a plurality of functions (hereinafter also referred to as a "second function group”) that can be executed by other cores 61.
  • Each core 61 stores the acquired specific function information in the memory unit 62.
  • the specific function is the OTA function 41.
  • each core 61 acquires the specific function information periodically or irregularly. Specifically, each core 61 checks whether the OTA function 41 is being executed in its own core 61 by referring to the execution flag stored in the memory unit 62.
  • each core 61 outputs an information request notification to the other cores 61 to request information indicating the execution state of the OTA function 41 in the other cores 61.
  • the other cores 61 receive the information request notification, they refer to the execution flag stored in the memory unit 62 and output an execution flag indicating the execution state of the OTA function 41 in the other cores 61 to the core 61 that output the information request notification.
  • Each core 61 stores in the memory unit 62, as specific function information, a pair of an execution flag indicating the execution state of the OTA function 41 in its own core 61 and an execution flag indicating the execution state of the OTA function 41 in the other core 61 received from the other core 61.
  • the state management function 42 is further a function for periodically or irregularly acquiring vehicle state information indicating the state of the vehicle 1.
  • vehicle state information includes, for example, driving information indicating the driving state of the vehicle 1 and power supply information indicating the operating state of a power supply unit that supplies power to the vehicle 1.
  • Each core 61 determines the running state of the vehicle 1 based on, for example, the measurement information contained in the frame received from the vehicle speed sensor 202C.
  • each core 61 determines that the vehicle 1 is stopped if the vehicle speed remains at zero for a certain period of time or more, and determines that the vehicle 1 is moving if the vehicle speed does not remain at zero for a certain period of time or more.
  • the power supply information indicates, for example, the operating state of the ignition power supply of vehicle 1 and the operating state of the battery of vehicle 1.
  • Each core 61 detects when the ignition power supply is switched on and off, for example, by monitoring the output voltage of the ignition power supply.
  • each core 61 determines that the ignition power supply is on if the measured voltage value is equal to or greater than a predetermined threshold value, and determines that the ignition power supply is off if the measured voltage value is less than the threshold value.
  • each core 61 detects when the battery is switched on and off, for example, by monitoring the battery's output voltage.
  • each core 61 determines that the battery is on if the measured voltage value is equal to or greater than a predetermined threshold, and determines that the battery is off if the measured voltage value is less than the threshold.
  • the state management function 42 is further a function that performs a decision process to decide whether or not to execute a common function 20, which is a common function 20 of the first function group that is common to the functions of the second function group and is other than the specific function, based on the acquired specific function information.
  • a common function 20 which is a common function 20 of the first function group that is common to the functions of the second function group and is other than the specific function, based on the acquired specific function information.
  • each of the first core 61A and the second core 61B executes the above-mentioned relay function 21, monitoring function 22, and calculation function 23, which are the common functions 20.
  • the storage unit 62 stores correspondence information indicating the correspondence between specific function information, vehicle state information, and information indicating whether the common function 20 is being executed in each core 61 (hereinafter also referred to as "common function information").
  • the storage unit 62 stores an operation table Tb21 for the first core 61A that includes correspondence information indicating the correspondence between specific function information, vehicle state information, and the common function information in the first core 61A.
  • the storage unit 62 also stores an operation table Tb22 for the second core 61B that includes correspondence information indicating the correspondence between specific function information, vehicle state information, and the common function information in the second core 61B.
  • Each core 61 performs the decision process using the operation tables Tb21, Tb22 and the state table Tb11 stored in the memory unit 62.
  • FIG. 6 is a diagram illustrating an example of a status table stored by a relay device according to an embodiment of the present disclosure.
  • the state table Tb11 includes correspondence information indicating the correspondence between specific function information and vehicle state information.
  • a state S of the core 61 is defined for each combination of specific function information and vehicle state information. The "conditions" shown in FIG. 6 will be described later.
  • the OTA function 41A is stopped, the OTA function 41B is stopped, the vehicle 1 is running, the ignition power is on, and the battery is on.
  • the OTA function 41A is running, the OTA function 41B is stopped, the vehicle 1 is stopped, the ignition power is off, and the battery is on.
  • the OTA function 41A is running, the OTA function 41B is stopped, the vehicle 1 is running, the ignition power is on, and the battery is on.
  • the OTA function 41A is stopped, the OTA function 41B is running, the vehicle 1 is stopped, the ignition power is off, and the battery is on.
  • FIG. 7 is a diagram illustrating an example of an operation table for a first core stored in the relay device according to the embodiment of the present disclosure.
  • the operation table Tb21 shows the correspondence between the state S of the core 61 defined in the state table Tb11, whether the common function 20 is being executed in the first core 61A, and whether the protocol conversion function 31 is being executed in the first core 61A.
  • first core 61A executes relay function 21, monitoring function 22, calculation function 23, and protocol conversion function 31.
  • first core 61A does not execute relay function 21, monitoring function 22, or calculation function 23, but executes protocol conversion function 31.
  • FIG. 8 illustrates an example of an operation table for a second core stored by a relay device according to an embodiment of the present disclosure.
  • the operation table Tb22 shows the correspondence between the state S of the core 61 defined in the state table Tb11, the presence or absence of execution of the common function 20 in the second core 61B, and the presence or absence of execution of the diagnostic function 32 in the second core 61B.
  • the second core 61B executes the relay function 21, the monitoring function 22, the calculation function 23 and the diagnostic function 32 when the state S of the core 61 is "S1", “S2" or "S3".
  • the second core 61B does not execute the relay function 21, the monitoring function 22 or the calculation function 23, but executes the diagnostic function 32.
  • the state table Tb11, the operation table Tb21, and the operation table Tb22 are registered in the storage unit 62 by the manufacturer of the vehicle 1, for example, when the vehicle 1 is shipped. Note that the state table Tb11, the operation table Tb21, and the operation table Tb22 may be updated after the vehicle 1 is shipped.
  • Each core 61 performs decision processing according to the common function information corresponding to the acquired specific function information and vehicle state information, based on the operation tables Tb21 and Tb22 in the storage unit 62.
  • each core 61 acquires specific function information and vehicle state information, it refers to the state table Tb11 in the memory unit 62 and identifies the state S of the core 61 that corresponds to the combination of the acquired specific function information and vehicle state information.
  • each core 61 refers to the operation tables Tb21, Tb22 in the memory unit 62 to determine whether or not a function other than the specific function is being executed in its own core 61, which corresponds to the state S of the identified core 61.
  • FIG. 9 is a diagram for explaining an example of a decision process by a relay device according to an embodiment of the present disclosure.
  • functions shown with dashed frames indicate that they are not executed
  • functions shown with solid frames indicate that they are executed.
  • each core 61 decides not to execute the common function 20 in its own core 61 when its own core 61 is executing a specific function.
  • each core 61 decides to execute the common function 20 in its own core 61 if its own core 61 is not executing a specific function and another core 61 is executing a specific function.
  • the first core 61A does not execute the common function 20 because it is executing the OTA function 41A.
  • the second core 61B executes the common function 20 because it is not executing the OTA function 41B and the first core 61A is executing the OTA function 41A.
  • the first core 61A and the second core 61B each execute the protocol conversion function 31 and the diagnostic function 32, regardless of whether or not they are executing the OTA function 41 themselves.
  • the first core 61A and the second core 61B do not perform a decision process when the OTA function 41 is being executed in both the first core 61A and the second core 61B.
  • each core 61 in the relay device 101 acquires specific function information and vehicle state information periodically or irregularly. Each core 61 determines whether or not to maintain the execution of the common function 20 based on the specific function information and vehicle state information acquired this time and the specific function information and vehicle state information acquired last time, and performs a determination process if the execution of the common function 20 is not to be maintained.
  • each core 61 when each core 61 newly acquires specific function information and vehicle state information, it reads the previously acquired specific function information and vehicle state information stored in the memory unit 62, and by referring to the state table Tb11 in the memory unit 62, it determines whether or not to maintain the execution of the common function 20 in its own core 61.
  • the state table Tb11 includes condition information indicating the conditions for determining whether to maintain the execution of the common function 20.
  • the condition information indicates, for example, the state S of the core 61 corresponding to the previously acquired specific function information and vehicle state information.
  • each core 61 performs the decision process regardless of the state S of the core 61 corresponding to the previously acquired specific function information and vehicle state information.
  • each core 61 performs a decision process if the state S of the core 61 corresponding to the previously acquired specific function information and vehicle state information is "S1". Also, if the state S of the core 61 corresponding to the currently acquired specific function information and vehicle state information is "S2", the condition information is "S1 or S4". In this case, each core 61 performs a decision process if the state S of the core 61 corresponding to the previously acquired specific function information and vehicle state information is "S1" or "S4".
  • FIG. 10 is a flowchart defining an operation procedure of a decision process by a core of a relay device according to an embodiment of the present disclosure.
  • the core 61 acquires specific function information. For example, as described above, the core 61 acquires, as the specific function information, an execution flag indicating the execution state of the OTA function 41 in its own core 61 and an execution flag indicating the execution state of the OTA function 41 in the other core 61.
  • the core 61 stores the acquired specific function information in the memory unit 62 (step S101).
  • the core 61 acquires vehicle state information. For example, as described above, the core 61 acquires vehicle driving information and power supply information as the vehicle state information.
  • the core 61 stores the acquired vehicle state information in the storage unit 62 (step S102). Steps S101 and S102 may be executed in reverse order or in parallel.
  • the core 61 checks whether the OTA function 41 is being executed in its own core 61 (step S103).
  • each core 61 checks whether the OTA function 41 is being executed in another core 61 (step S104).
  • the core 61 determines whether to maintain the execution of the common function 20 based on the specific function information and vehicle state information acquired this time and the specific function information and vehicle state information acquired last time. For example, as described above, the core 61 determines whether to maintain the execution of the common function 20 by referring to the specific function information and vehicle state information acquired this time and the specific function information and vehicle state information acquired last time that are stored in the memory unit 62, and the condition information included in the state table Tb11 in the memory unit 62 (step S105).
  • step S106 if the core 61 maintains whether or not the common function 20 is being executed (YES in step S105), it does not perform a decision process (step S106).
  • the core 61 determines whether the execution status of the common function 20 (NO in step S105). If the core 61 does not maintain the execution status of the common function 20 (NO in step S105), it performs a determination process. For example, as described above, the core 61 refers to the state table Tb11 and the operation tables Tb21 and Tb22 in the memory unit 62, identifies the state S of the core 61 corresponding to the combination of the acquired specific function information and vehicle state information, and identifies the execution status of the common function 20 corresponding to the identified state S of the core 61 (step S106).
  • FIG. 11 is a diagram showing an example of a sequence of decision processing in a relay device according to an embodiment of the present disclosure.
  • FIG. 11 shows an example of decision processing performed in a state in which the first core 61A is executing the common function 20 and the second core 61B is not executing the common function 20.
  • the first core 61A while the first core 61A is executing the common function 20 (step S201) and the second core 61B has stopped executing the common function 20 (step S202), the first core 61A outputs an information request notification to the second core 61B to request an execution flag indicating the execution state of the OTA function 41B in the second core 61B (step S203).
  • the second core 61B when the second core 61B receives the information request notification, it outputs the execution flag indicating the execution status of its own OTA function 41B, which is stored in the memory unit 62, to the first core 61A (step S204).
  • the first core 61A acquires specific function information indicating the execution state of the OTA function 41A in itself and the execution state of the OTA function 41B in the second core 61B. For example, as described above, the first core 61A acquires an execution flag indicating the execution state of the OTA function 41A in itself and an execution flag indicating the execution state of the OTA function 41B in the second core 61B. The first core 61A stores the acquired specific function information in the memory unit 62 (step S205).
  • the first core 61A acquires vehicle state information. For example, as described above, the first core 61A acquires vehicle driving information and power supply information as the vehicle state information. The first core 61A stores the acquired vehicle state information in the memory unit 62 (step S206).
  • the second core 61B outputs an information request notification to the first core 61A to request an execution flag indicating the execution status of the OTA function 41A in the first core 61A (step S207).
  • the first core 61A when the first core 61A receives the information request notification, it refers to the execution flag stored in the memory unit 62, checks the execution flag indicating the execution status of its own OTA function 41A, and outputs the execution flag to the second core 61B (step S208).
  • the second core 61B acquires specific function information indicating the execution state of the OTA function 41B in itself and the execution state of the OTA function 41A in the first core 61A. For example, as described above, the second core 61B acquires an execution flag indicating the execution state of the OTA function 41B in itself and an execution flag indicating the execution state of the OTA function 41A in the first core 61A. The second core 61B stores the acquired specific function information in the memory unit 62 (step S209).
  • the second core 61B acquires vehicle state information. For example, as described above, the second core 61B acquires vehicle driving information and power supply information as vehicle state information.
  • the second core 61B stores the acquired vehicle state information in the memory unit 62 (step S210). Note that the processes from step S203 to step S206 and the processes from step S207 to step S210 may be executed in a different order or in parallel.
  • each of the first core 61A and the second core 61B confirms that the first core 61A is executing the OTA function 41A and that the second core 61B is not executing the OTA function 41B by referring to the specific function information stored in the memory unit 62 (steps S211 to S214).
  • each of the first core 61A and the second core 61B decides to perform a determination process by referring to the currently acquired specific function information and vehicle state information and the previously acquired specific function information and vehicle state information stored in the memory unit 62, and the condition information contained in the state table Tb11 in the memory unit 62 (steps S215 and S216).
  • the first core 61A performs a decision process to determine whether or not to execute the common function 20 based on the specific function information and vehicle state information acquired this time.
  • the first core 61A determines not to execute the common function 20 because it is executing the OTA function 41A (step S217).
  • the second core 61B also performs a decision process to determine whether or not to execute the common function 20 based on the specific function information and vehicle state information acquired this time.
  • the second core 61B is not executing the OTA function 41B itself, and the first core 61A is executing the OTA function 41A, so the second core 61B decides to execute the common function 20 (step S218).
  • each core 61 may determine to execute the common function 20 in its own core 61 if there is another core 61 that is not executing a specific function and if a predetermined condition is also satisfied.
  • the storage unit 62 stores priority information indicating the priority of the cores 61 that perform the decision processing, which is preset.
  • each core 61 acquires specific function information and vehicle state information, it performs the decision processing based on the priority information, state table Tb11, and operation table stored in the storage unit 62.
  • the processing unit 53 in one relay device 101 is configured to include multiple cores 61, but this is not limited to the above.
  • the multiple cores 61 may be provided in different relay devices 101, and the core 61 in each relay device 101 may perform the decision process.
  • the memory unit 62 may be provided in each relay device 101, in a part of the multiple relay devices 101, or in an in-vehicle device other than the relay device 101.
  • the storage unit 62 is configured to store the operation tables Tb21 and Tb22 for each core 61, but this is not limited to the above.
  • the storage unit 62 may store, for example, one operation table that includes the contents of the two operation tables Tb21 and Tb22.
  • the storage unit 62 stores the operation tables Tb21, Tb22 including correspondence information indicating the correspondence relationship between the specific function information, the vehicle state information, and the common function information, and each core 61 performs the decision process using the operation tables Tb21, Tb22, but this is not limited to the above.
  • the storage unit 62 may also be configured to store correspondence information that does not indicate the vehicle state information and indicates the correspondence relationship between the specific function information and the common function information. In this case, each core 61 performs the decision process according to the common function information that corresponds to the acquired specific function information based on the correspondence information in the storage unit 62.
  • each core 61 is configured to determine whether or not to maintain the execution of the common function 20 based on the specific function information and vehicle state information acquired this time and the specific function information and vehicle state information acquired last time, but this is not limited to this.
  • Each core 61 may be configured to perform the determination process regardless of the specific function information and vehicle state information acquired last time.
  • the specific function is the OTA function 41, but this is not limited to this.
  • the specific function may be a function other than the OTA function 41.
  • the relay device 101 is configured to include multiple cores 61, and each core 61 executes the state management function 42, but this is not limited to the above.
  • An in-vehicle device other than the relay device 101 such as an in-vehicle ECU, may be configured to include multiple cores 61, and each core 61 in the in-vehicle device may execute the state management function 42.
  • Each process (each function) in the above-mentioned embodiments is realized by a processing circuit including one or more processors.
  • the processing circuit may be composed of an integrated circuit or the like that combines one or more memories, various analog circuits, and various digital circuits in addition to the one or more processors.
  • the one or more memories store programs (instructions) that cause the one or more processors to execute each of the above processes.
  • the one or more processors may execute each of the above processes according to the programs read from the one or more memories, or may execute each of the above processes according to a logic circuit designed in advance to execute each of the above processes.
  • the processor may be any of various processors suitable for computer control, such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), a DSP (Digital Signal Processor), an FPGA (Field Programmable Gate Array), and an ASIC (Application Specific Integrated Circuit).
  • the physically separated processors may cooperate with each other to execute the above processes.
  • the processors mounted on each of the physically separated computers may cooperate with each other via a network such as a LAN (Local Area Network), a WAN (Wide Area Network), or the Internet to execute the above processes.
  • the above program may be installed into the memory from an external server device or the like via the network, or may be distributed in a state stored on a recording medium such as a CD-ROM (Compact Disc Read Only Memory), DVD-ROM (Digital Versatile Disc Read Only Memory), or semiconductor memory, and may be installed into the memory from the recording medium.
  • a recording medium such as a CD-ROM (Compact Disc Read Only Memory), DVD-ROM (Digital Versatile Disc Read Only Memory), or semiconductor memory, and may be installed into the memory from the recording medium.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)

Abstract

車両に搭載される車載装置であって、各々が、複数の機能を実行可能な複数のコアを備え、各前記コアは、自己の前記コアが実行可能な複数の機能である第1の機能群のうちの特定の機能である特定機能の実行状態と、他の前記コアが実行可能な複数の機能である第2の機能群のうちの前記特定機能の実行状態とを示す特定機能情報を取得し、取得した前記特定機能情報に基づいて、前記第1の機能群の機能のうちの、前記第2の機能群の機能と共通する共通機能であって、前記特定機能以外の前記共通機能を実行するか否かを決定する決定処理を行う。

Description

車載装置、機能制御方法および機能制御プログラム
 本開示は、車載装置、機能制御方法および機能制御プログラムに関する。
 この出願は、2022年11月7日に出願された日本出願特願2022-177882号を基礎とする優先権を主張し、その開示のすべてをここに取り込む。
 特許文献1(特開2018-67135号公報)には、以下のような技術が開示されている。すなわち、車両制御装置は、車両の動作を制御する車両制御装置であって、前記車両の動作を制御する制御タスクを実行すべき演算装置を定義するタスクテーブルを格納する記憶部、前記タスクテーブルの定義にしたがって前記制御タスクを実行する第1および第2演算装置、前記車両制御装置が起動または終了するとき前記タスクテーブルを更新する更新部、を備えることを特徴とする。
特開2018-67135号公報
 本開示の車載装置は、車両に搭載される車載装置であって、各々が、複数の機能を実行可能な複数のコアを備え、各前記コアは、自己の前記コアが実行可能な複数の機能である第1の機能群のうちの特定の機能である特定機能の実行状態と、他の前記コアが実行可能な複数の機能である第2の機能群のうちの前記特定機能の実行状態とを示す特定機能情報を取得し、取得した前記特定機能情報に基づいて、前記第1の機能群の機能のうちの、前記第2の機能群の機能と共通する共通機能であって、前記特定機能以外の前記共通機能を実行するか否かを決定する決定処理を行う。
 本開示の一態様は、このような特徴的な処理部を備える車載装置として実現され得るだけでなく、車載装置の一部または全部を実現する半導体集積回路として実現され得たり、車載装置を含むシステムとして実現され得る。
図1は、本開示の実施の形態に係る通信システムの構成を示す図である。 図2は、本開示の実施の形態に係る車載システムの構成を示す図である。 図3は、本開示の実施の形態に係る中継装置の構成を示す図である。 図4は、本開示の実施の形態に係る中継装置の第1のコアが実行する機能を示す概念図である。 図5は、本開示の実施の形態に係る中継装置の第2のコアが実行する機能を示す概念図である。 図6は、本開示の実施の形態に係る中継装置が保存するコア状態テーブルの一例を示す図である。 図7は、本開示の実施の形態に係る中継装置が保存する第1のコア用の動作テーブルの一例を示す図である。 図8は、本開示の実施の形態に係る中継装置が保存する第2のコア用の動作テーブルの一例を示す図である。 図9は、本開示の実施の形態に係る中継装置による決定処理の一例を説明するための図である。 図10は、本開示の実施の形態に係る中継装置のコアによる決定処理の動作手順を定めたフローチャートである。 図11は、本開示の実施の形態に係る中継装置における決定処理のシーケンスの一例を示す図である。
 車載装置において、プロセッサの各コアにおける処理負荷を低減するための技術が開発されている。
 [本開示が解決しようとする課題]
 近年、車載装置の機能向上に伴い、車載装置に搭載されるプロセッサのコアが実行する機能の数が増加する傾向にあり、複数のコアを備えた車載装置の普及が望まれている。
 ここで、複数のコアを搭載するプロセッサを備える車載装置において、処理負荷の高い機能をコアが実行する場合がある。この場合、コアは、他の機能を実行できない可能性がある。また、他の機能のリアルタイム性が損なわれる可能性がある。
 本開示は、上述の課題を解決するためになされたもので、その目的は、各コアにおいて複数の機能をより安定して実行することが可能な車載装置、機能制御方法および機能制御プログラムを提供することである。
 [本開示の効果]
 本開示によれば、各コアにおいて複数の機能をより安定して実行することができる。
 [本開示の実施形態の説明]
 最初に、本開示の実施の形態の内容を列記して説明する。
 (1)本開示の実施の形態に係る車載装置は、車両に搭載される車載装置であって、各々が、複数の機能を実行可能な複数のコアを備え、各前記コアは、自己の前記コアが実行可能な複数の機能である第1の機能群のうちの特定の機能である特定機能の実行状態と、他の前記コアが実行可能な複数の機能である第2の機能群のうちの前記特定機能の実行状態とを示す特定機能情報を取得し、取得した前記特定機能情報に基づいて、前記第1の機能群の機能のうちの、前記第2の機能群の機能と共通する共通機能であって、前記特定機能以外の前記共通機能を実行するか否かを決定する決定処理を行う。
 このように、複数のコアの各々の特定機能の実行状態を示す特定機能情報に基づいて、各コアにおいて特定機能以外の共通機能を実行するか否かを決定する構成により、各コアにおいて、自己のコアおよび他のコアの各々の特定機能の実行状態を把握することができるため、各コアにおける特定機能の実行状態に応じて、自己のコアにおいて共通機能を実行するか否かを決定することができる。したがって、各コアにおいて複数の機能をより安定して実行することができる。
 (2)上記(1)において、前記各コアは、前記決定処理において、前記自己のコアが前記特定機能を実行している場合、前記自己のコアにおいて前記共通機能を実行しないことを決定してもよく、前記各コアは、前記決定処理において、前記自己のコアが前記特定機能を実行しておらず、かつ前記他のコアが前記特定機能を実行している場合、前記自己のコアにおいて前記共通機能を実行することを決定してもよい。
 このような構成により、特定機能および共通機能を別々のコアにおいて実行することができるため、特定機能が、たとえば処理負荷の高い機能である場合であっても、共通機能をより確実に実行することができる。また、共通機能のリアルタイム性が低下することを抑制することができる。
 (3)上記(1)または(2)において、前記車載装置は、さらに、前記特定機能情報と、前記各コアにおける前記共通機能の実行の有無を示す情報である共通機能情報との対応関係を示す対応情報を記憶する記憶部を備えてもよく、前記各コアは、前記記憶部における前記対応情報に基づいて、取得した前記特定機能情報に対応する前記共通機能情報に従い、前記決定処理を行ってもよい。
 このような構成により、各コアにおいて、対応情報を用いて、共通機能を実行するか否かを容易に決定することができる。
 (4)上記(3)において、前記各コアは、さらに、前記車両の状態を示す車両状態情報を取得してもよく、前記記憶部は、前記特定機能情報と前記車両状態情報と前記共通機能情報との対応関係を示す前記対応情報を記憶してもよく、前記各コアは、前記記憶部における前記対応情報に基づいて、取得した前記特定機能情報および前記車両状態情報に対応する前記共通機能情報に従い、前記決定処理を行ってもよい。
 このような構成により、各コアにおける特定機能の実行状態、および車載装置が搭載される車両の状態に応じて、共通機能の実行の有無をより適切に決定することができる。
 (5)上記(1)から(4)のいずれかにおいて、前記各コアは、前記特定機能情報、および前記車両の状態を示す車両状態情報を定期的または不定期に取得し、今回取得した前記特定機能情報および前記車両状態情報ならびに前回取得した前記特定機能情報および前記車両状態情報に基づいて、前記共通機能の実行の有無を維持するか否かを決定し、維持しない場合、前記決定処理を行ってもよい。
 このような構成により、各コアにおける特定機能の実行状態の遷移、および車両の状態の遷移に応じて、決定処理の実行の有無を適切に決定することができる。
 (6)上記(1)から(5)のいずれかにおいて、前記特定機能は、OTA(Over The Air)機能であってもよい。
 このような構成により、処理負荷の高い機能であるOTA機能の各コアにおける実行状態に応じて、自己のコアにおいて共通機能を実行するか否かを決定することができる。
 (7)本開示の実施の形態に係る機能制御方法は、車両に搭載される車載装置における機能制御方法であって、前記車載装置は、各々が複数の機能を実行可能な複数のコアを備え、各前記コアが、自己の前記コアが実行可能な複数の機能である第1の機能群のうちの特定の機能である特定機能の実行状態と、他の前記コアが実行可能な複数の機能である第2の機能群のうちの前記特定機能の実行状態とを示す特定機能情報を取得するステップと、前記各コアが、取得した前記特定機能情報に基づいて、前記第1の機能群の機能のうちの、前記第2の機能群の機能と共通する共通機能であって、前記特定機能以外の前記共通機能を実行するか否かを決定する決定処理を行うステップとを含む。
 このように、複数のコアの各々の特定機能の実行状態を示す特定機能情報に基づいて、各コアにおいて特定機能以外の共通機能を実行するか否かを決定する構成により、各コアにおいて、自己のコアおよび他のコアの各々の特定機能の実行状態を把握することができるため、各コアにおける特定機能の実行状態に応じて、自己のコアにおいて共通機能を実行するか否かを決定することができる。したがって、各コアにおいて複数の機能をより安定して実行することができる。
 (8)本開示の実施の形態に係る機能制御プログラムは、車両に搭載される車載装置において用いられる機能制御プログラムであって、前記車載装置は、各々が複数の機能を実行可能な複数のコアを備え、各前記コアに、自己の前記コアが実行可能な複数の機能である第1の機能群のうちの特定の機能である特定機能の実行状態と、他の前記コアが実行可能な複数の機能である第2の機能群のうちの前記特定機能の実行状態とを示す特定機能情報を取得するステップと、取得した前記特定機能情報に基づいて、前記第1の機能群の機能のうちの、前記第2の機能群の機能と共通する共通機能であって、前記特定機能以外の前記共通機能を実行するか否かを決定する決定処理を行うステップとを実行させるためのプログラムである。
 このように、複数のコアの各々の特定機能の実行状態を示す特定機能情報に基づいて、各コアにおいて特定機能以外の共通機能を実行するか否かを決定する構成により、各コアにおいて、自己のコアおよび他のコアの各々の特定機能の実行状態を把握することができるため、各コアにおける特定機能の実行状態に応じて、自己のコアにおいて共通機能を実行するか否かを決定することができる。したがって、各コアにおいて複数の機能をより安定して実行することができる。
 以下、本開示の実施の形態について図面を用いて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰り返さない。また、以下に記載する実施の形態の少なくとも一部を任意に組み合わせてもよい。
 [通信システム]
 図1は、本開示の実施の形態に係る通信システムの構成を示す図である。図1を参照して、通信システム501は、サーバ180と、1または複数の車載システム301とを備える。車載システム301は、車両1に搭載される。
 [車載システム]
 図2は、本開示の実施の形態に係る車載システムの構成を示す図である。図2を参照して、車載システム301は、たとえば、1つの中継装置101と、複数の車載機器202とを備える。車載システム301は、車両1に搭載される。中継装置101は、車両1に搭載される車載装置の一例である。
 図2に示す例では、車載システム301は、車載機器202である車載機器202A,202B,202C,202Dを備える。中継装置101および車載機器202は、車載ネットワーク401を構成する。
 なお、車載システム301は、4つの車載機器202を備える構成に限らず、2つ、3つまたは5つ以上の車載機器202を備える構成であってもよい。また、車載システム301は、1つの中継装置101を備える構成に限らず、複数の中継装置101を備える構成であってもよい。
 中継装置101は、たとえばゲートウェイ装置である。中継装置101は、自己に接続される複数の車載機器202間のデータを中継可能である。
 中継装置101および各車載機器202は、後述する各種情報を含むフレームを生成し、他の車載機器202または中継装置101へ送信する。
 [車載機器]
 車載機器202は、たとえば、TCU(Telematics Communication Unit)、自動運転用ECU(Electronic Control Unit)、顔認証用ECUおよびドアロック用ECU等の車載ECUである。なお、車載機器202は、車載ECUに限らず、センサ、ナビゲーション装置、ヒューマンマシンインターフェース、カメラおよびOTAマスタ等であってもよい。
 複数の車載機器202は、たとえば、イーサネット(登録商標)ケーブル10、またはCAN(Controller Area Network)(登録商標)の規格に従うCANバス11を介して中継装置101に接続されている。以下、イーサネットケーブル10を介して中継装置101に接続される車載機器202を、「イーサネット機器」とも称する。また、CANバス11を介して中継装置101に接続される車載機器202を、「CAN機器」とも称する。
 ここでは、車載機器202A、車載機器202B、車載機器202Cおよび車載機器202Dは、それぞれTCU、OTAマスタ、車速センサおよび温度センサである。以下、車載機器202A、車載機器202B、車載機器202Cおよび車載機器202Dを、それぞれTCU202A、OTAマスタ202B、車速センサ202Cおよび温度センサ202Dとも称する。
 TCU202AおよびOTAマスタ202Bは、たとえばイーサネットケーブル10を介して中継装置101に接続されている。
 図1および図2を参照して、TCU202Aは、サーバ180と通信を行うことが可能である。TCU202Aは、たとえば、IPパケットを用いて無線基地局装置161経由でサーバ180と通信することが可能である。
 より詳細には、TCU202Aは、たとえば、LTE(Long Term Evolution)または5G等の通信規格に従って、無線基地局装置161と無線通信を行うことが可能である。
 具体的には、無線基地局装置161は、サーバ180からインターネット等の外部ネットワーク170経由でIPパケットを受信すると、受信したIPパケットを無線信号に含めてTCU202Aへ送信する。
 TCU202Aは、サーバ180からのIPパケットを含む無線信号を無線基地局装置161から受信すると、受信した無線信号からIPパケットを取得し、取得したIPパケットをフレームに格納して中継装置101へ送信する。
 サーバ180は、たとえばOTAサーバであり、車両1の外部に設けられる。サーバ180は、車載ネットワーク401において用いられる各種ソフトウェアを更新するための更新用プログラムを保持している。
 OTAマスタ202Bは、車載ネットワーク401において用いられる各種ソフトウェアの更新を制御する。OTAマスタ202Bは、サーバ180において上記更新用プログラムが存在するか否かを確認するための確認情報を、中継装置101およびTCU202A経由でサーバ180へ送信する。サーバ180は、TCU202Aから受信した確認情報に対する応答として、確認結果を示す情報をTCU202Aおよび中継装置101経由でOTAマスタ202Bへ送信する。
 OTAマスタ202Bは、サーバ180において中継装置101に組み込まれたソフトウェアを更新するための更新用プログラムが存在することを確認した場合、当該更新用プログラムのインストールを指示するための更新情報を中継装置101へ送信する。
 中継装置101は、OTAマスタ202Bから更新情報を受信すると、TCU202A経由でサーバ180から更新用プログラムを受信する。そして、中継装置101は、受信した更新用プログラムをインストールすることで、自己に組み込まれたソフトウェアの更新を行う。
 車速センサ202Cおよび温度センサ202Dは、たとえばCANバス11を介して中継装置101に接続されている。
 車速センサ202Cは、たとえば定期的に、車両1の車速を計測し、計測結果を示す計測情報が格納されたフレームを中継装置101または他の車載機器202へ送信する。
 温度センサ202Dは、たとえば定期的に、車両1の外気温を測定し、測定結果を示す計測情報が格納されたフレームを中継装置101または他の車載機器202へ送信する。
 なお、中継装置101は、イーサネットケーブル10およびCANバス11を介して車載機器202と接続される構成に限らず、たとえば、CAN FD(CAN with Flexible Data Rate)、FlexRay(登録商標)、MOST(Media Oritend System Transport)(登録商標)およびLIN(Local Interconnect Network)等の通信規格に従うバスを介して車載機器202と接続される構成であってもよい。
 [中継装置]
 図3は、本開示の実施の形態に係る中継装置の構成を示す図である。図3を参照して、中継装置101は、通信ポート51と、中継部52と、処理部53とを備える。処理部53は、複数のコア61と、記憶部62とを含む。中継部52および処理部53の一方または両方は、たとえば、1または複数のプロセッサを含む処理回路(Circuitry)により実現される。ここでは、コア61が、プロセッサに相当する。
 通信ポート51は、たとえば、イーサネットケーブル10またはCANバス11を接続可能な端子である。図3に示す例では、中継装置101は、複数の通信ポート51である4つの通信ポート51A,51B,51C,51Dを備える。中継装置101において、通信ポート51A,51Bには、TCU202AおよびOTAマスタ202Bがイーサネットケーブル10を介してそれぞれ接続され、通信ポート51Cには、CANバス11を介して車速センサ202Cおよび温度センサ202Dが接続されている。
 なお、中継装置101は、4つの通信ポート51を備える構成に限らず、2つ以上の通信ポート51を備える構成であればよい。
 中継部52は、車載機器202間で送受信されるデータを中継する中継処理を行う。中継部52は、通信プロトコルの変換を伴う中継処理を行うことが可能である。具体的には、中継部52は、CANの通信規格に従ってCAN機器からフレームを受信すると、受信したフレームのフォーマットをイーサネットの通信規格に従うフォーマットに変更し、フォーマット変更後のフレームをイーサネットの通信規格に従ってイーサネット機器へ送信する。
 また、中継部52は、イーサネットの通信規格に従ってイーサネット機器からフレームを受信すると、受信したフレームのフォーマットをCANの通信規格に従うフォーマットに変更し、フォーマット変更後のフレームをCANの通信規格に従ってCAN機器へ送信する。
 また、中継部52は、通信プロトコルの変換を伴わない中継処理を行うことが可能である。具体的には、中継部52は、イーサネットの通信規格に従ってイーサネット機器からフレームを受信すると、受信したフレームをイーサネットの通信規格に従って他のイーサネット機器へ送信する。
 また、中継部52は、CANの通信規格に従ってCAN機器からフレームを受信すると、受信したフレームをCANの通信規格に従って他のCAN機器へ送信する。
 [コア]
 中継装置101では、複数のコア61の各々が、複数の機能を実行可能である。図3に示す例では、中継装置101は、複数のコア61である第1のコア61Aおよび第2のコア61Bを備える。なお、「第1」および「第2」の記載は、優先順位を意味するものではない。
 ここで、中継装置101における記憶部62のコード領域には、各コア61が実行する各機能のプログラムが格納されている。各コア61は、記憶部62に保存されている制御プログラムを読み出して実行することにより、各機能を実行する。また、記憶部62は、コア61ごとに、各機能の実行状態を示す実行フラグを記憶している。
 図4は、本開示の実施の形態に係る中継装置の第1のコアが実行する複数の機能を示す概念図である。図5は、本開示の実施の形態に係る中継装置の第2のコアが実行する複数の機能を示す概念図である。
 図4を参照して、第1のコア61Aは、中継機能21、監視機能22、演算機能23、プロトコル変換機能31、OTA機能41および状態管理機能42を実行可能である。図5を参照して、第2のコア61Bは、中継機能21、監視機能22、演算機能23、ダイアグ機能32、OTA機能41および状態管理機能42を実行可能である。
 中継機能21は、中継装置101に接続される複数の車載機器202間のデータを中継する機能である。監視機能22は、たとえば、車載機器202および中継装置101、または複数の車載機器202間で送受信されるデータを監視する機能である。演算機能23は、各種演算処理を行う機能である。
 プロトコル変換機能31は、異なる通信プロトコル間のプロトコル変換を行う機能である。ここでは、プロトコル変換機能31は、CANおよびイーサネットの通信プロトコル間のプロトコル変換を行う機能である。ダイアグ機能32は、たとえば、自己の中継装置101における故障を診断するためのダイアグ処理を行う機能である。
 OTA機能41は、OTAマスタ202Bから更新情報を受信した場合、TCU202A経由でサーバ180から更新用プログラムを受信し、当該更新用プログラムをインストールすることにより、記憶部62に保存されているプログラムを更新する機能である。OTA機能41は、中継機能21、監視機能22、演算機能23、プロトコル変換機能31およびダイアグ機能32と比べて、コア61における処理負荷の高い機能である。
 以下、第1のコア61Aが実行するOTA機能41を「OTA機能41A」とも称する。また、第2のコア61Bが実行するOTA機能41を「OTA機能41B」とも称する。図4及び図5に示す状態管理機能42については、後述する。
 [課題の説明]
 上述したように、OTA機能41A,41Bは、コア61における処理負荷の高い機能である。そのため、たとえば、中継装置101における第1のコア61Aが、OTA機能41Aを実行している場合、OTA機能41A以外の他の機能を実行できない可能性があり、また、中継機能21、監視機能22および演算機能23の処理遅延が発生し、各機能のリアルタイム性が損なわれる可能性がある。
 これに対して、本開示の実施の形態に係る中継装置101では、以下のような構成および動作により、このような課題を解決する。
 [中継装置]
 (特定機能情報)
 図4および図5を参照して、第1のコア61Aおよび第2のコア61Bは、状態管理機能42を実行する。
 状態管理機能42は、自己のコア61が実行可能な複数の機能(以下、「第1の機能群」とも称する。)のうちの特定の機能(以下、「特定機能」とも称する。)の実行状態と、他のコア61が実行可能な複数の機能(以下、「第2の機能群」とも称する。)のうちの特定機能の実行状態とを示す特定機能情報を取得する機能である。各コア61は、取得した特定機能情報を記憶部62に保存する。ここでは、特定機能は、OTA機能41である。
 より詳細には、各コア61は、特定機能情報を定期的または不定期に取得する。具体的には、各コア61は、記憶部62に保存されている実行フラグを参照することにより、自己のコア61においてOTA機能41を実行しているか否かを確認する。
 また、各コア61は、他のコア61におけるOTA機能41の実行状態を示す情報を要求するための情報要求通知を他のコア61へ出力する。他のコア61は、情報要求通知を受けると、記憶部62に保存されている実行フラグを参照することにより、当該他のコア61におけるOTA機能41の実行状態を示す実行フラグを、情報要求通知の出力元のコア61へ出力する。
 各コア61は、特定機能情報として、自己のコア61におけるOTA機能41の実行状態を示す実行フラグと、他のコア61から受けた当該他のコア61におけるOTA機能41の実行状態を示す実行フラグとの組を記憶部62に保存する。
 (車両状態情報)
 状態管理機能42は、さらに、車両1の状態を示す車両状態情報を定期的または不定期に取得する機能である。各コア61は、取得した車両状態情報を記憶部62に保存する。ここでは、車両状態情報は、たとえば、車両1の走行状態を示す走行情報と、車両1において電力を供給する電源部の動作状態を示す電源情報とを含む。
 各コア61は、たとえば、車速センサ202Cから受信したフレームに含まれる計測情報に基づいて、車両1の走行状態を判断する。
 より詳細には、各コア61は、車速がゼロの状態が一定時間以上継続する場合、車両1が停止していると判断し、車速がゼロの状態が一定時間以上継続しない場合、車両1が走行していると判断する。
 電源情報は、たとえば、車両1のイグニッション電源の動作状態と、車両1のバッテリの動作状態とを示す。
 各コア61は、たとえば、イグニッション電源の出力電圧を監視することにより、イグニッション電源のオンおよびオフの切り替わりを検知する。
 より詳細には、各コア61は、計測した電圧値が所定の閾値以上である場合、イグニッション電源がオン状態であると判断し、計測した電圧値が閾値未満である場合、イグニッション電源がオフ状態であると判断する。
 また、各コア61は、たとえば、バッテリの出力電圧を監視することにより、バッテリのオンおよびオフの切り替わりを検知する。
 より詳細には、各コア61は、計測した電圧値が所定の閾値以上である場合、バッテリがオン状態であると判断し、計測した電圧値が閾値未満である場合、バッテリがオフ状態であると判断する。
 (決定処理)
 状態管理機能42は、さらに、取得した特定機能情報に基づいて、第1の機能群の機能のうちの、第2の機能群の機能と共通する共通機能20であって、特定機能以外の共通機能20を実行するか否かを決定する決定処理を行う機能である。図4および図5に示す例では、第1のコア61Aおよび第2のコア61Bの各々は、共通機能20である上述の中継機能21、監視機能22および演算機能23を実行する。
 たとえば、記憶部62は、特定機能情報と、車両状態情報と、各コア61における共通機能20の実行の有無を示す情報(以下、「共通機能情報」とも称する。)との対応関係を示す対応情報を記憶する。ここでは、記憶部62は、特定機能情報と、車両状態情報と、第1のコア61Aにおける共通機能情報との対応関係を示す対応情報を含む第1のコア61A用の動作テーブルTb21を記憶する。また、記憶部62は、特定機能情報と、車両状態情報と、第2のコア61Bにおける共通機能情報との対応関係を示す対応情報を含む第2のコア61B用の動作テーブルTb22を記憶する。
 各コア61は、記憶部62に保存されている動作テーブルTb21,Tb22、および状態テーブルTb11を用いて、決定処理を行う。
 (状態テーブル)
 図6は、本開示の実施の形態に係る中継装置が保存する状態テーブルの一例を示す図である。
 図6を参照して、状態テーブルTb11は、特定機能情報と車両状態情報との対応関係を示す対応情報を含む。状態テーブルTb11では、特定機能情報と車両状態情報との組み合わせごとに、コア61の状態Sが定義されている。図6に示す「条件」については、後述する。
 図6に示す状態テーブルTb11において、コア61の状態S1では、OTA機能41Aが停止状態であり、OTA機能41Bが停止状態であり、車両1が走行状態であり、イグニッション電源がオン状態であり、バッテリがオン状態である。コア61の状態S2では、OTA機能41Aが実行中の状態であり、OTA機能41Bが停止状態であり、車両1が停車状態であり、イグニッション電源がオフ状態であり、バッテリがオン状態である。コア61の状態S3では、OTA機能41Aが実行中の状態であり、OTA機能41Bが停止状態であり、車両1が走行状態であり、イグニッション電源がオン状態であり、バッテリがオン状態である。コア61の状態S4では、OTA機能41Aが停止状態であり、OTA機能41Bが実行中の状態であり、車両1が停車状態であり、イグニッション電源がオフ状態であり、バッテリがオン状態である。
 (動作テーブル)
 図7は、本開示の実施の形態に係る中継装置が保存する第1のコア用の動作テーブルの一例を示す図である。
 図7を参照して、動作テーブルTb21は、状態テーブルTb11において定義されるコア61の状態Sと、第1のコア61Aにおける共通機能20の実行の有無と、第1のコア61Aにおけるプロトコル変換機能31の実行の有無との対応関係を示す。
 動作テーブルTb21において、第1のコア61Aは、コア61の状態Sが「S1」および「S4」である場合、中継機能21、監視機能22、演算機能23およびプロトコル変換機能31を実行する。第1のコア61Aは、コア61の状態Sが「S2」および「S3」である場合、中継機能21、監視機能22および演算機能23を実行せず、プロトコル変換機能31を実行する。
 図8は、本開示の実施の形態に係る中継装置が保存する第2のコア用の動作テーブルの一例を示す図である。
 図8を参照して、動作テーブルTb22は、状態テーブルTb11において定義されるコア61の状態Sと、第2のコア61Bにおける共通機能20の実行の有無と、第2のコア61Bにおけるダイアグ機能32の実行の有無との対応関係を示す。
 動作テーブルTb22において、第2のコア61Bは、コア61の状態Sが「S1」、「S2」および「S3」である場合、中継機能21、監視機能22、演算機能23およびダイアグ機能32を実行する。第2のコア61Bは、コア61の状態Sが「S4」である場合、中継機能21、監視機能22および演算機能23を実行せず、ダイアグ機能32を実行する。
 状態テーブルTb11、動作テーブルTb21および動作テーブルTb22は、たとえば、車両1の出荷時に、車両1の製造事業者によって記憶部62に登録される。なお、状態テーブルTb11、動作テーブルTb21および動作テーブルTb22は、車両1の出荷後に更新されてもよい。
 各コア61は、記憶部62における動作テーブルTb21,Tb22に基づいて、取得した特定機能情報および車両状態情報に対応する共通機能情報に従い、決定処理を行う。
 より詳細には、各コア61は、特定機能情報および車両状態情報を取得した場合、記憶部62における状態テーブルTb11を参照し、取得した特定機能情報と車両状態情報との組み合わせに対応するコア61の状態Sを特定する。
 そして、各コア61は、記憶部62における動作テーブルTb21,Tb22を参照し、特定したコア61の状態Sに対応する、自己のコア61における特定機能以外の機能の実行の有無を特定する。
 図9は、本開示の実施の形態に係る中継装置による決定処理の一例を説明するための図である。図9では、第1のコア61Aおよび第2のコア61Bにおいて、枠が破線によって示されている機能は実行されないことを示し、枠が実線によって示されている機能は実行されることを示す。
 各コア61は、決定処理において、自己のコア61が特定機能を実行している場合、自己のコア61において共通機能20を実行しないことを決定する。
 また、各コア61は、決定処理において、自己のコア61が特定機能を実行しておらず、かつ他のコア61が特定機能を実行している場合、自己のコア61において共通機能20を実行することを決定する。
 具体的には、図9を参照して、第1のコア61Aは、自己がOTA機能41Aを実行しているため、共通機能20を実行しない。第2のコア61Bは、自己がOTA機能41Bを実行しておらず、かつ第1のコア61AがOTA機能41Aを実行しているため、共通機能20を実行する。また、第1のコア61Aおよび第2のコア61Bは、自己においてOTA機能41を実行しているか否かに関わらず、プロトコル変換機能31およびダイアグ機能32をそれぞれ実行する。
 また、たとえば、第1のコア61Aおよび第2のコア61Bは、第1のコア61Aおよび第2のコア61Bの両方においてOTA機能41を実行している場合、決定処理を行わない。
 (決定処理の実行判断)
 上述したように、中継装置101における各コア61は、特定機能情報および車両状態情報を定期的または不定期に取得する。各コア61は、今回取得した特定機能情報および車両状態情報ならびに前回取得した特定機能情報および車両状態情報に基づいて、共通機能20の実行の有無を維持するか否かを決定し、維持しない場合、決定処理を行う。
 より詳細には、再び図3および図6を参照して、各コア61は、特定機能情報および車両状態情報を新たに取得した場合、記憶部62に保存されている、前回取得した特定機能情報および車両状態情報を読み出し、記憶部62における状態テーブルTb11を参照することにより、自己のコア61における共通機能20の実行の有無を維持するか否かを決定する。
 状態テーブルTb11は、共通機能20の実行の有無を維持するか否かを決定するための条件を示す条件情報を含む。条件情報は、たとえば、前回取得した特定機能情報および車両状態情報に対応するコア61の状態Sを示す。
 図6に示す例では、今回取得した特定機能情報および車両状態情報に対応するコア61の状態Sが「S1」および「S4」である場合、条件情報は「なし」である。この場合、各コア61は、前回取得した特定機能情報および車両状態情報に対応するコア61の状態Sに関わらず、決定処理を行う。
 一方、今回取得した特定機能情報および車両状態情報に対応するコア61の状態Sが「S2」である場合、条件情報は「S1」である。この場合、各コア61は、前回取得した特定機能情報および車両状態情報に対応するコア61の状態Sが「S1」である場合、決定処理を行う。また、今回取得した特定機能情報および車両状態情報に対応するコア61の状態Sが「S2」である場合、条件情報は「S1orS4」である。この場合、各コア61は、前回取得した特定機能情報および車両状態情報に対応するコア61の状態Sが「S1」または「S4」である場合、決定処理を行う。
 [動作の流れ]
 図10は、本開示の実施の形態に係る中継装置のコアによる決定処理の動作手順を定めたフローチャートである。
 図10を参照して、まず、コア61は、特定機能情報を取得する。たとえば、上述したように、コア61は、特定機能情報として、自己のコア61におけるOTA機能41の実行状態を示す実行フラグと、他のコア61におけるOTA機能41の実行状態を示す実行フラグとを取得する。コア61は、取得した特定機能情報を記憶部62に保存する(ステップS101)。
 次に、コア61は、車両状態情報を取得する。たとえば、上述したように、コア61は、車両状態情報として、車両走行情報および電源情報を取得する。コア61は、取得した車両状態情報を記憶部62に保存する(ステップS102)。ステップS101およびステップS102は、順序を入れ替えて実行してもよいし、並行して実行してもよい。
 次に、コア61は、自己のコア61においてOTA機能41を実行中であるか否かを確認する(ステップS103)。
 次に、各コア61は、自己のコア61においてOTA機能41を実行していない場合(ステップS103においてNO)、他のコア61においてOTA機能41を実行中であるか否かを確認する(ステップS104)。
 コア61は、他のコア61においてOTA機能41を実行している場合(ステップS104においてYES)、または自己のコア61においてOTA機能41を実行している場合(ステップS103においてYES)、今回取得した特定機能情報および車両状態情報ならびに前回取得した特定機能情報および車両状態情報に基づいて、共通機能20の実行の有無を維持するか否かを決定する。たとえば、上述したように、コア61は、記憶部62に保存されている、今回取得した特定機能情報および車両状態情報ならびに前回取得した特定機能情報および車両状態情報と、記憶部62における状態テーブルTb11に含まれる条件情報とを参照することにより、共通機能20の実行の有無を維持するか否かを決定する(ステップS105)。
 次に、コア61は、共通機能20の実行の有無を維持する場合(ステップS105においてYES)、決定処理を行わない(ステップS106)。
 一方、コア61は、共通機能20の実行の有無を維持しない場合(ステップS105においてNO)、決定処理を行う。たとえば、上述したように、コア61は、記憶部62における状態テーブルTb11および動作テーブルTb21,Tb22を参照し、取得した特定機能情報と車両状態情報との組み合わせに対応するコア61の状態Sを特定し、特定したコア61の状態Sに対応する共通機能20の実行の有無を特定する(ステップS106)。
 図11は、本開示の実施の形態に係る中継装置における決定処理のシーケンスの一例を示す図である。図11は、第1のコア61Aが共通機能20を実行し、かつ第2のコア61Bが共通機能20を実行していない状態において行われる決定処理の一例を示している。
 図11を参照して、まず、第1のコア61Aは、自己が共通機能20を実行中であり(ステップS201)、かつ第2のコア61Bが共通機能20の実行を停止している状態において(ステップS202)、第2のコア61BにおけるOTA機能41Bの実行状態を示す実行フラグを要求するための情報要求通知を第2のコア61Bへ出力する(ステップS203)。
 次に、第2のコア61Bは、情報要求通知を受けると、記憶部62に保存されている、自己におけるOTA機能41Bの実行状態を示す実行フラグを第1のコア61Aへ出力する(ステップS204)。
 次に、第1のコア61Aは、自己におけるOTA機能41Aの実行状態と、第2のコア61BにおけるOTA機能41Bの実行状態とを示す特定機能情報を取得する。たとえば、上述したように、第1のコア61Aは、自己におけるOTA機能41Aの実行状態を示す実行フラグと、第2のコア61BにおけるOTA機能41Bの実行状態を示す実行フラグとを取得する。第1のコア61Aは、取得した特定機能情報を記憶部62に保存する(ステップS205)。
 次に、第1のコア61Aは、車両状態情報を取得する。たとえば、上述したように、第1のコア61Aは、車両状態情報として、車両走行情報および電源情報を取得する。第1のコア61Aは、取得した車両状態情報を記憶部62に保存する(ステップS206)。
 次に、第2のコア61Bは、第1のコア61AにおけるOTA機能41Aの実行状態を示す実行フラグを要求するための情報要求通知を第1のコア61Aへ出力する(ステップS207)。
 次に、第1のコア61Aは、情報要求通知を受けると、記憶部62に保存されている実行フラグを参照し、自己におけるOTA機能41Aの実行状態を示す実行フラグを確認し、当該実行フラグを第2のコア61Bへ出力する(ステップS208)。
 次に、第2のコア61Bは、自己におけるOTA機能41Bの実行状態と、第1のコア61AにおけるOTA機能41Aの実行状態とを示す特定機能情報を取得する。たとえば、上述したように、第2のコア61Bは、自己におけるOTA機能41Bの実行状態を示す実行フラグと、第1のコア61AにおけるOTA機能41Aの実行状態を示す実行フラグとを取得する。第2のコア61Bは、取得した特定機能情報を記憶部62に保存する(ステップS209)。
 次に、第2のコア61Bは、車両状態情報を取得する。たとえば、上述したように、第2のコア61Bは、車両状態情報として、車両走行情報および電源情報を取得する。第2のコア61Bは、取得した車両状態情報を記憶部62に保存する(ステップS210)。なお、ステップS203からステップS206までの処理、およびステップS207からステップS210までの処理は、順序を入れ替えて実行してもよいし、並行して実行してもよい。
 次に、第1のコア61Aおよび第2のコア61Bの各々は、記憶部62に保存されている特定機能情報を参照することにより、第1のコア61AにおいてOTA機能41Aを実行中であること、および第2のコア61BにおいてOTA機能41Bを実行していないことを確認する(ステップS211からステップS214)。
 次に、第1のコア61Aおよび第2のコア61Bの各々は、記憶部62に保存されている、今回取得した特定機能情報および車両状態情報ならびに前回取得した特定機能情報および車両状態情報と、記憶部62における状態テーブルTb11に含まれる条件情報とを参照することにより、決定処理を行うことを決定する(ステップS215およびステップS216)。
 次に、第1のコア61Aは、今回取得した特定機能情報および車両状態情報に基づいて、共通機能20を実行するか否かを決定する決定処理を行う。ここでは、第1のコア61Aは、自己がOTA機能41Aを実行しているため、共通機能20を実行しないことを決定する(ステップS217)。
 また、第2のコア61Bは、今回取得した特定機能情報および車両状態情報に基づいて、共通機能20を実行するか否かを決定する決定処理を行う。ここでは、第2のコア61Bは、自己がOTA機能41Bを実行しておらず、かつ第1のコア61AがOTA機能41Aを実行しているため、共通機能20を実行することを決定する(ステップS218)。
 なお、本開示の実施の形態に係る中継装置101では、2つのコア61を備える構成であるとしたが、これに限定するものではない。中継装置101は、3つ以上のコア61を備える構成であってもよい。3つ以上のコア61を備える中継装置101において、各コア61は、特定機能を実行していない他の別のコア61が存在する場合、所定条件をさらに満たす場合に自己のコア61において共通機能20を実行することを決定してもよい。
 具体的には、記憶部62は、予め設定された、決定処理を行うコア61の優先順位を示す優先順位情報を記憶する。各コア61は、特定機能情報および車両状態情報を取得した場合、記憶部62に保存されている優先順位情報、状態テーブルTb11および動作テーブルに基づいて、決定処理を行う。
 また、本開示の実施の形態に係る車載システム301では、1つの中継装置101における処理部53が、複数のコア61を含む構成であるとしたが、これに限定するものではない。たとえば、複数の中継装置101を備える車載システム301において、複数のコア61が、互いに異なる中継装置101にそれぞれ設けられ、各中継装置101におけるコア61が決定処理を行ってもよい。この場合、記憶部62は、各中継装置101に設けられてもよいし、複数の中継装置101の一部に設けられてもよいし、中継装置101以外の他の車載装置に設けられてもよい。
 また、本開示の実施の形態に係る中継装置101では、記憶部62が、コア61ごとの動作テーブルTb21,Tb22を記憶する構成であるとしたが、これに限定するものではない。記憶部62は、たとえば、2つの動作テーブルTb21,Tb22の内容を含む1つの動作テーブルを記憶してもよい。
 また、本開示の実施の形態に係る中継装置101では、記憶部62は、特定機能情報と車両状態情報と共通機能情報との対応関係を示す対応情報を含む動作テーブルTb21,Tb22を記憶し、また、各コア61は、当該動作テーブルTb21,Tb22を用いて決定処理を行う構成であるとしたが、これに限定するものではない。記憶部62は、車両状態情報を示さず、かつ特定機能情報と共通機能情報との対応関係を示す対応情報を記憶する構成であってもよい。この場合、各コア61は、記憶部62における当該対応情報に基づいて、取得した特定機能情報に対応する共通機能情報に従い、決定処理を行う。
 また、本開示の実施の形態に係る中継装置101では、各コア61が、今回取得した特定機能情報および車両状態情報ならびに前回取得した特定機能情報および車両状態情報に基づいて、共通機能20の実行の有無を維持するか否かを決定する構成であるとしたが、これに限定するものではない。各コア61は、前回取得した特定機能情報および車両状態情報に関わらず、決定処理を行う構成であってもよい。
 また、本開示の実施の形態に係る中継装置101では、特定機能は、OTA機能41であるとしたが、これに限定するものではない。特定機能は、OTA機能41以外の他の機能であってもよい。
 また、本開示の実施の形態に係る車載システム301では、中継装置101が複数のコア61を備え、各コア61が状態管理機能42を実行する構成であるとしたが、これに限定するものではない。車載ECU等の中継装置101以外の他の車載装置が複数のコア61を備え、当該他の車載装置における各コア61が状態管理機能42を実行する構成であってもよい。
 上記実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記説明ではなく請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
 上述の実施の形態の各処理(各機能)は、1または複数のプロセッサを含む処理回路により実現される。上記処理回路は、上記1または複数のプロセッサに加え、1または複数のメモリ、各種アナログ回路、各種デジタル回路が組み合わされた集積回路等で構成されてもよい。上記1または複数のメモリは、上記各処理を上記1または複数のプロセッサに実行させるプログラム(命令)を格納する。上記1または複数のプロセッサは、上記1または複数のメモリから読み出した上記プログラムに従い上記各処理を実行してもよいし、予め上記各処理を実行するように設計された論理回路に従って上記各処理を実行してもよい。上記プロセッサは、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)、FPGA(Field Programmable Gate Array)、およびASIC(Application Specific Integrated Circuit)等、コンピュータの制御に適合する種々のプロセッサであってよい。なお、物理的に分離した上記複数のプロセッサが互いに協働して上記各処理を実行してもよい。たとえば、物理的に分離した複数のコンピュータのそれぞれに搭載された上記プロセッサがLAN(Local Area Network)、WAN (Wide Area Network)、およびインターネット等のネットワークを介して互いに協働して上記各処理を実行してもよい。上記プログラムは、外部のサーバ装置等から上記ネットワークを介して上記メモリにインストールされても構わないし、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disk Read Only Memory)、および半導体メモリ等の記録媒体に格納された状態で流通し、上記記録媒体から上記メモリにインストールされても構わない。
 以上の説明は、以下に付記する特徴を含む。
 [付記1]
 車両に搭載される車載システムであって、
 複数の車載装置を備え、
 各前記車載装置は、複数の機能を実行可能なコアを含み、
 前記コアは、自己の前記コアが実行可能な複数の機能である第1の機能群のうちの特定の機能である特定機能の実行状態と、他の前記コアが実行可能な複数の機能である第2の機能群のうちの前記特定機能の実行状態とを示す特定機能情報を取得し、取得した前記特定機能情報に基づいて、前記第1の機能群の機能のうちの、前記第2の機能群の機能と共通する共通機能であって、前記特定機能以外の前記共通機能を実行するか否かを決定する決定処理を行う、車載システム。
 1 車両
 10 イーサネットケーブル
 11 CANバス
 21 中継機能
 22 監視機能
 23 演算機能
 31 プロトコル変換機能
 32 ダイアグ機能
 41,41A,41B OTA機能
 42 状態管理機能
 51,51A,51B,51C,51D 通信ポート
 52 中継部
 53 処理部
 61 コア
 61A 第1のコア
 61B 第2のコア
 62 記憶部
 101 中継装置
 161 無線基地局装置
 170 外部ネットワーク
 180 サーバ
 202,202A,202B,202C,202D 車載機器
 301 車載システム
 401 車載ネットワーク
 501 通信システム

Claims (8)

  1.  車両に搭載される車載装置であって、
     各々が、複数の機能を実行可能な複数のコアを備え、
     各前記コアは、自己の前記コアが実行可能な複数の機能である第1の機能群のうちの特定の機能である特定機能の実行状態と、他の前記コアが実行可能な複数の機能である第2の機能群のうちの前記特定機能の実行状態とを示す特定機能情報を取得し、取得した前記特定機能情報に基づいて、前記第1の機能群の機能のうちの、前記第2の機能群の機能と共通する共通機能であって、前記特定機能以外の前記共通機能を実行するか否かを決定する決定処理を行う、車載装置。
  2.  前記各コアは、前記決定処理において、前記自己のコアが前記特定機能を実行している場合、前記自己のコアにおいて前記共通機能を実行しないことを決定し、
     前記各コアは、前記決定処理において、前記自己のコアが前記特定機能を実行しておらず、かつ前記他のコアが前記特定機能を実行している場合、前記自己のコアにおいて前記共通機能を実行することを決定する、請求項1に記載の車載装置。
  3.  前記車載装置は、さらに、
     前記特定機能情報と、前記各コアにおける前記共通機能の実行の有無を示す情報である共通機能情報との対応関係を示す対応情報を記憶する記憶部を備え、
     前記各コアは、前記記憶部における前記対応情報に基づいて、取得した前記特定機能情報に対応する前記共通機能情報に従い、前記決定処理を行う、請求項1または請求項2に記載の車載装置。
  4.  前記各コアは、さらに、前記車両の状態を示す車両状態情報を取得し、
     前記記憶部は、前記特定機能情報と前記車両状態情報と前記共通機能情報との対応関係を示す前記対応情報を記憶し、
     前記各コアは、前記記憶部における前記対応情報に基づいて、取得した前記特定機能情報および前記車両状態情報に対応する前記共通機能情報に従い、前記決定処理を行う、請求項3に記載の車載装置。
  5.  前記各コアは、前記特定機能情報、および前記車両の状態を示す車両状態情報を定期的または不定期に取得し、今回取得した前記特定機能情報および前記車両状態情報ならびに前回取得した前記特定機能情報および前記車両状態情報に基づいて、前記共通機能の実行の有無を維持するか否かを決定し、維持しない場合、前記決定処理を行う、請求項1から請求項4のいずれか1項に記載の車載装置。
  6.  前記特定機能は、OTA(Over The Air)機能である、請求項1から請求項5のいずれか1項に記載の車載装置。
  7.  車両に搭載される車載装置における機能制御方法であって、
     前記車載装置は、各々が複数の機能を実行可能な複数のコアを備え、
     各前記コアが、自己の前記コアが実行可能な複数の機能である第1の機能群のうちの特定の機能である特定機能の実行状態と、他の前記コアが実行可能な複数の機能である第2の機能群のうちの前記特定機能の実行状態とを示す特定機能情報を取得するステップと、
     前記各コアが、取得した前記特定機能情報に基づいて、前記第1の機能群の機能のうちの、前記第2の機能群の機能と共通する共通機能であって、前記特定機能以外の前記共通機能を実行するか否かを決定する決定処理を行うステップとを含む、機能制御方法。
  8.  車両に搭載される車載装置において用いられる機能制御プログラムであって、
     前記車載装置は、各々が複数の機能を実行可能な複数のコアを備え、
     各前記コアに、
     自己の前記コアが実行可能な複数の機能である第1の機能群のうちの特定の機能である特定機能の実行状態と、他の前記コアが実行可能な複数の機能である第2の機能群のうちの前記特定機能の実行状態とを示す特定機能情報を取得するステップと、
     取得した前記特定機能情報に基づいて、前記第1の機能群の機能のうちの、前記第2の機能群の機能と共通する共通機能であって、前記特定機能以外の前記共通機能を実行するか否かを決定する決定処理を行うステップとを実行させるための、機能制御プログラム。
PCT/JP2023/038011 2022-11-07 2023-10-20 車載装置、機能制御方法および機能制御プログラム WO2024101115A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2022-177882 2022-11-07
JP2022177882A JP2024067648A (ja) 2022-11-07 2022-11-07 車載装置、機能制御方法および機能制御プログラム

Publications (1)

Publication Number Publication Date
WO2024101115A1 true WO2024101115A1 (ja) 2024-05-16

Family

ID=91032578

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/038011 WO2024101115A1 (ja) 2022-11-07 2023-10-20 車載装置、機能制御方法および機能制御プログラム

Country Status (2)

Country Link
JP (1) JP2024067648A (ja)
WO (1) WO2024101115A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014004858A (ja) * 2012-06-21 2014-01-16 Hitachi Automotive Systems Ltd 車両制御装置
JP2022076790A (ja) * 2020-11-10 2022-05-20 トヨタ自動車株式会社 情報処理装置、方法、プログラム、及び車両

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014004858A (ja) * 2012-06-21 2014-01-16 Hitachi Automotive Systems Ltd 車両制御装置
JP2022076790A (ja) * 2020-11-10 2022-05-20 トヨタ自動車株式会社 情報処理装置、方法、プログラム、及び車両

Also Published As

Publication number Publication date
JP2024067648A (ja) 2024-05-17

Similar Documents

Publication Publication Date Title
US10756930B2 (en) Gateway device, vehicle network system, transfer method, and non-transitory computer-readable recording medium storing program
EP3659868B1 (en) Abnormality detection device, and abnormality detection method
EP3468108B1 (en) Network hub, transfer method, and on-vehicle network system
EP3907936B1 (en) Electronic control unit, frame generating method, and program
US10715600B2 (en) Network hub, transfer method, and onboard network system
US10693675B2 (en) Electronic control unit, communication method, and onboard network system
CN105388858B (zh) 网络中通信节点的操作方法
EP3745657B1 (en) Gateway device, vehicle network system, transfer method, and program
CN112003772B (zh) 通信系统以及通信控制方法
JP2019146145A (ja) 通信装置、通信方法及びプログラム
WO2024101115A1 (ja) 車載装置、機能制御方法および機能制御プログラム
WO2020049871A1 (ja) 車両用通信装置
JP4361540B2 (ja) ゲートウェイ装置、データ転送方法及びプログラム
WO2024127949A1 (ja) 車載装置、起動制御方法および起動制御プログラム
WO2024214525A1 (ja) 車載中継装置、車載装置および車載システム
WO2024014191A1 (ja) 管理装置、車両通信管理方法および車両通信管理プログラム
WO2023233619A1 (ja) 中継装置
JP2024147137A (ja) 車載装置、設定処理方法および設定処理プログラム
JP2024151355A (ja) 車載中継装置、車載装置および車載システム
JP2020025194A (ja) 情報処理装置、情報処理システム、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23888466

Country of ref document: EP

Kind code of ref document: A1