Dual Buffer Clock Domain Data Transfer Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer systems face challenges in achieving low latency data transfer between clock domains with varying frequencies, particularly when one domain has a variable clock frequency and the other has a fixed clock frequency, as existing solutions rely on single buffers per data channel, which are inefficient.

Innovation Solution

The use of two buffers connected in parallel and series with clock domains, where one buffer has a shorter delay time and the other a longer delay time, and a multiplexor to forward data from either buffer based on synchronous or asynchronous operation modes, ensuring optimal latency in both modes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If a single buffer is used for data transfer between clock domains, then the device complexity is reduced, but the data transfer latency increases and cannot be optimized for different operation modes

Engineering Contradiction:
Improvedata transfer latencyVSAvoidbuffer configuration complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent divides the single buffer into two separate buffers (first buffer and second buffer) with different delay characteristics. The first buffer is optimized for synchronous mode operation while the second buffer is optimized for asynchronous mode operation. This segmentation allows each buffer to be specifically tuned for its intended operation mode, reducing latency in both modes without requiring a complex reconfigurable single buffer.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a mode selection mechanism that dynamically switches between the first buffer and second buffer based on the operation mode (synchronous or asynchronous). The system adapts its data transfer path according to the clock domain relationship, selecting the buffer with the appropriate delay characteristic for the current operation mode, thereby optimizing latency dynamically.

Inventive Principle:
Principle #15Dynamics

2Adaptability or versatility

If buffer delay time is increased to handle asynchronous mode, then asynchronous data transfer becomes possible, but synchronous mode latency increases

Engineering Contradiction:
Improveoperation mode compatibilityVSAvoidsynchronous mode latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent creates two specialized buffers: the first buffer with shorter delay time optimized for synchronous mode, and the second buffer with longer delay time optimized for asynchronous mode. By segmenting the buffering function, each buffer can be independently optimized for its specific operation mode without compromise.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a mode selection mechanism that acts as an intermediary between the clock domains and the buffers. This mediator selects the appropriate buffer based on the operation mode, ensuring that the first buffer handles synchronous transfers and the second buffer handles asynchronous transfers, thereby preventing latency penalties in synchronous mode while maintaining asynchronous capability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8898503B2Low latency data transfer between clock domains operated in various synchronization modes
Publication Date: 2014.11.25 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8898503B2 patent drawing
  • US8898503B2 patent drawing
  • US8898503B2 patent drawing

AI summary

Transferring data from a first clock domain to a second clock domain, wherein the second clock domain has a fixed clock frequency, and the first clock domain has a variable clock frequency. The first clock domain and the second clock domain operate in a synchronous mode when the variable clock frequency is equal to the fixed clock frequency, and in an asynchronous mode when the variable frequency is lower than the fixed frequency. A first buffer and a second buffer are used for a data transfer from the first clock domain to the second clock domain. The second clock domain comprises a multiplexor connected to the first buffer and the second buffer. The multiplexor forwards data from the first buffer further into the second clock domain in the synchronous mode and from the second buffer into the second clock domain in the asynchronous mode.