KR100970684B1 - 동적 센서 구성 및 런타임 실행 방법 - Google Patents
동적 센서 구성 및 런타임 실행 방법 Download PDFInfo
- Publication number
- KR100970684B1 KR100970684B1 KR1020047021678A KR20047021678A KR100970684B1 KR 100970684 B1 KR100970684 B1 KR 100970684B1 KR 1020047021678 A KR1020047021678 A KR 1020047021678A KR 20047021678 A KR20047021678 A KR 20047021678A KR 100970684 B1 KR100970684 B1 KR 100970684B1
- Authority
- KR
- South Korea
- Prior art keywords
- sensor
- plan
- dynamic
- screen
- data
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 156
- 230000008569 process Effects 0.000 claims abstract description 110
- 238000012545 processing Methods 0.000 claims abstract description 71
- 239000004065 semiconductor Substances 0.000 claims abstract description 30
- 238000013480 data collection Methods 0.000 claims description 73
- 238000011217 control strategy Methods 0.000 claims description 25
- 238000004458 analytical method Methods 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 8
- 230000003213 activating effect Effects 0.000 claims 6
- 230000001419 dependent effect Effects 0.000 claims 1
- 238000012544 monitoring process Methods 0.000 description 38
- 235000012431 wafers Nutrition 0.000 description 34
- 238000004519 manufacturing process Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 16
- 238000001514 detection method Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 10
- 238000012423 maintenance Methods 0.000 description 10
- 238000003070 Statistical process control Methods 0.000 description 9
- 239000000523 sample Substances 0.000 description 9
- 230000009471 action Effects 0.000 description 8
- 239000003795 chemical substances by application Substances 0.000 description 8
- 230000000694 effects Effects 0.000 description 8
- 238000007781 pre-processing Methods 0.000 description 8
- 238000004140 cleaning Methods 0.000 description 6
- 235000011194 food seasoning agent Nutrition 0.000 description 6
- 238000003908 quality control method Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 230000007257 malfunction Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 238000000491 multivariate analysis Methods 0.000 description 4
- 238000012805 post-processing Methods 0.000 description 4
- 238000003860 storage Methods 0.000 description 4
- 238000013523 data management Methods 0.000 description 3
- 238000005530 etching Methods 0.000 description 3
- 238000009434 installation Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000004886 process control Methods 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000007635 classification algorithm Methods 0.000 description 2
- 238000012790 confirmation Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 238000000513 principal component analysis Methods 0.000 description 2
- 238000009966 trimming Methods 0.000 description 2
- 241000196324 Embryophyta Species 0.000 description 1
- 241001377894 Trias Species 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- JLQUFIHWVLZVTJ-UHFFFAOYSA-N carbosulfan Chemical compound CCCCN(CCCC)SN(C)C(=O)OC1=CC=CC2=C1OC(C)(C)C2 JLQUFIHWVLZVTJ-UHFFFAOYSA-N 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000003750 conditioning effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000008021 deposition Effects 0.000 description 1
- 238000005137 deposition process Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000001459 lithography Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000003449 preventive effect Effects 0.000 description 1
- 238000010926 purge Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L22/00—Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/418—Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L21/00—Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
- H01L21/02—Manufacture or treatment of semiconductor devices or of parts thereof
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Manufacturing & Machinery (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Power Engineering (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Testing And Monitoring For Control Systems (AREA)
- General Factory Administration (AREA)
Abstract
그래픽 사용자 인터페이스(GUI)는 반도체 처리 시스템에서 툴 및 프로세스 성능을 모니터링하는 동적 센서들을 구성하고 셋업하는데 제공된다. 반도체 처리 시스템은 다수의 처리 툴, 다수의 처리 모듈(챔버), 및 다수의 센서를 포함한다. 그래픽 디스플레이는 모든 중요한 파라미터들이 명확하고 논리적으로 디스플레이되도록 조직화되므로, 사용자는 가능한 한 입력하지 않고도 원하는 구성 및 셋업 태스크들을 수행할 수 있다. GUI는 웹-기반이며 웹 브라우저를 이용하여 사용자에게 뷰잉될 수 있다.
Description
본 출원은, 2002년 7월 3일에 출원된 미국 특허 가 출원 번호 제 60/393,091호에 기초하고 그 이익을 주장하며, 그 전문이 본 명세서에 인용참조된다.
본 출원서는 함께 계류중인 2002년 3월 29일에 출원된 "Method for Interaction With Status and Control Apparatus"이라는 제목의 미국 가 출원 번호 제 60/368,162호; 2002년 4월 23일에 출원된 "Method and Apparatus for Simplified System Configuration"이라는 제목의 미국 가 출원 번호 제 60/374,468호; 2000년 5월 29일에 출원된 "Method and Apparatus For Monitoring Tool Performance"이라는 제목의 미국 가 출원 번호 제 60/383,619호; 및 2002년 7월 3일에 출원된 "Method and Apparatus for Automatic Sensor Installation"이라는 제목의 미국 가 출원 번호 제 60/393,04호와 관련된다. 이들 출원서 각각은 본 명세서에서 그 전문이 인용참조된다.
본 발명은, 반도체 처리 시스템, 특히 동적 센서(dynamic sensor)들을 구성하고 사용하도록 그래픽 사용자 인터페이스(GUI)를 사용하는 반도체 처리 시스템에 관한 것이다.
일반적으로, 컴퓨터는 제조 공정을 제어하고, 모니터링하며, 초기화하는데 사용된다. 재진입 웨이퍼 플로우, 중요한 처리 단계, 및 프로세스의 유지보수성으로 인한 반도체 제조 플랜트의 복잡성 때문에, 컴퓨터가 이들 작동에 이상적이다. 프로세스 플로우, 웨이퍼 상태, 및 유지보수 스케쥴을 제어하고 모니터링하는데 다양한 입력/출력(I/O) 디바이스들이 사용된다. 에칭과 같은 중요한 작업들로부터 배치 처리(batch processing)까지의 이들 복잡한 단계들 및 검사들을 완료하기 위해 다양한 툴들이 반도체 제조 플랜트내에 존재한다. 대부분의 툴 설치는, 설치 소프트웨어를 포함하는 제어 컴퓨터의 그래픽 사용자 인터페이스(GUI)의 일부분인 디스플레이 스크린을 사용하여 달성된다.
반도체 처리 설비들은 정기적인 모니터닝을 필요로 한다. 처리 조건들은, 중요한 프로세스 파라미터들의 매우 사소한 변화들이 바람직하지 않은 결과들을 생성함에 따라 시간에 따라 변한다. 에칭 가스의 조성 또는 압력, 프로세스 챔버, 또는 웨이퍼 온도에 있어서의 작은 변화들은 쉽게 발생할 수 있다. 많은 경우에서, 처리 특성의 저하를 반영하는 프로세스 데이터의 변화들은 단순히 디스플레이된 프로세스 데이터를 참조하여서는 검출될 수 없다. 프로세스의 특성 저하 및 비정상을 초기 단계에서 검출하기는 어렵다. 흔히, 고급 프로세스 제어(advanced process control; APC)에 의해 제공되는 예측 및 패턴 인식이 필요하다.
설비 제어는 흔히 다양한 제어기를 구비한 다수의 상이한 제어 시스템들에 의해 수행된다. 몇몇 제어 시스템들은 터치 스크린과 같이 인간 대 기계 인터페이스(man-machine interface)를 가질 수 있는 한편, 그 이외의 제어 시스템들은 온도와 같이 하나의 변수만을 수집하고 디스플레이할 수 있다. 모니터링 시스템은 프로세스 제어 시스템을 위해 제표된(tabulated) 데이터를 수집할 수 있어야만 한다. 모니터링 시스템의 데이터 수집은 단변(univariate) 및 다변(multivariate) 데이터, 상기 데이터의 분석 및 디스플레이를 수반할 수 있고, 수집을 위한 프로세스 변수들을 선택할 수 있어야 한다. 프로세스 내에서의 다양한 조건들은 프로세스 챔버 각각에 제공된 상이한 센서들에 의해 모니터링되며, 그 모니터링된 조건들의 데이터는 제어 컴퓨터로 전송되고 누산(accumulate)된다. 만약, 프로세스 데이터가 자동으로 디스플레이되고 검출되는 경우, 양산 라인의 프로세스 조건들은 통계 프로세스 제어(statistical process control; SPC) 차트들을 통해 설정되고 제어될 수 있다. 비효율적인 설비의 모니터링은 전체 운전 비용을 추가시키는 설비 고장시간(facility downtime)을 생기게 하는 결과를 초래한다.
따라서, 본 발명은 그래픽 사용자 인터페이스(GUI)를 이용하는 반도체 처리 환경에서 동적 센서를 셋업하는 방법을 제공한다. 상기 방법에서, 데이터 수집 플랜(data collection plan)이 실행된다. 데이터 수집 플랜은 동적 센서 셋업 플랜을 결정하는데 사용된다. 동적 센서 셋업 플랜은 동적 센서를 셋업하도록 실행된다.
본 명세서에 통합되고 또한 그 일부분을 구성하는 첨부한 도면들은, 상기에 서술된 개략적인 설명과 그리고 하기에 서술된 실시예들의 상세한 설명과 함께 본 발명의 실시예들을 예시하며, 본 발명의 원리들을 설명하기 위해 제공된다. 특히, 첨부한 도면과 연계하여 이하의 상세한 설명을 참조하면, 본 발명의 실시예들을 보다 완벽하게 이해할 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 고급 프로세스 제어(APC) 반도체 제조 시스템의 개략적 블록도를 도시한다;
도 2는 본 발명의 일 실시예에 따른 반도체 처리 시스템에서 처리 툴들을 모니터링하는 개략적 흐름도를 도시한다;
도 3은 본 발명의 일 실시예에 따른 전략(strategy)들 및 플랜(plan)들에 대한 예시적인 관계도를 도시한다;
도 4는 본 발명의 일 실시예에 따른 전략들 및 플랜들에 대한 예시적인 흐름도를 도시한다;
도 5는 본 발명의 일 실시예에 따른 선택 스크린(Selection screen)의 예시적인 도면을 도시한다;
도 6은 본 발명의 일 실시예에 따른 데이터 수집 플랜 정보 스크린(Data Collection Plan Information screen)의 예시적인 도면을 도시한다;
도 7은 본 발명의 일 실시예에 따른 센서 세팅 스크린(Sensor Setting screen)의 예시적인 도면을 도시한다;
도 8은 본 발명의 일 실시예에 따른 RF 고조파 기반 센서(RF Harmonic based sensor)에 대한 센서 셋업을 정의하는 데이터 수집 플랜의 서브 스크린(sub screen)의 예시적인 도면을 도시한다;
도 9는 본 발명의 일 실시예에 따른 센서 셋업 아이템 스크린(Sensor Setup Item screen)의 또 다른 노광 시간 서브 스크린(Exposure time sub screen)의 예시적인 도면을 도시한다;
도 10은 본 발명의 일 실시예에 따른 파라미터 세이빙 스크린(parameter Saving screen)의 예시적인 도면을 도시한다;
도 11은 본 발명의 일 실시예에 따른 포뮬라 인포 스크린(Formula Info screen)의 예시적인 도면을 도시한다; 및
도 12는 본 발명의 일 실시예에 따른 레시피 셋포인트(recipe setpoint)를 이용하여 동적 필터링을 정의하는데 사용되는 파라미터 수집 인포 스크린(Parameter Collection Info screen)의 예시적인 도면이다.
도 1은 본 발명의 일 실시에에 따른 반도체 제조 환경에서의 APC 시스템의 예시적인 블록도를 도시한다. 예시된 실시예에서, 반도체 제조 환경(100)은 1이상의 반도체 처리 툴(110), 다중 프로세스 모듈(120; PM1 내지 PM4), 상기 툴, 상기 모듈 및 프로세스를 모니터링하는 다중 센서(130), 센서 인터페이스(140), 및 APC 시스템(145)을 포함한다. APC 시스템(145)은 인터페이스 서버(IS; 150), APC 서버(160), 클라이언트 워크스테이션(170), GUI 구성요소(180), 및 데이터베이스(190)를 포함할 수 있다. 일 실시예에서, IS(150)는 "허브(Hub)"로서 뷰잉(view)될 수 있는 실시간 메모리 데이터베이스를 포함할 수 있다.
APC 시스템(145)은 처리 툴, 프로세스 모듈, 및 센서 중 1이상의 성능을 모니터링하는 툴 상태 모니터링 시스템을 포함할 수 있다.
예시된 실시예에서, 4개의 프로세스 모듈(120)을 갖는 단일 툴(110)이 도시되어 있으나, 이는 본 발명에 필수적인 것은 아니다. 툴 상태 모니터링 시스템은 1이상의 프로세스 모듈을 갖는 클러스터 툴을 포함하는 다수의 처리 툴과 인터페이스할 수 있다. 툴 상태 모니터링 시스템은 1이상의 프로세스 모듈을 갖는 클러스터 툴을 포함하는 다수의 처리 툴을 구성하고 모니터링하는데 사용될 수 있다. 예를 들어, 툴 및 그와 관련된 프로세스 모듈은 에칭, 증착, 확산, 세정, 측정, 폴리싱, 현상, 이송(transfer), 저장, 로딩, 언로딩, 정렬, 온도 제어, 리소그래피, 통합된 메트롤로지(integrated metrology; IM), 광 데이터 프로파일링(optical data profilling; ODP), 입자 검출, 및 여타의 반도체 제조 공정을 실행하는데 사용될 수 있다.
일 실시예에서, 처리 툴(110)은 (미도시된) 툴 에이전트(tool agent)를 포함할 수 있는데, 이 툴 에이전트는 상기 툴(110)상에서 런(run)되는 소프트웨어 프로세스일 수 있으며 또한 데이터 획득(data acquisition)을 동기화하는데 사용되는 이벤트 정보(event information), 콘텍스트 정보(context information), 및 시작-정지 타이밍 명령을 툴 프로세스에 제공할 수 있다. 또한, APC 시스템(145)은 툴 에이전트에 커넥션을 제공하는데 사용될 수 있는 소프트웨어 프로세스일 수 있는 에이전트 클라이언트(미도시됨)를 포함할 수 있다. 예를 들어, APC 시스템(145)은 인터넷 또는 인트라넷 커넥션을 통해 처리 툴(110)에 연결될 수 있다.
일 실시예에서, IS(150)는 소켓을 이용하여 통신한다. 예를 들어, 인터페이스는 TCP/IP 소켓 통신을 이용하여 구현될 수 있다. 매 통신 이전에, 소켓이 수립 (establish)된다. 그런 후, 메세지가 문자열(string)로서 보내진다. 메세지가 보내진 후, 소켓은 삭제(cancel)된다.
대안적으로, 인터페이스는 분산 메세지 허브(Distributed Message Hub; DMH) 클라이언트 클래스와 같이 특정한 클래스를 사용하는 C/C++코드, 또는 C/C++프로세스로 확장된 TCL 프로세스로서 구조화될 수 있다. 이 경우, 소켓 커넥션을 통해 프로세스/툴 이벤트들을 수집하는 로직은 IS(150)의 테이블내에 이벤트들 및 콘텍스트 데이터를 삽입하도록 개정(revise)될 수 있다.
툴 에이전트는 이벤트 및 콘텍스트 정보를 툴 상태 모니터링 시스템에 제공하도록 메세지를 전송할 수 있다. 예를 들어, 툴 에이전트는 로트 시작/정지 메세지, 배치 시작/정지 메세지, 웨이퍼 시작/정지 메세지, 레시피 시작/정지 메세지, 및 프로세스 시작/정지 메세지를 보낼 수 있다. 또한, 툴 에이전트는 셋 포인트 데이터(set point data)를 송신 및/또는 수신하고 유지보수 카운터 데이터(maintenance counter data)를 송신 및/또는 수신하는데 사용될 수 있다.
처리 툴이 내부 센서들을 포함하는 경우, 이 데이터는 툴 상태 모니터링 시스템에 보내어질 수 있다. 데이터 파일들은 이 데이터를 전송하는데 사용된다. 예를 들어, 몇몇 처리 툴들은 트레이스 파일(trace file)들이 생성되는 경우 툴에서 압축되는 트레이스 파일들을 생성할 수 있다. 압축된 및/또는 압축되지 않은 파일들이 전송될 수 있다. 트레이스 파일들이 처리 툴에서 생성될 경우, 트레이스 데이터는 종료점 검출(end point detection; EPD) 데이터를 포함하거나 포함하지 않을 수 있다. 트레이스 데이터는 프로세스에 관한 중요한 정보를 제공한다. 트레이스 데이터는 웨이퍼 처리가 완료된 후에 업데이트되고 전송될 수 있다. 트레이스 파일들은 각각의 프로세스에 대해 적절한 디렉토리로 전송된다. 일 실시예에서, 툴 트레이스 데이터, 유지보수 데이터, 및 EPD 데이터는 처리 툴(110)로부터 얻어질 수 있다.
도 1에는, 4개의 프로세스 모듈이 도시되지만 본 발명에 필수적인 것은 아니다. 반도체 처리 시스템은 처리 툴과 관련된 여하한의 수의 프로세스 모듈 및 독립적 프로세스 모듈을 가지는 여하한의 수의 처리 툴을 포함할 수 있다. 툴 상태 모니터링 시스템을 포함하는 APC 시스템(145)은, 처리 툴과 연관된 여하한의 수의 프로세스 모듈 및 독립적 프로세스 모듈을 가지는 여하한의 수의 처리 툴을 구성하고 모니터링하는데 사용될 수 있다. 툴 상태 모니터링 시스템은 처리 툴, 프로세스 모듈, 및 센서를 수반하는 프로세스로부터 데이터를 수집, 제공, 처리, 저장, 및 디스플레이할 수 있다.
프로세스 모듈은 ID, 모듈 형식, 가스 파라미터, 및 유지보수 카운터와 같은 데이터를 이용하여 식별(indentify)될 수 있으며, 이 데이터는 데이터베이스에 세이브될 수 있다. 새로운 프로세스 모듈이 구성되는 경우, 이 데이터 형식은 GUI 구성요소(180)의 모듈 구성 패널/스크린을 이용하여 제공될 수 있다. 예를 들어, APC 시스템은 Tokyo Electron Limited로부터의 다음과 같은 툴 형식: Unity-관련 프로세스 모듈, Trias-관련 프로세스 모듈, Telius-관련 프로세스 모듈, OES-관련 모듈, ODP 관련 모듈을 지원할 수 있다. 대안적으로, APC 시스템은 여타의 툴 및 그와 관련된 프로세스 모듈을 지원할 수 있다. 예를 들어, APC 시스템(145)은 인터넷 또는 인트라넷 커넥션을 통해 프로세스 모듈(120)에 연결될 수 있다.
예시적인 실시예에서, 연관된 프로세스 모듈과 함께 단일 센서(130)가 도시되나, 이는 본 발명에 필수적인 것은 아니다. 여하한의 수의 센서가 프로세스 모듈에 커플링(coupling)될 수 있다. 센서(130)는 ODP 센서, OES 센서, VIP 센서, 아날로그 센서, 및 디지털 프로브(digital probe)를 포함하는 여타의 종류의 반도체 처리 센서를 포함할 수 있다. APC 데이터 관리 어플리케이션은 다양한 센서들로부터 데이터를 수집, 처리, 저장, 디스플레이, 및 출력하는데 사용될 수 있다.
APC 시스템에서, 센서 데이터는 외부 소스와 내부 소스 둘 모두에 의해 제공될 수 있다. 외부 소스는 외부 데이터 리코더 형식을 이용하여 정의될 수 있고; 데이터 리코더 객체(data recorder object)는 각각의 외부 소스에 할당될 수 있으며; 및 상태 변수 표현(state variable representation)이 사용될 수 있다.
센서 구성 정보는 센서 형식 및 센서 인스턴스 파라미터(sensor instance parameter)를 조합한다. 센서 형식은 센서의 기능에 대응하는 범용 용어(generic term)이다. 센서 인스턴스는 특정 프로세스 모듈 및 툴상에서 특정 센서에 대한 센서 형식을 짝지운다(pair). 적어도 하나 이상의 센서 인스턴스가 툴에 부착되는 각각의 물리적 센서(physical sensor)에 대하여 구성된다.
예를 들어, OES 센서는 일 형식의 센서일 수 있고; VI 프로브는 또 다른 형식의 센서일 수 있으며, 아날로그 센서는 상이한 형식의 센서일 수 있다. 또한, 추가 범용 형식(generic type)의 센서들 및 추가 특정 형식의 센서들이 있을 수 있다. 센서 형식은 런 타임에 특정 종류의 센서를 셋업하는데 필요한 모든 변수들을 포함한다. 이들 변수들은 정적(static)이고(이 형식의 모든 센서들은 동일한 값을 가진다), 인스턴스에 의해 구성가능하거나(상기 센서 형식의 각각의 인스턴스는 유일한 값을 가질 수 있다), 또는 데이터 수집 플랜에 의해 동적으로(dynamically) 구성가능하다(센서가 런 타임에 활성화 될 때마다, 상이한 값이 주어질 수 있다).
"인스턴스에 의해 구성가능한(configurable by instance)" 변수는 센서/프로브 IP 어드레스일 수 있다. 이 어드레스 변수는 (각각의 프로세스 챔버에 대해) 인스턴스에 의해 변동하지만 런에서 런으로 변동하지는 않는다. "데이터 수집 플랜에 의해 구성가능한" 변수는 고조파 주파수들의 리스트일 수 있다. 이들은 콘텍스트 정보에 기초하여 각각의 웨이퍼에 대해 상이하게 구성될 수 있다. 예를 들어, 웨이퍼 콘텍스트 정보는 툴 ID, 모듈 ID, 슬롯 ID, 레시피 ID, 카세트 ID, 시작 시간, 및 종료 시간을 포함할 수 있다. 동일한 센서 형식의 많은 인스턴스들이 있을 수 있다. 센서 인스턴스는 하드웨어의 특정 피스(specific piece)에 대응하고 센서 형식을 툴 및/또는 프로세스 모듈 (챔버)에 연결시킨다. 다시 말해, 센서 형식은 범용이고 센서 인스턴스는 특정하다.
도 1에 도시된 바와 같이, 센서 인터페이스(140)는 센서(130)와 APC 시스템(145)간의 인터페이스를 제공하는데 사용될 수 있다. 예를 들어, APC 시스템(145)은 인터넷 또는 인트라넷 커넥션을 통해 센서 인터페이스(140)에 연결될 수 있으며, 상기 센서 인터페이스(140)는 인터넷 또는 인트라넷 커넥션을 통해 센서(130)에 연결될 수 있다. 또한, 센서 인터페이스(140)는 프로토콜 컨버터, 미디어 컨버 터, 및 데이터 버퍼로서 역할할 수 있다. 또한, 센서 인터페이스(140)는 데이터 획득, 피-투-피 통신, 및 I/O 스캐닝과 같은 실시간 기능을 제공할 수 있다. 대안적으로, 센서 인터페이스(140)는 제거될 수 있으며, 상기 센서(130)는 APC 시스템(145)에 직접 커플링될 수 있다.
센서(130)는 정적 또는 동적 센서일 수 있다. 예를 들어, 동적 VI 센서는 데이터 수집 플랜에 의해 제공되는 파라미터들을 이용하여 런 타임에 그것의 그 주파수 범위, 샘플링 주기, 스케일링, 트리거링(triggering), 및 오프셋 정보가 수립되도록 할 수 있다. 센서(130)는 정적 및/또는 동적일 수 있는 아날로그 센서일 수 있다. 예를 들어, 아날로그 센서는 ESC 전압, 매처 파라미터(matcher parameter), 가스 파라미터, 유속, 압력, 온도, RF 파라미터에 대한 데이터, 및 여타의 프로세스 관련 데이터를 제공하는데 사용될 수 있다. 센서(130)는 VIP 프로브, OES 센서, 아날로그 센서, 디지털 센서, 및 반도체 처리 센서들 중 1이상을 포함할 수 있다.
일 실시예에서, 센서 인터페이스는 원 데이터 파일(raw data file)에 데이터 포인트를 기록할 수 있다. 예를 들어, IS(150)는 데이터 획득을 초기화하도록 센서 인터페이스로 시작 명령을 보낼 수 있으며, 상기 파일이 닫히도록 정지 명령을 보낼 수 있다. 그 후, IS(150)는 센서 데이터 파일을 판독 및 파스(parse)하고, 데이터를 처리하며, 인-메모리 데이터 테이블(in-memory data table)에 데이터 값을 포스트(post)할 수 있다.
대안적으로, 센서 인터페이스는 IS(150)에 데이터를 실시간으로 스트리밍할 수 있다. 센서 인터페이스가 디스크에 파일을 기록하도록 하는 스위치가 제공될 수 있다. 또한, 센서 인터페이스는 오프-라인 처리 및 분석을 위해 파일을 판독하고 IS(150)에 데이터 포인트를 스트리밍하는 방법을 제공할 수 있다.
도 1에 도시된 바와 같이, APC 시스템(145)은 데이터베이스(190)를 포함할 수 있다. 툴 상태 모니터링 데이터가 데이터베이스(190)에 저장될 수 있다. 또한, 툴로부터의 원 데이터 및 트레이스 데이터가 데이터베이스(190) 내에 파일로 저장될 수 있다. 데이터량은 사용자에 의해 구성된 데이터 수집 플랜, 및 프로세스들이 수행되고 처리 툴이 런되는 빈도(frequency)에 따라 달라진다. 예를 들어, 데이터 수집 플랜은 어떻게 그리고 언제 툴 상태 데이터를 수집하는지를 결정하도록 수립될 수 있다. 처리 툴, 처리 챔버, 센서, 및 APC 시스템으로부터 얻어진 데이터는 테이블 내에 저장된다.
일 실시예에서, 상기 테이블은 인-메모리 테이블로서 IS(150)에 그리고 지속 스토리지(persistent storage)로서 데이터베이스(190)에 구현될 수 있다. IS(150)는 열과 행 생성을 위해 그리고 데이터를 테이블에 포스트하기 위해 구조화 조회 언어(Structured Query Language; SQL)를 사용할 수 있다. 상기 테이블은 데이터베이스(190) 내의 지속 테이블내에 복사될 수 있으며(즉, DB2가 사용될 수 있으며), 동일한 SQL 문장을 사용하여 파퓰레이티드(populated)될 수 있다.
예시된 실시예에서, IS(150)는 인-메모리 실시간 데이터베이스와 서브스크립션 서버(subscription server) 둘 모두일 수 있다. 예를 들어, 클라이언트 프로세스는 관계적 데이터 테이블(relation data table)의 친숙한 프로그래밍 모델을 가지는 SQL을 사용하여 데이터베이스 기능을 수행할 수 있다. 또한, 그 선택 기준 (selection criteria)을 충족하는 데이터가 삽입되고 업데이트되거나 또는 삭제될 때마다, 클라이언트 소프트웨어가 비동기식 통지(asynchronous notification)를 수신하는 경우 IS(150)는 데이터 서브스크립션 서비스를 제공할 수 있다. 서브스크립션은 SQL 선택 문장을 충분히 사용하여 퓨처 데이터 변경 통지를 필터링하기 위해 어떤 테이블 열이 중요하고 어떤 행 선택 기준이 사용되는지를 특정(specify)한다.
IS(150)가 데이터베이스와 서브스크립션 서버 둘 모두이기 때문에, 클라이언트는 서브스크립션이 초기화되는 경우 기존의 테이블 데이터에 "동기식" 서브스크립션을 열 수 있다. IS(150)는 퍼블리시/서브스크라이브 메커니즘(publish/subscribe mechanism), 인-메모리 데이터 테이블, 및 시스템을 통해 이벤트 및 알람을 정렬(marshal)하는 감독 로직(supervisory losic)을 통해 데이터 동기화를 제공한다. IS(150)는 소켓, UDP, 및 퍼블리시/스크라이브를 포함하는 기술에 기초하여 여러개의 메세징 TCP/IP를 제공한다.
예를 들어, IS(150) 아키텍처는 실시간 데이터 관리 및 서브스크립션 기능을 제공할 수 있는 다중 데이터 허브(즉, SQL 데이터베이스)를 사용할 수 있다. 어플리케이션 모듈 및 사용자 인터페이스는 SQL 메세지를 사용하여 데이터 허브(들)내의 정보에 접근하고 업데이트한다. 관련적 데이터베이스에 런 타임 데이터를 포스트하는 것과 연관된 성능 한계로 인해, 런 타임 데이터는 IS(150)에 의해 관리되는 인-메모리 데이터 테이블에 포스트된다. 이들 테이블의 콘텐츠는 웨이퍼 처리의 종료 시 관련적 데이터베이스에 포스트될 수 있다.
도 1에 도시된 예시적인 실시예에서는, 단일 클라이언트 워크스테이션(170) 이 도시되었지만, 이는 본 발명에 필수적인 것은 아니다. APC 시스템(145)은 복수의 클라이언트 워크스테이션(170)을 지원할 수 있다. 일 실시예에서, 클라이언트 워크스테이션(170)은 사용자가 구성 절차를 수행하고; 툴, 챔버, 및 센서 상태를 포함하는 상태를 뷰잉하며; 프로세스 상태를 뷰잉하고; 히스토리 데이터를 뷰잉하며; 및 모델링과 차팅(charting) 기능을 수행할 수 있다.
도 1에 도시된 예시적인 실시예에서, APC 시스템(145)은 IS(150), 클라이언트 워크스테이션(170), GUI 구성요소(180), 및 데이터베이스(190)에 커플링될 수 있는 APC 서버(160)를 포함할 수 있으나, 이는 본 발명에 필수적인 것은 아니다. APC 서버(160)는 1이상의 툴-관련 어플리케이션, 1이상의 모듈-관련 어플리케이션, 1이상의 센서-관련 어플리케이션, 1이상의 IS-관련 어플리케이션, 1이상의 데이터베이스-관련 어플리케이션, 및 1이상의 GUI-관련 어플리케이션을 포함하는 다수의 어플리케이션을 포함할 수 있다. 또한, APC 서버는 다수의 툴 상태 모니터링 시스템 어플리케이션을 포함할 수 있다.
APC 서버(160)는 1이상의 컴퓨터 및 소프트웨어를 포함할 수 있는데, 이는 다중 프로세스 툴을 지원하고; 툴, 프로세스 모듈, 센서, 및 프로브로부터 데이터를 수집하고 동기화하며; 데이터베이스에 데이터를 저장하고, 사용자가 기존 차트를 뷰잉할 수 있게 하며; 오류 검출(fault dectection)을 제공한다. 예를 들어, APC 서버(160)는 Tokyo Electron의 Ingenio 소프트웨어와 같은 운영 소프트웨어를 포함할 수 있다. APC 서버는, 온라인 시스템 구성, 온라인 로트-대-로트 오류 검출, 온라인 웨이퍼-대-웨이퍼 오류 검출, 온라인 데이터 베이스 관리를 허용하고, 히스토리 데이터(historical data)에 기초한 모델들을 이용하여 요약 데이터(summary data)의 다변 분석을 수행한다. 또한, 툴 상태 모니터링 시스템은 처리 툴의 실시간 모니터링을 허용한다.
예를 들어, APC 서버(160)는 최소 3GB 이용가능한 디스크 공간; 적어도 600MHz CPU(듀얼 프로세서); 최소 512Mb RAM(물리적 메모리); RAID 5 구성의 9 GB SCSI 하드 드라이브; 상기 RAM 크기의 두배인 최소 디스크 캐시; Windows 2000 서버 소프트웨어 설치; Microsoft Internet Explore; TCP/IP 네트워크 프로토콜; 및 2이상의 네트워크 카드를 포함할 수 있다.
APC 시스템(145)은 센서로부터의 원 데이터를 포함하는 파일들 및 툴로부터의 트레이스 데이터를 포함하는 파일들을 저장하는 1이상의 저장 디바이스를 포함할 수 있다. 이들 파일들이 적절히 관리되지(즉, 정기적으로 삭제되지) 않는 경우, 저장 디바이스는 디스크 공간이 꽉 찰 수 있고 새로운 데이터를 수집하지 못할 수 있다. APC 시스템(145)은 사용자가 구 파일(older file)들을 삭제하도록 하는 데이터 관리 어플리케이션을 포함할 수 있게 함에 따라 디스크 공간이 여유로워, 중단(interruption) 없이 데이터 수집을 계속할 수 있다. APC 시스템(145)은 시스템을 운영하는데 사용되는 복수의 테이블을 포함할 수 있으며, 이들 테이블은 데이터베이스(190)에 저장된다. 또한, 온-사이트 또는 오프-사이트 컴퓨터/워크스테이션 및/또는 호스트와 같은 다른 컴퓨터(미도시됨)가, 1개 또는 다수의 툴에 대해 데이터/차트 뷰잉, SPC 차팅, EPD 분석, 파일 어세스와 같은 기능들을 제공하도록 네트워크될 수 있다.
도 1에 도시된 바와 같이, APC 시스템(145)은 GUI 구성요소(180)를 포함할 수 있다. 예를 들어, GUI 구성요소는 APC 서버(160), 클라이언트 워크스테이션(170), 및 툴(110)에 관한 어플리케이션으로서 런될 수 있다.
GUI 구성요소(180)는, APC 시스템 사용자가 가능한 한 입력하지 않으면서 원하는 구성, 데이터 수집, 모니터링, 모델링, 및 장애 추적 태스크(troubleshooting task)을 실행할 수 있게 한다. GUI 설계는 SEMI Human Interface Standard for Semiconductor Manufacturing Equipment(SEMI Draft Doc. #2783B) 및 SEMATECH Strategic Cell Controller(SCC) User-Interface Style Guide 1.0(Technology Transfer 92061179A-ENG)에 따른다. 당업자라면, GUI 패널/스크린이 좌→우 선택 탭 구조 및/또는 우→좌 구조, 바닥→최상(bottom-to-top) 구조, 최상→바닥 구조, 또는 조합 구조를 포함할 수 있다는 것을 이해할 수 있을 것이다.
또한, 예시를 위해 도시된 스크린이 영어 버전으로 되어 있지만, 이는 본 발명에 요구되는 것은 아니며 다른 언어들이 사용될 수 있다. 예를 들어, 일어 스크린, 중국어 스크린, 대만어 스크린, 한국어 스크린, 독일어 스크린, 및 불어 스크린이 사용될 수 있다.
또한, GUI 구성요소(180)는 툴 상태 모니터링 시스템과 사용자간의 상호작용 수단을 제공한다. GUI가 시작되면, 사용자 ID 및 패스워드를 정당화(validate)하는 로그온 스크린이 디스플레이될 수 있으며, 이는 첫번째 레벨의 보안을 제공한다. 사용자가 로그온 하기 이전에 보안 어플리케이션(security application)을 이용하여 등록(register)될 수 있는 것이 바람직하다. 사용자 ID의 데이터베이스 체크는 이용가능한 GUI 기능들을 스트리밍하게 할 허가 레벨(authorization level)을 나타낸다. 사용자에게 허가되지 않은 선택 아이템들은 상이할 수 있으며 이용할 수 없다. 또한, 보안 시스템은 사용자로 하여금 기존의 패스워드를 변경할 수 있게 한다. 예를 들어, 로그온 패널/스크린은 넷스케이프 또는 인터넷 익스플로러와 같은 브라우저 툴로부터 열릴 수 있다. 사용자는 사용자 ID 및 패스워드를 로그온 필드에 입력할 수 있다.
허가된 사용자 및 관리자는 시스템 구성 및 센서 셋업 파라미터를 수정하기 위해 GUI 패널/스크린을 사용할 수 있다. GUI 구성요소(180)는 사용자가 처리 툴, 처리 모듈, 센서, 및 APC 시스템을 구성하는 구성 구성요소(configuration component)를 포함할 수 있다. 예를 들어, GUI 구성 패널/스크린은 처리 툴, 처리 모듈, 센서, 센서 인스턴스, 모듈 중지, 및 알람 중 1이상에 대해 제공될 수 있다. 구성 데이터는 속성 데이터베이스 테이블(attribute database table)에 저장될 수 있으며 설치 시 디폴트로 셋업될 수 있다.
GUI 구성요소(180)는 처리 툴, 처리 모듈, 센서, 및 APC 시스템에 대해 현 상태를 디스플레이하는 상태 구성요소를 포함할 수 있다. 또한, 상태 구성요소는 1이상의 상이한 형식의 차트를 이용하여 사용자에게 시스템-관련 및 프로세스-관련 데이터를 제시하는 차팅 구성요소를 포함할 수 있다.
또한, GUI 구성요소(180)는 실시간 운영 구성요소를 포함할 수 있다. 예를 들어, GUI 구성요소는 배경 태스크(background task)와 커플링될 수 있으며, 공유 시스템 로직은 배경 태스크와 GUI 구성요소 둘 모두에 의해 사용되는 공통 기능성 (common functionality)을 제공할 수 있다. 공유 로직은 GUI 구성요소로 복귀된 값이 배경 태스크로의 복귀되는 값과 동일함을 보증하는데 사용될 수 있다. 더욱이, GUI 구성요소(180)는 APC 파일 관리 GUI 구성요소 및 보안 구성요소를 포함할 수 있다. 또한, 도움말 패널/스크린도 이용가능하다. 예를 들어, 도움말 파일들은 PDF(Portable Document Format) 및/또는 HTML 포맷으로 제공된다.
도 1에 도시된 바와 같이, 툴 상태 모니터링 시스템을 포함하는 APC 시스템(145)은 팩토리 시스템(factory system; 105) 및/또는 E-진단 시스템(E-Diagnostics system; 115)에 커플링될 수 있다. 팩토리 시스템(105) 및/또는 E-진단 시스템(115)은 반도체 처리 시스템의 툴, 모듈, 센서, 및 프로세스를 외부에서 모니터링하고 외부에서 제어하는 수단을 포함할 수 있다. 대안적으로, 팩토리 시스템(105) 및/또는 E-진단 시스템(115)은 툴 상태 모니터링을 수행할 수 있다. 예를 들어, 사용자는 팩토리 시스템(105) 및/또는 E-진단 시스템(115)을 통해 반도체 처리 시스템에 커플링되는 웹 기반 단말기(web based terminal)를 이용하여 툴 상태 모니터링 시스템에 접근할 수 있다.
또한, APC 시스템 및 E-진단 시스템은 문제들을 실시간으로 해결하기 위해 함께 작동할 수 있다. 예를 들어, APC 시스템(145)이 오류를 검출한 경우, 그 문제를 진단하는데 필요한 정보는 APC 서버에 의해 번들(bundle)되고, E-진단 시스템으로 전송되거나, 또는 이후에 E-진단 시스템에 의한 접근을 위해 저장될 수 있다. 운영 방법은 보안 제약(security constrain) 및/또는 고객 비즈니스 룰을 이용하여 결정될 수 있다.
또한, APC는 센서를 추가하고, 구동된 콘텍스트 및/또는 이벤트(context and/or event)인 데이터 수집 플랜을 편집하는 수단을 포함한다. 예를 들어, 이는 E-진단 "프로브들" 및/또는 소프트웨어 구성요소들이 E-진단 시스템에 다운로드되게 하여 상기 시스템을 장애 추적할 수 있다. E-진단 시스템은, 문제를 진단, 검출 및/또는 예측하는데 사용될 수 있는 추가 데이터를 제공할 수 있는, 이식성 세트(portable set)의 진단 툴들을 포함할 수 있다. 예를 들어, APC 시스템은 추가 센서들로서 이들 진단 툴들을 사용할 수 있다. 최하 레벨로서 아날로그 입력을 포함하여 다중 프로토콜을 지원하는 일반적인 센서 인터페이스로, 로컬 이식성 진단 유닛(local portable diagnostic unit)이 팩토리 시스템에 커플링된 후 APC 시스템, E-진단 시스템 및/또는 팩토리 시스템에 의해 원격으로 사용될 수 있다.
APC 시스템에는 팩토리에서 원격으로 개발되고 팩토리 또는 E-진단 시스템으로부터 다운로드된 새로운 어플리케이션이 제공될 수 있다. 예를 들어, 새로운 어플리케이션은 APC 서버에 로컬로 상주(reside)할 수 있다. APC 시스템은, 새로운 절차를 습득하고, 센서들 및 어플리케이션들을 동적으로 추가하며, 심지어는 커스텀(custom) 센서에 대한 GUI 스크린을 추가하는 능력을 가진다. 나아가, APC 시스템은, 툴 및/또는 모듈이 기능불량(malfunction)인 경우(즉, 모터 또는 액츄에이터 아암 위치에 대한 웨이퍼 핸들링 시스템 문제)를 해결하기 위해 타이밍 분석 할당과 같은 매우 특별한 절차를 실행할 수 있다.
또한, APC 시스템은 툴 성능에 기초하여 샘플링 속도를 변경할 수 있다. 예를 들어, 데이터 수집 샘플링 속도 및 분석량은 툴 헬스(tool health)에 기초하여 변경될 수 있다. 또한, APC 시스템은 문제를 예측하거나 또는 툴 및/또는 모듈이 한계 조건 부근에서 런되고 있는지를 검출할 수 있다.
또한, 고급 사용자 및 관리자는 GUI 스크린을 사용하여, 시스템 구성 및 센서 셋업 파라미터들을 수정하고; 툴-관련 전략들 및 플랜들을 생성 및 편집; 및/또는 툴 및 모듈의 수를 수정할 수 있다.
툴 상태 모니터링 시스템은 고객(최종 사용자)가 처리 툴, 프로세스 모듈 및/또는 센서들을 추가할 수 있는 구성가능한 시스템을 사용하여 구현된다. 툴 상태 모니터링 시스템은 개발 환경, 및 고객이 상기 환경 내에서 모니터링 소프트웨어를 개별화(customize)하고, 분석 어플리케이션을 추가하며, 및/또는 새로운 툴, 모듈, 및 센서를 설치하고 모니터링할 수 있는 메트롤로지를 제공한다.
툴 상태 모니터링 시스템 소프트웨어 아키텍처는 4개의 기능성 구성요소: 데이터 획득 구성요소, 메세징 시스템 구성요소, 관련적 데이터베이스 구성요소, 및 포스트-처리(post-processing) 구성요소를 포함한다. 또한, 상기 아키텍처는 런-타임 데이터 획득 파라미터들을 저장하는데 사용되는 인-메모리 데이터 테이블을 포함한다. 툴 상태 모니터링 시스템 외부에 있는 것은 툴 및 툴 에이전트이며, 상기 툴 에이전트는 툴 프로세스와 데이터 획득을 동기화하는데 사용되는 시작-정지 타이밍 명령 및 콘텍스트 정보를 제공한다.
데이터 획득 구성요소는 데이터 포인트들, 이른바 파라미터들을 수집하고 파일에 그것들을 기록한다. 메세징 시스템은 데이터 획득 구성요소로부터 수신된 런-타임 데이터의 임시 저장을 위해 인-메모리 데이터 테이블을 이용한다. 메세징 시스템은 에이전트 및/또는 툴 클라이언트에 의한 데이터 획득 주기의 시작 및 종료를 통지한다. 데이터 획득 주기의 종료 시, 상기 데이터는 관련적 데이터베이스에 포스트되고 인-메모리 데이터 테이블은 다음 획득 주기를 위해 클리어(clear)된다. 메세징 시스템에 의해 공급된 데이터의 포스트 처리는 런-타임에 수행되고; 관련적 데이터베이스에 저장된 상기 데이터의 포스트 처리는 오프-라인으로 수행된다.
툴 상태 모니터링 시스템의 목적은 실시간 그리고 히스토리 데이터를 사용하여 반도체 처리 시스템의 성능을 개선시키는 것이다. 이 목적을 달성하기 위해, 여러가지 잠재 문제들이 예측될 수 있고 상기 문제들이 생기기 이전에 보정될 수 있으며, 따라서 장비 고장시간 및 생산되는 비-제품 웨이퍼(non-product wafer)의 수를 감소시킬 수 있다. 이는 데이터를 수집한 다음 그 데이터를 특정 툴의 동작(behavior)을 모델링하는 소프트웨어 알고리즘으로 공급(feeding)하여 달성될 수 있다. 툴 상태 모니터링 시스템은 프로세스 파라메트릭 적응값(process parametric adaption)들을 출력하는데, 그 후 이 적응값들은 특정 한계내에서 툴 성능을 유지하기 위해 피드 포워드되거나 피드 백된다. 이 제어는 상이한 레벨들에서 상이한 형식들로 달성될 수 있다.
툴 상태 모니터링 시스템의 알람 관리부는 오류 검출 알고리즘, 오류 분류 알고리즘, 및/또는 오류 예상(fault forecasting) 알고리즘을 제공할 수 있다. 툴 상태 모니터링 시스템은 툴이 언제 기능불량 되는지를 예측할 수 있고 또한 가능한 솔루션을 식별할 수 있어, 기능불량을 보정하고 유지보수 및 처리 기능 도중에 생산된 비-제품 웨이퍼의 수를 감소시킬 수 있다.
동적 센서 어플리케이션은 사용자에게 동적 센서가 데이터를 수집하고 있는지를 결정할 수 있는 능력을 제공한다. 데이터 수집 플랜이 동적 센서로부터 데이터를 요구하지 않는다면, 센서 상태 스테이트(sensor status state)는 사용자에게 이 센서가 온(on)이라고 기대되지 않는 표시를 제공한다. 예를 들어, 데이터 수집 플랜이 데이터를 요구하지 않는 경우 센서 상태는 "온-라인 오프(on-line off)"이어야 하고, 사용자가 시스템 레벨에서 센서를 디스에이블(disable)한 경우, 상기 상태는 "오프-라인 오프(off-line off)"이어야 한다.
동적 센서에 대한 인터페이스는 고장(failure) 및 서비스 관련 중단(service related disruption)에 대해 저항성이 있다. 또한, 상기 인터페이스는 셋업 및 고장 추적 능력을 제공한다. 예를 들어, 중단이 발생한 경우, 동적 센서 및/또는 APC 시스템은 중단을 검출하고 로깅, 알람, 및 자동 복구/분석을 초기화하여 올바른 작동을 결정하고 기능성의 손실을 최소화한다. 이 방식으로, 동적 센서 및/또는 APC 시스템이 감소된 기능성을 가지고 작동하는 동안에 제품을 생산하는 고객에 대한 위험이 감소될 수 있다.
또한, 동적 센서 어플리케이션은 서비스/유지보수 모드시 작동할 수 있다. 장애 추적 센서 통신의 목적을 위해, 동적 센서는 웨이퍼를 진행시키지 않고 테스트될 수 있다. 예를 들어, 동적 센서는 WEB 기반 GUI로부터 셋업, 시작, 및 정지될 수 있다. 상기 특징은 센서 셋업 및 루틴 센서 유지보수시에 통상적으로 사용될 수 있다.
APC 시스템은 고객(최종 사용자)이 툴, 챔버, 및 센서를 추가할 수 있는 구 성가능한 시스템을 이용하여 구현된다. APC 시스템은 고객이 분석 어플리케이션을 추가하고 상기 시스템내에 새로운 동적 센서를 설치하도록 동적 센서 어플리케이션을 개별화할 수 있는 개발 환경 및 방법론을 제공한다.
APC 시스템은 오류 검출 알고리즘, 오류 분류 알고리즘, 및 오류 예상 알고리즘을 제공한다. APC 시스템은 동적 센서가 언제 기능불량이 되는지를 예측할 수 있고, 가능한 솔루션을 식별할 수 있어, 기능불량을 보정하고 또한 프로세스 관련된 것이 아니라 센서 고장 또는 유효하지 않은 센서 세팅으로 인해 거짓 알람(false alarm)을 선언(declare)하는 기회를 감소시킨다.
오류 예상은 오류 검출 및 고장 모델링의 조합이다. 이 방법은 동적 센서와 같은 소모성 부품의 교체를 최적화하는데 사용될 수 있으며, 이는 생산시 일시중단(lull)이 있는 경우에 예방 유지보수 작업의 "기회주의적 스케쥴링(opportunistic scheduling)"을 용이하게 하도록 의도된다. 오류 예상은 복잡한 다변 모델 또는 단순한 단변 관계 중 어느 하나에 기초할 수 있다.
도 2는 본 발명의 일 실시예에 따른 반도체 처리 시스템에서의 처리 툴을 모니터링하는 개략적인 흐름도를 도시한다. 소프트웨어 및 관련 GUI 스크린은 상기 시스템내의 1이상의 처리 툴을 모니터링하는 절차를 제공한다. 이 흐름도는 모니터링 프로세스에서 실행되는 예시적인 제어 전략 절차(Control Stategy procedure)를 예시한다. 절차 200은 단계 210에서 시작한다.
절차 200은 반도체 처리 시스템내의 처리 툴에 의해 수행되는 각 생산 단계에 대해 수행될 수 있다. 생산 단계는 에칭 공정, 증착 공정, 확산 공정, 세정 공 정, 측정 공정, 이송 공정, 또는 나머지 다른 반도체 제조 공정이다. 전략들은 한 세트의 시퀀스(a set of sequence) 도중에 처리 툴상에서 무슨 일이 발생하는지를 정의한다. 전략들은 단일 웨이퍼, 단일 툴, 단일 로트, 또는 툴 액티비티(tool activity)의 조합에 대해 한 세트의 시퀀스를 정의할 수 있다. 전략은 처리 액티비티, 측정 액티비티, 프리-컨디셔닝 액티비티(pre-conditioning activities), 전-측정 액티비티, 및 후-측정 액티비티의 조합을 포함할 수 있다. 전략내의 각 부분(액티비티들의 그룹)을 플랜이라 한다.
전략들은 콘텍스트와 연관된다. 콘텍스트 정보는 주어진 작동을 또 다른 작동과 연관시키는데 사용된다. 특히, 콘텍스트 정보는 프로세스 단계 또는 레시피를 1이상의 전략 및 그와 관련된 데이터 수집 플랜과 매칭시키는데 사용된다.
단계 220에서, 데이터 수집 (제어) 전략은 프로세스 콘텍스트에 기초하여 결정되고 실행된다. 상기 프로세스 콘텍스트는 생산 단계가 수행되고 툴이 모니터링되는 것에 따라 달라질 수 있다. 상기 콘텍스트는 어떤 전략 및/또는 플랜이 특정 프로세스 레시피에 대해 실행되는지를 결정한다. 예를 들어, 제어 전략을 "건식 세정(Dryclean)"과 같은 프로세스 형식과 연관시키기 위하여, 상기 전략에 대한 콘텍스트는 "건식 세정"이라는 콘텍스트 용어를 포함하여야만 한다.
데이터 수집 (제어) 전략은 플랜들의 홀더일 수 있다. 제어 전략 및 그 연관된 플랜들은 어떤 동적 센서들이 사용되고, 어떻게 동적 센서들이 구성되며, 어떤 데이터가 수집되고, 어떻게 상기 데이터가 전처리되는지를 "제어한다".
일 실시예에서, 프로세스 콘텍스트는 제어 전략들과 비교될 수 있다. 예를 들어, APC 서버(160)(도 1)는 "프로세스 시작" 이벤트가 발생하는 경우에 문자열로서 현 프로세스 콘텍스트를 획득한다. 상기 프로세스 콘텍스트는 제어 전략들과 비교될 수 있으며, 그 후 적절한 전략이 식별될 수 있다.
이 프로세스에서, 검색 순서가 중요할 수 있다. 예를 들어, GUI 테이블의 우선순위 순서를 이용하여 검색이 실행될 수 있다. 검색은 구조화 조회 언어(SQL) 문장들을 사용하여 구현될 수 있다. 일단, 전략이 식별되면, 데이터 수집 플랜, 데이터 전처리 플랜, 및 판단 플랜(judgment plan)이 자동으로 결정되고, 동적 센서 셋업 플랜 또한 결정된다. 데이터 수집 플랜 ID, 데이터 전처리 플랜 ID, 판단 플랜 ID는 "제어 전략을 실행한다"는 모듈로 보내진다.
런 콘텍스트에 매칭하는 다중 제어 전략들이 있을 수 있으나, 1개의 제어 전략만이 특정 처리 모듈에 대하여 특정 시간에 실행된다. 사용자는 전략들을 리스트상에서 위 또는 아래로 이동시켜 특정 콘텍스트 내의 전략에서의 순서를 결정한다. 전략이 선택될 시간이 되면, 소프트웨어는 리스트의 최상부에서 시작하여 그것이 콘텍스트에 의해 결정된 요건들에 매칭하는 제1전략을 찾아낼 때까지 리스트 아래로 진행된다.
콘텍스트-기반 실행을 이용하는 한가지 방법은, 콘텍스트 매칭을 가능하게 하는 것이다. 예를 들어, 콘텍스트 매칭을 실행하는 경우, 현재 처리되고 있는 웨이퍼의 콘텍스트가 사용될 수 있다. 대안적으로, 현재 처리되고 있는 기판 또는 여타의 반도체 제품의 콘텍스트가 사용될 수 있다. 콘텍스트가 결정되는 경우, 이는 제어 전략의 콘텍스트와 비교될 수 있다. 콘텍스트가 매칭되는 경우, 1이상의 제어 전략이 실행될 수 있다.
콘텍스트는 콘텍스트 요소의 조합에 의해 정의될 수 있다. 예를 들어, 콘텍스트는 미리결정된 순서로 된 콘텍스트 요소의 어레이일 수 있거나, 또는 콘텍스트는 사전 형식으로 된 한 세트의 이름 값(name-value)의 쌍일 수 있다.
제어 전략을 선택하고 실행하는데 사용되는 콘텍스트 요소들은 툴 Id, 레시피 Id, 로트 Id, 및 재료 Id를 포함할 수 있다. 또한, 다음과 같은 요소: 카세트 Id, 프로세스 모듈 Id, 슬롯 Id, 레시피 시작 시간, 레시피 정지 시간, 유지보수 카운터 값, 및/또는 제품 Id가 사용될 수 있으며, 이는 처리될 제품의 종류를 특정한다.
제어 전략이 실행되는 경우, 데이터 수집 플랜이 식별될 수 있으며, 데이터 전처리 플랜이 식별될 수 있고, 판단 플랜이 식별될 수 있다. 전략 및 플랜의 예시적인 관계도는 도 3에 도시되어 있다. 예를 들어, 콘텍스트-매칭 실행 소프트웨어 모듈은 제어 전략의 동적 셋업 및 기동(invocation)을 허용하는데 사용될 수 있다. 한가지 경우에서, 웨이퍼-인 이벤트는 현 콘텍스트 데이터를 룩업(look up)하기 위해 시스템 제어기를 트리거링하고, 어떤 전략이 런되는지를 결정하며, 그와 연관된 플랜을 결정하도록 대응하는 스크립트(script)를 기동할 수 있다.
단계 230에서는, 제어 전략과 연관된 플랜들이 실행될 수 있다. 데이터 수집 플랜, 데이터 전처리 플랜, 및 판단 플랜 중 1이상이 실행될 수 있다. 또한, 동적 센서 셋업 플랜, 파라미터 세이브 플랜, 셋 포인트 계산 플랜 및/또는 트림 플랜(trim plan)이 사용될 수 있다.
고품질 제품을 산출하는 생산 런 중에 수집된 데이터는 "양호한 센서 상태" 데이터를 수립하는데 사용될 수 있으며, 후속하여 수집된 데이터는 동적 센서가 실시간으로 올바르게 수행하고 있는지를 결정하는 베이스라인 데이터와 비교될 수 있다.
예를 들어, 데이터 수집 (제어) 전략은 품질 제어(Quality Control; QC) 테스팅의 일부분으로서 동적 센서 상태를 결정하도록 수립될 수 있다. QC 제어 전략 및 그와 연관된 플랜들은, 동적 센서가 적절히 작동되고 있다는 것을 보장하기 위해, 또는 처리 툴이 적절히 작동하고 있다는 것을 입증하도록 동적 센서들이 셋업되는 것을 보장하기 위해 실행될 수 있다. QC 제어 전략 및 그와 연관된 플랜들은 정해진 시간에 또는 사용자가 그것을 스케쥴링하는 때에 실행될 수 있다. QC 제어 전략 및 그와 연관된 플랜들이 실행되고 있는 경우, 동적 센서들은 진단 웨이퍼 데이터가 수집될 수 있도록 셋업될 수 있다. 예를 들어, 진단, 더미(dummy), 제품 또는 테스트 웨이퍼가 처리될 수 있으며, 콘텍스트는 툴, 모듈, 또는 센서 진단일 수 있다.
QC 데이터 수집 (제어) 전략 및 그와 연관된 플랜들은 시즈닝 관련 프로세스(seasoning-related process)와 같은 프로세스 모듈 준비 프로세스에 대해 수립될 수 있다. 예를 들어, 세정 공정(즉, 습식 세정) 후에, 다수의 더미 웨이퍼들은 동적 센서를 셋업하는 것을 포함할 수 있는 시즈닝 관련 전략, 플랜, 레시피를 이용하여 처리될 수 있다. 사용자는 APC 시스템의 일부분인 전략 및 플랜을 사용할 수 있거나, 또는 APC 시스템을 이용하여 새로운 시즈닝-관련 제어 전략을 용이하고 신 속하게 개발할 수 있다. 사용자는 시즈닝 레시피가 최적의 검출 능력(detection power) 가지는지를 결정하기 위해 한 세트의 상이한 시즈닝 데이터 수집 플랜 및 동적 센서를 시도할 수도 있다. 이들 시즈닝 런으로부터의 데이터는 프로세스 및 툴 모델링을 더욱 개선하는데 사용될 수 있다.
데이터 수집 플랜이 실행되는 경우에, 동적 센서들이 셋업된다. 데이터 수집 플랜은 센서 셋업 플랜을 포함할 수 있다. 예를 들어, 센서에 대한 시작 및 정지 시간은 센서 셋업 플랜에 의해 결정될 수 있다. 동적 센서에 의해 요구되는 동적 변수들은 센서 셋업 플랜에 의해 결정될 수 있다. 레시피 시작 이벤트는 센서에게 리코딩을 시작하라고 지시하는데 사용될 수 있다. 웨이퍼-인 이벤트는 센서를 셋업하는데 사용될 수 있다. 레시피 정지 이벤트 또는 웨이퍼-아웃 이벤트는 센서에게 리코딩을 정지하라고 지시하는데 사용될 수 있다. 상이한 센서들이 사용될 수 있으며, 상이한 데이터가 제품 웨이퍼들 및 비-제품 웨이퍼들에 대해 수집될 수 있다.
또한, 데이터 수집 플랜(Data Collection Plan)은 기대되는 관측 파라미터들이 스파이크 카운팅(spike counting), 스텝 트리밍(step trimming), 값 임계치, 값 클립 한계(value clip limits)에 대해 어떻게 처리되는지를 수립하는 데이터 전처리 플랜(Data Preprocessing Plan)을 포함한다.
데이터 전처리 플랜이 실행되는 경우, 타임 시리즈 데이터(time series data)가 원 데이터 파일로부터 생성될 수 있으며 데이터베이스 내에 세이브될 수 있고; 웨이퍼 요약 데이터(wafer summary data)는 타임 시리즈 데이터로부터 생성될 수 있으며; 로트 요약 데이터는 이 웨이퍼 데이터로부터 생성될 수 있다. 데이터 수집은 웨이퍼가 처리되고 있는 동안에 실행될 수 있다. 웨이퍼가 이 처리 단계를 벗어난 경우, 데이터 전처리 플랜이 실행될 수 있다.
데이터 수집 플랜은 원하는 데이터를 수집하도록 사용자에 의해 구성된 재사용가능한 엔티티(reusable entity)일 수 있다. 센서 플랜은 1이상의 별도의 모듈에 관해 1이상의 센서의 구성으로 이루어져 있다. 또한, 상기 플랜은 연관된 센서들에 의해 수집되어야 하는 데이터 아이템들의 선택을 포함하며, 이들 중 어떤 데이터 아이템들은 세이브되어야 한다.
동적 센서는, 디바이스, 기구, 챔버 형식, 또는 관측 데이터를 수집하거나 소프트웨어 셋업 상호작용을 필요로 하거나, 그것이 센서인 경우와 마찬가지로 시스템 소프트웨어에 의해 핸들링될 수 있는 여타의 엔티티일 수 있다. 예를 들어, 처리 툴들 및 프로세스 모듈들(챔버들)은 그것들이 데이터 수집 플랜에서의 센서인 경우와 마찬가지로 취급될 수 있다. 센서 상태는 툴 상태 스크린, 챔버 상태 스크린, 및/또는 센서 상태 스크린을 이용하여 기록될 수 있다. 센서 스테이트 정보는 사용자에게 제공될 수 있다. 예를 들어, 센서 스테이트는: (디스에이블된) 오프-라인; 및 (리코딩, 아이들, 에러, 선택되지 않은) 온-라인을 포함할 수 있다. 센서가 온-라인에서 오프-라인으로 진행하는 경우, 사용자에게 통지될 수 있다.
동일한 센서 형식의 몇몇 인스턴스가 동시에 처리 시스템 내에 설치될 수 있다. 사용자는 각 데이터 수집 플랜을 위해 사용할 특정 센서 또는 센서들을 선택할 수 있다.
APC 시스템은 주어진 데이터 수집 플랜에 대한 데이터베이스로부터 센서들에 대한 셋업을 판독하거나 셋업시 정의된 파라미터들을 사용한다. 동적 센서 구성 소프트웨어가 센서를 셋업하는데 실패한 경우, 상기 소프트웨어는 센서가 런에 대한 디폴트 오프 스테이트(default off state) 내에 있다고 가정한다. 이는 DC 플랜이 센서가 오프일 것을 요구하는 것과 마찬가지의 동일한 행위이다. 동적 센서 구성 소프트웨어는 오프 스테이트에서 동적 센서와 함께 행해진 프로세스 단계들에 대해 알람을 설정한다.
APC 시스템은 몇가지 상이한 형식의 툴틀 및 그 연관된 동적 센서들을 모니터링하도록 설계된 전략 및 플랜을 포함할 수 있다. 예를 들어, APC 시스템은 상이한 방식들로 작동되는 동적 센서들과 인터페이스할 수 있다. 예를 들어, 동적 센서가 실시간으로 데이터를 보내면, APC 시스템은 실시간으로 데이터를 모니터링하고, 상기 센서가 비-실시간으로 데이터를 보내면, APC 시스템은 상기 센서가 데이터를 보내자마자 데이터를 처리한다.
APC 시스템은 일반 오류 검출 및 분류 어플리케이션, 챔버 핑거프린팅 어플리케이션, 시즈닝 완료 어플리케이션, 소모가능한 수명 예측, 습식 세정 사이클 어플리케이션, 및 부품 어셈블리(parts assembly)에 대한 진단 어플리케이션을 위해 동적 센서들을 셋업하는데 사용될 수 있는 전략, 플랜, 및 베이스라인 모델을 포함할 수 있다.
APC 시스템은 각 프로세스 챔버에 대해 독립적 데이터 수집 모드 및 셋업 모드를 제공하는데; 다시 말해, 각 챔버는 여하한의 챔버들에 대해 독립적일 수 있고, 하나의 챔버의 셋업은 다른 챔버들의 데이터 수집을 인터럽트(interrupt)하지 않는다. 또한, APC 시스템은 각 센서에 대해 독립적 데이터 수집 모드 및 셋업 모드를 제공하는데; 다시 말해, 각 센서는 여하한의 센서들에 대해 독립적일 수 있고, 하나의 센서의 셋업은 다른 센서들의 데이터 수집을 인터럽트하지 않는다
제어 전략이 판단 플랜을 포함하는 경우, 판단 플랜이 실행된다. 상기 실행은 룰 기반일 수 있으며 SQL 문장들을 포함할 수 있다. 시작-이벤트 판단 플랜은 "시작 이벤트"가 발생한 후에 실행될 수 있으며, 종료-이벤트 판단 플랜은 "종료 이벤트"가 발생한 후에 실행될 수 있다. 예를 들어, 시작-이벤트 판단 플랜이 제어 전략과 연관되는 경우, 웨이퍼-인 이벤트, 프로세스 시작 이벤트, 또는 레시피 시작 이벤트와 같은 시작 이벤트 후에 실행될 수 있다. 시작-이벤트 판단 플랜은 툴 상태 모니터링 시스템의 알람 관리부의 일부분일 수 있다.
알람이 발생한, 즉 오류가 검출된 경우, 판단 플랜은 개입 플랜(intervention plan)으로 메세지 및/또는 명령을 보내 다음과 같은 동작; 상태 스크린상에 오류 메세지를 디스플레이하고, 로그 파일(log file)에 오류 메세지를 기록하며, 다음 웨이퍼를 중지하라는 메세지를 보내고, 다음 로트를 중지하라는 메세지를 보내며, 상기 툴에 경고 메세지를 보내고, 및/또는 툴 소유자에게 이메일을 보내는 동작을 취할 수 있다. 예를 들어, 판단 플랜은 개입 플랜으로 메세지 및/또는 명령을 보내 다음과 같은 센서-관련 동작: 센서를 이용하여 정지시키고, 센서를 재구성(reconfigure)하며, 센서를 리-캘리브레이션(re-calibration)하고, 및 센서를 교체하는 동작을 취할 수 있다.
판단 플랜들은 독립적으로 운영될 수 있다. 각 판단 플랜은 다른 판단 플랜 들의 동작들을 알지 못한다. 그러므로, 전체 분석 플랜의 결과로, 다양한 판단 플랜들에 의해 보내어진 메세지에는 몇몇 리던던시(redundancy) 또는 불일치가 있을 수도 있다. 개입 플랜은 여하한의 문제를 해결하기 위해 사용될 수 있다. 전략 및 플랜에 대한 예시적인 흐름도가 도 4에 도시된다.
다시 도 2에서, 단계 235에서는, 알람이 발생되었는지를 결정하기 위해 조회(query)가 실행될 수 있다. 알람이 발생된 경우, 절차 200은 단계 250으로 진행한다. 알람이 발생되지 않은 경우, 절차 200은 단계 240으로 진행한다.
단계 250에서, 개입 플랜이 실행될 수 있다. 개입 플랜은 다음과 같은 프로세스: 각 판단 플랜으로부터 메세지(판단)를 획득하고; 상이한 판단 플랜들로부터 동작들을 카테고리화하며; 툴 Id, 레시피 Id, 레시피 시작 시간 등과 같은 프로세스 조건들을 이메일 및 로그에 붙이고; 파일/데이터베이스에 로그를 세이브하며; 및/또는 개입 관리자에게 적절한 메세지를 보내는 프로세스를 실행한다. 예를 들어, 개입 플랜은 동적 센서가 언제 고장났는지 및/또는 오류를 유발했는지를 결정할 수 있다.
개입 전략들은, 사용자가 데이터 분석의 결과로서 취하도록 선택하는 동작으로서 정의된다. 예를 들어, 이들 동작들은: 의심스러운 웨이퍼 또는 로트를 플래그(flag)하고 시스템 소유자 및/또는 툴 소유자에게 통지하고; 데이터를 검토하고 결정하도록 엔지니어에게 페이징하고 이메일을 보내며; 데이터가 검토될 때까지 툴이 웨이퍼를 처리하지 못하게 하고 그 처리금지를 해제하고; 툴을 정지시키거나 또는 툴로부터 남아있는 웨이퍼들을 퍼지(purge)할 수 있는 툴 "오프-라인"을 취하며; 및 챔버 세정 및 유지보수 절차들을 트리거링하는 동작을 포함할 수 있다.
개입 플랜이 실행된 후, 적절한 동작에 관한 메세지들이 개입 관리자에게 보내진다. 예를 들어, 동작 후보(action candidate)들은: 상태 스크린상에 센서 오류 메세지를 디스플레이하고; 다음 웨이퍼 이전에 프로세스를 중지시키도록 메세지를 보내며; 다음 로트 이전에 프로세스를 중지시키도록 메세지를 보내고; 1이상의 툴에 중지 또는 정지 메세지를 보내고, 및/또는 시스템 소유자, 툴 소유자, 프로세스 소유자에게 이메일을 보내는 것을 포함할 수 있다. 예를 들어, "정지" 메세지는 툴에게 툴에서의 웨이퍼 처리를 계속하라고 지시하는데 사용될 수 있으며, "중지(abort)" 메세지는 툴에게 툴에서 웨이퍼를 처리하지 않도록 지시하여 웨이퍼를 캐리어로 다시 보내는데 사용될 수 있다.
몇가지 경우에서, 툴 상태 모니터링 시스템은 작업자의 개입 없이도 문제를 중재(intervene)하고 응답할 수 있을 것이다. 나머지 다른 경우에서는 작업자의 개입이 요구될 것이다. 예를 들어, 사용자는 툴 상태 모니터링 시스템으로부터의 데이터에 접근하여 오류의 성질(nature)을 결정할 수 있다. 사용자가 개입가능하며, 사용자는 로트를 계속할 것인지 또는 종료할 것인지를 결정할 수 있다. 사용자가 프로세스를 종료하는 경우, 툴은 수리 스테이트에 들어갈 수 있다. 사용자는 툴 스크린으로부터 이를 트리거링할 수 있다. 예를 들어, 동적 센서가 교체될 수 있다. 센서 교체, 체크, 및 프로세스 테스트 후에, 상기 프로세스는 다음 웨이퍼에 대해 리쥼(resume)될 수 있다.
개입 플랜 및 분석 플랜의 실행 중에, APC 시스템은 "센서-관련" 차트를 사 용자에게 제시할 수 있다. 예를 들어, 상기 차트는 압력계 데이터(manometer data), 다량 흐름 데이터, 누설 데이터, 펌프 데이터, 가스 시스템 데이터, 및 이송 시스템 데이터를 포함할 수 있다. 상기 차트는 1이상의 툴에 대해 실시간 데이터, 히스토리 데이터, 및 실시간 및 히스토리 데이터의 조합을 디스플레이할 수 있다.
또한, 제어 전략이 실행된 후에 APC 시스템에 의해 분석 전략이 수행될 수 있다. 오류 검출 및 분류(Fault Detection and Classification; FDC) 전략과 같은 분석형 전략은 한 세트의 시퀀스 중에 처리 툴상에서 무슨 일이 발생했는지를 정의한다. FDC 전략은 한 세트의 분석 플랜을 이용하여 수집 후 데이터를 "분석"할 수 있다; FDC 전략은 한 세트의 판단 플랜을 이용하여 동작의 코스(course)를 "결정"할 수 있다. 예를 들어, SPC 차트 및 다변 분석이 사용될 수 있다. FDC 전략은 단일 웨이퍼, 단일 툴, 단일, 로트, 또는 툴 액티비티들의 조합에 대해 한 세트의 데이터 분석 플랜을 정의할 수 있다. 전략 내의 각 부분을 플랜이라 한다.
전략들은 콘텍스트와 연관된다. 콘텍스트 정보는 주어진 작동을 또 다른 작동과 연관시키는데 사용될 수 있다. 특히, 콘텍스트 정보는 1이상의 전략 및/또는플랜과 프로세스 단계 또는 레시피를 연관시킨다. 일반적으로, 분석 전략은 종료 이벤트에 의해 트리거링될 수 있으며 한 세트의 포스트 처리 액티비티를 결정한다. 예를 들어, 종료 이벤트는 웨이퍼-아웃 이벤트, 로트 완료 이벤트, 또는 여타의 프로세스 완료 이벤트일 수 있다.
분석 전략이 실행되는 경우, 다음과 같은 플랜: PCA(Principal Component Analysis) 플랜, PLS(Partial Least Squares) 플랜, SPC(Statistical Process Control) 플랜, MVA(multivariate Analysis) 플랜, 및 사용자 정의 플랜(User Defined plan) 중 1이상이 실행될 수 있다. 분석 플랜은, 툴이 생산하고 있지 않는 경우 센서 문제들의 검출 및 분류; 생산시 센서 문제들의 검출; 생산시 센서 문제들의 검출 및 분류; 생산시 센서 문제들의 예측; 및 생산 후 센서 문제들의 예측용 수단을 포함한다.
도 5는 본 발명의 일 실시예에 따른 선택 스크린의 예시적인 도면을 도시한다. 예시된 실시예에서는, 5개의 서브레벨(sublevel)을 갖는 네비게이션 트리(navigation tree)가 도시된다. 이는 본 발명에 필수적인 것은 아니다; 여하한의 수의 서브레벨이 사용될 수 있다. 대안적으로, 선택 탭 또는 버튼과 같은 다른 선택 수단이 사용될 수 있다. 예를 들어, 선택 탭은 좌→우 탭 구조 및/또는 우→좌 탭, 최상→바닥 탭, 및 바닥→최상 탭을 포함할 수 있다. 대안적인 실시예에서, 네비게이션 트리는 다른 언어로 디스플레이될 수 있으며 상이하게 오더(order)되고 위치될 수 있다.
제1레벨은 툴 레벨이나, 이는 본 발명에 필수적인 것은 아니다. 대안적으로, 시스템 레벨 또는 다른 고-레벨 그룹이 도시될 수 있다. 예를 들어, 툴 레벨은 에칭 툴, 증착 툴, 세정 툴, 이송 툴, 또는 여타의 반도체 처리 툴과 연관될 수 있다.
도시된 다음 레벨은 프로세스 모듈 레벨이다. 사용자는 프로세스 모듈 레벨에 대한 상태를 디스플레이하도록 툴 레벨 폴더를 열 수 있다. 예를 들어, 도 5는 "TeliusPC"로 레이블된 열린 툴 레벨 폴더 및 "Process Module 1" 내지 "Process Module 4"로 레이블된 4개의 프로세스 모듈 폴더를 도시한다. 사용자는 특정 프로세스 모듈과 연관된 전략에 대한 상태를 디스플레이하도록 프로세스 모듈 폴더를 열 수 있다.
도시된 다음 레벨은 전략 레벨이다. 사용자는 전략 레벨에 대한 상태를 디스플레이하도록 프로세스 모듈 레벨 폴더를 열 수 있다. 예를 들어, 도 5는 "Data Collection Strategy" 및 "Analysis Strategy"로 레이블된 열린 폴더들을 도시한다. 사용자는 특정 전략과 연관된 플랜 및 콘텍스트에 대한 상태를 디스플레이하도록 전략 폴더를 열 수 있다.
Data Collection (Control) Strategy 폴더는 데이터 수집 전략들의 리스트를 디스플레이하도록 열릴 수 있다. 예시된 실시예에서, 단일 제어 전략은 하나의 제어 전략과 연관된 플랜 및 콘텍스트와 함께 도시될 수 있다. 콘텍스트는 더미 또는 진단 웨이퍼와 같은 특정한 아이템에 요구되는 특정한 데이터 수집 플랜을 기동하는데 사용될 수 있다.
특정 데이터 수집 플랜 폴더는 1이상의 데이터 수집 플랜 이름을 디스플레이하도록 열릴 수 있다. 도 5에는, 단일 데이터 수집 플랜 이름 "DefaultPlan 1"이 디스플레이된다.
데이터 수집 전략은, 센서들이 어떻게 구성되어야 하는지 그리고 어떤 관측 파라미터들이 수집되어야 하는지를 기술(describe)하는 연관된 데이터 수집 플랜을 가진다. 또한, 데이터 수집 전략은 전처리 플랜과 연관될 수 있다. 전처리 플랜은, 기대되는 관측 파라미터들이 어떻게 스파이크 카운팅, 스텝 트리밍, 하이 클립 및 로우 클립 한계에 대해 처리되어야 하는지를 기술한다.
데이터 수집 플랜 레벨로부터, 사용자는 센서 구성 레벨에 접근할 수 있다. 센서 구성 레벨에서, 사용자는 동적 센서를 설치, 변경, 및 삭제(uninstall)할 수 있다. 또한, 사용자는 동적 센서에 대한 셋업 정보를 생성, 편집, 및 검토할 수 있다.
도 5에 도시된 바와 같이, 선택 스크린은 타이틀 패널(Title Panel), 정보 패널(Information Panel), 및 제어 패널(Control Panel)을 포함할 수 있다. 예를 들어, 타이틀 패널은 스크린의 최상부 두 행을 포함할 수 있다. 타이틀 패널은: 버전 정보를 디스플레이하는 회사 로고 필드; 현 사용자의 ID를 디스플레이하는 사용자 ID 필드; 액티브 알람(active alarm)이 있는 경우에 메세지를 디스플레이하는 알람 메세지 필드; 서버의 현재 날짜 및 시간 을 디스플레이하는 현재 날짜 및 시간 필드; 현 스크린의 이름(예를 들어, Tool Status)을 디스플레이하는 현 스크린 이름 필드; 서버와 툴간의 통신 링크에 대해 현 상태를 디스플레이하는 통신 상태 필드; 모니터링되고 있는 툴의 ID를 디스플레이하는 Tool ID 필드; 사용자가 로그 오프할 수 있는 Logoff 필드; 모든 이용가능한 스크린의 리스트를 뷰잉하도록 선택될 수 있는 Screen Select 필드를 포함할 수 있다. 대안적인 실시예에서, 타이틀 패널은 다른 언어로 디스플레이될 수 있으며 상이하게 사이징(sizing)되고 위치될 수 있다.
제어 패널은 스크린의 저부를 따라 있는 버튼들을 포함할 수 있다. 이들 버 튼들은 사용자가 1차 스크린(primary screen)을 디스플레이할 수 있게 한다. 1차 스크린 버튼들은 Tool Status, Module, Charts, Alarm Logs, SPC, Data Manager, 및 Help이다.
예를 들어, Tool Status 버튼은 특정 툴에 대한 데이터를 뷰잉하는데 사용될 수 있다. Module 버튼은 특정 프로세스 모듈에 대한 데이터를 뷰잉하는데 사용될 수 있다. Charts 버튼은 요약 및 트레이스 차트를 셋업하고 뷰잉하는데 사용될 수 있다. Alarm Logs 버튼은 현재 알람의 리스트를 뷰잉하는데 사용될 수 있다. SPC 버튼은 SPC 차트상의 프로세스 파라미터들을 뷰잉하는데 사용될 수 있다. Data Manager 버튼은 데이터 수집 플랜을 구성하는데 사용될 수 있으며, Help 버튼은 온라인 도움말 문서를 디스플레이하는데 사용될 수 있다. 이들 버튼들은 다수의 스크린들의 저부를 따라 편리하게 디스플레이될 수 있다. 이들 버튼들은 사용자가 1차 스크린을 디스플레이할 수 있도록 신속하고 편리한 수단을 제공한다. 대안적인 실시예에서, 이들 버튼들은 다른 언어로 디스플레이될 수 있으며 상이하게 사이징되고 위치될 수 있다.
도 6은 도 5의 데이터 수집 플랜 레벨로부터 접근될 수 있는 본 발명의 일 실시예에 따른 플랜 정보(Plan Information) 스크린의 예시적인 도면을 도시한다. 예시된 실시예에는, 선택 탭들을 구비한 정보 패널이 도시되어 있다. 선택 탭들은 여타의 GUI 스크린을 선택하는데 사용될 수 있다. 대안적으로, 네비게이션 트리가 다른 GUI 스크린을 디스플레이하고 선택하는데 사용될 수 있다.
센서 인스턴스들의 리스트는 툴_id, 모듈_id, 및 플랜 이름에 대한 기준에 부합하는 센서 인스턴스들의 리스트를 포함할 수 있다. 하나의 센서 형식이 다수의 센서 인스턴스들을 가질 수 있기 때문에 하나의 리스트가 제공될 수 있다. 일례로서, "DefaultPlan 1"이라고 명명된 플랜은 다수의 필드들 내에 정보를 가지고 있음을 도시하지만, 이는 본 발명에 필수적인 것은 아니다. 대안적으로, 여타의 플랜들 및 여타의 동적 센서들이 도시될 수 있다. 예를 들어, Langmuir 프로브, OES 프로브, 및 여타의 형식의 반도체 처리 프로브가 사용될 수 있다.
Plan Name 필드는 데이터 수집 플랜에 대한 이름을 포함하고, Description 필드는 이 데이터 수집 플랜에 대한 상세한 기술을 포함할 수 있다. Tool id 필드는 선택을 위해 현재 있는 툴(툴 id)의 리스트를 포함할 수 있고, Module id 필드는 선택을 위해 현재 있는 프로세스 모듈(모듈 id)의 리스트를 포함할 수 있다. Date Last Used 데이터 필드는 이 데이터 수집 플랜을 사용한 마지막 날짜를 나타내는데 사용될 수 있다.
Save 버튼은 데이터를 이 스크린으로부터 데이터베이스로 세이브하는데 사용될 수 있다. Undo 버튼은 모든 필드에 원래(디폴트) 데이터를 필-인(fill-in)하는데 사용될 수 있다. Add 버튼은 우측 리스트로부터 선택된 동적 센서 인스턴스를 좌측 테이블에 추가하는데 사용될 수 있다. Remove 버튼은 좌측 테이블로부터 선택된 센서 형식을 우측으로 제거하는데 사용될 수 있다. 팝-업(pop-up) 메세지 윈도우는 확인(confirmation)을 디스플레이할 것이며, 엔트리(entry)는 우측 테이블로 다시 추가될 것이다.
Edit 버튼은 도 7에 도시된 바와 같이 Sensor Setting 스크린을 인에이블링 (enabling)하여 선택된 센서 파라미터를 편집하는데 사용될 수 있다. Param Saving 버튼은 도 10에 도시된 바와 같은 Parameter Saving 스크린을 인에이블링하는데 사용될 수 있다.
Save 버튼은 데이터를 2개의 테이블: 즉 dc_plan 테이블 및 sensor_dcplan 테이블로 업데이트/삽입하는데 사용될 수 있다.
도 7은 본 발명의 일 실시예에 따른 Sensor Setting 스크린의 예시적인 도면이다. 예시된 실시예에서, 선택 탭들을 갖는 정보 패널이 도시되어 있다. 상기 선택 탭들은 다른 GUI 스크린을 선택하는데 사용될 수 있다. 대안적으로, 다른 GUI 스크린들을 디스플레이하고 선택하기 위해 네비게이션 트리가 사용될 수 있다. 사용자는 Sensor Setting 스크린과 같은 센서 구성 스크린을 사용하여 동적 센서와 연관된 파라미터를 검토 및 편집할 수 있다. 일 예시로서, 2개의 파라미터가 도시되었으나, 이것은 본 발명에 있어 필수적인 것은 아니다. 동적 센서는 그와 연관된 어떠한 수의 파라미터도 가질 수 있다.
선택된 센서에 대한 셋업 아이템들의 리스트가 스크린상에 나타낼 수 있다. 에디트 버튼은 도 8에 도시된 바와 같이 Sensor Setup Item 스크린을 디스플레이하는데 사용될 수 있다. 이 스크린은 사용자가 선택된 value_type에 따라 선택된 파라미터를 수정할 수 있도록 한다.
Sensor Setting 스크린은 Item Name 필드, Item Value 필드, Description 필드 및 데이터로의 접근을 제어하는데 사용될 수 있는 IS_Optional 필드를 포함한다. 예를 들어, 사용자는 IS_Optional 변수의 값이 참인 경우 이 데이터 수집을 위 한 파라미터를 선택할 수 있다.
도 8은 본 발명의 일 실시예에 따른 Data Collection Plan 스크린의 Sensor Setup Item의 예시적인 도면이다. 예시된 실시예에서는, 선택 탭들을 갖는 정보 패널이 도시된다. 상기 선택 탭들은 다른 GUI 스크린을 선택하는데 사용될 수 있다. 대안적으로, 다른 GUI 스크린들을 디스플레이 및 선택하기 위하여 네비게이션 트리가 사용될 수 있다. 사용자는 동적 센서에 대한 파라미터를 구성하기 위해 Sensor Setup Item 스크린과 같은 센서 구성 스크린을 사용할 수 있다. 일 예시로서, "작업 빈도" 파라미터에 대한 정보가 도시되었으나, 이는 본 발명에 있어 필수적인 것은 아니다. 동적 센서는 그와 연관된 어떠한 수의 파라미터도 가질 수 있다.
상기 스크린은 타이틀로서 디스플레이될 수 있는 이름 필드, 및 사용자에게 명령 및/또는 도움말 메세지를 제공하는 기술/명령/도움말 필드를 포함할 수 있다. 또한, Sensor Setup Item 스크린은 List of Items 필드 및 Selected Items 필드를 포함할 수 있다. 이들 둘 모두는 리스트로서 도시된다.
Save 버튼은 이 스크린으로부터 데이터베이스로 데이터를 세이브하는데 사용될 수 있다. Undo 버튼은 모든 필드에 대한 원래(디폴트) 데이터를 필드-인하는데 사용될 수 있다. Add 버튼은 우측 리스트로부터 선택된 동적 센서 인스턴스를 좌측 테이블에 추가하는데 사용될 수 있다. Remove 버튼은 좌측 테이블로부터 선택된 센서 형식을 우측 리스트로 제거하는데 사용될 수 있다. 팝-업 메세지 윈도우는 확인을 디스플레이할 것이며, 엔트리는 우측 리스트에 다시 추가될 것이다.
Sensor Setup Item 스크린은 동적 센서를 구성하고 및/또는 동적 센서와 연 관된 파라미터들을 변경하는 사용하기 편한 수단(easy-to-use means)을 제공한다. 예시된 예시는 사용자에게 특정 동적 센서에 대한 작업 모드에 대한 명령 메세지가 제공될 수 있다는 것을 도시하고 있다. 명령 메세지는 사용자에게 보안의 검지(sense)를 제공하고 에러를 방지할 수 있다. 아이템들의 리스트가 사용자에게 제공될 수 있으며, 사용자가 Selected Items 리스트로 또는 그로부터 아이템들을 이동할 수 있도록 하는 버튼들이 제공된다. 선택된 파라미터에 대한 이 Sensor Setup Item (에디팅) 스크린은 선택된 파라미터의 value_type에 종속하며, 예시적인 스크린의 경우 value_type은 선택(selection)일 수 있다.
새로운 센서를 설치하거나 모듈과 관련된 기존 센서를 변경하는 경우에, APC 시스템 및 동적 센서 어플리케이션은 하나의 모듈 오프-라인을 가질 수 있다. 예를 들어, 임의의 센서와 연관된 센서 케이블(RS232, 이더넷, 섬유(fiber) 등등)은 디스커넥트 및 리커넥트(reconnect)될 수 있고; 센서의 네트워킹 어드레스는 변경될 수 있으며; 센서 셋업 셋팅이 구성될 수 있고; 센서가 다른 모듈들의 런을 중단시키지 않으면서 센서를 수동으로 셋업하는 것(즉, 센서를 수동으로 시동하고, 센서 데이터를 실시간으로 모니터링하며, 센서를 정지시키고, 파일로서 수집된 센서 데이터를 세이브하고, 파일로서 센서 셋팅들을 세이브하는 것)을 포함하는 테스트일 수 있다.
도 9는 본 발명의 일 실시예에 따른 또 다른 Sensor Setup Item 스크린의 예시적인 도면을 도시한다. 예시된 실시예에서는, 선택 탭들을 갖는 정보 패널이 도시된다. 상기 선택 탭들은 다른 GUI 스크린을 선택하는데 사용될 수 있다. 대안적 으로, 네비게이션 트리가 다른 GUI 스크린을 디스플레이하고 선택하는데 사용될 수 있다. 사용자는 동적 센서에 대한 파라미터를 구성하기 위해 Sensor Setup Item 스크린과 같은 센서 구성 스크린을 사용할 수 있다.
상기 스크린은 타이틀로서 디스플레이될 수 있는 이름 필드, 및 사용자에게 명령 및/또는 도움말 메세지를 제공하는 기술/명령/도움말 필드를 포함할 수 있다. 또한, Sensor Setup Item 스크린은 값을 제공하는 다수의 필드를 포함할 수 있다. 상기 도면은 Default Value 필드, insert Value 필드, Min Limit 필드, 및 Max Limit 필드 및 Selected Items 필드를 도시한다. 이들 모두는 리스트로서 도시된다. Save 버튼은 이 스크린으로부터 데이터베이스로 데이터를 세이브하는데 사용될 수 있다. Undo 버튼은 모든 필드들에 대한 원래(디폴트) 데이터를 필-인 하는데 사용될 수 있다.
Sensor Setup Item 스크린은 동적 센서를 구성하고 및/또는 동적 센서와 연관된 파라미터들을 변경시키는 수단을 제공한다. 예시된 예시는, 사용자에게 "MFSampleTime"에 대한 값을 삽입하도록 명령할 수 있고 다른 필드들이 에러를 덜 일으키는 쪽으로 선택되도록 하는 정보를 제공한다는 것을 나타낸다. 추가 필드들은 사용자에게 보안의 검지를 제공하고 에러들을 방지한다. 선택된 파라미터에 대한 이 Sensor Setup Item (에디팅) 스크린은 선택된 파라미터의 value_type에 종속하며, 이 스크린의 경우에는 value_type이 정수(integer)일 수 있다.
도 10은 본 발명의 일 실시예에 따른 Parameter Saving 스크린의 예시적인 도면이다. 예시된 실시예에서는, 선택 탭들을 갖는 정보 패널이 도시된다. 상기 선 택 탭들은 다른 GUI 스크린을 선택하는데 사용될 수 있다. 대안적으로, 내비게이션 트리가 다른 GUI 스크린을 디스플레이하고 선택하는데 사용될 수 있다. 사용자는 데이터베이스로 세이브될 동적 센서 파라미터들을 결정하기 위하여 Parameter Saving 스크린과 같은 센서 구성 스크린을 사용할 수 있다.
Parameter Saving 스크린은 Selected Data Collection Plan에서의 Selected Sensor Instance를 위한 파라미터들의 리스트를 도시한다. 데이터베이스 세이브 플랜은 파라미터 세이빙 스크린의 각 파라미터에 대한 링크를 제공한다.
Parameter Saving 스크린은 선택된 센서 셋업 아이템의 이름을 포함하는 선택된 센서에 대한 아이템들의 리스트를 포함할 수 있다. 또한, Parameter Saving 스크린은 패널을 인에이블링하는 Edit 버튼; 새로운 파라미터 이름을 특정 포뮬라에 추가하는데 사용될 수 있는 Add 버튼; 및 Summary Info 버튼을 포함할 수 있다. Summary Info 버튼은 세이브를 위한 파라미터를 선택하고 도 11에 도시된 스크린을 인에이블링하는데 사용될 수 있다. Undo 버튼은 원래 값들을 갖는 모든 필드들을 기입(fill)하는데 사용될 수 있고 Save 버튼은 run_value 테이블의 체크 박스의 선택을 세이브하는데 사용될 수 있다. 리스트된 아이템들은 Param Name, New Param Name, Formula 및 Save 선택 체크 박스를 포함하여 이루어진다.
도 11은 본 발명의 일 실시예에 따른 Formula Info 스크린의 예시적인 도면이다. 예시된 실시예에서는, 선택 탭들을 갖는 정보 패널이 된다. Formula Info 스크린은 동적 센서와 연관된 선택된 파라미터에 대한 포뮬라 에디터(formular editor)를 제공한다.
예를 들어, 사용자는 새 파라미터 이름을 New Param Name 필드내의 기존 파라미터에 할당할 수 있다. Parameter Name 필드는 파라미터의 원래 이름을 디스플레이한다. Saved Plan Parameter 필드는 선택된 데이터 수집 플랜의 파라미터들의 리스트를 포함할 수 있다. Add 버튼은, 드롭 다운 박스로부터 선택된 세이브된 플랜 파라미터들을 Formula Description 필드안으로 추가하는데 사용될 수 있다. Save 버튼은 run_value 테이블에 정보를 세이브하는데 사용될 수 있다. 소프트웨어는 포뮬라 체킹을 행하고 할당된 파라미터 이름이 유일한지 아닌지를 판정한다. Undo 버튼은 변경들을 취소(undo)하는데 사용될 수 있다. Save 체크 박스는 데이터 수집 플랜에 대한 파라미터를 선택하는데 사용될 수 있고, 또한 도 12에 도시된 바와 같이 스크린을 인에이블링할 수 있다.
도 12은 본 발명의 일 실시예에 따른 Parameter Collection Info 스크린의 예시적인 도면이다. 예시된 실시예에서는, 선택 탭들을 갖는 정보 패널이 도시된다. Parameter Collection Info 스크린은 동적 센서와 연관된 선택된 파라미터에 대한 요약 데이터 수집 정보를 편집하는 수단을 제공한다.
예를 들어, Parameter Collection Info 스크린은 선택된 파라미터 이름을 디스플레이하는 이름 필드를 포함할 수 있다. New 버튼은 입력을 위해 우측 필드들을 인에블링하고; Edit 버튼은 우측 필드에 값들을 필-인하는데 사용될 수 있다. Set Point, Percentage 및 Absolute 체크 박스들은 데이터 수집 플랜의 파라미터에 대한 이들 데이터 수집 형식 중 하나를 선택하는데 사용된다. Threshold, Low Spike, High Spike 및 Clip 체크 박스들은 이들 데이터 전처리 아이템들 중 1이상을 선택 하고 해당 텍스트 필드를 인에이블링하는데 사용된다. Save 버튼은 param-limits 테이블의 우측 필드로부터 정보를 세이브하는데 사용될 수 있다. Undo 버튼은 변경들을 취소하는데 사용될 수 있다.
Sensor Type은 센서의 기능에 대응하는 범용 용어이다. 센서 인스턴스는 프로세스 모듈(챔버) 및 툴 상의 특정 센서에 대하여 센서 형식을 짝지운다. 적어도 하나 이상의 센서 인스턴스가 툴에 부착되는 각각의 물리적 센서에 대하여 구성된다.
삭제
동적 센서들과 연관된 어플리케이션들은 유연성이 있으며 구성가능하다. 예를 들어, IP 어드레스, 툴 id 등과 같은 고객 의존성 정보는 시스템 변수들일 수 있으며, 고객 또는 필드 엔지니어가 셋업을 구성한 후, 상기 정보는 다음 시동에 이용될 수 있다. 동적 센서 어플리케이션들은 Window NT 및 Windows 2000과 같은 여러개의 상이한 운영 시스템 하에서 작동될 수 있다.
Function 버튼들은 GUI 스크린의 바닥 및/또는 최상부를 따라 위치될 수 있다. 동일한 기능 버튼들이 다수의 스크린상에 디스플레이될 수 있기 때문에, 사용자들은 일련의 메뉴들을 거치지(traverse) 않고도 임의의 스크린으로부터 임의의 기능으로 네비게이트될 수 있다. LogOff 버튼은 Title Panel에 디스플레이될 수 있고 시스템을 로그 오프하는데 사용된다. 데이터가 수정되고 세이브되지 않은 경우에는, Reminder 메세지들이 제공될 수 있다. 또한, Help 버튼이 디스플레이되어, 사용자에게 제시되고 있는 데이터 및/또는 사용자로부터 요청되고 있는 데이터를 사용자가 이해하는 것을 돕기 위한, 특정하고 범용적인 콘텐트 문서를 뷰잉하는데 사용될 수 있다.
상기의 서술내용의 견지에서 본 발명의 수많은 수정례 및 변형례가 가능하다. 그러므로, 첨부된 청구항의 범위 내에서, 본 발명은 본 명세서에서 특정하게 서술된 것과 다르게 수행될 수 있다.
Claims (26)
- 삭제
- 삭제
- 그래픽 사용자 인터페이스(GUI)들을 이용하여 반도체 처리 환경에서 동적 센서를 셋업하는 방법에 있어서,데이터 수집 플랜을 실행하는 단계로서, 상기 동적 센서는 ODP 센서, OES 센서, VIP 센서 또는 이들의 조합을 포함하는 것인 단계;상기 데이터 수집 플랜을 이용하여 동적 센서 셋업 플랜을 결정하는 단계; 및상기 동적 센서 셋업 플랜을 실행하여 상기 동적 센서를 셋업하는 단계로서, 상기 동적 센서 셋업 플랜은 상기 동적 센서에 대한 IP 어드레스를 포함하는 것인 단계를 포함하고,플랜 리스트 GUI 스크린을 이용하여 상기 데이터 수집 플랜을 결정하는 단계; 및플랜 GUI 스크린을 이용하여, 상기 동적 센서 셋업 플랜을 위하여 선택되는 동적 센서 인스턴스를 결정하는 단계를 포함하며,상기 동적 센서 인스턴스를 결정하는 단계는,상기 플랜 GUI 스크린 상에서 센서 인스턴스들의 리스트로부터 동적 센서 인스턴스를 선택하는 단계; 및상기 선택된 동적 센서 인스턴스를 현재의 플랜 리스트를 위하여 선택되는 인스턴스들에 추가하는 단계를 포함하는 것을 특징으로 하는 방법.
- 그래픽 사용자 인터페이스(GUI)들을 이용하여 반도체 처리 환경에서 동적 센서를 셋업하는 방법에 있어서,데이터 수집 플랜을 실행하는 단계로서, 상기 동적 센서는 ODP 센서, OES 센서, VIP 센서 또는 이들의 조합을 포함하는 것인 단계;상기 데이터 수집 플랜을 이용하여 동적 센서 셋업 플랜을 결정하는 단계; 및상기 동적 센서 셋업 플랜을 실행하여 상기 동적 센서를 셋업하는 단계로서, 상기 동적 센서 셋업 플랜은 상기 동적 센서에 대한 IP 어드레스를 포함하는 것인 단계를 포함하고,플랜 리스트 GUI 스크린을 이용하여 상기 데이터 수집 플랜을 결정하는 단계; 및플랜 GUI 스크린을 이용하여, 상기 동적 센서 셋업 플랜을 위하여 선택되는 동적 센서 인스턴스를 결정하는 단계를 포함하며,상기 동적 센서 인스턴스를 결정하는 단계는,상기 플랜 GUI 스크린 상에서 현재의 플랜 리스트를 위하여 선택되는 인스턴스들로부터 동적 센서 인스턴스를 선택하는 단계; 및상기 선택된 동적 센서 인스턴스를 상기 현재의 플랜 리스트를 위하여 선택되는 인스턴스들로부터 센서 인스턴스들의 리스트로 이동시키는 단계를 포함하는 것을 특징으로 하는 방법.
- 제3항 또는 제4항에 있어서,선택 GUI 스크린 상에서 멀티-레벨 네비게이션 트리를 이용하여 상기 데이터 수집 플랜을 선택하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제5항에 있어서,상기 멀티-레벨 네비게이션 트리는 툴 레벨, 모듈 레벨, 전략 레벨, 콘텍스트 레벨, 및 데이터 수집 플랜 레벨을 포함하는 것을 특징으로 하는 방법.
- 제6항에 있어서,상기 전략 레벨은 제어 전략 레벨 및 분석 전략 레벨을 포함하는 것을 특징으로 하는 방법.
- 제5항에 있어서,상기 선택 GUI 스크린은 영어 멀티-레벨 네비게이션 트리, 일어 멀티-레벨 네비게이션 트리, 대만어 멀티-레벨 네비게이션 트리, 중국어 멀티-레벨 네비게이션 트리, 한국어 멀티-레벨 네비게이션 트리, 독일어 멀티-레벨 네비게이션 트리, 및 불어 멀티-레벨 네비게이션 트리로 구성된 그룹으로부터 적어도 하나의 멀티-레벨 네비게이션 트리를 포함하는 것을 특징으로 하는 방법.
- 제5항에 있어서,상기 선택 GUI 스크린은 타이틀 패널, 정보 패널, 및 제어 패널을 포함하는 것을 특징으로 하는 방법.
- 제9항에 있어서,상기 타이틀 패널은 버전 정보를 디스플레이하는 회사 로고 블록, 현 사용자의 아이디(ID)를 디스플레이하는 사용자 ID 블록, 액티브 알람이 있는 경우에 알람 메세지를 디스플레이하는 알람 메세지 블록, 서버의 현재 날짜 및 시간을 디스플레이하는 현재 날짜 및 시간 블록, 현 스크린의 이름을 디스플레이하는 현 스크린 이름 블록, 서버와 툴간의 통신 링크에 대한 현 상태를 디스플레이하는 통신 상태 블록, 모니터링되고 있는 툴의 ID를 디스플레이하는 툴 ID 블록; 사용자가 로그 오프하도록 하는 로그오프(Logoff) 블록, 및 모든 이용가능한 스크린의 리스트를 뷰잉하는 선택 스크린 블록을 포함하는 것을 특징으로 하는 방법.
- 제9항에 있어서,상기 제어 패널은 툴 상태 버튼, 모듈 버튼, 차트 버튼, 알람 버튼, SPC 버튼, 제어 셋업 버튼, 및 도움말(Help) 버튼을 포함하는 것을 특징으로 하는 방법.
- 제3항 또는 제4항에 있어서,영어 스크린, 일어 스크린, 대만어 스크린, 중국어 스크린, 한국어 스크린, 독일어 스크린, 및 불어 스크린으로 구성된 그룹으로부터 적어도 하나의 스크린을 포함하는 플랜 리스트 GUI 스크린을 이용하여 상기 데이터 수집 플랜을 결정하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제3항 또는 제4항에 있어서,상기 GUI는 좌→우 탭, 우→좌 탭, 최상(top)→저부(bottom) 탭, 및 저부→최상 탭으로 구성된 그룹으로부터의 선택 탭들을 포함하는 적어도 하나의 스크린을 포함하는 것을 특징으로 하는 방법.
- 제3항 또는 제4항에 있어서,상기 플랜 리스트 GUI 스크린 상에서 선택 탭을 이용하여 상기 데이터 수집 플랜을 선택하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제3항 또는 제4항에 있어서,센서 세팅 GUI 스크린을 이용하여 상기 선택된 동적 센서 인스턴스를 위하여 적어도 하나의 셋업 파라미터를 결정하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제15항에 있어서,상기 플랜 GUI 스크린 상에서 동적 센서 인스턴스를 선택하는 단계;상기 플랜 GUI 스크린의 일부분을 작동시켜 센서 세팅 GUI 스크린을 활성화하는 단계; 및상기 선택된 동적 센서 인스턴스를 위한 셋업 아이템들을 검증(verify)하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제15항에 있어서,상기 플랜 GUI 스크린 상에서 동적 센서 인스턴스를 선택하는 단계;상기 플랜 GUI 스크린의 일부분을 작동시켜 파라미터 세이빙 스크린을 활성화하는 단계; 및상기 파라미터가 세이브되고 있음을 검증하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제16항에 있어서,상기 센서 세팅 GUI 스크린 상에서 동적 파라미터를 선택하는 단계;상기 센서 세팅 GUI 스크린의 일부분을 작동시켜 센서 셋업 아이템 GUI 스크린을 활성화하는 단계; 및상기 선택된 동적 파라미터를 위하여 선택된 아이템들을 검증하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제18항에 있어서,상기 센서 셋업 아이템 GUI 스크린 상에서 아이템들의 리스트로부터 아이템을 선택하는 단계; 및상기 선택된 아이템을, 상기 선택된 동적 파라미터를 위하여 선택되는 아이템들에 추가하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제18항에 있어서,상기 센서 셋업 아이템 GUI 스크린 상에서 상기 선택된 동적 파라미터를 위하여 선택되는 아이템들의 리스트로부터 아이템을 선택하는 단계; 및상기 선택된 아이템을, 상기 선택된 동적 파라미터를 위하여 선택되는 아이템들의 리스트로부터 제거하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제18항에 있어서,상기 센서 셋업 아이템 GUI 스크린 상에서 동적 파라미터를 위하여 복수의 값 필드들로부터 하나의 값 필드를 선택하는 단계;상기 선택된 값 필드를 수정하는 단계; 및상기 수정된 동적 파라미터를 세이브하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제3항 또는 제4항에 있어서,파라미터 세이빙 스크린을 활성화하는 단계; 및올바른(correct) 동적 파라미터들이 세이브되고 있음을 검증하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제3항 또는 제4항에 있어서,파라미터 수집 인포 스크린을 활성화하는 단계; 및세이브되고 있는 동적 파라미터에 대하여 데이터 수집 형식이 올바른지를 검증하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 제3항 또는 제4항에 있어서,포뮬라 인포 스크린을 활성화하는 단계;새로운 파라미터 이름을 입력하는 단계; 및상기 선택된 센서 인스턴스를 위한 셋업 파라미터에 대하여 적어도 하나의 값을 포함하는 포뮬라를 사용하여 새로운 동적 파라미터를 생성하는 단계를 더 포함하는 것을 특징으로 하는 방법.
- 삭제
- 그래픽 사용자 인터페이스(GUI)들을 이용하여 반도체 처리 환경에서 동적 센서를 셋업하는 방법에 있어서,프로세스 콘텍스트를 사용하여 제어 전략을 결정하는 단계로서, 상기 프로세스 콘텍스트는 수행되고 있는 프로세스, 동적 센서 인스턴스, 모니터링되고 있는 처리 모듈, 및 모니터링되고 있는 툴 중 적어도 하나에 의존하는 것인 단계;상기 제어 전략을 실행하여 데이터 수집 플랜을 결정하는 단계;상기 데이터 수집 플랜을 실행하는 단계로서, 상기 동적 센서는 ODP 센서, OES 센서, VIP 센서 또는 이들의 조합을 포함하는 것인 단계;상기 데이터 수집 플랜을 이용하여 동적 센서 셋업 플랜을 결정하는 단계; 및상기 동적 센서 셋업 플랜을 실행하여 상기 동적 센서를 셋업하는 단계로서, 상기 동적 센서 셋업 플랜은 상기 동적 센서에 대한 IP 어드레스를 포함하는 것인 단계를 포함하는 것을 특징으로 하는 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US39309102P | 2002-07-03 | 2002-07-03 | |
US60/393,091 | 2002-07-03 | ||
PCT/US2003/019042 WO2004006299A2 (en) | 2002-07-03 | 2003-06-18 | Method for dynamic sensor configuration and runtime execution |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050019824A KR20050019824A (ko) | 2005-03-03 |
KR100970684B1 true KR100970684B1 (ko) | 2010-07-15 |
Family
ID=41784024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020047021678A KR100970684B1 (ko) | 2002-07-03 | 2003-06-18 | 동적 센서 구성 및 런타임 실행 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100970684B1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001075617A2 (en) * | 2000-03-30 | 2001-10-11 | Lam Research Corporation | Plug and play sensor integration for a process module |
KR20020025689A (ko) * | 2000-09-29 | 2002-04-04 | 포만 제프리 엘 | 그래픽 인터페이스 트리 구조를 사용하여 객체 간의관계를 제시하기 위한 방법 |
US20050168441A1 (en) * | 2002-11-05 | 2005-08-04 | Fujitsu Limited | Display control device, display control method, computer product |
-
2003
- 2003-06-18 KR KR1020047021678A patent/KR100970684B1/ko not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001075617A2 (en) * | 2000-03-30 | 2001-10-11 | Lam Research Corporation | Plug and play sensor integration for a process module |
KR20020025689A (ko) * | 2000-09-29 | 2002-04-04 | 포만 제프리 엘 | 그래픽 인터페이스 트리 구조를 사용하여 객체 간의관계를 제시하기 위한 방법 |
US20050168441A1 (en) * | 2002-11-05 | 2005-08-04 | Fujitsu Limited | Display control device, display control method, computer product |
Also Published As
Publication number | Publication date |
---|---|
KR20050019824A (ko) | 2005-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7636608B2 (en) | Method for dynamic sensor configuration and runtime execution | |
KR100873114B1 (ko) | 자동 센서 설치 방법 및 장치 | |
KR100986789B1 (ko) | 툴 성능을 모니터링하는 장치 및 방법 | |
KR101025527B1 (ko) | 반도체 제조 프로세스의 모니터링 및 제어를 위한 방법 및장치 | |
JP4685446B2 (ja) | データコンテキストに基づいてデータを処理する方法 | |
TWI286785B (en) | Method for interaction with status and control apparatus | |
KR101030104B1 (ko) | 데이터 선이식을 위한 방법 | |
KR100970684B1 (ko) | 동적 센서 구성 및 런타임 실행 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130621 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20140626 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20150618 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20160617 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |