Method and system for improving OPC operation efficiency, electronic equipment and computer readable storage medium

By dividing and merging graphics modules to achieve computational load balancing, the problem of long OPC correction time is solved, the efficiency and stability of OPC correction are improved, and the EPE error is reduced.

CN121763642APending Publication Date: 2026-03-31CHONGQING XINLIAN MICROELECTRONICS CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-11-24
Publication Date
2026-03-31

AI Technical Summary

Technical Problem

During OPC correction, the computation time is long and the correction efficiency is low, which leads to an extension of the overall computation time. In particular, after the calculation of high-density graphic areas is completed, it is necessary to wait for other areas to complete before the next round of iteration calculation can be carried out.

Method used

By obtaining the graphics density of the graphics module, the graphics module is divided into high-density and low-density modules, and then segmented or merged until the graphics density of the segmented region and the merged region are approximately equal. The computing system is then used to perform OPC correction to achieve computational load balancing.

Benefits of technology

It significantly improved the utilization of computing resources, shortened the overall running time, improved the efficiency of OPC correction, reduced EPE error, and enhanced correction stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121763642A_ABST
    Figure CN121763642A_ABST
Patent Text Reader

Abstract

The invention provides a method and system for improving OPC operation efficiency, electronic equipment and a computer readable storage medium, and belongs to the field of semiconductors. The method for improving the OPC operation efficiency comprises the steps that a layout is provided, and a graph module is at least divided into a high-density graph module and a low-density graph module; dividing the high-density graph module to form a segmentation area, and combining the low-density graph module with the low-density graph module and / or the segmentation area to form a combination area until the graph density of the segmentation area is approximately equal to that of the combination area. According to the method, the high-density graph module is segmented again. The low-density graph module and the low-density graph module or the segmented area are combined until the graph density of the segmented area and the graph density of the combined area are approximately equal, so that the OPC result is converged more quickly, the EPE error is reduced finally, and the OPC stability can be effectively improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of semiconductor technology, and in particular to a method and system for improving OPC computing efficiency, an electronic device, and a computer-readable storage medium. Background Technology

[0002] In photolithography, the pattern on a photomask (mask) is projected onto photoresist via an exposure system, forming the corresponding pattern in the photoresist. However, due to optical factors during exposure or chemical reactions in the photoresist, the pattern formed in the photoresist may deviate from the pattern on the photomask. This deviation needs to be corrected beforehand using OPC (Optical Proximity Correction). When the photomask is exposed using OPC correction, the pattern formed in the photoresist will match the designed pattern and meet the process requirements.

[0003] When calculating the final mask pattern, OPC correction divides the entire layout into multiple regions for parallel computation. During each iteration, due to system architecture limitations, each region can only be executed on a single independent blade server (CPU core). OPC correction iteratively calculates the graphics on the layout that need correction. Because the number of graphics in each region varies, regions with fewer graphics are calculated faster, while regions with more graphics take longer to compute. However, regions that are calculated first must wait for all other regions to complete their calculations before entering the next iteration, resulting in a longer overall computation time and reduced OPC correction efficiency.

[0004] It should be noted that the information disclosed in the background section of this invention is intended only to enhance the understanding of the general background of this invention, and should not be construed as an admission or in any way implying that the information constitutes prior art known to those skilled in the art. Summary of the Invention

[0005] The purpose of this invention is to provide a method, system, electronic device, and computer-readable storage medium for improving the efficiency of OPC operations, in order to solve the problems of long calculation time and low correction efficiency during OPC correction.

[0006] To address the aforementioned technical problems, this invention provides a method for improving OPC computation efficiency, comprising:

[0007] A layout is provided, the layout comprising multiple graphic modules, each graphic module comprising several graphics;

[0008] Obtain the graphics density of the graphics module, and based on the graphics density, divide the graphics module into at least a high-density graphics module and a low-density graphics module;

[0009] The high-density graphics module is divided into segmented regions, and the low-density graphics module is merged with the low-density graphics module and / or the segmented regions to form merged regions, until the graphics density of the segmented regions and the merged regions are approximately equal.

[0010] Get the OPC correction runtime.

[0011] Preferably, obtaining the graphics density of the graphics module includes:

[0012] Obtain the spacing between two adjacent graphics in each of the aforementioned graphics modules;

[0013] Based on the spacing, the graphics density of the graphics module is defined.

[0014] Preferably, dividing the graphics module into at least high-density graphics modules and low-density graphics modules based on the graphics density includes:

[0015] Based on the spacing between two adjacent graphics, graphics modules with spacing within the first threshold range are defined as high-density graphics modules, and graphics modules with spacing within the second threshold range are defined as low-density graphics modules.

[0016] Preferably, obtaining the graphics density of the graphics module includes:

[0017] Obtain the number of vertices of the graph in each of the aforementioned graph modules, as well as the total length of the graph's sides;

[0018] The graph density of the graph module is defined based on the number of vertices and the total length of the sides of the graph.

[0019] Preferably, dividing the graphics module into at least high-density graphics modules and low-density graphics modules based on the graphics density includes:

[0020] A graphics module whose number of vertices and total side length fall within a first set threshold range is defined as a high-density graphics module, and a graphics module whose number of vertices and total side length fall within a second set threshold range is defined as a medium-density graphics module.

[0021] Preferably, dividing the high-density graphics module into segmented regions includes:

[0022] The high-density graphics module is divided into segmented regions using recursive quadtree segmentation and / or recursive binary tree segmentation.

[0023] Preferably, the number of graphics modules is determined based on the number of blade servers.

[0024] Based on the same inventive concept, this invention also provides a system for improving OPC computation efficiency, comprising:

[0025] An acquisition module is used to provide a layout, the layout including multiple graphic modules, each graphic module including several graphics; acquire the graphic density of the graphic modules, and based on the graphic density, divide the graphic modules into at least high-density graphic modules and low-density graphic modules;

[0026] The segmentation module is used to divide the high-density graphics module into segmented regions, and to merge the low-density graphics module with the low-density graphics module and / or the segmented regions into merged regions, until the graphics density of the segmented regions and the merged regions are approximately equal.

[0027] The calculation module is used to obtain the OPC correction runtime.

[0028] Based on the same inventive concept, the present invention also provides an electronic device, comprising:

[0029] Memory, used to store instructions;

[0030] At least one processor is configured to execute the instructions to perform the method as described above.

[0031] Based on the same inventive concept, the present invention also provides a computer-readable storage medium that stores a set of instructions for an electronic device, which, when executed, causes the electronic device to perform the methods described above.

[0032] Compared with the prior art, the method of improving OPC computing efficiency of the present invention has the following advantages:

[0033] This invention further segments high-density graphics modules. Low-density graphics modules are then merged with other low-density modules, or with segmented regions, until the graphics densities of the segmented and merged regions are approximately equal. The computational system then calculates the runtime for OPC correction. This density-driven dynamic partitioning method ensures a highly balanced computational load between segmented and merged regions, with the time difference per iteration controlled within ±5%, thus significantly improving computational resource utilization and shortening the overall runtime. Within the same computation time, this method supports more rounds of iterative calculations, not only enabling faster convergence of OPC correction results and reducing the final EPE error, but also effectively improving the stability of OPC correction.

[0034] The system, electronic device, and computer-readable storage medium for improving OPC computation efficiency provided by this invention belong to the same inventive concept as the method for improving OPC computation efficiency provided by this invention. Therefore, the system, electronic device, and computer-readable storage medium for improving OPC computation efficiency provided by this invention have at least all the advantages of the method for improving OPC computation efficiency provided by this invention, shortening the running time of OPC correction, reducing EPE error, and improving the stability of OPC correction. Attached Figure Description

[0035] Figure 1 This is a schematic diagram of the calculation process for OPC correction in one embodiment;

[0036] Figure 2 This is a flowchart of a method for improving OPC computation efficiency according to an embodiment of the present invention;

[0037] Figure 3 This is a schematic diagram of dividing a layout into multiple graphic modules in one embodiment of the present invention;

[0038] Figure 4 This is a schematic diagram illustrating the further segmentation of a high-density graphics module in one embodiment of the present invention;

[0039] Figure 5 This is an embodiment of the present invention. Figure 2 A schematic diagram illustrating the calculation completed during OPC correction using the revealed method;

[0040] In the picture,

[0041] 10 - Low-density graphic area; 20 - Medium-density graphic area; 30 - High-density graphic area;

[0042] 100 - Low-density graphics module; 200 - Medium-density graphics module;

[0043] 210 - First medium-density graphic segmentation region; 220 - Second medium-density graphic segmentation region;

[0044] 230 - Third medium-density graphic segmentation region; 240 - Fourth medium-density graphic segmentation region;

[0045] 300 - High-density graphics module; 310 - First high-density graphics segmentation region;

[0046] 320 - Second high-density graphic segmentation region. Detailed Implementation

[0047] To make the objectives, advantages, and features of the present invention clearer, the following further elaborates on the method and system for improving the OPC operation efficiency, electronic device, and computer-readable storage medium proposed by the present invention in conjunction with the accompanying drawings and specific embodiments. It should be noted that the accompanying drawings are all in a very simplified form and use non-precise scales, solely for the purpose of facilitating and clearly assisting in explaining the objectives of the embodiments of the present invention. It should be understood that the drawings in the specification do not necessarily show the specific structure of the present invention in proportion, and the illustrative features used to explain certain principles of the present invention in the drawings will also adopt a slightly simplified drawing method. The specific design features of the present invention disclosed herein, such as specific dimensions, directions, positions, and shapes, will be partially determined by the specific application and usage environment. Also, in the following described embodiments, sometimes the same reference numerals are used commonly between different drawings to represent the same parts or parts with the same functions, and the repeated description thereof is omitted. In this specification, similar reference numerals and letters are used to represent similar items. Therefore, once an item is defined in one drawing, it does not need to be further discussed in subsequent drawings.

[0048] In addition, the terms "first" and "second" are used only for descriptive purposes and cannot be construed as indicating or implying relative importance or implicitly specifying the quantity of the indicated technical features. Thus, the features defined with "first" and "second" may explicitly or implicitly include at least one of such features. In the description of the present invention, the meaning of "plurality" is at least two, such as two, three, etc., unless otherwise specifically and clearly defined.

[0049] In the description of this specification, the description referring to terms such as "one embodiment", "some embodiments", "example", "specific example", or "some examples" means that the specific features, structures, materials, or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials, or characteristics described can be combined in a suitable manner in any one or more embodiments or examples. In addition, without contradiction, those skilled in the art can combine and combine the different embodiments or examples described in this specification and the features of different embodiments or examples.

[0050] As Figure 1 shown, during OPC correction, due to the large area of the entire layout, the layout needs to be divided into multiple regions (Tiles). Each region is bound to a CPU core. Therefore, the initial recommended number of CPU cores can be calculated based on the layout area. During OPC correction calculation, each CPU core calculates the graphics of the region bound to it. Taking Figure 1Taking the layout shown in (a) as an example, the layout is divided into four regions. These four regions include one high-density graphic region 30, two medium-density graphic regions 20, and one low-density graphic region 10. During the specific OPC correction calculation, because the low-density graphic region 10 contains fewer graphics and has lower graphic complexity, it is calculated first, resulting in the following structure: Figure 1 The structure shown in (b) is as follows. Suppose that the calculation time for the low-density graphic region 10 is 1 minute. Next, the calculation for the medium-density graphic region 20 is performed. After the calculation is completed, the structure is as shown in [example diagram]. Figure 1 The structure shown in (c) is assumed to take 3 minutes to complete the calculation of the medium-density graphic region 20. Finally, the calculation of the high-density graphic region 30 is performed. After the calculation is completed, the structure shown in (c) is formed. Figure 1 The structure shown in (d) takes a total of 7 minutes to complete. In this method, after the calculation of the low-density graphics region 10 is completed, the calculation of the high-density graphics region 30 must be completed before the next iteration can be performed. Therefore, this results in a long total calculation time and low OPC correction efficiency.

[0051] The core idea of ​​this invention is to provide a method to improve the efficiency of OPC calculation, which can shorten the OPC correction calculation time and improve the OPC correction efficiency.

[0052] To achieve the above ideas, this invention provides a method for improving OPC computation efficiency, as shown in the figure. Figures 2 to 5 A specific implementation of a method for improving OPC computation efficiency is disclosed. This method includes the following steps S1 to S4.

[0053] Step S1: Provide a layout, the layout including multiple graphic modules, the graphic modules including several graphics.

[0054] Specifically, refer to Figure 2 and Figure 3 As shown, the layout design includes several photolithographic patterns formed on the wafer, such as metal layer patterns, contact hole patterns, and gate patterns. Each layout generates a GDS file during design. All layout design data can be obtained from the GDS file. For example, the initial recommended number of CPU cores can be calculated based on the layout area. Since each CPU core corresponds to one graphics module, the initial number of graphics modules can be obtained based on the initial recommended number of CPU cores. The number of graphics modules is determined based on the number of blade servers. Assume the layout includes, for example... Figure 3The diagram shows four graphic modules. Each graphic module includes several graphics. That is, a graphic module may include one graphic, or it may include two or more graphics. It should be noted that the layout can be divided into four graphic modules, or it may be divided into two, three, four, or more graphic modules. In this embodiment, the explanation is based on the layout including four graphic modules.

[0055] Step S2: Obtain the graphics density of the graphics module, and based on the graphics density, divide the graphics module into at least a high-density graphics module 300 and a low-density graphics module 100.

[0056] Specifically, continue to participate Figure 2 and Figure 3 As shown, in some embodiments, obtaining the graphics density of the graphics module includes:

[0057] First, obtain the spacing between two adjacent graphics in each graphics module. This spacing can be obtained from the GDS file.

[0058] Next, based on the spacing, the graphics density of the graphics module is defined. Graphics with spacing within a first threshold range are defined as high-density graphics, and graphics with spacing within a second threshold range are defined as low-density graphics. Then, the graphics module containing the high-density graphics is defined as high-density graphics module 300. The graphics module containing the low-density graphics is defined as low-density graphics module 100.

[0059] It should be noted that engineers can set the threshold range for the spacing based on actual circumstances. For example, they can obtain the average value of the spacing based on the maximum and minimum values. Then, the spacing between the maximum and the average value is defined as the first threshold range, and the spacing between the average and the minimum value is defined as the second threshold range.

[0060] It should also be noted that not only can high-density graphics module 300 and low-density graphics module 100 be defined based on spacing, graphics with spacing within the third threshold range can also be defined as medium-density graphics. The graphics module containing the medium-density graphics is defined as medium-density graphics module 200. For example, as... Figure 3 As shown, it includes a high-density graphics module 300, two medium-density graphics modules 200, and a low-density graphics module 100. For the values ​​in the third threshold range, the average value mentioned above can be further divided to form the first threshold range, the second threshold range, and the third threshold range.

[0061] In some other embodiments, obtaining the graphics density of the graphics module includes:

[0062] First, obtain the number of vertices and the total side length of the graph in each of the aforementioned graphics modules. The number of vertices and the total side length of the graph can be obtained based on the GDS file.

[0063] Then, based on the number of vertices and the total length of the edges of the graphics, the graphics density of the graphics module is defined. As one example, based on the number of vertices and the total length of the edges of the graphics, the graphics modules are divided into high-density graphics module 300, medium-density graphics module 200, and low-density graphics module 100.

[0064] Step S3: Divide the high-density graphics module 300 into segmented regions, and merge the low-density graphics module 100 with the segmented regions to form merged regions, until the graphics density of the segmented regions and the merged regions are approximately equal.

[0065] Specifically, continue to participate Figure 2 and Figure 4 As shown, the high-density graphics module 300 is divided into segmented regions using recursive quadtree segmentation and / or recursive binary tree segmentation. Figure 4 As shown, the high-density graphics module 300 is divided into five first high-density graphics segmentation regions 310 and one second high-density graphics segmentation region 320. Layer-by-layer cutting reduces the area of ​​each segmented region by 50%-80%, decomposing the computation of the high-density graphics module 300 into micro-tasks to avoid excessively long computation times for single OPC corrections. It should be noted that the high-density graphics module 300 can also be divided into other numbers of segmented regions. Here, only the division of the high-density graphics module 300 into five first high-density graphics segmentation regions 310 and one second high-density graphics segmentation region 320 is used as an example for explanation.

[0066] One of the two medium-density graphics modules 200 is divided into two first medium-density graphics segmentation regions 210 and two second medium-density graphics segmentation regions 220. The other medium-density graphics module 200 is divided into two third medium-density graphics segmentation regions 230 and two fourth medium-density graphics segmentation regions 240. The medium-density graphics module 200 can also maintain the original segmentation boundaries, balancing the segmentation cost and computational efficiency, and maintaining a reasonable granularity.

[0067] Then, the low-density graphics module 100 is merged with its adjacent low-density graphics modules 100. Alternatively, the low-density graphics module 100 is merged with its adjacent segmented regions to form a merged region. For example, the low-density graphics module 100 is merged with two third medium-density graphics segmented regions 230 to form a merged region, or the low-density graphics module 100 is merged with two second medium-density graphics segmented regions 220 to form a merged region, or the low-density graphics module 100 is merged with two third medium-density graphics segmented regions 230 and two second medium-density graphics segmented regions 220 to form a merged region. By merging adjacent low-density segmented regions, a super merged region with 2-4 times the base area is generated, reducing scheduling overhead and improving core utilization. In the specific merging process, merging is performed based on the number of graphics in each segmented region until the graphics density of the segmented region and the merged region are approximately equal.

[0068] In the specific partitioning process, recursive quadtree partitioning and / or recursive binary tree partitioning can be used to divide the high-density graphics module 300 into segmented regions. Based on the GDS file, the density of the graphics in each segmented region can be obtained.

[0069] It should be noted that the medium-density graphics module 200 can be either segmented or merged, and the specific process can be determined based on the graphics density of the segmented region.

[0070] Step S4: Obtain the OPC correction runtime.

[0071] Specifically, refer to Figure 2 , Figure 4 and Figure 5 As shown, the OPC correction runtime is obtained based on the partitioned and merged layout. Assuming the OPC computation time for each partitioned and merged region is 3 minutes, then... Figure 5 As shown, the OPC calculation time for the entire layout is 3 minutes. This significantly improves the utilization of computing resources and shortens the overall computation time. Within the same computation time, this method supports more rounds of iterative calculation, which not only makes the OPC correction results converge faster and ultimately reduces the Edge Placement Error (EPE), but also effectively improves the correction stability of hotspot areas (difficult areas for graphic recognition and correction in the layout).

[0072] In this embodiment, the high-density graphics module 300 and / or the medium-density graphics module 200 are further segmented. Low-density graphics modules 100 are merged with each other, or the segmented regions are merged, until the graphics densities of the segmented and merged regions are approximately equal. Then, the computational system calculates the runtime for OPC correction. This density-driven dynamic partitioning method ensures a highly balanced computational load between the segmented and merged regions, with the time difference for a single iteration controlled within ±5%, thereby significantly improving computational resource utilization and shortening the overall runtime. Within the same computation time, this method supports more rounds of iterative computation, not only enabling faster convergence of OPC correction results and reducing the final EPE error, but also effectively improving the correction stability of hotspot regions.

[0073] To achieve the above-mentioned ideas, this embodiment also discloses a system for improving the efficiency of OPC operations, including:

[0074] An acquisition module is used to provide a layout, the layout including multiple graphic modules, each graphic module including several graphics; acquire the graphic density of the graphic modules, and based on the graphic density, divide the graphic modules into at least high-density graphic modules 300 and low-density graphic modules 100;

[0075] The segmentation module is used to divide the high-density graphics module 300 into segmented regions, and to merge the low-density graphics module 100 with the low-density graphics module 100 and / or the segmented regions into merged regions, until the graphics density of the segmented regions and the merged regions are approximately equal.

[0076] The calculation module is used to obtain the OPC correction runtime.

[0077] To achieve the above-mentioned ideas, this embodiment also discloses an electronic device, including:

[0078] Memory, used to store instructions;

[0079] At least one processor is configured to execute the instructions to perform the method as described above.

[0080] To achieve the above ideas, this embodiment also discloses a computer-readable storage medium that stores a set of instructions for an electronic device, which, when executed, causes the electronic device to perform the method described above.

[0081] The system, electronic device, and computer-readable storage medium for improving OPC computation efficiency provided in this embodiment belong to the same inventive concept as the method for improving OPC computation efficiency provided in this embodiment. Therefore, the system, electronic device, and computer-readable storage medium for improving OPC computation efficiency provided in this embodiment have at least all the advantages of the method for improving OPC computation efficiency provided in this embodiment, shortening the running time of OPC correction, reducing EPE error, and improving the stability of OPC correction.

[0082] In summary, the above embodiments have provided detailed descriptions of different configurations of methods and systems for improving OPC computing efficiency, electronic devices, and computer-readable storage media. Of course, the above descriptions are only descriptions of preferred embodiments of the present invention and are not intended to limit the scope of the present invention in any way. The present invention includes, but is not limited to, the configurations listed in the above embodiments. Those skilled in the art can draw inferences from the above embodiments. Any changes or modifications made by those skilled in the art based on the above disclosure are within the protection scope of the claims.

Claims

1. A method for improving the efficiency of an OPC operation, characterized by, The method comprises: providing a layout, the layout comprising a plurality of graphic modules, each graphic module comprising a plurality of graphics; obtaining a graphic density of each graphic module, and dividing the graphic modules into at least high-density graphic modules and low-density graphic modules based on the graphic density; dividing the high-density graphic modules to form split regions, and merging the low-density graphic modules with the low-density graphic modules and / or the split regions to form merged regions, until the graphic densities of the split regions and the merged regions are approximately equal; obtaining an OPC correction runtime.

2. The method of claim 1, wherein, The obtaining of the graphic density of each graphic module comprises: obtaining a distance between two adjacent graphics in each graphic module; defining the graphic density of each graphic module based on the distance.

3. The method of claim 2, wherein, The dividing of the graphic modules into at least high-density graphic modules and low-density graphic modules based on the graphic density comprises: defining a graphic module as a high-density graphic module if the distance between two adjacent graphics in the graphic module is within a first threshold range, and defining a graphic module as a low-density graphic module if the distance between two adjacent graphics in the graphic module is within a second threshold range.

4. The method of claim 1, wherein, The obtaining of the graphic density of each graphic module comprises: obtaining a number of vertices of each graphic in each graphic module, and a total length of edges of each graphic; defining the graphic density of each graphic module based on the number of vertices of each graphic and the total length of edges of each graphic.

5. The method for improving the efficiency of an OPC operation according to claim 4, wherein, The dividing of the graphic modules into at least high-density graphic modules and low-density graphic modules based on the graphic density comprises: defining a graphic module as a high-density graphic module if the number of vertices of each graphic and the total length of edges of each graphic in the graphic module are within a first threshold range, and defining a graphic module as a medium-density graphic module if the number of vertices of each graphic and the total length of edges of each graphic in the graphic module are within a second threshold range.

6. The method of claim 1, wherein, The dividing of the high-density graphic modules to form split regions comprises: dividing the high-density graphic modules to form split regions by using recursive quadtree splitting and / or recursive binarytree splitting.

7. The method of claim 1, wherein the method further comprises: The number of graphic modules is determined based on the number of blade servers.

8. A system for improving OPC computation efficiency, characterized in that, The method comprises: providing a layout, the layout comprising a plurality of graphic modules, each graphic module comprising a plurality of graphics; obtaining a graphic density of each graphic module, and dividing the graphic modules into at least high-density graphic modules and low-density graphic modules based on the graphic density; dividing the high-density graphic modules to form split regions, and merging the low-density graphic modules with the low-density graphic modules and / or the split regions to form merged regions, until the graphic densities of the split regions and the merged regions are approximately equal; obtaining an OPC correction runtime.

9. An electronic device, comprising: The method comprises: a memory configured to store instructions; at least one processor configured to execute the instructions to perform the method of any one of claims 1-7. 10.A computer readable storage medium storing a set of instructions of an electronic device, characterized in that, The set of instructions, when executed, is configured to cause the electronic device to perform the method of any one of claims 1-7.