KR100508680B1 - 웨이퍼 공정 시스템에서 로봇의 선 위치결정 - Google Patents

웨이퍼 공정 시스템에서 로봇의 선 위치결정 Download PDF

Info

Publication number
KR100508680B1
KR100508680B1 KR10-2001-7016613A KR20017016613A KR100508680B1 KR 100508680 B1 KR100508680 B1 KR 100508680B1 KR 20017016613 A KR20017016613 A KR 20017016613A KR 100508680 B1 KR100508680 B1 KR 100508680B1
Authority
KR
South Korea
Prior art keywords
module
wafer
robot
modules
cluster tool
Prior art date
Application number
KR10-2001-7016613A
Other languages
English (en)
Other versions
KR20020019109A (ko
Inventor
오히라리오
바비키안디크란에스.
Original Assignee
실리콘 밸리 그룹, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 실리콘 밸리 그룹, 인크. filed Critical 실리콘 밸리 그룹, 인크.
Publication of KR20020019109A publication Critical patent/KR20020019109A/ko
Application granted granted Critical
Publication of KR100508680B1 publication Critical patent/KR100508680B1/ko

Links

Classifications

    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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], computer integrated manufacturing [CIM]
    • G05B19/41865Total 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], computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total 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], computer integrated manufacturing [CIM]
    • G05B19/41815Total 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], computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
    • G05B19/41825Total 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], computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell machine tools and manipulators only, machining centre
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Abstract

규칙적이고 주기적인 방식으로 동작하는 웨이퍼 클러스터 툴이 개시된다. 본 발명의 실시예들은 한 전송 주기의 주기성을 갖는다. 본 발명은 클러스터 툴에서의 공정 챔버들에 대한 픽업 시간들을 결정할 수 있으며, 본 발명의 실시예들은 갱신된 시간표를 생성하고 관리할 수 있다. 시간표는 각 공정 챔버들이 서비스될 시간들을 나타낸다. 이러한 값들은 공정 챔버가 새로운 웨이퍼들을 수신할 때 갱신된다. 클러스터 툴의 로봇들은 서비스될 모듈들 또는 공정 챔버들 앞에 자신을 미리위치시킨다. 이러한 로봇 선 위치결정은 모듈들에 대해 미리 결정된 큐 시간의 범위를 넘는 개별적인 모듈들의 대기 시간을 없앤다. 이는 개별적 로봇들의 경로가 미리 결정될 수 있게 하고, 클러스터 툴이 단일 그리퍼 로봇들을 이용할 수 있게 한다.

Description

웨이퍼 공정 시스템에서 로봇의 선 위치결정{ROBOT PRE-POSITIONING IN A WAFER PROCESSING SYSTEM}
본 발명은 웨이퍼 공정에 관한 것으로서, 특히 웨이퍼 클러스터 툴들에 대한 스케쥴링 기술들에 관한 관한 것이다.
집적 회로와 같은 반도체 디바이스를 제조 공정에서, 디바이스를 형성하기 위해 많은 미세 제조 단계들이 수행된다. 이러한 단계들은 개별적인 모듈들의 개별적인 제조 아이템(item)에 대해 순차적으로 수행되며, 이러한 제조 항목은 로봇들과 같은 이송 메커니즘들에 의해 모듈들 간에 이송된다. 바람직한 처리량, 신뢰성 및 제조 품질을 얻기 위해서는, 다음과 같은 몇 가지 조건들이 충족되어야 한다.
1) 공정 모듈들로/로부터의 기판의 이송 및 제거 뿐 아니라, 모듈들 간에서의 웨이퍼의 이송은 시간적인 방식으로 이루어져야 한다. 이러한 시간적인 방식의 기판의 이송 또는 제거는 기판의 흐름이 주기적이고 동기화된 방식으로 유지될 때에 달성된다. 주기성 및 동기화가 유지되지 않으면, 공정 결과들은 기판 간에 일치하지 않게 될 것이며, 기대되는 처리량이 감소될 것이다.
2) 기판들의 공정 내력에 있어서의 변화로 인한 공정 결과의 불일치를 피하기 위해서는, 유사한 공정 흐름 경로들로 기판을 이송시키는 것이 바람직하다.
3) 제품들은 임계 공정(critical process)들이 수행되는 모듈들 내에 체류하는 어떠한 선공정 또는 후공정 시간도 소비해서는 안된다. 이러한 모듈들에 선공정 또는 후공정 시간을 부가하게 되면, 처리량 뿐 아니라 공정 결과를 저하시킨다. 예를 들어, IC 제조 시스템에서, 기판이 포토레지스트 필름층을 베이크시키기 위해 스핀 코팅 모듈로부터 베이크 모듈로 즉시 이송되지 않는 다면, 결과적인 막의 두께를 예측할 수 없게 된다. 선공정 그리고/또는 후공정 시간을 아주 없앨 수 없다면, 가능한한 짧아져야 하며, 이 시간들 동안에는 어떠한 변화도 허용될 수 없다.
이송 충돌들을 해결하지 못하기 때문에, 상기 조건들중 어느 것 또는 모두를 충족시키지 못하게 된다. 이러한 충돌들은, 개별적인 모듈들이 로봇으로 하여금 이러한 모듈들을 서비스하기에는 부족한 시간 내에서 서비스를 할 것을 요구하는 상황들이다.
상기 설명된 문제들에 대한 종래의 한 해결책은 추가적인 공정 모듈들 및 이송 자원들을 부가하는 것이다. 그러나, 트랙 시스템의 크기 제한 및 기하학적인 제한은, 추가적인 공정 모듈들 및 이송 자원들을 부가하여 상기 문제들을 해결할 수 있는 가능성을 제한한다.
선공정 그리고/또는 후공정 시간을 일부 없애고 처리량을 증가시키는 데에 이용되는 다른 방법은, 인접하는 모듈들 간에서 기판을 이송하는 전용 이송 암들(이하 인터 베이 이송 암들, 또는 IBTAs라 명명함)을 부가하는 것이다. 그러나, IBTAs의 부가 또한 심각한 단점들을 갖는다. 전용 전송 암들은 툴을 복잡하게 하고, 비용을 증가시키며, 모듈들의 위치를 제한하고, 그리고 툴의 모든 곳에서 이용할 수 없다. 결과적으로, 높은 처리량 및 품질을 모두 유지하면서 트랙 시스템에서 기판 흐름을 관리하고 모든 이송 충돌들을 해결하기가 어려워진다.
또 다른 일반적인 해결책은 기판 이송 우선순위 룰들의 세트를 지정하는 것이다. 어떠한 로봇도 시동되기 전에, 소프트웨어 스케쥴러라고도 일컬어지는 제어 시스템이 서로 다른 모듈들에서의 기판들의 상태를 확인하고, 상기 룰들에 기초하여 이송 우선순위 결정을 한다. 그러나, 높은 처리량을 달성하기 위해, 스케쥴러는 임계 모듈들에서의 바람직하지 않고, 예측불가능하며 그리고 가변적인 선공정 및 후공정 시간을 야기시킬 수 있으며, 그리고 상기 기판은 또한 그들의 공정 주기를 완료하기 위해 서로 다른 흐름 경로들을 따라야 한다.
또 다른 일반적인 해결책은 웨이퍼들의 스와핑(swapping)을 가능하게 하는 다중 그리퍼(gripper)들을 로봇에 부가하는 것이다. 이러한 다중 그리퍼 로봇들이, 웨이퍼 스와핑을 가능하게 하고 로봇의 이송수를 최소화하기 위해 종래에 종종 이용되었다. 그러나, 이러한 기술은 클러스터 툴에 부가적인 제한을 가하는데, 이는 두 개의 그리퍼들을 갖는 로봇은 스와핑을 수행하기 위해 그리퍼들중 하나 상에 하나의 웨이퍼들을 필요로 하기 때문이다. 이러한 제한들은 클러스터 툴의 성능을 제한한다. 또한, 상기 스와핑은 모듈들 간의 이송 시간을 증가시킴으로써, 클러스터 툴의 성능을 감소시킨다.
지금까지는, 상기 설명한 충돌 해결, 동기화, 품질 및 경로 일관성에 대한 요건들을 완전히 충족시키지 못했다. 따라서, 이러한 모든 요건들을 동시에 처리할 수 있는 해결책이 필요하다.
도 1은 웨이퍼들이 클러스터 툴 내로 적재되는 지점을 나타낸 시간 라인으로서, 여기서 각 지점은 한 전송 주기의 간격들에 의해 분리된다.
도 2는 공정(i)에서 3개의 웨이퍼들의 상대적이고 절대적인 픽업 시간들과 이 픽업 시간들의 가수(mantissa)들을 나타내는 바, 여기서 픽업 시간들은 전송 주기에 대해 표준화된다.
도 3은 클러스터 툴의 다양한 모듈들 및 전송 모듈들을 예시한다.
도 4는 클러스터 툴의 모듈 경로들을 나타내는 도표 및 대응표이다.
도 5는 클러스터 툴의 레시피를 나타낸 표이다.
도 6은 전송 주기에서 발생하는 모듈 픽업 시간들의 그래프 및 대응표로서, 여기서 한 개의 전송 기간 내에서 6개의 가능한 로봇들이 이동하기 때문에, 전송 기간은 6개의 하위 간격들로 분할된다.
도 7은 로봇들을 액세스함에 있어서 공정들 간에 발생하는 충돌들을 나타낸 그래프 및 대응표로서, 여기서 충돌들은 한 로봇에 할당된 두 개의 모듈들이 단일 주기 내에서 픽업 요구를 가질 때 표시된다.
도 8은 그래프와 수반되는 표들 및 매트릭스들로서, 로봇들을 액세스하는 모듈들 간의 충돌들을 제거하기 위한 큐들의 삽입을 도시한다.
도 9는 클러스터 툴의 레시피 및 레시피 시간들을 나타낸다.
도 10은 클러스터 툴의 정상 상태에서의 웨이퍼 흐름을 나타낸다.
도 11은 클러스터 툴이 진입 로트(entering lot) 및 이탈 로트(exiting lot)를 처리하는 변환 주기를 나타낸다.
도 12는 본 발명의 일 실시예에 따른 클러스터 툴의 진입 로트의 제 1 웨이퍼의 타이밍을 나타낸다.
도 13은 본 발명 일 실시예의 다수의 국부 클럭들을 나타낸다.
도 14는 본 발명의 실시예에서 이용되는 로봇 위치결정 알고리즘을 나타낸다.
본 발명은 주기적 방식으로 웨이퍼 클러스터 툴을 조작하는 것을 포함한다. 클러스터 툴은 시스템 내에 적재된 웨이퍼들을 한 전송 주기 간격으로 처리한다. 웨이퍼들은 다수의 공정 챔버에서 처리되며, 그리고 로봇들 또는 웨이퍼 이송기들을 이용하여 공정 챔버들 간에 이송된다. 본 발명의 실시예들은 한 전송 주기의 주기성을 갖는다.
본 발명은 공정 챔버들에 대한 픽업 시간들을 결정할 수 있으며, 본 발명의 실시예들은 갱신된 시간표를 생성하고 관리할 수 있게 한다. 상기 시간표는 각 공정 챔버가 서비스되는 때의 시간을 나타낸다. 이러한 값들은 공정 챔버들이 새로운 웨이퍼들을 받아들일 때 갱신된다.
클러스터 툴 내의 로봇들은 서비스될 모듈들, 또는 공정 챔버의 전면에 자신들을 미리 위치시킨다. 이러한 로봇의 선 위치결정은 모듈에 대해 기 설정된 큐 시간들을 넘는 개별 모듈들의 대기 시간을 없앨 수 있다. 이는 개별적인 로봇들의 경로를 미리 결정할 수 있게 하여, 클러스터 툴이 단일 그리퍼 로봇들을 이용할 수 있게 한다.
본 발명의 일부 실시예들은 다수의 공정 스테이션들을 포함하는 바, 각 공정 스테이션은 공정 챔버와 이 공정 챔버에 결합된 국부 클럭을 포함한다. 이러한 실시예들에서, 클러스터 툴은 또한 각 공정 스테이션의 국부 클럭과 통신하는 마스터 서버를 포함한다. 이 마스터 서버는 마스터 클럭과, 그리고 다수의 공정 스테이션들의 각 클럭에 대한 국부 시간을 기록하는 시간표 소프트웨어를 포함한다.
이러한 일부 실시예들에서, 웨이퍼 클러스터 툴은 또한 공정 스테이션에 결합된 CPU를 갖는 바, 공정 챔버에 결합된 국부 클럭은 CPU 상에 있다. 웨이퍼 클러스터 툴은 또한 마스터 서버를 각 국부 클럭에 결합시키는 국부 영역 네트워크를 포함한다. 상기 시간표는 관련된 데이터 베이스 또는 스프레드시트의 형태를 가질 수 있다. 상기 메인 서버는 인터넷을 통해 국부 클럭들에 결합될 수 있다.
동기화된, 충돌 해결 스케쥴러
본 발명의 일 양상은 시스템 자원들에 대한 충돌들을 제어하는 주기적이고 예측 가능한 방식으로 시스템의 이벤트들을 스케쥴링함으로써 제조 시스템의 처리량 및 품질을 최대화하는 방법을 제공한다. 이러한 제조 시스템의 예는 개별적인 제조 유닛들 상에서 순차적으로 수행되는 일련의 공정 단계들(1,...,N)을 포함한다. 이러한 시스템의 개별적인 공정 단계들은 "모듈들" 또는 "공정 챔버"에서 수행되며, 일련의 공정 단계들은 "레시피"에 리스트된다. 이러한 제조 시스템은 또한 일련의 모듈들 간에 제조 유닛들을 이송하는 자원들을 포함하며, 이러한 자원들은 로봇들을 포함할 수 있다.
각 모듈이, 로봇이 모듈들을 서비스하기에 불충분한 시간 간격 내에서 로봇으로 하여금 서비스할 것으로 요구하게 되면, 시스템에서 공정들 간의 충돌들이 야기된다. 또한, 주기성을 나타내는 방식으로 시스템을 스케쥴링함으로써, 시스템의 이벤트들이 동기화되어 주기적이고 예측가능한 간격들에서 발생하는 것이 바람직하다. 본 발명의 실시예는 시스템의 처리량 또는 품질을 저하시키지 않으면서 이러한 모든 충돌들을 없애고 주기성을 강화하기 위해, 제조 공정의 다양한 단계들에서 지연들을 선택적으로 스케쥴링하는 기술을 포함한다.
충돌 해결 동기화의 예: 웨이퍼 클러스터 툴
상기 설명된 타입의 제조 시스템의 예로는 웨이퍼 클러스터 툴이 있다. 웨이퍼 클러스터 툴에서, 모듈들은 웨이퍼 상에서 공정 단계들의 시퀀스를 수행하기 위해 웨이퍼 이송 자원들 또는 로봇들의 그룹 주위에 구성되는 공정 챔버들을 포함한다. 웨이퍼는 적재 포트로 일컬어지는 버퍼를 통해 클러스터 툴에 들어오고 나간다. 로봇이 적재 포트로부터 웨이퍼를 검색하면, 웨이퍼는 레시피에 규정된 일련의 모듈들로 순차적으로 이송된다. 모듈로의 웨이퍼의 진입 및 모듈로부터의 웨이퍼의 제거에 의해 정의되는 시간 간격은 모듈 공정 시간으로 일컬어진다. 이러한 공정 시간은 모듈에서 웨이퍼를 실질적으로 처리하는 데에 소모한 시간 뿐 아니라 처리 및 공정 및 픽업을 위해 웨이퍼를 준비하는 데에 필요한 총 시간을 포함한다.
(주목할 사항으로서, 상기 웨이퍼 클러스터 툴은 모듈들 간에 개별적인 웨이퍼를 이송하는 것으로서 설명되었지만, 본 발명은 모듈들 간에 불연속적인 웨이퍼들의 세트가 이송되는 웨이퍼 클러스터 툴에도 적용될 수 있다.)
어떠한 클러스터 툴의 모듈들에서, 공정 처리되는 웨이퍼를 픽업하는 데에 있어서의 지연은 웨이퍼 상의 결과에 악영향을 미칠 수 있는 바, 이러한 모듈들은 지연을 허용할 수 없기 때문에 "임계 공정 모듈들"로서 식별된다. 클러스터 툴의 모든 모듈들 중에서 가장 긴 공정 시간을 갖는 모듈은 "게이팅 모듈"로 식별되는 바, 이러한 모듈에서의 공정 시간이 클러스터 툴의 처리량을 결정한다. 이러한 게이팅 모듈이 클러스터 툴의 처리량을 결정하기 때문에, 이 또한 지연을 허용할 수 없다. 웨이퍼 클러스터 툴에 대한 레시피는 순차적인 순서로 모듈들을 그들의 각각의 공정 시간과 함께 리스트한다. 로봇이 두 개의 모듈들 간에서 웨이퍼를 이송하는 데에 필요한 시간은 그의 이송 시간으로서 일컬어진다.
클러스터 툴의 웨이퍼 흐름 관리
웨이퍼 흐름 관리, 즉 클러스터 툴에서의 웨이퍼 공정 및 웨이퍼 이송의 조정은 시스템에 의해 이송되는 웨이퍼 상의 결과 및 처리량을 결정한다. 효율적인 웨이퍼 흐름 관리는 다음의 두 가지 조건들을 동시에 만족시켜야 하는 바: 전송 모듈에서 금방 처리되었으며 이동할 준비가 된 웨이퍼는 (1) 웨이퍼가 순차적으로 처리될 수신 모듈이 비어있고, 그리고 (2) 이러한 모듈들 간에 웨이퍼를 이송시키도록 지정된 로봇이 이용가능할 때 처리되어야 한다. 종래 기술에서, 조건 (1)은 부가적인 잉여 모듈들을 제공함으로써 만족되었다. 그러나, 이러한 해결책은 다음과 같은 두 가지의 방식, 즉 (a) 너무 많은 모듈들을 서비스하는 부적절한 로봇들의 수를 야기시키거나, (b) 두 개 이상의 모듈들이 동시에 로봇의 서비스를 경쟁하게 함으로써, 조건 (2)와 절충된다.
상기 리스트된 두 개의 조건들이 절충되면, 웨이퍼 픽업 지연이 야기된다. 이러한 지연이 임계 공정 모듈에서 일어난다면, 이들은 웨이퍼 상의 결과에 악영향을 미친다. 그리고 이러한 지연들이 게이팅 모듈에서 일어난다면, 이들은 처리량을 감소시킨다. 이와 같이, 상기 리스트된 이송 조건들은 임계 공정 모듈들 및 게이팅 모듈에 대하여 보장될 필요가 있다. 제공할 수 있는 로봇들 보다 더 많은 핸들링이 요구되는 (a)의 경우에는, 더 많은 로봇들을 부가하여 상황을 완화시킬 수 있다. 그러나, (b)의 경우, 문제는 로봇 서비스 요구의 타이밍시 존재한다. 더 많은 로봇들을 부가하여 (b) 경우를 완화시킬 수 있기는 하지만, 이는 부적절한 해결책이다.
상기 클러스터 툴에 대해 규정된 레시피가 로봇 서비스 요구의 타이밍들을 결정하기 때문에, 상기 두 가지 조건들에 대한 근본적인 해결책은 웨이퍼 이송을 동기화시키기 위해 웨이퍼 레시피를 변경하는 것이다. 본원에서 설명되는 스케쥴링 알고리즘은 이러한 동기화를 수행한다.
본원에서 설명되는 이러한 스케쥴러는 컴퓨터로 실행되는 소프트웨어에 엔코드될 수 있는 바, 상기 컴퓨터는 상기 소프트웨어를 저장하는 메모리와 상기 소프트웨어를 실행하는 CPU를 포함한다. 본 발명의 일 실시예에서, 상기 스케쥴러는 시스템에 대하여 미리 결정되는 스케쥴을 발생시키기 위해 상기 제조 시스템으로부터 오프라인으로 이용될 수 있다. 대안적으로, 상기 컴퓨터는 스케쥴러가 시스템의 동작을 실시간으로 갱신할 수 있도록 제조 시스템에 결합된다.
클러스터 툴에서의 웨이퍼 흐름 동기화
본 발명의 실시예에서, 웨이퍼 흐름은 클러스터 툴을 통해 일정한 속도로 개별적인 웨이퍼들을 이송함으로써 동기화된다. 툴의 "전송률(sending rate)"로 일컬어지는 이러한 전송률은 시간당 웨이퍼들의 수로 표시되며, (3600/전송 속도) 초와 동일한 주기성을 갖는 웨이퍼 흐름을 유지한다. 클러스터 툴의 전송 주기로 일컬어지는 이러한 주기는 시스템의 심장 고동이다. 개별적인 웨이퍼 유닛들은 한 전송 주기의 간격들로 시스템에 유입된다. 클러스터 툴을 동기화시키기 위해, 모든 공정 및 이송 시간들은 전기적인 시간 단위로 측정된다. 또한, 동일한 작업들이 다음 주기들에서도 반복될 수 있도록, 클러스트 툴의 로봇들은 단일 전송 주기 내에서, 이하 "작업(task)들"로 일컬어지는, 모든 서비스 요구들을 완수하도록 스케쥴된다. 이와 같이, 클러스터 툴의 동기화는 1) 한 전송 주기 내에서 수행되는 총 작업들의 수와, 그리고 2) 이러한 작업들의 이루어지는 전송 주기 내의 정확한 순간을 결정할 것을 요구한다. 이러한 개별적인 순간들은 이하 각 작업들의 "타이밍들"이라 일컫는다.
도 1은 전송 주기들 및 동기화의 개념들을 도시한다. 시간 라인(100)은 제 1 웨이퍼가 클러스터 툴 내에 적재되는 순간을 나타내는 원점(102)을 갖는다. 이 시간 라인(100)은 하나의 전송 주기(110)의 단위들로 분리된다. 각 구획(104, 106, 108)은 각각 제 2, 3 및 4 웨이퍼들이 클러스터 툴 내에 적재되는 시간들을 나타낸다.
동기화의 주요 특징은 주기성인 바, 본 발명은 각 작업(i), i=1,...,n, 에 있어서, 작업이 수행되는 모든 웨이퍼에 대한 픽업 시간이 동일함을 보장한다. 따라서, 클러스터 툴에서의 각 작업(i)은 Ti로 표시된 상대적인 픽업 시간과 관련되는 바, 여기서 Ti는 전송 주기의 단위로 표준화된다. 도 2는 이러한 주기성 특징을 도시한다. 3개의 웨이퍼들, 즉 웨이퍼 1(208), 웨이퍼 2(210), 웨이퍼 3(212)이 수직축(202) 상에 도시된다. 수평선은 시간축(200)을 도시한다. 이러한 축들의 원점(201)은 웨이퍼 1이 클러스터 툴 내에 적재되는 시간을 나타낸다. 작업(i)에서 상대적인 픽업 시간들(Ti)(200)은 각 웨이퍼에 대해 동일하다. 웨이퍼들 자체는 하나의 전송 주기의 간격들로 유입되기 때문에, 실질적인 픽업 시간들은 한 전송 주기의 단위로 분리된다.
도 2는 또한 상대적인 픽업 시간들과 "실제" 또는 "절대적인" 픽업 시간들 간의 차이를 도시한다. 공정 (i)의 상대적인 픽업 시간은 Ti(204)로 표시된다. 상대적인 픽업 시간은 웨이퍼가 웨이퍼 클러스터 툴 내에 유입되는 시간으로부터 측정되기 때문에, 각 웨이퍼, 즉 웨이퍼 1(208), 웨이퍼 2(210) 및 웨이퍼 3(212)에 대한 상대적인 픽업 시간은 동일하다. 절대적인 픽업 시간(214)은 제 1 웨이퍼가 클러스터 툴(201) 내로 적재되는 순간으로부터 측정된다. 웨이퍼는 한 전송 주기의 간격들로 유입되기 때문에, 모든 웨이퍼 번호(w)에 대해, 모듈(i)에서의 웨이퍼(w)의 절대적인 픽업 시간은 다음과 같다:
(w-1)+Ti
이러한 주기(w-1)는 숫자(216)로 도시된다.
동기화에 있어서 중요한 다른 파라미터는 기호(τi)로 표시된다. τi = Ti-INT(Ti)는 현재 전송 주기가 시작된 이후 경과된 Ti의 부분이며, 여기서 INT(Ti)는 Ti를 가장 가까운 정수로 내림하는 함수이다. 이러한 파라미터들(206) 또한 도 2에 도시된다. 상기 Ti 값들은 각 웨이퍼에 대해 동일하고, 웨이퍼들은 하나의 전송 주기의 간격들에서 삽입되기 때문에, τi의 값들(206)은 각 웨이퍼에 대해 동일하다. 이러한 부분들, τi, i=1,2,3,...N은 로봇들이 한 전송 주기 내에서 완수해야만 하는 작업들의 타이밍들을 포함한다.
작업들의 수(N) 및 이러한 작업들의 타이밍들이 이송 부하를 구성한다. T i 는 공정 시간들 pj, j=1,2,3...j 및 로봇 전송 시간들 tj, j=1,2,3...i-1의 i번째 모듈까지의 누적값이기 때문에, 모든 웨이퍼에 대하여 모듈(i)에서의 상대적인 픽업 시간은 다음과 같다:
; i=1,2,3...N 이다.
상기 작업들의 타이밍, τi=1,2,3...N은 다음과 같다:
τi = Ti-INT(Ti)
; i=1,2,3...N 이다 (1)
전송 시간(ti)은 소정의 클러스터 툴에 대해 고정되기 때문에, 식 (1)로부터 로봇 작업의 타이밍(τi)이 레시피에 의해 규정된 공정 시간들(pi)에만 좌우됨은 명백하다.
주기성 및 웨이퍼 식별
주기성 특징 또한 클러스터 툴의 웨이퍼들을 식별할 수 있게 한다. 하기 설명되는 바와 같이, 동기화된 스케쥴러는 1) 웨이퍼들이 한 전송 주기의 간격들로 순차적으로 클러스터 툴 내에 적재되며, 그리고 2) 이들이 적재된 순간에 대해 측정될 때, 클러스터 툴 내로 적재되는 각 웨이퍼가 동시에 동일한 이벤트들을 겪게 한다. 이러한 두 조건들의 결과는, 웨이퍼는 한 전송 주기의 간격들에서, 이들이 처음에 적재되었던 순서로 클러스터 툴의 각 모듈로 들어가고 나온다는 것이다. 이와 같이, 모듈의 각 웨이퍼는 모듈에 들어오고 나가는 순서를 추적함으로서 간단히 식별될 수 있다. 이러한 동기화된 스케쥴러의 특징은 웨이퍼 식별 또는 웨이퍼 "태깅(tagging)"으로 일컬어진다.
태깅과 모듈 경로들
본 발명의 실시예에서, 클러스터 툴 내에 적재되는 각 웨이퍼는 특정한 "모듈 경로", 즉 클러스터 툴에서의 공정들에 대응하는 특정한 모듈들의 세트를 따른다. 본 발명의 이러한 특징은 도 4에 도시된다. 본 실시예에서, 클러스터 툴에서의 각 공정은 웨이퍼들이 처리되는 하나 이상의 관련 모듈들을 갖는다. 각 공정에 대한 모듈은 차례로 배열되며, 이에 따라 웨이퍼들이 그 공정에 도달할 때, 이들은 순차적인 순서로 해당 모듈들에 위치된다. (예를 들어, 공정이 두 개의 해당 모듈을 갖는 경우, 시스템의 제 1 웨이퍼는 제 1 모듈로 가고, 제 2 웨이퍼는 제 2 모듈로 가며, 제 3 웨이퍼는 제 1 모듈로 가고, 제 4 웨이퍼는 제 2 모듈로 가는 식이다.) 결과적으로, 웨이퍼가 따르는 전체 모듈 경로들의 수는 각 공정에 해당하는 모듈들의 최소 공배수로 제한된다.
상기 설명된 실시예는 도 4의 예로 설명된다. 도 4는 공정 단계들, VP400, VPC402, CT404, SB406, SBC408, PEB410, PEBC412, DEV414, HB416, HBC418의 순서를 보여준다. 공정 단계의 기호는 공정 단계에 해당하는 각 모듈에 대해 표시된다. 예를 들어, 공정(CT404)은 3개의 모듈들을 가지며, 해당하는 기호(CT)는 세 번 나타난다(404). 각 공정 단계 윗쪽에 있는 것은 그 공정 단계(420)에 대한 모듈들의 수이다.
본 예에서, 모듈들의 최소 공배수는:
LCM(2,2,3,3,3,3,3,4,2,2)=12이다.
이에 따라, 클러스터 툴에 대한 레시피는 12개의 모듈 경로들을 규정하는 바, 이들은 422로 리스트된다. 표(422)의 각 열은 각 모듈 경로에서의 그 공정 단계에 대한 모듈의 수를 리스트한다. 12개의 가능한 경로들이 있기 때문에, 매 12번째 웨이퍼가 동일한 모듈 경로를 따르게 된다. 이와 같이, 웨이퍼가 클러스터 툴 내에 적재되었던 순서로 웨이퍼를 식별함으로써, 본 발명은 웨이퍼가 따르는 모듈 경로를 결정할 수 있게 된다.
이송 자원들에 대한 충돌들을 제거하기 위하여 큐들의 부가
레시피가 특정 로봇들에 대해 동시 경쟁 서비스 요구들을 발생시키는 경우, 더 많은 로봇들을 부가하여 충돌들을 해결하는 것이 아닌, 그의 레시피를 변경함으로써 충돌들을 해결하는 것이 바람직하다. 이러한 레시피를 변경하기 위한 하나의 편리한 방법은 툴에 의해 전달되는 웨이퍼 상의 결과들 또는 처리량을 저하시키지 않으면서 상기 충돌들을 해결하는 타이밍을 얻기 위하여, 비임계 공정 단계들에 대해 고의적인 지연들, 이하 큐들(qj)이라 명명함, 을 도입하는 것이다. 식(1)과 함께 이용되는 이러한 방식이 "동기화 알고리즘"에 대한 기초이다. 다시 한번 말하지만, 초기에 규정된 레시피는 경쟁 서비스를 도입하는 바, 이는 임계 공정 및 게이팅 단계들에 지연을 야기시킴으로써, 단일 웨이퍼 클러스터 툴의 웨이퍼 품질 및 처리량을 저하시킨다. "동기화 알고리즘"의 목적은, 임계 공정 단계들 또는 게이팅 단계들에 어떠한 지연도 발생되지 않게 하여, 웨이퍼의 품질 및 처리량을 보장하기 위하여, 비임계 공정 단계들에 고의적인 지연들을 삽입하는 것이다.
큐들에 대한 해결책
이제, 상기 지연들 또는 qj를 해결하는 방법에 대해 설명한다. 식(1)에 의해, τ를 소정의 레시피에 의해 규정된 로봇 작업들의 타이밍이라고 하자. 레시피를 변경하기 위해 공정 시간(pj)에 큐들(qj)을 부가함으로써, 새로운 타이밍 τ*이 다음과 같이 주어진다.
어떠한 두 개의 모듈들(k 및 m) 간의 시간 간격이 로봇의 이송 시간 보다 더 크도록, 비임계 공정 단계들에 삽입될 큐(qi)들의 세트를 찾는 것이 목적인 바, 여기서
k=1,2,3,...N이고
m=k,k+1,...,N이며, 모듈(k) 및 모듈(m)은 동일한 로봇에 의해 픽업되는 그들의 로봇을 갖도록 지정된다. 이는 로봇이 모든 모듈들을 서비스하기에 충분한 시간 간격들을 제공함으로써, 소정의 시간에 하나 이상의 모듈을 서비스해야 하는 필요성을 없앤다. 그러나, 이렇게 얻어진 큐들은 또한 모듈들의 과도한 체류 시간을 피할 수 있도록 충분히 작아야 한다. 그리고, 임계 공정 모듈들 또는 게이팅 모듈들에는 어떠한 큐들도 있어서는 안된다.
큐들의 세트는 식 (2)를 이용하여 풀린다. 이는 선형 방정식 의 시스템을 산출하는 바, 여기서 aij는 하삼각 행렬으로서, i<j에 대해 aij=0 이며, i≥j에 대해 aij=1이다.
임계 모듈들에서는 어떠한 지연도 발생되지 않아야 한다는 제한은 이제 식 (3)에 적용된다. 예를 들어, 모듈(#3 및 #4)이 임계적인 경우, 식 (3)은 다음과 같은 선형 방정식으로 변형될 것이다.
상기 식 (4)에서, 초기 레시피에 의해 규정된 타이밍(τi)은 알려져 있다. 타겟 타이밍들(τi *)은 상기 설명된 바와 같이 동일한 로봇을 이용하여 모든 모듈들 간의 충돌들을 제거하는 값으로 설정된다. 따라서, 식 (4)의 LSH는 알려진 값들이다. 그런 다음, 벡터(qi)가 하기 식 (5)에 나타낸 변형된 구속 매트릭스의 역에 (τi *i)를 미리 곱함으로써 풀린다. 해당 모듈 공정 시간(pi)에 이러한 qi의 세트를 부가하게 되면, 웨이퍼 공정과 이송을 동기화시킬 것이다.
동기화 알고리즘의 응용
이제, 본 발명의 다양한 특징들을 상세히 설명하는 비한정적인 예인 본 발명의 특정한 실시예들에 대해 설명한다. 이러한 예는 단지 본 발명이 실행될 수 있는 방법들의 이해를 돕고, 나아가 당업자들로 하여금 본 발명을 실시할 수 있도록 하기 위한 것이다. 따라서, 개시된 예가 본 발명의 범위를 한정하는 것으로 간주되서는 안된다.
이제, 클러스터 툴의 특정한 예를 이용하여 클러스터 툴에서 웨이퍼 공정과 웨이퍼 이송의 동기화를 설명한다. 도 3은 웨이퍼 공정 장치의 개념적인 평면도이다. 레지스트 코팅 및 현상 모듈들은 각각 CT300 및 DEV302로 식별된다. 또한, 도 3에는, 서로 다른 베이크 모듈들 기상 프라임(VP)(304), 소프트 베이크(SB)(306), 후 노광 베이크(PEB)(308), 하드 베이크(HB)(310) 및 이들의 해당 냉각 모듈들이 도시된다. 인접하는 베이크 및 냉각 모듈들을 연결하는 화살표들은 이러한 모듈들 간에 기판을 이송시키는 IBTA들(312)을 나타낸다. 결과적으로 이러한 베이크 모듈들의 위치들은 그들에 해당하는 냉각 판들의 위치를 제한한다. 도면에 도시된 카세트 엔드 스테이션(CES) 로봇(314)은 카세트 엔드 스테이션으로부터/으로 기판들을 이송한다. 스텝퍼 인터페이스(SI) 로봇(316)은 기판을 스텝퍼 인터페이스로부터/로 이송한다. I/O 모듈(318)은 필요한 경우 스텝퍼 인터페이스로 이송되는 기판에 대한 버퍼 영역이다. 주 로봇(320)은 기판을 서로 다른 모든 모듈들 간에, 예를 들어 기상 프라임 냉각기(VPC)에서 레지스트 코팅 모듈(CT)로 이송하는 수단이다.
도 4는 웨이퍼 공정 흐름의 개략도이다. 이로부터 알 수 있는 바와 같이, 이송 수단이 IBTA인 경우, 기판은 흐름도에서 단지 하나의 선택권 만을 갖게 될 것이다. 이는 기판이 기상 프라임 베이크(400)에서 기상 프라임 냉각기(402)로 이송되는 경우이다. 그러나, 이송 수단이 주 로봇일 때, 기판은 몇 가지의 선택권을 가질 수 있다. 예를 들어, 기판이 레지스트 코팅 모듈(404)로부터 제거될 때, 이는 도 4에 도시된 임의의 소프트 베이크 모듈들(406)로 이송될 수 있다.
동기화 알고리즘
이제, 클러스터 툴에 대한 동기화 알고리즘의 응용을 4개의 단계들로서 설명한다.
단계 1: 레시피 및 처리량 요건 입력. 이 설명은 도 5를 참조한다. 이 단계는 표(500)에 레시피를 삽입하는 것으로부터 시작된다. 처음의 두 열들(502)은 순차적인 순서로 공정 단계들을 리스트한다. "시스템 타트(takt) 시간"으로 일컬어지는 전송 주기가 504로 표시된다. 그런 다음, 각 모듈 타트 시간이 시스템 타트 시간 보다 짧다는 것을 보장하기 위해, 모듈 타트 시간들로서 알려진 주기 시간들이 "모듈 타입" 열(502)의 각 모듈에 대해 계산된다. 각 공정 단계에 대한 모듈 타트 시간이 열(506)에 리스트된다. 만일 모듈 타트 시간이 시스템 타트 시간 보다 길다면, 모듈 타트 시간을 줄이기 위해 잉여 모듈들이 부가된다. 당업자들에게 명백한 바와 같이, 각 공정 단계들에 있어서,
요구되는 모듈들의 수 = INT(모듈 타트 시간/시스템 타트 시간)이다.
본 예에서, 대부분의 모듈들은 하나의 부가적인 잉여 모듈을 필요로 한다. 각 공정 단계에 대해 요구되는 모듈들의 수는 열(508)에 리스트된다.
단계 2: 웨이퍼 이송의 부하 결정. 상기 정의한 바와 같이, 로봇의 "부하"는 로봇이 하도록 스케쥴된 이동들의 수 및 로봇이 이러한 이동들을 수행하도록 할당된 시간들을 말하는 바, 이러한 시간은 현재 전송 주기의 처음에서부터 측정된다. 이는 현재 전달 기간의 시작으로부터 측정되는 바와 같은 이러한 동작들을 수행하도록, 상기 로봇에 할당된 시간들을 고려해 스케쥴된다. 이러한 로봇 부하의 결정은 도 6의 표(600)에 도시된다. 본 예의 클러스터 장치는 12개의 공정 단계들을 갖는다. 12개의 해당 로봇 이동들의 타이밍들은 다음과 같이 결정된다. 웨이퍼가 부하 포트(카세트)를 떠나는 순간으로부터 시간을 계산하여, 각 모듈들의 공정 시간들 및 관심있는 모듈까지의 이송 시간을 누적한다. 예를 들어, 모듈 코드 명명된 VP(602)(이후 모든 모듈들은 코드화됨)에 대해서는 (62+6)=68초이고, 모듈 VPC(604)에 대해서는 (68+65+5)=138초이다. 모든 로봇 이동들에 대한 초 단위의 실제 타이밍들은 "실제"(606)라고 표시된 열에 리스트된다. 상대적인 픽업 시간들(Ti)을 결정하기 위해, 실제 시간들은 실제 전송 주기로 나누어진다. 예를 들어, VP 및 VPC의 실제 픽업 시간들을 45초의 실제 전송 주기로 나누게 되면, 각각 표준화된 시간들 1.511 및 3.067을 발생시킨다. 상기 12개의 각 공정 단계들에 대한 표준화된 픽업 시간들은 "Ti 표준화"(608) 열에 리스트된다.
Ti 값들의 정수 부분을 빼게 되면 τi 값들, 즉 각 모듈들이 로봇들에 의해 서비스되어야 하는 유용한 시간들이 발생되는 바, 이는 전송 주기의 시작으로부터 측정되며 한 전송 주기의 단위로 표현된다. 예시에서, VP 및 VPC의 τi 값들은 0.511과 0.067인 바, 이는 VP는 한 전송 주기의 0.511 간격들 내에서 서비스되어야 하며, VPC는 한 전송 주기의 0.067 간격들 내에서 서비스되어야 한다는 것을 나타낸다. 표준화된 τi 값들의 리스트는 열(610)에 리스트된다. 다이어그램(612)은 부하의 그림 표현으로서, 한 전송 주기 내에서 서비스되어야 하는 총 12개의 이동들 및 시간이 있다. 도 7은 동일한 정보를 다른 관점으로 나타낸 것이다. 로봇 이송 시간들이 약 5 및 6초이기 때문에, 한 로봇이 45초의 단일 전송 주기 내에서 할 수 있는 이동의 수는 (45/6)~7즉, 6회이다. 따라서, 6개의 수직선들이 그래프(700)에 도시된다. 모듈들이 로봇에 의해 서비스되어야 하는 시간이 SBC(702), DEV(704), HB(706) 및 카세트(708) -이들 모두는 한 간격(710) 내에 있다- 와 같이 한 간격 내에 있을 때, 이는 모듈들이 소정 시간에 로봇의 동일한 이동에 대해 경쟁한다는 것을 의미한다. 좀 더 상세히 설명하여, 한 로봇을 이용하는 두 개 이상의 작업들이 있으며, 그리고 이러한 작업들의 τ값들이 6개의 간격들 중 하나에 있는 경우, 이는 로봇이 두 개 이상의 로봇들 각각을 서비스하는 시간이 불충분하다는 것을 의미한다.
이러한 로봇들을 이용하는 작업들 간의 "충돌들"은 다음의 단계들에서 설명되는 바와 같이 해결된다.
단계 3: 이송 부하의 할당. 제조 시스템의 충돌들을 해결하기 위한 제 1 단계는 균형있는 이송 부하를 달성하기 위해 로봇들 간에 부하를 동등하게 할당하는 것이다. 충돌들이 레시피에 좌우되기는 하지만, 로봇당 보다 적은 부하들을 하랑하게 되면 충돌 기회를 더욱 감소시킨다. 그러나, 부하들의 균형 가능성은 로봇들에 대한 모듈들의 레이아웃에 좌우된다. 불량한 레이아웃은 모듈들로의 접근가능성을 제한하고, 균형잡힌 부하들을 얻기가 어렵게 한다. 본 예에서는, 두 개의 로봇들(CES 및 SI)이 각각 두 개의 모듈들을 서비스하여, 부하의 벌크에 메인 로봇(C-1) 및 IBTA(인터 베이 이송 암)으로 알려진 세 개의 전용 로봇들을 남기도록 레이아웃된다. 도 7은 이러한 레이아웃의 제한 하에서 이송 부하의 최선의 할당을 도시한다. 6개의 모듈들(VPC(712), CT(714), SBC(716), PEBC(718), DEV(720) 및 HB(722))은 이들중 세 개, 즉 상기 설명한 바와 같이 로봇의 한 이동에 대해 경쟁하는 SBC, DEV 및 HB와 함께 메인 로봇(C-1)에 할당된다. 이러한 충돌들은 다음 단계에서 설명되는 큐잉에 의해 해결될 것이다.
단계 4 동기화를 위한 큐잉. 도 8의 표(800)의 정보는 단계 3으로부터의 부하 할당의 요약이다. 메인 로봇(C-1)에 의해 서비스되는 단지 6개의 모듈들, 즉 VPC(802), CT(804), SBC(806), PEBC(808), DEV(810) 및 HB(812) 만이 큐잉에 대해 고려될 필요가 있다. 나머지 모듈들은 각각 이들을 서비스하는 전용 로봇, 즉 IBTA를 갖기 때문에, 충돌들을 경험하지 않는다. 목표 열(814)에서, 목표 타이밍 프로파일은 상기 6개의 모듈들에 대해 설정된다. 표에 나열된 각 모듈들에 대하여, 해당하는 값이 τ*에 대해 설정되는 바, 여기서 τ*는 로봇들의 작업들 간에 충돌들을 제거하는 τ에 대한 갱신값이다. 상기 6개의 모듈들중 단지 3개, 즉 SBC(806), DEV(810) 및 HB(812) 만이 충돌하기 때문에, 단지 2개, 즉 DEV 및 HB 만이 레시피에 의해 규정된 τ에 대한 최초 값들과 다른 타이밍 목표들을 가질 필요가 있다. 타이밍 목표들은 열(814)에 리스트되며, 그리고 6개의 모듈들의 임의 쌍 간의 타이밍 간격이 로봇 이송 시간(=6/45~0.1333) 보다 크도록 설정된다. 최초로 규정된 타이밍 프로파일들과 목표 간의 차이는 갭들로 일컬어지며, 열(816)에 계산된다. 이들은 표에 인접한 그래프(818)에서 그림으로 도시된다. "동기화 알고리즘"의 다른 목표는 임계 공정 단계들에 어떠한 지연도 유입되지 않음을 보장하는 것이다. 본 예에서, 임계 공정 단계들은 단계 3(803), 단계 4(806) 및 단계 7(809)이다. 이러한 단계들에 대응하는 모듈들에는 어떠한 큐들도 부가되어서는 안된다. 즉, 이러한 모듈들에 대한 타겟 타이밍은 규정된 값과 동일해야 한다. 갭 열(816)에서 계산된 갭들은, 이러한 갭들을 메우게 될 큐들에 대해 풀기 위해 식 (3)에 대입된다. 그러나, 임계 모듈들에 지연이 없음을 보장하기 위해, 갭들 및 큐들에 관련된 매트릭스(818)는 변경된 매트릭스(820)를 발생시키도록 식 (4)에 의해 변경되어야 한다. 갭 열(816)로부터의 갭들과 변경된 매트릭스(822)의 역을 미리 곱하게 되면, 갭(824)을 메우는데 필요한 큐들을 생성한다. 이러한 큐들에 대한 해답은 큐 열(826)로 전달된다. 전송 주기 단위인 해답은 실제 큐 열(828)에서 실제 시간으로 변환된다.
단계 5: 해답의 검사. 단계 4에서 결정된 큐들은 최초 레시피의 모듈 공정 시간에 부가된다. 이는 충돌들이 해결되었는 지를 확인하기 위한 것이다. 이는 실제로는 도면에 도시된 경우이다.
로봇 할당
자동화의 장점이 있는 스케쥴링 문제의 다른 양상은 모듈들에 대한 로봇들의 할당이다. 예를 들어, 상기 리스트된 3개의 단계들에서는, 연속적인 모듈들의 각 쌍 간에 단일 로봇을 할당했던 레시피가 선택되었으며, 이러한 할당은 도 7에 리스트된 레시피에 제시된다. 이러한 할당은 많은 가능한 할당들 중에서 선택되었다.
일반적으로, 큐들을 결정하기 전에 최적의 로봇 할당을 결정하는 알고리즘이 필요하다. 이러한 알고리즘의 필요성이 하기의 예에서 설명될 것이다. Mod1, Mod2 및 Mod3로 이름이 붙여진 3개의 모듈들로 구성된 단순화된 트랙 시스템을 가지고 있다고 가정하자. 2개의 로봇들(로봇1, 로봇2)을 가지며, 이들 모두는 3개 모든 모듈들을 서비스할 수 있다고 가정하자. 전송 주기는 변수(SP)에 의해 정해진다고 하자. 전송 주기의 단위로 τ1=0.0, τ2=0.6, τ3=0.7이고, 로봇들은 SP 단위로 0.3 이내에서 움직일 수 있다고 가정하자. 4개의 가능한 로봇 할당들은 다음과 같다.
할당 Mod1에서 Mod2 Mod2에서 Mod1
1. 로봇1 로봇1
2. 로봇2 로봇2
3. 로봇1 로봇2
4. 로봇2 로봇1
검사시에는, 할당들(3 및 4) 만이 존재할 수 있다. 할당들(1 및 2)에서, τ2=0.6 및 τ3=0.7 간의 시간 간격은 0.1 전송 주기들인 바, 이는 로봇이 동작하는 데에 필요한 0.3 전송 주기들보다 작다. 이에 따라, 이 경우 최적의 할당들은 할당(#3 및 #4)이며; τ값들 간의 시간 간격들은 충분한 거리를 갖기 때문에, 이러한 로봇 할당은 지연들을 삽입해야하는 필요성을 없앤다. 또한, 예를 들어 부하들의 균형, 처리량의 증가와 같은 다른 기준이 최적의 로봇 할당의 결정에 입력될 수 있다. 상기 단순화된 예 보다 더 복잡한 경우들에 있어서는, 최적의 로봇 할당을 결정하는 알고리즘이 필요하다.
이러한 할당을 수행하는 한 방법은 소모적인 기법으로서, 가능한 모든 로봇 할당들을 발생시키고, 각 할당의 유효성을 결정한다. 즉 로봇이 이 모듈들을 서비스할 수 있도록, 로봇에 할당된 모든 모듈들이 그들의 τ 값들에 있어서 충분히 다른 지를 보장한다. 따라서, 발생된 할당들은 부하의 균형과 같은 부가적인 기준에 입각하여 선택될 수 있다.
갱신된 타이밍들(τ * )에 대한 해결
자동화의 장점이 있는 동기화의 다른 특징은 τ*에 의해 주어지는 갱신된 타이밍들의 유도이다. 좀 더 상세하게는, 상기 설명한 알고리즘의 단계 4에서, 알고리즘에는 갱신된 τ*값들이 제공되는 바, 여기서 한 로봇을 공유하는 임의의 두 개의 모듈들에 대해, 개별적인 τ*값들은 로봇이 모듈들 간을 이동하기에 충분한 시간에 의해 달라진다. 이러한 τ*값들을 유도할 수 있는 자동화된 방법이 필요하다. 이러한 한 기술은 다음과 같다.
충돌이 있는 각 로봇에 대해, 그의 모듈들 각각에 대한 τ값을 취한다.
이러한 τ값들의 각 조합에 대해, τ값들을 최하값으로부터 최고값까지 분류한다.
τ값들의 각기 분류된 리스트에 있어서,
ㆍ최하값에서부터 최상값으로 τ값들을 순차적으로 진행시킨다.
ㆍ소정의 τ값과 이보다 앞선 값 간의 차이를 결정한다.
ㆍ상기 차이가 로봇이 동작하도록 할당된 시간 보다 작다면, τ값을 충분히 증가시킨다.
ㆍ다음 τ값으로 진행한다.
이러한 알고리즘이 충돌들을 제거하는 소정의 로봇에 대한 갱신된 τ값들의 세트를 발견하게 되면, 이들이 τ*값들이 된다. 충돌이 없는 τ*값들의 그룹이 존재함이 증명되면, 상기 알고리즘이 이를 찾을 것이다.
유전적 알고리즘
동기화, 로봇 할당 및 유도 문제들은 또한 유전적 알고리즘(GA)을 이용하여 해결될 수 있다. GA는 유전자의 최초의 모집단에서 시작되는 반복 과정인 바, 이는 가능한 문제의 상황을 엔코드한다. 이러한 집단은 선택적인 육종(breeding) 과정을 통해 각 반복에 의해 조직적으로 개선된다. 선택적인 육종을 수행하기 위해, GA는 a) 종의 특징을 정의하고, 그리고 b) 종의 적합성을 판단할 필요가 있다.
종의 특징들 종은 n개의 유전자에 의해 특징지어진다. 우리는 문제를 해결함에 있어서, 2종류의 유전자들을 사용하는 바, 하나는 로봇 할당을 나타내고, 다른 하나는 큐 세그먼트를 나타낸다. 상기 알고리즘의 설명에 이용된 예를 고려하자. 로봇 할당의 범위는 1 내지 4인 바, 이는 특정 모듈에서 어떤 로봇이 작동할 것인 지를 나타낸다. 큐 세그먼트는 또한 얼마나 많은 "시간 영역들", 즉 로봇 이동 주기들이 로봇의 충돌 방지를 위해 모듈의 도달 시간에 부가될 것인 지를 나타내는 정수이다. 상기 예에서, 모듈들은 6개의 서로 다른 시간 영역들에 도달하는데, 이는 도 6의 612로 도시된다. 만일 한 시간 영역에 예를 들어 5개의 모듈들이 보이면, 충돌이 발생한다. 모듈들중 하나에 대한 큐 세그먼트를 부가하게 되면, 도달 시간을 다음 시간 영역을 밀어냄으로써, 충돌을 해결할 것이다.
종의 적합성 '악성' 종의 역수에 의해 적합성을 측정할 수 있다. 악성은 충돌 정도와 부가된 큐 세그먼트들의 가중된 합에 의해 측정될 수 있다. 이상적인 종은, 어떠한 부가된 세그먼트들도 갖지 않음으로써, 로봇 할당에 어떠한 충돌도 발생시키지 않는 것이다.
적합성 함수를 유도하기 위해, 각 시간 영역을 스캔하여 각 로봇에 대한 잉영 할당들의 수를 센다. 결과들은 모든 로봇들 및 모든 시간 영역들에 대해 합산된다. 이를 합(s)이라 한다. 부가되는 큐 세그먼트들을 계산하여, 이를 t라 한다. 이렇게 되면, 상기 적합성 함수는
가 되는 바,
여기서 가중치들(w1 및 w2)은 s/t의 상대적인 중요성에 따라 할당된다.
레시피 캐스케이딩(Recipe Cascading)
본 발명의 실시예는 주기성을 유지하면서 클러스터 툴이 제 1 레시피에서 제 2 레시피로 변경할 수 있게 하며, 중요한 시점들에 어떠한 지연도 없음을 보장한다. 이러한 절차는 레시피 캐스케이딩으로 일컬어진다. 이러한 캐스케이딩은 클러스터 툴로부터, 이후 이탈 로트로 일컬어지는 제 1 웨이퍼 로트를 이탈시킴과 동시에, 그리고 순차적으로, 이후 진입 로트로 일컬어지는 다른 웨이퍼들의 로트로 클러스터 툴을 채우는 것을 포함한다. 이러한 과정은 임계 공정 단계들에서 유발되는 어떠한 지연들도 없이 수행될 것이며, 진입 및 이탈 로트들의 레시피 및 처리량 요건들에 대해 요구되는 것 이외의 어떠한 추가적인 로봇들 및 공정 모듈들도 요구되지 않는다. 진입 로트들은 또한 이탈 로트와 다른 레시피 및 처리량 요건들을 갖는다.
삭제
표기법
하기의 파라미터들이 본 레시피 캐스케이딩의 설명에 이용된다.
mex = 공정 단계들의 수로서, 첨자(en,ex)는 이후 진입 또는 이탈 로트를 나타낸다.
nex = 클러스터 툴을 완전히 비게 하는 이탈 웨이퍼들의 수, 또는 클러스터 툴을 완전히 채우는 진입 웨이퍼들의 수.
SPi ex = (i-1)번째 웨이퍼와 i번째 웨이퍼의 론칭 간의 시간 간격인, i번째 웨이퍼의 전송 주기.
SP.ex = 정상 상태 동안 웨이퍼들의 전송 주기.
SP1stj en = 이탈 로트의 j번째 모듈에서의 변환을 수용하기 위한 진입 로트의 첫 번째 웨이퍼의 론칭에 있어서의 지연.
COj = 이탈 로트의 j번째 모듈을 새로운 설정으로 변경하는 데에 걸리는 시간.
Tijk in = k번째 로봇에 의해 이송되는 j번째 모듈에 i번째 웨이퍼가 도달하는 시간.
Tijk out = k번째 로봇에 의해 이송되는 j번째 모듈에서 i번째 웨이퍼가 이탈하는 시간.
Pj ex = 이탈 로트의 j번째 공정 단계의 공정 시간.
tj ex = 이탈 로트의 (j-1)번째와 j번째 공정 단계 간의 이송 시간.
qij ex = 이탈 로트의 j번째 공정 단계에서 i번째 웨이퍼에 부가되는 큐들.
레시피 캐스케이딩의 특성
도 9는 전형적인 레시피(900)를 예시한다. 이는 공정 및 이송 작업들과, 웨이퍼가 클러스터 툴을 통과할 때 웨이퍼 상에서 수행될 각 작업의 타이밍을 지정한다. 처리량 요건을 만족시키기 위해, 이후의 웨이퍼들은 도 10에 도시된 바와 같은 일정한 전송 주기에서 클러스터 툴을 통해 전송된다. 이러한 전송 주기(SP)(100)는 다음과 같이 주어진다:
여기서 WPH는 시간당 웨이퍼의 처리량 요건이다.
n 번째 웨이퍼에 의해, 클러스터 툴은 웨이퍼들로 가득 채워질 것이다. 한 웨이퍼가 클러스터 툴을 빠져나가면, 다른 한 웨이퍼가 들어와 클러스터 툴을 채운다. 웨이퍼들 상에서 수행되는 모든 공정 및 이송 작업들은 주기적인 방식으로 이루어지며, 주기성은 전송 주기에 의해 그 범위가 정해진다. 시스템이 이러한 단계에 도달하게 되면, 이는 정상 상태로 불려진다. 클러스터 툴을 완전히 채우고 정상 주기 상태로 램프업시키는 데에 요구되는 요구되는 웨이퍼들의 수(n)는 다음 식으로 주어진다.
(A)
여기서 π는 도 9에서 902로 나타낸 바와 같이 웨이퍼 상에서 수행되는 전체 공정 및 이송 시간이다. 기호 INT()는 가장 근접한 정수로 숫자를 내림하는 기능을 나타낸다. 상기 식은 또한, 정상 상태로부터 램프 다운되며 클러스터 툴을 완전히 이탈하는 로트에 대한 웨이퍼들의 수에도 적용될 수 있다. 정상 상태에서, 모든 웨이퍼는 동일한 시간 간격으로 그 위에서 수행되는 동일한 공정 및 이송 작업들을 갖는다. 따라서, 클러스터 툴 내부에서의 웨이퍼들의 이동 트랙을 유지할 필요가 없다.
그러나, 상기 레시피 캐스케이딩 동안, 웨이퍼는 도 11에 도시된 바와 같이, 이탈 로트의 정상 상태로부터 진입 로트의 정상 상태로 변환된다. 변환되는 동안, 일부 웨이퍼들은 이탈 로트에 대해 규정된 레시피 및 전송 주기에 따라 공정 및 이송될 것이며, 나머지 웨이퍼들은 진입 로트에 대해 규정된 레시피에 따라 공정 및 이송될 것이다. 따라서, 주기성은 유지될 수 없다. "충돌"이 발생할 것이다. "충돌"은 두 개의 상황들을 말한다. 공정 충돌이라 일컬어지는 한 상황에서, 두 개의 웨이퍼들은 그 단계의 공정 시간 보다 짧은 간격 내에서 동일한 공정 모듈에 의해 순차적으로 공정되어야 한다. 전송 충돌이라 일컬어지는 다른 상황에서, 두 개의 웨이퍼들은 로봇 이송 시간 보다 짧은 간격 내에서 동일한 로봇에 의해 순차적으로 이송되어야 한다.
이러한 충돌들을 해결하는 한 방법은 추가적인 모듈들 및 로봇들을 부가하는 것이다. 이러한 해결책은 비용이 많이 들며 실용적이지 못하다. 다른 해결책은 우선순위 룰을 고안하고, 이러한 충돌들에 반응하는 "if-then" 알고리즘을 실시하는 것이다. 이 해결책은 결합 특성 때문에 막대한 결과의 결합을 발생시킴으로써, 결국 혼돈을 야기시켜 예측을 불가능하게 한다. 근본적인 해결책은 진입 로트의 웨이퍼들의 론칭에 있어서의 적절한 타이밍을 통해, 그리고 이탈 및 진입 로트의 비임계 공정 단계들에 의도적인 지연을 삽입함으로써, 충돌들을 완전히 제거하는 것이다. 이는 본원에서 설명되는 레시피 캐스케이딩의 숨은 원리이다.
절차
단계 1: 변환되는 웨이퍼들의 수 추정. 변환 동안, 이탈 로트는 진입 로트가 클러스터 툴을 채우는 동안 이탈한다. 변환에 포함되는 웨이퍼들의 수는 식 (A)를 이용하여 추정될 수 있다. 추정을 위한 알고리즘은 다음과 같다.
단계 2: "지연"의 하위 한도 추정. 진입 로트의 웨이퍼들의 론칭 타이밍이 충돌 발생을 책임지는 주요 변수이다. 따라서, 적절한 론칭 타이밍이 중요하다. 또한, 이하 "지연"이라 일컬어지는, 제 1 웨이퍼의 론칭 타이밍은 공정 모듈을 진입 로트에 의해 요구되는 새로운 설정으로 변경하는 데에 필요한 시간을 제공할 수 있어야 한다. 이에 따라, 진입 로트의 제 1 웨이퍼가 도달하면, 변경이 완료되고 공정 모듈은 이를 받아들일 준비가 된다. 진입 로트의 레시피에 의해 요구되는 모듈 변경의 수 만큼 많은 "지연들"이 있게 될 것이다. 이들의 최대는 지연의 하위 한도가다. 충돌 해결을 위해 고려되는 임의의 지연량은 하위 한도 보다 커야 한다. 도 12를 참조하여, 하위 한도는 다음과 같이 얻을 수 있다.
삭제
다음은 식 (B)에 의해 하위 한도를 추정하는 알고리즘이다.
단계 3: 변환시 웨이퍼들의 이동 추적. 변환시 웨이퍼들의 이동은 추적될 수 있다. k번째 로봇에 의해 이송되는 j번째 모듈에 i번째 웨이퍼가 도달하는 시간 Tijk in은, 이전 (j-1)번째 공정 모듈로부터의 이탈 시간 Ti(j-1)k out에 (j-1)번째 공정모듈에서 j번째 공정 모듈까지의 이송 시간(tj)을 더한 것이다.
Tijk in = Ti(j-1)k out+ tj (C)
j번째 모듈로부터의 이탈 시간은 하기 식으로 나타내 바와 같이, 도달 시간, 공정 시간 및 충돌 해결을 위해 계획적으로 삽입되는 큐들의 합이다.
Tijk out = Tijk in + Pj + qij (D)
상기 식(C)와 (D)의 순환 공식들은 이송시 웨이퍼들의 이동을 정밀하게 표시할 수 있게 한다. 따라서, 이탈 로트의 마지막 웨이퍼가 로칭되고 변환이 시작되는 때로부터의 시간을 측정하게 되면(도 11 참조), 공정 모듈에서의 웨이퍼의 도달 및 이탈 시간은 하기의 알고리즘에 의해 계산될 수 있다. 변환 이외의 도달 및 이탈 시간들을 고려되지 않으며, 이에 따라 큰 음수 값들로 표시된다.
이탈 로트의 웨이퍼들에 대해서는 다음과 같다. 도 11 참조.
진입 로트의 웨이퍼들에 대해서는 다음과 같다.
단계 4: 충돌 식별. 도달 시간 Tijk in과 이탈 시간 Tijk out을 결정하게 되면, 충돌을 검사할 수 있다. 공정 충돌은 j번째 공정 단계에서의 공정 모듈에 공정 시간 보다 짧은 시간 간격 내에서, 한 쌍의 웨이퍼, 즉 m번째 및 n번째 웨이퍼를 연속적으로 공정할 것이 요구될 때에 발생한다. 즉, n번째 웨이퍼는 m번째 웨이퍼가 모듈을 이탈하기 전에 도달한다. 따라서, 다음이 참이면 충돌이 발생한다.
모든 공정 단계들에 대해 가능한 모든 (m,n) 쌍을 검사하는 데에 상기 논리문(logic statement)을 이용함으로써, 모든 공정 충돌들이 식별될 수 있다.
유사하게, 이송 충돌은 로봇, 즉 k번째 로봇에게 이송 시간 보다 짧은 시간 간격 내에서 두 개의 웨이퍼들, 즉 m번째 웨이퍼 및 n번째 웨이퍼를 연속적으로 이송할 것을 요구할 때 발생한다. 즉, m번째 웨이퍼의 도달과 n번째 웨이퍼의 이탈 간의 시간 간격이 이송 시간 보다 더 짧다. 따라서, 다음이 참이면 전송 충돌이 발생한다.
상기에서, 기호 ||는 절대값을 나타내고, "g"는 로봇이 한 번의 이송을 하는 데에 할당되는 시간이다. 시간 "g"는 로봇의 이송 시간 보다 크거나 같다. 모든 공정 단계들에 대해 가능한 모든 (m,n) 쌍의 결합을 검사하는 데에 상기 논리문을 이용함으로써, 모든 전송 충돌들이 식별될 수 있다.
단계 5: 적절한 큐잉과 론칭을 통한 충돌 해결. 주목할 사항으로서, 식들 (E) 내지 (G)에는, 특정 로봇에 의한 공정 모듈에서의 웨이퍼 도달 및 이탈 시간을 계산하는 데에 이용되는 세 개의 미결정된 변수들이 있다. 이들은 의도적인 지연들인 큐들 qij ex , qij en 및 진입 로트의 웨이퍼의 론칭 타이밍 SPi en이다. 어떠한 충돌도 없게 하고 전체 큐들이 최소화하기 위해, 이러한 세 개의 변수들의 최상의 조합을 찾는 최적화 절차가 이용된다. 유전적 알고리즘들이 이러한 최적 절차들 중 하나이다. 다른 것들은 당업자에게 명백할 것이다.
상기 본 발명의 다양한 실시예들의 설명은 예시적으로 제시된 것이다. 이는 본 발명을 개시된 형태로 한정하지 않는다. 많은 변경들 및 등가의 배열들이 명백하다.
국부 클럭들을 포함하는 클러스터 툴의 구조
도 13은 본 발명에 이용되는 웨이퍼 클러스터 툴의 실시예를 도시한다. 클러스터 툴은 선형으로 배열된 일련의 공정 모듈들(1300)을 포함한다. 웨이퍼 클러스터들은 상기 설명된 알고리즘들에 따라, 이들을 일련의 공정 모듈들(1300)을 통해 전송함으로써 처리된다.
도 13에 예시된 실시예에 있어서, 각 공정 모듈들은 국부 클럭들(1302)를 포함한다. 이러한 국부 클럭은 공정 모듈(1300)에 결합된 프로세서에 있다. 국부 클럭들(1302)은 근거리 통신망 또는 LAN(1306)을 통해, 마스터 클럭(1304)을 포함하는 서버에 결합된다. 본 발명의 실시예에 따르면, 마스터 클럭(1304)은 국부 클럭들(1302)을 마스터 클럭(1304)에 동기화시키기 위해 국부 클럭들(1302)을 주기적으로 핑(ping)한다.
마스터 클럭은 시간표(1308)와 통신한다. 시간표(1308)는 다수의 국부 클럭들(1302) 상에 기록된 시간들을 저장하는 데이터베이스를 포함한다. 시간표(1308)는 마스터 클럭(1304)를 포함하는 서버, 또는 마스터 클럭(1304)에 결합된 개별적인 서버에 포함된다. 시간표(1308)는 스프레드 시트, 관련된 데이터베이스, 독립 파일(flat file), 또는 주문 제조되는 데이터 구조의 형태로 저장될 수 있는 바, 이러한 형태들은 당업자에게 명백하다. 본 발명의 실시예들에서, 국부 클럭들(1302) 또는 마스터 클럭(1304)에 의해 기록되는 시간들은 전송 주기의 단위로 기록된다.
본 발명의 일부 실시예들에서, 웨이퍼 클러스터가 공정 모듈(1300)로 진입할 때 마다 모듈의 국부 또는 내부 클럭이 리셋되고 시간표(1308)에 등록된다. 시간표(1308)는 실시간으로 연속적으로 갱신되며, 이에 따라 클러스터 툴에 국부 클럭(1302)의 현재 기록을 유지한다. 웨이퍼가 소정의 모듈(1300)에 존재하는 총 시간은 알고리즘을 스케쥴링함으로써 미리 결정되기 때문에, 시간표(1308)는 각 모듈(1300)에 대한 웨이퍼 픽업 시간들을 식별할 수 있다.
클러스터 툴에서 로봇의 선 위치결정
본 발명의 실시예들은 로봇이 이전 작업을 끝낸 직후 다음(upcoming) 모듈에 위치될 수 있게 한다. 이러한 실시예에서, 로봇은 이전 작업을 끝내자 마자, 서비스될 모듈의 앞에 그 자신을 미리 위치시킬 것이다. 로봇을 모듈들에 미리 위치시킴으로써, 큐잉 시간을 초과하는 과도한 대기 시간을 없앨 수 있으며, 이에 따라 클러스터 툴의 처리량이 개선된다. 이는 로봇 경로가 공정 스케쥴에 따라 미리 설정될 수 있게 하고, 처리량을 개선하기 위해 로봇들에 다수의 그리퍼들을 부가해야 하는 필요성을 최소화한다.
도 14는 선 위치결정을 지원하는 본 발명의 실시예를 도시한다. 공정은 클러스터 툴에 대한 결정 스케쥴(deterministic schedule)을 발생시키는 단계(1400)로부터 시작된다. 이는 로봇 충돌들을 제거하기 위해 모듈 공정 시간들에 큐들을 삽입하는 것을 포함하며, 그리고 상기 설명된 선형 변환들 또는 유전적 알고리즘들에 의해 수행될 수 있다. 상기 결정 스케쥴은 한 전송 주기의 간격을 갖는 주기성을 나타낸다. 로봇(R)(1402)에 의해 공정 단계(i)가 종료되면, 클러스터 툴은 시간표(1308)를 참조하여, 로봇(R) 자신이 위치될 공정 단계를 결정한다. 상기 단계(1404)는 공정 단계(j)를 선택하는 것을 포함하는 바, 여기서 τj는 마스터 클럭(Tmaster) 상의 현재 시간의 십진수 부분에 가장 근접하고, 공정 단계(j)는 현재 전송 주기에서 수행되지 않는다. 반복을 위해, 단계(1404)는 다음을 포함한다.
시간표(1308)로부터 j를 선택하며, 여기서
τj는 Tmaster-INT(Tmaster)에 가장 근접하며,
그리고 단계(j)는 현재 전송 주기에서는 수행되지 않는다.
이러한 공정 단계(j)가 시간표(1308)에서 발견되는 경우, 로봇(R)은 공정 챔버(j)에 위치된다.
로봇 선 위치결정의 장점들
상기 설명된 로봇 선 위치결정 알고리즘과 상기 결정 스케쥴(1400)을 결합함으로써, 클러스터 툴에서의 개별적인 로봇들의 경로가 미리 결정된다는 것은 당업자에게 명백하다. 시간표(1308)가 실시간으로 갱신되고, 스케쥴(1400)이 각 전송 주기에서 동일하기 때문에, 시간표(1308)에 유지되는 τj 값들의 집합은 각 전송 주기에서 동일하다. 따라서, 각 로봇(R)에 대한 τj의 선택은 한 전송 주기의 간격들로 반복될 것이다. 따라서, 로봇(R)의 경로는 클러스터 툴의 스케쥴에 따라 주기성을 나타낼 것이다. 이는 각 로봇(R)의 경로가 클러스터 툴 스케쥴(1400)의 발생에 따라 선 결정될 수 있게 한다.
상기 설명된 선 위치결정 알고리즘은 클러스터 툴의 처리량을 개선시킨다. 특히, 서비스될 필요가 있는 각 모듈 앞에는 이미 필요한 로봇이 위치될 것이다. 이는 로봇에 대해 요구되는 대기 시간을 없앰으로써, 충돌들을 제거하는 데에 이용되는 큐잉의 범위를 넘는 모든 레이턴시(latency)를 제거한다. 상기 설명된 대수적인 기술들 또는 유전적 알고리즘에 따라, 선 위치결정을 이용하여 로봇의 과잉 동작을 제거하고, 큐 시간을 최적화하게 되면, 클러스터 툴의 처리량을 최대화한다.
이러한 로봇 선 위치결정은 시스템이 단일 그리퍼 로봇을 이용할 수 있게 한다. 상세히 설명하여, 웨이퍼 스와핑을 가능하게 하고 로봇 이송수를 최소화하기 위해 다중 그리퍼 로봇들이 종래에 통상적으로 이용되었다. 이는 클러스터 툴에 부가적인 제한을 가하는데, 그 이유는 두 개의 그리퍼들을 갖는 로봇들은 스와핑을 수행하기 위해 그리퍼들중 하나에 상에 하나의 웨이퍼를 필요로 하기 때문이다. 이는 클러스터 툴의 성능을 제한한다. 또한, 스와핑은 모듈들 간의 이송 시간을 증가시키며, 궁극적으로 클러스터 툴의 처리량을 감소시킨다.
로봇 대기 시간을 없앰으로써, 로봇 선 위치결정에 의해 가능해지는 처리량에 있어서의 개선은 웨이퍼 스와핑을 수행해야 하는 필요성을 최소화한다. 따라서, 클러스터 툴은 단일 그리퍼를 갖는 로봇들을 이용한다. 이는 로봇을 단순화시키며, 로봇들에서의 온보드(on-board) 처리에 대한 모든 필요성을 최소화한다.

Claims (26)

  1. 다수의 공정 모듈들을 포함하는 웨이퍼 클러스터 툴을 동기화하는 방법으로서,
    a) 상기 웨이퍼 클러스터 툴에 대해, 전송 주기의 주기성을 갖는 결정 스케쥴을 발생시키는 단계와;
    b) 상기 스케쥴에 따라 제 1 웨이퍼 세트를 상기 클러스터 툴의 제 1 공정 모듈 내에 적재하는 단계와;
    c) 상기 제 1 공정 모듈 내에 상기 제 1 웨이퍼 세트를 적재하는 것에 응답하여, 상기 제 1 공정 모듈에 결합된 제 1 국부 클럭을 재설정하는 단계와;
    d) 상기 제 1 국부 클럭으로부터의 제 1 시간을 시간표에 기록하는 단계와, 여기서 상기 시간표는 상기 다수의 공정 모듈들에 결합되고, 상기 제 1 시간은 상기 전송 주기의 단위로 측정되며;
    e) 상기 스케쥴에 따라 제 2 웨이퍼 세트를 상기 클러스터 툴의 제 2 공정 모듈 내에 적재하는 단계와;
    f) 상기 제 2 공정 모듈 내에 상기 제 2 웨이퍼 세트를 적재하는 것에 응답하여, 상기 제 2 공정 모듈에 결합된 제 2 국부 클럭을 재설정하는 단계와; 그리고
    g) 상기 제 2 국부 클럭로부터의 제 2 시간을 상기 전송 주기의 단위로 상기 시간표에 기록하는 단계를 포함하는 것을 특징으로 하는 웨이퍼 클러스터 툴 동기화 방법.
  2. 제 1 항에 있어서,
    h) 상기 제 1 웨이퍼 세트를 적재하고 한 전송 주기 후, 상기 스케쥴에 따라 제 3 웨이퍼 세트를 상기 제 1 공정 모듈 내에 적재하는 단계를 더 포함하는 것을 특징으로 하는 웨이퍼 클러스터 툴 동기화 방법.
  3. 제 2 항에 있어서,
    i) 상기 제 3 웨이퍼 세트의 적재에 응답하여, 상기 제 1 공정 모듈에 결합된 상기 제 1 국부 클럭을 재설정하는 단계를 더 포함하는 것을 특징으로 하는 웨이퍼 클러스터 툴 동기화 방법.
  4. 제 3 항에 있어서,
    상기 마스터 서버에 결합된 CPU를 더 포함하며,
    상기 마스터 클럭은 상기 마스터 서버에 결합된 CPU 상에 있는 것을 특징으로 하는 웨이퍼 클러스터 툴 동기화 방법.
  5. 제 1 공정 모듈, 제 2 공정 모듈 및 제 3 공정 모듈을 포함하는 웨이퍼 클러스터 툴에 로봇을 위치시키는 방법으로서,
    상기 웨이퍼 클러스터 툴에 대해 결정 스케쥴을 발생시키는 단계와, 여기서 상기 결정 스케쥴은 전송 주기에 의해 정의되는 주기성을 갖고, 상기 클러스터 툴의 상기 제 1 모듈에 대한 제 1 픽업 시간 및 상기 제 3 모듈에 대한 제 2 픽업 시간을 가지며, 상기 제 2 픽업 시간은 상기 제 1 픽업 시간 이후 발생하고, 상기 결정 스케쥴은 상기 전송 주기와 같은 시간 간격에 의해 분리되는 제 1 순간 및 제 2 순간을 가지며;
    상기 제 1 순간에 상기 클러스터 툴에 제 1 웨이퍼를 적재하는 단계와;
    상기 로봇을 이용하여 상기 제 1 모듈로부터 제 2 웨이퍼를 픽업하는 단계와, 여기서 상기 제 2 웨이퍼의 픽업은 상기 제 1, 2 순간들 사이에서 발생하며;
    상기 제 2 순간 이전에 상기 제 2 웨이퍼를 상기 제 1 모듈로부터 상기 제 2 모듈로 이송하는 단계와;
    상기 제 2 웨이퍼를 이송한 직후, 상기 로봇을 상기 제 3 모듈에 위치시키는 단계와, 상기 로봇을 상기 제 3 모듈에 위치시키는 단계는 상기 제 2 픽업 시간 이전에 발생하며,
    상기 제2 순간 이전에 상기 로봇을 사용하여 제3 모듈에서 제4 모듈로 제2 웨이퍼를 전송하는 단계를 포함하며, 상기 제1 모듈은 제1 국부 클럭에 결합되고, 제2 모듈은 제2 국부 클럭에 결합되며, 상기 제3 모듈은 제3 국부 클럭에 결합되고, 상기 제4 모듈은 제4 국부 클럭에 결합되는 것을 특징으로 하는 웨이퍼 클러스터 툴 동기화 방법.
  6. 다수의 공정 모듈들과, 제 1 로봇 및 제 2 로봇을 포함하며, 전송 주기에 의해 정의되는 주기적인 스케쥴에 따라 동작하는, 웨이퍼 클러스터 툴에 로봇들을 위치시키는 방법으로서,
    a) 상기 제 1 로봇을 이용하여 제 1 웨이퍼를 상기 다수의 공정 모듈들중 제 1 공정 모듈로부터 상기 다수의 공정 모듈들중 제 2 공정 모듈로 이송하는 단계와;
    b) 단계 (a) 직후, 상기 제 1 로봇을 제 3 공정 모듈에 위치시키는 단계와;
    c) 상기 제 2 로봇을 이용하여 제 2 웨이퍼를 상기 다수의 공정 모듈들중 제 3 공정 모듈로부터 상기 다수의 모듈들중 제 4 모듈로 이송하는 단계와; 그리고
    d) 상기 단계 (c) 직후, 상기 제 2 로봇을 제 5 공정 모듈에 위치시키는 단계를 포함하며,
    상기 단계 (a) 내지 (d)는 제 1 시간 간격 내에서 수행되며, 상기 제 1 시간 간격은 전송 주기와 동일한 지속 기간을 갖는 것을 특징으로 하는 웨이퍼 클러스터 툴 동기화 방법.
  7. 제 6 항에 있어서,
    상기 제 1 로봇 및 제 2 로봇은 각각 단지 하나의 그리퍼 만을 갖는 것을 특징으로 하는 웨이퍼 클러스터 툴 동기화 방법.
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
KR10-2001-7016613A 1999-06-23 2000-06-23 웨이퍼 공정 시스템에서 로봇의 선 위치결정 KR100508680B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14066199P 1999-06-23 1999-06-23
US60/140,661 1999-06-23

Publications (2)

Publication Number Publication Date
KR20020019109A KR20020019109A (ko) 2002-03-09
KR100508680B1 true KR100508680B1 (ko) 2005-08-17

Family

ID=22492250

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-7016613A KR100508680B1 (ko) 1999-06-23 2000-06-23 웨이퍼 공정 시스템에서 로봇의 선 위치결정

Country Status (7)

Country Link
EP (1) EP1188097B1 (ko)
JP (4) JP2003502877A (ko)
KR (1) KR100508680B1 (ko)
AT (1) ATE320033T1 (ko)
AU (1) AU5636600A (ko)
DE (1) DE60026527T2 (ko)
WO (1) WO2000079356A2 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002184671A (ja) * 2000-12-14 2002-06-28 Tokyo Electron Ltd 基板処理システム及び基板処理方法
EP1406751A2 (en) * 2001-07-13 2004-04-14 FSI International Robotic system control
JP4492875B2 (ja) * 2005-06-21 2010-06-30 東京エレクトロン株式会社 基板処理システム及び基板処理方法
JP5275058B2 (ja) * 2009-01-23 2013-08-28 株式会社Sokudo 基板処理装置
JP6198805B2 (ja) * 2015-02-16 2017-09-20 キヤノン株式会社 リソグラフィ装置、リソグラフィ方法、プログラム、リソグラフィシステムおよび物品製造方法
US9927725B2 (en) 2015-02-16 2018-03-27 Canon Kabushiki Kaisha Lithography apparatus, lithography method, program, lithography system, and article manufacturing method
CN111923066B (zh) * 2020-08-14 2021-11-12 北京北方华创微电子装备有限公司 一种晶圆清洗设备中的工艺调度方法、装置
CN113299587B (zh) * 2021-05-21 2022-04-26 无锡亚电智能装备有限公司 一种晶圆清洗工艺任务排列方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5591299A (en) * 1995-04-28 1997-01-07 Advanced Micro Devices, Inc. System for providing integrated monitoring, control and diagnostics functions for semiconductor spray process tools
US5754780A (en) * 1994-01-19 1998-05-19 Tokyo Electron Limited Apparatus and method for performing serial communication between master and slave devices

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3115297B2 (ja) * 1989-10-09 2000-12-04 キヤノン株式会社 自動装置の制御装置
JPH0512300A (ja) * 1990-12-18 1993-01-22 Nec Yamaguchi Ltd 半導体装置製造における実績表示方法
JPH053174A (ja) * 1991-06-26 1993-01-08 Fujitsu Ltd 半導体装置の製造方法
JPH06176030A (ja) * 1992-12-03 1994-06-24 Toshiba Corp 生産スケジューリングシステム
US5428555A (en) * 1993-04-20 1995-06-27 Praxair, Inc. Facility and gas management system
JPH07171478A (ja) * 1993-12-20 1995-07-11 Dainippon Screen Mfg Co Ltd 基板処理装置
JP2982038B2 (ja) * 1994-04-01 1999-11-22 東京エレクトロン株式会社 被処理体の処理のスケジューリング方法及びその装置
JP3592771B2 (ja) * 1994-12-07 2004-11-24 大日本スクリーン製造株式会社 基板処理装置
JPH08222616A (ja) * 1995-02-13 1996-08-30 Dainippon Screen Mfg Co Ltd 基板処理装置
JPH08315017A (ja) * 1995-05-15 1996-11-29 Sanyo Electric Co Ltd 生産スケジュール作成方法
TW372926B (en) * 1996-04-04 1999-11-01 Applied Materials Inc Method and system of processing semiconductor workpieces and robot for use in said system
JPH09282359A (ja) * 1996-04-09 1997-10-31 Nippon Telegr & Teleph Corp <Ntt> ジョブショップスケジューリング装置
JPH09326338A (ja) * 1996-06-04 1997-12-16 Nikon Corp 製造管理装置
US5801945A (en) * 1996-06-28 1998-09-01 Lam Research Corporation Scheduling method for robotic manufacturing processes
US5928389A (en) * 1996-10-21 1999-07-27 Applied Materials, Inc. Method and apparatus for priority based scheduling of wafer processing within a multiple chamber semiconductor wafer processing tool
JP3684056B2 (ja) * 1996-11-15 2005-08-17 株式会社日立国際電気 半導体製造装置の基板搬送制御方法
JPH10256342A (ja) * 1997-03-06 1998-09-25 Kokusai Electric Co Ltd 搬送制御方法
US6201999B1 (en) * 1997-06-09 2001-03-13 Applied Materials, Inc. Method and apparatus for automatically generating schedules for wafer processing within a multichamber semiconductor wafer processing tool
JP3771050B2 (ja) * 1997-06-20 2006-04-26 東京エレクトロン株式会社 制御システム
US6292708B1 (en) * 1998-06-11 2001-09-18 Speedfam-Ipec Corporation Distributed control system for a semiconductor wafer processing machine
EP1141801B1 (en) * 1998-12-31 2005-08-17 Silicon Valley Group, Inc. Method for synchronizing a substrate processing system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5754780A (en) * 1994-01-19 1998-05-19 Tokyo Electron Limited Apparatus and method for performing serial communication between master and slave devices
US5591299A (en) * 1995-04-28 1997-01-07 Advanced Micro Devices, Inc. System for providing integrated monitoring, control and diagnostics functions for semiconductor spray process tools

Also Published As

Publication number Publication date
JP4733011B2 (ja) 2011-07-27
EP1188097B1 (en) 2006-03-08
JP2007214551A (ja) 2007-08-23
DE60026527T2 (de) 2006-10-19
WO2000079356A2 (en) 2000-12-28
JP2007305988A (ja) 2007-11-22
JP4800191B2 (ja) 2011-10-26
JP2007165913A (ja) 2007-06-28
DE60026527D1 (de) 2006-05-04
JP2003502877A (ja) 2003-01-21
AU5636600A (en) 2001-01-09
WO2000079356A3 (en) 2001-08-09
ATE320033T1 (de) 2006-03-15
EP1188097A2 (en) 2002-03-20
KR20020019109A (ko) 2002-03-09

Similar Documents

Publication Publication Date Title
JP4903553B2 (ja) ウェーハ処理システムのレシピ・カスケーディング
JP4621698B2 (ja) 基板処理システムを同期化させるための方法及び装置
US6694218B2 (en) Method and apparatus for resolving conflicts in a substrate processing system
US6952622B2 (en) Robot pre-positioning in a wafer processing system
JP4800191B2 (ja) ウェーハ処理システムにおけるロボットの事前配置
Johri Practical issues in scheduling and dispatching in semiconductor wafer fabrication
US20080014058A1 (en) Scheduling method for processing equipment
US20080051929A1 (en) Scheduling method for processing equipment
US20080051930A1 (en) Scheduling method for processing equipment
KR100508679B1 (ko) 기판 처리 시스템을 동기화시키는 방법 및 장치
Park et al. Performance evaluation of deterministic flow lines: Redundant modules and application to semiconductor manufacturing equipment
Park et al. Wafer admission control for clustered photolithography tools
Wiethoff et al. AMHS software solutions to increase manufacturing system performance
Kline Scheduling revisited workstations in integrated-circuit fabrication

Legal Events

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

Payment date: 20120727

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20130726

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20140801

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160729

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20170728

Year of fee payment: 13