IP Library Granted Patent US 10,895,864
Granted Patent B2
US 10,895,864 · App. 16/413,686 · Granted Jan 19, 2021

Fabric-independent multi-patterning

Inventor: Fedor G. Pikus (Beaverton, OR)
Assignee: Mentor Graphics Corporation
G05B19/4097G03F7/705G05B2219/45026G06F2111/20G06F2119/18
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 10,895,864
App. No.
16/413,686
Granted
Jan 19, 2021
Kind
B2
Abstract

Disclosed systems and methods may support fabric-independent multi-patterning. A system may include a coloring constraint access engine and a fabric-independent multi-patterning engine. The coloring constraint access engine may be configured to access a set of coloring constraints to apply to geometric elements of a circuit design without accessing a fabric layer that defines a layout of the geometric elements of the circuit design, the set of coloring constraints applicable to multi-patterning the geometric elements of the circuit design to support manufacture of circuit layers using multiple manufacturing steps (e.g., via complementary lithographic masks). The fabric-independent multi-patterning engine may be configured to perform, independent of the fabric layer, a pattern coloring process according to the set of coloring constraints to determine a color assignment for the geometric elements, respectively.

Claims (45)

1. A method executed by a computing system, the method comprising:

accessing a set of coloring constraints to apply to geometric elements of a circuit design without accessing a fabric layer that defines a layout of the geometric elements of the circuit design, the set of coloring constraints applicable to multi-patterning the geometric elements of the circuit design to support manufacture of circuit layers using multiple manufacturing steps; and

performing, independent of the fabric layer, a pattern coloring process according to the set of coloring constraints to determine a color assignment for each geometric element of the geometric elements of the circuit design.

2. The method of claim 1 , wherein, for a given coloring constraint in the set of coloring constraints:

the given coloring constraint includes one or more geometric identifiers to apply the given coloring constraint to; and

each geometric identifier of the one or more geometric identifiers corresponds to a respective geometric element in the circuit design.

3. The method of claim 2 , wherein the performing the pattern coloring process independent of the fabric layer comprises constructing a multi-patterning graph from the set of coloring constraints, including by:

representing a given geometric identifier with a given node in the multi-patterning graph;

creating an edge between the given node mapped for the given geometric identifier and a different node mapped to another geometric identifier, the given node and the different node constrained together by a particular coloring constraint in the set of coloring constraints; and

specifying the particular coloring constraint as an edge attribute of the edge.

4. The method of claim 3 , wherein the performing the pattern coloring process independent of the fabric layer comprises determining a respective color assignment for each node in the multi-patterning graph.

5. The method of claim 4 , further comprising assigning the color assignment to each geometric element of the circuit design mapped to the geometric identifiers represented by the nodes of the multi-patterning graph.

6. The method of claim 2 , further comprising mapping geometric elements of the circuit design to the one or more geometric identifiers, respectively, such that each geometric identifier of the one or more geometric identifiers comprises one or more values that, each individually or together in combination, uniquely identify a given geometric element in the circuit design.

7. The method of claim 1 , wherein a given coloring constraint in the set of coloring constraints violates a geometric limitation of the fabric layer; and

wherein the performing the pattern coloring process independent of the fabric layer comprises determining color assignments for geometric elements of the circuit design based on the given coloring constraint without accounting for the given coloring constraint violating the geometric limitation.

8. A non-transitory computer-readable medium storing instructions that, when executed by a processor, cause a computing system to:

access a set of coloring constraints to apply to geometric elements of a circuit design without accessing a fabric layer that defines a layout of the geometric elements of the circuit design, the set of coloring constraints applicable to multi-patterning the geometric elements of the circuit design to support manufacture of circuit layers using multiple manufacturing steps; and

perform, independent of the fabric layer, a pattern coloring process according to the set of coloring constraints to determine a color assignment for each geometric element of the geometric elements of the circuit design.

9. The non-transitory computer-readable medium of claim 8 , wherein for a given coloring constraint in the set of coloring constraints:

the given coloring constraint includes one or more geometric identifiers to apply the given coloring constraint to; and

each geometric identifier of the one or more geometric identifiers corresponds to a respective geometric element in the circuit design.

10. The non-transitory computer-readable medium of claim 9 , wherein the instructions, when executed, cause the computing system to perform the pattern coloring process independent of the fabric layer by constructing a multi-patterning graph from the set of coloring constraints, including by:

representing a given geometric identifier with a given node in the multi-patterning graph;

creating an edge between the given node mapped for the given geometric identifier and a different node mapped to another geometric identifier, the given node and the different node constrained together by a particular coloring constraint in the set of coloring constraints; and

specifying the particular coloring constraint as an edge attribute of the edge.

11. The non-transitory computer-readable medium of claim 10 , wherein the instructions, when executed, cause the computing system to perform the pattern coloring process independent of the fabric layer by determining a respective color assignment for each node in the multi-patterning graph.

12. The non-transitory machine-readable medium of claim 11 , wherein the instructions, when executed, further cause the computing system to assign the color assignment to each geometric element of the circuit design mapped to the geometric identifiers represented by the nodes of the multi-patterning graph.

13. The non-transitory computer-readable medium of claim 9 , wherein the instructions, when executed, further cause the computing system to map geometric elements of the circuit design to the one or more geometric identifiers, respectively, such that each geometric identifier of the one or more geometric identifiers comprises one or more values that, each individually or together in combination, uniquely identify a given geometric element in the circuit design.

14. The non-transitory computer-readable medium of claim 8 , wherein a given coloring constraint in the set of coloring constraints violates a geometric limitation of the fabric layer; and

wherein the instructions, when executed, cause the computing system to perform the pattern coloring process independent of the fabric layer by determining color assignments for geometric elements of the circuit design based on the given coloring constraint without accounting for the given coloring constraint violating the geometric limitation.

15. A system comprising:

a coloring constraint access engine configured to access a set of coloring constraints to apply to geometric elements of a circuit design without accessing a fabric layer that defines a layout of the geometric elements of the circuit design, the set of coloring constraints applicable to multi-patterning the geometric elements of the circuit design to support manufacture of circuit layers using multiple manufacturing steps; and

a fabric-independent multi-patterning engine configured to perform, independent of the fabric layer, a pattern coloring process according to the set of coloring constraints to determine a color assignment for each geometric element of the geometric elements of the circuit design.

16. The system of claim 15 , wherein, for a given coloring constraint in the set of coloring constraints:

the given coloring constraint includes one or more geometric identifiers to apply the given coloring constraint to; and

each geometric identifier of the one or more geometric identifiers corresponds to a respective geometric element in the circuit design.

17. The system of claim 16 , wherein the fabric-independent multi-patterning engine is configured to perform the pattern coloring process independent of the fabric layer by constructing a multi-patterning graph from the set of coloring constraints, including by:

representing a given geometric identifier with a given node in the multi-patterning graph;

creating an edge between the given node mapped for the given geometric identifier and a different node mapped to another geometric identifier, the given node and the different node constrained together by a particular coloring constraint in the set of coloring constraints; and

specifying the particular coloring constraint as an edge attribute of the edge.

18. The system of claim 17 , wherein the fabric-independent multi-patterning engine is configured to perform the pattern coloring process independent of the fabric layer by determining a respective color assignment for each node in the multi-patterning graph; and

wherein the fabric-independent multi-patterning engine is further configured to assign the color assignment to each geometric element of the circuit design mapped to the geometric identifiers represented by the nodes of the multi-patterning graph.

19. The system of claim 16 , wherein the fabric-independent multi-patterning engine is further configured to map geometric elements of the circuit design to the one or more geometric identifiers, respectively, such that each geometric identifier of the one or more geometric identifiers comprises one or more values that, each individually or together in combination, uniquely identify a given geometric element in the circuit design.

20. The system of claim 15 , wherein a given coloring constraint in the set of coloring constraints violates a geometric limitation of the fabric layer; and

wherein the fabric-independent multi-patterning engine is configured to perform the pattern coloring process independent of the fabric layer by determining color assignments for geometric elements of the circuit design based on the given coloring constraint without accounting for the given coloring constraint violating the geometric limitation.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Jun 29, 2021
From: MENTOR GRAPHICS CORPORATION; SIEMENS INDUSTRY SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 056713/0076 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2019
From: PIKUS, FEDOR G.
To: MENTOR GRAPHICS CORPORATION
Reel/Frame 049195/0033 →