Four-Slot Asynchronous Communication Mechanism for Reduced Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data transfer mechanisms using Direct Memory Access (DMA) face challenges in ensuring data coherence, particularly when the host reads data while it is being written, leading to potential incoherence and increased latency due to the need for significant communication overhead in achieving full asynchronicity.

Innovation Solution

A four-slot asynchronous communication mechanism is implemented, where each data structure has two pairs of slots with counter values indicating the most recent write, and 'latest' information is used to determine which slot to read or write, reducing the need for additional DMA operations and improving throughput.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a four-slot asynchronous communication mechanism is implemented to ensure data coherence, then data coherence is improved, but communication overhead increases

Engineering Contradiction:
Improvedata coherenceVSAvoidcommunication overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The data buffer is segmented into four distinct slots, allowing the host and client to operate independently on different slots. This segmentation enables asynchronous operations without requiring complex synchronization protocols, as the host reads from one slot while the client writes to another, naturally preventing data coherence issues.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The synchronization overhead is extracted and eliminated by using the slot number itself as the synchronization mechanism. Instead of requiring separate acknowledgment packets or complex handshaking protocols, the system uses the inherent structure of the four slots to implicitly coordinate operations, reducing communication overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

2Ease of operation

If traditional DMA operations are used for data transfer, then data transfer is simplified, but latency increases due to communication overhead

Engineering Contradiction:
Improvedata transfer simplicityVSAvoidtransfer latency
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-establishing the four-slot structure and initializing the slot pointers before actual data transfer begins. This preliminary setup allows subsequent data transfers to proceed with minimal overhead, as the synchronization infrastructure is already in place and no runtime negotiation is required.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The DMA subsystem serves itself by using the slot numbers as implicit synchronization signals. The host and client can independently determine which slots to read from or write to based on the current slot pointer values, eliminating the need for additional control messages or handshaking operations that would increase latency.

Inventive Principle:
Principle #25Self-service

3Reliability

If locking mechanisms are used to ensure data coherence, then data coherence is improved, but timing interference increases

Engineering Contradiction:
Improvedata coherenceVSAvoidtiming interference
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Instead of using locks to prevent simultaneous access to the same data, the system inverts the approach by providing multiple dedicated access paths (four slots). The host and client operate on different slots simultaneously, so no exclusion is needed. This inversion transforms a synchronization problem into a resource multiplication solution, eliminating timing interference.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS8156295B2Four-slot asynchronous communication mechanism with decreased latency
Publication Date: 2012.04.10 NATIONAL INSTRUMENTS CORP
  • US8156295B2 patent drawing
  • US8156295B2 patent drawing
  • US8156295B2 patent drawing

AI summary

System and method for a four-slot asynchronous communication mechanism with decreased latency. The system may include a host system and a client device. The host may comprise a data structure with four (two pairs of) slots. The client may comprise first information indicating a status of write operations to the data structure on the host and second information usable to determine a slot that should be written to. If the first information indicates that the second information is accurate, the client may determine which slot in the data structure should be written to based on information stored only on the client device. The determined slot may be the slot that has not been written to more recently of the pair of slots that has not been read from most recently. The client may write data to the determined slot. The client may update at least a portion of the information stored on the client device to reflect the write of data to the determined slot.