Mask layout correction method, system, medium, program product and terminal based on combination of membrane computing and DBSCAN algorithm

By combining film computation with the DBSCAN algorithm, the layout density and contour parameters are optimized, and the core, boundary and sparse regions are identified and corrected. This solves the problem of lithography and polishing uniformity in sparse pattern regions in traditional mask correction methods, and achieves efficient and accurate layout correction.

CN122085587BActive Publication Date: 2026-07-14HUAXINCHENG (HANGZHOU) TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HUAXINCHENG (HANGZHOU) TECH CO LTD
Filing Date
2026-04-24
Publication Date
2026-07-14

Smart Images

  • Figure CN122085587B_ABST
    Figure CN122085587B_ABST
Patent Text Reader

Abstract

The application provides a mask layout correction method, system, medium, program product and terminal based on film calculation and DBSCAN algorithm combination. The initial layout is obtained, the initial layout is preliminarily clustered based on a preset clustering method, a plurality of partitions and the density features and contour features corresponding to each partition are obtained; the initial density parameters and the initial contour parameters of DBSCAN clustering are obtained, the initial clustering parameters of the DBSCAN clustering are iteratively optimized by using a preset film calculation algorithm according to the density features and the contour features corresponding to each partition, the optimal clustering parameters corresponding to each partition are obtained, and DBSCAN clustering is performed on each partition based on the corresponding optimal clustering parameters to obtain the core area, the boundary area and the sparse area of the initial layout; the core area, the boundary area and the sparse area are corrected based on a preset correction strategy to obtain the corrected layout of the initial layout. The accuracy of mask layout correction is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of mask layout correction technology, and in particular to a mask layout correction method, system, medium, program product and terminal based on the combination of membrane computing and DBSCAN algorithm. Background Technology

[0002] As integrated circuit process nodes continue to shrink, mask layout correction technology faces severe challenges. Traditional mask correction methods can hardly guarantee both accuracy and efficiency when dealing with layouts with uneven pattern density distribution. Existing mask correction methods, especially in sparse pattern regions, are prone to introducing specific key problems in the process steps due to the low pattern density, such as:

[0003] The proximity effect in photolithography: the illumination on sparse patterns may differ from that on dense areas, causing the pattern size (CD) to deviate from the design and increasing the edge placement error (EPE).

[0004] Uniformity of CMP process: Different grinding rates in low-density and high-density areas may lead to uneven surfaces, affecting the thickness of interlayer media and parasitic parameters.

[0005] Therefore, it is necessary to treat different regions with different layout densities separately. In particular, the correction target for sparse patterns is mainly to improve the local density distribution by adjusting the pattern and filling dummy, and to use OPC and other technologies to precisely control the pattern size and shape, which can improve the lithography imaging quality and yield, and effectively solve serious problems such as narrow process windows and pattern distortion caused by low local density in sparse pattern areas. Summary of the Invention

[0006] In view of the shortcomings of the prior art described above, the purpose of this application is to provide a mask layout correction method, system, medium, program product and terminal based on the combination of membrane computing and DBSCAN algorithm to solve the above problems.

[0007] To achieve the above and other related objectives, a first aspect of this application provides a mask layout correction method based on a combination of membrane computing and the DBSCAN algorithm, comprising: obtaining an initial layout; performing preliminary clustering on the initial layout based on a preset clustering method to obtain several partitions and density features and contour features corresponding to each partition; obtaining initial density parameters and initial contour parameters of the DBSCAN clustering; iteratively optimizing the initial density parameters and initial contour parameters using a preset membrane computing algorithm based on the density features and contour features corresponding to each partition to obtain the optimal clustering parameters corresponding to each partition; performing DBSCAN clustering on each partition based on the corresponding optimal clustering parameters to obtain the core region, boundary region, and sparse region of the initial layout; and correcting the core region, boundary region, and sparse region based on a preset correction strategy to obtain a corrected layout of the initial layout.

[0008] In some embodiments of the first aspect of this application, the step of iteratively optimizing the initial density parameters and initial contour parameters using a preset membrane calculation algorithm based on the density features and contour features corresponding to each partition to obtain the optimal clustering parameters corresponding to each partition specifically includes: optimizing the initial density parameters using a preset density optimization model based on the density features of the current partition to obtain the corresponding current density parameters; optimizing the initial contour parameters using a preset contour optimization model based on the contour features of the current partition to obtain the corresponding current contour parameters; calculating and obtaining the aggregation parameters of the current partition based on the current density parameters and the corresponding current contour parameters, and clustering the current partition using the aggregation parameters based on the DBSCAN algorithm to obtain the current clustering result; when the current clustering result meets the preset convergence requirement, using the current clustering result as the optimal clustering parameter of the current partition; when the current clustering result does not meet the preset convergence requirement, updating the initial density parameters to the current density parameters and updating the initial contour parameters to the current contour parameters to iteratively execute the acquisition of the current clustering result until the current clustering result meets the preset convergence requirement.

[0009] In some embodiments of the first aspect of this application, the aggregation parameters of the current partition are calculated based on the current density parameter and the corresponding current contour parameter. The process includes: averaging the first neighborhood radius in the current density parameter and the second neighborhood radius in the corresponding current contour parameter to obtain the fused neighborhood radius; averaging the first minimum number of points in the current density parameter and the second minimum number of points in the corresponding current contour parameter to obtain the fused minimum number of points; and using the fused neighborhood radius and the fused minimum number of points as the aggregation parameters of the current partition.

[0010] In some embodiments of the first aspect of this application, DBSCAN clustering is performed on each partition based on the corresponding optimal clustering parameters to obtain the core region, boundary region, and sparse region of the initial layout. The process includes: performing DBSCAN clustering on each partition based on the optimal clustering parameters of each partition to obtain the core region, boundary region, and sparse region of each partition; and merging the core regions, boundary regions, and sparse regions of all partitions to obtain the core region, boundary region, and sparse region of the initial layout.

[0011] In some embodiments of the first aspect of this application, the process of correcting the core region, boundary region, and sparse region based on a preset correction strategy includes: correcting the core region using an optical proximity effect correction method; correcting the boundary region using a combination of an optical proximity effect correction method and a bias method based on preset rules; and correcting the sparse region using a combination of a bias method based on preset rules and a virtual graphics filling method.

[0012] In some embodiments of the first aspect of this application, the preset density optimization model is specifically as follows:

[0013] ;

[0014] ;

[0015] in, This represents the radius of the first neighborhood of the i-th cell layout in the current partition. This represents the initial first neighborhood radius in the initial density parameters. This represents the first minimum number of points in the i-th unit layout within the current partition. This represents the initial first minimum number of points in the initial density parameters, where γ and δ are adjustment parameters. This refers to the density of the i-th cell layout in the current partition. This refers to the density of the cell layout with the highest density in the current partition. This refers to the average density of all unit layouts in the current partition;

[0016] The preset contour optimization model is as follows:

[0017] ;

[0018] ;

[0019] in This represents the radius of the second neighborhood of the i-th cell layout in the current partition. This represents the initial second neighborhood radius in the initial contour parameters. This represents the second minimum number of points in the i-th unit layout within the current partition. This represents the initial second minimum number of points in the initial contour parameters, where α and β are the learning rates, and SC... i SC refers to the contour coefficient of the i-th cell layout in the current partition. avg This is the average profile coefficient of all unit layouts in the current partition.

[0020] To achieve the above and other related objectives, a second aspect of this application provides a mask layout correction system based on a combination of membrane computing and the DBSCAN algorithm. The system includes: a preliminary clustering module for obtaining an initial layout, performing preliminary clustering on the initial layout based on a preset clustering method to obtain several partitions and their corresponding density and contour features; a region partitioning module for obtaining initial density and contour parameters of the DBSCAN clustering, iteratively optimizing the initial clustering parameters of the DBSCAN clustering using a preset membrane computing algorithm based on the density and contour features of each partition to obtain the optimal clustering parameters for each partition, and performing DBSCAN clustering on each partition based on the corresponding optimal clustering parameters to obtain the core region, boundary region, and sparse region of the initial layout; and a correction and filling module for correcting the core region, boundary region, and sparse region based on a preset correction strategy to obtain a corrected layout of the initial layout.

[0021] To achieve the above and other related objectives, a third aspect of this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the mask layout correction method based on a combination of membrane computing and the DBSCAN algorithm.

[0022] To achieve the above and other related objectives, a fourth aspect of this application provides a computer program product comprising computer program code that, when executed on a computer, causes the computer to implement the mask layout correction method based on a combination of membrane computing and the DBSCAN algorithm.

[0023] To achieve the above and other related objectives, a fifth aspect of this 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 mask pattern correction method based on the combination of membrane computing and the DBSCAN algorithm.

[0024] As described above, the mask layout correction method, system, medium, program product, and terminal based on the combination of membrane computing and DBSCAN algorithm of this application have the following beneficial effects:

[0025] This application optimizes two key parameters (neighborhood radius and minimum number of points) of the DBSCAN algorithm in parallel using a pre-defined membrane computation algorithm, enabling the algorithm to adapt to regions with different densities and significantly improving clustering accuracy. Furthermore, this application uses a membrane computation-inspired DBSCAN algorithm to precisely divide the layout into core, boundary, and sparse regions, and formulates differentiated bias and virtual pattern correction strategies for different regions, thereby more accurately compensating for optical proximity and chemical mechanical polishing effects during manufacturing. The parallel processing capability of the pre-defined membrane computation algorithm allows the optimization of DBSCAN parameters to be performed in parallel, greatly shortening the computation time. Moreover, the parameter adjustment rules in the pre-defined membrane computation algorithm have a feedback mechanism, which can dynamically adjust parameters according to clustering quality, making the algorithm highly adaptable to different types of layouts. Attached Figure Description

[0026] Figure 1 The diagram shown is a flowchart illustrating a mask layout correction method based on a combination of membrane computation and the DBSCAN algorithm in one embodiment of this application.

[0027] Figure 2 The diagram shown is a schematic of a preset membrane calculation algorithm in one embodiment of this application.

[0028] Figure 3 The diagram shown is a schematic representation of a mask layout correction system based on a combination of membrane computing and the DBSCAN algorithm in one embodiment of this application.

[0029] Figure 4 The diagram shown is a schematic representation of an electronic terminal using a mask layout correction method based on a combination of membrane computing and the DBSCAN algorithm, as described in one embodiment of this application. Detailed Implementation

[0030] The following specific examples illustrate the implementation of this application. Those skilled in the art can easily understand other advantages and effects of this application from the content disclosed in this specification. This application can also be implemented or applied through other different specific embodiments, and various details in this specification can also be modified or changed based on different viewpoints and applications without departing from the spirit of this application. It should be noted that, unless otherwise specified, the following embodiments and features in the embodiments can be combined with each other.

[0031] In this application, unless otherwise expressly specified and limited, the terms "installation," "connection," "linking," "fixing," and "holding" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral connection; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; and they can refer to the internal connection between two components. Those skilled in the art can understand the specific meaning of the above terms in this application according to the specific circumstances.

[0032] It should be noted that, in the embodiments of this application, the words "exemplary" or "for example" indicate examples, illustrations, or descriptions. Any embodiment or design described as "exemplary" or "for example" in this application should not be construed as being more preferred or advantageous than other embodiments or designs. Specifically, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner.

[0033] In this application embodiment, "at least one" refers to one or more, and "more than one" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone, where A and B can be singular or plural. The character " / " generally indicates that the preceding and following related objects are in an "or" relationship. "At least one of the following" or similar expressions refer 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, and c can be single or multiple.

[0034] In the embodiments of this application, the terms "first" and "second" are used to distinguish identical or similar items with essentially the same function and effect. Those skilled in the art will understand that the terms "first" and "second" do not limit the quantity or execution order, and that the terms "first" and "second" do not necessarily imply that they are different.

[0035] To make the objectives, technical solutions, and advantages of the present invention clearer, the technical solutions in the embodiments of the present invention will be further described in detail below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are only for explaining the present invention and are not intended to limit the invention.

[0036] Before providing a further detailed description of the present invention, the nouns and terms used in the embodiments of the present invention are explained, and the nouns and terms used in the embodiments of the present invention are subject to the following interpretations:

[0037] <1> DBSCAN algorithm: A density-based spatial clustering algorithm that divides data points into core points, boundary points, and noise points using neighborhood radius (ε) and minimum number of points (MinPts).

[0038] <2> Silhouette coefficient: Used to measure clustering quality, indicating how close a sample is to other samples in the same class and how well it is separated from other classes.

[0039] <3> Ward method: A hierarchical clustering algorithm that selects the merging method that minimizes the increase in the sum of squared errors within the cluster when merging two clusters at each step, thereby obtaining the most compact clustering result.

[0040] <4> Virtual graphic filling method: Insert auxiliary graphics that do not participate in electrical functions into low-density or sparse areas of the layout to improve the uniformity of graphic density, thereby improving the consistency of processes such as photolithography, etching, and CMP and increasing manufacturing yield.

[0041] To facilitate understanding of the embodiments of this application, firstly, in conjunction with Figure 1 Detailed explanation. Figure 1 This document illustrates a flowchart of a mask layout correction method based on a combination of membrane computation and the DBSCAN algorithm, as described in an embodiment of the present invention. The mask layout correction method based on this embodiment mainly includes the following steps:

[0042] Step S11: Obtain the initial layout. Perform preliminary clustering on the initial layout based on a preset clustering method to obtain several partitions and the density features and contour features corresponding to each partition.

[0043] It should be noted that the initial layout refers to a layout design used for manufacturing optical components, typically applied in the field of micro- and nano-manufacturing, such as the fabrication of diffraction gratings, lenses, and waveguides. The initial layout is a two-dimensional graphic composed of curved shapes, used to define the shape and structure of the optical component. Parameters defining the initial layout include, but are not limited to, curve shapes, feature dimensions, and material information. Curve shapes include, but are not limited to, various curves such as arcs and spirals. Feature dimensions include the width and spacing of the curve shapes. Material information defines the material type and thickness of the optical component.

[0044] Specifically, the initial layout is first divided into several unit layouts, and the density features, spacing features, and topological features of each unit layout are extracted. That is, each unit layout has a feature vector containing density features, spacing features, and topological features. The unit layouts will serve as the smallest units for subsequent clustering.

[0045] Further, based on a preset clustering method, the several unit layouts are initially clustered to obtain several clustering schemes. Each clustering scheme refers to a combination scheme containing several partitions, each partition containing several unit layouts. The silhouette coefficient of each cluster in the combination scheme is calculated, and the average silhouette coefficient of each clustering scheme is further calculated. The clustering scheme with the largest average silhouette coefficient is taken as the initial clustering result. The silhouette coefficient is defined as a comprehensive measure of the average distance between a single unit layout and other unit layouts within the same cluster, and its average distance to its nearest other cluster. The silhouette coefficient is used to characterize the rationality of the unit layout's affiliation in the current clustering structure.

[0046] It should be noted that the preset clustering method performs initial partitioning based on the feature vectors constructed from the unit layout. This preset clustering method typically requires pre-setting the number of clusters or relies on fixed rules for partitioning, making it difficult to adaptively determine the final clustering result based on the actual distribution characteristics of the layout data. Therefore, in this invention, the above clustering method is mainly used to generate candidate preliminary clustering results, rather than directly serving as the final clustering result. The preset clustering method may include, but is not limited to, one or more of the following: K-Means clustering method, hierarchical clustering method, and spectral clustering method.

[0047] For example, an initial layout is input and divided into 50μm × 50μm unit layouts, resulting in 2500 unit layouts. The pattern density (range 0-1), average pattern spacing (range 0.1-0.5μm), and line-end ratio (range 0-0.3) of each unit layout are extracted as feature vectors. Then, a hierarchical clustering method (Ward method) is used to perform preliminary clustering on the 2500 grids, obtaining 5 clustering schemes (Scheme 1, Scheme 2, ... Scheme 5). The silhouette coefficients corresponding to different partitions in each clustering scheme are calculated, and the average silhouette coefficient of the corresponding clustering scheme is further calculated. Clustering scheme 1, with the largest average silhouette coefficient, is selected as the preliminary clustering result; in this example, it is determined to have 6 partitions.

[0048] Furthermore, the density features of each partition in the preliminary clustering results are obtained. , , ),in This refers to the density of the i-th cell layout in the current partition. This refers to the density of the cell layout with the highest density in the current partition. This refers to the average density of all unit layouts in the current partition.

[0049] Furthermore, the contour features (SC) of each partition in the preliminary clustering results are obtained. i SC avg ), where SC iSC refers to the contour coefficient of the i-th cell layout in the current partition. avg This is the average profile coefficient of all unit layouts in the current partition.

[0050] Step S12: Obtain the initial density parameters and initial contour parameters of DBSCAN clustering. Based on the density features and contour features corresponding to each partition, use a preset membrane calculation algorithm to iteratively optimize the initial density parameters and initial contour parameters to obtain the optimal clustering parameters corresponding to each partition. Perform DBSCAN clustering on each partition based on the corresponding optimal clustering parameters to obtain the core region, boundary region and sparse region of the initial map.

[0051] In the implementation of this invention, it is first necessary to determine the initial density parameters and initial contour parameters for subsequent partitioning optimization. Based on this, this invention introduces a clustering analysis method based on DBSCAN (Density-Based Spatial Clustering of Applications with Noise) to perform clustering processing on the layout data or target graphic data, so as to automatically obtain the initial parameters that can characterize the spatial distribution characteristics of the layout.

[0052] Specifically, a feature dataset for cluster analysis is first constructed, and DBSCAN clustering is performed based on the feature dataset. By searching and evaluating different neighborhood radius parameters and minimum sample number parameters, the clustering result that best represents the distribution of the target data is determined. Based on this, initial density parameters representing the local density of the graphic and initial contour parameters representing the boundary morphology of the graphic are extracted as the initial inputs for the subsequent density feature optimization model and contour feature optimization model.

[0053] In one embodiment of this application, the step of iteratively optimizing the initial density parameters and initial contour parameters using a preset membrane calculation algorithm based on the density features and contour features corresponding to each partition to obtain the optimal clustering parameters corresponding to each partition includes: optimizing the initial density parameters using a preset density optimization model based on the density features of the current partition to obtain the corresponding current density parameters; optimizing the initial contour parameters using a preset contour optimization model based on the contour features of the current partition to obtain the corresponding current contour parameters; calculating and obtaining the aggregation parameters of the current partition based on the current density parameters and the corresponding current density parameters, and clustering the current partition using the aggregation parameters based on the DBSCAN algorithm to obtain the current clustering result; when the current clustering result meets the preset convergence requirement, the current clustering result is used as the optimal clustering parameter of the current partition; when the current clustering result does not meet the preset convergence requirement, the initial density parameters are updated to the current density parameters, and the initial contour parameters are updated to the current contour parameters to iteratively execute the acquisition of the current clustering result until the current clustering result meets the preset convergence requirement.

[0054] In one embodiment of this application, specifically, the preset membrane calculation algorithm includes a preset density optimization model and a preset profile optimization model, wherein the preset density optimization model includes the following formula:

[0055] ;(Formula 1)

[0056] ;(Formula 2)

[0057] in This represents the radius of the first neighborhood of the i-th cell layout in the current partition. This represents the initial first neighborhood radius in the initial density parameters. This represents the first minimum number of points in the i-th unit layout within the current partition. The initial minimum number of points is represented in the initial density parameters, and γ and δ are adjustment parameters, typically set to (0.5-1.5). Through the adaptive adjustment mechanism in the form of a power function as described in Formula 1, the radius of the first neighborhood changes inversely with the local density of the partition, thereby improving the clustering algorithm's adaptability to data with uneven density.

[0058] In another embodiment of this application, the first neighborhood radius A logarithmic function is used for adjustment to avoid excessive enlargement of the neighborhood radius and improve the stability of the preset density optimization model. Specifically:

[0059] ;(Formula 3)

[0060] Furthermore, the density features in any of the partitions ( , , Input the preset density optimization model to obtain the corresponding i-cell layout of the partition. and .

[0061] Furthermore, the preset contour optimization model includes the following formula:

[0062] ;(Formula 4)

[0063] ;(Formula 5)

[0064] in This represents the radius of the second neighborhood of the i-th cell layout in the current partition. This represents the initial second neighborhood radius in the initial contour parameters. This represents the second minimum number of points in the i-th unit layout within the current partition. This represents the initial second minimum number of points in the initial contour parameters. α and β are the learning rates, set to 0.1, but can be set as needed.

[0065] Furthermore, the contour features (SC) in any of the partitions i SC avg Input the preset contour optimization model to obtain the corresponding layout of the i-th unit of the partition. and .

[0066] In one embodiment of this application, as Figure 2 As shown, the process of calculating the aggregation parameters of the current partition based on the current density parameter and the corresponding current contour parameter includes: averaging the first neighborhood radius in the current density parameter and the second neighborhood radius in the corresponding current contour parameter to obtain the fused neighborhood radius; averaging the first minimum number of points in the current density parameter and the second minimum number of points in the corresponding current contour parameter to obtain the fused minimum number of points. The fused neighborhood radius and the fused minimum number of points are used as the aggregation parameters of the current partition.

[0067] Further, calculate the current density parameter. With the current contour parameters average Calculate the current density parameter With the current contour parameters average , with the above and This serves as the aggregation parameter for the i-th cell layout of the current partition. Further, it calculates the i parameters corresponding to the i-th cell layout of the current partition. average and i average value , with the above and As the aggregation parameter for the current partition.

[0068] Furthermore, each partition is clustered using the DBSCAN algorithm based on the aggregation parameters to obtain the corresponding current clustering result. The current clustering result is iteratively executed, including the number of regions divided by the current partition and the region range corresponding to each number.

[0069] It should be noted that, to ensure the accuracy of the average contour coefficients for each partition, the current clustering results for each partition are executed in parallel and synchronously. Furthermore, for each partition, after obtaining the corresponding current clustering result each time, its initial density parameter is updated to the current density parameter, and its initial contour parameter is updated to the current contour parameter, and this process is iteratively executed to obtain the updated current clustering result, which is then used for subsequent convergence assessment of the current clustering result.

[0070] During the iterative process of this invention, it is necessary to determine whether the current clustering result meets the preset convergence requirement, that is, to determine whether the current clustering result has stabilized, in order to determine whether to terminate the iterative update. The preset convergence requirement can be implemented in at least one of the following ways:

[0071] (1) If the difference between the current clustering result and the current clustering result of the previous iteration is less than the preset clustering difference threshold, then the current clustering result is considered to be stable. The preset clustering difference threshold is when the number of the current clustering result and the current clustering result of the previous iteration is less than the preset number threshold.

[0072] (2) If the number of times the current clustering result is obtained is greater than the preset maximum number of times, stop the current iteration.

[0073] (3) If the average silhouette coefficient corresponding to the current clustering result is greater than or equal to the target silhouette coefficient, stop the current iteration. The target silhouette coefficient is the target value of the average silhouette coefficient achieved by clustering, which is usually set based on experience.

[0074] In practical applications, the above convergence determination methods can be used alone or in combination to improve the accuracy and stability of iteration termination determination. No specific limitations are made here.

[0075] Furthermore, when a partition meets the preset convergence requirement, the current clustering result is used as the optimal clustering parameter for the current partition, until all partitions obtain the corresponding optimal clustering parameters.

[0076] In one embodiment of this application, DBSCAN clustering is performed on each partition based on the corresponding optimal clustering parameters to obtain the core region, boundary region, and sparse region of the initial layout. The process includes: performing DBSCAN clustering on each partition based on the optimal clustering parameters of each partition to obtain the core region, boundary region, and sparse region of each partition; merging the core regions, boundary regions, and sparse regions of all partitions into similar categories to obtain the core region, boundary region, and sparse region of the initial layout.

[0077] After obtaining the optimal clustering parameters for each partition, DBSCAN clustering is performed within each partition to identify the core region, boundary region, and sparse region. Since each partition performs clustering calculations independently, the resulting region divisions are local results. Therefore, it is necessary to globally integrate the clustering results of each partition.

[0078] Specifically, the core regions identified in each partition are merged to form the global core region of the initial map; the boundary regions of each partition are merged to form the global boundary region; and the sparse regions of each partition are merged to form the global sparse region, thereby completing the region division of the initial map based on partition clustering.

[0079] Step S13: Based on a preset correction strategy, the core region, boundary region, and sparse region are corrected to obtain the corrected layout of the initial layout.

[0080] In one embodiment of this application, the process of correcting the core region, boundary region, and sparse region based on a preset correction strategy includes: correcting the core region using an optical proximity effect correction method; correcting the boundary region using a combination of an optical proximity effect correction method and a bias method based on preset rules; and correcting the sparse region using a combination of a bias method based on preset rules and a virtual graphics filling method.

[0081] Optionally, for the core region of the initial layout, a model-based optical proximity correction method is used for correction. This method is based on a lithographic imaging model, which simulates and calculates the core region of the initial layout to obtain the actual imaging contour. This contour is then compared and analyzed with the design drawing of the initial layout to obtain the edge deviation distribution. Based on this edge deviation distribution, the core region of the initial layout is finely adjusted. This fine adjustment includes operations such as edge micro-movement, local shape correction, and auxiliary graphic optimization.

[0082] Furthermore, for the boundary region of the initial layout, a combination of model-based optical proximity correction method and preset rule-based offset method is used for correction. Specifically, the preset rule-based offset method is used for initial correction of the boundary region of the initial layout. By applying a preset offset to the edge, rapid compensation for systematic deviations during photolithography is achieved. Based on the correction by the preset rule-based offset method, the boundary region is further refined based on the model-based optical proximity correction method.

[0083] By using the above hybrid correction method, on the one hand, the regular bias method is used to improve the correction efficiency and enhance the stability, and on the other hand, the model-driven fine correction is used to improve the imaging accuracy of the boundary region, thereby effectively reducing the problems of over-correction or under-correction caused by a single method.

[0084] Furthermore, for the sparse regions of the initial layout, a bias method based on preset rules and a virtual graphic filling method are used for correction. The virtual graphic filling method is used to introduce auxiliary graphics in the sparse regions to increase the local graphic density so that it meets the preset density range, thereby improving the uniformity of photolithography and subsequent processes.

[0085] Preferably, a virtual graphic filling operation is first performed on the sparse region, and then a bias method based on preset rules is applied to the sparse region of the initial layout after filling, thereby achieving synergistic optimization of density balance and dimensional accuracy.

[0086] Preferably, the rule bias and model correction can be adaptively adjusted based on the density characteristics and process parameters of each partition.

[0087] The core region, boundary region, and sparse region of the initial layout after the above corrections and filling together constitute the corrected layout of the initial layout.

[0088] like Figure 3 The diagram illustrates the structure of a step system according to an embodiment of the present invention. The system 300 in this embodiment includes the following modules: a preliminary clustering module 301, a region partitioning module 302, and a correction and filling module 303.

[0089] The preliminary clustering module is used to obtain an initial map, perform preliminary clustering on the initial map based on a preset clustering method, and obtain several partitions and the density features and contour features corresponding to each partition.

[0090] The region partitioning module is used to obtain the initial density parameters and initial contour parameters of DBSCAN clustering. Based on the density features and contour features corresponding to each partition, a preset membrane calculation algorithm is used to iteratively optimize the initial clustering parameters of DBSCAN clustering to obtain the optimal clustering parameters corresponding to each partition. DBSCAN clustering is performed on each partition based on the corresponding optimal clustering parameters to obtain the core region, boundary region and sparse region of the initial map.

[0091] The correction and filling module is used to correct the core region, boundary region, and sparse region based on a preset correction strategy to obtain a corrected layout of the initial layout. It should be understood that the specific processes by which each module performs the corresponding steps described above have been detailed in the above method embodiments, and for the sake of brevity, will not be repeated here.

[0092] It should also be understood that the module division in the embodiments of this application is illustrative and only represents a logical functional division; in actual implementation, there may be other division methods. Furthermore, the functional modules in the various embodiments of this application can be integrated into a single processor, exist as separate physical entities, or be integrated into a single module. The integrated modules described above can be implemented in hardware or as software functional modules.

[0093] Figure 4 This is a schematic block diagram of the electronic terminal provided in an embodiment of this application. Figure 4 As shown, the electronic terminal includes at least one processor 401, a memory 402, at least one network interface 403, and a user interface 405. The various components in the device are coupled together via a bus system 404. It is understood that the bus system 404 is used to implement communication between these components. In addition to a data bus, the bus system 404 also includes a power bus, a control bus, and a status signal bus. However, for clarity, in… Figure 4 The general will label all buses as bus systems.

[0094] The user interface 405 may include a monitor, keyboard, mouse, trackball, clicker, button, touchpad, or touch screen.

[0095] It is understood that memory 402 can be volatile memory or non-volatile memory, or both. Non-volatile memory can be read-only memory (ROM) or programmable read-only memory (PROM), which serves as an external cache. By way of example, but not limitation, many forms of RAM are available, such as static random access memory (SRAM) and synchronous static random access memory (SSRAM). The memories described in the embodiments of this invention are intended to include, but are not limited to, these and any other suitable categories of memory.

[0096] In this embodiment of the invention, the memory 402 is used to store various types of data to support the operation of the electronic terminal 400. Examples of this data include: any executable program for operation on the electronic terminal 400, such as the operating system 4021 and application programs 4022; the operating system 4021 contains various system programs, such as the framework layer, core library layer, driver layer, etc., for implementing various basic services and handling hardware-based tasks. The application program 4022 may contain various applications, such as media players, browsers, etc., for implementing various application services. The implementation of the automatic farmland irrigation method based on region division provided in this embodiment of the invention can be included in the application program 4022.

[0097] The methods disclosed in the above embodiments of the present invention can be applied to processor 401, or implemented by processor 401. Processor 401 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware in processor 401 or by instructions in the form of software. The processor 401 may be a general-purpose processor, a digital signal processor (DSP), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Processor 401 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of the present invention. General-purpose processor 401 may be a microprocessor or any conventional processor, etc. The steps of the accessory optimization method provided in the embodiments of the present invention can be directly reflected as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software module may be located in a storage medium, which is located in a memory. The processor reads the information in the memory and combines it with its hardware to complete the steps of the aforementioned method.

[0098] In an exemplary embodiment, the electronic terminal 400 may be used to execute the aforementioned method by one or more application-specific integrated circuits (ASICs), DSPs, programmable logic devices (PLDs), or complex programmable logic devices (CPLDs).

[0099] According to the method provided in the embodiments of this application, this application also provides a computer program product, which includes: computer program code, which, when run on a computer, causes the computer to execute a mask pattern correction method based on a combination of membrane computing and DBSCAN algorithm in any of the embodiments shown.

[0100] According to the method provided in the embodiments of this application, this application also provides a computer-readable storage medium storing program code. When the program code is run on a computer, the computer executes a mask layout correction method based on a combination of membrane computing and DBSCAN algorithm according to any of the embodiments shown.

[0101] As used in this specification, the terms "component," "module," "system," etc., are used to refer to computer-related entities, hardware, firmware, combinations of hardware and software, software, or software in execution. For example, a component can be, but is not limited to, a process running on a processor, a processor, an object, an executable file, an execution thread, a program, and / or a computer. As illustrated, applications running on computing devices and computing devices can both be components. One or more components may reside in a process and / or an execution thread, and components may be located on a single computer and / or distributed among two or more computers. Furthermore, these components can be executed from various computer-readable media on which various data structures are stored. Components can communicate, for example, via local and / or remote processes based on 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 via signals).

[0102] Those skilled in the art will recognize 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 implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this application.

[0103] Those skilled in the art will understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0104] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.

[0105] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0106] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.

[0107] In the above embodiments, the functions of each functional unit can be implemented entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. A computer program product includes one or more computer instructions (programs). When the computer program instructions (programs) are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this application is generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. Computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available media can be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., high-density digital video discs, DVDs), or semiconductor media (e.g., solid-state disks, SSDs, etc.).

[0108] If a function is implemented as 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 this application, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0109] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the technical scope disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

[0110] In summary, this application provides a mask layout correction method, system, medium, program product, and terminal based on a combination of membrane computing and the DBSCAN algorithm. The method involves obtaining an initial layout, performing preliminary clustering on the initial layout using a preset clustering method to obtain several partitions and their corresponding density and contour features; obtaining initial density and contour parameters for DBSCAN clustering; iteratively optimizing the initial clustering parameters of the DBSCAN clustering using a preset membrane computing algorithm based on the density and contour features of each partition to obtain the optimal clustering parameters for each partition; performing DBSCAN clustering on each partition based on the corresponding optimal clustering parameters to obtain the core region, boundary region, and sparse region of the initial layout; and correcting the core region, boundary region, and sparse region based on a preset correction strategy to obtain the corrected layout of the initial layout. This improves the accuracy of mask layout correction. Therefore, this application effectively overcomes the various shortcomings of the prior art and has high industrial application value.

[0111] The above embodiments are merely illustrative of the principles and effects of this application and are not intended to limit this application. Any person skilled in the art can modify or alter the above embodiments without departing from the spirit and scope of this application. Therefore, all equivalent modifications or alterations made by those skilled in the art without departing from the spirit and technical concept disclosed in this application should still be covered by the claims of this application.

Claims

1. A mask layout correction method based on a combination of membrane computation and the DBSCAN algorithm, characterized in that, include: Obtain an initial layout, perform preliminary clustering on the initial layout based on a preset clustering method, and obtain several partitions and the density features and contour features corresponding to each partition; The initial density and initial contour parameters of DBSCAN clustering are obtained. Based on the density and contour features corresponding to each partition, a preset membrane calculation algorithm is used to iteratively optimize the initial density and initial contour parameters to obtain the optimal clustering parameters for each partition. DBSCAN clustering is then performed on each partition based on the corresponding optimal clustering parameters to obtain the core region, boundary region, and sparse region of the initial map. Specifically, the process of iteratively optimizing the initial density and initial contour parameters based on the density and contour features corresponding to each partition to obtain the optimal clustering parameters for each partition includes: optimizing the initial density parameters using a preset density optimization model based on the density features of the current partition to obtain the corresponding current density parameters; optimizing the initial contour parameters using a preset contour optimization model based on the contour features of the current partition to obtain the corresponding current contour parameters; and calculating the aggregation parameters of the current partition based on the current density parameters and the corresponding current contour parameters. The DBSCAN algorithm is used to cluster the current partition using the aggregation parameters to obtain the current clustering result. The aggregation parameters for the current partition are calculated based on the current density parameters and the corresponding current contour parameters. The process includes: averaging the first neighborhood radius in the current density parameters and the second neighborhood radius in the corresponding current contour parameters to obtain the fused neighborhood radius; averaging the first minimum number of points in the current density parameters and the second minimum number of points in the corresponding current contour parameters to obtain the fused minimum number of points; using the fused neighborhood radius and the fused minimum number of points as the aggregation parameters for the current partition; when the current clustering result meets the preset convergence requirement, the current aggregation parameters are used as the optimal clustering parameters for the current partition; when the current clustering result does not meet the preset convergence requirement, the initial density parameters are updated to the current density parameters, and the initial contour parameters are updated to the current contour parameters for calculation and clustering operations to obtain the current clustering result, until the current clustering result meets the preset convergence requirement. The specific preset density optimization model is as follows: ; ; in, This represents the radius of the first neighborhood of the i-th cell layout in the current partition. This represents the initial first neighborhood radius in the initial density parameters. This represents the first minimum number of points in the i-th unit layout within the current partition. This represents the initial first minimum number of points in the initial density parameters, where γ and δ are adjustment parameters. This refers to the density of the i-th cell layout in the current partition. This refers to the density of the cell layout with the highest density in the current partition. This refers to the average density of all unit layouts in the current partition; The preset contour optimization model is as follows: ; ; in This represents the radius of the second neighborhood of the i-th cell layout in the current partition. This represents the initial second neighborhood radius in the initial contour parameters. This represents the second minimum number of points in the i-th unit layout within the current partition. This represents the initial second minimum number of points in the initial contour parameters, where α and β are the learning rates, and SC... i SC refers to the contour coefficient of the i-th cell layout in the current partition. avg This is the average contour coefficient of all unit layouts in the current partition; The core region, boundary region, and sparse region are corrected based on a preset correction strategy to obtain the corrected layout of the initial layout.

2. The mask layout correction method based on membrane computation and DBSCAN algorithm according to claim 1, characterized in that, For each partition, DBSCAN clustering is performed based on the corresponding optimal clustering parameters to obtain the core region, boundary region, and sparse region of the initial map. The process includes: Based on the optimal clustering parameters of each partition, DBSCAN clustering is performed on each partition to obtain the core region, boundary region and sparse region of each partition; Merge the core regions, boundary regions, and sparse regions of all partitions into their own categories to obtain the core regions, boundary regions, and sparse regions of the initial map.

3. The mask layout correction method based on membrane computation and DBSCAN algorithm according to claim 1, characterized in that, The process of correcting the core region, boundary region, and sparse region based on a preset correction strategy includes: The core area is corrected using an optical proximity effect correction method; The boundary region is corrected by a combination of optical proximity effect correction method and bias method based on preset rules; For sparse regions, a bias method based on preset rules and a virtual graphic filling method are used to correct the problem.

4. A mask layout correction system based on a combination of membrane computation and the DBSCAN algorithm, characterized in that, The system includes: The preliminary clustering module is used to obtain an initial map, perform preliminary clustering on the initial map based on a preset clustering method, and obtain several partitions and the density features and contour features corresponding to each partition. The region partitioning module is used to obtain the initial density parameters and initial contour parameters of DBSCAN clustering. Based on the density and contour features corresponding to each partition, a preset membrane calculation algorithm is used to iteratively optimize the initial clustering parameters of the DBSCAN clustering to obtain the optimal clustering parameters for each partition. DBSCAN clustering is then performed on each partition based on the corresponding optimal clustering parameters to obtain the core region, boundary region, and sparse region of the initial map. Specifically, the process of iteratively optimizing the initial density parameters and initial contour parameters based on the density and contour features corresponding to each partition to obtain the optimal clustering parameters for each partition includes: optimizing the initial density parameters based on the density features of the current partition using a preset density optimization model to obtain the corresponding current density parameters; optimizing the initial contour parameters based on the contour features of the current partition using a preset contour optimization model to obtain the corresponding current contour parameters; and calculating and obtaining the current density parameters and the corresponding current contour parameters for the current partition. The aggregation parameters are used to cluster the current partition based on the DBSCAN algorithm to obtain the current clustering result. The aggregation parameters for the current partition are calculated based on the current density parameter and the corresponding current contour parameter. The process includes: averaging the first neighborhood radius in the current density parameter and the second neighborhood radius in the corresponding current contour parameter to obtain the fused neighborhood radius; averaging the first minimum number of points in the current density parameter and the second minimum number of points in the corresponding current contour parameter to obtain the fused minimum number of points; using the fused neighborhood radius and the fused minimum number of points as the aggregation parameters for the current partition; when the current clustering result meets the preset convergence requirement, the current aggregation parameters are used as the optimal clustering parameters for the current partition; when the current clustering result does not meet the preset convergence requirement, the initial density parameter is updated to the current density parameter, and the initial contour parameter is updated to the current contour parameter for calculation and clustering operations to obtain the current clustering result, until the current clustering result meets the preset convergence requirement. The specific preset density optimization model is as follows: ; ; in, This represents the radius of the first neighborhood of the i-th cell layout in the current partition. This represents the initial first neighborhood radius in the initial density parameters. This represents the first minimum number of points in the i-th unit layout within the current partition. This represents the initial first minimum number of points in the initial density parameters, where γ and δ are adjustment parameters. This refers to the density of the i-th cell layout in the current partition. This refers to the density of the cell layout with the highest density in the current partition. This refers to the average density of all unit layouts in the current partition; The preset contour optimization model is as follows: ; ; in This represents the radius of the second neighborhood of the i-th cell layout in the current partition. This represents the initial second neighborhood radius in the initial contour parameters. This represents the second minimum number of points in the i-th unit layout within the current partition. This represents the initial second minimum number of points in the initial contour parameters, where α and β are the learning rates, and SC... i SC refers to the contour coefficient of the i-th cell layout in the current partition. avg This is the average contour coefficient of all unit layouts in the current partition; The correction filling module is used to correct the core region, boundary region and sparse region based on a preset correction strategy to obtain the corrected layout of the initial layout.

5. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the mask layout correction method based on the combination of membrane computing and DBSCAN algorithm as described in any one of claims 1 to 3.

6. A computer program product, characterized in that, The computer program product includes computer program code, which, when run on a computer, enables the computer to implement the mask layout correction method based on the combination of membrane computing and DBSCAN algorithm as described in any one of claims 1 to 3.

7. 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 mask layout correction method based on the combination of membrane computing and DBSCAN algorithm as described in any one of claims 1 to 3.