IP Library Granted Patent US 12,602,532
Granted Patent B2
US 12,602,532 · App. 17/957,621 · Granted Apr 14, 2026

Automated transistor-level placement for design of integrated circuits

Inventors: Xiaoqing Xu (Mountain View, CA); Dino Ruic (Santa Clara, CA)
Assignee: GDM Holding LLC
G06F30/398G06F30/394
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 12,602,532
App. No.
17/957,621
Granted
Apr 14, 2026
Kind
B2
Abstract

In some embodiments, a computer-implemented method for designing an integrated circuit using transistor placement optimization is provided. A computing system receives a specification for the integrated circuit. The specification includes a netlist describing a plurality of transistors and connections between terminals of the plurality of transistors. The computing system determines an initial location and an orientation on a canvas for each transistor in the plurality of transistors. The computing system uses an objective function based at least in part on the initial locations and the orientations of the plurality of transistors to generate a rough placement having globally optimized locations and orientations for the plurality of transistors. The computing system uses a local refinement technique to optimize the rough placement to generate a fine placement, and uses a routing technique to generate a routing for the fine placement to generate a completed design.

Claims (66)

1 . A computer-implemented method for designing an integrated circuit using transistor placement optimization, the method comprising:

receiving, by a computing system, a specification for the integrated circuit, wherein the specification includes a netlist describing a plurality of transistors and connections between terminals of the plurality of transistors;

determining, by the computing system, an initial location and an orientation on a canvas for each transistor in the plurality of transistors;

using, by the computing system, an objective function based at least in part on the initial locations and the orientations of the plurality of transistors to generate a rough placement having globally optimized locations and orientations for the plurality of transistors;

using, by the computing system, a local refinement technique to optimize the rough placement to generate a fine placement;

using, by the computing system, a routing technique to generate a routing for the fine placement to generate a completed design; and

storing, by the computing system, the completed design in a layout data store.

2 . The computer-implemented method of claim 1 , further comprising providing the completed design to a fabrication system for fabrication of the integrated circuit.

3 . The computer-implemented method of claim 1 , further comprising:

generating a user interface based on at least one of the rough placement, the fine placement, and the completed design;

receiving a query, via the user interface, that includes one or more query terms; and

updating the user interface to visually emphasize at least one of a subset of transistors or a subset of nets that match the query terms.

4 . The computer-implemented method of claim 3 , further comprising:

receiving, via the user interface, an instruction to add a transistor, remove a transistor, modify the netlist, modify a location of a transistor, modify an orientation of a transistor, or add a region fence around a group of transistors; and

updating at least one of the rough placement, the fine placement, and the completed design based on the instruction.

5 . The computer-implemented method of claim 1 , wherein using the objective function to generate a rough placement having globally optimized locations and orientations for the plurality of transistors includes:

using a simulated annealing technique to optimize locations of the plurality of transistors in a discrete coordinate space.

6 . The computer-implemented method of claim 5 , wherein at least one move of the simulated annealing technique includes modifying an orientation of at least one transistor.

7 . The computer-implemented method of claim 1 , wherein the objective function comprises a weighted half-perimeter wire length (HPWL) function.

8 . A computer-implemented method for designing an integrated circuit using transistor placement optimization, the method comprising:

receiving, by a computing system, a specification for the integrated circuit, wherein the specification includes a netlist describing a plurality of transistors and connections between terminals of the plurality of transistors;

determining, by the computing system, an initial location and an orientation on a canvas for each transistor in the plurality of transistors;

using, by the computing system, an objective function based at least in part on the initial locations and the orientations of the plurality of transistors to generate a rough placement having globally optimized locations and orientations for the plurality of transistors;

using, by the computing system, a local refinement technique to optimize the rough placement to generate a fine placement;

using, by the computing system, a routing technique to generate a routing for the fine placement to generate a completed design; and

storing, by the computing system, the completed design in a layout data store;

wherein using the objective function to generate the rough placement having globally optimized locations and orientations for the plurality of transistors includes:

using an analytic technique to optimize locations of the plurality of transistors in a continuous coordinate space; and

creating a preliminary discrete layout by converting the optimized locations of the plurality of transistors in the continuous coordinate space to locations in a discrete coordinate space.

9 . The computer-implemented method of claim 8 , wherein converting the optimized locations of the plurality of transistors in the continuous coordinate space to locations in the discrete coordinate space includes:

creating a sorted list of the plurality of transistors for each dimension of the canvas, wherein the sorted list is arranged by the location in a corresponding dimension of the optimized location of each transistor; and

placing the plurality of transistors in the discrete coordinate space according to the sorted lists.

10 . The computer-implemented method of claim 8 , wherein the analytic technique includes a gradient descent technique.

11 . A non-transitory computer-readable medium having computer-executable instructions stored thereon that, in response to execution by one or more processors of a computing system, cause the computing system to perform actions for designing an integrated circuit using transistor placement optimization, the actions comprising:

receiving, by the computing system, a specification for the integrated circuit, wherein the specification includes a netlist describing a plurality of transistors and connections between terminals of the plurality of transistors;

determining, by the computing system, an initial location and an orientation on a canvas for each transistor in the plurality of transistors;

using, by the computing system, an objective function based at least in part on the initial locations and the orientations of the plurality of transistors to generate a rough placement having globally optimized locations and orientations for the plurality of transistors;

using, by the computing system, a local refinement technique to optimize the rough placement to generate a fine placement;

using, by the computing system, a routing technique to generate a routing for the fine placement to generate a completed design; and

storing, by the computing system, the completed design in a layout data store.

12 . The non-transitory computer-readable medium of claim 11 , wherein the actions further comprise providing the completed design to a fabrication system for fabrication of the integrated circuit.

13 . The non-transitory computer-readable medium of claim 11 , wherein the actions further comprise:

generating a user interface based on at least one of the rough placement, the fine placement, and the completed design;

receiving a query, via the user interface, that includes one or more query terms; and

updating the user interface to visually emphasize at least one of a subset of transistors or a subset of nets that match the query terms.

14 . The non-transitory computer-readable medium of claim 13 , wherein the actions further comprise:

receiving, via the user interface, an instruction to add a transistor, remove a transistor, modify the netlist, modify a location of a transistor, modify an orientation of a transistor, or add a region fence around a group of transistors; and

updating at least one of the rough placement, the fine placement, and the completed design based on the instruction.

15 . The non-transitory computer-readable medium of claim 11 , wherein using the objective function to generate a rough placement having globally optimized locations and orientations for the plurality of transistors includes:

using a simulated annealing technique to optimize locations of the plurality of transistors in a discrete coordinate space.

16 . The non-transitory computer-readable medium of claim 15 , wherein at least one move of the simulated annealing technique includes modifying an orientation of at least one transistor.

17 . The non-transitory computer-readable medium of claim 11 , wherein the objective function comprises a weighted half-perimeter wire length (HPWL) function.

18 . A non-transitory computer-readable medium having computer-executable instructions stored thereon that, in response to execution by one or more processors of a computing system, cause the computing system to perform actions for designing an integrated circuit using transistor placement optimization, the actions comprising:

receiving, by the computing system, a specification for the integrated circuit, wherein the specification includes a netlist describing a plurality of transistors and connections between terminals of the plurality of transistors;

determining, by the computing system, an initial location and an orientation on a canvas for each transistor in the plurality of transistors;

using, by the computing system, an objective function based at least in part on the initial locations and the orientations of the plurality of transistors to generate a rough placement having globally optimized locations and orientations for the plurality of transistors;

using, by the computing system, a local refinement technique to optimize the rough placement to generate a fine placement;

using, by the computing system, a routing technique to generate a routing for the fine placement to generate a completed design; and

storing, by the computing system, the completed design in a layout data store

wherein using the objective function to generate the rough placement having globally optimized locations and orientations for the plurality of transistors includes:

using an analytic technique to optimize locations of the plurality of transistors in a continuous coordinate space; and

creating a preliminary discrete layout by converting the optimized locations of the plurality of transistors in the continuous coordinate space to locations in a discrete coordinate space.

19 . The non-transitory computer-readable medium of claim 18 , wherein converting the optimized locations of the plurality of transistors in the continuous coordinate space to locations in the discrete coordinate space includes:

creating a sorted list of the plurality of transistors for each dimension of the canvas, wherein the sorted list is arranged by the location in a corresponding dimension of the optimized location of each transistor; and

placing the plurality of transistors in the discrete coordinate space according to the sorted lists.

20 . The non-transitory computer-readable medium of claim 18 , wherein the analytic technique includes a gradient descent technique.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2025
From: X DEVELOPMENT LLC
To: GDM HOLDING LLC
Reel/Frame 071278/0178 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2022
From: XU, XIAOQING; RUIC, DINO
To: X DEVELOPMENT LLC
Reel/Frame 061309/0136 →
Continuity (2)
Provisional Application 63310675 · Feb 16, 2022
Related Publication 20230259689A1 · Aug 17, 2023
References Cited (38)
US 5701255A · Fukui et al. · 1997 [cited by applicant]
US 5943486A · Fukui et al. · 1999 [cited by applicant]
US 5984510A · Guruswamy · 1999 [cited by examiner]
US 5987086A · Raman · 1999 [cited by examiner]
US 6006024A · Guruswamy · 1999 [cited by examiner]
US 6209123B1 · Maziasz · 2001 [cited by examiner]
US 6239607B1 · Maxwell · 2001 [cited by examiner]
US 10318656B2 · Cox et al. · 2019 [cited by applicant]
US 20050188338A1 · Kroyan et al. · 2005 [cited by applicant]
US 20080198236A1 · Morishita et al. · 2008 [cited by applicant]
US 20110023006A1 · Giffel · 2011 [cited by examiner]
US 20120266124A1 · Alpert · 2012 [cited by examiner]
US 20160026749A1 · Song et al. · 2016 [cited by applicant]
US 20200104459A1 · Tong et al. · 2020 [cited by applicant]
US 20210357561A1 · Yu et al. · 2021 [cited by applicant]
CN 1834969A · 2006 [cited by applicant]
CN 107315849A · 2017 [cited by applicant]
CN 108287932A · 2018 [cited by applicant]
CN 110991138A · 2020 [cited by applicant]
CN 111767689A · 2020 [cited by applicant]
JP 3014646B2 · 2000 [cited by applicant]
JP 2000195958A · 2000 [cited by applicant]
JP 2008236732A · 2008 [cited by applicant]
JP 2009181185A · 2009 [cited by applicant]
JP 2010003491A · 2010 [cited by applicant]
KR 1020210142543A · 2021 [cited by applicant]
International Search Report and Written Opinion, mailed May 24, 2023, in corresponding International Patent Application No. PCT/US2023/012431, filed Feb. 6, 2023, 8 pages. [cited by applicant]
Notice of Allowance for Japanese Patent Application No. 2024-548440, Feb. 18, 2025, 5 Pages. [cited by applicant]
The First Office Action for Chinese Patent Application No. 202380020351.6, Mar. 12, 2025, 14 Pages. [cited by applicant]
Gupta, A., et al., “Optimal 2-D Cell Layout with Integrated Transistor Folding,” IEEE/ACM International Conference on Computer-Aided Design, Nov. 8-12, 1998, pp. 128-135. [cited by applicant]
Cong, J., et al., “A Thermal-Driven Floorplanning Algorithm for 3D ICs,” IEEE/ACM International Conference on Computer Aided Design, Nov. 7-11, 2004, 8 pages. [cited by applicant]
Kahng, A.B., et al., “Supply Voltage Degradation Aware Analytical Placement,” Proceedings of the 2005 International Conference on Computer Design, Oct. 2-5, 2005, 7 pages. [cited by applicant]
Kahng, A.B., et al. “Analytical Thermal Placement for VLSI Lifetime Improvement and Minimum Performance Variation,” 2007 25th International Conference on Computer Design, Oct. 7-10, 2007, 8 pages. [cited by applicant]
The Extended European Search Report for European Patent Application No. 23756765.6, Nov. 5, 2025, 10 Pages. [cited by applicant]
Gopalakrishnan, et al., “Direct Transistor-Level Layout for Digital Blocks”, Carnegie Mellon University, Pittsburgh, PA, 2001, pp. 577-584. [cited by applicant]
Hsu, et al., “TransPlace: A Scalable Transistor-Level Placer for VLSI Beyond Standard-Cell-Based Design”, IEEE, 2024, 979-8-3503-9354-5/24, pp. 312-318. [cited by applicant]
Lazzari, et al., “A Transistor Placement Technique Using Genetic Algorithm and Analytical Programming”, 2005, vol. 240, VLSI-SoC: From Systems to Silicon, pp. 331-344. [cited by applicant]
Riepe, et al., “Transistor Level Micro-Placement and Routing for Two-Dimensional Digital VLSI Cell Synthesis”, Proceedings of the International Symposium on Physical Design, 1999, DOI: 10.1145/299996.300028, pp. 74-81. [cited by applicant]