Distributed timing analysis of a partitioned integrated circuit design

US9916405B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9916405-B2
Application numberUS-201615049501-A
CountryUS
Kind codeB2
Filing dateFeb 22, 2016
Priority dateFeb 22, 2016
Publication dateMar 13, 2018
Grant dateMar 13, 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 distributed timing analysis of an integrated circuit design. Aspects include dividing the integrated circuit design into non-overlapping design partitions, each design partition including nodes and edges, each edge interconnecting a pair of the nodes. Aspects also include identifying speculative nodes among the nodes, each speculative node having at least one and less than all timing inputs available and being associated with a speculative processing task, and identifying non-speculative nodes among the nodes, each non-speculative node having all timing inputs available and being associated with a non-speculative processing task. Assigning each of the non-speculative processing tasks to a respective processor of a processing system specific to each design partition for timing analysis processing is done prior to assigning any of the speculative processing tasks.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method of performing distributed timing analysis of an integrated circuit design, the method comprising: dividing the integrated circuit design into non-overlapping design partitions, each design partition including nodes and edges, each edge interconnecting a pair of the nodes; identifying, for each design partition, speculative nodes among the nodes, each speculative node having at least one and less than all timing inputs available and being associated with a speculative processing task; identifying, for each design partition, non-speculative nodes among the nodes, each non-speculative node having all timing inputs available and being associated with a non-speculative processing task; assigning each of the non-speculative processing task to a respective processor of a processing system specific to each design partition for timing analysis processing prior to assigning any of the speculative processing tasks; and obtaining a physical implementation of an integrated circuit according to the integrated circuit design that results from the distributed timing analysis. 2. The computer-implemented method according to claim 1 , further comprising ranking the speculative nodes. 3. The computer-implemented method according to claim 2 , wherein the ranking the speculative nodes is based on a confidence score for each of the speculative nodes. 4. The computer-implemented method according to claim 2 , wherein the ranking each of the speculative nodes is based on a cost associated with each of the speculative nodes given by a number of the one or more timing inputs not available for the speculative node. 5. The computer-implemented method according to claim 2 , wherein the assigning each of the speculative processing tasks to the respective processor of the processing system is in an order based on the ranking of the associated speculative nodes. 6. The computer-implemented method according to claim 1 , further comprising including a tag with an output of the timing analysis to indicate whether the timing analysis is associated with one of the speculative processing tasks or one of the non-speculative processing tasks. 7. The computer-implemented method according to claim 6 , further comprising verifying the output of the timing analysis based on the tag indicating that the timing analysis is associated with one of the speculative processing tasks. 8. A system to perform timing analysis of a design partition of an integrated circuit design, the system comprising: a memory device configured to store the design partition of the integrated circuit design, a plurality of the design partitions representing non-overlapping portions of the integrated circuit design and the design partition including nodes and edges, each edge interconnecting a pair of nodes; and one or more processors configured to identify speculative nodes among the nodes, each speculative node having at least one and less than all timing inputs available and being associated with a speculative processing task, identify non-speculative nodes among the nodes, each non-speculative node having all timing inputs available and being associated with a non-speculative processing task, and perform timing analysis of the non-speculative processing tasks prior to performing timing analysis of any of the speculative processing tasks, wherein each of the one or more processors processes one of the speculative processing tasks or one of the non-speculative processing tasks at a time, wherein a physical implementation of an integrated circuit is obtained according to the integrated circuit design that results from the timing analysis. 9. The system according to claim 8 , where the one or more processors ranks the speculative nodes. 10. The system according to claim 9 , wherein the one or more processors ranks the speculative nodes based on a confidence score for each of the speculative nodes. 11. The system according to claim 9 , wherein the one or more processors rank the speculative nodes based on a cost associated with each of the speculative nodes given by a number of the one or more timing inputs not available for the speculative node. 12. The system according to claim 9 , wherein the one or more processors perform timing analysis of speculative processing tasks in an order based on the rank of the associated speculative node. 13. The system according to claim 8 , wherein the one or more processors include a tag with an output of the timing analysis to indicate whether the timing analysis is associated with one of the speculative processing tasks or one of the non-speculative processing tasks. 14. The system according to claim 13 , wherein the one or more processors verify the output of the timing analysis based on the tag indicating that the timing analysis is associated with one of the speculative processing tasks. 15. A computer program product for performing timing analysis of a design partition of an integrated circuit design, the design partition representing a portion of the integrated circuit design and including nodes and edges, each edge interconnecting a pair of the nodes, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by one or more processors to perform a method comprising: identifying speculative nodes among the nodes, each speculative node having at least one and less than all timing inputs available and being associated with a speculative processing task; identifying non-speculative nodes among the nodes, each non-speculative node having all timing inputs available and being associated with a non-speculative processing task; and assigning each of the non-speculative processing tasks to a respective processor among the one or more processors for timing analysis processing prior to assigning any of the speculative processing tasks, wherein physical implementation of an integrated circuit is obtained according to the integrated circuit design that results from the timing analysis. 16. The computer program product according to claim 15 , further comprising ranking the speculative nodes, wherein the assigning each of the speculative processing tasks to the respective processor of the processing system is in an order based on the ranking of the associated speculative nodes. 17. The computer program product according to claim 16 , wherein the ranking the speculative nodes is based on a confidence score for each of the speculative nodes. 18. The computer program product according to claim 16 , wherein the ranking each of the speculative nodes is based on a cost associated with each of the speculative nodes given by a number of the one or more timing inputs not available for the speculative node. 19. The computer program product according to claim 15 , further comprising including a tag with an output of the timing analysis to indicate whether the timing analysis is associated with one of the speculative processing tasks or one of the non-speculative processing tasks. 20. The computer program product according to claim 19 , further comprising verifying the output of the timing analysis based on the tag indicating that the timing analysis is associated with one of the speculative processing tasks.

Assignees

Inventors

Classifications

  • Timing analysis · CPC title

  • Design verification, e.g. functional simulation or model checking · CPC title

  • Circuit design · CPC title

  • CAD in a network environment, e.g. collaborative CAD or distributed simulation · CPC title

  • Timing analysis or timing optimisation · CPC title

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 US9916405B2 cover?
A method, system, and computer program product perform distributed timing analysis of an integrated circuit design. Aspects include dividing the integrated circuit design into non-overlapping design partitions, each design partition including nodes and edges, each edge interconnecting a pair of the nodes. Aspects also include identifying speculative nodes among the nodes, each speculative node …
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 Mar 13 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 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).