Control device and system and vehicle

By using the first processing unit to process the task and verify the results in the second processing unit, the problem of reducing task processing efficiency caused by the use of two identical processing units in the prior art is solved, and more efficient task processing and verification are achieved.

CN119781910APending Publication Date: 2025-04-08BYD CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411368773.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-27
Publication Date
2025-04-08

AI Technical Summary

Technical Problem

Two identical processing units are used in existing vehicles for task processing, resulting in reduced task processing efficiency.

Method used

A control device is provided, including a first processing unit and a second processing unit, the first processing unit is used to process a task and output a processing result, and the second processing unit is used to verify the processing result and output the verification result, thereby avoiding two identical processing units from processing the same task.

Benefits of technology

Through this design, the efficiency of task processing is improved, especially for the rapid processing of security tasks and the rapid verification of results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119781910A_ABST
    Figure CN119781910A_ABST
Patent Text Reader

Abstract

The invention relates to a control device and system and a vehicle, the control device comprises a first processing unit and a second processing unit, the first processing unit is used for processing a task of a first type and outputting a processing result; and the second processing unit is used for verifying the processing result and outputting a verification result. The same task is prevented from being processed by using two same processing units, so that the task processing efficiency can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing technology, and in particular to a control device, a system and a vehicle. Background Art

[0002] With the development of modern automobiles, the systems are becoming more and more complex. Current vehicles usually use two identical processing units, one as the main processing unit and the other as the secondary processing unit. The main and secondary processing units run the same program to process the received tasks, and the main and secondary processing units respectively hand over the corresponding processing results to a comparison unit for verification. Using two identical processing units will reduce the processing efficiency of the task. Summary of the invention

[0003] The embodiments of the present application provide a control device, a system and a vehicle, which can improve the efficiency of task processing to solve the above-mentioned technical problems.

[0004] In order to achieve the above object, according to a first aspect of the present application, a control device is provided, the control device comprising a first processing unit and a second processing unit, wherein:

[0005] The first processing unit is used to process the first type of task and output the processing result;

[0006] The second processing unit is used to verify the processing result and output the verification result.

[0007] Optionally, the first processing task is a security task.

[0008] Optionally, the device comprises a plurality of the first processing units, and the plurality of the first processing units process the first type of tasks based on a polling mechanism; and / or

[0009] The device includes a plurality of the second processing units, and the plurality of the second processing units verify the processing results based on a polling mechanism.

[0010] Optionally, the first processing unit and the second processing unit are further configured to process the second type of tasks based on a polling mechanism and output a second processing result.

[0011] Optionally, the first processing unit and the second processing unit are further configured to process the second type of tasks based on a polling mechanism and output a second processing result.

[0012] Optionally, the safety requirement of the first type of tasks is higher than that of the second type of tasks.

[0013] Optionally, the device further comprises a scheduler, and the scheduler is used to obtain tasks to be processed from a communication network;

[0014] If the task to be processed is a task of the first type, the scheduler assigns the task to be processed to the first processing unit;

[0015] If the task to be processed is a task of the second type, the scheduler allocates the task to be processed to the first processing unit or the second processing unit based on a polling method.

[0016] Optionally, the task to be processed is a task corresponding to the device screened out by the scheduler from received tasks.

[0017] Optionally, the first processing unit is further used to obtain a task to be processed from a communication network, and process the task to be processed to obtain a processing result;

[0018] If the task to be processed is a task of the first type, the first processing unit sends the processing result to the second processing unit;

[0019] If the task to be processed is a task of the second type, the processing result is sent to the communication network.

[0020] Optionally, the first processing unit is specifically configured to, after obtaining the task to be processed, process the task to be processed based on a queuing mechanism to obtain the processing result.

[0021] Optionally, the task to be processed is a task corresponding to the device screened out by the first processing unit from received tasks.

[0022] Optionally, the second processing unit is further configured to obtain a task to be processed from a communication network, process the task to be processed to obtain a processing result, and send the processing result to the communication network.

[0023] Optionally, the second processing unit is specifically configured to, after obtaining the task to be processed, process the task to be processed based on a queuing mechanism to obtain the processing result.

[0024] Optionally, the task to be processed is a task corresponding to the device screened out by the second processing unit from received tasks.

[0025] Optionally, the first processing unit communicates with the second processing unit via inter-core communication.

[0026] Optionally, the computing performance of the first processing unit is greater than the computing performance of the second processing unit.

[0027] According to the second aspect of the present application, an embodiment of the present application further provides a control system, the control system comprising a communication network and a control device, wherein the communication network is communicatively connected to the control device.

[0028] Optionally, the system further comprises an actuator, and the actuator communicates with the control device via the communication network.

[0029] According to the third aspect of the present application, an embodiment of the present application also provides a vehicle, comprising the control device or comprising the control system.

[0030] The control device of the embodiment of the present application includes a first processing unit and a second processing unit, wherein: the first processing unit is used to process a first type of task and output a processing result; the second processing unit is used to verify the processing result and output a verification result. Avoiding using two identical processing units to process the same task can improve the processing efficiency of the task.

[0031] Other features and advantages of the present application will be described in detail in the subsequent detailed description. BRIEF DESCRIPTION OF THE DRAWINGS

[0032] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application, and those skilled in the art can obtain other drawings based on these drawings without creative work.

[0033] In order to more completely understand the present application and its beneficial effects, the following description will be given in conjunction with the accompanying drawings.

[0034] Figure 1 is a structural schematic diagram of a vehicle control device provided in an embodiment of the present application;

[0035] Figure 2 is a schematic diagram of the task timing in the polling mechanism provided in an embodiment of the present application;

[0036] Figure 3 This is a schematic diagram of polling allocation of the first type of tasks provided in an embodiment of the present application;

[0037] Figure 4 It is a flowchart of the polling mechanism provided in the embodiment of the present application;

[0038] Figure 5 This is a schematic diagram of polling allocation of the second type of tasks provided in an embodiment of the present application;

[0039] Figure 6is another structural schematic diagram of a vehicle control device provided in an embodiment of the present application;

[0040] Figure 7 It is a schematic diagram of the process of obtaining and allocating tasks by the scheduler provided in an embodiment of the present application;

[0041] Figure 8 is a flowchart of a processing task of a first processing unit provided in an embodiment of the present application;

[0042] Fig. 9 It is a flowchart of a second processing unit processing tasks and / or processing results provided by an embodiment of the present application;

[0043] Fig.10 is a schematic diagram of interaction between a control device and a communication network provided in an embodiment of the present application;

[0044] Fig.11 It is a schematic diagram of the structure of the control system provided in the embodiment of the present application. DETAILED DESCRIPTION

[0045] The technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without making creative work are within the scope of protection of the present application. At the same time, in the description of the embodiments of the present application, the terms "first", "second", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance. Thus, the features defined as "first" and "second" may explicitly or implicitly include one or more features. In the description of the embodiments of the present application, the meaning of "multiple" is two or more, unless otherwise clearly and specifically defined.

[0046] It should be noted that the description order of the following embodiments is not intended to limit the preferred order of the embodiments. Although the logical order is shown in the flow chart, in some cases, the steps shown or described may be performed in an order different from that shown in the drawings.

[0047] With the development of modern automobiles, the systems are becoming more and more complex. Current vehicles usually use two identical processing unit cores, one as the main processing unit core and the other as the secondary processing unit core. The main and secondary cores run the same program to process the received tasks, and the main and secondary cores respectively hand over the corresponding processing results to a comparison unit for verification. Using two identical processing unit cores will reduce the processing efficiency of the task.

[0048] In order to solve the above problem, the present application proposes a control device, which includes a first processing unit and a second processing unit, wherein the first processing unit is used to process a task of a first type and output a processing result; and the second processing unit is used to verify the processing result and output a verification result. Therefore, it is possible to avoid using two identical processing units to process the same task, and the processing efficiency of the task can be improved.

[0049] Please refer to Figure 1 , Figure 1 The present invention provides a schematic diagram of a structure of a vehicle control device provided in an embodiment of the present invention. The vehicle control device in the embodiment of the present invention includes a first processing unit and a second processing unit; the first processing unit is used to process a first type of task and output a processing result; the second processing unit is used to verify the processing result and output a verification result.

[0050] In this embodiment, the first processing unit communicates with the second processing unit through inter-core communication, and the first processing unit sends the processing result of the first type of task to the second processing unit through inter-core communication; the performance of the first processing unit and the second processing unit are different, and the computing performance of the first processing unit is greater than the computing performance of the second processing unit. Inter-core communication is the process and mechanism of data transmission and communication between the first processing unit and the second processing unit.

[0051] In this embodiment, the first type of task is a task that needs to be verified. The first processing unit processes the first type of task, outputs the processing result, and sends the processing result to the second processing unit through inter-core communication. The second processing unit verifies the processing result and outputs the verification result, thereby realizing rapid processing of the first type of task and rapid verification of the processing result.

[0052] The control device of the embodiment of the present application includes a first processing unit and a second processing unit. The first processing unit processes the first type of task and outputs the processing result; the second processing unit verifies the processing result and outputs the verification result. The first type of task is quickly processed and the processing result is quickly verified, avoiding the use of two identical processing units to process the same task, and thus improving the processing efficiency of the task.

[0053] In one embodiment, the first type of task is a security task, and the first processing unit is used to process the security task and output a processing result; the second processing unit is used to verify the processing result and output a verification result.

[0054] Specifically, when the control device receives a task, it identifies whether the received task is a safety task, and when it is determined that the received task is a safety task, it sends the safety task to the first processing unit for processing.

[0055] Among them, each task has the following four basic attributes: {ID, safety requirement, priority, task weight}, where ID represents the identity identification of the task and is unique. Safety requirement is the safety parameter of the task, which takes values ​​from {strong, weak}; if safety requirement = strong, the task is a safe task and requires safety verification; if safety requirement = weak, the task is a non-safe task and does not require safety verification. Priority is the priority information of the task, which represents the importance and urgency of the task. The more important and urgent the task, the higher the priority. Task weight is the task weight assigned according to the processing delay and data volume of the task, which represents the degree to which the task occupies the computing power and memory resources of the processing unit. The longer the processing delay and the larger the data volume, the higher the assigned task weight. After the control device reads the safety parameters in the attribute information of the received task, if the safety parameters of the task meet the preset parameter conditions, it determines that the task is a safe task; that is, if safetyrequirementsafetyrequirement=strong in the basic attributes of the task, the task is a safe task.

[0056] For example, in one embodiment, referring to Figure 2 , Figure 2 This is a schematic diagram of the task timing in the polling mechanism of the present application. Core_0 is the first processing unit, and Core_1 is the second processing unit. The current control device receives tasks {T1, T2, T3, T4, T5, T6, T7, T8}, and the priorities are in descending order of T1>T2>T3>T4>T5>T6>T7>T8. T1 and T2 are safety tasks with safety requirement=strong, and the rest are ordinary tasks with safety requirement=weak. According to the polling mechanism described in the present application, the first processing unit executes T1, T2, T3, T5, and T7 in sequence, and the second processing unit executes T4, T6, T1_s, T2_s, and T8 in sequence, where T1_s and T2_s are the processing results of safety tasks T1 and T2, respectively. The first processing unit and the second processing unit can execute tasks in pipeline mode, that is, different stages of multiple tasks are processed in parallel at the same time. Figure 2The processing cycles of the tasks in the timing diagram shown actually overlap in timing.

[0057] The first processing unit of this embodiment is used to process the security task and output the processing result; the second processing unit is used to verify the processing result and output the verification result. This can realize the rapid processing of the security task and the rapid verification of the processing result, avoid using two identical processing units to process the same security task and then verify the processing result, and can improve the processing efficiency of the security task.

[0058] In one embodiment, the control device includes multiple first processing units, and the multiple first processing units process the first type of tasks based on a polling mechanism; and / or, the control device includes multiple second processing units, and the multiple second processing units verify the processing results based on the polling mechanism.

[0059] Specifically, each time the control device needs to issue a task of the first type, it first obtains the current processing task volume corresponding to each first processing unit; it sorts all the first processing units according to the current processing task volume, with the processing units with smaller current processing task volumes sorted first and the processing units with larger current processing task volumes sorted last; the control device selects the first processing unit at the front of the sort as the execution processing unit of the task of the first type, and issues the task to the execution processing unit.

[0060] Specifically, each time the control device needs to send out the processing results of the first type of task, it first obtains the current processing task volume corresponding to each second processing unit; sorts all the second processing units according to the current processing task volume, with the second processing units with smaller current processing task volumes sorted first and the second processing units with larger current processing task volumes sorted last; the control device selects the second processing unit with the highest sorting position as the verification processing unit for the processing results of the first type of task, and sends the processing results to the verification processing unit.

[0061] For example, please refer to Figure 3 , Figure 3 The schematic diagram of polling allocation of the first type of tasks of the present application is shown in FIG. The control device includes three first processing units, namely, first processing unit 1, first processing unit 2 and first processing unit 3; the control device includes two second processing units, namely, second processing unit 1 and second processing unit 2; the first type of tasks are polled and allocated to first processing unit 1, first processing unit 2 or first processing unit 3; and the processing structure of the first type of tasks is polled and allocated to second processing unit 1 or second processing unit 2.

[0062] Optionally, the polling mechanism can be a weighted polling algorithm. Assuming that a polling ring has m first processing units Cj (j=1...m) that can be scheduled, a set of m weight variables polling weight is defined, and each first processing unit has an attribute {initial weight} defined. The initial weight is an initial weight assigned to each processing unit based on computing power and memory resources. The processing unit with stronger computing power and more memory resources is assigned a higher initial weight.

[0063] For details, please refer to Figure 4 , Figure 4 The figure is a flowchart of a polling mechanism. The polling mechanism embodiment is specifically a weighted polling algorithm, which includes the following steps:

[0064] S01: For all schedulable first processing units Cj (j=1...m) of the polling loop, set polling weight (Cj) = initial weight (Cj). Execute S02.

[0065] S02: Arrange all m schedulable first processing units of the polling loop in descending order according to polling weight. Execute S03.

[0066] S03: Allocate the task to the first processing unit with the highest current polling weight in the polling ring list, and set the polling weight (Cj) of the processing unit assigned to the task = polling weight (Cj) - task weight (Ti). Execute S04.

[0067] S04: Determine whether the polling weights of all schedulable cores in the polling loop are less than or equal to 0. If so, return to step S01; otherwise, return to step S02.

[0068] The control device of this embodiment reasonably allocates the first type of tasks to the first processing unit through a polling mechanism, and reasonably allocates the processing results of the first type of tasks to the second processing unit through a polling mechanism, so that the load of each processing unit is balanced and task congestion in a certain processing unit is avoided, thereby improving the system task processing efficiency.

[0069] In one embodiment, the first processing unit and the second processing unit are further configured to process the second type of tasks based on a polling mechanism and output a second processing result.

[0070] Among them, the safety requirement of the first type of task is higher than that of the second type of task. Each task has the following four basic attributes: {ID, safety requirement, priority, task weight}, where safetyrequirement is the safety parameter of the task, and takes values ​​from {strong, weak}; if safetyrequirement=strong, the task is a safe task and requires safety verification; if safetyrequirement=weak, the task is a non-safe task and does not require safety verification. After the control device reads the safety requirement in the attribute information of the received task, if safetyrequirement=strong, the task is a first type of task, that is, a safe task; if safetyrequirement=weak, the task is a second type of task, that is, a non-safe task.

[0071] Specifically, each time the control device needs to issue a task of the second type, it first obtains the current processing task volume corresponding to the first processing unit and the second processing unit; sorts all the first processing units and the second processing units according to the processing task volume, with the processing units with smaller processing task volumes sorted first and the processing units with larger processing task volumes sorted last; the scheduler selects the processing unit with the highest sorting level as the execution processing unit of the task, and issues the task to the execution processing unit.

[0072] For example, please refer to Figure 5 , Figure 5 The schematic diagram of polling allocation of the second type of tasks of the present application is shown in FIG. The control device includes three first processing units, namely, first processing unit 1, first processing unit 2, and first processing unit 3, and the control device includes two second processing units, namely, second processing unit 1 and second processing unit 2. The control device allocates the second type of task polling to first processing unit 1, first processing unit 2, first processing unit 3, second processing unit 1, or second processing unit 2.

[0073] Optionally, the polling mechanism adopted by the scheduler can be a weighted polling algorithm. Assume that a certain polling ring has m processing units Cj (j=1...m) that can be scheduled, and the m processing units include the first processing unit and the second processing unit. Define a set of m weight variables polling weights, and each first processing unit and second processing unit defines an attribute {initial weight}. The initial weight is an initial weight assigned to each processing unit based on computing power and memory resources. The stronger the computing power and the more memory resources, the higher the initial weight assigned to the processing unit. Specifically, the steps of the weighted polling algorithm are:

[0074] S01: For all schedulable processing units Cj (j=1...m) of the polling loop, set polling weight (Cj) = initial weight (Cj). Execute S02.

[0075] S02: Arrange all m schedulable processing units of the polling loop in descending order according to polling weight. Execute S03.

[0076] S03: Allocate the task to the processing unit with the highest current polling weight in the polling ring list, and set the polling weight (Cj) of the processing unit assigned to the task = polling weight (Cj) - task weight (Ti). Execute S04.

[0077] S04: Determine whether the polling weights of all schedulable cores in the polling loop are less than or equal to 0. If so, return to step S01; otherwise, return to step S02.

[0078] It should be noted that the polling mechanism is used to reasonably distribute tasks to the two processing units, so that the load of each processing unit is balanced, and task congestion in a certain processing unit is avoided, thereby improving the system task processing efficiency.

[0079] Please refer to Figure 6 , Figure 6 1 is another structural diagram of a vehicle control device provided in an embodiment of the present application. In one embodiment, the vehicle control device includes a first processing unit and a second processing unit; the first processing unit is used to process a first type of task and output a processing result; the second processing unit is used to verify the processing result and output a verification result. The control device also includes a scheduler, which is used to obtain a task to be processed from a communication network;

[0080] Among them, the task to be processed is the task corresponding to the control device that the scheduler screens out from the received tasks. Specifically, after receiving the task sent by the communication network, the scheduler parses the task and obtains the identity information in the basic attributes of the task; if it is determined that the identity information exists in the preset receiving list of the control device, the task is received; if it is determined that the identity information does not exist in the preset receiving list of the control device, the task is not received. Exemplarily, the scheduler obtains the identity information ID in the basic attributes of the task, compares the ID with the ID in the preset receiving list, and if there is an ID identical to the ID of the task in the preset receiving list, the task is received; if there is no ID identical to the ID of the task in the preset receiving list, the task is not received.

[0081] In this embodiment, if the task to be processed is a task of the first type, the scheduler assigns the task to be processed to the first processing unit; if the task to be processed is a task of the second type, the scheduler assigns the task to be processed to the first processing unit or the second processing unit based on a polling manner.

[0082] Specifically, each task has the following four basic attributes: {ID, safety requirement, priority, task weight}, where safety requirement is the safety parameter of the task, and takes values ​​from {strong, weak}; if safety requirement = strong, the task is a safe task, i.e., a task of the first type, and requires safety verification; if safety requirement = weak, the task is an unsafe task, i.e., a task of the second type, and does not require safety verification. After the scheduler reads the safety requirement in the attribute information of the received task, if safetyrequirement = strong, the task is a task of the first type, i.e., a safe task, and the scheduler assigns the task to be processed to the first processing unit; if safety requirement = weak, the task is a task of the second type, i.e., an unsafe task, and the scheduler assigns the task to be processed to the first processing unit based on polling.

[0083] Please refer to Figure 7 , Figure 7 The following is a flow chart of the scheduler obtaining and assigning tasks. The specific process is as follows:

[0084] S11: The scheduler receives a task to be processed sent by the communication network and executes S12.

[0085] S12: The scheduler analyzes the task to be processed, obtains the identity information in the basic attributes of the task to be processed, and then determines whether the identity information exists in the preset receiving list. If it exists, the task to be processed is received and S13 is executed; if it does not exist, the task to be processed is not received.

[0086] S13: The scheduler reads the safety requirement in the attribute information of the received task to be processed. If safety requirement=strong, the task to be processed is a task of the first type, and S14 is executed; if safety requirement=weak, the task to be processed is not a task of the first type, and S15 is executed.

[0087] S14: Allocate the tasks to be processed to the first processing unit based on a round-robin manner.

[0088] S15: Allocate the task to be processed to the first processing unit or the second processing unit based on a polling method.

[0089] The control device of this embodiment analyzes and filters out tasks corresponding to the control device through a scheduler, avoiding processing tasks that are not within its own scope and reducing the amount of unnecessary tasks; at the same time, different types of tasks are sent to corresponding processing units for processing, avoiding two identical processing units processing the same task, thereby improving the efficiency of task processing.

[0090] In one embodiment, reference Figure 8 , Figure 8 This is a flow chart of the processing tasks of the first processing unit of this application. The specific process is as follows:

[0091] S11: The scheduler receives a task to be processed sent by the communication network and executes S12.

[0092] S12: The scheduler analyzes the task to be processed, obtains the identity information in the basic attributes of the task to be processed, and then determines whether the identity information exists in the preset receiving list. If it exists, the task to be processed is received and S13 is executed; if it does not exist, the task to be processed is not received.

[0093] S13: Allocate the task to be processed to the first processing unit based on the polling method, and the first processing unit executes the following steps:

[0094] S21: The first processing unit parses the task to be processed, obtains the priority information priority in the basic attributes of the task to be processed, compares the priority of the task to be processed with the priority information priority of all tasks in the task list in the first processing unit, and then inserts the task to be processed into the task list according to the priority of the task to be processed.

[0095] S22: The first processing unit executes the tasks in sequence according to the task list based on the pipeline mechanism, and obtains the processing results of the tasks.

[0096] S23: The first processing unit obtains the safety requirement in the attribute information of the processing result. If safetyrequirement=strong, the processing result is the processing result of the first type of task, and S24 is executed; if safetyrequirement=weak, the processing result is not the processing result of the first type of task, and S25 is executed.

[0097] S24: The first processing unit distributes the processing result to the second processing unit based on a polling method, so that the second processing unit verifies the processing result.

[0098] S25: The first processing unit sends the processing result to the communication network.

[0099] The control device of this embodiment screens out tasks corresponding to the control device through the scheduler analysis, avoids processing tasks that are not within its own scope, and reduces the amount of unnecessary tasks; at the same time, the first type of task is sent to the corresponding first processing unit for processing, and the processing result of the first type of task is sent to the second processing unit to verify the processing result, and the verification result is output. The first type of task is quickly processed and the processing result is quickly verified, avoiding the use of two identical processing units to process the same first type of task and then verifying the processing result, which can improve the processing efficiency of the task.

[0100] In one embodiment, reference Fig. 9 , Fig. 9 This is a flow chart of the second processing unit of the present application processing tasks and / or processing results. The specific process is as follows:

[0101] S11: The scheduler receives a task to be processed sent by the communication network and executes S12.

[0102] S12: The scheduler analyzes the task to be processed, obtains the identity information in the basic attributes of the task to be processed, and then determines whether the identity information exists in the preset receiving list. If it exists, the task to be processed is received and S13 is executed; if it does not exist, the task to be processed is not received.

[0103] S13: Allocate the tasks to be processed to the first processing unit based on the polling method, and the second processing unit executes the following steps:

[0104] S31: The second processing unit receives the processing result sent by the first processing unit.

[0105] S32: The second processing unit parses the processing result and / or the task to be processed, obtains the priority information priority in the basic attributes of the processing result and / or the task to be processed, compares the priority of the processing result and / or the task to be processed with the priority information priority of all tasks in the task list in the second processing unit, and then inserts the processing result and / or the task to be processed into the task list according to the priority of the processing result and / or the task to be processed.

[0106] S33: The second processing unit executes the processing results and / or tasks in sequence according to the task list based on the pipeline mechanism to obtain the verification results and / or processing results.

[0107] S34: If the second processing unit determines that the verification result of the processing result sent by the first processing unit is passed, the second processing unit sends the processing result sent by the first processing unit to the communication network.

[0108] S35: The second processing unit sends the processing result to the communication network.

[0109] The control device of this embodiment analyzes and filters out tasks corresponding to the control device through a scheduler, avoids processing tasks that are not within its own scope, and reduces the amount of unnecessary tasks; at the same time, the second processing unit can be reused to verify the processing results of the first type of tasks and process the tasks, which can improve the efficiency of result verification and task processing.

[0110] In one embodiment, reference Fig.10 , Fig.10 The first processing unit is also used to obtain a task to be processed from the communication network, and process the task to be processed to obtain a processing result; if the task to be processed is a task of the first type, the first processing unit sends the processing result to the second processing unit; if the task to be processed is a task of the second type, the processing result is sent to the communication network.

[0111] Specifically, the first processing unit is also used to obtain tasks to be processed from the communication network, and process the tasks to be processed to obtain processing results, and analyze the tasks to be processed. If the tasks to be processed are tasks of the first type, the first processing unit sends the processing results to the second processing unit; if the tasks to be processed are tasks of the second type, the processing results are sent to the communication network.

[0112] Among them, the task to be processed is the task corresponding to the device that the first processing unit screens out from the received tasks. Specifically, when receiving the task, the first processing unit parses the task and obtains the identity information in the basic attributes of the task; if it is determined that the identity information exists in the preset receiving list of the control device, the task is received; if it is determined that the identity information does not exist in the preset receiving list of the control device, the task is not received. Exemplarily, the first processing unit obtains the identity information ID in the basic attributes of the task, and compares the ID with the ID in the preset receiving list. If there is an ID identical to the ID of the task in the preset receiving list, the task is received; if there is no ID identical to the ID of the task in the preset receiving list, the task is not received. The first processing unit analyzes and screens out the tasks corresponding to the control device, avoids processing tasks that are not within its own scope, and reduces the amount of unnecessary tasks.

[0113] In this embodiment, the first processing unit is specifically configured to, after obtaining the task to be processed, process the task to be processed based on a queuing mechanism to obtain the processing result.

[0114] Specifically, after receiving the task to be processed, the first processing unit parses the task to be processed, obtains the priority information priority in the basic attributes of the task to be processed, compares the priority of the task to be processed with the priority information priority of all tasks in the task list in the first processing unit, and then inserts the task to be processed into the task list according to the priority of the task to be processed; the first processing unit executes tasks in sequence according to the task list based on the pipeline mechanism, and when it is the turn of the task to be processed, processes the task to be processed to obtain the processing result.

[0115] The first processing unit of the control device of this embodiment inserts the tasks to be processed into the task list according to the priority information of the tasks to be processed, and processes the tasks to be processed according to the queuing mechanism to obtain the processing results, which can ensure that tasks with higher priorities are processed in a timely manner, and help improve the efficiency of task processing.

[0116] In one embodiment, reference Fig.10The second processing unit is further configured to obtain a task to be processed from the communication network, process the task to be processed to obtain a processing result, and send the processing result to the communication network. The task to be processed is a task corresponding to the device selected by the second processing unit from the received tasks.

[0117] Specifically, the second processing unit is also used to obtain tasks to be processed from the communication network, process the tasks to be processed to obtain processing results, and send the processing results to the communication network. When the second processing unit receives the task, it parses the task to obtain the identity information in the basic attributes of the task; if it is determined that the identity information exists in the preset receiving list of the control device, the task is received; if it is determined that the identity information does not exist in the preset receiving list of the control device, the task is not received. Exemplarily, the second processing unit obtains the identity information ID in the basic attributes of the task, compares the ID with the ID in the preset receiving list, and if there is an ID in the preset receiving list that is the same as the ID of the task, the task is received; if there is no ID in the preset receiving list that is the same as the ID of the task, the task is not received. The second processing unit analyzes and filters out the tasks corresponding to the control device, avoids processing tasks that do not belong to its own scope, and reduces the amount of unnecessary tasks.

[0118] In this embodiment, the second processing unit is specifically configured to, after obtaining the task to be processed, process the task to be processed based on a queuing mechanism to obtain the processing result.

[0119] Specifically, after receiving the task to be processed, the second processing unit parses the task to be processed, obtains the priority information priority in the basic attributes of the task to be processed, compares the priority of the task to be processed with the priority information priority of all tasks in the task list in the second processing unit, and then inserts the task to be processed into the task list according to the priority of the task to be processed; the second processing unit executes tasks in sequence according to the task list based on the pipeline mechanism, and when it is the turn of the task to be processed, processes the task to be processed to obtain the processing result.

[0120] The second processing unit of the control device of this embodiment inserts the tasks to be processed into the task list according to the priority information of the tasks to be processed, and processes the tasks to be processed according to the queuing mechanism to obtain the processing results, which can ensure that tasks with higher priorities are processed in a timely manner, and help improve the efficiency of task processing.

[0121] refer to Fig.11The embodiment of the present application also provides a control system, the control system includes a communication network and the control device of the above embodiment, the communication network is in communication connection with the control device. Further, the control system also includes an actuator, the actuator communicates with the control device via the communication network.

[0122] The control system includes a control device, wherein the first processing unit is used to process a first type of task and output a processing result; and the second processing unit is used to verify the processing result and output a verification result. Avoiding using two identical processing units to process the same task can improve the processing efficiency of the task.

[0123] An embodiment of the present application also provides a vehicle, which may include the control device and / or control system of the above embodiment.

[0124] The control device in the embodiment of the present application may be a central controller of the vehicle or a domain controller.

[0125] The first processing unit and the second processing unit in the control device can be processing units of the same type or different types. For example, the processing unit can be a processing unit CPU, a graphics processing unit GPU, a network processing unit (NP), etc.

[0126] The control device comprises a first processing unit and a second processing unit, wherein:

[0127] The first processing unit is used to process the first type of task and output the processing result;

[0128] The second processing unit is used to verify the processing result and output the verification result.

[0129] Optionally, the first type of task is a safety task.

[0130] Optionally, the device includes a plurality of the first processing units, and the plurality of the first processing units process the first type of tasks based on a polling mechanism; and / or;

[0131] The device includes a plurality of the second processing units, and the plurality of the second processing units verify the processing results based on a polling mechanism.

[0132] Optionally, the first processing unit and / or the second processing unit is further configured to process a second type of task and output a second processing result.

[0133] Optionally, the first processing unit and the second processing unit are further configured to process the second type of tasks based on a polling mechanism and output a second processing result.

[0134] Optionally, the safety requirement of the first type of tasks is higher than that of the second type of tasks.

[0135] Optionally, the device further comprises a scheduler, the scheduler being used to obtain a task to be processed from a communication network;

[0136] If the task to be processed is a task of the first type, the scheduler assigns the task to be processed to the first processing unit;

[0137] If the task to be processed is a task of the second type, the scheduler allocates the task to be processed to the first processing unit or the second processing unit based on a polling method.

[0138] Optionally, the task to be processed is a task corresponding to the device screened out by the scheduler from received tasks.

[0139] Optionally, the first processing unit is further used to obtain a task to be processed from a communication network, and process the task to be processed to obtain a processing result;

[0140] If the task to be processed is a task of the first type, the first processing unit sends the processing result to the second processing unit;

[0141] If the task to be processed is a task of the second type, the processing result is sent to the communication network.

[0142] Optionally, the first processing unit is specifically configured to, after obtaining the task to be processed, process the task to be processed based on a queuing mechanism to obtain the processing result.

[0143] Optionally, the task to be processed is a task corresponding to the device screened out by the first processing unit from received tasks.

[0144] Optionally, the second processing unit is further configured to obtain a task to be processed from a communication network, process the task to be processed to obtain a processing result, and send the processing result to the communication network.

[0145] Optionally, the second processing unit is specifically configured to, after obtaining the task to be processed, process the task to be processed based on a queuing mechanism to obtain the processing result.

[0146] Optionally, the task to be processed is a task corresponding to the device screened out by the second processing unit from received tasks.

[0147] Optionally, the first processing unit communicates with the second processing unit via inter-core communication.

[0148] Optionally, the computing performance of the first processing unit is greater than the computing performance of the second processing unit.

[0149] The vehicle of this embodiment may also include a camera, a sensor, a wireless fidelity module, a Bluetooth module, etc., which will not be described in detail here.

[0150] The vehicle of this embodiment includes a control device, in which the first processing unit is used to process the first type of task and output the processing result; the second processing unit is used to verify the processing result and output the verification result. Avoiding using two identical processing units to process the same task can improve the processing efficiency of the task.

[0151] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0152] Those skilled in the art will appreciate that all or part of the steps in the various methods of the above-described embodiments may be completed by a computer program, or by controlling related hardware through a computer program. The computer program may be stored in a computer-readable storage medium and loaded and executed by a processing unit.

[0153] In the description of this application, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more features. In the description of this application, the meaning of "plurality" is two or more, unless otherwise clearly and specifically defined.

[0154] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0155] The embodiments, implementation methods and related technical features of the present application can be combined and replaced with each other without conflict.

[0156] The above are only preferred embodiments of the present application and do not constitute any form of limitation to the present application. However, any simple modifications, equivalent changes and modifications made to the above embodiments based on the technical essence of the present application without departing from the content of the technical solution of the present application are still within the scope of the technical solution of the present application.

Claims

1. A control device, characterized in that: The control device comprises a first processing unit and a second processing unit, wherein: The first processing unit is used to process the first type of task and output the processing result; The second processing unit is used to verify the processing result and output the verification result.

2. The device according to claim 1, characterized in that The first type of tasks are safety tasks.

3. The device according to claim 1, characterized in that The device comprises a plurality of the first processing units, and the plurality of the first processing units process the first type of tasks based on a polling mechanism; and / or The device includes a plurality of the second processing units, and the plurality of the second processing units verify the processing results based on a polling mechanism.

4. The device according to claim 1, characterized in that The first processing unit and / or the second processing unit is further configured to process a second type of task and output a second processing result.

5. The device according to claim 4, characterized in that The first processing unit and the second processing unit are further configured to process the second type of tasks based on a polling mechanism and output a second processing result.

6. The device according to claim 4 or 5, characterized in that The safety requirement of the first type of tasks is higher than that of the second type of tasks.

7. The device according to any one of claims 1 to 6, characterized in that: The device also includes a scheduler, which is used to obtain tasks to be processed from a communication network; If the task to be processed is a task of the first type, the scheduler assigns the task to be processed to the first processing unit; If the task to be processed is a task of the second type, the scheduler allocates the task to be processed to the first processing unit or the second processing unit based on a polling method.

8. The device according to claim 7, characterized in that The tasks to be processed are tasks corresponding to the device selected by the scheduler from the received tasks.

9. The device according to any one of claims 1 to 6, characterized in that: The first processing unit is further used to obtain a task to be processed from a communication network, and process the task to be processed to obtain a processing result; If the task to be processed is a task of the first type, the first processing unit sends the processing result to the second processing unit; If the task to be processed is a task of the second type, the processing result is sent to the communication network.

10. The device according to claim 9, characterized in that The first processing unit is specifically configured to, after obtaining the task to be processed, process the task to be processed based on a queuing mechanism to obtain the processing result.

11. The device according to claim 9 or 10, characterized in that The tasks to be processed are tasks corresponding to the device selected by the first processing unit from the received tasks.

12. The device according to any one of claims 1 to 6, characterized in that: The second processing unit is further configured to obtain a task to be processed from a communication network, process the task to be processed to obtain a processing result, and send the processing result to the communication network.

13. The device according to claim 12, characterized in that The second processing unit is specifically configured to, after obtaining the task to be processed, process the task to be processed based on a queuing mechanism to obtain the processing result.

14. The device according to claim 12 or 13, characterized in that The tasks to be processed are tasks corresponding to the device selected by the second processing unit from the received tasks.

15. The device according to any one of claims 1 to 14, characterized in that: The first processing unit communicates with the second processing unit through inter-core communication.

16. The device according to any one of claims 1 to 15, characterized in that The computing performance of the first processing unit is greater than the computing performance of the second processing unit.

17. A control system, characterized in that: It comprises a communication network and the control device according to any one of claims 1 to 16, wherein the communication network is communicatively connected with the control device.

18. The system according to claim 17, characterized in that The system further includes an actuator, wherein the actuator communicates with the control device via the communication network.

19. A vehicle, characterized in that: The control device comprises any one of claims 1 to 16, or the control system comprises claim 17 or 18.