US2019138683A1PendingUtilityA1

Capacity model for global routing

Assignee: IBMPriority: Apr 3, 2017Filed: Jan 5, 2019Published: May 9, 2019
Est. expiryApr 3, 2037(~10.7 yrs left)· nominal 20-yr term from priority
G06F 30/394G06F 17/5077
59
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A global router determines edge capacity of global tiles for a first integrated circuit in a global routing operation. The global router determines a respective edge capacity of minimum width wire tracks for each of a plurality of global tiles in a first metal layer in the first integrated circuit. Next, the global router determines a respective edge capacity of non-minimum width wire tracks for each of the plurality of global tiles in the first metal layer in the first integrated circuit. The edge capacities for minimum width and non-minimum width wire tracks are determined in separate operations within the global routing operation for fabrication of an integrated circuit.

Claims

exact text as granted — not AI-modified
Having described our invention, what we now claim is as follows: 
     
         1 . A method for determining edge capacity of global tiles in a global routing operation for a first integrated circuit, comprising:
 determining a respective edge capacity of minimum width wire tracks for each of a plurality of global tiles in a first metal layer in the first integrated circuit in the global routing operation;   determining a respective edge capacity of non-minimum width wire tracks for each of the plurality of global tiles in the first metal layer in the first integrated circuit in the global routing operation; and   wherein edge capacities for minimum width and non-minimum width wire tracks are determined in separate operations within the global routing operation for fabrication of an integrated circuit.   
     
     
         2 . The method as recited in  claim 1 , further comprising:
 determining a respective via capacity of minimum width vias for each of a plurality of global tiles in a first metal layer in the first integrated circuit, wherein the minimum width vias capacity represents minimum width vias which electrically connect the first metal layer to a second metal layer;   determining a respective edge capacity of non-minimum width vias for each of the plurality of global tiles in the first metal layer in the first integrated circuit, wherein the non-minimum width vias capacity represents non-minimum width vias which electrically connect the first metal layer to a second metal layer; and   wherein via capacities for minimum width and non-minimum width vias are determined in separate operations.   
     
     
         3 . The method as recited in  claim 2 , wherein respective via capacities for vias between respective metal layers are computed as the product of a number of wire tracks of a respective width in a global tile in the first metal layer and a number of wire tracks of the respective width in a global tile in the second metal layer. 
     
     
         4 . The method as recited in  claim 1 , wherein a respective edge capacity of minimum width wire tracks between a first global and a second global tile in the first metal layer and a respective edge capacity of non-minimum width wire tracks between the first global and the second global tile in the first metal layer are represented in a vector, wherein respective elements of the vector represent a respective edge capacity of the minimum wire track thickness and the non-minimum wire track thickness. 
     
     
         5 . The method as recited in  claim 4 , wherein the non-minimum width wire tracks comprise a plurality of different non-minimum width wire track widths, and the method further comprises:
 determining a respective edge capacity of each of the non-minimum width wire track widths for each of the plurality of global tiles in the first metal layer in the first integrated circuit; and   wherein edge capacities for each of the non-minimum width wire track widths are determined in separate operations.   
     
     
         6 . The method as recited in  claim 1 , wherein the edge capacities are determined for the first metal layer before repeating the determining for a second metal layer. 
     
     
         7 . The method as recited in  claim 1 , further comprising embedding a plurality of nets in a global routing graph based on the determined edge and via capacities. 
     
     
         8 . The method as recited in  claim 1 , further comprising, by a detailed routing module, placing a set of detail wires for each net of the plurality of nets inside the minimum width and non-minimum width wire tracks in the global routing tiles in the first metal layer. 
     
     
         9 . A computer readable memory storing a control program for controlling a global routing operation for determining edge capacity of global tiles in a first integrated circuit, said control program causing a processor to perform the method comprising:
 determining a respective edge capacity of minimum width wire tracks for each of a plurality of global tiles in a first metal layer in the first integrated circuit in the global routing operation;   determining a respective edge capacity of non-minimum width wire tracks for each of the plurality of global tiles in the first metal layer in the first integrated circuit in the global routing operation; and   wherein edge capacities for minimum width and non-minimum width wire tracks are determined in separate operations with the global routing operation for fabrication of an integrated circuit.   
     
     
         10 . The computer readable memory as recited in  claim 9 , further comprising:
 determining a respective via capacity of minimum width vias for each of a plurality of global tiles in a first metal layer in the first integrated circuit, wherein the minimum width vias capacity represents minimum width vias which electrically connect the first metal layer to a second metal layer;   determining a respective edge capacity of non-minimum width vias for each of the plurality of global tiles in the first metal layer in the first integrated circuit, wherein the non-minimum width vias capacity represents non-minimum width vias which electrically connect the first metal layer to a second metal layer; and   wherein via capacities for minimum width and non-minimum width vias are determined in separate operations.   
     
     
         11 . The computer readable memory as recited in  claim 10 , wherein respective via capacities for vias between respective metal layers are computed as the product of a number of wire tracks of a respective width in a global tile in the first metal layer and a number of wire tracks of the respective width in a global tile in the second metal layer. 
     
     
         12 . The computer readable memory as recited in  claim 9 , wherein a respective edge capacity of minimum width wire tracks between a first global and a second global tile in the first metal layer and a respective edge capacity of non-minimum width wire tracks between the first global and the second global tile in the first metal layer are represented in a vector, wherein respective elements of the vector represent a respective edge capacity of the minimum wire track thickness and the non-minimum wire track thickness. 
     
     
         13 . The computer readable memory as recited in  claim 12 , wherein the non-minimum width wire tracks comprise a plurality of different non-minimum width wire track widths, and the method further comprises:
 determining a respective edge capacity of each of the non-minimum width wire track widths for each of the plurality of global tiles in the first metal layer in the first integrated circuit; and   wherein edge capacities for each of the non-minimum width wire track widths are determined in separate operations.   
     
     
         14 . The computer readable memory as recited in  claim 9 , further comprising, a detailed routing module for placing a set of detail wires for each net of the plurality of nets in the first metal layer inside the minimum width and non-minimum width wire tracks in the global routing tiles. 
     
     
         15 . Apparatus, comprising:
 a processor;   a computer memory holding computer program instructions executed by the processor for controlling a global routing operation for determining edge capacity of global tiles in a first integrated circuit, the computer program instructions when executed carrying out the actions comprising:   determining a respective edge capacity of minimum width wire tracks for each of a plurality of global tiles in a first metal layer in the first integrated circuit in the global routing operation;   determining a respective edge capacity of non-minimum width wire tracks for each of the plurality of global tiles in the first metal layer in the first integrated circuit in the global routing operation; and   wherein edge capacities for minimum width and non-minimum width wire tracks are determined in separate operations within the global routing operation for fabrication of an integrated circuit.   
     
     
         16 . The apparatus as recited in  claim 15 , wherein the actions further comprise:
 determining a respective via capacity of minimum width vias for each of a plurality of global tiles in a first metal layer in the first integrated circuit, wherein the minimum width vias capacity represents minimum width vias which electrically connect the first metal layer to a second metal layer;   determining a respective edge capacity of non-minimum width vias for each of the plurality of global tiles in the first metal layer in the first integrated circuit, wherein the non-minimum width vias capacity represents non-minimum width vias which electrically connect the first metal layer to a second metal layer; and   wherein via capacities for minimum width and non-minimum width vias are determined in separate operations.   
     
     
         17 . The apparatus as recited in  claim 16 , wherein the actions further comprise determining respective via capacities for vias between respective metal layers from the product of a number of wire tracks of a respective width in a global tile in the first metal layer and a number of wire tracks of the respective width in a global tile in the second metal layer. 
     
     
         18 . The apparatus as recited in  claim 17 , wherein the non-minimum width wire tracks comprise a plurality of different non-minimum width wire track widths, and the actions further comprise:
 determining a respective edge capacity of each of the non-minimum width wire track widths for each of the plurality of global tiles in the first metal layer in the first integrated circuit; and   wherein edge capacities for each of the non-minimum width wire track widths are determined in separate operations.   
     
     
         19 . The apparatus as recited in  claim 15 , wherein the actions further comprise embedding a plurality of nets in a global routing graph of the first metal layer based on the determined edge and via capacities. 
     
     
         20 . The apparatus as recited in  claim 16 , wherein the actions further comprise placing a set of detail wires for each net of the plurality of nets in the first metal layer inside the minimum width and non-minimum width wire tracks in the global routing tiles.

Join the waitlist — get patent alerts

Track US2019138683A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.