A method, device and computer equipment for solving mask coloration boundary conflict
By segmenting the mask pattern and processing it with coloring functions, the problem of inefficient coloring boundary conflict in the mask pattern is solved, achieving efficient conflict resolution and resource saving, which is applicable to the field of photolithography.
Patent Information
- Application Number
- CN202210260536.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-03-16
- Publication Date
- 2026-02-10
- Estimated Expiration
- 2042-03-16
AI Technical Summary
In existing technologies, the handling of color boundary conflicts in masking is inefficient, which requires flipping non-conflicting blocks when resolving conflicts, resulting in serious waste of resources.
By dividing the initial mask layout into multiple blocks, selecting an initial block set for coloring, using a preset coloring function to color key sub-units, and associating the colors of key sub-units with other blocks to resolve conflicts within the initial block set, the characteristics are then passed to other blocks to avoid further conflicts.
It improves the efficiency of color boundary conflict resolution, reduces resource waste, ensures that no conflicts occur between subsequent blocks, simplifies the calculation process, and is suitable for actual production.
Smart Images

Figure CN114638189B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of photolithography, and in particular to a method for solving coloring boundary conflict.
BACKGROUND
[0002] Photolithography is one of the core technologies for manufacturing ultra-large scale integrated circuits. A photolithography system uses a light source to irradiate a mask, and a projection objective lens to image an integrated circuit layout on the mask onto a photoresist. As the scale of integrated circuits increases and the integration level improves, the feature size of electronic devices is continuously reduced, and the requirements for integrated circuit manufacturing processes are continuously improved. Chip manufacturing requires higher and higher resolution of photolithography. When the logic chip is less than 28nm, if an extreme ultraviolet (EUV) photolithography machine is not used, double patterning technology (DPT) is needed to split and transfer the original layout. The key step of double patterning technology is to split the complex design layout, that is, to transfer the design pattern to two mask plates according to certain rules. Since the pattern marks on different mask plates are of different colors, the splitting process of the layout can be regarded as "coloring".
[0003] Currently, the coloring conflict problem is mainly caused by hierarchical coloring of mask plate blocks. After coloring according to the hierarchical order, the mask plate may have conflicts between different hierarchical blocks after coloring is completed. When there is a conflict, only one block with a conflict needs to be flipped to solve the conflict generated by the block boundary. However, at this time, other blocks connected to the block and not in conflict also need to be flipped to ensure that the final integrated layout has no conflict. When there are many such conflicts, the efficiency of solving the conflict becomes very low.
SUMMARY
[0004] In order to solve the problem of low efficiency in processing coloring boundary, the present application provides a method, device and computer equipment for solving mask coloring boundary conflict.
[0005] The application provides the following technical scheme to solve the above technical problems: a method for solving mask coloring boundary conflict, comprising the following steps: S0: providing an initial mask pattern; S1: dividing the initial mask pattern into a plurality of blocks, wherein each block comprises a plurality of subunits, and the plurality of subunits comprise preset key subunits and preset initial subunits; S2: selecting a predetermined region of the initial mask pattern as an initial block set, wherein the initial block set comprises one block or a plurality of adjacent blocks, and coloring the blocks in the initial block set by using a preset coloring function to obtain a colored initial block set; and S3: coloring other blocks by using the coloring function and coloring information of the key subunits of each block in the colored initial block set to obtain a colored mask pattern.
[0006] Preferably, the coloring of the blocks by using the preset coloring function comprises the following steps: S20: determining the preset initial subunits in each block of the block set; S21: if the initial subunit color has been determined, coloring other subunits in the block according to the determined color; if the initial subunit color has not been determined, randomly selecting one of color 1 or color 2 as the initial subunit color, and coloring other subunits in the block according to the selected color; and S22: obtaining the colored block set.
[0007] Preferably, step S3 further comprises the following steps: S30: obtaining the color of the key subunits of each block in the colored initial block set; S31: coloring the initial subunits of the adjacent blocks of the initial block set according to the color of the key subunits, and coloring other subunits in the current block according to the color of the initial subunits; S32: coloring the next adjacent block according to the color of the key subunits in the current block; and S33: repeating step S32 until the coloring of all blocks is completed to obtain the colored mask pattern.
[0008] Preferably, the initial block set is any one of the following sets: a set of all blocks in the first column in the X direction of the initial mask pattern, a set of all blocks in the last column in the X direction of the initial mask pattern, a set of all blocks in the first row in the X direction of the initial mask pattern, and a set of all blocks in the last row in the X direction of the initial mask pattern.
[0009] Preferably, before step S32, the method further comprises the following step: S310: checking whether there is conflict between the blocks in the colored initial block set, and if there is, processing the conflict between the adjacent blocks in the colored initial block set.
[0010] Preferably, the step S310 comprises the following step: S3100: checking the boundary between the first patch and the second patch in the preset order from the set of initial patches after coloring, if there is a conflict, flipping the color of all sub-units in the second patch; if there is no conflict, continue checking the boundary between the second patch and the third patch until all inter-patch conflicts in the set of initial patches are processed.
[0011] Preferably, the key sub-unit is a sub-unit on the boundary between the current patch and the adjacent patch.
[0012] Preferably, after the step S3, the method further comprises the following steps:
[0013] S4: outputting the coloring mask pattern to two mask plates respectively according to the color of the sub-unit in the coloring mask pattern.
[0014] To solve the above technical problems, the present application provides another technical solution as follows: an apparatus for implementing any of the above methods, the apparatus comprising: a splitting module for dividing an initial mask plate into a plurality of patches; a selection module for selecting a set of initial patches; a coloring module for coloring the patches.
[0015] To solve the above technical problems, the present application provides another technical solution as follows: a computer device comprising a memory, a processor and a computer program stored in the memory, the processor executing the computer program to implement the above method.
[0016] Compared with the prior art, the method for solving the coloring boundary conflict provided by the present application has the following beneficial effects:
[0017] 1. The method provided by the embodiment of the present application comprises the following steps: S0: providing an initial mask plate pattern; S1: dividing the initial mask plate pattern into a plurality of blocks, each block comprising a plurality of subunits, and the plurality of subunits comprising preset key subunits and preset initial subunits; S2: selecting a predetermined region of the initial mask plate pattern as an initial block set, the initial block set comprising one block or a plurality of adjacent blocks, and coloring the blocks in the initial block set by using a preset coloring function to obtain a colored initial block set; and S3: coloring other blocks by using the coloring function and coloring information of the key subunits of each block in the colored initial block set to obtain a colored mask pattern. By coloring the blocks in the initial block set first, when there is no conflict in the initial block set, the coloring of other blocks is performed by using the colors of the initial block set, and at this time, the colors of the initial block set and other blocks are associated, and since the conflict in the initial block set has been solved, no conflict occurs between the blocks in the subsequent block set, the non-conflict characteristics of the blocks in the initial block set are associated with other blocks, the resources wasted in processing block conflicts are reduced, and the efficiency of solving the coloring conflict problem is greatly improved.
[0018] 2. The coloring of the blocks by using the preset coloring function comprises the following steps: S20: determining the positions of the preset initial subunits in each block in the block set; S21: if the initial subunit start color is determined, coloring other subunits in the block according to the determined color; if the color of the initial subunit is not determined, randomly selecting one of color one or color two as the color of the initial subunit, and coloring other subunits in the block according to the selected color; and S22: obtaining the colored block set. The coloring of the initial subunits of the blocks in the initial block set is unified with the coloring of the initial subunits of the blocks in other blocks, and the practicability of the coloring function is improved.
[0019] 3. Step S3 further comprises the following steps: S30: obtaining the color of the key subunit of each block in the colored initial block set; S31: coloring the initial subunit of the adjacent block of the initial block set according to the color of the key subunit, and coloring other subunits in the current block according to the color of the initial subunit; S32: coloring the next adjacent block according to the color of the key subunit in the current block; and S33: repeating step S32 until the coloring of all blocks is completed to obtain the colored mask pattern. The non-conflict characteristics of the current block set are associated with other block sets by using the color of the key subunit of the current block set, and thus the coloring of all blocks is completed to obtain the colored mask pattern, which avoids the occurrence of conflicts after the coloring of other block sets, reduces the resources wasted in solving the conflicts, and improves the efficiency of solving the conflicts.
[0020] 4. The initial block set is any one of the following: a set of all blocks in the first column of the initial mask layout in the X direction, a set of all blocks in the last column of the initial mask layout in the X direction, a set of all blocks in the first row of the initial mask layout in the X direction, and a set of all blocks in the last row of the initial mask layout in the X direction. Such selection makes the initial block set more flexible and improves the practicability of the conflict resolution method.
[0021] 5. Before step S32, the method further comprises the following step: S310: checking whether there is a conflict between blocks in the colored initial block set, and if so, processing the conflict between adjacent blocks in the colored initial block set. After the coloring function colors the initial block set, if there is a conflict between blocks in the initial block set at this time, the conflict needs to be resolved first, and then other blocks are colored according to the initial block set after the conflict is resolved. The step of resolving the conflict in the initial block set makes the entire resolution method more perfect, reasonable and more suitable for actual production.
[0022] 6. Step S310 comprises the following step: S3100: checking from the boundary between the first block and the second block in the colored initial block set in a preset order, if there is a conflict, flipping the colors of all sub-cells in the second block; if there is no conflict, continuing to check the boundary between the second block and the third block until all the conflicts between blocks in the initial block set are processed. By checking the conflict on the boundary in turn, the conflict on the boundary of the entire block set is solved, so that other block sets associated therewith also do not appear conflict, and the overall process of the method is improved.
[0023] 7. The key sub-cell is a sub-cell adjacent to the boundary between the current block and the adjacent block. When the key sub-cell is adjacent to the next block, the position and color of the initial sub-cell of the next block are easier to determine. The associated process of coloring other blocks is simplified, and the computing resources are saved.
[0024] 8. After step S3, the method further comprises the following step: S4: outputting the colored mask pattern to two mask layouts according to the colors of the sub-cells in the colored mask pattern. The splitting of the initial mask layout is completed, so that the initial mask layout that cannot meet the lithography resolution requirement becomes two mask layouts that meet the lithography resolution requirement, facilitating subsequent process flow processing.
[0025] 9. The embodiment of the present application also provides a device for implementing the above method, which has the same beneficial effects as the above method and will not be described here.
[0026] 10. The embodiment of the present application also provides a computer device, which has the same beneficial effects as the above method and will not be described here. BRIEF DESCRIPTION OF DRAWINGS
[0027] Figure 1 is a flowchart of the method for solving boundary conflict provided by the first embodiment of the present application;
[0028] Figure 2 is a block diagram provided by the first embodiment of the present application;
[0029] Figure 3 is a flowchart of the implementation of the shading function provided by the first embodiment of the present application;
[0030] Figure 4 is a flowchart of the method step S3 provided by the first embodiment of the present application;
[0031] Figure 5 is a diagram of the initial block set provided by the first embodiment of the present application;
[0032] Figure 6 is a diagram of the block of the initial mask provided by the first embodiment of the present application;
[0033] Figure 7 is a diagram of the device provided by the second embodiment of the present application;
[0034] Figure 8 is a diagram of the computer device provided by the third embodiment of the present application.
[0035] The figure identification is explained as follows:
[0036] 1, method; 2, device; 3, computer device;
[0037] 10, initial mask diagram; 20, splitting module; 21, selection module; 22, shading module; 23, output module; 30, memory; 31, processor;
[0038] 100, block set; 101, block; 102, subunit;
[0039] 300, computer program.
DETAILED DESCRIPTION
[0040] In order to make the purpose, technical scheme and advantages of the present application clearer, the present application will be further described in detail below in combination with the drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application, and are not used to limit the present application.
[0041] Please combine Figure 1 and Figure 2 , the first embodiment of the present application provides a method 1 for solving shading boundary conflict, the method 1 comprises the following steps:
[0042] S0: providing an initial mask diagram 10;
[0043] S1: divide the initial mask pattern into a plurality of sub-blocks 101, the sub-blocks containing a plurality of sub-units 102, and the plurality of sub-units including preset key sub-units; (it can be understood that the following description of coloring the sub-blocks is actually coloring the sub-units in the sub-blocks)
[0044] S2: selecting a predetermined region of the initial mask pattern as an initial sub-block set, the initial sub-block set including one sub-block or a plurality of adjacent sub-blocks, and coloring the sub-blocks in the initial sub-block set by using a preset coloring function to obtain a colored initial sub-block set;
[0045] S3: coloring other sub-blocks by using the coloring function and the coloring information of the key sub-units of each sub-block in the colored initial sub-block set to obtain a colored mask pattern.
[0046] It can be understood that in the method for solving the coloring boundary conflict provided by the first embodiment of the present application, the sub-blocks in the initial sub-block set are colored first, and when there is no conflict problem in the initial sub-block set, the colors of the initial sub-blocks are used to color other sub-blocks, at this time, the colors of the initial sub-block set and other sub-blocks are associated, and since the conflict in the initial sub-block set has been solved, the conflict between the sub-blocks in the subsequent sub-block set no longer occurs, by associating the non-conflict characteristics of the sub-blocks in the initial sub-block set to other sub-blocks, the resources wasted in processing the sub-block conflict are reduced, and the efficiency of solving the coloring conflict problem is greatly improved.
[0047] Please refer to Figure 3 In some embodiments, coloring the sub-blocks by using the preset coloring function includes the following steps:
[0048] S20: determining the preset initial sub-unit positions in each sub-block of the sub-block set;
[0049] S21: if the initial sub-unit starting color has been determined, coloring other sub-units in the sub-block according to the determined color; if the color of the initial sub-unit is not determined, randomly selecting one of color one or color two as the color of the initial sub-unit, and then selecting color one or color two according to the standard that the colors of adjacent sub-units are different to color other sub-units in the sub-block;
[0050] S22: obtaining the colored sub-block set.
[0051] The coloring of the initial sub-units of each sub-block in the initial sub-block set is unified with the coloring of the initial sub-units of each sub-block in other sub-blocks, and the practicability of the coloring function is improved.
[0052] Please refer to Figure 4In some embodiments, step S3 further comprises the following steps:
[0053] S30: providing the color of the key sub-cell of each sub-block in the initial set of colored sub-blocks;
[0054] S31: coloring the initial sub-cell of the adjacent sub-block of the initial set of sub-blocks according to the color of the key sub-cell, and coloring other sub-cells in the current sub-block according to the color of the initial sub-cell;
[0055] S32: coloring the next adjacent sub-block according to the color of the key sub-cell in the current sub-block;
[0056] S33: repeating step S32 until coloring of all sub-blocks is completed to obtain the colored mask pattern.
[0057] By associating the non-conflicting properties of the current set of sub-blocks to other sets of sub-blocks through the color of the key sub-cell of the current set of sub-blocks, coloring of all sub-blocks is completed to obtain the colored mask pattern, which avoids the occurrence of conflicts after coloring of other sets of sub-blocks, reduces the waste of resources in solving conflicts, and improves the efficiency of conflict resolution.
[0058] It can be understood that the key sub-cell of a sub-block can itself transmit the coloring properties of the sub-block to adjacent sub-blocks, and coloring of adjacent sub-blocks through the color of the key sub-cell of the current sub-block can ensure that there is no conflict between the current sub-block and the adjacent sub-block, i.e., coloring of sub-blocks in the adjacent set of sub-blocks according to the color of the key sub-cell of each sub-block in the current set of sub-blocks can achieve the effect that there is no conflict between the two sets of colored sub-blocks. The key sub-cell in the current sub-block can be any position sub-cell.
[0059] Preferably, the key sub-cell is a sub-cell on the boundary between the current sub-block and the adjacent sub-block. When the key sub-cell is adjacent to the next sub-block, the position and color of the initial sub-cell of the next sub-block are easier to determine. Illustratively, when the key sub-cell is a sub-cell on the boundary between the current sub-block and the adjacent sub-block, and the initial sub-cell on the adjacent sub-block is adjacent to the key sub-cell, the color of the initial sub-cell on the adjacent sub-block is the color other than the color of the key sub-cell. Defining the key sub-cell as a sub-cell on the boundary between the current sub-block and the adjacent sub-block simplifies the association process of coloring of other sub-blocks and saves computing resources.
[0060] Please refer to Figure 5In some embodiments, the initial block set 100 is any one of a set of all blocks in the first column of the initial mask layout in the X direction, a set of all blocks in the last column of the initial mask layout in the X direction, a set of all blocks in the first row of the initial mask layout in the X direction, and a set of all blocks in the last row of the initial mask layout in the X direction. Such selection makes the initial block set more flexible and improves the practicability of the conflict resolution method.
[0061] For example, the set of all blocks in the first column of the initial mask layout in the X direction is selected as the initial block set, the first subcell in the upper right corner of each block is selected as the key subcell, after coloring all blocks in the initial block set by using the preset coloring function, the second column of blocks in the initial mask layout in the X direction is colored by using the key subcell of each block in the initial block set, the first subcell in the upper left corner of each block is selected as the initial subcell, the color of the initial subcell of the second column of blocks in the initial mask layout in the X direction is determined by the color of the key subcell, then the coloring of each block is completed according to the color of the initial subcell of each block, and then the coloring of the subsequent block set is sequentially completed until the coloring of all blocks is completed. It can be understood that the selection of the initial block set and the key subcell can be arbitrary, as long as the condition that the non-conflict property between blocks in the initial block set is transmitted to other block sets through the key subcell is met.
[0062] Please continue to refer to Figure 5 It can be understood that after the coloring of the blocks in the initial block set is completed, the blocks in the initial block set can also directly have conflicts (as shown in the dashed oval frame in the figure), therefore, in some embodiments, before step S32, the following step is further included:
[0063] S310: checking whether there is a conflict between the blocks in the initial block set after coloring, if there is, processing the conflict between adjacent blocks in the initial block set after coloring.
[0064] When the coloring function colors the initial block set, if there is a conflict between the blocks in the initial block set at this time, the conflict needs to be resolved first, and then other blocks are colored according to the initial block set after the conflict is resolved. The step of resolving the conflict in the initial block set makes the entire resolution method more perfect, reasonable and more suitable for actual production.
[0065] Further, step S310 includes the following steps:
[0066] S3100: checking the boundary between the first patch and the second patch in the preset order from the set of initial patches after coloring, if there is a conflict, flipping the color of all sub-units in the second patch (flipping means if the sub-unit itself is color one, it is flipped to color two, if the sub-unit itself is color two, it is flipped to color one); if there is no conflict, continue to check the boundary between the second patch and the third patch, until all inter-patch conflicts in the initial patch set are processed. By checking the conflict on the boundary in turn, the conflict on the boundary of the entire patch set is solved, so that the associated other patch sets will not conflict, and the overall process of the method is improved.
[0067] In some embodiments, the patches are rectangular patches. Since most of the initial mask plates are square or rectangular, setting the patches as rectangular patches is convenient for splitting and coloring operation.
[0068] Preferably, after step S3, the following steps are further included:
[0069] S4: outputting the coloring mask pattern to two mask plate patterns according to the color of the sub-units in the coloring mask pattern.
[0070] Illustratively, after coloring all patches, the coloring mask pattern is obtained, and the sub-units in the coloring mask pattern have two colors, color one and color two. All sub-units with color one are output to one mask plate pattern, and all sub-units with color two are output to another mask plate pattern.
[0071] Please refer to Figure 6 Illustratively, a 2000 μm*2000 μm area is selected from the initial mask plate pattern, and the initial mask plate pattern is divided into 100*100 patch combinations according to the square with a side length of 20 μm, and each patch contains a plurality of sub-units;
[0072] The first column of 100 patches in the X direction of the 100*100 patch combination is selected as the initial patch set (as shown in the dashed box in the figure), and the last sub-unit in the upper right corner of the patch is selected as the key sub-unit. It can be understood that the X direction is only a reference direction;
[0073] According to the preset coloring function, the patches in the initial patch set are colored, and the first sub-unit in the upper left corner of the patch is selected as the initial sub-unit;
[0074] checking the boundary between the first tile and the second tile in the preset order from the colored initial tile set, flipping the color of all sub-cells in the second tile if there is a conflict, and continuing to check the boundary between the second tile and the third tile until all tiles in the initial tile set are processed if there is no conflict;
[0075] recording the color of the key sub-cells of all tiles in the initial tile set after the processing conflict;
[0076] coloring the initial sub-cells of all tiles in the second column of tile set in the X direction of the 100*100 tile combination according to the recorded color of the key sub-cells, and coloring all tiles in the second column of tile set by using the preset coloring function;
[0077] recording the color of the key sub-cells of all tiles in the second column of tile set, coloring the third column of tile set adjacent to the second column, and coloring all tiles in the same way until the coloring of all tiles is completed.
[0078] After the coloring of all tiles is completed, a colored mask pattern is obtained, and the sub-cells in the colored mask pattern have two colors, color one and color two, all sub-cells with color one are output to a mask plate, and all sub-cells with color two are output to another mask plate.
[0079] Referring to Figure 7 The second embodiment of the present application further provides a device 2 for implementing the above method, and the device 2 comprises:
[0080] a splitting module 20 for splitting the initial mask plate into a plurality of tiles;
[0081] a selecting module 21 for selecting an initial tile set;
[0082] a coloring module 22 for coloring the tiles.
[0083] Preferably, the device 2 further comprises an output module 23 for outputting the colored mask pattern to two mask plates respectively according to the color of the sub-cells in the colored mask pattern.
[0084] Referring to Figure 8 The third embodiment of the present application further provides a computer device 3 comprising a memory 30, a processor 31 and a computer program 300 stored in the memory 30, and the processor 31 executes the computer program 300 to implement the method provided by the first embodiment.
[0085] In the embodiments provided in the present application, it should be understood that "B corresponding to A" means that B is associated with A, and B can be determined according to A. However, it should also be understood that the determination of B according to A does not mean that B is determined only according to A, but B can also be determined according to A and / or other information.
[0086] It should be understood that "one embodiment" or "an embodiment" mentioned throughout the specification means that the specific features, structures or characteristics related to the embodiment are included in at least one embodiment of the present application. Therefore, "in one embodiment" or "in an embodiment" appearing throughout the specification does not necessarily refer to the same embodiment. In addition, these specific features, structures or characteristics can be combined in one or more embodiments in any suitable manner. Those skilled in the art should also know that the embodiments described in the specification are optional embodiments, and the actions and modules involved are not necessarily required by the present application.
[0087] In various embodiments of the present application, it should be understood that the size of the sequence number of the above-mentioned processes does not mean the inevitable sequence of execution, and the execution sequence of the processes should be determined according to its function and inherent logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.
[0088] In the flowcharts and block diagrams in the drawings of the present application, the possible implementation architecture, function and operation of the system, method and computer program product according to various embodiments of the present application are illustrated. In this regard, each block in the flowchart or block diagram can represent a module, a program segment or a part of code containing one or more executable instructions for implementing the specified logic function. It should also be noted that in some alternative implementations, the functions noted in the blocks can also occur in different order from that noted in the drawings. For example, two blocks represented in succession can actually be executed substantially in parallel, and sometimes they can be executed in reverse order, based on the functions involved. It should be particularly noted that each block in the block diagram and / or flowchart, and the combination of blocks in the block diagram and / or flowchart, can be implemented by a dedicated hardware-based system performing the specified function or operation, or can be implemented by a combination of special-purpose hardware and computer instructions.
[0089] Compared with the prior art, the method for solving the color boundary conflict provided by the present application has the beneficial effects that:
[0090] Compared with the prior art, the method for solving the color boundary conflict provided by the present application has the beneficial effects that:
[0091] 1. The method provided by the embodiment of the present application comprises the following steps: S0: providing an initial mask plate pattern; S1: dividing the initial mask plate pattern into a plurality of blocks, the blocks comprising a plurality of subunits, and the plurality of subunits comprising preset key subunits and preset initial subunits; S2: selecting a predetermined region of the initial mask plate pattern as an initial block set, the initial block set comprising one block or a plurality of adjacent blocks, and coloring the blocks in the initial block set by using a preset coloring function to obtain a colored initial block set; and S3: coloring other blocks by using the coloring function and coloring information of the key subunits of each block in the colored initial block set to obtain a colored mask pattern. The blocks in the initial block set are colored first, and when there is no conflict in the initial block set, the other blocks are colored by using the colors in the initial block set. At this time, the colors of the initial block set and the other blocks are associated, and since the conflicts in the initial block set have been resolved, the blocks in the subsequent block set will not produce conflicts. By associating the non-conflict characteristics of the blocks in the initial block set to the other blocks, the resources wasted in processing block conflicts are reduced, and the efficiency of solving the coloring conflict problem is greatly improved.
[0092] 2. Coloring the blocks by using the preset coloring function comprises the following steps: S20: determining the position of the preset initial subunit in each block of the block set; S21: if the initial subunit has a determined starting color, coloring the other subunits in the block according to the determined color; if the color of the initial subunit is not determined, randomly selecting one of color one or color two as the color of the initial subunit, and coloring the other subunits in the block according to the selected color; and S22: obtaining the colored block set. The coloring of the initial subunit of each block in the initial block set is unified with the coloring of the initial subunit of each block in the other blocks, and the practicality of the coloring function is improved.
[0093] 3. The step S3 further comprises the following steps: S30: obtaining the color of the key sub-cell of each sub-block in the initial sub-block set after coloring; S31: coloring the initial sub-cell of each sub-block in the adjacent sub-block set of the initial sub-block set according to the color of the key sub-cell, the sub-block set comprising one sub-block or a plurality of adjacent sub-blocks, and coloring other sub-cells in the current sub-block according to the color of the initial sub-cell; S32: coloring the next adjacent sub-block set according to the color of the key sub-cell of each sub-block in the current sub-block set; and S33: repeating the step S32 until coloring of all sub-blocks is completed to obtain the colored mask pattern. The non-conflicting characteristics of the current sub-block set are associated to other sub-block sets through the color of the key sub-cell of the current sub-block set, so that coloring of all sub-blocks is completed to obtain the colored mask pattern, which avoids occurrence of conflicts after coloring of other sub-block sets, reduces resources wasted in solving conflicts, and improves efficiency of conflict solving.
[0094] 4. The initial sub-block set is any one of a set of all sub-blocks in the first column in the X direction, a set of all sub-blocks in the last column in the X direction, a set of all sub-blocks in the first row in the X direction, and a set of all sub-blocks in the last row in the X direction. Such selection makes the initial sub-block set more flexible and improves practicability of the conflict solving method.
[0095] 5. Before the step S32, the method further comprises the following step: S310: checking whether there is a conflict between the sub-blocks in the initial sub-block set after coloring, and if there is, processing the conflict between the adjacent sub-blocks in the initial sub-block set after coloring. After the coloring function colors the initial sub-block set, if there is a conflict between the sub-blocks in the initial sub-block set, the initial sub-block set after conflict solving is needed to color other sub-blocks. The step of solving the conflict in the initial sub-block set makes the whole solving method more perfect, reasonable and more suitable for actual production.
[0096] 6. The step S310 comprises the following step: S3100: checking the boundary between the first sub-block and the second sub-block in the initial sub-block set after coloring in a preset order, and if there is a conflict, flipping the color of all sub-cells in the second sub-block; and if there is no conflict, continuing to check the boundary between the second sub-block and the third sub-block until all sub-blocks in the initial sub-block set are processed. The conflict on the boundary is solved by checking the conflict on the boundary in sequence, so that the conflict on the boundary of the whole sub-block set is solved and other sub-block sets associated therewith also do not have conflicts, which perfects the overall process of the method.
[0097] 7. The key sub-unit is the sub-unit on the border adjacent to the current block and the adjacent block. When the key sub-unit is adjacent to the next block, the position and color of the initial sub-unit of the next block are easier to determine. The association process of coloring other blocks is simplified, and the computing resources are saved.
[0098] 8. After step S3, the following step is further included: S4: output the color mask pattern to two mask plate patterns respectively according to the color of the sub-unit in the color mask pattern. The splitting of the initial mask plate pattern is completed, and the initial mask plate pattern which cannot meet the requirement of the lithography resolution becomes two mask plate patterns which can meet the requirement of the lithography resolution, which is convenient for subsequent process flow processing.
[0099] 9. The embodiment of the present application further provides a device for implementing the above method, which has the same beneficial effects as the above method, and will not be described here.
[0100] 10. The embodiment of the present application further provides a computer device, which has the same beneficial effects as the above method, and will not be described here.
[0101] The above describes in detail a method for solving the color boundary conflict according to the embodiment of the present application. The principle and implementation mode of the present application are described by applying specific examples. The above embodiment is only used for helping to understand the method of the present application and its core idea; meanwhile, for the general technical personnel in the field, the specific implementation mode and application range of the present application will be changed according to the idea of the present application. In conclusion, the content of the specification should not be understood as the limitation of the present application. Any modification, equivalent replacement and improvement within the principle of the present application should be included in the protection range of the present application.
Claims
1. A method for resolving color boundary conflicts, characterized in that: Includes the following steps: S0: Provides the initial mask layout; S1: Divide the initial mask layout into multiple blocks, each block containing multiple sub-units, and the multiple sub-units include a preset key sub-unit and a preset initial sub-unit, wherein the key sub-unit is the sub-unit on the boundary between the current block and the adjacent block; S2: Select a predetermined area of the initial mask layout as the initial block set. The initial block set includes one block or multiple adjacent blocks. Then, color the blocks in the initial block set using a preset coloring function to obtain the colored initial block set. S3: Using the coloring function and the coloring information of the key sub-units of each block in the initial block set after coloring, other blocks are colored to obtain a color mask pattern, and Step S3 also includes the following steps: S30: Obtain the color of the key sub-unit of each block within the initial block set after coloring; S31: Color the initial sub-units of adjacent blocks of the initial block set according to the color of the key sub-unit, and then color other sub-units in the current block according to the color of the initial sub-unit; S32: Color the next adjacent block according to the color of the key sub-unit within the current block; S33: Repeat step S32 until all blocks are colored, and the colored mask pattern is obtained.
2. The method as described in claim 1, characterized in that: Coloring blocks using a preset coloring function includes the following steps: S20: Determine the position of the preset initial sub-unit within each block of the block set; S21: If the initial sub-unit's starting color has been determined, then the other sub-units in the block are colored according to the determined color; if the initial sub-unit's color has not been determined, then a color is randomly selected from color one or color two as the initial sub-unit's color, and then the other sub-units in the block are colored according to the selected color. S22: Obtain the colored block set.
3. The method as described in claim 1, characterized in that: The initial block set is any one of the following sets: the set of all blocks in the first column of the X direction, the set of all blocks in the last column of the X direction, the set of all blocks in the first row of the X direction, and the set of all blocks in the last row of the X direction.
4. The method as described in claim 2, characterized in that: Before step S32, the following steps are also included: S310: Check whether there are conflicts between blocks in the initial set of colored blocks. If there are, handle the conflicts between adjacent blocks in the initial set of colored blocks.
5. The method as described in claim 4, characterized in that: Step S310 includes the following steps: S3100: Starting from the boundary between the first and second blocks in the initial set of colored blocks in a preset order, if there is a conflict, the color of all sub-units in the second block is flipped; if there is no conflict, the boundary between the second and third blocks is checked until all inter-block conflicts in the initial set of blocks are resolved.
6. The method as described in claim 1, characterized in that: Following step S3, the following steps are also included: S4: Output the shading mask pattern to the two mask patterns respectively according to the color of the sub-units within the shading mask pattern.
7. An apparatus for implementing the method as described in any one of claims 1-6, characterized in that: The device includes: Split module: Used to divide the initial mask layout into multiple blocks; Selection module: Used to select the initial set of blocks; Coloring module: Used to color blocks.
8. A computer device, characterized in that: The computer device includes a memory, a processor, and a computer program stored in the memory, the processor executing the computer program to implement the method of any one of claims 1 to 5.
Citation Information
Patent Citations
Method of resolving multi-patterned color conflicts for multi-row logic cells
US20160147929A1