1. Technical Field
The present disclosure relates in general to a processing system, and more particularly to determining matching of a tool set in a production process.
2. Background Art
The requirement for tool matching is becoming more critical in a processing system as technology develops over time. Conventional approaches for determining tool matching utilize monitors and special tests to collect test data, which consumes tool time and may not yield the most useful data because the monitors may not have the same measurement structures as the real products/wafers. This may lead to a condition where the production tools appear to be matched with respect to the monitors, however they are not matched in the processing of real products.
A method, system and computer program product for determining matching of a tool set in a production process are disclosed. According to an embodiment, a method for determining matching of a tool set in a production process comprises: selecting a measurement step within the production process, a subset of tools of the tool set being used in the measurement step; collecting production data for each tool of the subset, the production data being related to a process feeder tool; generating a weighted average of the production data for each tool of the subset; and analyzing weighted averages of all tools of the subset using a matching standard to determine matching of the subset.
A first aspect of the invention is directed to a method for determining matching of a tool set in a production process, the method comprising: selecting a measurement step within the production process, a subset of tools of the tool set being used in the measurement step; collecting production data for each tool of the subset, the production data being related to a process feeder tool; generating a weighted average of the production data for each tool of the subset; and analyzing weighted averages of all tools of the subset using a matching standard to determine matching of the subset.
A second aspect of the invention is directed to a system for determining matching of a tool set in a production process, the system comprising: means for selecting a measurement step within the production process, a subset of tools of the tool set being used in the measurement step; means for collecting production data for each tool of the subset, the production data being related to a process feeder tool; means for generating a weighted average of the production data for each tool of the subset; and means for analyzing weighted averages of all tools of the subset using a matching standard to determine matching of the subset.
A third aspect of the invention is directed to a computer program product determining matching of a tool set in a production process, comprising: computer usable program code which, when executed by a computer system, is configured to: select a measurement step within the production process, a subset of tools of the tool set being used in the measurement step; collect production data for each tool of the subset, the production data being related to a process feeder tool; generate a weighted average of the production data for each tool of the subset; and analyze weighted averages of all tools of the subset using a matching standard to determine matching of the subset.
Other aspects and features of the present invention, as defined solely by the claims, will become apparent to those ordinarily skilled in the art upon review of the following non-limited detailed description of the disclosure in conjunction with the accompanying figures.
The embodiments of this disclosure will be described in detail, with reference to the following figures, wherein like designations denote like elements, and wherein:
It is noted that the drawings of the disclosure are not to scale. The drawings are intended to depict only typical aspects of the disclosure, and therefore should not be considered as limiting the scope of the disclosure. In the drawings, like numbering represents like elements among the drawings.
The following detailed description of embodiments refers to the accompanying drawings, which illustrate specific embodiments of the disclosure. Other embodiments having different structures and operations do not depart from the scope of the present invention.
Referring to
As shown in
Inputs 160 to computer system 100 include, for example, production data of a real production process. Typically, a production process may use various tools functioning coordinately to finish the process. As such, production data of a specific tool will generally be related to other tools. In the following description, a tool under matching determination/analysis will be referred to as a “target tool” or a “tool”, and a tool coordinating with the target tool in the process will be referred to as a “process feeder tool”. It should be appreciated that a target tool and a process feeder tool are only differentiated regarding a specific tool matching determination operation. As such, a target tool can become a process feeder tool in another tool matching determination operation, and vice versa. Those inputs may be communicated to computer system 100 through I/O 124, stored in database 128, and may be collected by data collecting unit 140 in the operation of tool matching determining system 132. Outputs 162 of computer system 100 include, for example, tool matching determination results regarding a tool set, which may be communicated to, among others, a user or an automatically controlled machine to act accordingly, e.g., to replace a determined non-matching tool set. The operation of tool matching determining system 132 will be described in detail below.
Tool matching determining system 132 functions generally to determine/evaluate matching of a tool set used in a production process.
In process S2, for each measurement step, data collecting unit 140 collects production data for each tool of the subset used in the measurement step. As described above, production data of a target tool is related to a process feeder tool. According to an embodiment, a process feeder tool coordinates with each and all tools of the subset in the measurement step. As such, production data of each tool of the subset includes data entries related to the same process feeder tool. According to an embodiment, in a measurement step, multiple different process feeder tools coordinate with the target subset of tools, and the collected production data of each tool includes data entries related to each process feeder tool, respectively. Table 1 shows an example of a structure of the production data collected for a subset of target tools (T1-T5) of a measurement step. T1-T5 coordinate with, e.g., three process feeder tools F1-F3 in the measurement step.
In Table 1, each cell, e.g., T1/F1, contains a number of production data entries, each representing a “lot” processed by a combination of a target tool and a process feeder tool. For example, cell T1/F1 indicates that there are 30 lots processed by the combination of target tool T1 and process feeder tool F1, i.e., 30 target tool T1 data entries are related to process feeder tool F1.
In process S3, optionally, data normalizing unit 144 normalizes the production data related to different process feeder tools to make the data comparable among and between one another. Any method of normalization may be used and all are included in the disclosure. For example, the normalization may be implemented by subtracting each data entry of the production data of a target tool by a feeder tool average of the respective process feeder tool. As such, the influences of different process feeder tools on the production data of the target tools may be eliminated. A feeder tool average can be obtained using any method and all are included in the disclosure. According to an embodiment, a feeder tool average may be determined in two steps. First, a feeder specific mean of the production data of a target tool is calculated. A feeder specific mean of a target tool refers to a mean, e.g., a simple mean, of the target tool's production data entries that are related to a specific process feeder tool. For example, with respect to Table 1, the feeder specific mean of target tool T1 for process feeder tool F1 is the mean of all the data entries in cell T1/F1, i.e., the mean of all the tool T1 data entries that are related to process feeder tool F1. Second, a feeder tool average of a process feeder tool is calculated as a mean of all the feeder specific means related to the process feeder tool. For example, with respect to Table 1, the feeder tool average for process feeder tool F1 is the mean of the feeder specific means of cells T1/F1, T2/F1, T3/F1, T4/F1 and T5/F1. It should be appreciated that other methods of obtaining a feeder tool average may also be used. For example, a feeder tool average may be calculated as the simple mean of all production data entries related to a feeder tool average in a measurement step. For example, with respect to Table 1, the feeder tool average of process feeder tool F1 may be the mean of all data entries of cells T1/F1, T2/F1, T3/F1, T4/F1 and T5/F1.
In process S4, weighted average (WA) generating unit 146 generates a weighted average value for the production data of each tool of the subset of tools used in the measurement step. In obtaining the weighted average, any standard of assigning weight among data entries may be used, and all are included in the disclosure. With respect to Table 1, a weighted average of target tool T1 is obtained using data entries of cells T1/F1, T1/F2 and T1/F3. According to an embodiment, a weighted average is obtained by assigning more weight to a more recent data entry of the production data of a target tool. In addition, a user of tool matching determining system 132 may instruct how a weighting is assigned to a data entry through, e.g., I/O 124.
In process S5, analyzing unit 148 analyzes the weighted averages of all tools of the subset of a measurement step using a preset matching standard to determine matching of the subset. According to an embodiment, the preset standard may include a preset relative range for the weighted averages of the target tools. In this description, a relative range refers to a difference between a maximum value and a minimum value but does not include any specific value. As such, a relative range for the weighted averages only refers to a difference between a maximum weighted average value and a minimum weighted average, but does not specify either the maximum weighted average or the minimum weighted average.
According to an embodiment, the absolute range may be set using the following procedures. First, the median value of the weighted averages may be selected as an initial midrange of the absolute range. As such, the absolute range may be initially set as having the preset relative range and centered at the initial midrange, i.e., the median weighted average. Then, the initial absolute range will be shifted either upward or downward to enclose as many weighted averages as possible to obtain the final absolute range. After the absolute range is set, any tool that has a weighted average outside the absolute range is determined as a non-matching tool.
In S5-3, analyzing unit 148 calculates a tool matching metric for the measurement step using formula:
TMM=(Tsub−Tnm)/Tsub,
where TMM denotes the tool matching metric, Tsub denotes a total number of tools in the subset, and Tnm denotes the number of non-matching tools.
Returning to
In process S6, combining unit 150 determines a combined tool matching metric for the tool set based on tool matching metrics of all measurement steps within the production process. Any method of obtaining the combined tool matching metric can be used, and all are included in the disclosure. For example, combining unit 150 may calculate a geometric mean of the tool matching metrics of all measurement steps to be the combined tool matching metric. Matching of the whole tool set may be determined based on the combined tool matching metric.
While shown and described herein as a method and system for determining matching of a tool set in a production process, it is understood that the disclosure further provides various alternative embodiments. For example, in an embodiment, the disclosure provides a program product stored on a computer-readable medium, which when executed, enables a computer infrastructure to determine matching of a tool set in a production process. To this extent, the computer-readable medium includes program code, such as tool matching determining system 132 (
As used herein, it is understood that the terms “program code” and “computer program code” are synonymous and mean any expression, in any language, code or notation, of a set of instructions that cause a computing device having an information processing capability to perform a particular function either directly or after any combination of the following: (a) conversion to another language, code or notation; (b) reproduction in a different material form; and/or (c) decompression. To this extent, program code can be embodied as one or more types of program products, such as an application/software program, component software/a library of functions, an operating system, a basic I/O system/driver for a particular computing and/or I/O device, and the like. Further, it is understood that the terms “component” and “system” are synonymous as used herein and represent any combination of hardware and/or software capable of performing some function(s).
The flowcharts and block diagrams in the Figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
Although specific embodiments have been illustrated and described herein, those of ordinary skill in the art appreciate that any arrangement which is calculated to achieve the same purpose may be substituted for the specific embodiments shown and that the invention has other applications in other environments. This application is intended to cover any adaptations or variations of the present invention. The following claims are in no way intended to limit the scope of the invention to the specific embodiments described herein.