Retiming-Aware Timing Analysis for FPGA Design Compilation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional design compilation flows for complex systems on target devices, such as FPGAs and ASICs, face challenges in efficiently closing timing due to the complexity of critical paths, requiring extensive recompilation and delaying designer feedback loops.

Innovation Solution

Implementing a retiming aware timing analysis that allows for speculative changes and post-placement, post-routing optimizations, enabling designers to modify designs before full compilation, by applying skew to registers and delay elements to model register retiming effects, and incorporating designer feedback for iterative improvements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If conventional timing analysis is performed after each synthesis, placement, and routing procedure, then designers can review timing results, but they must wait for the entire compilation to complete before receiving feedback

Engineering Contradiction:
Improvedesigner feedback timeVSAvoidcompilation flow complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The compilation flow is segmented into distinct phases (synthesis, placement, routing) with independent timing analysis capability at each stage. The retiming-aware timing analysis can be performed incrementally after each phase without requiring completion of the entire compilation flow, allowing designers to receive feedback and make modifications at intermediate stages.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Register retiming optimizations are performed preliminarily during synthesis and placement phases before final routing. By applying retiming transformations early in the compilation flow and performing timing analysis at each stage, the system prepares the design for optimal timing performance before complete compilation, reducing overall design iteration time.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If register retiming is performed to improve timing on critical paths, then timing performance improves, but the design requires full recompilation to see results

Engineering Contradiction:
Improvetiming closureVSAvoiddesign iteration speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system implements feedback loops where retiming-aware timing analysis results are provided to designers at each compilation stage. Designers can review timing analysis results, identify critical paths, and make targeted modifications without completing full compilation. The feedback mechanism enables iterative refinement of timing performance with reduced recompilation requirements.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The compilation flow is made dynamic by allowing designers to intervene at multiple stages (after synthesis, placement, or routing) based on timing analysis feedback. Rather than following a rigid sequential process requiring full compilation, the system adapts to designer needs by enabling modifications at optimal points in the flow, improving both timing closure and productivity.

Inventive Principle:
Principle #15Dynamics

3Measurement precision

If speculative changes are applied to model register retiming effects, then timing analysis accuracy improves, but additional computational overhead is introduced

Engineering Contradiction:
Improvetiming analysis accuracyVSAvoidcomputational resources
Core Design Contradiction:
Measurement precisionVSPower

Solution Approach 1:

Speculative changes and skew applications are applied locally only to critical paths identified by the retiming-aware timing analysis, rather than uniformly across the entire design. This targeted approach improves timing analysis accuracy for timing-critical regions while minimizing computational overhead by avoiding unnecessary processing of non-critical areas.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes parameters such as register skew values and delay element characteristics speculatively during timing analysis to model potential retiming outcomes. By adjusting these parameters locally on critical paths and evaluating timing improvements, the system achieves accurate timing prediction without requiring full retiming execution, balancing precision with computational efficiency.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10586004B2Method and apparatus for utilizing estimations for register retiming in a design compilation flow
Publication Date: 2020.03.10 ALTERA CORP
  • US10586004B2 patent drawing
  • US10586004B2 patent drawing
  • US10586004B2 patent drawing

AI summary

A method for designing a system on a target device includes performing one of synthesis, placement, and routing on the system. A designer is presented with a timing analysis of the system after one of the synthesis, placement, and routing, wherein the timing analysis reflects register retiming optimizations predicted to be implemented on the system. One of the synthesis, placement, and routing is modified in response to input provided by the designer after the presenting.