Vehicle control device and vehicle control method
The vehicle control device optimizes CPU usage by determining function necessity and adjusting processing for unnecessary functions, ensuring efficient operation and power savings.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-09-10
- Publication Date
- 2026-03-19
AI Technical Summary
Existing vehicle control devices reduce CPU frequency to save power, leading to potential failure in processing functions with high processing loads due to reduced calculation capacity.
A vehicle control device determines whether functions are necessary or unnecessary based on navigation and vehicle information, skipping or extending the call process for unnecessary functions to maintain periodic processing and reduce computational load.
Enables processing of necessary functions while reducing computational load, ensuring efficient operation and power savings by optimizing CPU usage.
Smart Images

Figure JP2024032387_19032026_PF_FP_ABST
Abstract
Description
Vehicle control device and vehicle control method
[0001] The present invention relates to a vehicle control device and a vehicle control method.
[0002] There is known a vehicle control device capable of achieving both the safety and power saving of an automatic driving system (for example, Patent Document 1). The vehicle control device described in Patent Document 1 determines that it shifts to a power-saving mode when all of a plurality of preset power-saving conditions are satisfied, and in the power-saving mode, it reduces the CPU frequency.
[0003] International Publication No. 2021 / 166411
[0004] By reducing the CPU frequency as in the vehicle control device described in Patent Document 1, the amount of calculation of the CPU becomes low. However, since the reduction of the CPU frequency affects all functions executed by the CPU, there is a possibility that some functions with a large processing load cannot be processed by periodic processing.
[0005] The problem to be solved by the present invention is to provide a vehicle control device and a vehicle control method that enable the processing of functions by periodic processing and can reduce the amount of calculation.
[0006] The present invention determines whether a function is an unnecessary function or a necessary function based on navigation information and / or vehicle information, and performs an unnecessary function process that is at least one of a process of skipping a call and a process of extending a call period for a function determined to be an unnecessary function. When the determination result for the function changes from an unnecessary function to a necessary function, the above problem is solved by canceling the unnecessary function process applied to the function determined to be an unnecessary function.
[0007] According to the present invention, it is possible to process functions by periodic processing and reduce the amount of calculation.
[0008] Figure 1 is a block diagram showing an example of a vehicle control system equipped with a vehicle control device according to an embodiment of the present invention. Figure 2 is a diagram illustrating an example of the determination result of the functional necessity of each function according to the transition of the driving state in this embodiment. Figure 3 is a flowchart showing an example of the functional necessity determination procedure according to this embodiment. Figure 4 is a flowchart showing an example of the control procedure of a task module according to this embodiment.
[0009] Hereinafter, embodiments of the vehicle control device and vehicle control method according to the present invention will be described with reference to the drawings.
[0010] Figure 1 is a block diagram showing an example of a vehicle control system equipped with a vehicle control device according to an embodiment of the present invention. The vehicle control system 1000 is a system that realizes various in-vehicle functions such as driver assistance functions, vehicle driving functions, and IVI-related functions such as information and entertainment.
[0011] As shown in Figure 1, the vehicle control system 1000 includes an ECU 10, another ECU 11, and another ECU 12. Each ECU is mounted on the vehicle 1 and is connected by an in-vehicle network such as a CAN (Controller Area Network) or a LIN (Local Interconnect Network). Each ECU controls the in-vehicle equipment of the vehicle and performs the functions provided by the in-vehicle equipment. ECU 10 is an example of the "vehicle control device" described in the claims. In Figure 1, for simplification, two ECUs (other ECUs 11 and 12) are shown as examples of other ECUs, but the other ECUs are not limited to these; there may be one ECU or three or more ECUs.
[0012] The ECU 10 is a microcontroller composed of, for example, a CPU (Central Processing Unit) 10a, a ROM (Read Only Memory) 10b, a RAM (Random Access Memory) 10c, and a flash memory 10d. In addition to the microcontroller, each ECU also has a power supply circuit, a data transfer circuit, etc. The flash memory 10d stores programs for realizing the software of each function of the ECU. The flash memory 10d is a non-volatile storage medium and is physically composed of a single storage medium. The CPU 10a is a processor that operates the functions provided by the in-vehicle equipment. That is, the software for each function of the ECU 10 is realized by the CPU 10a executing the programs stored in the flash memory 10d and performing various processes. The software for each function can be updated via OTA (Over The Air). In software updates, the ECU 10 wirelessly acquires update data from outside the vehicle 1, performs an installation process to write the update data to the flash memory, and then performs an activation process to read the update data, thereby updating the software. The ECU 10 can perform software updates for each function it performs.
[0013] In this embodiment, the ECU 10 is described as a driver assistance system ECU that performs driver assistance functions to assist in driving the vehicle 1. The ECU 10 includes software for performing driver assistance functions. The driver assistance functions performed by the ECU 10 are examples of functions provided by in-vehicle equipment and include, for example, emergency braking (FEB), rear emergency braking (EAP), lane departure prevention (LDP), rear side collision prevention (BSI), autonomous driving (AD), parking assistance (APA), preceding vehicle departure notification (LCDN), and exit safety assistance (OSE). In this embodiment, each function is independent for each application. That is, each application includes a program for performing its respective function. In Figure 1, for the sake of simplicity, the ECU 10 is shown as having three function execution units (for example, a first function execution unit 101, a second function execution unit 102, and a third function execution unit 103) as functional units for performing driver assistance functions. Each function execution unit performs functions such as FEB and EAP. Furthermore, the number of function execution units for driver assistance is not limited to three; it may be two or fewer, or four or more.
[0014] In this embodiment, the ECU 10 is not limited to a driver assistance system ECU, but may also be a multimedia system ECU, a power supply system ECU, etc. A multimedia system ECU is a general term for an ECU that controls the multimedia system of the vehicle 1. Examples of multimedia system ECUs include a navigation control ECU that controls the navigation system of the vehicle 1, and an audio control ECU that controls the audio equipment of the vehicle 1. A power supply system ECU is a general term for an ECU that controls the power supply system of the vehicle 1. Examples of power supply system ECUs include a power supply control ECU that controls the ACC (accessory) power supply and IG (ignition) power supply installed in the vehicle 1.
[0015] The various functions included in the driver assistance function execute control steps according to the function logic determined by the software. For example, in the case of emergency braking (FEB), a camera image is acquired from a camera that captures the area in front of the vehicle, it is determined from the camera image whether or not brake operation is necessary, and if it is determined that brake operation is necessary, an operation command to operate the brakes is output. In other words, the emergency braking (FEB) operation is performed by executing the steps of acquiring a camera image, determining whether or not brake operation is necessary, and outputting an operation command. The ECU 10 has a call cycle (execution cycle) set in advance for calling (invoking) functions. The call cycle defines the timing for issuing a trigger for various functions, and is set, for example, to 10 ms or 100 ms. The ECU 10 calls various functions at each call cycle. The called function executes control steps according to the function logic. For example, when emergency braking is called in a driving scene that requires emergency braking, the three steps described above are executed. The process of calling various functions in accordance with such a call cycle is the periodic processing in this embodiment.
[0016] Periodic processing is performed regardless of the vehicle's driving conditions. For example, let's assume that vehicle 1 is driving in a way that does not require emergency braking, with no obstacles such as other vehicles approaching ahead. In such a driving scenario, if the ECU 10 calls the emergency braking (FEB) function according to the call cycle, the emergency braking (FEB) function will be activated. However, since the driving scenario does not require emergency braking, the ECU will not continue the processing necessary for the operation of the emergency braking (FEB). In other words, the called function is activated and some calculation processing is performed.
[0017] The ECU 10 includes functions for determining whether a function does not require processing based on navigation information and / or vehicle information, and functions for controlling function calls. Specifically, as shown in Figure 1, the ECU 10 includes a determination unit 100 and a task scheduler 110. The determination unit 100 and the function execution units such as the first function execution unit 101, the second function execution unit 102, and the third function execution unit 103 are function units included in the OEM domain, while the task scheduler 110 is a function unit included in the supplier domain.
[0018] The determination unit 100 determines, for each driving assistance function, whether the various functions included in the driving assistance function are unnecessary functions that do not require processing, or necessary functions that do require processing. Unnecessary functions are functions that are not processed based on the vehicle's driving scene or the vehicle's state. Necessary functions are functions that are processed based on the vehicle's driving scene or the vehicle's state. In other words, unnecessary functions are functions that have little need for processing based on the vehicle's driving scene or the vehicle's state, while necessary functions are functions that have a high need for processing based on the vehicle's driving scene or the vehicle's state.
[0019] Here, we will explain an example of the procedure for determining unnecessary and necessary functions. First, when the ignition of vehicle 1 is turned on and the ECU 10 is activated, the determination unit 100 acquires navigation information and / or vehicle information of vehicle 1 at regular intervals. Navigation information and / or vehicle information is information acquired from other ECUs 11 and 12.
[0020] Navigation information is information necessary for vehicle 1 to travel a route from the starting point to the destination, and includes vehicle 1's location information, map information, traffic congestion information, and travel time. Map information includes, for example, the type of road (general road, expressway, etc.) of the roads included in the travel route. Travel time includes the travel time to the destination, and if the travel route includes an expressway, the travel time to the expressway entrance. Traffic congestion information includes the presence and location of traffic congestion along the travel route. Vehicle information is information about the vehicle status of vehicle 1, and includes, for example, the vehicle speed of vehicle 1, accelerator opening, brake pressure, gear lock status, and information about the operation status of driver assistance functions. Gear status is the shift position setting, and includes, for example, parking range, drive range, and reverse range. Lock status includes the on / off status of the door locks.
[0021] Next, the determination unit 100 determines whether the state of the navigation system or vehicle 1 has changed based on the navigation information and / or vehicle information. For example, at regular intervals, the determination unit 100 refers to a stored table based on the navigation information and / or vehicle information to determine the current state of the navigation system or vehicle 1, and determines that the state of the navigation system or vehicle 1 has changed if the current state of the navigation system or vehicle 1 is different from the previous determination result. The stored table stores, for example, predetermined states of the navigation system or vehicle 1 and their determination conditions, associated with each state of the navigation system or vehicle 1. The determination conditions are conditions determined based on the navigation information and vehicle information. The determination unit 100 determines whether the determination conditions are met based on the navigation information and / or vehicle information, and if the determination conditions are met, it determines that the current state of the navigation system or vehicle is the state of the navigation system or vehicle corresponding to the determination conditions. If the current state of the navigation system or vehicle 1 is the same as the previous determination result, the determination unit 100 determines that the state of the navigation system or vehicle 1 has not changed.
[0022] The determination unit 100 then determines whether each function is unnecessary or necessary when it determines that the state of the navigation system or the vehicle has changed. In the following description, the determination of whether each function is unnecessary or necessary will also be referred to as "determining the necessity of the function" or "determining the functionality." Specifically, the determination unit 100 determines the necessity of the function based on the navigation information and / or vehicle information. At this time, the necessity of the function may be determined for all functions, or for some functions. In this embodiment, the determination of the necessity of the function is performed when it is determined that the state of the navigation system or the vehicle has changed, but it is not limited to this, and the determination of the necessity of the function may be performed at regular intervals.
[0023] For example, in the case of a function used on a highway, such as autonomous driving (AD), the determination unit 100 obtains the driving route from the navigation information, and if the driving route includes a highway, it determines that the function related to autonomous driving (AD) is a necessary function based on the time from the vehicle 1's current position to the highway entrance. Conversely, if the driving route does not include a highway, the determination unit 100 determines that the function related to autonomous driving (AD) is an unnecessary function.
[0024] Furthermore, in the case of a function used at the departure or arrival point, such as parking assistance (APA), the determination unit 100 determines, based on navigation information, that if the current location of vehicle 1 is the departure point, destination, or intermediate point, the function related to parking assistance (APA) is a required function.
[0025] Furthermore, in the case of a function used when the vehicle is stopped, such as a preceding vehicle departure notification (LCDN), the determination unit 100 determines, based on navigation information, that if vehicle 1 is traveling on an expressway, and vehicle 1 is traveling from its current location to an expressway exit or a congested area, then the function related to the preceding vehicle departure notification (LCDN) is a necessary function. Also, if vehicle 1 is currently on a public road and vehicle 1 is in motion, the determination unit 100 determines, based on navigation information, that the function related to the preceding vehicle departure notification (LCDN) is an unnecessary function. Also, if vehicle 1 is currently on a public road and vehicle 1 is stopped, such as at a traffic light, the determination unit 100 determines, based on navigation information, that the function related to the preceding vehicle departure notification (LCDN) is a necessary function.
[0026] Furthermore, in the case of functions used while driving, such as ITS-related safety functions, the determination unit 100 determines that the ITS-related safety functions are unnecessary if the vehicle 1 is stopped at a traffic light.
[0027] The determination unit 100 manages the determination results of the function necessity for each function. Specifically, the determination unit 100 stores the determination result of the function necessity that was first determined after the ECU 10 started up. Then, each time the determination unit 100 performs a function necessity determination, it updates the stored determination result with the newly determined determination result.
[0028] Here, an example of a method for managing the results of function necessity determination will be explained using Figure 2. Figure 2 is a diagram illustrating an example of the results of function necessity determination for each function according to the transition of the driving state in this embodiment. In Figure 2, the navigation information, vehicle information, and the results of function necessity determination for each function are updated each time the state of the navigation or vehicle 1 changes. Figure 2 shows an example of a method for managing the results of function necessity determination from the time vehicle 1 leaves home until it arrives at the destination. In Figure 2, "0" and "1" are function necessity determination flags, "1" indicates that it is a necessary function, and "0" indicates that it is an unnecessary function.
[0029] For example, in Figure 2, the navigation system or vehicle status transitions from a state where vehicle 1 is at home, through states of driving on a public road, waiting at a traffic light on a public road, on a highway, and on a public road (traffic jam), to a state where vehicle 1 is at its destination. For example, the determination unit 100 determines that the navigation system or vehicle status is "on a public road (driving)" because it satisfies the determination condition that vehicle 1 is located on a public road based on the navigation information, and satisfies the determination condition that vehicle 1 is driving based on the vehicle information. Also, even if vehicle 1 is located on a public road, if the determination unit 100 satisfies the determination condition that vehicle 1 is at a traffic light based on the navigation information, it determines that the navigation system or vehicle status is "on a public road (waiting at a traffic light)".
[0030] The determination unit 100 determines the necessity of a function each time the state of the navigation system or vehicle 1 changes. In the example shown in Figure 2, for example, when vehicle 1 is at home, the determination unit 100 determines that the functions of FEB, LDP, BSI, AD, and LCDN are unnecessary, and that the functions of EAP, APA, and OSE are necessary, and stores the determination result. Then, when vehicle 1 starts moving and is driving on a public road, the determination unit 100 determines the necessity of the function again and updates the stored determination result. Specifically, the determination unit 100 determines that the functions of FEB, EAP, LDP, and BSI are necessary, and that the functions of AD, LCDN, OSE, and APA are unnecessary, and updates the determination result.
[0031] As an example, let's explain the update of the APA (Accessibility Assistance Program) determination result. When Vehicle 1 is at home, the APA function is determined to be unnecessary. However, when Vehicle 1 starts driving on a public road, the determination result is updated to a necessary function. This is because the next time the APA function will be needed is when Vehicle 1 arrives at its destination, and it is assumed that the function will not operate until then.
[0032] The determination unit 100 may determine the necessity of a function based on diagnostic information of the in-vehicle equipment. Diagnostic information is an example of vehicle information, and for example, it indicates whether or not a sensor is operating normally. For example, if the determination unit 100 identifies that some sensors are malfunctioning based on the diagnostic information of the in-vehicle equipment, it may determine that a function that starts operation using the malfunctioning sensor is an unnecessary function. Furthermore, when determining the necessity of a function that is activated by driver operation, such as an automated driving (AD) function, the determination unit 100 may determine the necessity of the function not only based on operation commands for touch panels or switches, but also based on information such as the driver's movements or the driver's voice. For example, the determination unit 100 may detect the driver's hand movements from a camera image, predict the operation of a touch panel or switch from the hand movements, and determine the necessity of the function based on the prediction result. Alternatively, the determination unit 100 may identify a message for operating an automated driving (AD) function, etc., from the driver's voice information and then determine the necessity of the function. For example, if the automatic driving (AD) function is off and the driver's hand approaches the switch to toggle the AD function on and off, or if the driver can identify the voice prompt to toggle the AD function on and off, the determination unit 100 will determine that the AD function is a necessary function. Furthermore, if there are multiple mutually exclusive functions, the determination unit 100 may determine that if one function is a necessary function, the other function is an unnecessary function. For example, with respect to parking assist (APA) and driving assistance functions for highways (e.g., automatic driving (AD)), if one function is operating, the other function becomes a function that does not need to be processed. Therefore, the determination unit 100 may determine the necessity of a function based on the mutually exclusive relationship between the functions.
[0033] The determination unit 100 sends a notification of call necessity information indicating the determination result of the function necessity to the task scheduler 110. The task scheduler 110 manages the necessity of calls for each function by storing the call necessity information in memory. Based on the call necessity information, the task scheduler 110 switches between a process to call a function and a process to skip a call to a function. In this embodiment, the "process to skip a call" corresponds to the "processing of unnecessary functions" in the present invention. The task module 100 identifies whether the function necessity determination result of the target function is necessary or unnecessary, among the various functions included in the driving assistance function, based on the call necessity information. The target function is one of the various functions included in the driving assistance function that is subject to determination as to whether to execute a call or skip a call. The task scheduler 110 checks the determination flag included in the call necessity information, and identifies the target function as necessary if the determination flag of the target function is "1", and identifies the target function as unnecessary if the determination flag of the target function is "0".
[0034] The task scheduler 110 then calls the target function if it is a necessary function, and skips the call to the target function if it is an unnecessary function. Since the call is skipped, the target function is not called, and therefore does not execute the control step. In other words, if the target function is determined to be an unnecessary function depending on the vehicle's driving scene, the call to the target function is skipped, thereby reducing the computational load of the target function. By reducing the computational load of functions that are determined to be unnecessary, the time required for periodic processing can be reduced. Reducing the processing time of periodic processing can suppress the power consumption of the ECU 10, or the time saved on periodic processing can be allocated to other software processing, such as software updates via OTA.
[0035] Furthermore, if the determination unit 100 determines that a target function is unnecessary, the task scheduler 110 cancels the "skip call" process applied to the unnecessary function. Functions for which the "skip call" process has been canceled are called according to the call cycle. In the example in Figure 2, when vehicle 1 is at home, the FEB, LDP, and BSI functions are determined to be unnecessary. The task scheduler 110 skips calls to the FEB, LDP, and BSI functions. When vehicle 1 starts driving and is on a public road, the determination result of the FEB, LDP, and BSI functions changes from unnecessary to necessary. The task scheduler 110 receives notification of call necessity information from the determination unit 100, identifies that the determination result of the FEB, LDP, and BSI functions has changed from unnecessary to necessary, and cancels the "skip call" process applied to the FEB, LDP, and BSI functions.
[0036] In this embodiment, when the determination unit 100 determines the necessity of a function based on multiple pieces of information, it may determine the necessity of a function based on vehicle information, which has a faster response time. In the example in Figure 2, when vehicle 1 changes from being at home to driving on a public road, the determination unit 100 can determine that the navigation state has changed from the vehicle's current location information measured by the navigation system. The determination unit 100 can also determine that the vehicle state has changed from the vehicle speed information. Vehicle speed information has a faster response time than navigation information. Therefore, the determination unit 100 determines the necessity of a function based on the vehicle speed information. As a result, if the determination result of the necessity of a function changes from an unnecessary function to a necessary function, the "skip call process" can be canceled in a shorter time. Note that the fast-responding vehicle information is not limited to vehicle speed information; for example, it may also include the pulse count value of WheelTop, brake operation, and detection information of the function of the preceding vehicle departure notification (LCDN).
[0037] Next, the procedure for determining the necessity of a function in the determination unit 100 according to this embodiment will be explained based on the flowchart in Figure 3. Figure 3 is a flowchart showing an example of the procedure for determining the necessity of a function according to this embodiment. When the ignition of the vehicle 1 is turned on, the determination unit 100 of the ECU 10 starts the control flow from step S1 shown in Figure 3 at regular intervals.
[0038] In step S1, the determination unit 100 acquires navigation information and vehicle information. For example, ECU 10 acquires navigation information and vehicle information from other ECUs 11 and 12. In step S2, the determination unit 100 determines whether the state of the navigation or vehicle has changed based on the navigation information and vehicle information. For example, the determination unit 100 determines the current state of the navigation or vehicle, and determines that the state of the navigation or vehicle has changed if the current state of the navigation or vehicle is different from the state determined in the previous control flow.
[0039] If the determination unit 100 determines that the navigation system or the vehicle's status has changed, the control flow of the determination unit 100 proceeds to step S3. If the determination unit 100 determines that the navigation system or the vehicle's status has not changed, the determination unit 100 terminates the control flow.
[0040] In step S3, the determination unit 100 identifies the vehicle's driving scene and / or vehicle state based on navigation information and / or vehicle information. The ECU 10 stores a call map in memory or the like that shows the correlation between various functions included in the driver assistance function and the determination flag for the need for that function. A table is provided for each vehicle's driving scene and / or vehicle state. The call map corresponds to the map shown as "determination flag" in Figure 2. Note that the call map is not limited to the map shown in Figure 2, but may be a map like the following for example. In a map of a driving scene such as "Location: General road, Traffic congestion: None", the determination flags for autonomous driving (AD) and parking assistance (APA) will be "0". In a map of a driving scene such as "Location: Expressway, Traffic congestion: None", the determination flag for autonomous driving (AD) will be "1", and the determination flag for parking assistance (APA) will be "0". Furthermore, in maps of driving scenarios such as "Location: Destination, Traffic Congestion: None," the autonomous driving (AD) detection flag will be "0," and the parking assistance (APA) detection flag will be "1."
[0041] The determination unit 100 identifies the vehicle's driving scene from the navigation information and selects a call map corresponding to the identified driving scene. For example, if the driving scene "Location: General road, Traffic congestion: None" is identified from the navigation information, the determination unit 100 selects a map with "Automated driving (AD) and parking assistance (APA) determination flag = 0". The ECU 10 also identifies the vehicle status from the vehicle information and selects a call map corresponding to the identified vehicle status.
[0042] In step S4, the determination unit 100 compares the map selected in the current control flow with the map selected in the previous control flow to determine whether the map has been changed. If it is determined that the map has been changed, the control flow of the ECU 10 proceeds to step S5. If it is determined that the map has not been changed, the ECU 10 ends the control flow. In step S5, the ECU 10 transmits a notification of call necessity information indicating a determination flag for each function from the changed call map to the task scheduler 110. Then, the ECU 10 ends the control flow shown in FIG. 3. As described above, the determination unit 100 executes the control flow of steps S1 to S5 to determine whether the function is an unnecessary function that does not require processing or a necessary function that requires processing based on the navigation information and / or vehicle information.
[0043] In addition, when the function to be used is specified by user settings, the ECU 10 may change the determination flag indicated in the call map to a flag corresponding to the user settings and then transmit a notification of call necessity information to the task scheduler 110. For example, when the vehicle is traveling on a highway, the automatic driving (AD) function is determined as a necessary function by the determination unit 100. Therefore, as shown in FIG. 2, the determination flag of AD on the call map is "1". When the user turns off the automatic driving (AD) function by operating a switch for switching the on / off of the automatic driving (AD) function, the ECU 10 may set the determination flag of AD to "0" and then transmit a notification of call necessity information to the task scheduler 110.
[0044] Next, the processing procedure in the task scheduler 110 according to the present embodiment will be described based on the flowchart of FIG. 4. FIG. 4 is a flowchart showing an example of the control procedure of the task scheduler 110 according to the present embodiment.
[0045] In step 11, the task scheduler 110 retrieves current call necessity information from memory, checks the judgment flag included in the call necessity information, and determines whether the target function is a necessary function or an unnecessary function. If the target function is a necessary function, the task scheduler 110 calls the target function at a timing determined by the call cycle. On the other hand, if the target function is an unnecessary function, the task scheduler 110 skips the call to the target function by not executing the control flow of step S12 when the timing determined by the call cycle arrives. The task scheduler 110 repeatedly executes the control flows of steps S11 and S12 according to the call cycle. As a result, the task scheduler 110 executes the process of skipping calls for functions that have been determined to be unnecessary. The task scheduler 110 also executes the control flows of steps S11 and S12 for each function. In other words, the task scheduler 110 applies the process of skipping calls to functions that have been determined to be unnecessary among multiple functions. Furthermore, the task scheduler 110 calls the functions it determines to be necessary from among multiple functions according to the call cycle, without applying any process to skip calls.
[0046] During the execution of the periodic processing, in step S13, the task scheduler 110 determines whether or not there is a notification of call necessity information from the determination unit 100. If there is no notification of call necessity information, the task scheduler 110 terminates the control flow shown in Figure 4 and repeats the control flow from step S11 in accordance with the next call cycle. If there is a notification of call necessity information, the task scheduler 110 updates the call necessity information stored in memory with the newly notified call necessity information. If the call necessity information is updated and the determination result of the target function changes from an unnecessary function to a necessary function, the control flow of step S12 is executed in the next control flow, and the "call skipping process" applied to the target function is canceled.
[0047] In this embodiment, the task scheduler 110 may execute a process of extending the call period for a function determined to be an unnecessary function. Note that the "process of extending the call period" in this embodiment corresponds to the "unnecessary function process" of the present invention. For example, the task scheduler 110 has a plurality of call periods of different lengths. Then, the task scheduler 110 executes a call with a long call period for a function determined to be an unnecessary function, and executes a call with a short call period for a function determined to be a necessary function.
[0048] As described above, after applying the "process of skipping a call" to the target function determined to be an unnecessary function, if the target function is determined to be a necessary function, the "process of skipping a call" is canceled, and the "process of calling at the normal call period" is applied. Thus, the processing time of the return process for returning to the normal call process by canceling the "process of skipping a call" becomes longer when the "process of skipping a call" is applied. On the other hand, the return process of returning the lengthened call period to the original call period can shorten the processing time compared to the case where the "process of skipping a call" is applied. Also, by lengthening the call period for functions that do not require processing, the amount of computation can be reduced.
[0049] Also in this embodiment, the task scheduler 110 may select the "process of extending the call period" and the "process of lengthening the call period" according to the nature of each function. For example, for safety functions such as FEB and EAP, in order to speed up the return process, when the task scheduler 110 determines that it is an unnecessary function, it applies the "process of extending the call period" to the target function. Also, the task scheduler 110 applies the "process of extending the call period" to functions that are not safety functions.
[0050] As described above, in the vehicle control device and vehicle control method according to this embodiment, the ECU 10 determines whether a function is an unnecessary function or a necessary function based on navigation information and / or vehicle information, and for functions determined to be unnecessary, it executes unnecessary function processing, which is at least one of the following processes: "processing to skip a call" and "processing to extend the call cycle". If the determination result for a function changes from an unnecessary function to a necessary function, the unnecessary function processing applied to the function determined to be unnecessary is released. This enables the processing of functions by periodic processing and reduces the amount of computation.
[0051] Incidentally, conventionally, when the CPU's processing capacity exceeds the hardware specifications, a technique called "clock down" is known to reduce power consumption by lowering the clock frequency. When such clock down technology is applied to an in-vehicle ECU, lowering the clock frequency affects all functions processed by the CPU. Furthermore, if the processing load increases sharply depending on the vehicle's driving conditions, the periodic processing with a lower clock frequency will overflow, potentially affecting the operation of various functions in the vehicle.
[0052] Furthermore, while the processing of in-vehicle ECUs primarily relies on periodic processing, the processing load has increased due to the recent enhancements in the functionality of in-vehicle ECUs. On the other hand, processes such as software updates via OTA (Over-the-Air) are sometimes executed in the background of periodic processing. Therefore, if the processing of functions with high processing loads is implemented using periodic processing, there will be no capacity left for other processes to run in the background.
[0053] In this embodiment, by performing unnecessary function processing on functions determined to be unnecessary, the amount of computation can be reduced, thereby reducing the time required for periodic processing. As a result, a computational load margin can be secured that allows other processes to be executed in the background.
[0054] In this embodiment, the ECU 10 includes an OEM area having a determination unit 100 and a supplier area having a task scheduler 110. This enables the processing of functions through periodic processing and reduces the amount of computation.
[0055] Furthermore, in this embodiment, functions determined to be unnecessary among the multiple functions are subjected to unnecessary function processing, while functions determined to be necessary are called according to the call cycle without being subjected to unnecessary function processing. This allows for periodic processing to be performed on functions that require processing, and processing to reduce computational load to be performed on functions that do not require processing.
[0056] As a modification of this embodiment, the ECU 10 may classify core allocations according to the vehicle's driving scene and pause cores that are determined to be unnecessary functions. A core corresponds to a CPU, and the ECU 10 has multiple cores. The ECU 10 selects from the multiple cores to be executed and paused cores to be paused, depending on the vehicle's driving scene. For example, a high-speed driving core used when the vehicle is driving on a highway and a general road driving core (hereinafter also referred to as a general driving core) used when the vehicle is driving on a general road are pre-configured. Furthermore, if the amount of computation for functions processed while driving on a highway is greater than the amount of computation for functions processed while driving on a general road, a core with a higher processing speed than the general driving core is assigned to the high-speed driving core.
[0057] The ECU 10 determines the vehicle's current driving scene based on navigation information and / or vehicle information. If the vehicle is driving on a highway, the ECU 10 selects the high-speed core as the execution core and the general-driving core as the idle core. Functions used while driving on a highway (e.g., FEB, LDP, BSI, AD, etc.) are processed by the high-speed core. Functions used while driving on general roads (e.g., FEB, LDP, BSI, etc.) are processed by the general-driving core. In other words, since the functions to be processed differ depending on the vehicle's driving scene, the amount of computation required to process the functions also differs depending on the driving scene. In the modified example 1, the core can be selected according to the different computation amounts for each vehicle driving scene, thereby achieving power saving.
[0058] As a second modification of this embodiment, the ECU 10 has a high-performance core and a power-saving core. The power-saving core may be used when processing functions determined to be unnecessary, and the high-performance core may be used when processing functions determined to be necessary. The high-performance core is a core with a faster processing speed than the power-saving core. For example, when the vehicle is traveling on a highway, functions used while traveling on the highway (e.g., FEB, LDP, BSI, AD, etc.) are processed by the high-performance core, and functions mainly used while traveling on general roads (e.g., LDCN) are processed by the power-saving core. Also, for example, when the vehicle is traveling on a general road, functions mainly used while traveling on general roads (e.g., FEB, LDP, BSI, etc.) are processed by the high-performance core, and functions used while traveling on a highway (e.g., AD) are processed by the power-saving core. As a result, depending on the driving scene, functions with high usability are processed by the high-performance core, and functions with low usability are processed by the power-saving core, thereby achieving power savings.
[0059] 1000...Vehicle control system ECU 10 CPU 10a Flash memory 10d 100...Decision unit 110...Task scheduler
Claims
1. A vehicle control device comprising a processor for operating functions provided by in-vehicle equipment of a vehicle, wherein the processor determines, based on navigation information and / or vehicle information, whether the function is an unnecessary function that does not require processing or a necessary function that does require processing; for the function determined to be an unnecessary function, it executes unnecessary function processing, which is at least one of the processes of skipping a call and extending the call cycle; and if the determination result for the function changes from an unnecessary function to a necessary function, the vehicle control device releases the unnecessary function processing applied to the function determined to be an unnecessary function.
2. A vehicle control device according to claim 1, wherein the processor includes an OEM area having a determination unit for determining whether the function is an unnecessary function or an necessary function, and a supplier area having a task manager for executing the unnecessary function processing.
3. A vehicle control device according to claim 1 or 2, wherein the function determined to be an unnecessary function among the plurality of functions is subject to the unnecessary function processing, and the function determined to be an necessary function among the plurality of functions is not subject to the unnecessary function processing, and is called at the call cycle.
4. A vehicle control method performed by a vehicle control device equipped with a processor for operating functions provided by in-vehicle equipment of a vehicle, wherein the processor determines, based on navigation information and / or vehicle information, whether the function is an unnecessary function that does not require processing or a required function that does require processing; for the function determined to be an unnecessary function, it performs unnecessary function processing, which is at least one of a process to skip a call and a process to extend the call cycle; and if the determination result for the function changes from an unnecessary function to a required function, it releases the unnecessary function processing applied to the function determined to be an unnecessary function.
Citation Information
Patent Citations
Instruction issuing method and device and storage medium
CN116841626A
System lsi and mobile communication terminal
JP2003188793A
Centralized scheduling system for operating autonomous driving vehicles
US20190004528A1
ADC sampling and resource usage optimization method using active variable sampling and active variable phase control
US20200162094A1
Vehicle control device
WO2021166411A1