US2023351087A1PendingUtilityA1

Using machine trained network during routing to modify locations of vias in an ic design

Assignee: D2S INCPriority: May 2, 2022Filed: May 2, 2023Published: Nov 2, 2023
Est. expiryMay 2, 2042(~15.8 yrs left)· nominal 20-yr term from priority
G06F 30/394G06F 2119/18G06F 30/398G06F 30/392G06F 30/27G06F 30/3953G03F 1/36
73
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Some embodiments use a machine-trained network during routing to provide the router with sufficient information to improve the quality of routes generated by a router. This machine-trained network in some embodiments is referred to as the “digital twin” of a lengthy design and/or manufacturing process that produces the design of an IC layout and/or manufactures an IC based on a designed IC layout. The digital twin in some embodiments provides information regarding parasitics, regarding redundant vias for insertion or regarding complexity of subsequent manufacturing processes used to manufacture an IC based on the IC design layout.

Claims

exact text as granted — not AI-modified
1 . A method of performing routing to define a plurality of routes for a plurality of nets in an integrated circuit (IC) design layout, the method comprising:
 performing a first routing operation to define a first set of one or more routes for a first set of one or more nets in the design layout; and   supplying the first set of routes to a machine-trained network (MTN) to add, in the design layout, a set of one or more redundant via locations for a group of one or more routes in the set of routes to modify.   
     
     
         2 . The method of  claim 1  further comprising receiving from the MTN a modified first set of routes that includes the added set of redundant via locations and includes at least a first route that the MTN modified to use a particular redundant via location that the MTN added. 
     
     
         3 . The method of  claim 2 , wherein
 the MTN is trained in a training process that uses a first plurality of known input design layouts with a first plurality of corresponding known output design layouts that have one or more redundant vias added to their corresponding input design layouts,   said known input design layouts fed through the MTN during training to produce a second plurality of corresponding output design layouts that identify one or more redundant vias in their corresponding input design layouts,   the second plurality of output design layouts used in conjunction with the first plurality of known output design layouts to generate a loss function value, which is used to adjust a set of trainable parameters of the MTN.   
     
     
         4 . The method of  claim 2 , wherein
 after the first routing operation and before the first set of routes are supplied to the MTN, the first route did not traverse to a location of the particular redundant via, and   after the MTN modifies the first route, the modified first route traverses to the location of the particular redundant via.   
     
     
         5 . The method of  claim 4 , wherein the IC design layout comprises a plurality of layers, and the first route traverses two layers connected by the particular redundant via location, and the location of the particular redundant via comprises x- and y-axis planar coordinates that specify the location of the particular redundant via on each of the connected two layers. 
     
     
         6 . The method of  claim 4 , wherein
 the MTN is trained in a training process that uses a first plurality of known input design layouts with a first plurality of corresponding known output design layouts that have one or more redundant vias added to their corresponding input design layouts and one or more routes modified to traverse to a redundant via location,   said known input design layouts fed through the MTN during training to produce a second plurality of corresponding output design layouts that identify one or more redundant vias in their corresponding input design layouts and one or more modified routes that traverse to a redundant via location,   the second plurality of output design layouts used in conjunction with the first plurality of known output design layouts to generate a loss function value, which is used to adjust a set of trainable parameters of the MTN.   
     
     
         7 . The method of  claim 2 , wherein
 the modified design layout further specifies a different location for a first via used by a second route,   before the MTN modifies the first set of routes, the first via is at a first location in the design layout, and   after the MTN modifies the first set of routes, the first via is at a second location in the design layout.   
     
     
         8 . The method of  claim 7 , wherein after the first routing operation and before the first set of routes are supplied to the MTN, the second route does not traverse to the second location of the first via, and after the MTN moves the first via, the MTN modifies the second route to traverse to the second location. 
     
     
         9 . The method of  claim 7 , wherein
 the MTN is trained in a training process that uses a first plurality of known input design layouts with a first plurality of corresponding known output design layouts that have (i) a new location for each of one or more vias in their corresponding input design layouts and (ii) one or more routes modified to traverse to a new via location,   said known input design layouts fed through the MTN during training to produce a second plurality of corresponding output design layouts that comprise (i) a new location for each of one or more vias in their corresponding input design layouts and (ii) one or more modified routes modified to traverse to a new via location,   the second plurality of output design layouts used in conjunction with the first plurality of known output design layouts to generate a loss function value, which is used to adjust a set of trainable parameters of the MTN.   
     
     
         10 . The method of  claim 1 , wherein supplying the first set of routes comprises supplying a portion of the IC design layout that contains the first set of routes to the MTN. 
     
     
         11 . A non-transitory machine readable medium storing a program which when executed by at least one processing unit performs routing to define a plurality of routes for a plurality of nets in an integrated circuit (IC) design layout, the program comprising sets of instructions for:
 performing a first routing operation to define a first set of one or more routes for a first set of one or more nets in the design layout; and   supplying the first set of routes to a machine-trained network (MTN) to add, in the design layout, a set of one or more redundant via locations for a group of one or more routes in the set of routes to modify.   
     
     
         12 . The non-transitory machine readable medium of  claim 11 , wherein the program further comprises a set of instructions for receiving from the MTN a modified first set of routes that includes the added set of redundant via locations and includes at least a first route that the MTN modified to use a particular redundant via location that the MTN added. 
     
     
         13 . The non-transitory machine readable medium of  claim 12 , wherein
 the MTN is trained in a training process that uses a first plurality of known input design layouts with a first plurality of corresponding known output design layouts that have one or more redundant vias added to their corresponding input design layouts,   said known input design layouts fed through the MTN during training to produce a second plurality of corresponding output design layouts that identify one or more redundant vias in their corresponding input design layouts,   the second plurality of output design layouts used in conjunction with the first plurality of known output design layouts to generate a loss function value, which is used to adjust a set of trainable parameters of the MTN.   
     
     
         14 . The non-transitory machine readable medium of  claim 12 , wherein
 after the first routing operation and before the first set of routes are supplied to the MTN, the first route did not traverse to a location of the particular redundant via, and   after the MTN modifies the first route, the modified first route traverses to the location of the particular redundant via.   
     
     
         15 . The non-transitory machine readable medium of  claim 14 , wherein the IC design layout comprises a plurality of layers, and the first route traverses two layers connected by the particular redundant via location, and the location of the particular redundant via comprises x- and y-axis planar coordinates that specify the location of the particular redundant via on each of the connected two layers. 
     
     
         16 . The non-transitory machine readable medium of  claim 14 , wherein
 the MTN is trained in a training process that uses a first plurality of known input design layouts with a first plurality of corresponding known output design layouts that have one or more redundant vias added to their corresponding input design layouts and one or more routes modified to traverse to a redundant via location,   said known input design layouts fed through the MTN during training to produce a second plurality of corresponding output design layouts that identify one or more redundant vias in their corresponding input design layouts and one or more modified routes that traverse to a redundant via location,   the second plurality of output design layouts used in conjunction with the first plurality of known output design layouts to generate a loss function value, which is used to adjust a set of trainable parameters of the MTN.   
     
     
         17 . The non-transitory machine readable medium of  claim 12 , wherein
 the modified design layout further specifies a different location for a first via used by a second route,   before the MTN modifies the first set of routes, the first via is at a first location in the design layout, and   after the MTN modifies the first set of routes, the first via is at a second location in the design layout.   
     
     
         18 . The non-transitory machine readable medium of  claim 17 , wherein after the first routing operation and before the first set of routes are supplied to the MTN, the second route does not traverse to the second location of the first via, and after the MTN moves the first via, the MTN modifies the second route to traverse to the second location. 
     
     
         19 . The non-transitory machine readable medium of  claim 17 , wherein
 the MTN is trained in a training process that uses a first plurality of known input design layouts with a first plurality of corresponding known output design layouts that have (i) a new location for each of one or more vias in their corresponding input design layouts and (ii) one or more routes modified to traverse to a new via location,   said known input design layouts fed through the MTN during training to produce a second plurality of corresponding output design layouts that comprise (i) a new location for each of one or more vias in their corresponding input design layouts and (ii) one or more modified routes modified to traverse to a new via location,   the second plurality of output design layouts used in conjunction with the first plurality of known output design layouts to generate a loss function value, which is used to adjust a set of trainable parameters of the MTN.   
     
     
         20 . The non-transitory machine readable medium of  claim 11 , wherein the set of instructions for supplying the first set of routes comprises a set of instructions for supplying a portion of the IC design layout that contains the first set of routes to the MTN.

Join the waitlist — get patent alerts

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

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