IPU Clock Domain Decoupling for Bandwidth Without Power Penalty

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The bandwidth bottleneck between components in a System on a Chip (SoC) leads to data starvation and processing delays due to limited communication bandwidth, particularly when using direct memory access (DMA) and other techniques.

Innovation Solution

Implementing a hardware accelerator with data processing engines (DPEs) in a first clock domain and interface circuitry in a second clock domain, allowing for different clock frequencies to optimize bandwidth without increasing power consumption across the entire system.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If the clock frequency is increased to improve bandwidth, then data transfer speed is improved, but power consumption increases across the entire system

Engineering Contradiction:
Improvedata transfer speedVSAvoidpower consumption
Core Design Contradiction:
SpeedVSUse of energy by moving object

Solution Approach 1:

The hardware accelerator is divided into multiple clock domains with different clock frequencies. The first clock domain (for data processing engines) operates at a lower frequency, while the second clock domain (for interface circuitry) operates at a higher frequency. This segmentation allows each domain to be optimized independently, achieving high bandwidth where needed without unnecessarily increasing power consumption across the entire system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different parts of the hardware accelerator are assigned different clock frequencies based on their specific functional requirements. The interface circuitry that handles data transfer operates at a higher clock frequency to maximize bandwidth, while the data processing engines operate at a lower frequency to reduce power consumption. This local optimization resolves the contradiction by applying high speed only where it is most beneficial.

Inventive Principle:
Principle #3Local quality

2Productivity

If a single clock domain is used, then system simplicity is maintained, but bandwidth bottleneck occurs between components

Engineering Contradiction:
ImprovebandwidthVSAvoidclock domain structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system is segmented into multiple clock domains to resolve the bandwidth bottleneck. By creating separate clock domains for different functional blocks (data processing engines and interface circuitry), the system can operate different parts at different speeds, allowing the interface circuitry to run faster and thus increase overall bandwidth without requiring the entire system to become more complex.

Inventive Principle:
Principle #1Segmentation

3Productivity

If the interface circuitry operates at the same clock frequency as data processing engines, then clock synchronization is simplified, but data starvation occurs due to limited bandwidth

Engineering Contradiction:
Improveprocessing throughputVSAvoiddata availability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The interface circuitry is assigned a different (higher) clock frequency than the data processing engines to ensure that data can be transferred faster than it is processed. This prevents data starvation by allowing the interface to keep up with or exceed the data generation rate, while the data processing engines operate at a lower frequency that matches their processing capabilities.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS20250370949A1Decoupling processing and interface clocks in an ipu
Publication Date: 2025.12.04 XILINX INC
  • US20250370949A1 patent drawing
  • US20250370949A1 patent drawing
  • US20250370949A1 patent drawing

AI summary

Embodiments herein describe a hardware accelerator that includes multiple clock domains. For example, the hardware accelerator can include data processing engines (DPEs) which include circuitry for performing acceleration tasks (e.g., artificial intelligence (AI) tasks, data encryption tasks, data compression tasks, and the like). The DPEs are interconnected to permit them to share data when performing the acceleration tasks. In addition to the DPEs, the hardware accelerator can include interface circuitry such as an interconnect, a controller, address translation circuitry, etc. The DPEs may be in a first clock domain while the other circuitry is in a second clock domain. The two clock domains can use different frequency clock circuits, for example, to generate more bandwidth for moving data into and out of the hardware accelerator while reducing power consumption.