Shared Memory Block Index for Autonomous Vehicle Data Transmission
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In data transmission systems, particularly in control systems of autonomous vehicles, the existing method of data transmission can lead to data being blocked and outdated data being processed, failing to meet the high demand for instantaneity due to the slower data processing frequency of the receiving process compared to the transmitting process.
Innovation Solution
A method and system where the data receiver acquires the most recent shared memory block index, determines if it matches the index of recently read data, and decides whether to read from that block, allowing it to directly read the most recent data and abandon outdated data without affecting higher-frequency processes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the data receiving process sequentially reads data from shared memory at the slowest data reading frequency, then the data transmitting process is blocked and massive new data cannot be timely written, but the data receiving process can process data without missing any blocks
Solution Approach 1:
The shared memory segment is divided into multiple shared memory blocks, each with its own index. The data receiver can selectively read from specific blocks based on the most recent index, rather than sequentially reading all blocks. This segmentation allows the receiver to skip outdated blocks and directly access the latest data block, improving transmission speed while maintaining data completeness.
Solution Approach 2:
The system pre-establishes multiple shared memory blocks and maintains a most recent shared memory block index that points to the latest written data block. This preliminary structure allows the data receiver to immediately jump to the most recent data without sequential searching, enabling fast access to latest data while the transmitter remains unblocked.
2Reliability
If the data receiving process reads all shared memory blocks sequentially, then no data is lost, but the data is outdated and does not meet the high demand for instantaneity
Solution Approach 1:
The system pre-establishes multiple shared memory blocks and maintains a most recent shared memory block index that points to the latest written data block. This preliminary structure allows the data receiver to immediately jump to the most recent data without sequential searching, enabling fast access to latest data while ensuring completeness through index validation.
Solution Approach 2:
The data receiving process dynamically adjusts its reading behavior based on the most recent shared memory block index. When the index indicates new data is available, the receiver reads only that specific block. This dynamic approach ensures the receiver gets the latest data immediately while maintaining reliability through index consistency checks.
3Reliability
If the data transmitting process waits for the data receiving process to keep up with its writing speed, then the receiving process can process data thoroughly, but the transmitter is blocked and system instantaneity is compromised
Solution Approach 1:
The shared memory segment is divided into multiple shared memory blocks, each with its own index. The data receiver can selectively read from specific blocks based on the most recent index, rather than sequentially reading all blocks. This segmentation allows the receiver to skip outdated blocks and directly access the latest data block, improving transmission speed while maintaining data completeness.
Solution Approach 2:
The most recent shared memory block index acts as an intermediary between the transmitter and receiver. It allows the transmitter to write data continuously without waiting for the receiver, while the receiver uses the index to identify and read only the latest data block. This intermediary mechanism decouples the transmitter and receiver, eliminating blocking while ensuring data accuracy through index validation.
Data Source
AI summary
A method and a system for transmitting data are disclosed. A method embodiment comprises: acquiring a most recent shared memory block index of a shared memory segment by a data receiver, the shared memory segment being used by a data transmitter and the data receiver to transmit data; deciding whether the most recent shared memory block index is consistent with a shared memory block index corresponding to data recently read by the data receiver; and determining, according to the decision, whether to read the data in the shared memory block corresponding to the most recent shared memory block index, where the determining includes reading the data in the shared memory block corresponding to the most recent shared memory block index when the decision indicates that the most recent shared memory block index is inconsistent with the shared memory block index corresponding to the data recently read by the data receiver.


