FIFO Apparatus for Clock Tree Boundary Latency Compensation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In digital circuits, clock tree latency causes errors in data reception due to asynchronous clock domains, leading to complex and impractical compensation schemes, especially with multiple input sources having varying frequencies, making it difficult to balance and adjust latency relationships effectively.

Innovation Solution

A First-In-First-Out (FIFO) apparatus is designed with write registers and controllers in separate clock domains, utilizing an asynchronous interface to synchronize data transfer, allowing the FIFO to operate across different clock frequencies and domains, ensuring correct data reception without requiring extensive latency compensation across the entire circuit.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If conventional buffer or delay units are used to compensate for clock tree latency, then data reception timing is improved, but circuit complexity increases significantly

Engineering Contradiction:
Improvedata reception timing accuracyVSAvoidcircuit complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the latency compensation function from the data path and relocates it to the clock path by inserting delay units in the clock tree. This separates the timing adjustment mechanism from the data transmission path, reducing circuit complexity while maintaining timing accuracy.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a clock tree as an intermediary mechanism to transfer and synchronize timing information from the source clock domain to the destination clock domain. The delay units in the clock tree act as mediators to adjust timing without directly interfering with data signals.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If multiple input sources with different clock frequencies are supported, then system versatility is improved, but clock tree balancing and latency compensation becomes extremely difficult

Engineering Contradiction:
Improvemulti-input source supportVSAvoidclock tree balancing complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the clock tree into independent adjustable branches, each serving a specific input source. This allows independent timing adjustment for each input source without affecting others, making multi-source support manageable despite different clock frequencies.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces tunable delay units that can dynamically adjust their delay characteristics based on the specific input source and timing requirements. This dynamic adjustment capability enables the clock tree to adapt to different clock frequencies and timing relationships.

Inventive Principle:
Principle #15Dynamics

3Reliability

If latency compensation is implemented for each input source, then data reception reliability is improved, but adjustment time and cost increase

Engineering Contradiction:
Improvedata reception reliabilityVSAvoidadjustment time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements preliminary timing adjustment by pre-configuring delay units in the clock tree during the design and setup phase. This preliminary action establishes the timing relationship before data transmission begins, eliminating the need for real-time adjustments during operation.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8868827B2FIFO apparatus for the boundary of clock trees and method thereof
Publication Date: 2014.10.21 REALTEK SEMICON CORP
  • US8868827B2 patent drawing
  • US8868827B2 patent drawing
  • US8868827B2 patent drawing

AI summary

A FIFO apparatus uses a first clock signal in a first clock domain to receive an input signal and uses a second clock signal in a second clock domain to output an output signal. An example apparatus includes: at least three write registers belonging to the first clock domain for receiving the input signal. Each of the write registers has a first output. A first controller belonging to the first clock domain enables the registers, in accordance with an order, to generate an initial signal. A multiplexer receives the first outputs. A second controller belonging to the second clock domain, receives the initial signal through an asynchronous interface and controls the multiplexer to output the first outputs in accordance with the order to be the output signal, wherein the second clock domain is a clock tree generated based on the first clock domain.