Semiconductor manufacturing CPK visualization
Introduction
In the semiconductor manufacturing industry a silicon wafer is processed from bare silicon to a myriad (>10,000's) of chips. The processing steps necessary to achieve this are typically in the hundreds (as shown below). Within these steps there are also several measurement steps. These steps typically fall into three categories:
MEA / MTR: Physical measurement of a section of a chip. (Returns a number)
PLY: Picture of a section of a wafer or a chip. (Returns a picture)
ELEC: Electrical measurement of performance of a chip. (returns a number)
For our work we will focus on the MEA+MTR type measurements since we would like to quantify numbers rather than pictures. We also do not include the ELEC type of data since this data has a well organized app readily available already.
This work focuses on providing an understanding of the performance of a particular technology for a given set of measurement steps (MEA+MTR) through a high level quantification of its outputs. An app is used to provide ease of access to the results. The results can subsequently be used to identify locations where issues may arise or where performance is hindered.
CPK
For all the measurements we use in our data set we have a given set of bounds specified by an Upper limit (USL), Lower Limit (LSL) and Target (TGT). These bounds are the values a given process should output in order to produce hardware that will deliver the performance expected by the customer.
A very common measurement statistic in the manufacturing industry is CPK. This is a composite measurement which consists of:
CP: A measure of the repeatability of a process. A repeatable process will give the same output over and over again.
K: A measure of the accuracy of a process. An accurate process will give outputs very close to the intended target.
CPK therefore defines an accurate and precise process. It tells how repeatable a process is and how close to target its output is producing. We can use this measure to provide a global view of each measurement within the manufacturing facility.
DataSet
All the data used in this project was obtained from a central database licensed by IBM to GlobalFoundries. The SQL used to retrieve the information can be released by request, however, we are unable to provide the SQL in the github repo due to confidentiality issues with Globalfoundries.
Once the data was pulled from the database we proceeded to clean and pre-process the dataset. The initial table consisted of 6 months of MEA + MTR data which included:
- Raw Data: 36 columns (var.)
- 478138 rows (obs.)
- 27 MEA+MTR steps
The pre-processing of the raw data frame included selecting only the necessary columns for the analysis (15), changing to more appropriate column names, formatting proper data types for each column as well as handling NULL values (which were filled with Zero's for numerical columns or NA's for categorical). After pre-processing we were left with:.
- 15 columns (var.)
- 478138 rows (obs.)
- 27 MEA+MTR steps
Shiny App
Once the data was processed, histogram were used to visual the results which were ultimately presented within a SHINY - APP. For each plot presented in the app two lines are drawn: Cpk = 1.67 and Cpk= 1.0. Process' with a CPK > 1.67 likely have the specs too wide and need tighter specs to be properly monitored. Process' with a Cpk < 1.0 have issues and need improvements since they will likely not yield well.
There are two main types of plots that are shown in the App:
- The "All" plot, shown below, shows the mean CPK for all the measurement steps within the 6 month timeframe. The goal of this is to give a quick high level view of how each measurement is performing.
- The "Step" plot, shown below, shows the CPK per month of a given measurement. This enables the user to drilldown and understand if there's a particular month in which the process had issues.
Conclusion:
The inline Cpk app allows the user to visualize what Mfg. steps are behaving well in an easy quick manner and is accessible to anyone. It allows the factory to understand what sectors need more work or asset allocation (i.e. more people or monies).
This is a proof of concept work that would enable managers to take high level decisions on where to guide the company.
Future Work:
- Replace the MFg. Step names with easy to understand “NickNames”
- Exm: MEAGATEOX6T1P.1 = GateOx. Thk.
- Include yield linear trend as secondary Y-Axis.
- Expand beyond T6 to other techs
- Forecast Cpk and projected Yields
- Can be done using simple gaussian fitting.
References:
- App Link: GF_CPK_Tracker
- Github Repo: Link