CN117573709A - Data processing system, electronic device, and medium - Google Patents

Data processing system, electronic device, and medium Download PDF

Info

Publication number
CN117573709A
CN117573709A CN202311377873.XA CN202311377873A CN117573709A CN 117573709 A CN117573709 A CN 117573709A CN 202311377873 A CN202311377873 A CN 202311377873A CN 117573709 A CN117573709 A CN 117573709A
Authority
CN
China
Prior art keywords
data
signal
refreshing
period
refresh
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202311377873.XA
Other languages
Chinese (zh)
Inventor
请求不公布姓名
叶周青
李康
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kunyi Electronic Technology Shanghai Co Ltd
Original Assignee
Kunyi Electronic Technology Shanghai Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kunyi Electronic Technology Shanghai Co Ltd filed Critical Kunyi Electronic Technology Shanghai Co Ltd
Priority to CN202311377873.XA priority Critical patent/CN117573709A/en
Publication of CN117573709A publication Critical patent/CN117573709A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/12Synchronisation of different clock signals provided by a plurality of clock generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • G06F16/2322Optimistic concurrency control using timestamps
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/248Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

The application provides a data processing system, electronic equipment and medium, the data processing system includes: the clock unit respectively sends data refreshing signals to the data collecting layer, the data processing layer and the result output layer at fixed time according to a preset data refreshing period; the data collection layer responds to the data refreshing signal, acquires a data block with a time stamp in a first data refreshing period from a preset data source and stores the data block into a preset first data pool; the data processing layer responds to the data refreshing signal, acquires and processes the data blocks with the time stamps in the second data refreshing period from the first data pool, and stores the processed data blocks into a preset second data pool; the result output layer responds to the data refresh signal, acquires the processed data blocks with the time stamps in the third data refresh period from the second data pool and outputs the processed data blocks. According to the embodiment of the application, the performance requirement on a data processing system is reduced, and the system robustness is better, so that the error risk of the system is reduced.

Description

Data processing system, electronic device, and medium
Technical Field
The application relates to the technical field of vehicle data processing, in particular to a data processing system, electronic equipment and a medium.
Background
The ability of an autopilot system requires evaluation by a corresponding evaluation system. The evaluation system for evaluating the autopilot system receives the sensor data and gives an evaluation result, and because the data in the autopilot system is often a real-time data stream, for example, a real-time data stream collected by a vehicle sensor, the evaluation system also needs to process the data stream in real time so as to facilitate the display of relevant evaluation information.
Also, in data display systems, sensor data is typically transmitted upward, processed for visualization, and the sensor data is collected in real-time or retrieved from memory for upward transmission.
Currently, the architecture of vehicle data processing is simply to passively receive real-time data streams and then process them. When the pushing frequency of the real-time data stream is too high, the performance requirement on the system is higher, so that the risk of data error is increased when the performance of the evaluation system and the data display system is insufficient.
Therefore, the existing data processing system has the technical problem of high error risk.
Disclosure of Invention
The application provides a data processing system, electronic equipment and a medium, and aims to reduce data error risks.
In one aspect, the present application provides a data processing system including a clock unit, a data gathering layer, a data processing layer, and a result output layer,
the clock unit is used for respectively and regularly transmitting data refreshing signals to the data collecting layer, the data processing layer and the result output layer according to a preset data refreshing period;
the data collection layer is used for receiving the data refreshing signal, responding to the data refreshing signal, acquiring an initial data block with a time stamp in a first data refreshing period from a preset data source and storing the initial data block into a preset first data pool, wherein the first data refreshing period is a time period corresponding to the data refreshing signal responded by the data collection layer;
the data processing layer is used for receiving the data refreshing signal, responding to the data refreshing signal, acquiring and processing an initial data block with a time stamp in a second data refreshing period from the first data pool to obtain a processed data block, and storing the processed data block into a preset second data pool, wherein the second data refreshing period is the last data refreshing period of the first data refreshing period;
and the result output layer is used for receiving the data refreshing signal, responding to the data refreshing signal, acquiring and outputting the processed data block with the time stamp in a third data refreshing period from the second data pool, wherein the third data refreshing period is the last data refreshing period of the second data refreshing period.
In one possible implementation of the present application, the data gathering layer is configured to:
receiving the data refreshing signal and caching the data refreshing signal to a preset cache area;
when the data processing layer is in an idle state, acquiring the data refreshing signal from a cache area, and acquiring a sending time point of the refreshing signal in the data refreshing signal;
if the difference value between the sending time point of the refresh signal and the current time point is smaller than a preset difference value, responding to the data refresh signal; if the difference value between the sending time point of the refresh signal and the current time point is larger than or equal to a preset difference value, acquiring a next data refresh signal from a cache area;
the data processing layer is used for:
receiving the data refreshing signal and caching the data refreshing signal to a preset cache area;
when the data processing layer is in an idle state, acquiring the data refreshing signal from a cache area, and acquiring a sending time point of the refreshing signal in the data refreshing signal;
if the difference value between the sending time point of the refresh signal and the current time point is smaller than a preset difference value, responding to the data refresh signal; if the difference value between the sending time point of the refresh signal and the current time point is larger than or equal to a preset difference value, acquiring a next data refresh signal from a cache area;
The result output layer is used for:
receiving the data refreshing signal and caching the data refreshing signal to a preset cache area;
when the result output layer is in an idle state, acquiring the data refreshing signal from a cache area, and acquiring a sending time point of the refreshing signal in the data refreshing signal;
if the difference value between the sending time point of the refresh signal and the current time point is smaller than a preset difference value, responding to the data refresh signal; and if the difference value between the sending time point of the refresh signal and the current time point is larger than or equal to a preset difference value, acquiring a next data refresh signal from the cache area.
In one possible implementation manner of the present application, when the data collection layer fails to respond to the operation execution of the data refresh signal, a first prompt message is sent out, and the next data refresh signal is waited;
the data processing layer sends out second prompt information to wait for the next data refreshing signal when the operation execution of the data refreshing signal fails;
and when the result output layer responds to failure of operation execution of the data refreshing signal, sending out third prompt information and waiting for the next data refreshing signal.
In one possible implementation manner of the present application, the preset data source stores vehicle data, where the vehicle data includes a plurality of different types of data, and the acquiring, from the preset data source, an initial data block with a timestamp in a first data refresh period includes:
and acquiring a plurality of data slices with time stamps falling in the first data refreshing period from a preset data source, wherein the plurality of data slices form an initial data block, and the data slices comprise different types of data with the same time stamp.
In one possible implementation manner of the present application, the acquiring and processing an initial data block with a timestamp in a second data refresh period from the first data pool to obtain a processed data block includes:
and acquiring an initial data block with a time stamp in a second data refreshing period, performing preset operation based on different data in the initial data block to obtain an operation result, and taking the operation result as a processed data block, or combining the operation result with part or all of vehicle data to obtain the processed data block.
In one possible implementation manner of the present application, the vehicle data includes first sensor data sent to an autopilot system, second sensor data sent to an evaluation system, and a driving control signal output by the autopilot system, where an initial data block with a timestamp in a second data refresh period is obtained from a first data pool and processed, so as to obtain a processed data block, and the method includes:
And acquiring an initial data block with a time stamp in a second data refreshing period, acquiring an expected control signal of the automatic driving system based on second sensor data in the initial data block, acquiring an evaluation result based on the expected control signal and a driving control signal output by the automatic driving system, and taking the evaluation result as a processed data block, or combining the evaluation result with part or all of vehicle data to acquire the processed data block.
In one possible implementation manner of the present application, the obtaining, from the second data pool, the processed data block with the timestamp in the third data refresh period and outputting the processed data block includes:
acquiring a processed data block with a time stamp in a third data refreshing period from the second data pool;
determining that the data type is the first data type in the processed data blocks with the time stamps in the third data refreshing period, wherein the multi-frame data has different time stamps;
and determining and outputting the first data with the largest time stamp value from the multi-frame data with the first data type and different time stamps.
In one possible implementation manner of the present application, the acquiring and processing an initial data block with a timestamp in a second data refresh period from the first data pool to obtain a processed data block, further includes:
Determining that the data type is the second data type in the data blocks with the time stamps in the second data refreshing period, and multi-frame data with different time stamps;
and determining the change information of the data of the second data type based on the multi-frame data with different time stamps, wherein the processed data block also comprises the change information of the data of the second data type.
In another aspect, the present application further provides an electronic device, including:
one or more processors;
a memory; and
one or more applications, wherein the one or more applications are stored in the memory and configured to be executed by the processor to implement the data processing system of any of the above.
In another aspect, the present application also provides a computer readable storage medium having stored thereon a computer program to be loaded by a processor for performing the steps in the data processing system of any of the above.
The data processing system comprises a clock unit, a data collecting layer, a data processing layer and a result output layer, wherein the clock unit is used for respectively sending data refreshing signals to the data collecting layer, the data processing layer and the result output layer at fixed time according to a preset data refreshing period; the data collection layer is used for receiving the data refresh signal, responding to the data refresh signal, acquiring an initial data block with a time stamp in a first data refresh period from a preset data source, and storing the initial data block into a preset first data pool, wherein the first data refresh period is a time period corresponding to the data refresh signal responded by the data collection layer; the data processing layer is used for receiving the data refreshing signal, responding to the data refreshing signal, acquiring and processing an initial data block with a time stamp in a second data refreshing period from the first data pool to obtain a processed data block, and storing the processed data block into a preset second data pool, wherein the second data refreshing period is the last data refreshing period of the first data refreshing period; and the result output layer is used for receiving the data refresh signal, responding to the data refresh signal, acquiring the processed data block with the time stamp in the third data refresh period from the second data pool and outputting the processed data block, wherein the third data refresh period is the last data refresh period of the second data refresh period. According to the embodiment of the application, the clock unit is arranged, so that the data acquisition layer is controlled to acquire the data blocks at regular time, the data processing layer is controlled to process the data blocks at regular time, and the data blocks are controlled to be output by the timing control result output layer, the situation that the data processing system only can passively receive real-time data streams is avoided, and the data can be acquired, processed and output at regular time according to the data refreshing period of the clock unit, so that the data processing system does not need to have excessively high performance, and the error risk of the system is reduced.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are needed in the description of the embodiments will be briefly introduced below, it being obvious that the drawings in the following description are only some embodiments of the present application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a schematic diagram of an architecture of a data processing system provided by embodiments of the present application;
FIG. 2 is a schematic diagram of data processing logic in a data processing system provided in an embodiment of the present application;
fig. 3 is a schematic structural diagram of an embodiment of an electronic device provided in an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all, of the embodiments of the present application. All other embodiments, which can be made by those skilled in the art based on the embodiments herein without making any inventive effort, are intended to be within the scope of the present application.
In the description of the present application, it should be understood that the terms "center," "longitudinal," "transverse," "length," "width," "thickness," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," "outer," and the like indicate an orientation or positional relationship based on that shown in the drawings, merely for convenience of description and to simplify the description, and do not indicate or imply that the devices or elements referred to must have a particular orientation, be configured and operated in a particular orientation, and thus should not be construed as limiting the present application. Furthermore, the terms "first," "second," and the like, are used for descriptive purposes only and are not to be construed as indicating or implying a relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defining "a first" or "a second" may explicitly or implicitly include one or more of the described features. In the description of the present application, the meaning of "a plurality" is two or more, unless explicitly defined otherwise.
In this application, the term "exemplary" is used to mean "serving as an example, instance, or illustration. Any embodiment described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments. The following description is presented to enable any person skilled in the art to make and use the application. In the following description, details are set forth for purposes of explanation. It will be apparent to one of ordinary skill in the art that the present application may be practiced without these specific details. In other instances, well-known structures and processes have not been shown in detail to avoid obscuring the description of the present application with unnecessary detail. Thus, the present application is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.
The embodiment of the application provides a data processing system, an electronic device and a medium, and the detailed description is given below.
With reference to FIG. 1, FIG. 1 is a schematic diagram of an architecture of a data processing system 100 according to an embodiment of the present application.
The data processing system 100 comprises a clock unit 101, a data gathering layer 102, a data processing layer 103 and a result output layer 104. The clock unit 101 is connected to the data collection layer 102, the data processing layer 103 and the result output layer 104, respectively, while the data collection layer 102, the data processing layer 103 and the result output layer 104 do not interact directly to avoid mutual influence.
The clock unit 101 is configured to send data refresh signals to the data collection layer 102, the data processing layer 103 and the result output layer 104 at regular time according to a preset data refresh period, so as to instruct the data collection layer 102, the data processing layer 103 and the result output layer 104 to operate in coordination. The data refresh signal is accompanied by time stamp information at the time of transmitting the signal, i.e., the data refresh signal includes a refresh signal and a transmission time point of the refresh signal. The data refresh signal is sent once every data refresh period for the clock unit 101, and is received every data refresh period for the data gathering layer 102, the data processing layer 103 and the result output layer 104. It should be noted that, the clock unit 101 is a stable clock, and the time recorded by the clock unit 101 is not affected by other factors, for example, the time recorded by the clock unit 101 is the time corresponding to the coordinated universal time (Universal Time Coordinated, UTC).
In some embodiments, since delay or failure may occur in sending the data refresh signal by the clock unit 101, a separate thread may be used to perform the step of sending the data refresh signal, where the separate thread runs in a separate core in the processor, and the core is only used for running the separate thread, so as to avoid delay or failure in sending the data refresh signal as much as possible.
The data collection layer 102 is configured to receive a data refresh signal, and in response to the data refresh signal, obtain an initial data block with a timestamp in a first data refresh period from the preset data source 105 and store the initial data block in a preset first data pool 106, where the first data refresh period is a time period corresponding to the data refresh signal responded by the data collection layer. The data processing system 100 further includes a default data source 105 and a first data pool 106, where the default data source 105 and the first data pool 106 are each a data cache area in the data processing system 100. The preset data source 105 is configured to store vehicle data, for example, when the data processing system is a data display system, collect data of the sensor, and push real-time data stream of the sensor to the preset data source 105 in real time according to a fixed frequency for storage. For another example, when the data processing system is a data presentation system, the preset data source 105 is a database of stored sensor data, and the data presentation system plays back the stored data. The data stored in the data cache area of the data processing system 100 is typically implemented by a hash table with a timestamp, a data identifier as a key, and a value of the data as a value, where the data identifier is a string that uniquely identifies the source of the data, and the source of the data may be a specific sensor, and the data is stored in a data format of such a key-value pair, so that various data formats may be supported, and thus data collected by any sensor may be supported.
It should be noted that the vehicle data includes a plurality of different types of data, and the data block is a set of data slices within a specified time stamp range, for example, a first data refresh period, a second data refresh period, a third data refresh period, and so on. A data slice is a collection of multi-frame data at a specified time stamp, e.g., different types of data with the same time stamp.
The obtaining the initial data block with the time stamp in the first data refresh period from the preset data source includes: and acquiring a plurality of data slices with time stamps falling in the first data refreshing period from a preset data source, wherein the plurality of data slices form an initial data block, and the data slices comprise different types of data with the same time stamp.
The time stamp of each frame of data in the data block is explained. Specifically, if the built-in time of the sensor and the time recorded by the clock unit are hard-synchronized and synchronized to the same time coordinate system, the time stamp of each frame of data in the data block is the time adopted by the hard synchronization. If the built-in time of the sensor and the time recorded by the clock unit 101 are not hard-synchronized and the data processing system 100 is in a real-time receiving and processing data mode, the time of the preset data source 105 when the preset data source 105 receives the frame data is used as the time stamp of the frame data. If the built-in time of the sensor and the time recorded by the clock unit 101 are not hard-synchronized and the data processing system 100 is in a playback processing mode using the stored data, the recording time stamp of the frame data when the frame data is recorded to the preset data source 105 is used as the time stamp of the frame data. It should be noted that the times among the preset data source 105, the clock unit 101, the data collection layer 102, the data processing layer 103, and the result output layer 104 are already synchronized to ensure time synchronization in the data processing system 100.
The clock unit 101 transmits the data refresh signal according to a preset data refresh period, and the duration of the data refresh period is the time interval between two adjacent data refresh signals. The preset data refreshing period may be set based on actual requirements, and is generally smaller than a pushing period of the vehicle data, for example, when the pushing period of the vehicle data is a period corresponding to 110Hz, the preset data refreshing period may be set to a period corresponding to 30Hz, so as to avoid a situation that the required data cannot be acquired. In general, the result output layer 104 is a display screen, and the preset data refresh period may be the same as a period corresponding to a common screen refresh rate (e.g., 30Hz or 60 Hz), so that the output of the result output layer 104 adapts to the screen refresh rate; the preset data refresh period may also be the same as a period corresponding to a common camera frame rate (e.g., 25 Hz), so as to ensure a data beat and ensure that the data refresh of the data processing system 100 does not generate waste.
The first data refresh period is a time period corresponding to the data refresh signal responded by the data collection layer 102. In theory, the time period between the time stamp of the current data refresh signal and the time stamp of the previous data refresh signal may be the first data refresh period, and the previous data refresh period of the first data refresh period is the second data refresh period, that is, the time period corresponding to the previous data refresh signal. However, in practical applications, since a certain time is required for writing data into the preset data source 105, when the data gathering layer 102 receives the data refresh signal, it is generally unable to obtain the data with the same timestamp as the transmission time point of the data refresh signal from the preset data source 105, but only able to obtain the data with the earlier timestamp of the data refresh signal, so that the start time of the first data refresh period may be earlier than the transmission time point of the previous data refresh signal by a certain period of time, the end time of the first data refresh period may be earlier than the transmission time point of the current data refresh signal by a certain period of time, and similarly, the start-stop time of the second data refresh period and the third data refresh period may be shifted forward by a certain period of time than the corresponding data refresh signal, for example, when the transmission time point of the previous data refresh signal is 16 minutes 45 seconds 50 seconds, the start time of the first data refresh period may be 16 minutes 45 seconds 20 milliseconds, and the earlier period may be 30 milliseconds.
The data processing layer 103 is configured to receive a data refresh signal, obtain an initial data block with a timestamp in a second data refresh period from the first data pool 106 in response to the data refresh signal, process the initial data block to obtain a processed data block, and store the processed data block in the preset second data pool 107. Wherein the second data refresh period is a last data refresh period of the first data refresh period. The data processing system 100 further comprises a second data pool 107, the second data pool 107 being a data cache area in the data processing system 100, the second data pool 107 being for storing processed data blocks of the data processing layer 103.
And a result output layer 104, configured to receive the data refresh signal, and in response to the data refresh signal, obtain, from the second data pool 107, the processed data block with the timestamp in the third data refresh period, and output the processed data block, where the output mode may be direct display or send the processed data block to another device. Taking direct display as an example, when receiving the data refresh signal, the result output layer 104 obtains the processed data block with the timestamp in the third data refresh period from the second data pool 107, then performs picture rendering based on the data with the timestamp in the third data refresh period, and displays the rendered picture on the display screen of the data processing system 100. Taking sending to other devices as an example, when receiving the data refresh signal, the result output layer 104 obtains the processed data block with the timestamp in the third data refresh period from the second data pool 107, and sends the processed data block to the other devices for subsequent processing, for example, storage and disc dropping of data. The third data refresh period is the last data refresh period of the second data refresh period.
It can be seen that, in the data processing system 100 provided in this embodiment of the present application, by setting the clock unit 101, the timing control data collecting layer 102 obtains the initial data block, the timing control data processing layer 103 processes the initial data block, and the timing control result output layer 104 outputs the processed data block, which avoids that the data processing system can only passively receive the real-time data stream, but can regularly obtain, process and display the data according to the data refresh period of the clock unit 101, so that the data processing system does not need to have too high performance, thereby reducing the error risk of the data processing system. In addition, the architecture scheme can exert the multi-core processing performance of the hardware equipment to a greater extent, and the performance is generally better and the response speed is faster.
In some embodiments of the present application, to more clearly illustrate the data processing system described above, with reference to FIG. 2, a schematic diagram of data processing logic in a data processing system is shown.
In fig. 2, vehicle data pushed according to a fixed frequency is stored in a preset data source 105, and the vehicle data is divided according to different data refresh periods to obtain a data block 1, a data block 2, a data block 3, a data block 4 and a data block 5, wherein each of the data block 1, the data block 2, the data block 3, the data block 4 and the data block 5 can include multi-frame data, and each frame data is provided with a corresponding timestamp (timestamp). As can be seen from fig. 2, the time stamps of the frame data in the data block 2 are all in the third data refresh period, the time stamps of the frame data in the data block 3 are all in the second data refresh period, and the time stamps of the frame data in the data block 4 are all in the first data refresh period.
Taking the data processing process of the data block 2 in fig. 2 as an example, the clock unit 101 sends data refresh signals to the data collecting layer 102, the data processing layer 103 and the result output layer 104 according to a preset data refresh period, and the data collecting layer 102 responds to the data refresh signals of the third data refresh period by sequentially using a third data refresh period, a second data refresh period and a first data refresh period according to time sequence, and acquires the data block 2 with a time stamp in the third data refresh period from the preset data source 105 and stores the data block 2 in the preset first data pool 106. As time passes, the clock unit 101 again transmits data refresh signals to the data collection layer 102, the data processing layer 103 and the result output layer 104, respectively, the data processing layer 103 acquires and processes the data block 2 having a time stamp within the third data refresh period from the first data pool 106 in response to the data refresh signals of the second data refresh period, obtains the processed data block 2, and stores the processed data block 2 in the preset second data pool 107. Over time, the clock unit 101 again transmits data refresh signals to the data gathering layer 102, the data processing layer 103, and the result output layer 104, respectively, and the result output layer 104 acquires and outputs the processed data block 2 whose time stamp is in the third data refresh period from the second data pool 107 in response to the data refresh signal of the first data refresh period.
It can be seen that the data block 2 is acquired by the data collecting layer 102 and stored in the preset first data pool 106 in one data refresh period, is processed by the data processing layer 103 in the next data refresh period to obtain a processed data block 2, and the processed data block 2 is stored in the preset second data pool 107, and the processed data block 2 is acquired and output by the result output layer 104 in the next data refresh period.
In some embodiments of the present application, backlog of the data refresh signal may occur in some non-ideal situations. For example, the data processing operation of the data processing layer should be completed in a data refresh period, and if the processing time is out, the current batch of data is not yet processed, and the next data refresh signal is responded to again acquire the data from the first data pool and process the data.
For this case, a solution to the backlog phenomenon of the data refresh signal is provided. Specifically, the data processing layer is used for: receiving the data refreshing signal and caching the data refreshing signal to a preset cache area; when the data processing layer is in an idle state, acquiring the data refreshing signal from a cache area, and acquiring a sending time point of the refreshing signal in the data refreshing signal; if the difference value between the sending time point of the refresh signal and the current time point is smaller than a preset difference value, responding to the data refresh signal; and if the difference value between the sending time point of the refresh signal and the current time point is larger than or equal to a preset difference value, acquiring a next data refresh signal from the cache area. Specifically, the data refreshing signals are cached in a preset cache area, and the cache area can sequentially cache a plurality of data refreshing signals according to the signal receiving sequence of the data refreshing signals, so that the latest data refreshing signals can be quickly found out from the cache area. If the difference between the sending time point in the data refresh signal and the current time point of the clock unit is smaller than the preset difference, it is determined that backlog of the data refresh signal does not occur, so that the step of acquiring and processing the data block with the timestamp in the second data refresh period from the first data pool can be executed, and the data refresh signal is responded. If the difference between the sending time point in the data refresh signal and the current time point of the clock unit is greater than or equal to the preset difference, the backlog of the data refresh signal is judged to occur, and the step of acquiring and processing the data blocks with the time stamps in the second data refresh period from the first data pool can be omitted, namely, the data refresh signal is not responded, and other data refresh signals are acquired from the cache area again. For backlogged data refresh signals, the data refresh signals may be deleted and data in the first data pool having a timestamp within the second data refresh period may be deleted. In addition, when the difference between the sending time point in the data refreshing signal and the current time point of the clock unit is larger than or equal to the preset difference, and the backlog of the data refreshing signal is judged to occur, backlog prompt information of the data refreshing signal can be output so as to inform a user of the backlog of the data refreshing signal. The preset difference value may be, for example, a duration value of a data refresh period.
Similarly, backlog of the data refresh signal may occur in the data collection layer and the result output layer. Specifically, the data collection layer is used for: the data collection layer is used for: receiving the data refreshing signal and caching the data refreshing signal to a preset cache area; when the data processing layer is in an idle state, acquiring the data refreshing signal from a cache area, and acquiring a sending time point of the refreshing signal in the data refreshing signal; if the difference value between the sending time point of the refresh signal and the current time point is smaller than a preset difference value, responding to the data refresh signal; and if the difference value between the sending time point of the refresh signal and the current time point is larger than or equal to a preset difference value, acquiring a next data refresh signal from the cache area. The result output layer is used for: receiving the data refreshing signal and caching the data refreshing signal to a preset cache area; when the result output layer is in an idle state, acquiring the data refreshing signal from a cache area, and acquiring a sending time point of the refreshing signal in the data refreshing signal; if the difference value between the sending time point of the refresh signal and the current time point is smaller than a preset difference value, responding to the data refresh signal; and if the difference value between the sending time point of the refresh signal and the current time point is larger than or equal to a preset difference value, acquiring a next data refresh signal from the cache area.
It can be seen that by discarding the backlogged expiration signal and data when backlog of the data refresh signal occurs, only the latest signal and data are processed to avoid affecting the processing of subsequent data, resulting in a better robustness of the data processing system.
In some embodiments of the present application, in some non-ideal cases, situations may arise where dependent data is not ready. For example, the result output layer needs to acquire and output the data with the timestamp in the third data refresh period from the second data pool, but the data processing layer has not completed processing the data, and has not stored the processed data into the second data pool, so that the result output layer cannot acquire the data with the timestamp in the third data refresh period from the second data pool, which is the situation that the dependent data is not ready.
For this case, a solution to the phenomenon that dependent data is not ready is provided. Specifically, the result output layer is configured to: and when the result output layer responds to failure of operation execution of the data refreshing signal, sending out third prompt information and waiting for the next data refreshing signal. The result output layer detects whether a processed data block with a time stamp in a third data refreshing period exists in the second data pool when responding to the data refreshing signal; if the processed data block with the time stamp in the third data refreshing period exists in the second data pool, the processed data block with the time stamp in the third data refreshing period is judged to be ready, so that the step of acquiring the processed data block with the time stamp in the third data refreshing period from the second data pool and outputting the processed data block can be executed; if there is no processed data block with the time stamp in the third data refresh period in the second data pool, it is determined that the processed data block with the time stamp in the third data refresh period is not ready, that is, the operation in response to the data refresh signal fails to be performed, the step of acquiring the processed data block with the time stamp in the third data refresh period from the second data pool and outputting the processed data block is not performed, that is, the step of acquiring the processed data block with the time stamp in the third data refresh period from the second data pool and outputting the processed data block is skipped, and the next data refresh signal of the receiving clock unit is waited, so that the step of acquiring the processed data block with the time stamp in the third data refresh period from the second data pool and outputting the processed data block is performed based on the received next data refresh signal. In addition, when the data with the time stamp in the third data refreshing period does not exist in the second data pool and the processed data block with the time stamp in the third data refreshing period is judged to be not ready, prompt information of the fact that the dependent data is not ready is output, so that a user is informed of the fact that the dependent data is not ready.
Similarly, in the data collection layer and the data collection layer, there is a possibility that data dependence is not prepared, that is, the data collection layer and the data collection layer cannot respond to the data refresh signal. Specifically, when the data collection layer responds to the failure of the operation execution of the data refreshing signal, a first prompt message is sent out, and the next data refreshing signal is waited. And when the data processing layer responds to failure of operation execution of the data refreshing signal, sending out second prompt information and waiting for the next data refreshing signal.
It can be seen that the robustness of the data processing system is improved by discarding the acquisition and output of the dependent data when this is not ready and waiting for the data of the next data refresh cycle to avoid affecting the processing of the subsequent data.
The data processing layer obtains and processes an initial data block with a timestamp in a second data refreshing period from the first data pool to obtain a processed data block, wherein the data processing layer can comprise:
And acquiring an initial data block with a time stamp in a second data refreshing period, performing preset operation based on different data in the initial data block to obtain an operation result, and taking the operation result as a processed data block, or combining the operation result with part or all of vehicle data to obtain the processed data block.
In some embodiments of the present application, the processing performed by the data processing layer is illustrated. For example, the data processing system is used as a data display system to display the sensor data, and the data processing layer acquires and processes an initial data block with a timestamp in a second data refresh period from the first data pool, specifically: acquiring an initial data block with a time stamp in a second data refreshing period from a first data pool; and determining multi-frame data with the same time stamp in the initial data block with the time stamp in the second data refreshing period, wherein the multi-frame data with the same time stamp can exist in the preset data source and the first data pool because the data pushed to the preset data source at the same time in the data stream comprises a plurality of vehicle sensors are often sent in the form of a plurality of continuous frames. The multi-frame data with the same time stamp are summarized into one data table at the same time, namely a data slice, wherein the data table can comprise data acquired by a plurality of sensors at the same time (such as the speed of a vehicle at the same time, the rotation speed of a left tire, the rotation speed of a right tire, the longitude and latitude, a camera image, radar point cloud data and the like). And carrying out preset operation on the data in the initial data block according to the expected output of the result output layer to obtain an operation result.
For example, the result output layer expects to perform visualization of lane lines, and the vehicle data includes lane line sensing results of the intelligent camera, where the lane line sensing results include the number of lane lines count sensed, and curve parameters of lane lines at each position, where the curve parameters of the lane lines are used to fit a lane line curve, and in one example, one lane line identified by the intelligent camera is a cubic curve equation, where the cubic curve equation expression is:
x=c0+c1y+c2y2+c3y3;
y∈[start,end];
the curve parameters comprise 6 parameters, x is a horizontal axis, the left direction is a positive direction, y is a vertical axis, the front direction is a positive direction, c0 is the offset of a lane line and a vehicle coordinate system, c1 is the yaw angle of the lane line, c2 is the curvature of the lane line, c3 is the curvature change rate of the lane line, and start and end are used for representing the visual field length of one lane line.
The preset operation comprises the following steps:
s1, acquiring a lane line sensing result at a first moment, and acquiring a lane line optimizing result at a second moment, wherein the second moment is the moment before the first moment;
s2, selecting an unoptimized lane line from lane line sensing results at the first moment as a lane line to be optimized, and optimizing curve parameters of the lane line to be optimized to obtain an optimization result of the lane line to be optimized;
S3, repeating the step S2 until no un-optimized lane line exists in the lane line sensing result at the first moment, and obtaining a lane line optimizing result at the first moment.
Wherein, between step S1 and step S2, further include: if the number of the lane lines perceived in the lane line perception results at the first time is 0, the lane line perception results at N1 continuous times before the first time are obtained, if the number of the lane lines perceived in the lane line perception results at the continuous N1 times is 0, the lane line perception results at the first time are directly used as lane line optimization results at the first time, otherwise, the lane line optimization results at the second time are used as lane line optimization results at the first time, and N1 is a positive integer.
The step S2 includes:
s201, if the lane line to be optimized is a lane line with a visual field length of 0, acquiring N2 lane line sensing results at continuous moments before a first moment, if the visual field lengths of the lane lines at the positions of the lane lines to be optimized in the lane line sensing results at the continuous N2 moments are all 0, directly taking the curve parameters of the lane lines to be optimized as an optimization result of the lane lines to be optimized, otherwise, taking the curve parameters of the lane lines at the positions of the lane lines to be optimized in the lane line optimization result at a second moment as an optimization result of the lane lines to be optimized, wherein N2 is a positive integer;
S202, if the visual field length of the lane line to be optimized is not 0 and the lane line with the best quality, performing self-correction optimization on the curve parameters of the lane line to be optimized, and taking the curve parameters after self-correction optimization as an optimization result of the lane line to be optimized;
and S203, if the visual field length of the lane line to be optimized is not 0 and is not the lane line with the best quality, performing self-correction optimization and side-correction optimization on the curve parameters of the lane line to be optimized, and taking the curve parameters after the self-correction optimization and the side-correction optimization as the optimization result of the lane line to be optimized.
The curve parameters of the lane line comprise constant items and a plurality of coefficient items, wherein the self-correction optimization is specifically as follows:
step 1, acquiring curve parameters of a lane line to be optimized, and acquiring a reference lane line with the same position as the lane line to be optimized from a lane line optimization result at a second moment;
step 2, calculating the change value of each curve parameter of the lane line to be optimized relative to each curve parameter of the reference lane line;
if the change values of all curve parameters of the lane line to be optimized are smaller than the preset first change threshold values of all curve parameters, the lane line to be optimized is directly used as a first correction lane line; if the change value of each curve parameter of the lane line to be optimized is larger than or equal to a preset first change threshold value of each curve parameter, reclassifying the position of the lane line to be optimized, and then performing self-correction optimization on the curve to be optimized after reclassifying the position; otherwise, keeping constant items of the lane lines to be optimized unchanged, correcting coefficient items with the change value larger than or equal to a preset change threshold value in the lane lines to be optimized to coefficient items of reference lane lines, and optimizing the lane lines to be optimized to be first corrected lane lines;
Step 3, fitting to obtain a smooth lane line based on curve parameters of the first corrected lane line and lane line optimization results of N3 continuous moments between the first moments;
step 4, calculating the change value of each curve parameter of the first corrected lane line relative to each curve parameter of the smooth lane line;
if the change values of the curve parameters of the first correction lane line relative to the curve parameters of the smooth lane line are smaller than the preset second change threshold value of the curve parameters, keeping constant items of the first correction lane line unchanged, correcting coefficient items of the first correction lane line to coefficient items of the smooth lane line, optimizing the first correction lane line to be a second correction lane line, and completing self-correction; otherwise, the first correction lane line is directly used as a second correction lane line, and self-correction is completed.
The quality of the lane lines is determined according to the confidence coefficient of the lane lines and the visual field length, the lane line perception result also comprises the confidence coefficient of the lane lines at each position, the higher the confidence coefficient is, the higher the quality of the lane lines is, and the higher the visual field length is, the higher the quality of the lane lines with the same confidence coefficient is.
Further, in step S2, the lane line to be optimized is selected according to the quality of each lane line in the lane line sensing result at the first moment from high to low.
The lane line sensing result comprises curve parameters of lane lines at M positions, M is the preset sensing quantity, M is more than or equal to 1, the lane line sensing result comprises the sensing quantity count of the lane lines less than or equal to M, and the positions of the lane lines to be optimized are reclassified specifically as follows: the method comprises the steps of obtaining the position of a lane line to be optimized in lane line perception data at a first moment, marking the position as a position 1, obtaining M-1 lane lines except the position 1 in a lane line optimization result at a second moment, calculating the deviation value of a constant term of the lane line to be optimized and a constant term of the M-1 lane lines, and taking the position of the lane line with the minimum deviation value as the reclassified position of the lane line to be optimized.
The side correction specifically comprises the following steps:
step 1, obtaining the lane line with the best quality, calculating the deviation value of each curve parameter of a second correction lane line relative to each curve parameter of the lane line with the best quality, if the calculated deviation value of each curve parameter of the second correction lane line relative to each curve parameter of the lane line with the best quality is smaller than the preset parallel change threshold value of each curve parameter, directly taking the second correction lane line as a third correction lane line to finish the side correction, otherwise, keeping the constant item of the second correction lane line unchanged, correcting the coefficient item of the second correction lane line as the coefficient item of the lane line with the best quality, and correcting the second correction lane line as the third correction lane line to finish the side correction.
In addition, the step S202 further includes: and acquiring the visual field length SE of the lane line with the largest visual field length in the lane line sensing result at the first moment, and correcting the visual field length in the self-correction optimized curve parameter to be SE to obtain the optimized result of the lane line to be optimized. The step S203 further includes: and acquiring the visual field length SE of the lane line with the largest visual field length in the lane line sensing result at the first moment, and correcting the visual field length in the curve parameters after self-correction optimization and side-correction optimization to be SE to obtain the optimization result of the lane line to be optimized.
Through the operation, the lane line sensing result given by the intelligent camera is optimized, the result output layer can conduct lane line visualization according to the lane line optimizing result, compared with the lane line sensing result which is directly used for conducting the lane line visualization, the lane line sensing method is better in visualization effect, the lengths of the displayed lane lines are the same, the positions of the displayed lane lines are parallel, the attractiveness is improved, and the user can conveniently watch the lane line sensing method.
It can be understood that the data processing layer processes the data in the initial data block to obtain an operation result, and according to different requirements of the result output layer, only the operation result can be output as a processed data block, or the operation result and a part or all of the initial data block can be used as the processed data block together, such as outputting a lane line optimization result, a vehicle speed and the like.
In some embodiments of the present application, the processing performed by the data processing layer is illustrated. For example, the data processing system is used as an evaluation system to evaluate the automatic driving system, the vehicle data includes first sensor data sent to the automatic driving system, second sensor data sent to the evaluation system and driving control signals output by the automatic driving system, the initial data block with the timestamp in the second data refresh period is obtained from the first data pool and processed, and the processed data block includes: and acquiring an initial data block with a time stamp in a second data refreshing period, acquiring an expected control signal of the automatic driving system based on second sensor data in the initial data block, acquiring an evaluation result based on the expected control signal and a driving control signal output by the automatic driving system, and taking the evaluation result as a processed data block, or combining the evaluation result with part or all of vehicle data to acquire the processed data block.
Specific: the automatic driving system is generally divided into a sensing part, a decision part and an executing part, wherein the sensing part obtains sensor data, the decision part gives out a control decision, the executing part executes the control decision, and the evaluating system needs to evaluate the decision part of the automatic driving system, so that 'sensing input data' and 'executing output signals' of the automatic driving system, namely, the first sensor data and driving control signals output by the automatic driving system, are required to be monitored, and the decision of the automatic driving system is evaluated by combining with an additional evaluating sensor, namely, an expected control signal is obtained based on the second sensor data, and the automatic driving system is evaluated by comparing the expected control signal with the control signals output by the automatic driving system. The evaluation system needs the capability of processing real-time data flow, whether the real-time acquisition of sensor data for evaluation or the playback and evaluation based on the existing data, the data processing layer can continuously receive and process the data. The data processing layer regularly fetches and processes the data through the data refreshing signal, so that the performance is better.
The data processing layer acquires first sensor data, second sensor data and driving control signals of the automatic driving system based on the first sensor data in an initial data block with the time stamp in a second data refreshing period, wherein the first sensor data is used for being sent to the automatic driving system so that the automatic driving system can generate driving control signals based on the first sensor data, the automatic driving system can control a vehicle in which the automatic driving system is located through the output of the driving control signals, automatic driving is achieved, and the second sensor data is used for generating expected control signals.
In particular, the sensors include an autopilot sensor and an evaluation sensor, the autopilot sensor typically being disposed on the vehicle as part of an autopilot system. The autopilot sensor is used for collecting first sensor data of a vehicle where the autopilot system is located, and the autopilot sensor can also comprise a laser radar, a millimeter wave radar and the like. The evaluation sensor includes a laser radar, a millimeter wave radar, or the like, and may be provided on the road side where the vehicle is located or on the vehicle, which is not limited herein. The evaluation sensor is used for acquiring sensor data of a vehicle where the automatic driving system is located, and when the evaluation sensor and the automatic driving sensor are not overlapped with each other, the acquired data of the evaluation sensor is second sensor data and is used for generating an expected control signal; when the evaluation sensor overlaps with the autopilot sensor, for example, the roof lidar is both the autopilot sensor and the evaluation sensor, the data collected by the autopilot sensor and the evaluation sensor may be used as second sensor data for generating the desired control signal. The automatic driving sensor is different from the evaluation sensor in that the automatic driving sensor is a vehicle sensor configured by an automatic driving system, belongs to a part of the automatic driving system, and is a vehicle sensor outside the automatic driving system, and whether the capability of the automatic driving system meets the standard is accurately judged by adding the evaluation sensor and integrating more sensor data. After the capability of the automatic driving system reaches the standard, the automatic driving with the same effect can be completed only by the automatic driving sensor without evaluating the sensor, so that the hardware cost of the automatic driving is reduced.
In a further embodiment, the evaluation result of the driving control signal is determined based on whether the driving control signal is consistent with the expected control signal, for example, if the driving control signal is consistent with the expected control signal, the evaluation result of the driving control signal is determined to be passing, and if the driving control signal is inconsistent with the expected control signal, the evaluation result of the driving control signal is determined to be failing.
The specific data processing process of determining the expected control signal expected to be output by the autopilot system based on the first sensor data can be determined based on the autopilot system test function configured by the data processing layer, and when the autopilot system test function configured by the data processing layer is different, the data processing process is different, for example, when the autopilot system test function is forward collision early warning (Forward Collision Warning, FCW), a corresponding FCW algorithm can be set manually based on specific requirements in the FCW, and the FCW algorithm is adopted to realize the data processing process. In order to reduce the performance requirement of the evaluation system, the test function of the automatic driving system configured by the data processing layer in the same time period is often one. For example, if the vehicle speed is greater than a preset road speed limit value, the vehicle should be decelerated, and the expected control signal expected to be output by the autopilot system may be a brake control signal or an accelerator control signal, and correspondingly, the driving control signal may also be a brake control signal or an accelerator control signal.
In one embodiment, the evaluation sensor and the autopilot sensor do not overlap each other, and the same sensor, such as a wheel speed sensor, is used as the two-sensor data to determine the expected control signal expected to be output by the autopilot system.
In some embodiments of the present application, for most display controls, only the latest data is often required to be displayed, and no history data is required, so that the rendering pressure of the result output layer can be significantly reduced. In particular, acquiring and outputting the processed data block with the timestamp in the third data refresh period from the second data pool may include: acquiring a processed data block with a time stamp in a third data refreshing period from the second data pool; determining that the data type is a first data type, such as vehicle speed data of a vehicle and image data acquired by a camera of the vehicle, of multi-frame data with different time stamps in the processed data blocks with time stamps in the third data refreshing period; and determining and outputting the first data with the largest time stamp value from the multi-frame data with the first data type and different time stamps. Thus, the result output layer can output only the first data, and can not output other data than the first data. For example, for the display of the speed of the vehicle, assuming that the pushing frequency of the speed data is 100Hz and the data refresh period of the clock unit is 30Hz, the result output layer only needs to output the first data with the largest value of the time stamp in the speed data with the second data refresh period, for example, the result output layer only needs to render the first data with the largest value of the time stamp, so that the rendering data amount of the result output layer is reduced.
In some embodiments of the present application, a line graph showing the CAN (Controller Area Network ) signal of the vehicle is required, for example, because part of the data needs to be output for its change over a period of time. In this regard, the method may further include obtaining an initial data block with a timestamp in the second data refresh period from the first data pool, and processing the initial data block to obtain a processed data block, where the processing may further include: determining, from among the data blocks having time stamps within the second data refresh period, that the data type is a second data type, such as a CAN signal of a vehicle, and that the multi-frame data has different time stamps; based on the multi-frame data having the data type of the second data type and different time stamps, change information (e.g., line graph information of the CAN signal) of the data of the second data type is determined. The processed data block further comprises change information of the data of the second data type, so that the result output layer CAN further acquire the line diagram information of the CAN signal with the time stamp in the third data refreshing period from the second data pool, render and display the line diagram information, and the data processing system CAN output more diversified data of different data types.
In addition, the data processing system also has a data recording function. Taking the recording function as an example, the result output layer can also be used for displaying an operation control of a preset data recording program, so that the data to be recorded is selected from the data displayed by the result output layer by utilizing the operation control, and the data to be recorded is stored in a preset database. The data processing system supports a real-time mode and a data playback mode, a preset data source is connected with the data acquisition equipment in the real-time mode, sensor data is received in real time, the preset data source is a preset database in the playback mode, the preset database stores data recorded or acquired before, in addition, a clock unit and a first data pool are provided for an interactive interface of the data display layer, the interactive interface is connected to a terminal for data playback, the terminal for data playback can display the data, and the purpose of data playback is achieved. It can be seen that the clock unit, the data collecting layer, the data processing layer, the first data pool and the second data pool are multiplexed in the data playback mode and the real-time mode, and can be uniformly exposed to the interactive interface of the result output layer, and the same set of interfaces is provided in the real-time mode and the playback mode, so that the code writing amount is reduced, and the development efficiency is improved.
According to the data processing system, the beats of each layer are controlled through the data refreshing signals, data collection, processing and display are carried out based on the sending time points of the data refreshing signals, fluctuation of the data time stamp in a certain range can be corrected, data exceeding the fluctuation range can be alarmed and discarded, processing of subsequent data is not affected, and robustness is better.
The data refreshing signal is sent according to a preset data refreshing period, the data collecting layer, the data processing layer, the result sensing layer and the clock unit are in the same time coordinate system, the processing time of each part can be sensed according to the sending time node of the received data refreshing signal, the overtime processing can be timely alarmed and discarded, the subsequent data processing is not affected, and the robustness is better.
The data collection layer, the data processing layer and the result output layer respectively run, so that the multi-core processing performance of the computer can be exerted to a greater extent, the performance is generally better, and the response speed is faster.
In addition to the foregoing description for a data processing system, embodiments of the present application provide an electronic device that integrates any of the data processing systems provided by the embodiments of the present application, the electronic device including:
One or more processors;
a memory; and
one or more applications, wherein the one or more applications are stored in memory and configured to be executed by a processor in a data processing system as described in any of the embodiments above.
As shown in fig. 3, a schematic structural diagram of an electronic device according to an embodiment of the present application is shown, specifically:
the electronic device may include one or more processing cores 'processors 301, one or more computer-readable storage media's storage units 302, power supplies 303, and input units 304, among other components. Those skilled in the art will appreciate that the electronic device structure shown in fig. 3 is not limiting of the electronic device and may include more or fewer components than shown, or may combine certain components, or may be arranged in different components. Wherein:
the processor 301 is a control center of the electronic device, connects various parts of the entire electronic device using various interfaces and lines, and performs various functions of the electronic device and processes data by running or executing software programs and/or modules stored in the storage unit 302 and calling data stored in the storage unit 302, thereby performing overall monitoring of the electronic device. Optionally, processor 301 may include one or more processing cores; preferably, the processor 301 may integrate an application processor and a modem processor, wherein the application processor primarily handles operating systems, user interfaces, applications, etc., and the modem processor primarily handles wireless communications. It will be appreciated that the modem processor described above may not be integrated into the processor 301.
The storage unit 302 may be used to store software programs and modules, and the processor 301 executes various functional applications and data processing by executing the software programs and modules stored in the storage unit 302. The storage unit 302 may mainly include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program (such as a sound playing function, an image playing function, etc.) required for at least one function, and the like; the storage data area may store data created according to the use of the electronic device, etc. In addition, the storage unit 302 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other volatile solid-state storage device. Accordingly, the memory unit 302 may also include a memory controller to provide the processor 301 with access to the memory unit 302.
The electronic device further comprises a power supply 303 for powering the various components, preferably the power supply 303 is logically connected to the processor 301 by a power management system, whereby the functions of managing charging, discharging, and power consumption are performed by the power management system. The power supply 303 may also include one or more of any components, such as a direct current or alternating current power supply, a recharging system, a power failure detection circuit, a power converter or inverter, a power status indicator, and the like.
The electronic device may further comprise an input unit 304, which input unit 304 may be used for receiving input digital or character information and for generating keyboard, mouse, joystick, optical or trackball signal inputs in connection with user settings and function control.
Although not shown, the electronic device may further include a display unit or the like, which is not described herein. In particular, in this embodiment of the present application, the processor 301 in the electronic device loads executable files corresponding to the processes of one or more application programs into the storage unit 302 according to the following instructions, and the processor 301 executes the application programs stored in the storage unit 302, so as to implement the data processing system described in any one of the embodiments.
To this end, embodiments of the present application provide a computer-readable storage medium, which may include: read Only Memory (ROM), random access Memory (RAM, random Access Memory), magnetic or optical disk, and the like. The computer readable storage medium has stored therein a plurality of instructions capable of being loaded by a processor to perform steps in any of the data processing systems provided by the embodiments of the present application.
In the foregoing embodiments, the descriptions of the embodiments are emphasized, and for parts of one embodiment that are not described in detail, reference may be made to related descriptions of other embodiments.
The foregoing has outlined a detailed description of a data processing system, an electronic device, and a medium in which embodiments of the present application are provided, and specific examples have been applied to illustrate the principles and embodiments of the present application, where the above description of the embodiments is only for helping to understand the method and core ideas of the present application; meanwhile, those skilled in the art will have variations in the specific embodiments and application scope in light of the ideas of the present application, and the present description should not be construed as limiting the present application in view of the above.

Claims (10)

1. A data processing system is characterized by comprising a clock unit, a data collecting layer, a data processing layer and a result output layer,
the clock unit is used for respectively and regularly transmitting data refreshing signals to the data collecting layer, the data processing layer and the result output layer according to a preset data refreshing period;
the data collection layer is used for receiving the data refreshing signal, responding to the data refreshing signal, acquiring an initial data block with a time stamp in a first data refreshing period from a preset data source and storing the initial data block into a preset first data pool, wherein the first data refreshing period is a time period corresponding to the data refreshing signal responded by the data collection layer;
The data processing layer is used for receiving the data refreshing signal, responding to the data refreshing signal, acquiring and processing an initial data block with a time stamp in a second data refreshing period from the first data pool to obtain a processed data block, and storing the processed data block into a preset second data pool, wherein the second data refreshing period is the last data refreshing period of the first data refreshing period;
and the result output layer is used for receiving the data refreshing signal, responding to the data refreshing signal, acquiring and outputting the processed data block with the time stamp in a third data refreshing period from the second data pool, wherein the third data refreshing period is the last data refreshing period of the second data refreshing period.
2. The data processing system of claim 1 wherein the data refresh signal comprises a refresh signal and a point in time of transmission of the refresh signal;
the data collection layer is used for:
receiving the data refreshing signal and caching the data refreshing signal to a preset cache area;
when the data processing layer is in an idle state, acquiring the data refreshing signal from a cache area, and acquiring a sending time point of the refreshing signal in the data refreshing signal;
If the difference value between the sending time point of the refresh signal and the current time point is smaller than a preset difference value, responding to the data refresh signal; if the difference value between the sending time point of the refresh signal and the current time point is larger than or equal to a preset difference value, acquiring a next data refresh signal from a cache area;
the data processing layer is used for:
receiving the data refreshing signal and caching the data refreshing signal to a preset cache area;
when the data processing layer is in an idle state, acquiring the data refreshing signal from a cache area, and acquiring a sending time point of the refreshing signal in the data refreshing signal;
if the difference value between the sending time point of the refresh signal and the current time point is smaller than a preset difference value, responding to the data refresh signal; if the difference value between the sending time point of the refresh signal and the current time point is larger than or equal to a preset difference value, acquiring a next data refresh signal from a cache area;
the result output layer is used for:
receiving the data refreshing signal and caching the data refreshing signal to a preset cache area;
when the result output layer is in an idle state, acquiring the data refreshing signal from a cache area, and acquiring a sending time point of the refreshing signal in the data refreshing signal;
If the difference value between the sending time point of the refresh signal and the current time point is smaller than a preset difference value, responding to the data refresh signal; and if the difference value between the sending time point of the refresh signal and the current time point is larger than or equal to a preset difference value, acquiring a next data refresh signal from the cache area.
3. The data processing system of claim 1, wherein the data gathering layer issues a first hint message to wait for a next data refresh signal in response to a failure to perform an operation of the data refresh signal;
the data processing layer sends out second prompt information to wait for the next data refreshing signal when the operation execution of the data refreshing signal fails;
and when the result output layer responds to failure of operation execution of the data refreshing signal, sending out third prompt information and waiting for the next data refreshing signal.
4. The data processing system of claim 1, wherein the predetermined data source has stored therein vehicle data, the vehicle data comprising a plurality of different types of data, the retrieving an initial data block from the predetermined data source having a timestamp within a first data refresh period, comprising:
And acquiring a plurality of data slices with time stamps falling in the first data refreshing period from a preset data source, wherein the plurality of data slices form an initial data block, and the data slices comprise different types of data with the same time stamp.
5. The data processing system of claim 4 wherein the retrieving and processing the initial data block from the first data pool having a timestamp within the second data refresh period to obtain a processed data block comprises:
and acquiring an initial data block with a time stamp in a second data refreshing period, performing preset operation based on different data in the initial data block to obtain an operation result, and taking the operation result as a processed data block, or combining the operation result with part or all of vehicle data to obtain the processed data block.
6. The data processing system of claim 4, wherein the vehicle data includes first sensor data sent to the autopilot system, second sensor data sent to the assessment system, and a drive control signal output by the autopilot system, wherein the obtaining and processing an initial data block from the first data pool having a timestamp within the second data refresh period, the processed data block includes:
And acquiring an initial data block with a time stamp in a second data refreshing period, acquiring an expected control signal of the automatic driving system based on second sensor data in the initial data block, acquiring an evaluation result based on the expected control signal and a driving control signal output by the automatic driving system, and taking the evaluation result as a processed data block, or combining the evaluation result with part or all of vehicle data to acquire the processed data block.
7. The data processing system of claim 1, wherein the retrieving and outputting the processed data blocks from the second data pool having time stamps within the third data refresh period comprises:
acquiring a processed data block with a time stamp in a third data refreshing period from the second data pool;
determining that the data type is the first data type in the processed data blocks with the time stamps in the third data refreshing period, wherein the multi-frame data has different time stamps;
and determining and outputting the first data with the largest time stamp value from the multi-frame data with the first data type and different time stamps.
8. The data processing system of claim 4 wherein the retrieving and processing the initial data block from the first data pool having a timestamp within the second data refresh period to obtain a processed data block further comprises:
Determining that the data type is the second data type in the data blocks with the time stamps in the second data refreshing period, and multi-frame data with different time stamps;
and determining the change information of the data of the second data type based on the multi-frame data with different time stamps, wherein the processed data block also comprises the change information of the data of the second data type.
9. An electronic device, the electronic device comprising:
one or more processors;
a memory; and
one or more applications, wherein the one or more applications are stored in the memory and configured to be executed by the processor to implement the data processing system of any of claims 1 to 8.
10. A computer readable storage medium, having stored thereon a computer program, the computer program being loaded by a processor to perform the steps in the data processing system of any of claims 1 to 8.
CN202311377873.XA 2023-10-23 2023-10-23 Data processing system, electronic device, and medium Pending CN117573709A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311377873.XA CN117573709A (en) 2023-10-23 2023-10-23 Data processing system, electronic device, and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311377873.XA CN117573709A (en) 2023-10-23 2023-10-23 Data processing system, electronic device, and medium

Publications (1)

Publication Number Publication Date
CN117573709A true CN117573709A (en) 2024-02-20

Family

ID=89888914

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311377873.XA Pending CN117573709A (en) 2023-10-23 2023-10-23 Data processing system, electronic device, and medium

Country Status (1)

Country Link
CN (1) CN117573709A (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102932635A (en) * 2012-11-22 2013-02-13 南京明德软件有限公司 Real-time image processing system and method
CN107749193A (en) * 2017-09-12 2018-03-02 华为技术有限公司 Drive risk analysis and risk data sending method and device
CN212905419U (en) * 2020-07-07 2021-04-06 中国人民解放军海军航空大学青岛校区 Pulse train signal time sequence acquisition module
CN114741203A (en) * 2022-04-29 2022-07-12 中汽创智科技有限公司 Vehicle data processing method, device, equipment and storage medium
CN115017931A (en) * 2022-06-14 2022-09-06 广东技术师范大学 Method and system for extracting QR codes in batches in real time
CN116224871A (en) * 2023-03-03 2023-06-06 浙江吉利控股集团有限公司 Vehicle data acquisition and processing device
CN116710912A (en) * 2021-04-26 2023-09-05 华为技术有限公司 Matrix multiplier and control method thereof

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102932635A (en) * 2012-11-22 2013-02-13 南京明德软件有限公司 Real-time image processing system and method
CN107749193A (en) * 2017-09-12 2018-03-02 华为技术有限公司 Drive risk analysis and risk data sending method and device
CN212905419U (en) * 2020-07-07 2021-04-06 中国人民解放军海军航空大学青岛校区 Pulse train signal time sequence acquisition module
CN116710912A (en) * 2021-04-26 2023-09-05 华为技术有限公司 Matrix multiplier and control method thereof
CN114741203A (en) * 2022-04-29 2022-07-12 中汽创智科技有限公司 Vehicle data processing method, device, equipment and storage medium
CN115017931A (en) * 2022-06-14 2022-09-06 广东技术师范大学 Method and system for extracting QR codes in batches in real time
CN116224871A (en) * 2023-03-03 2023-06-06 浙江吉利控股集团有限公司 Vehicle data acquisition and processing device

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
孙玮;刘国满;: "基于DSP的脉冲压缩算法的并行流水实现", 无线电工程, no. 09, 5 September 2013 (2013-09-05), pages 49 *

Similar Documents

Publication Publication Date Title
TW201133358A (en) System and method for detecting objects in a video image
WO2012166109A1 (en) Waking an electronic device
CN111682918B (en) Synchronous control method, device and system of sensor and storage medium
WO2023246638A1 (en) Information processing method and apparatus, wearable device and electronic device
CN117573737A (en) Processing method, application method, electronic equipment and medium of vehicle sensor data
CN102986237B (en) Display device and display system
CN117573709A (en) Data processing system, electronic device, and medium
CN102780840B (en) Imaging apparatus
CN111637975B (en) Wrist temperature measuring method and device, wearable device and storage medium
CN115866154B (en) Time delay measurement method, device and system of vehicle-mounted multi-camera system and automobile
US11307082B2 (en) Method for monitoring motor vibration, terminal device, and computer readable storage medium
CN112783274B (en) Intelligent watch and control device and control method thereof
CN110086565B (en) Data transmission and storage method
CN118524170A (en) Awakening method and electronic equipment
CN114519017B (en) Data transmission method for event camera, system and electronic equipment thereof
CN108174187B (en) Method and system for testing response time of smart television
CN115129279A (en) Image drawing method, image drawing device, electronic equipment and computer storage medium
CN111917974A (en) FPGA-based video processing system, method, device and medium
CN110705493A (en) Method and system for detecting vehicle running environment, electronic device and storage medium
CN113542483A (en) Data transmission method and device, wearable device and storage medium
CN110944159A (en) Information processing method, electronic equipment and information processing system
CN114153689B (en) BMC and device monitoring method and device thereof and readable storage medium
CN117236931B (en) Equipment management method and computer equipment
CN113473036B (en) Image exposure method and device and electronic equipment
CN113589883B (en) Signal adjustment method, electronic device, and computer storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination