KR102384568B1 - 반도체 시편의 검사에 사용가능한 훈련 세트의 생성 - Google Patents

반도체 시편의 검사에 사용가능한 훈련 세트의 생성 Download PDF

Info

Publication number
KR102384568B1
KR102384568B1 KR1020210057701A KR20210057701A KR102384568B1 KR 102384568 B1 KR102384568 B1 KR 102384568B1 KR 1020210057701 A KR1020210057701 A KR 1020210057701A KR 20210057701 A KR20210057701 A KR 20210057701A KR 102384568 B1 KR102384568 B1 KR 102384568B1
Authority
KR
South Korea
Prior art keywords
training
patches
batch
original
generating
Prior art date
Application number
KR1020210057701A
Other languages
English (en)
Other versions
KR20220001445A (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 KR20220001445A publication Critical patent/KR20220001445A/ko
Application granted granted Critical
Publication of KR102384568B1 publication Critical patent/KR102384568B1/ko

Links

Images

Classifications

    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/143Segmentation; Edge detection involving probabilistic approaches, e.g. Markov random field [MRF] modelling
    • 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/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • 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/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • 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/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Multimedia (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Quality & Reliability (AREA)
  • Probability & Statistics with Applications (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)
  • Investigating Or Analysing Biological Materials (AREA)
  • Steroid Compounds (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)

Abstract

시편의 검사에 사용가능한 심층 신경망을 훈련시키기 위한 훈련 세트를 생성하는 시스템 및 방법이 제공된다. 방법은: 군의 각각의 주어진 훈련 이미지에 대해: i) 훈련 패치들의 제1 배치를 생성하는 단계 - 제1 배치를 생성하는 단계는, 주어진 훈련 이미지를 제1 복수의 원래의 패치들로 크로핑하는 단계; 및 시편의 물리적 프로세스에 의해 야기되는 변동들을 모의하기 위해 제1 복수의 원래의 패치들 중 적어도 일부를 증강하는 단계를 포함함 -; 및 ii) 훈련 패치들의 제2 배치를 생성하는 단계 - 제2 배치를 생성하는 단계는: 제2 복수의 원래의 패치들을 획득하기 위해, 주어진 훈련 이미지 상의 복수의 제1 위치들을 이동시키는 단계, 및 제2 복수의 증강된 패치들을 생성하기 위해 제2 복수의 원래의 패치들에 대한 증강을 반복하는 단계를 포함함 -; 및 각각의 주어진 훈련 이미지에 대응하는 훈련 패치들의 적어도 제1 제2 배치들을 훈련 세트에 포함시키는 단계를 포함한다.

Description

반도체 시편의 검사에 사용가능한 훈련 세트의 생성{GENERATING A TRAINING SET USABLE FOR EXAMINATION OF A SEMICONDUCTOR SPECIMEN}
본 개시된 주제는 일반적으로, 시편의 검사 분야에 관한 것으로, 더 구체적으로, 시편의 검사를 자동화하는 것에 관한 것이다.
제조된 디바이스들의 극초대규모 집적 회로와 연관된, 높은 밀도 및 성능에 대한 현재의 요구들은 미크론미만 피쳐들, 증가된 트랜지스터 및 회로 속도들, 및 개선된 신뢰성을 필요로 한다. 그러한 요구들은 높은 정밀도 및 균일성으로 디바이스 피쳐들을 형성하는 것을 필요로 하는데, 이는 차례로, 디바이스들이 여전히 반도체 웨이퍼들의 형태로 되어 있는 동안 디바이스들의 자동화된 검사를 포함하는, 제조 프로세스의 주의 깊은 모니터링을 요한다.
본 명세서에서 사용되는 "시편"이라는 용어는 반도체 집적 회로들, 자기 헤드들, 평판 디스플레이들, 및 다른 반도체 제조 물품들을 제조하기 위해 사용되는 임의의 종류의 웨이퍼, 마스크들, 및 다른 구조들, 이들의 조합들 및/또는 부분들을 포함하는 것으로 광범위하게 이해되어야 한다.
본 명세서에서 사용되는 "검사"라는 용어는 임의의 종류의 계측 관련 작동들뿐만 아니라 시편의 제조 동안 시편의 결함들의 검출 및/또는 분류와 관련된 작동들도 포함하는 것으로 광범위하게 이해되어야 한다. 검사는 검사될 시편의 제조 동안 또는 제조 이후에 비파괴적 검사 툴들을 사용함으로써 제공된다. 비제한적인 예로서, 검사 프로세스는, 동일하거나 상이한 검사 툴들을 사용하는, 시편 또는 그의 부분들에 관하여 제공되는 (단일 또는 다수 횟수의 스캔들의) 런타임 스캐닝, 샘플링, 검토, 측정, 분류 및/또는 다른 작동들을 포함할 수 있다. 마찬가지로, 검사는 검사될 시편의 제조 이전에 제공될 수 있고, 예를 들어, 검사 레시피(들)를 생성하는 것 및/또는 다른 설정 작동들을 포함할 수 있다. 구체적으로 달리 언급되지 않는 한, 본 명세서에서 사용되는 "검사"라는 용어 또는 그의 파생어는 검사 영역의 크기 또는 해상도에 관하여 제한되지 않는다는 점을 주목한다. 다양한 비파괴적 검사 툴들은, 비제한적인 예로서, 주사 전자 현미경들, 원자간력 현미경들, 광학 검사 툴들 등을 포함한다.
비제한적인 예로서, 런타임 검사는 2단계 절차, 예를 들어, 시편의 검사 및 이어서, 잠재적 결함들의 샘플링된 위치들의 검토를 채용할 수 있다. 제1 단계 동안, 시편의 표면은 고속 및 비교적 저해상도로 검사된다. 제1 단계에서, 결함의 높은 확률을 갖는, 시편 상의 의심되는 위치들을 보여주기 위해 결함 지도가 생성된다. 제2 단계 동안, 그러한 의심되는 위치들 중 적어도 일부가, 비교적 높은 해상도로 더 철저하게 분석된다. 일부 경우들에서, 양쪽 단계들 모두, 동일한 검사 툴에 의해 구현될 수 있고, 일부 다른 경우들에서는, 이러한 2개의 단계들은 상이한 검사 툴들에 의해 구현된다.
검사 프로세스들은, 시편들 상의 결함들을 검출하고 분류할 뿐만 아니라 계측 관련 작동들을 수행하기 위해, 반도체 제조 동안 다양한 단계들에 사용된다. 검사의 유효성은, 예를 들어, 자동 결함 분류(ADC), 자동 결함 검토(ADR) 등과 같은 프로세스(들)의 자동화에 의해 증가될 수 있다.
본 개시된 주제의 특정 양상들에 따라, 시편의 검사에 사용가능한 심층 신경망(DNN)을 훈련시키기 위한 훈련 세트를 생성하는 방법이 제공되고, 방법은 프로세서 및 메모리 회로(PMC)에 의해 수행되며, 방법은: 각각 시편의 적어도 일부를 나타내는 훈련 이미지들의 군을 획득하는 단계; 군의 각각의 주어진 훈련 이미지에 대해: i) 훈련 패치들의 제1 배치를 생성하는 단계 - 훈련 패치들의 제1 배치를 생성하는 단계는: 주어진 훈련 이미지 상의 복수의 제1 위치들에 따라, 주어진 훈련 이미지를 제1 복수의 원래의 패치들로 크로핑하는 단계; 및 시편의 물리적 프로세스에 의해 야기되는 변동들을 모의하기 위해 제1 복수의 원래의 패치들 중 적어도 일부를 증강하여, 훈련 패치들의 제1 배치를 구성하는 제1 복수의 증강된 패치들을 생성하는 단계를 포함함 -; 및 ii) 훈련 패치들의 제2 배치를 생성하는 단계 - 훈련 패치들의 제2 배치를 생성하는 단계는: 복수의 제1 위치들을 주어진 훈련 이미지 상의 복수의 제2 위치들로 이동시키고, 이로써, 복수의 제2 위치들에 대응하는 제2 복수의 원래의 패치들을 획득하는 단계, 및 제2 복수의 증강된 패치들을 생성하기 위해 제2 복수의 원래의 패치들에 대한 증강을 반복하고, 이로써, 훈련 패치들의 제2 배치를 생성하는 단계를 포함함 -; 및 각각의 주어진 훈련 이미지에 대응하는 훈련 패치들의 적어도 제1 배치 및 제2 배치를 훈련 세트에 포함시키는 단계를 포함한다.
상기 특징들 외에도, 본 개시된 주제의 이 양상에 따른 방법은 아래에 열거된 특징들 (i) 내지 (viii) 중 하나 이상을, 기술적으로 가능한 임의의 원하는 조합 또는 순열로 포함할 수 있다.
(i). 훈련 세트는, 자동화된 결함 검출, 자동화된 결함 검토, 자동화된 결함 분류, 자동화된 세그먼트화, 및 런타임 이미지들에 기초한 자동화된 계측을 포함하는 군으로부터 선택된 적어도 하나의 검사 프로세스에 사용가능한 DNN을 훈련시키는 데 사용될 수 있다.
(ii). 방법은, 완료 기준이 충족될 때까지 훈련 패치들의 제2 배치의 생성을 1회 이상 반복하여, 훈련 패치들의 하나 이상의 배치를 생성하는 단계, 및 하나 이상의 배치를 훈련 세트에 포함시키는 단계를 더 포함할 수 있다.
(iii). 방법은 제1 복수의 원래의 패치들 및/또는 제2 복수의 원래의 패치들을 훈련 세트에 포함시키는 단계를 더 포함할 수 있다.
(iv). 미리 결정된 위치들은 격자에 따를 수 있다.
(v). 이동은 무작위 오프셋을 갖는 무작위 방향에 따라 수행될 수 있다.
(vi). 모의된 변동들은 프로세스 변동 및/또는 그레이 레벨 변동을 포함할 수 있다.
(vii). 방법은, 각각의 훈련 이미지에 대응하는 훈련 패치들의 제1 배치를 DNN의 훈련을 위한 제1 기에 포함시키는 단계, 및 각각의 훈련 이미지에 대응하는 훈련 패치들의 제2 배치를 DNN의 훈련을 위한 제2 기에 포함시키는 단계를 더 포함할 수 있다.
(viii). 훈련 이미지들은 검토 툴로부터 획득된 고해상도 이미지들일 수 있다.
본 개시된 주제의 다른 양상들에 따라, 시편의 검사에 사용가능한 심층 신경망(DNN)을 훈련시키기 위한 훈련 세트를 생성하는 시스템이 제공되고, 시스템은 프로세서 및 메모리 회로(PMC)를 포함하며, PMC는: 각각 시편의 적어도 일부를 나타내는 훈련 이미지들의 군을 획득하도록; 군의 각각의 주어진 훈련 이미지에 대해: i) 훈련 패치들의 제1 배치를 생성하도록 - 훈련 패치들의 제1 배치의 생성은: 주어진 훈련 이미지 상의 복수의 제1 위치들에 따라, 주어진 훈련 이미지를 제1 복수의 원래의 패치들로 크로핑하는 것; 및 시편의 물리적 프로세스에 의해 야기되는 변동들을 모의하기 위해 제1 복수의 원래의 패치들 중 적어도 일부를 증강하여, 훈련 패치들의 제1 배치를 구성하는 제1 복수의 증강된 패치들을 생성하는 것을 포함함 -; ii) 훈련 패치들의 제2 배치를 생성하도록 - 훈련 패치들의 제2 배치의 생성은: 무작위로 복수의 제1 위치들을 주어진 훈련 이미지 상의 복수의 제2 위치들로 이동시키고, 이로써, 복수의 제2 위치들에 대응하는 제2 복수의 원래의 패치들을 획득하는 것, 및 제2 복수의 증강된 패치들을 생성하기 위해 제2 복수의 원래의 패치들에 대한 증강을 반복하고, 이로써, 훈련 패치들의 제2 배치를 생성하는 것을 포함함 -; 각각의 주어진 훈련 이미지에 대응하는 훈련 패치들의 적어도 제1 배치 및 제2 배치를 훈련 세트에 포함시키도록 구성된다.
개시된 주제의 이 양상은 방법과 관련하여 위에서 열거된 특징들 (i) 내지 (viii) 중 하나 이상을, 준용하여, 기술적으로 가능한 임의의 원하는 조합 또는 순열로 포함할 수 있다.
본 개시된 주제의 다른 양상들에 따라, 컴퓨터에 의해 실행될 때 컴퓨터로 하여금, 시편의 검사에 사용가능한 심층 신경망(DNN)을 훈련시키기 위한 훈련 세트를 생성하는 방법을 수행하게 하는 명령어들을 포함하는 비일시적 컴퓨터 판독가능 매체가 제공되고, 방법은: 각각 시편의 적어도 일부를 나타내는 훈련 이미지들의 군을 획득하는 단계; 군의 각각의 주어진 훈련 이미지에 대해: i) 훈련 패치들의 제1 배치를 생성하는 단계 - 훈련 패치들의 제1 배치를 생성하는 단계는: 주어진 훈련 이미지 상의 복수의 제1 위치들에 따라, 주어진 훈련 이미지를 제1 복수의 원래의 패치들로 크로핑하는 단계; 및 시편의 물리적 프로세스에 의해 야기되는 변동들을 모의하기 위해 제1 복수의 원래의 패치들 중 적어도 일부를 증강하여, 훈련 패치들의 제1 배치를 구성하는 제1 복수의 증강된 패치들을 생성하는 단계를 포함함 -; 및 ii) 훈련 패치들의 제2 배치를 생성하는 단계 - 훈련 패치들의 제2 배치를 생성하는 단계는: 복수의 제1 위치들을 주어진 훈련 이미지 상의 복수의 제2 위치들로 이동시키고, 이로써, 복수의 제2 위치들에 대응하는 제2 복수의 원래의 패치들을 획득하는 단계, 및 제2 복수의 증강된 패치들을 생성하기 위해 제2 복수의 원래의 패치들에 대한 증강을 반복하고, 이로써, 훈련 패치들의 제2 배치를 생성하는 단계를 포함함 -; 및 각각의 주어진 훈련 이미지에 대응하는 훈련 패치들의 적어도 제1 배치 및 제2 배치를 훈련 세트에 포함시키는 단계를 포함한다.
개시된 주제의 이 양상은 방법과 관련하여 위에서 열거된 특징들 (i) 내지 (viii) 중 하나 이상을, 준용하여, 기술적으로 가능한 임의의 원하는 조합 또는 순열로 포함할 수 있다.
본 개시내용을 이해하고 본 개시내용이 어떻게 실제로 수행될 수 있는지를 알기 위해, 이제, 첨부 도면을 참조하여 단지 비제한적인 예로서 실시예들이 설명될 것이고, 도면들에서:
도 1은 본 개시된 주제의 특정 실시예들에 따른 검사 시스템의 일반화된 블록도를 예시한다.
도 2는 본 개시된 주제의 특정 실시예들에 따라, 반도체 시편의 검사에 사용가능한 DNN을 훈련시키기 위한 훈련 세트를 생성하는 일반화된 흐름도를 예시한다.
도 3은 본 개시된 주제의 특정 실시예들에 따라, DNN을 훈련시키기 위한 생성된 훈련 세트를 사용하는 일반화된 흐름도를 예시한다.
도 4는 본 개시된 주제의 특정 실시예들에 따라, FP 이미지의 세그먼트화를 위한, 도 3을 참조하여 위에서 상세히 설명된 기법을 구현하는 예를 예시한다.
도 5는 본 개시된 주제의 특정 실시예들에 따라, 초기 위치들의 이동 후에 획득된 제2 복수의 원래의 패치들의 예를 예시한다.
도 6은 본 개시된 주제의 특정 실시예들에 따른, 원래의 패치 및 증강된 패치의 쌍의 예를 예시한다.
도 7은 본 개시된 주제의 특정 실시예들에 따라 생성된, FP 이미지 및 대응하는 세그먼트화 지도의 예를 예시한다.
이하의 상세한 설명에서, 본 개시내용의 완전한 이해를 제공하기 위해 다수의 특정한 세부 사항들이 열거된다. 그러나, 본 개시된 주제가 이러한 구체적인 세부 사항들 없이 실시될 수 있다는 점을 관련 기술분야의 통상의 기술자는 이해할 것이다. 다른 경우들에서, 잘 알려진 방법들, 절차들, 구성요소들 및 회로들은 본 개시된 주제를 모호하게 하지 않기 위해 상세히 설명되지 않았다.
이하의 논의들로부터 명백한 바와 같이, 구체적으로 달리 언급되지 않는 한, 본 명세서 전반에 걸쳐 "생성", "훈련", "획득", "크로핑(cropping)", "증강(augmenting)", "이동(shifting)", "반복", "포함" 등과 같은 용어들을 활용하는 논의들이, 데이터 - 상기 데이터는 물리적으로, 예컨대, 전자, 양들로 표현되고/거나 상기 데이터는 물리적 대상들을 표현함 - 를 다른 데이터로 조작하고/거나 변환하는, 컴퓨터의 작동(들) 및/또는 프로세스(들)를 지칭한다는 것을 이해한다. "컴퓨터"라는 용어는, 비제한적인 예로서, 본 출원에 개시된 FPEI(제조 프로세스 검사 정보) 시스템 및 그의 각각의 부분들을 포함하는, 데이터 처리 능력들을 갖는 임의의 종류의 하드웨어 기반 전자 디바이스를 포함하는 것으로 광범위하게 이해되어야 한다.
본원에서 사용되는 "비일시적 메모리" 및 "비일시적 저장 매체"라는 용어들은 본 개시된 주제에 적합한 임의의 휘발성 또는 비휘발성 컴퓨터 메모리를 포함하는 것으로 광범위하게 이해되어야 한다.
본 명세서에서 사용되는 "결함"이라는 용어는 시편 상에 또는 시편 내에 형성된 임의의 종류의 이상 또는 바람직하지 않은 피쳐를 포함하는 것으로 광범위하게 이해되어야 한다.
본 명세서에서 사용되는 "설계 데이터"라는 용어는 시편의 계층적 물리적 설계(레이아웃)를 나타내는 임의의 데이터를 포함하는 것으로 광범위하게 이해되어야 한다. 설계 데이터는 각각의 설계자에 의해 제공될 수 있고/거나 물리적 설계로부터(예를 들어, 복잡한 모의, 간단한 기하학적 및 부울 연산 등을 통해) 유도될 수 있다. 설계 데이터는, 비제한적인 예들로서, GDSII 포맷, OASIS 포맷 등과 같은 상이한 포맷들로 제공될 수 있다. 설계 데이터는 벡터 포맷, 그레이스케일 강도 이미지 포맷 또는 다른 방식으로 제시될 수 있다.
구체적으로 달리 언급되지 않는 한, 개별 실시예들의 맥락으로 설명되는 본 개시된 주제의 특정한 특징들이 또한, 조합하여 단일 실시예에 제공될 수 있다는 것이 이해된다. 반대로, 단일 실시예의 맥락으로 설명되는 본 개시된 주제의 다양한 특징들이 또한, 개별적으로 또는 임의의 적합한 하위조합으로 제공될 수 있다. 이하의 상세한 설명에서, 방법들 및 장치의 완전한 이해를 제공하기 위해 다수의 특정한 세부 사항들이 열거된다.
이를 염두에 두고, 본 개시된 주제의 특정 실시예들에 따른 검사 시스템의 기능 블록도를 예시하는 도 1에 주목한다.
도 1에 예시된 검사 시스템(100)은 시편 제조 프로세스의 부분으로서 반도체 시편(예를 들어, 웨이퍼 및/또는 그의 부분들)의 검사를 위해 사용될 수 있다. 예시된 검사 시스템(100)은 시편 제조 동안 획득된 이미지들(이하에서 제조 프로세스(FP) 이미지들로 지칭됨)을 사용하여 계측 관련 정보 및/또는 결함 관련 정보를 자동적으로 결정할 수 있는 컴퓨터 기반 시스템(101)을 포함한다. 시스템(101)은 이하에서 FPEI(제조 프로세스 검사 정보) 시스템으로 지칭된다. 본 개시된 주제의 특정 실시예들에 따라, FPEI 시스템(101)은, 도 3을 참조하여 아래에 더 상세히 설명될 바와 같이, 시편의 적어도 일부를 나타내는 이미지의 세그먼트화를 수행하도록 구성될 수 있다. 시스템(101)은 하나 이상의 검사 툴(120)에 작동가능하게 연결될 수 있다. 검사 툴들은 FP 이미지들을 캡처하고/거나 캡처된 FP 이미지(들)를 검토하고/거나 캡처된 이미지(들)에 관련된 측정들을 가능하게 하거나 그러한 측정들을 제공하도록 구성된다. FPEI 시스템은 설계 데이터 서버(110) 및 저장 유닛(122)에 더 작동가능하게 연결될 수 있다.
예를 들어, FP 이미지들은, 제조 프로세스 동안 캡처된, 시편(예를 들어, 웨이퍼 또는 그의 부분들)의 이미지들, 다양한 전처리 단계들에 의해 획득된, 캡처된 이미지들의 파생물들(예를 들어, SEM 또는 광학 검사 시스템에 의해 캡처된, 포토마스크 또는 웨이퍼의 부분의 이미지들, ADC에 의해 분류될 결함을 대략 중심으로 하는 SEM 이미지들, ADR에 의해 결함이 국부화될 더 큰 영역들의 SEM 이미지들, 동일한 마스크 위치에 대응하는, 상이한 검사 양상들의 정합된 이미지들, 세그먼트화된 이미지들, 높이 지도 이미지들 등) 및 컴퓨터로 생성된 설계 데이터 기반 이미지들로부터 선택될 수 있다.
본원에서 사용되는 "검사 툴(들)"이라는 용어는, 비제한적인 예로서, 시편 또는 그의 부분들과 관련하여 제공되는, 이미지화, (단일 또는 다수 횟수의 스캔들의) 스캐닝, 샘플링, 검토, 측정, 분류 및/또는 다른 프로세스들을 포함하는 검사 관련 프로세스들에서 사용될 수 있는 임의의 툴들을 포함하는 것으로 광범위하게 이해되어야 한다. 하나 이상의 검사 툴(120)은 하나 이상의 검사 툴 및/또는 하나 이상의 검토 툴을 포함할 수 있다. 일부 경우들에서, 검사 툴들(120) 중 적어도 하나는 잠재적 결함들의 검출을 위해 (전형적으로, 비교적 고속 및/또는 저해상도로) 검사 이미지들을 캡처하기 위해서 시편(예를 들어, 전체 웨이퍼, 전체 다이 또는 그의 부분들)을 스캐닝하도록 구성된 검사 툴일 수 있다. 일부 경우들에서, 검사 툴들(120) 중 적어도 하나는 검토 툴일 수 있고, 이는, 잠재적 결함이 실제로 결함인지를 확인하기 위해, 검사 툴들에 의해 검출된 결함들 중 적어도 일부의 검토 이미지들을 캡처하도록 구성된다. 그러한 검토 툴은 일반적으로, 한 번에 하나씩(전형적으로, 비교적 저속 및/또는 고해상도로) 다이의 단편들을 검사하도록 구성된다. 검사 툴 및 검토 툴은 동일하거나 상이한 위치들에 위치된 상이한 툴들, 또는 2개의 상이한 모드들로 작동되는 단일 툴일 수 있다. 일부 경우들에서, 적어도 하나의 검사 툴이 계측 능력들을 가질 수 있다.
어떠한 방식으로든 본 개시내용의 범위를 제한하지 않고, 검사 툴들(120)은 다양한 유형들의 검사 기계들, 예컨대, 광학 이미지화 기계들, 전자 빔 검사 기계들 등으로서 구현될 수 있다는 점을 또한 주목해야 한다. 일부 경우들에서, 동일한 검사 툴이, 저해상도 이미지 데이터 및 고해상도 이미지 데이터를 제공할 수 있다.
FPEI 시스템(101)은 하드웨어 기반 I/O 인터페이스(126)에 작동가능하게 연결된 프로세서 및 메모리 회로(PMC)(102)를 포함한다. PMC(102)는 도 2를 참조하여 더 상세히 설명되는 바와 같이 FPEI 시스템을 작동시키기 위해 필요한 모든 처리를 제공하도록 구성되고, 프로세서(개별적으로 도시되지 않음) 및 메모리(개별적으로 도시되지 않음)를 포함한다. PMC(102)의 프로세서는 PMC에 포함된 비일시적 컴퓨터 판독가능 메모리 상에 구현된 컴퓨터 판독가능 명령어들에 따라 몇몇 기능 모듈들을 실행하도록 구성될 수 있다. 그러한 기능 모듈들은 이하에서 PMC에 포함되는 것으로 지칭된다. PMC(102)에 포함된 기능 모듈들은 훈련 세트 생성기(104)를 포함한다.
특정 실시예들에 따라, 훈련 세트 생성기(104)는 각각 시편의 적어도 일부를 나타내는 훈련 이미지들의 군을 획득하고, 군의 각각의 주어진 훈련 이미지에 대해, 훈련 패치들의 제1 배치 및 훈련 패치들의 제2 배치를 생성하고, 각각의 주어진 훈련 이미지에 대응하는 훈련 패치들의 적어도 제1 배치 및 제2 배치를 훈련 세트에 포함시키도록 구성될 수 있다. 제1 배치는, 주어진 훈련 이미지 상의 복수의 제1 위치들에 따라, 주어진 훈련 이미지를 제1 복수의 원래의 패치들로 크로핑하고, 시편의 물리적 프로세스에 의해 야기되는 변동들을 모의하기 위해 제1 복수의 원래의 패치들 중 적어도 일부/부분을 증강하여 훈련 패치들의 제1 배치를 구성하는 제1 복수의 증강된 패치들을 생성함으로써 생성될 수 있다. 제2 배치는, 복수의 제1 위치들을 주어진 훈련 이미지 상의 복수의 제2 위치들로 이동시키고, 이로써, 복수의 제2 위치들에 대응하는 제2 복수의 원래의 패치들을 획득하고, 제2 복수의 증강된 패치들을 생성하기 위해 제2 복수의 원래의 패치들에 대해 증강을 반복하고, 이로써, 훈련 패치들의 제2 배치를 생성함으로써 생성될 수 있다. 생성 프로세스의 세부사항들은 도 2를 참조하여 아래에 설명된다.
특정 실시예들에서, 기능 모듈들은 심층 신경망(DNN)(106)을 더 포함할 수 있다. DNN(106)은 제조(FP) 입력 데이터에 기초하여 응용 관련 데이터를 출력하기 위해 심층 신경망(들)을 사용하여 데이터 처리를 가능하게 하도록 구성될 수 있다. 선택적으로, PMC(102)는 입력 데이터를 DNN에 전달하기 전에 전처리를 제공하도록 구성된 DNN-전 모듈(개별적으로 도시되지 않음) 및/또는 DNN에 의해 생성된 후처리 데이터를 제공하도록 구성된 DNN-후 모듈(개별적으로 도시되지 않음)을 더 포함할 수 있다. FPEI 시스템(101), PMC(102) 및 그의 기능 모듈들의 작동은 도 2를 참조하여 더 상세히 설명될 것이다.
DNN(106)은 각각의 DNN 아키텍처에 따라 조직화된 계층들을 포함하는 감독된 또는 감독되지 않은 DNN 모델을 포함할 수 있다. 비제한적인 예로서, DNN의 계층들은 콘볼루션 신경망(CNN) 아키텍처, 순환 신경망 아키텍처, 재귀 신경망들 아키텍처, 생성적 대립 신경망(GAN) 아키텍처 또는 다른 방식에 따라 조직화될 수 있다. 선택적으로, 계층들 중 적어도 일부는 복수의 DNN 부분망들로 조직화될 수 있다. DNN의 각각의 계층은 관련 기술분야에서 차원들, 뉴런들, 또는 노드들로서 전형적으로 지칭되는 다수의 기본 계산 요소들(CE)을 포함할 수 있다.
일반적으로, 주어진 계층의 계산 요소들은 선행 계층 및/또는 후속 계층의 CE들과 연결될 수 있다. 선행 계층의 CE와 후속 계층의 CE 사이의 각각의 연결은 가중 값과 연관된다. 주어진 CE는 각각의 연결들을 통해 이전 계층의 CE들로부터 입력들을 수신할 수 있고, 각각의 주어진 연결은 주어진 연결의 입력에 적용될 수 있는 가중 값과 연관된다. 가중 값들은 연결들의 상대적 강도 및 그에 따른 주어진 CE의 출력에 대한 각각의 입력들의 상대적 영향을 결정할 수 있다. 주어진 CE는 활성화 값(예를 들어, 입력들의 가중 합)을 계산하고, 계산된 활성화에 활성화 함수를 적용함으로써 출력을 더 유도하도록 구성될 수 있다. 활성화 함수는, 예를 들어, 항등 함수, 결정 함수(예를 들어, 선형, 시그모이드, 임계 등), 확률적 함수, 또는 다른 적합한 함수일 수 있다. 주어진 CE로부터의 출력은 각각의 연결들을 통해 후속 계층의 CE들로 송신될 수 있다. 마찬가지로, 상기와 같이, CE의 출력에서의 각각의 연결은, 후속 계층의 CE의 입력으로서 수신되기 전에 CE의 출력에 적용될 수 있는 가중 값과 연관될 수 있다. 가중 값들에 추가로, 연결들 및 CE들과 연관된 임계 값들(극한 함수들을 포함함)이 존재할 수 있다.
심층 신경망의 가중 및/또는 임계 값들은 훈련 전에 초기에 선택될 수 있고, 훈련된 DNN에서 가중 및/또는 임계 값들의 최적 세트를 달성하기 위해, 훈련 동안 더 반복적으로 조정 또는 수정될 수 있다. 각각의 반복 후에, 데이터의 각각의 훈련 세트와 연관된 목표 출력과 DNN 모듈에 의해 생성된 실제 출력 사이의 차이가 결정될 수 있다. 차이는 오차 값으로 지칭될 수 있다. 훈련은, 오차 값을 나타내는 손실/비용 함수가, 미리 결정된 값 미만일 때 또는 반복들 사이의 성능에서의 제한된 변화가 달성될 때 완료되는 것으로 결정될 수 있다. 선택적으로, DNN 부분망들 중 적어도 일부는 (존재한다면) 전체 DNN을 훈련시키기 전에 개별적으로 훈련될 수 있다.
심층 신경망의 가중치들/임계치들을 조정하기 위해 사용되는 DNN 입력 데이터의 세트는 이하에서 훈련 세트로서 지칭된다.
본 개시된 주제의 교시들은 DNN(106)의 특정 아키텍처에 의해 제한되지 않는다는 점을 주목한다.
DNN(106)에 대해 대안적으로 또는 추가적으로, PMC(102)는 하나 이상의 검사 모듈, 예컨대, 예를 들어, 세그먼트화 모듈 및/또는 결함 검출 모듈 및/또는 자동 결함 검토 모듈(ADR) 및/또는 자동 결함 분류 모듈(ADC) 및/또는 계측 관련 모듈 및/또는 반도체 시편의 검사에 사용가능한 다른 검사 모듈들을 포함할 수 있다. 선택적으로, 하나 이상의 검사 모듈은 DNN(106)을 포함할 수 있다. 선택적으로, DNN(106)은 검사 모듈들 간에 공유될 수 있거나, 대안적으로, 하나 이상의 검사 모듈 각각이 그 자신의 DNN(106)을 포함할 수 있다.
특정 실시예들에 따라, 시스템(101)은 저장 유닛(122)을 포함할 수 있다. 저장 유닛(122)은 운영 시스템(101)에 필요한 임의의 데이터, 예를 들어, 시스템(101)의 입력 및 출력에 관련된 데이터뿐만 아니라, 시스템(101)에 의해 생성된 중간 처리 결과들을 저장하도록 구성될 수 있다. 예로서, 저장 유닛(122)은 검사 툴(120)에 의해 생성된 이미지들 및/또는 그의 파생물들을 저장하도록 구성될 수 있다. 이에 따라, 하나 이상의 이미지는 저장 유닛(122)으로부터 검색되어 추가의 처리를 위해 PMC(102)에 제공될 수 있다.
일부 실시예들에서, 시스템(101)은 시스템(101)과 관련된 사용자 특정 입력들을 가능하게 하도록 구성된 컴퓨터 기반 그래픽 사용자 인터페이스(GUI)(124)를 선택적으로 포함할 수 있다. 예를 들어, 사용자는, 시편의 이미지 데이터를 포함하는, 시편의 시각적 표현을 (예를 들어, GUI(124)의 일부를 형성하는 디스플레이에 의해) 제시받을 수 있다. 사용자는 특정 작동 파라미터들을 정의하는 옵션들을 GUI를 통해 제공받을 수 있다. 사용자는 또한, GUI 상에서 작동 결과들을 볼 수 있다.
도 2를 참조하여 더 상세히 설명될 바와 같이, 시스템(101)은 I/O 인터페이스(126)를 통해 FP 입력 데이터를 수신하도록 구성된다. FP 입력 데이터는, 검사 툴들(120)에 의해 생성된 데이터(및/또는 그의 파생물들 및/또는 그와 연관된 메타데이터) 및/또는 하나 이상의 데이터 저장소에 저장된 데이터를 포함할 수 있다. FP 입력 데이터는 이미지 데이터(예를 들어, 캡처된 이미지들, 캡처된 이미지들로부터 유도된 이미지들, 모의된 이미지들, 합성 이미지들 등) 및 연관된 수치 데이터(예를 들어, 메타데이터, 수작업 속성들 등)를 포함할 수 있다는 점을 주목한다. 이미지 데이터는 시편의 관심 있는 층 및/또는 하나 이상의 다른 층에 관련된 데이터를 포함할 수 있다는 점을 더 주목한다. 본 개시내용의 일부 실시예들에서, 훈련 목적들을 위해, FP 입력 데이터는 DNN을 훈련시키기 위해 사용가능한 훈련 세트를 준비하는 목적을 위해 훈련 이미지들의 군을 포함할 수 있다. 이미지 데이터는 그와 연관된 메타데이터(예를 들어, 픽셀 크기, 결함 유형의 텍스트 설명, 이미지 캡처 프로세스의 파라미터들 등)와 함께 수신 및 처리될 수 있다는 점을 주목한다.
FPEI 시스템은 수신된 FP 입력 데이터의 적어도 일부를 처리하고 I/O 인터페이스(126)를 통해 결과들(또는 그의 부분)을 저장 유닛(122), 및/또는 검사 툴(들)(120), 및/또는 (결과들을 표시하기 위한) GUI(124) 및/또는 외부 시스템들(예를 들어, FAB의 수율 관리 시스템(YMS))에 전송하도록 더 구성된다.
관련 기술분야의 통상의 기술자는, 본 개시된 주제의 교시들이, 도 1에 예시된 시스템에 의해 제한되지 않고; 동등하고/거나 수정된 기능이, 다른 방식으로 통합되거나 분할될 수 있으며 하드웨어 및/또는 펌웨어와 소프트웨어의 임의의 적절한 조합으로 구현될 수 있다는 것을 용이하게 이해할 것이다.
도 1에 예시된 검사 시스템은, 도 1에 도시된 전술한 기능 모듈들이 몇몇 로컬 및/또는 원격 디바이스들에 분산될 수 있고 통신망을 통해 연결될 수 있는 분산 컴퓨팅 환경으로 구현될 수 있다는 점을 주목한다. 다른 실시예들에서, 검사 툴들(120), 저장 유닛(122) 및/또는 GUI(124) 중 적어도 일부는 검사 시스템(100)의 외부에 있을 수 있고 I/O 인터페이스(126)를 통해 시스템(101)과 데이터 통신하여 작동할 수 있다는 점을 더 주목한다. 시스템(101)은 검사 툴들과 함께 사용될 독립형 컴퓨터(들)로서 구현될 수 있다. 대안적으로, 시스템(101)의 각각의 기능들은, 적어도 부분적으로, 하나 이상의 검사 툴(120)과 통합될 수 있고, 이로써, 검사 관련 프로세스들에서 검사 툴들(120)의 기능들을 용이하게 하고 향상시킨다.
단지 예시의 목적을 위해, 다음의 설명은 반도체 시편의 검사에 사용가능한 DNN을 훈련시키기 위한 훈련 세트를 생성하기 위해 제공된다. 관련 기술분야의 통상의 기술자는, 본 개시된 주제의 교시들이, 다양한 유형들의 기계 학습 모델들, 예컨대, 예를 들어, 서포트 벡터 머신(SVM) 등에, 그리고, 다양한 검사들, 예컨대, 예를 들어, 세그먼트화, 결함 검출, ADR, ADC, 자동화된 내비게이션 모듈, 자동화된 세그먼트화 모듈, 계측 관련 모듈 등에 적용가능하다는 것을 용이하게 이해할 것이다.
도 2를 참조하면, 본 개시된 주제의 특정 실시예들에 따라, 반도체 시편의 검사에 사용가능한 DNN을 훈련시키기 위한 훈련 세트를 생성하는 일반화된 흐름도가 예시된다.
각각 시편의 적어도 일부를 나타내는 훈련 이미지들의 군이 (예를 들어, I/O 인터페이스(126)를 통해 훈련 세트 생성기(104)에 의해) 획득될 수 있다(210).
응용에 따라, 훈련 이미지는 시편의 제조 프로세스에서 획득된 시편의 "실제" 이미지일 수 있다. 비제한적인 예로서, 이미지는 하나 이상의 저해상도 검사 기계(예를 들어, 광학 검사 시스템, 저해상도 SEM 등)를 사용하여 시편을 검사함으로써 획득될 수 있다. 대안적으로 또는 추가적으로, 이미지는 고해상도 기계를 사용하여 시편을 검사함으로써(예를 들어, 검토를 위해 선택된 잠재적 결함 위치들의 하위세트는 주사 전자 현미경(SEM) 또는 원자간력 현미경(AFM) 등에 의해 검토될 수 있다) 획득될 수 있다.
일부 실시예들에서, 훈련 이미지와 연관된 실측 정보 데이터가 또한 획득될 수 있다. 예로서, 실측 정보 데이터는, 응용 특정 정보, 예컨대, 예를 들어, 결함 크기, 배향, 배경 세그먼트들 등을 나타내는 이미지들 및/또는 라벨들을 포함할 수 있다. 실측 정보 데이터는 합성적으로 생성되거나(예를 들어, CAD 기반 이미지들), 실제로 생성되거나(예를 들어, 캡처된 이미지들), 기계 학습 주석에 의해 생성되거나(예를 들어, 특징 추출 및 분석에 기초한 라벨들), 인간 주석에 의해 생성되거나, 이들의 조합 등일 수 있다. 일 실시예에서, 본 개시된 주제에 따라 생성된 바와 같은 훈련 세트는 FP 이미지들의 세그먼트화에 사용가능한 DNN을 훈련시키는 데 사용될 수 있고, 그와 연관된 실측 정보 데이터는 훈련 이미지들 상의 세그먼트들을 나타내는 라벨들이다. 예를 들어, 세그먼트들은 FP 이미지들에 제시된 바와 같은 구조적 요소들을 나타낼 수 있다.
심층 신경망을 훈련시키기 위해, 큰 훈련 데이터베이스가 DNN의 충분한 훈련에 일반적으로 필요하다는 것이 인식된다. 그러나, 반도체 시편의 검사에 사용가능한 DNN을 훈련시키는 경우들에서, 충분한 훈련 데이터를 획득하는 것은 난제로 알려져 있는데, 이는 이용가능한 훈련 이미지들이 매우 제한되고 때로는 획득하기 어렵기 때문이다. 특히, 감독된 학습에서, 필요에 따라 충분한 양의 완전히 주석이 달린 이미지 데이터를 취득하는 것은 매우 어렵다. 그러므로, 본 개시된 주제의 특정 실시예들에 따라, 제한된 양의 이미지 데이터에 기초하여 훈련 세트를 생성하는 방법이 제안된다.
구체적으로, 군의 각각의 주어진 훈련 이미지에 대해, 이미지 패치들의 복수의 배치들이 생성될 수 있다. 예로서, 훈련 패치들의 제1 배치는: 훈련 이미지 상의 복수의 제1 위치들에 따라, 주어진 훈련 이미지를 제1 복수의 원래의 패치들로 크로핑하는 단계(222); 및 시편의 물리적 프로세스에 의해 야기되는 하나 이상의 변동을 모의하기 위해 제1 복수의 원래의 패치들을 증강하여(224) 제1 복수의 증강된 패치들을 생성하는 단계를 포함하여, (예를 들어, 훈련 세트 생성기(104)에 의해) 생성될 수 있다(220). 제1 복수의 증강된 패치들은 훈련 패치들의 제1 배치를 구성한다. 특정 실시예들에 따라, 물리적 프로세스는 시편의 제조 프로세스 및/또는 검사 프로세스를 지칭할 수 있다.
일부 실시예에서, 훈련 패치들의 제1 배치를 생성하기 위해, 복수의 제1 위치들은 격자에 따라 한정된 복수의 미리 결정된 위치들일 수 있고, 주어진 훈련 이미지는 미리 결정된 제1 위치들에 따라 제1 복수의 원래의 패치들로 크로핑될 수 있다. 예로서, 격자의 고정 지점들(예를 들어, 격자 내의 교차 지점들)은 미리 결정된 제1 위치들로서 역할을 할 수 있고, 패치들은 이러한 고정 지점들을 중심으로 하여, 미리 정의된 크기/치수 및 스텝 크기(즉, 이웃 패치들 사이의 중첩의 양)로 생성될 수 있다. 예를 들어, 훈련 이미지는 1000*1000 픽셀들의 차원일 수 있고, 훈련 패치들은 100*100, 150*150 또는 200*200 픽셀들 등의 크기로 크로핑될 수 있으며, 패치 절반의 스텝 크기가 이웃 패치들 간에 중첩된다.
일부 실시예들에서, 복수의 제1 위치들은 복수의 미리 결정된 위치들, 예컨대, 고정 지점들의 위치들을 이동시킴으로써 획득될 수 있다. 예로서, 이동은 확률 함수에 따라 각각의 미리 결정된 위치에 대해 무작위로 수행될 수 있다. 예를 들어, 격자의 제1 고정 지점의 경우, 이를 (예를 들어, 무작위 오프셋을 갖는 무작위 방향으로) 이동시키는 것이 확률 함수에 따라 결정될 수 있는 반면, 제2 고정 지점의 경우, 이를 전혀 이동시키지 않는 것이 확률 함수에 따라 결정될 수 있다. 이동되는 것으로 결정되는 고정 지점들은 격자의 교차점들 주위에 무작위로 이동될 수 있고(예를 들어, 각각의 고정 지점은 무작위 오프셋을 갖는 무작위 방향으로 이동됨), 이동된 위치들은 이미지 패치들을 크로핑하기 위한 제1 위치들로서 사용된다. 다른 예로서, 이동은 각각의 미리 결정된 위치를 각각 어떻게 이동할지를 정의하는 미리 정의된 목록에 따라 수행될 수 있다. 패치들의 위치들을 이동시킴으로써, 생성된 패치들의 적용범위의 다양성이 증가될 수 있다. 본원에서 사용되는 확률 함수라는 용어는 이벤트의 상이한 가능한 결과들의 발생의 확률들을 제공하는 확률 분포 함수를 지칭할 수 있다. 예로서, 확률 함수는 균일한 확률 분포 함수일 수 있다.
그 다음, 원래의 패치들은 시편의 물리적 프로세스에 의해 야기되는 가능한 변동들을 모의할 목적을 위해 증강될 수 있다. 이는, 훈련 이미지들의 양이 제한되고, 따라서 훈련 동안 제조 프로세스 및/또는 검사 프로세스의 일반적인 물리적 현상 전부를 직면할 수 있는 것은 아니기 때문이다. 패치들에 대한 증강을 수행하고, 증강된 패치들을 훈련 세트에 포함시킴으로써, 훈련 세트의 다양성이 크게 증가될 수 있고, 이러한 변동들에 대한 훈련의 강건성이 향상될 수 있다.
일반적으로 말하면, 이미지의 증강은: 노이즈의 추가, 블러링, 기하형상 변환(예를 들어, 회전, 늘림, 상이한 각도들의 모의, 크로핑, 스케일링 등) 톤 맵핑, 이미지의 하나 이상의 픽셀의 벡터 정보의 변화(예를 들어, 취득의 채널들 또는 관점들의 추가 및/또는 수정 등) 등을 포함하는 다양한 이미지 처리 기법들에 의해 제공될 수 있다.
일부 실시예들에서, 증강 기법들은 응용 독립적 방식으로 훈련 이미지들에 적용될 수 있다. 예로서, 세그먼트화 관련 응용들, 및/또는 결함 검출 관련 응용들, 및/또는 분류 관련 응용들의 경우, 모의된 변동들은 그레이 레벨 변동 및/또는 프로세스 변동(PV) 등을 포함할 수 있고, 다음의 증강 프로세스들 중 하나 이상이 그러한 변동들의 효과들을 모의하기 위해 적용될 수 있다.
특정 실시예들에 따라, 그레이 레벨 변동들은 시편의 검사 프로세스의 물리적 효과들에 의해 야기될 수 있다. 예로서, 상이한 검사 툴들에 의해 촬영된 이미지들의 그레이 레벨들은, 심지어, 동일한 해상도로 동일한 웨이퍼의 동일한 위치에서 캡처된 경우에도, 인자만큼 상이할 수 있다. 이는, 예를 들어, 검사 툴들/검출기들 등의 상이한 물리적 구성들 및 교정들에 의해 야기될 수 있다. 추가적으로, 웨이퍼의 상이한 위치들로부터 촬영된 이미지들의 그레이 레벨이 또한 변할 수 있다. 따라서, FP 이미지들을 캡처하는 툴 이외의 툴에 의해 캡처된 이미지들에 기초하여 그리고/또는 웨이퍼의 상이한 위치들에 대해 캡처된 이미지들에 기초하여 DNN을 훈련시키는 것은 DNN의 일반화 능력들을 악화시킬 수 있다.
그러므로, 이미지 패치들에서의 그레이 레벨 강도들은 그러한 효과를 모의하기 위해 조정될 수 있다. 예로서, 각각의 이미지 패치에 대해, 이미지 패치의 픽셀 값 히스토그램이 생성될 수 있으며, 그레이 레벨 바이어스 숫자는 바이어스 범위 내에서 무작위로 선택될 수 있고 히스토그램에 적용될 수 있다. 예를 들어, 바이어스 범위는 이미지의 픽셀 값 범위(또는 그의 일부)의 미리 정의된 백분율로서 결정될 수 있고, 각각의 이미지 패치에 대해 적용될 바이어스 숫자의 선택은 범위 내의 균일한 분포에 따를 수 있다. 그러한 증강된 이미지들을 포함하는 훈련 세트는 툴 변동들에 대한 증가된 강건성을 가능하게 할 것이고, 다수의 툴들로부터 훈련 데이터를 수집할 필요성을 감소시킬 것이다.
다른 예로서, 이미지 패치의 그레이 레벨 강도들은 또한, 이미지 패치의 명암을 변화시킴으로써 조정될 수 있다. 예를 들어, 이미지 패치의 픽셀 값 히스토그램은 더 양호한 명암을 얻기 위해 늘려질 수 있다.
추가의 실시예들에 따라, 그레이 레벨 변동들은 색상 변동(CV)을 포함할 수 있다. 색상 변동은 (예를 들어, 층 두께 변동들로 인해) 단일 이미지 내에서 또는 결함과 기준 이미지 사이에서 발생할 수 있다. CV는 상이한 툴 교정으로부터 유래할 수 있고, 이미지의 GL의 국부적 변화를 특징으로 할 수 있다. 그러한 효과를 해결하기 위해, 원래의 이미지 패치는 상이한 원하는 레벨들의 추가된 변동들을 갖도록 증강될 수 있다. 따라서, 그러한 증강된 이미지들을 포함하는 훈련 세트는 FP 이미지들에서의 색상 변동들에 대한 증가된 강건성을 가능하게 할 것이다.
특정 실시예들에 따르면, 프로세스 변동(PV)의 효과들에 의해 야기될 수 있는 패턴 변동들이, 상이한 이미지들에서 나타날 수 있다. 프로세스 변동은 시편의 제조 프로세스의 변화에 의해 야기되는 변동들을 지칭할 수 있다. 예로서, 제조 프로세스는 상이한 검사 이미지들 간의 특정 구조들/패턴들의 약간의 이동/스케일링/왜곡을 야기할 수 있고 이는 이미지들의 패턴 변동을 초래한다. 다른 예로서, 제조 프로세스는 시편의 두께 변동을 야기할 수 있고, 이는 반사율에 영향을 미치며, 차례로, 결과적인 검사 이미지의 그레이 레벨에 영향을 미친다. 예를 들어, 다이-대-다이 물질 두께 변동은 다이들 중 2개의 다이들 사이에 상이한 반사율을 초래할 수 있고, 이는 2개의 다이들의 이미지들에 대한 상이한 배경 그레이 레벨 값으로 이어진다.
그러한 효과를 해결하기 위해, 일부 경우들에서, 증강 기법들, 예컨대, 예를 들어, 스케일링, 플립 등이 패턴 변동들을 조정하기 위해 이미지 패치 또는 그의 적어도 일부에 적용될 수 있다.
일부 경우들에서, 물리적 프로세스의 다른 가능한 효과들은: 잡음(예를 들어, 각각의 그레이 레벨 강도는 상이한 스케일의 잡음 강도를 포함함), 초점 오차들(예를 들어, 일부 패턴들은 다른 패턴들보다 초점 오차들에 더 민감함), 대전 효과들(FP와 기준 이미지들 사이의 인공적인 차이들을 생성할 수 있고 검사 프로세스들에 실질적으로 영향을 미칠 수 있음), 사분할 검출기들(이는 차선일 수 있고, 상이한 관점들 내의 중첩을 갖는 이미지들을 초래함)의 교정 등을 포함할 수 있지만, 이에 제한되지 않는다.
이제 도 6을 참조하면, 본 개시된 주제의 특정 실시예들에 따른, 원래의 패치 및 증강된 패치의 쌍의 예가 예시된다. 도시된 바와 같이, 원래의 패치(602)는, 예를 들어, PV, 그레이 레벨 분산 및/또는 CV 등에 의해 야기되는 분산들을 해결하기 위해 위에서 설명된 바와 같은 증강 프로세스들 중 하나 이상을 거쳤고, 대응하는 증강된 패치(604)가 생성된다. 예로서, 현재의 예의 증강된 패치(604)는 PV, 스케일링 및 그레이 레벨 변동에 의해 야기되는 효과들을 모의하도록 합성되었다. 예를 들어, 증강된 패치(604)에서의 다각형들의 윤곽, 다각형들의 크기 및 전체 그레이 레벨 강도들이, 원래의 패치(602)와 비교하여 조정되었다는 것을 알 수 있다.
본 개시된 주제의 특정 실시예들에 따라, 제1 복수의 원래의 패치들 중 적어도 일부/부분이 증강될 수 있다. 예로서, 제1 복수의 원래의 패치들의 각각의 원래의 패치에 대해, 예를 들어, 확률 함수에 따라 원래의 패치를 증강할지 여부가 무작위로 결정될 수 있다. 따라서, 확률 함수를 사용함으로써, 패치들 중 적어도 일부는 증강되도록 결정될 것이다. 제1 복수의 원래의 패치들 중 적어도 일부의 각각의 이미지 패치에 대해, 위에서 설명된 간섭 변동들/효과들 중 하나 이상은 대응하는 이미지 증강 기법들을 사용함으로써 모의될 수 있다. 일부 경우들에서, 제1 복수의 원래의 패치들 중 적어도 일부는, 확률 함수에 따라 결정되는 각각의 증강 강도들로 증강된다. 다른 예로서, 각각의 패치를 증강할지 여부의 결정, 및/또는 적용할 특정 증강 기법들 및/또는 적용할 특정 증강 강도들은 각각의 미리 결정된 목록들에 따라 결정될 수 있다. 예를 들어, 미리 결정된 결정 목록은 어느 원래의 패치들을 증강할지를 포함할 수 있고, 증강 목록은 각각의 패치에 대해 어느 증강 기법들 및/또는 특정 강도들을 적용할지를 포함할 수 있다.
(위에 예시된 것을 포함하는) 증강 프로세스들의 특정 실시예들의 장점들 중에는, 훈련된 DNN에 대한 간섭 효과들의 영향을 감소시키고, 따라서, 상이한 응용들, 예컨대, 예를 들어, 세그먼트화, ADC, ADR, 매칭, 계측 및 다른 검사 작업들에 대해 훈련된 DNN을 구현하는 것의 강건성 및 유효성을 개선하는 것이 있다.
전술된 바와 같이, 증강 기법들은 응용 독립적 방식으로 훈련 이미지들에 적용될 수 있다. 예로서, 결함 검출 관련 응용의 경우, 증강 기법들, 예컨대, 예를 들어, 노이즈의 추가, 블러링, 톤 맵핑, 합성 결함들의 주입, 결함 톤들의 수정 등이, 위에서 설명된 기법들 대신에 또는 그에 추가하여 적용될 수 있다. 분류 관련 응용의 경우, 증강 기법들, 예컨대, 예를 들어, 기하형상 변환, 톤 맵핑, 합성 결함들의 주입, 결함 톤들의 수정 등이, 위에서 설명된 기법들 대신에 또는 그에 추가하여 적용될 수 있다.
대안적으로 또는 추가적으로, 이미지는 합성 데이터(예를 들어, 결함 관련 데이터, 모의된 커넥터들 또는 다른 객체들, 다른 이미지들로부터의 주입들 등)를 사용하여 증강될 수 있다. 비-제한적인 예로서, 알려진 결함 유형들의 이용가능한 이미지들(및/또는 파라미터들)은 이미지에 새로운 결함을 배치하고, 이미지의 기존 결함의 결함도를 증폭하고, 이미지로부터 결함을 제거하고, 이미지의 결함을 숨기는(검출하기 더 어렵게 만드는) 등에 사용될 수 있다.
또 대안적으로 또는 추가적으로, 이미지는 세그먼트화, 결함 윤곽 추출 및/또는 높이 지도 계산을 사용하여 증강될 수 있고/거나, 대응하는 CAD 기반 이미지와 함께 처리함으로써 획득될 수 있다.
블록(220)을 참조하여 위에서 설명된 바와 같이 훈련 패치들의 제1 배치가 생성된 후에, 훈련 패치들의 제2 배치는, 군의 각각의 주어진 훈련 이미지에 대해, 복수의 제1 위치들을 주어진 훈련 이미지 상의 복수의 제2 위치들로 이동시키고(232), 이로써, 복수의 제2 위치들에 대응하는 제2 복수의 원래의 패치들을 획득하고, 제2 복수의 증강된 패치들을 생성하기 위해 제2 복수의 원래의 패치들에 대한 증강을 반복하고(234), 이로써, 훈련 패치들의 제2 배치를 생성하는 것을 포함하여, (예를 들어, 훈련 세트 생성기(104)에 의해) 생성될 수 있다(230). 일단 훈련 패치들의 제1 및 제2 배치들이 군의 각각의 훈련 이미지에 대해 생성되면, 모든 훈련 이미지들에 대한 배치들 양쪽 모두는 DNN을 훈련시키기 위해 사용될 훈련 세트에 포함될 수 있다.
특정 실시예들에 따라, 위에서 설명된 이동 및 증강은 훈련 패치들의 하나 이상의 추가적인 배치를 생성하기 위해 1회 이상 반복될 수 있다. 추가적인 배치들이 또한, 훈련 세트에 포함될 수 있다. 일부 경우들에서, 제1 및 제2 복수의 원래의 패치들이 또한, 훈련 세트에 포함될 수 있다.
일부 실시예들에서, 이동은 패치들의 제1 배치를 생성하는 것과 관련하여 위에서 설명된 것과 유사한 방식으로 각각의 제1 위치에 대해 각각 수행될 수 있다. 각각의 제1 위치는 확률 함수에 따라 이동될지 여부가 무작위로 결정될 수 있다. 예로서, 각각의 초기 위치들(또는 그의 적어도 일부)은 이미지 상의 제2 복수의 위치들을 얻기 위해, 무작위 오프셋을 갖는 무작위 방향으로 이동될 수 있다. 이미지는 제2 복수의 원래의 패치들을 획득하기 위해 제2 복수의 위치들에 따라 크로핑될 수 있다. 이제 도 5를 참조하면, 본 개시된 주제의 특정 실시예들에 따라, 초기 위치들의 이동 후에 획득된 제2 복수의 원래의 패치들의 예가 예시된다. 도시된 바와 같이, 패치들은 도면에서 점선 사각형들로 표시된 바와 같은 상이한 위치들(502)에 따라 크로핑될 수 있다. 이 위치들은 대응하는 초기 위치들로부터 무작위 이동 후에 획득된다. 초기 위치들이, 미리 정의된 격자에 따라 결정된다고 가정하면, 알 수 있는 바와 같이, 각각의 현재 위치(502)는 대응하는 초기 위치로부터 각각의 무작위화에 의한 것이다(예를 들어, 상이한 오프셋들을 갖는 상이한 방향들로 이동됨). 일부 경우들에서, 예를 들어, 오프셋이 0으로 결정된 경우, 위치들 중 일부는 전혀 이동되지 않는 것이 가능하다.
일부 실시예들에서, 훈련 세트를 생성하는 단계는 증강된 훈련 패치들에 관한 증강된 실측 정보 데이터를 획득하는 단계 및 증강된 훈련 패치들과 증강된 실측 정보 데이터를 연관시키는 단계를 더 포함할 수 있다. 증강된 실측 정보 데이터와 연관된 증강된 훈련 패치들의 배치들을 포함하는 생성된 훈련 세트는 PMC(102)의 메모리에 저장될 수 있다. 생성된 증강된 이미지들은 실측 정보 데이터와 연관된 훈련 세트에 추가될 수 있다. 일부 경우들에서, 원래의 및 증강된 이미지들은 동일한 실측 정보 데이터와 연관될 수 있다. 대안적으로, 증강된 이미지들은 증강된 실측 정보 데이터(예를 들어, 훈련 세트의 증강된 부류 분포)와 연관될 수 있다.
마찬가지로, 원래의 훈련 이미지들 및 훈련 패치들과 연관된 실측 정보 데이터의 경우, 컴퓨터 시스템의 보조로 또는 컴퓨터 시스템의 보조 없이, 증강된 이미지 패치들을 분석하는 사람에 의해, 증강된 실측 정보 데이터가 제공될 수 있다. 대안적으로 또는 추가적으로, 증강된 훈련 패치들을 유도할 때, 증강된 실측 정보 데이터는 각각의 원래의 패치들에 제공된 증강에 대응하는 원래의 실측 정보 데이터를 처리함으로써 FPEI 시스템에 의해 생성될 수 있다.
본 개시된 주제의 특정 실시예들에 따라, 생성된 훈련 세트의 훈련 이미지 패치들의 개수는 "실제" 훈련 샘플들의 개수보다 실질적으로 더 클 수 있다. 예를 들어, 훈련 이미지들의 군은 수십 개의 훈련 샘플들을 포함할 수 있는 반면에, 본 개시된 주제의 특정 실시예들에 따라 생성된 훈련 세트는 적어도 수천 개의 훈련 샘플들을 포함할 수 있다. 이미지들의 캡처 및 그의 주석은 느린 - 그리고 아마도 또한 비용이 많이 드는 - 프로세스라는 점을 주목한다. 이미지들을 크로핑하고 이미지 패치들을 증강함으로써 훈련 세트에 충분한 양의 훈련 샘플들을 생성하는 것은 DNN 훈련의 효율을 가능하게 한다.
게다가, 증강 및 합성 이미지 생성의 기법들은 생성된 훈련 세트를 특정 응용의 요건들에 맞추는 것을 가능하게 한다. 비제한적인 예로서, 특정 부류의 결함들(예를 들어, 소수 부류)에 관련된 FAB 데이터의 결여는, 각각의 결함들을 제시하는 합성 및/또는 증강된 이미지들에 의해 보상될 수 있다. 추가의 비제한적인 예로서, 특정 층에 관련된 적절한 FAB 데이터의 결여는 이 층에 관련된 합성 이미지들에 의해 보상될 수 있다. 마찬가지로, 툴 변동 훈련에 필요한 특정 툴로부터의 데이터의 결여는, 이 툴에 관련된 합성 이미지들에 의해 보상될 수 있다.
이제 도 3을 참조하면, 본 개시된 주제의 특정 실시예들에 따라, DNN을 훈련시키기 위한 생성된 훈련 세트를 사용하는 일반화된 흐름도가 예시된다.
훈련 단계(310)에서, 도 2에 설명된 프로세스에 따라 생성된 훈련 세트를 획득할 때(312), FPEI 시스템(101)은 훈련 세트를 반복적으로 처리하고 훈련 기반 파라미터들(예를 들어, DNN의 가중들 등)의 응용 특정 세트를 제공하고 이로써 응용 특정 훈련된 DNN(314)을 획득하기 위해 DNN(106)을 사용할 수 있다. 훈련 기반 파라미터들은 응용 특정 비용 함수들에 대응한다. 예로서, 세그먼트화 관련 응용의 경우, 비용 함수는 세그먼트화 정확도(예를 들어, 정확한 세그먼트화 라벨 지도 대 예측된 라벨 지도)에 관련될 수 있다. 다른 예로서, 결함 검출 관련 응용의 경우, 비용 함수는 오검출 및 과검출에 대한 검출 정확도 및 불이익에 관련될 수 있다. 추가의 예로서, 분류 관련 응용의 경우, 비용 함수는 분류 오류에 관련될 수 있다. 선택적으로, DNN을 사용하여 훈련 세트를 처리하는 것은 DNN-전 모듈에 의한 전처리 작동들(예를 들어, 입력 채널들의 선택, 크기재설정/크로핑 등) 및 DNN-후 모듈에 의한 후처리 작동들(예를 들어, 공간 피라미드 풀링, 다중 스케일 풀링, 피셔 벡터들 등의 실행)을 포함할 수 있다. 응용 특정 최적화된 가중치들에 추가하여, 훈련 기반 파라미터들은 최적화된 응용 특정 임계치들, 응용 특정 전처리 파라미터들 및 응용 특정 후처리 파라미터들을 더 포함할 수 있다.
일부 실시예들에서, 예시된 훈련 프로세스는 주기적일 수 있고, DNN이 충분히 훈련될 때까지 여러 번 반복될 수 있다는 점을 주목한다. 예로서, 훈련 프로세스는 훈련 패치들의 제1 배치를 사용하는 것으로부터 시작할 수 있다. 예를 들어, 블록(220)에서 설명된 프로세스에 따라 생성된 바와 같은, 각각의 훈련 이미지에 대한 훈련 패치들의 제1 배치는 훈련의 제1 기(예를 들어, 훈련 세트를 통한 완전한 패스)를 수행하는 데 사용될 수 있다. 사용자는 초기 훈련 세트(예를 들어, 훈련 패치들의 제1 배치)에 기초하여 DNN에 의해 도달된 결과들에 대한 피드백을 제공할 수 있다. 제공된 피드백은, 예를 들어, 감도의 변화들, 세그먼트화 응용들 동안 관심 영역들(ROI들)의 수동 한정 및/또는 실측 정보 세그먼트화의 업데이트들, 분류 응용들 동안 하나 이상의 픽셀, 영역 및/또는 결함의 수동 재분류, 결함 검출 응용들 동안 마스크/경계 박스의 재한정 등을 포함할 수 있다.
PMC는 수신된 피드백에 기초하여 다음 훈련 주기를 조정할 수 있다. 조정은: 훈련 세트를 업데이트하는 것(예를 들어, 실측 정보 데이터 및/또는 증강 알고리즘들을 업데이트하는 것, 추가적인 증강된 훈련 샘플들을 획득하는 것 등), 비용 함수를 업데이트하는 것, DNN-전 및/또는 DNN-후 알고리즘들을 업데이트하는 것 등 중 적어도 하나를 포함할 수 있다. 다음 훈련 주기(즉, 제2 기)는, 블록(230)에서 설명된 프로세스에 따라 생성된 바와 같이, 각각의 훈련 이미지에 대응하는 훈련 패치들의 제2 배치를 사용함으로써 시작할 수 있다.
일단 훈련 단계가 완료되면, 훈련된 DNN은 특정 응용들에 대해 런타임(320)에서 사용될 수 있다. PMC(102)는, 하나 이상의 런타임 FP 이미지를 함께 처리(322)하고, 이로써, 응용 특정 검사 관련 데이터를 획득(324)하기 위해, 훈련된 DNN을 사용할 수 있다. 하나 이상의 FP 이미지는 동일하거나 상이한 검사 양상들에 의해 획득될 수 있다. 훈련 데이터가, 각각의 응용에 대해 사용될 FP 이미지들에 대응해야 한다는 점을 주목한다.
비제한적인 예로서, 응용 특정 검사 관련 데이터는, 값들의 의미가 응용에 의존하는 그러한 값들의 픽셀별 지도(예를 들어, 결함 검출을 위한 이진 지도; 세그먼트화를 위한 라벨 지도; 계열 유형 또는 일반 부류를 나타내는, 방해 계열 예측을 위한 이산 지도; 결함 유형 분류를 위한 이산 지도; 교차 양상 또는 다이 대 모델(D2M) 회귀에 대한 연속적인 값들 등)를 나타낼 수 있다. 픽셀별 지도는, 픽셀들에 대해 획득된 값들의 확률을 나타내는 픽셀별 확률 지도와 함께 더 획득될 수 있다.
대안적으로 또는 추가적으로, 응용 특정 검사 관련 데이터는 (픽셀마다가 아니라) 더 큰 영역의 전체 이미지 내용을 요약하는 하나 이상의 값, 예컨대, 예를 들어, 결함 속성들, 특정 구조적 요소들 및/또는 층들에 대한 세그먼트화 라벨들, 자동 결함 검토 응용을 위한 결함 경계 박스 후보들 및 연관된 유결함 확률들, 자동 결함 분류 응용을 위한 결함 부류 및 부류 확률 등을 나타낼 수 있다. 대안적으로 또는 추가적으로, 검사 관련 데이터는 계측 목적들을 위해 사용가능할 수 있다. 예를 들어, 시편의 이미지들에 대해 측정들을 수행하기 위해 세그먼트화 지도가 사용될 수 있다.
도 4를 참조하면, 본 개시된 주제의 특정 실시예들에 따라, FP 이미지의 세그먼트화를 위한, 도 3을 참조하여 위에서 상세히 설명된 기법을 구현하는 예가 예시된다. 달리 구체적으로 언급되지 않는 한, 본 명세서에서 사용되는 "세그먼트화"라는 용어는, 이미지를 의미있는 부분들/세그먼트들(예를 들어, 배경 및 전경, 잡음이 있는 및 잡음이 없는 영역들, 구조적 요소들, 결함 및 비결함 등)로 분할하는 한편, 그러한 세그먼트들을 나타내는 픽셀별 또는 영역별 값들을 제공하는 임의의 프로세스를 포함하는 것으로 광범위하게 이해되어야 한다. 예로서, 그러한 세그먼트화는 시편에 대해 측정들을 수행하기 위한 계측 툴들에 의해 사용될 수 있다. 다른 예로서, 세그먼트화는 또한, 속성들을 구성할 때(예를 들어, 결함이 주 패턴 상에 있는지, 배경 상에 있는지, 또는 양쪽 모두에 있는지를 정의하기 위해) ADC에, 각각의 세그먼트에 대해 세그먼트 특정 검출 임계치들을 적용하기 위해 ADR에 등에 사용될 수 있다.
프로세스는 DNN의 세그먼트화 특정 훈련의 설정 단계(410), 및 이미지 세그먼트화를 위해, 훈련된 DNN을 사용하는 런타임 단계(420)를 포함한다.
설정(410) 동안, 훈련 이미지들의 군 및 실측 정보 데이터를 획득할 때, PMC(102)는 도 2를 참조하여 위에서 설명된 바와 같은 기법을 사용하여 세그먼트화 훈련 세트를 생성(412)할 수 있고, 생성된 세그먼트화 훈련 세트를 사용하여 세그먼트화 관련 훈련 파라미터들에 의해 특징화되는 훈련된 세그먼트화 DNN을 획득(414)할 수 있다.
훈련 이미지들의 군은 이전에 캡처된 저해상도 이미지들 및/또는 고해상도 이미지들, 및 선택적으로 CAD 기반 이미지들을 포함할 수 있다. 예로서, 훈련 이미지들은 검토 툴(예를 들어, SEM)로부터 획득된 고해상도 검토 이미지들일 수 있다. 획득된 실측 정보 데이터는 각각의 훈련 이미지들과 연관된 세그먼트 관련 데이터에 대한 정보를 제공한다. 비제한적인 예로서, 주어진 훈련 이미지와 연관된 세그먼트들 관련 데이터는 픽셀별 또는 영역별 세그먼트화 라벨들, CAD 다각형들, ROI들 등에 대한 정보를 제공할 수 있다. 일단 훈련 세트가 생성되면, 훈련 세트의 증강된 훈련 패치들은 각각의 증강된 훈련 패치들에 관한 세그먼트들 관련 정보를 제공하는 증강된 실측 정보 데이터와 연관될 수 있다.
세그먼트화 훈련 세트를 생성(412)할 때, PMC는 훈련 세트를 사용하여 DNN을 훈련시킨다(414). 훈련 프로세스는 세그먼트화 관련 훈련 파라미터들을 이용하여 훈련된 DNN을 산출한다.
런타임(420) 동안, PMC는 각각의 이미지에 대한 세그먼트화 지도를 제공(424)하기 위해, 세그먼트화될 하나 이상의 캡처된 FP 이미지를 포함하는 하나 이상의 런타임 이미지를 처리(422)하기 위해서, 훈련된 세그먼트화 DNN을 사용한다. 획득된 세그먼트화 지도는 이미지 상의 상이한 세그먼트들을 표시하는 픽셀별 또는 영역별 세그먼트화 라벨들에 대한 정보를 제공할 수 있다. 예로서, 하나의 층 상의 다각형들은 하나의 세그먼트화 라벨을 가질 수 있고, 다른 층 상의 다각형들은 상이한 세그먼트화 라벨을 가질 수 있는 반면, 배경은 별개의 세그먼트화 라벨을 가질 수 있다.
이제 도 7을 참조하면, 본 개시된 주제의 특정 실시예들에 따라 생성된, FP 이미지 및 대응하는 세그먼트화 지도의 예가 예시된다. 도시된 바와 같이, FP 이미지(702)는 훈련된 세그먼트화 DNN(701)에 의해 처리되고, DNN의 출력은, 상이한 색상들이 상이한 세그먼트들을 표현하는 세그먼트화 지도(704)이다. 예로서, 3개의 세그먼트들: 즉, 수평 요소들(706), 수직 요소들(708) 및 배경(710)이 예시된다.
본 개시된 주제의 특정 실시예들에 따라, 세그먼트화 DNN은 세그먼트화의 성능을 개선할 목적으로 특정 아키텍처로 설계된다. 예로서, DNN은 이미지들의 빠르고 정밀한 세그먼트화를 위한 콘볼루션 네트워크인 U-Net 네트워크 아키텍처를 적용할 수 있다. U-Net의 아키텍처는, 더 적은 훈련 이미지들로 작업하고 더 정밀한 세그먼트화들을 산출하기 위해 수정되고 확장된다.
일부 실시예들에서, 훈련 동안 고해상도 정보를 유지하면서 기울기 소실의 문제를 극복하기 위해, 세그먼트화 DNN은 그러한 문제를 해결하기 위한 U-Net 기반 아키텍처를 적용할 수 있다. 기울기 소실 문제는 신경망들을 기울기 기반 학습 방법들 및 역전파로 훈련시킬 때 발견되는 알려진 난제이다. 그러한 방법들에서, 신경망의 가중치들 각각은 훈련의 각각의 반복에서 현재 가중치에 대한 오차 함수의 편도함수에 비례하는 업데이트를 수신한다. 문제는, 일부 경우들에서, 기울기가 작아져서(즉, 소실됨), 가중치가 그의 값을 변화시키는 것을 효과적으로 방지할 것이라는 점이다. 최악의 경우, 이는 신경망이 더 훈련되는 것을 완전히 정지시킬 수 있다. U-Net 기반 네트워크는 더 양호한 기울기 흐름을 갖도록 설계되고 따라서 문제를 효과적으로 해결할 수 있다.
일부 실시예들에서, 세그먼트화 DNN의 훈련 동안, DNN에 의해 생성된 실제 출력과 각각의 훈련 데이터와 연관된 실측 정보 데이터 사이의 차이로서 계산되는 주 손실 함수(예를 들어, 크로스 엔트로피 손실)에 추가하여, 세그먼트화 DNN은 세그먼트화의 감도를 개선하는 데 전용되는 하나 이상의 추가적인 손실 함수를 포함할 수 있다. 하나 이상의 추가적인 손실 함수는 시편 및 시편의 이미지의 물리적 지식을 나타낼 수 있다. 특정 실시예들에 따라, 하나 이상의 추가적인 손실 함수는 세그먼트화의 평활도 및 일관성을 개선하기 위해 추가될 수 있다.
본 개시내용은 본 출원에서 본원에 포함된 설명에 열거되거나 도면들에 예시된 세부 사항들로 제한되지 않는다는 것을 이해해야 한다.
또한, 본 개시내용에 따른 시스템은, 적어도 부분적으로, 적절히 프로그래밍된 컴퓨터 상에 구현될 수 있다는 것을 이해할 것이다. 마찬가지로, 본 개시내용은, 본 개시내용의 방법을 실행하기 위해, 컴퓨터에 의해 판독가능한 컴퓨터 프로그램을 고려한다. 본 개시내용은, 본 개시내용의 방법을 실행하기 위해 컴퓨터에 의해 실행가능한 명령어들의 프로그램을 유형적으로 구현하는 비일시적 컴퓨터 판독가능 메모리를 더 고려한다.
본 개시내용은 다른 실시예들이 가능하고, 다양한 방식들로 실시되거나 수행될 수 있다. 그러므로, 본원에서 채용되는 어법 및 용어는 설명의 목적을 위한 것이며 제한으로서 간주되어서는 안 된다는 점을 이해해야 한다. 이로써, 관련 기술분야의 통상의 기술자는, 본 개시내용이 기초로 하는 개념이, 본 개시된 주제의 몇몇 목적을 수행하기 위한 다른 구조들, 방법들 및 시스템들을 설계하기 위한 기초로서 용이하게 활용될 수 있음을 이해할 것이다.
관련 기술분야의 통상의 기술자는, 다양한 수정들 및 변경들이, 본 개시내용의 범위로부터 벗어나지 않고 앞서 설명되고 첨부된 청구항들에서 그리고 청구항들에 의해 정의된 바와 같이 본 개시내용의 실시예들에 적용될 수 있다는 것을 용이하게 이해할 것이다.

Claims (20)

  1. 시편의 검사에 사용가능한 심층 신경망(DNN)을 훈련시키기 위한 훈련 세트를 생성하기 위한 컴퓨터화된 방법으로서,
    상기 방법은 프로세서 및 메모리 회로(PMC)에 의해 수행되고, 상기 방법은:
    각각 시편의 적어도 일부를 나타내는 훈련 이미지들의 군을 획득하는 단계;
    상기 군의 각각의 주어진 훈련 이미지에 대해:
    i) 훈련 패치들의 제1 배치를 생성하는 단계 - 상기 제1 배치를 생성하는 단계는:
    상기 주어진 훈련 이미지를 상기 주어진 훈련 이미지 상의 복수의 제1 위치들에 따라 제1 복수의 원래의 패치들로 크로핑하는 단계; 및
    상기 시편의 물리적 프로세스에 의해 야기되는 변동들을 모의하기 위해 상기 제1 복수의 원래의 패치들 중 적어도 일부를 증강하여, 상기 훈련 패치들의 제1 배치를 구성하는 제1 복수의 증강된 패치들을 생성하는 단계를 포함함 -; 및
    ii) 훈련 패치들의 제2 배치를 생성하는 단계 - 상기 제2 배치를 생성하는 단계는:
    상기 복수의 제1 위치들을 상기 주어진 훈련 이미지 상의 복수의 제2 위치들로 이동시키고, 이로써, 상기 복수의 제2 위치들에 대응하는 제2 복수의 원래의 패치들을 획득하는 단계; 및
    제2 복수의 증강된 패치들을 생성하기 위해 상기 제2 복수의 원래의 패치들에 대해 상기 증강을 반복하고, 이로써, 훈련 패치들의 제2 배치를 생성하는 단계를 포함함 -; 및
    각각의 상기 주어진 훈련 이미지에 대응하는 훈련 패치들의 적어도 상기 제1 배치 및 상기 제2 배치를 상기 훈련 세트에 포함시키는 단계를 포함하는, 컴퓨터화된 방법.
  2. 제1항에 있어서,
    상기 훈련 세트는, 자동화된 결함 검출, 자동화된 결함 검토, 자동화된 결함 분류, 자동화된 세그먼트화, 및 런타임 이미지들에 기초한 자동화된 계측을 포함하는 군으로부터 선택된 적어도 하나의 검사 프로세스에 사용가능한 DNN을 훈련시키는 데 사용되는, 컴퓨터화된 방법.
  3. 제1항에 있어서,
    완료 기준이 충족될 때까지 훈련 패치들의 제2 배치의 상기 생성을 1회 이상 반복하여, 훈련 패치들의 하나 이상의 추가적인 제2 배치를 생성하는 단계, 및 상기 하나 이상의 추가적인 제2 배치를 상기 훈련 세트에 포함시키는 단계를 더 포함하는, 컴퓨터화된 방법.
  4. 제1항에 있어서,
    상기 제1 복수의 원래의 패치들 및/또는 상기 제2 복수의 원래의 패치들을 상기 훈련 세트에 포함시키는 단계를 더 포함하는, 컴퓨터화된 방법.
  5. 제1항에 있어서,
    상기 제1 위치들은 격자에 따라 미리 결정되는, 컴퓨터화된 방법.
  6. 제1항에 있어서,
    상기 제1 위치들은 복수의 미리 결정된 위치들을 무작위로 이동시킴으로써 획득되는, 컴퓨터화된 방법.
  7. 제1항에 있어서,
    상기 이동은 무작위 오프셋을 갖는 무작위 방향에 따라 수행되는, 컴퓨터화된 방법.
  8. 제1항에 있어서,
    상기 모의된 변동들은 프로세스 변동 및 그레이 레벨 변동을 포함하는 군으로부터 선택되는, 컴퓨터화된 방법.
  9. 제1항에 있어서,
    상기 제1 복수의 원래의 패치들 중 적어도 일부를 증강하는 단계는 확률 함수에 따라 상기 제1 복수의 원래의 패치들의 각각의 원래의 패치를 증강할지 여부를 결정하고, 이로써, 긍정적인 결정을 갖는 상기 제1 복수의 원래의 패치들 중 적어도 일부를 획득하는 단계를 더 포함하는, 컴퓨터화된 방법.
  10. 제1항에 있어서,
    상기 제1 복수의 원래의 패치들 중 적어도 일부는 확률 함수에 기초하여 결정된 각각의 증강 강도들로 증강되는, 컴퓨터화된 방법.
  11. 제1항에 있어서,
    각각의 훈련 이미지에 대응하는 훈련 패치들의 상기 제1 배치를 상기 DNN의 훈련을 위한 제1 기에 포함시키는 단계, 및 각각의 훈련 이미지에 대응하는 훈련 패치들의 상기 제2 배치를 상기 DNN의 훈련을 위한 제2 기에 포함시키는 단계를 더 포함하는, 컴퓨터화된 방법.
  12. 시편의 검사에 사용가능한 심층 신경망(DNN)을 훈련시키기 위한 훈련 세트를 생성하는 컴퓨터화된 시스템으로서,
    상기 시스템은 프로세서 및 메모리 회로(PMC)를 포함하고,
    상기 PMC는:
    각각 시편의 적어도 일부를 나타내는 훈련 이미지들의 군을 획득하고,
    상기 군의 각각의 주어진 훈련 이미지에 대해:
    i) 훈련 패치들의 제1 배치를 생성하고,
    ii) 훈련 패치들의 제2 배치를 생성하고, 그리고
    각각의 주어진 훈련 이미지에 대응하는 훈련 패치들의 적어도 상기 제1 배치 및 상기 제2 배치를 상기 훈련 세트에 포함하도록
    구성되며,
    상기 제1 배치의 생성은:
    상기 주어진 훈련 이미지를 상기 주어진 훈련 이미지 상의 복수의 제1 위치들에 따라 제1 복수의 원래의 패치들로 크로핑하고,
    상기 시편의 물리적 프로세스에 의해 야기되는 변동들을 모의하기 위해 상기 제1 복수의 원래의 패치들 중 적어도 일부를 증강하여, 상기 훈련 패치들의 제1 배치를 구성하는 제1 복수의 증강된 패치들을 생성하는 것을 포함하며,
    상기 제2 배치의 생성은:
    상기 복수의 제1 위치들을 상기 주어진 훈련 이미지 상의 복수의 제2 위치들로 이동시키고, 이로써, 상기 복수의 제2 위치들에 대응하는 제2 복수의 원래의 패치들을 획득하고,
    제2 복수의 증강된 패치들을 생성하기 위해 상기 제2 복수의 원래의 패치들에 대해 상기 증강을 반복하고, 이로써, 훈련 패치들의 제2 배치를 생성하는 것을 포함하는, 컴퓨터화된 시스템.
  13. 제12항에 있어서,
    상기 훈련 세트는, 자동화된 결함 검출, 자동화된 결함 검토, 자동화된 결함 분류, 자동화된 세그먼트화, 및 런타임 이미지들에 기초한 자동화된 계측을 포함하는 군으로부터 선택된 적어도 하나의 검사 프로세스에 사용가능한 DNN을 훈련시키는 데 사용되는, 컴퓨터화된 시스템.
  14. 제12항에 있어서,
    상기 PMC는, 완료 기준이 충족될 때까지 훈련 패치들의 제2 배치의 상기 생성을 1회 이상 반복하여, 훈련 패치들의 하나 이상의 추가적인 제2 배치를 생성하고, 상기 하나 이상의 추가적인 제2 배치를 상기 훈련 세트에 포함시키도록 더 구성되는, 컴퓨터화된 시스템.
  15. 제12항에 있어서,
    상기 제1 위치들은 복수의 미리 결정된 위치들을 무작위로 이동시킴으로써 획득되는, 컴퓨터화된 시스템.
  16. 제12항에 있어서,
    상기 이동은 무작위 오프셋을 갖는 무작위 방향에 따라 수행되는, 컴퓨터화된 시스템.
  17. 제12항에 있어서,
    상기 모의된 변동들은 프로세스 변동 및 그레이 레벨 변동을 포함하는 군으로부터 선택되는, 컴퓨터화된 시스템.
  18. 제12항에 있어서,
    상기 PMC는, 확률 함수에 따라 상기 제1 복수의 원래의 패치들의 각각의 원래의 패치를 증강할지 여부를 결정하고, 이로써, 긍정적인 결정을 갖는 상기 제1 복수의 원래의 패치들 중 적어도 일부를 획득함으로써, 상기 제1 복수의 원래의 패치들 중 적어도 일부를 증강하도록 더 구성되는, 컴퓨터화된 시스템.
  19. 제12항에 있어서,
    상기 제1 복수의 원래의 패치들 중 적어도 일부는 확률 함수에 기초하여 결정된 각각의 증강 강도들로 증강되는, 컴퓨터화된 시스템.
  20. 컴퓨터에 의해 실행될 때, 상기 컴퓨터로 하여금, 시편의 검사에 사용가능한 심층 신경망(DNN)을 훈련시키기 위한 훈련 세트를 생성하는 방법을 수행하게 하는 명령어들의 프로그램을 유형적으로 구현하는 비일시적 컴퓨터 판독가능 저장 매체로서,
    상기 방법은:
    각각 시편의 적어도 일부를 나타내는 훈련 이미지들의 군을 획득하는 단계;
    상기 군의 각각의 주어진 훈련 이미지에 대해:
    i) 훈련 패치들의 제1 배치를 생성하는 단계 - 상기 제1 배치를 생성하는 단계는:
    상기 주어진 훈련 이미지를 상기 주어진 훈련 이미지 상의 복수의 위치들에 따라 제1 복수의 원래의 패치들로 크로핑하는 단계; 및
    상기 시편의 물리적 프로세스에 의해 야기되는 변동들을 모의하기 위해 상기 제1 복수의 원래의 패치들 중 적어도 일부를 증강하여, 상기 훈련 패치들의 제1 배치를 구성하는 제1 복수의 증강된 패치들을 생성하는 단계를 포함함 -; 및
    ii) 훈련 패치들의 제2 배치를 생성하는 단계 - 상기 제2 배치를 생성하는 단계는:
    상기 복수의 제1 위치들을 상기 주어진 훈련 이미지 상의 복수의 제2 위치들로 이동시키고, 이로써, 제2 복수의 원래의 패치들을 획득하는 단계; 및
    제2 복수의 증강된 패치들을 생성하기 위해 상기 제2 복수의 원래의 패치들에 대해 상기 증강을 반복하고, 이로써, 훈련 패치들의 제2 배치를 생성하는 단계를 포함함 -; 및
    각각의 상기 주어진 훈련 이미지에 대응하는 훈련 패치들의 적어도 상기 제1 배치 및 상기 제2 배치를 상기 훈련 세트에 포함시키는 단계를 포함하는, 비일시적 컴퓨터 판독가능 저장 매체.
KR1020210057701A 2020-06-29 2021-05-04 반도체 시편의 검사에 사용가능한 훈련 세트의 생성 KR102384568B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/916,047 2020-06-29
US16/916,047 US11232550B2 (en) 2020-06-29 2020-06-29 Generating a training set usable for examination of a semiconductor specimen

Publications (2)

Publication Number Publication Date
KR20220001445A KR20220001445A (ko) 2022-01-05
KR102384568B1 true KR102384568B1 (ko) 2022-04-08

Family

ID=78989731

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210057701A KR102384568B1 (ko) 2020-06-29 2021-05-04 반도체 시편의 검사에 사용가능한 훈련 세트의 생성

Country Status (5)

Country Link
US (1) US11232550B2 (ko)
JP (1) JP7169393B2 (ko)
KR (1) KR102384568B1 (ko)
CN (2) CN113870170B (ko)
TW (1) TWI786570B (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021120186A1 (zh) * 2019-12-20 2021-06-24 京东方科技集团股份有限公司 分布式产品缺陷分析系统、方法及计算机可读存储介质
US20240095935A1 (en) * 2022-08-22 2024-03-21 Kla Corporation Deep learning model-based alignment for semiconductor applications
CN116342983B (zh) * 2023-05-29 2023-09-01 全芯智造技术有限公司 生成及使用图刻模型的方法、电子设备和计算机可读介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170357895A1 (en) 2015-12-22 2017-12-14 Applied Materials Israel Ltd. Method of deep learining-based examination of a semiconductor specimen and system thereof
US20190303717A1 (en) 2018-03-28 2019-10-03 Kla-Tencor Corporation Training a neural network for defect detection in low resolution images
US20200294224A1 (en) 2018-02-07 2020-09-17 Applied Materials Israel Ltd. Method of deep learning-based examination of a semiconductor specimen and system thereof

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10359371B2 (en) * 2015-08-24 2019-07-23 Kla-Tencor Corp. Determining one or more characteristics of a pattern of interest on a specimen
US9916965B2 (en) * 2015-12-31 2018-03-13 Kla-Tencor Corp. Hybrid inspectors
US10395356B2 (en) 2016-05-25 2019-08-27 Kla-Tencor Corp. Generating simulated images from input images for semiconductor applications
US10607119B2 (en) * 2017-09-06 2020-03-31 Kla-Tencor Corp. Unified neural network for defect detection and classification
US11263782B2 (en) * 2017-10-11 2022-03-01 Qualcomm Incorporated Image signal processor for processing images
US10776662B2 (en) * 2017-11-09 2020-09-15 Disney Enterprises, Inc. Weakly-supervised spatial context networks to recognize features within an image
WO2019155467A1 (en) * 2018-02-07 2019-08-15 Applied Materials Israel Ltd. Method of generating a training set usable for examination of a semiconductor specimen and system thereof
US11199506B2 (en) * 2018-02-21 2021-12-14 Applied Materials Israel Ltd. Generating a training set usable for examination of a semiconductor specimen
US10810469B2 (en) * 2018-05-09 2020-10-20 Adobe Inc. Extracting material properties from a single image
US10825650B2 (en) * 2018-09-28 2020-11-03 Taiwan Semiconductor Manufacturing Co., Ltd. Machine learning on wafer defect review
CA3122684C (en) 2018-12-11 2023-12-19 Exxonmobil Upstream Research Company Data augmentation for seismic interpretation systems and methods
US11097128B2 (en) * 2019-07-16 2021-08-24 Elekta Ab (Publ) Radiotherapy treatment plans using differentiable dose functions
US11222425B2 (en) * 2020-02-11 2022-01-11 DeepVoxel, Inc. Organs at risk auto-contouring system and methods

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170357895A1 (en) 2015-12-22 2017-12-14 Applied Materials Israel Ltd. Method of deep learining-based examination of a semiconductor specimen and system thereof
US20200294224A1 (en) 2018-02-07 2020-09-17 Applied Materials Israel Ltd. Method of deep learning-based examination of a semiconductor specimen and system thereof
US20190303717A1 (en) 2018-03-28 2019-10-03 Kla-Tencor Corporation Training a neural network for defect detection in low resolution images

Also Published As

Publication number Publication date
CN113870170B (zh) 2022-10-11
CN115471493A (zh) 2022-12-13
US11232550B2 (en) 2022-01-25
KR20220001445A (ko) 2022-01-05
US20210407072A1 (en) 2021-12-30
CN113870170A (zh) 2021-12-31
JP2022013662A (ja) 2022-01-18
JP7169393B2 (ja) 2022-11-10
TW202200992A (zh) 2022-01-01
TWI786570B (zh) 2022-12-11

Similar Documents

Publication Publication Date Title
US11199506B2 (en) Generating a training set usable for examination of a semiconductor specimen
KR102613438B1 (ko) 반도체 표본의 딥 러닝 - 기반 검사의 방법 및 그 시스템
KR102176335B1 (ko) 반도체 시편의 시험을 위해 사용 가능한 훈련 세트를 생성하는 방법 및 그 시스템
KR102384568B1 (ko) 반도체 시편의 검사에 사용가능한 훈련 세트의 생성
CN114219749B (zh) 样本的模拟图像的确定
US20240078659A1 (en) Defect examination on a semiconductor specimen
US11631179B2 (en) Segmentation of an image of a semiconductor specimen
US11645831B2 (en) Identification of an array in a semiconductor specimen
US20230306580A1 (en) Machine learning based examination of a semiconductor specimen and training thereof

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