Vehicle control apparatus

The vehicle control device efficiently executes services by utilizing processors and memory to manage service schedules and micro-services, addressing the challenge of service integration and passenger responsiveness in vehicle control systems.

WO2026034762A1PCT designated stage Publication Date: 2026-02-12LG ELECTRONICS INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2025/007400
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-08-09
Filing Date
2025-05-29
Publication Date
2026-02-12

AI Technical Summary

Technical Problem

Existing vehicle control devices face challenges in efficiently providing services that respond to vehicle passengers and occupants, particularly due to limitations in service execution and integration with a service-oriented architecture.

Method used

A vehicle control device equipped with processors and memory for executing services, including a service agent and scheduler, capable of generating time schedules, monitoring resource and status information, and controlling micro-services to ensure efficient execution and adaptation to service conditions.

Benefits of technology

Enables efficient execution of services tailored to vehicle occupants and supports a service-oriented architecture, allowing for real-time and non-real-time operation of micro-services, learning from behavioral patterns, and ensuring service verification and scalability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2025007400_12022026_PF_FP_ABST
    Figure KR2025007400_12022026_PF_FP_ABST
Patent Text Reader

Abstract

A vehicle control apparatus according to one embodiment of the present disclosure comprises a processor for executing in-vehicle services and a memory for storing data related to the services, wherein the processor: operates a service agent for executing a first service; and, on the basis of information in execution-related data of the first service from the service agent, operates a service scheduler for outputting time schedule information for execution at one or more nodes. Accordingly, services can be efficiently executed.
Need to check novelty before this filing date? Find Prior Art

Description

vehicle control unit

[0001] The present disclosure relates to a vehicle control device, and more particularly, to a vehicle control device capable of creating and executing a new service.

[0002] A vehicle is a device that allows the user to move in the desired direction. A representative example is an automobile.

[0003] Meanwhile, for the convenience of vehicle users, vehicle control devices are installed inside the vehicle.

[0004] The vehicle control device can perform various services within the vehicle based on sensor data from various sensor devices within the vehicle.

[0005] Meanwhile, there is a problem in that it is difficult to provide vehicle services that respond to vehicle passengers because services running in the vehicle are provided by vehicle manufacturers, etc.

[0006] The problem that the present disclosure seeks to solve is to provide a vehicle control device that can efficiently execute a service.

[0007] Another problem that the present disclosure seeks to solve is to provide a vehicle control device that can efficiently execute a service corresponding to a vehicle occupant.

[0008] Another challenge that the present disclosure seeks to address is to provide a vehicle control device capable of efficiently executing a service based on a service-oriented architecture.

[0009] In order to solve the above technical problem, a vehicle control device according to one embodiment of the present disclosure includes a processor for executing an in-vehicle service and a memory for storing data related to the service, wherein the processor executes a service agent for executing a first service and executes a service scheduler for outputting time schedule information for execution in at least one node based on information of execution-related data of the first service from the service agent.

[0010] Meanwhile, the processor can generate a time schedule table for execution on a node based on information of execution-related data of the first service, and output time schedule information based on the time schedule table.

[0011] Meanwhile, the processor can perform time scheduling for execution of the first service and execute a time trigger based on time schedule information.

[0012] Meanwhile, the processor can monitor at least one of resource information of each node or status information during real-time operation, and based on the monitoring, output updated time schedule information or control to perform degradation mode.

[0013] Meanwhile, the processor may execute a second service that is simpler than the first service, change resources, or modify configuration when performing degradation mode.

[0014] Meanwhile, a vehicle control device according to one embodiment of the present disclosure further includes a second processor, and the processor can output first time schedule information to the second processor based on information of execution-related data of the first service.

[0015] Meanwhile, a vehicle control device according to one embodiment of the present disclosure further includes a processor, a second processor, a signal processing device including a memory, and a second signal processing device including a third processor, wherein the processor can output second time schedule information to the third processor based on information of execution-related data of the first service.

[0016] Meanwhile, the second signal processing device further includes a neural processor, and the processor can output third time schedule information to the neural processor based on information of execution-related data of the first service.

[0017] Meanwhile, a vehicle control device according to one embodiment of the present disclosure further includes a signal processing device including a processor, a memory, and a second signal processing device including at least one processor, wherein the processor in the signal processing device can control some of a plurality of micro-services in the first service to be performed based on information of execution-related data of the first service, and other parts to be performed by the second signal processing device.

[0018] Meanwhile, the processor may execute an operating system different from that of the processor within the second signal processing unit.

[0019] Meanwhile, the processor may control some of the plurality of micro-services within the first service to be operated in real time, and the processor within the second signal processing device may control other some of the plurality of micro-services within the first service to be operated in non-real time.

[0020] Meanwhile, the processor can control the driving timing of some of the plurality of micro-services within the first service to precede the driving timing of some of the other plurality of micro-services within the first service that are executed within the processor within the second signal processing device.

[0021] Meanwhile, the processor can generate execution-related data of the first service based on a combination of multiple services.

[0022] Meanwhile, the processor may perform learning on at least one of a vehicle occupant's behavioral pattern, vehicle data, or vehicle surrounding data, and generate data related to the execution of the first service based on the learning.

[0023] Meanwhile, the first service includes multiple services, and the processor can set priorities for multiple services within the first service and control the execution of the first service based on the set priorities.

[0024] Meanwhile, execution-related data of the first service may include execution condition data and execution action data of the first service.

[0025] Meanwhile, the processor can perform verification of the first service, or, if verification of the first service cannot be performed, control to request verification of the first service from an external server.

[0026] Meanwhile, the processor can control execution of only a part of the first service or execution of a scalable service when only a part of the execution condition data of the first service is satisfied.

[0027] Meanwhile, a vehicle control device according to one embodiment of the present disclosure includes a first signal processing device having a processor and a memory, a second signal processing device electrically connected to the first signal processing device and having a second processor and a second memory, and a control device electrically connected to the second signal processing device and having a controller that receives a signal from a hardware switch or a sensor or controls at least one actuator, wherein the processor transmits an execution request for the first service to the second signal processing device when an execution condition for the first service is satisfied, and the second signal processing device can control the controller to output an operation on signal, an operation off signal, or an operation control signal to the actuator based on the execution request for the first service.

[0028] A vehicle control device according to one embodiment of the present disclosure includes a processor for executing an in-vehicle service and a memory for storing data related to the service, wherein the processor executes a service agent for executing a first service and, based on information regarding execution-related data of the first service from the service agent, executes a service scheduler for outputting time schedule information for execution in at least one node. Accordingly, the service can be efficiently executed. Meanwhile, a service corresponding to a vehicle occupant can be efficiently executed. In particular, a service based on a service-oriented architecture can be efficiently executed.

[0029] Meanwhile, the processor can generate a time schedule table for execution on the node based on information related to the execution of the first service, and output time schedule information based on the time schedule table. This enables efficient execution of the service.

[0030] Meanwhile, the processor can perform time scheduling for the execution of the first service based on time schedule information and execute a time trigger. This enables efficient execution of the service.

[0031] Meanwhile, the processor can monitor at least one of resource information or real-time status information of each node, and based on the monitoring, output updated time schedule information or control degradation mode execution. This enables efficient service execution.

[0032] Meanwhile, when performing degradation mode, the processor can execute a second service that is simpler than the first service, change resources, or modify configurations. This allows for efficient service execution.

[0033] Meanwhile, a vehicle control device according to one embodiment of the present disclosure further includes a second processor, and the processor can output first time schedule information to the second processor based on information related to the execution of the first service. Accordingly, the service can be efficiently executed.

[0034] Meanwhile, a vehicle control device according to one embodiment of the present disclosure further includes a processor, a signal processing device including a second processor and a memory, and a second signal processing device including a third processor, wherein the processor can output second time schedule information to the third processor based on information related to execution data of the first service. Accordingly, the service can be efficiently executed.

[0035] Meanwhile, the second signal processing device further includes a neural processor, and the processor can output third time schedule information to the neural processor based on information related to the execution of the first service. This enables efficient execution of the service.

[0036] Meanwhile, a vehicle control device according to one embodiment of the present disclosure further includes a signal processing device including a processor and a memory, and a second signal processing device including at least one processor, wherein the processor in the signal processing device can control the execution of some of the plurality of microservices within the first service based on information related to execution data of the first service, and perform other parts in the second signal processing device. Accordingly, the service can be efficiently executed.

[0037] Meanwhile, the processor can run an operating system different from that of the processor within the second signal processing unit. This allows for efficient execution of services.

[0038] Meanwhile, the processor controls some of the multiple microservices within the first service to operate in real time, while the processor within the second signal processing unit controls other of the multiple microservices within the first service to operate in non-real time. This enables efficient service execution.

[0039] Meanwhile, the processor can control the startup timing of some of the plurality of microservices within the first service to precede the startup timing of other of the plurality of microservices within the first service executed within the processor within the second signal processing unit. Accordingly, the service can be executed efficiently.

[0040] Meanwhile, the processor can generate execution-related data for the first service based on multiple service combinations. This allows for the creation and efficient execution of new services.

[0041] Meanwhile, the processor can perform learning on at least one of the vehicle occupant's behavioral patterns, vehicle data, or vehicle surrounding data, and generate data related to the execution of the first service based on the learning. This enables the creation and efficient execution of new services.

[0042] Meanwhile, the first service includes multiple services, and the processor can set priorities for the multiple services within the first service and control the execution of the first service based on the set priorities. This enables the creation and efficient execution of new services.

[0043] Meanwhile, the execution-related data for the first service may include execution condition data and execution action data for the first service. This allows for efficient execution of the service.

[0044] Meanwhile, the processor can perform verification of the first service, or, if verification of the first service is not possible, request verification of the first service from an external server. This allows for efficient service execution.

[0045] Meanwhile, the processor can control the execution of only a portion of the first service or the execution of a scalable service if only some of the execution condition data for the first service are met. This allows for efficient execution of the service.

[0046] Meanwhile, a vehicle control device according to one embodiment of the present disclosure comprises a first signal processing device having a processor and a memory, a second signal processing device electrically connected to the first signal processing device and having a second processor and a second memory, and a control device electrically connected to the second signal processing device and having a controller that receives a signal from a hardware switch or a sensor or controls at least one actuator, wherein the processor transmits an execution request for the first service to the second signal processing device when an execution condition for the first service is satisfied, and the second signal processing device can control the controller to output an operation on signal, an operation off signal, or an operation control signal to the actuator based on the execution request for the first service. Accordingly, the service can be efficiently executed.

[0047] Figure 1 is a drawing showing an example of the exterior and interior of a vehicle.

[0048] Figure 2 is a drawing showing an example of the architecture of a vehicle control device.

[0049] Figure 3a is a drawing showing an example of the arrangement of displays inside a vehicle.

[0050] Figure 3b is a drawing showing another example of the arrangement of displays inside a vehicle.

[0051] FIG. 4 is an example of an internal block diagram of a vehicle control device according to an embodiment of the present disclosure.

[0052] Figures 5a to 5d are drawings showing various examples of vehicle control devices.

[0053] FIG. 6 is an example of a block diagram of a vehicle control device according to an embodiment of the present disclosure.

[0054] FIG. 7a is an example of an operational configuration diagram of a central signal processing device according to an embodiment of the present disclosure.

[0055] FIG. 7b is an example of an operational configuration diagram of a region signal processing device according to an embodiment of the present disclosure.

[0056] FIG. 8 illustrates an example of execution of a vehicle service in a signal processing device according to an embodiment of the present disclosure.

[0057] Figures 9 and 10 are drawings referred to in the description of Figure 8.

[0058] FIG. 11a is an example of an internal block diagram of a vehicle control device related to the present disclosure.

[0059] Figure 11b is a drawing referenced in the description of Figure 11a.

[0060] FIG. 12a is an example of an internal block diagram of a vehicle control device according to an embodiment of the present disclosure.

[0061] Figure 12b is a drawing referenced in the description of Figure 12a.

[0062] FIG. 13 illustrates an example of the operation of a vehicle control device according to an embodiment of the present disclosure.

[0063] Figures 14a to 17b are drawings referenced in the description of Figure 13.

[0064] FIG. 18 illustrates another example of the operation of a vehicle control device according to an embodiment of the present disclosure.

[0065] Figures 19a to 21c are drawings referenced in the description of Figure 19.

[0066] Hereinafter, the present disclosure will be described in more detail with reference to the drawings.

[0067] The suffixes "module" and "part" used in the following description are given solely for the convenience of writing this specification and do not impart any particularly significant meaning or role to the components themselves. Therefore, the terms "module" and "part" may be used interchangeably.

[0068] Figure 1 is a drawing showing an example of the exterior and interior of a vehicle.

[0069] Referring to the drawing, the vehicle (200) is operated by a plurality of wheels (103FR, 103FL, 103RL, etc.) that rotate by a power source and a steering wheel (150) for controlling the direction of travel of the vehicle (200).

[0070] Meanwhile, the vehicle (200) may further be equipped with a camera (195) for capturing images of the front of the vehicle.

[0071] Meanwhile, the vehicle (200) may be equipped with multiple displays (180a, 180b) for displaying images, information, etc. inside.

[0072] In Fig. 1, a cluster display (180a) and an AVN (Audio Video Navigation) display (180b) are exemplified as multiple displays (180a, 180b). In addition, a HUD (Head Up Display) is also possible.

[0073] Meanwhile, the AVN (Audio Video Navigation) display (180b) may also be named a center information display.

[0074] Meanwhile, the vehicle (200) described in this specification may be a concept that includes all of a vehicle equipped with an engine as a power source, a hybrid vehicle equipped with an engine and an electric motor as a power source, and an electric vehicle equipped with an electric motor as a power source.

[0075] Figure 2 is a drawing showing an example of the architecture of a vehicle control device.

[0076] Referring to the drawing, the architecture (300a) of the vehicle control device can correspond to a zone-based architecture.

[0077] Accordingly, sensor devices and processors inside the vehicle may be placed in each of the plurality of zones (Z1 to Z4), and a signal processing device (170a) including a gateway (GWDa) may be placed in the central area of ​​the plurality of zones (Z1 to Z4).

[0078] Meanwhile, the signal processing device (170a) may further include, in addition to the gateway (GWDa), an autonomous driving control module (ACC), a cockpit control module (CPG), etc.

[0079] The gateway (GWDa) within the signal processing device (170a) may be an HPC (High Performance Computing) gateway.

[0080] That is, the signal processing device (170a) of FIG. 2 is an integrated HPC and can exchange data with an external communication module (not shown) or a processor (not shown) within a plurality of zones (Z1 to Z4).

[0081] Figure 3a is a drawing showing an example of the arrangement of displays inside a vehicle.

[0082] Referring to the drawing, the interior of the vehicle may be equipped with a cluster display (180a), an AVN (Audio Video Navigation) display (180b), a rear seat entertainment display (180c, 180d), a room mirror display (not shown), etc.

[0083] Figure 3b is a drawing showing another example of the arrangement of displays inside a vehicle.

[0084] A vehicle control device (100) according to an embodiment of the present disclosure may include a plurality of displays (180a to 180b), and a signal processing device (170) that performs signal processing for displaying images, information, etc. on the plurality of displays (180a to 180b) and outputs an image signal to at least one display (180a to 180b).

[0085] Among the plurality of displays (180a to 180b), the first display (180a) may be a cluster display (180a) for displaying driving status, operation information, etc., and the second display (180b) may be an AVN (Audio Video Navigation) display (180b) for displaying vehicle driving information, a navigation map, various entertainment information, or images.

[0086] The signal processing device (170) has a processor (175) therein and can execute a first virtual machine to a third virtual machine (not shown) on a hypervisor (not shown) within the processor (175).

[0087] A second virtual machine (not shown) can operate for the first display (180a), and a third virtual machine (not shown) can operate for the second display (180b).

[0088] Meanwhile, the first virtual machine (not shown) within the processor (175) can control the shared memory (508) based on the hypervisor (505) to be set for the same data transmission to the second virtual machine (not shown) and the third virtual machine (not shown). Accordingly, the same information or the same image can be displayed in synchronization on the first display (180a) and the second display (180b) within the vehicle.

[0089] Meanwhile, the first virtual machine (not shown) within the processor (175) shares at least a portion of data with the second virtual machine (not shown) and the third virtual machine (not shown) for data sharing processing. Accordingly, data can be shared and processed among multiple virtual machines for multiple displays within the vehicle.

[0090] Meanwhile, a first virtual machine (not shown) within a processor (175) may receive and process vehicle wheel speed sensor data, and transmit the processed wheel speed sensor data to at least one of a second virtual machine (not shown) or a third virtual machine (not shown). Accordingly, the vehicle wheel speed sensor data may be shared with at least one virtual machine.

[0091] Meanwhile, the vehicle control device (100) according to the embodiment of the present disclosure may further include a rear seat entertainment display (180c) for displaying driving status information, simple navigation information, various entertainment information, or images.

[0092] The signal processing device (170) can control the RSE display (180c) by executing a fourth virtual machine (not shown) in addition to the first virtual machine to the third virtual machine (not shown) on a hypervisor (not shown) within the processor (175).

[0093] Accordingly, it is possible to control various displays (180a to 180c) using one signal processing device (170).

[0094] Meanwhile, some of the multiple displays (180a~180c) may operate under Linux OS, while others may operate under Web OS.

[0095] The signal processing device (170) according to the embodiment of the present disclosure can control the same information or the same image to be displayed in synchronization on displays (180a to 180c) operating under various operating systems (OS).

[0096] Meanwhile, in FIG. 3b, a vehicle speed indicator (212a) and a vehicle interior temperature indicator (213a) are displayed on a first display (180a), a home screen (222) including a plurality of applications and a vehicle speed indicator (212b) and a vehicle interior temperature indicator (213b) are displayed on a second display (180b), and a second home screen (222b) including a plurality of applications and a vehicle interior temperature indicator (213c) are displayed on a third display (180c).

[0097] FIG. 4 is an example of an internal block diagram of a vehicle control device according to an embodiment of the present disclosure.

[0098] Referring to the drawings, a vehicle control device (100) according to an embodiment of the present disclosure may include an input unit (110), a communication unit (120) for communication with an external device, a plurality of communication modules (EMa to EMd) for internal communication, a memory (140), a signal processing unit (170), a plurality of displays (180a to 180c), an audio output unit (185), and a power supply unit (190).

[0099] A plurality of communication modules (EMa to EMd) can be arranged, for example, in a plurality of zones (Z1 to Z4) of FIG. 2, respectively.

[0100] Meanwhile, the signal processing device (170) may be equipped with a communication switch (736b) for data communication with each communication module (EM1 to EM4) within it.

[0101] Each communication module (EM1 to EM4) can perform data communication with multiple sensor devices (SN) or ECUs (770) or area signal processing devices (170Z).

[0102] Meanwhile, the plurality of sensor devices (SN) may include a camera (195), a lidar (196), a radar (197), or a position sensor (198).

[0103] The input unit (110) may be equipped with physical buttons, pads, etc. for button input, touch input, etc.

[0104] Meanwhile, the input unit (110) may be equipped with a microphone (not shown) for user voice input.

[0105] The communication unit (120) can exchange data wirelessly with a mobile terminal (600) or a server (400).

[0106] In particular, the communication unit (120) can wirelessly exchange data with the vehicle driver's mobile terminal. Various data communication methods are possible, such as Bluetooth, WiFi, WiFi Direct, and APiX.

[0107] The communication unit (120) can receive weather information, road traffic information, for example, TPEG (Transport Protocol Expert Group) information, from a mobile terminal (600) or a server (400). To this end, the communication unit (120) may be equipped with a mobile communication module (not shown).

[0108] A plurality of communication modules (EM1 to EM4) can receive sensor data, etc. from an ECU (770), a sensor device (SN), or an area signal processing device (170Z), and transmit the received sensor data to the signal processing device (170).

[0109] Here, the sensor data may include at least one of vehicle direction data, vehicle location data (GPS data), vehicle angle data, vehicle speed data, vehicle acceleration data, vehicle inclination data, vehicle forward / backward data, battery data, fuel data, tire data, vehicle lamp data, vehicle interior temperature data, and vehicle interior humidity data.

[0110] Such sensor data can be obtained from a heading sensor, a yaw sensor, a gyro sensor, a position module, a vehicle forward / backward sensor, a wheel sensor, a vehicle speed sensor, a body tilt detection sensor, a battery sensor, a fuel sensor, a tire sensor, a steering sensor by steering wheel rotation, a vehicle interior temperature sensor, a vehicle interior humidity sensor, etc.

[0111] Meanwhile, the position module may include a GPS module or a position sensor (198) for receiving GPS information.

[0112] Meanwhile, at least one of the plurality of communication modules (EM1 to EM4) can transmit location information data sensed by a GPS module or location sensor (198) to a signal processing device (170).

[0113] Meanwhile, at least one of the plurality of communication modules (EM1 to EM4) can receive vehicle front image data, vehicle side image data, vehicle rear image data, vehicle surrounding obstacle distance information, etc. from a camera (195), lidar (196), radar (197), etc., and transmit the received information to a signal processing device (170).

[0114] The memory (140) can store various data for the overall operation of the vehicle control device (100), such as a program for processing or controlling the signal processing device (170).

[0115] For example, the memory (140) may store data regarding a hypervisor, a first virtual machine, a third virtual machine, or the like, for execution within the processor (175).

[0116] The audio output unit (185) converts an electric signal from the signal processing device (170) into an audio signal and outputs it. For this purpose, a speaker or the like may be provided.

[0117] The power supply unit (190) can supply power required for the operation of each component under the control of the signal processing device (170). In particular, the power supply unit (190) can receive power from a battery or the like inside the vehicle.

[0118] The signal processing device (170) controls the overall operation of each unit within the vehicle control device (100).

[0119] For example, the signal processing device (170) may include a processor (175) that performs signal processing for a vehicle display (180a, 180b).

[0120] The processor (175) can execute a first virtual machine to a third virtual machine (not shown) on a hypervisor (not shown) within the processor (175).

[0121] Among the first virtual machine to the third virtual machine (not shown), the first virtual machine (not shown) may be named a server virtual machine, and the second virtual machine to the third virtual machine (not shown) may be named a guest virtual machine.

[0122] For example, a first virtual machine (not shown) within a processor (175) may receive, process, or output sensor data from a plurality of sensor devices, such as vehicle sensor data, location information data, camera image data, audio data, or touch input data.

[0123] In this way, by performing most of the data processing in the first virtual machine (not shown), data sharing in a 1:N manner becomes possible.

[0124] As another example, a first virtual machine (not shown) can directly receive and process CAN data, Ethernet data, audio data, radio data, USB data, and wireless communication data for a second virtual machine or a third virtual machine (not shown).

[0125] And, the first virtual machine (not shown) can transmit processed data to the second virtual machine or the third virtual machine (not shown).

[0126] Accordingly, among the first virtual machine to the third virtual machine (not shown), only the first virtual machine (not shown) receives sensor data, communication data, or external input data from multiple sensor devices and performs signal processing, thereby reducing the signal processing burden on other virtual machines, enabling 1:N data communication, and enabling synchronization when sharing data.

[0127] Meanwhile, the first virtual machine (not shown) can control the second virtual machine (not shown) and the third virtual machine (not shown) to share the same data by writing data to the shared memory (508).

[0128] For example, a first virtual machine (not shown) can record vehicle sensor data, the location information data, the camera image data, or the touch input data in shared memory (508) and control the same data to be shared with a second virtual machine (not shown) and a third virtual machine (not shown). Accordingly, data sharing in a 1:N manner becomes possible.

[0129] Ultimately, by performing most of the data processing on the first virtual machine (not shown), data sharing in a 1:N manner becomes possible.

[0130] Meanwhile, the first virtual machine (not shown) within the processor (175) can control the shared memory (508) based on the hypervisor (505) to be set for the same data transmission to the second virtual machine (not shown) and the third virtual machine (not shown).

[0131] Meanwhile, the signal processing device (170) can process various signals such as audio signals, video signals, and data signals. To this end, the signal processing device (170) can be implemented in the form of a system on chip (SOC).

[0132] Meanwhile, the signal processing device (170) in the display device (100) of FIG. 4 may be the same as the signal processing device (170, 170a1, 170a2) of the vehicle control device of FIG. 5a or lower.

[0133] Figures 5a to 5d are drawings showing various examples of vehicle control devices.

[0134] FIG. 5a illustrates an example of a vehicle control device according to an embodiment of the present disclosure.

[0135] Referring to the drawing, a vehicle control device (600a) according to an embodiment of the present disclosure includes a signal processing device (170a1, 170a2) and a plurality of area signal processing devices (170Z1 to 170Z4).

[0136] Meanwhile, in the drawing, two signal processing devices (170a1, 170a2) are exemplified, but this is for backup purposes, etc., and one is also possible.

[0137] Meanwhile, the signal processing device (170a1, 170a2) may also be named an HPC (High Performance Computing) signal processing device.

[0138] Multiple area signal processing devices (170Z1 to 170Z4) are arranged in each area (Z1 to Z4) and can transmit sensor data to signal processing devices (170a1, 170a2).

[0139] The signal processing device (170a1, 170a2) receives data via a wire from multiple area signal processing devices (170Z1 to 170Z4) or a communication device (120).

[0140] In the drawing, data is exchanged based on wired communication between a signal processing device (170a1, 170a2) and multiple area signal processing devices (170Z1 to 170Z4), and the signal processing device (170a1, 170a2) and the server (400) exchange data based on wireless communication. However, data may be exchanged based on wireless communication between a communication device (120) and a server (400), and the signal processing device (170a1, 170a2) and the communication device (120) may exchange data based on wired communication.

[0141] Meanwhile, data received by the signal processing device (170a1, 170a2) may include camera data or sensor data.

[0142] For example, sensor data within a vehicle may include at least one of vehicle wheel speed data, vehicle direction data, vehicle location data (GPS data), vehicle angle data, vehicle speed data, vehicle acceleration data, vehicle inclination data, vehicle forward / backward data, battery data, fuel data, tire data, vehicle lamp data, vehicle interior temperature data, vehicle interior humidity data, vehicle exterior radar data, and vehicle exterior lidar data.

[0143] Meanwhile, camera data may include vehicle exterior camera data and vehicle interior camera data.

[0144] Meanwhile, the signal processing device (170a1, 170a2) can execute multiple virtual machines (620, 630, 640) based on safety standards.

[0145] In the drawing, it is illustrated that a processor (175) within a signal processing device (170a) executes a hypervisor (505) and, on the hypervisor (505), executes first to third virtual machines (620 to 640) according to an automotive safety integrity level (Automotive SIL; ASIL).

[0146] The first virtual machine (620) may be a virtual machine corresponding to Quality Management (QM), which is the lowest safety level in the Automotive Safety Integrity Level (ASIL) and is a non-enforceable grade.

[0147] The first virtual machine (620) can execute an operating system (622), a container runtime (624) on the operating system (622), and containers (627, 629) on the container runtime (624).

[0148] The second virtual machine (630) may be a virtual machine corresponding to ASIL A or ASIL B, in which the sum of severity, exposure, and controllability is 7 or 8 in the automotive safety integrity level (ASIL).

[0149] The second virtual machine (630) can execute an operating system (632), a container runtime (634) on the operating system (632), and containers (637, 639) on the container runtime (634).

[0150] The third virtual machine (640) may be a virtual machine corresponding to ASIL C or ASIL D, in which the sum of severity, exposure, and controllability is 9 or 10 in the automotive safety integrity level (ASIL).

[0151] Meanwhile, ASIL D can correspond to the grade that requires the highest safety level.

[0152] The third virtual machine (640) can run a safety operating system (642) and an application (645) on the operating system (642).

[0153] Meanwhile, the third virtual machine (640) may also execute a safety operating system (642), a container runtime (644) on the safety operating system (642), and a container (647) on the container runtime (644).

[0154] Meanwhile, unlike the drawing, the third virtual machine (640) can also be executed through a separate core rather than the processor (175). This will be described later with reference to FIG. 5b.

[0155] FIG. 5b illustrates another example of a vehicle control device according to an embodiment of the present disclosure.

[0156] Referring to the drawing, a vehicle control device (600b) according to an embodiment of the present disclosure includes a signal processing device (170a1, 170a2) and a plurality of area signal processing devices (170Z1 to 170Z4).

[0157] The vehicle control device (600b) of FIG. 5b is similar to the vehicle control device (600a) of FIG. 5a, but the signal processing device (170a1) has some differences from the signal processing device (170a1) of FIG. 5a.

[0158] To describe the difference, the signal processing device (170a1) may include a processor (175) and a second processor (177).

[0159] The processor (175) within the signal processing unit (170a1) executes a hypervisor (505), and executes first and second virtual machines (620 to 630) on the hypervisor (505) according to the automotive safety integrity level (Automotive SIL; ASIL).

[0160] The first virtual machine (620) can execute an operating system (622), a container runtime (624) on the operating system (622), and containers (627, 629) on the container runtime (624).

[0161] The second virtual machine (630) can execute an operating system (632), a container runtime (634) on the operating system (632), and containers (637, 639) on the container runtime (634).

[0162] Meanwhile, the second processor (177) within the signal processing device (170a1) can execute a third virtual machine (640).

[0163] The third virtual machine (640) can execute a safety operating system (642), an auto-execution (645) on the operating system (642), and an application (645) on the auto-execution (645). That is, unlike FIG. 5A, an auto-execution (646) on the operating system (642) can be executed.

[0164] Meanwhile, the third virtual machine (640) may, similarly to FIG. 5a, execute a safety operating system (642), a container runtime (644) on the safety operating system (642), and a container (647) on the container runtime (644).

[0165] Meanwhile, the third virtual machine (640) requiring a high level of security is preferably executed on a second processor (177), which is a different core or different processor, unlike the first and second virtual machines (620 to 630).

[0166] Meanwhile, in the signal processing devices (170a1, 170a2) of FIGS. 5a and 5b, when the first signal processing device (170a) malfunctions, the second signal processing device (170a2), which is a backup device, can operate.

[0167] Alternatively, it is also possible for the signal processing devices (170a1, 170a2) to operate simultaneously, with the first signal processing device (170a) operating as the main device and the second signal processing device (170a2) operating as the sub device. This will be described with reference to FIGS. 5c and 5d.

[0168] FIG. 5c illustrates another example of a vehicle control device according to an embodiment of the present disclosure.

[0169] Referring to the drawing, a vehicle control device (600c) according to an embodiment of the present disclosure includes a signal processing device (170a1, 170a2) and a plurality of area signal processing devices (170Z1 to 170Z4).

[0170] Meanwhile, in the drawing, two signal processing devices (170a1, 170a2) are exemplified, but this is for backup purposes, etc., and one is also possible.

[0171] Meanwhile, the signal processing device (170a1, 170a2) may also be named an HPC (High Performance Computing) signal processing device.

[0172] Multiple area signal processing devices (170Z1 to 170Z4) are arranged in each area (Z1 to Z4) and can transmit sensor data to signal processing devices (170a1, 170a2).

[0173] The signal processing device (170a1, 170a2) receives data via a wire from multiple area signal processing devices (170Z1 to 170Z4) or a communication device (120).

[0174] In the drawing, data is exchanged based on wired communication between a signal processing device (170a1, 170a2) and multiple area signal processing devices (170Z1 to 170Z4), and the signal processing device (170a1, 170a2) and the server (400) exchange data based on wireless communication. However, data may be exchanged based on wireless communication between a communication device (120) and a server (400), and the signal processing device (170a1, 170a2) and the communication device (120) may exchange data based on wired communication.

[0175] Meanwhile, data received by the signal processing device (170a1, 170a2) may include camera data or sensor data.

[0176] Meanwhile, among the signal processing devices (170a1, 170a2), the processor (175) in the first signal processing device (170a1) can execute a hypervisor (505) and execute a safety virtualization machine (660) and a non-safety virtualization machine (670) on the hypervisor (505).

[0177] Meanwhile, among the signal processing devices (170a1, 170a2), the processor (175b) in the second signal processing device (170a2) executes the hypervisor (505b) and can execute only the safety virtualization machine (680) on the hypervisor (505).

[0178] In this way, since the processing for safety is separated between the first signal processing device (170a1) and the second signal processing device (170a2), it is possible to improve stability and processing speed.

[0179] Meanwhile, high-speed network communication can be performed between the first signal processing device (170a1) and the second signal processing device (170a2).

[0180] FIG. 5d illustrates another example of a vehicle control device according to an embodiment of the present disclosure.

[0181] Referring to the drawing, a vehicle control device (600d) according to an embodiment of the present disclosure includes a signal processing device (170a1, 170a2) and a plurality of area signal processing devices (170Z1 to 170Z4).

[0182] The vehicle control device (600d) of FIG. 5d is similar to the vehicle control device (600c) of FIG. 5c, but the second signal processing device (170a2) has some differences from the second signal processing device (170a2) of FIG. 5c.

[0183] The processor (175b) in the second signal processing device (170a2) of FIG. 5d executes a hypervisor (505b) and can execute a safety virtualization machine (680) and a non-safety virtualization machine (690) on the hypervisor (505).

[0184] That is, unlike FIG. 5c, the difference is that the processor (175b) within the second signal processing device (170a2) further executes a non-safety virtualization machine (690).

[0185] In this way, since the processing for safety and non-safety is separated into the first signal processing device (170a1) and the second signal processing device (170a2), it is possible to improve stability and processing speed.

[0186] FIG. 6 is an example of a block diagram of a vehicle control device according to an embodiment of the present disclosure.

[0187] Referring to the drawings, a vehicle control device (900) according to an embodiment of the present disclosure includes a signal processing device (170) and at least one display.

[0188] In the drawing, at least one display is illustrated, a cluster display (180a) and an AVN display (180b).

[0189] Meanwhile, the vehicle control device (900) may further include a plurality of area signal processing devices (170Z1 to 170Z4).

[0190] The signal processing device (170) at this time is a high-performance centralized signal processing and control device having multiple CPUs (175), GPUs (178), NPUs (179), etc., and may be called an HPC (High Performance Computing) signal processing device or a central signal processing device.

[0191] A plurality of area signal processing devices (170Z1 to 170Z4) and a signal processing device (170) are connected by wired cables (CB1 to CB4).

[0192] Meanwhile, multiple area signal processing devices (170Z1 to 170Z4) can be connected to each other with wired cables (CBa to CBd).

[0193] The wired cable (CBa~CBd) at this time may include a CAN communication cable, an Ethernet communication cable, or a PCI Express cable.

[0194] Meanwhile, a signal processing device (170) according to an embodiment of the present disclosure may be equipped with at least one processor (175, 178, 177) and a large-capacity storage device (925).

[0195] For example, a signal processing device (170) according to an embodiment of the present disclosure may include a central processor (175, 177), a graphics processor (178), and a neural processor (179).

[0196] Meanwhile, sensor data may be transmitted from at least one of the multiple area signal processing devices (170Z1 to 170Z4) to the signal processing device (170). In particular, the sensor data may be stored in a storage device (925) within the signal processing device (170).

[0197] The sensor data at this time may include at least one of camera data, lidar data, radar data, vehicle direction data, vehicle location data (GPS data), vehicle angle data, vehicle speed data, vehicle acceleration data, vehicle inclination data, vehicle forward / backward data, battery data, fuel data, tire data, vehicle lamp data, vehicle interior temperature data, and vehicle interior humidity data.

[0198] In the drawing, it is exemplified that camera data from a camera (195a) and lidar data from a lidar sensor (196) are input to a first area signal processing device (170Z1), and the camera data and lidar data are transmitted to a signal processing device (170) via a second area signal processing device (170Z2), a third area signal processing device (170Z3), etc.

[0199] Meanwhile, since the data read speed or write speed to the storage device (925) is faster than the network speed when sensor data is transmitted from at least one of the plurality of area signal processing devices (170Z1 to 170Z4) to the signal processing device (170), it is preferable that multi-path routing be performed so that a network bottleneck does not occur.

[0200] To this end, the signal processing device (170) according to the embodiment of the present disclosure can perform multi-path routing based on a Software Defined Network (SDN). Accordingly, a stable network environment can be secured when reading or writing data from the storage device (925). Furthermore, since data can be transmitted to the storage device (925) using multiple paths, the network configuration can be dynamically changed to transmit data.

[0201] Data communication between a plurality of area signal processing devices (170Z1 to 170Z4) and a signal processing device (170) in a vehicle control device (900) according to an embodiment of the present disclosure is preferably Peripheral Component Interconnect Express communication for high-bandwidth, low-latency communication.

[0202] FIG. 7a is an example of an operational configuration diagram of a central signal processing device according to an embodiment of the present disclosure.

[0203] Referring to the drawing, a central signal processing device (170) according to an embodiment of the present disclosure includes a processor (175).

[0204] The processor (175) within the central signal processing unit (170) can execute a hypervisor (505) or a container.

[0205] Meanwhile, the processor (175) can execute a domain based on a software defined vehicle (SDV) base on a hypervisor (505) or a container.

[0206] For example, the processor (175) can execute a communication domain (711), an OTA domain (721), a security domain (722), a diagnosis domain (723), and an orchestrator domain (732) on a hypervisor (505) or a container.

[0207] The communication domain (711) is a domain for internal communication and may include a SOME / IP (Scalable service-Oriented Middleware over IP) domain, a DDS domain, etc.

[0208] The OTA domain (721) is an update-related domain based on data reception from the server (400), and may include a master domain, a client domain, a module domain, etc.

[0209] The security domain (722) may include an IDS domain, an AUTH domain, a TEE domain, etc.

[0210] The diagnostic domain (723) may include a CAN domain, an Ethernet domain, a wireless domain, etc.

[0211] The orchestrator domain (732) may include a resource domain, a criticality domain, etc.

[0212] Meanwhile, the processor (175) can execute an SDV-based platform on each domain.

[0213] For example, the processor (175) may execute an SDV-based autonomous driving (AD) or advanced driver assistance system (ADAS) platform (715) on the communication domain (711).

[0214] Meanwhile, the autonomous driving (AD) or advanced driver assistance system (ADAS) platform (715) may include a platform such as a camera aggregator, sensor fusion, ADAS AI algorithm, or vision framework.

[0215] For example, the processor (175) can execute an SDV-based vehicle platform (725) on an OTA domain (721) and a security domain (722).

[0216] Meanwhile, the vehicle platform (725) may include an application store, car service, personalization, multimedia, BT / WiFi / UWB, phone projection, audio, or location platform.

[0217] For example, the processor (175) may execute an SDV-based screen sharing (729), HUD (727), or cluster (726) platform on the analysis domain (723).

[0218] Meanwhile, the processor (175) can execute a platform such as an SDV-based body service, chassis service, power train service, or Autosa Classic on the Orchestrator domain (732).

[0219] Meanwhile, the processor (175) can execute SDV experience or applications on the SDV base.

[0220] For example, the processor (175) may execute an autonomous driving (AD) application (179) or an ADAS application (178) on an autonomous driving (AD) or advanced driver assistance system (ADAS) platform (715).

[0221] Meanwhile, the processor (175) can execute an AR / MR application (741), a surround view application (742), an AI sound application (743), an IVI application (744), a vehicle content platform application (745), or a SW defned radio application (746) on a vehicle platform (725), screen sharing (729), HUD (727), or cluster (726).

[0222] Meanwhile, the processor (175) can execute a vehicle application (178), etc., on a platform such as a body service, a chassis service, a power train service, or an autos classic.

[0223] FIG. 7b is an example of an operational configuration diagram of a region signal processing device according to an embodiment of the present disclosure.

[0224] Referring to the drawing, the area signal processing device (170z) according to the embodiment of the present disclosure includes a processor (175z).

[0225] A processor (175z) within the domain signal processing device (170z) can execute a hypervisor (505z) or a container.

[0226] Meanwhile, the processor (175z) can execute an operating system (705) on a hypervisor (505z) or a container.

[0227] Meanwhile, the processor (175z) can execute a network domain (762) on the operating system (705).

[0228] Meanwhile, the network domain (762) may include a CAN, Ethernet, PCIe, ISN, or SDN domain.

[0229] Meanwhile, the processor (175z) can execute an AUTOSAR Adaptive (763), a gateway (764), or a PLC (765) platform on a network domain (762).

[0230] Meanwhile, the processor (175z) can execute a domain application (768), etc., on an AUTOSAR Adaptive (763), gateway (764), or PLC (765) platform.

[0231] FIG. 8 illustrates an example of execution of a vehicle service in a signal processing device according to an embodiment of the present disclosure.

[0232] Referring to the drawing, a signal processing device (170) according to an embodiment of the present disclosure includes a processor (175) and a memory (174).

[0233] Meanwhile, the signal processing device (170) according to the embodiment of the present disclosure may further include a second processor (178) and a neural processor (179).

[0234] Meanwhile, the processor (175) according to the embodiment of the present disclosure can execute a service agent (800) for executing a vehicle service. The service agent (800) at this time can be named PICCOLO.

[0235] For example, the service agent (800) can receive execution-related data for executing an SDV-based vehicle service and control the execution of the vehicle service based on the execution-related data.

[0236] Meanwhile, the service agent (800) can respond to the service orchestrator.

[0237] Meanwhile, the processor (175) according to the embodiment of the present disclosure may further execute a service scheduler (840) that exchanges data with a service agent (800) for executing a vehicle service. The service scheduler (840) at this time may be named TIMPANI.

[0238] Figures 9 and 10 are drawings referred to in the description of Figure 8.

[0239] Figure 9 illustrates an example of service execution based on the service agent of Figure 8.

[0240] Referring to the drawing, a processor (175) according to an embodiment of the present disclosure can execute a service agent (800), a service scheduler (840), a kernel (880), and a service container (890) for executing a vehicle service.

[0241] The service agent (800) can receive service execution related data in file format from outside or inside the vehicle, and output command data (cmd) to the outside based on the service execution related data.

[0242] For example, the service agent (800) can receive service execution related data in a YAML (YAML Ain't Markup Language) file format.

[0243] Meanwhile, the service agent (800) may include a parser (810) that interprets or parses data related to service execution, and a state manager (820) that transmits command data (cmd) to a workload orchestrator (870) to enable state transition by managing the difference between the current state and the desired state.

[0244] Meanwhile, the workload orchestrator (870) may be named Bluechi controller.

[0245] Meanwhile, the workload orchestrator (870) can control the execution of services interpreted by the service agent (800) through the real-time kernel (880) and the service container (890).

[0246] That is, the service container (890) can execute a service based on data from the service agent (800) or the service scheduler (840).

[0247] Meanwhile, the state manager (820) can receive result data from the workload orchestrator (870).

[0248] Meanwhile, the state manager (820) can transmit information (inf) of service execution related data interpreted by the parser (810) to the service scheduler (840) and receive error data from the service scheduler (840).

[0249] The service scheduler (840) may include a first service scheduler (850) that operates in direct connection with the service agent (800) and a second service scheduler (860) that operates as a node in indirect connection.

[0250] The first service scheduler (850) can create a schedule table based on information (inf) of service execution related data interpreted by the service agent (800), create schedule information based on the schedule table, and perform monitoring.

[0251] For example, a monitor (856) within a first service scheduler (850) can transmit result data of a monitored service to a state manager (820) within a service agent (800).

[0252] Meanwhile, schedule information generated by the first service scheduler (850) can be transmitted to the second service scheduler (860).

[0253] The real-time scheduler (862) within the second service scheduler (860) can output real-time scheduling information (config) for service execution in the real-time kernel (880) and service container (890) based on schedule information.

[0254] Meanwhile, the time trigger (864) within the second service scheduler (860) can output time trigger information (config) for service execution in the real-time kernel (880) and service container (890) based on schedule information.

[0255] Meanwhile, the monitor (865) within the second service scheduler (860) can collect result data on the system resource status of the node and the real-time operation status of the service, and transmit the result data (result) to the monitor (856) within the first service scheduler (850).

[0256] Fig. 10 illustrates an example of the internal configuration of the service agent of Fig. 8 or Fig. 9.

[0257] Referring to the drawing, a service agent (800) according to one embodiment of the present disclosure may include a parser (810), a gateway (840), a server (830), and a state manager (820).

[0258] Meanwhile, the service agent (800) may further include storage (850).

[0259] The parser (810) can receive execution-related data for SDV-based vehicle service execution and interpret or parse the service execution-related data.

[0260] Meanwhile, the parser (810) can receive service execution related data in a YAML (YAML Ain't Markup Language) file format and interpret or parse the service execution related data within the YAML file.

[0261] And, the parser (810) can transmit the interpreted or parsed data to the server (830) or register it as a resource in the storage (850).

[0262] Meanwhile, the parser (810) can store data required for future workload generation in storage (850).

[0263] Meanwhile, the parser (810) can perform conversion into a manifest corresponding to a workload orchestrator (870), which is a multi-node service controller.

[0264] For example, the parser (810) may receive a YAML file or other format manifest, which is an example of service execution related data, from an RPC sender (remote procedure call sender) (805) or a REST API.

[0265] The server (830) can receive parsing result data from the parser (810) and share the parsing result data with other modules. The server (830) at this time can be named an API server.

[0266] For example, the server (830) can separate the parsing result data from the parser (810) into condition data and action data and store them in storage (850).

[0267] Meanwhile, the server (830) can transmit a key value that can read condition data or action data, which is part of the parsing result data, from the storage (850) to the gateway (840).

[0268] Meanwhile, the server (830) can control to store some data or some status information for status management of the service agent (800) in the storage (850).

[0269] Meanwhile, the server (830) can support or request RPC (remote procedure call) and API for external communication.

[0270] Meanwhile, the server (830) may receive a direct request from the direct request unit (801) or a workload creation request from the workload creation request unit (803).

[0271] Meanwhile, the server (830) can transmit a received direct request or workload creation request to the workload orchestrator (870).

[0272] The gateway (840) can receive vehicle messages in various formats and determine the vehicle status based on the received vehicle messages.

[0273] Meanwhile, the gateway (840) can filter data within the received vehicle message and trigger an event based on the data to control the vehicle to be driven in response to a desired vehicle scenario.

[0274] Meanwhile, the gateway (840) can read condition data stored in the storage (850) based on the key value received from the server (830) and generate a filter based on the condition data.

[0275] Meanwhile, the gateway (840) can transmit a message for the vehicle sensor to the message sender (807).

[0276] Meanwhile, the filter can determine the status of the vehicle from the received vehicle message, for example, the DDS message, and continuously check whether the condition corresponding to the condition data is satisfied.

[0277] Meanwhile, the gateway (840) can transmit scenario information to the state manager (820) and delete the filter when a condition corresponding to the condition data is satisfied.

[0278] Meanwhile, the state manager (820) can perform the role of a node with the workload orchestrator (870).

[0279] For example, the state manager (820) can control the state transition to be performed by managing the difference between the current state and the desired state.

[0280] Meanwhile, the state manager (820) can request additional commands from the workload orchestrator (870) based on a direct request received from the server (830).

[0281] Meanwhile, when the state manager (820) receives scenario information that satisfies a condition from the gateway (840), it can set a key value based on the scenario information and read action data from the storage (850) based on the set key value.

[0282] Meanwhile, action data may include data indicating which workload container should be executed.

[0283] Meanwhile, the state manager (820) can read data required for workload generation stored in storage (850) by the parser (810) based on action data.

[0284] Meanwhile, the state manager (820) can transmit command data such as start, update, rollback, or terminate to the workload orchestrator (870) based on the data required for generating the received workload.

[0285] Meanwhile, the workload orchestrator (870) may execute a corresponding function or command or transmit it to a service container (890) based on command data such as start, update, rollback, or terminate from the state manager (820).

[0286] Meanwhile, storage (850) can store key values, and the key values ​​can be utilized in various services such as Kubernetes.

[0287] Meanwhile, storage (850) can store data required for workload generation by the parser (810).

[0288] Meanwhile, the storage (850) can store parsing result data from the parser (810). At this time, the storage (850) can store the parsing result data by separating it into condition data and action data.

[0289] FIG. 11a is an example of an internal block diagram of a vehicle control device related to the present disclosure.

[0290] Referring to the drawing, a vehicle control device (100x) related to the present disclosure includes a central signal processing device (170x), an area signal processing device (170zx), and a control device (1100).

[0291] A central signal processing unit (170x) related to the present disclosure may include a first processor (175x) and a first memory (174x). The first processor (175x) may execute an operating system (1105) and an HMI service (1102).

[0292] Meanwhile, the central signal processing unit (170x) and the area signal processing unit (170zx) can perform Ethernet communication.

[0293] The area signal processing device (170zx) related to the present disclosure may include a second processor (175zx) and a second memory (174zx). The second processor (175zx) may execute a domain (1108), an operating system (1107), and a CAN communication service (1106).

[0294] Meanwhile, the area signal processing device (170zx) and the control device (1100) can perform CAN communication.

[0295] A control device (1100) related to the present disclosure may include a controller (1230) and a memory (1234). The controller (1230) may execute an operating system (1236), actuator control (1235), and a vehicle service (1105) based on control logic.

[0296] Meanwhile, the vehicle service (1105) may include a first vehicle service (1106) and a second vehicle service (1117).

[0297] A control device (1100) related to the present disclosure can control a plurality of actuators (AT1 to ATn) or a plurality of sensor devices (SR1 to SRn) based on actuator control (1235) or vehicle service (1105).

[0298] According to the vehicle control device (100x) related to the present disclosure of FIG. 11a, in order to control a plurality of actuators (AT1 to ATn), a controller (1230) within the control device (1100) outputs a control signal.

[0299] Meanwhile, if it is necessary to control multiple actuators (AT1 to ATn) by updating them with a new service, it is necessary to update the data in the memory (1234).

[0300] In particular, when it is necessary to control multiple actuators (AT1 to ATn) by updating them with a new service, it is necessary to update data corresponding to the first vehicle service (1106) in the memory (1234), data corresponding to the second vehicle service (1117), or data corresponding to the actuator control (1235).

[0301] However, since the control device (1100) performs CAN communication with the area signal processing device (170zx), it may not be easy to receive update data from an external server (400) via the area signal processing device (170zx) and the central signal processing device (170x).

[0302] Additionally, due to limitations in the capacity of the third memory (1113) within the control device (1100), it may not be easy to store new service data or update data.

[0303] Ultimately, according to the vehicle control device (100x) related to the present disclosure of FIG. 11a, it may be difficult to operate a plurality of actuators (AT1 to ATn) based on a new vehicle service or an updated vehicle service.

[0304] In this disclosure, we propose a method for creating and executing a new service. This is described with reference to Figure 12a and below.

[0305] Figure 11b is a drawing referenced in the description of Figure 11a.

[0306] Referring to the drawings, a plurality of controllers (ECUa to ECUc) in a vehicle control device (100x) related to the present disclosure each receive a switching signal from a plurality of switches (SWa to SWc) and control each actuator (ATa to ATc) based on each switching signal.

[0307] According to this method, as the number of actuators (ATa to ATc) increases, there is a disadvantage in that the number of controllers (ECUa to ECUc) increases.

[0308] Accordingly, in this disclosure, a method for efficiently controlling multiple actuators using a controller is proposed. This is described with reference to FIG. 12a and below.

[0309] FIG. 12a is an example of an internal block diagram of a vehicle control device according to an embodiment of the present disclosure.

[0310] Referring to the drawings, a vehicle control device (100) according to one embodiment of the present disclosure includes a first signal processing device (170), a second signal processing device (170z) electrically connected to the first signal processing device (170), and a control device (1200) electrically connected to the second signal processing device (170z).

[0311] The first signal processing unit (170), which is a central signal processing unit, has a first processor (175) and a first memory (174).

[0312] The second signal processing device (170z), which is a domain signal processing device, has a second processor (175z) and a second memory (174z).

[0313] Meanwhile, the control device (1200) is electrically connected to the second signal processing device (170z) and receives a signal from a hardware switch (2312) or a sensor (SRm) or controls at least one actuator (ACT).

[0314] Meanwhile, the first processor (175) or the second processor (175z) controls the execution of a virtual switch service when the hardware switch (2312) fails, and outputs a virtual switch object corresponding to the virtual switch service to an electrically connected display (180), and when the virtual switch object is selected, controls the controller (2330) to output an operation on signal, an operation off signal, or an operation control signal to the actuator (ACT).

[0315] Accordingly, when a hardware device connected to the controller (2330) fails, a replacement service can be quickly executed. In particular, when a hardware device connected to the controller (2330) fails, a replacement service based on a service-oriented architecture can be quickly executed.

[0316] Meanwhile, the first memory (174) may include a change data area (SPA1) that stores data related to a virtual switch service.

[0317] Meanwhile, the first memory (174) may further include a fixed data area (SPA2) that stores data related to fixed services.

[0318] Meanwhile, the second memory (174z) may include a change data area (SPA3) that stores data related to a virtual switch service and a fixed data area (SPA4) that stores data related to a fixed service.

[0319] Meanwhile, the first signal processing device (170) and the second signal processing device (170z) can perform TSN (Time Sensitive Networking) communication based on Ethernet communication.

[0320] Meanwhile, it is preferable that the communication method between the second signal processing device (170z) and the control device (1200) is the same as the communication method between the first signal processing device (170) and the second signal processing device (170z).

[0321] For example, the communication method between the first signal processing device (170) and the second signal processing device (170z) may be TSN (Time Sensitive Networking) communication based on Ethernet communication.

[0322] Meanwhile, the control device (1200) can control a plurality of actuators (AT1 to ATn) or receive signals from a plurality of sensors (SR1 to SRn).

[0323] Meanwhile, the control device (1200) includes a memory (1234) in addition to the controller (1230).

[0324] Meanwhile, the memory (1234) may include a fixed data area that stores data related to the control of a plurality of actuators (AT1 to ATn) or data related to a plurality of sensors (SR1 to SRn).

[0325] That is, it is preferable that the memory (1234) not be provided with a change data area that stores data related to a new service or virtual switching service.

[0326] Meanwhile, the first processor (175) in the first signal processing device (170) according to the embodiment of the present disclosure can execute an operating system (1205) and execute an HMI service (1202) on the operating system (1205).

[0327] Meanwhile, the first processor (175) within the first signal processing device (170) can execute the first service agent (2350a) on the operating system (1205).

[0328] Meanwhile, unlike FIG. 11a, the first processor (175) within the first signal processing device (170) can execute a service based on a service-oriented architecture (SOA) or a microservice (1215) based on a microservice architecture (MSA) on an operating system (1205).

[0329] Meanwhile, the first processor (175) within the first signal processing device (170) can execute a vehicle service (1210) based on control logic on the operating system (1205).

[0330] The vehicle service (1210) may include at least one vehicle service, and the drawing exemplifies a first vehicle service (1211) and a second vehicle service (1212).

[0331] Meanwhile, the first vehicle service (1211) or the second vehicle service (1212) may include a service for controlling at least one of a plurality of actuators (AT1 to ATn).

[0332] Meanwhile, the first vehicle service (1211) or the second vehicle service (1212) may be updated based on update data received from an external server (400) or an external electronic device (600).

[0333] Meanwhile, the first vehicle service (1211) or the second vehicle service (1212) may be a new vehicle service based on data received from an external server (400) or an external electronic device (600).

[0334] Meanwhile, the second processor (175z) within the second signal processing device (170z) can execute the second service agent (2350b) on the operating system (1205z).

[0335] Meanwhile, the second processor (175z) in the second signal processing device (170z) according to the embodiment of the present disclosure may execute an operating system (1205z) and execute an SOA-based service or microservice (1215z) on the operating system (1205z).

[0336] Meanwhile, the second processor (175z) within the second signal processing device (170z) can execute a vehicle service (1210z) on the operating system (1205z).

[0337] The vehicle service (1210z) may include at least one vehicle service, and in the drawing, a third vehicle service (1221), a fourth vehicle service (1222), a fifth vehicle service (1223), and a sixth vehicle service (1224) are exemplified.

[0338] Meanwhile, at least one of the third vehicle service (1221) to the sixth vehicle service (1224) may include a service for controlling at least one of the plurality of actuators (AT1 to ATn).

[0339] Meanwhile, the third vehicle service (1221) or the fourth vehicle service (1222) may be a new vehicle service based on data received from an external server (400) or an external electronic device (600).

[0340] Meanwhile, the fifth vehicle service (1223) or the sixth vehicle service (1224) may be updated based on update data received from an external server (400) or an external electronic device (600).

[0341] A control device (1200) according to an embodiment of the present disclosure includes a controller (1230) and a memory (1234).

[0342] The controller (1230) can execute an operating system (1236) and execute an actuator control (1235) on the operating system (1236).

[0343] Meanwhile, the controller (1230), unlike FIG. 11a, can only execute actuator control (1235) without executing vehicle service.

[0344] That is, it is preferable that the vehicle service be executed in the second signal processing device (170z) instead of the control device (1200).

[0345] A control device (1200) according to an embodiment of the present disclosure can control a plurality of actuators (AT1 to ATn) or a plurality of sensor devices (SR1 to SRn) based on actuator control (1235).

[0346] The actuator control (1235) at this time can output an operation on signal, an operation off signal, or an operation control signal for at least one of the plurality of actuators (AT1 to ATn).

[0347] A control device (1200) according to an embodiment of the present disclosure can control at least one of a plurality of actuators (AT1 to ATn) based on sensor data from at least one of a plurality of sensor devices (SR1 to SRn).

[0348] A second processor (175z) according to one embodiment of the present disclosure executes a third vehicle service (1221) to control a controller (1230) within a control device (1200) to output an operation on signal or an operation off signal to at least one of a plurality of actuators (AT1 to ATn).

[0349] Meanwhile, the first memory (174) in the first signal processing device (170) or the second memory (174z) in the second signal processing device (170z) can receive and store data related to the execution of the fifth vehicle service (1223) added or updated in addition to the third vehicle service (1221) from an external server (400) or an external electronic device (600).

[0350] Meanwhile, the second processor (175z) according to one embodiment of the present disclosure controls the controller (1230) in the control device (1200) to output an operation on signal, an operation off signal, or an operation control signal to at least one of the plurality of actuators (AT1 to ATn) based on the fifth vehicle service (1223), when the fifth vehicle service (1223) is executed after the execution-related data of the fifth vehicle service (1223) added or updated in addition to the third vehicle service (1221) is stored in the first memory (174) in the first signal processing device (170) or the second memory (174z) in the second signal processing device (170z).

[0351] At this time, the second processor (175z) controls the execution-related data of the added or updated fifth vehicle service (1223) not to be transmitted to the control device (1200).

[0352] That is, the control device (1200) does not execute the vehicle service and does not receive data related to the execution of the vehicle service.

[0353] In this way, the control device (1200) enables simple operation of the control device (1200) by outputting an operation on signal, an operation off signal, or an operation control signal to at least one of the plurality of actuators (AT1 to ATn) without executing a vehicle service or receiving data related to the execution of the vehicle service.

[0354] In addition, since there is no need for new services or service updates to the control device (1200), multiple actuators (AT1 to ATn) can be stably controlled.

[0355] Meanwhile, new services or service updates can be efficiently executed by the second signal processing device (170z) rather than the control device (1200). In particular, new or updated services based on a service-oriented architecture can be efficiently executed by the second signal processing device (170z).

[0356] Meanwhile, execution-related data of the fifth vehicle service (1223) may include condition data and action data.

[0357] Meanwhile, the second processor (175z) can execute the fifth vehicle service (1223) when the condition data within the execution-related data of the fifth vehicle service (1223) is satisfied. Accordingly, a new fifth vehicle service (1223) or an updated fifth vehicle service (1223) can be efficiently executed.

[0358] Meanwhile, the motion control signal may include an motion speed control signal, an motion intensity control signal, or an motion temperature control signal.

[0359] For example, based on the fifth vehicle service (1223), the controller (1230) in the control device (1200) can output an operation speed control signal, an operation intensity control signal, or an operation temperature control signal to at least one of the plurality of actuators (AT1 to ATn).

[0360] Accordingly, based on the fifth vehicle service (1223), the operating speed, operating intensity, or operating temperature of at least one of the plurality of actuators (AT1 to ATn) can be controlled. Consequently, a new fifth vehicle service (1223) or an updated fifth vehicle service (1223) can be efficiently executed.

[0361] Meanwhile, the fifth vehicle service (1223) may include a microservice.

[0362] For example, the second processor (175z) can execute the fifth vehicle service (1223), which is a microservice, when the condition data in the execution-related data of the fifth vehicle service (1223) is satisfied. Accordingly, new or updated microservices can be efficiently executed.

[0363] Meanwhile, the first processor (175) can be controlled to execute the first vehicle service (1211) based on the received sensor data and transmit execution information of the first vehicle service (1211) to the second processor (175z).

[0364] Meanwhile, the sensor data may include at least one of vehicle driving sensor data, passenger status sensor data, or vehicle surrounding sensor data.

[0365] Meanwhile, the first processor (175) can control the execution of the first vehicle service (1211) when the sensor data satisfies the conditions for executing the first vehicle service (1211).

[0366] Meanwhile, the second processor (175z) can control the controller (1230) by executing the fifth vehicle service (1223) based on the execution information of the first vehicle service (1211).

[0367] In addition, based on the fifth vehicle service (1223), the controller (1230) within the control device (1200) can output an operating speed control signal, an operating intensity control signal, or an operating temperature control signal to at least one of the plurality of actuators (AT1 to ATn). Accordingly, new or updated services can be efficiently executed.

[0368] Meanwhile, the first processor (175) controls the execution of the first vehicle service (1211) based on the received first input signal and sensor data, and transmits execution information of the first vehicle service (1211) to the second processor (175z), and the second processor (175z) controls the controller (1230) by executing the fifth vehicle service (1223) based on the execution information of the first vehicle service (1211). Accordingly, new or updated services can be efficiently executed.

[0369] Meanwhile, the first processor (175) controls the transmission of the received first input signal to the second processor (175z), and the second processor (175z) can control the controller (1230) by executing the third vehicle service (1221) based on the first input signal.

[0370] Meanwhile, the controller (1230) can control at least one of the plurality of actuators (AT1 to ATn) based on the third vehicle service (1221). Accordingly, the third vehicle service (1221) can be efficiently executed.

[0371] Meanwhile, the second processor (175z) can control the controller (1230) by executing the fifth vehicle service (1223) based on the received sensor data. Accordingly, new or updated services can be efficiently executed based on the sensor data.

[0372] Meanwhile, the second processor (175z) can control the controller (1230) by executing the fifth vehicle service (1223) based on the received first input signal and sensor data. Accordingly, a new or updated service can be efficiently executed based on the first input signal and sensor data.

[0373] Meanwhile, the second processor (175z) can control the execution of the fifth vehicle service (1223) if the sensor data satisfies the conditions for executing the fifth vehicle service (1223). Accordingly, new or updated services can be efficiently executed based on the sensor data.

[0374] Meanwhile, the second processor (175z) can control the controller (1230) by executing the third vehicle service (1221) based on the first input signal. Accordingly, the third vehicle service (1221) can be executed efficiently.

[0375] Meanwhile, data related to the execution of the fifth vehicle service (1223) may include condition data and action data. At this time, at least one of the condition data and the action data may be updateable.

[0376] Accordingly, new or updated services can be efficiently executed based on updated data.

[0377] Meanwhile, condition data may include vehicle driving sensor data, passenger status sensor data, and vehicle surrounding sensor data. Accordingly, new or updated services can be efficiently implemented based on condition data.

[0378] Meanwhile, the controller (1230) receives the operating status data of the actuators (AT1 to ATn) when the fifth vehicle service (1223) of the second processor (175z) is executed, and can control the operating status of the actuators (AT1 to ATn) to be varied based on the operating status data of the actuators. Accordingly, it becomes possible to efficiently execute a new service or an updated service based on the operating status data of the actuators.

[0379] Meanwhile, the controller (1230) controls the operation on or off of the actuator based on the third vehicle service (1221), and can vary the operation speed of the actuators (AT1 to ATn) based on the fifth vehicle service (1223). Accordingly, the fifth vehicle service (1223) can be efficiently executed.

[0380] Meanwhile, at least one of the actuators (AT1 to ATn) of FIG. 12a may operate to move the vehicle seat, and at least one of the sensors (SR1 to SRn) may be a camera within the vehicle.

[0381] In this case, the controller (1230) can control the actuators (AT1 to ATn) for movement of the vehicle seat based on the third vehicle service (1221) executed by the input signal.

[0382] Meanwhile, the controller (1230) can control the actuators (AT1 to ATn) or the seat motor for any one of the movement speed, movement control, movement intensity, and automatic movement of the vehicle seat based on the fifth vehicle service (1223) executed by the in-vehicle camera data. Accordingly, the fifth vehicle service (1223) can be executed efficiently.

[0383] Meanwhile, at least one of the actuators (AT1 to ATn) of FIG. 12a may operate to control the temperature inside the vehicle, and at least one of the sensors (SR1 to SRn) may be a camera inside the vehicle.

[0384] In this case, the controller (1230) can control the actuators (AT1 to ATn) to control the temperature inside the vehicle based on the third vehicle service (1221) executed by the input signal.

[0385] Meanwhile, the controller (1230) can control the actuators (AT1 to ATn) for any one of temperature control, wind direction control, and wind speed control within the vehicle based on the fifth vehicle service (1223) executed by in-vehicle camera data. Accordingly, the fifth vehicle service (1223) can be efficiently executed.

[0386] Figure 12b is a drawing referenced in the description of Figure 12a.

[0387] Referring to the drawing, the first signal processing device (170) in the vehicle control device (100) according to the embodiment of the present disclosure can each receive switching signals from a plurality of switches (SW1 to SW6) for driving actuators (AT1 to AT6).

[0388] Meanwhile, the first signal processing device (170) can transmit each switching signal from a plurality of switches (SW1 to SW6) to the control device (1200) via the second signal processing device (170z), which is an area signal processing device.

[0389] Meanwhile, the first controller (1233) within the control device (1200) can receive some of the plurality of switching signals, and the second controller (1247) can receive other some of the plurality of switching signals.

[0390] Meanwhile, the first controller (1233) can control some (AT1 to AT3) of the plurality of actuators (AT1 to AT6) to operate based on the received switching signal.

[0391] Accordingly, unlike Fig. 11b, composite driving of multiple actuators (AT1 to AT3) by the first controller (1233) becomes possible. Accordingly, multiple actuators (AT1 to AT3) can be operated efficiently.

[0392] Meanwhile, the second controller (1237) can control other parts (AT4 to AT3) of the plurality of actuators (AT1 to AT6) to operate based on the received switching signal.

[0393] Accordingly, unlike Fig. 11b, composite driving of multiple actuators (AT4 to AT6) by the second controller (1237) becomes possible. Accordingly, multiple actuators (AT4 to AT6) can be operated efficiently.

[0394] Ultimately, by using the first signal processing device (170) or the second signal processing device (170z), it becomes possible to efficiently execute a composite service that drives multiple actuators.

[0395] FIG. 13 illustrates an example of the operation of a vehicle control device according to an embodiment of the present disclosure.

[0396] Referring to the drawings, a vehicle control device (100a) according to an embodiment of the present disclosure includes a processor (175) that executes an in-vehicle service and a memory (174) that stores data related to the service.

[0397] Meanwhile, the processor (175) executes a service agent (800) for execution of the first service, and executes a service scheduler (840) that outputs time schedule information for execution on at least one node based on information of execution-related data (900) of the first service from the service agent (800).

[0398] This allows for efficient service execution. Meanwhile, services responding to vehicle occupants can be efficiently implemented. In particular, services based on a service-oriented architecture can be efficiently implemented.

[0399] For example, the service agent (800) can receive execution-related data (900) of the first service from memory (140) or an external server (400).

[0400] Accordingly, the parser (810) within the service agent (800) can interpret or parse the execution-related data (900) of the first service.

[0401] Meanwhile, the state manager (820) within the service agent (800) can transmit command data (cmd) to the workload orchestrator (870) based on information of the execution-related data (900) of the first service.

[0402] Meanwhile, the workload orchestrator (870) can control execution of the first service (SCT) based on command data.

[0403] For example, the first service (SCT) may include at least one of a parking assistance surround view service (SVpv), a parking assistance service (SVpa), a rear collision warning service (SVbs), a blind spot detection service (SVbs), a surround view service (SVsv), a cross traffic warning service (SVvt), a lane warning service (SVlp), a traffic sign recognition service (SVts), an emergency braking service (SVob), a pedestrian detection service (SVpd), a collision avoidance service (SVca), an adaptive cruise control service (AVac), or a vehicle driving service (SCsd).

[0404] Meanwhile, the state manager (820) within the service agent (800) can receive result data (result) corresponding to command data (cmd) from the workload orchestrator (870).

[0405] Meanwhile, the processor (175) can generate a time schedule table for execution on a node based on information related to the execution of the first service, and output time schedule information based on the time schedule table. Accordingly, the service can be efficiently executed.

[0406] Specifically, the service scheduler (840) within the processor (175) can generate a time schedule table for execution in a node based on information of execution-related data of the first service, and output time schedule information based on the time schedule table.

[0407] Meanwhile, the service scheduler (840) within the processor (175) can perform time scheduling for execution of the first service based on time schedule information and execute a time trigger (864). Accordingly, the service can be executed efficiently.

[0408] Meanwhile, the service scheduler (840) within the processor (175) monitors at least one of resource information of each node or status information during real-time operation, and based on the monitoring, outputs updated time schedule information or controls the execution of degradation mode. Accordingly, the service can be efficiently executed.

[0409] Each node at this time may be a processor, neural processor, etc. that operates to execute a service.

[0410] Meanwhile, the service scheduler (840) may include a first service scheduler (850) that generates a time schedule table for execution in a node based on information of execution-related data of the first service and outputs time schedule information based on the time schedule table, and a second service scheduler (860) that performs time scheduling based on the time schedule information.

[0411] Meanwhile, the first service scheduler (850) may receive information (inf) of execution-related data of the first service from the state manager (820) in the service agent (800), and execute or include a time schedule table generator (852) that generates a time schedule table, a time schedule generator (854) that outputs time schedule information based on the time schedule table, and a monitor (856) that monitors the execution result of time scheduling.

[0412] Meanwhile, the second service scheduler (860) can perform time scheduling for execution of the first service and execute a time trigger (864).

[0413] Specifically, the second service scheduler (860) may execute or include a real-time scheduler (862) that performs real-time scheduling for execution of the first service based on time schedule information from a time schedule generator (854), a time trigger (864) that operates based on time schedule information from the time schedule generator (854), and a monitor (865) that monitors the execution result of time scheduling.

[0414] Meanwhile, the real-time scheduler (862) can output configuration data (config) for real-time scheduling of the first service (SCT).

[0415] Meanwhile, the time trigger (864) can output configuration data (config) for real-time scheduling of the first service (SCT).

[0416] Meanwhile, the monitor (865) within the second service scheduler (860) can receive the performance result data (result) of real-time scheduling of the first service (SCT) and transmit the performance result data (result) to the monitor (856) within the first service scheduler (850).

[0417] In response to this, the monitor (856) within the first service scheduler (850) can transmit the performance result data (result) to the state manager (820) within the service agent (800).

[0418] For example, if the execution result of real-time scheduling exceeds the allowable number of deadline misses, the execution result data (result) may include error data.

[0419] Meanwhile, the processor (175) can be controlled to perform a degradation mode when error data is included in the monitoring result data.

[0420] For example, when performing degradation mode, the service agent (800) within the processor (175) may execute a second service that is simpler than the first service, change an application, change a resource, or modify a configuration. Accordingly, the service can be executed efficiently.

[0421] Meanwhile, the processor (175) can generate execution-related data for the first service based on an input signal or service execution history, and, after verification of the first service is completed, can control execution of the first service based on received sensor data or messages if the execution conditions of the first service are met. At this time, the first service can respond to a new service.

[0422] This enables the creation and execution of new services, particularly those based on a service-oriented architecture.

[0423] Meanwhile, the processor (175) can generate data related to the execution of the first service based on an input signal such as a voice signal, a text signal, or a gesture, or a service execution history.

[0424] For example, the processor (175) can generate data related to the execution of a first service, which is a new service, based on a voice signal such as a passenger's voice.

[0425] As another example, the processor (175) can generate data related to the execution of a first service, which is a new service, based on a text signal such as a character input.

[0426] As another example, the processor (175) may generate execution-related data of a first service, which is a new service, based on the execution history of a second service corresponding to an existing service.

[0427] As another example, the processor (175) may generate data related to the execution of a new service, the first service, based on the passenger's gesture.

[0428] Meanwhile, the processor (175) can generate data related to execution of the first service based on the gesture of the vehicle passenger and data related to execution of the second service stored in the memory (140).

[0429] The second service at this time can respond to the existing service.

[0430] That is, the processor (175) can generate data related to the execution of a new first service based on data related to the execution of an existing second service and gestures of a vehicle occupant. Accordingly, a new service corresponding to a vehicle occupant can be generated and executed.

[0431] Meanwhile, the processor (175) can generate execution-related data of the first service based on the service list stored in the memory (140) or the service list from the service agent (800).

[0432] For example, the processor (175) can determine whether the first service exists in the service list stored in the memory (140) or in the service list from the service agent (800), and if not, can generate execution-related data for the first service. Accordingly, a new service can be created.

[0433] Meanwhile, the processor (175) can generate execution-related data of the first service based on a plurality of service combinations.

[0434] For example, the processor (175) can generate execution-related data of the first service by combining service A and service B.

[0435] Meanwhile, the processor (175) can control execution of the first service if the execution conditions of the first service are met after verification of the first service generated based on multiple service combinations. Accordingly, new services can be created and executed efficiently.

[0436] Meanwhile, the processor (175) can exclude items that cannot be executed when generating data related to the execution of the first service based on a combination of multiple services.

[0437] For example, the processor (175) may exclude the LKAS item within the first service if the LKAS (Lane keep assistance service) within the first service is not supported.

[0438] Meanwhile, the processor (175) can reduce or modify some services when a conflict occurs when combining multiple services.

[0439] For example, the processor (175) may, when combining service A and service B to create a first service, delete item C in service A or delete item D in service B if a conflict occurs or is incompatible with item C in service A or item D in service B.

[0440] Meanwhile, the processor (175) can determine the dependency between services when combining multiple services and set the order between the multiple services.

[0441] For example, the processor (175) can create a first service by combining service A and service B, and when the action of service A corresponds to the condition of service B, since there is a dependency, service A is performed first and then service B is performed.

[0442] Specifically, the processor (175) can generate a first service in which service A is performed first and service B is performed when service A corresponds to a service for activating a driving mode when driving at a certain speed or higher and service B corresponds to a service for activating a door lock when driving mode is activated.

[0443] As another example, the processor (175) may combine service A and service B to generate a first service in which, when the conditions of service A are included in the conditions of service B, service A is performed first and then service B is performed.

[0444] Specifically, the processor (175) can generate a first service in which service A is performed first and service B is performed when service A corresponds to a service that opens only 50% of the window when the speed is 50 km / h or more and service B corresponds to a service that opens only 30% of the window when the speed is 70 km / h or more.

[0445] Meanwhile, the processor (175) can create the first service by combining the A service and the B service, and if the A service and the B service have no dependency, by combining them in any order.

[0446] For example, if service A corresponds to a service of closing a window when it rains and service B corresponds to a service of operating an air conditioner when the temperature inside a vehicle exceeds 27°C, the processor (175) can generate a first service that is independent of the order of service A and service B, since there is no dependency between service A and service B.

[0447] Meanwhile, the processor (175) can set the order between multiple services based on an input signal when combining multiple services.

[0448] For example, the processor (175) can generate a first service by combining service A and service B, in which service A is performed first and service B is performed when service A is selected to be performed first by user voice when generating the first service.

[0449] Specifically, the processor (175) can generate a first service corresponding to a service of operating an air conditioner on the way to work, a service B corresponding to a service of operating a radio on the way to work, and when an input signal indicates that service A is to be performed first, service A is to be performed first and service B is to be performed.

[0450] Meanwhile, the processor (175) can transmit data related to the execution of the first service to the service agent (800).

[0451] Meanwhile, the processor (175) can execute a service agent (800) for executing vehicle services.

[0452] Meanwhile, the service agent (800) within the processor (175) can request verification of the first service from an external server (400).

[0453] Meanwhile, the service agent (800) within the processor (175) can perform verification of the first service, or, if verification of the first service is not possible, control the external server (400) to request verification of the first service. Accordingly, a new service can be created and efficiently executed.

[0454] Meanwhile, an external server (400) can perform verification of the first service through a verifier (2365) based on a verification request of the first service.

[0455] Meanwhile, an external server (400) can transmit service distribution information or verification completion information to the processor (175) after verification of the first service through the verifier (2365).

[0456] Meanwhile, the processor (175) can control the execution of the first service if the condition data within the execution-related data is satisfied after receiving service distribution information or verification completion information. Accordingly, a new service can be executed.

[0457] Alternatively, the service agent (800) within the processor (175) may internally perform verification of the first service. This allows for the rapid creation and execution of new services.

[0458] Meanwhile, the processor (175) can generate execution-related data of the first service based on a plurality of service combinations.

[0459] For example, the processor (175) can generate execution-related data for a new service, a first service, based on a combination of an existing second service and an existing third service. Accordingly, the new service can be efficiently generated.

[0460] Meanwhile, the processor (175) may not generate execution-related data of the first service if the version of the system data stored in the memory (140) is the first version.

[0461] Meanwhile, the processor (175) can generate execution-related data for the first service based on an input signal or service execution history when the level of the system data stored in the memory (140) is a second version different from the first version. Accordingly, a new service can be created and efficiently executed.

[0462] Meanwhile, the processor (175) can generate execution-related data for the first service based on an input signal or service execution history after updating the system data stored in the memory (140). Accordingly, a new service can be created and efficiently executed.

[0463] Meanwhile, the processor (175) can generate execution-related data of the first service corresponding to the first passenger based on an input signal or service execution history.

[0464] Meanwhile, the processor (175) can generate data related to the execution of a second service corresponding to a second passenger based on an input signal or service execution history. Accordingly, a new service corresponding to a vehicle passenger can be created and executed.

[0465] Meanwhile, the processor (175) can execute the first service when the execution condition data of the first service in the execution-related data of the first service is satisfied, and can execute the second service when the execution condition data of the second service in the execution-related data of the second service is satisfied. Accordingly, a new service corresponding to the vehicle occupant can be created and executed.

[0466] Meanwhile, the processor (175) can generate execution-related data of the first service corresponding to the first passenger based on an input signal or service execution history.

[0467] Meanwhile, the processor (175) can generate execution-related data for a second service corresponding to a second passenger based on a second input signal or a second service execution history. Accordingly, a new service can be created and efficiently executed.

[0468] Meanwhile, the processor (175) can generate execution-related data for multiple services, including the first service, based on input signals or service execution history. Accordingly, new services can be created and efficiently executed.

[0469] Meanwhile, the first service may include multiple services.

[0470] Meanwhile, the processor (175) can set priorities for multiple services within the first service and control the execution of the first service based on the set priorities. Accordingly, multiple new services can be efficiently executed.

[0471] Meanwhile, execution-related data of the first service may include execution condition data and execution action data of the first service.

[0472] Meanwhile, the processor (175) can control execution of only a part of the first service or execution of a scalable service when only a part of the execution condition data of the first service is satisfied.

[0473] For example, the processor (175) can execute only a part of the first service if only some of the execution condition data of the first service is satisfied.

[0474] As another example, if only some of the execution condition data of the first service are satisfied, the processor (175) may execute the first service based on a second resolution that is lower than the first resolution, rather than the first service based on the first resolution.

[0475] That is, the processor (175) can execute a second scalable service with a lower resolution than the first scalable service if only some of the execution condition data of the first service are satisfied. Accordingly, a new service can be created and executed efficiently.

[0476] Meanwhile, the processor (175) can exclude items that cannot be executed when generating execution-related data for the first service based on the service combination. Accordingly, new services can be created and executed efficiently.

[0477] Meanwhile, the processor (175) may, based on the service combination, stop generating execution-related data for the first service if it relates to vehicle safety or regulations. Accordingly, new services can be created and efficiently executed while complying with vehicle safety or regulations.

[0478] Meanwhile, a vehicle control device (100a) according to one embodiment of the present disclosure may include a first signal processing device (170) having a processor (175) and a memory (140), a second signal processing device (170z) electrically connected to the first signal processing device (170) and having a second processor (175z) and a second memory (140z), and a control device (1200) electrically connected to the second signal processing device (170z) and having a controller (1230) that receives a signal from a hardware switch or sensor or controls at least one actuator (AT).

[0479] Meanwhile, if the processor (175) satisfies the execution conditions of the first service, it transmits an execution request of the first service to the second signal processing device (170z), and the second signal processing device (170z) can control the controller to output an operation on signal, an operation off signal, or an operation control signal to the actuator based on the execution request of the first service. Accordingly, a new service can be created and executed efficiently.

[0480] Figures 14a to 17b are drawings referenced in the description of Figure 13.

[0481] Figure 14a illustrates a cluster display (180a) and an AVN display (180b).

[0482] Referring to the drawing, a processor (175) in a signal processing device (170) can control a cluster image (1411) including vehicle driving-related information to be displayed on a cluster display (180a) and a predetermined image (1413) to be displayed on an AVN display (180b).

[0483] Figure 14b is a drawing referenced in the description of the operation of the signal processing device for each image display of Figure 14a.

[0484] Referring to the drawing, a processor (175) within a signal processing device (170) can execute a hypervisor (505) and execute multiple virtual machines (1420 to 1440) on the hypervisor (505).

[0485] For example, among multiple virtual machines (1420 to 1440), a first virtual machine (1420) can execute at least one of a service agent (1421), a driver monitoring service (1422), a battery monitoring service (1424), a driving service (1423), or a lighting device service (1425).

[0486] Meanwhile, among the multiple virtual machines (1420 to 1440), the second virtual machine (1430) can execute at least one of the AVN display service (1432) or the air conditioning service.

[0487] Meanwhile, among the multiple virtualization machines (1420 to 1440), the third virtualization machine (1440) can execute at least one of a cluster image service (1442) or a mixed reality (MR) service (1443).

[0488] FIG. 14c is a drawing referenced in the description of the system operation of the signal processing device for the operation of each virtual machine of FIG. 14b.

[0489] Referring to the drawing, some of the cores (P0, P1, P2, P3, E0, E1) within the processor (175) within the signal processing device (170) may execute a first virtual machine (1420), other of the cores (E2, E3, E4, E5) within the processor (175) may execute a second virtual machine (1430), and still other of the cores (P4, P5, E6, E7) within the processor (175) may execute a third virtual machine (1440).

[0490] Meanwhile, the memory (140) within the signal processing device (170) can allocate more data capacity (e.g., 32 GB) to the third virtual machine (1440) than to the first virtual machine (1420) and the second virtual machine (1430).

[0491] Meanwhile, the graphic processor (178) within the signal processing device (170) can allocate a greater data processing ratio (e.g., 60%) to the third virtual machine (1440) than to the first virtual machine (1420) and the second virtual machine (1430).

[0492] Meanwhile, among multiple virtual machines (1420 to 1440), only the first virtual machine (1420) can receive camera data and audio data.

[0493] Figure 15a illustrates a home screen image and an avatar image.

[0494] Referring to the drawing, the processor (175) in the signal processing device (170) can control the display (180) to display a cluster image (1513), a home screen image (111), an avatar image (1515), etc.

[0495] Figure 15b is a drawing referenced in the description of the operation of the signal processing device for each image display of Figure 15a.

[0496] Referring to the drawing, a processor (175) within a signal processing device (170) can execute a hypervisor (505) and execute multiple virtual machines (1520 to 1540) on the hypervisor (505).

[0497] For example, among multiple virtual machines (1520 to 1540), the first virtual machine (1520) can execute a cluster image service (1522), etc.

[0498] Meanwhile, among the multiple virtual machines (1520 to 1540), the second virtual machine (1530) can execute a lighting device service (1532), etc.

[0499] Meanwhile, among the multiple virtualization machines (1520 to 1540), the third virtualization machine (1540) can execute a home screen video service (1542) or an avatar video service (1543).

[0500] FIG. 15c is a drawing referenced in the description of the system operation of the signal processing device for the operation of each virtual machine of FIG. 15b.

[0501] Referring to the drawing, some of the cores (P0, P1, E0, E1) within the processor (175) within the signal processing device (170) may execute a first virtual machine (1520), other of the cores (E2, E3, E4, E5) within the processor (175) may execute a second virtual machine (1530), and still other of the cores (P2, P3, P4, P5, E6, E7) within the processor (175) may execute a third virtual machine (1540).

[0502] Meanwhile, the memory (140) within the signal processing device (170) can allocate more data capacity (e.g., 32 GB) to the third virtual machine (1540) than to the first virtual machine (1520) and the second virtual machine (1530).

[0503] Meanwhile, the graphic processor (178) within the signal processing device (170) can allocate a greater data processing ratio (e.g., 60%) to the third virtual machine (1540) than to the first virtual machine (1520) and the second virtual machine (1530).

[0504] Meanwhile, among multiple virtual machines (1520 to 1540), only the first virtual machine (1520) can receive camera data.

[0505] Figure 16a illustrates an example of a schedule table of multiple microservices within a first service.

[0506] Referring to the drawing, the first service may have multiple microservices (A to C).

[0507] Meanwhile, the processor (175) within the signal processing device (170) can control multiple micro-services (A to C) to be executed sequentially for efficient execution of the first service.

[0508] Figure 16b illustrates an example of shared processing of multiple microservices within multiple signal processing devices.

[0509] Referring to the drawing, a first signal processing device (170a) in a vehicle control device (100) according to one embodiment of the present disclosure includes a processor (175) that executes an in-vehicle service, a memory (140) that stores data related to the service, and a second processor (178).

[0510] Meanwhile, the processor (175) within the first signal processing device (170a) executes a service agent (800) for executing the first service, and executes a service scheduler (840) that outputs time schedule information for execution in at least one node based on information of execution-related data of the first service from the service agent (800).

[0511] Meanwhile, the processor (175) within the first signal processing device (170a) can output first time schedule information to the second processor (178) within the first signal processing device (170a) based on information regarding execution-related data of the first service. Accordingly, the first service can be efficiently executed.

[0512] That is, as shown in the drawing, the service scheduler (840) in the processor (175) in the first signal processing device (170a) can output first time schedule information so that the second processor (178) performs the first micro service (SVVa) among the plurality of micro services (SVVa to SVVc) in the first service.

[0513] Accordingly, the second processor (178) can perform the first microservice (SVVa), as shown in FIG. 16a, based on the first time schedule information.

[0514] Meanwhile, the first signal processing device (170a) may further include a neural processor (179) in addition to the processor (175) and the second processor (17b).

[0515] For example, the processor (175) may output time schedule information for the neural processor (179) to perform some of the plurality of microservices (SVVa to SVVc).

[0516] Accordingly, the neural processor (179) can perform some of the multiple micro-services (SVVa to SVVc) based on the time schedule information.

[0517] Meanwhile, a vehicle control device (100) according to one embodiment of the present disclosure may include a signal processing device (170a) including a processor (175), a second processor (178), and a memory (140), and a second signal processing device (170b) including a third processor (175b).

[0518] Meanwhile, the processor (175) within the first signal processing device (170a) can output second time schedule information to the third processor (175b) based on information related to the execution of the first service. Accordingly, the service can be efficiently executed.

[0519] Specifically, the service scheduler (840) within the processor (175) within the first signal processing device (170a) can output second time schedule information to the third processor (175b) based on information of execution-related data of the first service.

[0520] Meanwhile, the third processor (175b) within the second signal processing device (170b) can execute a second service scheduler (840b) for service scheduling.

[0521] Meanwhile, the second service scheduler (840b) within the third processor (175b) within the second signal processing device (170b) can receive second time schedule information from the service scheduler (840) within the processor (175).

[0522] Meanwhile, the second signal processing device (170b) may further include, in addition to the third processor (175b), a fourth processor (178b) and a second neural processor (179b).

[0523] Meanwhile, the second service scheduler (840b) in the third processor (175b) in the second signal processing device (170b) can control the fourth processor (178b) to perform the second micro service (SVVb) among the plurality of micro services (SVVa to SVVc) in the first service based on the second time schedule information.

[0524] Accordingly, the fourth processor (178b) can perform the second microservice (SVVb) as shown in Fig. 16a based on the second time schedule information. Accordingly, the service can be efficiently executed.

[0525] Meanwhile, the third processor (175b) within the second signal processing device (170b) can further execute a third service scheduler (865b) for scheduling the second neural processor (179b).

[0526] Meanwhile, the processor (175) in the first signal processing device (170a) can output third time schedule information to the neural processor (179b) based on information of data related to the execution of the first service.

[0527] Specifically, the service scheduler (840) within the processor (175) within the first signal processing device (170a) can output third time schedule information based on information of execution-related data of the first service for the neural processor (179b).

[0528] In response to this, the third service scheduler (865b) in the third processor (175b) in the second signal processing device (170b) can receive third time schedule information via the second service scheduler (840b).

[0529] In addition, the third service scheduler (865b) in the third processor (175b) in the second signal processing device (170b) can be controlled to perform the third micro service (SVVc) among the plurality of micro services (SVVa to SVVc) based on the third time schedule information.

[0530] Accordingly, the second neural processor (179b) within the second signal processing device (170b) can perform the third microservice (SVVc) as shown in Fig. 16a based on the control of the third service scheduler (865b). Accordingly, the service can be efficiently executed.

[0531] Meanwhile, a vehicle control device (100) according to one embodiment of the present disclosure includes a signal processing device (170a) including a processor (175), a second processor (178), and a memory (140), and a second signal processing device (170b) including at least one processor (175b, 178b).

[0532] Meanwhile, the processor (175) can control some (SVVa) of the plurality of microservices within the first service to be performed by the second processor (178) and other some (SVVb) to be performed by the processor (178b) within the second signal processing device (170b) based on information regarding execution-related data of the first service. Accordingly, the service can be efficiently executed.

[0533] Meanwhile, the processor (175) can execute an operating system different from that of the processor (178b) within the second signal processing device (170b). Accordingly, services can be executed efficiently.

[0534] For example, the processor (175) may execute an operating system such as QNX, and the processor (175b) in the second signal processing unit (170b) may execute a Linux operating system.

[0535] In this way, even if the operating systems of each processor (175, 175b) or each signal processing device (170a, 170b) are different, a portion of the service can be shared and processed, so that the service can be executed efficiently.

[0536] Meanwhile, the processor (175) executes real-time driving, and the processor (175b) in the second signal processing device (170b) may not execute real-time driving.

[0537] That is, the processor (175b) in the second signal processing device (170b) can perform non-real time operation.

[0538] For example, the processor (175) may control some of the plurality of micro-services (SVVa) within the first service to be run in real time on the second processor (178), and the processor (175b) within the second signal processing device (170b) may control other some of the plurality of micro-services (SVVb) within the first service to be run in non-real time on the processor (178b) within the second signal processing device (170b). Accordingly, the service can be efficiently executed.

[0539] That is, the processor (175) can control the driving timing of some (SVVa) of the plurality of micro-services within the first service to precede the driving timing of other some (SVVb) of the plurality of micro-services within the first service executed by the processor (178b) within the second signal processing device (170b). Accordingly, the service can be executed efficiently.

[0540] Figure 17a is a diagram referenced in the description of the operation of a service agent and a service scheduler.

[0541] Referring to the drawing, a processor (175) according to an embodiment of the present disclosure can execute a service agent (800) for executing a vehicle service and a service scheduler (840).

[0542] Meanwhile, the processor (175) according to the embodiment of the present disclosure can further execute a workload orchestrator (870) and a kernel (880).

[0543] Meanwhile, the service agent (800) can receive service execution related data in file format from outside or inside the vehicle, and output command data (cmd) to the workload orchestrator (870) based on the service execution related data.

[0544] For example, the service agent (800) can receive service execution related data in a YAML (YAML Ain't Markup Language) file format.

[0545] Meanwhile, the service agent (800) may include a parser (810) that interprets or parses data related to service execution, and a state manager (820) that transmits command data (cmd) to a workload orchestrator (870) to enable state transition by managing the difference between the current state and the desired state.

[0546] Meanwhile, the workload orchestrator (870) may be named Bluechi controller.

[0547] Meanwhile, the workload orchestrator (870) can control the execution of a service interpreted by the service agent (800) by the real-time kernel (880).

[0548] Meanwhile, the service scheduler (840) can output time schedule information for execution on at least one node based on information of execution-related data (900) of the first service from the service agent (800).

[0549] To this end, the service scheduler (840) may execute or include a time schedule generator (854) that outputs time schedule information based on a time schedule table, a real-time scheduler (862) that performs real-time scheduling for executing the first service, a time trigger (864) that operates based on the time schedule information, a monitor (865) that monitors the execution result of time scheduling, etc.

[0550] Meanwhile, the real-time scheduler (862) can output configuration data (config) for real-time scheduling of the first service to the kernel (880).

[0551] Meanwhile, the time trigger (864) can output configuration data (config) for real-time scheduling of the first service to the kernel (880).

[0552] Meanwhile, the monitor (865) can receive the performance result data (result) of real-time scheduling of the first service from the kernel (880) and transmit the performance result data (result) to the state manager (820) within the service agent (800).

[0553] Meanwhile, if the execution result of real-time scheduling exceeds the allowable number of deadline misses, the monitor (865) can transmit execution result data (result) including error data (error) to the state manager (820) within the service agent (800).

[0554] Figure 17b is a drawing referenced in the description of Figure 17a.

[0555] Referring to the drawing, the service agent (800) can receive service execution related data of the first service in a file format from outside or inside the vehicle.

[0556] For example, the service agent (800) can receive service execution related data in a YAML (YAML Ain't Markup Language) file format.

[0557] Next, the service agent (800) can output the start command data of the first service to the workload orchestrator (870) based on the service execution related data of the first service (S1705).

[0558] Next, the service agent (800) can receive a response message corresponding to the start command data from the workload orchestrator (870) (S1710).

[0559] Next, the service agent (800) can transmit information on execution-related data of the first service to the service scheduler (840) (S1715).

[0560] Next, the service scheduler (840) can output time schedule information for execution on at least one node to the kernel (880) based on information on execution-related data of the first service (S1720).

[0561] For example, a real-time scheduler (862) within a service scheduler (840) can output configuration data (config) for real-time scheduling of the first service to the kernel (880).

[0562] Meanwhile, the time trigger (864) within the service scheduler (840) can output configuration data (config) for real-time scheduling of the first service to the kernel (880).

[0563] Meanwhile, the kernel (880) can transmit the performance result data (result) of real-time scheduling of the first service to the service scheduler (840) (S1725).

[0564] In response to this, the monitor (865) within the service scheduler (840) can receive the performance result data (result) of real-time scheduling of the first service from the kernel (880).

[0565] And, the service scheduler (840) can transmit the performance result data (result) of real-time scheduling of the first service to the state manager (820) within the service agent (800) (S1730).

[0566] For example, if the performance result of real-time scheduling exceeds the allowable number of deadline misses, the service scheduler (840) can transmit performance result data (result) including error data (error) to the state manager (820) within the service agent (800).

[0567] Meanwhile, when the service agent (800) receives performance result data (result) including error data (error), it can output a stop command data for the first service to the workload orchestrator (870) (S1735). Accordingly, the first service can be stopped.

[0568] FIG. 18 illustrates another example of the operation of a vehicle control device according to an embodiment of the present disclosure.

[0569] Referring to the drawing, a vehicle control device (100a) according to an embodiment of the present disclosure includes a processor (175) that executes an in-vehicle service, and a memory (174) that stores data related to the service, as shown in FIG. 13.

[0570] Meanwhile, the processor (175) executes a service agent (800) for executing the first service.

[0571] Meanwhile, the service agent (800) may include a parser (810) that interprets or parses service execution-related data (900) of the first service, and a state manager (820) that transmits command data (cmd) to a workload orchestrator (870).

[0572] Meanwhile, the state manager (820) within the service agent (800) can output information (info) of service execution related data (900) of the first service.

[0573] Meanwhile, the processor (175) executes a service scheduler (840) that outputs time schedule information for execution on at least one node based on information (info) of execution-related data (900) of the first service.

[0574] The service scheduler (840) may include a first service scheduler (850) and a second service scheduler (860).

[0575] Meanwhile, the first service scheduler (850) may receive information (inf) of execution-related data of the first service from the state manager (820) in the service agent (800), and execute or include a time schedule table generator (852) that generates a time schedule table, a time schedule generator (854) that outputs time schedule information based on the time schedule table, and a monitor (856) that monitors the execution result of time scheduling.

[0576] Meanwhile, the second service scheduler (860) may execute or include a real-time scheduler (862) that performs real-time scheduling for execution of the first service based on time schedule information from a time schedule generator (854), a time trigger (864) that operates based on time schedule information from the time schedule generator (854), and a monitor (865) that monitors the execution result of time scheduling.

[0577] Meanwhile, the real-time scheduler (862) can output configuration data (config) for real-time scheduling of the first service to the kernel (880).

[0578] Meanwhile, the time trigger (864) can output configuration data (config) for real-time scheduling of the first service to the kernel (880).

[0579] Meanwhile, the monitor (865) within the second service scheduler (860) can receive the performance result data (result) of real-time scheduling of the first service from the kernel (880) and transmit the performance result data (result) to the monitor (856) within the first service scheduler (850).

[0580] In addition, the service scheduler (840) can transmit the performance result data (result) of real-time scheduling of the first service to the state manager (820) within the service agent (800).

[0581] For example, if the performance result of real-time scheduling exceeds the allowable number of deadline misses, the service scheduler (840) can transmit performance result data (result) including error data (error) to the state manager (820) within the service agent (800).

[0582] Meanwhile, the processor (175) can execute a workload orchestrator (870) that controls execution of the first service based on command data from the service agent (800).

[0583] Meanwhile, the processor (175) can execute a real-time kernel (880) that exchanges data with the service scheduler (840).

[0584] Meanwhile, the processor (175) can execute a service container (880) that executes a service based on data from the kernel (880).

[0585] Figures 19a to 21c are drawings referenced in the description of Figure 19.

[0586] Figure 19a is a drawing referenced in the description of the operation of the service scheduler of Figure 18.

[0587] Referring to the drawing, a time schedule table generator (852) within a first service scheduler (850) within a service scheduler (840) can generate a time schedule table, and a time schedule generator (854) can output time schedule information based on the time schedule table.

[0588] Meanwhile, a real-time scheduler (862) within a second service scheduler (860) within a service scheduler (840) can perform real-time scheduling for execution of the first service based on time schedule information from a time schedule generator (854).

[0589] That is, the real-time scheduler (862) can, through the cgroup system file (881), preferentially set real-time properties of upper layers (e.g., docker, systemd, etc.) of the hierarchical view of the cgroup of the target service container (890).

[0590] Meanwhile, the real-time scheduler (862) can set real-time properties of the target service container (890) and check information about tasks.

[0591] Meanwhile, the real-time scheduler (862) can schedule tasks of the target service container (890) in real time based on syscall (882).

[0592] Figure 19b is a drawing referenced in the description of the operation of the time trigger in the service scheduler of Figure 18.

[0593] Referring to the drawing, a time schedule table generator (852) within a first service scheduler (850) within a service scheduler (840) can generate a time schedule table, and a time schedule generator (854) can output time schedule information based on the time schedule table.

[0594] Meanwhile, the time trigger (864) in the second service scheduler (860) in the service scheduler (840) can output time trigger information (config) for service execution in the real-time kernel (880) and service container (890) based on schedule information.

[0595] For example, the time trigger (864) can create and set a timer for the period of a task and the superperiod of a workload chain based on schedule information.

[0596] Meanwhile, the time trigger (864) can create and set a timer based on the hrtimer (883) of the real-time kernel (880).

[0597] Meanwhile, the time trigger (864) can set the next period and the next super period by a timer handler that is driven when the timer expires.

[0598] Meanwhile, the time trigger (864) can wake up and run the target tasks of the target service container (890) using a signal from the real-time kernel (880).

[0599] Meanwhile, the time trigger (864) can finish the work of the tasks that were woken up and run, and wait for a signal.

[0600] Figure 19c is a drawing illustrating an example of the operation of a monitor within the second service scheduler of Figure 18.

[0601] Referring to the drawing, the monitor (865) within the second service scheduler (860) can monitor the real-time scheduling and resource usage information of the system at a set cycle.

[0602] For example, a monitor (865) within a second service scheduler (860) may collect processor and memory usage information from the proc filesystem (885) of a real-time kernel (880) to collect resource usage information.

[0603] Meanwhile, the monitor (865) within the second service scheduler (860) can collect scheduling event information from ftrace (886) of the real-time kernel (880).

[0604] FIG. 19d is a diagram illustrating another example of the operation of a monitor within the first service scheduler of FIG. 18.

[0605] Referring to the drawing, the monitor (865) within the second service scheduler (860) can collect and review deadline miss information detected by the time trigger (864).

[0606] For example, a monitor (865) within a second service scheduler (860) can detect a deadline miss using an hrtimer (883) of a real-time kernel (880) and transmit this to a monitor (856) within a first service scheduler (850).

[0607] Meanwhile, the monitor (865) within the second service scheduler (860) can transmit a deadline miss notification to the first service scheduler (850) if the schedule information is out of the allowable range specified in the schedule information.

[0608] Meanwhile, when the first service scheduler (850) receives a deadline miss notification, it can transmit the deadline miss notification to the service agent (800).

[0609] Accordingly, the service agent (800) can be controlled to perform an action corresponding to a deadline miss notification.

[0610] Figure 20a is a drawing referenced in the description of the operation of the real-time scheduler of Figure 18.

[0611] Referring to the drawing, the service agent (800) can output information (info) of service execution related data (900) of the first service.

[0612] Meanwhile, the real-time scheduler (862) within the service scheduler (840) can control the real-time kernel (880) based on information (info) of service execution related data (900) of the first service.

[0613] And, the real-time scheduler (862) within the service scheduler (840) can transmit the result data of the real-time kernel (880) to the service agent (800).

[0614] Meanwhile, the service agent (800) can output action data to the workload orchestrator (870) based on the service execution-related data (900) of the first service. Accordingly, the first service can be executed.

[0615] Figure 20b is a diagram illustrating an operation sequence for executing a lane maintenance service.

[0616] Referring to the drawing, the service agent (800) can receive service execution related data of the first service in a file format from outside or inside the vehicle.

[0617] For example, the service agent (800) can receive service execution related data in a YAML (YAML Ain't Markup Language) file format.

[0618] Next, the service agent (800) may output the start command data for the first service to the workload orchestrator (870) based on the service execution-related data of the first service (S2010). The first service at this time may be a lane maintenance service.

[0619] Next, the service agent (800) can receive a response message corresponding to the start command data from the workload orchestrator (870) (S2015).

[0620] Next, the service agent (800) can transmit information on execution-related data of the first service to the service scheduler (840) (S2020).

[0621] Next, the service scheduler (840) can output time schedule information for execution on at least one node to the kernel (880) based on information on execution-related data of the first service (S2025).

[0622] For example, a real-time scheduler (862) within a service scheduler (840) can output configuration data (config) for real-time scheduling of the first service to the kernel (880).

[0623] Meanwhile, the time trigger (864) within the service scheduler (840) can output configuration data (config) for real-time scheduling of the first service to the kernel (880).

[0624] Meanwhile, the kernel (880) can transmit the performance result data (result) of real-time scheduling of the first service to the service scheduler (840) (S1725).

[0625] In response to this, the monitor (865) within the service scheduler (840) can receive the performance result data (result) of real-time scheduling of the first service from the kernel (880).

[0626] In addition, the service scheduler (840) can transmit the performance result data (result) of the real-time scheduling of the first service to the state manager (820) within the service agent (800) (S2030). Accordingly, the first service can be efficiently executed.

[0627] Figure 20c is a drawing referenced in the operation description for executing the gear operation service.

[0628] Referring to the drawing, the service agent (800) can transmit information on execution-related data (900n) of the first service to the service scheduler (840) and execute a service container. The first service at this time may be a gear operation service.

[0629] In the drawing, a service agent (800) executes a service pipeline (2013) including multiple service containers (2014, 2015, 2016, 2017) based on information of execution-related data (900n) of a first service.

[0630] Meanwhile, the service scheduler (840) can operate the time trigger (864) based on information of the execution-related data (900n) of the first service from the service agent (800).

[0631] Figures 21a to 21c are drawings for reference in the description of operations for executing a traffic light detection service.

[0632] Figure 21a illustrates traffic light detection.

[0633] Referring to the drawing, the processor (175) may execute or include a traffic light map detector (2112) that detects a traffic light map based on a vehicle driving map or camera data, a traffic light detector (2114) that detects a traffic light, and a traffic light classifier (2116) that classifies the detected traffic light.

[0634] Figure 21b illustrates a traffic light within a camera image.

[0635] Referring to the drawing, a traffic light may be included within the camera image (2105).

[0636] Figure 21c is a diagram for reference in explaining the operation of a service scheduler related to a traffic light detection service.

[0637] Referring to the drawing, the service agent (800) can transmit information on execution-related data of the first service to the service scheduler (840) and execute a service container. The first service at this time may be a traffic light detection service.

[0638] Meanwhile, the monitor (865) within the service scheduler (840) can monitor the performance results of the time scheduling performed based on information of the execution-related data of the first service.

[0639] For example, if the performance result of real-time scheduling exceeds the allowable number of deadline misses, the monitor (865) within the service scheduler (840) can transmit performance result data (result) including error data (error) to the service agent (800).

[0640] Meanwhile, the driver may want to change the default number of deadline misses for the first service from 5 to 2, as the rainy season approaches.

[0641] In response to this, the monitor (865) within the service scheduler (840) can change the default number of times and transmit the performance result data (result) including error data (error) to the service agent (800) when the deadline miss exceeds two times. Accordingly, the service desired by the driver can be efficiently provided.

[0642] Although the preferred embodiments of the present disclosure have been illustrated and described above, the present disclosure is not limited to the specific embodiments described above, and various modifications may be made by a person skilled in the art to which the present invention pertains without departing from the gist of the present disclosure as claimed in the claims, and such modifications should not be understood individually from the technical idea or prospect of the present disclosure.

Claims

1. A processor that runs in-vehicle services; A memory for storing data related to the above service; The above processor, Run the service agent to execute the first service, A vehicle control device that executes a service scheduler that outputs time schedule information for execution on at least one node based on information of execution-related data of the first service from the service agent.

2. In paragraph 1, The above processor, A vehicle control device that creates a time schedule table for execution in the node based on information of execution-related data of the first service, and outputs the time schedule information based on the time schedule information.

3. In paragraph 1, The above processor, A vehicle control device that performs time scheduling for execution of the first service and executes a time trigger based on the above time schedule information.

4. In paragraph 1, The above processor, A vehicle control device that monitors at least one of resource information of each node or status information during real-time operation, and outputs updated time schedule information or controls to perform a degradation mode based on the monitoring.

5. In paragraph 1, The above processor, When performing the above degradation mode, A vehicle control device that executes a second service that is simpler than the first service, changes resources, or modifies configuration.

6. In paragraph 1, further comprising a second processor; The above processor, A vehicle control device that outputs first time schedule information to the second processor based on information of execution-related data of the first service.

7. In paragraph 6, A signal processing device including the processor, the second processor, and the memory; Further comprising a second signal processing device including a third processor; The above processor, A vehicle control device that outputs second time schedule information to the third processor based on information of execution-related data of the first service.

8. In paragraph 7, The second signal processing device, Including more neural processors, The above processor, A vehicle control device that outputs third time schedule information to the neural processor based on information of execution-related data of the first service.

9. In paragraph 1, A signal processing device including the processor and the memory; further comprising a second signal processing device including at least one processor; The above processor, A vehicle control device that controls a plurality of micro-services within the first service to be performed based on information related to execution data of the first service, and to perform other parts in a processor within the second signal processing device.

10. In paragraph 9, The above processor, A vehicle control device that runs an operating system different from the processor within the second signal processing device.

11. In paragraph 9, The above processor, Controls some of the multiple microservices within the first service to run in real time, A vehicle control device in which a processor within the second signal processing device controls other parts of the plurality of micro-services within the first service to be operated in non-real time.

12. In paragraph 9, The above processor, A vehicle control device that controls the driving timing of some of the plurality of micro-services within the first service to precede the driving timing of some of the other plurality of micro-services within the first service that are executed within a processor within the second signal processing device.

13. In paragraph 1, The above processor, A vehicle control device that generates execution-related data of the first service based on a combination of multiple services.

14. In paragraph 1, The above processor, A vehicle control device that performs learning on at least one of a vehicle occupant's behavioral pattern, vehicle data, or vehicle surrounding data, and generates data related to the execution of the first service based on the learning.

15. In paragraph 1, The above first service is, Includes multiple services, The above processor, A vehicle control device that sets priorities for multiple services within the first service and controls execution of the first service based on the set priorities.

16. In paragraph 1, A vehicle control device, wherein the execution-related data of the first service includes execution condition data and execution action data of the first service.

17. In paragraph 1, The above processor, A vehicle control device that performs verification of the first service or, when verification of the first service cannot be performed, requests verification of the first service from an external server.

18. In paragraph 1, The above processor, A vehicle control device that controls execution of only a part of the first service or a scalable service when only a part of the execution condition data of the first service is satisfied.

19. In paragraph 1, A first signal processing device having the processor and the memory; A second signal processing device electrically connected to the first signal processing device and having a second processor and a second memory; A control device electrically connected to the second signal processing device and having a controller for receiving a signal from a hardware switch or sensor or controlling at least one actuator; The above processor, If the execution condition of the first service is satisfied, a request for execution of the first service is transmitted to the second signal processing device, A vehicle control device in which the second signal processing device controls the controller to output an operation on signal, an operation off signal, or an operation control signal to the actuator based on an execution request for the first service.

Citation Information

Patent Citations

  • Information processor

    JP2012146145A

  • Method for managing vehicle running records data and vehicle running management system

    KR1020140002341A

  • Control of vehicle features based on user recognition and identification

    US20160321848A1

  • Methods and systems for setting and transferring user profiles to vehicles and temporary sharing of user profiles to shared-use vehicles

    US9171268B1

  • Signal processing device of vehicle and communication device for vehicle communication device including same

    WO2023239008A1