KR20240049266A - 물리지식기반 압축 감지를 이용한 기판 근처의 컨디션들의 가상 측정 - Google Patents

물리지식기반 압축 감지를 이용한 기판 근처의 컨디션들의 가상 측정 Download PDF

Info

Publication number
KR20240049266A
KR20240049266A KR1020247002742A KR20247002742A KR20240049266A KR 20240049266 A KR20240049266 A KR 20240049266A KR 1020247002742 A KR1020247002742 A KR 1020247002742A KR 20247002742 A KR20247002742 A KR 20247002742A KR 20240049266 A KR20240049266 A KR 20240049266A
Authority
KR
South Korea
Prior art keywords
data
attribute values
chamber
model
machine learning
Prior art date
Application number
KR1020247002742A
Other languages
English (en)
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 KR20240049266A publication Critical patent/KR20240049266A/ko

Links

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67242Apparatus for monitoring, sorting or marking
    • H01L21/67253Process monitoring, e.g. flow or thickness monitoring
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B21/00Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
    • G08B21/18Status alarms
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67011Apparatus for manufacture or treatment
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67011Apparatus for manufacture or treatment
    • H01L21/67098Apparatus for thermal treatment
    • H01L21/67103Apparatus for thermal treatment mainly by conduction
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67011Apparatus for manufacture or treatment
    • H01L21/67155Apparatus for manufacturing or treating in a plurality of work-stations
    • H01L21/6719Apparatus for manufacturing or treating in a plurality of work-stations characterized by the construction of the processing chambers, e.g. modular processing chambers
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/67Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
    • H01L21/67005Apparatus not specifically provided for elsewhere
    • H01L21/67242Apparatus for monitoring, sorting or marking
    • H01L21/67248Temperature monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/06Multi-objective optimisation, e.g. Pareto optimisation using simulated annealing [SA], ant colony algorithms or genetic algorithms [GA]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/08Thermal analysis or thermal optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/18Manufacturability analysis or optimisation for manufacturability

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Manufacturing & Machinery (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Geometry (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)

Abstract

방법은 제조 챔버 내의 기판에 대해 수행되는 프로세스 동안 제조 챔버 내에서의 속성 값들의 서브세트를 측정하는 단계를 포함한다. 방법은 측정치들이 취해지는 로케이션들이 아닌 로케이션들에서 제조 챔버에서의 속성 값들을 결정하는 단계를 더 포함한다. 방법은 결정된 속성들에 기초하여 시정 조치를 수행하는 단계를 더 포함한다.

Description

물리지식기반 압축 감지를 이용한 기판 근처의 컨디션들의 가상 측정
[001] 본 명세서는 물리지식기반 압축 감지 머신 러닝 모델(physics-informed compressed sensing machine learning model)을 사용하여 제조 챔버의 기판 근처의 속성들을 가상으로 측정하는 것에 관한 것이다.
[002] 챔버들은 많은 타입들의 프로세싱 시스템들에서 사용된다. 챔버들의 예들은 에칭 챔버들, 증착 챔버들, 어닐링 챔버들 등을 포함한다. 전형적으로, 기판, 예컨대 반도체 웨이퍼가 챔버에 배치되고 챔버 내의 컨디션들은 기판을 프로세싱하도록 설정되고 유지된다. 프로세싱 컨디션들의 영향들을 완전히 특성화하고 예측하기 위해서는, 기판의 로케이션에서의 속성 값들의 측정들이 이상적일 것이다. 기판의 로케이션에서 측정들을 수행하는 것은 종종 불편하거나 또는 불가능하다. 많은 시스템들은 관련된 동작 속성들, 예컨대 온도, 가스 흐름, 압력 등의 값들을 측정하기 위한, 비록 당장은 덜 유용할지라도, 더욱 편리한 장소들을 갖는다.
[003] 다음은 본 개시내용의 일부 양상들의 기본적인 이해를 제공하기 위한 본 개시내용의 단순화된 개요이다. 이 개요는 본 개시내용에 대한 광범위한 개관이 아니다. 본 개시내용의 핵심 또는 중요한 엘리먼트들을 식별하는 것도 또한 본 개시내용의 특정한 구현들의 임의의 범위 또는 청구항들의 임의의 범위를 묘사하는 것도 의도되지 않는다. 그것의 유일한 목적은 이후 제시되는 더욱 상세한 설명에 대한 서론으로서 본 개시내용의 일부 개념들을 단순화된 형태로서 제시하는 것이다.
[004] 본 개시내용의 하나의 양상에서, 방법은 제조 챔버 내의 다수의 로케이션들에서 일부 속성 또는 속성들의 값들을 측정하는 단계를 포함한다. 측정들은 챔버 내에 배치되는 센서들에 의해 기판에 대해 수행되는 프로세스 동안 취해진다. 방법은 트레이닝된 머신 러닝 모델에 대한 입력으로서 측정된 속성 값들을 제공하는 단계를 더 포함한다. 트레이닝된 머신 러닝 모델은, 기판의 로케이션을 비롯하여, 챔버의 다른 곳에서 속성 값들을 추론하기 위해, 센서들이 배치되는 로케이션들에서 측정치들을 사용할 수 있다. 방법은 트레이닝된 머신 러닝 모델에 의해 추론되는 속성들을 고려하여 액션을 수행하는 단계를 더 포함한다.
[005] 본 개시내용의 다른 양상에서, 방법은 머신 러닝 모델을 트레이닝시키는 단계를 포함한다. 방법은 트레이닝 입력 데이터를 머신 러닝 모델에 제공하는 단계를 더 포함한다. 트레이닝 입력 데이터는 기판이 프로세싱되고 있는 동안 제조 챔버 내의 로케이션들에서 취해지는 속성 값들의 측정치들을 포함한다. 적어도 대부분의 측정치들은 기판에 바로 인접하지 않은 로케이션들에서 취해진다. 방법은 목표 출력 데이터를 머신 러닝 모델에 제공하는 단계를 더 포함한다. 목표 출력은, 기판의 로케이션을 비롯하여, 챔버의 영역들 내의 속성 값들의 맵을 포함한다. 방법은, 챔버 내의 다수의 로케이션들로부터의 측정치들이 주어지면 챔버의 영역들 내의 속성 값들의 맵을 예측하도록 모델을 트레이닝시키기 위해, 입력 및 출력 데이터의 세트들을 머신 러닝 모델에 제공하는 단계를 더 포함한다.
[006] 본 개시내용의 다른 양상에서, 상기에서 논의되는 것들과 같은 방법들을 구현하기 위한 시스템이 개시된다. 시스템은 컴퓨터 판독 가능 저장 매체를 포함한다. 시스템은 프로세싱 디바이스를 더 포함한다. 시스템은, 컴퓨터 판독 가능 저장 매체가 실행시 프로세싱 디바이스로 하여금 방법을 수행하게 하는 명령들을 포함하도록 구성된다. 프로세싱 디바이스에 의해 수행되는 방법은 제조 챔버 내에 배치되는 센서들로부터 제조 챔버에서의 제조 프로세스 동안의 속성 값들의 측정치들을 수신하는 단계를 포함한다. 프로세싱 디바이스에 의해 수행되는 방법은 트레이닝된 머신 러닝 모델을 사용하여, 기판의 로케이션을 비롯하여, 제조 챔버의 영역에서의 속성 값들을 결정하는 단계를 더 포함한다. 프로세싱 디바이스에 의해 수행되는 방법은 결정된 속성 값들을 고려하여 시정 조치(corrective action)를 수행하는 단계 또는 경고를 사용자 디바이스에 전송하는 단계를 더 포함한다.
[007] 본 개시내용은 첨부의 도면들의 도면들에서 제한으로서가 아니라 예로서 예시된다.
[008] 도 1은, 특정한 실시예들에 따른, 예시적인 시스템(예시적인 시스템 아키텍처)을 예시하는 블록 다이어그램이다.
[009] 도 2는, 특정한 실시예들에 따른, 머신 러닝 모델에 대한 데이터 세트들을 생성하기 위해 사용되는 예시적인 데이터 세트 생성기의 블록 다이어그램이다.
[0010] 도 3은, 특정한 실시예들에 따른, 출력 데이터(예를 들어, 압축 감지 데이터)를 생성하기 위한 시스템을 예시하는 블록 다이어그램이다.
[0011] 도 4a 내지 도 4c는, 특정한 실시예들에 따른, 시정 조치를 야기할 압축 감지 예측 데이터와 연관되는 방법들의 흐름도들이다.
[0012] 도 5는, 일부 실시예들에 따른, 제조 챔버(예를 들어, 반도체 웨이퍼 제조 챔버)의 단면도를 묘사한다.
[0013] 도 6은, 특정한 실시예들에 따른, 컴퓨터 시스템을 예시하는 블록 다이어그램이다.
[0014] 물리지식기반 압축 감지 기법들을 사용하여 제조 챔버 내부의 기판의 로케이션에서 속성 값들의 가상 측정에 관련되는 기술이 본원에서 설명된다. 제조 장비는 기판들, 예컨대 반도체 웨이퍼들을 생산하기 위해 사용된다. 이들 기판들의 속성들은 기판들이 프로세싱된 컨디션들에 의해 제어된다. 완성된 제품들의 속성들을 예측하기 위해, 동일한 속성들을 갖는 기판들을 일관되게 생산하기 위해, 그리고 챔버 설계 및 구축에서의 변동들을 고려하도록 프로세싱 파라미터들을 맞추기(tailor) 위해, 동작 동안 제조 챔버에서의, 특히 기판 바로 근처에서의 속성들의 정확한 지식이 사용될 수 있다.
[0015] 일부 경우들에서, 센서들이 기판의 로케이션에 배치될 수 있거나, 또는 일정 거리에서 측정들을 행할 수 있는 센서들(예를 들어, IR 온도 센서들)이 사용될 수 있다. 일부 경우들에서, 그러한 배열들은 비실용적이거나 또는 불가능하다. 기판 근처의(예를 들어, 기판 상의) 속성 값들의 직접적인 측정이 바람직하지 않은 경우들에서, 경험적 방법들이 사용되어 선택된 속성들을 갖는 일관된 기판들을 생산할 수 있다. 그러한 접근법은 실험을 수반하는데, 이것은 소비되는 시간, 사용되는 재료, 소모되는 에너지 및 가스들 등의 관점들에서 비용이 많이 들 수 있다. 추가적으로, 제조 챔버들이 반복적으로 사용됨에 따라, 그들의 속성들은 재료 축적, 부품들 노후화, 세정 프로시저들 동안의 변경들 등에 기인하여 드리프트(drift)하는 경향이 있다. 입력 프로세싱 파라미터들을 출력 기판 속성들에 맵핑하는 임의의 획득된 지식은 챔버 속성들이 드리프트함에 따라 저하된다. 이러한 종래의 접근법이 갖는 추가의 문제는 챔버들 사이의 차이들에 관련된다. 임의의 새로운 챔버 설계는, 완성된 제품 속성들에 대한 입력 파라미터들의 새로운 맵핑을 결정하기 위해 실험들의 새로운 세트를 사용하는데, 챔버가 노후화됨에 따라 맵핑들은 품질이 또한 저하될 것이다. 추가적으로, 제조 챔버들은, 그들이 구축될 때, 공차 범위들에 종속되는데, 이는 각각의 챔버가 다소 상이하게, 심지어 명목상 동일한 챔버와도 상이하게 작동할 가능성을 갖는다는 것을 의미한다. 각각의 챔버 타입에 대해, 어떤 입력 파라미터들이 어떤 제품들로 이어지는지의 정확한 이해를 획득하기 위해, 실험들이 수행될 뿐만 아니라, 각각의 개개의 챔버가 이러한 처리에 종속될 수 있으며, 이들 속성들의 이해는 지속적인 업데이트로부터 이익을 얻을 수 있다. 챔버 동작들에 관해 이전에 수집된 지식의 범위들 밖의 속성들을 갖는 상이한 타입의 기판을 생산하려는 임의의 시도는 문제를 더욱 심화시킨다.
[0016] 본 개시내용의 방법들 및 디바이스들은 종래의 접근법의 이들 결함들 중 적어도 일부를 해결한다. 본 개시내용은, 물리지식기반 압축 감지를 활용하여, 기판에서의 속성들의 가상 측정의 사용을 가능하게 한다. 일부 실시예들에서, 본 개시내용의 방법들은 컴퓨터-보조 물리-기반 모델(computer-aided physics-based model)의 사용을 포함한다. 물리-기반 모델은, 기하학적 형상, 재료 속성들, 가스 흐름 등을 비롯하여, 관심 제조 챔버의 모든 피처들을 포함하도록 구성된다. 그 다음, 물리-기반 모델은 다수 회 실행되어, 다양한 프로세싱 파라미터들을 반영할 수 있다. 예를 들어, 히터들에 공급되는 전력, 사용되는 가스 혼합, 가스의 유량 및 압력, 기판의 배치와 같은 하드웨어 파라미터들 등이 모두 변경될 수 있다. 물리-기반 모델을 사용한 이들 컴퓨테이션들의 출력은 제조 챔버 내에서 정상 상태에서의 속성 값들을 표시하는 맵들의 세트이다. 맵들의 세트는 기판 생산에 관련되는 파라미터 공간의 상당한 부분에 걸쳐 있을 수 있다.
[0017] 일부 실시예들에서, 본 개시내용의 방법들은, 제조 챔버에서의 속성 값들의 가능한 조합들을 설명하기 위한 기본 세트를 구성하기 위해, 물리-기반 모델의 출력을 사용하는 단계를 더 포함한다. 챔버에서의 속성들의 개념적으로 가장 간단한 표현은, 전형적으로, 각각의 속성에 대한 값을 챔버 내의 각각의 지점에 할당하는 것이다. 이것은 기본 세트 멤버들의 가중된 조합인 것으로 간주될 수 있는데, 여기서 기본 세트의 각각의 멤버는 챔버 내의 하나의 특정한 지점에서의 속성의 일부 값(예를 들어, 1 켈빈(Kelvin)의 온도)을 포함하고, 챔버 내의 각각의 모든 다른 지점은 속성에서 널(null) 값(예를 들어, 제로 켈빈)을 할당받는다. 그 다음, 챔버 내의 각각의 모든 지점에 제로가 아닌 온도를 할당하기 위해 각각의 기본 상태의 가중된 조합들을 추가하는 것에 의해, 챔버의 전체 속성 값 맵이 구축된다.
[0018] 이러한 개념적으로 단순한 표현은 종종 가장 편리하지 않다. 대신, 더 복잡한 멤버들을 갖는 기본 세트들이 사용될 수 있는데, 여기서 챔버 내의 속성들은 기본 상태 멤버들의 가중된 가산적 조합(weighted additive combination)으로서 표현된다. 기본 세트가 신중하게 선택되면, 기본 세트의 각각의 모든 멤버가 의미 있게 기여하는 간단한 경우에 사용되는 것보다 훨씬 더 적은 수의 멤버들이 챔버 내의 속성 값들을 적절하게 설명하는 데 사용될 수 있다. 본 개시내용의 방법들은, 일부 실시예들에서, 기판 생산에 관련되는 파라미터 공간의 영역에서 챔버 내의 속성 값들을 적절하게 설명하기 위해 (간단한 표현에서 보다) 더 적은 수의 기본 상태들의 가중된 가산적 조합들이 사용되도록, 물리-기반 모델의 출력으로부터 기본 세트를 구성하는 단계를 포함한다. 감소된 차원을 갖는 이 기본 세트는 차수 감소 모델(ROM; Reduced Order Model)로서 지칭된다. ROM은, 일부 실시예들에서, 물리-기반 모델의 출력에 대해 적절한 직교 분해를 수행하는 것에 의해 형성될 수 있다.
[0019] 본 개시내용의 방법들은, 일부 실시예들에서, 제조 챔버 내의 다수의 로케이션들에서의 속성 값들에 대응하는 속성 값들의 제한된 서브세트를 입력으로서 취하도록 머신 러닝 모델을 트레이닝시키는 단계를 더 포함한다. 머신 러닝 모델은, 기판 근처의 속성 값들을 비롯하여, 입력으로서 사용되는 로케이션들을 넘어서는 로케이션들까지 연장되는 속성 값들의 맵을 출력으로서 생성하도록 트레이닝된다. 일부 실시예들에서, 머신 러닝 모델은 희소 회귀 모델(sparse regression model)을 사용하여 트레이닝된다. 대안적으로, 다른 타입들의 머신 러닝 모델들, 예컨대 신경망들, 서포트 벡터 머신들 등이 사용될 수 있다.
[0020] 본 개시내용의 방법들은, 일부 실시예들에서, 프로세싱 동안 제조 챔버 내에서의 속성 값들의 서브세트의 측정치들을 트레이닝된 머신 러닝 모델에 대한 입력으로서 제공하는 단계를 더 포함한다. 방법은 트레이닝된 머신 러닝 모델로부터 출력으로서 기판 근처의 속성들의 예측치들을 수신하는 단계를 더 포함한다. 본 개시내용은 또한, 물리지식기반 압축 감지 및 가상 측정의 방법들을 수행하기 위한, 프로세싱 디바이스 및 메모리를 포함하는 시스템의 사용을 가능하게 한다.
[0021] 본 개시내용의 양상들은 종래의 방법들에 비해 기술적 이점들을 초래한다. 프로세싱 동안 기판 근처의 속성 값들(예를 들어, 기판 상의 지점들에서의 온도와 같은 값들)의 예측치들은 측정 디바이스들이 기판 근처에 배치되도록 배열하는 것에 의해 프로세싱의 품질에 대한 양보들을 하지 않고도 정확하게 추론될 수 있다. 추가적으로, 온도 맵핑을 통지하기 위해 챔버의 물리-기반 모델에 의해 통보되는 기본 세트를 사용하는 것에 의해, 챔버마다의, 또는 하나의 챔버에서 시간 경과에 따른 변동들이 개시된 방법들을 사용하여 설명될 수 있다.
[0022] 도 1은, 특정한 실시예들에 따른, 예시적인 시스템(100)(예시적인 시스템 아키텍처)을 예시하는 블록 다이어그램이다. 시스템(100)은 클라이언트 디바이스(120), 제조 장비(124), 센서들(126), 계측 장비(128), 압축 감지 서버(112), 및 데이터 저장소(140)를 포함한다. 압축 감지 서버(112)는 압축 감지 시스템(110)의 일부일 수 있다. 압축 감지 시스템(110)은 서버 머신들(170 및 180)을 더 포함할 수 있다.
[0023] 센서들(126)은 제조 장비(124)와 연관되는(예를 들어, 제조 장비(124)에 의해, 대응하는 제품들, 예컨대 웨이퍼들을 생산하는 것과 연관되는) 센서 데이터(142)를 제공할 수 있다. 센서 데이터(142)는, 예를 들어, 장비 건전성 및/또는 제품 건전성(예를 들어, 제품 품질)을 위해 사용될 수 있다. 제조 장비(124)는 일정 시간에 걸쳐 런(run)들을 수행하거나 레시피에 따라 제품들을 생산할 수 있다. 일부 실시예들에서, 센서 데이터(142)는 온도(예를 들어, 히터 온도), 간격(SP; spacing), 압력, 고주파 라디오 주파수(HFRF; High Frequency Radio Frequency), 정전 척(ESC; Electrostatic Chuck)의 전압, 전류, (예를 들어, 하나 이상의 가스들의) 흐름, 전력, 전압 등 중 하나 이상의 것들의 값들을 포함할 수 있다. 센서 데이터(142)는 이력 센서 데이터(144) 및 현재의 센서 데이터(146)를 포함할 수 있다. 제조 장비(124)는 제조 데이터(150)에 따라 구성될 수 있다. 제조 데이터(150)는 하드웨어 파라미터들(예를 들어, 제조 장비(124)의 설정들 또는 컴포넌트들(예를 들어, 사이즈, 타입 등)) 및/또는 제조 장비의 프로세스 파라미터들과 같은 제조 파라미터들과 연관될 수 있거나 또는 그 제조 파라미터들을 표시할 수 있다. 제조 데이터(150)는 이력 제조 데이터(152) 및/또는 현재의 제조 데이터(154)를 포함할 수 있다. 제조 데이터(150)는 제조 디바이스에 대한 입력 설정들(예를 들어, 히터 전력, 가스 흐름 등)을 표시할 수 있다. 센서 데이터(142) 및/또는 제조 데이터(150)는, 제조 장비(124)가 제조 프로세스들을 수행하고 있는 동안 제공될 수 있다(예를 들어, 제품들을 프로세싱할 때의 장비 판독치들). 센서 데이터(142)는 각각의 제품(예를 들어, 각각의 웨이퍼)마다 상이할 수 있다.
[0024] 일부 실시예들에서, 센서 데이터(142), 계측 데이터(169), 및/또는 제조 데이터(150)가 (예를 들어, 클라이언트 디바이스(120)에 의해 및/또는 압축 감지 서버(112)에 의해) 프로세싱될 수 있다. 센서 데이터(142)의 프로세싱은 피처들을 생성하는 것을 포함할 수 있다. 일부 실시예들에서, 피처들은 센서 데이터(142), 계측 데이터(169), 및/또는 제조 데이터(150)(예를 들어, 기울기, 폭, 높이, 피크 등)에서의 패턴 또는 센서 데이터(142), 계측 데이터(196), 및/또는 제조 데이터(150)(예를 들어, 전압 및 전류로부터 유도되는 전력 등)로부터의 값들의 조합이다. 센서 데이터(142)는 피처들을 포함할 수 있고, 피처들은 신호 프로세싱을 수행하기 위해 및/또는 예측 데이터(168) 및/또는 압축 감지 데이터(166)를 획득하기 위해, 어쩌면 시정 조치의 수행을 위해, 압축 감지 컴포넌트(114)에 의해 사용될 수 있다. 압축 감지 데이터(166)는 압축 감지 시스템(110)과 연관되는 임의의 데이터, 예를 들어, 제조 프로세스 동안 기판의 로케이션에서의 예측된 센서 데이터일 수 있다.
[0025] 센서 데이터(142)의 각각의 인스턴스(예를 들어, 세트)는 제품(예를 들어, 웨이퍼), 제조 장비의 세트, 제조 장비에 의해 생산되는 기판의 타입, 이들의 조합 등에 대응할 수 있다. 계측 데이터(169) 및 제조 데이터(150)의 각각의 인스턴스는, 마찬가지로, 제품, 제조 장비의 세트, 제조 장비에 의해 생산되는 기판의 타입, 이들의 조합 등에 대응할 수 있다. 데이터 저장소는 상이한 데이터 타입들의 세트들을 연관시키는 정보, 예를 들어, 센서 데이터의 세트, 계측 데이터의 세트, 및/또는 제조 데이터의 세트 모두가 동일한 제품, 제조 장비, 기판의 타입 등과 연관된다는 것을 표시하는 정보를 추가로 저장할 수 있다.
[0026] 일부 실시예들에서, 압축 감지 시스템(110)은 감독 머신 러닝(supervised machine learning)(예를 들어, 압축 감지 시스템(110)에서 제공되는 가상 센서 데이터를 포함하는 목표 출력 등)을 사용하여 압축 감지 데이터(166)를 생성할 수 있다.
[0027] 클라이언트 디바이스(120), 제조 장비(124), 센서들(126), 계측 장비(128), 압축 감지 서버(112), 데이터 저장소(140), 서버 머신(170), 및 서버 머신(180)은 압축 감지 데이터(166) 및/또는 예측 데이터(168)를 생성하기 위해, 옵션 사항으로(optionally) 시정 조치들을 수행하기 위해 네트워크(130)를 통해 서로 커플링될 수 있다.
[0028] 일부 실시예들에서, 네트워크(130)는, 클라이언트 디바이스(120)에게, 압축 감지 서버(112), 데이터 저장소(140), 및/또는 다른 공개적으로 이용 가능한 컴퓨팅 디바이스들에 대한 액세스를 제공하는 공공 네트워크이다. 일부 실시예들에서, 네트워크(130)는, 클라이언트 디바이스(120)에게, 제조 장비(124), 센서들(126), 계측 장비(128), 데이터 저장소(140), 및/또는 다른 사적으로 이용 가능한 컴퓨팅 디바이스들에 대한 액세스를 제공하는 사설 네트워크이다. 네트워크(130)는 하나 이상의 광역 네트워크(WAN; Wide Area Network)들, 로컬 영역 네트워크(LAN; Local Area Network)들, 유선 네트워크들(예를 들어, 이더넷(Ethernet) 네트워크), 무선 네트워크들(예를 들어, 802.11 네트워크 또는 와이파이(Wi-Fi) 네트워크), 셀룰러 네트워크들(예를 들어, 롱 텀 에볼루션(LTE; Long Term Evolution) 네트워크), 라우터들, 허브들, 스위치들, 서버 컴퓨터들, 클라우드 컴퓨팅 네트워크들, 및/또는 이들의 조합을 포함할 수 있다.
[0029] 클라이언트 디바이스(120)는 퍼스널 컴퓨터(PC; Personal Computer)들, 랩톱들, 이동 전화기들, 스마트폰들, 태블릿 컴퓨터들, 넷북 컴퓨터들, 네트워크 연결 텔레비전들("스마트 TV"), 네트워크 연결 미디어 플레이어들(예를 들어, 블루 레이 플레이어들), 셋톱박스, 오버 더 톱(OTT; Over-the-Top) 스트리밍 디바이스들, 오퍼레이터 박스들 등과 같은 컴퓨팅 디바이스를 포함할 수 있다. 클라이언트 디바이스(120)는 시정 조치 컴포넌트(122)를 포함할 수 있다. 시정 조치 컴포넌트(122)는 제조 장비(124)와 연관되는 표시(indication)의 사용자 입력을 (예를 들어, 클라이언트 디바이스(120)를 통해 디스플레이되는 그래픽 사용자 인터페이스(GUI; Graphical User Interface)를 통해) 수신할 수 있다. 일부 실시예들에서, 시정 조치 컴포넌트(122)는 표시를 압축 감지 시스템(110)에 송신하고, 압축 감지 시스템(110)으로부터 출력(예를 들어, 압축 감지 데이터(166))을 수신하고, 출력에 기초하여 시정 조치를 결정하고, 시정 조치로 하여금 구현되게 한다.
[0030] 일부 실시예들에서, 압축 감지 시스템(110)은 예측 컴포넌트(116)를 더 포함할 수 있다. 예측 컴포넌트(116)는 예측 데이터(168)를 생성하기 위해 압축 감지 컴포넌트(114)로부터 검색되는 데이터를 취할 수 있다. 일부 실시예들에서, 예측 컴포넌트(116)는 예측 데이터(168)를 클라이언트 디바이스(120)에 제공하고, 클라이언트 디바이스(120)는 예측 데이터(168)를 고려하여 시정 조치 컴포넌트(122)를 통해 시정 조치를 야기한다. 일부 실시예들에서, 시정 조치 컴포넌트(122)는 제조 장비(124)와 연관되는 센서 데이터(142)(예를 들어, 현재의 센서 데이터(146))를 (예를 들어, 데이터 저장소(140) 등으로부터) 획득하고, 제조 장비(124)와 연관되는 센서 데이터(142)(예를 들어, 현재의 센서 데이터(146))를 압축 감지 시스템(110)에 제공한다.
[0031] 일부 실시예들에서, 시정 조치 컴포넌트(122)는 데이터 저장소(140)에 센서 데이터(142)를 저장하고 압축 감지 서버(112)는 데이터 저장소(140)로부터 센서 데이터(142)를 검색한다. 일부 실시예들에서, 압축 감지 서버(112)는 트레이닝된 머신 러닝 모델(들)(190)의 출력(예를 들어, 압축 감지 데이터(166))을 데이터 저장소(140)에 저장할 수 있고 클라이언트 디바이스(120)는 데이터 저장소(140)로부터 출력을 검색할 수 있다. 일부 실시예들에서, 시정 조치 컴포넌트(122)는 압축 감지 시스템(110)으로부터 시정 조치의 표시를 수신하고 시정 조치로 하여금 구현되게 한다. 각각의 클라이언트 디바이스(120)는 사용자들이 데이터(예를 들어, 제조 장비(124)와 연관되는 표시, 제조 장비(124)와 연관되는 시정 조치들 등)를 생성하는 것, 보는 것, 또는 편집하는 것 중 하나 이상을 허용하는 오퍼레이팅 시스템을 포함할 수 있다.
[0032] 일부 실시예들에서, 계측 데이터(192)는 제품들의 이력 속성 데이터(예를 들어, 이력 센서 데이터(144) 및 이력 제조 데이터(152)와 연관되는 제조 파라미터들을 사용하여 생성됨)에 대응하고, 예측 데이터(168)는 (예를 들어, 현재의 센서 데이터(146) 및/또는 현재의 제조 데이터(154)에 의해 기록되는 컨디션들에서 생산된 또는 생산될 제품들의) 예측된 속성 데이터와 연관된다. 일부 실시예들에서, 예측 데이터(168)는, 현재의 센서 데이터(146) 및/또는 현재의 제조 데이터(154)로서 기록되는 컨디션들에 따라 생산된 또는 생산될 제품들의 예측된 계측 데이터(예를 들어, 가상 계측 데이터)이다. 일부 실시예들에서, 예측 데이터(168)는 이상들(예를 들어, 비정상적인 제품들, 비정상적인 컴포넌트들, 비정상적인 제조 장비, 비정상적인 에너지 사용량 등) 및/또는 이상들의 하나 이상의 원인들의 표시이거나 또는 그 표시를 포함한다. 일부 실시예들에서, 예측 데이터(168)는 제조 장비(124), 센서들(126), 계측 장비(128) 등의 일부 컴포넌트에서의 시간 경과에 따른 변화 또는 드리프트의 표시를 포함한다. 일부 실시예들에서, 예측 데이터(168)는 제조 장비(124), 센서들(126), 계측 장비(128) 등의 컴포넌트의 수명의 종료의 표시를 포함한다.
[0033] 결함이 있는 제품들을 초래하는 제조 프로세스들을 수행하는 것은 시간, 에너지, 제품들, 컴포넌트들, 제조 장비(124), 결함들을 식별하고 결함이 있는 제품을 폐기하는 비용 등에서 비용이 많이 들 수 있다. 센서 데이터(142)(예를 들어, 제품을 제조하기 위해 사용되고 있는 제조 파라미터들)를 입력하는 것, 압축 감지 데이터(166)의 출력을 수신하는 것, 및 압축 감지 데이터(166)에 기초하여 시정 조치를 수행하는 것에 의해, 시스템(100)은 결함이 있는 제품들을 생산하고, 식별하고, 폐기하는 비용을 회피하는 기술적 이점을 가질 수 있다.
[0034] 제조 장비(124)의 컴포넌트들의 고장을 야기하는 제조 프로세스들을 수행하는 것은 가동 중단 시간, 제품들에 대한 손상, 장비에 대한 손상, 교체 컴포넌트들의 급행 주문 등에서 비용이 많이 들 수 있다. 센서 데이터(142)(예를 들어, 제품을 제조하기 위해 사용되고 있는 또는 사용될 제조 파라미터들)를 입력하는 것, 압축 감지 데이터(166)의 출력을 수신하는 것, 시간이 지남에 따라 동일한 챔버로부터의 압축 감지 데이터 세트들을 비교하여 드리프트하는 또는 고장나는 컴포넌트들을 진단하는 것(예측 데이터(168)로서 기록됨), 및 예측 데이터(168)에 기초하여 시정 조치들(예를 들어, 예측된 운영 유지 보수, 예컨대 컴포넌트들의 교체, 프로세싱, 세정 등)을 수행하는 것에 의해, 시스템(100)은 예상치 못한 컴포넌트 고장, 스케줄링되지 않은 가동 중단 시간, 생산성 손실, 예상치 못한 장비 고장, 제품 폐기물 등 중 하나 이상의 것의 비용을 회피하는 기술적 이점을 가질 수 있다. 시간 경과에 따른 컴포넌트들, 예를 들어, 제조 장비(124), 센서들(126), 계측 장비(128) 등의 성능을 모니터링하는 것은 열화하는 컴포넌트들의 표시들을 제공할 수 있다.
[0035] 제조 파라미터들은 증가된 리소스(예를 들어, 에너지, 냉각제, 가스들 등) 소비, 제품들을 생산하기 위한 증가된 양의 시간, 증가된 컴포넌트 고장, 증가된 양들의 결함이 있는 제품들 등의 비용이 많이 드는 결과들을 가질 수 있는 제품을 생산하기 위한 차선책일 수 있다. 센서 데이터(142)를 트레이닝된 머신 러닝 모델(190)에 입력하는 것, 압축 감지 데이터(166)의 출력을 수신하는 것, 및 (예를 들어, 압축 감지 데이터(166)에 기초하여) 제조 파라미터들을 업데이트하는(예를 들어, 최적의 제조 파라미터들을 설정하는) 시정 조치를 (예를 들어, 압축 감지 데이터(166)에 기초하여) 수행하는 것에 의해, 시스템(100)은 차선의 제조 파라미터들의 비용이 많이 드는 결과들을 회피하기 위해 최적의 제조 파라미터들(예를 들어, 하드웨어 파라미터들, 프로세스 파라미터들, 최적 설계)을 사용하는 기술적 이점을 가질 수 있다.
[0036] 시정 조치는 컴퓨테이셔널 프로세스 제어(CPC; Computational Process Control), 통계적 프로세스 제어(SPC; Statistical Process Control)(예를 들어, 제어 중인 프로세스를 결정하기 위한 전자 컴포넌트들에 대한 SPC, 컴포넌트들의 유효한 수명을 예측하기 위한 SPC, 3 시그마의 그래프에 비교할 SPC 등), 고급 프로세스 제어(APC; Advanced Process Control), 모델-기반 프로세스 제어, 예방적 운영 유지 보수(preventative operative maintenance), 설계 최적화, 제조 파라미터들의 업데이트, 제조 레시피들의 업데이트, 피드백 제어, 머신 러닝 수정 등 중 하나 이상과 연관될 수 있다.
[0037] 일부 실시예들에서, 시정 조치는 경고(예를 들어, 압축 감지 데이터(166) 또는 예측 데이터(168)가 예측된 이상, 예컨대 제품, 컴포넌트, 또는 제조 장비(124)의 이상을 표시하는 경우 제조 프로세스를 정지하기 위한 또는 수행하지 않기 위한 알람)를 제공하는 것을 포함한다. 일부 실시예들에서, 시정 조치는 피드백 제어를 제공하는 것(예를 들어, 이상을 표시하는 압축 감지 데이터(166) 또는 예측 데이터(168)에 응답하여 제조 파라미터를 수정하는 것)을 포함한다. 일부 실시예들에서, 시정 조치는 머신 러닝을 제공하는 것(예를 들어, 예측 데이터(168)에 기초하여 하나 이상의 제조 파라미터들을 수정하는 것)을 포함한다. 일부 실시예들에서, 시정 조치의 수행은 하나 이상의 제조 파라미터들에 대한 업데이트들을 야기하는 것을 포함한다.
[0038] 제조 파라미터들은 하드웨어 파라미터들(예를 들어, 컴포넌트들을 교체하는 것, 특정한 컴포넌트들을 사용하는 것, 프로세싱 칩을 교체하는 것, 펌웨어를 업데이트하는 것 등) 및/또는 프로세스 파라미터들(예를 들어, 온도, 압력, 흐름, 레이트, 전류, 전압, 가스 흐름, 리프트 속도 등)을 포함할 수 있다. 일부 실시예들에서, 시정 조치는 예방적 운영 유지 보수(예를 들어, 제조 장비(124)의 컴포넌트들의 교체, 프로세스, 세정 등)를 야기하는 것을 포함한다. 일부 실시예들에서, 시정 조치는 설계 최적화를 야기하는 것(예를 들어, 최적화된 제품을 위해, 제조 파라미터들, 제조 프로세스들, 제조 장비(124) 등을 업데이트하는 것)을 포함한다. 일부 실시예들에서, 시정 조치는 (예를 들어, 제조 장비(124)를 아이들 모드, 슬립 모드, 웜업 모드 등에 있도록) 레시피를 업데이트하는 것을 포함한다.
[0039] 압축 감지 서버(112), 서버 머신(170), 및 서버 머신(180) 각각은 랙마운트 서버, 라우터 컴퓨터, 서버 컴퓨터, 퍼스널 컴퓨터, 메인프레임 컴퓨터, 랩톱 컴퓨터, 태블릿 컴퓨터, 데스크톱 컴퓨터, 그래픽스 프로세싱 유닛(GPU; Graphics Processing Unit), 가속기 주문형 집적 회로(ASIC; Application-Specific Integrated Circuit)(예를 들어, 텐서 프로세싱 유닛(TPU; Tensor Processing Unit)) 등과 같은 하나 이상의 컴퓨팅 디바이스들을 포함할 수 있다.
[0040] 압축 감지 서버(112)는 압축 감지 컴포넌트(114)를 포함할 수 있다. 일부 실시예들에서, 압축 감지 컴포넌트(114)는 현재의 센서 데이터(146), 및/또는 현재의 제조 데이터(154)를 수신할 수 있고(예를 들어, 클라이언트 디바이스(120)로부터 수신할 수 있고, 데이터 저장소(140)로부터 검색할 수 있고), 현재의 데이터에 기초하여 제조 장비(124)와 연관되는 시정 조치를 수행하기 위한 출력(예를 들어, 압축 감지 데이터(166))을 생성할 수 있다. 일부 실시예들에서, 압축 감지 컴포넌트(114)는 현재의 데이터에 기초하여 시정 조치를 수행하기 위한 출력을 결정하기 위해 하나 이상의 트레이닝된 머신 러닝 모델들(190)을 사용할 수 있다.
[0041] 압축 감지 서버(112)는 예측 컴포넌트(116)를 또한 포함할 수 있다. 예측 컴포넌트(116)는 예측 데이터(168)를 생성하기 위해 사용될 수 있다. 일부 실시예들에서, 예측 데이터(168)는 제조 장비(124)의 컴포넌트들 노후화, 열화 등의 표시들을 포함한다. 일부 실시예들에서, 예측 컴포넌트(116)는 제조 챔버 내의 컨디션들의 가상 측정치들이 주어지면 웨이퍼 속성들의 예측치들을 결정하기 위해 압축 감지 데이터(166)를 통합할 수 있다. 일부 실시예들에서, 예측 컴포넌트(116)는 머신 러닝 모델을 포함한다.
[0042] 일부 실시예들에서, 센서 데이터(142)는 트레이닝된 머신 러닝 모델(190)에 제공된다. 머신 러닝 모델(190)은 입력 센서 데이터(142)에 기초하여 제조 챔버 내의 기판의 로케이션 근처의(예를 들어, 로케이션에서의) 속성 값들을 표시하는 데이터를 출력하도록 트레이닝된다. 모델(190)은 일부 실시예들에서 희소 회귀 알고리즘을 활용할 수 있다. 일부 실시예들에서, 머신 러닝 모델(190)은 제조 챔버 내의 로케이션들에 배치되는 다수의 센서들로부터의 온도 데이터를 입력으로서 취한다. 일부 실시예들에서, 센서들 중 적어도 대부분은 기판의 로케이션에 있지 않다. 예를 들어, 온도 센서들은 가스 흡입구들, 배기 도관들, 기판 지지체들, 챔버 벽들 등 근처의 다양한 로케이션들에 배치될 수 있다. 그 다음, 모델(190)은 챔버 내의 모든 지점들에서의 온도 데이터를 출력으로서 생성한다. 일부 실시예들에서, 모델(190)은, 적어도 기판 근처의 로케이션들을 비롯하여, 챔버 내의 관심 영역들에서의 속성 값들(관심을 갖지 않는 다른 영역들에서의 속성 값들을 배제함)을 출력으로서 생성할 수 있다. 챔버 내의 로케이션들의 서브세트에만 관련되는 데이터를 생성하는 것은 더 적은 수의 센서들(126)을 활용하여 기판 상의 속성 값들을 신뢰성 있게 가상으로 측정하는 기술적 이점을 제공한다.
[0043] 일부 실시예들에서, 모델(190)은 계수들의 세트를 출력으로서 생성한다. 이들 계수들은 기본 세트의 멤버들 중 가중된 가산적 조합을 생성하기 위한 가중치들로서 사용된다. 기본 세트의 가중된 가산적 조합은 제조 챔버에서의 속성 값들의 맵을 표시한다. 모델(190)에 의해 활용되는 기본 세트는 실시예들에서 서버 머신(170)의 차수 감소 모델 생성기(174)에 의해 생성된다. 기본 세트는 데이터 저장소(140)의 차수 감소 기본 데이터(164)로서 저장될 수 있다. 기본 세트는 적은 수의 기본 세트 멤버들(예를 들어, 모델(190)에 의해 출력되는 적은 수의 계수들이 제로가 아님)을 사용하여 상이한 제조 입력 파라미터들에 대한 제조 챔버에서의 속성 값들의 맵들을 나타내는 방식으로 선택될 수 있다. 모델(190)에 의해 출력되는 제로가 아닌 계수들의 개수를 결정하는 파라미터의 값은 모델(190)의 트레이닝 동안 결정될 수 있다.
[0044] 일부 실시예들에서, 차수 감소 모델 생성기(174)는 물리-기반 모델(176)의 출력을 고려하여 기본 세트를 생성한다. 일부 실시예들에서, 물리-기반 모델(176)은 다양한 입력 파라미터들(히터들에 공급되는 전력, 가스 혼합, 가스 흐름 등)에서 제조 챔버에서의 정상 상태 컨디션들을 설명하는 수학식들을 풀기 위해 사용된다. 선택된 입력 파라미터들은 기판들의 생산에 관련이 있는 것으로 간주되는 파라미터 공간의 영역에 걸쳐 있을 수 있다. 입력 데이터의 각각의 변동에 대해, 물리-기반 모델(176)은, 제조 챔버에서의 정상 상태에서, 입력 데이터가 주어지면, 예측된 속성 값들에 대응하는 속성 값들의 맵을 생성한다. 물리-기반 모델에 대응하는 데이터는, 속성 값들의 생성된 맵들을 모델 속성 맵 데이터(162)로서 저장하는 것을 비롯하여, 데이터 저장소(140)에서 물리-기반 모델 데이터(160)로서 저장될 수 있다. 차수 감소 모델 생성기(174)는 (어쩌면 데이터 저장소(140)의 모델 속성 맵 데이터(162)로부터 검색되는) 물리-기반 모델(176)에 의해 생성되는 속성 값 맵들의 세트를 입력으로서 취한다. 차수 감소 모델 생성기(174)는 속성 값 맵들의 그룹을 설명하는 기본 세트를 생성한다. 생성된 기본 세트는 데이터 저장소(140)의 차수 감소 기본 데이터(164)로서 저장된다. 차수 감소 모델 생성기(174)는 적절한 직교 분해 알고리즘을 사용하여 기본 세트를 생성할 수 있다.
[0045] 이력 센서 데이터(144)는 현재의 센서 데이터(146) 및 제조 데이터(150)와 결합하여 제조 장비(124)의 컴포넌트들의 드리프트, 변화들, 노후화 등을 검출하기 위해 사용될 수 있다. 예측 컴포넌트(116)는 이들 데이터 타입들의 조합들 및 비교들을 사용하여 예측 데이터(168)를 생성할 수 있다. 일부 실시예들에서, 예측 데이터(168)는 제조 장비(124), 센서들(126) 등의 컴포넌트들의 수명을 예측하는 데이터를 포함한다.
[0046] 희소 회귀 및 물리-기반 모델링을 결합하는 것은 다른 기법들에 비해 기술적 이점들을 제공한다. 정확한 물리-기반 모델은 제조 챔버에서의 속성 값들의 신뢰 가능한 맵을 제공한다. 그러나, 제조 공차들, 컴포넌트들 노후화 등의 범위들에 기인하여, 제조 챔버를 완벽하게 모델링하는 것이 항상 가능한 것은 아니다. 예를 들어, 히터가 예상되는 것보다 약간 더 적은 또는 더 많은 에너지를 공급할 수 있고, 가스 흐름 조절기가 선택되는 유량을 정확하게 허용하지 않을 수 있고, 챔버에서 표면들 사이의 접촉이 이상적인 것보다 다소 더 적을 수 있는 식일 수 있다. 그러한 변동들은 사용자에게 공지되지 않을 수 있으며, 순수한 물리-기반 모델에서는 포착되지 않을 수 있다. 압축 감지를 통해 가상 측정을 수행하는 머신 러닝 희소 회귀 모델을 구현하는 것에 의해, 이들 한계들이 극복될 수 있다. 머신 러닝 모델은, 파라미터 공간의 영역에 걸쳐, 다양한 입력 파라미터들에 대해 트레이닝된다. 머신 러닝 모델이 동작하도록 트레이닝되는 파라미터 공간의 범위 내에서 (상기에서 논의되는 바와 같이, 모델에서의 부정확성들에 기인하는) 챔버에서의 실제 컨디션들의 변동들이 보간(interpolation)을 통해 고려될 수 있으며, 머신 러닝 모델을 트레이닝시키기 위해 사용되는 파라미터 공간의 영역을 다소 벗어나는 설정들이 외삽(extrapolation)을 통해 고려될 수 있다. 이러한 방식으로, 챔버의 동작 컨디션들에서의 예상치 못한 변동들이 압축 감지 시스템(110)으로부터의 결과들에 통합될 수 있다.
[0047] 일부 실시예들에서, 압축 감지 컴포넌트(114)는 현재의 센서 데이터(146)를 수신하고, 데이터에서 패턴들을 추출하는 것 또는 데이터를 새로운 복합 데이터로 결합하는 것과 같은 사전 프로세싱을 수행할 수 있다. 그 다음, 압축 감지 컴포넌트(114)는 입력으로서 데이터를 트레이닝된 머신 러닝 모델(190)에 제공할 수 있다. 압축 감지 컴포넌트(114)는 트레이닝된 머신 러닝 모델(190)로부터, 기판의 로케이션에서의 값들을 비롯하여, 속성 값들의 맵을 수신할 수 있다. 그 다음, 압축 감지 컴포넌트(114)는 시정 조치가 발생하게 할 수 있다. 시정 조치는 경고를 클라이언트 디바이스(120)로 전송하는 것을 포함할 수 있다. 시정 조치는 제조 장비(124)의 제조 파라미터들을 업데이트하는 것을 또한 포함할 수 있다. 시정 조치는 챔버 또는 기구 드리프트, 노후화, 또는 고장을 표시하는 예측 데이터(168)를 생성하는 것을 또한 포함할 수 있다.
[0048] 데이터 저장소(140)는 메모리(예를 들어, 랜덤 액세스 메모리), 드라이브(예를 들어, 하드 드라이브, 플래시 드라이브), 데이터베이스 시스템, 또는 데이터를 저장할 수 있는 다른 타입의 컴포넌트 또는 디바이스일 수 있다. 데이터 저장소(140)는 다수의 컴퓨팅 디바이스들(예를 들어, 다수의 서버 컴퓨터들)에 걸칠 수 있는 다수의 저장 컴포넌트들(예를 들어, 다수의 드라이브들 또는 다수의 데이터베이스들)을 포함할 수 있다. 데이터 저장소(140)는 센서 데이터(142), 제조 데이터(150), 물리-기반 모델 데이터(160), 압축 감지 데이터(166), 예측 데이터(168), 및 계측 데이터(169)를 저장할 수 있다. 센서 데이터(142)는 이력 센서 데이터(144) 및 현재의 센서 데이터(146)를 포함할 수 있다. 센서 데이터는 제조 프로세스들의 지속 기간에 걸친 센서 데이터 시간 자취들, 물리적 센서들과의 데이터의 연관성들, 사전 프로세싱된 데이터, 예컨대 평균들 및 복합 데이터, 및 시간 경과에 따른 센서 성능을 표시하는 데이터(즉, 많은 제조 프로세스들)를 포함할 수 있다. 제조 데이터(150) 및 계측 데이터(169)는 유사한 피처들을 포함할 수 있다. 이력 센서 데이터(144) 및 이력 제조 데이터(152)는 이력 데이터(예를 들어, 머신 러닝 모델(190)을 트레이닝시키기 위한 적어도 일부)일 수 있다. 현재의 센서 데이터(146)는, (예를 들어, 시정 조치들을 수행하기 위해) 압축 감지 데이터(166)가 생성될 현재의 데이터(예를 들어, 이력 데이터에 후속하여, 트레이닝된 머신 러닝 모델(190)에 입력될 적어도 일부)일 수 있다. 계측 데이터(169)는 생성된 기판들의 계측 데이터뿐만 아니라, 그들 제품들에 대응하는 센서 데이터, 제조 데이터, 및 모델 데이터일 수 있다. 계측 데이터(169)는 추가적인 기판들을 만들기 위한 프로세스들을 설계하기 위해 활용될 수 있다. 예측 데이터(168)는 입력 파라미터들의 세트로부터 어떤 계측 데이터가 유래할 수 있는지의 예측치들을 포함할 수 있다. 예측 데이터(168)는 시간이 지남에 따라 노후화되고 고장나는 시스템(100)의 컴포넌트들을 표시하는 데이터를 또한 포함할 수 있다.
[0049] 일부 실시예들에서, 압축 감지 시스템(110)은 서버 머신(170) 및 서버 머신(180)을 더 포함한다. 서버 머신(170)은 머신 러닝 모델(190)을 트레이닝, 검증, 및/또는 테스트하기 위해 데이터 세트들(예를 들어, 데이터 입력들의 세트 및 목표 출력들의 세트)을 생성할 수 있는 데이터 세트 생성기(172)를 포함한다. 데이터 세트 생성기(172)의 일부 동작들은 도 2 및 도 4a와 관련하여 하기에서 상세하게 설명된다. 일부 실시예들에서, 데이터 세트 생성기(172)는 이력 데이터(예를 들어, 이력 센서 데이터(144), 이력 제조 데이터(152)) 및 물리적 모델 데이터(예를 들어, 모델 속성 맵 데이터(162), 차수 감소 기준 데이터(164))를 트레이닝 세트(예를 들어, 데이터의 60 퍼센트), 검증 세트(예를 들어, 데이터의 20 퍼센트), 및 테스팅 세트(예를 들어, 데이터의 20 퍼센트)로 파티셔닝할 수 있다. 일부 실시예들에서, 압축 감지 시스템(110)은 (예를 들어, 압축 감지 컴포넌트(114)를 통해) 피처들의 다수의 세트들을 생성한다. 예를 들어, 피처들의 제1 세트는 데이터 세트들(예를 들어, 트레이닝 세트, 검증 세트, 및 테스팅 세트) 각각에 대응하는 (예를 들어, 센서들의 제1 세트, 센서들의 제1 세트로부터의 값들의 제1 조합, 센서들의 제1 세트로부터의 값들에서의 제1 패턴들로부터의) 센서 데이터의 타입들의 제1 세트에 대응할 수 있고, 피처들의 제2 세트는 데이터 세트들 각각에 대응하는 (예를 들어, 센서들의 제1 세트와는 상이한 센서들의 제2 세트, 제1 조합과는 상이한 값들의 제2 조합, 제1 패턴들과는 상이한 제2 패턴들로부터의) 센서 데이터의 타입들의 제2 세트에 대응할 수 있다.
[0050] 서버 머신(180)은 트레이닝 엔진(182), 검증 엔진(184), 선택 엔진(185), 및/또는 테스팅 엔진(186)을 포함한다. 엔진(예를 들어, 트레이닝 엔진(182), 검증 엔진(184), 선택 엔진(185), 및 테스팅 엔진(186))은 하드웨어(예를 들어, 회로부(circuitry), 전용 로직, 프로그래머블 로직, 마이크로코드, 프로세싱 디바이스 등), 소프트웨어(예컨대, 프로세싱 디바이스, 범용 컴퓨터 시스템, 또는 전용 머신 상에서 실행되는 명령들), 펌웨어, 마이크로코드, 또는 이들의 조합을 지칭할 수 있다. 트레이닝 엔진(182)은 데이터 세트 생성기(172)로부터의 트레이닝 세트와 연관되는 피처들의 하나 이상의 세트들을 사용하여 머신 러닝 모델(190)을 트레이닝시킬 수 있을 수 있다. 트레이닝 엔진(182)은 다수의 트레이닝된 머신 러닝 모델들(190)을 생성할 수 있는데, 여기서 각각의 트레이닝된 머신 러닝 모델(190)은 트레이닝 세트의 피처들의 별개의 세트(예를 들어, 센서들의 별개의 세트로부터의 센서 데이터)에 대응한다. 예를 들어, 제1 트레이닝된 머신 러닝 모델은 모든 피처들(예를 들어, X1-X5)을 사용하여 트레이닝되었을 수 있고, 제2 트레이닝된 머신 러닝 모델은 피처들의 제1 서브세트(예를 들어, X1, X2, X4)를 사용하여 트레이닝되었을 수 있고, 제3 트레이닝된 머신 러닝 모델은 피처들의 제1 서브세트와 부분적으로 중첩할 수 있는 피처들의 제2 서브세트(예를 들어, X1, X3, X4, 및 X5)를 사용하여 트레이닝되었을 수 있다. 데이터 세트 생성기(172)는 트레이닝된 머신 러닝 모델(예를 들어, 190)의 출력을 수신할 수 있고, 그 데이터를 트레이닝, 검증, 및 테스팅 데이터 세트들로 수집할 수 있고, 데이터 세트들을 사용하여 제2 머신 러닝 모델을 트레이닝시킬 수 있다.
[0051] 검증 엔진(184)은 데이터 세트 생성기(172)로부터의 검증 세트의 피처들의 대응하는 세트를 사용하여 트레이닝된 머신 러닝 모델(190)을 검증할 수 있을 수 있다. 예를 들어, 트레이닝 세트의 피처들의 제1 세트를 사용하여 트레이닝되는 제1 트레이닝된 머신 러닝 모델(190)은 검증 세트의 피처들의 제1 세트를 사용하여 검증될 수 있다. 검증 엔진(184)은 검증 세트의 피처들의 대응하는 세트들에 기초하여 트레이닝된 머신 러닝 모델들(190) 각각의 정확도를 결정할 수 있다. 검증 엔진(184)은 임계 정확도를 충족하지 않는 정확도를 갖는 트레이닝된 머신 러닝 모델들(190)을 폐기할 수 있다. 일부 실시예들에서, 선택 엔진(185)은 임계 정확도를 충족하는 정확도를 갖는 하나 이상의 트레이닝된 머신 러닝 모델들(190)을 선택할 수 있을 수 있다. 일부 실시예들에서, 선택 엔진(185)은 트레이닝된 머신 러닝 모델들(190) 중 최고 정확도를 갖는 트레이닝된 머신 러닝 모델(190)을 선택할 수 있을 수 있다.
[0052] 테스팅 엔진(186)은 데이터 세트 생성기(172)로부터의 테스팅 세트의 피처들의 대응하는 세트를 사용하여 트레이닝된 머신 러닝 모델(190)을 테스트할 수 있을 수 있다. 예를 들어, 트레이닝 세트의 피처들의 제1 세트를 사용하여 트레이닝된 제1 트레이닝된 머신 러닝 모델(190)은 테스팅 세트의 피처들의 제1 세트를 사용하여 테스트될 수 있다. 테스팅 엔진(186)은 테스팅 세트들에 기초하여 모든 트레이닝된 머신 러닝 모델들 중 가장 높은 정확도를 갖는 트레이닝된 머신 러닝 모델(190)을 결정할 수 있다.
[0053] 머신 러닝 모델(190)은 데이터 입력들 및 대응하는 목표 출력들(개개의 트레이닝 입력들에 대한 정확한 답변들)을 포함하는 트레이닝 세트를 사용하여 트레이닝 엔진(182)에 의해 생성되는 모델 아티팩트(model artifact)를 지칭할 수 있다. 데이터 입력을 목표 출력(정확한 대답)에 맵핑하는 데이터 세트들의 패턴들이 확인될 수 있고, 머신 러닝 모델(190)은 이들 패턴들을 캡처하는 맵핑들을 제공받는다. 일부 실시예들에서, 머신 러닝 모델(190)은 희소 회귀 알고리즘을 활용하여 제조 챔버 내에 배치되는 센서들에 의해 제공되는 다수의 값들로부터 제조 챔버에서의 기판 상의 속성 값들을 재구성하는데, 센서들 중 적어도 대부분은 기판의 로케이션에 로케이팅되지 않는다. 머신 러닝 모델(190)은 일부 실시예들에서 제조 챔버에서의 속성 값들을 생성하기 위해 LASSO 회귀를 사용할 수 있다.
[0054] 압축 감지 컴포넌트(114)는 현재의 센서 데이터(146)를 트레이닝된 머신 러닝 모델(190)에 제공할 수 있고 입력에 대해 트레이닝된 머신 러닝 모델(190)을 실행하여 하나 이상의 출력들을 획득할 수 있다. 압축 감지 컴포넌트(114)는 트레이닝된 머신 러닝 모델(190)의 출력으로부터 압축 감지 데이터(166)를 결정(예를 들어, 추출)할 수 있을 수 있고, 압축 감지 데이터(166)가 현재의 센서 데이터(146)에서 제조 장비(124)를 사용하여 생산될 또는 생산된 제품들에 대한 입력 데이터와 연관되는 프로세스의 정확한 예측자(predictor)라는 신뢰도의 레벨을 표시하는 출력으로부터 신뢰도 데이터를 결정(예를 들어, 추출)할 수 있다. 예측 컴포넌트(116)는, 모델(190)의 출력에 기초하여, 완성된 기판 속성들에 대한 예측치들 및 제조 장비(124), 센서들(126), 또는 계측 장비(128)의 컴포넌트들의 유효 수명들의 예측치들을 포함하는 예측 데이터(168)를 결정할 수 있을 수 있다. 예측 컴포넌트(116)는, 예측 데이터(168)가 명시된 이벤트들의 정확한 예측자라는 신뢰도의 레벨을 표시하는 신뢰도 데이터를 결정할 수 있을 수 있다. 압축 감지 컴포넌트(114), 예측 컴포넌트(116), 또는 시정 조치 컴포넌트(122)는 압축 감지 데이터(166) 및/또는 예측 데이터(168)에 기초하여 제조 장비(124)와 연관되는 시정 조치를 야기할지의 여부를 결정하기 위해, 신뢰도 데이터를 사용할 수 있다.
[0055] 신뢰도 데이터는 신뢰도의 레벨을 포함할 수 있거나 또는 표시할 수 있다. 한 예로서, 예측 데이터(168)는 제조 입력들의 세트가 주어지면 완성된 웨이퍼의 속성들을 표시할 수 있다. 신뢰도 데이터는 예측 데이터(168)가 입력 데이터의 적어도 일부와 연관되는 제품들에 대한 정확한 예측치라는 것을 표시할 수 있다. 하나의 예에서, 신뢰도의 레벨은 0 이상 1 이하 사이의 실수인데, 여기서 0은 예측 데이터(168)가 입력 데이터에 따라 프로세싱되는 제품들에 대한 정확한 예측치라는 신뢰도가 없다는 것을 표시하고 1은 예측 데이터(168)가 입력 데이터에 따라 프로세싱되는 제품들의 속성들을 정확하게 예측한다는 절대 신뢰도를 표시한다. 신뢰도 데이터가 사전 결정된 수의 인스턴스들(예를 들어, 인스턴스들의 백분율, 인스턴스들의 빈도, 인스턴스들의 총 수 등)에 대한 임계 레벨 미만의 신뢰도의 레벨을 표시하는 것에 응답하여, 예측 컴포넌트(116)는 트레이닝된 머신 러닝 모델(190)로 하여금 (예를 들어, 현재의 센서 데이터(146), 현재의 제조 데이터(154) 등에 기초하여) 재트레이닝되게 할 수 있다.
[0056] 제한이 아니라, 예시의 목적을 위해, 본 개시내용의 양상들은 이력 데이터(예를 들어, 이력 센서 데이터(144), 이력 제조 데이터(152))를 사용한 하나 이상의 머신 러닝 모델들(190)의 트레이닝 및 현재의 데이터(예를 들어, 현재의 센서 데이터(146), 현재의 제조 데이터(154))를 하나 이상의 트레이닝된 머신 러닝 모델들(190)에 입력하여 압축 감지 데이터(166)를 결정하는 것을 설명한다. 다른 구현들에서, (예를 들어, 트레이닝된 머신 러닝 모델을 사용하지 않고, 어쩌면 적합(fit)의 희소성을 제어하는 파라미터의 값을 트레이닝시키는 대신 명시하는 것에 의해) 압축 감지 데이터를 결정하기 위해 휴리스틱 모델(heuristic model) 또는 규칙-기반 모델이 사용된다. 압축 감지 컴포넌트(114) 및 예측 컴포넌트(116)는 이력 센서 데이터(144), 이력 제조 데이터(152), 및 계측 데이터(169)를 모니터링할 수 있다. 도 2의 데이터 입력들(210)과 관련하여 설명되는 정보 중 임의의 것은 휴리스틱 또는 규칙-기반 모델에서 모니터링될 수 있거나 또는 다른 방식으로 사용될 수 있다.
[0057] 일부 실시예들에서, 클라이언트 디바이스(120), 압축 감지 서버(112), 서버 머신(170), 및 서버 머신(180)의 기능들은 더 적은 수의 머신들에 의해 제공될 수 있다. 예를 들어, 일부 실시예들에서, 서버 머신들(170 및 180)은 단일의 머신으로 통합될 수 있고, 한편, 일부 다른 실시예들에서, 서버 머신(170), 서버 머신(180), 및 압축 감지 서버(112)는 단일의 머신으로 통합될 수 있다. 일부 실시예들에서, 클라이언트 디바이스(120) 및 압축 감지 서버(112)는 단일의 머신으로 통합될 수 있다.
[0058] 일반적으로, 하나의 실시예에서 클라이언트 디바이스(120), 압축 감지 서버(112), 서버 머신(170), 및 서버 머신(180)에 의해 수행되는 것으로 설명되는 기능들은, 적절하다면, 다른 실시예들에서 압축 감지 서버(112) 상에서 또한 수행될 수 있다. 또한, 특정한 컴포넌트에 귀속되는 기능성(functionality)은 함께 동작하는 상이한 또는 다수의 컴포넌트들에 의해 수행될 수 있다. 예를 들어, 일부 실시예들에서, 압축 감지 서버(112)는 예측 데이터(168)에 기초하여 시정 조치를 결정할 수 있다. 다른 예에서, 클라이언트 디바이스(120)는 트레이닝된 머신 러닝 모델로부터의 출력에 기초하여 예측 데이터(168)를 결정할 수 있다.
[0059] 또한, 특정한 컴포넌트의 기능들은 함께 동작하는 상이한 또는 다수의 컴포넌트들에 의해 수행될 수 있다. 압축 감지 서버(112), 서버 머신(170), 또는 서버 머신(180) 중 하나 이상은 적절한 애플리케이션 프로그래밍 인터페이스(API; application programming interface)들을 통해 다른 시스템들 또는 디바이스들에 제공되는 서비스로서 액세스될 수 있다.
[0060] 실시예들에서, "사용자"는 단일의 개인으로서 표현될 수 있다. 그러나, 본 개시내용의 다른 실시예들은 "사용자"가 복수의 사용자들 및/또는 자동화된 소스에 의해 제어되는 엔티티인 것을 포괄한다. 예를 들어, 관리자들 그룹으로서 연합되는 개개의 사용자들의 세트는 "사용자"로서 간주될 수 있다.
[0061] 본 개시내용의 실시예들은 데이터 품질 평가, 피처 향상, 모델 평가, 가상 계측(VM; Virtual Metrology), 예측 유지 보수(PdM; Predictive Maintenance), 한계 최적화 등에 적용될 수 있다.
[0062] 본 개시내용의 실시예들은 제조 시설들(예를 들어, 반도체 제조 시설들)에서 시정 조치를 수행하기 위해 압축 감지 데이터(166) 및 예측 데이터(168)를 생성하는 관점들에서 논의되지만, 실시예들은 일반적으로 물리지식기반 가상 측정들 및 압축 감지를 활용하는 것에 의해 개선된 데이터 프로세싱에 또한 일반적으로 적용될 수 있다. 실시예들은 상이한 타입들의 데이터에 기초하여 특성화 및 모니터링에 일반적으로 적용될 수 있다.
[0063] 도 2는, 특정한 실시예들에 따른, 머신 러닝 모델(예를 들어, 도 1의 모델(190))에 대한 데이터 세트들을 생성하기 위해 사용되는 예시적인 데이터 세트 생성기(272)(예를 들어, 도 1의 데이터 세트 생성기(172))의 블록 다이어그램이다. 데이터 세트 생성기(272)는 도 1의 서버 머신(170)의 일부일 수 있다. 일부 실시예들에서, 도 1의 시스템(100)은 다수의 머신 러닝 모델들을 포함한다. 그러한 경우들에서, 각각의 모델은 별개의 데이터 세트 생성기를 가질 수 있거나, 또는 모델들은 데이터 세트 생성기를 공유할 수 있다.
[0064] 도 2를 참조하면, 데이터 세트 생성기(272)(예를 들어, 도 1의 데이터 세트 생성기(172))를 포함하는 시스템(200)은 머신 러닝 모델(예를 들어, 도 1의 모델(190))에 대한 데이터 세트들을 생성한다. 데이터 세트 생성기(272)는 컴퓨터-보조 물리-기반 모델로부터 출력으로서 검색되는 데이터를 사용하여 데이터 세트들을 생성할 수 있다. 일부 실시예들에서, 데이터 세트 생성기(272)는 물리-기반 모델에서 지점들의 서브세트(예를 들어, 도 1의 모델 속성 맵 데이터(162)의 지점들의 서브세트, 및 도 1의 물리-기반 모델(176)로부터의 출력)를 선택하는 것에 의해 트레이닝 입력을 생성한다. 예를 들어, 물리-기반 모델의 출력은 챔버 내 모든 로케이션들에서의 온도들의 맵일 수 있다. 데이터 세트 생성기(272)는 다수의 이들 로케이션들로부터 온도 값들을 추출하는 것에 의해 트레이닝 세트를 형성할 수 있다. 트레이닝 입력으로서 사용되는 로케이션들은 제조 챔버에서의 센서들(예를 들어, 도 1의 센서들(126))의 로케이션에 대응한다. 이들 센서들의 배치는 사용자에 의해 선택되었을 수 있거나, 또는 압축 감지를 위해 제조 챔버에서 센서들의 배치를 최적화하도록 트레이닝되는 머신 러닝 모델에 의해 출력되었을 수 있다. 일부 실시예들에서, 트레이닝 입력(210)은, 시뮬레이팅된 센서 데이터(262A-262Z)의 세트들을 비롯하여, 물리적 센서들에 의해 취해질 수 있는 데이터를 나타내는 시뮬레이팅된 데이터이다. 데이터 세트 생성기(272)는 머신 러닝 모델을 트레이닝시키기 위한 목표 출력(220)을 또한 생성한다. 목표 출력은, 챔버에서의 센서들의 로케이션들로부터 멀리 떨어져 로케이팅되는 속성 값들을 비롯하여, 제조 챔버에서의 속성 값들의 맵(230)을 포함한다. 일부 구현들에서, 목표 출력(220)은 기판의 로케이션 근처의 챔버에서의 속성들의 맵을 포함한다. 속성 값들의 맵(230)은 챔버 전체에 걸친 값들, 높은 관심 영역들에서의 값들, 기판 근처에서만의 값들 등을 포함할 수 있다. 입력 트레이닝 데이터(210) 및 목표 출력 데이터(220)는 머신 러닝 모델(예를 들어, 도 1의 모델(190))에 공급된다.
[0065] 목표 출력(220)이 여러 가지 상이한 방식들로 표현되는 것은 본 개시내용의 범위 내에 있다. 속성 값들의 맵(230)은 가상 센서들의 로케이션들로부터 멀리 있는 속성 값들의 가상 측정치들일 수 있거나, 또는 그것은 가상 측정 값들을 생성하기 위해 차수 감소 모델의 기본 세트의 멤버들에게 적용될 가중치들을 표시하는 계수들일 수 있다.
[0066] 도 2를 참조하면, 일부 실시예들에서, 데이터 세트 생성기(272)는 하나 이상의 데이터 입력들(210)(예를 들어, 트레이닝 입력, 검증 입력, 테스팅 입력)을 포함하며 데이터 입력들(210)에 대응하는 하나 이상의 목표 출력들(220)을 포함할 수 있는 데이터 세트(예를 들어, 트레이닝 세트, 검증 세트, 테스팅 세트)를 생성한다. 데이터 세트는 데이터 입력들(210)을 목표 출력들(220)로 맵핑하는 맵핑 데이터를 또한 포함할 수 있다. 데이터 입력들(210)은 "피처들", "특질(attribute)들", 또는 정보"로서 또한 지칭될 수 있다. 일부 실시예들에서, 데이터 세트 생성기(272)는 데이터 세트를 도 1의 트레이닝 엔진(182), 검증 엔진(184), 또는 테스팅 엔진(186)에 제공할 수 있는데, 여기서 데이터 세트는 도 1의 머신 러닝 모델(190)을 트레이닝, 검증, 또는 테스트하기 위해 사용된다. 트레이닝 세트를 생성하는 일부 실시예들은 도 4a와 관련하여 추가로 설명될 수 있다.
[0067] 일부 실시예들에서, 데이터 세트 생성기(272)는 제1 머신 러닝 모델을 트레이닝, 검증, 또는 테스트하기 위해 시뮬레이팅된 센서 데이터의 제1 세트(262A)에 대응하는 제1 데이터 입력을 생성할 수 있고, 데이터 세트 생성기(272)는 제2 머신 러닝 모델을 트레이닝, 검증, 또는 테스트하기 위해 시뮬레이팅된 센서 데이터의 제2 세트(262B)에 대응하는 제2 데이터 입력을 생성할 수 있다.
[0068] 일부 실시예들에서, 데이터 세트 생성기(272)는 데이터 입력(210) 및 목표 출력(220) 중 하나 이상에 대한 동작들을 수행할 수 있다. 데이터 세트 생성기(272)는 데이터로부터 패턴들(기울기, 곡률 등)을 추출할 수 있거나, 데이터(평균, 피처 생성 등)를 결합할 수 있거나, 또는 별개의 모델들을 트레이닝시키기 위해 시뮬레이팅된 센서들을 그룹들로 분리할 수 있다.
[0069] 머신 러닝 모델을 트레이닝, 검증, 또는 테스트하기 위한 데이터 입력들(210) 및 목표 출력들(220)은 특정한 제조 챔버(예를 들어, 특정한 반도체 웨이퍼 제조 챔버)에 대한 정보를 포함할 수 있다. 데이터 입력들(210) 및 목표 출력들(220)은 특정한 제조 챔버 설계(예를 들어, 그 설계의 모든 챔버들에 대해 사용됨)에 대한 정보를 포함할 수 있다.
[0070] 일부 실시예들에서, 머신 러닝 모델을 트레이닝시키기 위해 사용되는 정보는 특정한 특성들을 갖는 제조 시설의 특정한 타입들의 제조 장비(124)(예를 들어, 도 1의 제조 장비(124))로부터 유래할 수 있고, 트레이닝된 머신 러닝 모델이, 특정한 그룹의 특성들을 공유하는 하나 이상의 컴포넌트들과 연관되는 현재의 센서 데이터(예를 들어, 현재의 센서 데이터(146))에 대한 입력에 기초하여, 특정한 그룹의 제조 장비(124)에 대한 결과들을 결정하는 것을 허용한다. 일부 실시예들에서, 머신 러닝 모델을 트레이닝시키기 위해 사용되는 정보는 두 개 이상의 제조 시설들로부터의 컴포넌트들에 대한 것일 수 있고 트레이닝된 머신 러닝 모델이 하나의 제조 시설로부터의 입력에 기초하여 컴포넌트들에 대한 결과들을 결정하는 것을 허용할 수 있다.
[0071] 일부 실시예들에서, 데이터 세트를 생성하는 것 및 데이터 세트를 사용하여 머신 러닝 모델을 트레이닝, 검증, 또는 테스트하는 것에 후속하여, 머신 러닝 모델은 추가로 트레이닝, 검증, 또는 테스트될 수 있거나, 또는 조정될 수 있다.
[0072] 도 3은, 특정한 실시예들에 따른, 출력 데이터(예를 들어, 도 1의 압축 감지 데이터(166))를 생성하기 위한 시스템(300)을 예시하는 블록 다이어그램이다. 시스템(300)은, 기판으로부터 떨어져 배치되는 다수의 센서들로부터의 입력 및 압축 감지 기법들을 사용하여, 제조 프로세스 동안 기판 근처의 속성들의 값들을 가상으로 측정하기 위해 사용될 수 있다.
[0073] 도 3을 참조하면, 블록(310)에서, 시스템(300)(예를 들어, 도 1의 압축 감지 시스템(110)의 컴포넌트들)은, 트레이닝 세트(302), 검증 세트(304), 및 테스팅 세트(306)를 생성하기 위해, (예를 들어, 도 1의 서버 머신(170)의 데이터 세트 생성기(172)를 통해) 컴퓨터-보조 물리-기반 모델 데이터(360)의 데이터 파티셔닝을 수행한다(예를 들어, 전체 모델 데이터 세트들로부터 시뮬레이팅된 센서 데이터(362)를 추출함). 예를 들어, 트레이닝 세트는 시뮬레이팅된 데이터의 60 %일 수 있고, 검증 세트는 시뮬레이팅된 데이터의 20 %일 수 있고, 테스팅 세트는 시뮬레이팅된 데이터의 20 %일 수 있다.
[0074] 블록(312)에서, 시스템(300A)은 트레이닝 세트(302)를 사용하여 (예를 들어, 도 1의 트레이닝 엔진(182)을 통해) 모델 트레이닝을 수행한다. 시스템(300)은 트레이닝 세트(302)의 피처들의 다수의 세트들(예를 들어, 트레이닝 세트(302)의 시뮬레이팅된 센서들의 그룹을 포함하는 피처들의 제1 세트, 트레이닝 세트(302)의 시뮬레이팅된 센서들의 상이한 그룹을 포함하는 피처들의 제2 세트 등)을 사용하여 다수의 모델들을 트레이닝시킬 수 있다. 예를 들어, 시스템(300)은, 트레이닝 세트에서의 피처들의 제1 세트를 사용하여 제1 트레이닝된 머신 러닝 모델을 생성하도록 그리고 트레이닝 세트에서의 피처들(예를 들어, 제1 머신 러닝 모델을 트레이닝시키기 위해 사용되는 데이터와는 상이한 데이터)의 제2 세트를 사용하여 제2 트레이닝된 머신 러닝 모델을 생성하도록 머신 러닝 모델을 트레이닝시킬 수 있다. 일부 실시예들에서, 제1 트레이닝된 머신 러닝 모델 및 제2 트레이닝된 머신 러닝 모델은 결합되어 제3 트레이닝된 머신 러닝 모델(예를 들어, 이것은, 그 자체로, 제1 또는 제2 트레이닝된 머신 러닝 모델보다 더 나은 예측자일 수 있음)을 생성할 수 있다. 일부 실시예들에서, 모델들을 비교함에 있어서 사용되는 피처들의 세트들은 중첩될 수 있다(예를 들어, 하나의 모델은 시뮬레이팅된 센서들 1-15를 사용하여 트레이닝될 수 있고, 제2 모델은 시뮬레이팅된 센서들 10-20을 사용하여 트레이닝될 수 있음). 일부 실시예들에서, 피처들의 다양한 순열(permutation)들 및 모델들의 조합들을 갖는 모델들을 포함하는 수백 개의 모델들이 생성될 수 있다.
[0075] 블록(314)에서, 시스템(300)은 검증 세트(304)를 사용하여 (예를 들어, 도 1의 검증 엔진(184)을 통해) 모델 검증을 수행한다. 시스템(300)은 검증 세트(304)의 피처들의 대응하는 세트를 사용하여 트레이닝된 모델들 각각을 검증할 수 있다. 예를 들어, 검증 세트(304)는 트레이닝 세트(302)에서, 그러나 상이한 입력 컨디션들에 대해 사용되는 시뮬레이팅된 센서들의 동일한 서브세트를 사용할 수 있다. 일부 실시예들에서, 시스템(300A)은 블록(312)에서 생성되는 수백 개의 모델들(예를 들어, 피처들의 다양한 순열들, 모델들의 조합들 등을 갖는 모델들)을 검증할 수 있다. 블록(314)에서, 시스템(300)은 (예를 들어, 모델 검증을 통해) 하나 이상의 트레이닝된 모델들 각각의 정확도를 결정할 수 있고 트레이닝된 모델들 중 하나 이상이 임계 정확도를 충족하는 정확도를 갖는지의 여부를 결정할 수 있다. 트레이닝된 모델들 중 어느 것도 임계 정확도를 충족하는 정확도를 갖지 않는다는 것을 결정하는 것에 응답하여, 흐름은 블록(312)으로 복귀하는데, 여기서 시스템(300)은 트레이닝 세트의 피처들의 상이한 세트들을 사용하여 모델 트레이닝을 수행한다. 트레이닝된 모델들 중 하나 이상이 임계 정확도를 충족하는 정확도를 갖는다는 것을 결정하는 것에 응답하여, 흐름은 블록(316)으로 계속된다. 시스템(300)은 (예를 들어, 검증 세트에 기초하여) 임계 정확도 미만인 정확도를 갖는 트레이닝된 머신 러닝 모델들을 폐기할 수 있다.
[0076] 블록(316)에서, 시스템(300)은, 임계 정확도를 충족하는 하나 이상의 트레이닝된 모델들 중 어떤 것이 가장 높은 정확도를 갖는지를 결정하기 위해, (예를 들어, 도 1의 선택 엔진(185)을 통해) 모델 선택을 수행한다(예를 들어, 블록(314)의 검증에 기초한, 선택된 모델(308)). 임계치 정확도를 충족하는 트레이닝된 모델들 중 두 개 이상이 동일한 정확도를 갖는다는 것을 결정하는 것에 응답하여, 흐름은 블록(312)으로 복귀할 수 있는데, 여기서 시스템(300)은 가장 높은 정확도를 갖는 트레이닝된 모델을 결정하기 위해 피처들의 추가로 정제된 세트들에 대응하는 추가로 정제된 트레이닝 세트들을 사용하여 모델 트레이닝을 수행한다.
[0077] 블록(318)에서, 시스템(300)은, 선택된 모델(308)을 테스트하기 위해, 테스팅 세트(306)를 사용하여 (예를 들어, 도 1의 테스팅 엔진(186)을 통해) 모델 테스팅을 수행한다. 시스템(300)은, (예를 들어, 테스팅 세트(306)의 피처들의 제1 세트에 기초하여) 제1 트레이닝된 머신 러닝 모델이 임계 정확도를 충족한다는 것을 결정하기 위해, 테스팅 세트의 피처들의 제1 세트(예를 들어, 시뮬레이팅된 센서들 1-15)를 사용하여, 제1 트레이닝된 머신 러닝 모델을 테스트할 수 있다. 선택된 모델(308)의 정확도가 임계 정확도를 충족하지 않는 것에 응답하여(예를 들어, 선택된 모델(308)이 트레이닝 세트(302) 및/또는 검증 세트(304)에 과도하게 적합되고 테스팅 세트(306)와 같은 다른 데이터 세트들에 적용 가능하지 않음), 흐름은 블록(312)으로 계속되는데, 여기서, 시스템(30A)은 어쩌면 피처들의 상이한 세트들에 대응하는 상이한 트레이닝 세트들 또는 트레이닝, 검증, 및 테스팅 세트들로 분할되는 기판들의 재편제(reorganization)를 사용하여 모델 트레이닝(예를 들어, 재트레이닝)을 수행한다. 선택된 모델(308)이 테스팅 세트(306)에 기초한 임계 정확도를 충족하는 정확도를 갖는다는 것을 결정하는 것에 응답하여, 흐름은 블록(320)으로 계속된다. 적어도 블록(312)에서, 모델은 예측들을 행하기 위해 시뮬레이팅된 센서 데이터에서 패턴들을 학습할 수 있고, 블록(318)에서, 시스템(300)은 예측들을 테스트하기 위해 나머지 데이터(예를 들어, 테스팅 세트(306))에 모델을 적용할 수 있다.
[0078] 블록(320)에서, 시스템(300)은 현재의 센서 데이터(346)(예를 들어, 도 1의 현재의 센서 데이터(146))를 수신하기 위해 트레이닝된 모델(예를 들어, 선택된 모델(308))을 사용하고, 액션을 수행하기 위해(예를 들어, 도 1의 제조 장비(124)와 연관하여 시정 조치를 수행하고, 도 1의 클라이언트 디바이스(120)에 제공하고 경고하는 것 등을 위해), 트레이닝된 모델의 출력으로부터, 압축 감지 데이터(366)(예를 들어, 도 1의 압축 감지 데이터(166))를 결정한다(예를 들어, 추출한다).
[0079] 일부 실시예들에서, 머신 러닝 모델의 재트레이닝은 모델을 추가로 트레이닝시키기 위해 추가적인 데이터를 공급하는 것에 의해 발생한다. 현재의 센서 데이터(352)는 블록(312)에서 제공될 수 있다. 추가적인 물리-기반 모델 데이터(361)가 역시 제공될 수 있다. 이들 데이터는 원래의 트레이닝의 일부가 아닌 입력 파라미터들, 원래의 트레이닝에 의해 걸쳐지는 파라미터 공간 밖의 입력 파라미터들의 조합들을 통합하는 것에 의해 모델을 트레이닝시키기 위해 원래 사용된 데이터와는 상이할 수 있거나, 또는 챔버 고유의 지식(예를 들어, 제조 공차 범위들, 컴포넌트들 노후화 등에 기인하는 이상적인 챔버와의 차이들)을 반영하도록 업데이트될 수 있다. 선택된 모델(308)은 이 데이터에 기초하여 재트레이닝될 수 있다.
[0080] 일부 실시예들에서, 액트들(310-320) 중 하나 이상은 다양한 순서들로 및/또는 본원에 제시 및 설명되지 않는 다른 액트들과 함께 발생할 수 있다. 일부 실시예들에서, 액트들(310-320) 중 하나 이상은 수행되지 않을 수 있다. 예를 들어, 일부 실시예들에서, 블록(310)의 데이터 파티셔닝, 블록(314)의 모델 검증, 블록(316)의 모델 선택, 또는 블록(318)의 모델 테스팅 중 하나 이상이 수행되지 않을 수 있다.
[0081] 도 4a 내지 도 4c는, 특정한 실시예들에 따른, 시정 조치를 야기할 압축 감지 데이터를 생성하는 것과 연관되는 방법들(400A-400C)의 흐름도들이다. 방법들(400A-400C)은, 하드웨어(예를 들어, 회로부, 전용 로직, 프로그래머블 로직, 마이크로코드, 프로세싱 디바이스 등), 소프트웨어(예컨대 프로세싱 디바이스, 범용 컴퓨터 시스템, 또는 전용 머신 상에서 실행되는 명령들), 펌웨어, 마이크로코드, 또는 이들의 조합을 포함할 수 있는 프로세싱 로직에 의해 수행될 수 있다. 일부 실시예에서, 방법들(400A-400C)은, 부분적으로, 압축 감지 시스템(110)에 의해 수행될 수 있다. 방법(400A)은, 부분적으로, 압축 감지 시스템(110)(예를 들어, 도 1의 서버 머신(170) 및 데이터 세트 생성기(172), 도 2의 데이터 세트 생성기(272))에 의해 수행될 수 있다. 압축 감지 시스템(110)은, 본 개시내용의 실시예들에 따른, 머신 러닝 모델을 트레이닝, 검증, 또는 테스트하는 것 중 적어도 하나에 대한 데이터 세트를 생성하기 위해 방법(400A)을 사용할 수 있다. 방법(400B)은 서버 머신(180)(예를 들어, 트레이닝 엔진(182) 등)에 의해 수행될 수 있다. 방법(400C)은 압축 감지 서버(112)(예를 들어, 압축 감지 컴포넌트(114))에 의해 수행될 수 있다. 일부 실시예들에서, 비-일시적 저장 매체는, (예를 들어, 압축 감지 시스템(110)의, 서버 머신(180)의, 압축 감지 서버(112) 등의) 프로세싱 디바이스에 의해 실행될 때, 프로세싱 디바이스로 하여금 방법들(400A-400C) 중 하나 이상을 수행하게 하는 명령들을 저장한다.
[0082] 설명의 간략화를 위해, 방법들(400A-400C)은 일련의 동작들로서 묘사되고 설명된다. 그러나, 본 개시내용에 따른 동작들은 다양한 순서들로 및/또는 동시에 그리고 본원에서 제시되고 설명되지 않는 다른 동작들과 함께 발생할 수 있다. 더구나, 개시된 주제에 따른 방법들(400A-400C)을 구현하기 위해 예시된 동작들 모두가 수행되지는 않을 수 있다. 또한, 당업자들은, 방법들(400A-400C)이, 대안적으로, 이벤트들 또는 상태 다이어그램을 통한 일련의 상호 관련된 상태들로서 표현될 수 있다는 것을 이해하고 인식할 것이다.
[0083] 도 4a는, 특정한 실시예들에 따른, 압축 감지 데이터(예를 들어, 도 1의 압축 감지 데이터(166))를 생성하기 위한 머신 러닝 모델에 대한 데이터 세트를 생성하기 위한 방법(400A)의 흐름도이다.
[0084] 도 4a를 참조하면, 일부 실시예들에서, 블록(401)에서, 프로세싱 로직 구현 방법(400A)은 트레이닝 세트(T)를 빈 세트로 초기화한다.
[0085] 블록(402)에서, 프로세싱 로직은, 센서 데이터(예를 들어, 도 2의 시뮬레이팅된 센서 데이터(262)) 등을 포함할 수 있는 제1 데이터 입력(예를 들어, 제1 트레이닝 입력, 제1 검증 입력)을 생성한다. 일부 실시예들에서, (예를 들어, 도 3과 관련하여 설명되는 바와 같이) 제1 데이터 입력은 데이터의 타입들에 대한 피처들의 제1 세트를 포함할 수 있고, 제2 데이터 입력은 데이터의 타입들에 대한 피처들의 제2 세트를 포함할 수 있다.
[0086] 블록(403)에서, 프로세싱 로직은 데이터 입력들 중 하나 이상(예를 들어, 제1 데이터 입력)에 대한 제1 목표 출력을 생성한다. 일부 실시예들에서, 제1 목표 출력은 물리-기반 모델의 출력으로서 수신되는 속성 값들이다. 일부 실시예들에서, 목표 출력은 차수 감소 모델에서의 기본 세트 멤버들의 가중된 가산적 조합을 표시하는 계수들일 수 있다.
[0087] 블록(404)에서, 프로세싱 로직은 입력/출력 맵핑을 표시하는 맵핑 데이터를 옵션 사항으로 생성한다. 입력/출력 맵핑(또는 맵핑 데이터)은 데이터 입력(예를 들어, 본원에서 설명되는 데이터 입력들 중 하나 이상), 데이터 입력에 대한 목표 출력, 및 데이터 입력(들)과 목표 출력 사이의 연관성을 지칭할 수 있다.
[0088] 블록(405)에서, 프로세싱 로직은, 일부 실시예들에서, 블록(404)에서 생성되는 맵핑 데이터를 데이터 세트(T)에 추가한다.
[0089] 블록(406)에서, 프로세싱 로직은, 데이터 세트(T)가 도 1의 머신 러닝 모델(190)의 트레이닝, 검증, 및/또는 테스팅 중 적어도 하나에 대해 충분한지의 여부에 기초하여 분기한다. 만약 그렇다면, 실행은 블록(407)으로 진행하고, 그렇지 않으면, 실행은 다시 블록(402)에서 계속된다. 일부 실시예들에서, 데이터 세트(T)의 충분성은, 단순히, 데이터 세트에서의, 일부 실시예들에서 출력들로 맵핑되는, 입력들의 수에 기초하여 결정될 수 있고, 한편, 일부 다른 구현들에서, 데이터 세트(T)의 충분성은, 입력들의 수에 더하여, 또는 그 대신, 하나 이상의 다른 기준들(예를 들어, 데이터 예들의 다양성의 척도, 정확도 등)에 기초하여 결정될 수 있다는 것이 주목되어야 한다.
[0090] 블록(407)에서, 프로세싱 로직은 머신 러닝 모델(190)을 트레이닝, 검증, 및/또는 테스트하기 위해 데이터 세트(T)를 (예를 들어, 도 1의 서버 머신(180)에) 제공한다. 일부 실시예들에서, 데이터 세트(T)는 트레이닝 세트이고 트레이닝을 수행하기 위해 서버 머신(180)의 트레이닝 엔진(182)에 제공된다. 일부 실시예들에서, 데이터 세트(T)는 검증 세트이고 검증을 수행하기 위해 서버 머신(180)의 검증 엔진(184)에 제공된다. 일부 실시예들에서, 데이터 세트(T)는 테스팅 세트이고 테스팅을 수행하기 위해 서버 머신(180)의 테스팅 엔진(186)에 제공된다. 희소 회귀 머신 러닝 모델들의 경우, 예를 들어, 주어진 입력/출력 맵핑의 입력 값들(예를 들어, 도 2의 데이터 입력들(210)과 연관되는 수치 값들)이 희소 회귀 모델에 입력되고, 입력/출력 맵핑의 출력 값들(예를 들어, 도 2의 목표 출력들(220)과 연관되는 수치 값들)이 목표 출력에서 저장된다. 추가적으로, 차수 감소 모델을 나타내는 기본 세트가 희소 회귀 모델에 제공된다. 머신 러닝 모델은 차수 감소 모델의 계수들을 희소 방식으로 입력 센서 데이터에 적합시키는 것을 학습하는데, 희소 방식은 계수들 중 많은 것이 제로인 것을 말한다. 이 회귀는 적합의 부정확성들 및 제로가 아닌 계수들의 수 둘 모두에 불이익을 주는 것에 의해 수행된다.
[0091] 제한이 아닌 예시로서, 희소 회귀의 작동 방식(mechanics)의 간단한 논의가 후속된다. 희소 회귀 모델은 벡터(x)로서 표현될 수 있는 챔버의 다양한 로케이션들에서의 속성 값들의 목록을 복구할 것이다. 기본 세트는 매트릭스(P)로서 표현될 수 있고, 문제는 x = Pa가 되도록 하는 벡터(a)를 찾는 것으로 감소된다. 센서가 y로 칭해지는 그들 로케이션들에 배치되는 것에 기인하여, 챔버에서의 공지된 속성 값들을 표현하는 벡터가 고려된다. y = Cx라는 것이 말하여질 수 있는데, 여기서 C는 1과 0의 희소 매트릭스이며, 챔버 속성 값들(x) 중 어떤 데이터 지점들이 공지되어 있는지를 표현한다. 그러면, 문제는 CPa = y로서 표현될 수 있는데, 이것은 과잉 결정된 시스템이다(제로가 아닌 기본 세트 멤버 계수들(a)보다 더 많은 센서들(y)이 있음). 희소 회귀는 그러한 시스템에 대한 솔루션을 찾는 방법이다.
[0092] 많은 트레이닝 세트들에 걸쳐, 머신 러닝 모델은 차수 축소 모델에서 제로가 아닌 계수들의 개수를 제어하는 파라미터의 적절한 값을 선택한다. 블록(407) 이후, 머신 러닝 모델(예를 들어, 머신 러닝 모델(190))은 서버 머신(180)의 트레이닝 엔진(182)을 사용하여 트레이닝될 수 있는 것, 서버 머신(180)의 검증 엔진(184)을 사용하여 검증될 수 있는 것, 또는 서버 머신(180)의 테스팅 엔진(186)을 사용하여 테스트될 수 있는 것 중 적어도 하나가 될 수 있다. 트레이닝된 머신 러닝 모델은, 신호 프로세싱을 수행하기 위한 또는 제조 장비(124)와 연관되는 시정 조치를 수행하기 위한 압축 감지 데이터(166)를 생성하도록 (압축 감지 서버(112)의) 압축 감지 컴포넌트(114)에 의해 구현될 수 있다.
[0093] 도 4b는 시정 조치의 수행을 야기하기 위해 압축 감지 데이터를 결정하기 위한 머신 러닝 모델(예를 들어, 도 1의 모델(190))을 트레이닝시키기 위한 방법(400B)이다.
[0094] 도 4b를 참조하면, 방법(400B)의 블록(410)에서, 프로세싱 로직은 물리-기반 모델로부터 데이터를 수신한다. 데이터는 입력 설정들(프로세싱 파라미터들, 하드웨어 설정들 등)의 특정한 배열에 대해, 정상 상태에서 제조 챔버에서의 속성들의 값을 표시한다. 물리-기반 모델 데이터는 차수 감소 모델에서 기본 세트의 계수들로 표현될 수 있다. 모델 데이터는, 물리-기반 모델로부터 직접적으로가 아니라, 메모리(예를 들어, 도 1의 데이터 저장소(140))로부터 프로세싱 로직에 의해 검색될 수 있다. 일부 경우들에서, 하나보다 더 많은 머신 러닝 모델이 단일의 복합 머신 러닝 모델의 일부분들일 수 있다. 이 경우, 이 복합 모델의 하나의 컴포넌트를 트레이닝시키는 것은 트레이닝될 모델의 컴포넌트에 대한 트레이닝 입력으로서 모델의 다른 컴포넌트로부터 출력을 수신하는 것을 수반할 수 있다.
[0095] 블록(412)에서, 프로세싱 로직은 시뮬레이팅된 센서들의 데이터 세트를 생성한다. 이 데이터는 블록(410)에서 수신되는 물리-기반 모델 데이터로부터의 데이터 지점들의 서브세트일 수 있다. 시뮬레이팅된 센서들로서 사용되는 특정한 데이터 지점들은 센서들이 배치될 수 있는 제조 챔버에서의 로케이션들에 어떤 데이터 지점들이 대응하는지를 결정하는 것에 의해 결정될 수 있다. 이 데이터는 물리-기반 모델 데이터 세트로 맵핑되는데, 그것은 물리-기반 모델 데이터 세트의 서브세트이다.
[0096] 블록(414)에서, 프로세싱 로직은 시뮬레이팅된 센서 데이터의 세트들을 트레이닝 입력으로 머신 러닝 모델에 제공한다. 프로세싱 로직은 물리-기반 모델 데이터를 목표 출력으로서 머신 러닝 모델에 제공한다. 그 다음, 머신 러닝 모델은, 챔버에서의 속성 값들, 특히 기판 근처의 속성 값들의 맵을 구성하기 위해 센서 데이터에 대해 희소 회귀를 수행하는 것에 의해 제조 챔버에서의 속성 값들의 가상 감지(virtual sensing)를 제공하도록 트레이닝된다.
[0097] 블록(416)에서, 머신 러닝 모델은 물리-기반 모델로부터의 추가적인 데이터를 사용하여 재트레이닝될 수 있다. 하나의 실시예에서, 머신 러닝 모델의 트레이닝은 제조 장비, 센서들, 계측 장비 등에서의 드리프트를 고려하거나 또는 예측하기 위해, 장비의 고장을 예측하기 위해, 프로시저들 또는 레시피들에 변경 사항들을 반영하는 것 등을 위해, 지속적으로 업데이트된다. 프로세싱 로직은, 추가적인 트레이닝 입력 데이터로서, 제1의 것과는 상이한, 물리-기반 모델로부터의 추가적인 데이터를 제공한다. 프로세싱 로직은, 목표 출력 데이터로서, 물리-기반 모델 데이터로부터 취해지는 시뮬레이팅된 센서 데이터를 제공한다.
[0098] 도 4c는 압축 감지 데이터를 결정하기 위한 트레이닝된 머신 러닝 모델(예를 들어, 도 1의 모델(190))을 사용하기 위한 방법(400C)이다.
[0099] 도 4c를 참조하면, 방법(400C)의 블록(420)에서, 프로세싱 로직은 기판 제조 프로세스와 연관되는 현재의 센서 데이터를 트레이닝된 머신 러닝 모델에 제공한다. 센서 데이터 타입은 머신 러닝 모델을 트레이닝시키기 위해 도 4b의 블록(412)에서 제공되는 것에 대응할 수 있다.
[00100] 블록(422)에서, 프로세싱 로직은, 트레이닝된 머신 러닝 모델로부터, 압축 감지 데이터를 표시하는 하나 이상의 출력들을 획득한다. 일부 실시예들에서, 압축 감지 데이터는, 제조 챔버에서 기판 근처의 로케이션들을 나타내는 데이터를 포함하는 온도 데이터일 수 있다.
[00101] 블록(424)에서, 프로세싱 로직은 시정 조치의 수행을 야기한다. 일부 실시예들에서, 시정 조치는, 출력 데이터가 추가로 프로세싱된 이후, 예를 들어, 챔버에서의 속성 값들을 복구하기 위해 차수 감소 모델의 계수들이 기본 세트 멤버들의 가산적 조합에 가중치들로서 적용된 이후, 머신 러닝 모델의 출력을 고려하여 취해질 수 있다. 본 개시내용과 일치하는 시정 조치들의 타입들은 광범위하게 변할 수 있다. 일부 실시예들에서, 시정 조치의 수행은 다음의 것들 중 하나 이상을 포함할 수 있다: 사용자에게 경고를 제공하는 것; 제조 장비의 기능성을 방해하는 것; 프로세스 파라미터들 및 하드웨어 파라미터들 비롯하여, 제조 파라미터들을 업데이트하는 것; 제조 장비의 컴포넌트의 교체를 계획하는 것; 에너지 사용량을 감소시키기 위해 제품들의 제조 동안 특정한 시간들에서 하나 이상의 컴포넌트들로 하여금 슬립 모드 또는 아이들 모드에 있게 하는 것; 에너지 사용량을 감소시키기 위한 하나 이상의 컴포넌트들의 교체; 예방적 유지 보수를 야기하는 것; 컴포넌트들의 수정을 야기하는 것(예를 들어, 장착 나사들 조이기, 바인딩 교체 등); 제조 장비와 연관되는 센서들의 센서 드리프트를 정정하는 것; 챔버 드리프트를 정정하는 것; 프로세스 레시피를 업데이트하는 것 등. 예측 데이터 및/또는 시정 조치는, 이상들을 야기하고 있는 조합(예를 들어, 컴포넌트들의 조합, 제조 파라미터들의 조합)을 표시할 수 있다(예를 들어, 여기서 조합으로부터의 아이템들 중 단지 하나만은 자체적으로 이상을 일으키지 않을 수 있음).
[00102] 도 5는 본 개시내용의 일부 양상들에 따른 제조 챔버(500)(예를 들어, 반도체 웨이퍼 제조 챔버)의 단면도를 묘사한다. 제조 챔버(500)는 에칭 챔버, 증착 챔버(원자 층 증착, 화학적 기상 증착, 물리적 기상 증착, 또는 이들의 플라즈마 강화 버전들을 포함함), 어닐링 챔버 등 중 하나 이상일 수 있다. 예를 들어, 제조 챔버(500)는 플라즈마 에칭기(plasma etcher), 플라즈마 세정기 등을 위한 챔버일 수 있다. 챔버 컴포넌트들의 예들은 기판 지지체 어셈블리(504), 정전 척, 링(예를 들어, 프로세스 키트 링), 챔버 벽, 베이스, 샤워헤드(showerhead)(506), 가스 분배 플레이트, 라이너, 라이너 키트, 차폐물, 플라즈마 스크린, 흐름 이퀄라이저, 냉각 베이스, 챔버 뷰포트(viewport), 챔버 덮개, 노즐 등을 포함할 수 있다.
[00103] 하나의 실시예에서, 제조 챔버(500)는 챔버 본체(508) 및 내부 볼륨(510)을 둘러싸는 샤워헤드(506)를 포함한다. 일부 챔버들에서, 샤워헤드(506)는 덮개 및 노즐에 의해 대체될 수 있다. 챔버 본체(508)는 알루미늄, 스테인리스 스틸, 또는 다른 적절한 재료로부터 구성될 수 있다. 챔버 본체(508)는 일반적으로 측벽들(512) 및 저부(514)를 포함한다.
[00104] 배기 포트(516)는 챔버 본체(508) 내에서 정의될 수 있고, 내부 볼륨(510)을 펌프 시스템(518)에 커플링할 수 있다. 펌프 시스템(518)은 제조 챔버(500)의 내부 볼륨(510)의 압력을 진공배기(evacuate)하고 조절하기 위해 활용되는 하나 이상의 펌프들 및 밸브들을 포함할 수 있다.
[00105] 샤워헤드(506)는 챔버 본체(508)의 측벽들(512) 상에서 또는 챔버 본체의 최상부(top) 부분 상에서 지지될 수 있다. 샤워헤드(506)(또는, 일부 실시예들에서는, 덮개)는 제조 챔버(500)의 내부 볼륨(510)에 대한 액세스를 허용하도록 개방될 수 있고, 폐쇄되는 동안 제조 챔버(500)에 밀봉을 제공할 수 있다. 가스 패널(520)은 샤워헤드(506)(또는 덮개 및 노즐)를 통해 내부 볼륨(510)에 프로세스 또는 세정 가스들을 제공하기 위해 제조 챔버(500)에 커플링될 수 있다. 샤워헤드(506)는 전반에 걸쳐 다수의 가스 전달 구멍들을 포함할 수 있다. 제조 챔버(500)의 기판들을 프로세싱하기 위해 사용될 수 있는 프로세싱 가스들의 예들은 할로겐 함유 가스들, 예컨대, 다른 것들 중에서도, C2F6, SF6, SiCl4, HBr, NF3, CF4, CHF3, F2, Cl2, CCl4, BCl3, 및 SiF4, 및 O2 또는 N2O와 같은 다른 가스들을 포함한다. 캐리어 가스들의 예들은 N2, He, Ar, 및 프로세스 가스들에 불활성인 다른 가스들(예를 들어, 비반응성 가스들)을 포함한다.
[00106] 기판 지지체 어셈블리(504)는 샤워헤드(506) 아래의 제조 챔버(500)의 내부 볼륨(510)에 배치된다. 일부 실시예들에서, 기판 지지체 어셈블리(504)는 서셉터(522) 및 샤프트(524)를 포함한다. 기판 지지체 어셈블리(504)는 프로세싱 동안 기판을 지지한다. 일부 실시예들에서, 또한 제조 챔버(500) 내에 하나 이상의 히터들(526) 및 반사기들(528)이 배치된다.
[00107] 기판 근처의 제조 챔버에서의 속성들의 값들을 이해하는 것은 프로세싱 결과들을 제어함에 있어서 유용하다. 많은 상황들에서, 기판의 로케이션에서 컨디션들을 모니터링하는 것은 비현실적이다. 다른 상황들에서, 기판의 일부 부분들에서 컨디션들을 모니터링하는 것이 가능하지만, 그러나 전체 영역에 걸치지는 않는다. 본 개시내용의 방법들 및 시스템들은 기판의 로케이션에서의 속성들의 값을, 센서들이 그 로케이션에 배치되지 않은 상태에서, 추론하는 방식들을 제공한다.
[00108] 일부 실시예들에서, 기판 근처의 속성 값들의 가상 측정치는 (예를 들어, 도 1의 압축 감지 시스템(110)을 사용하여) 압축 감지를 수행하는 것에 의해 획득된다. 기판(502) 근처의 제조 챔버(500)에서의 컨디션들을 모니터링하기 위해 센서들을 배치하는 것이 불편한 경우, 제조 챔버에는 센서들이 더 쉽게 배치될 수 있는 많은 다른 영역들이 있을 수 있다. 그러한 로케이션들은 서셉터(522), 샤프트(524), 반사기들(528), 배기 포트(516), 챔버 본체(508) 등을 포함할 수 있다.
[00109] 컴퓨터-보조 물리-기반 모델(예를 들어, 도 1의 물리-기반 모델(176))의 도움으로, 이들 액세스 가능한 로케이션들에서의 속성 값들의 측정은 기판의 로케이션에서의 컨디션들의 가상 측정을 허용한다. 물리-기반 모델을 활용하기 위해, 히터 전력, 가스 조성, 가스 흐름, 챔버 압력, 하드웨어 파라미터들 등과 같은 입력 파라미터들의 세트가 정의된다. 이들 상이한 입력 컨디션들은 제조 프로세스에 대한 가능한 입력 파라미터들의 전체 환경인 것으로 이해되는 파라미터 공간의 영역을 정의한다. 입력 파라미터들의 세트는 특정한 프로세스, 특정한 웨이퍼에 유용한 컨디션들 주위의 파라미터 공간에서 밀접하게 그룹화되도록 선택될 수 있거나, 기판 프로세싱에서 유용할 가능성이 있는 것으로 간주되는 파라미터 공간의 전체 영역에 실질적으로 걸치도록 선택될 수 있거나, 또는 다른 메트릭을 사용하여 선택될 수 있다.
[00110] 컨디션들의 하나의 가능한 세트를 나타내는 프로세싱 파라미터들과 함께, 제조 챔버의 표현이 물리-기반 모델에 의해 수신된다. 그 다음, 모델은 컴퓨테이셔널 기법들을 사용하여 유체 흐름, 열역학, 열 전달 등을 설명하는 수학식들을 풀어, 제조 챔버에서의 속성 값들의 맵을 복구한다. 맵은 정상 상태 속성 값들의 표현일 수 있다. 이 프로세스는 프로세싱 파라미터들의 선택된 조합들에 대해 반복된다. 이 프로시저로부터 결과적으로 나타나는 속성 값 맵들의 그룹은 선택된 입력 파라미터들에 의해 정의되는 파라미터 공간 영역과 연관되는 제조 챔버 내의 속성 값 공간의 영역에 걸쳐 있다.
[00111] 일부 실시예들에서, 물리-기반 모델에 의해 출력되는 정보는 가상 측정을 위해 더욱 편리한 방식으로 표현될 수 있다. 가중된 가산적 방식으로 결합될 때, 물리-기반 모델에 의해 출력되는 속성 값 맵들에 의해 걸쳐지는 속성 값 공간의 실질적으로 임의의 부분을 재생성할 수 있는 멤버들로 구성되는 기본 세트가 생성된다. 이 기본 세트는 (예를 들어, 도 1의 차수 감소 모델 생성기(174)에 의해) 차수 감소 모델로서 생성된다. 차수 감소 모델은, 상당히 적은 수의 기본 세트 멤버들이 챔버 내의 대부분의 물리학을 재구성할 수 있도록 구성되는데, 이것은 물리-기반 모델의 출력에 의해 출력되는 것들과 실질적으로 동일한 챔버 내의 지점들에서 속성 값들을 재구성하는 것을 말한다. 기본 세트는 적절한 직교 분해 알고리즘을 사용하여 구성될 수 있다. "실질적으로 동일한"에 의해 의도되는 구체적인 범위는 애플리케이션에 기초하여 달라질 수 있지만, 그러나 실험 에러, 측정 에러, 허용 가능한 제조 공차 등에 관련될 수 있다.
[00112] 일부 실시예들에서, 물리-기반 모델에 의해 출력되는 지점들의 선택이 중요하다. 예를 들어, 가상 측정들을 제조 챔버(500)의 컴포넌트들 사이의 경계들로 제한하는 것(예를 들어, 컴포넌트들 내부의 속성 값들을 무시함)은, 챔버 내의 모든 지점들에서 속성 값들을 가상으로 측정하기 위해 사용되는 것보다 더 적은 센서들을 사용하여 속성 값들의 유용한 예측들이 이루어지는 것을 허용한다. 관심 영역들은, 상이한 프로세싱 파라미터 입력들을 사용한 물리-기반 모델로부터의 출력들에서 속성 값의 변화가 특정한 임계치를 초과하는 로케이션들일 수 있다.
[00113] 일단 물리-기반 모델로부터 데이터가 검색되면, 센서들이 챔버 내에 배치된다. 센서들이 배치될 수 있는 가능한 로케이션들은 기하학적 형상, 엔지니어링 염려 사항들 등에 의해 제한될 수 있다. 속성 값들이 물리-기반 모델에 대한 입력 값들로서 변하는 또는 제조 프로세스들에 대한 입력 파라미터들이 변하는 로케이션들로부터 정보가 추출될 수 있다. 센서들이 배치되는 로케이션들에서의 속성 값들이 상관되지 않는 경우, 정보가 추출될 수 있다. 이들 및 임의의 다른 제약들을 고려하여, 센서들에 대한 로케이션들이 선택된다. 일부 실시예들에서, 머신 러닝 도구는 센서 로케이션들을 최적화하기 위해 사용될 수 있다.
[00114] 이론에 구속되기를 바라지는 않지만, 제조 챔버에서의 속성 값들의 맵을 재생성하기 위해 사용되는 센서들의 수는 로서 추정될 수 있는데, 여기서 ns는 센서들의 수이고, k는 속성 값들의 맵을 재구성하기 위해 사용되는 기본 세트의 멤버들의 수이고, N은 속성 값들이 예측되는 챔버 내의 로케이션들의 수에 관련된다. 맵핑될 챔버의 영역들 및 사용되는 기본 세트 멤버들의 수는, 일부 구현들에서, 실현 가능한 또는 편리한 수의 센서들을 사용하여 압축 감지를 허용하도록 튜닝된다.
[00115] 제조 프로세스 동안, 제조 챔버(500)에서의 컨디션들은 센서들에 의해 모니터링된다. 센서들에 의해 이루어지는 측정치들을 표시하는 데이터는 트레이닝된 머신 러닝 모델(예를 들어, 도 1의 모델(190))에 대한 입력으로 제공된다. 트레이닝된 머신 러닝 모델은 센서들에 의해 측정되지 않는 챔버의 영역들(예를 들어, 기판의 로케이션)에서의 속성들의 값들을 재구성하도록 트레이닝된다. 트레이닝된 머신 러닝 모델은 희소 회귀 알고리즘을 활용하여 차수 축소 모델 생성기(174)에 의해 생성되는 기본 세트의 다수의 멤버들의 가중치들을 결정한다. 이러한 방식으로, 기판의 로케이션에 센서들을 배치하지 않고도 기판 근처의 컨디션들이 가상으로 측정될 수 있다. 물리지식기반 가상 측정 및 압축 감지는 다른 기법들에 비해 이점들을 제공한다. 부품 변동, 드리프트, 제조 공차 범위들 등에 기인하는 챔버마다의 차이들은 속성 값 공간으로 투영되는 센서 데이터를 사용하는 것에 의해 고려된다. 추가적으로, 물리-기반 모델의 출력에 의해 걸쳐지는 공간 외부의 컨디션들도 또한 이들 방법들을 사용하여 이해될 수 있다.
[00116] 일부 실시예들에서, 그 다음, 압축 감지 데이터는 시정 조치를 취하기 위해 사용된다. 시정 조치는 경고를 클라이언트 디바이스로 전송하는 것을 포함할 수 있다. 시정 조치는 적어도 하나의 프로세싱 파라미터에 대한 조정을 행하는 것에 의해 프로세싱 레시피를 조정하는 것을 포함할 수 있다. 시정 조치는 압축 감지 데이터를 다른 모델에 공급하는 것에 의해 촉진될 수 있다. 제2 모델은 컴포넌트 건전성 또는 드리프트, 챔버 노후화 등을 모니터링하기 위해 사용될 수 있다. 제2 모델은 압축 감지 데이터를 고려하여 시정 조치들(예를 들어, 유지 보수 권장, 컴포넌트 교체 권장 등)을 취할 수 있다.
[00117] 도 6은, 특정한 실시예들에 따른, 컴퓨터 시스템(600)을 예시하는 블록 다이어그램이다. 일부 실시예들에서, 컴퓨터 시스템(600)은 (예를 들어, 로컬 영역 네트워크(LAN), 인트라넷, 엑스트라넷, 또는 인터넷과 같은 네트워크를 통해) 다른 컴퓨터 시스템들에 연결될 수 있다. 컴퓨터 시스템(600)은 클라이언트-서버 환경에서 서버 또는 클라이언트 컴퓨터의 자격으로서, 또는 피어 투 피어 또는 분산형 네트워크 환경에서 피어 컴퓨터로서 동작할 수 있다. 컴퓨터 시스템(600)은 퍼스널 컴퓨터(PC), 태블릿 PC, 셋톱 박스(STB; Set-Top Box), 개인 휴대형 정보 단말(PDA; Personal Digital Assistant), 셀룰러 전화, 웹 어플라이언스, 서버, 네트워크 라우터, 스위치 또는 브리지, 또는 명령들(순차적 또는 다른 방식)의 세트를 실행할 수 있는 임의의 디바이스 ― 명령들의 세트는 그 디바이스에 의해 취해질 액션들을 명시함 ― 에 의해 제공될 수 있다. 게다가, 용어 "컴퓨터"는, 본원에서 설명되는 방법들 중 임의의 하나 이상을 수행하기 위해 명령들의 세트(또는 다수의 세트들)를 개별적으로 또는 공동으로 실행하는 컴퓨터들의 임의의 집합을 포함할 것이다.
[00118] 추가적인 양상에서, 컴퓨터 시스템(600)은 프로세싱 디바이스(602), 휘발성 메모리(604)(예를 들어, 랜덤 액세스 메모리(RAM; Random Access Memory)), 비-휘발성 메모리(606)(예를 들어, 판독 전용 메모리(ROM; Read-Only Memory) 또는 전기적으로 소거 가능한 프로그래머블 ROM(EEPROM; Electrically-Erasable Programmable ROM)), 및 데이터 저장 디바이스(618)를 포함할 수 있는데, 이들은 버스(608)를 통해 서로 통신할 수 있다.
[00119] 프로세싱 디바이스(602)는, (예를 들어, 복합 명령 세트 컴퓨팅(CISC; Complex Instruction Set Computing) 마이크로프로세서, 축약형 명령 세트 컴퓨팅(RISC; Reduced Instruction Set Computing) 마이크로프로세서, 아주 긴 명령 워드(VLIW; Very Long Instruction Word) 마이크로프로세서, 다른 타입들의 명령 세트들을 구현하는 마이크로프로세서, 또는 명령 세트들의 타입들의 조합을 구현하는 마이크로프로세서와 같은) 범용 프로세서 또는 (예를 들어, 주문형 집적 회로(ASIC; Application Specific Integrated Circuit), 필드 프로그래머블 게이트 어레이(FPGA; Field Programmable Gate Array), 디지털 신호 프로세서(DSP; Digital Signal Processor), 또는 네트워크 프로세서와 같은) 전문화된 프로세서(specialized processor)와 같은 하나 이상의 프로세서들에 의해 제공될 수 있다.
[00120] 컴퓨터 시스템(600)은 네트워크 인터페이스 디바이스(622)(예를 들어, 네트워크(674)에 커플링됨)를 더 포함할 수 있다. 컴퓨터 시스템(600)은 비디오 디스플레이 유닛(610)(예를 들어, LCD), 영숫자 입력 디바이스(612)(예를 들어, 키보드), 커서 제어 디바이스(614)(예를 들어, 마우스), 및 신호 생성 디바이스(620)를 또한 포함할 수 있다.
[00121] 일부 구현들에서, 데이터 저장 디바이스(618)는, 도 1의 컴포넌트들(예를 들어, 압축 감지 컴포넌트(114), 모델(190) 등)을 인코딩하는 그리고 본원에서 설명되는 방법들을 구현하기 위한 명령들을 비롯하여, 본원에서 설명되는 방법들 또는 기능들 중 임의의 하나 이상을 인코딩하는 명령들(626)을 저장할 수 있는 비-일시적 컴퓨터 판독 가능 저장 매체(624)(예를 들어, 비-일시적 머신 판독 가능 저장 매체)를 포함할 수 있다.
[00122] 명령들(626)은 또한, 컴퓨터 시스템(600)에 의한 그들의 실행 동안 휘발성 메모리(604) 내에서 및/또는 프로세싱 디바이스(602) 내에서, 완전히 또는 부분적으로, 상주할 수 있고, 그러므로, 휘발성 메모리(604) 및 프로세싱 디바이스(602)는 머신 판독 가능 저장 매체들을 또한 구성할 수 있다.
[00123] 컴퓨터 판독 가능 저장 매체(624)가 예시적인 예들에서 단일의 매체로서 도시되지만, 용어 "컴퓨터 판독 가능 저장 매체"는, 실행 가능 명령들의 하나 이상의 세트들을 저장하는 단일의 매체 또는 다수의 매체들(예를 들어, 중앙 집중식 또는 분산형 데이터베이스, 및/또는 연관된 캐시들 및 서버들)을 포함할 것이다. 용어 "컴퓨터 판독 가능 저장 매체"는, 컴퓨터로 하여금 본원에서 설명되는 방법들 중 임의의 하나 이상을 수행하게 하는, 컴퓨터에 의한 실행을 위한 명령들의 세트를 저장 또는 인코딩할 수 있는 임의의 유형적(tangible) 매체를 또한 포함할 것이다. 용어 "컴퓨터 판독 가능 저장 매체"는, 솔리드 스테이트 메모리들, 광학 매체들, 및 자기 매체들을 포함할 것이다(그러나 이에 제한되지 않음).
[00124] 본원에서 설명되는 방법들, 컴포넌트들 및 피처들은 별개의 하드웨어 컴포넌트들에 의해 구현될 수 있거나 또는 ASIC들, FPGA들, DSP들 또는 유사한 디바이스들과 같은 다른 하드웨어 컴포넌트들의 기능성에서 통합될 수 있다. 또한, 방법들, 컴포넌트들, 및 피처들은 하드웨어 디바이스들 내의 펌웨어 모듈들 또는 기능성 회로부에 의해 구현될 수 있다. 게다가, 방법들, 컴포넌트들, 및 피처들은 하드웨어 디바이스들과 컴퓨터 프로그램 컴포넌트들의 임의의 조합으로, 또는 컴퓨터 프로그램들로 구현될 수 있다.
[00125] 달리 구체적으로 언급되지 않는 한, "수신하는", "수행하는", "제공하는", "획득하는", "야기하는", "액세스하는", "결정하는", "추가하는", "사용하는", "트레이닝시키는" 등과 같은 용어들은, 컴퓨터 시스템 레지스터들 및 메모리들 내에서 물리적(전자적) 수량들로서 표현되는 데이터를, 컴퓨터 시스템 메모리들 또는 레지스터들 또는 다른 그러한 정보 저장, 송신 또는 디스플레이 디바이스들 내에서 물리적 수량들로서 유사하게 표현되는 다른 데이터로 조작 및 변환하는 컴퓨터 시스템들에 의해 수행되는 또는 구현되는 액션들 및 프로세스들을 지칭한다. 또한, 본원에서 사용되는 바와 같은 용어들 "제1", "제2", "제3", "제4" 등은 상이한 엘리먼트들 사이를 구별하기 위한 라벨들로서 의도되며, 반드시 그들의 숫자 지정에 따른 서수적 의미를 갖지 않을 수 있다.
[00126] 본원에서 설명되는 예들은 또한, 본원에서 설명되는 방법들을 수행하기 위한 장치에 관한 것이다. 이 장치는 본원에서 설명되는 방법들을 수행하도록 특별히 구성될 수 있거나, 또는 그것은 컴퓨터 시스템에 저장되는 컴퓨터 프로그램에 의해 선택적으로 프로그래밍되는 범용 컴퓨터 시스템을 포함할 수 있다. 그러한 컴퓨터 프로그램은 컴퓨터 판독 가능한 유형적 저장 매체에 저장될 수 있다.
[00127] 본원에서 설명되는 방법들 및 예시적인 예들은, 본질적으로, 임의의 특정한 컴퓨터 또는 다른 장치에 관련되지 않는다. 다양한 범용 시스템들이 본원에서 설명되는 교시들에 따라 사용될 수 있거나, 또는, 본원에서 설명되는 방법들 및/또는 그들의 개개의 기능들, 루틴들, 서브루틴들, 또는 동작들 각각을 수행하기 위해, 더욱 전문화된 장치를 구성하는 것이 편리한 것으로 입증될 수 있다. 다양한 이들 시스템들에 대한 구조의 예들은 상기의 설명에서 기술되어 있다.
[00128] 위의 설명은 예시적인 것으로 의도되며 제한적인 것으로 의도되지 않는다. 본 개시내용이 특정 예시적인 예들 및 구현들을 참조하여 설명되었지만, 본 개시내용은 설명된 예들 및 구현들로 제한되지 않는다는 것이 인식될 것이다. 본 개시내용의 범위는, 다음의 청구항들 및 이 청구항들이 권리를 갖는 등가물들의 전체 범위를 참조하여 결정되어야 한다.

Claims (21)

  1. 방법으로서,
    제조 챔버에서 기판에 대해 수행되는 프로세스 동안 상기 제조 챔버 내에 배치되는 복수의 센서들을 사용하여 상기 제조 챔버에서의 속성 값들의 서브세트를 측정하는 단계; 및
    상기 제조 챔버에서의 속성 값들의 서브세트의 측정치들을 트레이닝된 머신 러닝 모델에 입력하는 것에 기초하여 상기 제조 챔버에서 상기 기판 근처의 속성 값들의 맵을 결정하는 단계; 및
    상기 속성 값들의 맵을 고려하여 액션을 수행하는 단계를 포함하는,
    방법.
  2. 제1 항에 있어서,
    상기 액션을 수행하는 단계는 시정 조치(corrective action)를 취하는 단계 또는 경고를 클라이언트 디바이스로 전송하는 단계를 포함하고,
    상기 시정 조치는 적어도 하나의 프로세싱 파라미터에 대해 조정을 행하는 것을 포함하는,
    방법.
  3. 제1 항에 있어서,
    상기 트레이닝된 머신 러닝 모델은 차수 감소 모델(reduced order model)에 따라 상기 제조 챔버에서의 속성 값들을 나타내도록 구성되고, 상기 속성 값들의 맵은 상기 차수 감소 모델의 다수의 멤버들의 가중된 가산적 조합(weighted additive combination)으로서 결정되는,
    방법.
  4. 제3 항에 있어서,
    상기 트레이닝된 머신 러닝 모델은 희소 회귀 모델(sparse regression model)을 포함하고, 상기 속성 값들의 맵은 상기 회귀 모델의 희소 회귀 알고리즘을 사용하여 결정되는,
    방법.
  5. 제3 항에 있어서,
    상기 속성 값들의 맵을 결정하기 위해 상기 트레이닝된 머신 러닝 모델에 의해 선택되는 상기 멤버들은 기본 세트의 서브세트이고, 상기 기본 세트는, 상기 기본 세트의 가중된 가산적 조합들이 상기 제조 챔버에서의 관심 속성 값들을 설명하도록 구성되는,
    방법.
  6. 제5 항에 있어서,
    상기 기본 세트는 복수의 상이한 프로세싱 파라미터 구성들에 대해 상기 제조 챔버 전체에 걸쳐 속성 값들을 예측하는 물리-기반 컴퓨터-보조 모델의 결과들을 고려하여 결정되는,
    방법.
  7. 제1 항에 있어서,
    상기 속성 값들의 맵은 상기 기판 상의 복수의 로케이션들에서의 온도들을 포함하는,
    방법.
  8. 제7 항에 있어서,
    상기 제조 챔버에서의 속성 값들의 서브세트를 측정하는 단계는 상기 제조 챔버 내의 복수의 지점들에서 온도 측정치들을 취하는 단계를 포함하고,
    상기 복수의 지점들 중 적어도 대부분은 상기 기판 상에 있지 않은,
    방법.
  9. 방법으로서,
    머신 러닝 모델에 대한 트레이닝 데이터를 생성하는 단계 ― 상기 트레이닝 데이터를 생성하는 단계는,
    제조 챔버에서의 속성 값들의 제한된 서브세트와 연관되는 제1 속성 값들을 표시하는 데이터를 포함하는 제1 트레이닝 입력을 식별하는 단계; 및
    상기 제1 트레이닝 입력에 대한 제1 목표 출력을 식별하는 단계를 포함하고,
    상기 제1 목표 출력은 상기 제조 챔버 내의 복수의 로케이션들에서의 속성 값들의 맵을 포함하고, 상기 복수의 로케이션들은 상기 제1 트레이닝 입력으로서 사용되는 상기 속성 값들의 서브세트보다 더 많은 로케이션들을 포함함 ―; 및
    (i) 상기 제1 트레이닝 입력을 포함하는 트레이닝 입력들의 세트, 및 (ii) 상기 제1 목표 출력을 포함하는 목표 출력들의 세트에 대해 상기 머신 러닝 모델을 트레이닝시키기 위해 상기 트레이닝 데이터를 제공하는 단계를 포함하며,
    상기 트레이닝된 머신 러닝 모델은 상기 제조 챔버에서의 속성 값들의 제한된 서브세트와 연관되는 제2 속성 값들을 표시하는 데이터를 포함하는 새로운 입력을 수신하고 그리고 상기 새로운 입력에 기초하여 새로운 출력을 생성하며, 상기 제2 속성 값들은 상기 제1 속성 값들과는 상이하고, 상기 새로운 출력은 상기 제조 챔버에서 기판 근처의 속성 값들의 맵을 포함하는,
    방법.
  10. 제9 항에 있어서,
    상기 트레이닝 입력들의 세트 내의 각각의 트레이닝 입력은 상기 목표 출력들의 세트 내의 목표 출력에 맵핑되는,
    방법.
  11. 제9 항에 있어서,
    상기 트레이닝 입력들은 상기 기판에 인접하지 않은 로케이션들에서 상기 챔버에서의 속성 값들에 대해 취해지는 다수의 측정들을 표시하는 데이터를 포함하고, 상기 목표 출력들은 상기 기판의 상기 로케이션에서의 속성 값들의 예측치들을 포함하는,
    방법.
  12. 제9 항에 있어서,
    상기 목표 출력들은, 복수의 프로세싱 파라미터들에 대한 상기 제조 챔버에서의 속성 값들을 설명하는, 컴퓨터-보조 물리-기반 모델의 결과들을 표시하는 데이터를 포함하는,
    방법.
  13. 제12 항에 있어서,
    상이한 제조 파라미터들을 갖는 정상 상태 컨디션들이 비교될 때 관심 속성의 값의 변화가 특정한 임계치를 초과하는 상기 챔버의 로케이션들에 대응하는 상기 컴퓨터-보조 물리-기반 모델의 결과들의 서브세트가 사용되는,
    방법.
  14. 제9 항에 있어서,
    상기 머신 러닝 모델의 출력은, 기본 세트에 적용되어 차수 축소 모델에서 가산적 조합을 형성할 가중치들을 포함하는,
    방법.
  15. 제9 항에 있어서,
    상기 머신 러닝 모델은 희소 회귀 모델을 포함하는,
    방법.
  16. 제9 항에 있어서,
    상기 속성 값들의 서브세트는 상기 챔버 내의 제한된 수의 로케이션들에서의 컨디션들의 측정치들을 포함하는,
    방법.
  17. 제16 항에 있어서,
    상기 제한된 수의 로케이션들은 컴퓨터-보조 물리-기반 모델의 결과들을 트레이닝된 머신 러닝 모델에 입력하는 것에 의해 선택되고, 상기 트레이닝된 머신 러닝 모델의 출력은 측정치들을 취하기 위한 최적화된 로케이션들을 포함하는,
    방법.
  18. 명령들을 저장하는 비-일시적 머신 판독 가능 저장 매체로서,
    상기 명령들은, 프로세싱 디바이스에 의해 실행될 때, 상기 프로세싱 디바이스로 하여금 동작들을 수행하게 하고,
    상기 동작들은,
    기판을 포함하는 제조 챔버 내에서의 속성 값들의 서브세트의 측정치들을 표시하는 데이터를 수신하는 동작;
    머신 러닝 모델을 사용하여, 상기 기판 근처의 상기 속성 값들을 포함하는, 상기 제조 챔버 내에서의 속성 값들의 맵을 결정하는 동작; 및
    (i) 상기 속성 값들의 맵을 고려하여 상기 제조 챔버와 연관되는 제조 파라미터들을 조정하는 것, 또는 (ii) 경고를 사용자 디바이스에 전송하는 것 중 적어도 하나를 수행하는 동작을 포함하는,
    비-일시적 머신 판독 가능 저장 매체.
  19. 제18 항에 있어서,
    상기 동작들은, 상기 제조 챔버 내에서의 속성 값들의 맵을 설명하는 출력을, 기본 세트의 다수의 멤버들의 가중된 가산적 조합에 대한 계수들로서 생성하는 동작을 더 포함하고, 상기 기본 세트는 복수의 프로세싱 파라미터들에서 평가되는 상기 챔버의 컴퓨터-보조 물리-기반 모델의 결과들을 고려하여 구성되는,
    비-일시적 머신 판독 가능 저장 매체.
  20. 제18 항에 있어서,
    상기 제조 챔버에서의 속성 값들의 서브세트의 측정치들은 상기 제조 챔버 내의 복수의 지점들에서 취해지는 온도 측정치들을 포함하고, 상기 복수의 지점들 중 적어도 대부분은 상기 기판 상에 있지 않은,
    비-일시적 머신 판독 가능 저장 매체.
  21. 제18 항에 있어서,
    상기 속성 값들의 맵은 상기 제조 챔버 내의 복수의 지점들에서의 온도들을 포함하고, 상기 지점들은 적어도 상기 기판 상의 지점들을 포함하는,
    비-일시적 머신 판독 가능 저장 매체.
KR1020247002742A 2021-09-15 2022-09-14 물리지식기반 압축 감지를 이용한 기판 근처의 컨디션들의 가상 측정 KR20240049266A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/476,408 2021-09-15
US17/476,408 US20230078146A1 (en) 2021-09-15 2021-09-15 Virtual measurement of conditions proximate to a substrate with physics-informed compressed sensing
PCT/US2022/043531 WO2023043838A1 (en) 2021-09-15 2022-09-14 Virtual measurement of conditions proximate to a substrate with physics-informed compressed sensing

Publications (1)

Publication Number Publication Date
KR20240049266A true KR20240049266A (ko) 2024-04-16

Family

ID=85479808

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020247002742A KR20240049266A (ko) 2021-09-15 2022-09-14 물리지식기반 압축 감지를 이용한 기판 근처의 컨디션들의 가상 측정

Country Status (5)

Country Link
US (1) US20230078146A1 (ko)
KR (1) KR20240049266A (ko)
CN (1) CN117678061A (ko)
TW (1) TW202328962A (ko)
WO (1) WO2023043838A1 (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10978278B2 (en) * 2018-07-31 2021-04-13 Tokyo Electron Limited Normal-incident in-situ process monitor sensor
US10705514B2 (en) * 2018-10-09 2020-07-07 Applied Materials, Inc. Adaptive chamber matching in advanced semiconductor process control
CN109816634B (zh) * 2018-12-29 2023-07-11 歌尔股份有限公司 检测方法、模型训练方法、装置及设备
EP3994526A1 (en) * 2019-07-03 2022-05-11 ASML Netherlands B.V. Method for applying a deposition model in a semiconductor manufacturing process
KR20220133228A (ko) * 2020-01-27 2022-10-04 램 리써치 코포레이션 반도체-제작 프로세스들을 위한 성능 예측기들

Also Published As

Publication number Publication date
TW202328962A (zh) 2023-07-16
WO2023043838A1 (en) 2023-03-23
US20230078146A1 (en) 2023-03-16
CN117678061A (zh) 2024-03-08

Similar Documents

Publication Publication Date Title
KR102583830B1 (ko) 제조 동안의 고급 반도체 프로세스 최적화 및 적응형 제어
KR102039394B1 (ko) 탐색 장치 및 탐색 방법
KR20190049796A (ko) 복잡한 다변수 웨이퍼 프로세싱 장비에서 머신 러닝을 구현하는 방법 및 프로세스
TW202344943A (zh) 製造裝備零件品質管理系統
KR20210092310A (ko) 고도로 공선적인 응답 공간에서의 처방적 분석
US20230059313A1 (en) On wafer dimensionality reduction
TW202343177A (zh) 用於製造設備的診斷工具與工具之匹配和全跡比較下鑽分析方法
TW202346959A (zh) 用於製造設備的診斷工具與工具之匹配和比較下鑽分析方法
KR20240049266A (ko) 물리지식기반 압축 감지를 이용한 기판 근처의 컨디션들의 가상 측정
KR20240052016A (ko) 반도체 제조 장비의 적응형 문제 해결을 위한 시스템들 및 방법들
KR20230150368A (ko) 가상 모델을 사용한 프로세스 챔버 건강 모니터링 및 진단을 위한 시스템들 및 방법들
TW202217671A (zh) 腔室匹配及校準
US20230195060A1 (en) Substrate support characterization to build a digital twin
US20230222264A1 (en) Processing chamber calibration
US20230195074A1 (en) Diagnostic methods for substrate manufacturing chambers using physics-based models
US20240037442A1 (en) Generating indications of learning of models for semiconductor processing
US20230367302A1 (en) Holistic analysis of multidimensional sensor data for substrate processing equipment
US20240152675A1 (en) Determining substrate characteristics by virtual substrate measurement
US20230113095A1 (en) Verification for improving quality of maintenance of manufacturing equipment
US20240054333A1 (en) Piecewise functional fitting of substrate profiles for process learning
TW202409764A (zh) 用於基板處理設備的多維感測器資料的整體分析
US20240144464A1 (en) Classification of defect patterns of substrates
KR20240067834A (ko) 피처 모델들을 사용한 프로세스 레시피 생성 및 매칭
CN117321522A (zh) 使用特征模型的工艺配方创建和匹配
TW202343176A (zh) 用於製造設備的診斷工具與工具之匹配方法

Legal Events

Date Code Title Description
A201 Request for examination