IP Library › Granted Patent US 11,281,828
Granted Patent B1
US 11,281,828 · App. 17/028,937 · Granted Mar 22, 2022

Automated analog layout

Inventors: Paul Clewes (Northumberland, GB); Liang Gao (Gateshead, GB); Jonathan Longrigg (Newcastle upon Tyne, GB)
Assignee: Pulsic Limited
G06F30/327G06F30/392G06F30/394G06F2111/12
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 11,281,828
App. No.
17/028,937
Granted
Mar 22, 2022
Kind
B1
Abstract

An automated analog layout tool creates not just one, but many electrically correct layouts from an input schematic. Designers can explore multiple layout options in a fraction of the time needed to produce just a single layout by hand. Because the tool produces layout results so quickly, parasitics are available for simulation early in the design process, further speeding the entire design cycle. The tool considers place and route concurrently.

Claims (73)

1. A method comprising:

importing a first circuit schematic in a first format;

creating a first netlist from the first circuit schematic;

using an electronic processor, automatically generating constraints for the first netlist, wherein the automatically generating constraints comprises

providing a plurality of predefined patterns for a plurality of constraints,

reviewing the first netlist and identifying patterns in the first netlist that correspond to the predefined patterns, and

when a predefined pattern is identified in the first netlist, using a constraint that is associated with that predefined pattern as one of the automatically generated constraints for the first netlist;

creating a second netlist by flattening the first netlist;

importing a layout in a second format associated with the second netlist;

generating parameterized cells associated with the second netlist; and

using the parameterized cells, generating one or more placed and routed layouts to obtain a polymorphic layout.

2. The method of claim 1 wherein a predefined pattern comprises at least one of a current mirror circuit, current mirror with differential pair circuit, a MOSFET capacitor, an operational amplifier circuit, a CMOS transmission gate, or a CMOS tristate inverter.

3. The method of claim 1 wherein the generating one or more placed and routed layouts to obtain a polymorphic layout comprises multiple placed and routed layouts.

4. The method of claim 1 comprising:

providing a graphical user interface comprising a first window and a second window;

in the first window, displaying the first circuit schematic for a first circuit; and

in the second window, displaying the one or more placed and routed layouts for the first circuit in the first window.

5. The method of claim 1 wherein the generating one or more placed and routed layouts to obtain a polymorphic layout comprises multiple placed and routed layouts, and the method comprises:

providing a graphical user interface comprising a first window and a second window;

in the first window, displaying the first circuit schematic for a first circuit; and

in the second window, displaying the multiple placed and routed layouts of the first circuit schematic, wherein each layout is an implementation of the first circuit comprising internal routing.

6. A method comprising:

importing a first circuit schematic in a first format;

creating a first netlist from the first circuit schematic;

automatically generating constraints for the first netlist, wherein the automatically generating constraints comprises:

providing a plurality of predefined patterns for a plurality of constraints,

reviewing the first netlist and identifying patterns in the first netlist that correspond to the predefined patterns, and

when a predefined pattern is identified in the first netlist, using a constraint that is associated with that predefined pattern as one of the automatically generated constraints for the first netlist;

creating a second netlist by flattening the first netlist;

importing a layout in a second format for parameterized cells associated with the second netlist;

evaluating the parameterized cells; and

generating one or more placed and routed layouts to obtain a polymorphic layout, wherein the generating comprises creating at least one layout corresponding to the first circuit schematic.

7. The method of claim 6 wherein a predefined pattern comprises at least one of a current mirror circuit, current mirror with differential pair circuit, a MOSFET capacitor, an operational amplifier circuit, a CMOS transmission gate, or a CMOS tristate inverter.

8. The method of claim 6 wherein the generating one or more placed and routed layouts to obtain a polymorphic layout comprises multiple placed and routed layouts.

9. The method of claim 6 comprising:

providing a graphical user interface comprising a first window and a second window;

in the first window, displaying the first circuit schematic for a first circuit; and

in the second window, displaying the one or more placed and routed layouts for the first circuit in the first window.

10. The method of claim 6 wherein the generating one or more placed and routed layouts to obtain a polymorphic layout comprises multiple placed and routed layouts, and the method comprises:

providing a graphical user interface comprising a first window and a second window;

in the first window, displaying the first circuit schematic for a first circuit; and

in the second window, displaying the multiple placed and routed layouts for the first circuit in the first window.

11. A method comprising:

providing a graphical user interface comprising a first window and a second window;

in the first window, displaying a first circuit schematic for a first circuit;

in the second window, displaying a plurality of layouts for the first circuit in the first window, wherein each layout is a complete implementation of the first circuit comprising internal routing;

generating a first layout of the plurality of layouts, wherein the first layout is rectangular and comprises an X length and Y width; and

generating a second layout of the plurality of layouts, wherein the second layout is rectangular and comprises an X length and Y width, and relative to the first layout, structures and a routing of the second layout are arranged differently from and not in a mirror image of those for the first layout.

12. The method of claim 11 comprising:

generating a third layout of the plurality of layouts, wherein the third layout is rectangular and comprises Y length and X width.

13. The method of claim 11 comprising:

allowing a user to select one of the plurality of layouts for the first circuit as a layout in an integrated circuit design comprising the first circuit.

14. A method comprising:

providing a graphical user interface comprising a first window and a second window;

in the first window, displaying a first circuit schematic for a first circuit;

creating a first netlist from the first circuit schematic;

automatically generating constraints for the first netlist, wherein the automatically generating constraints comprises:

providing a plurality of predefined patterns for a plurality of constraints,

reviewing the first netlist and identifying patterns in the first netlist that correspond to the predefined patterns associated with the constraints, and

when a predefined pattern is identified in the first netlist, using the constraint associated with that predefined pattern as one of the automatically generated constraints for the first netlist;

using the first netlist, generating a plurality of layouts for the first circuit based on the automatically generated constraints for the first netlist;

in the second window, displaying the plurality of layouts for the first circuit in the first window, wherein each layout is a complete implementation of the first circuit comprising internal routing;

generating a first layout of the plurality of layouts, wherein the first layout is rectangular and comprises an X length and Y width; and

generating a second layout of the plurality of layouts, wherein the second layout is rectangular and comprises an X length and Y width, and relative to the first layout, structures and a routing of the second layout are arranged in a mirror image of those for the first layout.

15. The method of claim 14 comprising:

generating a third layout of the plurality of layouts, wherein the third layout is rectangular and comprises Y length and X width.

16. The method of claim 15 comprising:

generating a fourth layout of the plurality of layouts, wherein the fourth layout is rectangular and comprises Y length and X width, and relative to the third layout, structures and a routing of the fourth layout are arranged in a mirror image of those for the third layout.

17. The method of claim 14 comprising:

allowing a user to select one of the plurality of layouts for the first circuit as a layout in an integrated circuit design comprising the first circuit.

18. The method of claim 17 wherein the mask comprises at least the layout of the plurality of layouts for the first circuit that was selected by the user.

19. The method of claim 17 wherein the integrated circuit formed comprises at least the layout of the plurality of layouts for the first circuit that was selected by the user.

20. The method of claim 14 wherein each layout comprises a transformation of the first circuit schematic into a layout for semiconductor manufacture via photolithography.

Continuity (2)
Continuation 15162458 · May 23, 2016
Provisional Application 62165102 · May 21, 2015