Vehicle data processing method, device, equipment and storage medium
By dynamically allocating vehicle data and computing resources in a multi-domain controller architecture, the reliability and safety problems caused by SoC failure are solved, the flexibility and stability of autonomous vehicles are improved, and flexibility in various areas of the vehicle is achieved control.
Patent Information
- Application Number
- CN202210476296.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-29
- Publication Date
- 2024-12-13
- Estimated Expiration
- 2042-04-29
AI Technical Summary
The reliability risks and degradation of autonomous driving functions caused by SoC failure under the existing multi-domain controller architecture, and the strong coupling design of the sensing unit and the SoC are under functional safety pressure, affecting the flexibility, stability and safety of the vehicle.
By receiving vehicle data sent by the perception unit, determining the target computing unit based on data marks, and dynamically allocating data and computing resources between multiple to-select computing units, ensuring that the data is distributed and processed in the time stamp order, realizing computing resources Flexible adjustment and redundant utilization reduce the risk of single SoC failure.
Reduced the reliability risks and degradation of autonomous driving functions caused by single SoC failure under the multi-domain controller architecture, improves the flexibility, stability and safety of autonomous driving vehicles, and achieves flexible control of various areas of the vehicle.
Smart Images

Figure CN114741203B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer processing technology, and in particular to a vehicle data processing method, device, equipment and storage medium. Background Art
[0002] With the rise of autonomous driving technology, the addition of external sensor units such as video cameras, millimeter-wave radars, and lidars has placed increasing demands on the computing power of vehicle controllers. The traditional distributed electronic control unit (ECU) architecture can no longer meet the requirements of autonomous driving for controller computing power, and the redundancy of wiring harnesses is also difficult to meet the requirements of high-speed communication and reliability in the vehicle environment. Therefore, the vehicle electronic and electrical architecture has gradually shifted from discrete to centralized to meet the current requirements of autonomous driving for vehicle intelligence.
[0003] Therefore, in the prior art, the entire autonomous driving is gradually divided into several core domain controllers such as the cockpit domain, self-driving domain, and chassis control domain. When performing over-the-air (OTA) upgrades, the gateway is used to distribute the OTA upgrade package to each domain controller, which reduces the wiring harness to a certain extent and realizes centralized management. However, each domain controller is still functionally separate and independent, and the sensor unit of each domain controller is strongly coupled with the corresponding domain controller. For example, the camera used in the cockpit domain is connected to the processor (System on Chip, SoC) of the cockpit domain, and the self-driving domain cannot access it. The resources of the entire machine are in a fragmented state, and the sensor units and SoC computing resources of each domain controller cannot be shared.
[0004] In addition, this design method of strongly coupling the sensor unit with the SoC also creates great design and execution pressure on the functional safety strategy. Taking the autonomous driving domain as an example, each SoC in the existing solution is connected to different sensor units, such as front view, rear view, surround view, etc. Once a SoC has a functional abnormality, the sensor unit connected to it will no longer be able to work. For functional safety reasons, the vehicle must downgrade its autonomous driving function and perform actions such as deceleration and pull-over, which affects the customer experience and also poses a safety risk. Summary of the invention
[0005] The embodiments of the present application provide a vehicle data processing method, apparatus, device and storage medium, which reduce the reliability risk and autonomous driving function degradation caused by the failure of a single SoC under the existing multi-domain controller architecture, and can flexibly adjust the computing power unit according to the business computing power requirements without affecting the access of vehicle sensors, thereby improving the flexibility, stability and safety of autonomous driving vehicles.
[0006] On the one hand, an embodiment of the present application provides a vehicle data processing method, the method comprising:
[0007] Receiving first vehicle data sent by the sensing unit; the first vehicle data includes a data tag;
[0008] Determine the target computing unit based on the data tag;
[0009] When the target computing unit includes multiple candidate computing units, determining the spare computing power information of the multiple candidate computing units;
[0010] Determine a target computing unit from a plurality of candidate computing units based on the free computing power information;
[0011] distributing the first vehicle data to a target computing unit;
[0012] Receiving second vehicle data obtained by the target computing unit based on the first vehicle data;
[0013] Decision information is determined based on the second vehicle data.
[0014] Further, determining the target computing unit based on the data tag includes:
[0015] Get the data receiving mapping relationship;
[0016] The target computing unit is determined based on the data tag and data reception mapping relationship.
[0017] Further, the first vehicle data includes multiple frames of data to be processed;
[0018] Determining a target computing unit from multiple candidate computing units based on the free computing power information includes:
[0019] Determine required computing power information of a single frame of data to be processed among multiple frames of data to be processed; the required computing power information is computing power information required to process the single frame of data to be processed;
[0020] Based on the required computing power information and the spare computing power information of the multiple candidate computing units, multiple target computing units are determined from the multiple candidate computing units.
[0021] Furthermore, the single frame of data to be processed includes timestamp information;
[0022] Distributing the first vehicle data to the target computing unit includes:
[0023] The multiple frames of data to be processed in the first vehicle data are distributed to the multiple target computing units in sequence according to the order of timestamp information.
[0024] Further, receiving the second vehicle data obtained by the target computing unit based on the first vehicle data includes:
[0025] Receiving a plurality of feedback data obtained by a plurality of target computing units based on a single frame of data to be processed;
[0026] The plurality of feedback data are integrated to obtain second vehicle data.
[0027] Furthermore, the method also includes:
[0028] Receiving upgrade package data sent by the communication unit; the upgrade package data includes an upgrade mark;
[0029] Based on the upgrade mark, determine the computing unit to be upgraded from multiple candidate computing units in the target computing power unit;
[0030] Send the upgrade package data to the computing unit to be upgraded.
[0031] Further, the first vehicle data includes multiple frames of data to be processed;
[0032] Determining a target computing unit from multiple candidate computing units based on the free computing power information includes:
[0033] Determine required computing power information of a single frame of data to be processed among multiple frames of data to be processed; the required computing power information is the computing power required to process the single frame of data to be processed;
[0034] Based on the required computing power information and the free computing power information of the computing units not to be upgraded, a target computing unit is determined from the computing units not to be upgraded; the computing units not to be upgraded are the computing units to be selected except the computing units to be upgraded among the multiple computing units to be selected.
[0035] On the other hand, a vehicle data processing method is provided, the method comprising:
[0036] Receiving first vehicle data sent by a vehicle sensor; the first vehicle data includes multiple frames of data to be processed;
[0037] Based on a receiving time point of a single frame of data to be processed among multiple frames of data to be processed, setting timestamp information for the single frame of data to be processed;
[0038] adding a data tag to the first vehicle data based on the identity information of the vehicle sensor;
[0039] Multiple frames of to-be-processed data in the first vehicle data are sent sequentially based on the order of timestamp information.
[0040] Furthermore, the number of vehicle sensors is multiple;
[0041] Receiving first vehicle data sent by a vehicle sensor, including:
[0042] Receiving a plurality of first vehicle data respectively sent by a plurality of vehicle sensors; each of the plurality of first vehicle data includes a plurality of frames of data to be processed;
[0043] Sending multiple frames of to-be-processed data in the first vehicle data in sequence based on the order of timestamp information includes:
[0044] Receiving a synchronization pulse signal;
[0045] Based on the synchronization pulse signal, a single frame of to-be-processed data among a plurality of frames of to-be-processed data having the same timestamp information in a plurality of first vehicle data is synchronously and sequentially sent in the order of the timestamp information.
[0046] In another aspect, a vehicle data processing device is provided, the device comprising:
[0047] A first receiving module, configured to receive first vehicle data sent by a sensing unit; the first vehicle data includes a data tag;
[0048] A first determination module, used to determine a target computing power unit based on the data tag;
[0049] A second determination module is used to determine the free computing power information of the multiple candidate computing units when the target computing power unit includes multiple candidate computing units;
[0050] A third determination module is used to determine a target computing unit from a plurality of candidate computing units based on the free computing power information;
[0051] A distribution module, used for distributing the first vehicle data to a target computing unit;
[0052] A second receiving module, used for receiving second vehicle data obtained by the target computing unit based on the first vehicle data;
[0053] The fourth determination module is used to determine decision information based on the second vehicle data.
[0054] In another aspect, a data processing device is provided, the device comprising:
[0055] A third receiving module is used to receive first vehicle data sent by a vehicle sensor; the first vehicle data includes multiple frames of data to be processed;
[0056] A setting module, used for setting timestamp information for a single frame of data to be processed based on a receiving time point of a single frame of data to be processed among multiple frames of data to be processed;
[0057] A data tag adding module, used for adding a data tag to the first vehicle data based on the identity information of the vehicle sensor;
[0058] The sending module is used to send multiple frames of to-be-processed data in the first vehicle data in sequence based on the order of timestamp information.
[0059] On the other hand, a device is provided, comprising a processor and a memory, wherein the memory stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, at least one program, a code set or an instruction set is loaded and executed by the processor to implement the vehicle data processing method as described above.
[0060] On the other hand, a computer-readable storage medium is provided, in which at least one instruction, at least one program, code set or instruction set is stored, and the at least one instruction, at least one program, code set or instruction set is loaded and executed by a processor to implement the vehicle data processing method as described above.
[0061] The vehicle data processing method, device, equipment and storage medium provided in the embodiments of the present application have the following technical effects:
[0062] In an embodiment of the present application, first vehicle data sent by a perception unit is received, wherein the first vehicle data includes a data tag, a target computing power unit is determined based on the data tag, and when the target computing power unit includes multiple computing units to be selected, free computing power information of the multiple computing units to be selected is determined, and the target computing unit is determined from the multiple computing units to be selected based on the free computing power information, the first vehicle data is distributed to the target computing unit, and second vehicle data obtained by the target computing unit based on the first vehicle data is received, and decision information is determined based on the second vehicle data. Then, various areas of the vehicle can be controlled through the decision information, thereby reducing the reliability risk and degradation of the autonomous driving function caused by the failure of a single SoC under the existing multi-domain controller architecture, and the computing power unit can be flexibly adjusted according to the business computing power requirements without affecting the access of vehicle sensors, thereby improving the flexibility, stability and safety of autonomous driving vehicles. BRIEF DESCRIPTION OF THE DRAWINGS
[0063] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, 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 invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0064] Figure 1 is a schematic diagram of an application environment provided by an embodiment of the present application;
[0065] Figure 2 It is a flow chart of a vehicle data processing method provided in an embodiment of the present application;
[0066] Figure 3It is a flowchart of a method for determining a target computing power unit provided in an embodiment of the present application;
[0067] Figure 4 It is a flowchart of a method for determining a target computing unit provided in an embodiment of the present application;
[0068] Figure 5 It is a flowchart of a computing unit upgrade method provided in an embodiment of the present application;
[0069] Figure 6 It is a flowchart of a method for determining a target computing unit provided in an embodiment of the present application;
[0070] Figure 7 is a schematic diagram of a vehicle data distribution method provided in an embodiment of the present application;
[0071] Figure 8 is a schematic diagram of an exception handling method for vehicle data distribution provided in an embodiment of the present application;
[0072] Fig. 9 It is a flowchart of a vehicle data determination method provided in an embodiment of the present application;
[0073] Fig.10 It is a flow chart of a vehicle data processing method provided in an embodiment of the present application;
[0074] Fig.11 is a structural schematic diagram of a vehicle data processing device provided in an embodiment of the present application;
[0075] Fig.12 is a structural schematic diagram of a vehicle data processing device provided in an embodiment of the present application;
[0076] Fig.13 It is a hardware structure block diagram of a server of a vehicle data processing method or a vehicle data sending method provided in an embodiment of the present application. DETAILED DESCRIPTION
[0077] The technical solutions in the embodiments of the present application will be described clearly and completely 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, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0078] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or server that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0079] See also Figure 1 , Figure 1 It is a schematic diagram of an application environment provided by an embodiment of the present application, which includes a vehicle, wherein the vehicle can be an unmanned vehicle, that is, an automatic driving vehicle, or a semi-automatic driving vehicle.
[0080] In an optional implementation, the vehicle may include a central computing platform, which may include a main control unit, a sensing unit, and multiple computing power units. The main control unit is connected to the sensing unit, and the main control unit is respectively connected to the multiple computing power units.
[0081] Specifically, the multiple computing units may include an automated driving domain computing unit (ADC), a cockpit domain computing unit (CDC), and a chassis domain computing unit (VDC). Of course, other domain computing units may also be included.
[0082] In an optional implementation, the computing unit may include one or more computing units (System on Chip, SoC), and the main control unit is connected to the computing unit by connecting to one or more computing units respectively. For example, the self-driving domain computing unit may include one or more computing units, and of course, the cockpit domain computing unit and the chassis domain computing unit may also include one or more computing units.
[0083] Specifically, the number of computing units in each domain computing unit can be determined according to the actual amount of business data to be processed.
[0084] In an optional implementation, the perception unit is connected to a vehicle sensor, wherein the number of vehicle sensors may be multiple, and the vehicle sensor may be a camera sensor, a millimeter wave radar sensor, or a lidar sensor. Of course, the vehicle sensor may also be other types of vehicle sensors. The perception unit is used to integrate and uniformly process vehicle data sent by multiple vehicle sensors, so that the vehicle data sent by multiple vehicle sensors can be uniformly sent to the main control unit, and then the main control unit can perform uniform distribution and scheduling to one or more computing units.
[0085] In an optional implementation, the sensing unit further includes a synchronization module.
[0086] Specifically, the synchronization module may be a Global Positioning System (GPS) module, which may receive synchronization pulse signals sent by a satellite system, and maintain clock synchronization in each transmission phase of vehicle data in a central computing platform based on the synchronization pulse signals.
[0087] In an optional implementation, the central computing platform may further include a communication unit and a gateway, and the main control unit is connected to the communication unit and the gateway unit, respectively, wherein the communication unit may include a 5G communication module and a V2X (vehicle-to-everything) communication module, and through the 5G communication module and the V2X module, data linkage is performed with roadside equipment, other autonomous driving vehicles and servers to achieve human-vehicle-road-cloud collaboration.
[0088] In an optional implementation, the main control unit may include a first switching module and a second switching module, the first switching module is respectively connected to the perception unit and multiple computing power units, and the second switching module is respectively connected to the communication unit, the gateway unit and multiple computing power units.
[0089] Specifically, the first switching module may be a PCI-E Switch (Peripheral Component Interconnect-Express Switch), and the second switching module may be an ETH Switch (Ethernet Switch).
[0090] In an optional embodiment, the central computing platform may include a backup control unit, which can implement the same functions and has the same connection method as the main control unit. The backup control unit is configured to detect the operating status of the main control unit and take over the main control unit in the event of a failure of the main control unit, thereby ensuring the stability of the system operation in the vehicle's central computing platform.
[0091] The following describes a specific embodiment of a vehicle data processing method of the present application. Figure 2It is a flow chart of a vehicle data processing method provided in an embodiment of the present application. This specification provides method operation steps such as the embodiment or flow chart, but may include more or fewer operation steps based on conventional or non-creative labor. The sequence of steps listed in the embodiment is only one execution method among many step execution sequences, and does not represent the only execution sequence. When the actual system or server product is executed, it can be executed in the method sequence shown in the embodiment or in parallel (for example, in a parallel processor or multi-threaded processing environment). Steps S201-S213 and their sub-steps listed in the embodiment are performed based on the main control unit, as shown in the specific example. Figure 2 As shown, the method may include:
[0092] S201: Receive first vehicle data sent by a perception unit, where the first vehicle data includes a data tag.
[0093] S203: Determine the target computing unit based on the data tag.
[0094] Figure 3 : is a flow chart of a method for determining a target computing unit provided in an embodiment of the present application. In an embodiment of the present application, determining a target computing unit based on a data tag may include the following steps:
[0095] S301: Acquire data receiving mapping relationship.
[0096] In an embodiment of the present application, the main control unit is preset with a data reception mapping relationship, which is a mapping relationship between the identity information of the computing power unit and the data tag. In an optional embodiment, the data reception mapping relationship can be expressed as a data reception mapping relationship table, which is stored in a storage area corresponding to the main control unit.
[0097] S303: Determine the target computing unit based on the data tag and data reception mapping relationship.
[0098] In an embodiment of the present application, through the data tag of the first vehicle data and the acquired data reception mapping relationship, the computing power unit corresponding to the data tag of the first vehicle data can be determined from multiple computing power units, thereby determining the computing power unit corresponding to the data tag as the target computing power unit.
[0099] In this way, the embodiment of the present application determines the target computing unit of the first vehicle data through the data tag and data reception mapping relationship.
[0100] In this embodiment of the present application, the target computing unit may include one or more candidate computing units.
[0101] S205: When the target computing power unit includes multiple computing units to be selected, determine the free computing power information of the multiple computing units to be selected.
[0102] In the embodiment of the present application, the spare computing power information of multiple candidate computing units can be determined by receiving the spare computing power information respectively sent by the multiple candidate computing units.
[0103] S207: Determine a target computing unit from multiple candidate computing units based on the free computing power information.
[0104] In the embodiment of the present application, the first vehicle data includes multiple frames of data to be processed.
[0105] Figure 4 1 is a flow chart of a method for determining a target computing unit provided in an embodiment of the present application. In an embodiment of the present application, determining a target computing unit from multiple candidate computing units based on spare computing power information may include the following steps:
[0106] S401: Determine required computing power information of a single frame of data to be processed among multiple frames of data to be processed, wherein the required computing power information is computing power information required to process the single frame of data to be processed.
[0107] S403: Based on the required computing power information and the spare computing power information of the multiple candidate computing units, determine multiple target computing units from the multiple candidate computing units.
[0108] In an embodiment of the present application, whether the selected computing unit can process a single frame of data to be processed can be determined by comparing the required computing power in the required computing power information with the free computing power in the free computing power information. If the free computing power of a certain selected computing unit is greater than the required computing power of a single frame of data to be processed, then the selected computing unit can be determined as the target computing unit.
[0109] In this way, the embodiment of the present application determines the target computing unit in the target computing power unit by comparing the spare computing power information respectively sent by multiple candidate computing units and the required computing power information of a single frame of data to be processed in multiple frames of data to be processed.
[0110] Figure 5 : is a flowchart of a computing unit upgrade method provided in an embodiment of the present application. In an optional implementation, the following steps may be included:
[0111] S501: receiving upgrade package data sent by a communication unit, where the upgrade package data includes an upgrade mark.
[0112] In an embodiment of the present application, upgrade package data sent by the 5G communication module in the communication unit can be received.
[0113] In an optional implementation, upgrade package data sent by a V2X module in a communication unit may be received.
[0114] In an optional implementation, the upgrade package data sent by the gateway unit may be received.
[0115] S503: Based on the upgrade mark, determine the computing unit to be upgraded from multiple candidate computing units in the target computing power unit.
[0116] In an embodiment of the present application, the main control unit is preset with a data upgrade mapping relationship, which is a mapping relationship between the identity information of the target computing unit and the upgrade mark. In an optional embodiment, the data upgrade mapping relationship can be expressed as a data upgrade mapping relationship table, which is stored in a storage area corresponding to the main control unit.
[0117] Obtain the data upgrade mapping relationship. Through the upgrade mark and the obtained data upgrade mapping relationship, the candidate computing unit corresponding to the upgrade mark can be determined from the multiple candidate computing units of the target computing power unit, thereby determining the candidate computing unit corresponding to the upgrade mark as the computing unit to be upgraded.
[0118] S505: Send the upgrade package data to the computing unit to be upgraded.
[0119] In this way, the embodiment of the present application can uniformly distribute the upgrade package data to the computing units to be upgraded for upgrading through the main control unit, thereby realizing centralized management and unified regulation of the upgrade process of each computing unit.
[0120] In the embodiment of the present application, the computing unit to be upgraded includes a main storage space and a backup storage space. Before sending the upgrade package data to the computing unit to be upgraded, the following may also be included:
[0121] Send a backup instruction to the computing unit to be upgraded, so that the computing unit to be upgraded can transfer the data packets in the main storage space to the backup storage space after receiving the backup instruction.
[0122] In an optional implementation, when the computing unit to be upgraded receives the upgrade package data and performs a system upgrade, if the upgrade is abnormal or fails, the computing unit to be upgraded can roll back the data packets in the backup storage space to the main storage space. In this way, the stability of the computing unit to be upgraded can be ensured during the upgrade.
[0123] In this way, the embodiment of the present application can accurately send the upgrade package data sent by the 5G communication module or the V2X module to the computing unit to be upgraded in the target computing power unit.
[0124] Of course, in an optional implementation, a computing unit upgrade method may further include: based on the upgrade mark, determining the computing unit to be upgraded from one or more computing units in the non-target computing unit; wherein the non-target computing unit is a computing unit other than the target computing unit among the multiple computing units. In this way, the computing units in the non-target computing units can be upgraded.
[0125] Figure 6 is a flow chart of a method for determining a target computing unit provided in an embodiment of the present application. In an optional implementation, determining the target computing unit from multiple candidate computing units based on the free computing power information in step S207 may include the following steps:
[0126] S601: Determine required computing power information of a single frame of data to be processed among multiple frames of data to be processed; the required computing power information is the computing power required to process the single frame of data to be processed;
[0127] S603: Based on the required computing power information and the free computing power information of the computing units not to be upgraded, determine the target computing units from the computing units not to be upgraded; wherein the computing units not to be upgraded are the computing units to be selected from the multiple computing units to be selected except the computing units to be upgraded.
[0128] In this way, in the target computing unit of the embodiment of the present application, the computing units to be upgraded are eliminated, and the target computing units are determined only from the computing units not to be upgraded. Therefore, the existence of the computing units to be upgraded in the target computing unit will not have any impact on the processing of vehicle data by the target computing unit. That is, in the embodiment of the present application, the computing units to be selected in the target computing unit can be upgraded when the target computing unit processes vehicle data.
[0129] S209: Distribute the first vehicle data to the target computing unit.
[0130] In the embodiment of the present application, the single frame of data to be processed includes timestamp information. Distributing the first vehicle data to the target computing unit may include the following steps:
[0131] The multiple frames of data to be processed in the first vehicle data are distributed to the multiple target computing units in sequence according to the order of timestamp information.
[0132] For example, when the number of target computing units determined in the target computing unit is two, refer to Figure 7 , Figure 7 It is a schematic diagram of a vehicle data distribution method provided in an embodiment of the present application, which distributes the Nth frame, N+1 frame, N+2 frame, N+3 frame... in multiple frames of data to be processed to two target computing units in sequence according to the order of timestamp information, with every two frames as a distribution cycle.
[0133] Similarly, when the target computing units determined in the target computing power unit are other numbers, the Nth frame, N+1 frame, N+2 frame, N+3 frame... in the multiple frames of data to be processed are distributed to the target computing units in the target computing power unit in sequence according to the order of timestamp information and with the number of target computing units as a distribution cycle.
[0134] In the process of distributing multiple frames of to-be-processed data in the first vehicle data to the target computing unit, the target computing unit may have a system anomaly or computing power saturation. When a system anomaly occurs in the target computing unit, the target computing unit will not send spare computing power information to the main control unit in the next distribution cycle. In other words, the main control unit will not receive the spare computing power information sent by the target computing unit in the next distribution cycle. Therefore, in the next distribution cycle, the target computing unit is determined as a non-target computing unit, wherein the non-target computing unit is a candidate computing unit other than the target computing unit among multiple candidate computing units.
[0135] When the computing power of the current target computing unit is saturated, the main control unit receives the free computing power information of the current target computing unit in the next distribution cycle. If the free computing power of the current target computing unit is less than the required computing power of a single frame of data to be processed, then in the next distribution cycle, the current target computing unit can be determined as a non-target computing unit. When distributing the first vehicle data in the next distribution cycle, the current target computing unit is avoided.
[0136] For example, when the number of target computing units determined in the target computing unit is two, refer to Figure 8 , Figure 8: It is a schematic diagram of an exception handling method for vehicle data distribution provided by an embodiment of the present application. Under normal circumstances, the main control unit distributes the Nth frame, N+1 frame, N+2 frame, N+3 frame, etc. in multiple frames of data to be processed to two target computing units in sequence according to the order of timestamp information; when multiple frames of data to be processed are being distributed to the target computing unit, if the target computing unit has a system abnormality or computing power saturation in the current distribution cycle, such as in the first distribution cycle, the Nth frame and the N+1 frame in the multiple frames of data to be processed are distributed to the two target computing units, and in the second distribution cycle, the first distribution cycle If one of the two target computing units has a system abnormality or computing power saturation in the second distribution cycle, and it is a non-target computing unit, then in the second distribution cycle, there is only one target computing unit, that is, in the second distribution cycle, only the N+3th frame data is distributed to the target computing unit. In the third distribution cycle, the non-target computing unit in the second distribution cycle is re-determined as the target computing unit. Then in the third distribution cycle, the N+4th frame and the N+5th frame are distributed to the two target computing units, and in subsequent distribution cycles, the N+6th frame, the N+7 frame, etc. are distributed to the target computing unit in turn.
[0137] Similarly, when the target computing units determined in the target computing power unit are other numbers, the Nth frame, N+1 frame, N+2 frame, N+3 frame... in the multiple frames of data to be processed are distributed to the target computing units in the target computing power unit in sequence according to the order of timestamp information and with the number of target computing units as a distribution cycle.
[0138] In this way, by comparing the free computing power information of the selected computing unit with the required computing power information of a single frame of data to be processed in multiple frames of data to be processed, and then determining the target computing unit, the dynamic allocation process of multiple frames of data to be processed in the first vehicle data is realized, and the allocation of the first vehicle data according to computing power capability is realized.
[0139] S211: Receive second vehicle data obtained by the target computing unit based on the first vehicle data.
[0140] Fig. 9 : is a flow chart of a vehicle data determination method provided by an embodiment of the present application, which may include the following steps:
[0141] S901: Receive multiple feedback data obtained by multiple target computing units based on a single frame of data to be processed.
[0142] S903: Integrate the multiple feedback data to obtain second vehicle data.
[0143] S213: Determine decision information based on the second vehicle data.
[0144] In the embodiment of the present application, control or auxiliary control of various areas of the vehicle can be achieved by determining the decision information based on the second vehicle data.
[0145] Another specific embodiment of a vehicle data processing method of the present application is described below, which is used to receive vehicle data sent by a vehicle sensor and send the received vehicle data to a main control unit. Fig.10 It is a flowchart of a vehicle data processing method provided in an embodiment of the present application. This specification provides method operation steps such as the embodiment or flowchart, but may include more or fewer operation steps based on conventional or non-creative labor. The order of steps listed in the embodiment is only one execution method among many step execution sequences, and does not represent the only execution order. When the actual system or server product is executed, it can be executed in the order shown in the embodiment or in parallel (for example, in a parallel processor or multi-threaded processing environment). Steps S1001-S1007 and their sub-steps listed in the embodiment are performed based on the perception unit, as shown in the specific example. Fig.10 As shown, the method may include:
[0146] S1001: Receive first vehicle data sent by a vehicle sensor, where the first vehicle data includes multiple frames of data to be processed.
[0147] In the embodiment of the present application, there may be multiple vehicle sensors.
[0148] A plurality of first vehicle data respectively sent by a plurality of vehicle sensors is received, wherein each of the plurality of first vehicle data includes a plurality of frames of data to be processed.
[0149] S1003: Setting timestamp information for a single frame of data to be processed among multiple frames of data to be processed based on a receiving time point of the single frame of data to be processed.
[0150] S1005: Add a data tag to the first vehicle data based on the identity information of the vehicle sensor.
[0151] S1007: Send multiple frames of to-be-processed data in the first vehicle data in sequence based on the order of timestamp information.
[0152] In an embodiment of the present application, sequentially sending multiple frames of to-be-processed data in the first vehicle data based on the order of timestamp information may include the following steps:
[0153] Receiving a synchronization pulse signal;
[0154] Based on the synchronization pulse signal, a single frame of to-be-processed data among a plurality of frames of to-be-processed data having the same timestamp information in a plurality of first vehicle data is synchronously and sequentially sent in the order of the timestamp information.
[0155] The embodiment of the present application ensures the clock synchronization of the vehicle data by synchronously sending multiple frames of to-be-processed data with the same timestamp information to the main control unit based on the synchronization pulse signal in the order of the timestamp information.
[0156] The present application also provides a vehicle data processing device, Fig.11 is a schematic diagram of the structure of a vehicle data processing device provided in an embodiment of the present application, such as Fig.11 As shown, the device comprises:
[0157] The first receiving module 1101 is used to receive first vehicle data sent by the sensing unit, where the first vehicle data includes a data tag.
[0158] The first determination module 1103 is used to determine the target computing power unit based on the data tag.
[0159] The second determination module 1105 is used to determine the free computing power information of the multiple candidate computing units when the target computing power unit includes multiple candidate computing units.
[0160] The third determination module 1107 is used to determine a target computing unit from multiple candidate computing units based on the free computing power information.
[0161] The distribution module 1109 is used to distribute the first vehicle data to the target computing unit.
[0162] The second receiving module 1111 is used to receive the second vehicle data obtained by the target computing unit based on the first vehicle data.
[0163] The fourth determination module 1113 is used to determine decision information based on the second vehicle data.
[0164] In an optional embodiment, the device further comprises:
[0165] A data receiving mapping relationship acquisition module is used to acquire a data receiving mapping relationship;
[0166] The target computing unit determination module is used to determine the target computing unit based on the data tag and data reception mapping relationship.
[0167] In an optional embodiment, the device further comprises:
[0168] A required computing power information determination module is used to determine the required computing power information of a single frame of data to be processed among multiple frames of data to be processed, where the required computing power information is the computing power information required to process the single frame of data to be processed;
[0169] The target computing unit determination module is used to determine multiple target computing units from multiple candidate computing units based on the required computing power information and the spare computing power information of the multiple candidate computing units.
[0170] In an optional implementation, the distribution module is used to distribute the multiple frames of data to be processed in the first vehicle data to multiple target computing units in sequence according to the order of timestamp information.
[0171] In an optional implementation, the second receiving module is used for:
[0172] Receiving a plurality of feedback data obtained by a plurality of target computing units based on a single frame of data to be processed;
[0173] The plurality of feedback data are integrated to obtain second vehicle data.
[0174] In an optional embodiment, the device further comprises:
[0175] An upgrade package data receiving module, used to receive the upgrade package data sent by the communication unit, the upgrade package data including the upgrade mark;
[0176] A computing unit determination module to be upgraded, used to determine a computing unit to be upgraded from a plurality of computing units to be selected in the target computing power unit based on the upgrade mark;
[0177] The upgrade package data sending module is used to send the upgrade package data to the computing unit to be upgraded.
[0178] In an optional embodiment, the target computing unit determination module is used to: determine the target computing unit from the computing units not to be upgraded based on the required computing power information and the free computing power information of the computing units not to be upgraded; wherein the computing units not to be upgraded are the computing units to be selected among the multiple computing units to be selected except the computing units to be upgraded.
[0179] The present application also provides a vehicle data processing device, Fig.12 is a schematic diagram of the structure of a vehicle data processing device provided in an embodiment of the present application, such as Fig.12 As shown, the device comprises:
[0180] The third receiving module 1201 is used to receive first vehicle data sent by a vehicle sensor; the first vehicle data includes multiple frames of data to be processed;
[0181] A setting module 1203 is used to set timestamp information for a single frame of data to be processed based on a receiving time point of a single frame of data to be processed among multiple frames of data to be processed;
[0182] A data tag adding module 1205, configured to add a data tag to the first vehicle data based on the identity information of the vehicle sensor;
[0183] The sending module 1207 is used to send multiple frames of to-be-processed data in the first vehicle data in sequence based on the order of timestamp information.
[0184] In an optional implementation, the third receiving module is used to: receive a plurality of first vehicle data respectively sent by a plurality of vehicle sensors, each of the plurality of first vehicle data including a plurality of frames of data to be processed.
[0185] In an optional implementation, the sending module is used to:
[0186] Receiving a synchronization pulse signal;
[0187] Based on the synchronization pulse signal, a single frame of to-be-processed data among a plurality of frames of to-be-processed data having the same timestamp information in a plurality of first vehicle data is synchronously and sequentially sent in the order of the timestamp information.
[0188] The vehicle data processing device and the vehicle data processing method in the embodiments of the present application are based on the same application concept.
[0189] The method embodiments provided in the embodiments of the present application can be executed in a computer terminal, a server or a similar computing device. Taking running on a server as an example, Fig.13 1 is a hardware structure block diagram of a server of a vehicle data processing method provided in an embodiment of the present application. Fig.13 As shown, the server 1300 may have relatively large differences due to different configurations or performances, and may include one or more central processing units (CPU) 1310 (the processor 1310 may include but is not limited to a processing device such as a microprocessor MCU or a programmable logic device FPGA), a memory 1330 for storing data, and one or more storage media 1320 (such as one or more mass storage devices) for storing application programs 1323 or data 1322. Among them, the memory 1330 and the storage medium 1320 can be short-term storage or permanent storage. The program stored in the storage medium 1320 may include one or more modules, each of which may include a series of instruction operations on the server. Furthermore, the central processing unit 1310 can be configured to communicate with the storage medium 1320 and execute a series of instruction operations in the storage medium 1320 on the server 1300. The server 1300 may also include one or more power supplies 1360, one or more wired or wireless network interfaces 1350, one or more input and output interfaces 1340, and / or one or more operating systems 1321, such as Windows Server 2003 or Windows Server 2008. TM , Mac OS X TM , Unix TM,Linux, FreeBSD, etc.
[0190] The input / output interface 1340 may be used to receive or send data via a network. The specific example of the network may include a wireless network provided by a communication provider of the server 1300. In one example, the input / output interface 1340 includes a network adapter (Network Interface Controller, NIC), which may be connected to other network devices through a base station so as to communicate with the Internet. In one example, the input / output interface 1340 may be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0191] It can be understood by those skilled in the art that Fig.13 The structure shown is for illustration only and does not limit the structure of the above electronic device. Fig.13 More or fewer components as shown, or with Fig.13 Different configurations shown.
[0192] An embodiment of the present application also provides a storage medium, which can be set in a server to store at least one instruction, at least one program, code set or instruction set related to the vehicle data processing method in the method embodiment. The at least one instruction, the at least one program, the code set or instruction set is loaded and executed by the processor to implement the above-mentioned vehicle data processing method.
[0193] Optionally, in this embodiment, the storage medium may be located in at least one of the multiple network servers of the computer network. Optionally, in this embodiment, the storage medium may include, but is not limited to, various media that can store program codes, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk.
[0194] It can be seen from the embodiments of the vehicle data processing method, device, equipment and storage medium provided by the above-mentioned present application that in the present application, by receiving the first vehicle data including data tags sent by the perception unit, the target computing power unit is determined based on the data tags, and when the target computing power unit includes multiple computing units to be selected, the spare computing power information of the multiple computing units to be selected is determined, and the target computing unit is determined from the multiple computing units to be selected based on the spare computing power information, and the first vehicle data is distributed to the target computing unit, and the second vehicle data obtained by the target computing unit based on the first vehicle data is received, and the decision information is determined based on the second vehicle data, and then the various areas of the vehicle can be controlled through the decision information, thereby reducing the reliability risk and degradation of the autonomous driving function caused by the failure of a single SoC under the existing multi-domain controller architecture, and the computing power unit can be flexibly adjusted according to the business computing power requirements without affecting the access of the vehicle sensors, thereby improving the flexibility, stability and safety of the autonomous driving vehicle.
[0195] It should be noted that the above-mentioned sequence of the embodiments of the present application is for description only and does not represent the advantages and disadvantages of the embodiments. The above-mentioned specific embodiments of this specification are described. Other embodiments are within the scope of the attached claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the embodiments and still achieve the desired results. In addition, the processes depicted in the drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0196] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the device embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.
[0197] A person skilled in the art will understand that all or part of the steps to implement the above embodiments may be accomplished by hardware or by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, and the above-mentioned storage medium may be a read-only memory, a disk or an optical disk, etc.
[0198] The above description is only a preferred embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application should be included in the protection scope of the present application.
Claims
1. A vehicle data processing method, characterized in that: The method comprises: Receive first vehicle data sent by a sensing unit; the first vehicle data includes a data tag; the data tag is added to the first vehicle data by the sensing unit based on the identity information of the vehicle sensor after receiving the first vehicle data sent by the vehicle sensor; the first vehicle data includes multiple frames of data to be processed; the multiple frames of data to be processed in the first vehicle data are sent in sequence based on the order of timestamp information; the timestamp information is set by the sensing unit for the single frame of data to be processed in the multiple frames of data to be processed based on the receiving time point of the single frame of data to be processed; Determining a target computing power unit based on the data tag; In the case where the target computing power unit includes multiple candidate computing units, determining the spare computing power information of the multiple candidate computing units; Determine a target computing unit from the plurality of candidate computing units based on the spare computing power information; distributing the first vehicle data to the target computing unit; Receiving second vehicle data obtained by the target computing unit based on the first vehicle data; Decision information is determined based on the second vehicle data.
2. The method according to claim 1, characterized in that Determining the target computing unit based on the data tag includes: Get the data receiving mapping relationship; A target computing unit is determined based on the data tag and the data reception mapping relationship.
3. The method according to claim 2, characterized in that The determining a target computing unit from the plurality of candidate computing units based on the spare computing power information includes: Determine required computing power information of a single frame of data to be processed among the multiple frames of data to be processed; the required computing power information is computing power information required to process the single frame of data to be processed; Based on the required computing power information and the spare computing power information of the multiple candidate computing units, multiple target computing units are determined from the multiple candidate computing units.
4. The method according to claim 3, characterized in that The distributing the first vehicle data to the target computing unit comprises: The multiple frames of data to be processed in the first vehicle data are distributed to the multiple target computing units in sequence according to the order of the timestamp information.
5. The method according to claim 4, characterized in that The receiving the second vehicle data obtained by the target calculation unit based on the first vehicle data includes: Receiving a plurality of feedback data obtained by the plurality of target computing units based on the single frame of data to be processed; The plurality of feedback data are integrated to obtain the second vehicle data.
6. The method according to claim 2, characterized in that The method further comprises: Receiving upgrade package data sent by the communication unit; the upgrade package data includes an upgrade mark; Based on the upgrade mark, determining a computing unit to be upgraded from the multiple computing units to be selected in the target computing power unit; The upgrade package data is sent to the computing unit to be upgraded.
7. The method according to claim 6, characterized in that The first vehicle data includes multiple frames of data to be processed; The determining a target computing unit from the plurality of candidate computing units based on the spare computing power information includes: Determine required computing power information of a single frame of data to be processed among the multiple frames of data to be processed; the required computing power information is the computing power required to process the single frame of data to be processed; Based on the required computing power information and the free computing power information of the computing units not to be upgraded, a target computing unit is determined from the computing units not to be upgraded; the computing units not to be upgraded are the computing units to be selected among the multiple computing units to be selected except the computing units to be upgraded.
8. A vehicle data processing method, characterized in that: The method comprises: Receiving first vehicle data sent by a vehicle sensor; the first vehicle data includes multiple frames of data to be processed; Based on a receiving time point of a single frame of data to be processed among the multiple frames of data to be processed, setting timestamp information for the single frame of data to be processed; adding a data tag to the first vehicle data based on the identity information of the vehicle sensor; Multiple frames of data to be processed in the first vehicle data are sent sequentially based on the order of the timestamp information, so that the main control unit determines the target computing power unit based on the data tag, and when the target computing power unit includes multiple computing units to be selected, determines the spare computing power information of the multiple computing units to be selected, determines the target computing unit from the multiple computing units to be selected based on the spare computing power information, distributes the first vehicle data to the target computing unit, receives the second vehicle data obtained by the target computing unit based on the first vehicle data, and determines the decision information based on the second vehicle data.
9. The method according to claim 8, characterized in that The number of the vehicle sensors is multiple; The receiving first vehicle data sent by the vehicle sensor includes: Receiving a plurality of first vehicle data respectively sent by a plurality of vehicle sensors; each of the plurality of first vehicle data includes a plurality of frames of data to be processed; The sending, in sequence, a plurality of frames of to-be-processed data in the first vehicle data based on the order of the timestamp information includes: Receiving a synchronization pulse signal; Based on the synchronization pulse signal, a single frame of the to-be-processed data among the multiple frames of to-be-processed data having the same timestamp information among the multiple first vehicle data is synchronously sent in sequence according to the order of the timestamp information.
10. A vehicle data processing device, characterized in that: The device comprises: The first receiving module is used to receive the first vehicle data sent by the sensing unit; the first vehicle data includes a data tag; the data tag is added to the first vehicle data by the sensing unit based on the identity information of the vehicle sensor after receiving the first vehicle data sent by the vehicle sensor; the first vehicle data includes multiple frames of data to be processed; the multiple frames of data to be processed in the first vehicle data are sent in sequence based on the order of timestamp information; the timestamp information is set by the sensing unit for the single frame of data to be processed in the multiple frames of data to be processed based on the receiving time point of the single frame of data to be processed; A first determination module, configured to determine a target computing power unit based on the data tag; A second determination module is used to determine the free computing power information of the multiple candidate computing units when the target computing power unit includes multiple candidate computing units; A third determination module, configured to determine a target computing unit from the plurality of candidate computing units based on the spare computing power information; a distribution module, configured to distribute the first vehicle data to the target computing unit; A second receiving module, used for receiving second vehicle data obtained by the target calculation unit based on the first vehicle data; A fourth determination module is used to determine decision information based on the second vehicle data.
11. A data processing device, characterized in that: The device comprises: A third receiving module is used to receive first vehicle data sent by a vehicle sensor; the first vehicle data includes multiple frames of data to be processed; A setting module, used for setting timestamp information for a single frame of data to be processed among the multiple frames of data to be processed based on a receiving time point of the single frame of data to be processed; a data tag adding module, configured to add a data tag to the first vehicle data based on the identity information of the vehicle sensor; A sending module is used to send multiple frames of to-be-processed data in the first vehicle data in sequence based on the order of the timestamp information, so that the main control unit determines the target computing power unit based on the data tag, and when the target computing power unit includes multiple to-be-selected computing units, determines the spare computing power information of the multiple to-be-selected computing units, determines the target computing unit from the multiple to-be-selected computing units based on the spare computing power information, distributes the first vehicle data to the target computing unit, receives the second vehicle data obtained by the target computing unit based on the first vehicle data, and determines the decision information based on the second vehicle data.
12. A device, characterized in that: The device includes a processor and a memory, wherein the memory stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set is loaded and executed by the processor to implement the vehicle data processing method as described in any one of claims 1 to 9.
13. A computer-readable storage medium, characterized in that: The storage medium stores at least one instruction, at least one program, a code set or an instruction set, and the at least one instruction, the at least one program, the code set or the instruction set is loaded and executed by the processor to implement the vehicle data processing method as described in any one of claims 1 to 9.
Citation Information
Patent Citations
Internet of Vehicles data processing device, vehicle terminal and storage medium
CN110166557A
Multi-sensor fusion vehicle control data acquisition method, device and system
CN113721587A
Data processing method, device and system and storage medium
CN114328352A
Aggregating vehicle-related big data
US20170187787A1
Data extraction apparatuses, systems, and methods
US20210241546A1
