IP Library Granted Patent US 7,493,577
Granted Patent B2
US 7,493,577 · App. 11/002,576 · Granted Feb 17, 2009

Automatic recognition of geometric points in a target IC design for OPC mask quality calculation

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 7,493,577
App. No.
11/002,576
Granted
Feb 17, 2009
Kind
B2
Abstract

A method and system is provided for automatically recognizing geometric points of features in a target design for OPC mask quality calculation. For each feature in the target design, x, y points comprising the feature are traversed and each neighboring pair of points is connected to define respective segments, wherein a set of contiguous segments form a step if the x values of the segments/points all increase or decrease and the same is true for the y values. Physical characteristics of the segments of the respective features are determined by comparing lengths of the segments to one another and to threshold values. Locations of quality measuring points are then determined along particular ones of the segments based on the physical characteristics.

Claims (381)

1. A method for automatically recognizing geometric points of features in a target design for OPC mask quality calculation, comprising;

for each feature in the target design, traversing x, y points comprising the feature and connecting each neighboring pair of points to define respective segments, wherein a set of contiguous segments form a step if the x values of the segments/points all increase or decrease and the same is true for the y values;

determining physical characteristics of the segments of the respective features by comparing lengths of the segments to one another and to threshold values, wherein the threshold values comprise a first threshold value for identifying jog segments of a feature, a second threshold value for identifying short segments of a feature, a third threshold value for identifying long segments of a feature, and a fourth threshold value for measuring the length difference between segments;

determining locations of quality measuring points along particular ones of the segments based on the physical characteristics; and

outputting the quality measuring points into quality measuring groups, including a Critical Dimension (CD) group having CD points, an End-of-line (EOL) group having EOL points, and a Space group having points to measure spaces between features.

2. The method of claim 1 further including: traversing the x, y points with the assumption that every feature in the design is oriented clockwise, and defining a step as:

using segments S 1 =(a 1 , a 2 ), S 2 ,=(a 2 , a 3 ), . . . , S n =(a n , a n+1 ), where each point a i has the coordinates x i , y i , 1≦i≦n, a step is formed if:

1

x

i

+

1

-

x

1

=

1

x

i

+

1

-

x

1

and

1

y

i

+

1

-

y

1

=

1

y

i

+

1

-

y

1

.

3. A method for automatically recognizing geometric points of features in a target design for OPC mask quality calculation, the method comprising:

for each feature in the target design, traversing x, y points comprising the feature and connecting each neighboring pair of points to define respective segments, wherein a set of contiguous segments form a step if the x values of the segments/points all increase or decrease and the same is true for the y values;

wherein the x, y points are traversed with the assumption that every feature in the design is oriented clockwise, and wherein the step is defined as:

using segments S 1 =(a 1 , a 2 ), S 2 ,=(a 2 , a 3 ), . . . , S n =(a n , a n+1 ), where each point a i has the coordinates x i , y i , 1≦i≦n, the step is formed if:

1

x

i

+

1

-

x

1

=

1

x

i

+

1

-

x

1

and

1

y

i

+

1

-

y

1

=

1

y

i

+

1

-

y

1

;

determining physical characteristics of the segments of the respective features by comparing segment lengths to one another and to threshold values, including a first threshold value for identifying jog segments of a feature, a second threshold value for identifying short segments of a feature, a third threshold value for identifying long segments of a feature, and a fourth threshold value for measuring the length difference between segments;

determining locations of quality measuring points along particular ones of the segments based on the physical characteristics; and

outputting the quality measuring points into quality measuring groups, including a Critical Dimension (CD) group having CD points, an End-of-line (EOL) group having EOL points, and a Space group having points to measure spaces between features.

4. The method of claim 3 further including: allowing the threshold values to configurable by an operator.

5. The method of claim 4 further including: using the physical characteristics of each segment to identify a segment type and to label the segment with the corresponding labels.

6. The method of claim 5 wherein the labels identify JOG, SHORT, LONG, EOLS, and BackEOL segments.

7. The method of claim 6 wherein determining physical characteristics of the segments further includes:

examining all features that are rectangles and finding the points in the rectangle features to add to the quality measuring groups;

finding and labeling the JOGS and SHORT segments;

finding and labeling the EOLS and BackEOL segments;

finding and labeling the LONG segments; and

finding Space points for the Space quality group by:

processing segments neighboring the EOL segments,

processing segments neighboring the BackEOL segments, and

processing segments neighboring the LONG segments.

8. The method of claim 7 further including the step of: defining an EOL segment as:

a segment S is the EOL if:

a) the length of segment is greater than JOGV, and less than SHORTV,

b) the first predecessor segment has a length greater than JOGV and the first successor segments has a length greater than JOGV and are parallel and lie in a half-plane to the right of the segment (vector) S,

c) the sum of lengths of the predecessors that form the step is greater than LONGV,

d) the sum of lengths of the successors that form the step is greater than LONGV.

9. The method of claim 7 further including the step of: defining a BackEOL segment as:

a segment S is the BackEOL if:

a) the length of segment is greater than JOGV, and less than SHORTV

b) the first predecessor segment has a length greater than JOGV and the first successor segments has a length is greater than JOGV and are parallel and lie in half-plane to the left of the segment (vector) S,

c) the sum of lengths of the predecessors that form the step is greater than LONGV,

d) the sum of lengths of the successors that form the step is greater than LONGV.

10. The method of claim 7 further including the step of: defining an R-Neighbor as:

an R-Neighbor of segment S on a radius R is segment from the design, such that the distances between it and S is less than value R.

11. The method of claim 7 further including the step of: defining a Projection as:

a projection of segment S 1 on segment S 2 will be a segment where a starting point of the segment is: a projection of the starting point of the S 1 on a line which contains S 2 if the projection lies within S 2 or

a closest end of S 2 if the projection lies out of segment S 2

a projection of a end point of S 1 on a line which contains S 2 if the projection lies within S 2 or

a closest end of S 2 if the projection lies out of segment S 2 .

12. An OPC quality measuring system, comprising:

a target design in an electronic format that represents individual features as a set of x, y points; and

a quality checking software application executing on processor for analyzing the target design by,

for each feature in the target design, traversing x, y points comprising the feature and connecting each neighboring pair of points to define respective segments, wherein a set of contiguous segments form a step if the x values of the segments/points all increase or decrease and the same is true for the y values;

determining physical characteristics of the segments of the respective features by comparing lengths of the segments to one another and to threshold values, wherein the threshold values comprise a first threshold value for identifying jog segments of a feature, a second threshold value for identifying short segments of a feature, a third threshold value for identifying long segments of a feature, and a fourth threshold value for measuring the length difference between segments; and

determining locations of quality measuring points along particular ones of the segments based on the physical characteristics; and

outputting the quality measuring points into quality measuring groups, including a Critical Dimension (CD) group having CD points, an End-of-line (EOL) group having EOL points, and a Space group having points to measure spaces between features.

13. The system of claim 12 wherein: traversing the x, y points with the assumption that every feature in the design is oriented clockwise, and defining a step as:

using segments S 1 =(a 1 , a 2 ), S 2 ,=(a 2 , a 3 ), . . . , S n =(a n , a n+1 ), where each point a i has the coordinates x i , y i , 1≦i≦n, a step is formed if:

1

x

i

+

1

-

x

1

=

1

x

i

+

1

-

x

1

and

1

y

i

+

1

-

y

1

=

1

y

i

+

1

-

y

1

.

14. An OPC quality measuring system comprising:

a target design in an electronic format that represents individual features as a set of x, y points; and

a quality checking software application executing on processor for analyzing the target design by,

for each feature in the target design, traversing x, y points comprising the feature and connecting each neighboring pair of points to define respective segments, wherein a set of contiguous segments form a step if the x values of the segments/points all increase or decrease and the same is true for the y values;

wherein the x, y points are traversed with the assumption that every feature in the design is oriented clockwise, and wherein the step is defined as:

using segments S 1 =(a 1 , a 2 ), S 2 ,=(a 2 , a 3 ), . . . , S n =(a n , a n+1 ), where each point a i has the coordinates x i , y i , 1≦i≦n, the step is formed if:

1

x

i

+

1

-

x

1

=

1

x

i

+

1

-

x

1

and

1

y

i

+

1

-

y

1

=

1

y

i

+

1

-

y

1

;

determining physical characteristics of the segments of the respective features by comparing segment lengths to one another and to threshold values, including a first threshold value for identifying jog segments of a feature, a second threshold value for identifying short segments of a feature, a third threshold value for identifying long segments of a feature, and a fourth threshold value for measuring the length difference between segments;

determining locations of quality measuring points along particular ones of the segments based on the physical characteristics; and

outputting the quality measuring points into quality measuring groups, including a Critical Dimension (CD) group having CD points, an End-of-line (EOL) group having EOL points, and a Space group having points to measure spaces between features.

15. The system of claim 14 wherein: allowing the threshold values to configurable by an operator.

16. The system of claim 15 wherein: using the physical characteristics of each segment to identify a segment type and to label the segment with the corresponding labels.

17. The system of claim 16 wherein the labels identify JOG, SHORT, LONG, EOLS, and BackEOL segments.

18. The system of claim 17 wherein determining physical characteristics of the segments further includes:

examining all features that are rectangles and finding the points in the rectangle features to add to the quality measuring groups;

finding and labeling the JOGS and SHORT segments;

finding and labeling the EOLS and BackEOL segments;

finding and labeling the LONG segments; and

finding Space points for the Space quality group by:

processing segments neighboring the EOL segments,

processing segments neighboring the BackEOL segments, and

processing segments neighboring the LONG segments,

19. The system of claim 17 wherein the step of: defining an EOL segment as:

a segment S is the EOL if:

a) the length of segment is greater than JOGV, and less than SHORTV,

b) the first predecessor segment has a length greater than JOGV and the first successor segments has a length greater than JOGV and are parallel and lie in a half-plane to the right of the segment (vector) S,

c) the sum of lengths of the predecessors that form the step is greater than LONGV,

d) the sum of lengths of the successors that form the step is greater than LONGV.

20. The system of claim 17 wherein the step of: defining a BackEOL segment as:

a segment S is the BackEOL if:

a) the length of segment is greater than JOGV, and less than SHORTV,

b) the first predecessor segment has a length greater than JOGV and the first successor segments has a length is greater than JOGV and are parallel and lie in half-plane to the left of the segment (vector) S,

c) the sum of lengths of the predecessors that form the step is greater than LONGV,

d) the sum of lengths of the successors that form the step is greater than LONGV.

21. The system of claim 17 wherein the step of: defining an R-Neighbor as:

an R-Neighbor of segment S on a radius R is segment from the design such that the distances between it and S is less than value R.

22. The system of claim 17 wherein the step of: defining a Projection as:

a projection of segment S 1 on segment S 2 will be a segment where a starting point of the segment is: a projection of the starting point of the S 1 on a line which contains S 2 if the projection lies within S 2 or

a closest end of S 2 if the projection lies out of segment S 2

a projection of a end point of S 1 on a line which contains S 2 if the projection lies within S 2 or

a closest end of S 2 if the projection lies out of segment S 2 .

23. A computer-readable medium containing program instructions for automatically recognizing geometric points of features in a target design for OPC mask quality calculation, the program instructions for:

for each feature in the target design, traversing x, y points comprising the feature and connecting each neighboring pair of points to define respective segments, wherein a set of contiguous segments form a step if the x values of the segments/points all increase or decrease and the same is true for the y values;

wherein the x, y points are traversed with the assumption that every feature in the design is oriented clockwise, and wherein the step is defined as:

using segments S 1 =(a 1 , a 2 ), S 2 ,=(a 2 , a 3 ) , . . . , S n =(a n , a n+1 ), where each point a i has the coordinates x i , y i , 1≦i≦n, the step is formed if:

1

x

i

+

1

-

x

1

=

1

x

i

+

1

-

x

1

and

1

y

i

+

1

-

y

1

=

1

y

i

+

1

-

y

1

;

determining physical characteristics of the segments of the respective features by comparing segment lengths to one another and to threshold values, including a first threshold value for identifying jog segments of a feature, a second threshold value for identifying short segments of a feature, a third threshold value for identifying long segments of a feature, and a fourth threshold value for measuring the length difference between segments;

determining locations of quality measuring points along particular ones of the segments based on the physical characteristics; and

outputting the quality measuring points into quality measuring groups, including a Critical Dimension (CD) group having CD points, an End-of-line (EOL) group having EOL points, and a Space group having points to measure spaces between features.

Assignments (11)
RELEASE OF SECURITY INTEREST Recorded Apr 15, 2022
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: HILCO PATENT ACQUISITION 56, LLC; BELL SEMICONDUCTOR, LLC; BELL NORTHERN RESEARCH, LLC
Reel/Frame 059720/0223 →
SECURITY INTEREST Recorded Feb 1, 2018
From: HILCO PATENT ACQUISITION 56, LLC; BELL SEMICONDUCTOR, LLC; BELL NORTHERN RESEARCH, LLC
To: CORTLAND CAPITAL MARKET SERVICES LLC, AS COLLATERAL AGENT
Reel/Frame 045216/0020 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2017
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.; BROADCOM CORPORATION
To: BELL SEMICONDUCTOR, LLC
Reel/Frame 044887/0109 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041710/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037808/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 3, 2015
From: LSI CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 035390/0388 →
CHANGE OF NAME Recorded Jun 6, 2014
From: LSI LOGIC CORPORATION
To: LSI CORPORATION
Reel/Frame 033102/0270 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →
MERGER Recorded Feb 19, 2008
From: LSI SUBSIDIARY CORP.
To: LSI CORPORATION
Reel/Frame 020548/0977 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 1, 2004
From: RODIN, SERGEI; ALESHIN, STANISLAV V.; GOLUBTSOV, ILYA
To: LSI LOGIC CORPORATION
Reel/Frame 016049/0121 →