US 12,423,499 B1
Resistance and capacitance aware preferred layer trimming
Derong Liu, Austin, TX (US); Mehmet Can Yildiz, Austin, TX (US); and Charles Jay Alpert, Cedar Park, TX (US)
Assigned to Cadence Design Systems, Inc., San Jose, CA (US)
Filed by Cadence Design Systems, Inc., San Jose, CA (US)
Filed on Jun. 21, 2022, as Appl. No. 17/845,639.
Int. Cl. G06F 30/3947 (2020.01); G06F 30/373 (2020.01); G06F 30/392 (2020.01)
CPC G06F 30/3947 (2020.01) [G06F 30/373 (2020.01); G06F 30/392 (2020.01)] 20 Claims
OG exemplary drawing
 
1. A system comprising:
one or more processors of a machine; and
a computer storage medium storing instructions, which when executed by the machine, cause the machine to perform operations comprising:
accessing, from memory, data describing an integrated circuit design, the integrated circuit design comprising a net and a set of layers;
generating, based on the set of layers, a first list comprising horizontal layers from the set of layers;
generating, based on the set of layers, a second list comprising vertical layers from the set of layers;
determining a resistance and capacitance (RC) constraint comprising a permitted range of RC values for routing layers in the integrated circuit design, the determining of the RC constraint comprising:
determining a delta value based on a reference value and a maximum difference parameter, the maximum difference parameter specifying a maximum permitted difference between an RC value and the reference value;
determining a minimum permitted RC value by subtracting the delta value from the reference value; and
determining a maximum permitted RC value by adding the delta value to the reference value;
filtering the first list and the second list based on the RC constraint the filtering comprising removing one or more layers that fail to satisfy the RC constraint from one or more of the first list and the second list;
merging the first list and the second list to create a third list of routing layers, the third list of routing layers comprising a subset of the set of layers; and
assigning the net to one or more routing layers selected from the third list.