Time-Grid Buffering for Deterministic Multi-Unit Data Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Data processing systems for applications like autonomous driving and robotic systems face complexity due to high data volumes and stringent safety requirements, leading to challenges in efficient data transfer and deterministic communication between processing modules with non-coherent memory access.
Innovation Solution
A method utilizing a time grid with predetermined repetition rates for data processing tasks, buffer memories for storing output data, and synchronization functions to ensure coherent memory access and deterministic communication, allowing for copy-free data transfer between data processing units.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data processing modules operate in parallel with non-coherent memory access, then processing speed and productivity are improved, but communication complexity and data transfer overhead increase
Solution Approach 1:
The system is segmented into multiple data processing modules (first data processing unit, second data processing unit) that can operate independently in parallel. Each module has its own non-coherent memory access capabilities, allowing simultaneous data processing without interfering with each other's memory operations, thus maintaining high productivity while managing complexity through modular architecture.
Solution Approach 2:
A buffer memory serves as an intermediary between data processing modules with non-coherent memory access. The buffer temporarily stores data exchanged between modules, enabling efficient data transfer without requiring complex synchronization protocols. This intermediary mechanism simplifies communication while maintaining parallel processing capabilities.
2Productivity
If copy-free data transfer is implemented between data processing units, then data transfer efficiency is improved, but ensuring data consistency and availability becomes more difficult
Solution Approach 1:
Data is preliminarily stored in buffer memories before being transferred between data processing units. This preliminary storage ensures that data is readily available when needed by downstream processing units, enabling copy-free direct memory access while maintaining data consistency. The buffer acts as a pre-prepared data repository that eliminates the need for copying while ensuring reliability.
3Reliability
If buffer memories are used for storing output data, then data availability for subsequent processing is improved, but memory resource requirements increase
Solution Approach 1:
The buffer memory serves multiple functions: it stores output data from first data processing units, provides input data to second data processing units, and enables copy-free data transfer between modules. This multi-functional use of the buffer maximizes data availability while optimizing memory resource utilization, as the same buffer serves multiple data exchange purposes rather than requiring dedicated storage for each function.
Data Source
AI summary
A method for operating a data processing system for processing data. The data processing system is set up for the repeated execution of a plurality of data processing tasks. The method including: a) executing the individual data processing tasks at their relevant repetition rate in a time grid on one of the data processing units of the data processing system; b) outputting output data by the individual data processing tasks into respectively provided memory areas of the buffer memory, which are associated with the clock pulse of the grid, wherein output data generated by data processing tasks on second data processing units are transmitted after output via the data transmission interfaces into memory areas of the buffer memory on first data processing units; and c) reading in input data by the individual data processing tasks from respectively provided memory areas of the buffer memory.


