A HOTSPOT AVOIDANCE METHOD FOR CREATING INTEGRATED CIRCUITS
The hotspot avoidance model using a hotspot directory with hash values predicts and minimizes IC defects, enhancing manufacturing efficiency by avoiding physical wafer testing, thus reducing production time and improving yield.
Patent Information
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- TAIWAN SEMICONDUCTOR MANUFACTURING CO LTD
- Filing Date
- 2020-07-14
- Publication Date
- 2026-06-25
AI Technical Summary
The existing methods for identifying and addressing process-related defects, such as topology hotspots in integrated circuits, are inefficient and time-consuming, often requiring physical measurement after the manufacturing process, which can take months.
A method is developed to predict hotspots during the IC manufacturing process by creating a hotspot avoidance model that uses a hotspot directory, which includes a database of hash values from cropped images of potential defects, allowing for the selection of an optimal CMP recipe to minimize defects without physical wafer fabrication.
This approach significantly reduces the time required to identify and mitigate hotspots, potentially by one-third, by predicting and eliminating defects before physical wafer production, thereby improving yield and reducing downstream issues.
Smart Images

Figure 00000011_0000 
Figure 00000012_0000 
Figure 00000013_0000
Abstract
Description
BACKGROUND In the manufacturing of integrated circuits (ICs), process-related defects, such as topology hotspots, are identified by physically measuring the manufactured wafers after the respective process has been completed. For example, to find defects related to chemical-mechanical polishing (CMP), several phases must be carried out, including circuit design, circuit layout, fabrication and CMP application on the physical wafers, and measurement of the physical wafers to detect topology defects. This process typically takes three months. US 2014 / 0 376 801 A1 describes methods for detecting defects on wafers. One embodiment involves modifying the parameters of a wafer scan and a defect detector depending on whether a potential defect is rejected or accepted. This method can be used to optimize the wafer inspection recipe. In particular, the sensitivity setting of the defect detector can be optimized based on the number of rejected candidates after comparison with replicates. Furthermore, information about new hotspots can be incorporated into the recipe and used for future inspection runs. Using this information about new hotspots in future inspection runs can lead to an improved wafer inspection recipe that is expected to have a higher detection rate for the defect mechanism and thus detect a more accurate signature at the wafer level, which is helpful for root cause analysis of defects on the wafer.The defect detection algorithm and its settings can be pre-configured in the recipe for "runtime POIs". If parameters of one or both scan or detection steps are changed due to the "runtime POIs", all changes to the wafer inspection recipe can be saved during runtime so that they can be used in future runs of the same wafer inspection recipe, in other wafer inspection recipes, or in other processes performed on the inspected wafer. US 2019 / 0318471A1 describes a method for detecting hotspot defects. The method extracts hotspots from the design of a semiconductor product and defines a hotspot map with hotspot groups. Local patterns in the same design context that produce the same image content are defined as the same hotspot group. During runtime, defect images are acquired by a test tool using hot scans on a wafer manufactured with the design. The hotspot map is aligned to each defect image to locate the hotspot groups. The hotspot defects in each defect image are detected by dynamically mapping the hotspot groups to several threshold ranges and then automatically segmenting the pixel values of the hotspots in each hotspot group within the respective threshold range. US 2016 / 0 300 338 A1 describes pattern tracking during a semiconductor manufacturing process. In one embodiment, hash codes are used to determine whether a newly extracted reference pattern matches a previously stored reference pattern. This is done by reducing the geometric shape information of the pattern to a single numerical value that uniquely represents that geometric shape. If all patterns are reduced to single numerical values in this way, it means that any two patterns with an equivalent numerical value (i.e., an equivalent hash code) are identical patterns.In this case, the task of determining whether a newly extracted reference pattern already exists in the database simply consists of calculating the hash code for the newly extracted reference pattern and comparing it to the same code that was previously calculated and stored in the database for each existing reference pattern. BRIEF DESCRIPTION OF THE DRAWINGS Aspects of this disclosure are best understood with reference to the following detailed description in conjunction with the accompanying drawings. It should be noted that, in accordance with industry practice, various features are not shown to scale. In fact, the dimensions of the various features may have been arbitrarily enlarged or reduced for the sake of clarity. Figures 1, 2, 3 to 4 illustrate cross-sectional views of structures with a chemical-mechanical polishing process performed on them and the results in accordance with some embodiments. Figure 5 illustrates a schematic sequence in the design and fabrication of an IC in accordance with some embodiments. Figure 6 illustrates a process sequence for creating a hotspot directory in accordance with some embodiments.Figure 7 illustrates example images and the generated hash values in accordance with some embodiments. Figure 8 illustrates a schematic view of an example wafer with hotspots in accordance with some embodiments. Figure 9 illustrates an example cropped image in accordance with some embodiments. Figure 10 illustrates the grouping of hash values in accordance with some embodiments. Figures 11 and 12 illustrate the depicted areas in a cropped image with different feature densities and line widths in accordance with some embodiments. Figure 13 illustrates a process flow for using the hotspot directory to identify likely hotspots in accordance with some embodiments. Figure 14 illustrates the cropping of a layout into a plurality of cropped images in accordance with some embodiments.Figure 15 illustrates a process flow for finding a recipe according to hotspots, in accordance with some embodiments. Figure 16 illustrates a graphical representation of finding a recipe in accordance with some embodiments. Figure 17 illustrates an example recipe in accordance with some embodiments. Figure 18 illustrates a process for improving a hotspot avoidance model and improving recipes in accordance with some embodiments. Figure 19 illustrates a system for performing the tasks in accordance with some embodiments. DETAILED DESCRIPTION The following disclosure provides many different embodiments, or examples, for implementing various features of the invention. Specific examples of components and arrangements are described below to simplify the present disclosure. These are, of course, merely examples. For instance, the formation of a first element over or on top of a second element in the following description may include embodiments in which the first and second elements are formed in direct contact, and may also include embodiments in which additional elements may be formed between the first and second elements, so that the first and second elements need not be in direct contact. Additionally, the present disclosure may repeat reference numbers and / or letters in the different examples.This repetition serves the purpose of simplification and clarity and does not itself imply any relationship between the different embodiments and / or configurations discussed. Furthermore, spatially relative terms such as "underlying", "below", "under", "overlying", "above", and the like may be used herein to facilitate description and to describe the relationship of one element or feature to another element(s) or feature(s), as illustrated in the figures. These spatially relative terms are intended to encompass various orientations of the component in use or operation in addition to the orientation shown in the figures. The device may be oriented differently (rotated by 90 degrees or in other orientations), and the spatially relative descriptive terms used herein may be interpreted accordingly. A hotspot avoidance method for manufacturing ICs is provided in accordance with some embodiments. The system and processes for predicting hotspots and the use of the predicted hotspots to find an optimal recipe are illustrated in accordance with some embodiments. Some variations of some embodiments are discussed. The embodiments discussed herein are intended to provide examples to enable the manufacture or use of the subject matter of this disclosure, and a person skilled in the art will already understand modifications that can be made while remaining within the intended scope of various embodiments. Across the different views and illustrated embodiments, similar reference numbers are used to identify similar elements.Although some procedural execution methods may be discussed as being carried out in a specific order, other procedural execution methods can be carried out in any logical order. Beyond the description, the term "hotspot" refers more to defects generated during IC manufacturing processes than to design-related defects. In other words, the term "hotspot" refers to process-related defects. One example of hotspots are defects generated during chemical-mechanical polishing (CMP) processes, as discussed in detail with reference to Figures 1, 2, 3 to 4. While hotspots can also refer to other types of defects, including but not limited to defects related to etching processes (for example, parts intended to be removed but not removed during etching), defects related to the deposition process, and so on.Figures 1, 2, 3 to 4 illustrate the deposition of some elements, the CMP process, and some possible results of CMP. It is understood that Figures 1, 2, 3 to 4 illustrate the example structure of a CMP process for the formation of metal conductors, while an actual CMP process can be applied to various structures, materials, and the like. With reference to Figure 1, wafer 10 is provided. Wafer 10 has a base layer 20, which may, for example, be a silicon substrate, and the overlying structures and layers are not shown in detail. A plurality of trenches can be formed extending into a dielectric layer of the base layer 20. Deposition processes are then carried out to deposit an adhesive layer 22 and a metallic material 24 over the adhesive layer 22.In accordance with some embodiments of the present disclosure, the adhesive layer 22 may be formed of or contain titanium, titanium nitride, tantalum, tantalum nitride, or the like. The filler material 24 may contain copper, aluminum copper, or the like. Due to the topology of the trenches in the base layer 20, the deposited metallic material 24 has non-planar top surfaces that may reflect the topology of the base layer 20. A CMP process is carried out to remove excess sections of metallic material 24, resulting in a plurality of conductive features 26 (including 26A and 26B) that may include metal conductors, vias, contact plugs, or the like, as shown in Fig. 2, Fig. 3, or Fig. 4. Due to various factors, such as the topology of base structure 20 (for example, the density and widths of the trenches) and the recipe of the CMP process, different results can be achieved, as shown in Fig. 2, Fig. 3, and Fig. 4. Throughout the description, the term "recipe" refers to the collection of process conditions, such as the number of (sub-)steps in the CMP process, the types of suspension, the flow rates of the suspension, the pressure of the wafer against the polishing pad, the deburring, the rotational speed, etc. A recipe therefore contains a fixed set of process conditions. If one or more of the process conditions of a recipe are changed, it is considered as if a different recipe is being created. Fig. 2 illustrates an ideal case to be achieved. In Fig.2 the top surfaces of all resulting conductive features 26 (including 26A and 26B) are coplanar, regardless of the widths and structure densities of conductive features 26. Fig. 3 illustrates an actual case that is not ideal but still acceptable. Due to the structure loading effect, the sections of metallic material 24 with higher density and / or larger widths are polished more than the sections of metallic material 24 with lower density and / or smaller widths, resulting in a cupping effect with generated pits. The depths D1 of the pits are smaller than a design specification, and therefore no hotspot is generated. For example, the design specification may require that the cupping depth be less than approximately 10 nm. Since the depths D1 of all pits are smaller than the specification, the result is acceptable, and the pits are not hotspots. Fig. 4 illustrates a case in which hotspots are generated, where trenches are wide and / or the trench structure densities are high. For example, the trench depth D2 of the wide trenches is greater than the design specification (10 nm, for example). These out-of-specification trenches can cause problems for downstream processes, problems that may include short circuits, circuit open-circuiting, or the like, depending on the specific circuit design. Throughout the description, the out-of-specification trenches are used as exemplary hotspots to explain the concept of the present disclosure. It is also welcome that Fig. 3 and Fig.Figure 4 illustrates overpolishing in the CMP process, while underpolishing, where some sections are less polished (and therefore higher than the top surfaces of base layer 20), can also occur, and hotspots can likewise be generated if the resulting bumps are outside the specification. The hotspots can result in a loss of finished yield and must be eliminated or at least reduced to be within the specification. Fig. 5 illustrates a schematic process in the design and fabrication of an integrated circuit (IC) in accordance with some embodiments of the present disclosure. A circuit design is first provided (Process 30), and the design may include the circuit diagram. Next, the layout of the circuit is prepared (Process 32). From the layout, the hotspots and their positions in the layout are predicted using a model provided in accordance with the embodiments of the present disclosure (Process 34). The details of the hotspot prediction are shown as Process 300 in Fig. 13. The generation, use, and improvement of the model are discussed in detail in the following paragraphs. Throughout the description, the model is referred to as a hotspot avoidance model. After the hotspots have been predicted, a recipe (hereinafter referred to as a selected recipe) that can result in the fewest hotspots is chosen based on the predicted hotspots (Process 36). Using the selected recipe to perform the CMP minimizes the number of hotspots and their severity (such as depth D1 and D2, as shown in Fig. 4). The details of the recipe selection are shown as Process 400 in Fig. 15. The recipe is then used to fabricate the circuit on wafers and is used to perform a CMP process on physical wafers (Process 38). It is preferred that no CMP process be performed on any wafer implementing this particular layout until the selected recipe is chosen.Following the CMP process, the resulting polished wafers can be tested (process 40) to verify the occurrence and locations of hotspots. The test results can also be used to improve the hotspot avoidance model, with the improvement process included in process 500 shown in Fig. 18. In the following paragraphs, a process flow 200 (Fig. 6) for establishing and improving a hotspot directory, a process flow 300 (Fig. 13) for using the hotspot directory to predict hotspots on a circuit layout, and a process flow 400 (Fig. 15) for proposing selected recipes are discussed in detail. These processes, when combined, provide a solution for predicting and eliminating (or at least minimizing) hotspots without actually performing processes (such as CMP processes) on physical wafers. With reference to Fig. 6, process flow 200 is provided for generating and improving a hotspot directory. With reference to process 202, a training layout of a chip implementing a circuit is provided. The chip layout can be in the form of a Graphical Data System (GDS) format or any other applicable format. Throughout this description, layouts are alternatively referred to as GDS files. It is recommended that the training layout be used specifically for generating the hotspot directory and not for mass production of products, or that it be a manufacturing layout implemented on manufacturing wafers. An experimental wafer is then fabricated to implement the training GDS. Fig. 8 illustrates a schematic view of the corresponding wafer 42, which has a plurality of chips 44, with the layout (the training GDS) implemented in each of the chips 44. After a CMP process has been performed, a test is carried out to measure the surface topography of wafer 42 (process 204 in Fig. 6) and hotspots 46 in wafer 42 are identified. The positions of hotspots 46 in wafer 42 are recorded, as shown as process 208 in Fig. 6. Since there can be a plurality of hotspots 46 found in process 204, a plurality of positions in wafer 42 are recorded. Next, as shown as process 210 in Fig. 3, an image is cropped from the layout for each of the detected hotspots 46. This image may be in the form of a serial GDS file. For example, Fig. 9 illustrates an example of a cropped image. Assuming that a hotspot 46 is found at position 48, the image surrounding the hotspot 46 is cropped from the serial layout data. The image may be rectangular or square. The length L1 and width W1 of the cropped image are selected such that the surrounding environment around hotspot 46 is large enough to include the surrounding features whose structures and density may result in the hotspot 46, but not so large as to include features that do not contribute to the generation of the hotspot 46. For example, length L1 and width W1 may be in the range between approximately 64 µm and approximately 512 µm.Since there can be a single or a plurality of hotspots 46 found in process 204, a single or a plurality of images can be cropped from the layout of wafers 42. With reference to process 212 in Fig. 6, hash values are generated from the cropped images. Fig. 7 illustrates an example of generating hash values from images. Since images cannot be indexed and searched, an image is represented by a hash value, which is a unique digital representation of the image. The hash values and the images correspond one-to-one, so identical images will generate identical hash values, and different images will generate different hash values. Furthermore, images that are similar to each other will generate similar hash values, and the similarity of hash values can be calculated. The similarity of hash values also represents the similarity of images. For example, the similarity of hash values can range from 0 to 1, where a value of 0 means that the images are completely different, and a value of 1 means that the images are identical.Generating hash values from images and calculating the similarity of these hash values can be done using existing algorithms and tools. For example, the discrete cosine transform algorithm (DCT algorithm), used by perceptual hash (pHash), is a well-known and readily available algorithm. The hash values can be obtained from intermediate values represented by two-dimensional matrices, which are then transformed into hash values represented by a series of numbers and letters. For example, Fig. 7 illustrates three example images: Image A, Image B, and Image C. The details of the images are not shown. Image A shows a person wearing heavy clothing, sitting in the snow with a tree in the snow. Image B is similar to Image A, except that it has been adjusted from Image A in terms of color and contrast. Image C shows a human face wearing glasses on its forehead, with flames surrounding the face. To the right of each of the images A, B, and C, an 8 x 8 two-dimensional matrix is provided, the matrix being generated from the corresponding images and / or two-dimensional matrices. The hash values, containing numbers and letters, are shown to the right of the respective matrices.Referring again to Fig. 6, if a single or multiple hotspots 46 are found in process 204, a single or multiple images of a multiple of images are cropped and a single or multiple hash values are generated in process 212. With regard to process 214 in Fig. 6, the plurality of hash values are grouped into one or more groups by a grouping algorithm, where the grouping is based on the similarity of hash values, with similar hash values grouped into the same hash group. An exemplary grouping algorithm is explained using Fig. 10. Fig. 10 illustrates a plurality of circles depicted in a two-dimensional space to visually represent the hash values, with each circle representing a hash value generated from a cropped image. In the grouping algorithm, a plurality of hash values, including the illustrated hash values H1 to H13 as an example, are processed individually. The order of processing is assumed to be the sequence number of the hash values (1 to 13, for example).When hash value H1 is processed, and since there is no other hash value and no previously generated hash group, a first hash group G1 is created, and hash value H1 is placed into this first group G1. The first placed hash value H1 is considered the center of the first group G1. Next, a second hash value, H2, is processed. A similarity score is calculated between hash value H2 and the midpoint of group G1, where the midpoint is H1. Assuming that the similarity score is greater than a predefined threshold similarity value, hash values H1 and H2 are considered similar, and hash value H2 is deemed to belong to hash group G1. Throughout this description, two hash values with a similarity score greater than the predefined similarity threshold are referred to as similar hash values. Their corresponding images are also referred to as similar images. Hash value H2 is added to hash group G1. In some embodiments, the threshold similarity value is 0.9, while other values may be used. Assuming the next processed hash value is H3, a similarity score is calculated between hash value H3 and the midpoint H1 of hash group G1. Further assuming that the similarity score is equal to or less than the specified threshold similarity value, the system considers that hash values H1 and H3 are not similar and that hash value H3 does not belong to hash group G1. Accordingly, a second hash group G2 is created, and hash value H3 is placed in hash group G2. Hash value H3 is the midpoint of hash group G2. In subsequent processes, each of the remaining hash values H4 to H13 is processed individually to calculate its similarity to the midpoints of the existing hash groups (such as G1 and G2). This determines which hash group the newly processed hash values belong to, or whether new hash groups should be created. Figure 10 illustrates this by showing that hash value H12 is not similar to any of the midpoints (such as H1 and H3), so an additional hash group G3 is created, and hash value H12 is placed in hash group G3. Other hash values H4–H11 and H13 are in hash groups G1 or G2. With regard to process 216 in Fig. 6, the midpoints of each hash group are retrieved, where the midpoints can be the hash values that are to be placed first in each hash group. After the midpoints of the hash groups have been retrieved, the non-midpoint hash values are discarded, since each midpoint is similar to and can represent other hash values in its group. In other words, the cropped images represented by the discarded hash values in the same hash group are similar to the cropped image represented by the midpoint hash value of the hash group. The hash values of the midpoint hash values in different hash groups are not similar to each other.Otherwise, if two midpoint hash values are similar to each other, the two midpoint hash values would have been placed in the same hash group, and as a result, only one of them would have been the midpoint and the other would have been discarded. With reference to Fig. 6, in process 218 an entry of a hotspot directory (containing a database) is constructed for each of the non-discarded hash values, the non-discarded hash values being the midpoints of the hash groups. In accordance with some embodiments, a plurality of recipes is generated, as shown by process 206 in Fig. 6. The generation and improvement of the plurality of recipes are discussed with reference to Fig. 18: The plurality of recipes may also include empirical recipes known to be capable of eliminating hotspots for certain image types. Each of the plurality of recipes corresponds to a test GDS, as shown in Fig. 18, which has its hash value.The hash values of the undiscarded midpoints of the hash groups are compared (by calculating similarity scores) with the hash values of the GDS files corresponding to the recipes, and the recipe whose corresponding test GDS is closest to a midpoint hash value is associated with that midpoint hash value. Each midpoint hash value is then associated with a recipe. In addition to the recipe, the cropped image from which the corresponding center point hash value is generated is associated with the center point hash value. Furthermore, as discussed in subsequent paragraphs, the expected topology information (such as whether the hotspot is underpolished or overpolished and the depression depth or elevation height) is also associated with the recipe (as discussed with reference to Fig. 18). The expected topology information is also obtained in the process shown in Fig. 18. Accordingly, each hotspot directory entry contains a hash value, the corresponding cropped image, the corresponding recipe, and the corresponding topology information. There are multiple generated hotspot directory entries. The indices of the hotspot directory entries can be hash values. These hotspot directory entries are stored in a database in hotspot directory 222, as shown in process 220 in Fig. 6. As shown in Fig. 6, a hotspot avoidance model 223 can be created and updated across the processes in process flow 200. The hotspot avoidance model 223 incorporates the relationship between GDS files and hotspots as discussed previously, using GDS files or cropped images (or their corresponding hash values) as input parameters and outputting hotspots as output parameters. Figures 11 and 12 schematically illustrate exemplary cropped images that are stored in the hotspot directory along with the hash values. It is advantageous that Figures 11 and 12 are schematic, showing the outlines of some larger regions 52 while omitting the outlines of some smaller regions. Furthermore, there are multiple structures, such as parallel stripes, within each region, and these structures are not shown in the illustrated regions 52. The sizes, shapes, and densities of the structures in the illustrated regions 52 may differ. The various structures, structure densities, etc., that constitute the environment surrounding the hotspot 46 are the reasons for the hotspot. For example, in Figure 11, region 50 exhibits small line widths that are much smaller than the line widths of its surrounding regions 52.Area 50 may also exhibit a higher structure density, much higher than the structure density of its surrounding areas 52. This causes hotspot 46. If similar images with similar environments are found in other GDS files, a hotspot is expected to occur. Fig. 12 illustrates a cropped image stored in the hotspot directory. Similarly, areas 52 are shown, illustrating the outlines of some larger areas, while the outlines of some smaller areas are not shown. Furthermore, within each of the areas 52, there are multiple structures, such as parallel stripes, which are not shown. The sizes, shapes, and densities of the structures in the illustrated areas 52 can differ from one another, resulting in the respective hotspot 46. In the preceding discussion, it is assumed that when process flow 200 is started, hotspot directory 222 has not been created, and there is no previously generated hash group or center hash value. Accordingly, new hash groups are generated, and a hotspot directory is created from scratch. Once hotspot directory 222 is created, it can be continuously improved using new training GDS files, which can be mass-production GDS files or GDS files specific to training rather than manufacturing. Processes 202, 204, 208, 210, 212, and 214 in Fig. 6 are repeated on the new GDS files. Consequently, a plurality of new hotspots are found from the newly manufactured wafer implementing the new GDS file, and therefore a plurality of new images are sliced. A plurality of new hash values are then generated from the newly sliced images.The newly generated hash values are then processed individually, and their similarity to the existing midpoint hash values (stored in hotspot directory 222) is calculated. It is advantageous that, at this point, the stored midpoint hash values are theoretically still the midpoints of hash groups, except that each hash group is a single-element group (with non-midpoint elements already discarded) containing only one remaining hash value, which is the midpoint of the previously processed hash group. The similarity to each of the stored midpoint hash values in hotspot directory 222 is calculated to determine whether the newly processed hash value belongs to the existing hash groups. If it belongs to one of the existing groups, the newly processed hash value and its corresponding cropped image, recipe, topology information, etc., are discarded, since the similar hotspot already exists in hotspot directory 222.If the newly processed hash value is not similar to any of the stored midpoint hash values, the newly processed hash value and its corresponding customized image, recipe, and topology information are stored as a new entry within the newly processed hash value. This process can improve the hotspot directory 222. Fig. 13 illustrates process flow 300, which is the process flow using the hotspot directory 222 to identify the similar hotspots in a new GDS file (new layout). In relation to process 302, the new GDS file (layout) is provided. Next, in process 304, the new GDS file is cropped into a plurality of cropped images, each having dimensions of L2 x W2 as shown in Fig. 14. For example, Fig. 14 illustrates the design of layout 55, which is divided into an array of images 56 with length L2 and width W2. In some embodiments, length L2 is equal to length L1 (Fig. 8) and width W2 is equal to width W1. In other embodiments, length L2 can be greater or less than length L1 (Fig. 8) and width W2 can be greater or less than width W1. With regard to process 306, each of the cropped images 56 is processed to generate a hash value. The procedure for generating hash values is similar to that discussed in relation to process 212 in Fig. 6 and is therefore not repeated here. With reference to process 308 in Fig. 13, the (center point) hash values stored in hotspot directory 222 are loaded into a computer and the respective software. Each of the newly generated hash values is compared with each of the loaded hash values from hotspot directory 222 to compare their similarity, as shown in process 310. For example, if a newly generated hash value and one of the hash values loaded from the hotspot directory are similar, it is determined that the newly generated hash value and the corresponding cropped image have already been represented by their hash value stored in hotspot directory 222 (process 312). It is also determined that hotspot(s) is / are likely to be generated in the respective cropped image. Accordingly, the position of the corresponding image in the respective GDS file is marked (process 314).For example, if the cropped image is in row 2 and column 3 of the array partitioned from layout 55 in Fig. 14, position (2, 3) is marked. By comparing all the newly generated hash values (of the cropped images) with all the hash values in the directory, a list of all the hotspots (if any) in GDS 54 (Fig. 14) is generated, and the corresponding position of each hotspot is marked in the relevant GDS. The marked positions can be used in the future. For example, after a CMP process, the parts of the chips at the marked positions are examined to determine whether the hotspots have been successfully eliminated or at least reduced. On the other hand, if none of the newly generated hash values are similar to any of the hash values loaded from the hotspot directory, it is determined that the newly generated hash values and the corresponding cropped image are not represented by any hotspot directory entry in hotspot directory 222 (Process 312). In other words, no hash value is found from the GDS file and the process can terminate (Process 316). The layout can therefore be created without considering hotspots. Figure 15 illustrates process flow 400 for identifying and proposing recipes, where the recipes are used to execute the CMP processes to eliminate or at least reduce the hotspots found in process flow 300, as described in Figure 13. With respect to process 402, the list of hotspots generated in process 314 in process flow 300 (Figure 13) is retrieved. If no hotspot is found, the process flow terminates. If one or more hotspots are found, a comparison is made to locate the hotspots in hotspot directory 222 that are similar to the found hotspots.To perform the comparison, the hash values stored in hotspot directory 222 are first loaded into the respective tool and computer. The similarity values between the hash lengths of the found hotspots and the corresponding hash values stored in the hotspot directory are then calculated (by calculating similarity values), as shown in process 406. Depending on the total number of hotspots found in the GDS, there is one or more similarity values, each corresponding to one of the found hotspots. The hotspots (their hash values) are ranked according to their corresponding similarity values (process 406), with hotspots with higher similarity values being ranked higher than hotspots with lower similarity values. With regard to process 408 in process flow 400, the GDS files, topology information, and respective recipes are located according to the ranked hotspots from hotspot directory 222, for example, by indexing them to the corresponding stored midpoint hash values in hotspot directory 222. The topology information is analyzed, and one of the found recipes is selected (process 410). In some embodiments, the selected recipe is the one corresponding to the highest-ranked hash value. In other embodiments, taking other factors into account, the selected recipe is the one corresponding to a hash value that is not the highest-ranked. The selected recipe can then be used to perform the CMP process on the respective physical wafer. Figure 16 illustrates a graphical representation of processes 406 and 410 in process flow 400 in Figure 15. As shown in Figure 16, a plurality of hash values (represented by their two-dimensional matrices) of the found hotspots are generated, corresponding to process 404 in Figure 15. Next, further according to process 406 in Figure 15, the similarity values between the found hotspots and their corresponding represented hotspots in hotspot directory 222 are calculated, and the found hotspots (and their hash values) are ranked. As shown in Figure 16, the order of the illustrated hash values is rearranged to show the ranking. Figure 16 also illustrates a plurality of recipes and GDS files corresponding to the ranked hash values. Next, one of the recipes is selected (process 410), and the selected recipe is, in this example, Recipe B.In other embodiments, the recipe with the highest ranking (recipe A) can be selected. Figure 17 illustrates an example recipe for a CMP process. Each recipe can contain (sub-)steps performed in the CMP process and parameters to be used in each step. In the illustrated example, there are four steps: Step 1, Step 2, Step 3, and Step 4, each performed with a plurality of parameters, which change from step to step. For example, there might be head rotation A, head rotation B, suspension flow rate A (the flow rate of a first suspension), suspension flow rate B (the flow rate of a second suspension), pressure force (from the wafer head to the polishing pad), deburring on / off (whether the pad conditioner is on or off), etc. The X-axis represents the time of the CMP process, and the Y-axis represents the parameters and their corresponding values.For example, for each value, the corresponding parameter is activated every time the corresponding bar exists, and if the bar is wider (in the Y direction), the corresponding parameter has a higher value. For example, Suspension B has a higher flow rate in the initial phase of Step 1 and is then deactivated for the remainder of Step 1. Suspension B has a relatively low flow rate throughout Step 2 and is then deactivated for the entirety of Step 3 and Step 4. The pad conditioner (specified by deburring on / off) is activated with relatively low pressure during Step 1 and Step 2, and with relatively high pressure during Step 3 and Step 4.Beyond the description, when a recipe is described as adapted, this indicates the adjustment of the steps, parameters, and the values of the parameters in combination, meaning that if any of the parameters are adjusted, the recipe is considered adapted. Figure 18 illustrates a process flow 500 for improving recipes and the process for training the hotspot avoidance model 223 (Figure 6). Throughout the description, the hotspot avoidance model 223 is alternatively referred to as a machine learning (ML) model that can be improved by learning in the improvement process in process flow 500. The improved recipes (recipes A, B, C, and D) can be used as the stored recipes in process 206 in Figure 6. Referring to Fig. 18, a plurality of GDS (layouts) A, B, C, and D are provided. GDS A, B, C, and D can be identical, slightly different, or completely different. Each of the recipe improvement processes undergoes iterations to improve the recipes. For example, GDS A is provided (Process 502) and fed to Hotspot Avoidance Model 223 (Fig. 6), so that hotspots likely to occur are generated and output by Hotspot Avoidance Model 223. Recipe A is then proposed, and the generation of the proposed (selected) Recipe A is shown in Process 400 (Fig. 15). The selected Recipe A is then used to perform a CMP process on a physical wafer in which GDS A is implemented. A measurement is then performed on the wafer to determine the hotspots and topology information on the wafer and to generate wafer results (Process 506).The measurement examines the positions on the wafer, specifically those marked in process 314 (Fig. 13), to determine whether the respective hotspots identified in process 312 (Fig. 13) have been eliminated or at least reduced. If the hotspots are eliminated or at least reduced, it is determined whether the recipe is favorable and could be further improved. If the hotspots are not reduced or have even worsened, a different recipe is required. Depending on the wafer results, training data 508 (which may contain the measurement results) is fed back to the hotspot avoidance model 223, and the hotspot avoidance model 223 is updated (process 510). For example, if the measurement results indicate that some new hotspots were found, or that some expected hotspots do not exist, the hotspot avoidance model is updated so that it will output the newly found hotspots and no longer output the model that does not exist. Furthermore, based on the measurement results, recipe A can be revised, for example, to eliminate the remaining hotspots found. Another wafer can then be fabricated, and a CMP (Complete Measurement Process) is performed using the revised recipe A. A measurement can then be taken to identify the hotspot and determine the topology information. This creates a replicate, and the repetition can be continued until the results are satisfactory. GDS A, B, C, and D can be identical to each other, and the initial recipes A, B, C, and D can be chosen to be different, allowing recipes to be improved in various directions. Ultimately, an optimized recipe can be selected from among the revised recipes A, B, C, and D, with each being improved in its own iterations. GDS A, B, C, and D that are different from each other can also be used in such a way that the resulting models can cover different layouts, and more recipes can be generated for different layouts. Fig. 19 schematically illustrates a tool 600 for performing the tasks mentioned above, which include, but are not limited to, the calculation, determination, and storage of hotspot directory 222. For example, the processes shown in process sequences 200, 300, 400, and 500 can all be performed using the computer (processors) 602, which comprises the hardware and software (computer program codes). The program codes of tool 600 can be implemented on a non-transient data storage medium, such as a hard disk, a data carrier, or the like. Hotspot directory 222, which can be implemented in a data storage medium such as a hard disk, is electrically and signal-transmitting connected to the computer 602 for storage and retrieval. The embodiments described in the present disclosure exhibit several advantageous features. By predicting hotspots and selecting recipes to reduce or eliminate them, there is no need to fabricate a physical wafer and measure it to locate hotspots. The first physical wafer can be produced using the recipe that will hopefully eliminate potential hotspots. Fabrication cycles can be significantly reduced, for example, by one-third of the time. The invention is defined by the main claim and the dependent claims. The subclaims describe further embodiments of the invention.
Claims
A computer-implemented method (300) comprising: cropping (304) a plurality of images (56) from a layout (55) of an integrated circuit; generating (306) a plurality of hash values, each from one of the plurality of images (56); searching (310, 312) a hotspot library (222) to find similar hash values that are similar to the plurality of hash values, the hotspot library storing hash values indexed to images that have hotspots (46); marking (314) positions (48) of some of the plurality of images (56) associated with the similar hash values on the layout (55) of the integrated circuit; and determining a recipe for implementing the layout (55) of the integrated circuit on a wafer (42) based on the similar hash values found;wherein the recipe for implementing the layout of the integrated circuit includes a recipe for a chemical-mechanical polishing process and the similar hash values are associated with a plurality of recipes in the hotspot library (222) and wherein the recipe is selected from the plurality of recipes.; Method comprising the computer-implemented method according to claim 1, and further comprising: implementing the layout (55) of the integrated circuit on the wafer (42), wherein the implementation comprises performing a chemical-mechanical polishing process on the wafer using the recipe; and inspecting the positions (48) on the wafer (42) to identify hotspots (46) at the positions. Method according to claim 1 or 2, wherein the recipe comprises a first duration and flow rate of a suspension used in the chemical-mechanical polishing process, and a second duration and magnitude of both a conditioning and a pressure force used in the chemical-mechanical polishing process. Method according to one of the preceding claims, wherein each of the plurality of images (56) has a square shape, wherein a length and a width of the square shape is in a range between about 64 µm and about 256 µm. Method according to one of the preceding claims, wherein the hotspot library (222) has a plurality of entries, each containing a hash value, an image, a recipe and topology information. Method according to one of the preceding claims, wherein the hotspot library (222) is indexed by hash values. A computer-readable storage medium comprising: a library (222) for use in a method according to claim 1, wherein the library comprises a plurality of entries, each of which contains: a hash value; an image of a section of a layout (55) of an integrated circuit, wherein the image is associated with the hash value and wherein the image includes a hotspot (46); a recipe for implementing the layout (55) of the integrated circuit on a wafer; and topology information about the hotspot (46). Storage medium according to claim 7, wherein the library further comprises a tool comprising software, wherein the software is configured to generate the hash value of the image when the software is executed by a data processing system. Storage medium according to claim 7 or 8, wherein similarity values of any pair of hash values in the plurality of entries stored in the directory are less than about 0.
9. Storage medium according to one of claims 7 to 9, wherein the hotspot (46) has a depression or a protrusion that occurs at a center point of the image. Storage medium according to one of claims 7 to 10, wherein the recipe for implementing the layout of the integrated circuit comprises a recipe for a chemical-mechanical polishing process. Storage medium according to claim 11, wherein the recipe comprises a first duration and flow rate of a suspension used in the chemical-mechanical polishing process, and a second duration and magnitude of both a conditioning and a pressure force used in the chemical-mechanical polishing process. A computer-readable storage medium comprising a computer program which, when executed by a computer, causes the computer to execute the method according to any one of claims 1 to 6.