IP Library Granted Patent US 12,400,057
Granted Patent B2
US 12,400,057 · App. 17/655,225 · Granted Aug 26, 2025

Hierarchy-aware integrated circuit layout design

Inventors: Tomer Abraham Cohen (Binyamina, IL); Muhammad Suleiman (Nazareth, IL); Doris Bittruf (Westford, VT); Noam Jungmann (Holon, IL)
Assignee: International Business Machines Corporation
G06F30/31G06F30/392
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 12,400,057
App. No.
17/655,225
Granted
Aug 26, 2025
Kind
B2
Abstract

In an approach, a processor identifies a current cell depicted in an integrated circuit layout tool, the current cell of a hierarchical layout comprises a plurality of cells. A processor generates an overlay, the overlay comprising an abstraction of at least one object present in a higher level of the hierarchical layout that overlaps with the current cell. A processor projects the overlay onto the current cell.

Claims (88)

1. A computer-implemented method comprising:

identifying, by one or more processors, a current cell depicted in a view of an integrated circuit layout tool, wherein:

the current cell is of a hierarchical layout; and

the hierarchical layout comprises a plurality of cells;

generating, by one or more processors, an overlay, the overlay comprising an abstraction of at least one object present in a higher level of the hierarchical layout that overlaps with, and is within a boundary of, the current cell; and

projecting, by one or more processors, the overlay onto the current cell in the view.

2. The computer-implemented method of claim 1 , wherein generating the overlay comprises:

building, by one or more processors, a hierarchy tree from a parent cell to the current cell;

identifying, by one or more processors, an instance of the current cell that overlaps the parent cell;

creating, by one or more processors, the overlay, the overlay comprising a cover cell, wherein the cover cell is empty; and

for at least one element in the hierarchy tree from the parent cell to the current cell:

identifying, by one or more processors, presence of a metal shape in the element crossing the instance; and

appending, by one or more processors, the metal shape into the cover cell as a blockage shape.

3. The computer-implemented method of claim 2 , wherein the parent cell is selected from the group consisting of: a top cell of the hierarchical layout and a received selection of a cell at an intermediate level of the hierarchical layout.

4. The computer-implemented method of claim 2 , wherein the cover cell is of a size equal to the current cell.

5. The computer-implemented method of claim 2 , wherein identifying the instance of the current cell that overlaps the parent cell comprises identifying, by one or more processors, a plurality of instances of the current cell that overlap the parent cell, further comprising:

for each of the plurality of instances:

for at least one element in the hierarchy tree from the parent cell to the current cell:

identifying, by one or more processors, presence of a metal shape in the element crossing the respective instance; and

appending, by one or more processors, the metal shape into the cover cell as a blockage shape.

6. The computer-implemented method of claim 2 , further comprising:

attaching, by one or more processors, a net name of the metal shape to the blockage shape; and

storing, by one or more processors, information about the element corresponding to the metal shape to the blockage shape, the information selected from the group consisting of: cell name and source library.

7. The computer-implemented method of claim 1 , wherein the overlay includes a blockage shape, further comprising:

receiving, by one or more processors, a selection of the blockage shape; and

responsive to receiving the selection of the blockage shape, performing, by one or more processors, an action selected from the group consisting of: displaying information about an object corresponding to the blockage shape and displaying a window comprising a respective level of the hierarchical layout of the object corresponding to the blockage shape.

8. The computer-implemented method of claim 1 , wherein the object only present in one or more higher level views of the hierarchical layout than the view.

9. A computer program product comprising:

one or more computer readable storage media; and

program instructions stored on the one or more computer readable storage media to perform operations comprising:

identifying a current cell depicted in a view of an integrated circuit layout tool, wherein:

the current cell is of a hierarchical layout; and

the hierarchical layout comprises a plurality of cells;

generating an overlay, the overlay comprising an abstraction of at least one object present in a higher level of the hierarchical layout that overlaps with, and is within a boundary of, the current cell; and

projecting the overlay onto the current cell in the view.

10. The computer program product of claim 9 , wherein the generating the overlay comprises:

building a hierarchy tree from a parent cell to the current cell;

identifying an instance of the current cell that overlaps the parent cell;

creating the overlay, the overlay comprising a cover cell, wherein the cover cell is empty; and

for at least one element in the hierarchy tree from the parent cell to the current cell:

identifying presence of a metal shape in the element crossing the instance; and

appending the metal shape into the cover cell as a blockage shape.

11. The computer program product of claim 10 , wherein the parent cell is selected from the group consisting of: a top cell of the hierarchical layout and a received selection of a cell at an intermediate level of the hierarchical layout.

12. The computer program product of claim 10 , wherein the cover cell is of a size equal to the current cell.

13. The computer program product of claim 10 , wherein:

the identifying the instance of the current cell that overlaps the parent cell comprises identifying a plurality of instances of the current cell that overlap the parent cell; and

the operations further comprise:

for each of the plurality of instances:

for at least one element in the hierarchy tree from the parent cell to the current cell:

identifying presence of a metal shape in the element crossing the respective instance; and

appending the metal shape into the cover cell as a blockage shape.

14. The computer program product of claim 10 , wherein the operations further comprise:

attaching a net name of the metal shape to the blockage shape; and

storing information about the element corresponding to the metal shape to the blockage shape, the information selected from the group consisting of: cell name and source library.

15. The computer program product of claim 9 , wherein;

the overlay includes a blockage shape; and

the operations further comprise:

receiving a selection of the blockage shape; and

responsive to receiving the selection of the blockage shape, performing an action selected from the group consisting of: displaying information about an object corresponding to the blockage shape and displaying a window comprising a respective level of the hierarchical layout of the object corresponding to the blockage shape.

16. A computer system comprising:

a processor set;

one or more computer readable storage media; and

program instructions stored on the one or more computer readable storage media to cause the processor set to perform operations comprising:

identifying a current cell depicted in a view of an integrated circuit layout tool, wherein:

the current cell is of a hierarchical layout; and

the hierarchical layout comprises a plurality of cells;

generating an overlay, the overlay comprising an abstraction of at least one object present in a higher level of the hierarchical layout that overlaps with, and is within a boundary of, the current cell; and

projecting the overlay onto the current cell in the view.

17. The computer system of claim 16 , wherein the generating the overlay comprises:

building a hierarchy tree from a parent cell to the current cell;

identifying an instance of the current cell that overlaps the parent cell;

creating the overlay, the overlay comprising a cover cell, wherein the cover cell is empty; and

for at least one element in the hierarchy tree from the parent cell to the current cell:

identifying presence of a metal shape in the element crossing the instance; and

appending the metal shape into the cover cell as a blockage shape.

18. The computer system of claim 17 , wherein the parent cell is selected from the group consisting of: a top cell of the hierarchical layout and a received selection of a cell at an intermediate level of the hierarchical layout.

19. The computer system of claim 17 , wherein:

the identifying the instance of the current cell that overlaps the parent cell comprises identifying a plurality of instances of the current cell that overlap the parent cell; and

the operations further comprise:

for each of the plurality of instances:

for at least one element in the hierarchy tree from the parent cell to the current cell:

identifying presence of a metal shape in the element crossing the respective instance; and

appending the metal shape into the cover cell as a blockage shape.

20. The computer system of claim 16 , wherein:

the overlay includes a blockage shape; and

the operations further comprise:

receiving a selection of the blockage shape; and

responsive to receiving the selection of the blockage shape, performing an action selected from the group consisting of: displaying information about an object corresponding to the blockage shape and displaying a window comprising a respective level of the hierarchical layout of the object corresponding to the blockage shape.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 17, 2022
From: COHEN, TOMER ABRAHAM; SULEIMAN, MUHAMMAD; BITTRUF, DORIS; JUNGMANN, NOAM
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 059293/0949 →
Continuity (1)
Related Publication 20230297751A1 · Sep 21, 2023
References Cited (7)
US 8667444B2 · Henrickson et al. · 2014 [cited by applicant]
US 10210299B1 · Ginetti · 2019 [cited by applicant]
US 10223495B1 · Agrawal · 2019 [cited by examiner]
US 10671793B1 · Deshpande · 2020 [cited by applicant]
US 10896280B1 · Rashingkar · 2021 [cited by applicant]
US 20170017746A1 · Jiang · 2017 [cited by examiner]
Gullapalli, Vijay, “Best practices' improve hierarchical design constraints”, Tech Online, Wireless and Networking Designline, EE Times, Dec. 1, 2003, 4 pages, <https://www.eetimes.com/best-practices-improve-hierarchica… [cited by applicant]