In-vehicle device, function control method, and function control program

By obtaining specific function information in the kernel of the on-board device, deciding whether to execute general functions is solved, and the problem of the kernel being unable to execute other functions or affecting real-time when executing functions with high processing load is solved, and the effect of each kernel being more stable to execute multiple functions is achieved.

CN120092230APending Publication Date: 2025-06-03AUTONETWORKS TECH LTD +2
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202380077226.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-11-07
Filing Date
2023-10-20
Publication Date
2025-06-03

AI Technical Summary

Technical Problem

In an on-board device with multiple cores, when the core performs a high processing load function, it may lead to the inability to perform other functions or affect the real-time performance of the functions.

Method used

By obtaining specific function information in each kernel, it is determined whether to perform common functions. Specific function information indicates the function status that each core can execute, and the decision processing determines whether to execute a common function based on this information, ensuring that each core can execute multiple functions more stably.

Benefits of technology

It realizes that multiple functions are executed more stably in each core, avoids the high processing load affecting the real-time nature of other functions, and improves the reliability of the vehicle-mounted device.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120092230A_ABST
    Figure CN120092230A_ABST
Patent Text Reader

Abstract

A vehicle-mounted device mounted on a vehicle is provided with a plurality of cores each capable of executing a plurality of functions, and each of the cores acquires specific function information. The specific function information indicates an execution state of a specific function, which is a specific function in a first function group, which is a plurality of functions that can be executed by the core itself, and an execution state of the specific function in a second function group, which is a plurality of functions that can be executed by another core. Each of the cores performs, on the basis of the acquired specific function information, a determination process for determining whether or not to execute a common function that is a function other than the specific function that is common to the function of the second function group among the functions of the first function group.
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 function control method, and a function control program.

[0002] This application claims priority based on Japanese Patent Application No. 2022-177882 filed on November 7, 2022, and incorporates the entire contents disclosed therein. Background Art

[0003] The following technology is disclosed in Patent Document 1 (Japanese Unexamined Patent Application Publication No. 2018-67135). That is, a vehicle control device that controls the operation of a vehicle is characterized by including: a storage unit that stores a task table that defines an arithmetic device for executing a control task for controlling the operation of the vehicle; first and second arithmetic devices 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 starts or ends.

[0004] Prior Art Documents

[0005] Patent Documents

[0006] Patent Document 1: Japanese Unexamined Patent Application Publication No. 2018-67135 Summary of the Invention

[0007] Technical Solution for Solving the Problem

[0008] The in-vehicle device of the present disclosure is an in-vehicle device mounted on a vehicle, wherein the in-vehicle device includes a plurality of cores each capable of executing a plurality of functions, each of the cores acquires specific function information, the specific function information indicates the execution status of a specific function among a plurality of functions that the core itself can execute, that is, a specific function in a first function group, and the execution status of the specific function among a plurality of functions that other cores can execute, that is, a second function group, and each of the cores performs a decision process based on the acquired specific function information, and the decision process determines whether to execute a general function, and the general function is a function in the first function group that is common to the functions in the second function group and other than the specific function.

[0009] One aspect of the present disclosure can be implemented not only as an in-vehicle device having such a characteristic processing unit, but also as a semiconductor integrated circuit that realizes part or all of the in-vehicle device, or can be implemented as a system including the in-vehicle device. Brief Description of the Drawings

[0010] Figure 1 It is a diagram showing the configuration of a communication system according to an embodiment of the present disclosure.

[0011] Figure 2 This is a diagram showing the structure of the in-vehicle system according to an embodiment of the present disclosure.

[0012] Figure 3 This is a diagram showing the structure of the relay device according to an embodiment of the present disclosure.

[0013] Figure 4 This is a conceptual diagram showing the functions executed by the first core of the relay device according to an embodiment of the present disclosure.

[0014] Figure 5 This is a conceptual diagram showing the functions executed by the second core of the relay device according to an embodiment of the present disclosure.

[0015] Figure 6 This is a diagram showing an example of the core state table stored in the relay device according to an embodiment of the present disclosure.

[0016] Figure 7 This is a diagram showing an example of the action table for the first core stored in the relay device according to an embodiment of the present disclosure.

[0017] Figure 8 This is a diagram showing an example of the action table for the second core stored in the relay device according to an embodiment of the present disclosure.

[0018] Figure 9 This is a diagram for explaining an example of the decision process performed by the relay device according to an embodiment of the present disclosure.

[0019] Figure 10 This is a flowchart for determining the action sequence of the decision process performed by the core of the relay device according to an embodiment of the present disclosure.

[0020] Figure 11 This is a diagram showing an example of the timing of the decision process in the relay device according to an embodiment of the present disclosure. Detailed Embodiments

[0021] In in-vehicle devices, technologies for reducing the processing load in each core of a processor have been developed.

[0022] [Problems to be Solved by the Present Disclosure]

[0023] In recent years, as the functions of in-vehicle devices have improved, the number of functions executed by the cores of the processors mounted on in-vehicle devices has tended to increase, and the spread of in-vehicle devices having multiple cores is expected.

[0024] Here, in a vehicle-mounted device having a processor with multiple cores, there are cases where a core executes a function with a high processing load. In such a case, there is a possibility that the core cannot execute other functions. In addition, there is a possibility that the real-time performance of other functions is impaired.

[0025] The present disclosure has been made to solve the above problems, and an object thereof is to provide a vehicle-mounted device, a function control method, and a function control program capable of more stably executing multiple functions in each core.

[0026] [Effect of the present disclosure]

[0027] According to the present disclosure, multiple functions can be executed more stably in each core.

[0028] [Description of the embodiment of the present disclosure]

[0029] First, the contents of the embodiment of the present disclosure will be listed and described.

[0030] (1) The vehicle-mounted device according to the embodiment of the present disclosure is mounted on a vehicle, and the vehicle-mounted device includes multiple cores each capable of executing multiple functions. Each core acquires specific function information, and the specific function information represents the execution status of a specific function, which is a specific function in a first function group of multiple functions that the core itself can execute, and the execution status of the specific function in a second function group of multiple functions that other cores can execute. Each core performs a determination process based on the acquired specific function information, and the determination process determines whether to execute a general function. The general function is a function in the first function group that is common to the functions in the second function group and other than the specific function.

[0031] In this way, by the structure of determining whether to execute a general function other than the specific function in each core based on the specific function information indicating the execution status of the specific functions of multiple cores, it is possible to grasp the execution status of the specific functions of its own core and other cores in each core. Therefore, it is possible to determine whether to execute the general function in its own core according to the execution status of the specific function in each core. Therefore, multiple functions can be executed more stably in each core.

[0032] (2) In the above (1), it may be that each core determines not to execute the general function in its own core in the determination process when its own core is executing the specific function, or it may be that each core determines to execute the general function in its own core in the determination process when its own core is not executing the specific function and other cores are executing the specific function.

[0033] With such a structure, since specific functions and general functions can be executed in different cores, even when the specific function is a function with a high processing load, the general functions can be executed more reliably. In addition, it is possible to suppress a decrease in the real-time performance of the general functions.

[0034] In (1) or (2) above, it may also be that the in-vehicle device further includes a storage unit that stores correspondence information indicating the correspondence between the specific function information and the general function information, where the general function information is information indicating the presence or absence of execution of the general function in each core. It may also be that each core makes the determination process based on the correspondence information in the storage unit according to the general function information corresponding to the acquired specific function information.

[0035] With such a structure, in each core, it is possible to easily determine whether to execute the general function using the correspondence information.

[0036] In (3) above, it may also be that each core further acquires vehicle state information indicating the state of the vehicle. It may also be that the storage unit stores the correspondence information indicating the correspondence between the specific function information, the vehicle state information, and the general function information. It may also be that each core makes the determination process based on the correspondence information in the storage unit according to the general function information corresponding to the acquired specific function information and the vehicle state information.

[0037] With such a structure, it is possible to more appropriately determine the presence or absence of execution of the general function based on the execution state of the specific function in each core and the state of the vehicle on which the in-vehicle device is mounted.

[0038] In any one of (1) to (4) above, it may also be that each core periodically or aperiodically acquires the specific function information and the vehicle state information indicating the state of the vehicle, and determines whether to maintain the presence or absence of execution of the general function based on the specific function information and the vehicle state information acquired this time and the specific function information and the vehicle state information acquired last time. If not maintained, the determination process is performed.

[0039] With such a structure, it is possible to appropriately determine the presence or absence of execution of the determination process based on the transition of the execution state of the specific function in each core and the transition of the state of the vehicle.

[0040] In any one of (1) to (5) above, it may also be that the specific function is an OTA (Over The Air) function.

[0041] With such a structure, it is possible to determine whether to execute a general function in its own core based on the execution state in each core of the OTA function, which is a function with a high processing load.

[0042] (7) The function control method according to an embodiment of the present disclosure is a function control method in an in-vehicle device mounted on a vehicle. The in-vehicle device includes a plurality of cores each capable of executing a plurality of functions. The function control method includes the following steps: a step in which each of the cores acquires specific function information indicating the execution state of a specific function, which is a specific function in a first function group of a plurality of functions that the core itself can execute, and the execution state of the specific function in a second function group of a plurality of functions that the other cores can execute; and a step in which each of the cores performs a determination process based on the acquired specific function information. The determination process determines whether to execute a general function, which is a function other than the specific function that is common to the functions of the second function group among the functions of the first function group.

[0043] In this way, with a structure that determines whether to execute a general function other than a specific function in each core based on specific function information indicating the execution states of specific functions of each of the plurality of cores, it is possible to grasp the execution states of the specific functions of its own core and the other cores in each core. Therefore, it is possible to determine whether to execute a general function in its own core based on the execution state of the specific function in each core. Therefore, it is possible to execute a plurality of functions more stably in each core.

[0044] (8) The function control program according to an embodiment of the present disclosure is a function control program used in an in-vehicle device mounted on a vehicle. The in-vehicle device includes a plurality of cores each capable of executing a plurality of functions. The function control program causes each of the cores to execute the following steps: a step of acquiring specific function information indicating the execution state of a specific function, which is a specific function in a first function group of a plurality of functions that the core itself can execute, and the execution state of the specific function in a second function group of a plurality of functions that the other cores can execute; and a step of performing a determination process based on the acquired specific function information. The determination process determines whether to execute a general function, which is a function other than the specific function that is common to the functions of the second function group among the functions of the first function group.

[0045] In this way, by using the specific function information indicating the execution states of the specific functions of the respective cores to determine whether to execute general functions other than the specific functions in each core, it is possible to grasp the execution states of the specific functions of its own core and other cores in each core. Therefore, it is possible to determine whether to execute general functions in its own core based on the execution states of the specific functions in each core. Thus, it is possible to more stably execute multiple functions in each core.

[0046] Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In addition, the same or corresponding parts in the drawings are denoted by the same reference numerals, and their descriptions will not be repeated. In addition, at least a part of the embodiments described below can be arbitrarily combined.

[0047] [Communication System]

[0048] Figure 1 is a diagram showing the configuration of a communication system according to an embodiment of the present disclosure. Referring to Figure 1 , the communication system 501 includes a server 180 and one or more in-vehicle systems 301. The in-vehicle system 301 is mounted on a vehicle 1.

[0049] [In-Vehicle System]

[0050] Figure 2 is a diagram showing the configuration of an in-vehicle system according to an embodiment of the present disclosure. Referring to Figure 2 , 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 an in-vehicle device mounted on the vehicle 1.

[0051] In Figure 2 the example shown, the in-vehicle system 301 includes in-vehicle devices 202A, 202B, 202C, and 202D as the in-vehicle devices 202. The relay device 101 and the in-vehicle devices 202 constitute an in-vehicle network 401.

[0052] In addition, the in-vehicle system 301 is not limited to the configuration including 4 in-vehicle devices 202, and may also be a configuration including 2, 3, or 5 or more in-vehicle devices 202. In addition, the in-vehicle system 301 is not limited to the configuration including 1 relay device 101, and may also be a configuration including a plurality of relay devices 101.

[0053] The relay device 101 is, for example, a gateway device. The relay device 101 can relay data between a plurality of in-vehicle devices 202 connected to itself.

[0054] The relay device 101 and each in-vehicle device 202 generate frames including various information described later and transmit them to other in-vehicle devices 202 or the relay device 101.

[0055] [Vehicle-mounted device]

[0056] The vehicle-mounted device 202 is, for example, a vehicle-mounted ECU such as a TCU (Telematics Communication Unit), an ECU (Electronic Control Unit) for autonomous driving, an ECU for face authentication, and an ECU for a door lock. In addition, the vehicle-mounted device 202 is not limited to a vehicle-mounted ECU, and may also be a sensor, a navigation device, a human-machine interface, a camera, an OTA host, etc.

[0057] A plurality of vehicle-mounted devices 202 are connected to the relay device 101 via, for example, an Ethernet (registered trademark) cable 10 or a CAN bus 11 conforming to the CAN (Controller Area Network) (registered trademark) standard. Hereinafter, the vehicle-mounted device 202 connected to the relay device 101 via the Ethernet cable 10 is also referred to as an "Ethernet device". In addition, the vehicle-mounted device 202 connected to the relay device 101 via the CAN bus 11 is also referred to as a "CAN device".

[0058] Here, the vehicle-mounted device 202A, the vehicle-mounted device 202B, the vehicle-mounted device 202C, and the vehicle-mounted device 202D are a TCU, an OTA host, a vehicle speed sensor, and a temperature sensor, respectively. Hereinafter, the vehicle-mounted device 202A, the vehicle-mounted device 202B, the vehicle-mounted device 202C, and the vehicle-mounted device 202D are also referred to as a TCU 202A, an OTA host 202B, a vehicle speed sensor 202C, and a temperature sensor 202D, respectively.

[0059] The TCU 202A and the OTA host 202B are connected to the relay device 101 via an Ethernet cable 10, for example.

[0060] Refer to Figure 1 and Figure 2 , the TCU 202A can communicate with the server 180. The TCU 202A can communicate with the server 180 using, for example, an IP packet via the radio base station device 161.

[0061] More specifically, the TCU 202A can perform wireless communication with the radio base station device 161 according to a communication standard such as LTE (Long Term Evolution) or 5G.

[0062] Specifically, when the radio base station device 161 receives an IP packet from the server 180 via an external network 170 such as the Internet, the received IP packet is included in a radio signal and sent to the TCU 202A.

[0063] When the TCU202A receives a wireless signal containing an IP data packet from the server 180 from the radio base station device 161, it acquires the IP data packet from the received wireless signal, saves the acquired IP data packet in a frame, and transmits it to the relay device 101.

[0064] The server 180 is, for example, an OTA server and is provided outside the vehicle 1. The server 180 holds update programs for updating various software used in the in-vehicle network 401.

[0065] The OTA host 202B controls the update of various software used in the in-vehicle network 401. The OTA host 202B transmits confirmation information for confirming whether the above update program exists in the server 180 to the server 180 via the relay device 101 and the TCU202A. As a response to the confirmation information received from the TCU202A, the server 180 transmits information indicating the confirmation result to the OTA host 202B via the TCU202A and the relay device 101.

[0066] When the OTA host 202B confirms that there is an update program for updating the software installed in the relay device 101 in the server 180, it transmits update information for instructing the installation of the update program to the relay device 101.

[0067] When the relay device 101 receives the update information from the OTA host 202B, it receives the update program from the server 180 via the TCU202A. Then, the relay device 101 updates the software installed in itself by installing the received update program.

[0068] The vehicle speed sensor 202C and the temperature sensor 202D are connected to the relay device 101 via the CAN bus 11, for example.

[0069] The vehicle speed sensor 202C measures the vehicle speed of the vehicle 1 regularly, for example, and transmits a frame storing measurement information indicating the measurement result to the relay device 101 or other in-vehicle devices 202.

[0070] The temperature sensor 202D measures the outside air temperature of the vehicle 1 regularly, for example, and transmits a frame storing measurement information indicating the measurement result to the relay device 101 or other in-vehicle devices 202.

[0071] In addition, the relay device 101 is not limited to the structure connected to the in-vehicle device 202 via the Ethernet cable 10 and the CAN bus 11. For example, it may also be a structure connected to the in-vehicle device 202 via a bus conforming to communication standards such as CAN FD (CAN with Flexible Data Rate), FlexRay (registered trademark), MOST (Media Oritend System Transport) (registered trademark), and LIN (Local Interconnect Network).

[0072] [Relay Device]

[0073] Figure 3 FIG. is a diagram showing the structure of the relay device according to an embodiment of the present disclosure. Refer to Figure 3 , the relay device 101 includes a communication port 51, a relay unit 52, and a processing unit 53. The processing unit 53 includes a plurality of cores 61 and a storage unit 62. One or both of the relay unit 52 and the processing unit 53 are implemented by a processing circuit (Circuitry) including one or more processors. Here, the core 61 corresponds to a processor.

[0074] The communication port 51 is, for example, a terminal capable of connecting to the Ethernet cable 10 or the CAN bus 11. In Figure 3 the example shown, the relay device 101 includes four communication ports 51A, 51B, 51C, and 51D as a plurality of communication ports 51. In the relay device 101, the TCU 202A and the OTA host 202B are respectively connected to the communication ports 51A and 51B 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.

[0075] In addition, the relay device 101 is not limited to the structure including four communication ports 51, and any structure including two or more communication ports 51 is acceptable.

[0076] The relay unit 52 performs relay processing for relaying data transmitted and received between the in-vehicle devices 202. The relay unit 52 can perform relay processing accompanied by a communication protocol conversion. Specifically, when the relay unit 52 receives a frame from a CAN device according to the communication standard of CAN, it changes the format of the received frame to the format according to the communication standard of Ethernet, and transmits the frame with the changed format to the Ethernet device according to the communication standard of Ethernet.

[0077] In addition, when the relay unit 52 receives a frame from an Ethernet device according to the communication standard of Ethernet, it changes the format of the received frame to the format according to the communication standard of CAN, and sends the frame with the changed format to the CAN device according to the communication standard of CAN.

[0078] In addition, the relay unit 52 can perform relay processing without accompanying protocol conversion. Specifically, when the relay unit 52 receives a frame from an Ethernet device according to the communication standard of Ethernet, it sends the received frame to another Ethernet device according to the communication standard of Ethernet.

[0079] In addition, when the relay unit 52 receives a frame from a CAN device according to the communication standard of CAN, it sends the received frame to another CAN device according to the communication standard of CAN.

[0080] [Kernel]

[0081] In the relay device 101, multiple kernels 61 can each execute multiple functions. In Figure 3 the example shown, the relay device 101 includes a first kernel 61A and a second kernel 61B as the multiple kernels 61. In addition, the descriptions of "first" and "second" do not imply a priority order.

[0082] Here, in the code area of the storage unit 62 in the relay device 101, programs for each function executed by each kernel 61 are stored. Each kernel 61 executes each function by reading out and executing the control program stored in the storage unit 62. In addition, the storage unit 62 stores an execution flag indicating the execution status of each function for each kernel 61.

[0083] Figure 4 It is a conceptual diagram showing multiple functions executed by the first kernel of the relay device according to the embodiment of the present disclosure. Figure 5 It is a conceptual diagram showing multiple functions executed by the second kernel of the relay device according to the embodiment of the present disclosure.

[0084] Refer to Figure 4 , the first kernel 61A can execute a relay function 21, a monitoring function 22, an arithmetic function 23, a protocol conversion function 31, an OTA function 41, and a status management function 42. Refer to Figure 5 , the second kernel 61B can execute a relay function 21, a monitoring function 22, an arithmetic function 23, a diagnosis function 32, an OTA function 41, and a status management function 42.

[0085] The relay function 21 is a function for relaying data between a plurality of in-vehicle devices 202 connected to the relay device 101. The monitoring function 22 is, for example, a function for monitoring data transmitted and received between the in-vehicle device 202 and the relay device 101 or between a plurality of in-vehicle devices 202. The arithmetic function 23 is a function for performing various arithmetic processes.

[0086] The protocol conversion function 31 is a function for performing protocol conversion between different communication protocols. Here, the protocol conversion function 31 is a function for performing protocol conversion between the communication protocols of CAN and Ethernet. The diagnosis function 32 is, for example, a function for performing diagnostic processing for diagnosing a failure in the relay device 101 itself.

[0087] The OTA function 41 is a function for updating a program stored in the storage unit 62 by receiving an update program from the server 180 via the TCU 202A when update information is received from the OTA host 202B and installing the update program. The OTA function 41 is a function with a high processing load in the kernel 61 compared to the relay function 21, the monitoring function 22, the arithmetic function 23, the protocol conversion function 31, and the diagnosis function 32.

[0088] Hereinafter, the OTA function 41 executed by the first kernel 61A is also referred to as "OTA function 41A". In addition, the OTA function 41 executed by the second kernel 61B is also referred to as "OTA function 41B". Regarding Figure 4 and Figure 5 the state management function 42 shown, it will be described later.

[0089] [Explanation of the problem]

[0090] As described above, the OTA functions 41A and 41B are functions with a high processing load in the kernel 61. Therefore, for example, when the first kernel 61A in the relay device 101 is executing the OTA function 41A, it may not be possible to execute other functions other than the OTA function 41A, and in addition, processing delays of the relay function 21, the monitoring function 22, and the arithmetic function 23 may occur, impairing the real-time performance of each function.

[0091] In contrast, in the relay device 101 according to the embodiment of the present disclosure, such a problem is solved by the following structure and operation.

[0092] [Relay device]

[0093] (Specific function information)

[0094] Referring to Figure 4 and Figure 5 , the first kernel 61A and the second kernel 61B execute the state management function 42.

[0095] The status management function 42 is a function for obtaining specific function information that represents the execution status of a specific function (hereinafter also referred to as "specific function") among multiple functions that its own kernel 61 can execute (hereinafter also referred to as "first function group") and the execution status of a specific function among multiple functions that other kernels 61 can execute (hereinafter also referred to as "second function group"). Each kernel 61 stores the obtained specific function information in the storage unit 62. Here, the specific function is the OTA function 41.

[0096] More specifically, each kernel 61 periodically or irregularly obtains specific function information. Specifically, each kernel 61 confirms whether the OTA function 41 is being executed in its own kernel 61 by referring to the execution flag stored in the storage unit 62.

[0097] In addition, each kernel 61 outputs an information request notification for requesting information indicating the execution status of the OTA function 41 in other kernels 61 to other kernels 61. When receiving the information request notification, the other kernel 61 outputs the execution flag indicating the execution status of the OTA function 41 in that other kernel 61 to the kernel 61 that is the output source of the information request notification by referring to the execution flag stored in the storage unit 62.

[0098] Each kernel 61 stores, as specific function information, a group of the execution flag indicating the execution status of the OTA function 41 in its own kernel 61 and the execution flag indicating the execution status of the OTA function 41 in the other kernel 61 received from the other kernel 61 in the storage unit 62.

[0099] (Vehicle status information)

[0100] The status management function 42 is also a function for periodically or irregularly obtaining vehicle status information indicating the status of the vehicle 1. Each kernel 61 stores the obtained vehicle status information in the storage unit 62. Here, the vehicle status information includes, for example, travel information indicating the travel status of the vehicle 1 and power supply information indicating the operation status of the power supply unit that supplies power to the vehicle 1.

[0101] Each kernel 61 determines the travel status of the vehicle 1 based on, for example, the measurement information included in the frame received from the vehicle speed sensor 202C.

[0102] More specifically, each kernel 61 determines that the vehicle 1 has stopped when the state where the vehicle speed is zero continues for a certain period or more, and determines that the vehicle 1 is traveling when the state where the vehicle speed is zero does not continue for a certain period or more.

[0103] The power supply information represents, for example, the operation status of the ignition power supply of the vehicle 1 and the operation status of the battery of the vehicle 1.

[0104] Each core 61 detects the switching between the on and off states of the ignition power supply, for example, by monitoring the output voltage of the ignition power supply.

[0105] More specifically, each core 61 determines that the ignition power supply is in the on state when the measured voltage value is equal to or higher than a specified threshold value, and determines that the ignition power supply is in the off state when the measured voltage value is less than the threshold value.

[0106] In addition, each core 61 detects the switching between the on and off states of the storage battery, for example, by monitoring the output voltage of the storage battery.

[0107] More specifically, each core 61 determines that the storage battery is in the on state when the measured voltage value is equal to or higher than a specified threshold value, and determines that the storage battery is in the off state when the measured voltage value is less than the threshold value.

[0108] (Determination process)

[0109] The state management function 42 is also a function that performs a determination process for determining whether to execute the general function 20 based on the acquired specific function information. The general function 20 is a function common to the functions of the second functional group among the functions of the first functional group and is a function other than the specific function. In Figure 4 and Figure 5 the illustrated example, the first core 61A and the second core 61B respectively execute the above-described relay function 21, monitoring function 22, and arithmetic function 23 as the general function 20.

[0110] For example, the storage unit 62 stores correspondence information indicating the correspondence relationship among the specific function information, the vehicle state information, and information indicating the execution or non-execution of the general function 20 in each core 61 (hereinafter, also referred to as "general function information"). Here, the storage unit 62 stores the operation table Tb21 for the first core 61A including the correspondence information indicating the correspondence relationship among the specific function information, the vehicle state information, and the general function information in the first core 61A. In addition, the storage unit 62 stores the operation table Tb22 for the second core 61B including the correspondence information indicating the correspondence relationship among the specific function information, the vehicle state information, and the general function information in the second core 61B.

[0111] Each core 61 performs a determination process using the operation tables Tb21, Tb22, and the state table Tb11 stored in the storage unit 62.

[0112] (State table)

[0113] Figure 6 FIG. is an example of a state table stored in the relay device according to the embodiment of the present disclosure.

[0114] Refer to Figure 6 , the status table Tb11 contains corresponding information indicating the correspondence between specific function information and vehicle status information. In the status table Tb11, for each combination of specific function information and vehicle status information, the status S of the kernel 61 is defined. Regarding Figure 6 the "conditions" shown will be described later.

[0115] In Figure 6 the status table Tb11 shown, in the status S1 of the kernel 61, the OTA function 41A is in a stopped state, the OTA function 41B is in a stopped state, the vehicle 1 is in a driving state, the ignition power supply is in an on state, and the battery is in an on state. In the status S2 of the kernel 61, the OTA function 41A is in an executing state, the OTA function 41B is in a stopped state, the vehicle 1 is in a parked state, the ignition power supply is in an off state, and the battery is in an on state. In the status S3 of the kernel 61, the OTA function 41A is in an executing state, the OTA function 41B is in a stopped state, the vehicle 1 is in a driving state, the ignition power supply is in an on state, and the battery is in an on state. In the status S4 of the kernel 61, the OTA function 41A is in a stopped state, the OTA function 41B is in an executing state, the vehicle 1 is in a parked state, the ignition power supply is in an off state, and the battery is in an on state.

[0116] (Action table)

[0117] Figure 7 is a diagram showing an example of an action table for the first kernel stored in the relay device according to the embodiment of the present disclosure.

[0118] Refer to Figure 7 , the action table Tb21 represents the correspondence between the status S of the kernel 61 defined in the status table Tb11, the execution or non-execution of the general function 20 in the first kernel 61A, and the execution or non-execution of the protocol conversion function 31 in the first kernel 61A.

[0119] In the action table Tb21, when the status S of the kernel 61 is "S1" and "S4", the first kernel 61A executes the relay function 21, the monitoring function 22, the arithmetic function 23, and the protocol conversion function 31. When the status S of the kernel 61 is "S2" and "S3", the first kernel 61A does not execute the relay function 21, the monitoring function 22, and the arithmetic function 23, but executes the protocol conversion function 31.

[0120] Figure 8 is a diagram showing an example of an action table for the second kernel stored in the relay device according to the embodiment of the present disclosure.

[0121] Refer to Figure 8, the action table Tb22 represents the correspondence relationship of the state S of the kernel 61 defined in the state table Tb11, the presence or absence of the execution of the general function 20 in the second kernel 61B, and the presence or absence of the execution of the diagnostic function 32 in the second kernel 61B.

[0122] In the action table Tb22, when the state S of the kernel 61 is "S1", "S2", and "S3", the second kernel 61B executes the relay function 21, the monitoring function 22, the arithmetic function 23, and the diagnostic function 32. When the state S of the kernel 61 is "S4", the second kernel 61B does not execute the relay function 21, the monitoring function 22, and the arithmetic function 23, but executes the diagnostic function 32.

[0123] The state table Tb11, the action table Tb21, and the action table Tb22 are registered in the storage unit 62 by the manufacturer of the vehicle 1 when the vehicle 1 leaves the factory, for example. In addition, the state table Tb11, the action table Tb21, and the action table Tb22 can also be updated after the vehicle 1 leaves the factory.

[0124] Each kernel 61 makes a decision process based on the action tables Tb21 and Tb22 in the storage unit 62 according to the general function information corresponding to the acquired specific function information and vehicle state information.

[0125] More specifically, when each kernel 61 acquires the specific function information and the vehicle state information, it refers to the state table Tb11 in the storage unit 62 to determine the state S of the kernel 61 corresponding to the combination of the acquired specific function information and vehicle state information.

[0126] Then, each kernel 61 refers to the action tables Tb21 and Tb22 in the storage unit 62 to determine the presence or absence of the execution of functions other than the specific function in its own kernel 61 corresponding to the determined state S of the kernel 61.

[0127] Figure 9 It is a diagram for explaining an example of the decision process performed by the relay device according to the embodiment of the present disclosure. In Figure 9 , in the first kernel 61A and the second kernel 61B, the functions shown by the dotted-line boxes are not executed, and the functions shown by the solid-line boxes are executed.

[0128] In the decision process, when a specific function is being executed in its own kernel 61, each kernel 61 decides not to execute the general function 20 in its own kernel 61.

[0129] In addition, in the decision process, when a specific function is not being executed in its own kernel 61 and a specific function is being executed in another kernel 61, each kernel 61 decides to execute the general function 20 in its own kernel 61.

[0130] Specifically, referring to Figure 9 , since the first core 61A is executing the OTA function 41A itself, it does not execute the general function 20. Since the second core 61B is not executing the OTA function 41B itself and the first core 61A is executing the OTA function 41A, it executes the general function 20. Additionally, regardless of whether the first core 61A and the second core 61B are executing the OTA function 41, they respectively execute the protocol conversion function 31 and the diagnostic function 32.

[0131] In addition, for example, when the OTA function 41 is being executed in both the first core 61A and the second core 61B, the decision-making process is not performed.

[0132] (Execution judgment of decision-making process)

[0133] As described above, each core 61 in the relay device 101 periodically or irregularly acquires specific function information and vehicle state information. Each core 61 determines whether to maintain the execution of the general 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. If not maintained, a decision-making process is carried out.

[0134] More specifically, referring again to Figure 3 and Figure 6 , when each core 61 newly acquires specific function information and vehicle state information, it reads out the specific function information and vehicle state information acquired last time stored in the storage unit 62, and refers to the state table Tb11 in the storage unit 62, thereby determining whether to maintain the execution of the general function 20 in its own core 61.

[0135] The state table Tb11 contains condition information indicating the conditions for determining whether to maintain the execution of the general function 20. The condition information indicates, for example, the state S of the core 61 corresponding to the specific function information and vehicle state information acquired last time.

[0136] In Figure 6 the example shown, when the state S of the core 61 corresponding to the specific function information and vehicle state information acquired this time is "S1" and "S4", the condition information is "none". In this case, each core 61 performs the decision-making process regardless of the state S of the core 61 corresponding to the specific function information and vehicle state information acquired last time.

[0137] On the other hand, when the state S of the kernel 61 corresponding to the specific function information and vehicle state information obtained this time is "S2", the condition information is "S1". In this case, each kernel 61 performs a decision process when the state S of the kernel 61 corresponding to the specific function information and vehicle state information obtained last time is "S1". In addition, when the state S of the kernel 61 corresponding to the specific function information and vehicle state information obtained this time is "S2", the condition information is "S1 or S4". In this case, each kernel 61 performs a decision process when the state S of the kernel 61 corresponding to the specific function information and vehicle state information obtained last time is "S1" or "S4".

[0138] [Action flow]

[0139] Figure 10 It is a flowchart for determining the action sequence of the decision process performed by the kernel of the relay device according to the embodiment of the present disclosure.

[0140] Refer to Figure 10 , first, the kernel 61 obtains specific function information. For example, as described above, the kernel 61 obtains an execution flag indicating the execution state of the OTA function 41 in its own kernel 61 and an execution flag indicating the execution state of the OTA function 41 in other kernels 61 as specific function information. The kernel 61 stores the obtained specific function information in the storage unit 62 (step S101).

[0141] Next, the kernel 61 obtains vehicle state information. For example, as described above, the kernel 61 obtains vehicle driving information and power supply information as vehicle state information. The kernel 61 stores the obtained vehicle state information in the storage unit 62 (step S102). Steps S101 and S102 can be executed in reverse order or in parallel.

[0142] Next, the kernel 61 confirms whether the OTA function 41 is being executed in its own kernel 61 (step S103).

[0143] Next, when the OTA function 41 is not being executed in its own kernel 61 (No in step S103), each kernel 61 confirms whether the OTA function 41 is being executed in other kernels 61 (step S104).

[0144] When the OTA function 41 is being executed in another kernel 61 (Yes in step S104), or when the OTA function 41 is being executed in its own kernel 61 (Yes in step S103), the kernel 61 determines whether to maintain the execution of the general function 20 based on the specific function information and vehicle state information obtained this time, and the specific function information and vehicle state information obtained last time. For example, as described above, the kernel 61 determines whether to maintain the execution of the general function 20 by referring to the specific function information and vehicle state information obtained this time stored in the storage unit 62, the specific function information and vehicle state information obtained last time, and the condition information included in the state table Tb11 in the storage unit 62 (step S105).

[0145] Next, when maintaining the execution of the general function 20 (Yes in step S105), the kernel 61 does not perform the decision process (step S106).

[0146] On the other hand, when not maintaining the execution of the general function 20 (No in step S105), the kernel 61 performs the decision process. For example, as described above, the kernel 61 refers to the state table Tb11 and the action tables Tb21, Tb22 in the storage unit 62, determines the state S of the kernel 61 corresponding to the combination of the obtained specific function information and vehicle state information, and determines the execution of the general function 20 corresponding to the determined state S of the kernel 61 (step S106).

[0147] Figure 11 It is a diagram showing an example of the timing of the decision process in the relay device according to the embodiment of the present disclosure. Figure 11 An example of the decision process performed in a state where the first kernel 61A executes the general function 20 and the second kernel 61B does not execute the general function 20 is shown.

[0148] Refer to Figure 11 , first, in a state where the first kernel 61A is executing the general function 20 itself (step S201) and the second kernel 61B has stopped the execution of the general function 20 (step S202), the first kernel 61A outputs an information request notification for requesting information of an execution flag indicating the execution state of the OTA function 41B in the second kernel 61B to the second kernel 61B (step S203).

[0149] Next, when the second kernel 61B receives the information request notification, it outputs the execution flag indicating the execution state of the OTA function 41B in itself stored in the storage unit 62 to the first kernel 61A (step S204).

[0150] Next, the first core 61A acquires specific function information indicating the execution status of the OTA function 41A in itself and the execution status 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 status of the OTA function 41A in itself and an execution flag indicating the execution status of the OTA function 41B in the second core 61B. The first core 61A stores the acquired specific function information in the storage unit 62 (step S205).

[0151] Next, the first core 61A acquires vehicle status information. For example, as described above, the first core 61A acquires vehicle driving information and power supply information as vehicle status information. The first core 61A stores the acquired vehicle status information in the storage unit 62 (step S206).

[0152] Next, the second core 61B outputs an information request notification for requesting an execution flag indicating the execution status of the OTA function 41A in the first core 61A to the first core 61A (step S207).

[0153] Next, when the first core 61A receives the information request notification, it refers to the execution flag stored in the storage unit 62, confirms the execution flag indicating the execution status of the OTA function 41A in itself, and outputs the execution flag to the second core 61B (step S208).

[0154] Next, the second core 61B acquires specific function information indicating the execution status of the OTA function 41B in itself and the execution status 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 status of the OTA function 41B in itself and an execution flag indicating the execution status of the OTA function 41A in the first core 61A. The second core 61B stores the acquired specific function information in the storage unit 62 (step S209).

[0155] Next, the second core 61B acquires vehicle status information. For example, as described above, the second core 61B acquires vehicle driving information and power supply information as vehicle status information. The second core 61B stores the acquired vehicle status information in the storage unit 62 (step S210). In addition, the processes of steps S203 to S206 and the processes of steps S207 to S210 may be executed in a swapped order or in parallel.

[0156] Next, the first core 61A and the second core 61B respectively confirm that the OTA function 41A is being executed in the first core 61A and the OTA function 41B is not being executed in the second core 61B by referring to the specific function information stored in the storage unit 62 (steps S211 to S214).

[0157] Next, the first core 61A and the second core 61B respectively determine to perform determination processing (Steps S215 and S216) by referring to the specific function information and vehicle state information obtained this time stored in the storage unit 62, the specific function information and vehicle state information obtained last time, and the condition information included in the state table Tb11 in the storage unit 62.

[0158] Next, the first core 61A performs determination processing to determine whether to execute the general function 20 based on the specific function information and vehicle state information obtained this time. Here, since the first core 61A itself is executing the OTA function 41A, it determines not to execute the general function 20 (Step S217).

[0159] In addition, the second core 61B performs determination processing to determine whether to execute the general function 20 based on the specific function information and vehicle state information obtained this time. Here, since the second core 61B itself does not execute the OTA function 41B and the first core 61A is executing the OTA function 41A, it determines to execute the general function 20 (Step S218).

[0160] Furthermore, in the relay device 101 according to the embodiment of the present disclosure, it is configured to include two cores 61, but is not limited thereto. The relay device 101 may also be configured to include three or more cores 61. In the relay device 101 having three or more cores 61, each core 61 may also determine to execute the general function 20 in its own core 61 when further satisfying a specified condition in the presence of another core 61 that does not execute a specific function.

[0161] Specifically, the storage unit 62 stores priority information that is preset and indicates the priority order of the cores 61 that perform determination processing. Each core 61 performs determination processing based on the priority information, the state table Tb11, and the action table stored in the storage unit 62 when it has obtained the specific function information and vehicle state information.

[0162] In addition, in the vehicle-mounted system 301 according to the embodiment of the present disclosure, it is assumed that the processing unit 53 in one relay device 101 has a structure including multiple cores 61, but is not limited thereto. For example, in the vehicle-mounted system 301 having multiple relay devices 101, it may also be that multiple cores 61 are respectively provided in different relay devices 101, and the cores 61 in each relay device 101 perform determination processing. In this case, the storage unit 62 may be provided in each relay device 101, may be provided in a part of the multiple relay devices 101, or may be provided in a vehicle-mounted device other than the relay device 101.

[0163] In addition, in the relay device 101 according to the embodiment of the present disclosure, the storage unit 62 is configured to store the operation tables Tb21 and Tb22 for each core 61, but it is not limited thereto. For example, the storage unit 62 may also store one operation table including the contents of the two operation tables Tb21 and Tb22.

[0164] In addition, in the relay device 101 according to the embodiment of the present disclosure, the storage unit 62 stores the operation tables Tb21 and Tb22 including the correspondence information indicating the correspondence among the specific function information, the vehicle state information, and the general function information. In addition, each core 61 is configured to perform a determination process using the operation tables Tb21 and Tb22, but it is not limited thereto. The storage unit 62 may also be configured to store the correspondence information indicating the correspondence between the specific function information and the general function information without indicating the vehicle state information. In this case, each core 61 performs a determination process based on the correspondence information in the storage unit 62 according to the general function information corresponding to the acquired specific function information.

[0165] In addition, in the relay device 101 according to the embodiment of the present disclosure, each core 61 is configured to determine whether to maintain the execution of the general function 20 based on the specific function information and the vehicle state information acquired this time and the specific function information and the vehicle state information acquired last time, but it is not limited thereto. Each core 61 may also be configured to perform a determination process regardless of the specific function information and the vehicle state information acquired last time.

[0166] In addition, in the relay device 101 according to the embodiment of the present disclosure, the specific function is assumed to be the OTA function 41, but it is not limited thereto. The specific function may also be other functions other than the OTA function 41.

[0167] In addition, in the vehicle-mounted system 301 according to the embodiment of the present disclosure, the relay device 101 is configured to include a plurality of cores 61 and each core 61 executes the state management function 42, but it is not limited thereto. It may also be a structure in which an in-vehicle device other than the relay device 101 such as an in-vehicle ECU includes a plurality of cores 61, and each core 61 in the other in-vehicle device executes the state management function 42.

[0168] The above embodiments are illustrative in all respects and should not be considered restrictive. The scope of the present invention is shown not by the above description but by the claims, and is intended to include all modifications within the meaning and scope equivalent to the claims.

[0169] Each process (each function) of the above-described embodiment is implemented by a processing circuit including one or more processors. In addition to the one or more processors, the processing circuit may be constituted by an integrated circuit combining one or more memories, various analog circuits, and various digital circuits. The one or more memories store programs (commands) for causing the one or more processors to execute the respective processes. The one or more processors may execute the respective processes according to the programs read from the one or more memories, or may execute the respective processes according to a logic circuit designed in advance to execute the respective processes. The processor may be 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). In addition, the physically separated multiple processors may also cooperate with each other to execute the respective processes. For example, the processors mounted on each of the physically separated multiple computers may also cooperate with each other via a network such as a LAN (Local Area Network), a WAN (Wide Area Network), and the Internet to execute the respective processes. The program may be installed in the memory from an external server device or the like via the network, or may be circulated in a state stored in a recording medium such as a CD-ROM (Compact Disc Read Only Memory), a DVD-ROM (Digital Versatile Disk Read Only Memory), and a semiconductor memory, and installed in the memory from the recording medium.

[0170] The above description includes the features described in the following appendices.

[0171] [Appendix 1] A vehicle-mounted system is mounted on a vehicle, wherein, the vehicle-mounted system includes a plurality of vehicle-mounted devices, each of the vehicle-mounted devices includes a core capable of executing a plurality of functions, The kernel obtains specific function information, which represents the execution status of a specific function, i.e., a specific function in a first function group among multiple functions that the kernel itself can execute, and the execution status of the specific function in a second function group among multiple functions that other kernels can execute. The kernel performs decision-making processing based on the obtained specific function information, and the decision-making processing determines whether to execute a general function, which is a function in the first function group that is common to the functions in the second function group and other than the specific function.

[0172] Label Explanation

[0173] 1 Vehicle

[0174] 10 Ethernet Cable

[0175] 11 CAN Bus

[0176] 21 Relay Function

[0177] 22 Monitoring Function

[0178] 23 Arithmetic Function

[0179] 31 Protocol Conversion Function

[0180] 32 Diagnostic Function

[0181] 41, 41A, 41B OTA Function

[0182] 42 Status Management Function

[0183] 51, 51A, 51B, 51C, 51D Communication Port

[0184] 52 Relay Section

[0185] 53 Processing Section

[0186] 61 Kernel

[0187] 61A First Kernel

[0188] 61B Second Kernel

[0189] 62 Storage Section

[0190] 101 Relay Device

[0191] 161 Radio Base Station Device

[0192] 170 External Network

[0193] 180 Server

[0194] 202, 202A, 202B, 202C, 202D Vehicle-mounted Equipment

[0195] 301 Vehicle-mounted system

[0196] 401 Vehicle-mounted network

[0197] 501 Communication system

Claims

1. An in-vehicle device is mounted on a vehicle. Wherein, The in-vehicle device includes a plurality of cores each capable of executing multiple functions. Each core obtains specific function information, which represents the execution status of a specific function, i.e., a specific function in a first function group among the multiple functions that the core itself can execute, and the execution status of the specific function in a second function group among the multiple functions that other cores can execute. Each core performs a decision process based on the obtained specific function information. The decision process determines whether to execute a general function, and the general function is a function in the first function group that is common to the functions in the second function group and other than the specific function.

2. The in-vehicle device according to claim 1, Wherein, In the decision process, each core determines not to execute the general function in its own core when the core itself is executing the specific function. In the decision process, each core determines to execute the general function in its own core when the core itself does not execute the specific function and other cores are executing the specific function.

3. The in-vehicle device according to claim 1 or 2, Wherein, The in-vehicle device further includes a storage unit that stores corresponding information indicating the correspondence between the specific function information and the general function information. The general function information is information indicating the presence or absence of the execution of the general function in each core. Each core performs the decision process based on the corresponding information in the storage unit according to the general function information corresponding to the obtained specific function information.

4. The in-vehicle device according to claim 3, Wherein, Each core further obtains vehicle state information indicating the state of the vehicle. The storage unit stores the corresponding information indicating the correspondence between the specific function information, the vehicle state information, and the general function information. Each core performs the decision process based on the corresponding information in the storage unit according to the general function information corresponding to the obtained specific function information and the vehicle state information.

5. The in-vehicle device according to any one of claims 1 to 4, Wherein, Each core periodically or aperiodically obtains the specific function information and the vehicle state information indicating the state of the vehicle, and determines whether to maintain the presence or absence of the execution of the general function based on the specific function information and the vehicle state information obtained this time and the specific function information and the vehicle state information obtained last time. If not maintained, the decision process is performed.

6. The in-vehicle device according to any one of claims 1 to 5, Wherein, The specific function is an OTA (Over The Air) function.

7. A function control method is a function control method in an in-vehicle device mounted on a vehicle. Wherein, The in-vehicle device includes a plurality of cores each capable of executing multiple functions. The function control method includes the following steps: The steps for each of the cores to obtain specific function information, where the specific function information represents the execution status of a specific function, which is a specific function among the multiple functions that the core itself can execute, i.e., in the first function group, and the execution status of the specific function among the multiple functions that the other cores can execute, i.e., in the second function group; and The steps for each of the cores to perform decision-making processing based on the obtained specific function information, where the decision-making processing determines whether to execute a general function, and the general function is a function in the first function group that is common to the functions in the second function group and is other than the specific function.

8. A function control program, which is a function control program used in an in-vehicle device mounted on a vehicle, wherein the in-vehicle device includes multiple cores each capable of executing multiple functions, the function control program is used to cause each of the cores to execute the following steps: The step of obtaining specific function information, where the specific function information represents the execution status of a specific function, which is a specific function among the multiple functions that the core itself can execute, i.e., in the first function group, and the execution status of the specific function among the multiple functions that the other cores can execute, i.e., in the second function group; and The step of performing decision-making processing based on the obtained specific function information, where the decision-making processing determines whether to execute a general function, and the general function is a function in the first function group that is common to the functions in the second function group and is other than the specific function.

Citation Information

Patent Citations

  • Vehicle control apparatus

    JP2018067135A

  • UV irradiation device

    JP2022177882A