Direct-Memory-Access Buffer Allocation for Quasi-Synchronous Dataflow

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data communication systems face challenges in efficiently managing data transmission and synchronization between multiple data sources and destinations, particularly in real-time applications where data staleness and resource limitations are concerns.

Innovation Solution

The implementation of a zero-duplicate direct-memory-access data buffer management system that uses a shared serial data communication interface to synchronize data between data producers and consumers, with priority timing information and buffer holding time management to ensure efficient data allocation and refresh.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data buffers are shared by multiple data sources or by the same data source in time, then resource utilization is improved, but data transmission efficiency and synchronization reliability deteriorate

Engineering Contradiction:
Improvebuffer resource utilizationVSAvoiddata transmission efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The shared buffer is segmented into multiple buffer regions, each assigned to a specific data source or data type. Each region has its own buffer head and tail pointers, allowing independent management while sharing the same physical memory space. This segmentation enables multiple data sources to write to their respective regions simultaneously without conflict, improving both resource utilization and transmission efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A buffer manager acts as an intermediary between multiple data sources and the buffer memory. The buffer manager allocates buffer regions to different data sources, manages buffer pointers, handles synchronization, and coordinates access to the shared buffer. This intermediary layer abstracts the complexity of shared buffer management from individual data sources, enabling efficient concurrent access while maintaining data integrity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If data is continuously transmitted from multiple data sources, then real-time data processing capability is improved, but data staleness increases due to limited buffer resources

Engineering Contradiction:
Improvereal-time data processing speedVSAvoiddata staleness
Core Design Contradiction:
SpeedVSLoss of information

Solution Approach 1:

The buffer system dynamically adjusts buffer allocation and management based on real-time data source priorities and data freshness requirements. The buffer manager can dynamically reassign buffer regions, adjust buffer sizes, and modify synchronization parameters according to changing data priorities. This dynamic adaptation allows the system to maintain real-time processing speed while minimizing data staleness by prioritizing critical data streams.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system performs preliminary actions by pre-allocating buffer regions to data sources based on their priority levels and data generation rates. Buffer regions are pre-configured with appropriate sizes and management parameters before data transmission begins. This preliminary setup enables the system to handle real-time data streams efficiently without requiring complex runtime decisions, reducing data staleness while maintaining processing speed.

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If priority timing information is used to manage buffer allocation, then data synchronization accuracy is improved, but system complexity increases

Engineering Contradiction:
Improvedata synchronization accuracyVSAvoidbuffer management system complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The system uses parameter changes by incorporating priority timing information as a key parameter in buffer management decisions. The buffer manager reads priority timing values from data sources and uses these parameters to determine buffer region allocation, synchronization timing, and data refresh priorities. By changing the management approach to be parameter-driven rather than static, the system achieves high synchronization accuracy while keeping the complexity manageable through standardized parameter processing.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12327022B2Efficient direct-access buffer management in a data communication
Publication Date: 2025.06.10 GUANGZHOU WERIDE TECH LTD CO
  • US12327022B2 patent drawing
  • US12327022B2 patent drawing
  • US12327022B2 patent drawing

AI summary

The embodiments of the present disclosure are generally directed to zero-duplicate direct-memory-access data buffer management in a data communication interface and are particularly directed to an efficient and collaborative buffer management for data transmission and synchronization between a plurality of data sources (data producers) and a data destination (data consumers) via the data communication interface. In one example, the disclosed buffer management approach combines zero-duplicate buffers, priority-based buffer allocation, priority-based data synchronization, and a collaborative communicated buffer holding time to manage the direct-memory-access and release of buffered data in a real-time and continuous dataflow producer-consumer system.