IP Library Granted Patent US 10,534,878
Granted Patent B1
US 10,534,878 · App. 15/793,622 · Granted Jan 14, 2020

Circuit place and route optimization based on path-based timing analysis

Inventors: Geng Bai (Fremont, CA); Chao-Yung Wang (Taipei, TW); Ping-San Tzeng (Fremont, CA)
Assignee: Avatar Integrated Systems, Inc.
G06F17/5031G01R31/2882G06F17/505G06F2217/84
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,534,878
App. No.
15/793,622
Granted
Jan 14, 2020
Kind
B1
Abstract

A graph-based analysis (GBA) output is obtained comprising timing information pertaining to a plurality of paths in an integrated circuit. A path-based analysis (PBA) is performed on the GBA output to analyze timing of the plurality of paths and generate a set of improved timing results; wherein the physical measurements used by the PBA are more accurate than the physical measurements used by the GBA. The PBA result is output to an optimizer to automatically adjust the circuit.

Claims (43)

1. A method, comprising:

obtaining a graph-based analysis (GBA) output comprising timing information pertaining to a plurality of paths in an integrated circuit;

performing a path-based analysis (PBA) on the GBA output to analyze timing of the plurality of paths and generate a set of improved timing results, wherein a PBA set of physical measurements used by the PBA are more accurate than a GBA set of physical measurements used by the GBA;

outputting the PBA result to an optimizer to automatically adjust the circuit and

creating a heap data structure associated with a physical pin, wherein:

the heap data structure comprises a tree structure;

the heap data structure holds all PBA paths from the PBA result that go through the physical pin; and

the heap data structure is sorted using a heap sort algorithm such that a top of the tree structure is a worst timing PBA path.

2. The method of claim 1 , wherein at least some of the plurality of paths share a same pin.

3. The method of claim 1 , wherein performing the PBA includes using a database comprising information pertaining to the plurality of paths.

4. The method of claim 1 , further comprising creating a heap for a pin based at least in part on using the PBA result.

5. The method of claim 1 , further comprising selecting an optimization move on the PBA result.

6. The method of claim 1 , further comprising performing local evaluation on the PBA result.

7. The method of claim 1 , further comprising providing feedback to the optimizer for paths affected by an optimization move.

8. A system, comprising:

a processor configured to:

obtain a graph-based analysis (GBA) output comprising timing information pertaining to a plurality of paths in an integrated circuit;

perform a path-based analysis (PBA) on the GBA output to analyze timing of the plurality of paths and generate a set of improved timing results, wherein a PBA set of physical measurements used by the PBA are more accurate than a GBA set of physical measurements used by the GBA;

output the PBA result to an optimizer to automatically adjust the circuit; and

create a heap data structure associated with a physical pin, wherein:

the heap data structure comprises a tree structure;

the heap data structure holds all PBA paths from the PBA result that go through the physical pin; and

the heap data structure is sorted using a heap sort algorithm such that a top of the tree structure is a worst timing PBA path; and

a memory coupled to the processor and configured to provide the processor with instructions.

9. The system of claim 8 , wherein at least some of the plurality of paths share a same pin.

10. The system of claim 8 , wherein performing the PBA includes using a database comprising information pertaining to the plurality of paths.

11. The system of claim 8 , wherein the processor is further configured to create a heap for a pin based at least in part on using the PBA result.

12. The system of claim 8 , wherein the processor is further configured to select an optimization move on the PBA result.

13. The system of claim 8 , wherein the processor is further configured to perform local evaluation on the PBA result.

14. The system of claim 8 , wherein the processor is further configured to provide feedback to the optimizer for paths affected by an optimization move.

15. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

obtaining a graph-based analysis (GBA) output comprising timing information pertaining to a plurality of paths in an integrated circuit;

performing a path-based analysis (PBA) on the GBA output to analyze timing of the plurality of paths and generate a set of improved timing results, wherein a PBA set of physical measurements used by the PBA are more accurate than a GBA set of physical measurements used by the GBA;

outputting the PBA result to an optimizer to automatically adjust the circuit; and

creating a heap data structure associated with a physical pin, wherein:

the heap data structure comprises a tree structure;

the heap data structure holds all PBA paths from the PBA result that go through the physical pin; and

the heap data structure is sorted using a heap sort algorithm such that a top of the tree structure is a worst timing PBA path.

16. The computer program product of claim 15 , wherein at least some of the plurality of paths share a same pin.

17. The computer program product of claim 15 , wherein performing the PBA includes using a database comprising information pertaining to the plurality of paths.

18. The computer program product of claim 15 , further comprising computer instructions for creating a heap for a pin based at least in part on using the PBA result.

19. The computer program product of claim 15 , further comprising computer instructions for selecting an optimization move on the PBA result.

20. The computer program product of claim 15 , further comprising computer instructions for performing local evaluation on the PBA result.

Assignments (4)
MERGER AND CHANGE OF NAME Recorded Dec 2, 2020
From: AVATAR INTEGRATED SYSTEMS, INC.; SIEMENS INDUSTRY SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 054514/0076 →
RELEASE OF SECURITY INTEREST Recorded Aug 21, 2020
From: MENTOR GRAPHICS CORPORATION
To: AVATAR INTEGRATED SYSTEMS, INC.
Reel/Frame 053558/0632 →
SECURITY INTEREST Recorded Jul 16, 2020
From: AVATAR INTEGRATED SYSTEMS, INC.
To: MENTOR GRAPHICS CORPORATION
Reel/Frame 053224/0268 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 9, 2018
From: BAI, GENG; WANG, CHAO-YUNG; TZENG, PING-SAN
To: AVATAR INTEGRATED SYSTEMS, INC.
Reel/Frame 044577/0553 →
Cited By (1)
US 12,614,013