KR102367310B1 - 반도체 시편에서 결함들을 분류하는 방법 및 그 시스템 - Google Patents

반도체 시편에서 결함들을 분류하는 방법 및 그 시스템 Download PDF

Info

Publication number
KR102367310B1
KR102367310B1 KR1020200004685A KR20200004685A KR102367310B1 KR 102367310 B1 KR102367310 B1 KR 102367310B1 KR 1020200004685 A KR1020200004685 A KR 1020200004685A KR 20200004685 A KR20200004685 A KR 20200004685A KR 102367310 B1 KR102367310 B1 KR 102367310B1
Authority
KR
South Korea
Prior art keywords
defects
score
defect
attributes
processor
Prior art date
Application number
KR1020200004685A
Other languages
English (en)
Other versions
KR20200089618A (ko
Inventor
키릴 사브첸코
아사프 아스바그
보아즈 코헨
Original Assignee
어플라이드 머티리얼즈 이스라엘 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 어플라이드 머티리얼즈 이스라엘 리미티드 filed Critical 어플라이드 머티리얼즈 이스라엘 리미티드
Publication of KR20200089618A publication Critical patent/KR20200089618A/ko
Application granted granted Critical
Publication of KR102367310B1 publication Critical patent/KR102367310B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/254Fusion techniques of classification results, e.g. of results related to same input data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/95Investigating the presence of flaws or contamination characterised by the material or shape of the object to be examined
    • G01N21/9501Semiconductor wafers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23211Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with adaptive number of clusters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/136Segmentation; Edge detection involving thresholding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • G06V10/763Non-hierarchical techniques, e.g. based on statistics of modelling distributions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/8851Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges
    • G01N2021/8854Grading and classifying of flaws
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N21/00Investigating or analysing materials by the use of optical means, i.e. using sub-millimetre waves, infrared, visible or ultraviolet light
    • G01N21/84Systems specially adapted for particular applications
    • G01N21/88Investigating the presence of flaws or contamination
    • G01N21/8851Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges
    • G01N2021/8883Scan or image signal processing specially adapted therefor, e.g. for scan signal adjustment, for detecting different kinds of defects, for compensating for structures, markings, edges involving the calculation of gauges, generating models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30148Semiconductor; IC; Wafer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Quality & Reliability (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Chemical & Material Sciences (AREA)
  • Mathematical Physics (AREA)
  • Analytical Chemistry (AREA)
  • Biochemistry (AREA)
  • Immunology (AREA)
  • Pathology (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)
  • Sampling And Sample Adjustment (AREA)

Abstract

결함들을 분류하기 위한 시스템, 방법 및 컴퓨터 판독 가능 매체로서, 이 방법은: 분류된 제1 결함들, 및 잠재적 결함들을 수신하는 단계 ― 각각 제1 결함 및 잠재적 결함은 속성들에 대한 값들을 가짐 ―; 제1 결함들을 잠재적 결함들과 구별하는 속성들의 서브세트를 선택하기 위해 제1 결함들 및 잠재적 결함들을 처리하는 단계; 제1 결함들 및 잠재적 결함들에 각각 기초하여 제1 함수 및 제2 함수를 획득하는 단계; 제1 함수에 대한 제1 임계치, 및 제1 함수와 제2 함수의 조합에 대한 제2 임계치를 획득하는 단계; 각각 제1 스코어 및 제2 스코어를 획득하기 위해 각각의 잠재적 결함에 제1 함수 및 제2 함수를 적용하는 단계; 제1 스코어와 제2 스코어의 조합된 스코어를 결정하는 단계; 및 제1 스코어가 제1 임계치보다 더 낮거나 조합된 스코어가 제2 임계치를 초과할 때 잠재적 결함을 잠재적으로 새로운 타입의 결함으로서 표시하는 단계를 포함한다.

Description

반도체 시편에서 결함들을 분류하는 방법 및 그 시스템{METHOD OF CLASSIFYING DEFECTS IN A SEMICONDUCTOR SPECIMEN AND SYSTEM THEREOF}
[0001] 본원에 개시되는 청구 대상은 일반적으로 시편(specimen)의 시험 분야에 관한 것으로, 보다 구체적으로는 새로운 클래스에 속하는 결함들의 자동 검출이 가능한 방법들 및 시스템들에 관한 것이다.
[0002] 제작된 디바이스들의 극초대규모 집적 회로(ultra large scale integration)와 연관된 고밀도 및 성능에 대한 현재 요구들은 서브미크론 피처들, 높아진 트랜지스터 및 회로 속도들, 그리고 향상된 신뢰도를 필요로 한다. 이러한 요구들은 높은 정밀도와 균일성을 갖는 디바이스 피처들의 형성을 필요로 하며, 이는 결국 디바이스들이 여전히 반도체 시편(specimen)들의 형태인 동안 디바이스들의 빈번하고 상세한 시험을 포함하여 제작 프로세스의 주의 깊은 모니터링을 필요로 한다.
[0003] 본 명세서에서 사용되는 "시편"이라는 용어는 반도체 집적 회로들, 자기 헤드들, 평판 디스플레이들 및 다른 반도체 제작품들을 제조하는데 사용되는 임의의 종류의 웨이퍼, 마스크 및 다른 구조물들, 이들의 조합들 및/또는 부분들을 커버하는 것으로 광범위하게 해석되어야 한다.
[0004] 본 명세서에서 사용되는 "결함"이라는 용어는 시편 상에 또는 시편 내에 형성된 임의의 종류의 이상(abnormality) 또는 바람직하지 않은 피처를 커버하는 것으로 광범위하게 해석되어야 한다.
[0005] 시편들의 복잡한 제조 프로세스는 오류가 없으며 이러한 오류들은 제조된 디바이스들에 결함들을 야기할 수 있다. 결함들은 디바이스의 작동을 손상시킬 수 있는 결함들, 및 결함들일 수 있지만 제조된 디바이스의 어떠한 손상 또는 오작동도 야기하지 않는 방해들을 포함할 수 있다. 비제한적인 예로서, 원재료의 결함들, 기계적, 전기적 또는 광학적 오류들, 인적 오류들 등으로 인해 제조 프로세스 중에 결함들이 야기될 수 있다. 또한, 결함들은 시험 프로세스 동안 하나 이상의 제조 스테이지들 후에 발생하는 웨이퍼의 온도 변화들과 같은 시공간적 요인들에 의해 야기될 수 있는데, 이들은 웨이퍼의 일부 변형들을 야기할 수 있다. 시험 프로세스는 또한 예를 들어, 시험 장비 또는 프로세스의 광학적, 기계적 또는 전기적 문제들로 인해 추가로 제기되는 오류들을 유발할 수 있으며, 따라서 이는 불완전한 캡처들을 제공한다. 이러한 오류들은 허위 긍정(false positive) 결과들을 초래할 수 있으며, 이는 결함을 포함하는 것으로 보일 수 있지만 실제 결함은 해당 영역에 존재하지 않는다.
[0006] 많은 애플리케이션들에서는, 결함의 타입 또는 클래스가 중요하다. 예를 들어, 결함은 입자, 스크래치, 프로세스 등과 같은 다수의 클래스들 중 하나로 분류될 수 있다.
[0007] 구체적으로 달리 언급되지 않는 한, 본 명세서에서 사용되는 "시험"이라는 용어는 대상에서 결함들의 임의의 종류의 검출 및/또는 분류를 커버하는 것으로 광범위하게 해석되어야 한다. 시험될 대상의 제조 중에 또는 제조 후에 비파괴 시험 툴들을 사용함으로써 시험이 제공된다. 비제한적인 예로서, 시험 프로세스는 하나 이상의 시험 툴들을 사용하여 대상 또는 그의 부분들에 대해 제공되는 (단일로의 또는 다수 스캔들로의) 스캔, 샘플링, 검토, 측정, 분류 및/또는 다른 동작들을 포함할 수 있다. 마찬가지로, 시험은 시험될 대상의 제조 전에 제공될 수 있으며, 예를 들어 시험 레시피(들)를 생성하는 것을 포함할 수 있다. 구체적으로 달리 언급되지 않는 한, 본 명세서에서 사용되는 "시험"이라는 용어 또는 그 파생어들은 검사 영역(들)의 크기, 스캔의 속도 또는 해상도, 또는 시험 툴들의 타입에 대해 제한되지 않는다는 점이 주목된다. 다양한 비파괴 시험 툴들은 비제한적인 예로서 광학 툴들, 주사 전자 현미경들, 원자력 현미경들 등을 포함한다.
[0008] 시험 프로세스는 복수의 시험 단계들을 포함할 수 있다. 제조 프로세스 동안, 시험 단계들은 예를 들어, 특정 층들의 제조 또는 처리 등의 이후에 여러 번 수행될 수 있다. 추가로 또는 대안으로, 각각의 시험 단계는 예를 들어, 서로 다른 시편 위치들에 대해 또는 서로 다른 시험 설정들을 갖는 동일한 시편 위치들에 대해 여러 번 반복될 수 있다.
[0009] 비제한적인 예로서, 런타임 시험은 2 단계 프로시저, 예컨대 시편의 검사에 이은 샘플링된 결함들의 검토를 이용할 수 있다. 검사 단계 동안, 시편 또는 그 일부의 표면(예컨대, 관심 영역들, 핫스팟들 등)은 통상적으로 비교적 고속 및/또는 저해상도로 스캔된다. 캡처된 검사 이미지는 결함들을 검출하고 이들의 위치들 및 다른 검사 속성들을 얻기 위해 분석된다. 검토 단계에서는, 검사 단계 동안 검출된 결함들 중 적어도 일부 결함들의 이미지들이 통상적으로 비교적 저속 및/또는 고해상도로 캡처됨으로써, 결함들 중 적어도 일부 결함들의 분류 및 선택적으로 다른 분석들을 가능하게 한다. 일부 경우들에는, 두 단계들 모두 동일한 검사 툴에 의해 구현될 수 있으며, 일부 다른 경우들에는 이러한 두 단계들이 서로 다른 검사 툴들에 의해 구현된다.
[0010] 본원에 개시되는 청구 대상의 특정 양상에 따르면, 시편의 결함들을 복수의 클래스들로 분류할 수 있는 시스템이 제공되며, 이 시스템은: 복수의 클래스들로 분류된 제1 복수의 제1 결함들, 및 제2 복수의 잠재적 제2 결함들을 수신하고 ― 각각의 제1 결함 및 각각의 잠재적 제2 결함은 복수의 속성들의 각각의 속성에 대한 각각의 값과 연관되고, 제1 복수의 결함들은 제1 속성 공간에 의해 특성화되고, 제2 복수의 결함들은 제2 속성 공간에 의해 특성화됨 ―; 복수의 속성들로부터 속성들의 서브세트를 선택하기 위해 제1 복수 및 제2 복수의 결함들을 처리하고 ― 처리하는 것은: 각각의 속성에 대해: 제1 복수의 결함들로부터의 결함들의 속성 값들의 제1 분포를 결정하는 것; 제2 복수의 결함들로부터의 결함들의 속성 값들의 제2 분포를 결정하는 것; 그리고 제1 분포와 제2 분포 간의 차이를 결정하는 것을 포함함 ―; 제1 분포와 제2 분포 간에 가장 큰 차이를 갖는 속성들로서 속성들의 서브세트를 선택하고; 제1 복수의 결함들로부터의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제1 밀도 추정 함수를 획득하고, 제2 복수의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제2 밀도 추정 함수를 결정하고; 제1 밀도 추정 함수와 연관된 제1 임계치, 및 제1 밀도 추정 함수와 제2 밀도 추정 함수의 조합과 연관된 제2 임계치를 획득하고; 제1 스코어를 획득하기 위해 제2 복수의 결함들 중 각각의 결함에 제1 밀도 추정 함수를 적용하고; 제2 스코어를 획득하기 위해 제2 복수의 결함들 중 각각의 결함에 제2 밀도 추정 함수를 적용하고; 제1 스코어와 제2 스코어의 조합된 스코어를 결정하고; 그리고 제1 스코어가 제1 임계치보다 더 낮거나 조합된 스코어가 제2 임계치를 초과할 때 제2 복수의 결함들로부터의 결함을 잠재적으로 새로운 타입의 결함으로서 표시하도록 구성된 처리 및 메모리 회로(PMC: processing and memory circuitry)를 포함한다. 비제한적인 예로서, 잠재적 결함은 제1 스코어가 제1 임계치보다 더 낮을 때 선택적으로 이상치(outlier)로서 표시된다. 다른 비제한적인 예로서, 잠재적 결함은 제2 스코어가 제2 임계치를 초과할 때 선택적으로 편위(excursion)로서 표시된다. 다른 비제한적인 예로서, 제1 밀도 추정 함수와 제2 밀도 추정 함수의 조합은 제1 밀도 추정 함수에서의 결함의 제1 스코어와 제2 밀도 추정 함수에서의 결함의 제2 스코어 간의 비율이다.
[0011] 본원에 개시되는 청구 대상의 다른 양상에 따르면, 메모리에 동작 가능하게 연결된 프로세서를 사용하여 복수의 결함들을 분류하는 방법이 제공되며, 이 방법은: 복수의 클래스들로 분류된 제1 복수의 제1 결함들, 및 제2 복수의 잠재적 제2 결함들을 프로세서에 의해 수신하는 단계 ― 각각의 제1 결함 및 각각의 잠재적 제2 결함은 복수의 속성들의 각각의 속성에 대한 각각의 값과 연관되고, 제1 복수의 결함들은 제1 속성 공간에 의해 특성화되고, 제2 복수의 결함들은 제2 속성 공간에 의해 특성화됨 ―; 복수의 속성들로부터 속성들의 서브세트를 선택하기 위해 프로세서에 의해 제1 복수 및 제2 복수의 결함들을 처리하는 단계 ― 처리하는 단계는: 각각의 속성에 대해: 프로세서에 의해 제1 복수의 결함들로부터의 결함들의 속성 값들의 제1 분포를 결정하는 단계; 프로세서에 의해 제2 복수의 결함들로부터의 결함들의 속성 값들의 제2 분포를 결정하는 단계; 및 프로세서에 의해 제1 분포와 제2 분포 간의 차이를 결정하는 단계를 포함함 ―; 프로세서에 의해 제1 분포와 제2 분포 간에 가장 큰 차이를 갖는 속성들로서 속성들의 서브세트를 선택하는 단계; 프로세서에 의해 제1 복수의 결함들로부터의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제1 밀도 추정 함수를 획득하고, 제2 복수의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제2 밀도 추정 함수를 결정하는 단계; 프로세서에 의해 제1 밀도 추정 함수와 연관된 제1 임계치, 및 제1 밀도 추정 함수와 제2 밀도 추정 함수의 조합과 연관된 제2 임계치를 획득하는 단계; 프로세서에 의해 제1 스코어를 획득하기 위해 제2 복수의 결함들 중 각각의 결함에 제1 밀도 추정 함수를 적용하는 단계; 프로세서에 의해 제2 스코어를 획득하기 위해 제2 복수의 결함들 중 각각의 결함에 제2 밀도 추정 함수를 적용하는 단계; 프로세서에 의해 제1 스코어와 제2 스코어의 조합된 스코어를 결정하는 단계; 및 제1 스코어가 제1 임계치보다 더 낮거나 조합된 스코어가 제2 임계치를 초과할 때 제2 복수의 결함들로부터의 결함을 잠재적으로 새로운 타입의 결함으로서 표시하는 단계를 포함한다. 비제한적인 예로서, 잠재적 결함은 제1 스코어가 제1 임계치보다 더 낮을 때 선택적으로 이상치(outlier)로서 표시된다. 다른 비제한적인 예로서, 잠재적 결함은 제2 스코어가 제2 임계치를 초과할 때 선택적으로 편위로서 표시된다. 다른 비제한적인 예로서, 제1 밀도 추정 함수와 제2 밀도 추정 함수의 조합은 제1 밀도 추정 함수에서의 결함의 제1 스코어와 제2 밀도 추정 함수에서의 결함의 제2 스코어 간의 비율이다.
[0012] 본원에 개시되는 청구 대상의 또 다른 양상에 따르면, 컴퓨터에 의해 실행될 때, 컴퓨터로 하여금 시편의 결함들을 복수의 클래스들로 자동 분류하는 방법을 수행하게 하는 명령들을 포함하는 비-일시적 컴퓨터 판독 가능 매체가 제공되며, 이 방법은: 복수의 클래스들로 분류된 제1 복수의 제1 결함들, 및 제2 복수의 잠재적 제2 결함들을 프로세서에 의해 수신하는 단계 ― 각각의 제1 결함 및 각각의 잠재적 제2 결함은 복수의 속성들의 각각의 속성에 대한 각각의 값과 연관되고, 제1 복수의 결함들은 제1 속성 공간에 의해 특성화되고, 제2 복수의 결함들은 제2 속성 공간에 의해 특성화됨 ―; 복수의 속성들로부터 속성들의 서브세트를 선택하기 위해 프로세서에 의해 제1 복수 및 제2 복수의 결함들을 처리하는 단계 ― 처리하는 단계는: 각각의 속성에 대해: 프로세서에 의해 제1 복수의 결함들로부터의 결함들의 속성 값들의 제1 분포를 결정하는 단계; 프로세서에 의해 제2 복수의 결함들로부터의 결함들의 속성 값들의 제2 분포를 결정하는 단계; 및 프로세서에 의해 제1 분포와 제2 분포 간의 차이를 결정하는 단계를 포함함 ―; 프로세서에 의해 제1 분포와 제2 분포 간에 가장 큰 차이를 갖는 속성들로서 속성들의 서브세트를 선택하는 단계; 프로세서에 의해 제1 복수의 결함들로부터의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제1 밀도 추정 함수를 획득하고, 제2 복수의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제2 밀도 추정 함수를 결정하는 단계; 프로세서에 의해 제1 밀도 추정 함수와 연관된 제1 임계치, 및 제1 밀도 추정 함수와 제2 밀도 추정 함수의 조합과 연관된 제2 임계치를 획득하는 단계; 프로세서에 의해 제1 스코어를 획득하기 위해 제2 복수의 결함들 중 각각의 결함에 제1 밀도 추정 함수를 적용하는 단계; 프로세서에 의해 제2 스코어를 획득하기 위해 제2 복수의 결함들 중 각각의 결함에 제2 밀도 추정 함수를 적용하는 단계; 프로세서에 의해 제1 스코어와 제2 스코어의 조합된 스코어를 결정하는 단계; 및 제1 스코어가 제1 임계치보다 더 낮거나 조합된 스코어가 제2 임계치를 초과할 때 제2 복수의 결함들로부터의 결함을 잠재적으로 새로운 타입의 결함으로서 표시하는 단계를 포함한다.
[0013] 본 발명을 이해하기 위해, 그리고 본 발명이 실제로 어떻게 실행될 수 있는지를 확인하기 위해, 이제 첨부 도면들을 참조하여 비제한적인 예로서만 실시예들이 설명될 것이다.
[0014] 도 1은 본원에 개시되는 청구 대상의 특정 실시예들에 따른 시험 시스템의 일반화된 블록도를 예시한다.
[0015] 도 2는 테스트 세트에 나타난 새로운 클래스들의 결함들의 예시적인 2차원 사례들을 예시한다.
[0016] 도 3은 본원에 개시되는 청구 대상의 특정 실시예들에 따라, 새로운 타입 식별 엔진을 작동시키는 방법의 일반화된 흐름도를 예시한다.
[0017] 다음 상세한 설명에서는, 본 발명의 전반적인 이해를 제공하기 위해 많은 특정 세부사항들이 제시된다. 그러나 본원에 개시되는 청구 대상은 이러한 특정 세부사항들 없이 실시될 수 있다고 당해 기술분야에서 통상의 지식을 가진 자들에 의해 이해될 것이다. 다른 경우들에는, 본원에 개시되는 청구 대상을 모호하게 하지 않도록, 잘 알려진 방법들, 프로시저들, 컴포넌트들 및 회로들은 상세하게 설명되지 않았다.
[0018] 구체적으로 달리 언급되지 않는 한, 하기 논의들로부터 명백하듯이, 본 명세서 전반에서 "처리," "컴퓨팅," "표현," "계산," "생성," "할당," "선택," "결정," "수신," "훈련," "적용," "출력" 등과 같은 용어들을 이용한 논의들은 데이터를 조작하고 그리고/또는 다른 데이터로 변환하는 컴퓨터의 동작(들) 및/또는 프로세스(들)와 관련이 있으며, 상기 데이터는 전자와 같은 물리적 수량들로서 표현되고 그리고/또는 상기 데이터는 물리적 객체들을 나타낸다고 인식된다. "컴퓨터"라는 용어는 비제한적인 예로서, 본 출원에 개시된 분류기 및 PMC를 내부에 포함하는 데이터 처리 능력들을 갖는 임의의 종류의 하드웨어 기반 전자 디바이스를 커버하는 것으로 광범위하게 해석되어야 한다.
[0019] 본 명세서에서 사용되는 "비-일시적 메모리" 및 "비-일시적 저장 매체"라는 용어들은 본원에 개시되는 청구 대상에 적합한 임의의 휘발성 또는 비휘발성 컴퓨터 메모리를 커버하는 것으로 광범위하게 해석되어야 한다. 
[0020] 구체적으로 달리 언급되지 않는 한, 개별 실시예들과 관련하여 설명되는, 본원에 개시되는 청구 대상의 특정한 특징들은 또한 단일 실시예로 조합하여 제공될 수 있다고 인식된다. 반대로, 단일 실시예와 관련하여 설명되는, 본원에 개시되는 청구 대상의 다양한 특징들은 또한 개별적으로 또는 임의의 적절한 하위 조합으로 제공될 수 있다. 다음 상세한 설명에서는, 방법들 및 장치의 전반적인 이해를 제공하기 위해 많은 특정 세부사항들이 제시된다.
[0021] 본 명세서에서 사용되는 시편에서의 "결함"이라는 용어는 시편 상에 또는 시편 내에 형성된 임의의 종류의 이상 또는 바람직하지 않은 피처를 커버하는 것으로 광범위하게 해석되어야 한다.
[0022] 본 명세서에서 사용되는 "클래스에 속하는 것으로 알려진"이라는 용어는 지상 검증자료(ground truth)로 간주되는 클래스로의 결함의 임의의 분류, 예를 들어 인간 사용자에 의해 이루어진 분류, 신뢰할 수 있는 분류기에 의해 이루어진 분류 등을 커버하는 것으로 광범위하게 해석되어야 한다.
[0023] 대상들을 시험할 때, 각각의 결함은 크기, 색상, 배경색 등과 같은 다수의 속성들에 할당된 값들에 의해 특성화될 수 있다. 결함들 사이의 거리 또는 주변은 적용 가능한 거리 함수, 예를 들어 각각의 속성에 대한 가능한 값들 및 속성 공간에 정의된 거리에 따라 정의될 수 있다.
[0024] 본 명세서에서 사용되는 "분류"라는 용어는 각각의 결함이 각자의 속성 값들에 기초하여 다수의 클래스들 중 하나로 자동으로 분류되고, 동일한 클래스의 항목들이 정의된 거리 함수에 따라, 일반적으로 속성 공간에서 서로의 근처에 있도록 입자, 스크래치, 프로세스 등과 같은 복수의 미리 결정된 클래스들 중 하나에 대한 결함의 임의의 할당을 커버하는 것으로 광범위하게 해석되어야 한다. 클래스들은 사용자에 의해 정의되거나 아니면 수신될 수 있다.
[0025] 통상적으로, 분류기는 "훈련 세트"로 지칭되는 결함들의 집합에 대해 훈련되며, 여기서 훈련 세트 내의 각각의 결함은 정의된 클래스 중 하나로 예를 들어, 인간 사용자에 의해 분류된다. 훈련이 완료되면, "테스트 세트"로 지칭되는 추가 결함들을 클래스들로 분류하기 위해 분류기가 사용될 수 있다.
[0026] 일반적으로 예상되는 결함들을 가능한 한 가깝게 나타내는 훈련 세트를 얻도록 시도되는데, 즉 클래스들 사이의 피처 공간 내의 결함들의 분포는 향후 테스트 세트(들)의 분포와 유사하다. 그러나 이것이 항상 가능하지는 않으며, 일부 클래스들은 훈련 세트에서 과소 표현되거나 전혀 표현되지 않을 수 있는데, 이는 훈련을 위해 클래스들의 결함들이 충분하지 않음을 의미한다. 그 결과는 이러한 클래스들의 결함들이 런타임시 정확하게 분류되지 않을 것이라는 점이다. 이러한 오분류는 프로세스 제어 품질, 예컨대 통계적 공정 관리(SPC: statistical process control)에 부정적인 영향을 가질 수 있다.
[0027] 따라서 훈련 세트와 테스트 세트가 주어지면, 훈련 세트에서 관찰되지 않았거나 충분히 관찰되지 않은 새로운 클래스의 결함들을 테스트 세트에서 검출하는 것이 요구된다.
[0028] 이러한 결함들은 두 가지 타입들: 새로운 타입이 통계 이상치로 밝혀지는 이상치 결함들, 및 새로운 타입이 알려진 클래스들의 경계들 내에 나타나고 결함 분포에서 상당한 변화로 밝혀지는 편위 결함들이 있을 수 있다.
[0029] 이상치 결함들을 검출하기 위한 일부 알려진 기술들은 로컬 이상치 요소(LOF: local outlier factor), 단일 클래스 지원 벡터 머신들(SVM: Class support vector machines) 및 격리 포리스트(Isolation forest)를 포함한다. 편위 검출을 처리하기 위한 알려진 기술들은 통상적으로 쿨백-라이블러(KL: Kullback-Leibler) 발산 또는 유사한 메트릭스에 의존한다.
[0030] 그러나 두 양상들: 새로운 타입들의 결함들뿐만 아니라 편위 결함들을 모두 검출하는 것에 대한 알려진 해결책은 없다.
[0031] 따라서 분류기를 훈련시킬 때 특정 집단들, 예컨대 소수 클래스들의 결함들의 과소 표현은 여러 가지 이유들로 제작 및 시험 프로세스에서 심각한 문제이다.
[0032] 첫째, 잘못된 분류는 시험 프로세스의 품질의 부정확한 평가로 이어질 수 있다. 소수 결함들의 낮은 표현으로 인해, 프로세스 평가에 대한 소수 결함들의 영향이 낮고, 따라서 전체 프로세스의 품질이 부정확하게 평가될 수 있다.
[0033] 둘째, 시험 프로세스의 안정성이 낮을 수 있는데: 결함들이 잘못 분류될 때 더 작은 집단들이 변화들에 더 취약하기 때문에, 소수의 결함들 또는 심지어 단일 결함이 프로세스 평가의 표준 편차에 크게 영향을 줄 수 있다. 따라서 시험 프로세스를 안정적으로 평가하는 것은 어렵다.
[0034] 셋째, 단순한 분류 오류들은 너무 심각하여 처리되지 않을 수 없는 결함들을 야기한다. 더욱이, 어떤 매우 심각한 결함들을 제거하는 데 상당한 노력들이 들어가며, 이는 이러한 타입들의 더 적은 나머지 결함들을 야기한다. 따라서 그러한 결함들이 훈련 프로세스에서 과소 표현된다면, 추가 결함들이 이들의 클래스들로 분류되지 않을 것이며, 이는 시편의 심각한 문제들이 눈에 띄지 않게 할 수 있다.
[0035] 넷째, 특정 타입들의 결함들은 동일한 클래스에 속한다고 언급되더라도 서로 다른 특성들을 가질 수 있다. 예를 들어, "입자" 타입의 결함들은 금속 및 실리콘에서 상당히 서로 다를 수 있다. 특정 소수 클래스들을 식별하지 않고 훈련하지 않음으로써, 특정 결함들과 관련된 중요한 정보가 손실될 수 있다.
[0036] 개시된 청구 대상은 새로운 클래스들의 결함들을 검출하기 위한 방법 및 장치를 제공한다. 본 개시내용을 이용하여, 사용자는 테스트 세트에서 새로운 클래스들일 수 있는 결함들을 검출할 수 있다. 그런 다음, 사용자는 결함들을 검사하고 이들을 하나 이상의 새로운 클래스에 속하는 것으로 분류할 수 있다. 추가로 또는 대안으로, 결함들이 새로운 클래스들일 높은 가능성으로 검출된다면, 그러한 결함들은 (복수의 새로운 클래스들 간에 구별하기 위해) 클러스터링될 수 있고 새로운 클래스들에 자동으로 할당될 수 있다.
[0037] 일단 하나 이상의 새로운 클래스들, 통상적으로는 수십 개, 예를 들어 클래스당 적어도 20-50개의 결함들에 대해 충분한 수의 이러한 결함들이 검출되면, 분류기는 결함들로 훈련될 수 있어, 추가 결함들이 정확하게 분류될 수 있다.
[0038] 이를 염두에 두고, 본원에 개시되는 청구 대상의 특정 실시예들에 따른 시험 시스템의 일반화된 블록도를 예시하는 도 1이 주목된다. 도 1에 예시된 시험 시스템(100)은 시편 제작의 일부로서 시편의(예컨대, 웨이퍼 및/또는 그 부분들의) 시험에 사용될 수 있다. 검사는 대상 제작의 일부일 수 있으며, 대상을 제작하는 동안 또는 이후에 실행될 수 있다. 시험 시스템은 다양한 시험 툴들, 예를 들어 검사 이미지들을 (통상적으로, 비교적 고속 및/또는 저해상도로) 캡처하도록 구성된 하나 이상의 검사 시험 툴들(101) 및 검사 툴들(101)에 의해 검출된 적어도 일부 결함들의 검토 이미지들을 (통상적으로, 비교적 저속 및/또는 고해상도로) 캡처하도록 구성된 하나 이상의 검토 시험 툴들(102)을 포함할 수 있다. 예시된 시험 시스템(100)은 결함 타입에 따라 결함들을 복수의 클래스들로 자동 분류할 수 있는 (이하 분류기로도 또한 지칭되는) 컴퓨터 기반의 자동 결함 분류 툴(103)을 더 포함한다. 비제한적인 예로서, 분류는 서로 다른 목적들을 가질 수 있고, 분류 결과들은 특정 관심 결함들(DoI: defects of interest)을 식별하고, 실제 결함들로부터 허위 결함들을 필터링하며, 통계적 공정 관리(SPC)에서 편위들을 식별하기 위해 파레토(Pareto)를 확립하는 데 그리고/또는 분류 목적들에 따라 다르게 사용될 수 있다.
[0039] 사용자는 GUI(108)의 도움으로 분류 엔진(126)을 훈련시키기 위해 클래스들 및 각각의 클래스에 할당된 결함들을 정의할 수 있다. 또한, GUI(108)는 사용자(및/또는 관리 시스템)가 각각의 클래스에 대해 순도, 정확성, 추출 요건들 또는 다른 파라미터들을 개별적으로 설정할 수 있게 하도록 그리고 사용자 요건들에 따라 분류 결과들을 최적화할 수 있게 하도록 구성될 수 있다.
[0040] 분류기(103)는 하나 이상의 검사 툴들(101) 및/또는 하나 이상의 검토 툴들(102)에 동작 가능하게 연결될 수 있다. 선택적으로, 분류기(103)는 하나 이상의 검사 툴들(101)과 또는 하나 이상의 검토 툴들(102)과 완전히 또는 부분적으로 통합될 수 있다. 분류기(103)는 설계 서버(110) 및 데이터 저장소(109)에 추가로 동작 가능하게 연결될 수 있다.
[0041] 시편은 검사 툴(101)(예컨대, 광학 검사 시스템, 저해상도 SEM 등)에 의해 시험될 수 있다. 결과 이미지들 및/또는 파생물들은 (예를 들어, 설계 데이터 및/또는 결함 분류 데이터로서 다른 데이터와 함께 선택적으로) 처리되어, 검토할 잠재적 결함들을 선택할 수 있다.
[0042] 검토를 위해 선택된 잠재적 결함 위치들의 서브세트는 검토 툴(102)(예컨대, 주사 전자 현미경(SEM: scanning electron microscope) 또는 원자력 현미경(AFM: Atomic Force Microscopy) 등)에 의해 검토될 수 있다. 서브세트는 검사 툴(101)에 의해 출력된 잠재적 결함들과 연관된 클래스들에 따라, 예를 들어 그리고 가능하게는 추가 고려사항들의 일부로서 선택될 수 있으며, 여기서 클래스들은 분류기(103)에 의해 검사 데이터(128)로부터 결정될 수 있다. 예를 들어, 각각의 클래스에서 적어도 미리 결정된 수 또는 백분율의 결함들이 검토되는 것이 요구될 수 있다.
[0043] 추가로 또는 대안으로, 검토 이미지들 및/또는 그 파생물들에 유용한 (이하, 검토 데이터(122)로 지칭되는) 데이터 및 각각의 연관된 메타데이터가 ― 직접 또는 하나 이상의 중간 시스템들을 통해 ― 분류기(103)로 송신될 수 있다. 검토 데이터는 검토 이미지들의 파생물들로서 하나 이상의 중간 시스템들에 의해 생성된 데이터를 포함할 수 있다는 점이 주목된다.
[0044] 분류기(103)는 하드웨어 기반 입력 인터페이스(105)에 그리고/또는 하드웨어 기반 출력 인터페이스(106)에 동작 가능하게 연결된 프로세서 및 메모리 회로(PMC)(104)를 포함한다. PMC(104)는 도 3을 참조하여 추가로 상세히 설명되는 바와 같이 분류기를 작동시키는 데 필요한 처리를 제공하도록 구성되며, (PMC 내에 별도로 도시되지 않은) 프로세서 및 메모리를 포함한다. 분류기(103) 및 PMC(104)의 동작은 도 2 - 도 3을 참조하여 더 상세히 설명될 것이다.
[0045] 출력 인터페이스(106)에 의해 출력된 분류기(103)의 처리 결과들은 검사 시험 툴들(101) 또는 검토 시험 툴들(102)의 동작을 변경하기 위해, 예를 들어 동작 파라미터들의 값들을 변경함으로써 검사 시험 툴들(101) 또는 검토 시험 툴들(102)에 대해 각각 검사 명령 관련 데이터(123) 또는 검토 명령 관련 데이터(124)로서 제공될 수 있다.
[0046] 당해 기술분야에서 통상의 지식을 가진 자들은 본원에 개시된 청구 대상의 교시들이 도 1에 예시된 시스템으로 구속되지 않는다는 것을 쉽게 인식할 것이며; 동등한 그리고/또는 수정된 기능이 다른 방식으로 통합 또는 분할될 수 있으며 펌웨어 및 하드웨어와 소프트웨어의 임의의 적절한 조합으로 구현될 수 있다.
[0047] 도 1에 예시된 시험 시스템은 분산 컴퓨팅 환경에서 구현될 수 있는데, 여기서 도 1에 도시된 앞서 언급한 기능 모듈들은 여러 로컬 및/또는 원격 디바이스들에 걸쳐 분산될 수 있고, 통신 네트워크를 통해 링크될 수 있다는 점이 주목된다. 다른 실시예들에서, 시험 툴들(101 및/또는 102), 데이터 저장소들(109), 저장 시스템(107), 설계 서버(110) 및/또는 GUI(108) 중 적어도 일부는 시험 시스템(100)의 외부에 있을 수 있으며 입력 인터페이스(105) 및 출력 인터페이스(106)를 통해 분류기(103)와 데이터 통신하여 동작할 수 있다는 점이 추가로 주목된다. 분류기(103)는 하나 이상의 시험 툴들과 함께 사용될 독립형 컴퓨터(들)로서 구현될 수 있다. 선택적으로, 분류기(103)는 데이터 저장소들(109) 및/또는 저장 시스템(107)에 저장된 사전 획득된 검토 데이터에 대해 동작할 수 있다. 대안으로 또는 추가로, 분류기(103)의 각각의 기능들은 적어도 부분적으로 하나 이상의 시험 툴들, 프로세스 제어 툴들, 레시피 생성 툴들, 자동 결함 검토 및/또는 분류를 위한 시스템들, 및/또는 시험과 관련된 다른 시스템들과 통합될 수 있다.
[0048] PMC(104)는 새로운 타입 식별 엔진(117), 훈련 엔진(125) 및 하나 이상의 분류 엔진들(126)을 포함할 수 있다. 새로운 타입 식별 엔진(117)은 새로운 타입들의 결함들을 식별하기 위해 사용될 수 있어, 훈련 엔진(125)이 차후의 결함들을 새로운 결함들로 또한 분류하도록 하나 이상의 분류 엔진들(126)을 훈련시킬 수 있다.
[0049] 새로운 타입 식별 엔진(117)은 속성 서브세트 식별 엔진(118)을 포함할 수 있다. 속성 서브세트 식별 엔진(118)은 속성들의 서브세트를 식별하도록 구성될 수 있어, 훈련 동안 알려지지 않은 타입들의 결함들은 이러한 속성들에 할당된 값들에 의해 다른 클래스들과 연관된 결함들과 구별된다.
[0050] 새로운 타입 식별 엔진(117)은 훈련 세트에 대한 제1 밀도 함수 및 테스트 세트에 대한 제2 밀도 함수를 결정하기 위한 밀도 함수 획득 엔진(119)을 포함할 수 있다. 밀도 함수들은 속성 서브세트 식별 엔진(118)에 의해 식별된 속성 서브세트에 따라 결정된다.
[0051] 새로운 타입 식별 엔진(117)은 제1 밀도 함수와 연관된 제1 임계치, 및 제1 밀도 함수와 제2 밀도 함수 간의 조합, 예를 들어 비율과 연관된 제2 임계치, 이를테면 비율을 연관시키기 위한 임계치 획득 엔진(120)을 포함할 수 있다. 새로운 타입 식별 엔진(117)은 제1 스코어 및 제2 스코어를 획득하기 위해 제1 밀도 함수 및 제2 밀도 함수를 결함에 적용하기 위한 밀도 함수 적용 엔진(121)을 포함할 수 있다. 제1 스코어가 제1 임계치를 초과한다면, 결함은 잠재적으로 "이상치"일 수 있는데, 즉 훈련 세트에서 공통적인 속성 값들과는 다른 속성 값들을 갖는다. 제2 스코어가 제2 임계치를 초과한다면, 결함은 잠재적으로 "편위"인데, 즉 훈련 세트와 테스트 세트에서의 결함 밀도 간의 서로 다른 분포를 나타낼 수 있다.
[0052] 제1 스코어가 제1 임계치를 초과하거나 제2 스코어가 제2 임계치를 초과한다면, 결함은 사용자에게 출력되거나, 잠재적으로 새로운 타입들의 결함들의 집합에 추가되거나, 임의의 다른 방식으로 이용될 수 있다.
[0053] 이제 테스트 세트로 나타난 새로운 클래스들의 결함들의 일례의 시각화를 제공하는 도 2가 참조된다. 시각화 목적들로, 도 2의 예는 2차원인데, 즉 2개의 속성들을 갖는 결함들을 나타내지만, 통상적인 시스템들의 결함들은 훨씬 더 많은 속성들, 예를 들어 수백 개의 속성들을 포함한다.
[0054] 훈련 세트는 2개의 클래스들의 결함들: 하위 공간(201)에 포함된 제1 클래스의 결함들(200) 및 하위 공간(202)에 포함된 제2 클래스의 결함들(204)을 포함한다.
[0055] 훈련 세트와 마찬가지로, 테스트 세트는 결함들(200) 및 결함들(204)을 포함한다. 그러나 테스트 세트는 또한 하위 공간(209)에 포함된 결함들(208)을 포함하는데, 이러한 결함들(208)은 이들의 하위 공간이 결함들(200 또는 204)의 클래스들과 같은 알려진 클래스의 하위 공간과 크게 중첩되지 않기 때문에 이상치 결함들이다.
[0056] 테스트 세트는 또한 하위 공간(213)에 포함된 결함들(212)을 포함하는데, 이는 하위 공간(202)과의 상당한 중첩을 가지며, 따라서 초기에 동일한 클래스에 속하는 것으로 분류될 수 있다. 그러나 테스트 세트에서 이러한 결함들의 존재는 결함들(204)인 것으로 추정되는 결함들, 즉 하위 공간(202)과 실질적으로 동일한 하위 공간 내의 결함들(204) 및 결함들(212)의 상대적인 빈도의 변화에 의해 식별된다.
[0057] 도 3을 참조하면, 본원에 개시되는 청구 대상의 특정 실시예들에 따라, 새로운 타입 식별 엔진(117)을 작동시키는 일반화된 흐름도가 예시된다. PMC(104)는 비-일시적 컴퓨터 판독 가능 저장 매체 상에 구현된 컴퓨터 판독 가능 명령들에 따라 아래에서 상세히 설명되는 각각의 동작들을 실행하도록 구성된다.
[0058] PMC(104)는 제1 분류기에 의해 다수의 클래스들로 분류되는 제1 복수의 제1 결함들을 수신한다(300). 수신된 결함들은 (예컨대, 인간 전문가 및/또는 다른 분류기 및/또는 이전 분류기의 버전 등에 의해) 사전 정의된 클래스들로 사전 분류되어, 이 사전 분류가 지상 검증자료로 간주된다. PMC(104)는 또한 지상 검증자료가 이용 가능하지 않은 제2 복수의 제2 결함들을 수신한다(300). 그러나 제2 복수의 결함들은 제1 복수의 결함들에 존재하지 않는 또는 충분히 존재하지 않는 타입의 결함들을 포함할 수 있다.
[0059] 각각의 제1 결함 및 각각의 제2 결함은 다양한 속성들에 할당된 값들의 집합, 예를 들어 벡터로서 기술될 수 있다. 통상적으로, 각각의 결함은 예를 들어, 그 타입, 색상, 크기, 위치, 원인 등과 관련된 수백 개 이상의 속성들에 할당된 값들로서 기술될 수 있다.
[0060] 그 다음, 속성 서브세트 식별 엔진(118)은 제1 복수의 결함들과 제2 복수의 결함들 간에 가장 잘 구별하는 속성들의 서브세트를 식별할 수 있다(304). 따라서 가능하게는 모든 속성들을 포함하는, 그러나 반드시 모든 속성들을 포함하는 것은 아닌 복수의 속성들이 구별 속성들로서 시험된다. 속성은 제1 복수의 값들의 범위와 제2 복수의 값들의 범위 간의 중첩이 더 작다면, 두 복수들 간에 더 잘 구별되는 것으로 간주된다. 따라서 제1 복수의 포인트들에 대한 속성의 값들에 대한 제1 분포가 결정될 수 있고, 제2 복수의 포인트들에 대한 속성의 값들에 대한 제2 분포가 결정될 수 있다. 제1 분포와 제2 분포 간의 차이가 클수록 속성이 더 양호하다. 일부 실시예들에서, 제1 복수의 밀도 함수에 의해 주어진 바와 같이 제2 복수의 밀도 스코어들의 포인트들에 대한 합이 낮을수록, 속성이 더 양호한데, 이는 이 속성을 사용하여 제2 복수의 포인트들이 제1 복수의 포인트들에서 발생할 가능성이 더 적음을 나타내기 때문이다. 그 다음, 미리 결정된 수의 속성들이 선택될 수 있으며, 여기서 앞서 설명한 바와 같이 최상의 속성들이 선택될 수 있다.
[0061] 밀도 함수 획득 엔진(119)은 제1 복수의 결함들 및 제2 복수의 결함들의 제1 밀도 함수 및 제2 밀도 함수를 각각 획득할 수 있다(308). 이러한 각각의 밀도 함수는 속성 서브세트의 속성들에 대한 값들의 집합으로서 기술된 결함을 입력으로서 수신하고, 결함이 각각의 복수의 결함들에 포함될 수 있는지 여부를 나타내는 스코어를 출력하도록 구성된다. 예를 들어, 많은 이웃들, 예컨대 제1 결함의 속성 값들에 가까운 속성 값들을 가진 결함들을 갖는 제1 결함이 그러한 이웃들을 더 적게 갖는 결함보다 더 높은 스코어를 가질 것이다. 밀도 함수들은 결정되거나, 저장 디바이스로부터 리트리브되거나, 네트워크를 통해 수신되는 식일 수 있다.
[0062] 임계치 획득 엔진(120)은 제1 밀도 함수 및 제2 밀도 함수에 대해 각각 제1 임계치 및 제2 임계치를 획득할 수 있다(312).
[0063] 제1 임계치는 제1 밀도 함수에 관련된다. 결함에 할당된 제1 임계치보다 더 낮은 스코어는 결함이 훈련 세트에 속하지 않을 가능성이 있음을 나타내며, 따라서 이상치로 간주될 수 있다.
[0064] 제2 임계치는 제1 밀도 함수와 제2 밀도 함수 간의 차이에 관련된다. 결함에 할당된 제2 임계치보다 더 높은 스코어는 결함이 훈련 세트보다는 테스트 세트에 속할 가능성이 더 높음을 나타내며, 따라서 편위로 간주될 수 있다.
[0065] 밀도 함수 적용 엔진(121)은 결함, 예를 들어 테스트 세트로부터의 결함에 밀도 함수들을 적용하고, 제1 스코어 및 제2 스코어, 그리고 제1 스코어와 제2 스코어의 조합, 예를 들어 제1 스코어와 제2 스코어 간의 비율을 획득(316)하도록 구성될 수 있다.
[0066] 결함이 제1 임계치보다 더 낮은 제1 스코어를 갖는다면, 이는 그에 따라 이상치인 것으로 의심되고 표시될 수 있다(320). 결함이 제2 임계치보다 더 큰 제2 스코어를 갖는다면, 이는 그에 따라 편위인 것으로 의심되고 표시될 수 있다(320). 어느 경우든 새로운 타입으로 의심될 수 있고, 따라서 사용자에게 표시될 수 있다.
[0067] PMC(104)는 선택적으로 일정 기간의 시간 동안, 잠재적으로 새로운 클래스들에 속하는 결함들을 수집할 수 있다. 수집된 결함들은 하나 이상의 새로운 클래스들이 되도록 사용자에 의해 수동으로 출력되고 검증될 수 있다(324). 대안으로, 결함들은 하나 이상의 잠재적인 새로운 클래스들을 식별하기 위해 클러스터링될 수 있다.
[0068] 각각의 이러한 새로운 타입의 충분한 수의 결함들, 예를 들어 적어도 20-50개의 결함들이 수집되면, 훈련 엔진(125)은 다음에, 정말 새로운 클래스들에 속하는 것으로 식별된 결함들을 포함하여 복수의 결함들에 대해 훈련될 수 있다. 그 다음, 결과적인 분류 엔진이 결함들을 또한 새로운 클래스들로 분류할 수 있다.
[0069] 당해 기술분야에서 통상의 지식을 가진 자들은 본원에 개시된 청구 대상의 교시들이 도 3에 예시된 방법으로 구속되지 않는다는 것을 쉽게 인식할 것이다. 소수의 결함들을 획득하고 그에 따라 분류기를 훈련시키기 위해 다른 적절한 알고리즘들 및 이들의 조합들이 구현될 수 있다.
[0070] 본 발명은 본 명세서에 포함되거나 도면들에 예시된 설명에 제시된 세부사항들에 대한 본 발명의 적용시 제한되지 않는 것으로 이해되어야 한다. 본 발명은 다른 실시예들이 가능하고 다양한 방식들로 실시 및 실행될 수 있다. 그러므로 본 명세서에서 이용된 어구 및 용어는 설명을 위한 것이며 제한으로 간주되지 않아야 한다고 이해되어야 한다. 이에 따라, 당해 기술분야에서 통상의 지식을 가진 자들은 본 개시내용이 기반으로 하는 개념이 본원에 개시된 청구 대상의 여러 목적들을 실행하기 위한 다른 구조들, 방법들 및 시스템들을 설계하기 위한 기초로서 쉽게 이용될 수 있다고 인식할 것이다.
[0071] 본 발명에 따른 시스템은 적어도 부분적으로는 적절하게 프로그래밍된 컴퓨터 상에서 구현될 수 있다고 또한 이해될 것이다. 마찬가지로, 본 발명은 본 발명의 방법을 실행하기 위해 컴퓨터에 의해 판독 가능한 컴퓨터 프로그램을 고려한다. 본 발명은 본 발명의 방법을 실행하기 위해 컴퓨터에 의해 실행 가능한 명령들의 프로그램을 유형적으로 구현하는 비-일시적 컴퓨터 판독 가능 메모리를 추가로 고려한다.
[0072] 당해 기술분야에서 통상의 지식을 가진 자들은 첨부된 청구항들에 그리고 그러한 청구항들에 의해 정의된 본 발명의 범위를 벗어나지 않고 이전에 설명된 바와 같이 본 발명의 실시예들에 다양한 수정들 및 변경들이 적용될 수 있음을 쉽게 인식할 것이다.

Claims (9)

  1. 시편(specimen)의 결함들을 복수의 클래스들로 분류할 수 있는 시스템으로서,
    처리 및 메모리 회로(PMC: processing and memory circuitry)를 포함하며,
    상기 PMC는,
    복수의 클래스들로 분류된 제1 복수의 제1 결함들, 및 제2 복수의 잠재적 제2 결함들을 수신하고 ― 각각의 제1 결함 및 각각의 잠재적 제2 결함은 복수의 속성들의 각각의 속성에 대한 각각의 값과 연관되고, 상기 제1 복수의 결함들은 제1 속성 공간에 의해 특성화되고, 상기 제2 복수의 결함들은 제2 속성 공간에 의해 특성화됨 ―;
    상기 복수의 속성들로부터 속성들의 서브세트를 선택하기 위해 상기 제1 복수 및 상기 제2 복수의 결함들을 처리하고 ― 상기 처리하는 것은,
    각각의 속성에 대해:
    상기 제1 복수의 결함들로부터의 결함들의 속성 값들의 제1 분포를 결정하는 것;
    상기 제2 복수의 결함들로부터의 결함들의 속성 값들의 제2 분포를 결정하는 것; 그리고
    상기 제1 분포와 상기 제2 분포 간의 차이를 결정하는 것을 포함함 ―;
    상기 제1 분포와 상기 제2 분포 간에 가장 큰 차이를 갖는 속성들로서 상기 속성들의 서브세트를 선택하고;
    상기 제1 복수의 결함들로부터의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제1 밀도 추정 함수를 획득하고, 상기 제2 복수의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제2 밀도 추정 함수를 결정하고;
    상기 제1 밀도 추정 함수와 연관된 제1 임계치, 및 상기 제1 밀도 추정 함수와 상기 제2 밀도 추정 함수의 조합과 연관된 제2 임계치를 획득하고;
    제1 스코어를 획득하기 위해 상기 제2 복수의 결함들 중 각각의 결함에 상기 제1 밀도 추정 함수를 적용하고;
    제2 스코어를 획득하기 위해 상기 제2 복수의 결함들 중 각각의 결함에 상기 제2 밀도 추정 함수를 적용하고;
    상기 제1 스코어와 상기 제2 스코어의 조합된 스코어를 결정하고; 그리고
    상기 제1 스코어가 상기 제1 임계치보다 더 낮거나 상기 조합된 스코어가 상기 제2 임계치를 초과할 때 상기 제2 복수의 결함들로부터의 결함을 잠재적으로 새로운 타입의 결함으로서 표시하도록 구성되는,
    시편의 결함들을 복수의 클래스들로 분류할 수 있는 시스템.
  2. 제1 항에 있어서,
    상기 잠재적으로 새로운 타입의 결함은 상기 제1 스코어가 상기 제1 임계치보다 더 낮을 때 이상치(outlier)로서 표시되는,
    시편의 결함들을 복수의 클래스들로 분류할 수 있는 시스템.
  3. 제1 항에 있어서,
    상기 잠재적으로 새로운 타입의 결함은 상기 제2 스코어가 상기 제2 임계치를 초과할 때 편위(excursion)로서 표시되는,
    시편의 결함들을 복수의 클래스들로 분류할 수 있는 시스템.
  4. 제1 항에 있어서,
    상기 제1 밀도 추정 함수와 상기 제2 밀도 추정 함수의 조합은 상기 제1 밀도 추정 함수에서의 결함의 제1 스코어와 상기 제2 밀도 추정 함수에서의 상기 결함의 제2 스코어 간의 비율인,
    시편의 결함들을 복수의 클래스들로 분류할 수 있는 시스템.
  5. 메모리에 동작 가능하게 연결된 프로세서를 사용하여 복수의 결함들을 분류하는 방법으로서,
    복수의 클래스들로 분류된 제1 복수의 제1 결함들, 및 제2 복수의 잠재적 제2 결함들을 수신하는 단계 ― 각각의 제1 결함 및 각각의 잠재적 제2 결함은 복수의 속성들의 각각의 속성에 대한 각각의 값과 연관되고, 상기 제1 복수의 결함들은 제1 속성 공간에 의해 특성화되고, 상기 제2 복수의 결함들은 제2 속성 공간에 의해 특성화됨 ―;
    상기 복수의 속성들로부터 속성들의 서브세트를 선택하기 위해 상기 프로세서에 의해 상기 제1 복수 및 상기 제2 복수의 결함들을 처리하는 단계 ― 상기 처리하는 단계는,
    각각의 속성에 대해:
    상기 프로세서에 의해 상기 제1 복수의 결함들로부터의 결함들의 속성 값들의 제1 분포를 결정하는 단계;
    상기 프로세서에 의해 상기 제2 복수의 결함들로부터의 결함들의 속성 값들의 제2 분포를 결정하는 단계; 및
    상기 프로세서에 의해 상기 제1 분포와 상기 제2 분포 간의 차이를 결정하는 단계를 포함함 ―;
    상기 프로세서에 의해 상기 제1 분포와 상기 제2 분포 간에 가장 큰 차이를 갖는 속성들로서 상기 속성들의 서브세트를 선택하는 단계;
    상기 프로세서에 의해 상기 제1 복수의 결함들로부터의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제1 밀도 추정 함수를 획득하고, 제2 복수의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제2 밀도 추정 함수를 결정하는 단계;
    상기 프로세서에 의해 상기 제1 밀도 추정 함수와 연관된 제1 임계치, 및 상기 제1 밀도 추정 함수와 상기 제2 밀도 추정 함수의 조합과 연관된 제2 임계치를 획득하는 단계;
    상기 프로세서에 의해 제1 스코어를 획득하기 위해 상기 제2 복수의 결함들 중 각각의 결함에 상기 제1 밀도 추정 함수를 적용하는 단계;
    상기 프로세서에 의해 제2 스코어를 획득하기 위해 상기 제2 복수의 결함들 중 각각의 결함에 상기 제2 밀도 추정 함수를 적용하는 단계;
    상기 프로세서에 의해 상기 제1 스코어와 상기 제2 스코어의 조합된 스코어를 결정하는 단계; 및
    상기 제1 스코어가 상기 제1 임계치보다 더 낮거나 상기 조합된 스코어가 상기 제2 임계치를 초과할 때 상기 제2 복수의 결함들로부터의 결함을 잠재적으로 새로운 타입의 결함으로서 표시하는 단계를 포함하는,
    복수의 결함들을 분류하는 방법.
  6. 제5 항에 있어서,
    상기 잠재적으로 새로운 타입의 결함은 상기 제1 스코어가 상기 제1 임계치보다 더 낮을 때 이상치로서 표시되는,
    복수의 결함들을 분류하는 방법.
  7. 제5 항에 있어서,
    상기 잠재적으로 새로운 타입의 결함은 상기 제2 스코어가 상기 제2 임계치를 초과할 때 편위로서 표시되는,
    복수의 결함들을 분류하는 방법.
  8. 제5 항에 있어서,
    상기 제1 밀도 추정 함수와 상기 제2 밀도 추정 함수의 조합은 상기 제1 밀도 추정 함수에서의 결함의 제1 스코어와 상기 제2 밀도 추정 함수에서의 상기 결함의 제2 스코어 간의 비율인,
    복수의 결함들을 분류하는 방법.
  9. 컴퓨터에 의해 실행될 때, 상기 컴퓨터로 하여금 시편의 결함들을 복수의 클래스들로 자동 분류하는 방법을 수행하게 하는 명령들을 포함하는 비-일시적 컴퓨터 판독 가능 매체로서,
    상기 방법은,
    복수의 클래스들로 분류된 제1 복수의 제1 결함들, 및 제2 복수의 잠재적 제2 결함들을 프로세서에 의해 수신하는 단계 ― 각각의 제1 결함 및 각각의 잠재적 제2 결함은 복수의 속성들의 각각의 속성에 대한 각각의 값과 연관되고, 상기 제1 복수의 결함들은 제1 속성 공간에 의해 특성화되고, 상기 제2 복수의 결함들은 제2 속성 공간에 의해 특성화됨 ―;
    상기 복수의 속성들로부터 속성들의 서브세트를 선택하기 위해 상기 프로세서에 의해 상기 제1 복수 및 상기 제2 복수의 결함들을 처리하는 단계 ― 상기 처리하는 단계는:
    각각의 속성에 대해:
    상기 프로세서에 의해 상기 제1 복수의 결함들로부터의 결함들의 속성 값들의 제1 분포를 결정하는 단계;
    상기 프로세서에 의해 상기 제2 복수의 결함들로부터의 결함들의 속성 값들의 제2 분포를 결정하는 단계; 및
    상기 프로세서에 의해 상기 제1 분포와 상기 제2 분포 간의 차이를 결정하는 단계를 포함함 ―;
    상기 프로세서에 의해 상기 제1 분포와 상기 제2 분포 간에 가장 큰 차이를 갖는 속성들로서 상기 속성들의 서브세트를 선택하는 단계;
    상기 프로세서에 의해 상기 제1 복수의 결함들로부터의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제1 밀도 추정 함수를 획득하고, 상기 제2 복수의 결함들에 대한 속성들의 서브세트에 할당된 값들에 기초하여 제2 밀도 추정 함수를 결정하는 단계;
    상기 프로세서에 의해 상기 제1 밀도 추정 함수와 연관된 제1 임계치, 및 상기 제1 밀도 추정 함수와 상기 제2 밀도 추정 함수의 조합과 연관된 제2 임계치를 획득하는 단계;
    상기 프로세서에 의해 제1 스코어를 획득하기 위해 상기 제2 복수의 결함들 중 각각의 결함에 상기 제1 밀도 추정 함수를 적용하는 단계;
    상기 프로세서에 의해 제2 스코어를 획득하기 위해 상기 제2 복수의 결함들 중 각각의 결함에 상기 제2 밀도 추정 함수를 적용하는 단계;
    상기 프로세서에 의해 상기 제1 스코어와 상기 제2 스코어의 조합된 스코어를 결정하는 단계; 및
    상기 제1 스코어가 상기 제1 임계치보다 더 낮거나 상기 조합된 스코어가 상기 제2 임계치를 초과할 때 상기 제2 복수의 결함들로부터의 결함을 잠재적으로 새로운 타입의 결함으로서 표시하는 단계를 포함하는,
    비-일시적 컴퓨터 판독 가능 매체.
KR1020200004685A 2019-01-16 2020-01-14 반도체 시편에서 결함들을 분류하는 방법 및 그 시스템 KR102367310B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/249,852 US11151706B2 (en) 2019-01-16 2019-01-16 Method of classifying defects in a semiconductor specimen and system thereof
US16/249,852 2019-01-16

Publications (2)

Publication Number Publication Date
KR20200089618A KR20200089618A (ko) 2020-07-27
KR102367310B1 true KR102367310B1 (ko) 2022-02-23

Family

ID=71517983

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200004685A KR102367310B1 (ko) 2019-01-16 2020-01-14 반도체 시편에서 결함들을 분류하는 방법 및 그 시스템

Country Status (5)

Country Link
US (1) US11151706B2 (ko)
JP (1) JP7025459B2 (ko)
KR (1) KR102367310B1 (ko)
CN (1) CN111444934A (ko)
TW (1) TWI772735B (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110278366B (zh) * 2018-03-14 2020-12-01 虹软科技股份有限公司 一种全景图像虚化方法、终端及计算机可读存储介质
TWI843465B (zh) * 2020-03-09 2024-05-21 美商奈米創尼克影像公司 用於缺陷偵測模型的訓練集產生的運算系統、方法和非暫時性電腦可讀媒體

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012247409A (ja) 2010-07-27 2012-12-13 Applied Materials Israel Ltd 最適化された純度による欠陥分類
JP2013224942A (ja) 2012-04-19 2013-10-31 Applied Materials Israel Ltd 自動欠陥分類のための未知欠陥除去の最適化
JP2017537312A (ja) 2014-10-23 2017-12-14 アプライド マテリアルズ インコーポレイテッドApplied Materials,Incorporated 反復式の欠陥フィルタリングプロセス
US20180197714A1 (en) 2017-01-10 2018-07-12 Kla-Tencor Corporation Diagnostic Methods for the Classifiers and the Defects Captured by Optical Tools

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6635872B2 (en) * 2001-04-05 2003-10-21 Applied Materials, Inc. Defect inspection efficiency improvement with in-situ statistical analysis of defect data during inspection
US9367911B2 (en) * 2012-06-13 2016-06-14 Applied Materials Israel, Ltd. Apparatus and method for defect detection including patch-to-patch comparisons
EP3129896B1 (en) * 2014-04-09 2024-02-14 Entrupy Inc. Authenticating physical objects using machine learning from microscopic variations
US9898811B2 (en) * 2015-05-08 2018-02-20 Kla-Tencor Corporation Method and system for defect classification
US9984199B2 (en) * 2015-05-21 2018-05-29 Ge Healthcare Bio-Sciences Corp. Method and system for classification and quantitative analysis of cell types in microscopy images
US10505819B2 (en) * 2015-06-04 2019-12-10 Cisco Technology, Inc. Method and apparatus for computing cell density based rareness for use in anomaly detection
US10147049B2 (en) * 2015-08-31 2018-12-04 International Business Machines Corporation Automatic generation of training data for anomaly detection using other user's data samples
US20170147941A1 (en) * 2015-11-23 2017-05-25 Alexander Bauer Subspace projection of multi-dimensional unsupervised machine learning models
US11037286B2 (en) * 2017-09-28 2021-06-15 Applied Materials Israel Ltd. Method of classifying defects in a semiconductor specimen and system thereof
CN107992898B (zh) * 2017-12-14 2019-07-23 哈尔滨工业大学(威海) 一种电子元件焊点缺陷检测方法
CN108322473B (zh) * 2018-02-12 2020-05-01 京东数字科技控股有限公司 用户行为分析方法与装置
US10921334B2 (en) * 2018-03-22 2021-02-16 Applied Materials Israel Ltd. System, method and computer program product for classifying defects
WO2019183596A1 (en) * 2018-03-23 2019-09-26 Memorial Sloan Kettering Cancer Center Systems and methods for multiple instance learning for classification and localization in biomedical imagining
CN109117956B (zh) * 2018-07-05 2021-08-24 浙江大学 一种最佳特征子集的确定方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012247409A (ja) 2010-07-27 2012-12-13 Applied Materials Israel Ltd 最適化された純度による欠陥分類
JP2013224942A (ja) 2012-04-19 2013-10-31 Applied Materials Israel Ltd 自動欠陥分類のための未知欠陥除去の最適化
JP2017537312A (ja) 2014-10-23 2017-12-14 アプライド マテリアルズ インコーポレイテッドApplied Materials,Incorporated 反復式の欠陥フィルタリングプロセス
US20180197714A1 (en) 2017-01-10 2018-07-12 Kla-Tencor Corporation Diagnostic Methods for the Classifiers and the Defects Captured by Optical Tools

Also Published As

Publication number Publication date
CN111444934A (zh) 2020-07-24
KR20200089618A (ko) 2020-07-27
TW202043755A (zh) 2020-12-01
JP7025459B2 (ja) 2022-02-24
JP2020113767A (ja) 2020-07-27
US11151706B2 (en) 2021-10-19
US20200226743A1 (en) 2020-07-16
TWI772735B (zh) 2022-08-01

Similar Documents

Publication Publication Date Title
US11526979B2 (en) Method of defect classification and system thereof
JP7286290B2 (ja) 半導体試料の欠陥を分類する方法およびそのシステム
CN109598698B (zh) 用于对多个项进行分类的系统、方法和非暂时性计算机可读取介质
KR102079022B1 (ko) 검사 레시피를 생성하는 방법 및 그 시스템
US11592400B2 (en) System, method and computer program product for object examination
JP7254921B2 (ja) 半導体試料の欠陥の分類
KR20220012217A (ko) 반도체 시편에서의 결함들의 기계 학습 기반 분류
CN114092387A (zh) 生成可用于检查半导体样本的训练数据
US10921334B2 (en) System, method and computer program product for classifying defects
KR102367310B1 (ko) 반도체 시편에서 결함들을 분류하는 방법 및 그 시스템
KR20190098271A (ko) 광학 도구에 의해 캡처되는 결함 및 분류기를 위한 진단 방법
CN113222884B (zh) 检查样本的方法和其系统
US11386539B2 (en) Detecting defects in a semiconductor specimen
US11107207B2 (en) Detecting targeted locations in a semiconductor specimen
CN116091379A (zh) 自动缺陷分类系统及其训练和分类的方法

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant