Polishing Endpoint Detection Using Weighted Default Sequences
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Chemical mechanical polishing (CMP) processes face challenges in achieving consistent material removal rates due to variations in substrate thickness, slurry composition, polishing pad conditions, and load, leading to unreliable endpoint detection and potential over/underpolishing, which existing monitoring techniques fail to adequately address.
Innovation Solution
A method that combines measured values from in-situ monitoring systems with default values to generate modified sequences, fitting functions to determine polishing endpoints or adjust rates, using weighted averages and dynamic weighting based on goodness of fit or spectral comparisons to improve reliability and reduce computational load.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If in-situ monitoring values are used directly to determine polishing endpoint, then real-time control is achieved, but reliability is insufficient due to variations in polishing conditions
Solution Approach 1:
The system pre-stores a sequence of default values that represent expected polishing behavior under standard conditions. These default values are prepared in advance and used as a reference baseline for comparing actual monitoring measurements, enabling the system to account for normal variations before they affect endpoint detection accuracy.
Solution Approach 2:
The system dynamically adjusts the weighting between measured values and default values based on the goodness of fit. When monitoring values deviate significantly from expected behavior (low goodness of fit), the system automatically reduces their weight and increases reliance on default values, thereby adapting the parameter weights to maintain reliability under varying polishing conditions.
2Measurement precision
If complex spectral comparison methods are used to generate reliable values, then measurement accuracy improves, but computational burden increases significantly
Solution Approach 1:
Instead of performing exhaustive spectral comparisons with all reference spectra, the system uses a weighted combination approach that partially utilizes default values to compensate for less reliable measurements. This partial action approach achieves sufficient measurement accuracy without the excessive computational cost of complete spectral analysis in all cases.
Solution Approach 2:
The default values act as an intermediary between raw spectral measurements and endpoint determination. Rather than directly comparing measured spectra with extensive reference libraries, the system uses default values as a mediator to bridge the gap, reducing the need for computationally intensive direct spectral comparisons while maintaining accurate polishing status indication.
3Manufacturing precision
If constant pressure is applied during polishing, then process simplicity is maintained, but manufacturing precision deteriorates due to material removal rate variations
Solution Approach 1:
The system implements feedback control by continuously monitoring polishing progress through in-situ measurements and comparing them against default values. Based on the goodness of fit and weighted analysis, the system dynamically adjusts polishing parameters including pressure, enabling precise control of material removal rates and substrate flatness without requiring overly complex predetermined pressure schedules.
Data Source
AI summary
A method of controlling polishing includes storing a sequence of default values, polishing a substrate, monitoring the substrate during polishing with an in-situ monitoring system, generating a sequence of measured values from measurements from the in-situ monitoring system, combining the sequence of measured values with the sequence of default values to generate a sequence of modified values, fitting a function to the sequence of modified values, and determining at least one of a polishing endpoint or an adjustment for a polishing rate based on the function.


