Systems and methods for key parameter identification, process model calibration, and variability analysis
By using analysis modules to identify key parameters, calibrate process models and analyze variability in the virtual semiconductor manufacturing environment, the problems of high trial and error experiment costs and difficult prediction in the prior art are solved, and more efficient and accurate semiconductor manufacturing process development is achieved.
Patent Information
- Application Number
- CN202510099915.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2018-02-15
- Filing Date
- 2018-06-19
- Publication Date
- 2025-06-27
AI Technical Summary
In the existing semiconductor manufacturing technology, trial and error experimental methods are costly and last long, and conventional CAD and TCAD tools cannot effectively simulate the material addition, removal and modification process in the manufacturing process, making it difficult to predict structural failures in the integrated process flow.
Systems and methods for virtual semiconductor manufacturing environments are provided, including analysis modules for identifying key parameters, process model calibration, and variability analysis. The system identifies key process steps and parameters that affect manufacturing process results through the virtual manufacturing environment, adjusts process parameters to match the 3D model of the virtual and physical manufacturing environment, and analyzes the metric data variability of the virtual 3D model.
It significantly reduces the development cost and time of semiconductor manufacturing, improves the efficiency and accuracy of process integration, and can effectively predict and resolve structural failures in the integrated process flow.
Smart Images

Figure CN120218003A_ABST
Abstract
Description
This application is a divisional application of the application with application number 201810629679.9, application date June 19, 2018, and invention title "Systems and Methods for Critical Parameter Identification, Process Model Calibration, and Variability Analysis". Related Patent Applications
[0001] This application claims the priority and benefit of U.S. Provisional Patent Application No. 62 / 521,506, titled "Systems and Methods for Analyzing Process Variations in a Virtual Manufacturing Environment for Improving Process Integration", filed on June 18, 2017, and U.S. Provisional Patent Application No. 62 / 631,022, titled "Systems and Methods for Process Model Calibration in a Virtual Manufacturing Environment", filed on February 15, 2018. The contents of both applications are hereby incorporated by reference in their entirety. Technical Field The present invention generally relates to semiconductor manufacturing, and more particularly to systems and methods for critical parameter identification, process model calibration, and variability analysis in a virtual semiconductor device manufacturing environment. Background Art
[0002] Integrated circuits (ICs) implement a large number of functions of modern electronic devices. To make the development of ICs more efficient, semiconductor manufacturers will periodically develop general manufacturing processes or "technologies" for use in the production of their integrated circuits (for the sake of illustration, the term "technology" may be used herein to refer to the manufacturing process of a semiconductor device structure under development).
[0003] Semiconductor R & D organizations of integrated device manufacturers (IDMs) and independent foundries spend a large amount of resources developing integrated process operation sequences for manufacturing chips ((ICs) which they sell in the form of wafers ("wafer" is a thin slice of semiconductor material, usually but not always composed of silicon crystals). Most of the resources are used for manufacturing experimental wafers and related measurements, metrology ( "metrology" refers to specialized measurements carried out in the semiconductor industry), and characterizing structures, all of which are to ensure that the integrated process produces the required semiconductor device structures. These experimental wafers are used in trial-and-error scenarios to develop individual processes for manufacturing device structures and also to develop an overall, integrated process flow. Due to the increasing complexity of advanced technology node process flows, most experimental manufacturing runs result in negative or zero characterization results. The duration of these experimental runs is long, ranging from weeks to months in a "fab" (manufacturing environment), and they are expensive. Recent semiconductor technology advancements, including FinFET, TriGate, high-K / metal gate, embedded memory, and advanced patterning, have greatly increased the complexity of integrated semiconductor manufacturing processes. The cost and duration of technology development using this trial-and-error experimental method are both increasing.
[0004] Conventional mechanical computer-aided design (CAD) tools and technology computer-aided design (TCAD) tools have been tried to model semiconductor device structures, aiming to reduce the effort spent on fabricating experimental wafers. General mechanical CAD tools are found to be insufficient because they do not automatically simulate the material addition, removal, and modification processes that occur in the actual manufacturing environment. On the other hand, TCAD tools are physics-based modeling platforms that can simulate the material composition changes that occur during diffusion and implantation processes, but cannot simulate all the material addition and removal effects that occur during other processes including the integration process flow. Generally, the 3D device structure is the input to TCAD, rather than the output. In addition, due to the large amount of data and computational effort required for physics-based simulation processes, TCAD simulations are actually limited to very small areas on the chip, usually only containing a single transistor. In the state-of-the-art semiconductor manufacturing technology, most integration challenges involve the interaction between processes that may be widely separated in the integration process flow and multiple different devices and circuits (transistors, resistors, capacitors, memories, etc.) including a complete technology suite. Structural failures caused by systematic and random effects are usually the limiting factors for new process technology nodes in terms of time to market. Therefore, a modeling platform and method different from mechanical CAD or TCAD are needed to cover a larger scope of concern and model the entire integration process flow in a structure-predictive manner.
[0005] The virtual manufacturing environment for semiconductor device structures provides such a platform that performs semiconductor process development at a lower cost and higher speed compared to the cost and speed achievable by conventional trial-and-error physical experiments. Compared with conventional CAD and TCAD environments, the virtual manufacturing environment can virtually model the integration process flow and predict the complete 3D structures of all devices and circuits including the entire technology suite. Virtual manufacturing can be described in its simplest form as combining the description of the integration process sequence with the subject design in the form of 2D design data (mask or layout) and generating a three-dimensional structure model that predicts the results expected from a real / physical manufacturing run. The 3D structure model includes the geometrically accurate 3D shapes of multiple layers of materials, implants, diffusion, etc., which include the chip or a part of the chip. Virtual manufacturing is mainly done in geometric form, but the geometric shapes involved are guided by the physics of the manufacturing process. By modeling at the abstract structural level (rather than based on physics simulation), the construction of the structure model can be significantly accelerated, enabling full technology modeling within the area scope of the circuit level. Therefore, the use of the virtual manufacturing environment provides rapid verification of process assumptions and visualization of the complex interrelationships between the integration process sequence and 2D design data. Summary of the Invention
[0006] Embodiments of the present invention provide a virtual manufacturing environment for semiconductor device manufacturing, which includes an analysis module for identifying critical parameters and for performing process model calibration and variability analysis. More specifically, for critical parameter identification, the analysis module identifies the process steps and / or parameters that have the greatest impact on the results of the manufacturing process. In process model calibration, the analysis module adjusts process parameters to match a 3D model generated in the virtual manufacturing environment with measurements from a physical fab (such as transmission electron microscopy (TEM) data or process targets). For variability analysis, the analysis module helps the user analyze and understand the variability of metrology data obtained from a set of virtual 3D models generated in the virtual manufacturing environment.
[0007] In one embodiment, a non-transitory computer-readable medium stores computer-executable instructions for critical parameter identification in a virtual semiconductor manufacturing environment. When executed, the instructions cause at least one computing device to receive 2D design data and a selection of a process sequence including multiple processes for a semiconductor device structure to be virtually manufactured in a virtual manufacturing environment to be generated by the computing device. When executed, the instructions cause the computing device to perform a virtual manufacturing run for the semiconductor device structure based on a design of experiments (DOE) using the 2D design data and the process sequence. Multiple virtual manufacturing runs build multiple 3D models. When executed, the instructions further cause at least one computing device to receive user identification of one or more targets for the semiconductor device structure and to execute an analysis module in the virtual manufacturing environment to identify one or more outliers in the measurement data of one or more targets in the 3D models generated by the virtual manufacturing run. When executed, the instructions receive a user selection for one or more targets in the 3D models to add or remove one or more of the identified outliers from the measurement data, and receive the selection via a user interface provided in the virtual manufacturing environment. When executed, the instructions additionally, after adding or removing the selected outliers from the measurement data, perform a regression analysis on the measurement data of the one or more targets using the analysis module, and based on the results of the regression analysis, identify one or more critical parameters using the analysis module. The identification of the one or more identified critical parameters is displayed or exported.
[0008] In another embodiment, a method for identifying critical parameters in a virtual semiconductor manufacturing environment includes: for a semiconductor device structure to be virtually manufactured in a virtual manufacturing environment generated by a computing device, receiving 2D design data and a selection of a process sequence including a plurality of processes; the method further performing a virtual manufacturing run for the semiconductor device structure using the computing device based on a design of experiments (DOE) using the 2D design data and the process sequence. The virtual manufacturing run constructs a plurality of 3D models. The method further receives a user identification of one or more targets of the semiconductor device structure, executes an analysis module in the virtual manufacturing environment to identify one or more outliers in the measurement data of one or more targets in the 3D models generated from the virtual manufacturing run. The method also receives a user selection to add or remove one or more of the identified outliers from the measurement data of one or more targets in the 3D models. The selection is received via a user interface provided in the virtual manufacturing environment. Additionally, after adding or removing the selected outliers from the measurement data, the method performs a regression analysis on the measurement data of the one or more targets using the analysis module, and based on the results of the regression analysis, uses the analysis module to identify one or more critical parameters. The identification of the one or more identified critical parameters is displayed or exported.
[0009] In one embodiment, a virtual manufacturing system includes a computing device equipped with a processor and configured to generate a virtual manufacturing environment including an analysis module. For a semiconductor device structure to be virtually manufactured, the virtual manufacturing environment receives 2D design data and a selection of a process sequence that includes a plurality of processes and performs a virtual manufacturing run for the semiconductor device structure based on a design of experiments (DOE) using the 2D design data and the process sequence. The virtual manufacturing run establishes a plurality of 3D models. The virtual manufacturing environment receives a user identification of one or more targets of the semiconductor device structure, executes an analysis module in the virtual manufacturing environment to identify one or more outliers in the measurement data of one or more targets in the 3D models generated by the virtual manufacturing run, and receives a user selection for one or more targets in the 3D models to add or remove one or more of the identified outliers from the measurement data, and receives the selection via a user interface provided in the virtual manufacturing environment. After adding or removing the selected outliers from the measurement data, the virtual manufacturing environment performs a regression analysis on the measurement data of the one or more targets using the analysis module, and based on the results of the regression analysis, uses the analysis module to identify one or more critical parameters, and displays or exports the identification of the one or more identified critical parameters. The virtual manufacturing system further includes a display surface in communication with the computing device. The display surface is configured to display the 3D structural model in a 3D view. BRIEF DESCRIPTION OF THE DRAWINGS
[0010] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate one or more embodiments of the invention and, together with the description, serve to explain the invention. In the drawings:
[0011] Figure 1 depicts an exemplary virtual manufacturing environment suitable for implementing embodiments of the invention;
[0012] Figure 2 depicts an exemplary virtual manufacturing console in the virtual manufacturing environment;
[0013] Figure 3 depicts an exemplary layout editor in the virtual manufacturing environment;
[0014] Figure 4 depicts an exemplary process editor in the virtual manufacturing environment;
[0015] Figure 5 depicts an exemplary sequence of steps in the virtual manufacturing environment for generating virtual metrology measurement data;
[0016] Figure 6 depicts an exemplary 3D viewer in the virtual manufacturing environment;
[0017] Figure 7 depicts an exemplary display of virtual metrology measurement data in the virtual manufacturing environment;
[0018] Figure 8 depicts an exemplary sequence of steps for calibrating a process sequence in the virtual manufacturing environment;
[0019] Figure 9 depicts an exemplary sequence of steps for establishing and performing a virtual experiment in the virtual manufacturing environment that generates virtual metrology measurement data for multiple semiconductor device structure models;
[0020] Figure 10 depicts an exemplary parameter browser view for providing process parameters for a virtual experiment in the virtual manufacturing environment;
[0021] Figure 11 depicts an exemplary tabular format display of virtual metrology data generated by a virtual experiment in the virtual manufacturing environment;
[0022] Figure 12 depicts an exemplary graphical display of virtual metrology data generated in a virtual experiment in the virtual manufacturing environment;
[0023] Figure 13 depicts an exemplary analysis flow in an exemplary embodiment;
[0024] Figure 14A - 14Gdepicts an exemplary user interface provided by a virtual manufacturing environment in an exemplary embodiment when identifying critical parameters;
[0025] Figure 15 depicts a series of steps performed in an exemplary embodiment to identify critical parameters;
[0026] Figure 16 depicts a series of steps performed for process model calibration in an exemplary embodiment;
[0027] Figure 17 depicts target selection and expected value input options provided by a process model calibration UI in an exemplary embodiment;
[0028] Figure 18 depicts calibration options provided by a process model calibration UI in an exemplary embodiment;
[0029] Figure 19 depicts parameter range entry options provided by a process model calibration UI in an exemplary embodiment;
[0030] Figure 20 depicts an exemplary display of results provided by a process model calibration UI in an exemplary embodiment;
[0031] Figure 21 depicts a series of steps for performing variability analysis in an exemplary embodiment;
[0032] Figure 22 depicts an exemplary user interface that displays a variability analysis result window in an exemplary embodiment; and
[0033] Figure 23 depicts an exemplary user graphical interface for displaying a comparison of variability analysis results for four separate targets in an exemplary embodiment. Detailed Description
[0034] Embodiments of the present invention provide a virtual manufacturing environment for semiconductor device manufacturing, which includes an analysis module for identifying critical parameters and for performing process model calibration and variability analysis. However, before discussing critical parameter identification, process model calibration, optimization, variability analysis, and other features provided by the embodiments, an exemplary 3D design environment / virtual manufacturing environment in which the analysis module of the present invention can be integrated is first described. Exemplary Virtual Manufacturing Environment
[0035] Figure 1Depicts an exemplary virtual manufacturing environment 1 suitable for implementing embodiments of the present invention. The virtual manufacturing environment 1 includes a computing device 10 accessed by a user 2. The computing device 10 communicates with a display 120. The display 120 can be a display screen that is part of the computing device 10, or can be a separate display device or display surface that communicates with the computing device 10. The computing device 10 can be a PC, laptop computer, tablet computing device, server, or some other type of computing device equipped with one or more processors 11 and capable of supporting the operation of a virtual manufacturing application 70, a 3D modeling engine 75, and an analysis module 79 (described further below). The processor can have one or more cores. The computing device 10 can also include volatile and non-volatile memory, such as but not limited to random access memory (RAM) 12, read-only memory (ROM) 13, and a hard disk drive 14. The computing device 10 can also be equipped with a network interface 15 to enable communication with other computing devices. It should be understood that the computing device 10, rather than an isolated computing device, can also be implemented as a computing system having multiple computing devices working in parallel or other combinations.
[0036] The computing device 10 can store and execute a virtual manufacturing application 70 that includes a 3D modeling engine 75. The 3D modeling engine 75 can include one or more algorithms for virtual manufacturing semiconductor device structures, such as algorithm 1 (76), algorithm 2 (77), and algorithm 3 (78). The 3D modeling engine 75 can accept input data 20 to perform a virtual manufacturing "run" that generates semiconductor device structure model data 90. The virtual manufacturing application 70 and the 3D modeling engine 75 can generate multiple user interfaces and views for creating and displaying the results of the virtual manufacturing run. For example, the virtual manufacturing application 70 and the 3D modeling engine 75 can display a layout editor 121, a process editor 122, and a virtual manufacturing console 123 for creating a virtual manufacturing run. The virtual manufacturing application 70 and the 3D modeling engine 75 can also display tabular and graphical metrology result views 124 and 3D views 125 for respectively displaying the results of the virtual manufacturing run and the 3D structure model generated by the 3D modeling engine 75 during the virtual manufacturing of a semiconductor device structure. The virtual manufacturing application 70 can also include an analysis module 79 for performing an analysis of the 3D model, as discussed further below.
[0037] The input data 20 includes 2D design data 30 and a process sequence 40. The process sequence 40 can consist of multiple process steps 43, 44, 47, 48, and 49. As further described herein, the process sequence 40 can also include one or more virtual metrology measurement process steps 45. The process sequence 40 can further include one or more subsequences that include one or more process steps or virtual metrology measurement process steps. The 2D design data 30 includes one or more layers, such as layer 1 (32), layer 2 (34), and layer 3 (36), typically provided in an industry-standard layout format such as GDS II (Graphic Design System version 2) or OASIS (Open Artwork System Interchange Standard).
[0038] The input data 20 can also include a material database 60, which includes records of material types such as material type 1 (62) and material type 2 (64) and specific materials for each material type. Many of the process steps in the process sequence can refer to one or more materials in the material database. Each material has a name and some attributes, such as a rendering color. The material database can be stored in a separate data structure. The material database may have a hierarchy where materials can be grouped by type and subtype. The individual steps in the process sequence can involve either individual materials or parent material types. The hierarchy in the material database allows for easier modification of the process sequence that references the material database. For example, in the virtual fabrication of a semiconductor device structure, multiple types of oxide materials can be added to the structure model during the process sequence. After adding a specific oxide, subsequent steps may modify that material. If there is no hierarchy in the material database and a step to add a new type of oxide material is inserted into an existing process sequence, then all subsequent steps that affect the oxide material may also have to be modified to include the new type of oxide material. For a material database that supports a hierarchy, steps that operate on a particular class of materials, such as oxides, can refer only to the parent type rather than a list of materials of the same type. Then, if a step to add a new type of oxide material is inserted into the process sequence, subsequent steps that only refer to the oxide parent type do not need to be modified. Thus, hierarchical materials make the process sequence more resilient to modification. A further beneficial effect of hierarchical materials is that stock process steps and sequences that only refer to parent material types can be created and reused.
[0039] The 3D modeling engine 75 uses the input data 20 to perform a sequence of operations / steps specified by the process sequence 40. As further explained below, the process sequence 40 may include one or more virtual metrology steps 45, 49, which indicate points in the process sequence during a virtual manufacturing run where material measurements should be made on the structural components. The measurements may be made using locator shapes of layers previously added to the 2D design data 30. Alternatively, the measurement locations may be specified by alternative means, such as (x, y) coordinates in the 2D design data, or some other means of specifying locations in the 2D design data 30, rather than by using locator shapes. Execution of the process sequence 40 during the virtual manufacturing run produces virtual metrology data 80 and 3D structural model data 90. The 3D structural model data 90 may be used to generate a 3D view of the structural model of the semiconductor device structure that can be displayed in the 3D viewer 125. The virtual metrology data 80 may be processed and presented to the user 2 in tabular and graphical metrology result views 124.
[0040] Since a large number of structural dimensions are critical to the success of integration technologies such as semiconductor devices, it is crucial to find the relationships between the many interrelated process steps used to fabricate the device structure and the structures created. Since the structural modifications resulting from a particular step in the process sequence may be affected by the previous and subsequent steps in the sequence, a particular step may affect the structural dimensions in a non-obvious way. The virtual manufacturing environment enables the automatic extraction of structural measurements from the device being created. The automatic extraction of measurements is accomplished by specifying virtual metrology measurement steps in the process sequence at a point in the process where the measurement is critical. The locator shape for such virtual metrology measurements may be added to a layer in the design data and specified by the virtual metrology measurement step. The output data from such virtual metrology measurements can be used to provide a quantitative comparison with other modeling results or physical metrology measurements. This virtual metrology measurement capability is provided during the process sequence in order to extract critical physical dimensions at the correct points in the integrated process flow.
[0041] The ability to provide virtual metrology measurement data at specified locations within a device structure provides significant improvements over conventional physical fabrication measurement techniques. Typically, in-fab measurements are performed on specific characterization structures fabricated at dicing lines or at dicing cuts adjacent to product die squares. In most cases, these characterization structures need to be designed to accommodate limitations of the measurement technique, such as spot size. As a result, the characterization structures do not exactly represent the actual structures on the product die square. Due to these differences, users of in-fab measurements typically face the challenge of inferring results of the product structure from measurements on the characterization structures. In a virtual fabrication environment, measurement results can be added to any design layout at specified points in the process sequence, providing a deeper understanding of the impact of interrelated process steps on the virtual structure model being built. Thus, the in-fab challenges of measuring characterization structures and inferring results of the product structure are eliminated.
[0042] Figure 2 An exemplary virtual fabrication console 123 for establishing a virtual fabrication run in a virtual fabrication environment is depicted. The virtual fabrication console 123 allows a user to specify a process sequence 202 and a layout (2D design data) 204 of a semiconductor device structure being virtually fabricated. However, it should be understood that the virtual fabrication console can also be a text-based script console that provides the user with a means of entering script commands or establishing a set of structural models corresponding to a range of parameter values for a particular step in the process sequence, where the script commands specify the required inputs and initiate the construction of the structural models. The latter case is considered a virtual experiment (discussed further below).
[0043] Figure 3 An exemplary layout editor in a virtual fabrication environment is depicted. The layout editor 121 displays the 2D design layout specified by the user within the virtual fabrication console 123. In the layout editor, colors can be used to depict different layers in the design data. Regions enclosed by shapes or polygons on each layer represent areas on the wafer where the photoresist coating can be exposed to light or protected from exposure during a lithography step in the integrated process flow. Shapes on one or more layers can be combined (Boolean operations) to form masks used in the lithography step. The layout editor 121 provides means for inserting, deleting, and modifying polygons on any layer and for inserting, deleting, or modifying layers within the 2D design data. Layers can be inserted solely for the purpose of containing shapes or polygons indicating virtual metrology measurement locations. Rectangular shapes 302, 304, 306 have been added to an inserted layer (indicated by a different color) and mark the locations of virtual metrology measurements. As described above, other methods of specifying the locations of virtual metrology measurements can also be employed in a virtual fabrication environment in addition to using locator shapes. The design data is used in conjunction with process data and a material database to construct a 3D structural model.
[0044] Layers inserted in the design data displayed in the layout editor 121 may include inserted locator shapes. For example, the locator shape may be a rectangle, and its long side indicates the measurement direction in the 3D structural model. For example, in Figure 3 , the first locator shape 302 may mark the double-patterning mandrel for virtual metrology measurement, the second locator shape 304 may mark the gate stack for virtual metrology measurement, and the third locator shape 306 may mark the transistor source or drain contact for virtual metrology measurement.
[0045] Figure 4 An exemplary process editor 122 in a virtual manufacturing environment is depicted. The user defines a process sequence in the process editor. The process sequence is an ordered list of process steps for virtual manufacturing of a structure selected by the user. The process editor may be a text editor such that each line or group of lines corresponds to a process step, or may be a dedicated graphical user interface as Figure 4 shown. The process sequence may be hierarchical, meaning that process steps may be grouped into subsequences and sub-subsequences of subsequences, etc. Typically, each step in the process sequence corresponds to an actual step in manufacturing. For example, a subsequence for a reactive ion etching operation may include steps of spin-coating photoresist, patterning the photoresist, and performing the etching operation. The user specifies parameters for each step or sub-step appropriate for the type of operation. Some parameters refer to materials in a material database and layers in 2D design data. For example, the parameters for a deposition operation primitive are the material to be deposited, the nominal thickness of the deposit, and the anisotropy or growth ratio in the lateral direction versus the vertical direction. This deposition operation primitive can be used to model an actual process such as chemical vapor deposition (CVD). Similarly, the parameters for an etching operation primitive are the mask name (from the design data), the list of materials affected by the operation, and the anisotropy.
[0046] There may be hundreds of steps in the process sequence, and the process sequence may contain subsequences. For example, as Figure 4 shown, the process sequence 410 may include a subsequence 412 consisting of multiple process steps such as the selected step 413. The process steps may be selected from a library of available process steps 402. For the selected step 413, the process editor 122 enables the user to specify all required parameters 420. For example, the user may be able to select a material from a list of materials in the material database 404 and specify the process parameters 406 for the use of the material in the process step 413.
[0047] One or more steps in the process sequence can be virtual metrology steps inserted by the user. For example, inserting step 4.17 "Measure CD" (414), where CD represents critical dimension, in process sequence 412 will result in virtual metrology measurements being made at that point in the virtual manufacturing run using one or more locator shapes that have previously been inserted onto one or more layers of the 2D design data. Inserting virtual measurement steps directly into the manufacturing sequence allows virtual metrology measurements to be made at key points of interest during the manufacturing process. Since many steps in virtual manufacturing interact in the creation of the final structure, the ability to determine the geometric properties of the structure, such as cross-sectional dimensions and surface area at different points in the integrated process flow, is of interest to both process developers and structure designers.
[0048] Figure 5 Depicts an exemplary sequence of steps in a virtual manufacturing environment for generating virtual metrology measurement data. The sequence begins with the user selecting the semiconductor device structure to be manufactured (step 502). The user can select from multiple sets of available design data files and then select a rectangular region within the design data. For example, the user can select a FinFET or a passive resistor or a memory cell. After determining / selecting the structure to be manufactured, the user enters the process sequence in process editor 122 (step 504a) and selects the 2D design data expected to yield the desired structure (step 504b). Optionally, the user can create or modify the design data in layout editor 121. In the process editor, the user can insert one or more virtual metrology steps that specify the points at which the user wishes to make virtual metrology measurements at specified locations in the evolving structure during virtual manufacturing (step 506a). The user can insert locator shapes into the 2D design data displayed in layout editor 121, which will be used by the virtual measurement steps to perform their measurements (step 506b). The importance of the locator shape depends on the type of measurement required. For example, the long axis of a rectangle can indicate the direction and extent of a length measurement taken across the cross-section of the structure, or the rectangle itself can specify the area of the contact region between two materials to be measured. It should be recognized that the above steps in the process editor can be performed before the steps in the layout editor, or vice versa in the virtual manufacturing environment.
[0049] After one or more locator shapes have been added to one or more layers of the 2D design data (step 506b) and a virtual metrology step has been added to the process sequence (506a), the user establishes a virtual manufacturing run using the virtual manufacturing console 123 (step (508)). During the virtual manufacturing run, the process steps in the process sequence 40 are executed in the order specified by the 3D modeling engine 75. When virtual manufacturing reaches the virtual metrology step, a virtual "measurement" of the specified components in the structure being manufactured is performed. The calculations done by the modeling engine depend on the nature of the measurement required and are generally consistent with similar physical measurement techniques in manufacturing. For example, critical dimension scanning electron microscopy (CD-SEM) measurements in manufacturing locate sidewalls by detecting rapid changes in the orientation of the top surface of the structure. Similarly, in a virtual metrology operation, the 3D modeling engine extracts the top surface of the structure in the area specified by the locator rectangle and interrogates the surface along its intersection with the plane defined by the intersection of the horizontal and vertical axes of the rectangle to obtain ramp changes exceeding a threshold (e.g., 5 degrees). Large changes in the ramp define the faces of a feature, such as the bottom, top, and sides of a ridge in the structure. After establishing the positions of the bottom, top, and sides of the feature, the distance between the sides of the feature is calculated at the vertical position (bottom, middle, or top) specified in the metrology step. The 3D modeling engine generates one or more types of output when it constructs the structure model. One type of output is the structure model itself and can include its state at one or more points in the process sequence. The 3D model can be displayed to the user in the 3D viewer 125 (step 512a). The 3D modeling engine also outputs virtual metrology data (step 510). The virtual metrology data 80 can be exported to an automated data analysis tool for further processing or can be displayed to the user via a user interface such as a tabular and graphical metrology results view 124 or other views (step 512b). If the structure is satisfactory when viewed or analyzed (step 513), the virtual manufacturing run ends (step 514). If the structure created by the 3D modeling engine is not satisfactory, the user modifies the process sequence and / or the 2D design data (step 516) and establishes a new virtual manufacturing run (step 508).
[0050] Figure 6 An exemplary 3D viewer 125 in a virtual manufacturing environment is depicted. The 3D viewer 75 can include a 3D view canvas 602 for displaying the 3D model generated by the 3D modeling engine 75. The 3D viewer 75 can display saved states 604 in the process sequence and allow selection of a specific state 606 and appearance in the 3D view canvas. The 3D viewer provides functions such as zoom in / out, rotation, translation, cross-section, etc. Optionally, the user can activate a cross-sectional view in the 3D view canvas 602 and use the miniature top view 608 to manipulate the position of the cross-section.
[0051] Another type of output from the 3D modeling engine 75 is data generated by virtual metrology steps included in the process sequence. Figure 7 Depicts an exemplary display of virtual metrology measurement data 80 resulting from multiple virtual metrology measurement steps in a virtual manufacturing environment. The virtual metrology measurement result data 80 can be displayed in tabular or graphical form including 2D X-Y graphs and multi-dimensional graphs.
[0052] The techniques employed in the exemplary virtual manufacturing environment are geometry-based. Thus, it is advisable to utilize the actual experimental results from physical manufacturing to calibrate the process step input parameters to make the virtual experiments more predictive. Such calibration of the process steps can improve the modeling accuracy of all structures including the complete technology suite. Calibration can be performed on individual process steps of measurement, metrology, or other physical characterization methods that characterize the structure or product structure. Calibration can be carried out by comparing the modeling results including virtual metrology measurement data with the corresponding measurements or metrology performed in physical manufacturing (on the corresponding characterization or product structure), and subsequently adjusting the modeling parameters such that the resulting virtual manufactured structure better matches the physical manufactured structure. By appropriately calibrating the modeling process parameters, the virtual manufacturing environment becomes better at predicting the structures produced by physical manufacturing throughout the entire allowed design space.
[0053] Figure 8Depicts an exemplary sequence of steps for calibrating a process sequence in a virtual manufacturing environment. The sequence includes steps taken in the virtual manufacturing environment and the corresponding physical manufacturing environment. In the virtual manufacturing environment, the user selects the process sequence to be calibrated (for the structure to be virtually manufactured) and identifies the relevant process parameters (step 802a). In physical manufacturing, the user identifies, during the manufacturing run, a set of characterizations or product structures for measurement (step 802b). Returning to the virtual manufacturing environment, the user enters the process sequence in a process editor (step 804a), and 2D design data (layout) defining the characterization structure is selected from the available 2D design data or created in a layout editor 121 for this purpose (step 804b). The same design data is used for virtual manufacturing and actual characterization. As described above, the user inserts one or more virtual metrology steps in the process sequence (step 806a) and adds measurement locator shapes to the 2D design data (step 806b). The user sets up a virtual manufacturing run in a virtual manufacturing console (step 808), and a 3D modeling engine creates a 3D model and generates and outputs virtual metrology data (step 812a). In parallel with or offset from the virtual manufacturing run, the physical manufacturing environment creates the characterization or product structures (step 810), and in-line images and measurements are taken on these structures (step 812b). The user can then compare the 3D view of the virtual model generated in the 3D viewer 75 with the in-line images of the physical device structure (step 814a). Additionally, the set of characterization structure measurement results can be compared with the virtual metrology measurement results that are the result of the virtual metrology steps inserted into the process sequence (step 814b). In most cases, this comparison will be made by the user, but it can be made by an automated data analysis tool based on predefined or interactive request criteria. If there is a satisfactory agreement between the views and images and the virtual and actual measurements (step 815), the process sequence is considered calibrated (step 816). However, if there is no satisfactory agreement (step 815), the user modifies the values of the process parameters in the process editor (step 818) and sets up a new virtual manufacturing run in the virtual manufacturing console (step 808). Then the sequence iterates until a satisfactory agreement is reached and calibration is achieved.
[0054] It should be understood that there can be multiple different parameters that can be calibrated within this sequence. Although the above description notes the use of inserting virtual measurement steps in the process sequence and the concomitant use of one or more 2D locator shapes for virtual metrology measurements, other techniques can be employed in the virtual manufacturing environment. For example, virtual measurements can be taken on the virtual device structure after manufacturing is complete and then compared with the physical measurements taken on the characterization structures during / after the physical manufacturing run.
[0055] While building a single structural model may be valuable, there is higher value in virtual manufacturing where large numbers of models are built. The virtual manufacturing environment enables a user to create and run virtual experiments. In a virtual experiment, a range of process parameter values can be explored. The virtual experiment can be set up by specifying a set of parameter values to be applied to a single process (rather than a single value for each parameter) across the entire process sequence. A single process sequence or multiple process sequences can be specified in this way. The 3D modeling engine 75 executed in virtual experiment mode then builds multiple models spanning the set of process parameters, always utilizing the virtual metrology measurement operations described above to extract metrology measurement data for each variation. This capability can be used to mimic two basic types of experiments that are typically performed in a physical manufacturing environment. First, manufacturing processes naturally vary in a random (non-deterministic) manner. As explained herein, the basic deterministic approach for each virtual manufacturing run can still predict non-deterministic results by performing multiple runs. The virtual experiment mode allows the virtual manufacturing environment to model the entire statistical variation range of each process parameter as well as the variation combinations of many / all process parameters. Second, experiments run in physical manufacturing can specify a set of parameters that are intentionally varied when manufacturing different wafers. The virtual experiment mode enables the virtual manufacturing environment to also mimic this type of experiment by performing multiple virtual manufacturing runs for specific variations of the parameter set.
[0056] Each process in a manufacturing sequence has its own inherent variations. It is very difficult to understand the impact of all aggregated process variations in a complex process, especially when considering the statistical probability of variation combinations. Once a virtual experiment is created, the process sequence is essentially described by the combination of numerical process parameters included in the process description. Each of these parameters can be characterized by its total variation (expressed as a standard deviation or σ value) and thus by multiple points on a Gaussian distribution or other appropriate probability distribution. If a virtual experiment is designed and executed to examine all combinations of process variations (multiple points on each Gaussian curve, e.g., ±3σ, ±2σ, ±1σ, and the nominal value for each parameter), then the graphical and numerical outputs resulting from the virtual measurement steps in the sequence cover the total variation space of the technology. Although each case in this experimental study is deterministically modeled by the virtual manufacturing system, the aggregation of the virtual metrology results contains a statistical distribution. Simple statistical analysis, such as the root sum square (RSS) calculation of statistically uncorrelated parameters, can be used to attribute a total variation metric to each experimental case. Then, all (numerical and graphical) virtual metrology outputs can be analyzed relative to the total variation metric.
[0057] In a typical trial-and-error experiment in physical manufacturing, the structure measurements produced by the nominal process are taken as the target, and process variations are accounted for by specifying an overly (conservatively) large margin for the total variation (total structure margin) of the structure measurements that must be predicted in subsequent processes. In contrast, virtual experiments in a virtual manufacturing environment can provide a quantitative prediction of the total variation envelope of the structure measurements at any point in the integrated process flow. The total variation envelope of the structure measurements rather than the nominal value may then become the development target. This approach can ensure an acceptable overall structure margin throughout the integrated process flow without sacrificing critical structure design objectives. An approach targeting total variation may result in a nominal intermediate or final structure that is less (or less aesthetically pleasing) than the nominal structure produced by targeting the nominal process. However, this sub-optimal nominal process is not important because the envelope of the total process variation has been taken into account and is more important in determining the robustness and yield of the integrated process flow. This approach represents a paradigm shift in semiconductor technology development, from emphasizing the nominal process to emphasizing the envelope of the overall process variation.
[0058] Figure 9 Depicts an exemplary sequence of steps in a virtual manufacturing environment for establishing and performing a virtual experiment that generates virtual metrology measurement data for multiple semiconductor device structure models. The sequence begins with the user selecting a process sequence (which may be pre-calibrated to make the results more structurally predictive (step 902a)) and identifying / creating 2D design data (step 902b). The user can select process parameter variations to analyze (step 904a) and / or design parameter variations for analysis (step 904b). The user inserts one or more virtual metrology steps into the process sequence as described above (step 906a) and adds measurement locator shapes to the 2D design data (step 906b). The user can establish the virtual experiment (step 908) with the aid of a dedicated user interface, the automated parameter browser 126. An exemplary automated parameter browser is shown in Figure 10 and can display and allow the user to change a list of process parameters 1002, 1004, 1006 to be varied and the corresponding different parameter values 1008 with which to build 3D models. The parameter ranges for the virtual experiment can be specified in tabular form. The 3D modeling engine 75 builds the 3D models and outputs the virtual metrology measurement data for viewing (step 910). The virtual experiment mode provides output data processing from all virtual measurement / metrology operations. The output data from the virtual metrology measurements can be parsed and assembled into a useful form (step 912).
[0059] Through this parsing and assembly, subsequent quantitative and statistical analyses can be performed. A separate output data collector module 110 can be used to collect 3D model data and virtual metrology measurement results from a sequence of virtual manufacturing runs including the virtual experiment and present them in graphical and tabular forms.Figure 11 Depicts an exemplary tabular format display of virtual metrology data generated by a virtual experiment in a virtual manufacturing environment. In the tabular format display, a list of virtual metrology data and virtual manufacturing runs 1104 collected during the virtual experiment 1102 can be shown.
[0060] Figure 12 Depicts an exemplary 2D X-Y graphical curve display of virtual metrology data generated by a virtual experiment in a virtual manufacturing environment. In Figure 10 the example shown, the total change in the shallow trench isolation (STI) step height due to changing 3 parameters in a prior step of the process sequence is shown. Each diamond 1202 represents a virtual manufacturing run. The change envelope 1204 is also shown as the conclusion 1206 that the downstream processing module must support a total change in the STI step height of approximately 10.5 nm to achieve robustness through 6σ of incoming variations. The virtual experiment results can also be shown in a multi-dimensional graphical format.
[0061] Once the results of the virtual experiment are assembled, the user can view the 3D model that has been generated in the 3D viewer (step 914a) and view the virtual metrology measurement data and metrology presented for each virtual manufacturing run (step 914b). Depending on the purpose of the virtual experiment, the user can analyze the output from the 3D modeling engine in order to develop a process sequence to achieve a desired nominal structure model, for further calibration of the process step input parameters, or for optimizing the process sequence to achieve a desired process window.
[0062] The computational intensity of the task of the 3D modeling engine 75 to build multiple structural models for a range of parameter values, including virtual experiments, is very high, and thus it may take a long time (days or weeks) if executed on a single computing device. To provide the expected value of virtual manufacturing, the model building for virtual experiments must be many times faster than physical experiments. Achieving this goal with modern computers requires leveraging any and all parallel opportunities. The 3D modeling engine 75 uses multiple cores and / or processors to execute the individual modeling steps. Additionally, the structural models for different parameter values in a set are completely independent, and thus can be built in parallel using multiple cores, multiple processors, or multiple systems.
[0063] The 3D modeling engine 75 in a virtual manufacturing environment can represent a potential structural model in the form of voxels. A voxel is essentially a 3D pixel. Each voxel is a cube of the same size and can contain one or more materials, or no material. Those skilled in the art will recognize that the 3D modeling engine 75 can also represent the structural model in other formats. For example, the 3D modeling engine can use a conventional NURBS-based solid modeling kernel, such as those used in 3D mechanical CAD tools, although modeling operations based on digital voxel representations are more robust than the corresponding operations in conventional solid modeling kernels. Such solid modeling kernels typically rely on a large number of heuristic rules to handle various geometric situations, and when the heuristic rules cannot correctly predict the situation, the modeling operation fails. Aspects of semiconductor structure modeling that pose problems for NURBS-based solid modeling kernels include very thin layers produced by deposition processes and the propagation of etch fronts that result in merged surfaces and / or fragmented geometries.
[0064] The virtual manufacturing environment can implement the performance of multi-etch processes in a process sequence that allows the 3D modeling engine 75 to model a wide range of process- and material-specific etch behaviors. Patterning operations in the process flow of highly scaled semiconductor devices often use plasma etching to perform. Plasma etching is known by many different names: dry etching, reactive ion etching (RIE), inductively coupled plasma (ICP) etching, etc. A wide variety of operating conditions and chemistries allow process engineers to fine-tune the plasma etching behavior to selectively achieve various etching physics in a variety of different types of materials. This behavioral flexibility is key to obtaining the desired 3D structure when patterning through multiple layers of materials. Several different types of physical phenomena are typically involved, including but not limited to: chemical etching, sputtering, deposition or redeposition of polymeric materials, electrostatic charging, electrostatic focusing, and shadowing. This diverse physical spectrum results in a considerable range of etching behaviors and thus also in structural shapes.
[0065] Directly simulating the physical phenomena involved in plasma etching with sufficient accuracy is very difficult and slow. The multi-etch process steps simulate plasma etching by using a reduced set of behavioral parameters specific to the type of etch and the material being etched, thus avoiding the difficulties of physics-based simulation. This allows the capture of a wide range of physical etching behaviors without the need to directly simulate the physical phenomena of the etching process. For example, three main types of etching behaviors can be simulated: isotropic, tapered, and sputtering. A fourth etching behavior, shadowing, can also be selectively simulated.
[0066] The basic (isotropic) behavior is physically caused by chemical etching and results in the material being removed at a similar rate from points on the etchable surface in all directions, regardless of the local orientation of the etchable surface. The basic behavior can be modeled with a single input parameter, the "lateral ratio", which controls the ratio between the lateral and vertical etch rates. For example, a lateral ratio of 1 (1.0) indicates that the etch rate is uniform in all directions. A lateral ratio value less than 1 indicates that the etch rate in the lateral direction (on vertical surfaces) is slower than the etch rate in the perpendicular direction (on horizontal surfaces).
[0067] The tapered behavior is physically caused by a combination of directional etching behavior and polymer deposition. The polymer deposition occurs as a side effect of the directional etching process. During a directional etching process where etching on horizontal surfaces is much faster than on vertical surfaces, the polymer may accumulate on near-vertical surfaces. This competition between etching and deposition results in a tapered sidewall profile. The tapered behavior can be modeled with a single input parameter, the "cone angle". The cone angle describes the critical angle at which the deposition and etch rate balance occurs. An optional second parameter, the lateral ratio, has the same meaning as defined in the basic behavior above.
[0068] The sputtering behavior refers to the direct physical removal of material by high-energy ion bombardment and results in the preferential removal of protruding edges (convex edges) and, in some cases, corners. Sputtering can be modeled with two parameters: the maximum sputtering yield angle and the sputtering rate ratio to the vertical etch rate.
[0069] Shadowing refers to the reduction of the directional ion flux caused by local elevation changes, effectively reducing the etch rate of certain structures. This effect can be important in some cases, resulting in different etch rates for the entire cell. Shadowing can be modeled using a single parameter to describe the angle of incidence of the high-energy ions relative to the vertical axis.
[0070] To model multi-material, multi-physics etching, the above input parameters must form a suitable numerical modeling algorithm in a virtual manufacturing environment. The numerical simulation algorithms include single-material and multi-material velocity functions and surface evolution techniques. The single-material velocity function defines the etch rate as a function of the local surface orientation (i.e., the surface normal direction) and is determined empirically to produce the desired etch behavior. Note also that the single-material velocity function can incorporate multiple types of etch behavior; for example, tapered and sputter etching both include parameters related to the basic (isotropic) etching. The multi-material velocity function is a combination of single-material velocity functions and calculates the local etch rate based on the local surface orientation and local material type. The etch ratio parameter defines the relative etch rate of the etchable material and is a multiplication factor for the single-material velocity.
[0071] Given a defined velocity function, a suitable surface evolution technique can be used to locate and evolve the position of a three-dimensional etchable surface. The etchable surface is advected or moved in its local normal direction according to the local scalar velocity determined by evaluating the velocity function. The scalar velocity must be computed at points of interest on the etchable surface and must be recomputed periodically as the geometry of the etchable surface evolves.
[0072] Many different types of surface evolution techniques can be used by numerical algorithms to simulate multi-etch processes in a virtual manufacturing environment. Any suitable numerical spatial discretization can be used to represent the moving surface. Explicit interface tracking methods can be used: examples include the string method, the point-line method (2D), and polygonal surfaces (3D). Alternative implicit surface representations such as distance fields, fluids, or volumes of voxels can also be used. Any suitable time-dependent numerical technique can be used to advance the moving surface in time.
[0073] Selective epitaxy processes can be included in the process sequence for virtual manufacturing of semiconductor device structures. Selective epitaxy processes effectively model the epitaxial growth of a layer of crystalline material on top of the crystalline substrate surface of a semiconductor device structure. Selective epitaxy is widely used in contemporary semiconductor process flows, typically to apply mechanical stress on transistor channels to improve performance. A key feature of epitaxial growth is its dependence on crystal orientation. Semiconductor devices are typically fabricated on single-crystalline silicon wafers; that is, the atoms of the silicon material are arranged in a repeating lattice structure that is continuous over most of the wafer. The silicon crystal structure is anisotropic (i.e., asymmetric in all directions), and the silicon surface is more stable in several specific crystal directions. These directions are defined by the principal families of crystal planes, determined using their Miller indices as <100>, <110>, and <111>, and have the strongest influence on growth characteristics. By varying the pressure, temperature, and chemical precursors in the epitaxy process, engineers can control the relative growth rates of the three principal crystal planes. The growth rates on secondary crystal planes (e.g., <211>, <311>, <411>) also vary, but tend to have no effect on determining the final shape of the epitaxial growth structure.
[0074] A virtual manufacturing environment can use a surface evolution algorithm to simulate epitaxial growth. The surface on which epitaxial growth occurs (the growth surface) is advected or moved according to a scalar advection velocity. The growth rate is computed at selected points according to the local surface normal direction and fixed input parameters, and is local in both distance and time, and causes the surface to move in the normal direction. Any suitable numerical spatial discretization can be used to represent the growth surface. Explicit interface tracking methods can be used: examples include the string method, the point-line method (2D), and polygonal surfaces (3D). Alternative implicit surface representations such as distance functions, fluids, or volumes of voxels can also be used. Any suitable time-dependent numerical technique can be used to advance the growth surface in time.
[0075] Selective epitaxial processes in a virtual manufacturing environment utilize the growth rates of three principal families of crystal planes (<100>, <110>, and <111>) as fixed input parameters. These input parameters define the growth rate of a surface aligned with any of their associated crystal planes. Further input parameters can include the growth rate of adjacent amorphous materials. When calculating the epitaxial growth rate, the relationship between the 3D modeling coordinate system and the lattice of the wafer can also be considered. The 3D modeling coordinate system typically uses the same X and Y axes as the 2D design data, while the Z axis is typically perpendicular to the wafer surface. Alternative coordinate systems can also be employed. On an actual wafer, the orientation of the lattice is indicated by a "flat" or a "notch" on the edge of an otherwise circular wafer. The notch can be used as a reference to orient the 2D design data in a desired direction relative to the lattice. Input parameters specifying the notch (or flat) type and direction can define the lattice orientation and the associated crystal plane of the wafer relative to the 2D design data. It should be noted that this relationship can be described as a coordinate transformation between the 3D model coordinate system and the lattice coordinate system.
[0076] By using the growth rates of the principal families of crystal planes and knowing the orientation of the lattice, the epitaxial growth rate can be calculated anywhere on the growth surface. Regions of the growth surface with a normal direction aligned with the principal crystal plane direction are assigned the velocity of that principal crystal plane. For regions of the growth surface not aligned with the principal crystal plane direction, an appropriate velocity must be found by interpolating between adjacent principal crystal plane directions. Additionally, the behavior of epitaxial growth at the boundaries of the crystal material can also be important. Epitaxial growth typically occurs after several previous process steps in which amorphous materials have been deposited and patterned. These amorphous materials can be adjacent to the crystal material and thus in close proximity to the epitaxial growth. Examples of amorphous adjacent materials are silicon dioxide, silicon nitride, or any other material common in semiconductor processing. In some cases, epitaxial growth spreads slowly (overgrows) along the adjacent amorphous material, but in other cases it does not. The overgrowth behavior can be modeled using fixed input parameters that define the group of adjacent materials (overgrowth materials) where overgrowth occurs and the rate at which the growth surface spreads along the overgrowth materials. The overgrowth rate changes the epitaxial growth rate at the surface of the overgrowth materials such that the growth surface moves along the overgrowth materials at the specified rate. Additionally, the rate at which the growth surface moves along the overgrowth materials can depend on the angle between the surface of the overgrowth materials and the growth surface. If the angle between the two surfaces is greater than a threshold angle, the overgrowth rate can be ignored.
[0077] Design rule checking (DRC) or optical rule checking (ORC) can be performed in a virtual manufacturing environment. Specialized software typically performs DRC and ORC on 2D design data as part of the process of preparing 2D design data for conversion into a photolithographic mask. These checks are to identify errors in the layout that may cause the chip to be non-functional or have poor performance. These checks are also performed after adding compensation for optical effects such as optical proximity correction (OPC). Typical design rules (such as those published in a design manual and encoded in a DRC platform) are simple 2D criteria that are intended to prevent problems that are fundamentally 3D in nature. However, as semiconductor process technologies have become increasingly complex, design manuals have grown into thousands of page documents with thousands of 2D design rules to codify and interpret. In many cases, a single 3D failure mechanism / concern can drive hundreds of 2D design rules. The development of these 2D design rules requires making important assumptions about the 3D nature of the integrated process flow and the resulting structures.
[0078] 2D DRC was developed from relatively simple calculations and can lead to overly conservative designs. For example, consider the 2D design rule required to ensure a minimum contact area between a wire on a metal interconnect layer and an underlying via. A via is a vertical conductive connector between two interconnect layers (also known as metal layers), or a vertical connector between an interconnect layer and a device such as a transistor, resistor, or capacitor.
[0079] Many additional 2D DRCs are needed to meet a very simple criterion stated in 3D: the contact area between the metal wire and the via must exceed a specified threshold. The 2D DRC situation becomes more complex when considering that multiple manufacturing variations can affect the contact area, including overexposure or underexposure during the lithography step, misregistration of the mask, planarization of the via layer (by chemical mechanical polishing (CMP)), and sidewall tapering produced by plasma etching. It is not feasible to include all these statistical variables in the simple formula that drives 2D DRC, so the DRC is more stringent than necessary to prevent manufacturing variations. These overly stringent 2D DRCs result in suboptimal designs with wasted areas on the chip.
[0080] Compared to the 2D DRC environment, a virtual manufacturing environment can perform checks directly in 3D, such as minimum line width, minimum spacing between features, and minimum contact area, without making assumptions about the conversion from 2D to 3D. Checks performed directly in 3D are referred to in this article as "3D DRC". One benefit of 3D DRC is that the number of checks required is far less than that required in a 2D environment. Therefore, these checks are more robust and easier to conduct. In addition, using a smaller set of 3D rules, the virtual manufacturing environment can check for a range of statistical variations in process parameters.
[0081] It should be realized that 3D-DRC is different from virtual measurement / metrology operations that can also be performed in a virtual manufacturing environment. Virtual measurement metrology operations mimic the actual measurement and metrology operations in manufacturing, thereby specifying measurement locations and outputting metrics such as distance values or areas. On the other hand, for 3D DRC, geometric standards are specified and the locations and values of the standards are required. That is, the location is the output rather than the input of the 3D DRC operation. For example, a virtual metrology operation can specify the measurement of the oxide film thickness at a specific location indicated by a locator in 2D design data, while the 3D DRC for the minimum layer thickness can request any location in the 3D model where the oxide film thickness is less than a specified threshold. Then the 3D structure model can be searched for locations that meet the specific minimum size criteria. Similarly, 3D DRC may also result in the structure model being searched to see if the maximum size criteria are met. This 3D DRC thus provides some advantages in identifying the causes of unexpected failures, which cannot be achieved by virtual measurement / metrology operations.
[0082] Examples of 3D-DRC include: · Grid isolation: Finding the shortest distance between selected conductors. A conductor can be a blob (a "blob" is a discrete volume region (technically a 3-manifold) within the 3D structure model) composed of one or more conductive materials; the blob can be composed of a single material or multiple materials); · Minimum separation: Finding the shortest distance between any pair among a selected set of blobs; · Minimum line width: Finding the shortest distance passing through any blob among a selected set of blobs; · Minimum layer thickness: Finding the shortest distance passing through any blob among a set of blobs containing a material layer; · Minimum contact area: Finding the minimum contact area between all selected blobs.
[0083] Blobs can be selected based on the constituent materials, conductivity, or other properties. Each 3D DRC check can be extended by specifying a threshold. For example, specifying a threshold for the minimum line width check generates a list of locations where the minimum line width is less than the threshold. Those skilled in the art will recognize that other checks of such properties can be defined. Analysis module
[0084] In one embodiment, the virtual manufacturing environment includes an analysis module. The analysis module is designed to simulate the workflow in use cases encountered by semiconductor process integrators. Exemplary use cases encountered by semiconductor process integrators and solved by the analysis module may include, but are not limited to, critical parameter identification, process model calibration, and variability analysis. In critical parameter identification, the analysis module can find the process steps / parameters that most strongly affect the results (calibration, defect mode, etc.). In process model calibration, process parameters can be adjusted to make the 3D model match the measurements from physical manufacturing, such as but not limited to transmission electron microscopy (TEM) data or process targets. In variability analysis, the analysis module can help the user analyze and understand the variability of metrology data obtained for a set of virtual 3D models, such as by estimating the variability of structural or electrical parameters for specification limit setting.
[0085] The analysis module described herein can generate process variations by applying design of experiments or Monte Carlo simulation to the parameters and settings in a virtual semiconductor manufacturing environment, and then perform automatic statistical analysis, optimization, and visualization for the user. The data to be analyzed can include the settings of input process parameters and (but not limited to) metrology, structural search, DTC inspection, and electrical analysis for evaluating the 3D virtual semiconductor structures generated in the virtual manufacturing environment. The embodiments utilize selections and customizations to solve problems and address issues specific to virtual semiconductor manufacturing, and correct errors that may occur when outputting the resulting data to conventional third-party statistical tools.
[0086] The embodiments also provide a more efficient technique for design of experiments because the specific way the virtual semiconductor manufacturing environment of the present invention constructs 3D models results in not having certain common problems that other design of experiments methods must address. For example, if the platform and parameter settings do not change, the same 3D model will be generated every time in the virtual semiconductor manufacturing environment. Therefore, there is no random component to the 3D model output, and three common tasks in design of experiments, namely randomization, replication, and blocking, do not need to be performed.
[0087] In one embodiment, the analysis module is integrated into the virtual manufacturing environment, resulting in improved and new functions that cannot be obtained through third-party statistical solutions. In one embodiment, the UI and algorithms can be organized by use case, and a step-by-step process UI on the left is followed for each use case. This design may strongly guide the user (who may lack statistical training) to perform the correct analysis steps to avoid errors in the analysis. The analysis module may also include a statistical analysis engine that uses a set of analysis algorithms to correctly analyze each specific use case. The analysis module can address problems that are not correctly addressed by third-party statistical software, such as multicollinearity and outliers (discussed below), and as previously mentioned, avoid using unwanted methods, such as randomization during experimental design. The analysis results can be provided to the user or third-party software in multiple formats.
[0088] Figure 13 An exemplary analysis process in an exemplary embodiment is depicted. The input to the analysis module can include, but is not limited to, selecting the type of analysis that can be organized by use case. (For example, identifying critical parameters, optimization, calibration, variability analysis). Additional exemplary inputs include process parameters of interest (e.g., specified as nominal values and / or ranges) and targets of interest (e.g., metrology values, structure search, DTC check, electrical analysis values). In one embodiment, the input values can be references to 3D model files. The analysis module can perform run list generation to establish the experimental design (DOE) of the experiment (e.g., screening D.O.E., full factorial D.O.E., Monte Carlo simulation), then run list execution and can utilize cluster computing to improve efficiency during execution. The execution output can include outlier detection and statistical analysis results, such as determining parameter importance / rank. The output can also include exploratory graphs (such as bivariate graphs, response surfaces) and indirect optimization. In one embodiment, the results can also be output to a third-party tool for further analysis. Critical Parameter Identification
[0089] An exemplary use case of an embodiment employing the analysis module as described herein is critical parameter identification. In critical parameter identification, the analysis module receives the user's selection of the platform, including the 2D layout and process steps. The purpose of the critical parameter identification use case is to determine which parameters are related to the target and affect the target. These parameters are then ranked to show their relative importance. In one embodiment, the use case has seven steps:
[0090] 1) Select the experimental design;
[0091] 2) Select the parameters to change and input the levels selected by the user into the design;
[0092] 3) Generate the design and run (export if needed);
[0093] 4) Select the metrology target;
[0094] 5) Set regression options;
[0095] 6) Select identified outliers from the DOE result data for addition or deletion; and
[0096] 7) Run the regression and view the results. Determine important / critical parameters.
[0097] In this embodiment, the first step is to select an experimental design (DOE) step, also known as design of experiments. D.O.E. is a method for calculating the number of experiments for a specific combination of parameter settings to obtain more information with less experimental work. The analysis module provides three methods for creating an experimental design to sample the parameter space: full factorial design, deterministic screening design (DSD), and Monte Carlo simulation. Figure 14A Depicts an exemplary UI 1400 provided in a virtual manufacturing environment for selecting the type of experimental design 1402.
[0098] Full factorial design is the most classical experimental design. Create all possible combinations. When the number of parameters is small, approximately from 2 to 7, full factorial design is best used. For each selected parameter setting, the user inputs the number of levels and the values of these levels through the UI. In one embodiment, up to 10 levels can be input for each parameter setting.
[0099] Deterministic screening design (DSD) is a screening design used when the number of parameters is large or the running cost (time) is very high. For the same number of parameters, it produces far fewer runs than full factorial design. The embodiment can implement the DSD enhancement method only for continuous variables. In one embodiment, only three levels are specified for each parameter for DSD.
[0100] Monte Carlo simulation is a D.O.E. option that allows using a normal distribution or a uniform distribution to randomly generate parameter settings. In an embodiment, the UI allows the user to input the mean and standard deviation of the normal distribution parameters, or the minimum and maximum values of the uniform distribution parameters, and generate random values accordingly. In an embodiment, the user can also input the desired number of runs.
[0101] Figure 14B Depicts an exemplary UI 1410 in an embodiment through which the user can specify the levels of each parameter that varies in the design. Figure 14BA screenshot showing the parameters for selecting a full - factorial DOE is presented. The left pane contains a list of parameters in the platform. Each can be selected and added to the right pane. There, the user enters the desired number of levels 1414 and values 1416 for each level. For example, if three parameters are selected and they have 3, 2, and 4 levels respectively, they will result in 3 * 2 * 4 = 24 runs.
[0102] In an embodiment, the D.O.E. created in the previous step is run by the virtual semiconductor manufacturing environment in batch mode, thereby generating 3D models for each run in the DOE. The D.O.E. can also be exported to a csv or other type of file.
[0103] In the fourth step of the critical parameter identification workflow, the user can select metrology targets to obtain measurement results of the 3D models generated by the DOE. Figure 14C An exemplary UI 1420 for making the selection of the metrology target 1422 is depicted.
[0104] To perform critical parameter identification, a regression model is established in the fifth step of the workflow. In Figure 14D , in an exemplary embodiment, the UI1430 enables the user to select 1432 whether to establish only a regression model with main effects (original parameters) or to construct a full quadratic model. In another embodiment, the type of regression model is automatically selected. In one embodiment, default options can be provided for either type of regression model and can be changed by the user. In another embodiment, additional options can be provided for more knowledgeable users. These additional options 1434 can include a cut - off value for collinearity testing and two entry / exit p - value cut - offs for stepwise linear regression. Collinearity testing can correctly handle multi - linear variables and correctly identify and exclude outliers in the statistical analysis performed in the virtual semiconductor manufacturing environment. Multicollinearity occurs when two or more predictor variables / independent variables in a multiple regression model are highly correlated, such that other variables can be predicted with high accuracy. The fitting of a quadratic model typically results in multi - linear variables, and the embodiment addresses this issue, as further described below.
[0105] In a set of 3D models created from the experimental design, one or more 3D models can have targets (metrology, CD, etc.) that contain data values (outliers) that are not common in some aspects, and these values can have an adverse effect on or impede (correct) statistical analysis. The analysis module identifies the outliers for the user. In Figure 14EIn an exemplary embodiment, UI 1440 enables a user to select from the identified outliers 1442 to determine which should be omitted from the target data when performing statistical analysis. Four types of outliers are examined for the target in this step. Empty cell - If the run fails, an empty data cell of the target is returned (unable to build a 3D model). This type of run is automatically marked as an outlier to be removed during statistical analysis and cannot be put back by the user. NOVAL - If the run is completed but the target measurement value cannot be calculated, the text value "NOVAL" is returned. This type of run is automatically marked as an outlier to be removed during statistical analysis and cannot be put back by the user. Constant value - Multiple values of the target can be the same. If many results of the target are the same, this will hinder or distort statistical modeling. The target data is examined to check if a certain amount of data (e.g., 50% or more of the data) is the same / constant by comparing it with the median. These runs are deleted. If all the target data is the same, an error is reported. Statistical outliers - These data points are far enough from the data center that they may need to be excluded from the analysis. The median absolute deviation (MAD) method can be used to statistically test whether each data point is an outlier. Assuming MAD = median(|x - median(x)|), a robustness equivalent to the standard deviation can be calculated as SM = 1.4826 * MAD. Data values that exceed MAD ± K * SM (by default K = 3, equivalent to 3 standard deviations) can be considered outliers and marked for the user to check. In one embodiment, the user can put any of these outliers back into the analysis. It should be understood that there may be outliers in the measurement data that are not a problem when using the design types discussed herein (i.e., DSD, full factorial, or Monte Carlo simulation) because, by definition, these data points are within the range unless the user made a typo or other error when setting the levels / ranges.
[0106] After removing the outliers, various statistical analyses can be performed on the target's data. For example, in one embodiment, the analysis module can make input parameters for a regression model (if square / cross terms are selected). This allows fitting of the basic curve relationship between the x parameter and the target y. A set of variables X can be fitted into a linear regression model, and the equation can be represented in linear algebra notation as: X * b = y, where X is a matrix with n rows (runs) and k columns (variables). In an embodiment, the analysis module can also perform a multicollinearity check for all possible pairs of input variables, calculate the correlation coefficient r, and remove one parameter from each pair with |r| > 0.9 (this cutoff value can be adjusted by the user). This solves the multicollinearity problem in most cases.
[0107] In an embodiment, the analysis module may also perform an underdetermined matrix check to check if X is underdetermined (K>n). If there are more variables than data points (runs), there is not enough data to find a unique regression solution using the normal equations (the algorithm cannot return an answer). There are two options: 1) remove variables (use only main effects instead of the full second-order model), or 2) use a method such as principal component regression. In one embodiment, the analysis module applies the first type of option to remove variables. If k>p, then the squared terms and cross terms are removed and checked again. If X is still underdetermined, regression cannot be performed and an error is returned to the user.
[0108] The analysis module may further perform a numeric check on the data. After outlier removal, depending on the design and its size selected by the user, there may not be enough runs to solve the regression problem. In one embodiment, the check will determine if the number of runs n is <10, in which case there is not enough data and an error is returned to the user.
[0109] In an embodiment, the analysis module may perform stepwise linear regression. A forward method can be used: the initial model includes only the intercept (β0 weight), and a statistical significance test is performed on all variables to determine which one (if any) should be entered into the model. Once a variable is selected, say variable x3, then all the remaining variables are tested for inclusion in the new model. This process continues until no variables meet the inclusion criteria (p-value <0.05, user adjustable). Variables in the model are also tested (p-value >0.10, user adjustable).
[0110] In an embodiment, the analysis module may perform relative importance calculations to identify key parameters. If two or more statistically significant parameters are used to generate the model, only these variables are used to calculate a new linear regression, but after they have been automatically scaled. To automatically scale the variables, the mean of the variable is subtracted from all data points, and then the resulting values are divided by the original standard deviation of the variable. This makes the mean of all variables 0 and the standard deviation 1. The reason for this is the scaling of the variables. One variable can be in the range of 0 to 1, while another variable can be in the range of 50 to 80. The importance of the regression (the magnitude of the weights, β values) is affected by the scaling of the variables. If you want to know which variables are more important by examining the β values, the variables in the regression model must be transformed to have the same variance with automatic scaling completed.
[0111] The results can be presented to the user via the user interface 1450 in a variety of different formats, such as but not limited to, graphs with annotations 1452, such as Figure 14FTable 1454 as shown. The graph line is a graph of the predicted target against the actual target. In one embodiment, it may be annotated with: r2 (the regression squared correlation coefficient, ranging from 0 to 1, representing the fraction of the target variation explained by the model), root mean square error (RMSE, a measure of prediction accuracy), and n (the number of actual data points / runs used in the regression model). In one embodiment, the output table 1454 of the regression results may have five columns, as Figure 14G shown in a larger form. Column 1: Parameter name. These are the names of the original variables, and if included, the squared terms and cross terms. Column 2: p-value of the significant variables. Column 3: Regression weight (β). Column 4: Relative weight. The regression weights (β) used for regression are calculated with auto-scaled variables. These can be used to rank the important parameters. For example, when calculating relative importance, the parameter Etch4 aspect ratio can be determined to be more important than the Etch1 etch rate. Column 5: Status. In one embodiment, there are four possible outcomes: non-significant, significant, highly collinear removed, and underdetermined removed. In one embodiment, important parameters have non-zero weights and scaled importance, indicating how important a given process parameter is for the selected metrology.
[0112] This method of key parameter identification is further summarized in Figure 15 which depicts a series of steps performed to identify key parameters in an exemplary embodiment. The sequence begins with the receipt of a user identification of the platform (layout data and process steps) by the virtual manufacturing environment (step 1500). Then, multiple virtual manufacturing runs are performed for the D.O.E. of the semiconductor device of interest (step 1502). In one embodiment, the user's selection of the type of D.O.E. and additional D.O.E.-related input selections is received through a user interface provided in the virtual manufacturing environment. Alternatively, in another embodiment, the type of D.O.E. and D.O.E. parameters are automatically selected by the virtual manufacturing environment. The user's selection of the target is received (e.g., metrology measurement, structure search, DTC check, and / or electrical analysis) (step 1504), and the analysis module identifies outliers in the target data generated by the virtual manufacturing runs as described above (step 1506). The identified outliers are displayed to the user, and then through the provided user interface, the user selection is received to add one or more outliers back to the target data or remove outliers from the target data (step 1508). The analysis module then performs a regression analysis using the adjusted target data after the outlier decision to identify one or more key parameters of the D.O.E. (step 1510). Then an indication of the identified key parameters is displayed to the user (e.g., a list, line graph, chart), or the identified key parameters can be exported to a third-party application for additional processing (step 1512). Process Model Calibration
[0113] The analysis module can also perform process model calibration. In process model calibration, process step parameters and settings are adjusted in a virtual manufacturing environment so that the virtual 3D model generated from the virtual manufacturing process matches the physical semiconductor produced in the physical manufacturing environment. Once calibrated, the parameters and their settings in the virtual semiconductor manufacturing environment can be varied to introduce changes to the 3D model and provide information on which process changes will improve various semiconductor properties. In one embodiment, a wizard user interface is provided to guide the user through the process of optimizing the virtual 3D model to match the physical semiconductor. If there are multiple goals, the user selects the measurement goals and their desired values (one or more), weights the importance of the goals, sets parameter bounds, runs one or more trials, and receives the optimized parameter values and the corresponding measurement goal results.
[0114] Conventional virtual manufacturing environments that adjust process parameters during calibration work lack system-level components capable of performing proper process model calibration. In addition, many semiconductor process integration engineers have little or no statistical knowledge. As a result, these engineers typically perform process model calibration by adjusting parameters in a raw trial-and-error manner using a one-factor-at-a-time (OFAT) approach. This method is very time-consuming and results in poor-quality solutions when it finally finds any solution at all. The OFAT method is guaranteed not to find the optimal set of parameters because it does not consider the effects of any interactions between the parameters.
[0115] To address these issues, embodiments use an analysis module integrated into the virtual manufacturing environment to provide automatic statistical analysis, optimization, and visualization to the user (e.g., a semiconductor process integrator who may have limited or no statistical knowledge). More specifically, embodiments provide programming methods to solve the calibration problem without confusing engineers who are untrained in statistics. The statistical analysis engine in the analysis module uses a set of analysis algorithms to analyze each specific use case with little user input. In one embodiment, the user interface (UI) is a wizard that is designed to strongly guide the user through the correct analysis steps. The wizard can be organized by use case and operate according to a step-by-step flow UI on the left side of each use case.
[0116] In Figure 16An exemplary workflow for process model calibration performed in an exemplary embodiment is depicted. The sequence begins with receiving a virtual manufacturing environment (layout data and process steps) identified by the platform, from which a virtual 3D model of a semiconductor device of interest is generated. In most cases, the platform will be retrieved after user selection / specification provided via the UI provided in the virtual manufacturing environment. The UI also receives user identification of one or more measurement targets on the 3D model that the user desires to match measurement targets on the corresponding physical semiconductor (step 1602). The targets can be, but are not limited to, values related to metrology values evaluated on the virtual semiconductor structure, structure search, DTC inspection, electrical analysis, etc. In another embodiment, the platform can be programmatically selected without user input.
[0117] Then, the parameters (critical parameters) that are important and should be adjusted to make the 3D model target values match the experimental data are determined (step 2904). In one embodiment, this determination is done through a critical parameter identification process performed by the analysis module as described above. Alternatively, in another embodiment, the critical parameters can be manually selected by the user via the UI.
[0118] The sequence continues by receiving, via the UI, user specifications of the desired values (DVs) for each target (step 1606). The DVs can be, but are not limited to, distances obtained from TEM, or the matching quality or spectrum between a slice of the 3D model and the entire TEM. Relative weights are applied to each target either by default or as indicated by the user. For example, for two targets A and B, if the user desires, target A can be weighted as being twice as important as target B.
[0119] The sequence continues by receiving user specifications of each parameter to be adjusted in the calibration where the user sets lower and upper bounds (step 1608). The optimization algorithm provided in the analysis module keeps the parameters within these bounds as it iterates towards a solution.
[0120] The analysis module then executes the optimization algorithm (step 1610). The optimization algorithm can perform indirect or direct optimization, both of which are described further below. In one embodiment, the user can have options to select or specify, such as the number of iterations, convergence tolerance, scoring function type (L-2 or L-1), number of trials, etc. In some embodiments, for multiple trials, random starting values of the parameters within the previously specified lower and upper bounds can be created.
[0121] The results of the optimization algorithm are displayed to the user (step 1612). In one embodiment, the user can select a trial from the displayed results via the UI to trigger the establishment of the 3D model in the virtual manufacturing environment (step 1614).
[0122] The analysis module can use two different types of optimization algorithms. Indirect optimization applies the optimization algorithm to the regression equations created during the critical parameter identification process. Indirect optimization has the advantage of being very fast because it does not call the virtual manufacturing environment to build additional 3D models and generally avoids local minima because the regression equations provide a set of planes for making response surfaces (the response surface indicates the relationship between the parameters and the error between the 3D model target and the expected value). Trials starting from a random starting point in the parameter space tend to converge to similar results, so the user may be able to perform their optimization task with only a small number of trials. It should also be noted that the disadvantage of indirect optimization is that if the regression equations do not predict the target well, for example, if the response surface is highly non-linear, the quality of the results is poor.
[0123] Direct optimization is much slower than indirect optimization and can be used in embodiments where the critical parameter identification process discussed above is not followed. In this method, the optimization algorithm calls the virtual manufacturing environment at each iteration, generates a new 3D model and associated metrology values, and updates the optimization algorithm, and then adjusts the parameter values. This is a sequential optimization process. Direct optimization has the advantage of being one of the most realistic methods and will work better for non-linear response surfaces and does not necessarily require the above-mentioned critical parameter identification process to run first (no regression equations are required, the user simply picks the parameters to optimize). It has the disadvantage of being slow because direct optimization calls the virtual manufacturing environment to build 3D models at each iteration of each trial and may get stuck in local minima. These disadvantages can be mitigated by using multiple licenses (speed) and more trials to provide a wider sampling of the parameter space to avoid the algorithm getting stuck in local minima.
[0124] Various optimization algorithms can be used to perform direct and indirect optimization. As a non-limiting example, in one embodiment, an interior point algorithm with parameter bounds can be used for indirect optimization, but other algorithms can also be used. For direct optimization, as a non-limiting example, genetic algorithms can be used because they can handle complex response surfaces with discontinuities and binary objectives (present / absent).
[0125] As a non - limiting illustration of using indirect optimization to perform process model calibration, in one embodiment, the user first completes the critical parameter identification process through the analysis module as described herein. More specifically, the user performs design of experiments and regression on a set of parameters and objectives (such as metrology, structure search, DTC check, electrical analysis, etc. evaluated on a virtual semiconductor structure). This identifies the statistically significant parameters for each objective and uses these statistically significant parameters to create regression equations that predict each objective. As described above, the user selects one or more objectives, inputs the expected value (DV) for each objective, and weights its importance. A default weight of 1 can be provided for each objective. For the calibration options, the user can choose to use (default) or not use (default) the squared error, and can set advanced options such as, but not limited to, the number of optimization trials, the number of iterations, and the convergence tolerance. Default values can be provided for each option. For example, the number of optimization trials can be set to a default value of 10, the number of iterations per trial can be set to a default value of 100, and the convergence tolerance can be set to a default value of 1e - 6. After setting the advanced options, the user can set the allowed lower and upper bounds for each parameter to be optimized through the provided UI. During the optimization by the analysis module, the parameter values will be kept within these bounds. The user starts the calibration run and begins optimization through the UI. In one embodiment, the underlying computational engine can use an interior - point algorithm. Once the optimization trials are complete, each trial displays the optimized parameter and objective values, as well as a completion / error message, and the user can select a trial to build in a virtual manufacturing environment to evaluate the generated 3D model.
[0126] As described above, in one embodiment, the process model calibration sequence can be guided via a UI wizard. Figure 17 Depicts the selection of metrology objectives for the above - described process model calibration sequence, where the user is guided to select objectives from the objectives for which regression data has been previously generated during the critical parameter identification process. As further explained below, the regression data is then used when performing indirect optimization. In one embodiment, the UI 1700 presents an optional list of objectives 1702, but restricts the user to selecting from metrology objectives that already have a regression model. In the embodiment, no other parameters are provided and no other metrology objectives are provided. Figure 17 Also depicts a table 1704 in the UI that enables the user to specify the DV for the selected objectives. In the table in the right pane, the user inputs the DV (these cells can initially be empty) and the weight, which can be 1 by default and can be changed by the user.
[0127] Figure 18Depicts an exemplary user interface 1800 that enables selection of calibration options 1802 that can be provided by a process model calibration wizard. As depicted, in one embodiment, an optimization method (indirect vs. direct) can be selected 1804 and the virtual manufacturing environment can provide pre - option checkboxes 1806 to enable the user to specify options such as the number of optimization trials, the number of iterations per trial, and the tolerance desired by the user. Default values can be initially provided and, in one embodiment, the default values can be changed by the user.
[0128] The process model calibration wizard can also provide a user interface 1900 that enables the user to select parameter bounds, as Figure 19 shown. A list of all statistically significant parameters in the regression selected by the user can be created by the analysis module and displayed in tabular format 1902. The associated targets 1904 are listed for each parameter. For example, in the Figure 19 table shown, the parameter 2.1.15: Thickness is important for three regression targets FinCD_Top, FinCD_Bot, GapCD_Top. The user enters the desired lower and upper bounds on each parameter.
[0129] Then, the process model calibration wizard can provide a run button to start the calibration and can display the results to the user via a user interface 2000, as Figure 20 shown. For example, the results 2002 can be displayed in tabular format from an internal or external simulation environment and the trial number, optimization results, predicted target results, and values of the parameters 2004 can be displayed. In one embodiment, the displayed view enables the user to select columns in the table to export using parameters from a particular successful trial or to automatically build a model in the 3D view of the virtual manufacturing environment. Variability Analysis
[0130] Variability analysis helps the user analyze and understand the variability of metrology data obtained for a set of virtual 3D models. In one embodiment, the analysis module in the virtual manufacturing environment can perform a variability analysis to generate a user interface that displays a table of calculated information about the target distribution, a target data histogram, and a plot of normal quantiles, and provides the ability to switch to a second plotting window, select up to four targets, and plot / compare their empirical cumulative distribution functions. Additionally, the variability analysis as described herein provides an estimate of the precision of the standard deviation (σ) and its relationship to the sample size, a method for assessing whether the target data is normally distributed, and a consistent method for visual comparison.
[0131] Variability analysis is the task of a user evaluating the distribution of target values (metrology, structure search, DTC checks, electrical analysis, etc.) obtained from multiple virtual semiconductor structures created in a virtual manufacturing environment. The purpose is to determine the nominal value, range, specification limits, etc. of the target. Conventional virtual manufacturing environments for semiconductor device structures lack system-level components for performing proper variability analysis. Many semiconductor process integration engineers have little or no statistical knowledge, and thus these engineers perform variability analysis in an incomplete and / or incorrect manner. The target data may be assumed to be normally distributed, but that may not be the case, and if the target data is not normally distributed, the mean and σ values are misleading. Even if the target data is normally distributed, in Monte Carlo simulations / design of experiments, the appropriate sample size required to obtain useful σ accuracy is typically not addressed. Users often overestimate or underestimate the sample size, which wastes time and / or results in poor-quality answers. Additionally, visualization and comparison of distributions are done in different ways in different software packages or not at all, which leads to confusion among users.
[0132] To address these issues, in one embodiment, an analysis module is designed to perform variability analysis to provide automatic statistical analysis, optimization, and visualization for a user (e.g., a semiconductor process integrator with limited or no statistical knowledge) in a virtual manufacturing environment.
[0133] Figure 21Depicts a series of steps for performing variability analysis in an exemplary embodiment. The sequence begins with receiving user identification (layout data and process steps) of a platform used by a virtual manufacturing environment to generate a virtual 3D model of a semiconductor device structure of interest (step 2100). The user creates a Monte Carlo D.O.E. and identifies the goals of the 3D model (step 2102). Then multiple virtual manufacturing runs are performed on the Monte Carlo D.O.E. (step 2104). As further discussed below, in one embodiment, a reduced set of approximately 200 runs is performed. An analysis module identifies outliers in the target data generated by the virtual manufacturing runs in the manner described above (step 2106). The identified outliers are displayed to the user, and user selections are received via a provided user interface to add one or more outliers back to the target data or remove outliers from the target data for each goal (step 2108). The user selects variability analysis options via the user interface and selects one or more goals for analysis (step 2110). Then, the variability analysis results are displayed to the user in different forms, such as but not limited to tabular distribution data, target data histograms, and plots of normal quantiles, or the results can be exported to a third-party application for additional processing (step 2112). If desired, the user can switch to a second plotting window, an empirical cumulative distribution function (ECDF) window, and select up to four goals, and the analysis module will plot / compare their empirical distribution functions.
[0134] Figure 22 Depicts an exemplary user interface showing a variability analysis results window 2200 in an exemplary embodiment. For the selected goals, the variability analysis main window displays a table 2202 and two plots, a histogram 2204 and a normal quantile 2206. The table 2202 contains multiple calculated information for the selected goals: For example:
[0135] n is the number of data points used in the calculation (the user can add / remove outliers, so the actual number of data points used is shown here);
[0136] The mean and the 95% CI (confidence interval) of the mean;
[0137] The 95% confidence intervals for the standard deviation and the standard deviation. The 95% confidence interval is very important for users because it is an estimate of the precision of the standard deviation (σ). If n = 200, the 95% confidence interval is approximately ±10%, and it is found that this can be used to estimate the specification limits. The sample size of 200 is much smaller than the sample size typically recommended for Monte Carlo simulations (usually recommended as 10,000), but it can provide an accuracy of ±10%, which is acceptable in some use cases. Users can adjust the sample size (n) as needed to improve the σ precision (CI) and the mean. In another embodiment, the sample size for Monte Carlo simulation is less than five hundred.
[0138] Normality test - The results of the Lilliefors normality test are applied to the selected target and reported as a p-value, and whether it is statistically significant (yes / no). This is the first of several methods used by the analysis module to evaluate whether the target data is normally distributed;
[0139] Percentile values - The minimum, 0.5%, 2.5%, 5%, 25%, 50% (median), 75%, 95%, 97.5%, 99.5%, and maximum of the selected target.
[0140] The variability analysis main window can also display a histogram, that is, a histogram of the data of the selected target, where the normal pdf is overlaid for visual comparison of normality. If the histogram bars follow the normal pdf, the target data can be said to be normally distributed. This is the second method provided by the analysis module for testing the normality of the target data.
[0141] The variability analysis main window can further display the normal quantile plot of the selected target data. If the points are close to or on the line, the target data can be said to be normally distributed. This is the third method provided by the analysis module for testing the normality of the target data. It should be understood that additional methods for testing the normality of the target data not explicitly discussed herein can also be performed by the analysis module and should be considered within the scope of the present invention.
[0142] The analysis module can also generate a display for a second window for displaying the results of the variability analysis. Figure 23 An exemplary user graphical interface 2300 is depicted for displaying a comparison of the empirical cumulative distribution functions of two separate targets 2302, 2304 in an exemplary embodiment. For example, the user can click on the label 2306 of the ECDF window and select up to four targets to plot and compare their empirical cumulative distribution functions. The x-axis is the target data scaled to the range from 0 to 1, while the y-axis is the cumulative probability from 0 to 1. This enables the user to compare the target distributions in an equivalent manner and examine the tail effects that are important in the specification limit setting.
[0143] The various methods implemented by the analysis module for assessing normality allow users to determine whether they should consider the target data to be normally distributed. If the target data is normally distributed, users can use the mean and standard deviation to estimate the commonly used three or four sigma points to set the specification limits. If the data is not normally distributed, then users can estimate useful specification limit points from the percentiles and minimum / maximum values shown in the table, as well as the tails of the ECDF plot. In another embodiment, the target data can be automatically fitted to a Gaussian mixture model and thus used to estimate useful points for specification limit setting. In an embodiment, a variant of this method is to allow users to fit the characteristics of the data with various other known distributions (such as the F or t distributions), and thereby estimate useful points for specification limit setting.
[0144] Some or all embodiments of the present invention may be provided as one or more computer-readable programs or codes implemented on or in one or more non-transitory media. The media may be, but is not limited to, a hard disk, an optical disk, a digital versatile disk, a flash memory, a PROM, a RAM, a ROM, or a magnetic tape. Generally, the computer-readable program or code may be implemented in any computing language.
[0145] Since certain changes can be made without departing from the scope of the present invention, all content included in the above description or shown in the drawings is to be construed as illustrative rather than literal. Those skilled in the art will recognize that the order of the steps and architectures depicted in the drawings can be changed without departing from the scope of the present invention, and the illustrations included herein are a single example of the many possible descriptions of the present invention.
[0146] The foregoing description of the exemplary embodiments of the present invention provides illustration and description, but is not intended to be exhaustive or to limit the present invention to the precise form disclosed. Modifications and variations are possible in light of the above teachings, or may be obtained from practice of the present invention. For example, although a series of actions have been described, the order of the actions can be modified in other embodiments consistent with the principles of the present invention. Additionally, non-dependent actions can be performed in parallel. Partial translation of part of the drawings Figure 2 Process file: Process document Layout Options: Layout options Top Cell: Top cell Cell6×6: Cell 6×6 Scan: Scan GDS Layer Names: GDS layer names Ocadence Virtuoso Bridge(Not connected): Ocado Virtuoso Bridge (not connected) Build Options: Build options Model Resolution 1.0: Model resolution 1.0 Save Model After Every Step: Save the model after each step Start 3D Viewer After Building Model: Start the 3D viewer after building the model Figure 4 File: Document Edit: Edit View: View Tools: Tools Widows: Window Number: Number Step Name: Step name Material Name: Material name Thickness: Thickness Mask Name: Mask name SOI Wafer Setup: SOI wafer setup Fin Module: Fin module Fincut Module: Fincut module Gate Module: Gate module High-K Gate Dielectric Deposition: High-K gate dielectric deposition Measure Film Thickness: Measure film thickness PWF TIN Deposition: PWF TIN deposition Measure Film Thickness: Measure film thickness Barrier TaN Deposition: Barrier TaN deposition WF Resist Deposition: WF resist deposition Resist: Resist WF Lithography: WF lithography WF TiN Removal Etch: WF TiN removal etch WF Resist strip: WF Resist strip NWF TiN Depositon: NWF TiN Deposition Gate Amorphous Silicon Deposition: Gate Amorphous Silicon Deposition Gate Amorphous Silicon CMP: Gate Amorphous Silicon CMP Gate Hard Mask Deposition: Gate Hard Mask Deposition Gate Patterning: Gate Patterning Gatecut Patterning: Gatecut Patterning Gate Etch–Composite: Gate Etch–Composite Measure CD: Measure CD Save Model Components: Save Model Components SiGe Module: SiGe Module Action: Action Deposit: Deposit Wafer: Wafer to operate on: to operate on Mask Field: Mask Field Dark: Dark Light: Light Top side: Top side Bottom side: Bottom side Material: Material Thinkness:Thickness Distribution: Distribution Nominal Value:Nominal Value Scalar:Scalar Anisotropy: Anisotropy Corner Type:Corner Type Rounded:Rounded Process Library: Process Library Modeling Steps:Modeling Steps Comments:Comments Cross Section:Cross Section Custom Python: Customize Python Deposit: Deposition Electroplate: Electroplating Etch: Etching Export Geometry: Export Geometry Expose Material: Expose Material Fragment Operations: Fragment Operations Generate Mesh: Generate Mesh Grow Oxide: Grow Oxide Implant: Implantation Interface Growth: Interface Growth Mask Operations: Mask Operations Measurement: Measurement Modeling Parameters: Modeling Parameters Planar Deposit: Planar Deposition Planarize: Planarization Remove Material: Remove Material Replace Material: Replace Material Save Model: Save Model Wafer Operations: Wafer Operations Wafer Setup: Wafer Setup CMOS steps: CMOS Steps Implant: Implantation Oxidize: Oxidation Grow oxide-LOCO: Grow Oxide-LOCO Diffusion: Diffusion Salicide: Silicide Polysilicon Deposit: Polysilicon Deposition Oxide Fill&Via Etch: Oxide Fill & Via Etch Interconnect: Interconnect Figure 14A Use Case: Use Case Design Method: Design Method Analytics: Analytics DOE Options: DOE Options Select Input Factors: Select Input Factors Run DOE: Run DOE Select Analysis Targets: Select Analysis Targets Import Regression Data for Calibration: Import Regression Data for Calibration Figure 14B Available Inputs: Available Inputs Variables: Variables Number of Runs: Number of Runs Figure 14C Available Analysis: Available Analysis Figure 14D Include in Regression: Include in Regression Figure 14E Outlier Table: Outlier Table Statistical Outlier: Statistical Outlier Figure 14F Metrology Target: Metrology Target Actual vs Predicted: Actual vs Predicted ShowConfidenceInterval: Show Confidence Interval Figure 14G p-Value: p-Value Highly Collinear: Highly Collinear Figure 17 Parameter Bounds: Parameter Bounds Run Calibration: Run Calibration Remove: Remove Figure 18 Optimization: Optimization Scoring Function: Scoring Function Figure 19 Relevant Targets: Relevant Targets Lower Bound: Lower Bound Upper Bound: Upper Bound Figure 20 Predicted Target Valve: Predicted Target Value Converged: Converged Figure 22 Quantile Plot: Quantile Plot Histogram with Gaussian Overlay: Histogram with Gaussian Overlay Figure 23 Empirical CDFs: Empirical CDFsProbability: Probability
Claims
1. A non - transitory computer - readable medium storing computer - executable instructions for process model calibration, the instructions when executed causing at least one computing device equipped with at least one processor to: Perform a plurality of virtual manufacturing runs for the semiconductor device in a virtual manufacturing environment based on a design of experiments (DOE) using 2D design data and a process sequence, the plurality of virtual manufacturing runs constructing a plurality of 3D models; Receive a user identification of one or more targets for the plurality of 3D models; Receive, through the user interface in the virtual manufacturing environment, a user selection of an expected value for a selected target, the selected target being associated with one or more critical parameters, the value of the critical parameter affecting measurement data of the one or more targets, wherein the critical parameter is identified by an analysis module in the virtual manufacturing environment using a regression algorithm that generates regression data; Receive, through the user interface in the virtual manufacturing environment, a user selection of an upper limit and a lower limit for each identified critical parameter; Execute an optimization algorithm for the plurality of 3D models using the critical parameter, the expected value, and the upper and lower limits, wherein the optimization algorithm performs indirect optimization using the regression data; and Display or export the results of the optimization algorithm.
2. The medium according to claim 1, wherein the critical parameter is manually identified by the user, and wherein the optimization algorithm performs direct optimization.
3. The medium according to claim 1, wherein the instructions when executed further cause the at least one computing device to: Receive, from the user through the user interface, calibration options for the optimization algorithm.
4. The medium according to claim 3, wherein the calibration options include one or more of a plurality of iterations, a convergence tolerance, a plurality of trials, and a scoring function type.
5. The medium according to claim 1, wherein the selected target includes at least one of metrology measurement, structure search, design - for - testability (DTC) check, and electrical analysis.
6. The medium according to claim 1, wherein relative weights are applied to each selected target.
7. A computer - implemented method for process model calibration, comprising: Perform a plurality of virtual manufacturing runs for a semiconductor device in a virtual manufacturing environment based on a design of experiments (DOE) using 2D design data and a process sequence, the plurality of virtual manufacturing runs constructing a plurality of 3D models; Receive a user identification of one or more targets for the plurality of 3D models; Receive, through the user interface in the virtual manufacturing environment, a user selection of an expected value for a selected target, the selected target being associated with one or more critical parameters, the value of the critical parameter affecting measurement data of the one or more targets, wherein the critical parameter is identified by an analysis module in the virtual manufacturing environment using a regression algorithm that generates regression data; Receive, through the user interface in the virtual manufacturing environment, a user selection of an upper limit and a lower limit for each identified critical parameter; Execute an optimization algorithm for the plurality of 3D models using the key parameters, expected values, and upper and lower limits, wherein the optimization algorithm performs indirect optimization using the regression data; and Display or export the results of the optimization algorithm.
8. The method according to claim 7, wherein the key parameters are manually identified by a user, and wherein the optimization algorithm performs direct optimization.
9. The method according to claim 7, further comprising: Receiving, from a user via the user interface provided by the virtual manufacturing environment, calibration options for the optimization algorithm.
10. The method according to claim 9, wherein the calibration options include one or more of a plurality of iterations, a convergence tolerance, a plurality of trials, and a scoring function type.