Callback based constraint processing for clock domain independence

US9977850B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9977850-B2
Application numberUS-201615207898-A
CountryUS
Kind codeB2
Filing dateJul 12, 2016
Priority dateJul 12, 2016
Publication dateMay 22, 2018
Grant dateMay 22, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method, system and computer program product perform timing analysis of an integrated circuit design with callback-based constraint processing for clock domain independence. A timing graph representation of the integrated circuit design includes nodes interconnected by edges. Loading timing abstracts representing the nodes of the timing graph precedes obtaining a timing result based on propagating timing values and associated timing tags from an input to an output of the integrated circuit design and processing timing constraints at one or more of the nodes as callbacks. Each timing tag indicates a clock domain. After applying a design change, one or more modified timing tags that are added or changed as a result of the design change are determined. The timing constraints associated with the modified timing tags are processed as callbacks, and the timing result are re-computed.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of performing timing analysis of an integrated circuit design with callback-based constraint processing for clock domain independence, the method comprising: generating a timing graph representation of the integrated circuit design, wherein the timing graph includes nodes interconnected by edges; loading timing abstracts representing the nodes of the timing graph; obtaining, using a processor, a timing result based on propagating timing values and associated timing tags from an input to an output of the integrated circuit design and processing timing constraints at one or more of the nodes as callbacks, wherein each timing tag indicates a clock domain; applying a design change; determining, using the processor, one or more modified timing tags that are added or changed as a result of the design change; processing the timing constraints associated with the modified timing tags as callbacks; re-computing the timing result; and manufacturing a physical implementation of the integrated circuit based on the timing analysis. 2. The method according to claim 1 , wherein the applying the design change includes adding or deleting one or more of the edges. 3. The method according to claim 1 , wherein the determining the one or more modified timing tags includes maintaining an incremental timing tag invalidation list based on the applying the design change, the incremental timing tag invalidation list including a list of modified edges that are added or deleted as a result of the applying the design change. 4. The method according to claim 3 , wherein the determining the one or more modified timing tags includes examining the timing tag associated with a sink node of one of the modified edges in the incremental timing tag invalidation list. 5. The method according to claim 4 , wherein the determining the one or more modified timing tag includes identifying the sink node of the one of the modified edges as being added based on the design change or determining that the timing tag associated with the sink node of the one of the modified edges is changed based on the design change. 6. The method according to claim 5 , wherein the determining the one or more modified timing tags includes adding the timing tags of the nodes that fan out from the sink node of the one of the modified edges to the incremental timing tag invalidation list. 7. A system to perform timing analysis of an integrated circuit design with callback-based constraint processing for clock domain independence, the system comprising: a memory device configured to store a timing graph representation of the integrated circuit design, wherein the timing graph includes nodes interconnected by edges; and a processor configured to load timing abstracts representing the nodes of the timing graph, obtain a timing result based on propagating timing values and associated timing tags from an input to an output of the integrated circuit design and processing timing constraints at one or more of the nodes as callbacks, wherein each timing tag indicates a clock domain, apply a design change, determine one or more modified timing tags that are added or changed as a result of the design change, process the timing constraints associated with the modified timing tags as callbacks, and re-compute the timing result, wherein a physical implementation of the integrated circuit design based on the timing analysis is manufactured. 8. The system according to claim 7 , wherein the processor adds or deletes one or more of the edges to apply the design change. 9. The system according to claim 7 , wherein the processor determines the one or more modified timing tags based on maintaining an incremental timing tag invalidation list based on the applying the design change, the incremental timing tag invalidation list including a list of modified edges that are added or deleted as a result of the applying the design change. 10. The system according to claim 9 , wherein the processor determines the one or more modified timing tags based on examining the timing tag associated with a sink node of one of the modified edges in the incremental timing tag invalidation list. 11. The system according to claim 10 , wherein the processor determines the one or more modified timing tags based on identifying the sink node of the one of the modified edges as being added based on the design change or determining that the timing tag associated with the sink node of the one of the modified edges is changed based on the design change. 12. The system according to claim 11 , wherein the processor determines the one or more modified timing tags based on adding the timing tags of the nodes that fan out from the sink node of the one of the modified edges to the incremental timing tag invalidation list. 13. The system according to claim 12 , wherein the processor determines, incrementally, whether the timing tags of the nodes that fan out from the sink node of the one of the modified edges are among the one or more modified timing tags. 14. A computer program product for performing timing analysis of an integrated circuit design with callback-based constraint processing for clock domain independence, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a processor to perform a method comprising: generating a timing graph representation of the integrated circuit design, wherein the timing graph includes nodes interconnected by edges; loading timing abstracts representing the nodes of the timing graph; obtaining a timing result based on propagating timing values and associated timing tags from an input to an output of the integrated circuit design and processing timing constraints at one or more of the nodes as callbacks, wherein each timing tag indicates a clock domain; applying a design change; determining one or more modified timing tags that are added or changed as a result of the design change; processing the timing constraints associated with the modified timing tags as callbacks; and re-computing the timing result, wherein a physical implementation of the integrated circuit based on the timing analysis is manufactured. 15. The computer program product according to claim 14 , wherein the applying the design change includes adding or deleting one or more of the edges. 16. The computer program product according to claim 14 , wherein the determining the one or more modified timing tags includes maintaining an incremental timing tag invalidation list based on the applying the design change, the incremental timing tag invalidation list including a list of modified edges that are added or deleted as a result of the applying the design change. 17. The computer program product according to claim 16 , wherein the determining the one or more modified timing tags includes examining the timing tag associated with a sink node of one of the modified edges in the incremental timing tag invalidation list. 18. The computer program product according to claim 17 , wherein the determining the one or more modified timing tag includes identifying the sink node of the one of the modified edges as being added based on the design change or determining that the timing tag associated with the sink node of the one of the modified edges is changed based on the design change. 19. The computer program product according to claim 18 , wherein the determining the one or more modified timing tags includes adding the timing tags o

Assignees

Inventors

Classifications

  • Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM] (optical proximity correction [OPC] design processes G03F1/36) · CPC title

  • Timing analysis · CPC title

  • Timing analysis or timing optimisation · CPC title

  • Power analysis or power optimisation · CPC title

  • Physics · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9977850B2 cover?
A method, system and computer program product perform timing analysis of an integrated circuit design with callback-based constraint processing for clock domain independence. A timing graph representation of the integrated circuit design includes nodes interconnected by edges. Loading timing abstracts representing the nodes of the timing graph precedes obtaining a timing result based on propaga…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F30/3312. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 22 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).