# US 12,093,619 B2 · Automated circuit generation

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,093,619 B2
- Document ID: US12093619B2
- Status: Granted
- Kind: B2
- Application number: 18/314,029
- Filed: 2023-05-08
- Published: 2023-08-31
- Granted: 2024-09-17
- Earliest claimed: 2019-05-30
- Assignees: Celera Corporation
- Applicants: Celera, Inc.
- Inventors: Calum MacRae; John Mason; Karen Mason
- Web page: https://patentgrep.com/patent/US12093619B2

## CPC

- G06F 30/327: Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
- G06F 30/31: Design entry, e.g. editors specifically adapted for circuit design
- G06F 30/347: Physical level, e.g. placement or routing
- G06F 30/367: Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
- G06F 30/38: Circuit design at the mixed level of analogue and digital signals
- G06F 30/392: Floor-planning or layout, e.g. partitioning or placement
- G06F 30/398: Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM] (optical proximity correction [OPC] design processes G03F1/36)
- G06F 30/373: Design optimisation
- G06F 2111/12: Symbolic schematics
- G06F 2111/20: Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

In some embodiments, information specifying a transistor to be generated is received, the information comprising an on resistance. A total width of a gate of the transistor to be generated is determined based at least on the on resistance. A first width, a number of fingers (F), and a number of device cells (P) are determined based on the total width. A transistor level schematic is generated comprising one or more transistors configured with the first width and the number of fingers (F). A layout is generated, wherein the layout comprises P device cells, each device cell comprising a plurality of gates corresponding to said number of fingers (F) each gate having said first width, wherein the device cells are configured in a two-dimensional array.

## Claims

### Claim 1

A computer-implemented method of generating a transistor comprising:
receiving information specifying a transistor to be generated, said information comprising an on resistance of the transistor to be generated;
determining a total width of a gate of the transistor to be generated based at least on the on resistance;
determining a first width, a number of fingers (F), and a number of device cells (P) based on the total width;
generating a transistor level schematic comprising one or more transistors configured with the first width and the number of fingers (F); and
generating a layout, wherein the layout comprises P device cells, each device cell comprising a plurality of gates corresponding to said number of fingers (F), each gate having said first width, wherein the device cells are configured in a two-dimensional array.

### Claim 2 (depends on 1)

The method of claim 1, wherein transistor level schematic comprises one transistor having a multiplier attribute (M) equal to said number of device cells (P).

### Claim 3 (depends on 1)

The method of claim 1, wherein transistor level schematic comprises P transistors configured in parallel.

### Claim 4 (depends on 1)

The method of claim 1, wherein the P device cells have a programmable aspect ratio.

### Claim 5 (depends on 4)

The method of claim 4, wherein the aspect ratio is greater than 0.5 and less than 1.

### Claim 6 (depends on 4)

The method of claim 4, wherein the aspect ratio is between about ⅔rds and about ¾ths.

### Claim 7 (depends on 1)

The method of claim 1, wherein the two-dimensional array comprises an equal number of rows and columns of device cells.

### Claim 8 (depends on 1)

The method of claim 1, wherein the number of device cells (P) is a perfect square.

### Claim 9 (depends on 1)

The method of claim 1, wherein the first width, the first number of fingers, and the number of device cells (P) are determined based on a maximum width, and a maximum number of fingers.

### Claim 10 (depends on 9)

The method of claim 9, further comprising determining the number of device cells (P) and the number of fingers (F) by increasing the number of device cells (P) across a plurality of increasing values to determine the number of fingers (F) obtainable based on a current number of device cells, the maximum width, and the maximum number of fingers.

### Claim 11 (depends on 9)

The method of claim 9, the method further comprising:
iteratively increasing the number of device cells (P) across a plurality of values;
determining if the total width is obtainable from a current value of P, the maximum width, and the maximum number of fingers;
if the total width is not obtainable from the current value of P, the maximum width, and the maximum number of fingers, then increasing the value of P, and repeating said determining step; and
if the total width is obtainable from the current value of P, the maximum width, and the maximum number of fingers, then setting the number of device cells (P) to the current value of P and setting the number of fingers (F) based on the maximum width and the current value of P.

### Claim 12 (depends on 10)

The method of claim 10, further comprising determining a first length along a first dimension of a device cell based on the number of fingers (F) and a first plurality of predefined offset values.

### Claim 13 (depends on 12)

The method of claim 12, wherein the plurality of predefined offset values are selected based on a transistor type.

### Claim 14 (depends on 12)

The method of claim 12, further comprising determining a second length of the device cell based on the first length and a predefined aspect ratio.

### Claim 15 (depends on 14)

The method of claim 14, wherein the aspect ratio is programmable.

### Claim 16 (depends on 14)

The method of claim 14, further comprising determining the first width based on the second length and at least one second predefined offset value.

### Claim 17 (depends on 9)

The method of claim 9, wherein the maximum width and maximum number of fingers are predefined values.

### Claim 18 (depends on 1)

The method of claim 1, further comprising generating a circuit specification specifying one or more transistors having the first width and the number of fingers (F), wherein the circuit specification is used to generate the transistor level schematic.

### Claim 19 (depends on 18)

The method of claim 18, wherein the information specifying a transistor to be generated specifies a device type, and wherein the circuit specification specifies one or more p-type transistors or n-type transistors based on the device type.

### Claim 20 (depends on 18)

The method of claim 18, wherein the information specifying a transistor to be generated specifies a maximum drain-to-source voltage, and wherein the circuit specification specifies one of a plurality of transistors based on the maximum drain-to-source voltage.

### Claim 21 (depends on 18)

The method of claim 18, wherein the information specifying a transistor to be generated specifies a maximum gate-to-source voltage, and wherein the circuit specification specifies one of a plurality of transistors based on the maximum gate-to-source voltage.

### Claim 22 (depends on 1)

The method of claim 1, wherein determining the total width of the gate of the transistor to be generated based at least on the on resistance comprises:
selecting one set of a plurality of sets of regression coefficients based on a transistor type of the transistor to be generated; and
determining the total width based on the on resistance and the selected set of regression coefficients.

### Claim 23 (depends on 22)

The method of claim 22, wherein the transistor type is a power transistor.

### Claim 24 (depends on 22)

The method of claim 22, wherein the transistor type is a signal transistor.

### Claim 25 (depends on 1)

The method of claim 1, wherein the information specifying a transistor to be generated specifies a replica transistor, and wherein the transistor level schematic comprises a replica transistor having a gate coupled to one or more gates of the one or more transistors and a drain coupled to one or more drains of the one or more transistors.

### Claim 26 (depends on 25)

The method of claim 25, wherein the information specifying a transistor to be generated specifies a replica gain, and wherein a width of the replica transistor is determined based on the total width of the transistor to be generated.

### Claim 27 (depends on 1)

The method of claim 1, wherein the information specifying a transistor to be generated specifies a Kelvin connection, and wherein the transistor level schematic comprises a Kelvin source terminal coupled to one or more sources of the one or more transistors and a Kelvin drain terminal coupled to one or more drains of the one or more transistors.

### Claim 28 (depends on 27)

The method of claim 27, wherein the transistor level schematic further comprises a first resistor configured between the Kelvin source terminal and the one or more source terminals of the one or more transistors and a second resistor configured between the Kelvin drain terminal and the one or more drains of the one or more transistors.

### Claim 29 (depends on 1)

The method of claim 1, wherein said generating a layout comprising executing one or more layout placement instructions, wherein the layout placement instructions successively place the P device cells at an initial position and P−1 other positions offset from the initial position by an integer number of x-axis offsets and y-axis offsets.

### Claim 30 (depends on 29)

The method of claim 29, wherein the executed layout placement instructions are executed based on a transistor type.

### Claim 31 (depends on 29)

The method of claim 29, wherein the x-axis offsets and y-axis offsets are calculated based on the first width and the number of fingers (F).

### Claim 32 (depends on 29)

The method of claim 29, wherein said generating a layout further comprising automatically placing a plurality of metallization strips across the two-dimensional array of device cells.

### Claim 33 (depends on 32)

The method of claim 32, wherein a number of metallization strips across each device cell is determined based on the first width and a predefined maximum strip width.

### Claim 34 (depends on 32)

The method of claim 32, wherein the metallization strips are placed based on predefined offsets selected based on a transistor type of the transistor to be generated.

### Claim 35

A computer system for generating a transistor comprising:
one or more processors; and
a non-transitory computer-readable storage medium having stored thereon computer executable instructions, which when executed by the computer system, cause the computer system to perform a method comprising:
receiving information specifying a transistor to be generated, said information comprising an on resistance of the transistor to be generated;
determining a total width of a gate of the transistor to be generated based at least on the on resistance;
determining a first width, a number of fingers (F), and a number of device cells (P) based on the total width;
generating a transistor level schematic comprising one or more transistors configured with the first width and the number of fingers (F); and
generating a layout, wherein the layout comprises P device cells, each device cell comprising a plurality of gates corresponding to said number of fingers (F), each gate having said first width, wherein the device cells are configured in a two-dimensional array.

### Claim 36 (depends on 35)

The computer system of claim 35, wherein transistor level schematic comprises one transistor having a multiplier attribute (M) equal to said number of device cells (P).

### Claim 37 (depends on 35)

The computer system of claim 35, wherein the two-dimensional array comprises an equal number of rows and columns of device cells.

### Claim 38 (depends on 35)

The computer system of claim 35, wherein the number of device cells (P) is a perfect square.

### Claim 39 (depends on 35)

The computer system of claim 35, wherein the first width, the first number of fingers, and the number of device cells (P) are determined based on a maximum width, and a maximum number of fingers.

### Claim 40 (depends on 35)

The computer system of claim 35, wherein the method further comprising generating a circuit specification specifying one or more transistors having the first width and the number of fingers (F), wherein the circuit specification is used to generate the transistor level schematic.

### Claim 41

A non-transitory computer-readable storage medium having stored thereon computer executable instructions, which when executed by a computer system, cause the computer system to:
receive information specifying a transistor to be generated, said information comprising an on resistance of the transistor to be generated;
determine a total width of a gate of the transistor to be generated based at least on the on resistance;
determine a first width, a number of fingers (F), and a number of device cells (P) based on the total width;
generate a transistor level schematic comprising one or more transistors configured with the first width and the number of fingers (F); and
generate a layout, wherein the layout comprises P device cells, each device cell comprising a plurality of gates corresponding to said number of fingers (F), each gate having said first width, wherein the device cells are configured in a two-dimensional array.

### Claim 42 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, wherein transistor level schematic comprises one transistor having a multiplier attribute (M) equal to said number of device cells (P).

### Claim 43 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, wherein the two-dimensional array comprises an equal number of rows and columns of device cells.

### Claim 44 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, wherein the number of device cells (P) is a perfect square.

### Claim 45 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, wherein the first width, the first number of fingers, and the number of device cells (P) are determined based on a maximum width, and a maximum number of fingers.

### Claim 46 (depends on 41)

The non-transitory computer-readable storage medium of claim 41, wherein the instructions, which when executed by the computer system, cause the computer system to further perform generating a circuit specification specifying one or more transistors having the first width and the number of fingers (F), wherein the circuit specification is used to generate the transistor level schematic.
