Automatic Timing Constraint Generation for IC Clock Graphs

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of clock signals in integrated circuit designs, particularly with circuit elements like clock dividers, makes it difficult to specify and enforce timing constraints, leading to lengthy design verification processes and potential timing violations, which can delay the development of efficient integrated circuits.

Innovation Solution

A method for automatically generating and annotating integrated circuit designs with timing constraints using a clock graph analysis, determining common clocks and setting timing constraints based on the period of these clocks to ensure reliable signal propagation and reduce design iteration time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If manual timing constraint specification is used in complex clock signal designs, then timing constraint accuracy may be improved, but design verification time and complexity increase significantly

Engineering Contradiction:
Improvetiming constraint accuracyVSAvoiddesign verification time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The system performs self-service by automatically generating timing constraints through clock graph analysis without requiring manual specification. The EDA tool autonomously traverses the clock graph, identifies clock relationships, and generates appropriate timing constraints, eliminating the time-consuming manual process while maintaining accuracy.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The manual mechanical process of specifying timing constraints is replaced by an automated computational system. The EDA tool uses clock graph traversal algorithms and automated analysis to substitute the manual specification process, significantly reducing verification time while maintaining constraint accuracy.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Measurement precision

If detailed clock signal analysis is performed manually, then timing violation detection accuracy is improved, but design iteration time increases

Engineering Contradiction:
Improvetiming violation detection accuracyVSAvoiddesign iteration speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The manual analysis process is replaced by automated clock graph traversal and timing analysis algorithms. The system automatically detects timing violations by analyzing clock relationships and path delays, maintaining detection accuracy while dramatically increasing design iteration speed.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The system enables continuous timing analysis throughout the design process by automatically generating and updating timing constraints as the design evolves. This continuous automated analysis maintains high detection accuracy without interrupting the design flow, thereby increasing iteration speed.

Inventive Principle:
Principle #20Continuity of useful action

3Loss of time

If automated timing constraint generation is implemented, then design verification time is reduced, but handling of complex clock relationships may become challenging

Engineering Contradiction:
Improvedesign verification timeVSAvoidcomplexity of clock relationship handling
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The complex clock relationship analysis is segmented into manageable components through clock graph representation. The system divides the overall timing analysis into discrete clock paths and relationships, making automated handling of complex clock structures feasible while reducing verification time.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The clock graph serves as an intermediary data structure that simplifies complex clock relationships. By representing clocks, derived clocks, and their relationships in a graph format, the system enables automated timing constraint generation without being overwhelmed by the complexity of direct clock signal analysis.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Ease of operation

If manual timing constraint specification is used, then control over timing parameters is improved, but placement and routing optimization is delayed

Engineering Contradiction:
Improvecontrol over timing parametersVSAvoidplacement and routing optimization speed
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

Manual timing parameter specification is replaced by automated generation from clock graphs. The system maintains control over timing parameters by deriving them systematically from clock relationships, while enabling faster placement and routing optimization through immediate availability of timing constraints.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

Timing constraints are generated in advance during the design phase before placement and routing optimization. This preliminary automated generation of timing parameters enables subsequent optimization processes to proceed faster without waiting for manual specification.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20240427976A1Automatic generation of multi-cycle path design constraint for forward annotation in integrated circuit design
Publication Date: 2024.12.26 SYNOPSYS INC
  • US20240427976A1 patent drawing
  • US20240427976A1 patent drawing
  • US20240427976A1 patent drawing

AI summary

A method includes: receiving an integrated circuit design; obtaining a timing path between a first sequential circuit element at a launch end of the timing path and a second sequential circuit element at a capture end of the timing path of the integrated circuit design; determining, by a processing device, a common clock that drives a first clock clocking the first sequential circuit element and a second clock clocking the second sequential circuit element based on a clock graph of relationships between a plurality of clocks of the integrated circuit design; and setting a timing constraint for the timing path of the integrated circuit design based on a period of the common clock.