Filing vacant areas of an integrated circuit design
First Claim
Patent Images
1. A method comprising:
- using a computer, automatically creating a first shape comprising rectangles that is representative of free space on a first layer of an integrated circuit design;
finding a second shape and a third shape on a second layer of the integrated circuit design that both overlap the first shape, wherein the second layer is different from the first layer;
determining the second shape is coupled to a first power net and the third shape is coupled to a second power net, different from the first power net;
making a determination whether to couple the first shape to the second shape or the third shape based on target percentages specified for the first and second power nets;
if the determination is made to couple the first shape to the second shape, automatically creating a first via shape in a third layer, different from the first and second layers, that overlaps both the first and second shapes; and
if the determination is made to couple the first shape to the third shape, automatically creating a second via shape in the third layer that overlaps both the first and third shapes.
0 Assignments
0 Petitions
Accused Products
Abstract
Vacant areas of a layer of an integrated circuit design are filled with shapes connected to the appropriate nets.
-
Citations
20 Claims
-
1. A method comprising:
-
using a computer, automatically creating a first shape comprising rectangles that is representative of free space on a first layer of an integrated circuit design; finding a second shape and a third shape on a second layer of the integrated circuit design that both overlap the first shape, wherein the second layer is different from the first layer; determining the second shape is coupled to a first power net and the third shape is coupled to a second power net, different from the first power net; making a determination whether to couple the first shape to the second shape or the third shape based on target percentages specified for the first and second power nets; if the determination is made to couple the first shape to the second shape, automatically creating a first via shape in a third layer, different from the first and second layers, that overlaps both the first and second shapes; and if the determination is made to couple the first shape to the third shape, automatically creating a second via shape in the third layer that overlaps both the first and third shapes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A method comprising:
-
using a computer, automatically creating a first shape comprising rectangles that is representative of free space on a first layer of an integrated circuit design, wherein the automatically creating a first shape comprising rectangles that is representative of free space on a first layer of an integrated circuit design comprises; determining where the first rectangle overlaps a previously drawn second rectangle on the first layer; using at least one computer processor, oversizing the second rectangle to obtain a third rectangle; using at least one computer processor, subtracting the third rectangle from the first rectangle to form a fourth rectangle, fifth rectangle, and sixth rectangle, wherein the fourth, fifth, and sixth rectangles each have a smaller area than the first rectangle and the fourth, fifth, and sixth rectangles overlap; if the sixth rectangle has a smaller width than a first minimum width, discarding the sixth rectangle while keeping the fourth and fifth rectangles; starting with an edge of the fourth rectangle, growing an island that extends from the edge to a limit line at a second minimum width; and discarding portions of the fourth and fifth rectangles beyond the limit line to obtain a first shape comprising rectangles; finding a second shape and a third shape on a second layer of the integrated circuit design that both overlap the first shape, wherein the second layer is different from the first layer; determining the second shape is coupled to a first power net and the third shape is coupled to a second power net, different from the first power net; making a determination whether to couple the first shape to the second shape or the third shape based on target percentages specified for the first and second power nets, wherein the making a determination whether to couple the first shape to the second shape or the third shape based on target percentages specified for the first and second power nets comprises; determining a first percentage utilization of the first power net in the free space and a second percentage utilization of the second power net in the free space; and determining whether the first percentage utilization is less than a target percentage for the first power net and the second percentage utilization is less than a target percentage for the second power net; if the determination is made to couple the first shape to the second shape, automatically creating a first via shape in a third layer, different from the first and second layers, that overlaps both the first and second shapes; and if the determination is made to couple the first shape to the third shape, automatically creating a second via shape in the third layer that overlaps both the first and third shapes. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A method comprising:
-
using a computer, automatically creating a first shape comprising rectangles that is representative of free space on a first layer of an integrated circuit design, wherein a distance from a leftmost edge of the first shape to a rightmost edge of the first shape does not exceed a maximum width specified for the automatic creation, and the automatically creating a first shape comprising rectangles that is representative of free space on a first layer of an integrated circuit design comprises; determining where the first rectangle overlaps a previously drawn second rectangle on the first layer; using at least one computer processor, oversizing the second rectangle to obtain a third rectangle; using at least one computer processor, subtracting the third rectangle from the first rectangle to form a fourth rectangle, fifth rectangle, and sixth rectangle, wherein the fourth, fifth, and sixth rectangles each have a smaller area than the first rectangle and the fourth, fifth, and sixth rectangles overlap; if the sixth rectangle has a smaller width than a first minimum width, discarding the sixth rectangle while keeping the fourth and fifth rectangles; starting with an edge of the fourth rectangle, growing an island that extends from the edge to a limit line at a second minimum width; and discarding portions of the fourth and fifth rectangles beyond the limit line to obtain a first shape comprising rectangles; finding a second shape and a third shape on a second layer of the integrated circuit design that both overlap the first shape, wherein the second layer is different from the first layer; determining the second shape is coupled to a first power net and the third shape is coupled to a second power net, wherein the first power net is a first supply voltage and the second power net is ground; making a determination whether to couple the first shape to the second shape or the third shape based on target percentages specified for the first and second power nets, wherein the making a determination whether to couple the first shape to the second shape or the third shape based on target percentages specified for the first and second power nets comprises; determining a first percentage utilization of the first power net in the free space and a second percentage utilization of the second power net in the free space; and determining whether the first percentage utilization is less than a target percentage for the first power net and the second percentage utilization is less than a target percentage for the second power net; if the determination is made to couple the first shape to the second shape, automatically creating a first via shape in a third layer, different from the first and second layers, that overlaps both the first and second shapes; and if the determination is made to couple the first shape to the third shape, automatically creating a second via shape in the third layer that overlaps both the first and third shapes.
-
Specification