Dynamic Multicycle Timing Closure for FPGA Core-Periphery Skew

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In digital circuitry design, particularly in field-programmable gate arrays (FPGAs), the difference in clock latency between programmable fabric and hardened logic regions leads to significant clock skews, affecting data transfer reliability and performance, as existing synthesis processes struggle to mitigate these skews effectively.

Innovation Solution

The implementation of multicycle strategies, where data transfers employ multiple clock cycles based on latency and skew information, and the use of dynamic multicycle determination methods to configure clock trees, ensuring balanced clock latency across regions and satisfying timing constraints.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multicycle strategies are implemented to reduce clock skews, then data transfer reliability is improved, but device complexity increases

Engineering Contradiction:
Improvedata transfer reliabilityVSAvoiddevice complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary determination of multicycle values during the synthesis phase by analyzing clock latency differences between source and destination registers. This preliminary action establishes the multicycle constraints before implementation, allowing the timing closure to be achieved without adding complex runtime mechanisms. The multicycle value is calculated based on the formula: multicycle = ceil((destination_clock_latency - source_clock_latency) / clock_period), which resolves the timing skew issue in advance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary synthesis process that acts as a mediator between the physical hardware constraints and the logical design requirements. This intermediary layer analyzes the clock tree latencies and automatically determines appropriate multicycle values for data transfers between core and periphery regions, eliminating the need for complex runtime skew compensation mechanisms while ensuring reliable data transfer.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Manufacturing precision

If dynamic multicycle determination is used to satisfy timing constraints, then timing closure is achieved, but synthesis process complexity increases

Engineering Contradiction:
Improvetiming closureVSAvoidsynthesis process complexity
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

The synthesis process is enhanced with self-service capabilities that automatically analyze the clock tree structure, determine clock latency differences between different regions, and compute appropriate multicycle values without external intervention. The system services its own timing closure requirements by integrating the multicycle determination logic directly into the synthesis flow, using the clock latency information that is already available from the clock tree generation process.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent changes the timing parameter model by introducing dynamic multicycle values that are determined based on actual clock latency measurements. Instead of using fixed or conservative timing assumptions, the system adjusts the multicycle parameter dynamically according to the specific clock skew conditions in each data transfer path. This parameter change allows precise timing closure while maintaining a relatively simple synthesis process.

Inventive Principle:
Principle #35Parameter changes

3Stability of the object's composition

If fixed clock latency is used in hardened logic region, then circuit stability is improved, but adaptability to different clock latencies deteriorates

Engineering Contradiction:
Improvecircuit stabilityVSAvoidadaptability to clock latency
Core Design Contradiction:
Stability of the object's compositionVSAdaptability or versatility

Solution Approach 1:

The patent applies dynamics by making the multicycle value adaptive rather than fixed. Although the hardened logic region maintains its fixed clock latency for stability, the system dynamically determines the multicycle value based on the actual latency difference between the source register in the programmable region and the destination register in the hardened region. This allows the system to adapt to different clock latency scenarios while the hardware itself remains stable and fixed.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent segments the timing analysis into distinct regions: the programmable fabric region with variable clock latency and the hardened logic region with fixed clock latency. By segmenting the problem this way, the system can maintain the stability benefits of fixed latency in the hardened region while applying adaptive multicycle values to compensate for the latency differences between segments. This segmentation allows each region to operate in its optimal mode.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10320393B2Dynamic multicycles for core-periphery timing closure
Publication Date: 2019.06.11 ALTERA CORP
  • US10320393B2 patent drawing
  • US10320393B2 patent drawing
  • US10320393B2 patent drawing

AI summary

Methods and systems for timing analysis and closure during logic synthesis of synchronous digital circuitry are provided, which may be used to prevent timing conflicts in logic designs that may have data transfers between regions with substantial clock skew. In programmable logic devices having hardened circuitry and programmable fabric, data transfers between memory elements in hardened circuitry and programmable fabric may be subject to substantial clock skews and unknown latencies. Embodiments may employ pre-calculated latencies that may be stored in a file and/or a database, and dynamically retrieved during timing synthesis to determine multicycle constraints to mitigate latencies. Embodiments may employ destination multicycle constraints, which use as reference the clock waveforms delayed due to latency.