IP Library Granted Patent US 8,397,196
Granted Patent B2
US 8,397,196 · App. 13/099,948 · Granted Mar 12, 2013

Intelligent dummy metal fill process for integrated circuits

Inventor: Alexander Tetelbaum (Walnut Creek, CA)
Assignee: LSI Corporation
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 8,397,196
App. No.
13/099,948
Granted
Mar 12, 2013
Kind
B2
Abstract

A computer-executed method for designing dummy metal object locations in an integrated circuit design. The method comprises the steps of: a) receiving an integrated circuit design as input; b) finding areas of the integrated circuit design that do not meet a minimum metal density requirement; c) finding areas of the integrated circuit design having a critical timing path; d) blocking empty routing tracks that are adjacent to critical nets of the critical timing paths located in step (c), for prospective dummy metal object placement for the areas commonly located in both of steps (b) and (c); and e) placing a minimum number of dummy metal objects in empty tracks such that the minimum metal density requirement is met for the areas that were found in step (b), but were not blocked in step (d).

Claims (54)

1. A computer-executed method for designing dummy metal object locations in an integrated circuit design, comprising the steps of:

a) receiving at a computer an integrated circuit design as input;

b) finding at the computer areas of the integrated circuit design that do not meet a minimum metal density requirement;

c) finding at the computer areas of the integrated circuit design having a critical timing path;

d) blocking at the computer empty routing tracks that are adjacent to critical nets of the critical timing paths located in step (c), for prospective dummy metal object placement for the areas commonly located in both of steps (b) and (c); and

e) placing at the computer a minimum number of dummy metal objects in empty tracks such that the minimum metal density requirement is met for the areas that were found in step (b), but were not blocked in step (d).

2. The method of claim 1 , further including the step of:

f) determining, after performing step (e), whether or not all of the areas located in step (b) meet the minimum metal density requirement.

3. The method of claim 2 , wherein, when step (f) determines that at least one of areas located in step (b) still does not meet the minimum metal density requirement, further including the steps of:

g) unblocking one or more of the empty routing tracks blocked in step (d) for each of the areas still not meeting the minimum metal density requirement; and

h) placing a minimum number dummy metal objects in the unblocked empty routing tracks for each of the areas commonly located in steps (b) and (c) such that a timing path violation is not introduced into one of the critical timing paths.

4. The method of claim 3 , wherein:

step (g) further includes unblocking the empty routing tracks that are adjacent to launch and capture clock nets of the critical timing path; and

step (h) includes placing dummy metals in the unblocked routing tracks adjacent to respective wires of the launch clock net and the capture clock net such that a change in timing skew between the launch clock net and the capture clock net is minimized.

5. The method of claim 4 , wherein the dummy metals placed adjacent to the respective wires of the launch net and the capture net in step (h) are placed in the unblocked routing tracks that are symmetrically located with respect to the respective wires of the launch clock net and the capture clock net.

6. The method of claim 3 , wherein the unblocking of the empty routing tracks in step (g) allows placing the dummy metals objects in the unblocked tracks in step (h) such that a minimum area of the dummy metal object faces an adjacent wire of a critical net of the critical timing path.

7. The method of claim 6 , wherein placing the dummy metals objects in step (h) results in at least one of the dummy metal objects to be oriented such that a corner of the dummy metal object faces the wire.

8. The method of claim 6 , wherein placing the dummy metals objects in step (h) results in at least one of the dummy metal objects to be an oriented such that a long axis of the dummy metal object is substantially non-parallel to a long axis of the wire.

9. The method of claim 4 , further including the step of:

i) determining, after performing step (h), whether or not all of the areas found in step (b) meet the minimum metal density requirement.

10. The method of claim 9 , wherein, when step (i) determines that at least one of the areas found in step (b) still does not meet the minimum metal density requirement, further including the steps of:

j) placing dummy metal objects in all remaining unblocked empty routing tracks for each of the areas determined in step (i) to still not meet the minimum density requirement; and

k) determining if a rerouting at least a portion of a wire adjacent to the dummy metal object placed in step (j) can be made such that a distance separating the wire and the adjacent dummy metal object is increased, thereby minimizing or eliminating timing violations in each of the critical timing paths located in each of the areas determined in step (i) to still not meet the minimum density requirement.

11. The method of claim 10 , further including:

1 ) determining, after performing step (k), whether or not there is a timing violation for any of the critical paths, and whether or not the minimum metal density requirement is met, for the areas identified in step (i); and

m) replacing one or more driving cells of a critical net of the critical paths with one or more stronger or weaker driving cell, such that there is no timing violation for all of the critical paths determined in step ( 1 ) to have a timing violation.

12. The method of claim 2 , further including the step of:

n) designing ground connections to the dummy metal objects placed in the areas in step (e).

13. An electronic design automation tool, comprising:

a non-transitory computer readable medium for embodying a computer program for inputting to a computer; and

a computer program embodied in the computer readable medium for causing the computer to perform steps of:

a) receiving an integrated circuit design as input;

b) finding areas of the integrated circuit design that do not meet a minimum metal density requirement;

c) finding areas of the integrated circuit design having a critical timing path;

d) blocking empty routing tracks that are adjacent to critical nets of the critical timing paths located in step (c), for prospective dummy metal object placement for the areas commonly located in both of steps (b) and (c); and

e) placing a minimum number of dummy metal objects in empty tracks such that the minimum metal density requirement is met for the areas that were found in step (b), but were not blocked in step (d).

14. The tool of claim 13 , wherein the computer program further causes the computer to perform the step of:

f) determining, after performing step (e), whether or not all of the areas located in step (b) meet the minimum metal density requirement.

15. The tool of claim 14 , wherein, when step (f) determines that at least one of areas located in step (b) still does not meet the minimum metal density requirement, the computer program further causes the computer to perform the steps of:

g) unblocking one or more of the empty routing tracks blocked in step (d) for each of the areas still not meeting the minimum metal density requirement; and

h) placing a minimum number dummy metal objects in the unblocked empty routing tracks for each of the areas commonly located in steps (b) and (c) such that a timing path violation is not introduced into one of the critical timing paths.

16. The tool of claim 14 , wherein:

step (g) further includes unblocking the empty routing tracks that are adjacent to launch and capture clock nets of the critical timing path; and

step (h) includes placing dummy metals in the unblocked routing tracks adjacent to respective wires of the launch clock net and the capture clock net such that a change in the timing skew between the launch clock net and the capture clock net is minimized.

17. The tool of claim 14 , wherein the computer program further causes the computer to perform the step of:

i) determining, after performing step (h), whether or not all of the areas found in step (b) meet the minimum metal density requirement.

18. The tool of claim 17 , wherein, when step (i) determines that at least one of the areas found in step (b) still does not meet the minimum metal density requirement, the computer program further causes the computer to perform the step of:

j) placing dummy metal objects in all remaining unblocked empty routing tracks for each of the areas determined in step (i) to still not meet the minimum density requirement; and

k) determining if a rerouting at least a portion of a wire adjacent to the dummy metal object placed in step (j) can be made such that a distance separating the wire and the adjacent dummy metal object is increased, thereby minimizing or eliminating timing violations in each of the critical timing paths located in each of the areas determined in step (i) to still not meet the minimum density requirement.

19. The tool of claim 18 , wherein the computer program further causes the computer to perform the steps of:

1 ) determining, after performing step (k), whether or not there is a timing violation for any of the critical paths, and whether or not the minimum metal density requirement is met, for the areas identified in step (i); and

m) replacing one or more driving cells of a critical net of the critical paths with one or more stronger or weaker driving cell, such that there is no timing violation for all of the critical paths determined in step ( 1 ) to have a timing violation.

20. The tool of claim 14 , wherein the computer program further causes the computer to perform the step of:

n) designing ground connections to the dummy metal objects placed in the areas in step (e).

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Apr 15, 2022
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: HILCO PATENT ACQUISITION 56, LLC; BELL SEMICONDUCTOR, LLC; BELL NORTHERN RESEARCH, LLC
Reel/Frame 059720/0223 →
SECURITY INTEREST Recorded Feb 1, 2018
From: HILCO PATENT ACQUISITION 56, LLC; BELL SEMICONDUCTOR, LLC; BELL NORTHERN RESEARCH, LLC
To: CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 045216/0020 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2017
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.; BROADCOM CORPORATION
To: BELL SEMICONDUCTOR, LLC
Reel/Frame 044887/0109 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2015
From: LSI CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035390/0388 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2011
From: TETELBAUM, ALEXANDER
To: LSI CORPORATION
Reel/Frame 026245/0082 →
Continuity (1)
Related Publication 20120284679A1 · Nov 8, 2012