Data Processing Network Execution for Low-Latency Reproducibility
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In driver assistance and automated driving systems, achieving reproducibility and low latency is challenging due to fluctuating runtime behaviors in multi-core systems, which complicates safety measures like SW lockstep and recalculating driving situations accurately.
Innovation Solution
A method that combines data-driven and time-driven execution of data processing components, using a parent structure to aggregate input and output data and control data flow, allowing for predictable and efficient processing with reduced system states.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If a strictly data-driven approach is used to trigger execution of data processing components by data packet arrival, then low latency is achieved, but the number of possible states increases significantly
Solution Approach 1:
The system segments the data processing network into multiple data processing modules, each with its own execution context. This segmentation allows the system to divide the large state space into smaller, manageable modules while maintaining low latency through event-driven execution triggers.
Solution Approach 2:
The system dynamically switches between data-driven execution (for low latency paths) and time-driven execution (for state management). The execution mode adapts based on the specific data processing task, allowing the system to optimize between latency and state complexity in different contexts.
2Reliability
If time-driven execution with worst-case execution-time concepts is applied to data processing components, then predictability and reproducibility are improved, but latency increases
Solution Approach 1:
The system implements periodic time-driven execution cycles that provide predictable timing boundaries. Within these cycles, data-driven events can trigger immediate processing when needed, while the periodic structure ensures overall predictability and reproducibility for safety-critical functions.
Solution Approach 2:
The system performs preliminary time allocation and resource reservation based on worst-case execution times before actual data processing occurs. This preliminary action ensures predictability is maintained while allowing flexible, low-latency execution when data is actually available.
3Productivity
If data processing components are executed in parallel on multi-core systems to improve performance, then productivity increases, but runtime behavior becomes fluctuating and less predictable
Solution Approach 1:
The system introduces an intermediary execution management layer that coordinates parallel data processing components across multiple cores. This intermediary layer synchronizes execution contexts and manages data flow between parallel components, maintaining predictability while enabling high-performance parallel processing.
4Reliability
If the same software is executed simultaneously on two processors for SW lockstep safety measures, then safety and reliability are improved, but hardware resources are doubled
Solution Approach 1:
The system creates virtual copies of execution contexts and data processing logic through software-based redundancy rather than requiring physical hardware duplication. The same software can be executed on shared hardware resources with proper isolation and synchronization, reducing hardware resource requirements while maintaining SW lockstep safety.
Data Source
AI summary
A method for processing data with a data processing network including a plurality of data processing modules which each include at least one data processing component, each data processing component being designed for a defined data processing task for processing the data, each data processing module receiving, as input data, data from a data source and/or output data from further data processing modules and generating output data which is network output data of the data processing network and/or input data of further data processing modules. The method for at least one data processing module including: a) receiving a set of input data for performing the data processing tasks; b) receiving a stimulus for activating the at least one data processing component; c) performing the data processing task with the corresponding input data to generate output data; and d) providing the output data.


