Starting method, device and equipment of vehicle control system, storage medium and vehicle
By adopting a hot start mode in the vehicle control system, using the target register and wake-up address to quickly start the central processor, the problem of long cold start time is solved, and the user experience and product competitiveness are improved.
Patent Information
- Application Number
- CN202410039642.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-01-10
- Publication Date
- 2025-07-11
AI Technical Summary
The cold start time of the existing vehicle control system is long, resulting in the extended start time of user service and communication service, affecting user experience and product competitiveness.
The hot start mode is adopted, by obtaining the startup mode information from the target register. If it is hot start mode, the wake-up address is read from the memory and the central processor jumps to execute the program to achieve the rapid start of the vehicle control system.
It shortens the start time of the vehicle control system, improves the user experience, and improves product competitiveness by optimizing the architecture of multi-core heterogeneous microcontroller units.
Smart Images

Figure CN120295675A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the technical field of vehicles, and in particular, to a method, apparatus, device, storage medium, and vehicle for starting a vehicle control system. Background Art
[0002] With the continuous development of the automotive industry, users' requirements for the starting speed of vehicles are constantly increasing. Considering the limitations of the vehicle control system chip architecture of the entire vehicle and the requirements for the starting stability of the vehicle, most current vehicle control systems adopt a cold start method. However, the cold start of the vehicle control system needs to create the system from scratch, and it can only be started after going through the processes of the bootloader start, kernel start, system and service manager start, network configuration completion, and vehicle control system service start. The starting time is relatively long, resulting in relatively long starting times for user services, communication services, entertainment services, etc. in the vehicle control system.
[0003] For example, after a user gets in the car, if they want to complete control operations related to user services, such as turning on the air conditioner, they need to wait for 2 - 3 seconds until the user service of the vehicle control system is ready before they can execute the control operation. As a result, the user cannot turn on the air conditioner immediately after getting in the car, which will seriously affect the user experience in bad weather. At the same time, since the network initialization of the upper-layer service middleware during the cold start process is very time-consuming and takes nearly 1 second to initialize, and the establishment of upper-layer service communication depends on the middleware, the user needs to wait for the middleware to initialize and the communication service to be successfully established before they can obtain network data, which greatly affects the speed of communication establishment.
[0004] In summary, during the user's vehicle use process, the cold start of the vehicle control system has a negative impact on the user experience and reduces the competitiveness of the product. Therefore, how to improve the starting speed of the vehicle control system is a technical problem that needs to be solved. Summary of the Invention
[0005] To solve the above technical problems, the present disclosure provides a method, apparatus, device, storage medium, and vehicle for starting a vehicle control system.
[0006] The first aspect of the embodiments of the present disclosure provides a method for starting a vehicle control system, the method including:
[0007] In response to receiving a vehicle start signal, obtain information on the start mode of the vehicle control system from a target register, where the target register is a preset register for recording information on the start mode of the vehicle control system;
[0008] If the start mode is a warm start mode, read a wake-up address from the memory, where the wake-up address is used to record the execution position of the program when the vehicle control system experiences an interruption;
[0009] Control the central processing unit to jump to the wake-up address and execute the corresponding program, so that the vehicle control system completes a warm start.
[0010] The second aspect of the embodiments of the present disclosure provides a starting device for a vehicle control system. The device includes:
[0011] An acquisition module, configured to, in response to receiving a vehicle start signal, acquire information about the start mode of the vehicle control system from a target register, where the target register is a preset register for recording information about the start mode of the vehicle control system;
[0012] A reading module, configured to, if the start mode is a warm start mode, read a wake-up address from a memory, where the wake-up address is used to record the execution position of the program when the vehicle control system is interrupted;
[0013] A control module, configured to control the central processing unit to jump to the wake-up address and execute the corresponding program, so that the vehicle control system completes a warm start.
[0014] The third aspect of the embodiments of the present disclosure provides a computer device, including a memory, a processor, and a computer program. Among them, the computer program is stored in the memory. When the computer program is executed by the processor, the starting method of the vehicle control system as described in the first aspect above is implemented.
[0015] The fourth aspect of the embodiments of the present disclosure provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by the processor, the starting method of the vehicle control system as described in the first aspect above is implemented.
[0016] The fifth aspect of the embodiments of the present disclosure provides a vehicle, including a memory, a processor, and a computer program. Among them, the computer program is stored in the memory. When the computer program is executed by the processor, the starting method of the vehicle control system as described in the first aspect above is implemented.
[0017] The technical solutions provided by the embodiments of the present disclosure have the following advantages compared with the prior art:
[0018] In the method, device, equipment, storage medium and vehicle for starting a vehicle control system provided by the embodiments of the present disclosure, in response to receiving a vehicle start signal, information on the start mode of the vehicle control system is obtained from a target register, where the target register is a preset register for recording information on the start mode of the vehicle control system; if the start mode is a warm start mode, a wake-up address is read from the memory, where the wake-up address is used to record the execution position of the program when the vehicle control system has an interruption; the central processing unit is controlled to jump to the wake-up address and execute the corresponding program, so that the vehicle control system completes a warm start. The present solution uses a warm start method to wake up the vehicle control system, which can shorten the start time of the vehicle control system, enabling the vehicle control system to quickly receive and process control instructions issued by the user for various services. After getting in the vehicle, the user does not need to spend a lot of time waiting for the vehicle control system to be ready, greatly improving the user experience. At the same time, since the multi-core heterogeneous micro-control unit (ARM Cotext-M Core) starts in a warm start manner, some applications sensitive to start time are usually set in the multi-core heterogeneous micro-control unit. However, after the vehicle control system uses the warm start method to achieve fast start, these applications can be migrated from the low-computing-power multi-core heterogeneous micro-control unit to the high-computing-power vehicle control system, thereby optimizing the overall heterogeneous architecture solution of the vehicle and improving product competitiveness. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] The accompanying drawings herein are incorporated into the specification and form a part of the specification, showing embodiments consistent with the present disclosure and, together with the specification, are used to explain the principles of the present disclosure.
[0020] In order to more clearly illustrate the technical solutions in the embodiments of the present disclosure or in the prior art, the following will briefly introduce the accompanying drawings required for use in the description of the embodiments or the prior art. Obviously, for those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0021] Figure 1 is a flowchart of a method for starting a vehicle control system provided by an embodiment of the present disclosure;
[0022] Figure 2 is a flowchart of a method for setting a start mode provided by an embodiment of the present disclosure;
[0023] Figure 3 is a flowchart of a method for cold starting a vehicle control system provided by an embodiment of the present disclosure;
[0024] Figure 4 is a flowchart of another method for cold starting a vehicle control system provided by an embodiment of the present disclosure;
[0025] Figure 5 It is a flowchart of a method for restoring services provided by an embodiment of the present disclosure;
[0026] Figure 6 It is a flowchart of a method for initializing a target device provided by an embodiment of the present disclosure;
[0027] Figure 7 It is a schematic structural diagram of a starting device for a vehicle control system provided by an embodiment of the present disclosure;
[0028] Figure 8 It is a schematic structural diagram of a computer device provided by an embodiment of the present disclosure. Detailed implementation manners
[0029] In order to more clearly understand the above objects, features and advantages of the present disclosure, the solutions of the present disclosure will be further described below. It should be noted that, without conflict, the embodiments of the present disclosure and the features in the embodiments may be combined with each other.
[0030] Many specific details are set forth in the following description in order to fully understand the present disclosure, but the present disclosure may also be implemented in other ways different from those described herein; obviously, the embodiments in the specification are only a part of the embodiments of the present disclosure, rather than all of the embodiments.
[0031] It should be understood that the steps recorded in the method implementation manners of the present disclosure may be executed in different orders and / or executed in parallel. In addition, the method implementation manners may include additional steps and / or omit the steps shown. The scope of the present disclosure is not limited in this regard.
[0032] It should be noted that, in this article, relational terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the term "comprising", "including" or any other variant thereof is intended to cover a non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not expressly listed, or further includes elements inherent to such process, method, article or device. Without further limitation, the element defined by the statement "including one..." does not exclude the existence of additional identical elements in the process, method, article or device including the said element.
[0033] It should be noted that the modifiers "a" and "multiple" mentioned in the present disclosure are illustrative rather than restrictive. Those skilled in the art should understand that unless otherwise clearly stated in the context, it should be understood as "one or more".
[0034] Figure 1 This is a flowchart of a method for starting a vehicle control system provided by an embodiment of the present disclosure. This method can be executed by a starting device of a vehicle control system. The starting device of the vehicle control system can be installed on a vehicle and specifically can be set in a multi-core heterogeneous system-on-chip (ARM Cotext-A Core) of the vehicle. As Figure 1 shown, the method for starting the vehicle control system provided in this embodiment includes the following steps:
[0035] S101. In response to receiving a vehicle start signal, obtain information on the start mode of the vehicle control system from a target register, where the target register is a preset register for recording information on the start mode of the vehicle control system.
[0036] The vehicle start signal in the embodiment of the present disclosure can be understood as a signal sent by a user to start the vehicle. Exemplary vehicle start signals can be a ignition signal, a power-on signal, etc., which are not limited herein.
[0037] The target register in the embodiment of the present disclosure can be understood as a register located at a specified position for recording and storing information on the start mode of the vehicle control system.
[0038] The start modes in the embodiment of the present disclosure include a cold start mode and a warm start mode. Among them, a cold start can be understood as a start mode in which after the vehicle control system is shut down by closing the system and clearing the memory, the system and various tasks are created from scratch when starting again. The warm start mode can be understood as a start mode in which after the vehicle control system is interrupted by suspending the system to the memory and setting the memory to be able to save power-off, when starting again, the previously suspended system is directly awakened and various tasks are continued to be executed. The duration of a cold start is longer than that of a warm start.
[0039] In the embodiment of the present disclosure, the starting device of the vehicle control system can obtain information on the start mode of the vehicle control system from the target register at a specified position after receiving the vehicle start signal.
[0040] In an exemplary implementation manner of the embodiment of the present disclosure, the starting device of the vehicle control system can read information on the start mode of the vehicle control system from the target register after receiving the vehicle start signal.
[0041] In another exemplary implementation manner of the present disclosure, the starting device of the vehicle control system can obtain information on the start mode of the vehicle control system sent by the target register after receiving the vehicle start signal.
[0042] S102. If the startup mode is the warm startup mode, read the wake-up address from the memory. The wake-up address is used to record the execution position of the program when the vehicle control system is interrupted.
[0043] In the embodiments of the present disclosure, after determining that the startup mode of the vehicle control system is the warm startup mode, the startup device of the vehicle control system can read from a specified position in the memory the wake-up address used to record the execution position of the program when the vehicle control system is interrupted.
[0044] In an exemplary implementation manner of the embodiments of the present disclosure, the startup device of the vehicle control system can read the wake-up address recorded before the interruption from a synchronous static random access memory (SSRAM) that is non-volatile when power is off in the memory.
[0045] In another exemplary implementation manner of the embodiments of the present disclosure, after a user finishes using the vehicle once and before getting off the vehicle, the user will send a vehicle shutdown signal to the vehicle. The vehicle shutdown signal can be an engine-off signal or a power-off signal. At this time, the vehicle user state will initiate an interrupt request. When the vehicle control system receives the interrupt request initiated by the user state, it freezes the user process and external devices, sends a stop instruction to the central processing unit, causing the central processing unit to interrupt. The Power State Coordination Interface (PSCI) calls the system interrupt instruction, so that the wake-up address corresponding to the execution position of the current program is saved to the non-volatile SSRAM. Specifically, it can be saved to the SSRAM of the multi-core heterogeneous micro-control unit, and the double data rate synchronous dynamic random access memory (DDR) of the multi-core heterogeneous micro-control unit is set to the self-refresh mode, thereby completing the interruption of the vehicle control system and determining the next startup mode as the warm startup mode. After determining that the startup mode is the warm startup mode when the startup device of the vehicle control system starts the vehicle control system next time, it can read the wake-up address from the SSRAM of the multi-core heterogeneous micro-control unit.
[0046] S103. Control the central processing unit to jump to the wake-up address and execute the corresponding program, so that the vehicle control system completes a warm startup.
[0047] In the embodiments of the present disclosure, after reading the wake-up address from the memory, the startup device of the vehicle control system can control the central processing unit to jump to the wake-up address and execute the program recorded at the position corresponding to the wake-up address, so that the central processing unit continues to execute the program when the vehicle control system is interrupted, realizing the warm startup of the vehicle control system.
[0048] In an embodiment of the present disclosure, in response to receiving a vehicle start signal, information on the start mode of the vehicle control system is obtained from a target register, where the target register is a preset register for recording information on the start mode of the vehicle control system; if the start mode is a warm start mode, a wake-up address is read from the memory, where the wake-up address is used to record the execution position of the program when the vehicle control system is interrupted; the central processing unit is controlled to jump to the wake-up address and execute the corresponding program, so that the vehicle control system completes a warm start. This solution uses a warm start method to wake up the vehicle control system, which can shorten the start-up time of the vehicle control system, enabling the vehicle control system to quickly receive and process control instructions issued by the user for various services. The user does not need to spend a lot of time waiting for the vehicle control system to be ready after getting in the car, greatly improving the user experience. At the same time, since the multi-core heterogeneous micro-control unit starts in a warm start manner, some applications sensitive to start-up time are usually set in the multi-core heterogeneous micro-control unit. However, after the vehicle control system achieves fast start-up using the warm start method, these applications can be migrated from the low-computing-power multi-core heterogeneous micro-control unit to the high-computing-power vehicle control system, thereby optimizing the overall heterogeneous architecture solution of the vehicle and improving product competitiveness.
[0049] Figure 2 is a flowchart of a method for setting a start mode provided by an embodiment of the present disclosure. As Figure 2 shown, based on the above embodiment, the start mode can be set by the following method.
[0050] S201. In response to receiving a vehicle power-off signal, determine the interval duration from the moment of the most recent cold start of the vehicle control system to the current moment.
[0051] In an embodiment of the present disclosure, when receiving a vehicle power-off signal, the start-up device of the vehicle control system can obtain the moment of the most recent cold start of the vehicle control system and determine the interval duration from that moment to the current moment.
[0052] In an exemplary implementation manner of an embodiment of the present disclosure, the start-up device of the vehicle control system can obtain the start mode and start time of each start of the vehicle control system from a log file, and then obtain the moment of the most recent cold start.
[0053] S202. If the interval duration is less than a first preset duration, set the start mode of the next start of the vehicle control system to a warm start mode.
[0054] The first preset duration in an embodiment of the present disclosure can be understood as a duration threshold preset for the vehicle control system to continuously and stably operate without a complete shutdown. The specific value of the first preset duration can be set as needed and is not limited here.
[0055] In the embodiments of the present disclosure, in order to avoid serious fragmentation of the memory files of the vehicle control system or affect the operation stability due to the system not being shut down for a long time, the startup device of the vehicle control system can, after obtaining the interval duration from the moment of the last cold startup of the vehicle control system to the current moment, compare the interval duration with a first preset duration. If the interval duration is less than the first preset duration, it is determined that the vehicle control system does not need to be restarted in the cold startup mode. At this time, the startup mode of its next startup can be set to the warm startup mode.
[0056] S203. If the interval duration is greater than or equal to the first preset duration, set the startup mode of the next startup of the vehicle control system to the cold startup mode.
[0057] In the embodiments of the present disclosure, the startup device of the vehicle control system can compare the interval duration with the first preset duration. If the interval duration is greater than or equal to the first preset duration, it can be determined that the vehicle control system needs to perform a cold startup. At this time, the startup mode of its next startup can be set to the cold startup mode.
[0058] In the embodiments of the present disclosure, in response to receiving the vehicle power-off signal, the interval duration from the moment of the last cold startup of the vehicle control system to the current moment is determined. If the interval duration is less than the first preset duration, the startup mode of the next startup of the vehicle control system is set to the warm startup mode. If the interval duration is greater than or equal to the first preset duration, the startup mode of the next startup of the vehicle control system is set to the cold startup mode, which can control the vehicle control system to perform cold startup regularly, avoid the problems of serious fragmentation of memory files or reduction of system operation stability caused by the vehicle control system being unable to completely shut down the system through cold startup due to not performing cold startup for a long time, reduce the probability of faults, and further improve the user's driving experience.
[0059] Figure 3 is a flowchart of a method for cold startup of a vehicle control system provided by the embodiments of the present disclosure. As Figure 3 shown, on the basis of the above embodiments, the cold startup of the vehicle control system can be controlled by the following method.
[0060] S301. When the vehicle control system is in the sleep state, perform the cold startup of the vehicle control system.
[0061] The sleep state in the embodiments of the present disclosure can be understood as the state of waiting for restart after the vehicle is powered off.
[0062] In the embodiments of the present disclosure, when the startup device of the vehicle control system needs to perform the cold startup of the vehicle control system, it can select the moment when the vehicle control system is in the sleep state and perform the cold startup.
[0063] In an exemplary implementation of the embodiments of the present disclosure, after setting the startup mode for the next startup of the vehicle control system to a cold startup, the startup device of the vehicle control system may wait for the vehicle to power off and enter the sleep state, and when it is determined that the user has no need to use the vehicle in a short period of time, perform a cold startup of the vehicle control system.
[0064] S302. Record the moment of the cold startup of the vehicle control system.
[0065] In the embodiments of the present disclosure, after the startup device of the vehicle control system finishes performing the cold startup of the vehicle control system, it may record the current moment as the moment of the cold startup of the vehicle control system.
[0066] In an exemplary implementation of the embodiments of the present disclosure, the startup device of the vehicle control system may record the moment of the cold startup of the vehicle control system in a preset log file.
[0067] S303. Set the startup mode for the next startup of the vehicle control system to the warm startup mode.
[0068] In the embodiments of the present disclosure, after the startup device of the vehicle control system performs the cold startup of the vehicle control system and records the startup moment, it may set the startup mode for the next startup of the vehicle control system to the warm startup mode.
[0069] In an exemplary implementation of the embodiments of the present disclosure, when the startup device of the vehicle control system sets the startup mode for the next startup to the warm startup, it may control the user state to initiate an interrupt request, freeze the user process and external devices, send a stop instruction to the central processing unit, cause the central processing unit to generate an interrupt, the PSCI calls the system interrupt instruction, so that the wake-up address corresponding to the execution position of the current program is saved to the power-down non-volatile SSRAM, and set the DDR to the self-refresh mode, completing the setting of the warm startup mode.
[0070] By performing the cold startup of the vehicle control system when the vehicle control system is in the sleep state, recording the moment of the cold startup of the vehicle control system, and setting the startup mode for the next startup of the vehicle control system to the warm startup mode, the embodiments of the present disclosure can, when it is necessary to improve the running stability of the vehicle control system through cold startup, select the moment when the vehicle control system is in the sleep state for cold startup, without affecting the user's need to use the vehicle, and after the cold startup is completed, set the next startup mode to the warm startup mode. When the user uses the vehicle next time, the vehicle control system can still be woken up in a short time through the warm startup method, further improving the user experience.
[0071] Exemplarily, the process of the vehicle control system performing a cold start regularly is as follows: The startup device of the vehicle control system controls the microcontroller unit to send Hot start Acore to the code module BL2 written by the user in the bootloader uboot to determine that the current startup method is a hot start. BL2 sends resume to the power driver, the power driver sends resume_notify to the power management module, the power management module sends resume_app to the user service, the microcontroller unit sends a POS Command to the power management module, the power management module sends suspend_app() to the user service and receives the return message return from the user service, and then sends POS Ready to the microcontroller, so as to specify whether the next startup method is a cold start or a hot start according to the continuous hot start time and write it into the flag Flag. After writing, it sends a POC Command to the power management module, the power management module sends shutdown to the power driver, the power driver sends pm_suspend to BL2, and enters the interrupt (wait for interrupt, WFI) state. When the vehicle is powered on and started next time, it obtains the previously written flag Flag to determine whether it is a cold start or a hot start this time. If it is a hot start, the above process is executed. If it is a cold start, it sends coldstart A Core to BL2, BL2 sends cold start A Core to BL33 Uboot, BL33 Uboot writes the A Core coldstart flag, the power management module updates the cold start time with reference to the cold flag, the microcontroller unit sends a POS Command to the power management module again, and the power management module sends POS Ready to the microcontroller unit to specify that the next startup mode is a hot start and enter the startup sleep process.
[0072] Figure 4 It is a flowchart of another method for cold starting a vehicle control system provided by an embodiment of the present disclosure. As Figure 4 shown, on the basis of the above embodiment, the vehicle control system can be cold-started through the following method.
[0073] S401. In response to an abnormality occurring during the hot start of the vehicle control system, a reminder message is sent to the user.
[0074] The user in the embodiments of the present disclosure can be understood as the vehicle owner user or the R & D and test personnel of the vehicle.
[0075] The reminder message in the embodiments of the present disclosure can be understood as information used to remind the user that an abnormality has occurred in the hot start of the vehicle control system and the vehicle control system cannot be awakened through hot start. Exemplarily, the reminder message can be information in the form of images, audio, text, etc., which is not limited herein.
[0076] In an embodiment of the present disclosure, when it is determined that an abnormality occurs during the warm start process of the vehicle control system, the start-up device of the vehicle control system may send a reminder message to the user.
[0077] In an exemplary implementation manner of the embodiment of the present disclosure, during the warm start process of the vehicle control system, the start-up device of the vehicle control system may monitor the start state in real time, and when an abnormal situation is detected, such as an abnormality of the DDR external device or other external devices, a reminder message may be sent to the user, and the reminder message may include specific information about the device where the abnormality occurs.
[0078] S402. In response to receiving a cold start instruction issued by the user, perform a cold start of the vehicle control system.
[0079] The cold start instruction in the embodiment of the present disclosure may be understood as a user instruction for starting the vehicle control system in a cold start manner. For example, the cold start instruction may be a voice instruction, a gesture instruction, a touch instruction, a steering wheel button combination instruction, etc., which is not limited herein.
[0080] In an embodiment of the present disclosure, after receiving a cold start instruction issued by the user, the start-up device of the vehicle control system may start the vehicle control system in a cold start manner.
[0081] In an exemplary implementation manner of the embodiment of the present disclosure, after receiving a cold start instruction issued by the user, the start-up device of the vehicle control system may start the cold start of the vehicle control system starting from the default start address corresponding to the cold start mode.
[0082] In another exemplary implementation manner of the embodiment of the present disclosure, after receiving a cold start instruction issued by the user, the start-up device of the vehicle control system may send the cold start instruction to the multi-core heterogeneous micro-control unit through the CAN bus. After receiving the cold start instruction, the multi-core heterogeneous micro-control unit controls the vehicle control system to perform sleep wake-up in a cold start manner, thereby performing a cold start of the vehicle control system.
[0083] In the embodiment of the present disclosure, by sending a reminder message to the user in response to an abnormality occurring during the warm start process of the vehicle control system, and performing a cold start of the vehicle control system in response to receiving a cold start instruction issued by the user, it is possible to timely remind the user when an abnormality occurs during the warm start process of the vehicle control system, and provide a cold start method for the user. By means of the cold start, the vehicle control system can be restored to normal operation, avoiding the start abnormality of the vehicle control system from affecting the user's vehicle use requirements.
[0084] In some embodiments of the present disclosure, the startup device of the vehicle control system may control the central processing unit to send recovery instructions to each service included in the vehicle control system in a preset order, so that each service starts to execute its respective tasks after receiving the recovery instructions, where the preset order is determined according to the startup levels corresponding to each service.
[0085] Specifically, there are dependency relationships among the various services included in the vehicle control system. For example, the log recording service needs to rely on the time synchronization service to execute corresponding tasks. After the startup device of the vehicle control system controls the vehicle control system to complete a warm start, although the various services are awakened simultaneously, they do not yet have the ability to execute tasks. At this time, the startup device of the vehicle control system can send an instruction to the central processing unit to control the central processing unit to send recovery instructions to the various services in a preset order. The recovery instruction is used to notify each service to start executing its respective tasks. The preset order can be determined according to the startup levels corresponding to each service. There may be dependency relationships among services with different levels. For example, the time synchronization service, which is the basis for many services, will receive the recovery instruction sent by the central processing unit first, so that other services can call the time synchronization service when executing tasks. Therefore, the startup level corresponding to the time synchronization service can be level one, and the startup levels corresponding to other services that rely on the time synchronization service can be level two, which can ensure that when the various services under the vehicle control system are awakened and start to execute tasks, the other services on which the service depends have all normally executed tasks and provided corresponding information, thus ensuring the normal operation of the vehicle control system.
[0086] Optionally, the startup device of the vehicle control system may control the battery management service in the central processing unit to complete recovery first, and after its recovery, control it to send recovery instructions to other services in a preset order.
[0087] Exemplarily, the process of the startup device of the vehicle control system controlling the central processing unit to send recovery instructions to each service in a preset order is as follows: The central processing unit controls the microcontroller unit and the Inter-Platform Communication Framework (IPCF) driver to execute the IPCF handshake process, and then controls the Power Manager module to set status = phase1_resume and enter the first-phase recovery process. The Power Manager module sends resume_phase_1_timer_start to the Timer, so that when the timeout of the corresponding startup phase occurs, it enters the corresponding processing for the abnormal startup of the corresponding application. The Power Manager module sends resume_phase1 to the timesync service, and then sends resume_phase1 to the CAN Service. The timesync service sends device read to the IPCF driver to obtain time information. The IPCF driver sends time synchronization information to the microcontroller unit and receives the return from the microcontroller unit. The IPCF driver writes the time information. The timesync service sets the system time according to this time information, sends the timesync ready flag setting to the IPCF driver, and sends resume_finish to the Power Manager module. The CAN Service sends the canservice ready flag setting to the IPCF driver and sends resume_finish to the Power Manager module. At this time, the first-phase recovery task is completed, and the second-phase recovery is started. The Power Manager module sets status = phase2_resume, then sends resume_phase_2_timer_start to the Timer, so that when the timeout of the corresponding startup phase occurs, it enters the corresponding processing for the abnormal startup of the corresponding application, and sends resume_phase2 to other services. The CAN Service sends information to the Low Latency Communication Engine (LLCE) driver to obtain the current timestamp of the LLCE and receives the information returned by the LLCE driver to obtain the current system time information. The IPCF driver provides the canlog data for opening the cache to the CAN Service. The CAN Service writes the cached canlog data and backfills the system time of the cached log according to the relative time relationship. Other services send phase2_resume_finish to the Power Manager module. At this time, the second-phase recovery task is completed. The Power Manager module sets status = resume_app_finish, and then subsequent existing processing can be executed.
[0088] Figure 5 is a flowchart of a method for restoring services provided by an embodiment of the present disclosure. As Figure 5 shown, based on the above embodiment, the service can be restored through the following method.
[0089] S501. Within a second preset duration after sending the restoration instruction to the target service among the various services, determine whether a restoration completion instruction returned by the target service is received.
[0090] The second preset duration in the embodiment of the present disclosure can be understood as the timeout response time of each service set in advance. If the restoration duration of a certain service is greater than the second preset duration, it can be determined that there is an abnormality in the restoration process of this service.
[0091] The restoration completion instruction in the embodiments such as the present disclosure can be understood as an instruction used to represent that a certain service has been restored after being awakened and starting to execute tasks.
[0092] In the embodiment of the present disclosure, the startup device of the vehicle control system can start from sending the restoration instruction to the target service among the various services, and within the second preset duration, determine whether a restoration completion instruction feedback by the target service after resuming the execution of tasks is received.
[0093] S502. If received, in response to the restoration completion instruction returned by the target service, control the central processing unit to send the restoration instruction to the next service of the target service according to the preset order.
[0094] In the embodiment of the present disclosure, when the startup device of the vehicle control system determines that a restoration completion instruction feedback by the target service is received within the second preset duration, after receiving this restoration completion instruction, determine the next service to be restored according to the preset order, and control the central processing unit to send the restoration instruction to this next service.
[0095] S503. If not received, after the second preset duration has passed, control the central processing unit to send the restoration instruction to the next service.
[0096] In the embodiment of the present disclosure, when the startup device of the vehicle control system determines that a restoration instruction returned by the target service is not received within the second preset duration, determine that there is an abnormality in the restoration process of this target service. After the waiting duration reaches the second preset duration, no longer wait for the target service to return a restoration completion instruction, and directly send the restoration instruction to the next service.
[0097] In an exemplary implementation manner of the embodiment of the present disclosure, when the startup device of the vehicle control system determines that a restoration instruction returned by the target service is not received within the second preset duration, the information of this target service can be recorded in a log file for relevant personnel to review and analyze.
[0098] In an embodiment of the present disclosure, within a second preset duration after sending the recovery instruction to the target service among the respective services, it is determined whether a recovery completion instruction returned by the target service is received. If received, in response to the recovery completion instruction returned by the target service, the central processing unit is controlled to send the recovery instruction to the next service of the target service according to the preset order. If not received, after the second preset duration has elapsed, the central processing unit is controlled to send the recovery instruction to the next service. This can prevent the overall recovery process from getting stuck due to continuing to wait for the timed-out service to complete recovery in the case of recovery timeout of an individual service, and still be able to complete the recovery of the remaining services, increasing the robustness of the recovery.
[0099] Figure 6 is a flowchart of a method for initializing a target device provided by an embodiment of the present disclosure. As Figure 6 shown, based on the above embodiment, the target device can be initialized by the following method.
[0100] S601. Obtain the current device state of the target device and the preset initial state.
[0101] The target device in the embodiment of the present disclosure can be understood as a vehicle device that needs to confirm whether the device state is the preset initial state after the vehicle is powered on, such as an air conditioner and a vehicle lamp.
[0102] In the embodiment of the present disclosure, the current device state can be understood as the device state of the target device when the vehicle was powered off last time. By way of example, the device state can be a switch state or can also include specific state parameters, which are not limited herein.
[0103] In the embodiment of the present disclosure, the starting device of the vehicle control system can, before completing the warm start of the vehicle control system, first obtain the current device states of various target devices controlled by the vehicle control system, such as an air conditioner and a vehicle lamp, and obtain the preset initial states corresponding to the various target devices from the system file.
[0104] S602. Compare the device state with the initial state to determine the target device to be adjusted whose device state is different from the initial state.
[0105] In the embodiment of the present disclosure, after obtaining the current device states and the preset initial states of the various target devices, the starting device of the vehicle control system can compare the device state of the same target device with the initial state, determine whether the device state is the same as the initial state, and determine the target device whose device state is different from the initial state as the target device to be adjusted.
[0106] S603. Initialize the target device to be adjusted.
[0107] In the embodiments of the present disclosure, after determining a target device to be adjusted with a device state different from the initial state, the starting device of the vehicle control system may perform an initialization process on the target device to be adjusted, specifically, may adjust the target device to be adjusted to the initial state.
[0108] In the embodiments of the present disclosure, by obtaining the current device state of the target device and the preset initial state, comparing the device state with the initial state, determining the target device to be adjusted with a device state different from the initial state, and initializing the target device to be adjusted, it is possible to, before completing the warm start of the vehicle control system, first perform an initialization process on the target devices to be adjusted among the various target devices controlled by the vehicle control system, where the current device state is different from the initial state. Even if the target device was not turned off when the vehicle was powered off last time and the target device is not currently in the initial state, after waking up the vehicle control system in a warm start manner, the target device is automatically adjusted to the initial state, avoiding situations that go against the user's psychological expectations, such as the headlights remaining on after the vehicle is started during the day when the user did not turn off the headlights when ending the vehicle use at night, further improving the user experience.
[0109] Optionally, the starting device of the vehicle control system may provide resume and suspend interfaces that can keep the init and shutdown interface actions used for interaction with the multi-core heterogeneous microcontroller unit consistent during cold start, so as to ensure the compatibility of the vehicle control system with the software interfaces running on the multi-core heterogeneous microcontroller unit.
[0110] Specifically, the starting device of the vehicle control system may control the microcontroller unit to send a POCCommand to the power management module, the power management module sends a shutdown to the power driver, and the power driver sends a pm_susupend to the IPCF driver, so that the power management module enters an interrupt state. After the vehicle is powered on, the starting device of the vehicle control system controls the microcontroller unit to send a resume to the power driver, the power driver sends a pm_resume to the IPCF driver, the IPCF driver calls IPCF_data_reinit(), and the IPCF driver and the microcontroller unit start to execute the IPCF handshake process.
[0111] Figure 7 is a schematic structural diagram of a starting device of a vehicle control system provided by the embodiments of the present disclosure, as Figure 7As shown in the figure, the starting device 700 of the vehicle control system includes: an acquisition module 710, a reading module 720, and a control module 730. Among them, the acquisition module 710 is configured to, in response to receiving a vehicle start signal, obtain information about the start mode of the vehicle control system from a target register, where the target register is a preset register for recording information about the start mode of the vehicle control system; the reading module 720 is configured to, if the start mode is a warm start mode, read a wake-up address from the memory, where the wake-up address is used to record the execution position of the program when the vehicle control system has an interruption; the control module 730 is configured to control the central processing unit to jump to the wake-up address and execute the corresponding program, so that the vehicle control system completes a warm start.
[0112] Optionally, the starting device 700 of the vehicle control system further includes: a determination module, configured to, in response to receiving a vehicle power-off signal, determine the interval duration from the moment of the last cold start of the vehicle control system to the current moment; a first setting module, configured to, if the interval duration is less than a first preset duration, set the start mode of the next start of the vehicle control system to a warm start mode; a second setting module, configured to, if the interval duration is greater than or equal to the first preset duration, set the start mode of the next start of the vehicle control system to a cold start mode.
[0113] Optionally, the starting device 700 of the vehicle control system further includes: an execution module, configured to perform a cold start of the vehicle control system when the vehicle control system is in a sleep state; a recording module, configured to record the moment of the cold start of the vehicle control system; a third setting module, configured to set the start mode of the next start of the vehicle control system to a warm start mode.
[0114] Optionally, the control module 730 includes: a reminder unit, configured to, in response to an abnormality occurring during the warm start of the vehicle control system, send a reminder message to the user; an execution unit, configured to perform a cold start of the vehicle control system in response to receiving a cold start instruction issued by the user.
[0115] Optionally, the starting device 700 of the vehicle control system further includes: a recovery module, configured to control the central processing unit to send recovery instructions to each service included in the vehicle control system in a preset order, so that each service starts to execute its respective tasks after receiving the recovery instructions.
[0116] Optionally, the recovery module includes: a judgment unit, configured to judge whether a recovery completion instruction returned by the target service is received within a second preset duration after sending the recovery instruction to the target service among the various services; a first sending unit, configured to, if received, in response to the recovery completion instruction returned by the target service, control the central processing unit to send the recovery instruction to the next service of the target service according to the preset order; a second sending unit, configured to, if not received, after the second preset duration has passed, control the central processing unit to send the recovery instruction to the next service.
[0117] Optionally, the starting device 700 of the vehicle control system further includes: an initialization module, configured to control a target device to complete device initialization.
[0118] The starting device of the vehicle control system provided in this embodiment can execute the method described in any of the above embodiments, and its execution manner and beneficial effects are similar, which will not be elaborated here.
[0119] Figure 8 It is a schematic structural diagram of a computer device provided by an embodiment of the present disclosure.
[0120] As Figure 8 shown, the computer device may include a processor 810 and a memory 820 storing computer program instructions.
[0121] Specifically, the above-mentioned processor 810 may include a central processing unit (CPU), or an application specific integrated circuit (ASIC), or one or more integrated circuits configured to implement the embodiments of the present application.
[0122] The memory 820 may include a mass storage for information or instructions. By way of example and not limitation, the memory 820 may include a hard disk drive (HDD), a floppy disk drive, a flash memory, an optical disk, a magneto-optical disk, a magnetic tape, or a universal serial bus (USB) drive, or a combination of two or more of these. Where appropriate, the memory 820 may include removable or non-removable (or fixed) media. Where appropriate, the memory 820 may be internal or external to the integrated gateway device. In a particular embodiment, the memory 820 is a non-volatile solid-state memory. In a particular embodiment, the memory 820 includes a read-only memory (ROM). Where appropriate, the ROM may be a mask-programmed ROM, a programmable ROM (PROM), an erasable PROM (EPROM), an electrically erasable PROM (EEPROM), an electrically alterable ROM (EAROM), or a flash memory, or a combination of two or more of these.
[0123] The processor 810 reads and executes the computer program instructions stored in the memory 820 to perform the steps of the startup method of the vehicle control system provided by the embodiments of the present disclosure.
[0124] In one example, the computer device may further include a transceiver 830 and a bus 840. Among them, as Figure 8 shown, the processor 810, the memory 820, and the transceiver 830 are connected through the bus 840 and complete communication with each other.
[0125] The bus 840 includes hardware, software, or both. By way of example and not limitation, the bus can include an Accelerated Graphics Port (AGP) or other graphics bus, an Extended Industry Standard Architecture (EISA) bus, a Front Side BUS (FSB), a Hyper Transport (HT) interconnect, an Industrial Standard Architecture (ISA) bus, an InfiniBand interconnect, a Low Pin Count (LPC) bus, a memory bus, a MicroChannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local Bus (VLB) bus, or other suitable bus or a combination of two or more of these. Where appropriate, the bus 840 can include one or more buses. Although embodiments of the present application describe and illustrate specific buses, the present application contemplates any suitable bus or interconnect.
[0126] Embodiments of the present disclosure also provide a computer-readable storage medium that can store a computer program, which when executed by a processor, causes the processor to implement the startup method of the vehicle control system provided by the embodiments of the present disclosure.
[0127] The above storage medium may include, for example, a memory 820 storing computer program instructions that can be executed by a processor 810 of a startup device of a vehicle control system to complete the startup method of the vehicle control system provided in the embodiments of the present disclosure. Optionally, the storage medium may be a non-transitory computer-readable storage medium. For example, the non-transitory computer-readable storage medium may be a ROM, a random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, a floppy disk, and an optical data storage device, etc. The above computer program may be written in any combination of one or more programming languages to write program codes for performing the operations in the embodiments of the present disclosure. The programming languages include object-oriented programming languages such as Java, C++, etc., and also include conventional procedural programming languages such as the "C" language or similar programming languages. The program codes may be executed entirely on a user computing device, partially on the user device, executed as an independent software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or a server.
[0128] The embodiments of the present disclosure further provide a vehicle, which includes a memory, a processor, and a computer program. Among them, the computer program is stored in the memory. When the computer program is executed by the processor, the various processes and effects in the above embodiments of the present disclosure can be achieved, which will not be elaborated herein.
[0129] The above are only specific embodiments of the present disclosure, enabling those skilled in the art to understand or implement the present disclosure. Various modifications to these embodiments will be obvious to those skilled in the art. The general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present disclosure. Therefore, the present disclosure will not be limited to these embodiments described herein, but rather conform to the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A method for starting a vehicle control system, characterized in that, The method includes: In response to receiving a vehicle start signal, obtain information on the start mode of the vehicle control system from a target register, where the target register is a preset register for recording information on the start mode of the vehicle control system; If the start mode is a warm start mode, read a wake-up address from the memory, where the wake-up address is used to record the execution position of the program when the vehicle control system experiences an interruption; Control the central processing unit to jump to the wake-up address and execute the corresponding program to enable the vehicle control system to complete a warm start.
2. The method according to claim 1, wherein After the control of the central processing unit jumps to the wake-up address and executes the corresponding program to enable the vehicle control system to complete a warm start, the method further includes: In response to receiving a vehicle power-off signal, determine the interval duration from the moment of the last cold start of the vehicle control system to the current moment; If the interval duration is less than a first preset duration, set the start mode of the next start of the vehicle control system to the warm start mode; If the interval duration is greater than or equal to the first preset duration, set the start mode of the next start of the vehicle control system to the cold start mode.
3. The method according to claim 2, wherein After setting the start mode of the next start of the vehicle control system to the cold start mode, the method further includes: When the vehicle control system is in the sleep state, perform a cold start of the vehicle control system; Record the moment of the cold start of the vehicle control system; Set the start mode of the next start of the vehicle control system to the warm start mode.
4. The method according to claim 1, wherein The control of the central processing unit to jump to the wake-up address and execute the corresponding program to enable the vehicle control system to complete a warm start includes: In response to an abnormality occurring during the warm start of the vehicle control system, send a reminder message to the user; In response to receiving a cold start instruction issued by the user, perform a cold start of the vehicle control system.
5. According to the method described in claim 1, after the control of the central processing unit jumps to the wake-up address and executes the corresponding program to enable the vehicle control system to complete a warm start, the method further includes: Control the central processing unit to send recovery instructions to each service included in the vehicle control system in a preset order, so that each service starts to execute its respective tasks after receiving the recovery instructions, and the preset order is determined according to the start levels corresponding to each service.
6. The method according to claim 5, wherein The control of the central processing unit to send recovery instructions to each service included in the vehicle control system in a preset order includes: Within a second preset duration after sending the recovery instruction to a target service among the various services, determine whether a recovery completion instruction returned by the target service is received; If received, in response to the recovery completion instruction returned by the target service, control the central processing unit to send the recovery instruction to the next service of the target service in the preset order; If not received, after the second preset duration has elapsed, control the central processing unit to send the recovery instruction to the next service.
7. The method according to claim 1, characterized in that Before the control central processing unit jumps to the wake-up address and executes the corresponding program to enable the vehicle control system to complete a warm start, the method further includes: Obtain the current device state of the target device and the preset initial state; Compare the device state with the initial state to determine the target device to be adjusted with different device state and initial state; Initialize the target device to be adjusted.
8. An activation device for a vehicle control system, characterized in that, Includes: An acquisition module, configured to, in response to receiving a vehicle start signal, obtain information on the start mode of the vehicle control system from a target register, where the target register is a preset register for recording information on the start mode of the vehicle control system; A reading module, configured to, if the start mode is a warm start mode, read a wake-up address from the memory, where the wake-up address is used to record the execution position of the program when the vehicle control system has an interruption; A control module, configured to control the central processing unit to jump to the wake-up address and execute the corresponding program to enable the vehicle control system to complete a warm start.
9. A computer device, characterized in that, Includes: A memory; A processor; And a computer program; wherein, the computer program is stored in the memory and is configured to be executed by the processor to implement the method according to any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, A computer program is stored in the storage medium, and when the computer program is executed by a processor, the method according to any one of claims 1-7 is implemented.
11. A vehicle, characterized in that, Includes: A memory; A processor; And a computer program; wherein, the computer program is stored in the memory and is configured to be executed by the processor to implement the method according to any one of claims 1-7.