KR20250053111A - 머신 러닝을 이용한 제조 시스템에서의 장비 파라미터 관리 - Google Patents

머신 러닝을 이용한 제조 시스템에서의 장비 파라미터 관리 Download PDF

Info

Publication number
KR20250053111A
KR20250053111A KR1020257008561A KR20257008561A KR20250053111A KR 20250053111 A KR20250053111 A KR 20250053111A KR 1020257008561 A KR1020257008561 A KR 1020257008561A KR 20257008561 A KR20257008561 A KR 20257008561A KR 20250053111 A KR20250053111 A KR 20250053111A
Authority
KR
South Korea
Prior art keywords
equipment
data
machine learning
value
predicted
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
KR1020257008561A
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 KR20250053111A publication Critical patent/KR20250053111A/ko
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/0265Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/09Supervised learning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45031Manufacturing semiconductor wafers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Automation & Control Theory (AREA)
  • General Factory Administration (AREA)

Abstract

방법은 장비 파라미터에 연관된 제1 데이터를 수신하는 것을 포함한다. 제1 데이터는 제1 제조 시스템에 있는 복수의 프로세스 툴 중의 프로세스 툴의 장비 세팅을 나타낸다. 방법은 제1 데이터를 훈련된 머신 러닝 모델에 대한 입력으로서 제공하는 것을 추가로 포함한다. 훈련된 머신 러닝 모델은 제1 제조 시스템에 있는 복수의 프로세스 툴의 장비 파라미터들에 관한 과거 데이터를 사용하여 훈련된다. 방법은 훈련된 머신 러닝 모델의 출력으로서, 장비 파라미터에 대응하는 메트릭의 예측된 값을 획득하는 것을 추가로 포함한다. 방법은 메트릭의 예측된 값을 제1 데이터와 비교하는 것, 및 비교에 기초하여 수정 액션을 수행하는 것을 추가로 포함한다.

Description

머신 러닝을 이용한 제조 시스템에서의 장비 파라미터 관리
본 개시내용의 실시예들은 일반적으로 제조 시스템들에 관한 것이고, 더 구체적으로는 머신 러닝을 사용하여 제조 시스템에서 장비 파라미터들을 관리하는 것에 관한 것이다.
전자 디바이스들의 크기가 계속하여 축소됨에 따라, 기판 처리 복잡성이 계속 증가했다. 기판들을 제조하기 위한 일부 기술들은 다수의 상이한 프로세스를 수반할 수 있다. 또한, 기판들을 제조하기 위해 다수의 장비가 사용될 수 있으며, 많은 수의 장비가 기판 제조 시스템 및/또는 기판 제조 설비를 구성한다. 각각의 장비는 다수의 장비 파라미터에 기초하여 동작할 수 있다. 장비 파라미터들은 장비가 어떻게 동작할 수 있는지를 결정할 수 있다. 다수의 장비 파라미터의 컬렉션은 기판들을 제조하기 위해 장비를 동작시키기 위한 벤치마크로서 사용될 수 있다. 장비 파라미터들의 컬렉션, 및/또는 하나의 기판 제조 장비에 의해 수행되는 프로세스를 최적화하기 위해 개별 장비 파라미터를 얼마나 많이 수정해야 하는지를 결정하는 것은 어렵고 시간 소모적일 수 있다.
이하는 본 개시내용의 일부 양태들에 대한 기본적인 이해를 제공하기 위한 본 개시내용의 간략화된 요약이다. 이러한 요약은 본 개시내용의 광범위한 개요가 아니다. 이는 본 개시내용의 핵심적 또는 결정적 요소들을 식별하거나, 본 개시내용의 특정 구현들의 임의의 범위 또는 청구항들의 임의의 범위를 기술하도록 의도되지 않는다. 그것의 유일한 목적은 나중에 제시되는 더 상세한 설명에 대한 서두로서 단순화된 형태로 본 개시내용의 일부 개념들을 제시하는 것이다.
일부 실시예들에서, 방법은 장비 파라미터에 연관된 제1 데이터를 수신하는 단계를 포함한다. 제1 데이터는 제1 제조 시스템에 있는 복수의 프로세스 툴 중의 프로세스 툴의 장비 세팅을 나타낸다. 방법은 제1 데이터를 훈련된 머신 러닝 모델에 대한 입력으로서 제공하는 단계를 추가로 포함한다. 훈련된 머신 러닝 모델은 제1 제조 시스템에 있는 복수의 프로세스 툴의 장비 파라미터들에 관한 과거 데이터(historical data)를 사용하여 훈련된다. 방법은 훈련된 머신 러닝 모델의 출력으로서, 장비 파라미터에 대응하는 메트릭의 예측된 값을 획득하는 단계를 추가로 포함한다. 방법은 메트릭의 예측된 값을 제1 데이터와 비교하는 단계, 및 비교에 기초하여 수정 액션(corrective action)을 수행하는 단계를 추가로 포함한다.
일부 실시예들에서, 시스템은 메모리, 및 메모리에 결합된 처리 디바이스를 포함한다. 처리 디바이스는 장비 파라미터에 연관된 제1 데이터를 수신한다. 제1 데이터는 제1 제조 시스템에 있는 복수의 프로세스 툴 중의 프로세스 툴의 장비 세팅을 나타낸다. 처리 디바이스는 추가로, 제1 데이터를 훈련된 머신 러닝 모델에 대한 입력으로서 제공한다. 훈련된 머신 러닝 모델은 제1 제조 시스템에 있는 복수의 프로세스 툴의 장비 파라미터들에 관한 과거 데이터를 사용하여 훈련된다. 처리 디바이스는 추가로, 훈련된 머신 러닝 모델의 출력으로서, 장비 파라미터에 대응하는 메트릭의 예측된 값을 획득한다. 처리 디바이스는 추가로, 메트릭의 예측된 값을 제1 데이터와 비교하고, 비교에 기초하여 수정 액션을 수행한다.
일부 실시예들에서, 비-일시적 컴퓨터 판독가능 매체는, 처리 디바이스에 의해 실행될 때, 처리 디바이스로 하여금: 장비 파라미터에 연관된 제1 데이터를 수신하게 하는 명령어들을 포함한다. 제1 데이터는 제1 제조 시스템에 있는 복수의 프로세스 툴 중의 프로세스 툴의 장비 세팅을 나타낸다. 처리 디바이스는 추가로, 제1 데이터를 훈련된 머신 러닝 모델에 대한 입력으로서 제공한다. 훈련된 머신 러닝 모델은 제1 제조 시스템에 있는 복수의 프로세스 툴의 장비 파라미터들에 관한 과거 데이터를 사용하여 훈련된다. 처리 디바이스는 추가로, 훈련된 머신 러닝 모델의 출력으로서, 장비 파라미터에 대응하는 메트릭의 예측된 값을 획득한다. 처리 디바이스는 추가로, 메트릭의 예측된 값을 제1 데이터와 비교하고, 비교에 기초하여 수정 액션을 수행한다.
본 개시내용은 유사한 참조번호들이 유사한 요소들을 나타내는 첨부 도면들 중의 도면들에서, 제한이 아닌 예로서 도시된다. 본 개시내용에서 "실시예" 또는 "일 실시예"에 대한 상이한 언급들이 반드시 동일한 실시예를 의미하는 것은 아니며, 이러한 언급들은 적어도 하나를 의미한다는 점에 유의해야 한다.
도 1은 본 개시내용의 양태들에 따른 예시적인 시스템 아키텍처를 묘사한다.
도 2는 본 개시내용의 양태들에 따른 예시적인 장비 파라미터 관리 엔진의 블록도이다.
도 3은 본 개시내용의 양태들에 따른, 제조 시스템에서의 장비 파라미터 관리를 위한 방법의 플로우차트이다.
도 4는 본 개시내용의 양태들에 따른, 머신 러닝 모델을 훈련하기 위한 방법의 플로우차트이다.
도 5는 일 실시예에 따른, 장비 파라미터 관리를 위한 모델 훈련 워크플로우 및 모델 적용 워크플로우를 도시한다.
도 6은 본 개시내용의 양태들에 따른, 머신 러닝을 사용하여 장비 파라미터를 추정하기 위한 방법의 플로우차트이다.
도 7은 본 개시내용의 하나 이상의 양태에 따라 동작하는 예시적인 컴퓨터 시스템의 블록도를 묘사한다.
본 명세서에 설명된 구현들은 머신 러닝을 이용한 제조 시스템에서의 장비 파라미터 관리를 위한 시스템들 및 방법들을 제공한다. 일부 경우들에서, 기판들을 처리하기 위해 다수의 프로세스 툴이 사용될 수 있다. 각각의 툴은 기판을 처리하기 위해 하나 이상의 동작을 수행할 수 있거나, 각각의 툴은 다수의 기판을 처리하기 위해 다수의 동작을 수행할 수 있다. 전자 디바이스들의 크기가 계속하여 축소됨에 따라, 프로세스 툴들은 계속해서 복잡해지고 있다. 예를 들어, 각각의 프로세스 툴은 기판 제조 프로세스 동안 기판 처리를 수행하기 위해 다수의 센서, 밸브, 가열 요소, 또는 다른 컴포넌트 등을 포함할 수 있다. 프로세스 툴의 각각의 컴포넌트는 하나 이상의 파라미터(예를 들어, 하나 이상의 세팅에 연관됨)에 기초하여 동작할 수 있다.
다수의 프로세스 툴을 포함하는 기판 제조 시스템은 다수의(예를 들어, 수백 개의 또는 때로는 수천 개의) 장비 파라미터를 가질 수 있다. 본 명세서에 설명되는 바와 같이, 각각의 장비 파라미터는 프로세스 툴의 개별 세팅에 대응할 수 있다. 예를 들어, 장비 파라미터는 프로세스 챔버 내에 배치된 가열 요소의 세팅에 대응할 수 있다. 다른 예에서, 장비 파라미터는 프로세스 툴(예를 들어, 프로세스 챔버, 이송 챔버 등)의 내부의 조건들을 모니터링하는 센서(예를 들어, 온도 센서, 유동 센서 등)의 교정 세팅에 관련될 수 있다. 다른 예에서, 장비 파라미터는 기판 이송 로봇이 미리 결정된 기준(예를 들어, "제로" 포인트)에 대해 동작하기 위한 오프셋을 반영할 수 있다.
기판들이 처리됨에 따라, 적어도 일부 장비 파라미터들은 제조 시스템에서 처리되는 기판들이 계속해서 프로세스 타깃들을 충족하도록 변경될 수 있다. 마찬가지로, 일부 장비 파라미터들은 장비가 마모됨에 따라 변경될 수 있다. 예를 들어, 센서는 점차 교정으로부터 벗어날 수 있고, 제어기(예를 들어, 처리 디바이스, 프로세서 등)에 잘못된 센서 데이터를 보고하기 시작할 수 있다. 센서 데이터가 프로세스의 조건(예를 들어, 기판 프로세스, 프로세스 챔버의 조건 등)을 정확하게 반영하도록, 센서의 교정에 관련된 하나 이상의 장비 파라미터가 기판 처리 동안 변경될 수 있다. 일부 장비 파라미터들은 툴마다 다르다. 예를 들어, 유사한 프로세스 툴들(예를 들어, 프로세스 챔버들, 기판 프로세스 로봇들 등)은 기판 처리로부터 상이한 마모를 가질 수 있고(예를 들어, 유사하지 않은 실행 시간들, 유지관리 스케줄들, 컴포넌트 부품들의 변동성 등으로 인함), 이는 상이한 프로세스 툴들의 동일한 세팅들에 상관관계가 있는 장비 파라미터들이 상이한 값들을 가질 필요가 있게 한다.
특정 장비 파라미터들은 다른 장비 파라미터들보다 높아진 중요도를 가질 수 있다(예를 들어, 더 결정적임). 예를 들어, 제1 주어진 장비 파라미터에 대한 변경들은 제2 주어진 장비 파라미터에 대한 유사한 변경들보다 기판 처리를 더 많이 변경할 수 있다. 장비 파라미터들을 변경한 결과로서 발생할 수 있는 변경들로 인해, 장비 파라미터들이 미리 결정된 값 범위 밖으로 드리프트하지 않을 것을 보장하기 위해 장비 파라미터들을 모니터링하는 것이 유익할 수 있다. 일부 예들에서, 드리프트하는 장비 파라미터는 사용자(예를 들어, 엔지니어, 기술자 등)에게 기판 제조 시스템의 컴포넌트에 결함이 있음을 나타낼 수 있다. 드리프트하는 장비 파라미터는 또한 처리된 기판들이 타깃 프로세스 결과와 일치하지 않을 수 있음을 나타낼 수 있다. 장비 파라미터를 그것의 미리 결정된 범위 내로 되돌리기 위해서는 수정 액션이 필요할 수 있다.
제조 시스템의 프로세스 툴들에 관련된 장비 파라미터들의 컬렉션(예를 들어, 장비 파라미터들의 목록)은 제조 시스템을 동작시키기 위한 벤치마크로서 사용될 수 있다. 예를 들어, 장비 파라미터들의 목록은 제조 시스템에 있는 프로세스 툴들의 다수의 컴포넌트에 대한 시작 세팅들을 나타낼 수 있다. 새로운 제조 시스템이 시운전될 때(예를 들어, 기판들을 제조하기 위해 처음으로 실행될 때 등), 제조 시스템은 장비 파라미터들의 초기 목록을 사용하여 실행될 수 있다. 각각의 개별 장비 파라미터는 제조 시스템을 최적화하기 위해, 및/또는 컴포넌트 허용오차들 및 변동성과 같은 프로세스 툴들의 차이들을 처리하기 위해, 시간이 지남에 따라 변경될 수 있다.
관례적으로, 제조 시스템의 사용자 또는 사용자들(예를 들어, 인간 사용자들)은 장비 파라미터들의 목록을 컴파일한다. 사용자(또는 사용자들)는 광범위한 연구 및/또는 실험 후에 각각의 장비 파라미터의 디폴트 값 또는 디폴트 값 범위를 결정할 수 있다. 사용자는 또한 각각의 장비 파라미터의 중요도(criticality)를 결정할 수 있고, 각각의 장비 파라미터에 중요도 값을 할당할 수 있다. 사용자는 이러한 결정들을 내리기 위해 제조 시스템의 동작 동안 수집된 데이터를 연구할 수 있다. 장비 파라미터들의 수가 많기 때문에(때로는 매우 많기 때문에), 사용자는 장비 파라미터들의 목록 및 디폴트 값들을 컴파일하는 데 많은 양의 시간 및 자원들을 소비할 수 있다.
본 개시내용의 양태들은 머신 러닝을 이용한 제조 시스템에서의 장비 파라미터 관리를 위한 시스템들 및 방법들을 제공함으로써 장비 파라미터들을 모니터링하고 그에 디폴트 값들을 할당하는 종래의 방법들의 결함들을 해결한다. 일부 실시예들에서, 처리 디바이스(예를 들어, 프로세서, 제어기 등)는 하나 이상의 장비 파라미터에 연관된 데이터를 (예를 들어, 제조 시스템으로부터) 수신할 수 있다. 머신 러닝 기술들은 장비 파라미터가 적절한 값 범위 내에 있는지를 결정하기 위해 사용될 수 있다. 추가적으로, 시간 간격(예를 들어, 하루, 예방적 유지관리 사이클 등)에 걸친 제조 시스템의 동작 동안 수집된 과거 장비 파라미터 데이터를 사용하여, 머신 러닝 기술들은 디폴트 값들 및/또는 디폴트 범위들을 다수의 장비 파라미터에 할당하기 위해 사용될 수 있다. 또한, 머신 러닝 기술들은 장비 파라미터들 각각에 중요도 값들을 할당하기 위해 사용될 수 있고, 각각의 중요도 값은 장비 파라미터들 각각의 중요도에 대응한다. 머신 러닝 기술들은 또한 장비 파라미터들의 현재 값들 및 과거 데이터에 기초하여, 장비 파라미터들 각각에 대한 업데이트들을 예측하기 위해 사용될 수 있다. 머신 러닝을 통해, 장비 파라미터들은 제조 설비에서의 기판들의 제조를 최적화하도록 수정될 수 있다.
본 개시내용의 실시예들은 머신 러닝을 사용하여 기판 제조 프로세스를 최적화하기 위한 기술들을 제공한다. 본 개시내용의 실시예들은 머신 러닝 기술들을 사용하여 기판 제조 동안 및/또는 기판 처리 동안 장비 파라미터들을 모니터링 및/또는 업데이트한다. 또한, 본 개시내용의 실시예들은 머신 러닝 기술들을 사용하여 장비 파라미터들의 목록을 컴파일하고, 각각의 장비 파라미터에 디폴트 값들, 디폴트 범위들, 및/또는 디폴트 중요도 값들을 할당한다. 관례적으로, 본 개시내용에서 논의된 기능들을 수행하기 위해 인간 사용자들에 의존했다. 따라서, 본 명세서에 개시된 방법들 및 시스템들은 장비 파라미터들의 목록을 컴파일하는 데 사용되는 시간을 줄일 수 있고, 종래의 방법들의 인간적 편견 및 부정확성을 실질적으로 제거할 수 있다. 또한, 장비 파라미터들의 변화들은 본 명세서에 설명된 시스템들 및 방법들을 사용하여 신속하게 해결될 수 있고, 이는 제조 시스템의 정확도와 전체 처리량을 증가시킨다.
도 1은 본 개시내용의 양태들에 따른 예시적인 시스템 아키텍처(100)를 묘사한다. 일부 실시예들에서, 시스템 아키텍처(100)는 기판들을 처리하기 위한 제조 시스템의 일부로서 포함될 수 있다. 시스템 아키텍처(100)는 하나 이상의 클라이언트 디바이스(120), 제조 장비(124), 계측 장비(128), (예를 들어, 예측 데이터를 생성하기 위한, 모델 적응을 제공하기 위한, 지식 베이스를 사용하기 위한 등의) 예측 서버(112), 및 데이터 저장소(140)를 포함할 수 있다. 예측 서버(112)는 예측 시스템(110)의 일부일 수 있다. 예측 시스템(110)은 서버 머신들(170 및 180)을 더 포함할 수 있다. 제조 장비(124)는 제조 시스템에서 처리되고 있는 기판에 대한 데이터를 캡처하도록 구성된 센서들을 포함할 수 있다. 일부 실시예들에서, 제조 장비(124) 및 센서들은 센서 서버(예를 들어, 제조 설비에 있는 현장 서비스 서버(field service server)(FSS)) 및 센서 식별자 판독기(예를 들어, 센서 시스템을 위한 전면 개방 통합 포드(front opening unified pod)(FOUP) 무선 주파수 식별(radio frequency identification)(RFID) 판독기)를 포함하는 센서 시스템의 일부일 수 있다. 일부 실시예들에서, 계측 장비(128)는 계측 서버(예를 들어, 계측 데이터베이스, 계측 폴더들 등) 및 계측 식별자 판독기(예를 들어, 계측 시스템을 위한 FOUP RFID 판독기)를 포함하는 계측 시스템의 일부일 수 있다. 도 1에서는 계측 장비(128) 및 제조 장비(124)가 별개의 컴포넌트들로서 묘사되어 있지만, 계측 장비(128)는 제조 장비(124)의 일부로서 포함될 수 있다는 점에 유의해야 한다. 예를 들어, 제조 장비(124)는 프로세스 툴을 포함할 수 있다. 계측 장비(128)의 하나 이상의 컴포넌트는 프로세스 툴의 하나 이상의 컴포넌트 또는 스테이션 내에 통합될 수 있다. 예를 들어, 계측 장비(128)의 하나 이상의 컴포넌트는 제조 장비(124)의 팩토리 인터페이스, 로드 록, 이송 챔버, 프로세스 챔버, 및/또는 프로세스 툴의 하나 이상의 추가 스테이션 내에 통합될 수 있다.
제조 장비(124)는 레시피를 따르고/거나 일정 기간에 걸쳐 행정들(runs)을 수행하여 제품들을 생산한다. 제조 장비(124)는 기판 프로세스 동안의 기판에 대한 데이터(센서 데이터라고 지칭됨)를 생성하도록 구성된 하나 이상의 센서를 포함할 수 있다. 센서 데이터는 온도(예를 들어, 히터 온도), 간격(spacing)(SP), 압력, 고주파 무선 주파수(high frequency radio frequency)(HFRF), 정전 척(electrostatic chuck)(ESC)의 전압, 전류, 유동, 전력, 전압 등 중 하나 이상의 값을 포함할 수 있다. 센서 데이터는 하드웨어 파라미터들, 예컨대 제조 장비(124)의 세팅들 또는 컴포넌트들(예를 들어, 크기, 타입 등), 제조 장비(124)의 장비 파라미터들, 또는 제조 장비(124)의 프로세스 파라미터들과 같은 제조 파라미터들에 연관되거나 이를 나타낼 수 있다. 센서 데이터는 제조 장비(124)가 제조 프로세스들을 수행하고 있는 동안 제공될 수 있다(예를 들어, 제품들을 처리할 때의 장비 판독들). 센서 데이터는 각각의 기판에 대해 상이할 수 있다.
일부 실시예들에서, 제조 장비(124)는 장비 파라미터들(예를 들어, 파라미터들, 하드웨어 파라미터들, 장비 상수들 등)에 기초하여 동작한다. 파라미터들은 제조 장비의 거동을 결정할 수 있다. 일부 예들에서, 장비 파라미터들은 제조 장비(124)의 동작을 위한 교정 값들, 오프셋 값들, 및/또는 스케일링 계수 값들을 포함한다. 구체적인 예에서, 제조 장비(124)의 처리 디바이스(예를 들어, 프로세서)는 센서를 통해 수신된 데이터를 스케일링하기 위해 스케일링 계수를 이용할 수 있다. 다른 예에서, 처리 디바이스는 하나 이상의 센서를 교정하기 위해 교정 값을 이용할 수 있다. 일부 실시예들에서, 파라미터들은 다수의 제조 툴에 걸쳐 일정할 수 있다(예를 들어, 실질적으로 일정할 수 있음). 그러나, 유사한 제조 툴들은 툴들 간의 차이들, 예를 들어 실행 시간 증가, 마모 증가 등에 기초하여 상이한 파라미터들을 가질 수 있다. 일부 실시예들에서, 주어진 제조 툴에 대한 일부 파라미터들은 시간의 경과에 따라 일정하게 유지될 수 있다. 일부 파라미터들은 값 범위 내에서 변경될 수 있다. 일부 파라미터들은 시간의 경과에 따라 증가할 수 있다(예를 들어, 카운터 파라미터들). 일부 실시예들에서, 일부 파라미터들은 제조 툴의 유지관리(예를 들어, 예방적 유지관리, 반응적 유지관리, 정기적 유지관리, 세정 등) 동안 리셋 및/또는 변경된다. 일부 파라미터들은 정성적(qualitative)이며, 이는 그들이 제조 툴의 동작 모드에 관련이 있음을 의미한다. 장비 파라미터들에 관련된 데이터는 본 명세서에 설명되는 바와 같은 데이터 저장소(140)에 저장될 수 있다.
계측 장비(128)는 제조 장비(124)에 의해 처리된 기판들(예를 들어, 웨이퍼들 등)에 연관된 계측 데이터를 제공한다. 계측 데이터는 필름 속성 데이터(예를 들어, 웨이퍼 공간 필름 속성들(wafer spatial film properties)), 치수들(예를 들어, 두께, 높이 등), 유전 상수, 도펀트 농도, 밀도, 결함들 등 중 하나 이상의 값을 포함할 수 있다. 일부 실시예들에서, 계측 데이터는 하나 이상의 표면 프로파일 속성 데이터(예를 들어, 식각률, 식각률 균일성, 기판의 표면 상에 포함된 하나 이상의 피쳐의 임계 치수, 기판의 표면에 걸친 임계 치수 균일성, 에지 배치 오류(edge placement error) 등)의 값을 추가로 포함할 수 있다. 계측 데이터는 완제품 또는 반제품의 것일 수 있다. 계측 데이터는 각각의 기판에 대해 상이할 수 있다. 일부 실시예들에서, 계측 장비(128)는 제조 장비(124)에서 처리된 각각의 기판에 대한 계측 데이터를 수집할 수 있다. 다른 또는 유사한 실시예들에서, 계측 장비(128)는 제조 장비(124)에서 처리된 기판들의 일부에 대한 계측 데이터를 수집할 수 있다. 예를 들어, 많은 기판이 제조 장비(124)에서 처리될 수 있다. 계측 장비(128)는 로트 내의 기판들의 일부(예를 들어, 로트 내의 기판들의 15%, 로트 내의 기판들의 20% 등)에 대한 계측 데이터를 수집할 수 있다. 일부 실시예들에서, 시스템 아키텍처(100)의 시스템들(예를 들어, 예측 시스템(110))은 로트 내의 기판들의 일부에 대해 수집된 계측 데이터를 로트 내의 각각의 기판에 대한 계측 데이터의 대표로서 연관시킬 수 있다.
클라이언트 디바이스(120)는 개인용 컴퓨터들(PC), 랩톱들, 이동 전화들, 스마트폰들, 태블릿 컴퓨터들, 넷북 컴퓨터들, 네트워크 연결 텔레비전들("스마트 TV들"), 네트워크 연결 미디어 플레이어들(예를 들어, 블루레이 플레이어), 셋톱 박스, OTT(over-the-top) 스트리밍 디바이스들, 오퍼레이터 박스들 등과 같은 컴퓨팅 디바이스를 포함한다. 일부 실시예들에서, 계측 데이터는 클라이언트 디바이스(120)로부터 수신될 수 있다. 일부 실시예들에서, 장비 파라미터 데이터는 클라이언트 디바이스(120)로부터 수신될 수 있다. 일부 실시예들에서, 클라이언트 디바이스(120)는 그래픽 사용자 인터페이스(GUI)를 디스플레이하고, GUI는 사용자가 제조 시스템에서 처리된 기판들에 대한 계측 측정 값들을 입력으로서 제공할 수 있게 한다. 일부 실시예들에서, GUI는 사용자가 제조 장비(124)에 연관된 장비 파라미터 값들을 입력으로서 제공할 수 있게 한다. 다른 또는 유사한 실시예들에서, 클라이언트 디바이스(120)는 사용자가 제조 시스템에서 처리될 기판의 타입, 기판에 대해 수행될 프로세스의 타입, 및/또는 제조 시스템에 있는 장비의 타입의 표시를 입력으로서 제공할 수 있게 하는 다른 GUI를 디스플레이할 수 있다.
데이터 저장소(140)는 메모리(예를 들어, 랜덤 액세스 메모리), 드라이브(예를 들어, 하드 드라이브, 플래시 드라이브), 데이터베이스 시스템, 또는 데이터를 저장할 수 있는 다른 타입의 컴포넌트 또는 디바이스일 수 있다. 데이터 저장소(140)는 다수의 컴퓨팅 디바이스(예를 들어, 다수의 서버 컴퓨터)에 걸쳐 있을 수 있는 다수의 저장 컴포넌트(예를 들어, 다수의 드라이브 또는 다수의 데이터베이스)를 포함할 수 있다. 일부 실시예들에서, 데이터 저장소(140)는 제조 툴(들)의 파라미터들에 연관된 데이터(본 명세서에서 파라미터 데이터라고 지칭됨)를 저장할 수 있다. 파라미터 데이터는 하나 이상의 제조 장비 세팅의 표시를 포함할 수 있다. 제조 장비 세팅들은 센서 교정 및/또는 다른 장비 파라미터들에 관련될 수 있다. 일부 실시예들에서, 파라미터 데이터는 과거 파라미터 데이터(예를 들어, 제조 장비(124)의 이전 세팅들에 연관된 파라미터 데이터), 및/또는 현재 파라미터 데이터(예를 들어, 현재 장비 세팅들에 연관된 파라미터 데이터)를 지칭할 수 있다.
추가적인 또는 대안적인 실시예들에서, 데이터 저장소(140)는 기판 프로세스의 수행 전에, 동안에, 및/또는 후에 제조 장비(124)에 있는 또는 그에 결합된 센서들에 의해 기판에 대해 수집된 데이터(본 명세서에서 센서 데이터라고 지칭됨)를 저장할 수 있다. 예를 들어, 프로세스 챔버는 기판 프로세스 전에, 동안에, 또는 후에 프로세스 챔버 내의 기판 및/또는 환경에 대한 데이터를 수집하도록 구성된 하나 이상의 센서(예를 들어, 온도 센서들, 스펙트럼 센서들 등)를 포함할 수 있다. 시스템 아키텍처(100)에 연관된 컴퓨팅 시스템(예를 들어, 예측 시스템(110), 제조 장비(124)에 대한 시스템 제어기 등)은 기판 프로세스 전에, 동안에, 또는 후에 수집된 센서 데이터를 수신할 수 있고, 데이터 저장소(140)에 센서 데이터를 저장할 수 있다. 일부 실시예들에서, 센서 데이터는 과거 센서 데이터(예를 들어, 이전 기판 프로세스에 따라 처리된 이전 기판에 대해 수집된 센서 데이터), 및/또는 현재 센서 데이터(예를 들어, 현재 기판 프로세스에 따라 처리 중이거나 처리될 현재 기판에 대해 수집된 센서 데이터)를 지칭할 수 있다.
일부 실시예들에서, 데이터 저장소(140)는 추가 타입들의 데이터를 저장할 수 있다. 예를 들어, 데이터 저장소는 제조 장비(124)를 사용하여 처리된 기판들에 연관된 계측 데이터를 저장할 수 있다. 계측 데이터는 과거 계측 데이터(예를 들어, 제조 장비(124)를 사용하여 처리된 이전 기판에 대해 생성된 계측 측정 값들) 및/또는 현재 계측 데이터(예를 들어, 제조 장비(124)를 사용하여 처리되는 현재 기판에 대해 생성된 계측 측정 값들)를 포함할 수 있다. 데이터 저장소(140)는 또한 제조 시스템에서의 하나 이상의 기판(예를 들어, 이전 기판들, 현재 기판들 등)에 연관된 컨텍스트 데이터를 저장할 수 있다. 컨텍스트 데이터는 프로세스 레시피에 대한 식별자, 기판(및/또는 기판들의 로트)에 대한 식별자, 예방적 유지관리 표시자, 운영자에 대한 식별자 등을 포함할 수 있다.
일부 실시예들에서, 데이터 저장소(140)는 제조 시스템의 사용자(예를 들어, 운영자, 엔지니어 등)가 액세스할 수 없는 데이터를 저장하도록 구성될 수 있다. 예를 들어, 기판에 대해 획득된 프로세스 데이터, 센서 데이터, 계측 데이터, 및/또는 컨텍스트 데이터는 제조 시스템의 사용자가 액세스할 수 없을 수 있다. 일부 실시예들에서, 데이터 저장소(140)에 저장된 모든 데이터는 제조 시스템의 사용자(운영자)에 의해 액세스불가능하다. 다른 또는 유사한 실시예들에서, 데이터 저장소(140)에 저장된 데이터의 일부는 사용자에 의해 액세스불가능한 반면, 데이터 저장소(140)에 저장된 데이터의 다른 일부는 사용자에 의해 액세스가능하다. 일부 실시예들에서, 데이터 저장소(140)에 저장된 데이터의 하나 이상의 부분은 사용자에게 알려지지 않은 암호화 메커니즘을 사용하여 암호화될 수 있다(예를 들어, 데이터는 개인 암호화 키를 사용하여 암호화됨). 다른 또는 유사한 실시예들에서, 데이터 저장소(140)는 다수의 데이터 저장소를 포함할 수 있고, 여기서 사용자가 액세스할 수 없는 데이터가 하나 이상의 제1 데이터 저장소에 저장되고, 사용자가 액세스할 수 있는 데이터가 하나 이상의 제2 데이터 저장소에 저장된다.
예측 서버(112)는 장비 파라미터(equipment parameter)(EP) 관리 엔진(152) 및/또는 예측 컴포넌트(114)를 포함할 수 있다. 일부 실시예들에서, 예측 컴포넌트(114) 및/또는 EP 관리 엔진(152)은 예측 서버(112)의 일부이거나 네트워크(130)를 통해 예측 서버(112)에 연결된다(예를 들어, 예측 컴포넌트(114) 및/또는 EP 관리 엔진(152)은 네트워크(130)에 연결된 컴퓨팅 시스템의 일부임). EP 관리 엔진(152)은 제조 시스템에서 기판 처리를 최적화하기 위해 제조 장비(124)의 장비 파라미터들을 조정 및/또는 수정하도록 구성될 수 있다. 일부 실시예들에서, EP 관리 엔진(152)은 (예를 들어, 예측 시스템(110)을 통해) 장비 파라미터들에 대응하는 예측된 값들을 결정할 수 있다. 일부 실시예들에서, EP 관리 엔진(152)은 제조 장비(124)의 프로세스 툴들에 대응하는 장비 파라미터들의 목록을 출력할 수 있다. 장비 파라미터들의 목록은 장비 파라미터들 각각에 대응하는 예측된 디폴트 값들 및/또는 디폴트 값 범위들을 포함할 수 있다. 예측된 값들은 본 명세서에 설명되는 바와 같이 예측 시스템(110)을 통해 결정될 수 있다.
일부 실시예들에서, EP 관리 엔진(152)은 장비 파라미터들에 기초하여 및/또는 과거 장비 파라미터 데이터에 기초하여 (예를 들어, 제조 장비(124)의) 장비 세팅들을 업데이트할 수 있다. 일부 실시예들에서, EP 관리 엔진(152)은 훈련된 머신 러닝 모델로부터 출력된 메트릭(예를 들어, 예측된 값, 예측된 특성화 값, 예측된 분류 값, 예측된 중요도 값 등)에 기초하여 장비 세팅들 및/또는 장비 파라미터들을 업데이트할 수 있다. 일부 예들에서, EP 관리 엔진(152)은 프로세스 툴(예를 들어, 프로세스 챔버, 이송 챔버 등)의 세팅이 드리프트되었음을 나타내는 메트릭(예를 들어, 훈련된 머신 러닝 모델로부터의 출력, 예측 시스템(110)으로부터의 출력 등)을 수신하는 것에 기초하여 장비 파라미터를 업데이트한다. 일부 실시예들에서, EP 관리 엔진(152)은 다양한 툴 상태들에 기초하여 장비 파라미터들(예를 들어, 제조 장비(124)에 대응함)을 업데이트할 수 있다. 예를 들어, EP 관리 엔진(152)은 툴 장애 상태, 툴 유지관리 상태(예를 들어, 예방적 유지관리 상태), 및/또는 정상 동작 상태 등에 기초하여 장비 파라미터들을 업데이트할 수 있다. 일부 실시예들에서, 하나 이상의 장비 파라미터는 다양한 툴 상태들을 반영한다. 일부 실시예들에서, EP 관리 엔진(152)은 프로세스 툴 세팅이 드리프트되었고 장비 파라미터가 업데이트되어야 함을 나타내는, (예를 들어, 클라이언트 디바이스(120)의) GUI 상에 디스플레이할 통지를 제공할 수 있다. 일부 실시예들에서, (예를 들어, EP 관리 엔진(152)에 의해 생성된 및/또는 컴파일된) 장비 파라미터들의 목록은 예측된 디폴트 값들과 함께, 다른 제조 시스템에서의 사용을 위해 출력될 수 있다. 일부 실시예들에서, EP 관리 엔진(152)은 장비 파라미터들을 모니터링하여, (예를 들어, 제조 장비(124)의) 유사한 프로세스 툴들이 유사한 방식(예를 들어, 실질적으로 유사한 방식)으로 기판들을 처리하여 타깃 프로세스 결과를 달성함을 결정할 수 있다.
도 2와 관련하여 아래에 설명되는 바와 같이, 일부 실시예들에서, EP 관리 엔진(152)은 장비 파라미터들을 특성화할 수 있다. 일부 실시예들에서, EP 관리 엔진(152)은 장비 파라미터들의 특성들을 결정할 수 있다. 일부 실시예들에서, EP 관리 엔진(152)은 본 명세서에서 아래에 더 상세하게 설명되는 바와 같이, (예를 들어, 본 명세서에서 위에 설명된 장비 파라미터의) 특성에 기초하여 장비 파라미터들을 분류할 수 있다. 일부 실시예들에서, EP 관리 엔진(152)은 본 명세서에 설명된 바와 같이 장비 파라미터의 디폴트 값 및/또는 디폴트 값 범위를 할당 및/또는 예측할 수 있다. 일부 실시예들에서, 본 명세서에 설명되는 바와 같이, EP 관리 엔진(152)은 장비 파라미터 값이 드리프트했는지 및/또는 업데이트되어야 하는지를 검출할 수 있다. 많은 실시예들에서, EP 관리 엔진(152)의 상기 기능들은 본 명세서에서 아래에 설명되는 바와 같이 머신 러닝 기술들을 사용하여 달성될 수 있다.
일부 실시예들에서, 예측 시스템(110)은 서버 머신(170) 및 서버 머신(180)을 포함한다. 서버 머신(170)은 머신 러닝 모델(190)을 훈련, 검증 및/또는 테스트하기 위해 훈련 데이터 세트들(예를 들어, 데이터 입력들의 세트 및 타깃 출력들의 세트)을 생성할 수 있는 훈련 세트 생성기(172)를 포함한다. 본 명세서에 설명되는 바와 같이, 머신 러닝 모델(190)은 하나 이상의 프로세스 툴에 연관된 주어진 장비 파라미터 데이터 및/또는 센서 데이터에 기초하여, 장비 파라미터들에 대응하는 하나 이상의 메트릭을 예측하도록 훈련될 수 있다. 일부 예들에서, 머신 러닝 모델(190)은 업데이트된 장비 파라미터 및/또는 업데이트된 장비 세팅을 예측할 수 있다. 일부 예들에서, 머신 러닝 모델(190)(및/또는 다른 머신 러닝 모델)은 주어진 장비 파라미터들의 특성화들 및/또는 분류들을 예측할 수 있다. 일부 예들에서, 머신 러닝 모델(190)(및/또는 다른 머신 러닝 모델)은 장비 파라미터들에 대응하는 중요도 값들을 예측할 수 있다. 예측된 중요도 값들은 장비 파라미터의 중요성을 나타낼 수 있다. 예를 들어, 예측된 중요도 값은 연관된 장비 파라미터가 얼마나 많은 변경에 영향을 미치는지를 나타낼 수 있다. 훈련 세트 생성기(172)의 일부 동작들은 도 4와 관련하여 아래에서 상세하게 설명된다. 일부 실시예들에서, 훈련 세트 생성기(172)는 훈련 데이터를 훈련 세트, 검증 세트 및 테스트 세트로 분할할 수 있다. 일부 실시예들에서, 예측 시스템(110)은 다수의 훈련 데이터 세트를 생성한다.
서버 머신(180)은 훈련 엔진(182), 검증 엔진(184), 선택 엔진(186), 및/또는 테스트 엔진(188)을 포함한다. 엔진은 하드웨어(예를 들어, 회로부, 전용 로직, 프로그래밍가능한 로직, 마이크로코드, 처리 디바이스 등), 소프트웨어(예를 들어, 처리 디바이스, 범용 컴퓨터 시스템, 또는 전용 머신에서 실행되는 명령어들), 펌웨어, 마이크로코드, 또는 이들의 조합을 지칭할 수 있다. 훈련 엔진(182)은 머신 러닝 모델(190)을 훈련할 수 있다. 머신 러닝 모델(190)은 훈련 입력들 및 대응하는 타깃 출력들(각자의 훈련 입력들에 대한 정답들)을 포함하는 훈련 데이터를 사용하여 훈련 엔진(182)에 의해 생성되는 모델 아티팩트를 지칭할 수 있다. 훈련 엔진(182)은 훈련 입력을 타깃 출력(예측될 답변)에 맵핑하는 훈련 데이터 내의 패턴들을 찾을 수 있고, 이러한 패턴들을 캡처하는 머신 러닝 모델(190)을 제공할 수 있다. 일부 실시예들에서, 머신 러닝 모델(190)은 서포트 벡터 머신(support vector machine)(SVM), 라디얼 베이시스 펑션(Radial Basis Function)(RBF), 클러스터링, 지도식 머신 러닝(supervised machine-learning), 반-지도식 머신 러닝(semi-supervised machine-learning), 비-지도식 머신 러닝(unsupervised machine-learning), k-최근접 이웃 알고리즘(k-nearest neighbor algorithm)(k-NN), 선형 회귀, 랜덤 포레스트(random forest), 신경망(예를 들어, 인공 신경망), 클러스터링 기술들(예를 들어, 계층적 클러스터링 기술들), 연관 기술들(예를 들어, 선험적 기술들(apriori techniques)), 분류 기술들(예를 들어, 의사결정 트리들, 랜덤 포레스트 기술들 등), 변분 순환 자동 인코더(variational recurrent auto-encoder) 등 중 하나 이상을 사용한다.
검증 엔진(184)은 훈련 세트 생성기(172)로부터의 검증 세트의 대응하는 피쳐 세트를 사용하여, 훈련된 머신 러닝 모델(190)을 검증할 수 있을 수 있다. 검증 엔진(184)은 검증 세트의 대응하는 피쳐 세트에 기초하여, 훈련된 머신 러닝 모델들(190) 각각의 정확도를 결정할 수 있다. 검증 엔진(184)은 임계 정확도를 충족하지 못하는 정확도를 갖는 훈련된 머신 러닝 모델(190)을 폐기할 수 있다. 일부 실시예들에서, 선택 엔진(185)은 임계 정확도를 충족하는 정확도를 갖는 훈련된 머신 러닝 모델(190)을 선택할 수 있을 수 있다. 일부 실시예들에서, 선택 엔진(185)은 훈련된 머신 러닝 모델들(190) 중 가장 높은 정확도를 갖는 훈련된 머신 러닝 모델(190)을 선택할 수 있을 수 있다.
테스트 엔진(188)은 훈련 세트 생성기(172)로부터의 테스트 세트의 대응하는 피쳐 세트를 사용하여, 훈련된 머신 러닝 모델(190)을 테스트할 수 있을 수 있다. 예를 들어, 훈련 세트의 제1 피쳐 세트를 사용하여 훈련된 제1 훈련된 머신 러닝 모델(190)은 테스트 세트의 제1 피쳐 세트를 사용하여 테스트될 수 있다. 테스트 엔진(188)은 테스트 세트들에 기초하여, 훈련된 머신 러닝 모델들 전부 중에서 가장 높은 정확도를 갖는 훈련된 머신 러닝 모델(190)을 결정할 수 있다.
예측 서버(112)는 제조 장비(124)에 연관된 장비 파라미터 데이터 및/또는 센서 데이터를 훈련된 머신 러닝 모델(190)에 대한 입력으로서 제공하고, 입력에 대해 훈련된 머신 러닝 모델(190)을 실행하여 하나 이상의 출력을 획득할 수 있는 예측 컴포넌트(114)를 포함한다. 본 명세서에 설명되는 바와 같이, 일부 실시예들에서, 머신 러닝 모델(190)로부터의 출력들은 예측된 장비 파라미터 업데이트들, 예측된 장비 파라미터 분류들/특성화들, 예측된 장비 파라미터 디폴트 값들/범위들, 및/또는 제조 장비(124)의 장비 파라미터들에 연관된 다른 예측 메트릭들을 포함할 수 있다.
클라이언트 디바이스(120), 제조 장비(124), 계측 장비(128), 예측 서버(112), 데이터 저장소(140), 서버 머신(170), 및 서버 머신(180)은 네트워크(130)를 통해 서로 결합될 수 있다. 일부 실시예들에서, 네트워크(130)는 클라이언트 디바이스(120)에 예측 서버(112), 데이터 저장소(140), 및/또는 다른 공개적으로 이용가능한 컴퓨팅 디바이스들에 대한 액세스를 제공하는 공개 네트워크이다. 일부 실시예들에서, 네트워크(130)는 클라이언트 디바이스(120)에 제조 장비(124), 계측 장비(128), 데이터 저장소(140), 및 다른 개인적으로 이용가능한 컴퓨팅 디바이스들에 대한 액세스를 제공하는 개인 네트워크이다. 네트워크(130)는 하나 이상의 광역 네트워크(wide area network)(WAN), 근거리 네트워크(local area network) (LAN), 유선 네트워크(예를 들어, 이더넷 네트워크), 무선 네트워크(예를 들어, 802.11 네트워크 또는 Wi-Fi 네트워크), 셀룰러 네트워크(예를 들어, LTE(Long Term Evolution) 네트워크), 라우터, 허브, 스위치, 서버 컴퓨터, 클라우드 컴퓨팅 네트워크, 및/또는 이들의 조합을 포함할 수 있다.
일부 다른 구현들에서, 서버 머신들(170 및 180)은 물론, 예측 서버(112)의 기능들은 더 적은 수의 머신에 의해 제공될 수 있다는 점에 유의해야 한다. 예를 들어, 일부 실시예들에서, 서버 머신들(170 및 180)이 단일 머신으로 통합될 수 있는 반면, 일부 다른 또는 유사한 실시예들에서는 서버 머신들(170 및 180)은 물론, 예측 서버(112)도 단일 머신으로 통합될 수 있다. 다른 또는 유사한 실시예들에서, 서버 머신들(170 및 180), 및/또는 예측 서버(112)는 단일 머신 또는 하나 이상의 머신으로 통합될 수 있다.
일반적으로, 일 구현에서 서버 머신(170), 서버 머신(180) 및/또는 예측 서버(112)에 의해 수행되는 것으로 설명된 기능들은 클라이언트 디바이스(120)에서도 수행될 수 있다. 추가로, 특정 컴포넌트에 부여된 기능성은 함께 동작하는 상이한 또는 다수의 컴포넌트에 의해 수행될 수 있다.
실시예들에서, "사용자"는 단일 개인으로서 표현될 수 있다. 그러나, 본 개시내용의 다른 실시예들은 복수의 사용자 및/또는 자동화된 소스에 의해 제어되는 엔티티인 "사용자"를 포괄한다. 예를 들어, 관리자들의 그룹으로서 연합된 개별 사용자들의 세트는 "사용자"로 간주될 수 있다.
도 2는 본 개시내용의 양태들에 따른 예시적인 EP 관리 엔진(152)의 블록도이다. 도 2에 도시된 바와 같이, EP 관리 엔진(152)은 특성화 컴포넌트(210), 분류 컴포넌트(212), 디폴트 값 컴포넌트(214), 및/또는 검출 컴포넌트(216)를 포함할 수 있다. 일부 실시예들에서, EP 관리 엔진(152)은 (예를 들어, 도 1과 관련하여 설명된 네트워크(130)를 통해, 버스를 통해 등으로) 메모리(250)에 연결될 수 있다. 일부 실시예들에서, 메모리(250)는 데이터 저장소(140)의 하나 이상의 부분에 대응할 수 있다.
특성화 컴포넌트(210)는 장비 파라미터들의 특성화를 결정하도록 구성될 수 있다. 예를 들어, 특성화 컴포넌트(210)는 주어진 장비 파라미터가 플릿(fleet)(예를 들어, 유사한 프로세스 툴들의 플릿) 내의 일정한 값, 툴 내의 일정한 값, 준-일정 값(quasi-constant value)(예를 들어, 실질적으로 일정, 단지 임계 변동성 미만 등), 무작위로 분포된 값, 증가하는 값(예를 들어, 카운터에서와 같음) 및/또는 텍스트 값을 가져야 한다고 결정할 수 있다. 본 명세서에서 위에서 설명된 바와 같이, 장비 파라미터 데이터는 제조 장비(124)로부터 수집될 수 있다(예를 들어, EP 값 데이터(256), EP 임계값 데이터(258), EP 세트포인트 데이터(260), 현재 EP 데이터(262) 등). 장비 파라미터 데이터는 본 명세서에서 위에서 설명된 바와 같이 장비 파라미터들의 하나 이상의 특성(예를 들어, 장비 파라미터가 일정 또는 반-일정(semi-constant) 값을 가져야 하는지, 장비 파라미터가 프로세스 툴들 간에 일치해야 하는지 등)을 결정하기 위해 특성화 컴포넌트(210)에 의해 사용될 수 있다.
분류 컴포넌트(212)는 장비 파라미터의 하나 이상의 특성에 기초하여 장비 파라미터를 분류하도록 구성될 수 있다. 분류 컴포넌트(212)는 분류 동작들 동안 EP 분류 데이터(252)를 생성 및/또는 액세스할 수 있다. 일부 예들에서, 분류 컴포넌트(212)는 장비 파라미터의 특성(들)에 기초하여 장비 파라미터에 분류 값(예를 들어, 메트릭)을 할당할 수 있다. 분류 값은 장비 파라미터가 개별 분류 그룹에 속함을 나타낼 수 있다. 분류 값은 숫자 값일 수 있다. 예를 들어, 분류 컴포넌트(212)는 장비 파라미터에 분류 값 1을 할당하여, 장비 파라미터가 제조 시스템 내의 모든 유사 툴들과 일치해야 함을 나타낼 수 있다. 일부 실시예들에서, 바로 앞의 예에서 설명된 바와 같이 일정하게 유지되어야 하는 장비 파라미터는 숫자 값 또는 텍스트 값일 수 있다. 다른 예에서, 분류 컴포넌트(212)는 장비 파라미터에 분류 값 2를 할당하여, 장비 파라미터가 지정된 프로세스 툴(예를 들어, 프로세스 챔버) 내에서 일정해야 하지만 프로세스 툴들에 걸친 변동성은 허용될 수 있음을 나타낼 수 있다. 세번째 예에서, 분류 컴포넌트(212)는 장비 파라미터에 분류 값 3을 할당하여, 장비 파라미터가 프로세스 툴 내에서 범위 내에 있어야 함을 나타낼 수 있다. 다른 예에서, 분류 컴포넌트(212)는 장비 파라미터에 분류 값 4를 할당하여, 장비 파라미터가 유사한 프로세스 툴들의 플릿에 걸쳐 범위 내에 있어야 함을 나타낼 수 있다. 다른 예에서, 분류 컴포넌트(212)는 장비 파라미터에 분류 값 5를 할당하여, 예방적 유지관리 동작 동안 장비 파라미터의 값이 변경될 수 있음을 제외하고는, 장비 파라미터가 일정하게 유지되어야 함을 나타낼 수 있다. 다른 예에서, 분류 컴포넌트(212)는 장비 파라미터에 분류 값 6을 할당하여, 장비 파라미터가 계속하여 값들을 변경할 수 있음을 나타낼 수 있다. 다른 예에서, 분류 컴포넌트(212)는 장비 파라미터에 분류 값 6을 할당하여, 장비 파라미터가 규칙적인 간격들로 증가한다는 것(예를 들어, 장비 파라미터가 카운터라는 것 등)을 나타낼 수 있다. 일부 실시예들에서, 분류 컴포넌트(212)는 장비 파라미터에 여기에 설명되지 않은 다른 분류 값들을 할당할 수 있다. 일부 실시예들에서, 분류 컴포넌트(212)는 EP 특성화 데이터(254) 및/또는 EP 값 데이터(256)(예를 들어, 현재 EP 값 데이터 및/또는 과거 EP 값 데이터)에 기초하여 장비 파라미터를 분류한다.
디폴트 값 컴포넌트(214)는 장비 파라미터에 디폴트 값 및/또는 디폴트 값 범위를 할당하도록 구성될 수 있다. 디폴트 값 컴포넌트(214)는 동작들 동안 EP 값 데이터(256), EP 임계값 데이터(258), 및/또는 EP 세트포인트 데이터(260)를 생성 및/또는 액세스할 수 있다. 일부 예들에서, 머신 러닝 기술들을 통해, 디폴트 값 컴포넌트(214)는 각각의 장비 파라미터에 대응하는 디폴트 값들 및/또는 디폴트 범위들을 결정할 수 있다. 구체적으로, 디폴트 값 컴포넌트(214)는 주어진 장비 파라미터의 디폴트 값이 특정 결정된 값이 되어야 한다고 결정할 수 있다. 마찬가지로, 디폴트 값 컴포넌트(214)는 다른 주어진 장비 파라미터의 값이 특정 결정된 값 범위 내에(예를 들어, 결정된 하위 값과 결정된 상위 값 사이에) 있어야 한다고 결정할 수 있다. 일부 실시예들에서, 디폴트 값 컴포넌트(214)는 장비 파라미터가 특정 결정된 기본 임계값 내의 값을 가져야 함을 나타내는 EP 임계값 데이터(258)를 생성한다. 마찬가지로, 일부 실시예들에서, 디폴트 값 컴포넌트(214)는 장비 파라미터가 특정 결정된 디폴트 세트포인트에서 값을 가져야 함을 나타내는 EP 세트포인트 데이터(260)를 생성한다. 일부 예들에서, 디폴트 값 컴포넌트(214)는 주어진 장비 파라미터가 디폴트로서 특정 텍스트 값을 가져야 한다고 결정할 수 있다. 예를 들어, 디폴트 값 컴포넌트(214)는 주어진 장비 파라미터의 텍스트 값이 프로세스 툴이 특정 디폴트 모드에서 동작해야 함을 나타내야 한다고 결정할 수 있다. 일부 실시예들에서, 디폴트 값 컴포넌트(214)는 위에서 설명된 바와 같이 사용된 및/또는 생성된 데이터에 더하여, EP 분류 데이터(252) 및/또는 EP 특성화 데이터(254)를 사용하여 디폴트 장비 파라미터 값들 및/또는 범위들을 결정할 수 있다.
검출 컴포넌트(216)는 장비 파라미터 값이 드리프트했는지 및/또는 업데이트되어야 하는지를 검출하도록 구성될 수 있다. 일부 실시예들에서, 검출 컴포넌트(216)는 동작들 동안 EP 임계값 데이터(258), EP 세트포인트 데이터(260), EP 값 데이터(256) 및/또는 수정 액션 데이터(262)를 사용할 수 있다. 일부 실시예들에서, 검출 컴포넌트(216)는 장비 파라미터의 값이 예상 범위 밖으로 드리프트했음을 검출할 수 있다. 일부 예들에서, 검출 컴포넌트(216)는 장비 파라미터의 값이 임계값을 벗어났음(예를 들어, EP 임계값 데이터(258)에 의해 표시됨) 및/또는 세트포인트로부터 변경되었음(예를 들어, EP 세트포인트 데이터(260)에 의해 표시됨)을 나타내는 현재 EP 값 데이터(256)를 모니터링한다. 검출 컴포넌트(216)는 장비 파라미터 값을 디폴트 값 및/또는 디폴트 범위(예를 들어, 본 명세서에 설명된 바와 같이 머신 러닝에 의해 결정됨)와 비교할 수 있다. 검출 컴포넌트(216)는 머신 러닝 기술들을 사용하여 이러한 검출들을 수행할 수 있다. 예를 들어, 검출 컴포넌트(216)는 장비 파라미터 데이터의 이상들을 검출하는 데에 있어서 하나 이상의 훈련된 머신 러닝 모델(예를 들어, 도 1의 모델(190))을 이용할 수 있다. 일부 예들에서, 검출 컴포넌트(216)는 장비 파라미터 값이 예상 범위를 벗어나고/거나 예상 값과 상이하다는 것을 결정하기 위해 과거 EP 값 데이터(256)를 이용할 수 있다. 일부 실시예들에서, 검출 컴포넌트(216)는 수정 액션(예를 들어, 수정 액션 데이터(262)에 의해 표시됨)을 결정할 수 있다. 일부 예들에서, 검출 컴포넌트(216)는 장비 파라미터에 연관된 장비 세팅이 머신 러닝 모델의 출력에 기초하여 업데이트되어야 한다고 결정할 수 있다. 일부 실시예들에서, 검출 컴포넌트(216)는 장비 파라미터에 대응하는 메트릭의 예측된 값(예를 들어, 장비 파라미터의 예측된 값)과 현재 EP 값 데이터(256)의 비교에 기초하여 수정 액션을 결정할 수 있다. 일부 실시예들에서, 수정 액션에 대한 통지가 그래픽 사용자 인터페이스(GUI) 상에 디스플레이되도록 제공된다. 통지는 현재 EP 값 데이터와 메트릭의 예측된 값의 불일치를 나타낼 수 있다.
도 3은 본 개시내용의 양태들에 따른, 제조 시스템에서의 장비 파라미터 관리를 위한 방법(300)의 플로우차트이다. 방법(300)은 하드웨어(회로부, 전용 로직 등), (범용 컴퓨터 시스템 또는 전용 머신에서 실행되는 것과 같은) 소프트웨어, 펌웨어, 또는 이들의 소정의 조합을 포함할 수 있는 처리 로직에 의해 수행된다. 일 구현에서, 방법(300)은 도 1의 시스템 아키텍처(100)와 같은 시스템 아키텍처의 하나 이상의 컴포넌트에 의해 수행될 수 있다. 다른 또는 유사한 구현들에서, 방법(300)의 하나 이상의 동작은 도면들에 묘사되지 않은 하나 이상의 다른 머신에 의해 수행될 수 있다. 일부 양태들에서, 방법(300)의 하나 이상의 동작은 EP 관리 엔진(152)에 의해 수행될 수 있다. 또 다른 또는 유사한 양태들에서, 방법(300)의 하나 이상의 동작은 예측 컴포넌트(114)에 의해 수행될 수 있다.
설명을 간단하게 하기 위해, 방법들은 일련의 행위들로서 묘사되고 설명된다. 그러나, 본 개시내용에 따른 행위들은 다양한 순서들로 및/또는 동시에, 그리고 여기에 제시되고 설명되지 않은 다른 행위들과 함께 발생할 수 있다. 또한, 개시된 주제에 따른 방법들을 구현하기 위해, 예시된 모든 행위가 수행되지는 않을 수 있다. 추가로, 본 기술분야의 통상의 기술자들은 방법들이 대안적으로 상태 다이어그램 또는 이벤트들을 통해 일련의 상호관련된 상태들로서 표현될 수 있음을 이해하고 인식할 것이다. 추가로, 본 명세서에 개시된 방법들은 이러한 방법들을 컴퓨팅 디바이스들에 이송 및 이전하는 것을 용이하게 하기 위해 제조 물품에 저장될 수 있음을 인식해야 한다. 본 명세서에서 사용되는 제조 물품이라는 용어는 임의의 컴퓨터 판독가능 디바이스 또는 저장 매체로부터 액세스가능한 컴퓨터 프로그램을 포괄하도록 의도된다.
블록(308)에서, 처리 로직은 장비 파라미터에 연관된 데이터를 수신한다. 예를 들어, (예를 들어, EP 관리 엔진(152)의) 처리 로직은 장비 파라미터를 나타내는 데이터(예를 들어, 과거 및/또는 현재 EP 값 데이터(256))를 수신한다. 일부 실시예들에서, 처리 로직은 제조 시스템에 있는 복수의 프로세스 툴의 장비 파라미터에 관한 데이터를 수신한다. 예를 들어, 처리 로직은 제조 시스템에 있는 하나 이상의 프로세스 툴의 하나 이상의 장비 파라미터에 연관된 현재 및/또는 과거 값들, 메트릭들, 및/또는 다른 특성들을 수신할 수 있다. 수신된 데이터는 제조 시스템의 설정된 시간량 및/또는 설정된 사이클 횟수에 걸쳐 수집된 데이터일 수 있다. 일부 예들에서, 데이터는 1일, 2일, 1주일 등과 같은 설정된 시간량 동안 수집된다. 일부 예들에서, 데이터는 예방적 유지관리 사이클 동안 수집된다. 일부 실시예들에서, 데이터는 도 2의 EP 값 데이터(256)에 관한 것이다.
블록(310)에서, (예를 들어, EP 관리 엔진(152)의) 처리 로직은 블록(308)에서 수신된 데이터에 기초하여 장비 파라미터를 특성화한다. 장비 파라미터의 특성화는 도 2의 특성화 컴포넌트(210)에 의해 수행될 수 있다. 일부 실시예들에서, (예를 들어, 특성화 컴포넌트(210)의) 처리 로직은 위에서 설명된 바와 같이, 주어진 장비 파라미터가 플릿(예를 들어, 유사한 프로세스 툴들의 플릿) 내의 일정한 값, 툴 내의 일정한 값, 준-일정 값(예를 들어, 실질적으로 일정, 단지 임계 변동성 미만 등), 무작위로 분포된 값, 증가하는 값(예를 들어, 카운터에서와 같음), 및/또는 텍스트 값을 가져야 한다고 결정할 수 있다. 처리 로직은 블록(308)에서 수신된 데이터에 기초하여 장비 파라미터의 하나 이상의 특성을 결정할 수 있다. 일부 실시예들에서, 장비 파라미터의 특성(들)은 장비 파라미터에 대응하는 메트릭에 반영된다. 예를 들어, 메트릭은 장비 파라미터가 본 명세서에 설명된 바와 같은 특성을 가지고 있음을 나타낼 수 있다.
블록(312)에서, (예를 들어, EP 관리 엔진(152)의) 처리 로직은 블록(310)에서 결정된 특성들에 기초하여 장비 파라미터를 분류한다. 장비 파라미터의 분류는 도 2의 분류 컴포넌트(212)에 의해 수행될 수 있다. 일부 실시예들에서, (예를 들어, 분류 컴포넌트(212)의) 처리 로직은 위에서 설명된 바와 같이 장비 파라미터의 특성(들)에 기초하여 장비 파라미터에 분류 값을 할당할 수 있다. 분류 값은 본 명세서에서 위에서 설명된 바와 같이, 장비 파라미터가 개별 분류 그룹에 속함을 나타낼 수 있다. 일부 실시예들에서, 장비 파라미터의 분류는 장비 파라미터에 대응하는 메트릭에 반영된다. 예를 들어, 메트릭은 장비 파라미터가 위에서 설명된 바와 같은 개별 분류 그룹에 속함을 나타낼 수 있다. 메트릭은 장비 파라미터에 특정 분류 값이 할당됨을 나타낼 수 있다. 유사한 장비 파라미터들에 유사한 분류 값들이 할당될 수 있다.
블록(314)에서, (예를 들어, EP 관리 엔진(152)의) 처리 로직은 디폴트 장비 파라미터 값을 생성한다. 일부 실시예들에서, 디폴트 값은 블록(308)에서 수신된 데이터(예를 들어, 과거 EP 값 데이터(256))에 기초하여 및/또는 블록(312)에서의 분류에 기초하여 결정된다. 일부 실시예들에서, 처리 로직은 장비 파라미터에 대응하는 디폴트 값 범위를 생성한다. 예를 들어, (예를 들어, 블록(310)에서) 장비 파라미터가 값 범위를 가질 수 있음을 나타내는 특성을 갖는 장비 파라미터에 응답하여, 처리 로직은 값 범위의 상한 및/또는 하한을 결정할 수 있다. 상한 및/또는 하한은 처리 로직에 의해 결정된 디폴트 경계들일 수 있다. 다른 예에서, (예를 들어, 블록(310)에서) 장비 파라미터가 이산 값을 가져야 함을 나타내는 특성을 갖는 장비 파라미터에 응답하여, 처리 로직은 장비 파라미터에 대응하는 세트포인트를 결정할 수 있다. 세트포인트는 장비 파라미터에 할당된 디폴트 값일 수 있다. 일부 실시예들에서, 디폴트 값 및/또는 디폴트 값 범위는 장비 파라미터에 대응하는 메트릭에 반영된다. 예를 들어, 메트릭은 본 명세서에 설명된 바와 같은 장비 파라미터의 디폴트 값 및/또는 디폴트 값 범위를 나타낼 수 있다. 일부 실시예들에서, (예를 들어, 블록들(310, 312 및 314)에서 개별 장비 파라미터들에 대해 행해진 바와 같이) 제조 시스템에 있는 다수의 프로세스 툴의 각각의 장비 파라미터를 분석함으로써 장비 파라미터들의 목록이 생성될 수 있다. 목록은 제조 시스템에 연관된 장비 파라미터들에 대한 벤치마크로서 사용될 수 있다. 일부 실시예들에서, 목록은 다른 제조 시스템에서의 구현을 위해 출력될 수 있다. 예를 들어, 제1 제조 시스템에서 결정된 장비 파라미터들(예를 들어, 예측된 장비 파라미터 특성화 값들, 예측된 장비 파라미터 분류 값들, 예측된 장비 파라미터 숫자 값들 등을 반영함)의 벤치마크 목록은 제2 제조 시스템에서 장비 파라미터들을 조절하기 전에 제2 제조 시스템에서 시작점으로서 사용될 수 있다. 또한, 처리 로직은 장비 파라미터의 특성화, 분류 및/또는 과거 값들에 기초하여 장비 파라미터의 중요도(예를 들어, 중요도 값)를 결정할 수 있다.
블록(316)에서, (예를 들어, EP 관리 엔진(152)의) 처리 로직은 장비 파라미터에 대응하는 임계 조건을 생성한다. 일부 예들에서, 임계 조건은 블록(308)에서 수신된 데이터, 블록(310)에서 결정된 특성화, 블록(312)에서 결정된 분류, 및/또는 블록(314)에서 결정된 디폴트 값 또는 디폴트 값 범위에 기초한다. 임계 조건은 본 명세서에 설명된 바와 같이 수정 액션을 트리거하는 트리거 조건일 수 있다. 예를 들어, 임계 조건은 장비 파라미터의 값이 블록(314)에서 결정된 디폴트 값 및/또는 디폴트 값 범위로부터 임계 양만큼 변경 및/또는 드리프트할 때 수정 액션이 수행되어야 함을 나타낼 수 있다. 임계 조건은 수정 액션이 취해지기 전에 장비 파라미터의 값에서의 허용오차를 허용할 수 있다. 다른 예로서, 임계 조건은 예방적 액션이 수행되기 전에 장비 파라미터의 값이 디폴트 범위(예를 들어, 블록(314)에서 결정됨)에서 임계 양(예를 들어, 범위의 특정 백분율)만큼 벗어나는 것을 허용할 수 있다. 장비 파라미터의 값이 임계 조건을 초과하지 않고서 디폴트 범위로 돌아가는 경우, 예방적 액션이 취해지지 않을 수 있다. 일부 실시예들에서, 임계 조건은 시간 지속기간에 연관될 수 있다. 예를 들어, 임계 조건은 장비 파라미터의 값이 디폴트 범위를 벗어나거나 특정 시간량 동안 세트포인트(예를 들어, 디폴트 값)와 상이하도록 허용됨을 나타낼 수 있다.
블록(318)에서, (예를 들어, EP 관리 엔진(152)의) 처리 로직은 장비 파라미터 값을 모니터링한다. 일부 실시예들에서, 처리 로직은 (예를 들어, 제조 설비에 있는 하나 이상의 프로세스 툴에 의해) 기판들이 처리됨에 따라 장비 파라미터 값을 나타내는 데이터를 수신한다. 처리 로직은 장비 파라미터의 값에서의 변경들에 대해 장비 파라미터를 모니터링할 수 있다.
블록(320)에서, (예를 들어, EP 관리 엔진(152)의) 처리 로직은 장비 파라미터의 값이 블록(316)에서 결정된 임계 조건을 충족하는지를 결정한다. 장비 파라미터 값이 임계 조건을 충족하는 경우, 방법은 완료될 수 있다. 그러나, 장비 파라미터 값이 임계 조건을 충족하지 않는 경우, 방법은 블록(322)으로 진행될 수 있다. 일부 실시예들에서, 처리 로직은 메트릭의 예측된 값(예를 들어, 블록(310, 312, 및/또는 314)에서 결정됨)을 (예를 들어, 블록(308)에서 및/또는 기판 처리 동안) 수신된 데이터와 비교한다. 처리 로직은 메트릭의 예측된 값과 데이터 간의 불일치를 결정할 수 있다. 일부 실시예들에서, 블록(318) 및/또는 블록(320)의 동작들은 도 2의 검출 컴포넌트(216)에 의해 수행된다.
블록(322)에서, (예를 들어, EP 관리 엔진(152)의) 처리 로직은 수정 액션이 수행되게 할 수 있다. 일부 실시예들에서, 수정 액션은 장비 파라미터에 연관된 장비 세팅을 업데이트하는 것을 포함할 수 있다. 세팅의 업데이트는 장비 파라미터의 값이 디폴트 값 및/또는 디폴트 값 범위로 돌아가게 할 수 있다. 일부 실시예들에서, 수정 액션은 GUI 상에서의 디스플레이를 위해 통지를 제공하는 것을 포함한다. 통지는 데이터와 (예를 들어, 블록(310), 블록(312), 및/또는 블록(314)에서 결정된) 메트릭의 예측된 값의 불일치를 나타낼 수 있다. 일부 실시예들에서, 통지는 장비 파라미터의 값이 업데이트되어야 함을 (예를 들어, 사용자 등에게) 나타낼 수 있다. 일부 실시예들에서, 통지는 프로세스 툴 컴포넌트의 고장 및/또는 프로세스 툴의 고장을 나타낼 수 있다. 일부 실시예들에서, 사용자는 장비 파라미터가 업데이트되지 않아야 한다는 입력을 (예를 들어, GUI를 통해) 제공함으로써 처리 로직을 오버라이드할 수 있다. 일부 실시예들에서, 사용자는 장비 파라미터가 사용자에 의해 결정된 양만큼 업데이트되어야 한다는 입력을 제공할 수 있다. 사용자 입력은 도 4를 참조하여 아래에서 논의된 바와 같이 머신 러닝 훈련 데이터에 포함될 수 있다. 블록(322)의 동작들에 이어서, 방법은 블록(318)으로 루프될 수 있다.
일부 실시예들에서, 블록(310), 블록(312), 블록(314), 블록(316) 및/또는 블록(320) 중 임의의 것은 본 명세서에 설명된 바와 같은 머신 러닝 기술들을 사용하여 수행될 수 있다.
도 4는 본 개시내용의 양태들에 따른, 머신 러닝 모델(예를 들어, 머신 러닝 모델(190) 등)을 훈련하기 위한 방법(400)의 플로우차트이다. 방법(400)은 하드웨어(회로부, 전용 로직 등), (범용 컴퓨터 시스템 또는 전용 머신에서 실행되는 것과 같은) 소프트웨어, 펌웨어, 또는 이들의 소정의 조합을 포함할 수 있는 처리 로직에 의해 수행된다. 일 구현에서, 방법(400)은 도 1의 시스템 아키텍처(100)와 같은 시스템 아키텍처의 하나 이상의 컴포넌트에 의해 수행될 수 있다. 다른 또는 유사한 구현들에서, 방법(400)의 하나 이상의 동작은 도면들에 묘사되지 않은 하나 이상의 다른 머신에 의해 수행될 수 있다. 일부 양태들에서, 방법(400)의 하나 이상의 동작은 예측 시스템(110)의 예측 서버(112)에 의해 수행될 수 있다. 또 다른 또는 유사한 양태들에서, 방법(400)의 하나 이상의 동작은 EP 관리 엔진(152)에 의해 수행될 수 있다.
설명을 간단하게 하기 위해, 방법들은 일련의 행위들로서 묘사되고 설명된다. 그러나, 본 개시내용에 따른 행위들은 다양한 순서들로 및/또는 동시에, 그리고 여기에 제시되고 설명되지 않은 다른 행위들과 함께 발생할 수 있다. 또한, 개시된 주제에 따른 방법들을 구현하기 위해, 예시된 모든 행위가 수행되지는 않을 수 있다. 추가로, 본 기술분야의 통상의 기술자들은 방법들이 대안적으로 상태 다이어그램 또는 이벤트들을 통해 일련의 상호관련된 상태들로서 표현될 수 있음을 이해하고 인식할 것이다. 추가로, 본 명세서에 개시된 방법들은 이러한 방법들을 컴퓨팅 디바이스들에 이송 및 이전하는 것을 용이하게 하기 위해 제조 물품에 저장될 수 있음을 인식해야 한다. 본 명세서에서 사용되는 제조 물품이라는 용어는 임의의 컴퓨터 판독가능 디바이스 또는 저장 매체로부터 액세스가능한 컴퓨터 프로그램을 포괄하도록 의도된다.
블록(410)에서, 처리 로직은 훈련 세트 T를 공집합(empty set)(예를 들어, {})으로 초기화한다. 블록(412)에서, 처리 로직은 제조 시스템에 있는 복수의 프로세스 툴의 과거 장비 파라미터들에 연관된 과거 데이터를 식별한다. 일부 실시예들에서, 과거 데이터는 과거 장비 파라미터 값들을 반영한다. 과거 데이터는 복수의 프로세스 툴에 의한 기판들의 처리 동안 수집된 데이터를 포함할 수 있다. 과거 데이터는 설정된 시간량(예를 들어, 본 명세서에 설명된 바와 같이 1일, 1주일, 1회의 예방적 유지관리 사이클 등과 같은 기간) 동안 수집되었을 수 있다. 일부 실시예들에서, 과거 데이터는 과거 장비 파라미터들에 연관된 컨텍스트 데이터를 추가로 포함할 수 있다. 예를 들어, 과거 데이터는 알려진 불량 프로세스 툴들 및/또는 알려진 불량 데이터 등의 표시를 포함할 수 있다. 일부 실시예들에서, 처리 로직은 위에서 설명된 바와 같이 데이터 저장소(140) 및/또는 메모리(250)로부터 과거 데이터를 식별할 수 있다.
블록(414)에서, 처리 로직은 제조 시스템에 있는 복수의 프로세스 툴의 과거 장비 파라미터들에 대응하는 과거 메트릭들의 세트를 식별한다. 일부 실시예들에서, 과거 메트릭들은 과거 장비 파라미터 특성화들, 분류들, 및/또는 디폴트 값들 또는 디폴트 값 범위들에 대응할 수 있다. 과거 메트릭들은 (예를 들어, 하나 이상의 프로세스 툴에 의한) 기판 처리 동안의 과거 데이터의 수집에 후속하여 생성될 수 있고 데이터 저장소(140) 및/또는 메모리(250)에 저장될 수 있다. 처리 로직은 앞에서 설명된 실시예들에 따라 데이터 저장소(140) 및/또는 메모리(250)로부터 과거 메트릭들의 세트를 식별할 수 있다.
블록(416)에서, 처리 로직은 과거 장비 파라미터들에 연관된 식별된 과거 데이터에 기초하여 훈련 입력 데이터를 생성한다. 일부 실시예들에서, 훈련 입력은 장비 파라미터 데이터의 정규화된 세트(예를 들어, 본 명세서에 설명된 바와 같은 장비 파라미터 값들을 포함함)를 포함할 수 있다.
블록(418)에서, 처리 로직은 과거 메트릭들의 식별된 세트에 기초하여 타깃 출력 데이터를 생성할 수 있다. 일부 실시예들에서, 생성된 타깃 출력 데이터는 장비 파라미터 메트릭들(예를 들어, 분류 메트릭들, 특성화 메트릭들, 값 메트릭들 등)에 대응할 수 있다.
블록(420)에서 처리 로직은 훈련 입력 데이터와 타깃 출력 데이터 간의 맵핑을 생성한다. 블록(422)에서, 처리 로직은 맵핑을 훈련 세트 T에 추가한다.
블록(424)에서, 처리 로직은 훈련 세트 T가 머신 러닝 모델을 훈련하기에 충분한 양의 훈련 데이터를 포함하는지를 결정한다. 일부 구현들에서는 훈련 세트 T의 충분성이 단순히 훈련 세트 내의 맵핑들의 수에 기초하여 결정될 수 있는 반면, 일부 다른 구현들에서는 훈련 세트 T의 충분성이 입력/출력 맵핑들의 수에 추가하여 또는 그를 대신하여 하나 이상의 다른 기준(예를 들어, 훈련 예들의 다양성의 척도 등)에 기초하여 결정될 수 있음에 유의해야 한다. 훈련 세트가 머신 러닝 모델을 훈련하기에 충분한 양의 훈련 데이터를 포함하지 않는다고 결정하는 것에 응답하여, 방법(400)은 블록(412)으로 돌아간다. 훈련 세트 T가 머신 러닝 모델을 훈련하기에 충분한 양의 훈련 데이터를 포함한다고 결정하는 것에 응답하여, 방법(500)은 블록(428)으로 계속된다.
블록(428)에서, 처리 로직은 머신 러닝 모델을 훈련하기 위해 훈련 세트 T를 제공한다. 일 구현에서, 훈련 세트 T는 훈련을 수행하기 위해 서버 머신(180)의 훈련 엔진(182)에 제공된다. 예를 들어, 신경망의 경우, 주어진 입력/출력 맵핑의 입력 값들이 신경망에 입력되고, 입력/출력 맵핑의 출력 값들이 신경망의 출력 노드들에 저장된다. 다음으로, 신경망 내의 연결 가중치들은 학습 알고리즘(예를 들어, 역전파 등)에 따라 조절되고, 훈련 세트 T 내의 다른 입력/출력 맵핑들에 대해 절차가 반복된다. 블록(428) 이후, 머신 러닝 모델(190)은 위에서 설명된 실시예들에 따라, 주어진 프로세스 데이터 및/또는 센서 데이터, 기판에 연관된 계측 측정 값들, 및 타깃 계측 측정 값들로부터의 계측 측정 값들의 드리프트 양을 예측하기 위해 사용될 수 있다.
도 5는 일 실시예에 따른 장비 파라미터 관리를 위한 모델 훈련 워크플로우(505) 및 모델 적용 워크플로우(517)를 도시한다. 모델 훈련 워크플로우(505) 및 모델 적용 워크플로우(517)는 컴퓨팅 디바이스의 프로세서에 의해 실행되는 처리 로직에 의해 수행될 수 있다. 이러한 워크플로우들(505, 517) 중 하나 이상은 예를 들어 처리 디바이스에 구현된 하나 이상의 머신 러닝 모델 및/또는 처리 디바이스에서 실행되는 다른 소프트웨어 및/또는 펌웨어에 의해 구현될 수 있다.
모델 훈련 워크플로우(505)는 제조 시스템에 있는 프로세스 툴들의 장비 파라미터들에 연관된 예측된 메트릭들을 결정하기 위해 하나 이상의 머신 러닝 모델(예를 들어, 딥 러닝 모델)을 훈련하는 것이다. 모델 적용 워크플로우(517)는 하나 이상의 훈련된 머신 러닝 모델을 적용하여 장비 파라미터 관리를 수행하는 것이다. 장비 파라미터들(512) 각각은 프로세스 툴의 장비 세팅을 나타낼 수 있다.
본 명세서에서는 다양한 머신 러닝 출력들이 설명된다. 특정 개수들 및 배열들의 머신 러닝 모델들이 설명되고 도시된다. 그러나, 사용되는 머신 러닝 모델들의 개수 및 타입, 및 그러한 머신 러닝 모델들의 배열은 동일하거나 유사한 최종 결과들을 달성하기 위해 수정될 수 있음을 이해해야 한다. 따라서, 설명 및 도시된 머신 러닝 모델들의 배열들은 예들일 뿐 제한으로서 해석되어서는 안 된다.
일부 실시예들에서, 하나 이상의 머신 러닝 모델은 하나 이상의 메트릭 예측 작업을 수행하도록 훈련된다. 각각의 작업은 별개의 머신 러닝 모델에 의해 수행될 수 있다. 대안적으로, 단일 머신 러닝 모델이 작업들 각각 또는 작업들의 서브세트를 수행할 수 있다. 예를 들어, 제1 머신 러닝 모델은 특성화 값 또는 분류 값과 같은 예측된 제1 메트릭을 결정하도록 훈련될 수 있고, 제2 머신 러닝 모델은 예측된 장비 파라미터 값 또는 예측된 장비 파라미터 값 범위와 같은 제2 예측된 메트릭을 결정하도록 훈련될 수 있다. 추가적으로 또는 대안적으로, 상이한 머신 러닝 모델들은 작업들의 상이한 조합들을 수행하도록 훈련될 수 있다. 예에서, 하나 또는 몇 개의 머신 러닝 모델이 훈련될 수 있고, 여기서 훈련된 머신 러닝(ML) 모델은 복수의 공유 층 및 복수의 상위 레벨 개별 출력 층을 갖는 단일 공유 신경망이고, 여기서 출력 층들 각각은 상이한 예측, 분류, 식별 등을 출력한다. 예를 들어, 제1 상위 레벨 출력 층은 특성화 값 또는 분류 값을 결정할 수 있고, 제2 상위 레벨 출력 층은 장비 파라미터의 예측된 값을 결정할 수 있다.
위의 작업들 중 일부 또는 전부를 수행하는 데 사용될 수 있는 머신 러닝 모델의 한 타입은 심층 신경망과 같은 인공 신경망이다. 인공 신경망들은 일반적으로 피쳐들을 타깃 출력 공간에 맵핑하는 분류기 또는 회귀 층들을 갖는 피쳐 표현 컴포넌트를 포함한다. 예를 들어, 컨볼루션 신경망(convolutional neural network)(CNN)은 컨볼루션 필터들의 복수의 층을 호스팅한다. 풀링(pooling)이 수행되고 비선형성들은 하위 층들에서 해결될 수 있으며, 그 위에서 다층 퍼셉트론(multi-layer perceptron)이 일반적으로 첨부되어, 컨볼루션 층들에 의해 추출된 최상층 피쳐들을 결정들(예를 들어, 분류 출력들)에 맵핑한다. 딥 러닝은 피쳐 추출 및 변환을 위해 비선형 처리 유닛들의 복수의 층의 캐스캐이드를 사용하는 머신 러닝 알고리즘들의 클래스이다. 각각의 연속 층은 이전 층으로부터의 출력을 입력으로서 사용한다. 심층 신경망들은 지도식(예를 들어, 분류) 및/또는 비-지도식(예를 들어, 패턴 분석) 방식으로 학습할 수 있다. 심층 신경망들은 층들의 계층구조를 포함하고, 여기서 상이한 층들은 상이한 추상화 레벨들에 대응하는 상이한 표현 레벨들을 학습한다. 딥 러닝에서, 각각의 레벨은 입력 데이터를 약간 더 추상적이고 복합적인 표현으로 변환하는 것을 학습한다. 특히, 딥 러닝 프로세스는 자체적으로 어느 피쳐들을 어느 레벨에 최적으로 배치할지를 학습할 수 있다. "딥 러닝"의 "딥"은 그를 통해 데이터가 변환되는 층들의 수를 참조한다. 보다 정확하게는, 딥 러닝 시스템들은 상당한 신용 할당 경로(credit assignment path)(CAP) 깊이를 갖는다. CAP는 입력으로부터 출력으로의 변환 체인이다. CAP들은 입력과 출력 간의 잠재적 인과 관계들(causal connections)을 설명한다. 피드포워드 신경망의 경우, CAP들의 깊이는 네트워크의 깊이일 수 있으며, 은닉 층들의 수에 1을 더한 것일 수 있다. 신호가 층을 통해 2회 이상 전파될 수 있는 순환 신경망들의 경우, CAP 깊이는 잠재적으로 무제한적이다.
신경망의 훈련은 지도식 학습 방식으로 달성될 수 있으며, 이는 네트워크를 통해 라벨링된 입력들로 이루어진 훈련 데이터세트를 공급하고, 그것의 출력들을 관찰하고, (출력들과 라벨 값들 간의 차이를 측정함으로써) 오류를 정의하고, 심층 경사 하강법(deep gradient descent) 및 역전파(backpropagation)와 같은 기술들을 사용하여 오류가 최소화되도록 그것의 모든 층들 및 노드들에 걸쳐 네트워크의 가중치들을 조정하는 것을 수반한다. 많은 응용들에서, 훈련 데이터세트 내의 다수의 라벨링된 입력에 걸쳐 이 프로세스를 반복하면, 훈련 데이터세트에 있는 것들과는 다른 입력들이 제시될 때 올바른 출력을 생성할 수 있는 네트워크가 산출된다.
모델 훈련 워크플로우(505)에 대해, 훈련 데이터세트를 형성하기 위해 수백, 수천, 수만, 수십만 개 이상의 장비 파라미터(512)를 포함하는 훈련 데이터세트가 사용되어야 한다. 데이터는 예를 들어 과거 장비 파라미터 값들, 특성화들, 및/또는 분류들을 포함할 수 있다. 이 데이터는 하나 이상의 머신 러닝 모델의 훈련을 위한 하나 이상의 훈련 데이터세트(536)를 생성하기 위해 처리될 수 있다. 훈련 데이터세트들(536) 내의 훈련 데이터 항목들은 장비 파라미터들(512), 장비 파라미터 분류들, 장비 파라미터 특성화들, 및/또는 장비 파라미터 값들을 포함할 수 있다.
훈련을 실행하기 위해, 처리 로직은 훈련 데이터세트(들)(536)를 하나 이상의 훈련되지 않은 머신 러닝 모델에 입력한다. 머신 러닝 모델에 제1 입력을 입력하기 전에, 머신 러닝 모델은 초기화될 수 있다. 처리 로직은 훈련 데이터세트(들)에 기초하여 훈련되지 않은 머신 러닝 모델(들)을 훈련하여, 위에 제시된 바와 같이 다양한 동작들을 수행하는 하나 이상의 훈련된 머신 러닝 모델을 생성한다. 훈련은 하나 이상의 장비 파라미터(512)(예를 들어, 장비 파라미터 특성화들, 장비 파라미터 분류들, 장비 파라미터 값들 등), 및/또는 프로세스 툴들(예를 들어, 프로세스 툴 컴포넌트들)의 연령 정보와 같은 입력 데이터를 한 번에 하나씩 머신 러닝에 입력함으로써 수행될 수 있다.
머신 러닝 모델은 입력을 처리하여 출력을 생성한다. 인공 신경망은 데이터 포인트 내의 값들로 이루어진 입력 층을 포함한다. 다음 층은 은닉 층이라고 칭해지며, 은닉 층의 노드들은 각각 입력 값들 중 하나 이상을 수신한다. 각각의 노드는 입력 값들에 적용할 파라미터들(예를 들어, 가중치들)을 포함한다. 따라서, 각각의 노드는 본질적으로 입력 값들을 다변량 함수(예를 들어, 비선형 수학적 변환)에 입력하여 출력 값을 생성한다. 다음 층은 다른 은닉 층 또는 출력 층일 수 있다. 어느 경우에서든, 다음 층의 노드들은 이전 층의 노드들로부터 출력 값들을 수신하고, 각각의 노드는 해당 값들에 가중치들을 적용한 다음, 자체 출력 값을 생성한다. 이는 각각의 층에서 수행될 수 있다. 최종 층은 머신 러닝 모델이 생성할 수 있는 각각의 클래스, 예측 및/또는 출력에 대해 하나의 노드가 있는 출력 층이다.
따라서, 출력은 하나 이상의 예측 또는 추론(예를 들어, 장비 파라미터들에 대응하는 메트릭의 예측된 값들)을 포함할 수 있다. 처리 로직은 출력된 추정된 메트릭(들)을 과거 메트릭(들)과 비교할 수 있다. 처리 로직은 추정된 메트릭(들)과 타깃 메트릭(들) 간의 차이들에 기초하여 오류(즉, 분류 오류)를 결정한다. 처리 로직은 오류에 기초하여 머신 러닝 모델 내의 하나 이상의 노드의 가중치들을 조절한다. 인공 신경망 내의 각각의 노드에 대해 오류 항 또는 델타가 결정될 수 있다. 이러한 오류에 기초하여, 인공 신경망은 그것의 노드들 중 하나 이상에 대한 그것의 파라미터들(노드의 하나 이상의 입력에 대한 가중치들) 중 하나 이상을 조절한다. 파라미터들은 가장 높은 층의 노드들이 먼저 업데이트된 후 다음 층의 노드들이 업데이트되는 식으로 되도록, 역전파 방식으로 업데이트될 수 있다. 인공 신경망은 복수의 층의 "뉴런들"을 포함하고, 각각의 층은 이전 층의 뉴런들로부터 입력 값들을 수신한다. 각각의 뉴런에 대한 파라미터들은 이전 층의 뉴런들 각각으로부터 수신된 값들에 연관된 가중치들을 포함한다. 따라서, 파라미터들을 조절하는 것은 인공 신경망의 하나 이상의 층에서 하나 이상의 뉴런에 대한 입력들 각각에 할당되는 가중치들을 조절하는 것을 포함할 수 있다.
모델 파라미터들이 최적화되고 나면, 모델이 개선되었는지를 결정하고 딥 러닝 모델의 현재 정확도를 결정하기 위해 모델 검증이 수행될 수 있다. 하나 이상의 훈련 라운드 후에, 처리 로직은 정지 기준이 충족되었는지를 결정할 수 있다. 정지 기준은 정확도의 타깃 레벨, 훈련 데이터세트로부터의 처리된 이미지들의 타깃 수, 하나 이상의 이전 데이터 포인트에 걸친 파라미터들에 대한 타깃 변화량, 이들의 조합, 및/또는 다른 기준일 수 있다. 일 실시예에서, 정지 기준은 적어도 최소 개수의 데이터 포인트가 처리되고 적어도 임계 정확도가 달성될 때 충족된다. 임계 정확도는 예를 들어 70%, 40% 또는 90% 정확도일 수 있다. 일 실시예에서, 머신 러닝 모델의 정확도가 개선을 멈춘 경우 정지 기준이 충족된다. 정지 기준이 충족되지 않으면, 추가 훈련이 수행된다. 정지 기준이 충족되면, 훈련이 완료될 수 있다. 머신 러닝 모델이 훈련되고 나면, 모델을 테스트하기 위해 훈련 데이터세트의 예약된 부분이 사용될 수 있다. 하나 이상의 훈련된 머신 러닝 모델(538)이 생성되고 나면, 그들은 모델 저장소(545)에 저장될 수 있고, EP 관리 엔진(152)에 추가될 수 있다.
모델 적용 워크플로우(517)에 대해, 일 실시예에 따르면, 입력 데이터(562)는 훈련된 신경망 또는 다른 모델을 각각 포함할 수 있는 하나 이상의 EP 메트릭 결정기(567)에 입력될 수 있다. 추가적으로 또는 대안적으로, 하나 이상의 EP 메트릭 결정기(567)는 이미지 처리 알고리즘들을 적용하여 챔버 컴포넌트 조건들을 결정할 수 있다. 입력 데이터는 장비 파라미터의 값(예를 들어, 특성화 값, 분류 값, 숫자 값 등)을 포함할 수 있다. 입력 데이터(562)에 기초하여, EP 메트릭 결정기(들)(567)는 하나 이상의 예측된 EP 메트릭(들)(569)을 출력할 수 있다. 예측된 EP 메트릭(들)(569)은 장비 파라미터들에 대응하는 메트릭(예를 들어, 특성화, 분류, 또는 값 등 중 하나 이상을 반영하는 메트릭)을 포함할 수 있다.
액션 결정기(572)는 예측된 EP 메트릭(들)(569)에 기초하여, 수행할 하나 이상의 액션(570)을 결정할 수 있다. 일 실시예에서, 액션 결정기(572)는 예측된 EP 메트릭을 장비 세팅을 나타내는 데이터와 비교한다. 예측된 EP 메트릭들 중 하나 이상이 임계 양보다 많이 데이터와 상이하다면, 액션 결정기(572)는 장래의 기판 처리를 위해 장비 파라미터 및/또는 장비 세팅을 업데이트하는 것이 권장된다고 결정할 수 있고, 장비 파라미터 및/또는 장비 세팅을 업데이트하기 위한 권장사항 또는 통지를 출력할 수 있다. 일부 실시예들에서, 액션 결정기(572)는 하나 이상의 기준을 충족하는 예측된 EP 메트릭(들)(569)에 기초하여 장비 파라미터 메트릭(들)을 자동으로 업데이트한다. 그러나, 일부 실시예들에서, 사용자는 (예를 들어, 출력 권장사항 또는 통지에 기초하여) 장비 파라미터를 업데이트하기 위한 입력을 (예를 들어, GUI를 통해) 제공할 수 있다. 사용자는 장비 파라미터를 업데이트하지 않거나 장비 파라미터를 지정된 양(예를 들어, 사용자에 의해 지정됨)만큼 업데이트하기 위한 처리 로직에 대한 입력을 제공할 수 있다. 일부 예들에서, 사용자는 액션 결정기(572)에 의해 권장되는 양과 상이한 양으로 장비 파라미터를 업데이트하기 위한 입력을 제공할 수 있다.
도 6은 본 개시내용의 양태들에 따른, 머신 러닝을 사용하여 장비 파라미터를 추정하기 위한 방법(600)의 플로우차트이다. 방법(600)은 하드웨어(회로부, 전용 로직 등), (범용 컴퓨터 시스템 또는 전용 머신에서 실행되는 것과 같은) 소프트웨어, 펌웨어, 또는 이들의 소정의 조합을 포함할 수 있는 처리 로직에 의해 수행된다. 일 구현에서, 방법(600)은 도 1의 시스템 아키텍처(100)와 같은 시스템 아키텍처의 하나 이상의 컴포넌트에 의해 수행될 수 있다. 다른 또는 유사한 구현들에서, 방법(600)의 하나 이상의 동작은 도면들에 묘사되지 않은 하나 이상의 다른 머신에 의해 수행될 수 있다. 일부 양태들에서, 방법(600)의 하나 이상의 동작은 예측 시스템(110)의 예측 서버(112)에 의해 수행될 수 있다. 다른 또는 유사한 양태들에서, 방법(600)의 하나 이상의 동작은 EP 관리 엔진(152)에 의해 수행될 수 있다.
설명을 간단하게 하기 위해, 방법들은 일련의 행위들로서 묘사되고 설명된다. 그러나, 본 개시내용에 따른 행위들은 다양한 순서들로 및/또는 동시에, 그리고 여기에 제시되고 설명되지 않은 다른 행위들과 함께 발생할 수 있다. 또한, 개시된 주제에 따른 방법들을 구현하기 위해, 예시된 모든 행위가 수행되지는 않을 수 있다. 추가로, 본 기술분야의 통상의 기술자들은 방법들이 대안적으로 상태 다이어그램 또는 이벤트들을 통해 일련의 상호관련된 상태들로서 표현될 수 있음을 이해하고 인식할 것이다. 추가로, 본 명세서에 개시된 방법들은 이러한 방법들을 컴퓨팅 디바이스들에 이송 및 이전하는 것을 용이하게 하기 위해 제조 물품에 저장될 수 있음을 인식해야 한다. 본 명세서에서 사용되는 제조 물품이라는 용어는 임의의 컴퓨터 판독가능 디바이스 또는 저장 매체로부터 액세스가능한 컴퓨터 프로그램을 포괄하도록 의도된다.
블록(610)에서, (예를 들어, 처리 디바이스, EP 관리 엔진(152) 등의) 처리 로직은 장비 파라미터에 연관된 제1 데이터를 수신한다. 일부 실시예들에서, 장비 파라미터는 프로세스 툴(예를 들어, 프로세스 툴의 컴포넌트 등)에 연관된 교정 값, 오프셋 값, 및/또는 스케일링 계수 값 중 하나 이상을 포함한다. 제1 데이터는 제1 제조 시스템에 있는 복수의 프로세스 툴 중의 프로세스 툴의 장비 세팅을 나타낼 수 있다. 일부 예들에서, 제1 데이터는 장비 파라미터의 하나 이상의 값 및/또는 특성을 반영한다. 값들 각각은 프로세스 툴의 세팅에 대응할 수 있다.
블록(612)에서, 처리 로직은 제1 데이터를 훈련된 머신 러닝 모델(예를 들어, 도 1의 모델(190))에 대한 입력으로 제공한다. 일부 실시예들에서, 훈련된 머신 러닝 모델은 복수의 프로세스 툴의 장비 파라미터들에 관한 과거 데이터를 사용하여 훈련된다. 예를 들어, 훈련된 머신 러닝 모델은 제조 시스템에 있는 각각의 프로세스 툴의 각각의 장비 파라미터를 식별하는 입력 데이터로 훈련될 수 있다. 훈련된 머신 러닝 모델은 각각의 장비 파라미터에 대응하는 메트릭의 값들을 식별하는 타깃 출력 데이터로 훈련될 수 있다. 일부 실시예들에서, 처리 로직은 장비 파라미터에 연관된 제2 데이터를 수신하고, 제2 데이터를 훈련된 머신 러닝 모델에 추가 훈련 입력 데이터로서 제공하여, 훈련된 머신 러닝 모델을 추가로 훈련한다. 일부 실시예들에서, 제2 데이터는 하나 이상의 장비 파라미터에 대한 업데이트(예를 들어, 하나 이상의 장비 파라미터 값에 대한 하나 이상의 업데이트 등)에 후속하여 수집된 데이터이다.
블록(614)에서, 처리 로직은 훈련된 머신 러닝 모델의 출력으로서, 장비 파라미터에 대응하는 메트릭의 예측된 값을 획득한다. 일부 실시예들에서, 메트릭의 예측된 값은 장비 파라미터의 특성을 나타내는 예측된 특성화 값을 포함할 수 있다. 일부 실시예들에서, 메트릭의 예측된 값은 장비 파라미터의 세트 포인트에 연관된 예측된 디폴트 값을 포함한다. 일부 실시예들에서, 메트릭의 예측된 값은 장비 파라미터에 연관된 예측된 디폴트 값 범위를 포함한다.
블록(616)에서, 처리 로직은 메트릭의 예측된 값을 제1 데이터와 비교한다. 예를 들어, 처리 로직은 예측된 장비 파라미터 값을 반영하는 메트릭의 예측된 값을 제1 데이터에 반영된 장비 파라미터 값들과 비교할 수 있다. 다른 예에서, 처리 로직은 예측된 특성화 값을 반영하는 메트릭의 예측된 값을 제1 데이터에 반영된 장비 파라미터 특성화 값들과 비교할 수 있다.
블록(618)에서, 처리 로직은 블록(616)에서의 비교에 기초하여 수정 액션을 수행한다(예를 들어, 수정 액션이 수행되게 한다). 일부 실시예들에서, 수정 액션은 메트릭의 예측된 값과 제1 데이터에 대한 불일치가 존재한다고 결정하는 것에 응답하여 수행될 수 있다. 예를 들어, 수정 액션은 예측된 특성화 값(예를 들어, 예측된 메트릭에 의해 반영됨)이 제1 데이터에 반영된 특성화 값과 일치하지 않는다고 결정하는 것에 응답하여 수행될 수 있다. 다른 예에서, 수정 액션은 예측된 장비 파라미터 값(예를 들어, 예측된 메트릭에 의해 반영됨)이 제1 데이터에 반영된 장비 파라미터 값과 일치하지 않는다고 결정하는 것에 응답하여 수행될 수 있다. 일부 실시예들에서, 수정 액션은 장비 파라미터에 연관된 장비 세팅을 업데이트하는 것을 포함한다. 예를 들어, 장비 세팅은 장비 파라미터의 값 및/또는 특성화가 예측된 메트릭에 반영된 예측된 값/특성화 등과 일치하게끔(예를 들어, 더 밀접하게 일치하게끔) 업데이트되도록 업데이트될 수 있다. 일부 실시예들에서, 수정 액션에 대한 통지가 GUI에 제공될 수 있다.
도 7은 본 개시내용의 하나 이상의 양태에 따라 동작하는 예시적인 컴퓨터 시스템(700)의 블록도를 묘사한다. 대안적인 실시예들에서, 머신은 근거리 네트워크(LAN), 인트라넷, 엑스트라넷 또는 인터넷 내의 다른 머신들에 연결(예를 들어, 네트워킹)될 수 있다. 머신은 클라이언트-서버 네트워크 환경에서 서버 또는 클라이언트 머신의 자격으로 동작하거나, 피어-투-피어(또는 분산형) 네트워크 환경에서 피어 머신으로서 동작할 수 있다. 머신은 개인용 컴퓨터(PC), 태블릿 컴퓨터, 셋톱 박스(Set-Top Box)(STB), 개인용 정보 단말(Personal Digital Assistant)(PDA), 셀룰러 전화기, 웹 기기, 서버, 네트워크 라우터, 스위치 또는 브리지, 또는 해당 디바이스에 의해 취해질 액션들을 지정하는 (순차적인 또는 기타) 명령어들의 세트를 실행할 수 있는 임의의 머신일 수 있다. 추가로, 단일 머신만이 도시되어 있지만, "머신"라는 용어는 또한 본 명세서에 논의된 방법론들 중 임의의 하나 이상을 수행하기 위한 명령어들의 세트(또는 복수의 세트)를 개별적으로 또는 합동으로 실행하는 머신들(예를 들어, 컴퓨터들)의 임의의 컬렉션을 포함하는 것으로 간주되어야 한다. 실시예들에서, 컴퓨팅 디바이스(700)는 도 1의 예측 서버(112), 및/또는 제조 시스템(100)의 다른 처리 디바이스에 대응할 수 있다.
예시적인 컴퓨팅 디바이스(700)는 처리 디바이스(702), 메인 메모리(704)(예를 들어, 판독 전용 메모리(ROM), 플래시 메모리, 동기식 DRAM(SDRAM)과 같은 동적 랜덤 액세스 메모리(DRAM) 등), 정적 메모리(706)(예를 들어, 플래시 메모리, 정적 랜덤 액세스 메모리(SRAM) 등), 및 보조 메모리(예를 들어, 데이터 저장 디바이스(728))를 포함하고, 이들은 버스(708)를 통해 서로 통신한다.
처리 디바이스(702)는 마이크로프로세서, 중앙 처리 유닛 또는 그와 유사한 것과 같은 하나 이상의 범용 프로세서를 나타낼 수 있다. 더 구체적으로, 처리 디바이스(702)는 복잡 명령어 세트 컴퓨팅(complex instruction set computing)(CISC) 마이크로프로세서, 축소 명령어 세트 컴퓨팅(reduced instruction set computing)(RISC) 마이크로프로세서, 매우 긴 명령어 워드(very long instruction word)(VLIW) 마이크로프로세서, 다른 명령어 세트들을 구현하는 프로세서 또는 명령어 세트들의 조합을 구현하는 프로세서들일 수 있다. 처리 디바이스(702)는 또한 주문형 집적 회로(application specific integrated circuit)(ASIC), 필드 프로그래밍가능 게이트 어레이(field programmable gate array)(FPGA), 디지털 신호 프로세서(digital signal processor)(DSP), 네트워크 프로세서, 또는 그와 유사한 것과 같은 하나 이상의 특수 목적 처리 디바이스일 수 있다. 처리 디바이스(702)는 또한 시스템온칩(SoC), 프로그래밍가능 로직 컨트롤러(PLC) 또는 다른 타입의 처리 디바이스이거나, 이를 포함할 수 있다. 처리 디바이스(702)는 본 명세서에서 논의된 동작들을 수행하기 위한 처리 로직을 실행하도록 구성된다.
컴퓨팅 디바이스(700)는 네트워크(764)와 통신하기 위한 네트워크 인터페이스 디바이스(722)를 추가로 포함할 수 있다. 컴퓨팅 디바이스(700)는 또한 비디오 디스플레이 유닛(710)(예를 들어, 액정 디스플레이(LCD) 또는 음극선관(CRT)), 영숫자 입력 디바이스(712)(예를 들어, 키보드), 커서 제어 디바이스(714)(예를 들어, 마우스), 및 신호 생성 디바이스(720)(예를 들어, 스피커)를 포함할 수 있다.
데이터 저장 디바이스(728)는 본 명세서에 설명된 방법론들 또는 기능들 중 임의의 하나 이상을 구현하는 명령어들(726)의 하나 이상의 세트가 저장되어 있는 머신 판독가능 저장 매체(또는 더 구체적으로는 비-일시적 컴퓨터 판독가능 저장 매체)(724)를 포함할 수 있다. 여기서, 비-일시적 저장 매체는 반송파 이외의 저장 매체를 지칭한다. 명령어들(726)은 또한 컴퓨터 디바이스(700)에 의한 실행 동안 메인 메모리(704) 내에 및/또는 처리 디바이스(702) 내에 완전히 또는 적어도 부분적으로 상주할 수 있고, 메인 메모리(704) 및 처리 디바이스(702)는 또한 컴퓨터 판독가능 저장 매체를 구성한다.
컴퓨터 판독가능 저장 매체(724)는 또한 모델(190), 및 모델(190)을 훈련하는 데 사용되는 데이터를 저장하기 위해 사용될 수 있다. 컴퓨터 판독가능 저장 매체(724)는 또한 모델(190)을 호출하는 방법들을 포함하는 소프트웨어 라이브러리를 저장할 수 있다. 컴퓨터 판독가능 저장 매체(724)는 예시적인 실시예에서 단일 매체인 것으로 도시되어 있지만, "컴퓨터 판독가능 저장 매체"라는 용어는 명령어들의 하나 이상의 세트를 저장하는 단일 매체 또는 복수의 매체(예를 들어, 중앙 집중식 또는 분산형 데이터베이스, 및 /또는 연관된 캐시들 및 서버들)를 포함하는 것으로 간주되어야 한다. "컴퓨터 판독가능 저장 매체"라는 용어는 또한 머신으로 하여금 본 개시내용의 방법론들 중 임의의 하나 이상을 수행하게 하고 머신에 의해 실행하기 위한 명령어들의 세트를 저장하거나 인코딩할 수 있는 임의의 매체를 포함하는 것으로 간주되어야 한다. 따라서, "컴퓨터 판독가능 저장 매체"라는 용어는 솔리드 스테이트 메모리, 및 광학 및 자기 매체를 포함하지만 이에 제한되지 않는 것으로 간주되어야 한다.
앞선 설명은 본 개시내용의 여러 실시예들에 대한 양호한 이해를 제공하기 위해 특정 시스템들, 컴포넌트들, 방법들 등의 예들과 같은 다수의 특정 세부사항을 제시한다. 그러나, 본 기술분야의 통상의 기술자에게는 본 개시내용의 적어도 일부 실시예들이 이러한 특정 세부사항들 없이도 실시될 수 있다는 것이 명백할 것이다. 다른 경우들에서, 널리 공지된 컴포넌트들 또는 방법들은 본 개시내용을 불필요하게 모호하게 하는 것을 피하기 위해 상세하게 설명되지 않거나 간단한 블록도 형식으로 제시된다. 따라서, 제시된 특정 세부사항들은 단지 예시일 뿐이다. 구체적인 구현들은 이러한 예시적인 세부사항들로부터 달라질 수 있으며, 여전히 본 개시내용의 범위 내에 있는 것으로 고려된다.
본 명세서 전반에 걸쳐서 "일 실시예" 또는 "실시예"에 대한 참조는 해당 실시예와 관련하여 설명된 특정한 특징, 구조 또는 특성이 적어도 하나의 실시예에 포함된다는 것을 의미한다. 따라서, 본 명세서 전반에 걸친 다양한 위치들에서의 "일 실시예에서" 또는 "실시예에서"라는 문구의 출현이 반드시 모두 동일한 실시예를 지칭하는 것은 아니다. 추가로, "또는"이라는 용어는 배타적인 "또는"이 아닌 포괄적인 "또는"을 의미하도록 의도된다. 본 명세서에서 "약" 또는 "대략"이라는 용어가 사용될 때, 이는 제시된 공칭 값이 ±10% 이내로 정밀함을 의미하도록 의도된다.
본 명세서의 방법들의 동작들은 특정 순서로 도시되고 설명되지만, 각각의 방법의 동작들의 순서는 변경될 수 있고, 그에 의해 특정 동작들이 역순으로 수행되어 특정 동작들이 적어도 부분적으로 다른 동작들과 동시에 수행될 수 있다. 다른 실시예에서, 개별 동작들의 명령어들 또는 하위 동작들은 간헐적 및/또는 교대 방식으로 이루어질 수 있다.
위의 설명은 제한이 아니라 예시로 의도된 것임이 이해된다. 위의 설명을 읽고 이해하면, 본 기술분야의 통상의 기술자들에게는 많은 다른 실시예들이 명백해질 것이다. 따라서, 개시내용의 범위는 첨부된 청구항들을 그러한 청구항들에 부여된 등가물들의 전체 범위와 함께 참조하여 결정되어야 한다.

Claims (20)

  1. 방법으로서,
    제1 제조 시스템의 복수의 프로세스 툴 중의 프로세스 툴의 장비 파라미터에 연관된 세팅을 나타내는 제1 데이터를 수신하는 단계;
    적어도 상기 제1 데이터를 훈련된 머신 러닝 모델에 대한 입력으로서 제공하는 단계 - 상기 훈련된 머신 러닝 모델은 상기 제1 제조 시스템의 상기 복수의 프로세스 툴의 장비 파라미터들에 관한 과거 데이터(historical data)를 사용하여 훈련됨 -;
    상기 훈련된 머신 러닝 모델의 출력으로서, 상기 장비 파라미터에 대응하는 메트릭의 예측된 값을 획득하는 단계;
    상기 메트릭의 예측된 값을 상기 제1 데이터와 비교하는 단계; 및
    상기 비교에 기초하여 수정 액션(corrective action)을 수행하는 단계
    를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 메트릭의 예측된 값에 기초하여 상기 장비 파라미터에 연관된 장비 세팅을 업데이트하는 단계
    를 추가로 포함하는, 방법.
  3. 제1항에 있어서, 상기 수정 액션은:
    상기 제1 데이터와 상기 메트릭의 예측된 값의 불일치를 나타내는, 그래픽 사용자 인터페이스(GUI) 상에 디스플레이할 통지를 제공하는 것
    을 포함하는, 방법.
  4. 제1항에 있어서, 상기 복수의 프로세스 툴의 장비 파라미터들에 관한 과거 데이터는 각각의 장비 파라미터를 식별하는 훈련 입력 데이터, 및 각각의 장비 파라미터에 대응하는 메트릭의 값들을 식별하는 타깃 출력 데이터를 포함하는, 방법.
  5. 제4항에 있어서,
    상기 장비 파라미터에 연관된 제2 데이터를 수신하는 단계; 및
    상기 훈련된 머신 러닝 모델을 추가로 훈련하기 위해, 상기 제2 데이터를 상기 훈련된 머신 러닝 모델에 대한 훈련 입력 데이터로서 제공하는 단계
    를 추가로 포함하는, 방법.
  6. 제1항에 있어서, 상기 메트릭의 예측된 값은:
    상기 장비 파라미터의 특성을 나타내는 예측된 특성화 값(characterization value); 또는
    상기 장비 파라미터의 세트 포인트에 연관된 예측된 디폴트 값
    중 하나 이상을 포함하는, 방법.
  7. 제6항에 있어서,
    상기 예측된 특성화 값 또는 상기 예측된 디폴트 값 중 적어도 하나를 제2 제조 시스템에서의 구현을 위해 출력하는 단계
    를 추가로 포함하는, 방법.
  8. 제1항에 있어서, 상기 장비 파라미터는 상기 프로세스 툴에 연관된 교정 값, 오프셋 값, 또는 스케일링 계수 값 중 하나 이상을 포함하는, 방법.
  9. 시스템으로서,
    메모리; 및
    상기 메모리에 결합된 처리 디바이스
    를 포함하고, 상기 처리 디바이스는:
    제1 제조 시스템의 복수의 프로세스 툴 중의 프로세스 툴의 장비 파라미터에 연관된 세팅을 나타내는 제1 데이터를 수신하고;
    적어도 상기 제1 데이터를 훈련된 머신 러닝 모델에 대한 입력으로서 제공하고 - 상기 훈련된 머신 러닝 모델은 상기 제1 제조 시스템의 상기 복수의 프로세스 툴의 장비 파라미터들에 관한 과거 데이터를 사용하여 훈련됨 -;
    상기 훈련된 머신 러닝 모델의 출력으로서, 상기 장비 파라미터에 대응하는 메트릭의 예측된 값을 획득하고;
    상기 메트릭의 예측된 값을 상기 제1 데이터와 비교하고;
    상기 비교에 기초하여 수정 액션을 수행하는,
    시스템.
  10. 제9항에 있어서, 상기 처리 디바이스는 추가로:
    상기 메트릭의 예측된 값에 기초하여 상기 장비 파라미터에 연관된 장비 세팅을 업데이트하는, 시스템.
  11. 제9항에 있어서, 상기 수정 액션은:
    상기 제1 데이터와 상기 메트릭의 예측된 값의 불일치를 나타내는, 그래픽 사용자 인터페이스(GUI) 상에 디스플레이할 통지를 제공하는 것
    을 포함하는, 시스템.
  12. 제9항에 있어서, 상기 복수의 프로세스 툴의 장비 파라미터들에 관한 과거 데이터는 각각의 장비 파라미터를 식별하는 훈련 입력 데이터, 및 각각의 장비 파라미터에 대응하는 메트릭의 값들을 식별하는 타깃 출력 데이터를 포함하는, 시스템.
  13. 제9항에 있어서, 상기 메트릭의 예측된 값은:
    상기 장비 파라미터의 특성을 나타내는 예측된 특성화 값; 또는
    상기 장비 파라미터의 세트 포인트에 연관된 예측된 디폴트 값
    중 하나 이상을 포함하는, 시스템.
  14. 제9항에 있어서, 상기 장비 파라미터는 상기 프로세스 툴에 연관된 교정 값, 오프셋 값, 또는 스케일링 계수 값 중 하나 이상을 포함하는, 시스템.
  15. 비-일시적 컴퓨터 판독가능 매체로서,
    처리 디바이스에 의해 실행될 때, 상기 처리 디바이스로 하여금:
    제1 제조 시스템의 복수의 프로세스 툴 중의 프로세스 툴의 장비 파라미터에 연관된 세팅을 나타내는 제1 데이터를 수신하게 하고;
    적어도 상기 제1 데이터를 훈련된 머신 러닝 모델에 대한 입력으로서 제공하게 하고 - 상기 훈련된 머신 러닝 모델은 상기 제1 제조 시스템의 상기 복수의 프로세스 툴의 장비 파라미터들에 관한 과거 데이터를 사용하여 훈련됨 -;
    상기 훈련된 머신 러닝 모델의 출력으로서, 상기 장비 파라미터에 대응하는 메트릭의 예측된 값을 획득하게 하고;
    상기 메트릭의 예측된 값을 상기 제1 데이터와 비교하게 하고;
    상기 비교에 기초하여 수정 액션을 수행하게 하는
    명령어들을 포함하는, 비-일시적 컴퓨터 판독가능 매체.
  16. 제15항에 있어서, 상기 처리 디바이스는 추가로:
    상기 메트릭의 예측된 값에 기초하여 상기 장비 파라미터에 연관된 장비 세팅을 업데이트하는, 비-일시적 컴퓨터 판독가능 매체.
  17. 제15항에 있어서, 상기 복수의 프로세스 툴의 장비 파라미터들에 관한 과거 데이터는 각각의 장비 파라미터를 식별하는 훈련 입력 데이터, 및 각각의 장비 파라미터에 대응하는 메트릭의 값들을 식별하는 타깃 출력 데이터를 포함하는, 비-일시적 컴퓨터 판독가능 매체.
  18. 제17항에 있어서, 상기 처리 디바이스는 추가로:
    상기 장비 파라미터에 연관된 제2 데이터를 수신하고;
    상기 훈련된 머신 러닝 모델을 추가로 훈련하기 위해, 상기 제2 데이터를 상기 훈련된 머신 러닝 모델에 대한 훈련 입력 데이터로서 제공하는,
    비-일시적 컴퓨터 판독가능 매체.
  19. 제15항에 있어서, 상기 메트릭의 예측된 값은:
    상기 장비 파라미터의 특성을 나타내는 예측된 특성화 값; 또는
    상기 장비 파라미터의 세트 포인트에 연관된 예측된 디폴트 값
    중 하나 이상을 포함하는, 비-일시적 컴퓨터 판독가능 매체.
  20. 제15항에 있어서, 상기 장비 파라미터는 상기 프로세스 툴에 연관된 교정 값, 오프셋 값, 또는 스케일링 계수 값 중 하나 이상을 포함하는, 비-일시적 컴퓨터 판독가능 매체.
KR1020257008561A 2022-08-22 2023-08-21 머신 러닝을 이용한 제조 시스템에서의 장비 파라미터 관리 Pending KR20250053111A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/821,349 US12591805B2 (en) 2022-08-22 2022-08-22 Equipment parameter management at a manufacturing system using machine learning
US17/821,349 2022-08-22
PCT/US2023/030735 WO2024044143A1 (en) 2022-08-22 2023-08-21 Equipment parameter management at a manufacturing system using machine learning

Publications (1)

Publication Number Publication Date
KR20250053111A true KR20250053111A (ko) 2025-04-21

Family

ID=89906977

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020257008561A Pending KR20250053111A (ko) 2022-08-22 2023-08-21 머신 러닝을 이용한 제조 시스템에서의 장비 파라미터 관리

Country Status (6)

Country Link
US (1) US12591805B2 (ko)
JP (1) JP2025530713A (ko)
KR (1) KR20250053111A (ko)
CN (1) CN119731763A (ko)
TW (1) TW202424831A (ko)
WO (1) WO2024044143A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240402052A1 (en) * 2023-06-05 2024-12-05 Anil Agrawal Method and system for monitoring a rotating equipment
WO2026070478A1 (ja) * 2024-09-26 2026-04-02 東京エレクトロン株式会社 情報処理方法、実験方法及びコンピュータプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040267397A1 (en) 2003-06-27 2004-12-30 Srinivas Doddi Optical metrology of structures formed on semiconductor wafer using machine learning systems
KR20180076423A (ko) * 2016-12-27 2018-07-06 삼성전자주식회사 반도체 제조 설비를 판단 및 제어하기 위한 전자 시스템
US10705514B2 (en) 2018-10-09 2020-07-07 Applied Materials, Inc. Adaptive chamber matching in advanced semiconductor process control
US11592812B2 (en) * 2019-02-19 2023-02-28 Applied Materials, Inc. Sensor metrology data integration
US11610076B2 (en) * 2019-08-07 2023-03-21 Applied Materials, Inc. Automatic and adaptive fault detection and classification limits
US11410891B2 (en) 2019-08-26 2022-08-09 International Business Machines Corporation Anomaly detection and remedial recommendation
WO2021197717A1 (en) 2020-04-02 2021-10-07 Asml Netherlands B.V. Method and apparatus for predicting a process metric associated with a process
CN116745895A (zh) 2020-12-21 2023-09-12 朗姆研究公司 用于半导体制造设备的处理控制的自适应模型训练

Also Published As

Publication number Publication date
TW202424831A (zh) 2024-06-16
CN119731763A (zh) 2025-03-28
WO2024044143A1 (en) 2024-02-29
US20240062097A1 (en) 2024-02-22
US12591805B2 (en) 2026-03-31
JP2025530713A (ja) 2025-09-17

Similar Documents

Publication Publication Date Title
US12147212B2 (en) Diagnostic methods for substrate manufacturing chambers using physics-based models
US20230281439A1 (en) Synthetic time series data associated with processing equipment
US12191126B2 (en) Process control knob estimation
US20230222264A1 (en) Processing chamber calibration
US12579444B2 (en) Machine learning model generation and updating for manufacturing equipment
US12498705B2 (en) Chamber matching by equipment constant updates
KR20250053111A (ko) 머신 러닝을 이용한 제조 시스템에서의 장비 파라미터 관리
US12386342B2 (en) Holistic analysis of multidimensional sensor data for substrate processing equipment
US20230306300A1 (en) Methods and mechanisms for measuring patterned substrate properties during substrate manufacturing
US20250189957A1 (en) Methods and mechanisms for preventing fluctuation in machine-learning model performance
US12518069B2 (en) Comprehensive modeling platform for manufacturing equipment
US20230107813A1 (en) Time constraint management at a manufacturing system
US12504726B2 (en) Determining equipment constant updates by machine learning
US12560916B2 (en) Adjusting chamber performance by equipment constant updates
US20260111013A1 (en) Augmented manufacturing systems with field-provisioned sensors and algorithms
US20250271846A1 (en) Autonomous fault diagnostic tools for manufacturing systems by analyzing process runs
US20260119733A1 (en) Methods and systems for calibrating on-tool digital twin models
US20250155883A1 (en) Process modeling platform for substrate manufacturing systems
US20250208597A1 (en) Endpoint detection by generating synthetic sensor data
US20260118855A1 (en) Artificial intelligence-based bias prediction for run-to-run process control
US20250094829A1 (en) Methods and mechanisms for trace-based transfer learning
KR20240166008A (ko) 머신 러닝을 사용하는 제조 시스템에서의 런-투-런 제어

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20250314

Patent event code: PA01051R01D

Comment text: International Patent Application

PA0201 Request for examination
PG1501 Laying open of application