A mask layout adjusting method and device

CN122219013BActive Publication Date: 2026-08-28HUAXINCHENG (HANGZHOU) TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610679731.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-05-18
Publication Date
2026-08-28
Estimated Expiration
2046-05-18

AI Technical Summary

Technical Problem

[0005]本发明的目的是提供一种掩膜版图调整方法及装置,以解决现有技术中依照MRC对后OPC版图进行修正会导致后续生产中金属图形与下方的通孔结构断连的问题

Benefits of technology

[0059] When processing edge groups that violate MRC (Mean Correction Code), this invention first determines whether there are contact vias in the direction of each edge toward the inside of the pattern, then determines the distance between the edge and the contact via (i.e., the first distance), and then determines the position adjustment amount of the edge based on the first distance. This minimizes the possibility of subsequent processes causing a break in the connection between the metal pattern and the conductive via due to an excessively small distance between the edge of the edge group and the contact via. This achieves the goal of minimizing damage to the coverage of the contact via by the metal layer after OPC (Optical Processing) without violating MRC, significantly improving product yield and reducing process costs. This invention also provides a mask pattern adjustment device with the above-mentioned beneficial effects.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122219013B_ABST
    Figure CN122219013B_ABST
Patent Text Reader

Abstract

The present application relates to the field of integrated circuit production, in particular to a mask layout adjustment method and device, which receives a post-OPC layout; performs mask rule checking on the post-OPC layout to determine an edge group to be checked; measures a first distance from an edge in the edge group to be checked, which exists in a contact via in a direction towards an inside of a pattern, to the corresponding contact via, and judges whether the first distance exceeds a preset adjustment allowable threshold; when the first distance exceeds the preset adjustment allowable threshold, marks the corresponding edge as a movable edge; when the first distance does not exceed the preset adjustment allowable threshold, marks the corresponding edge as a risk edge; and adjusts the position of the edge in the edge group to be checked according to a difference between a minimum line spacing in the mask rule checking and an actual measured spacing corresponding to the edge group to be checked. The present application realizes the maximum non-destruction of the coverage of the metal layer to the contact via after the end of the OPC without violating the MRC, greatly improves the yield of finished products, and reduces the process cost.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of integrated circuit manufacturing, and in particular to a method and apparatus for adjusting mask layout. Background Technology

[0002] In semiconductor manufacturing, OPC (Optical Proximity Correction) correction verification, which compares the differences between the simulated profile and the target pattern, is an essential step. Using optical proximity correction can ensure that the design pattern can be accurately transferred to the wafer surface during the photolithography process. The design pattern after OPC processing is generally called the post-OPC layout.

[0003] However, before being sent to the mask manufacturing plant, the post-OPC layout needs to undergo mask rule checking (MRC) to ensure that all patterns conform to the mask fabrication process. When a pattern in the post-OPC layout is detected to violate the MRC, the post-OPC layout needs to be adjusted. However, for metal layers, in addition to ensuring the shape and size of the pattern itself, it is also necessary to maintain a stable contact electrical connection with the via structure (or contact layer) of the next layer. Therefore, the coverage of the via structure by the adjusted pattern needs to be considered. In the prior art, the adjustment method for the post-OPC layout is usually to move the edges that violate the MRC to the MRC-compliant positions in the direct opposite direction of the detection. This results in the line width and spacing conforming to the MRC after the movement, but the pattern cannot completely cover the via structure below, leading to an open circuit between the metal layer and the underlying metal via in the manufactured integrated circuit, reducing the device yield.

[0004] Therefore, how to ensure that errors detected by MRC are corrected while avoiding the disconnection between the metal layer and the next through-hole structure is a problem that urgently needs to be solved by those skilled in the art. Summary of the Invention

[0005] The purpose of this invention is to provide a mask layout adjustment method and apparatus to solve the problem in the prior art that modifying the subsequent OPC layout according to MRC will cause the metal pattern to be disconnected from the underlying through-hole structure in subsequent production.

[0006] To solve the above-mentioned technical problems, the present invention provides a mask layout adjustment method, comprising:

[0007] OPC layout after reception;

[0008] Perform a mask rule check on the post-OPC layout to determine the edge group to be checked; the edge group to be checked is a group of edges that violates the minimum line spacing in the mask rule check, and at least one edge in the edge group to be checked has a contact via in the direction toward the inside of the pattern;

[0009] Measure the first distance from the edge with a contact hole in the direction of the inside of the graphic in the edge group to be checked to the corresponding contact hole, and determine whether the first distance exceeds a preset adjustment allowable threshold.

[0010] When the first distance exceeds the preset adjustment tolerance threshold, the corresponding edge is marked as a movable edge; when the first distance does not exceed the preset adjustment tolerance threshold, the corresponding edge is marked as a risk edge.

[0011] Based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked, the positions of the edges in the edge group to be checked are adjusted; wherein, when the edge group to be checked includes one movable edge and one risk edge, the risk edge remains stationary, and only the position of the movable edge is adjusted; when the edge group to be checked includes two risk edges, the position adjustment amount of the risk edge with the larger first distance is greater than the position adjustment amount of the risk edge with the smaller first distance.

[0012] Optionally, in the mask layout adjustment method, the method for determining the adjustment tolerance threshold includes:

[0013] Obtain the minimum allowable distance from the edge to the contact via;

[0014] The product of the minimum allowable distance and the preset magnification factor is used as the adjustment tolerance threshold.

[0015] Optionally, in the mask layout adjustment method, the adjustment tolerance threshold is the minimum allowable distance from the edge to the contact via.

[0016] Accordingly, based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked, the positions of the edges in the edge group to be checked are adjusted, including:

[0017] Based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked, the position of the edge in the edge group to be checked is adjusted; wherein, when the edge group to be checked includes a movable edge and a risk edge, the risk edge is not moved, only the movable edge is moved, and the first distance corresponding to the movable edge cannot be less than the adjustment allowable threshold.

[0018] Optionally, in the mask layout adjustment method, after determining the edge group to be checked, the method further includes:

[0019] The edge marked as movable is the one where there is no contact hole in the direction towards the inside of the graphic.

[0020] Optionally, in the mask layout adjustment method, when the group of edges to be checked includes two risky edges, the two risky edges are referred to as the first risky edge and the second risky edge, and the position adjustment amount of the first risky edge is determined by the following formula:

[0021] Move1=(min_space-space)*a1 / (a1+a2);

[0022] Where Move1 is the position adjustment amount of the first risk edge, min_space is the minimum line spacing in the mask rule check, space is the actual line spacing corresponding to the edge group to be checked, a1 is the first distance corresponding to the first risk edge, and a2 is the first distance corresponding to the second risk edge.

[0023] The adjustment amount for the position of the second risk edge is determined by the following formula:

[0024] Move2=(min_space-space)*a2 / (a1+a2);

[0025] Where Move2 is the position adjustment amount of the second risk edge, min_space is the minimum line spacing in the mask rule check, space is the actual line spacing corresponding to the edge group to be checked, a1 is the first distance corresponding to the first risk edge, and a2 is the first distance corresponding to the second risk edge.

[0026] Optionally, in the mask layout adjustment method, after receiving the OPC layout, the method further includes:

[0027] The post-OPC layout is subjected to a mask rule check to determine the diagonals to be checked. The diagonals to be checked are a set of corners that violate the minimum spacing between corners in the mask rule check, and at least one of the diagonals to be checked has a contact via in the direction towards the inside of the pattern. The diagonals to be checked include a set of opposite edges in the x-axis direction and a set of opposite edges in the y-axis direction.

[0028] Measure the second distance from the edge of the diagonal to be checked that has a contact hole in the direction towards the inside of the pattern to the corresponding contact hole, and determine whether the second distance exceeds a preset adjustment allowable threshold.

[0029] When the second distance exceeds the preset adjustment tolerance threshold, the corresponding edge is marked as a movable edge; when the second distance does not exceed the preset adjustment tolerance threshold, the corresponding edge is marked as a risk edge.

[0030] Based on the difference between the minimum spacing between corners in the mask rule check and the actual measured corner spacing corresponding to the edge group to be checked, the position of the edge in the diagonal to be checked is adjusted; wherein, when one corner of the diagonal to be checked includes the risk edge and the other corner does not include the risk edge, the corner including the risk edge remains unchanged, and only the position of the edge of the corner not including the risk edge is adjusted; when both corners of the diagonal to be checked include risk edges, the position adjustment amount of the corner with the larger second distance of the included risk edge is greater than the position adjustment amount of the corner with the smaller second distance of the included risk edge.

[0031] Optionally, in the mask layout adjustment method, when one corner of the diagonal to be checked includes the risk edge, the method for determining the position adjustment amount of the edge of the corner excluding the risk edge includes:

[0032] The position adjustment amount of the opposite edge in the x-axis direction of the corner excluding the risk edge is determined by the following formula:

[0033] Move_c2c_x=(min_c2c_space-c2c_space)*cosα;

[0034] Where Move_c2c_x is the position adjustment amount of the opposite side in the x-axis direction of the corner excluding the risk side, min_c2c_space is the minimum distance between the corners, c2c_space is the actual measured corner distance, and α is the angle between the line connecting the corners of the opposite corner to be checked and the x-axis direction.

[0035] The position adjustment amount of the opposite edge in the y-axis direction of the corner excluding the risk edge is determined by the following formula:

[0036] Move_c2c_y=(min_c2c_space-c2c_space)*sinα;

[0037] Where Move_c2c_y is the position adjustment amount of the opposite side in the y-axis direction of the corner excluding the risk side, min_c2c_space is the minimum spacing between the corners, c2c_space is the actual measured corner spacing, and α is the angle between the line connecting the corners to be checked and the x-axis direction.

[0038] Optionally, in the mask layout adjustment method, when both corners of the diagonal to be checked include the risk edge, the method for determining the position adjustment amount of the four edges in the diagonal to be checked includes:

[0039] The two opposite sides of the diagonal to be checked along the x-axis are the first x-axis opposite side and the second x-axis opposite side, respectively; the position adjustment amount of the first x-axis opposite side and the second x-axis opposite side is determined by the following formula:

[0040] Move_c2c_x1=[(min_c2c_space-c2c_space)*cosα]*a3 / (a3+a4);

[0041] Move_c2c_x2=[(min_c2c_space-c2c_space)*cosα]*a4 / (a3+a4);

[0042] Where Move_c2c_x1 is the position adjustment amount of the first x-axis opposite side, Move_c2c_x2 is the position adjustment amount of the second x-axis opposite side, min_c2c_space is the minimum distance between corners, c2c_space is the actual measured corner distance, α is the angle between the line connecting the corners to be checked and the x-axis direction, a3 is the second distance of the first x-axis opposite side, and a4 is the second distance of the second x-axis opposite side;

[0043] The two opposite sides of the diagonal to be checked along the y-axis are the first y-axis opposite side and the second y-axis opposite side, respectively; the position adjustment amount of the first y-axis opposite side and the second y-axis opposite side is determined by the following formula:

[0044] Move_c2c_y1=[(min_c2c_space-c2c_space)*sinα]*a5(a5+a6);

[0045] Move_c2c_y2=[(min_c2c_space-c2c_space)*sinα]*a6 / (a5+a6);

[0046] Where Move_c2c_y1 is the position adjustment amount of the first y-axis opposite side, Move_c2c_y2 is the position adjustment amount of the second y-axis opposite side, min_c2c_space is the minimum distance between the corners, c2c_space is the actual measured corner distance, α is the angle between the line connecting the corners to be checked and the x-axis direction, a5 is the second distance of the first y-axis opposite side, and a6 is the second distance of the second y-axis opposite side.

[0047] A mask layout adjustment device, comprising:

[0048] The receiving module is used to receive the OPC layout.

[0049] The inspection module is used to perform mask rule checks on the post-OPC layout to determine the edge group to be checked; the edge group to be checked is a group of edges that violates the minimum line spacing in the mask rule check, and at least one edge in the edge group to be checked has a contact via in the direction towards the inside of the graphic;

[0050] The measurement module is used to measure the first distance from the edge with a contact hole in the direction of the inside of the graphic in the edge group to be checked to the corresponding contact hole, and to determine whether the first distance exceeds a preset adjustment allowable threshold.

[0051] The marking module is used to mark the corresponding edge as a movable edge when the first distance exceeds a preset adjustment tolerance threshold, and to mark the corresponding edge as a risk edge when the first distance does not exceed the preset adjustment tolerance threshold.

[0052] The adjustment module is used to adjust the position of the edges in the edge group to be checked based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked; wherein, when the edge group to be checked includes one movable edge and one risk edge, the risk edge remains stationary, and only the position of the movable edge is adjusted; when the edge group to be checked includes two risk edges, the position adjustment amount of the risk edge with the larger first distance is greater than the position adjustment amount of the risk edge with the smaller first distance.

[0053] Optionally, in the aforementioned mask layout adjustment device, the receiving module further includes:

[0054] The diagonal checking unit is used to perform mask rule checks on the post-OPC layout to determine the diagonals to be checked. The diagonals to be checked are a set of corners that violate the minimum spacing between corners in the mask rule check, and at least one of the diagonals to be checked has a contact via in the direction towards the inside of the pattern. The diagonals to be checked include a set of opposite edges in the x-axis direction and a set of opposite edges in the y-axis direction.

[0055] The diagonal measurement unit is used to measure the second distance from the edge of the diagonal to be checked that has a contact hole in the direction towards the inside of the pattern to the corresponding contact hole, and to determine whether the second distance exceeds a preset adjustment allowable threshold.

[0056] The diagonal marking unit is used to mark the corresponding edge as a movable edge when the second distance exceeds a preset adjustment tolerance threshold, and to mark the corresponding edge as a risk edge when the second distance does not exceed the preset adjustment tolerance threshold.

[0057] The diagonal adjustment unit is used to adjust the position of the edges in the diagonal to be checked based on the difference between the minimum spacing between corners checked in the mask rules and the actual measured corner spacing corresponding to the edge group to be checked; wherein, when one corner of the diagonal to be checked includes the risk edge and the other corner does not include the risk edge, the corner including the risk edge remains unchanged, and only the position of the edge of the corner not including the risk edge is adjusted; when both corners of the diagonal to be checked include risk edges, the position adjustment amount of the corner with the larger second distance of the included risk edge is greater than the position adjustment amount of the corner with the smaller second distance of the included risk edge.

[0058] The mask layout adjustment method provided by this invention involves receiving a post-OPC layout; performing a mask rule check on the post-OPC layout to determine a group of edges to be checked; the group of edges to be checked is a group of edges that violates the minimum line spacing in the mask rule check, and at least one edge in the group of edges to be checked has a contact via in the direction towards the inside of the pattern; measuring a first distance from the edge in the group of edges to be checked with a contact via in the direction towards the inside of the pattern to the corresponding contact via, and determining whether the first distance exceeds a preset adjustment tolerance threshold; when the first distance exceeds the preset adjustment tolerance threshold, The marked edge is a movable edge; when the first distance does not exceed the preset adjustment tolerance threshold, the marked edge is a risk edge; the position of the edge in the edge group to be checked is adjusted according to the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked; wherein, when the edge group to be checked includes one movable edge and one risk edge, the risk edge remains stationary, and only the position of the movable edge is adjusted; when the edge group to be checked includes two risk edges, the position adjustment amount of the risk edge with the larger first distance is greater than the position adjustment amount of the risk edge with the smaller first distance.

[0059] When processing edge groups that violate MRC (Mean Correction Code), this invention first determines whether there are contact vias in the direction of each edge toward the inside of the pattern, then determines the distance between the edge and the contact via (i.e., the first distance), and then determines the position adjustment amount of the edge based on the first distance. This minimizes the possibility of subsequent processes causing a break in the connection between the metal pattern and the conductive via due to an excessively small distance between the edge of the edge group and the contact via. This achieves the goal of minimizing damage to the coverage of the contact via by the metal layer after OPC (Optical Processing) without violating MRC, significantly improving product yield and reducing process costs. This invention also provides a mask pattern adjustment device with the above-mentioned beneficial effects. Attached Figure Description

[0060] To more clearly illustrate the technical solutions of the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0061] Figure 1 A flowchart illustrating a specific embodiment of the mask layout adjustment method provided by the present invention;

[0062] Figure 2 A schematic diagram of the process structure of a specific embodiment of the mask layout adjustment method provided by the present invention;

[0063] Figure 3 A flowchart illustrating another specific embodiment of the mask layout adjustment method provided by the present invention;

[0064] Figure 4 A schematic diagram of the process structure of another specific embodiment of the mask layout adjustment method provided by the present invention;

[0065] Figure 5 This is a schematic diagram of a specific embodiment of the mask pattern adjustment device provided by the present invention.

[0066] Figure label:

[0067] 100 - Receiver module, 200 - Checker module, 300 - Measurement module, 400 - Marker module, 500 - Adjustment module. Detailed Implementation

[0068] To enable those skilled in the art to better understand the present invention, the invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. Obviously, the described embodiments are merely some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0069] The core of this invention is to provide a mask layout adjustment method, the flowchart of one specific embodiment of which is shown below. Figure 1 As shown, this is referred to as Specific Implementation Method One, which includes:

[0070] S101: OPC layout after reception.

[0071] The post-OPC layout is the mask layout after OPC correction.

[0072] S102: Perform a mask rule check on the post-OPC layout to determine the edge group to be checked; the edge group to be checked is a group of edges that violates the minimum line spacing in the mask rule check, and at least one edge in the edge group to be checked has a contact via in the direction toward the inside of the pattern.

[0073] In this invention, not every set of edges that violates the minimum line spacing in the Mask Rule Check (MRC) is judged as the edge group to be checked. Instead, only edge groups that do not meet the minimum line spacing and at least one edge has a contact hole in the direction towards the inside of the pattern are identified as the edge group to be checked. This is because no matter how the position of an edge without a contact hole is adjusted, it is impossible for it to break the connection with the contact hole below.

[0074] In addition, the "violation of the minimum line spacing in the mask rule check" in this step refers to the situation where the spacing between two adjacent edges belonging to different graphics is less than the preset minimum line spacing. In other words, the adjustment of the edge group to be checked by MRC is usually to shrink and push the edge of the edge group to be checked into the graphic. In this process, the graphic coverage area will be reduced, which may result in incomplete coverage of the contact via.

[0075] S103: Measure the first distance from the edge with a contact hole in the direction of the inside of the graphic in the edge group to be checked to the corresponding contact hole, and determine whether the first distance exceeds a preset adjustment allowable threshold.

[0076] In this step, the distance from each edge to the corresponding contact hole (i.e., the first distance) is collected. Of course, the larger the first distance, the greater the adjustment space. However, if the first distance is too small, or even does not exceed the adjustment tolerance threshold, it is preferable not to adjust the position of the corresponding edge.

[0077] Specifically, the method for determining the allowable adjustment threshold in this step includes:

[0078] A1: Obtain the minimum allowable distance from the edge to the contact via.

[0079] The minimum allowable distance refers to the minimum distance at which the metal pattern layer will not break the connection with the contact via below in subsequent processes. Theoretically, in order to ensure the yield of finished products, the distance from the edge of the metal pattern to the contact via should not be less than the minimum allowable distance.

[0080] A2: The product of the minimum allowable distance and the preset amplification factor is used as the adjustment allowable threshold.

[0081] The amplification factor is usually a preset value and is always greater than 1. The minimum allowable distance amplified by the amplification factor basically covers the adjustment range of MRC. That is, the adjustment range of the MRC for the edge position of the pattern will not exceed the difference between the adjustment allowable threshold and the minimum allowable distance, which is the product. This ensures that the edge position of the pattern of the edge group to be checked after the position adjustment by the MRC can still ensure that the metal pattern covers the contact through hole below, and prevents the metal pattern layer from being disconnected from the contact through hole in subsequent processes.

[0082] As another specific implementation, the adjustment tolerance threshold is the minimum allowable distance from the edge to the contact via;

[0083] Accordingly, based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked, the positions of the edges in the edge group to be checked are adjusted, including:

[0084] Based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked, the position of the edge in the edge group to be checked is adjusted; wherein, when the edge group to be checked includes a movable edge and a risk edge, the risk edge is not moved, only the movable edge is moved, and the first distance corresponding to the movable edge cannot be less than the adjustment allowable threshold.

[0085] In this specific embodiment, the minimum allowable distance is directly used as the adjustment threshold. In other words, the position of the edge where the first distance exceeds the minimum allowable distance can be adjusted, but the adjustment range is limited. The first distance cannot be made less than the minimum allowable distance, which can ensure the continuity of subsequent processes to the greatest extent and ensure the yield of finished products.

[0086] S104: When the first distance exceeds the preset adjustment tolerance threshold, the corresponding edge is marked as a movable edge; when the first distance does not exceed the preset adjustment tolerance threshold, the corresponding edge is marked as a risk edge.

[0087] Obviously, when conditions permit, adjusting the position of the movable edge should be given priority.

[0088] Preferably, after determining the edge group to be searched, the method further includes:

[0089] The edge marked as movable is the one where there is no contact hole in the direction towards the inside of the graphic.

[0090] Since it is not necessary for both sides of the edge group to be checked to have contact holes on their inner sides, this embodiment goes a step further and treats the side without the contact holes as the movable edge for priority and larger position adjustment.

[0091] S105: Based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked, adjust the position of the edge in the edge group to be checked; wherein, when the edge group to be checked includes one movable edge and one risk edge, the risk edge remains stationary, and only the position of the movable edge is adjusted; when the edge group to be checked includes two risk edges, the position adjustment amount of the risk edge with the larger first distance is greater than the position adjustment amount of the risk edge with the smaller first distance.

[0092] In this step, for the combination of risky edge and movable edge, the strategy of keeping the risky edge stationary and moving the movable edge is implemented to minimize the possibility that the metal pattern cannot completely cover the contact hole due to edge movement. On the other hand, when both edges are risky edges, the present invention adopts the strategy of adjusting the position of the edge that is farther away from the contact hole to a larger extent, which can also effectively reduce the possibility that the metal pattern and the contact hole will be disconnected in subsequent processes due to edge position movement.

[0093] As a specific implementation, when the edge group to be investigated includes two risk edges, the two risk edges are referred to as the first risk edge and the second risk edge, and the position adjustment amount of the first risk edge is determined by the following formula (1):

[0094] Move1=(min_space-space)*a1 / (a1+a2); (1)

[0095] Where Move1 is the position adjustment amount of the first risk edge, min_space is the minimum line spacing in the mask rule check, space is the actual line spacing corresponding to the edge group to be checked, a1 is the first distance corresponding to the first risk edge, a2 is the first distance corresponding to the second risk edge.

[0096] The position adjustment amount of the second risk edge is determined by the following formula (2):

[0097] Move2=(min_space-space)*a2 / (a1+a2); (2)

[0098] Where Move2 is the position adjustment amount of the second risk edge, min_space is the minimum line spacing in the mask rule check, space is the actual line spacing corresponding to the edge group to be checked, a1 is the first distance corresponding to the first risk edge, and a2 is the first distance corresponding to the second risk edge.

[0099] You can refer to this. Figure 2 , Figure 2This is a schematic diagram of a group of edge patterns to be checked. In this specific embodiment, the distance to be moved to achieve the MRC constraint condition is allocated according to the ratio of the distance from the first risk edge (represented by F1 in the figure) to the contact via covered by the second risk edge (represented by F2 in the figure) to the contact via covered by their respective patterns (i.e., the first distance). This allows for a more balanced simultaneous movement of the risk edges on both sides, reducing the possibility of the pattern corresponding to any risk edge being disconnected from the contact via in subsequent processes.

[0100] The mask layout adjustment method provided by this invention involves receiving a post-OPC layout; performing a mask rule check on the post-OPC layout to determine a group of edges to be checked; the group of edges to be checked is a group of edges that violates the minimum line spacing in the mask rule check, and at least one edge in the group of edges to be checked has a contact via in the direction towards the inside of the pattern; measuring a first distance from the edge in the group of edges to be checked with a contact via in the direction towards the inside of the pattern to the corresponding contact via, and determining whether the first distance exceeds a preset adjustment tolerance threshold; when the first distance exceeds the preset adjustment tolerance threshold, The marked edge is a movable edge; when the first distance does not exceed the preset adjustment tolerance threshold, the marked edge is a risk edge; the position of the edge in the edge group to be checked is adjusted according to the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked; wherein, when the edge group to be checked includes one movable edge and one risk edge, the risk edge remains stationary, and only the position of the movable edge is adjusted; when the edge group to be checked includes two risk edges, the position adjustment amount of the risk edge with the larger first distance is greater than the position adjustment amount of the risk edge with the smaller first distance. When processing edge groups that violate MRC, this invention first determines whether there are contact vias in the direction of each edge toward the inside of the pattern, then determines the distance between the edge and the contact via (i.e., the first distance), and then determines the position adjustment amount of the edge based on the first distance. This minimizes the possibility of the metal pattern and conductive via being disconnected in subsequent processes due to the distance between the edge of the edge group to the contact via being too small. This achieves the goal of minimizing the damage to the coverage of the contact via by the metal layer after OPC without violating MRC, greatly improving the yield of finished products and reducing process costs.

[0101] Based on Implementation Method 1, the scope of the mask rule check is further expanded to obtain Implementation Method 2, the corresponding flowchart of which is shown below. Figure 3 As shown, it includes:

[0102] S201: OPC layout after reception.

[0103] S202: Perform a mask rule check on the post-OPC layout to determine the diagonals to be checked; the diagonals to be checked are a set of corners that violate the minimum spacing between corners in the mask rule check, and at least one of the diagonals to be checked has a contact via in the direction toward the inside of the pattern; the diagonals to be checked include a set of opposite sides in the x-axis direction and a set of opposite sides in the y-axis direction.

[0104] Please refer to Figure 4 , Figure 4 A set of diagonals to be checked is presented, wherein there are two opposite corners, and each corner consists of two mutually perpendicular sides.

[0105] S203: Measure the second distance from the edge of the diagonal to be checked that has a contact hole in the direction towards the inside of the pattern to the corresponding contact hole, and determine whether the second distance exceeds a preset adjustment allowable threshold.

[0106] Since the diagonal to be checked consists of four sides, the relevant data for each diagonal to be checked should include four second distances, each second distance corresponding to one side.

[0107] S204: When the second distance exceeds the preset adjustment tolerance threshold, the corresponding edge is marked as a movable edge; when the second distance does not exceed the preset adjustment tolerance threshold, the corresponding edge is marked as a risk edge.

[0108] S205: Based on the difference between the minimum spacing between corners in the mask rule check and the actual measured corner spacing corresponding to the edge group to be checked, adjust the position of the edge in the diagonal to be checked; wherein, when one corner of the diagonal to be checked includes the risk edge and the other corner does not include the risk edge, the corner including the risk edge remains unchanged, and only the position of the edge of the corner not including the risk edge is adjusted; when both corners of the diagonal to be checked include risk edges, the position adjustment amount of the corner with the larger second distance of the included risk edge is greater than the position adjustment amount of the corner with the smaller second distance of the included risk edge.

[0109] The processing of the edge group to be checked can be referred to in Specific Implementation Method 1. The solution provided in this step is to keep the corners that include the risk edge as still as possible. If one corner includes the risk edge and the other does not, the corner that includes the risk edge is kept still, and the corner that does not include the risk edge is moved. This minimizes the possibility that the metal pattern cannot completely cover the contact via due to edge movement. On the other hand, when both corners include the risk edge, the present invention adopts the strategy of adjusting the position of the corner that is farther away from the contact via larger. This can also effectively reduce the possibility that the metal pattern and the contact via will be disconnected in subsequent processes due to edge position movement.

[0110] The difference between this specific implementation and the above specific implementation is that this specific implementation expands the scope of the mask rule check and adds a check for the diagonal. The remaining steps are the same as those in the above specific implementation and will not be described in detail here.

[0111] As one specific implementation, when one corner of the diagonal to be investigated includes the risk edge, the method for determining the position adjustment amount of the edge of the corner that does not include the risk edge includes:

[0112] The position adjustment of the opposite side in the x-axis direction of the corner excluding the risk side is determined by the following formula (3):

[0113] Move_c2c_x=(min_c2c_space-c2c_space)*cosα; (3)

[0114] Where Move_c2c_x is the position adjustment amount of the opposite side in the x-axis direction of the corner excluding the risk side, min_c2c_space is the minimum distance between the corners, c2c_space is the actual measured corner distance, and α is the angle between the line connecting the corners of the opposite corner to be checked and the x-axis direction.

[0115] The position adjustment of the opposite side in the y-axis direction of the corner excluding the risk side is determined by the following formula (4):

[0116] Move_c2c_y=(min_c2c_space-c2c_space)*sinα; (4)

[0117] Where Move_c2c_y is the position adjustment amount of the opposite side in the y-axis direction of the corner excluding the risk side, min_c2c_space is the minimum spacing between the corners, c2c_space is the actual measured corner spacing, and α is the angle between the line connecting the corners to be checked and the x-axis direction.

[0118] Since the diagonals to be checked are typically sloping corners with opposite apexes, this specific embodiment decomposes the adjustment of the distance in the direction of the line connecting the corners into the movement of the graphic edges along the x-axis and y-axis directions. Please refer to... Figure 4 Please understand that the actual measured corner distance is the straight-line distance between the two corners. Figure 4 , Figure 4 The symbol α is marked in the text.

[0119] As another specific implementation, when both corners of the diagonal to be checked include the risk edge, the method for determining the position adjustment amount of the four edges in the diagonal to be checked includes:

[0120] The two opposite sides of the diagonal to be checked in the x-axis direction are the first x-axis opposite side and the second x-axis opposite side, respectively; the position adjustment amount of the first x-axis opposite side and the second x-axis opposite side is determined by the following formulas (5) and (6):

[0121] Move_c2c_x1=[(min_c2c_space-c2c_space)*cosα]*a3 / (a3+a4); (5)

[0122] Move_c2c_x2=[(min_c2c_space-c2c_space)*cosα]*a4 / (a3+a4); (6)

[0123] Where Move_c2c_x1 is the position adjustment amount of the first x-axis opposite side, Move_c2c_x2 is the position adjustment amount of the second x-axis opposite side, min_c2c_space is the minimum distance between corners, c2c_space is the actual measured corner distance, α is the angle between the line connecting the corners to be checked and the x-axis direction, a3 is the second distance of the first x-axis opposite side, and a4 is the second distance of the second x-axis opposite side;

[0124] The two opposite sides of the diagonal to be checked in the y-axis direction are the first y-axis opposite side and the second y-axis opposite side, respectively; the position adjustment amount of the first y-axis opposite side and the second y-axis opposite side is determined by the following formulas (7) and (8):

[0125] Move_c2c_y1=[(min_c2c_space-c2c_space)*sinα]*a5 (a5+a6); (7)

[0126] Move_c2c_y2=[(min_c2c_space-c2c_space)*sinα]*a6 / (a5+a6); (8)

[0127] Where Move_c2c_y1 is the position adjustment amount of the first y-axis opposite side, Move_c2c_y2 is the position adjustment amount of the second y-axis opposite side, min_c2c_space is the minimum distance between the corners, c2c_space is the actual measured corner distance, α is the angle between the line connecting the corners to be checked and the x-axis direction, a5 is the second distance of the first y-axis opposite side, and a6 is the second distance of the second y-axis opposite side.

[0128] Please refer to Figure 4 ,exist Figure 4The first x-axis opposite side (represented by x1) and the second x-axis opposite side (represented by x2) are labeled, as are the first y-axis opposite side (represented by y1) and the second y-axis opposite side (represented by y2).

[0129] In this preferred embodiment, the movement distance of each risk edge is determined based on the distance from each edge of the corner to the corresponding contact via (i.e., the second distance). Specifically, based on the proportion of the first distance, the distance required to achieve the MRC constraint condition is allocated. The distance along the connecting line between the corners is decomposed into mutually perpendicular x-axis and y-axis directions, thereby moving the risk edges on both sides more evenly and reducing the possibility of the pattern corresponding to any risk edge being disconnected from the contact via in subsequent processes.

[0130] The mask layout adjustment device provided in the embodiments of the present invention will be described below. The mask layout adjustment device described below can be referred to in correspondence with the mask layout adjustment method described above.

[0131] Figure 5 This is a structural block diagram of the mask pattern adjustment device provided in an embodiment of the present invention, with reference to... Figure 5 The mask layout adjustment device may include:

[0132] Receiver module 100 is used to receive the OPC layout;

[0133] The inspection module 200 is used to perform mask rule checks on the post-OPC layout to determine the edge group to be checked; the edge group to be checked is a group of edges that violates the minimum line spacing in the mask rule check, and at least one edge in the edge group to be checked has a contact via in the direction toward the inside of the graphic;

[0134] The measurement module 300 is used to measure the first distance from the edge with a contact hole in the direction of the inside of the graphic in the edge group to be checked to the corresponding contact hole, and to determine whether the first distance exceeds a preset adjustment allowable threshold.

[0135] The marking module 400 is used to mark the corresponding edge as a movable edge when the first distance exceeds a preset adjustment tolerance threshold, and to mark the corresponding edge as a risk edge when the first distance does not exceed the preset adjustment tolerance threshold.

[0136] The adjustment module 500 is used to adjust the position of the edge in the edge group to be checked based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked; wherein, when the edge group to be checked includes one movable edge and one risk edge, the risk edge remains stationary, and only the position of the movable edge is adjusted; when the edge group to be checked includes two risk edges, the position adjustment amount of the risk edge with the larger first distance is greater than the position adjustment amount of the risk edge with the smaller first distance.

[0137] In one specific implementation, the adjustment tolerance threshold is the minimum allowable distance from the edge to the contact via.

[0138] Accordingly, the adjustment module 500 includes:

[0139] The limiting movement unit is used to adjust the position of the edge in the edge group to be checked according to the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked; wherein, when the edge group to be checked includes a movable edge and a risk edge, the risk edge does not move, only the movable edge moves, and the first distance corresponding to the movable edge cannot be less than the adjustment allowable threshold.

[0140] In one specific implementation, the inspection module 200 further includes:

[0141] A through-hole marking unit is used to mark a movable edge that does not have a contact through-hole in the direction facing the inside of the pattern.

[0142] In one specific implementation, the adjustment module 500 includes:

[0143] A dual-risk edge adjustment unit is used when the edge group to be checked includes two risk edges, referred to as the first risk edge and the second risk edge, respectively. The position adjustment amount of the first risk edge is determined by the following formula:

[0144] Move1=(min_space-space)*a1 / (a1+a2);

[0145] Where Move1 is the position adjustment amount of the first risk edge, min_space is the minimum line spacing in the mask rule check, space is the actual line spacing corresponding to the edge group to be checked, a1 is the first distance corresponding to the first risk edge, and a2 is the first distance corresponding to the second risk edge.

[0146] The adjustment amount for the position of the second risk edge is determined by the following formula:

[0147] Move2=(min_space-space)*a2 / (a1+a2);

[0148] Where Move2 is the position adjustment amount of the second risk edge, min_space is the minimum line spacing in the mask rule check, space is the actual line spacing corresponding to the edge group to be checked, a1 is the first distance corresponding to the first risk edge, and a2 is the first distance corresponding to the second risk edge.

[0149] In one specific implementation, the receiving module 100 further includes:

[0150] The diagonal checking unit is used to perform mask rule checks on the post-OPC layout to determine the diagonals to be checked. The diagonals to be checked are a set of corners that violate the minimum spacing between corners in the mask rule check, and at least one of the diagonals to be checked has a contact via in the direction towards the inside of the pattern. The diagonals to be checked include a set of opposite edges in the x-axis direction and a set of opposite edges in the y-axis direction.

[0151] The diagonal measurement unit is used to measure the second distance from the edge of the diagonal to be checked that has a contact hole in the direction towards the inside of the pattern to the corresponding contact hole, and to determine whether the second distance exceeds a preset adjustment allowable threshold.

[0152] The diagonal marking unit is used to mark the corresponding edge as a movable edge when the second distance exceeds a preset adjustment tolerance threshold, and to mark the corresponding edge as a risk edge when the second distance does not exceed the preset adjustment tolerance threshold.

[0153] The diagonal adjustment unit is used to adjust the position of the edges in the diagonal to be checked based on the difference between the minimum spacing between corners checked in the mask rules and the actual measured corner spacing corresponding to the edge group to be checked; wherein, when one corner of the diagonal to be checked includes the risk edge and the other corner does not include the risk edge, the corner including the risk edge remains unchanged, and only the position of the edge of the corner not including the risk edge is adjusted; when both corners of the diagonal to be checked include risk edges, the position adjustment amount of the corner with the larger second distance of the included risk edge is greater than the position adjustment amount of the corner with the smaller second distance of the included risk edge.

[0154] In one specific embodiment, the diagonal adjustment unit includes:

[0155] A single-angle adjustment unit is used to determine the position adjustment amount of the side of the corner excluding the risk side when one of the corners of the diagonal to be checked includes the risk side, comprising:

[0156] The position adjustment amount of the opposite edge in the x-axis direction of the corner excluding the risk edge is determined by the following formula:

[0157] Move_c2c_x=(min_c2c_space-c2c_space)*cosα;

[0158] Where Move_c2c_x is the position adjustment amount of the opposite side in the x-axis direction of the corner excluding the risk side, min_c2c_space is the minimum distance between the corners, c2c_space is the actual measured corner distance, and α is the angle between the line connecting the corners of the opposite corner to be checked and the x-axis direction.

[0159] The position adjustment amount of the opposite edge in the y-axis direction of the corner excluding the risk edge is determined by the following formula:

[0160] Move_c2c_y=(min_c2c_space-c2c_space)*sinα;

[0161] Where Move_c2c_y is the position adjustment amount of the opposite side in the y-axis direction of the corner excluding the risk side, min_c2c_space is the minimum spacing between the corners, c2c_space is the actual measured corner spacing, and α is the angle between the line connecting the corners to be checked and the x-axis direction.

[0162] In one specific embodiment, the diagonal adjustment unit includes:

[0163] A double-angle adjustment unit is used to determine the position adjustment amount of the four sides of the diagonal to be checked when both corners of the diagonal to be checked include the risk edge, including:

[0164] The two opposite sides of the diagonal to be checked along the x-axis are the first x-axis opposite side and the second x-axis opposite side, respectively; the position adjustment amount of the first x-axis opposite side and the second x-axis opposite side is determined by the following formula:

[0165] Move_c2c_x1=[(min_c2c_space-c2c_space)*cosα]*a3 / (a3+a4);

[0166] Move_c2c_x2=[(min_c2c_space-c2c_space)*cosα]*a4 / (a3+a4);

[0167] Where Move_c2c_x1 is the position adjustment amount of the first x-axis opposite side, Move_c2c_x2 is the position adjustment amount of the second x-axis opposite side, min_c2c_space is the minimum distance between corners, c2c_space is the actual measured corner distance, α is the angle between the line connecting the corners to be checked and the x-axis direction, a3 is the second distance of the first x-axis opposite side, and a4 is the second distance of the second x-axis opposite side;

[0168] The two opposite sides of the diagonal to be checked along the y-axis are the first y-axis opposite side and the second y-axis opposite side, respectively; the position adjustment amount of the first y-axis opposite side and the second y-axis opposite side is determined by the following formula:

[0169] Move_c2c_y1=[(min_c2c_space-c2c_space)*sinα]*a5(a5+a6);

[0170] Move_c2c_y2=[(min_c2c_space-c2c_space)*sinα]*a6 / (a5+a6);

[0171] Where Move_c2c_y1 is the position adjustment amount of the first y-axis opposite side, Move_c2c_y2 is the position adjustment amount of the second y-axis opposite side, min_c2c_space is the minimum distance between the corners, c2c_space is the actual measured corner distance, α is the angle between the line connecting the corners to be checked and the x-axis direction, a5 is the second distance of the first y-axis opposite side, and a6 is the second distance of the second y-axis opposite side.

[0172] The mask layout adjustment device provided by the present invention includes: a receiving module 100 for receiving a post-OPC layout; an inspection module 200 for performing mask rule checks on the post-OPC layout to determine a group of edges to be inspected; the group of edges to be inspected is a group of edges that violates the minimum line spacing in the mask rule check, and at least one edge in the group of edges to be inspected has a contact via in the direction toward the inside of the pattern; a measurement module 300 for measuring a first distance from the edge in the group of edges to be inspected that has a contact via in the direction toward the inside of the pattern to the corresponding contact via, and determining whether the first distance exceeds a preset adjustment tolerance threshold; and a marking module 400 for marking when the first distance exceeds a preset adjustment tolerance threshold. When the distance exceeds a preset adjustment tolerance threshold, the corresponding edge is marked as a movable edge; when the first distance does not exceed the preset adjustment tolerance threshold, the corresponding edge is marked as a risk edge; the adjustment module 500 is used to adjust the position of the edges in the edge group to be checked according to the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked; wherein, when the edge group to be checked includes one movable edge and one risk edge, the risk edge remains stationary, and only the position of the movable edge is adjusted; when the edge group to be checked includes two risk edges, the position adjustment amount of the risk edge with the larger first distance is greater than the position adjustment amount of the risk edge with the smaller first distance. When processing edge groups that violate MRC, this invention first determines whether there are contact vias in the direction of each edge toward the inside of the pattern, then determines the distance between the edge and the contact via (i.e., the first distance), and then determines the position adjustment amount of the edge based on the first distance. This minimizes the possibility of the metal pattern and conductive via being disconnected in subsequent processes due to the distance between the edge of the edge group to the contact via being too small. This achieves the goal of minimizing the damage to the coverage of the contact via by the metal layer after OPC without violating MRC, greatly improving the yield of finished products and reducing process costs.

[0173] The mask layout adjustment device of this embodiment is used to implement the aforementioned mask layout adjustment method. Therefore, the specific implementation of the mask layout adjustment device can be found in the embodiment section of the mask layout adjustment method above. For example, the receiving module 100, the inspection module 200, the measurement module 300, the marking module 400, and the adjustment module 500 are respectively used to implement steps S101, S102, S103, S104, and S105 in the above-mentioned mask layout adjustment method. Therefore, its specific implementation can be referred to the description of the corresponding embodiments, and will not be repeated here.

[0174] The present invention also provides a mask pattern adjustment device, comprising:

[0175] Memory, used to store computer programs;

[0176] A processor is configured to implement the mask layout adjustment steps described above when executing the computer program. The mask layout adjustment method provided by this invention involves: receiving a post-OPC layout; performing a mask rule check on the post-OPC layout to determine a group of edges to be checked; the group of edges to be checked being a group of edges that violates the minimum line spacing in the mask rule check, and at least one edge in the group of edges to be checked having a contact via in the direction towards the inside of the graphic; measuring a first distance from the edge in the group of edges to be checked having a contact via in the direction towards the inside of the graphic to the corresponding contact via, and determining whether the first distance exceeds a preset adjustment tolerance threshold; when the first distance exceeds the preset adjustment tolerance threshold, ... The marked edge is a movable edge; when the first distance does not exceed the preset adjustment tolerance threshold, the marked edge is a risk edge; the position of the edge in the edge group to be checked is adjusted according to the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked; wherein, when the edge group to be checked includes one movable edge and one risk edge, the risk edge remains stationary, and only the position of the movable edge is adjusted; when the edge group to be checked includes two risk edges, the position adjustment amount of the risk edge with the larger first distance is greater than the position adjustment amount of the risk edge with the smaller first distance. When processing edge groups that violate MRC, this invention first determines whether there are contact vias in the direction of each edge toward the inside of the pattern, then determines the distance between the edge and the contact via (i.e., the first distance), and then determines the position adjustment amount of the edge based on the first distance. This minimizes the possibility of the metal pattern and conductive via being disconnected in subsequent processes due to the distance between the edge of the edge group to the contact via being too small. This achieves the goal of minimizing the damage to the coverage of the contact via by the metal layer after OPC without violating MRC, greatly improving the yield of finished products and reducing process costs.

[0177] This invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of any of the mask layout adjustment methods described above. The mask layout adjustment method provided by this invention involves: receiving a post-OPC layout; performing a mask rule check on the post-OPC layout to determine a group of edges to be checked; the group of edges to be checked being a group of edges that violates the minimum line spacing in the mask rule check, and at least one edge in the group of edges to be checked having a contact via in the direction towards the inside of the graphic; measuring a first distance from the edge in the group of edges to be checked having a contact via in the direction towards the inside of the graphic to the corresponding contact via, and determining whether the first distance exceeds a preset adjustment tolerance threshold; when the first distance exceeds the preset adjustment tolerance threshold, ... The marked edge is a movable edge; when the first distance does not exceed the preset adjustment tolerance threshold, the marked edge is a risk edge; the position of the edge in the edge group to be checked is adjusted according to the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked; wherein, when the edge group to be checked includes one movable edge and one risk edge, the risk edge remains stationary, and only the position of the movable edge is adjusted; when the edge group to be checked includes two risk edges, the position adjustment amount of the risk edge with the larger first distance is greater than the position adjustment amount of the risk edge with the smaller first distance. When processing edge groups that violate MRC, this invention first determines whether there are contact vias in the direction of each edge toward the inside of the pattern, then determines the distance between the edge and the contact via (i.e., the first distance), and then determines the position adjustment amount of the edge based on the first distance. This minimizes the possibility of the metal pattern and conductive via being disconnected in subsequent processes due to the distance between the edge of the edge group to the contact via being too small. This achieves the goal of minimizing the damage to the coverage of the contact via by the metal layer after OPC without violating MRC, greatly improving the yield of finished products and reducing process costs.

[0178] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section.

[0179] It should be noted that, in this specification, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0180] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.

[0181] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein can be implemented directly by hardware, a software module executed by a processor, or a combination of both. The software module can be located in random access memory (RAM), main memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.

[0182] The mask layout adjustment method and apparatus provided by the present invention have been described in detail above. Specific examples have been used to illustrate the principles and implementation methods of the present invention. The descriptions of the embodiments above are only for the purpose of helping to understand the method and core ideas of the present invention. It should be noted that those skilled in the art can make several improvements and modifications to the present invention without departing from the principles of the present invention, and these improvements and modifications also fall within the protection scope of the present invention.

Claims

1. A method for adjusting a mask layout, characterized in that, include: OPC layout after reception; Perform a mask rule check on the post-OPC layout to determine the edge group to be checked; the edge group to be checked is a group of edges that violates the minimum line spacing in the mask rule check, and at least one edge in the edge group to be checked has a contact via in the direction toward the inside of the pattern; Measure the first distance from the edge with a contact hole in the direction of the inside of the graphic in the edge group to be checked to the corresponding contact hole, and determine whether the first distance exceeds a preset adjustment allowable threshold. When the first distance exceeds the preset adjustment tolerance threshold, the corresponding edge is marked as a movable edge; when the first distance does not exceed the preset adjustment tolerance threshold, the corresponding edge is marked as a risk edge. Based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked, the positions of the edges in the edge group to be checked are adjusted; wherein, when the edge group to be checked includes one movable edge and one risk edge, the risk edge remains stationary, and only the position of the movable edge is adjusted; when the edge group to be checked includes two risk edges, the position adjustment amount of the risk edge with the larger first distance is greater than the position adjustment amount of the risk edge with the smaller first distance; After adjusting the position of the edge in the edge group to be checked, the first distance corresponding to the edge at the adjusted position is not less than the minimum allowable distance from the edge to the contact through hole. The minimum allowable distance is the minimum distance at which the metal pattern is not disconnected from the contact through hole below in the subsequent process.

2. The mask layout adjustment method as described in claim 1, characterized in that, The method for determining the allowable threshold for adjustment includes: Obtain the minimum allowable distance from the edge to the contact via; The product of the minimum allowable distance and the preset magnification factor is used as the adjustment tolerance threshold.

3. The mask layout adjustment method as described in claim 1, characterized in that, The adjustment tolerance threshold is the minimum allowable distance from the edge to the contact via. Accordingly, based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked, the positions of the edges in the edge group to be checked are adjusted, including: Based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked, the position of the edge in the edge group to be checked is adjusted; wherein, when the edge group to be checked includes a movable edge and a risk edge, the risk edge is not moved, only the movable edge is moved, and the first distance corresponding to the movable edge cannot be less than the adjustment allowable threshold.

4. The mask layout adjustment method as described in claim 1, characterized in that, After identifying the edge group to be searched, the following steps are also included: The edge marked as movable is the one where there is no contact hole in the direction towards the inside of the graphic.

5. The mask layout adjustment method as described in claim 1, characterized in that, When the edge group to be investigated includes two risky edges, the two risky edges are referred to as the first risky edge and the second risky edge, respectively. The position adjustment amount of the first risky edge is determined by the following formula: Move1=(min_space-space)*a1 / (a1+a2); Where Move1 is the position adjustment amount of the first risk edge, min_space is the minimum line spacing in the mask rule check, space is the actual line spacing corresponding to the edge group to be checked, a1 is the first distance corresponding to the first risk edge, and a2 is the first distance corresponding to the second risk edge. The adjustment amount for the position of the second risk edge is determined by the following formula: Move2=(min_space-space)*a2 / (a1+a2); Where Move2 is the position adjustment amount of the second risk edge, min_space is the minimum line spacing in the mask rule check, space is the actual line spacing corresponding to the edge group to be checked, a1 is the first distance corresponding to the first risk edge, and a2 is the first distance corresponding to the second risk edge.

6. The mask layout adjustment method as described in claim 1, characterized in that, After receiving the OPC layout, it also includes: The post-OPC layout is subjected to a mask rule check to determine the diagonals to be checked. The diagonals to be checked are a set of corners that violate the minimum spacing between corners in the mask rule check, and at least one of the diagonals to be checked has a contact via in the direction towards the inside of the pattern. The diagonals to be checked include a set of opposite edges in the x-axis direction and a set of opposite edges in the y-axis direction. Measure the second distance from the edge of the diagonal to be checked that has a contact hole in the direction towards the inside of the pattern to the corresponding contact hole, and determine whether the second distance exceeds a preset adjustment allowable threshold. When the second distance exceeds the preset adjustment tolerance threshold, the corresponding edge is marked as a movable edge; when the second distance does not exceed the preset adjustment tolerance threshold, the corresponding edge is marked as a risk edge. Based on the difference between the minimum spacing between corners in the mask rule check and the actual measured corner spacing corresponding to the edge group to be checked, the position of the edge in the diagonal to be checked is adjusted; wherein, when one corner of the diagonal to be checked includes the risk edge and the other corner does not include the risk edge, the corner including the risk edge remains unchanged, and only the position of the edge of the corner not including the risk edge is adjusted; when both corners of the diagonal to be checked include risk edges, the position adjustment amount of the corner with the larger second distance of the included risk edge is greater than the position adjustment amount of the corner with the smaller second distance of the included risk edge.

7. The mask layout adjustment method as described in claim 6, characterized in that, When one corner of the diagonal to be investigated includes the risk edge, the method for determining the position adjustment amount of the edge of the corner that does not include the risk edge includes: The position adjustment amount of the opposite edge in the x-axis direction of the corner excluding the risk edge is determined by the following formula: Move_c2c_x=(min_c2c_space-c2c_space)*cosα; Where Move_c2c_x is the position adjustment amount of the opposite side in the x-axis direction of the corner excluding the risk side, min_c2c_space is the minimum distance between the corners, c2c_space is the actual measured corner distance, and α is the angle between the line connecting the corners of the opposite corner to be checked and the x-axis direction. The position adjustment amount of the opposite edge in the y-axis direction of the corner excluding the risk edge is determined by the following formula: Move_c2c_y=(min_c2c_space-c2c_space)*sinα; Where Move_c2c_y is the position adjustment amount of the opposite side in the y-axis direction of the corner excluding the risk side, min_c2c_space is the minimum spacing between the corners, c2c_space is the actual measured corner spacing, and α is the angle between the line connecting the corners to be checked and the x-axis direction.

8. The mask layout adjustment method as described in claim 6, characterized in that, When both corners of the diagonal to be checked include the risk edge, the method for determining the position adjustment amount of the four edges in the diagonal to be checked includes: The two opposite sides of the diagonal to be checked along the x-axis are the first x-axis opposite side and the second x-axis opposite side, respectively; the position adjustment amount of the first x-axis opposite side and the second x-axis opposite side is determined by the following formula: Move_c2c_x1=[(min_c2c_space-c2c_space)*cosα]*a3 / (a3+a4); Move_c2c_x2=[(min_c2c_space-c2c_space)*cosα]*a4 / (a3+a4); Where Move_c2c_x1 is the position adjustment amount of the first x-axis opposite side, Move_c2c_x2 is the position adjustment amount of the second x-axis opposite side, min_c2c_space is the minimum distance between corners, c2c_space is the actual measured corner distance, α is the angle between the line connecting the corners to be checked and the x-axis direction, a3 is the second distance of the first x-axis opposite side, and a4 is the second distance of the second x-axis opposite side; The two opposite sides of the diagonal to be checked along the y-axis are the first y-axis opposite side and the second y-axis opposite side, respectively; the position adjustment amount of the first y-axis opposite side and the second y-axis opposite side is determined by the following formula: Move_c2c_y1=[(min_c2c_space-c2c_space)*sinα]*a5(a5+a6); Move_c2c_y2=[(min_c2c_space-c2c_space)*sinα]*a6 / (a5+a6); Where Move_c2c_y1 is the position adjustment amount of the first y-axis opposite side, Move_c2c_y2 is the position adjustment amount of the second y-axis opposite side, min_c2c_space is the minimum distance between the corners, c2c_space is the actual measured corner distance, α is the angle between the line connecting the corners to be checked and the x-axis direction, a5 is the second distance of the first y-axis opposite side, and a6 is the second distance of the second y-axis opposite side.

9. A mask layout adjustment device, characterized in that, include: The receiving module is used to receive the OPC layout. The inspection module is used to perform mask rule checks on the post-OPC layout to determine the edge group to be checked; the edge group to be checked is a group of edges that violates the minimum line spacing in the mask rule check, and at least one edge in the edge group to be checked has a contact via in the direction towards the inside of the graphic; The measurement module is used to measure the first distance from the edge with a contact hole in the direction of the inside of the graphic in the edge group to be checked to the corresponding contact hole, and to determine whether the first distance exceeds a preset adjustment allowable threshold. The marking module is used to mark the corresponding edge as a movable edge when the first distance exceeds a preset adjustment tolerance threshold, and to mark the corresponding edge as a risk edge when the first distance does not exceed the preset adjustment tolerance threshold. The adjustment module is used to adjust the position of the edges in the edge group to be checked based on the difference between the minimum line spacing in the mask rule check and the actual measured spacing corresponding to the edge group to be checked; wherein, when the edge group to be checked includes one movable edge and one risk edge, the risk edge remains stationary, and only the position of the movable edge is adjusted; when the edge group to be checked includes two risk edges, the position adjustment amount of the risk edge with the larger first distance is greater than the position adjustment amount of the risk edge with the smaller first distance; After adjusting the position of the edge in the edge group to be checked, the first distance corresponding to the edge at the adjusted position is not less than the minimum allowable distance from the edge to the contact through hole. The minimum allowable distance is the minimum distance at which the metal pattern is not disconnected from the contact through hole below in the subsequent process.

10. The mask layout adjustment device as described in claim 9, characterized in that, The receiving module further includes: The diagonal checking unit is used to perform mask rule checks on the post-OPC layout to determine the diagonals to be checked. The diagonals to be checked are a set of corners that violate the minimum spacing between corners in the mask rule check, and at least one of the diagonals to be checked has a contact via in the direction towards the inside of the pattern. The diagonals to be checked include a set of opposite edges in the x-axis direction and a set of opposite edges in the y-axis direction. The diagonal measurement unit is used to measure the second distance from the edge of the diagonal to be checked that has a contact hole in the direction towards the inside of the pattern to the corresponding contact hole, and to determine whether the second distance exceeds a preset adjustment allowable threshold. The diagonal marking unit is used to mark the corresponding edge as a movable edge when the second distance exceeds a preset adjustment tolerance threshold, and to mark the corresponding edge as a risk edge when the second distance does not exceed the preset adjustment tolerance threshold. The diagonal adjustment unit is used to adjust the position of the edges in the diagonal to be checked based on the difference between the minimum spacing between corners checked in the mask rules and the actual measured corner spacing corresponding to the edge group to be checked; wherein, when one corner of the diagonal to be checked includes the risk edge and the other corner does not include the risk edge, the corner including the risk edge remains unchanged, and only the position of the edge of the corner not including the risk edge is adjusted; when both corners of the diagonal to be checked include risk edges, the position adjustment amount of the corner with the larger second distance of the included risk edge is greater than the position adjustment amount of the corner with the smaller second distance of the included risk edge.