Elastic Buffer Architecture for Non-Integer Clock Domain Ratios

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional elastic buffer designs struggle to accommodate non-synchronized clock domains with non-integer multiple clock speeds, leading to complexity and difficulty in achieving desired data rates.

Innovation Solution

An elastic buffer module with a memory unit of single-bit memory elements, using write and read index control modules to specify ranges for data input and output, and a central control unit for clock-skew-correction, allowing flexible word lengths and independent clock rates.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional elastic buffer designs are used, then data transfer between clock domains is achieved, but the design becomes complex and cannot accommodate non-integer multiple clock speeds

Engineering Contradiction:
Improveclock rate ratio accommodationVSAvoidbuffer design complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The buffer memory is segmented into multiple independently controllable banks (first buffer bank, second buffer bank, third buffer bank) with separate write and read ports. This segmentation allows different clock domains to access different segments simultaneously, enabling accommodation of non-integer multiple clock rate ratios while maintaining manageable complexity through modular design

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a bank dimension to the traditional single-buffer architecture. By organizing memory into multiple banks that can be independently accessed, the system adds a spatial dimension to data access patterns, allowing parallel operations at different clock rates without increasing temporal complexity

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Adaptability or versatility

If additional buffers and gearboxes are used to accommodate different clock domains, then data transfer flexibility is improved, but chip area increases

Engineering Contradiction:
Improveclock domain compatibilityVSAvoidchip area
Core Design Contradiction:
Adaptability or versatilityVSArea of stationary object

Solution Approach 1:

Each buffer bank is designed with universal functionality to handle multiple clock domain interfaces. The banks can be configured to accept writes from different clock domains and provide reads to different clock domains, eliminating the need for dedicated buffers for each clock domain pair and reducing overall chip area

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

Multiple buffer banks are merged into a single elastic buffer module with unified control logic. The control unit manages all banks simultaneously, allowing the system to achieve the functionality of multiple separate buffers while sharing common control infrastructure and reducing redundant components

Inventive Principle:
Principle #5Merging (Combining)

3Productivity

If conventional buffer designs are used, then data transfer is achieved, but latency is increased

Engineering Contradiction:
Improvedata transfer efficiencyVSAvoidbuffer latency
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The buffer banks are pre-configured with data in anticipatory fashion, allowing the control unit to prepare data for upcoming read operations. By maintaining multiple banks with different data sets, the system can switch between banks to minimize wait states and reduce latency without sacrificing transfer efficiency

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

While one buffer bank is being read from, another bank can simultaneously be written to, ensuring continuous useful action. This parallel operation eliminates idle time in the data transfer pipeline, maintaining high productivity while reducing overall latency through overlapping operations

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS12530307B2Elastic buffers
Publication Date: 2026.01.20 NXP USA INC
  • US12530307B2 patent drawing
  • US12530307B2 patent drawing
  • US12530307B2 patent drawing

AI summary

An elastic buffer module includes: a memory unit configured as an array of memory elements; a write index control module that specifies a range of the memory elements into which a write word from a sequence of input words within input data is to be written into the memory unit; and a read index control module that specifies a range of the memory elements from which a read word is to be read from the memory unit and output as part of a sequence of read words in output data. The input words have a first bit width, the read words have a second bit width, the second bit width is a non-integer multiple of the first bit width, and the first bit width is a non-integer multiple of the second bit width.