A method, apparatus, device, and storage medium for generating a mask layout
By adjusting the curve pattern according to the movement amount of the lookup table and reference segments during the mask layout generation process, the problem of unsmooth curve edges is solved, and higher lithography process accuracy and graphics quality are achieved.
Patent Information
- Application Number
- CN202510482831.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-17
- Publication Date
- 2025-08-01
- Estimated Expiration
- 2045-04-17
AI Technical Summary
In the prior art, the edges of the curve mask layout are not smooth, resulting in a decrease in the accuracy of the lithography process and serious graphics distortion.
By receiving the original layout and lookup table to be adjusted, the reference segments of the pending segment are determined, and the real movement of the pending segment is calculated based on the movement of the lookup table and the reference segment, and the curve shape is adjusted to make its edges smoother.
Improves the continuity of the edges of curved graphics, reduces the pattern distortion, and improves the accuracy of the lithography process.
Smart Images

Figure CN119987121B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of semiconductor production, and particularly to a method, apparatus, device, and storage medium for generating a mask layout. Background Art
[0002] Lithography is a core process in the chip manufacturing process. Nonlinear effects in the optical system, mask, and photoresist system will cause transfer distortion from the design pattern to the wafer manufacturing in the chip manufacturing process. Existing mask layout optimization mainly uses OPC (Optical Proximity Correction) technology to simulate and optimize the mask layout based on the objective function of EPE (Edge Placement Error) or CD (Critical Dimension) to minimize the pattern distortion caused by optical and other nonlinear effects in the semiconductor manufacturing process.
[0003] Continuing from the previous text, currently, traditional OPC correction methods usually use Manhattan-based graphic input. One of the key geometric adjustment steps, namely geometric pattern correction based on a look-up table, is widely used in the layout adjustment process. However, if the existing Manhattan-based look-up table graphic correction method is still used for curved patterns, there will be a large number of sawteeth in the corrected curved pattern, greatly affecting the subsequent pattern quality and causing pattern distortion. Reference can be made to Figure 1 , Figure 1 When using the existing technology for pattern correction, it is a schematic diagram of the movement of each segment in the pattern. In the figure, the movement distances of each segment are marked with numbers.
[0004] Therefore, how to improve the flatness of the edge of the curved pattern in the layout after OPC correction, enhance the continuity of the edge of the curved pattern, and reduce pattern distortion is an urgent problem to be solved by those skilled in the art. Summary of the Invention
[0005] The object of the present invention is to provide a method, apparatus, device, and storage medium for generating a mask layout to solve the problem in the existing technology that the edge of the curved mask layout is not smooth, which reduces the process accuracy.
[0006] To solve the above technical problems, the present invention provides a method for generating a mask layout, including:
[0007] Receiving an original layout to be adjusted and a corresponding look-up table; the original layout to be adjusted includes a pattern to be processed, and each pattern to be processed includes a plurality of segments to be processed;
[0008] Determining a reference segment corresponding to each segment to be processed; the reference segment and the segment to be processed belong to the same pattern to be processed, and are distributed within a search distance on both sides of the segment to be processed along the edge of the pattern to be processed;
[0009] Determine the table movement amounts corresponding to each reference segment according to the said look-up table;
[0010] Determine the true movement amount of the corresponding segment to be processed according to the table movement amount of the reference segment of the segment to be processed;
[0011] Move the segments to be processed according to the true movement amounts corresponding to each of the segments to be processed, so that the figure to be processed becomes a figure to be fitted;
[0012] Fit the edges of the figure to be fitted to obtain the adjusted layout.
[0013] Optionally, in the method for generating the mask layout, the determination of the reference segment corresponding to each segment to be processed includes:
[0014] Starting from the segment to be processed, move a preset search distance along the edges of the figure to be processed corresponding to the segment to be processed to both sides, and use the segments passed through as the reference segments of the segment to be processed.
[0015] Optionally, in the method for generating the mask layout, the determination of the reference segment corresponding to each segment to be processed includes:
[0016] Use the first number of segments on both sides of the segment to be processed along the edges of the figure to be processed corresponding to it as the reference segments.
[0017] Optionally, in the method for generating the mask layout, according to the table movement amount of the reference segment of the segment to be processed, determining the true movement amount of the corresponding segment to be processed includes:
[0018] Determine the table movement amount corresponding to the segment to be processed according to the said look-up table;
[0019] Determine the true movement amount of the corresponding segment to be processed according to the table movement amount of the segment to be processed and the table movement amount of the reference segment corresponding to the segment to be processed.
[0020] Optionally, in the method for generating the mask layout, before determining the reference segment corresponding to each segment to be processed, it further includes:
[0021] Determine the table movement amount corresponding to the segment to be processed according to the said look-up table;
[0022] Determine the search distance corresponding to the segment to be processed according to the table movement amount corresponding to the segment to be processed.
[0023] Optionally, in the method for generating the mask layout, receiving the original layout to be adjusted and the corresponding look-up table includes:
[0024] Receive the original layout to be adjusted and the corresponding two-dimensional look-up table.
[0025] Optionally, in the method for generating the mask layout, fitting the edge of the to-be-fitted graph to obtain an adjusted layout, including:
[0026] Determine the midpoints of each segment in the to-be-fitted graph;
[0027] Perform polynomial fitting on the midpoints of all segments in the to-be-fitted graph to obtain an adjusted layout.
[0028] A device for generating a mask layout, including:
[0029] A receiving module, configured to receive the original layout to be adjusted and the look-up table; the original layout to be adjusted includes a to-be-processed graph, and each to-be-processed graph includes a plurality of to-be-processed segments;
[0030] A reference determination module, configured to determine a reference segment corresponding to each to-be-processed segment; the reference segment and the to-be-processed segment belong to the same to-be-processed graph, and are distributed within a search distance on both sides of the to-be-processed segment along the edge of the to-be-processed graph;
[0031] A reference look-up module, configured to determine the table movement amount corresponding to each reference segment according to the look-up table;
[0032] A movement amount determination module, configured to determine the actual movement amount corresponding to the to-be-processed segment according to the table movement amount of the reference segment of the to-be-processed segment;
[0033] A movement module, configured to move the to-be-processed segment according to the actual movement amount corresponding to each to-be-processed segment, so that the to-be-processed graph becomes a to-be-fitted graph;
[0034] A fitting module, configured to fit the edge of the to-be-fitted graph to obtain an adjusted layout.
[0035] A device for generating a mask layout, including:
[0036] A memory, configured to store a computer program;
[0037] A processor, configured to implement the steps of the method for generating a mask layout according to any one of the above when executing the computer program.
[0038] A computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the method for generating a mask layout according to any one of the above are implemented.
[0039] The method for generating a mask layout provided by the present invention includes receiving an original layout to be adjusted and a corresponding look-up table; the original layout to be adjusted includes graphics to be processed, and each of the graphics to be processed includes a plurality of segments to be processed; determining a reference segment corresponding to each of the segments to be processed; the reference segment and the segment to be processed belong to the same graphics to be processed, and are distributed within a search distance on both sides of the segment to be processed along the edge of the graphics to be processed; determining a table movement amount corresponding to each reference segment according to the look-up table; determining a true movement amount corresponding to the segment to be processed according to the table movement amount of the reference segment of the segment to be processed; moving the segment to be processed according to the true movement amount corresponding to each of the segments to be processed, so that the graphics to be processed become graphics to be fitted; fitting the edge of the graphics to be fitted to obtain an adjusted layout.
[0040] In the present invention, not only the table movement amount corresponding to a segment in the look-up table is determined according to the attributes of the segment itself, but also the influence of the movement of other surrounding segments is further considered. The final movement amount (i.e., the true movement amount) of the segment to be processed is determined by the table movement amount corresponding to other segments (i.e., the reference segments) within a certain range around the segment to be processed in the look-up table. In other words, the movement amount adjusted by each segment in the layout during the OPC process is restricted by the surrounding segments in the same graphics to be processed, avoiding sudden protrusions or depressions on the edge of the adjusted graphics, making the edge of the adjusted graphics smoother, improving the continuity of the edge of the curved graphics, and reducing graphic distortion. The present invention also provides a mask layout generation device, equipment, and storage medium having the above beneficial effects. BRIEF DESCRIPTION OF THE DRAWINGS
[0041] In order to more clearly illustrate the technical solutions of the embodiments of the present invention or the prior art, the following will briefly introduce the drawings required for the description of the embodiments or the prior art. Obviously, the following drawings are only some embodiments of the present invention. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0042] Figure 1 It is a schematic diagram of the edge segment movement during the OPC correction of a mask in the prior art;
[0043] Figure 2 It is a schematic flowchart of a specific implementation manner of the method for generating a mask layout provided by the present invention;
[0044] Figure 3 It is a process structure diagram of a specific implementation manner of the method for generating a mask layout provided by the present invention;
[0045] Figure 4Process structure diagram of a specific implementation of the method for generating a mask layout provided by the present invention;
[0046] Figure 5 Process structure diagram of a specific implementation of the method for generating a mask layout provided by the present invention;
[0047] Figure 6 Flow schematic diagram of another specific implementation of the method for generating a mask layout provided by the present invention;
[0048] Figure 7 Structure schematic diagram of a specific implementation of the device for generating a mask layout provided by the present invention.
[0049] Reference signs:
[0050] 100 - receiving module; 200 - reference determination module; 300 - reference look-up table module; 400 - movement amount determination module; 500 - movement module; 600 - fitting module. Specific implementation
[0051] In order to enable those skilled in the art to better understand the solution of the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific implementations. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all of the embodiments. All other embodiments obtained by those of ordinary skill in the art based on the embodiments of the present invention without creative efforts shall fall within the scope of protection of the present invention.
[0052] The core of the present invention is to provide a method for generating a mask layout. A flow schematic diagram of a specific implementation thereof is as shown in Figure 2 shown, which is called Specific Implementation 1 and includes:
[0053] S101: Receive the original layout to be adjusted and the corresponding look-up table; the original layout to be adjusted includes the graphics to be processed, and each of the graphics to be processed includes a plurality of segments to be processed.
[0054] The look-up table records the corresponding relationship between the self-attributes of the segments to be processed and the movement amounts.
[0055] As a preferred implementation, receiving the original layout to be adjusted and the corresponding look-up table includes:
[0056] Receive the original layout to be adjusted and the corresponding two-dimensional look-up table.
[0057] In this preferred embodiment, the lookup table is selected as the two-dimensional lookup table. That is, according to the data on two dimensions of the segment to be processed, the table movement amount corresponding to the segment to be processed is determined. For example, the corresponding table movement amount is determined by the graphic width and graphic spacing at the corresponding position of the segment to be processed, and reference can be made to Figure 3 , Figure 3 wherein the graphic width is marked with W1 and the graphic spacing is marked with W2. Of course, the table movement amount has positive and negative values, indicating whether the corresponding segment moves to the outside of the graphic or to the inside of the graphic. For example, it is stipulated that moving to the outside of the graphic is a positive value, and moving to the inside of the graphic is a negative value.
[0058] S102: Determine the reference segment corresponding to each segment to be processed; the reference segment and the segment to be processed belong to the same to-be-processed graphic, and are distributed within the search distance on both sides of the segment to be processed along the edge of the to-be-processed graphic.
[0059] Reference can be made to Figure 4 , Figure 4 which shows a part of the edge of the to-be-processed graphic, where a single segment to be processed (denoted as L0 in the figure) and the reference segments L1, L2, L3 and L4 corresponding to the segment L0 are marked. It should be noted that the reference segment is the reference segment relative to the segment to be processed, and during the entire mask layout generation process, L1, L2, L3 and L4 in the figure will also be successively used as the to-be-processed segments, and they each have corresponding reference segments. The two sides of the segment to be processed are the two sides along the edge of the corresponding to-be-processed graphic.
[0060] As a preferred embodiment, the determining the reference segment corresponding to each segment to be processed includes:
[0061] A1: Starting from the segment to be processed, move a preset search distance along the edge of the to-be-processed graphic corresponding to the segment to be processed to both sides respectively, and take the segments passed through as the reference segments of the segment to be processed.
[0062] Reference can be made to Figure 5 , Figure 5 which is also a part of the edge of the to-be-processed graphic, where the search distance is marked with D1. Of course, Figure 5 in
[0063] the starting point of the search distance is the corresponding end point of the segment to be processed, and in actual operation, the midpoint of the segment to be processed can also be selected as the starting point of the search distance, which can be adjusted according to the actual situation.
[0064] B1: Take the first quantity of segments on both sides of the edge of the corresponding to-be-processed figure of the to-be-processed segment as the reference segments.
[0065] In this preferred embodiment, instead of calculating the distances from each surrounding segment to the to-be-processed segment to see if they fall within the search distance, a certain number of segments on both sides of the to-be-processed segment are directly taken as the reference segments, resulting in faster processing speed and higher processing efficiency.
[0066] S103: Determine the table movement amounts corresponding to each reference segment according to the lookup table.
[0067] The table movement amount is also the movement amount recorded corresponding to the reference segment in the lookup table.
[0068] S104: Determine the true movement amount of the corresponding to-be-processed segment according to the table movement amounts of the reference segments of the to-be-processed segment.
[0069] The true movement amount is the basis for the subsequent movement operation of the to-be-processed segment. The method for calculating the true movement amount of the to-be-processed segment through the table movement amounts of the reference segments in this step can be selected according to the actual situation, such as averaging the table movement amounts of all the reference segments corresponding to the to-be-processed segment and taking this average value as the true movement amount of the to-be-processed segment.
[0070] As a preferred embodiment, determining the true movement amount of the corresponding to-be-processed segment according to the table movement amounts of the reference segments of the to-be-processed segment includes:
[0071] C1: Determine the table movement amount corresponding to the to-be-processed segment according to the lookup table.
[0072] C2: Determine the true movement amount of the corresponding to-be-processed segment according to the table movement amount of the to-be-processed segment and the table movement amounts of the reference segments corresponding to the to-be-processed segment.
[0073] In this preferred embodiment, the true movement amount of the to-be-processed segment is not only determined by the table movement amounts of the reference segments, but also needs to consider the table movement amount of the to-be-processed segment. For example, the true movement amount of the to-be-processed segment is calculated by the following formula (1):
[0074] W F =W A *i+W C ; (1)
[0075] Wherein, W F is the true movement amount of the to-be-processed segment, W Ais the average value of the table movement amounts of all the reference segments of the segment to be processed, i is a preset coefficient, and W C is the table movement amount of the segment to be processed.
[0076] S105: Move the segment to be processed according to the actual movement amount corresponding to each segment to be processed, so that the figure to be processed becomes a figure to be fitted.
[0077] S106: Fit the edge of the figure to be fitted to obtain an adjusted layout.
[0078] Fitting the edge of the figure to be fitted to obtain an adjusted layout includes:
[0079] E1: Determine the midpoints of each segment in the figure to be fitted.
[0080] E2: Perform polynomial fitting on the midpoints of all the segments in the figure to be fitted to obtain an adjusted layout.
[0081] As a specific implementation manner, in this step, the midpoints of all the segments of the figure to be fitted can be fitted, which greatly reduces the calculation difficulty. At the same time, the polynomial fitting method is used for calculation, which not only improves the calculation speed but also improves the fitting accuracy. Of course, other fitting means can also be used, and the present invention does not limit this here.
[0082] The method for generating a mask layout provided by the present invention includes receiving an original layout to be adjusted and a corresponding look-up table; the original layout to be adjusted includes graphics to be processed, and each of the graphics to be processed includes a plurality of segments to be processed; determining a reference segment corresponding to each segment to be processed; the reference segment and the segment to be processed belong to the same graphics to be processed, and are distributed within a search distance on both sides of the segment to be processed along the edge of the graphics to be processed; determining the table movement amount corresponding to each reference segment according to the look-up table; determining the actual movement amount of the corresponding segment to be processed according to the table movement amount of the reference segment of the segment to be processed; moving the segment to be processed according to the actual movement amount corresponding to each segment to be processed, so that the graphics to be processed becomes a graphics to be fitted; fitting the edge of the graphics to be fitted to obtain an adjusted layout. In the present invention, not only the table movement amount corresponding to the segment in the look-up table is determined according to the attributes of the segment itself, but also the influence of the movement of other surrounding segments is further considered. The final movement amount (i.e., the actual movement amount) of the segment to be processed is determined by the table movement amount corresponding to other segments (i.e., the reference segments) within a certain range around the segment to be processed. In other words, the movement amount adjusted by each segment in the layout during the OPC process is restricted by the surrounding segments in the same graphics to be processed, avoiding sudden protrusions or depressions on the edge of the adjusted graphics, making the edge of the adjusted graphics smoother, improving the continuity of the edge of the curved graphics, and reducing graphics distortion.
[0083] On the basis of the first specific implementation manner, the determination method of the search distance is further limited to obtain the second specific implementation manner, and the corresponding flow schematic diagram is as Figure 6 shown, which is called the second specific implementation manner and includes:
[0084] S201: Receive the original layout to be adjusted and the corresponding look-up table; the original layout to be adjusted includes graphics to be processed, and each of the graphics to be processed includes a plurality of segments to be processed.
[0085] S202: Determine the table movement amount corresponding to the segment to be processed according to the look-up table.
[0086] S203: Determine the search distance corresponding to the segment to be processed according to the table movement amount corresponding to the segment to be processed.
[0087] As a specific implementation, the table movement amount corresponding to the to-be-processed segment can be directly used as its corresponding search distance. That is, the larger the table movement amount of the to-be-processed segment, the larger the corresponding search distance. In other words, the more surrounding segments are considered, the smaller the gap between the true movement amount obtained subsequently and the true movement amounts of other surrounding segments, avoiding the situation where the table movement amount of a single to-be-processed segment is too large, resulting in excessive protrusion or depression, and further improving the continuity of the adjusted graphic edge.
[0088] Of course, the search distance can also be determined from the table movement amount corresponding to the to-be-processed segment in other ways. For example, the search distance is determined by the following formula (2):
[0089] D n =|W0 - W n | * a + D0; (2)
[0090] Wherein, D n is the search distance of the nth to-be-processed segment, W n is the table movement amount of the nth to-be-processed segment, W0 is a preset reference movement amount, D0 is a preset reference search distance, and a is a preset proportionality coefficient.
[0091] It can be easily seen from formula (2) that the method provided by formula (2) has a preset reference movement amount and a preset reference search distance. The greater the movement amount recorded in the table deviates from the preset reference movement amount, the greater the additional search distance required for the search distance of this to-be-processed segment. In other words, for the to-be-processed segments that deviate more from the reference movement amount, more corresponding reference segments are added, further reducing the probability that the to-be-processed segments are excessively protruded or depressed after adjustment and improving the flatness of the graphic edge.
[0092] S204: Determine the reference segment corresponding to each to-be-processed segment; the reference segment and the to-be-processed segment belong to the same to-be-processed graphic, and are distributed within the search distance on both sides of the to-be-processed segment along the edge of the to-be-processed graphic.
[0093] S205: Determine the table movement amount corresponding to each reference segment according to the look-up table.
[0094] S206: Determine the true movement amount of the corresponding to-be-processed segment according to the table movement amount of the reference segment of the to-be-processed segment.
[0095] S207: Move the to-be-processed segment according to the true movement amount corresponding to each to-be-processed segment, so that the to-be-processed graphic becomes a to-be-fitted graphic.
[0096] S208: Fit the edge of the to-be-fitted graphic to obtain the adjusted layout.
[0097] The difference between this specific embodiment and the above specific embodiment is that in this specific embodiment, a corresponding search distance is calculated for each of the to-be-processed segments, and the other steps are the same as those in the above specific embodiment, so they will not be elaborated here.
[0098] In this specific embodiment, before determining the reference segment corresponding to the to-be-processed segment, the search distances corresponding to each of the to-be-processed segments are first determined, that is, different to-be-processed segments have different search distances, which further improves the smoothness of the adjusted graphic edge and enhances the versatility of the present invention.
[0099] Next, the mask layout generation device provided by the embodiment of the present invention will be introduced. The mask layout generation device described below can be correspondingly referred to the mask layout generation method described above.
[0100] Figure 7 is a structural block diagram of the mask layout generation device provided by the embodiment of the present invention. Refer to Figure 7 The mask layout generation device may include:
[0101] A receiving module 100, configured to receive an original layout to be adjusted and a corresponding lookup table; the original layout to be adjusted includes graphics to be processed, and each of the graphics to be processed includes a plurality of to-be-processed segments;
[0102] A reference determination module 200, configured to determine a reference segment corresponding to each of the to-be-processed segments; the reference segment and the to-be-processed segment belong to the same to-be-processed graphic, and are distributed within the search distance on both sides of the to-be-processed segment along the edge of the to-be-processed graphic;
[0103] A reference lookup module 300, configured to determine a table movement amount corresponding to each reference segment according to the lookup table;
[0104] A movement amount determination module 400, configured to determine a true movement amount corresponding to the to-be-processed segment according to the table movement amount of the reference segment of the to-be-processed segment;
[0105] A movement module 500, configured to move the to-be-processed segments according to the true movement amounts corresponding to each of the to-be-processed segments, so that the to-be-processed graphics become graphics to be fitted;
[0106] A fitting module 600, configured to fit the edge of the graphics to be fitted to obtain an adjusted layout.
[0107] As a preferred embodiment, the reference determination module 200 includes:
[0108] A mobile search unit, which is used to start from the to-be-processed segment, move a preset search distance along the edges of the to-be-processed figure corresponding to the to-be-processed segment to both sides respectively, and take the segments passed by as the reference segments of the to-be-processed segment.
[0109] As a preferred embodiment, the reference determination module 200 includes:
[0110] A quantity search unit, which is used to take the segments with the first quantity on both sides of the to-be-processed segment along the edges of the to-be-processed figure corresponding to it as the reference segments.
[0111] As a preferred embodiment, the movement amount determination module 400 includes:
[0112] A first to-be-processed look-up table unit, which is used to determine the table movement amount corresponding to the to-be-processed segment according to the look-up table;
[0113] A segment comprehensive movement amount unit, which is used to determine the true movement amount of the corresponding to-be-processed segment according to the table movement amount of the to-be-processed segment and the table movement amount of the reference segment corresponding to the to-be-processed segment.
[0114] As a preferred embodiment, the reference determination module 200 further includes:
[0115] A second to-be-processed look-up table unit, which is used to determine the table movement amount corresponding to the to-be-processed segment according to the look-up table;
[0116] A search distance determination unit, which is used to determine the search distance corresponding to the to-be-processed segment according to the table movement amount corresponding to the to-be-processed segment.
[0117] As a preferred embodiment, the receiving module 100 includes:
[0118] A two-dimensional table unit, which is used to receive the original layout to be adjusted and the corresponding two-dimensional look-up table.
[0119] As a preferred embodiment, the fitting module 600 includes:
[0120] A midpoint determination unit, which is used to determine the midpoints of each segment in the figure to be fitted;
[0121] A midpoint fitting unit, which is used to perform polynomial fitting on the midpoints of all segments in the figure to be fitted to obtain the adjusted layout.
[0122] The mask layout generation device provided by the present invention includes a receiving module 100 for receiving an original layout to be adjusted and a corresponding look-up table; the original layout to be adjusted includes graphics to be processed, and each of the graphics to be processed includes a plurality of segments to be processed; a reference determination module 200 for determining a reference segment corresponding to each of the segments to be processed; the reference segment and the segment to be processed belong to the same graphics to be processed, and are distributed within a search distance on both sides of the segment to be processed along the edge of the graphics to be processed; a reference look-up table module 300 for determining a table movement amount corresponding to each reference segment according to the look-up table; a movement amount determination module 400 for determining a true movement amount corresponding to the segment to be processed according to the table movement amount of the reference segment of the segment to be processed; a movement module 500 for moving the segment to be processed according to the true movement amount corresponding to each of the segments to be processed, so that the graphics to be processed becomes a graphics to be fitted; a fitting module 600 for fitting the edge of the graphics to be fitted to obtain an adjusted layout. In the present invention, not only the table movement amount corresponding to the segment in the look-up table is determined according to the attributes of the segment itself, but also the influence of the movement of other surrounding segments is further considered. The final movement amount (i.e., the true movement amount) of the segment to be processed is determined by the table movement amount corresponding to other segments (i.e., the reference segments) within a certain range around the segment to be processed in the look-up table. In other words, the movement amount adjusted by each segment in the layout during the OPC process is restricted by the surrounding segments in the same graphics to be processed, avoiding sudden protrusions or depressions on the edge of the adjusted graphics, making the edge of the adjusted graphics smoother, improving the continuity of the edge of the curved graphics, and reducing graphic distortion.
[0123] The mask layout generation device of this embodiment is used to implement the foregoing mask layout generation method. Therefore, the specific implementation manners in the mask layout generation device can be seen in the embodiment part of the mask layout generation method in the foregoing text. For example, the receiving module 100, the reference determination module 200, the reference look-up table module 300, the movement amount determination module 400, the movement module 500, and the fitting module 600 are respectively used to implement steps S101, S102, S103, S104, S105, and S106 in the foregoing mask layout generation method. Therefore, its specific implementation manners can be referred to the descriptions of the corresponding various part embodiments and will not be elaborated herein.
[0124] The present invention also provides a mask layout generation device, including:
[0125] a memory for storing a computer program;
[0126] A processor, which is configured to implement the steps of the method for generating a mask layout according to any one of the above when executing the computer program. The method for generating a mask layout provided by the present invention includes receiving an original layout to be adjusted and a corresponding look-up table; the original layout to be adjusted includes graphics to be processed, and each of the graphics to be processed includes a plurality of segments to be processed; determining a reference segment corresponding to each of the segments to be processed; the reference segment and the segment to be processed belong to the same graphics to be processed, and are distributed on both sides of the segment to be processed within a search distance along the edge of the graphics to be processed; determining a table movement amount corresponding to each reference segment according to the look-up table; determining a true movement amount of the corresponding segment to be processed according to the table movement amount of the reference segment of the segment to be processed; moving the segments to be processed according to the true movement amounts corresponding to the segments to be processed, so that the graphics to be processed become graphics to be fitted; fitting the edge of the graphics to be fitted to obtain an adjusted layout. In the present invention, not only the table movement amount corresponding to a segment in the look-up table is determined according to the attributes of the segment itself, but also the influence of the movement of other surrounding segments is further considered. The final movement amount (i.e., the true movement amount) of the segment to be processed is determined by the table movement amount corresponding to other segments (i.e., the reference segments) within a certain range around the segment to be processed. In other words, the movement amount adjusted by each segment in the layout during the OPC process is restricted by the surrounding segments in the same graphics to be processed, avoiding sudden protrusions or depressions on the edge of the adjusted graphics, making the edge of the adjusted graphics smoother, improving the continuity of the edge of the curved graphics, and reducing graphic distortion.
[0127] The present invention also provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of any one of the above-mentioned methods for generating a mask layout are implemented. In the method for generating a mask layout provided by the present invention, by receiving an original layout to be adjusted and a corresponding look-up table; the original layout to be adjusted includes graphics to be processed, and each of the graphics to be processed includes a plurality of segments to be processed; determining a reference segment corresponding to each segment to be processed; the reference segment and the segment to be processed belong to the same graphics to be processed, and are distributed within a search distance on both sides of the segment to be processed along the edge of the graphics to be processed; determining a table movement amount corresponding to each reference segment according to the look-up table; determining a true movement amount of the corresponding segment to be processed according to the table movement amount of the reference segment of the segment to be processed; moving the segment to be processed according to the true movement amount corresponding to each segment to be processed, so that the graphics to be processed becomes a graphics to be fitted; fitting the edge of the graphics to be fitted to obtain an adjusted layout. In the present invention, not only the table movement amount corresponding to the segment in the look-up table is determined according to the attributes of the segment itself, but also the influence of the movement of other surrounding segments is further considered. The final movement amount (i.e., the true movement amount) of the segment to be processed is determined by the table movement amount corresponding to other segments (i.e., the reference segments) within a certain range around the segment to be processed. In other words, the movement amount adjusted by each segment in the layout during the OPC process is restricted by the surrounding segments in the same graphics to be processed, avoiding sudden protrusions or depressions on the edge of the adjusted graphics, making the edge of the adjusted graphics smoother, improving the continuity of the edge of the curved graphics, and reducing graphic distortion.
[0128] The various embodiments in this specification are described in a progressive manner. Each embodiment focuses on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the description of the method part.
[0129] It should be noted that in this specification, relational terms such as first and second are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprising", "including" or any other variant thereof are intended to cover non-exclusive inclusion, such that a process, method, article or device comprising a series of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article or device. Without further limitation, an element defined by the statement "comprising an..." does not exclude the presence of additional identical elements in the process, method, article or device comprising the said element.
[0130] Those skilled in the art can further realize that the units and algorithm steps of each example described in combination with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. To clearly illustrate the interchangeability of hardware and software, the composition and steps of each example have been generally described according to functions in the above description. Whether these functions are executed in a hardware or software manner 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 implementation should not be considered to exceed the scope of the present invention.
[0131] The steps of the method or algorithm described in combination with the embodiments disclosed herein can be directly implemented by hardware, a software module executed by a processor, or a combination of the two. The software module can be placed in a random access memory (RAM), internal 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 well-known in the technical field.
[0132] The above has introduced in detail the method, apparatus, device and storage medium for generating a mask layout provided by the present invention. Specific examples are used herein to elaborate on the principle and implementation manner of the present invention. The description of the above embodiments is only used to help understand the method and its core idea of the present invention. It should be noted that for those of ordinary skill in the art in this technical field, without departing from the principle of the present invention, several improvements and modifications can be made to the present invention, and these improvements and modifications also fall within the protection scope of the present invention.
Claims
1. A method for generating a mask layout, characterized in that, Comprising: Receiving an original layout to be adjusted and a corresponding look-up table; The original layout to be adjusted includes graphics to be processed, and each of the graphics to be processed includes a plurality of segments to be processed; Determining a reference segment corresponding to each of the segments to be processed; The reference segment and the segment to be processed belong to the same graphic to be processed, and are distributed within a search distance on both sides of the segment to be processed along the edge of the graphic to be processed; Determining a table movement amount corresponding to each reference segment according to the look-up table; Determining a true movement amount of the corresponding segment to be processed according to the table movement amount of the reference segment of the segment to be processed; Moving the segments to be processed according to the true movement amounts corresponding to the segments to be processed, so that the graphics to be processed become graphics to be fitted; Fitting the edge of the graphics to be fitted to obtain an adjusted layout; Before determining the reference segment corresponding to each of the segments to be processed, further comprising: Determining a table movement amount corresponding to the segment to be processed according to the look-up table; Determining a search distance corresponding to the segment to be processed according to the table movement amount corresponding to the segment to be processed; wherein, the search distance corresponding to the segment to be processed is determined by the following formula: D n = |W0 - W n | * a + D0; Among them, D n is the search distance of the nth segment to be processed, W n is the table movement amount of the nth segment to be processed, W0 is a preset reference movement amount, D0 is a preset reference search distance, and a is a preset proportionality coefficient; Determining a true movement amount of the corresponding segment to be processed according to the table movement amount of the reference segment of the segment to be processed, including: Determining a table movement amount corresponding to the segment to be processed according to the look-up table; Determining a true movement amount of the corresponding segment to be processed according to the table movement amount of the segment to be processed and the table movement amount of the reference segment corresponding to the segment to be processed; wherein, the true movement amount corresponding to the segment to be processed is determined by the following formula: W F = W A * i + W C ; Where, W F is the true movement amount of the segment to be processed, W A is the average value of the table movement amounts of all reference segments of the segment to be processed, and i is a preset coefficient, W C is the table movement amount of the segment to be processed.
2. The method for generating a mask layout according to claim 1, wherein The determining of the reference segment corresponding to each of the segments to be processed includes: Taking the segment to be processed as a starting point, moving a preset search distance along the edge of the graphic to be processed corresponding to the segment to be processed to both sides respectively, and taking the segments passed through as the reference segments of the segment to be processed.
3. The method for generating a mask layout according to claim 1, wherein The determining of the reference segment corresponding to each of the segments to be processed includes: Taking the first number of segments on both sides of the segment to be processed along the edge of the corresponding graphic to be processed as the reference segments.
4. The method for generating a mask layout according to claim 1, wherein, Receiving the original layout to be adjusted and the corresponding look-up table includes: Receiving the original layout to be adjusted and the corresponding two-dimensional look-up table.
5. The method for generating a mask layout according to claim 1, characterized in that, Fitting the edge of the graphics to be fitted to obtain an adjusted layout, including: Determining the midpoints of the segments in the graphics to be fitted; Performing polynomial fitting on the midpoints of all the segments in the graphics to be fitted to obtain an adjusted layout.
6. A generating device for a mask layout, characterized in that Comprising: A receiving module, configured to receive an original layout to be adjusted and a corresponding look-up table; The original layout to be adjusted includes graphics to be processed, and each of the graphics to be processed includes a plurality of segments to be processed; A reference determination module, configured to determine a reference segment corresponding to each of the segments to be processed; The reference segment and the segment to be processed belong to the same graphic to be processed, and are distributed within a search distance on both sides of the segment to be processed along the edge of the graphic to be processed; A reference look-up table module, configured to determine a table movement amount corresponding to each reference segment according to the look-up table; A movement amount determination module, configured to determine the true movement amount of a corresponding to-be-processed segment according to the table movement amount of a reference segment of the to-be-processed segment; A movement module, configured to move the to-be-processed segments according to the true movement amounts corresponding to the respective to-be-processed segments, so that the to-be-processed graph becomes a to-be-fitted graph; A fitting module, configured to fit the edge of the to-be-fitted graph to obtain an adjusted layout; The reference determination module further includes: A second to-be-processed look-up table unit, configured to determine the table movement amount corresponding to the to-be-processed segment according to the look-up table; A search distance determination unit, configured to determine the search distance corresponding to the to-be-processed segment according to the table movement amount corresponding to the to-be-processed segment; wherein, the search distance corresponding to the to-be-processed segment is determined by the following formula: D n = |W0 - W n | * a + D0; Among them, D n is the search distance of the nth segment to be processed, W n is the table movement amount of the nth segment to be processed, W0 is a preset reference movement amount, D0 is a preset reference search distance, and a is a preset proportionality coefficient; The movement amount determination module includes: A first to-be-processed look-up table unit, configured to determine the table movement amount corresponding to the to-be-processed segment according to the look-up table; A segment comprehensive movement amount unit, configured to determine the true movement amount of a corresponding to-be-processed segment according to the table movement amount of the to-be-processed segment and the table movement amount of the reference segment corresponding to the to-be-processed segment; wherein, the true movement amount corresponding to the to-be-processed segment is determined by the following formula: W F = W A * i + W C ; Where, W F is the true movement amount of the segment to be processed, W A is the average value of the tabular movement amounts of all the reference segments of the segment to be processed, i is a preset coefficient, and W C is the tabular movement amount of the segment to be processed.
7. A device for generating a mask layout, characterized in that It includes: A memory, configured to store a computer program; A processor, configured to implement the steps of the method for generating a mask layout according to any one of claims 1 to 5 when executing the computer program.
8. A computer-readable storage medium, characterized in that, A computer program is stored on the computer-readable storage medium, and when the computer program is executed by a processor, the steps of the method for generating a mask layout according to any one of claims 1 to 5 are implemented.
Citation Information
Patent Citations
Optical proximity correction for free shape
CN116710843A
Layout graph correction method, computer equipment, storage medium and product
CN118657115A