Method, device and medium for generating a collection of curve mask test patterns
By generating a collection of test graphics for curve mask plates, the problem of difficulty in batch generation of curve mask plates in the prior art is solved, and efficient and accurate test graphics design is achieved, which is suitable for semiconductor manufacturing and high-precision lithography and other fields.
Patent Information
- Application Number
- CN202510145091.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-10
- Publication Date
- 2025-05-23
- Estimated Expiration
- 2045-02-10
AI Technical Summary
The prior art is difficult to effectively generate batch test patterns for curve mask plates, especially in the fields of semiconductor manufacturing and high-precision lithography, resulting in increased design complexity and verification difficulty.
By obtaining the curve mask plate and its measurement path, adjusting the line width to generate the first test pattern; positioning the intersection points and building a local tangent, performing the graph removal operation to generate the second test pattern; extracting boundary points around the intersection points, building a reference pattern and generating the third test pattern through Boolean operations, and finally combining to generate a test pattern collection.
It significantly improves the generation efficiency and accuracy of test graphics, reduces design time, and reduces errors caused by resolution problems during manufacturing, improving the quality and reliability of test graphics.
Smart Images

Figure CN119575772B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the semiconductor field, and in particular to a method, device, medium, program product and terminal for generating a collection of curve mask test patterns. Background Art
[0002] In the process of integrated circuit design and manufacturing, test patterns are specially designed geometric patterns used to verify the capabilities of the manufacturing process, evaluate the performance of lithography imaging, and verify the reliability of design rules. Test patterns are not part of the functional design of the circuit, but are key tools for optimizing the manufacturing process, detecting process limits, and monitoring process stability. As process technology continues to develop towards smaller sizes and higher complexity, the design of test patterns has gradually expanded from the traditional Manhattan layout (horizontal and vertical polygons) to modern layouts containing more complex curved geometries, further increasing the difficulty of design and verification.
[0003] The design of test patterns is usually generated by adjusting geometric parameters such as line width, line spacing, and inclusion distance to help evaluate the resolution of the lithography system, offset calibration capabilities, and the accuracy of the etching process. However, as the process size decreases (such as 7nm and below), the minimum feature size of the test pattern gradually approaches the process limit, and resolution problems are prone to occur during manufacturing. At the same time, the introduction of curved geometry places higher requirements on lithography and etching accuracy, increasing design complexity and verification difficulty. In addition, test patterns need to be generated in batches with high precision, and traditional manual design methods can no longer meet the requirements. Summary of the invention
[0004] In view of the above-mentioned shortcomings of the prior art, the purpose of the present application is to provide a method, device, medium, program product and terminal for generating a collection of curve mask test patterns, so as to solve the problem that the prior art has not yet provided a batch test pattern generation solution for curve masks.
[0005] To achieve the above-mentioned purpose and other related purposes, the first aspect of the present application provides a method for generating a collection of curve mask test patterns, including: obtaining a curve mask and its corresponding measurement path; adjusting the line width of the curve mask along the direction of the measurement path to generate a first test pattern; locating the intersection of the curve mask and the measurement path, and constructing a local tangent of the curve mask based on the intersection; performing a pattern removal operation on the curve mask through the local tangent to generate a second test pattern; taking the intersection as the center, extracting a boundary point at the upper and lower edges of the curve mask according to preset rules, and constructing a reference pattern based on the intersection and the boundary point; combining the curve mask with the reference pattern according to Boolean operations to generate a third test pattern; merging the first test pattern, the second test pattern and the third test pattern to generate a collection of test patterns.
[0006] In some embodiments of the first aspect of the present application, the process of performing a pattern removal operation on the curved mask through the local tangent to generate a second test pattern includes: translating one or more unit distances along the local tangent into the interior of the curved mask to generate a translation area that overlaps with the curved mask during the translation process; based on the translation area, cutting out a corresponding overlapping area from the curved mask to generate the second test pattern.
[0007] In some embodiments of the first aspect of the present application, the process of constructing a reference figure based on the intersection points and the boundary points includes: substituting the coordinates of the intersection points and the boundary points into the circle equation, solving the reference circle formed by the intersection points and the boundary points, and obtaining the radius and center coordinates of the reference circle.
[0008] In some embodiments of the first aspect of the present application, the process of combining the curved mask with the reference pattern to generate a third test pattern according to a Boolean operation includes: increasing / decreasing the radius of the reference circle by one or more unit distances to generate multiple updated radii; generating multiple derived reference circles based on the updated radius and the center coordinates of the circle; and performing a Boolean operation on each derived reference pattern and the curved mask to generate multiple third test patterns.
[0009] In some embodiments of the first aspect of the present application, the process of performing Boolean operations on each derived reference pattern and the curve mask includes: performing a union operation on the circular portion falling outside the curve mask; and performing a negation operation on the circular portion falling inside the curve mask.
[0010] In some embodiments of the first aspect of the present application, the process of extracting a boundary point at the upper and lower edges of the curved mask according to preset rules includes any one of the following extraction methods: extraction based on distance rules, extraction based on angle rules, extraction based on curvature rules, and extraction based on algorithm optimization rules.
[0011] To achieve the above-mentioned purpose and other related purposes, the second aspect of the present application provides a device for generating a collection of curve mask test patterns, including: a data acquisition module: used to acquire a curve mask and its corresponding measurement path; a test pattern generation module: used to adjust the line width of the curve mask along the direction of the measurement path to generate a first test pattern; locate the intersection of the curve mask and the measurement path, and construct a local tangent of the curve mask based on the intersection; perform a pattern removal operation on the curve mask through the local tangent to generate a second test pattern; with the intersection as the center, extract a boundary point at the upper and lower edges of the curve mask according to a preset rule, and construct a reference pattern based on the intersection and the boundary point; combine the curve mask with the reference pattern according to a Boolean operation to generate a third test pattern; merge the first test pattern, the second test pattern and the third test pattern to generate a collection of test patterns.
[0012] To achieve the above-mentioned purpose and other related purposes, the third aspect of the present application provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the method for generating the curve mask test pattern collection is implemented.
[0013] To achieve the above-mentioned purpose and other related purposes, the fourth aspect of the present application provides a computer program product, which includes a computer program code. When the computer program code is run on a computer, the computer implements the method for generating the curve mask test pattern collection.
[0014] To achieve the above-mentioned purpose and other related purposes, the fifth aspect of the present application provides an electronic terminal, including a memory, a processor and a computer program stored in the memory; the processor executes the computer program to implement the method for generating the curve mask test pattern collection.
[0015] As described above, the generation method, device, medium, program product and terminal of the curve mask test pattern collection of the present application have the following beneficial effects: significantly improving the generation efficiency and accuracy, reducing the design time, and effectively reducing the errors caused by resolution problems in the manufacturing process. This systematic generation method ensures the diversity and reliability of the test pattern, meets the requirements of modern manufacturing processes for high precision and high efficiency, and effectively supports applications in semiconductor manufacturing, nanotechnology, high-precision lithography and other fields, and has good market prospects. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] Figure 1 A flow chart of an embodiment of a method for generating a collection of curve mask test patterns of the present application is shown.
[0017] Figure 2 A schematic diagram of the generation process of the first test pattern in an embodiment of a method for generating a collection of curve mask test patterns of the present application is shown.
[0018] Figure 3 A schematic diagram of the generation process of the first test pattern in another embodiment of the method for generating a collection of curve mask test patterns of the present application is shown.
[0019] Figure 4 A schematic diagram of the generation process of the second test pattern in an embodiment of a method for generating a collection of curve mask test patterns of the present application is shown.
[0020] Figure 5 A schematic diagram of the generation process of the third test pattern in an embodiment of the method for generating a collection of curve mask test patterns of the present application is shown.
[0021] Figure 6 A structural schematic diagram of an embodiment of a device for generating a collection of curve mask test patterns of the present application is shown.
[0022] Figure 7 A structural schematic diagram of an embodiment of a generation terminal for a collection of curve mask test patterns of the present application is shown. DETAILED DESCRIPTION
[0023] The following describes the embodiments of the present application through specific examples, and those skilled in the art can easily understand other advantages and effects of the present application from the contents disclosed in this specification. The present application can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed in various ways based on different viewpoints and applications without departing from the spirit of the present application. It should be noted that the following embodiments and features in the embodiments can be combined with each other without conflict.
[0024] Before further explaining the present application in detail, the nouns and terms involved in the embodiments of the present application are explained. The nouns and terms involved in the embodiments of the present application are subject to the following interpretations:
[0025] <1> Measurement path: The measurement path of the test mask is a specific curve or line segment used to measure or evaluate parameters (such as lithography effect or processing accuracy), and is an important basis for test pattern design and analysis.
[0026] <2> Test pattern: A geometric structure defined to verify the capability of the manufacturing process, evaluate lithography parameters, and check the reliability of design rules. It does not have circuit functionality.
[0027] <3> Point of interest: A point of interest represents a specific location in a test pattern or measurement path, usually a feature point or key point in an area, used for parameter calculation, analysis or optimization.
[0028] <4> Line width: Parameters of the geometric width of lines in the test pattern, which directly affects the accuracy and effect of lithography and etching.
[0029] <5> Spacing: The minimum distance between two lines in a test pattern, an important design parameter controlled by manufacturing rules.
[0030] <6> Bridging: Poor connection between adjacent lines or structures, usually reflecting deviations in the photolithography or etching process, affecting the controllability of the process.
[0031] <7> Collapse: Geometric incompleteness or deformation due to manufacturing or material properties, a key consideration for process reliability.
[0032] <8> SVG format: An XML-based vector graphics file format, widely used in lithography design and electronic document exchange, supporting scalable and editable vector graphics representation.
[0033] <9> DXF format: A file format for two-dimensional and three-dimensional design data, mainly used for graphic exchange and storage between computer-aided design (CAD) programs.
[0034] <10> Boolean operation: A logical calculation method based on set relations, which generates new geometric structures through operations such as intersection, union and difference, and is used to construct or optimize test patterns.
[0035] <11> Union operation: The union operation performs a logical OR operation on multiple geometric figures, merging all geometric areas into one overall area. It is often used to design complex test figures.
[0036] <12> Negation operation: The negation operation performs a logical NOT operation on a geometric structure or region, turning its external region into a target region, and is mainly used to generate complementary or contrasting structures.
[0037] To facilitate understanding of the embodiments of the present application, first Figure 1 Detailed description. Figure 1 A flow chart of a method for generating a collection of curve mask test patterns in an embodiment of the present application is shown. The method for generating a collection of curve mask test patterns in this embodiment mainly includes the following steps:
[0038] Step S11: Obtain a curved mask and its corresponding measurement path.
[0039] In one embodiment of the present application, the process of obtaining a curved mask and its corresponding measurement path also includes: obtaining a curved mask and its points of interest (POI). POI refers to key points that need to be focused on in a specific measurement process. These points include important geometric features, boundary points, or areas of significant change in the layout design. POI is not only a key point of measurement in generating test images, but also helps to identify and evaluate the quality and accuracy of the mask. By paying attention to these points of interest, possible defects or deviations in the design can be effectively captured, thereby providing data support for subsequent process adjustments and optimizations. In addition, the selection of POI directly affects the quality and reliability of the test image, ensuring that the final output meets the design specifications.
[0040] Furthermore, the measurement route includes the following features: Figure 1 The measurement route covers all POIs of the current mask and fully detects possible defects or change areas in the layout.
[0041] Step S12: adjusting the line width of the curved mask along the direction of the measurement path to generate a first test pattern.
[0042] In one embodiment of the present application, the process of adjusting the line width of the curved mask along the direction of the measurement path includes: importing the curved mask into CAD software to read and parse the curved mask, and converting the curved mask into an editable digital format. Based on the curved mask in the digital format, identifying the lines and shapes in the mask, and adjusting the line width value or spacing value of the mask pattern along the direction of the measurement path.
[0043] In this embodiment, Figure 2 The schematic diagram of the process of generating the first test pattern by line width value in this embodiment is shown. Figure 3The flowchart of generating the first test pattern by the spacing value in this embodiment is shown. Line width refers to the width or thickness of the lines in the pattern, and the spacing value refers to the distance between adjacent lines. The purpose of adjusting the line width value and the spacing value is to meet the specific design requirements of the test pattern and verify the performance of the mask and the feasibility of the manufacturing process. The test pattern is usually used to evaluate the spatial resolution capability, optical properties, critical dimension (CD) control accuracy, and sensitivity to boundary interference between lines of the process. By adjusting the line width value and the spacing value, possible manufacturing deviations can be simulated and the process can be stress-tested to ensure that it can meet actual usage requirements.
[0044] Specifically, generating test patterns of different widths or spacings can evaluate the resolution capabilities of current lithography or other processes to ensure that the equipment can reliably manufacture tiny structures; by gradually reducing the spacing and line width values, the performance of the process under extreme conditions can be tested, such as whether the minimum feature line width can be accurately engraved, and whether manufacturing defects such as bridging and collapse will occur; in the lithography process, different line width and spacing values will affect the optical imaging quality, edge sharpness and energy distribution, and the test pattern can capture these problems.
[0045] In this embodiment, the process of adjusting the line width value or the spacing value includes: using a linear change method to reduce the line width value at a fixed step length (such as decreasing from 50nm to 30nm); and / or, proportionally reducing the line spacing (such as the initial spacing is 300nm, and each time it is reduced by 10%). In particular, when the spacing is too small, the program can automatically adjust the minimum spacing value to the range allowed by the process; and / or, when the line width is too small, the program is adjusted to the limit value of the process resolution capability for testing.
[0046] Step S13: locating the intersection of the curved mask and the measurement path, and constructing a local tangent line of the curved mask based on the intersection point; performing a pattern removal operation on the curved mask through the local tangent line to generate a second test pattern.
[0047] In one embodiment of the present application, the data of the curve mask and the measurement path are stored in a digital format, the curve mask is a series of points or parameterized curves, and the measurement path is a straight line. Use algebraic or numerical methods to solve the curve equation and the straight line equation, obtain the coordinates of the intersection and record them. Based on the intersection, calculate the instantaneous rate of change of the parameterized curve equation at the point to obtain the tangent slope. Combine the intersection coordinates and the slope to construct the tangent equation and clarify the tangent direction. Define the removal area by translating the tangent. According to the translated tangent equation, traverse all points in the curve mask, determine the relative position of the point coordinates and the tangent, and confirm whether it is located in the removal area. Mark the points that fall into the removal area as deleted points. After the traversal is completed, update the mask data structure according to the mark, delete the corresponding points and regenerate the curve mask. Preferably, the generated second test pattern is saved in SVG or DXF format for subsequent testing.
[0048] In one embodiment of the present application, the process of performing a pattern removal operation on the curved mask through the local tangent to generate a second test pattern includes: translating one or more unit distances along the local tangent into the interior of the curved mask to generate a translation area that overlaps with the curved mask during the translation process; based on the translation area, cutting out a corresponding overlapping area from the curved mask to generate the second test pattern.
[0049] Figure 4 The second test pattern generation process in this embodiment is shown. Along the local tangent direction, one or more unit distances are translated into the interior of the curved mask, where the unit distance can be set to a fixed parameter such as 10 microns or 20 microns. The specific numerical setting can be designed according to the shape and size of the curved mask. The present application itself does not limit the length of the unit distance, and the above specific parameters are only used for explanation. Subsequently, according to the formed translation area, the corresponding part overlapping with the area is cut off from the curved mask, thereby generating the required second test pattern. In the specific execution process, the local tangent moves a certain distance into the figure, and the overlapping shadow area between the area formed by the movement and the curved mask represents the part where the local tangent and the mask intersect. Next, the operation of subtracting the overlapping shadow area from the original figure is performed, that is, the part occupied by the overlapping shadow area is removed from the initial curved mask, and the new figure generated is called the second test pattern.
[0050] Step S14: Taking the intersection as the center, extract a boundary point at the upper and lower edges of the curved mask according to a preset rule, and construct a reference pattern based on the intersection and the boundary points; according to Boolean operations, combine the curved mask with the reference pattern to generate a third test pattern.
[0051] In one embodiment of the present application, the process of extracting a boundary point at each upper and lower edge of the curved mask according to preset rules includes any one of the following extraction methods: extraction based on distance rules, extraction based on angle rules, extraction based on curvature rules, and extraction based on algorithm optimization rules.
[0052] In this embodiment, the process of extracting a boundary point at each of the upper and lower edges of the curved mask based on the distance rule includes: extracting the nearest upper and lower boundary points whose distance from the intersection meets the preset threshold along the vertical direction or horizontal direction extending from the intersection. The preset distance is a fixed value or a variable, and the preset distance can be a fixed value, such as 50 nanometers; or dynamically calculated based on the geometric features of the curved mask. For example, the dynamic distance can depend on the maximum boundary width of the curved mask or the local density of the points on the curve to ensure that the distribution of the extracted points is reasonable. The calculation process of the dynamic distance includes: analyzing the edge of the curve and setting a dynamic threshold according to the curve distribution density or shape characteristics of the upper and lower boundaries. Specifically, a smaller threshold (such as 20 nanometers) is set for the area with dense points of interest, and a larger threshold (such as 100 nanometers) is set for the area with sparse points of interest. If the upper and lower boundaries themselves have obvious protrusions or depressions, the dynamic distance setting gives priority to local feature points.
[0053] In this embodiment, the process of extracting a boundary point at each of the upper and lower edges of the curved mask based on the angle rule includes: taking the intersection as the center, drawing a line at a preset angle (such as 45 degrees or 90 degrees, etc.) to the boundary of the curved mask, and taking the intersection of the intersection and the upper and lower boundaries as the boundary point. If there is no intersection between the angle line and the upper and lower edges, the angle is adjusted to find the closest match. In particular, if there are multiple intersections between the preset angle line and the upper and lower boundaries (for example, the curve area is complex), the intersection closest to the intersection is preferentially selected as the boundary point. Furthermore, when the preset angle line does not intersect with the upper and lower boundaries, the angle is dynamically adjusted (increased or decreased) to achieve the closest match, or the search for candidate boundary points is switched to the vertical or horizontal direction.
[0054] In this embodiment, the process of extracting a boundary point at each of the upper and lower edges of the curved mask based on the curvature rule includes: calculating the curvature value of the curved path in the curved mask, finding the position where the curvature changes fastest near the intersection, that is, the curvature extreme point (local maximum or minimum), and using these points as boundary points. In particular, if the curvature is relatively uniform, such as an area that is close to a straight state, the boundary point can be determined in combination with other rules (such as a distance rule or an angle rule).
[0055] In this embodiment, the process of extracting a boundary point at each of the upper and lower edges of the curved mask based on the algorithm optimization rule includes: extracting a set of boundary points of the upper and lower edges with the intersection as the center, and screening them according to the optimization target. The screening process includes: establishing a coordinate matrix of the upper and lower boundary points, collecting all boundary points of the upper and lower edges, and organizing them into a matrix form for subsequent processing; applying an optimization algorithm, such as linear regression, least squares method or other mathematical models, to analyze the collected points to find the best fitting target; based on the fitting results, screening out the point that best meets the established optimization target from the boundary point set.
[0056] In one embodiment of the present application, the process of constructing a reference figure based on the intersection points and the boundary points includes: substituting the coordinates of the intersection points and the boundary points into the circle equation, solving the reference circle formed by the intersection points and the boundary points, and obtaining the radius and center coordinates of the reference circle.
[0057] Figure 5 The generation process of the third test pattern in this embodiment is shown. When the coordinates of the intersection are The coordinates of the upper and lower boundary points are and , the boundary points are substituted into Formula 1 respectively, and the parameters D, E and F in Formulas 2 to 4 are obtained by solving the determinant or Gaussian elimination method.
[0058] (Formula 1)
[0059] (Formula 2)
[0060] (Formula 3)
[0061] (Formula 4)
[0062] Substitute the points into the above formulas to generate the rectangular form shown in Formula 5, and calculate the coordinates of the circle shown in Formulas 6 and 7 based on the coordinates of the intersection points and boundary points. and radius R. The radius R is then increased or decreased to generate Figure 5 The R1 and R2 described above perform a union operation or a negation operation based on the circular area formed by R1 and R2.
[0063] (Formula 5)
[0064] (Formula 6)
[0065] (Formula 7)
[0066] In one embodiment of the present application, according to Boolean operations, the process of combining the curved mask with the reference pattern to generate a third test pattern includes: increasing / decreasing the radius of the reference circle by one or more unit distances to generate multiple updated radii; generating multiple derived reference circles based on the updated radius and the center coordinates; performing Boolean operations on each derived reference pattern and the curved mask to generate multiple third test patterns.
[0067] In this embodiment, the Boolean operation of graphics is an operation based on set theory, which is a way of performing mathematical operations on geometric graphics, including combining, modifying or generating new graphics to combine multiple shapes together to generate complex structures or graphics. Among them, the union operation refers to merging two or more graphics into a single graphic, including all areas within the graphics; in the intersection operation, only the overlapping parts of two or more graphics are retained to form a new graphic, which only contains the overlapping areas; in the exclusive or operation, only the non-overlapping parts of the two graphics are retained, and the overlapping parts of the two graphics are removed.
[0068] It should be noted that the intersection points and upper and lower boundary points extracted above cannot be collinear, which is an important condition to ensure that the generated reference pattern has reasonable geometric characteristics. In the case of only three collinear points, the constructed reference circle will not be able to accurately describe the bending characteristics of the curved mask. Since the method of the present application requires that the intersection points and boundary points have a certain distribution in space, in order to effectively calculate the radius and the center coordinates of the circle, a representative reference pattern is generated. Therefore, the present application is suitable for the generation of test patterns for curved masks, because curved masks usually have complex nonlinear characteristics. By reasonably selecting boundary points, the changes and characteristics of the curved path can be better captured, and higher quality test patterns can be achieved. Therefore, the present method significantly improves the accuracy and applicability of the test pattern of the curved mask.
[0069] In one embodiment of the present application, the process of performing Boolean operations on each derived reference pattern and the curved mask includes: performing a join operation on the circular portion falling outside the curved mask; and performing a negation operation on the circular portion falling inside the curved mask.
[0070] In this embodiment, the derived reference pattern refers to a circular pattern generated based on the updated radius, and the circular pattern may fall inside or outside the curved mask. Figure 5As shown, when performing the joint operation, all circular parts falling outside the curved mask will be merged with the shape of the curved mask, and the areas of all graphics, including the external circular parts and the areas of the curved mask, are retained. This operation ensures that the external area is retained, forming a comprehensive graphic containing the curved mask and the external circular parts. Further, for the circular parts falling inside the curved mask, the process of performing the negation operation includes: for all the circular parts located inside the curved mask, the negation operation is performed. These internal circular areas are removed from the curved mask, thereby retaining the external parts of the curved mask, ensuring that the final graphic does not contain these internal areas.
[0071] Step S15: merging the first test pattern, the second test pattern and the third test pattern to generate a test pattern collection.
[0072] In one embodiment of the present application, the first test pattern, the second test pattern and the third test pattern are combined in a preset logic or format to generate a file or data object for subsequent processing and testing. The mask layout test pattern collection can be used in subsequent testing stages, such as performance testing to evaluate the performance of the system when processing multiple mask patterns; compatibility testing to ensure that the software or hardware can correctly identify and process multiple mask pattern formats or sets.
[0073] Furthermore, the process of merging in a preset logic or format includes: importing the designed mask graphics into a graphics processing software or image editing software (such as Adobe Photoshop, GIMP or Affinity Photo). In these software, the mask graphics are placed on the same canvas and superimposed, spliced or adjusted using the layer function. The desired effect can be achieved by adjusting the transparency and blending mode of the layer.
[0074] In the embodiments of the present application, words such as "first" and "second" are used to distinguish the same or similar items with basically the same functions and effects. For example, the first test pattern and the second test pattern are only used to distinguish different test patterns, and their order is not limited. Those skilled in the art can understand that words such as "first" and "second" do not limit the quantity and execution order, and words such as "first" and "second" do not necessarily limit them to be different.
[0075] It should be noted that in the embodiments of the present application, words such as "exemplary" or "for example" represent examples, illustrations or descriptions. Any embodiment or design described as "exemplary" or "for example" in the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present related concepts in a specific way.
[0076] In the embodiments of the present application, "at least one" refers to one or more, and "plurality" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b or c can represent: a, b, c, ab, ac, bc or abc, where a, b, c can be single or multiple.
[0077] Figure 6 6 is a schematic block diagram of a device 600 for generating a curve mask test pattern collection provided in an embodiment of the present application. Figure 6 As shown, the device includes a data acquisition module 601 and a test pattern generation module 602 .
[0078] Data acquisition module 601: used to acquire a curved mask and its corresponding measurement path.
[0079] Test pattern generation module 602: used to adjust the line width of the curved mask along the direction of the measurement path to generate a first test pattern; locate the intersection of the curved mask and the measurement path, and construct a local tangent of the curved mask based on the intersection; perform a pattern removal operation on the curved mask through the local tangent to generate a second test pattern; with the intersection as the center, extract a boundary point at the upper and lower edges of the curved mask according to a preset rule, and construct a reference pattern based on the intersection and the boundary point; combine the curved mask with the reference pattern according to a Boolean operation to generate a third test pattern; merge the first test pattern, the second test pattern and the third test pattern to generate a test pattern collection.
[0080] It should be understood that the specific process of each module executing the above corresponding steps has been described in detail in the above method embodiment, and for the sake of brevity, it will not be repeated here.
[0081] It should also be understood that the division of modules in the embodiments of the present application is schematic and is only a logical function division. There may be other division methods in actual implementation. In addition, each functional module in each embodiment of the present application may be integrated into a processor, or may exist physically separately, or two or more modules may be integrated into one module. The above-mentioned integrated modules may be implemented in the form of hardware or in the form of software functional modules.
[0082] Figure 7 is a schematic block diagram of an electronic terminal provided in an embodiment of the present application. Figure 7 As shown, the electronic terminal includes: at least one processor 701, a memory 702, at least one network interface 703 and a user interface 705. The various components in the device are coupled together through a bus system 704. It can be understood that the bus system 704 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 704 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, Figure 7 In the specification, various buses are labeled as bus systems.
[0083] The user interface 705 may include a display, a keyboard, a mouse, a trackball, a click gun, keys, buttons, a touch pad or a touch screen.
[0084] It is understood that the memory 702 can be a volatile memory or a non-volatile memory, and can also include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), which is used as an external cache. By way of exemplary but not limiting explanation, many forms of RAM are available, such as static random access memory (SRAM), synchronous static random access memory (SSRAM). The memory described in the embodiments of the present application is intended to include but is not limited to these and any other suitable categories of memory.
[0085] The memory 702 in the embodiment of the present application is used to store various categories of data to support the operation of the electronic terminal 700. Examples of these data include: any executable program for operating on the electronic terminal 700, such as an operating system 7021 and an application 7022; the operating system 7021 includes various system programs, such as a framework layer, a core library layer, a driver layer, etc., for implementing various basic services and processing hardware-based tasks. The application 7022 can include various applications, such as a media player (Media Player), a browser (Browser), etc., for implementing various application services. The method for generating a collection of curve mask test patterns provided in the embodiment of the present application can be included in the application 7022.
[0086] The method disclosed in the above embodiment of the present application can be applied to the processor 701, or implemented by the processor 701. The processor 701 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by an integrated logic circuit of the hardware in the processor 701 or an instruction in the form of software. The above processor 701 may be a general-purpose processor, a digital signal processor (DSP, Digital Signal Processor), or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The processor 701 can implement or execute the various methods, steps and logic block diagrams disclosed in the embodiments of the present application. The general-purpose processor 701 may be a microprocessor or any conventional processor, etc. In combination with the steps of the accessory optimization method provided in the embodiment of the present application, it can be directly embodied as a hardware decoding processor to execute, or it can be executed by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium, which is located in a memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.
[0087] In an exemplary embodiment, the electronic terminal 700 may be implemented by one or more application specific integrated circuits (ASIC), DSP, programmable logic device (PLD), complex programmable logic device (CPLD) to execute the aforementioned method.
[0088] According to the method provided in the embodiments of the present application, the present application also provides a computer program product, which includes: computer program code, when the computer program code is run on a computer, the computer executes the method for generating a collection of curve mask test patterns in any of the embodiments shown above.
[0089] According to the method provided in the embodiments of the present application, the present application also provides a computer-readable storage medium, which stores a program code. When the program code runs on a computer, the computer executes the method for generating a collection of curve mask test patterns in any of the embodiments shown above.
[0090] The terms "component", "module", "system", etc. used in this specification are used to represent computer-related entities, hardware, firmware, a combination of hardware and software, software, or software in execution. For example, a component can be, but is not limited to, a process, a processor, an object, an executable file, an execution thread, a program and / or a computer running on a processor. By way of illustration, both applications and computing devices running on a computing device can be components. One or more components may reside in a process and / or an execution thread, and a component may be located on a computer and / or distributed between two or more computers. In addition, these components may be executed from various computer-readable media having various data structures stored thereon. Components may, for example, communicate through local and / or remote processes according to signals having one or more data packets (e.g., data from two components interacting with another component between a local system, a distributed system and / or a network, such as the Internet interacting with other systems through signals).
[0091] Those of ordinary skill in the art will appreciate that the various illustrative logical blocks and steps described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0092] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0093] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0094] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0095] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0096] In the above embodiments, the functions of each functional unit can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions (programs). When the computer program instructions (programs) are loaded and executed on a computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website site, computer, server or data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (Digital Subscriber Line, DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server or data center. The computer-readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server or data center that includes one or more available media integrated. Available media may be magnetic media (e.g., floppy disks, hard disks, tapes), optical media (e.g., high-density digital video discs (DVDs), or semiconductor media (e.g., solid state disks (SSDs)).
[0097] If the function is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can essentially or in other words, the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, server, or network device, etc.) to execute all or part of the steps of the various embodiments of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM), random access memory (RAM), disk or optical disk, and other media that can store program codes.
[0098] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
[0099] In summary, the present application provides a method, device, medium, program product and terminal for generating a collection of test patterns of a curved mask. The present application provides a method for improving the efficiency of test pattern generation, by obtaining the curved mask and its measurement path data, adjusting the line width to generate a first test pattern; locating the intersection and constructing a local tangent, translating the tangent and performing a pattern removal operation to generate a second test pattern; extracting boundary points around the intersection, constructing a reference pattern based on the intersection and the boundary points, and generating a third test pattern through Boolean operations. Finally, the three test patterns are merged to form a diverse collection of test patterns. It solves the deficiencies in the design and verification of test patterns of curved mask plates, significantly improves the generation efficiency and accuracy, reduces the design time, and reduces the resolution error in the manufacturing process, thereby improving the quality and reliability of the test pattern, and is suitable for semiconductor manufacturing, nanotechnology, high-precision lithography and other fields, and has broad application prospects. Therefore, the present application effectively overcomes the various shortcomings of the prior art and has a high industrial utilization value.
[0100] The above embodiments are merely illustrative of the principles and effects of the present application and are not intended to limit the present application. Anyone familiar with the technology may modify or change the above embodiments without violating the spirit and scope of the present application. Therefore, all equivalent modifications or changes made by a person of ordinary skill in the art without departing from the spirit and technical ideas disclosed in the present application shall still be covered by the claims of the present application.
Claims
1. A method for generating a collection of curve mask test patterns, characterized in that: include: Obtain a curved mask and its corresponding measurement path; Adjusting the line width of the curved mask along the direction of the measurement path to generate a first test pattern; Locating the intersection of the curved mask and the measurement path, and constructing a local tangent line of the curved mask based on the intersection; Performing a pattern removal operation on the curved mask through the local tangent line to generate a second test pattern, including: translating one or more unit distances into the curved mask along the local tangent line to generate a translation area that overlaps with the curved mask during the translation process; based on the translation area, cutting off a corresponding overlapping area from the curved mask to generate the second test pattern; Taking the intersection as the center, extracting a boundary point at the upper and lower edges of the curved mask according to a preset rule, and constructing a reference pattern based on the intersection and the boundary point, including: substituting the coordinates of the intersection and the boundary point into the circle equation, solving the reference circle formed by the intersection and the boundary point, and obtaining the radius and center coordinates of the reference circle; combining the curved mask with the reference pattern according to a Boolean operation to generate a third test pattern, including: increasing / decreasing the radius of the reference circle by one or more unit distances to generate multiple updated radii; generating multiple derived reference circles based on the updated radius and the center coordinates; performing a Boolean operation on each derived reference pattern and the curved mask to generate multiple third test patterns; wherein the process of performing a Boolean operation on each derived reference pattern and the curved mask includes: performing a union operation on the circular portion falling outside the curved mask; performing a negation operation on the circular portion falling inside the curved mask; The first test pattern, the second test pattern and the third test pattern are combined to generate a test pattern collection.
2. The method for generating a collection of curve mask test patterns according to claim 1, characterized in that: The process of extracting a boundary point at each upper and lower edge of the curved mask according to a preset rule includes any of the following extraction methods: extraction based on distance rules, extraction based on angle rules, extraction based on curvature rules, and extraction based on algorithm optimization rules.
3. A device for generating a collection of curve mask test patterns, characterized in that: include: Data acquisition module: used to obtain the curve mask and its corresponding measurement path; A test pattern generation module: used to adjust the line width of the curved mask along the direction of the measurement path to generate a first test pattern; locate the intersection of the curved mask and the measurement path, and construct a local tangent of the curved mask based on the intersection; Performing a pattern removal operation on the curved mask through the local tangent to generate a second test pattern, including: translating one or more unit distances into the interior of the curved mask along the local tangent to generate a translation area that overlaps with the curved mask during the translation process; based on the translation area, cutting out a corresponding overlapping area from the curved mask to generate the second test pattern; taking the intersection as the center, extracting a boundary point at each of the upper and lower edges of the curved mask according to a preset rule, and constructing a reference pattern based on the intersection and the boundary point, including: substituting the coordinates of the intersection and the boundary point into a circle equation, solving a reference circle formed by the intersection and the boundary point, and obtaining the radius and center coordinates of the reference circle; According to Boolean operations, the curved mask is combined with the reference pattern to generate a third test pattern, including: increasing / decreasing the radius of the reference circle by one or more unit distances to generate multiple updated radii; generating multiple derived reference circles based on the updated radius and the coordinates of the center of the circle; performing Boolean operations on each derived reference pattern and the curved mask to generate multiple third test patterns; wherein the process of performing Boolean operations on each derived reference pattern and the curved mask includes: performing a union operation on the circular portion falling outside the curved mask; performing a negation operation on the circular portion falling inside the curved mask; and merging the first test pattern, the second test pattern and the third test pattern to generate a test pattern collection.
4. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method for generating a collection of curve mask test patterns as described in any one of claims 1 to 2 is implemented.
5. A computer program product, characterized in that The computer program product includes computer program codes, and when the computer program codes are executed on a computer, the computer is enabled to implement the method for generating a collection of curve mask test patterns as claimed in any one of claims 1 to 2.
6. An electronic terminal comprising a memory, a processor and a computer program stored in the memory, characterized in that: The processor executes the computer program to implement the method for generating a collection of curve mask test patterns as described in any one of claims 1 to 2.
Citation Information
Patent Citations
Layout generation method and device for optimizing graph density distribution, medium, program product and terminal
CN118709635A
Method and apparatus for retargeting layout graphic, device, medium, and program product
WO2023070597A1