Vehicle cockpit system and activation method thereof
By introducing a controller into the vehicle cockpit system, the rapid start and shutdown operation of the first functional component and the second functional component is achieved, and the problem of slow start-up speed of the vehicle cockpit system is solved and the user experience is improved.
Patent Information
- Application Number
- CN202211072974.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-02
- Publication Date
- 2025-05-06
- Estimated Expiration
- 2042-09-02
AI Technical Summary
The vehicle cockpit system is slow to start, resulting in poor user experience.
By introducing a controller into the vehicle cockpit system, the start and shutdown operations of the first functional component and the second functional component are controlled, and a rapid start is achieved. The specific method includes closing only the first functional component when receiving the shutdown instruction, and directly starting the first functional component when receiving the startup instruction, thereby achieving a complete startup of the system.
It improves the startup speed of the vehicle cockpit system, improves the user experience, and realizes a rapid transition from sleep state to full startup.
Smart Images

Figure CN115476787B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of electronic technology, and in particular to a vehicle cockpit system and a method for starting the same. Background Art
[0002] With the development of electronic technology, the intelligence of vehicles is developing more and more rapidly, and the functions of vehicle cockpit systems are becoming more and more abundant.
[0003] The vehicle cockpit system includes various control components and functional components located in the vehicle cockpit, such as microprocessor unit, image processing unit, connection circuit, instrument panel, display screen, Bluetooth module and network module, etc. Users can use the vehicle cockpit system to navigate the road conditions, play music, play videos and query information.
[0004] However, in the related art, the startup speed of the vehicle cabin system is slow. Summary of the invention
[0005] The present application provides a vehicle cockpit system and a startup method thereof, which can solve the problem of slow startup speed of the vehicle cockpit system. The technical solution is as follows:
[0006] In one aspect, a method for starting a vehicle cockpit system is provided, the vehicle cockpit system comprising: a controller, a first functional component and a second functional component, the controller connecting the first functional component and the second functional component, the method comprising:
[0007] When the controller receives a shutdown instruction for the vehicle cabin system during the operation of the first functional component and the second functional component, the controller performs a first control operation, wherein the first control operation includes: controlling the first functional component to be shut down;
[0008] The controller determines whether a target condition is satisfied, the target condition comprising: receiving a start instruction for the vehicle cabin system;
[0009] When the target condition is met, the controller executes a second control operation, where the second control operation includes: controlling the first functional component to start.
[0010] Optionally, the first functional component includes at least one of a first central processing unit CPU core, a second CPU core, a first power management PM module, a peripheral, an intellectual property IP core, an active crystal oscillator and a first voltage regulator;
[0011] The second functional component includes: at least one of a second PM module, a bus, a memory unit, a resource power management RPM module, and a second voltage regulator;
[0012] The first CPU core runs a QNX operating system, the second CPU core runs an open source operating system, the first PM module is connected to the second CPU core, the second PM module is connected to the first CPU core, and the peripherals include an information input device and an information output device.
[0013] Optionally, the second functional component includes: a bus, a memory unit and an RPM module;
[0014] The first control operation further includes: controlling the clock frequency of the bus to decrease, and after the clock frequency is decreased, controlling the voltage on the memory unit and the RPM module to decrease;
[0015] The second control operation further includes: controlling the voltage to increase, and after the voltage is increased, controlling the clock frequency to increase.
[0016] Optionally, the first functional component includes a first CPU core, peripherals, an IP core, an active crystal oscillator and a first voltage regulator; a QNX operating system, a driver, an upper-layer application and a service process are run on the first CPU core; the peripherals include an information input device and an information output device; the second functional component includes a second PM module and an RPM module; the controller is connected to the second PM module and the RPM module, and the second PM module is connected to the first CPU core and the RPM module;
[0017] The controller controls the first functional component to shut down, including:
[0018] The controller controls the second PM module to perform a first suspension operation; the first suspension operation includes: controlling the upper layer application and the service process to suspend, and after the upper layer application and the service process are suspended, sequentially controlling the peripheral device to shut down and the driver to suspend, and controlling the RPM module to shut down the QNX operating system, the first CPU core, the IP core, the active crystal oscillator and the first voltage regulator;
[0019] The controller controls the first functional component to start, including:
[0020] The controller controls the RPM module to perform a first wake-up operation, wherein the first wake-up operation includes: starting the first CPU core, the QNX operating system, the IP core, the active crystal oscillator and the first voltage regulator, controlling the second PM module to control the driver and the peripheral startup in sequence, and controlling the upper-layer application and service process startup after starting the peripheral.
[0021] Optionally, the first functional component includes a first PM module and a second CPU core, and an open source operating system runs on the second CPU core;
[0022] The controller controls the first functional component to shut down, including:
[0023] The controller controls the first PM module to perform a second suspension operation, wherein the second suspension operation includes: shutting down the open source operating system, the second CPU core, and the first PM module;
[0024] The controller controls the first functional component to start, including:
[0025] The controller controls the second CPU core and the first PM module to start;
[0026] The controller controls the open source operating system to start.
[0027] Optionally, the open source operating system includes a system kernel, an application layer and an intermediate service layer;
[0028] The shutting down the open source operating system includes:
[0029] Suspending the application layer and the intermediate service layer;
[0030] Controlling the system kernel to shut down after completing data storage, process shutdown, deactivation of associated devices of the open source operating system, deactivation of the virtual CPU, and disabling of the interrupt request IRQ;
[0031] The controller controls the start-up of the open source operating system, including:
[0032] The controller controls the system kernel to start;
[0033] The controller controls the system kernel to start the process, enable the associated device, enable the virtual CPU, and enable the IRQ;
[0034] The controller controls the second PM module to control the operation of the application layer and the intermediate service layer.
[0035] Optionally, the target condition further includes: the duration of shutting down the first functional component does not reach a target duration, and the method further includes:
[0036] When the duration of the first functional component being turned off reaches the target duration, the controller controls the second functional component to be turned off.
[0037] On the other hand, a vehicle cockpit system is provided, the vehicle cockpit system comprising: a controller, a first functional component and a second functional component, the controller connecting the first functional component and the second functional component; the controller is used to:
[0038] During the operation of the first functional component and the second functional component, if a shutdown instruction for the vehicle cabin system is received, a first control operation is performed, and the first control operation includes: controlling the first functional component to be shut down;
[0039] determining whether a target condition is met, the target condition comprising: receiving a start instruction for the vehicle cabin system;
[0040] When the target condition is met, a second control operation is performed, where the second control operation includes: controlling the first functional component to start.
[0041] Optionally, the first functional component includes at least one of a first central processing unit CPU core, a second CPU core, a first power management PM module, a peripheral, an intellectual property IP core, an active crystal oscillator and a first voltage regulator;
[0042] The second functional component includes: at least one of a second PM module, a bus, a memory unit, a resource power management RPM module, and a second voltage regulator;
[0043] The first CPU core runs a QNX operating system, the second CPU core runs an open source operating system, the first PM module is connected to the second CPU core, the second PM module is connected to the first CPU core, and the peripherals include an information input device and an information output device.
[0044] Optionally, the second functional component includes: a bus, a memory unit and an RPM module;
[0045] The first control operation further includes: controlling the clock frequency of the bus to decrease, and after the clock frequency is decreased, controlling the voltage on the memory unit and the RPM module to decrease;
[0046] The second control operation further includes: controlling the voltage to increase, and after the voltage is increased, controlling the clock frequency to increase.
[0047] Optionally, the first functional component includes a first CPU core, peripherals, an IP core, an active crystal oscillator and a first voltage regulator; a QNX operating system, a driver, an upper-layer application and a service process are run on the first CPU core; the peripherals include an information input device and an information output device; the second functional component includes a second PM module and an RPM module; the controller is connected to the second PM module and the RPM module, and the second PM module is connected to the first CPU core and the RPM module;
[0048] The controller is used to: control the second PM module to perform a first suspension operation; the first suspension operation includes: controlling the upper layer application and the service process to suspend, and after the upper layer application and the service process are suspended, sequentially controlling the peripheral device to shut down and the driver to suspend, and controlling the RPM module to shut down the QNX operating system, the first CPU core, the IP core, the active crystal oscillator and the first voltage regulator;
[0049] The controller is used to control the RPM module to perform a first wake-up operation, wherein the first wake-up operation includes starting the first CPU core, the QNX operating system, the IP core, the active crystal oscillator and the first voltage regulator, controlling the second PM module to control the driver and the peripheral to start in sequence, and controlling the upper-layer application and service process to start after starting the peripheral.
[0050] Optionally, the first functional component includes a first PM module and a second CPU core, and an open source operating system runs on the second CPU core;
[0051] The controller is used to: control the first PM module to perform a second suspension operation, wherein the second suspension operation includes: shutting down the open source operating system, the second CPU core and the first PM module;
[0052] The controller is used to: control the startup of the second CPU core and the first PM module; and control the startup of the open source operating system.
[0053] Optionally, the open source operating system includes a system kernel, an application layer and an intermediate service layer;
[0054] The shutting down the open source operating system includes:
[0055] Suspending the application layer and the intermediate service layer;
[0056] Controlling the system kernel to shut down after completing data storage, process shutdown, deactivation of associated devices of the open source operating system, deactivation of the virtual CPU, and disabling of the interrupt request IRQ;
[0057] The controlling the start-up of the open source operating system includes:
[0058] Controlling the system kernel to start up;
[0059] Control the system kernel to start the process, enable the associated device, enable the virtual CPU and enable the IRQ;
[0060] Control the second PM module to control the operation of the application layer and the intermediate service layer.
[0061] Optionally, the target condition further includes: if the duration of shutdown of the first functional component does not reach a target duration, the controller is further configured to:
[0062] When the duration of the first functional component being turned off reaches the target duration, the controller controls the second functional component to be turned off.
[0063] On the other hand, a vehicle cockpit system is provided, comprising: a controller and a memory, wherein the memory stores at least one program instruction, and the controller is used to execute the at least one program instruction to implement the vehicle cockpit system startup method described in the claim above.
[0064] On the other hand, a computer-readable storage medium is provided, in which a computer program is stored. The computer program is loaded and executed by a processor to implement the above-mentioned method for starting the vehicle cockpit system.
[0065] In another aspect, a computer program product comprising instructions is provided. When the computer program product is run on a computer, the computer is caused to execute the above-mentioned method for starting the vehicle cockpit system.
[0066] The beneficial effects of the technical solution provided by this application include at least:
[0067] In the present application, the vehicle cockpit system includes a first functional component and a second functional component. When the controller receives a shutdown instruction for the vehicle cockpit system, it can only control the first functional component to shut down, but not shut down the second functional component. In this way, when a startup instruction is received, the first functional component can be directly controlled to start, so that the vehicle cockpit system can be fully started, without all functional components having to perform the action from shutdown to startup, which can improve the startup speed of the vehicle cockpit system. BRIEF DESCRIPTION OF THE DRAWINGS
[0068] Figure 1 is a structural schematic diagram of a vehicle cockpit system provided in an embodiment of the present application;
[0069] Figure 2is a flow chart of a method for starting a vehicle cockpit system provided in an embodiment of the present application;
[0070] Figure 3 is a flow chart of a method for closing a vehicle cabin system provided in an embodiment of the present application;
[0071] Figure 4 is a simplified diagram of a closing process of a vehicle cabin system provided in an embodiment of the present application;
[0072] Figure 5 is a flow chart of another method for starting a vehicle cockpit system provided in an embodiment of the present application;
[0073] Figure 6 is a simplified diagram of a startup process of a vehicle cockpit system provided in an embodiment of the present application;
[0074] Figure 7 It is a startup timing diagram of various components during the startup process of a vehicle cabin system provided in an embodiment of the present application. DETAILED DESCRIPTION
[0075] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below with reference to the accompanying drawings.
[0076] With the development of electronic technology, the tide of smart cars is surging, including cockpit systems. The cockpit system needs to connect the instrument system and infotainment system to truly improve the intelligent performance of the whole vehicle and break the perception gap between users and smart cars. The current vehicle cockpit system has a slow startup speed, generally more than 20 seconds, resulting in a poor user experience.
[0077] The following embodiments of the present application provide a vehicle cockpit system and a startup method thereof, which can increase the startup speed of the vehicle cockpit system and improve the user experience.
[0078] Figure 1 Schematic diagram of the structure of a vehicle cockpit system provided by an embodiment of the present application. Figure 1 As shown, the vehicle cockpit system 10 may include a controller 101, a first functional component 102 and a second functional component 103, wherein the controller 101 is connected to the first functional component 102 and the second functional component 103. For example, the controller may be a microcontroller unit (MCU).
[0079] In the embodiment of the present application, the first functional component in the vehicle cockpit system may include at least one of a first central processing unit (CPU) core, a second CPU core, a first power management (PM) module, a peripheral, an intellectual property (IP) core, an active crystal oscillator (XO), and a first voltage regulator. Peripherals are also short for peripheral devices or external devices, and peripherals may include information input devices and information output devices. For example, peripherals may include microphones, speakers, cameras, and display screens. Figure 1 Taking the first functional component including all the above components as an example, the first functional component may also include only some of the above components, which is not limited in the embodiment of the present application. The second functional component may include: at least one of a second PM module, a bus, a memory unit, a resource power management (RPM) module and a second regulator. Figure 1 Taking the example that the second functional component includes all the above-mentioned components that it may include, the second functional component may also include only some of the above-mentioned components, which is not limited in the embodiments of the present application.
[0080] The vehicle cockpit system can realize the communication and interaction of instruments, in-vehicle infotainment (IVI) system, augmented reality head up display (ARHUD), co-pilot screen, rear display screen and air conditioning screen. The hardware part of the vehicle cockpit system may include a system on chip (SOC), and the software part may adopt a hypervisor solution. Hypervisor, also known as a virtual machine monitor, is an intermediate layer software running between a physical server and an operating system that allows multiple operating systems and applications to share a set of basic physical hardware. The vehicle cockpit system can integrate multiple operating systems using a virtual machine monitor solution. Optionally, only one operating system may be installed in the vehicle cockpit system, which is not limited in the embodiments of the present application.
[0081] For example, there may be two operating systems in the vehicle cockpit system, one operating system is an embedded real-time operating system, such as the QNX (Quick UNIX) system, and the QNX operating system is a non-open source operating system; the other operating system is an open source operating system, such as the open source operating system is an Android operating system. Optionally, the QNX operating system is the main operating system, and the open source operating system can be virtualized through a virtual machine monitor based on the QNX operating system. The operating system is a software system, and the operating system runs on a hardware module, such as the QNX operating system runs on the first CPU core, and the open source operating system runs on the second CPU core. The vehicle cockpit system may include multiple CPU cores, and the first CPU core and the second CPU core may be two different cores in the multiple CPU cores, or the first CPU core and the second CPU core may also be the same CPU core. The first PM module is connected to the second CPU core for power management of components related to the second CPU core; the second PM module is connected to the first CPU core. It should be noted that the CPU core described in the embodiment of the present application refers to the core of the processor at the hardware level; the operating system includes a system kernel, an intermediate service layer and an application layer, and the system kernel is the core of the operating system between software layers.
[0082] Optionally, the instrument domain in the vehicle cockpit system can work based on the QNX operating system, and the instrument domain can also integrate the display function of ARHUD. The IVI system can use an open source operating system, and the IVI system can support secondary screen display.
[0083] Figure 2 1 is a flow chart of a method for starting a vehicle cockpit system provided in an embodiment of the present application. Figure 2 As shown, the method may include:
[0084] Step 201: During the operation of the first functional component and the second functional component, if the controller receives a shutdown instruction for the vehicle cabin system, the controller executes a first control operation, which includes: controlling the first functional component to shut down.
[0085] For example, the shutdown instruction can be triggered by a user pressing a shutdown button in the vehicle cabin system, or after the vehicle is turned off. Optionally, the controller can receive the shutdown instruction via a controller area network (CAN) bus. Optionally, after the first functional component is turned off, the controller can also enter a sleep mode.
[0086] Step 202: The controller determines whether a target condition is met, where the target condition includes: receiving a start instruction for the vehicle cabin system.
[0087] For example, the start instruction may be triggered by a user pressing a power button in the vehicle cabin system, or after the vehicle is ignited.
[0088] Step 203: When the target condition is met, the controller executes a second control operation, and the second control operation includes: controlling the first functional component to start.
[0089] Optionally, the first functional component can be awakened by the second functional component, so that the first functional component can be quickly started by ensuring that the second functional component is started. In the embodiment of the present application, the vehicle cockpit system is turned on and off correspondingly. When the user triggers the vehicle cockpit system to be turned off, only some functional components can be turned off first, while some functional components are still active. When the user needs to start the vehicle cockpit system, the closed functional components can be directly started to start the entire vehicle.
[0090] In summary, in the vehicle cockpit system provided by the embodiment of the present application, when the controller receives a shutdown command for the vehicle cockpit system, it can only control the first functional component to shut down, but not shut down the second functional component. In this way, when receiving a startup command, the first functional component can be directly controlled to start, and the vehicle cockpit system can be fully started, without all functional components having to perform the action from shutting down to starting up, which can improve the startup speed of the vehicle cockpit system.
[0091] In the embodiment of the present application, the vehicle cockpit system turns off the first functional component based on the shutdown instruction, while the state in which the second functional component is not turned off can also be called a dormant state, or a state in which the first functional component and the second functional component are both started can be called a power-on state. In the embodiment of the present application, the time taken for the vehicle cockpit system to switch from the dormant state to the power-on state can be less than or equal to 5 seconds, and the vehicle cockpit system can be in a fully functional state after being powered on.
[0092] Optionally, in the embodiment of the present application, when the controller receives a shutdown instruction for the vehicle cabin system, it may not control the second functional component, so that the second functional component works normally according to the original working state. Alternatively, the controller may also perform certain controls on the second functional component based on the shutdown instruction to reduce the power consumption of the second functional component, but does not control its shutdown. By way of example, the second functional component includes: a bus, a memory unit, and an RPM module. The controller may also control the clock frequency of the bus to decrease based on the shutdown instruction, and control the voltage reduction on the memory unit and the RPM module. The voltage reduction can be performed after the clock frequency is reduced. In this way, the first control operation performed by the controller based on the shutdown instruction in the above step 201 also includes: controlling the clock frequency of the bus to decrease, and controlling the voltage reduction on the memory unit and the RPM module.
[0093] The bus may correspond to a minimum frequency that can ensure its operation, and the controller may control the clock frequency of the bus to be reduced to the minimum frequency. In the vehicle cockpit system, the memory unit and the RPM module may be powered by two terminals VDD_CX and VDD_MX respectively, and the controller may put the two terminal rails in the hold mode to ensure that the voltage of the memory unit and the RPM module is reduced. The hold mode is a mode that ensures that the internal memory can retain the contents stored therein during deep sleep at the lowest possible voltage level. Optionally, the memory unit may include a double data rate synchronous dynamic random access memory (DDR SDRAM). After the voltage of the memory unit is reduced, the memory unit may enter a self-refresh mode.
[0094] When the controller performs certain control on the second functional component based on the shutdown instruction, when the controller receives the startup instruction for the vehicle cockpit system, it can also perform corresponding control on the second functional component according to the startup instruction to restore the second functional component to a normal working state. For example, the controller can control the voltage increase on the memory unit and the RPM module based on the startup instruction, and control the clock frequency of the bus to increase. In an embodiment of the present application, the startup sequence of each component during the startup of the vehicle cockpit system can be opposite to the shutdown sequence during the shutdown of the vehicle cockpit system, and the components that are shut down first can be started later. For example, the voltage increase mentioned above can be performed after the clock frequency is increased. In this way, the second control operation performed by the controller based on the shutdown instruction in the above step 103 also includes: controlling the voltage increase on the memory unit and the RPM module, and controlling the clock frequency of the bus to increase.
[0095] In an embodiment of the present application, the controller can control all CPU cores, peripherals and IP cores to be powered off, control the active crystal oscillator to be turned off, and control all active power management integrated circuit (PowerManagement IC, PMIC) regulators to be turned off based on the shutdown instruction for the vehicle cockpit system, but keep a small number of regulators in an active state. For example, the regulator that is turned off is the first regulator, and the regulator that is retained in the active state is the second regulator. The controller also controls the clock frequency of the internal bus to be reduced to the lowest frequency, and the internal VDD_CX and VDD_MX rails are placed in a hold mode. In this way, the vehicle cockpit system can quickly achieve from suspend to startup through a small number of services that are not turned off. Among them, the state of the IP hardware register can be retained during the vehicle cockpit system is in a dormant state, allowing a quick exit from the STR state, so the startup of all IP cores is a hot start instead of a cold start, and the startup speed of the IP core is faster.
[0096] Optionally, in the embodiment of the present application, the controller may also perform corresponding control according to the shutdown duration of the first functional component. For example, the target condition in the above step 202 may also include that the duration of the first functional component being closed has not reached the target duration. In this way, when the shutdown duration of the first functional component has not reached the target duration, the controller only controls the startup of the first functional component based on the received startup instruction for the vehicle cockpit system. If the target duration can be one day, three days or seven days, the present application does not limit the specific target duration. Optionally, when the shutdown duration of the first functional component reaches the target duration, it can be considered that the vehicle has not been used for a long time. At this time, the controller can control the second functional component in the vehicle cockpit system to also shut down, so that the vehicle cockpit system changes from a dormant state to a completely closed state to reduce power waste.
[0097] The closing method and the starting method of the vehicle cockpit system are introduced below in conjunction with the accompanying drawings. The closing method can be a specific implementation of the above step 201, and the starting method can be a specific implementation of the above step 203. And below, the first functional component includes a first CPU core, a first PM module, a second CPU core, a first PM module, a peripheral, an IP core, an active crystal oscillator and a first voltage regulator, and the second functional component includes a second PM module and an RPM module as an example. The first CPU core can run a QNX operating system, a driver, an upper-layer application and a service process, and the second CPU core runs an open source operating system. Each operating system may include a system kernel, an intermediate service layer and an application layer. The driver may include all device drivers in the vehicle cockpit system, and the service process and the upper-layer application may be located in the intermediate service layer and the application layer of the QNX operating system, respectively. The controller may be connected to the second PM module and the RPM module, and the second PM module is connected to the first CPU core and the RPM module.
[0098] For example, during the shutdown process of the vehicle cockpit system, the open source operating system and its related components may be shut down first, and then the QNX operating system and other components may be shut down. Figure 3 is a flow chart of a method for closing a vehicle cabin system provided in an embodiment of the present application. The method can be used for Figure 1 The vehicle cockpit system shown in FIG. Figure 3 As shown, the method may include:
[0099] Step 301: After receiving a shutdown instruction for the vehicle cabin system, the controller controls the first PM module to perform a second suspension operation, where the second suspension operation includes: shutting down the open source operating system, the second CPU core, and the first PM module.
[0100] Shutting down the open source operating system may include: suspending the application layer and the intermediate service layer of the open source operating system; controlling the system kernel of the open source operating system to shut down after completing data storage, process shutdown (freeze all processes), deactivation of associated devices of the open source operating system (suspend all devices), deactivation of virtual CPUs (suspend all vCPUs), and disabling of interrupt requests (Interrupt Request, IRQ) (Disable IRQ). For example, the data storage may be a synchronization file (sync FS).
[0101] Step 302: The controller controls the second PM module to perform a first suspension operation, wherein the first suspension operation includes: controlling the upper-layer applications and service processes running in the first CPU core to suspend, and after the upper-layer applications and service processes are suspended, controlling the peripherals to shut down and the driver to suspend in sequence, and controlling the RPM module to shut down the QNX operating system, the first CPU core, the IP core, the active crystal oscillator, and the first voltage regulator.
[0102] Optionally, the process of shutting down the QNX operating system may be similar to the process of shutting down the open source operating system. For example, in the process of shutting down the QNX operating system, the application layer and the intermediate service layer of the QNX operating system may be shut down first, and then the system kernel of the QNX operating system may be controlled to shut down.
[0103] In the embodiment of the present application, each module can be gradually closed from the upper layer to the bottom layer, such as closing the peripherals and drivers after closing the upper layer application and service process based on the QNX operating system, and then closing the QNX operating system and the first CPU core, IP core, active crystal oscillator and the first voltage regulator. In this way, it is possible to avoid directly closing the bottom layer module, which may cause the loss of data corresponding to the upper layer module, and ensure that the vehicle cockpit system has a high information integrity when it is closed. It should be noted that the above process is described by taking the first CPU core and the second CPU core as two different CPU cores as an example. If the first CPU core and the second CPU core are the same core, the second CPU core may not be closed in step 301.
[0104] The above content is introduced by taking the vehicle cockpit system including two operating systems as an example. Optionally, the vehicle cockpit system may also include only one system, such as only including the QNX operating system, or only including the open source operating system. When only the QNX operating system is included, the above step 301 may not be performed. When only the open source operating system is included, the closing action of the components of the QNX operating system in the above step 302 may not be performed, such as the action of closing the upper-layer application and service process of the QNX operating system, and the action of closing the QNX operating system and the first CPU core.
[0105] Figure 4 is a simplified diagram of a closing process of a vehicle cabin system provided in an embodiment of the present application, Figure 4 The interaction sequence between the modules related to the two operating systems in the vehicle cockpit system is illustrated by the numbers s1 to s15, and each number may correspond to one of the following steps. Figure 4 As shown, the QNX operating system may include a virtual device (VirtualDevice, vdev) input module, and the QNX operating system uses this module to transmit signals with the open source operating system. Figure 4 As shown, the implementation process of the above steps 301 and 302 may include:
[0106] s1. After receiving the shutdown command for the vehicle cabin system, the controller sends a suspend command to the first PM module. For example, the suspend command can be sent via a serial peripheral interface (SPI) or a general-purpose input / output (GPIO) interface. The first PM module can also be called a PM module of the QNX operating system. Figure 4 , a controller (such as an MCU) can receive a shutdown instruction from the CAN bus, which can also be called a sleep request.
[0107] s2. The first PM module may send a suspend instruction to the virtual device input module. The suspend instruction may include virtio-key. The subsequent open source operating system may be suspended based on the suspend instruction.
[0108] s3. The virtual device input module sends a power off key to the virtual input driver (virtio input driver) module.
[0109] s4. The virtual input driver module may forward the power supply stop instruction to the second PM module through the vehicle hardware abstraction layer (HAL).
[0110] s5. The second PM module broadcasts a message indicating entering the suspended state to the application layer and the intermediate service layer (apps / services) of the open source operating system. The application layer and the intermediate service layer can enter the suspended state based on the received suspension instruction.
[0111] s6. After entering the suspended state, the application layer and the intermediate service layer feed back a message that they have entered the suspended state to the second PM module.
[0112] s7. The second PM module sends a suspend request to the system kernel (which may be Linux Kernel) of the open source operating system.
[0113] s8. The system kernel of the open source operating system performs actions such as data storage, process shutdown, deactivation of the associated devices of the open source operating system, deactivation of the virtual CPU, and disabling of interrupt requests. After that, the system kernel can shut down automatically and stop running. At this time, the shutdown of the open source operating system is completed, and the power status of the open source operating system can be set to 0.
[0114] s9. The first PM module detects that the power state of the open source operating system becomes 0.
[0115] s10. The first PM module suspends upper-layer applications and service processes running on the first CPU core, that is, upper-layer applications and service processes based on the QNX operating system.
[0116] s11. The first PM module turns off a peripheral device, such as a display screen.
[0117] s12. The first PM module suspends all device drivers.
[0118] s13. The first PM module notifies the RPM module to enter the STR mode.
[0119] s14, the RPM module shuts down the QNX operating system, the first CPU core, the IP core, the active crystal oscillator, and the first voltage regulator. The RPM module can also shut down the clock. Figure 4 Only the clock / PMIC / CPU core are used to represent the components with the RPM module turned off.
[0120] s15, the RPM module notifies the MCU through the GPIO interface that the vehicle cockpit system has completed entering the STR mode. After that, the MCU can enter the sleep mode.
[0121] In the embodiment of the present application, the vehicle cabin system can be closed through the above-mentioned process s1 to s15.
[0122] During the startup process of the vehicle cockpit system, the QNX operating system and its related components may be started first, and then the open source operating system and its related components may be started. The startup process of the vehicle cockpit system corresponds to the above shutdown process, and the startup order of each component may be opposite to the shutdown order. Figure 5 is a flowchart of another method for starting a vehicle cockpit system provided in an embodiment of the present application. The method can be used in the above Figure 1 The vehicle cockpit system shown in FIG. Figure 5 As shown, the method may include:
[0123] Step 501, the controller controls the RPM module to perform a first wake-up operation, the first wake-up operation includes: starting the first CPU core, QNX operating system, IP core, active crystal oscillator and first voltage regulator, controlling the second PM module to control the driver and peripheral startup in turn, and controlling the second PM module to control the upper application and service process startup after starting the peripheral.
[0124] When the first CPU core is started, the QNX operating system may be started by default. In the embodiment of the present application, the first CPU core may be directly started without performing the operation of starting the QNX operating system separately.
[0125] Step 502: The controller controls the second CPU core and the first PM module to start.
[0126] Step 503: The controller controls the open source operating system to start.
[0127] Among them, controlling the startup of the open source operating system may include: controlling the startup of the system kernel of the open source operating system; controlling the system kernel to enable resources that are disabled during the shutdown process, such as starting processes (Un-Freeze processes), enabling associated devices of the open source operating system (Device resume), enabling virtual CPU (Enable vcpu) and enabling IRQ (Enableirqs); and controlling the second PM module to control the operation of the application layer and the intermediate service layer.
[0128] Optionally, the process of starting the QNX operating system can be similar to the process of starting the open source operating system. For example, in the process of starting the QNX operating system, the system kernel of the QNX operating system can be started first, and then the application layer and the intermediate service layer of the QNX operating system can be started. In the embodiment of the present application, each module can be started step by step from the bottom layer to the upper layer. It should be noted that the above process is described by taking the first CPU kernel and the second CPU kernel as two different CPU kernels as an example. If the first CPU kernel and the second CPU kernel are the same kernel, the second CPU kernel may no longer be started in step 502.
[0129] The above content is introduced by taking the vehicle cockpit system including two operating systems as an example. Optionally, the vehicle cockpit system may also include only one system, such as only including the QNX operating system, or only including the open source operating system. When only the QNX operating system is included, the above steps 502 and 503 may not be performed. When only the open source operating system is included, the startup action of the components of the QNX operating system in the above step 501 may not be performed, such as the action of starting the upper-layer application and service process of the QNX operating system, and the action of starting the QNX operating system and the first CPU core.
[0130] Figure 6 is a simplified diagram of a startup process of a vehicle cockpit system provided in an embodiment of the present application, Figure 6 The interaction sequence between the modules related to the two operating systems in the vehicle cockpit system is illustrated by the numbers f1 to f15, and each number may correspond to one of the following steps. Figure 6 As shown, the implementation process of the above steps 501 to 503 may include:
[0131] f1. After receiving the startup command for the vehicle cockpit system, the controller sends a wake-up command to the RPM module. For example, the suspend command can be sent through the GPIO interface. Figure 6 , the controller (such as MCU) can receive a startup instruction from the CAN bus, which can also be called a wake-up signal.
[0132] f2, RPM module turns on the core power supply, controls the QNX operating system, the first CPU core, the IP core, the active crystal oscillator and the first voltage regulator to start. The RPM module can also start the clock. Figure 6 Only the components started by the RPM module are representatively illustrated through the clock / PMIC / CPU core.
[0133] f3. The RPM module sends a wake-up message to the MCU through the GPIO interface.
[0134] f4. The RPM module controls the second PM module to resume operation.
[0135] f5. The second PM module restores the device drivers in sequence.
[0136] f6. The second PM module controls the startup of peripherals, such as controlling the display screen to turn on the display again.
[0137] f7. The second PM module recovers the upper-layer applications and service processes based on the QNX system.
[0138] f8. The second PM module sends a wake-up instruction to the virtual device input module, where the wake-up instruction may include virtio-Key.
[0139] f9. The second PM module waits for the power state of the open source operating system to change to 1.
[0140] f10, the virtual device input module triggers the system kernel of the open source operating system, starts the process, starts the associated devices of the open source operating system, enables the virtual CPU, and enables the IRQ.
[0141] f11. The system kernel of the open source operating system sets the system power state to 1.
[0142] f12, the system kernel of the open source operating system recovers the system power state machine startup.
[0143] f13. The virtual device input module sends a wake-up instruction to the virtual input driver module, and the wake-up instruction may be a virtio resume Key.
[0144] f14. The virtual input driver module triggers the first PM module to resume operation through the vehicle HAL.
[0145] f15. The first PM module restores the upper-layer applications and service programs of the open source operating system.
[0146] In the embodiment of the present application, the vehicle cabin system can be started through the above-mentioned process f1 to f15.
[0147] Figure 7 1 is a startup sequence diagram of various components during the startup process of a vehicle cockpit system provided by an embodiment of the present application. Figure 7 As shown, when the user triggers the vehicle cockpit system to start, the CAN bus receives the command and is awakened, and this moment is recorded as 0 seconds. The CAN bus transmits the startup command to the controller MCU, and the MCU can recover in 200 milliseconds. Then the system kernel of the QNX operating system recovers in 1500 milliseconds, and the application layer and intermediate service layer of the QNX operating system recover in 500 milliseconds, so that the upper-layer applications and service processes based on the QNX operating system can resume operation. During the recovery of the upper-layer applications and service processes, the panoramic monitoring imaging system (Around View Monitor, AVM) of the vehicle cockpit system can be restored, such as the AVM recovery in the 2nd second of the entire startup process.
[0148] Afterwards, the open source operating system (such as the Android operating system) virtualized based on the QNX operating system in the vehicle cockpit system is started. The system kernel of the Android operating system is first restored in 200 milliseconds, and then the application layer and the intermediate service layer of the Android operating system are restored in 800 milliseconds, so that the upper-layer applications and service processes based on the Android operating system can resume operation. During the recovery process of the upper-layer applications and service processes of the Android operating system, the Bluetooth application in the vehicle cockpit system starts to reconnect, the Tbox (telematics box) application starts to reconnect, the navi application restores data, and the virtual reality technology (VirtualReality, VR) application restores data. Tbox is a car networking system, and navi is a navigation system. For example, in the entire startup process, the Bluetooth application starts to reconnect at 4.5 seconds, the Tbox application starts to reconnect at 4.6 seconds, the Navi application restores data at 4.7 seconds, and the VR application restores data at 4.9 seconds. The startup of the vehicle cockpit system can be completed in the 5th second. For example, the display of the human-machine interface (HMI) can be completed in the 5th second, such as the instrument panel display, central control display, secondary screen display and head-up display in the vehicle cockpit system.
[0149] After the vehicle cockpit system is started, Bluetooth reconnection can be performed at the 7th second, Tbox Transmission Control Protocol (TCP) reconnection can be performed at the 8th second, Navi application can be ready at the 10th second, and VR application can be ready at the 11th second.
[0150] In summary, in the vehicle cockpit system provided by the embodiment of the present application, when the controller receives a shutdown command for the vehicle cockpit system, it can only control the first functional component to shut down, but not shut down the second functional component. In this way, when receiving a startup command, the first functional component can be directly controlled to start, and the vehicle cockpit system can be fully started, without all functional components having to perform the action from shutting down to starting up, which can improve the startup speed of the vehicle cockpit system.
[0151] The embodiment of the present application provides a vehicle cockpit system, which may include a controller and a memory, wherein the memory is connected to the controller via a bus or other means, and at least one program instruction is stored in the memory, and the at least one program instruction is loaded and executed by the controller to implement the vehicle cockpit system startup method provided by the embodiment of the present application, such as Figure 2 , Figure 3 or Figure 5 The processor may include the controller described above.
[0152] The embodiment of the present application provides a computer-readable storage medium, in which a computer program is stored. The computer program is loaded by a processor and executes the method for starting the vehicle cockpit system provided in the above embodiment, such as Figure 2 , Figure 3 or Figure 5 The computer readable storage medium may be a read-only memory, a magnetic disk or an optical disk, etc.
[0153] The present application also provides a computer program product including instructions. When the computer program product is run on a computer, the computer executes the vehicle cockpit system startup method provided by the above method embodiment. Figure 2 , Figure 3 or Figure 5 Method example.
[0154] The embodiment of the present application further provides a vehicle, which may include a vehicle body and the above-mentioned vehicle cabin system. For example, the vehicle body may include a frame, a seat, a camera assembly, a distance measurement assembly, a brake pad, a speaker, a display, and a wiper.
[0155] It should be noted that the method embodiments provided in the embodiments of the present application can be referenced with the corresponding device embodiments, and the embodiments of the present application are not limited thereto. The sequence of the steps of the method embodiments provided in the embodiments of the present application can be appropriately adjusted, and the steps can also be increased or decreased accordingly according to the circumstances. Any technician familiar with the technical field can easily think of the changed methods within the technical scope disclosed in the present application, and they should be included in the protection scope of the present application, so they will not be repeated.
[0156] The term "at least one of A and B" in this application is merely a description of the association relationship of associated objects, indicating that three relationships may exist. For example, at least one of A and B may represent: A exists alone, A and B exist at the same time, B exists alone, and so on. In the embodiments of the present application, the terms "first", "second" and "third" are used for descriptive purposes only and are not to be understood as indicating or implying relative importance. The term "at least one" refers to one or more, and the term "multiple" refers to two or more, unless otherwise expressly defined. "Including" mentioned throughout the specification and claims is an open term and should be interpreted as "including but not limited to".
[0157] The above description is only an optional embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included in the protection scope of the present application.
Claims
1. A method for starting a vehicle cockpit system, characterized in that: The vehicle cabin system comprises: a controller, a first functional component and a second functional component, the controller connects the first functional component and the second functional component, and the method comprises: When the controller receives a shutdown instruction for the vehicle cabin system during the operation of the first functional component and the second functional component, the controller performs a first control operation, wherein the first control operation includes: controlling the first functional component to be shut down; The controller determines whether a target condition is satisfied, the target condition comprising: receiving a start instruction for the vehicle cabin system; When the target condition is met, the controller performs a second control operation, the second control operation comprising: controlling the first functional component to start; The first functional component includes a first CPU core, peripherals, an IP core, an active crystal oscillator and a first voltage regulator; the first CPU core runs a QNX operating system, a driver, an upper-layer application and a service process; the peripherals include an information input device and an information output device; the second functional component includes a second PM module and an RPM module; the controller is connected to the second PM module and the RPM module, and the second PM module is connected to the first CPU core and the RPM module; The controller controls the first functional component to shut down, including: The controller controls the second PM module to perform a first suspension operation; the first suspension operation includes: controlling the upper layer application and the service process to suspend, and after the upper layer application and the service process are suspended, sequentially controlling the peripheral device to shut down and the driver to suspend, and controlling the RPM module to shut down the QNX operating system, the first CPU core, the IP core, the active crystal oscillator and the first voltage regulator; The controller controls the first functional component to start, including: The controller controls the RPM module to perform a first wake-up operation, wherein the first wake-up operation includes: starting the first CPU core, the QNX operating system, the IP core, the active crystal oscillator and the first voltage regulator, controlling the second PM module to control the driver and the peripheral startup in sequence, and controlling the upper-layer application and service process startup after starting the peripheral.
2. The method according to claim 1, characterized in that: The second functional component also includes: a bus, a memory unit and an RPM module; The first control operation further includes: controlling the clock frequency of the bus to decrease, and after the clock frequency is decreased, controlling the voltage on the memory unit and the RPM module to decrease; The second control operation further includes: controlling the voltage to increase, and after the voltage is increased, controlling the clock frequency to increase.
3. The method according to any one of claims 1 to 2, characterized in that: The first functional component further includes a first PM module and a second CPU core, and an open source operating system runs on the second CPU core; The controller controls the first functional component to shut down, and further includes: The controller controls the first PM module to perform a second suspension operation, wherein the second suspension operation includes: shutting down the open source operating system, the second CPU core, and the first PM module; The controller controls the first functional component to start, and further includes: The controller controls the second CPU core and the first PM module to start; The controller controls the open source operating system to start.
4. The method according to claim 3, characterized in that The open source operating system includes a system kernel, an application layer and an intermediate service layer; The shutting down the open source operating system includes: Suspending the application layer and the intermediate service layer; Controlling the system kernel to shut down after completing data storage, process shutdown, deactivation of associated devices of the open source operating system, deactivation of the virtual CPU, and disabling of the interrupt request IRQ; The controller controls the start-up of the open source operating system, including: The controller controls the system kernel to start; The controller controls the system kernel to start the process, enable the associated device, enable the virtual CPU, and enable the IRQ; The controller controls the second PM module to control the operation of the application layer and the intermediate service layer.
5. The method according to claim 1 or 4, characterized in that: The target condition further includes: the duration of shutting down the first functional component does not reach the target duration, and the method further includes: When the duration of the first functional component being turned off reaches the target duration, the controller controls the second functional component to be turned off.
6. A vehicle cockpit system, characterized in that: The vehicle cockpit system includes: a controller, a first functional component and a second functional component, the controller is connected to the first functional component and the second functional component; the first functional component includes a first CPU core, peripherals, an IP core, an active crystal oscillator and a first voltage regulator; the first CPU core runs a QNX operating system, a driver, an upper-layer application and a service process; the peripherals include an information input device and an information output device; the second functional component includes a second PM module and an RPM module; the controller is connected to the second PM module and the RPM module, and the second PM module is connected to the first CPU core and the RPM module; The controller is used to: During the operation of the first functional component and the second functional component, if a shutdown instruction for the vehicle cabin system is received, a first control operation is performed, and the first control operation includes: controlling the first functional component to be shut down; determining whether a target condition is met, the target condition comprising: receiving a start instruction for the vehicle cabin system; When the target condition is met, executing a second control operation, the second control operation comprising: controlling the first functional component to start; The controller is used to: Control the second PM module to perform a first suspension operation; the first suspension operation includes: controlling the upper layer application and the service process to suspend, and after the upper layer application and the service process are suspended, sequentially controlling the peripheral device to shut down and the driver to suspend, and controlling the RPM module to shut down the QNX operating system, the first CPU core, the IP core, the active crystal oscillator and the first voltage regulator; Control the RPM module to perform a first wake-up operation, wherein the first wake-up operation includes: starting the first CPU core, the QNX operating system, the IP core, the active crystal oscillator, and the first voltage regulator, controlling the second PM module to sequentially control the driver and the peripheral startup, and controlling the second PM module to control the upper-layer application and service process startup after starting the peripheral.
7. A vehicle cockpit system, characterized in that: The vehicle cockpit system comprises: a controller and a memory, wherein the memory stores at least one program instruction, and the controller is used to execute the at least one program instruction to implement the vehicle cockpit system startup method according to any one of claims 1 to 5.
Citation Information
Patent Citations
Power consumption optimization method of SoC system and terminal
CN110399034A
Image processing system, intelligent cabin system, vehicle and image processing method
CN113163171A