CN111923066A - 一种晶圆清洗设备中的工艺调度方法、装置 - Google Patents
一种晶圆清洗设备中的工艺调度方法、装置 Download PDFInfo
- Publication number
- CN111923066A CN111923066A CN202010820643.6A CN202010820643A CN111923066A CN 111923066 A CN111923066 A CN 111923066A CN 202010820643 A CN202010820643 A CN 202010820643A CN 111923066 A CN111923066 A CN 111923066A
- Authority
- CN
- China
- Prior art keywords
- branch
- feasible
- moving
- branches
- mobile
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
-
- 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/67—Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
- H01L21/67005—Apparatus not specifically provided for elsewhere
- H01L21/67011—Apparatus for manufacture or treatment
- H01L21/67017—Apparatus for fluid treatment
- H01L21/67028—Apparatus for fluid treatment for cleaning followed by drying, rinsing, stripping, blasting or the like
-
- 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/67—Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
- H01L21/67005—Apparatus not specifically provided for elsewhere
- H01L21/67242—Apparatus for monitoring, sorting or marking
- H01L21/67253—Process monitoring, e.g. flow or thickness monitoring
-
- 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/67—Apparatus specially adapted for handling semiconductor or electric solid state devices during manufacture or treatment thereof; Apparatus specially adapted for handling wafers during manufacture or treatment of semiconductor or electric solid state devices or components ; Apparatus not specifically provided for elsewhere
- H01L21/67005—Apparatus not specifically provided for elsewhere
- H01L21/67242—Apparatus for monitoring, sorting or marking
- H01L21/67276—Production flow monitoring, e.g. for increasing throughput
Abstract
本申请实施例提供了晶圆清洗设备中的工艺调度方法、装置,该方法包括:生成可行移动集合;基于可行移动集合,生成多个移动分支,构成第一分支集合;依次访问经过排序的第一分支集合中的每一个分支,查找满足预设的可执行条件的移动分支;在查找到满足可执行条件的移动分支时,停止访问其他移动分支,根据执行该移动分支后晶圆清洗设备中的全部物料是否均处于安全位置,执行相应的操作。由此,在每一次调度过程中,不仅可以确保调度的安全性,还可以确保选择出的可执行的移动分支为在产能方面较优的移动分支或在对物料进行处理之后物料的工艺精度方面较优的移动分支。提升晶圆清洗设备的产能、对物料进行处理之后物料的工艺精度。
Description
技术领域
本申请涉及半导体领域,具体涉及晶圆清洗设备中的工艺调度方法、装置。
背景技术
在晶圆清洗设备的工作过程中,对晶圆清洗设备中的机械手进行调度以分配晶圆清洗设备中的机械手执行的移动即move是最为关键的环节。目前,通常采用的方式为:根据晶圆清洗设备中的每一个机械手的可行移动,确定多个可能作为可执行移动分支,从多个可能作为可执行移动分支中查找在执行之后不会出现死锁情况的移动分支,一旦查找到在执行之后不会出现死锁情况的移动分支,停止查找,将查找到的移动分支作为可执行移动分支,执行可执行移动分支。
然而,在查找移动分支时,并未考虑每一个移动分支在晶圆清洗设备的产能方面的优劣、每一个移动分支在对物料进行处理之后物料的工艺精度方面的优劣,只要一个移动分支符合在执行之后不会出现死锁情况,即可停止查找,将符合在执行之后不会出现死锁情况作为可执行移动分支。相应的,也不会在晶圆清洗设备的产能方面或在对物料进行处理之后物料的工艺精度方面对移动分支进行排序,然后,挑选较优的移动分支。
调度过程是频繁进行的,可能出现在大量的调度过程中选择出的最终执行的可执行移动分支均不是在产能方面较优的移动分支或在对物料进行处理之后物料的工艺精度方面较优的移动分支。因此,如何在对晶圆清洗设备中的机械手进行调度的过程中选择出较优的移动分支成为一个亟待解决的问题。
发明内容
为克服相关技术中存在的问题,本申请提供一种晶圆清洗设备中的工艺调度方法、装置。
根据本申请实施例的第一方面,提供一种晶圆清洗设备中的工艺调度方法,包括:
生成可行移动集合,其中,所述可行移动集合包括当前所述晶圆清洗设备中每一个机械手的所有可行移动;
基于所述可行移动集合,生成多个移动分支,构成第一分支集合,其中,所述移动分支包括:多个所述可行移动,所述移动分支中每一个可行移动所属的机械手不同;
采用预设的第一排序方式对所述第一分支集合中的所有移动分支进行排序,得到经过排序的第一分支集合,其中,所述第一排序方式包括:按照与移动分支相关的物料的恢复时间以由小至大的顺序进行排序或按照与移动分支相关的物料的安全驻留时长以由小至大的顺序进行排序;
依次访问所述经过排序的第一分支集合中的每一个分支,查找满足预设的可执行条件的移动分支,所述可执行条件包括:执行移动分支之后所述晶圆清洗设备不处于死锁状态、执行移动分支之后处于危险工艺槽中的物料不处于过泡状态;
在查找到满足所述可执行条件的移动分支时,停止访问其他移动分支,判断执行该移动分支后,所述晶圆清洗设备中的全部物料是否均处于安全位置,若否,则存储该移动分支,虚拟执行该移动分支后返回所述生成可行移动集合的步骤,若是,则存储该移动分支,按存储次序将该移动分支和已存储的移动分支组成调度移动序列,并输出所述调度移动序列。
根据本申请实施例的第二方面,提供一种晶圆清洗设备中的工艺调度装置,包括:
第一生成单元,被配置为生成可行移动集合,其中,所述可行移动集合包括当前所述晶圆清洗设备中每一个机械手的所有可行移动;
第二生成单元,被配置为基于所述可行移动集合,生成多个移动分支,构成第一分支集合,其中,所述移动分支包括:多个所述可行移动,所述移动分支中每一个可行移动所属的机械手不同;
排序单元,被配置为采用预设的第一排序方式对所述第一分支集合中的所有移动分支进行排序,得到经过排序的第一分支集合,其中,所述第一排序方式包括:按照与移动分支相关的物料的恢复时间以由小至大的顺序进行排序或按照与移动分支相关的物料的安全驻留时长以由小至大的顺序进行排序;
访问单元,被配置为依次访问所述经过排序的第一分支集合中的每一个分支,查找满足预设的可执行条件的移动分支,所述可执行条件包括:执行移动分支之后所述晶圆清洗设备不处于死锁状态、执行移动分支之后处于危险工艺槽中的物料不处于过泡状态;
调度单元,被配置为在查找到满足所述可执行条件的移动分支时,停止访问其他移动分支,判断执行该移动分支后,所述晶圆清洗设备中的全部物料是否均处于安全位置,若否,则存储该移动分支,虚拟执行该移动分支后返回所述生成可行移动集合的步骤,若是,则存储该移动分支,按存储次序将该移动分支和已存储的移动分支组成调度移动序列,并输出所述调度移动序列。
本申请实施例提供的晶圆清洗设备中的工艺调度方法、装置,在从多个移动分支中查找最终要被执行的移动分支时,不仅考虑了调度的安全性,要求各移动分支需要满足可执行条件,还考虑了每一个移动分支在晶圆清洗设备的产能方面的优劣、每一个移动分支在对物料进行处理之后物料的工艺精度方面的优劣。
利用与移动分支相关的物料的恢复时间衡量移动分支在晶圆清洗设备的产能方面的优劣,利用与移动分支相关的物料的安全驻留时长衡量移动分支在对物料进行处理之后物料的工艺精度方面的优劣。在按照与移动分支相关的物料的恢复时间以由小至大的顺序对多个移动分支进行排序或按照与移动分支相关的物料的安全驻留时长以由小至大的顺序对多个移动分支进行排序后,再从经过排序的集合中查找出最终要被执行的移动分支。
从而,在每一次调度过程中,不仅可以确保调度的安全性,还可以确保选择出的移动分支为在产能方面较优的移动分支或在对物料进行处理之后物料的工艺精度方面较优的移动分支。提升晶圆清洗设备的产能和物料的工艺精度。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1示出了本申请实施例提供的晶圆清洗设备中的工艺调度方法的第一实施例的流程图;
图2示出了第一类型的晶圆清洗设备的结构示意图;
图3示出了第二类型的晶圆清洗设备的结构示意图;
图4示出了本申请实施例提供的晶圆清洗设备中的工艺调度方法的第二实施例的流程图;
图5示出了本申请实施例提供的晶圆清洗设备中的工艺调度方法的第三实施例的流程图;
图6示出了在晶圆清洗设备中进行工艺调度的流程示意图;
图7示出了本申请实施例提供的晶圆清洗设备中的工艺调度装置的结构框图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了本申请实施例提供的晶圆清洗设备中的工艺调度方法的第一实施例的流程图,该方法包括:
步骤101,生成可行移动集合。
以下首先简要说明本申请实施例提供的调度方法可以应用在的晶圆清洗设备的示例结构:
晶圆清洗设备可以包括Station模块集合,Station模块集合表示为{shelf1,shelf2,shelf3,shelf4,shelf5,shelf6,shelf7,shelf8,shelf9,shelf10,shelf11,shelf12,shelf13,shelf14,shelf15,shelf16,PDO1,PDO2}。
盒架(Shelf)用于临时存放片盒(Foup),一个Foup中可以存放一组Wafer(晶圆或晶片)。每一个Shelf上最多可以放置一个Foup,Shelf上有传感器可以检测Foup的个数(0或1)。晶圆清洗设备中共有16个Shelf,至多可以存放16个Foup。
PDO用于实现开关Foup门并进行Mapping(扫描)功能。当物料例如一组晶片进入晶圆清洗设备被放置在PDO上时,PDO执行开门操作对Foup中的Wafer做Mapping校验,避免物料残留和Wafer放置异常。
晶圆清洗设备包括多个Tank模块,Tank模块可以称之为工艺槽。Tank模块集合可以表示为{Tank1(T1),Tank2(T2),Tank3(T3),Tank4(T4),Tank5(T5),Tank6(T6),Tank7(T7),Tank8(T8),Dry,WTC,IOBuffer,EEWD}。
Tank用于对作为物料的至少一组Wafer执行工艺操作,每一个Tank中最多可以放置两组Wafer,Tank的所有类型可以包括危险工艺槽(Critical Tank)和常规工艺槽(RinseTank)。Critical Tank中的物料工艺精度要求较高,Critical Tank可以为不允许过泡的酸工艺槽。允许过泡的酸工艺槽、水工艺槽、Dry、IOBuffer、WTC、EEWD等为Rinse Tank。
Dry为干燥工艺槽,用于对物料执行drying工艺操作,确保工艺任务即job完成后的物料是干燥的。IOBuffer用于对物料执行Align校准操作。WTC用于将同一任务的物料合并放置在一个Tank中以同时进行工艺操作。EEWD用于对抓取不同酸槽中物料的机械手执行洗手操作,降低对不同酸工艺槽中酸的污染。
晶圆清洗设备可以包括一个FoupRobot机械手、一个WHR机械手、一个WTR机械手、多个DualLifter机械手。片盒机械手(Foup Robot,FR)为负责Foup的传送的机械手,FR可以在Shelf与PDO之间进行双向移动,一次抓取一个Foup。晶片抓取机械手(Wafer HandlingRobot,WHR)为负责干燥物料的传送的机械手,WHR可以在PDO与WTC之间进行双向移动,WHR一次可以抓取一组wafer。晶片传输机械手(Wafer Transferring Robot,WTR)负责不使用双槽机械手(Duallifter)的Tank之间的潮湿物料的传送,WTR可以在不使用双槽机械手(Duallifter)的两个Tank之间进行双向移动。WTR一次可以抓取两组wafer。Duallifter为负责潮湿物料的传送的机械手,Duallifter可以在与其对应的两个Tank之间进行双向移动,Duallifter可以一次抓取两组wafer。
进一步地,可以应用本申请实施例提供的调度方法的晶圆清洗设备可以为第一类型的晶圆清洗设备或第二类型的晶圆清洗设备。第一预设类型的晶圆清洗设备也可称之为第一清洗机。第二预设类型的晶圆清洗设备也可称之为第二清洗机。
请参考图2,其示出了第一类型的晶圆清洗设备的结构示意图。
在第一类型的晶圆清洗设备中,酸工艺槽集合包括:Tank1、Tank3、Tank4、Tank7,水工艺槽集合包括:Tank2、Tank5、Tank6、Tank8,Dry为干燥工艺槽。Tank1与Tank2之间的物料的传送、Tank7与Tank8之间的物料的传送均由相应的Duallifter负责。其余的Tank之间的物料的传送均由WTR负责。
第一类型的晶圆清洗设备中的Critical Tank集合可以表示为{T1,T3,T4,T7}。第一类型的晶圆清洗设备中的Rinse Tank集合可以表示为{T2,T5,T6,T8,Dry,IOBuffer,WTC,EEWD}。
第一类型的晶圆清洗设备可以包括5个机械手。第一类型的晶圆清洗设备的机械手集合可以表示为{FR,WTR,WHR,Duallifter12(D12),Duallifter78(D78)}。D12负责Tank1与Tank2之间的物料的传送,D78负责Tank7与Tank8之间的物料的传送。
请参考图3,其示出了第二类型的晶圆清洗设备的结构示意图。
在第二类型的晶圆清洗设备中,Tank1、Tank3、Tank5、Tank7为酸工艺槽,Tank2、Tank4、Tank6、Tank8为水工艺槽。Tank1与Tank2之间的物料传送,Tank3与Tank4之间的物料传送、Tank5与Tank6之间的物料传送、Tank7与Tank8之间的物料传送均由相应的Duallifter负责。
第二类型的晶圆清洗设备的Critical Tank集合可以表示为{T1,T3,T5,T7}。第二类型的晶圆清洗设备的Rinse Tank集合可以表示为{T2,T4,T6,T8,Dry,IOBuffer,WTC,EEWD}。第二类型的晶圆清洗设备可以包括7个机械手,第二类型的晶圆清洗设备的机械手集合可以表示为{FR,WTR,WHR,Duallifter12(D12),Duallifter34(D34),Duallifter56(D56),Duallifter78(D78)}。D12负责Tank1与Tank2之间的物料的传送,D34负责Tank3与Tank4之间的物料传送,D56负责Tank5与Tank6之间物料传送,D78负责Tank7与Tank8之间的物料的传送。
在本申请中,将晶圆清洗设备中的机械手移动至晶圆清洗设备中的一个模块,以该模块为起点,携带物料移动至晶圆清洗设备中的另一个模块,将物体放置到另一个模块之后,移动到预先设置的终点的过程定义为一个移动。
在本申请中,移动可以称之为move。
在对晶圆清洗设备中的机械手进行调度时,机械手可能针对相应的物料执行的移动称之为可行移动。
可行移动也可称之为可行move。
每一个机械手的所有可行move可以组成在对机械手进行调度时的可行移动集合。
可行移动集合可以称之为集合M,可行移动集合即集合M包括:多个可行移动move。
步骤102,基于可行移动集合,生成多个移动分支,构成第一分支集合。
优选的,可以从可行移动集合中查找出每一个机械手各自的可行move子集合。
对于每一个机械手,该机械手的可行move子集合由该机械手的所有可行move组成。
将不同的子集合中的move进行排列组合,构成多个移动分支,这多个移动分支即可构成第一分支集合,每一个移动分支均包括每一个子集合中的一个move。
将不同的子集合中的move进行排列组合相当于每一次分别从每一个机械手的可行move子集合中选择一个可行move进行组合。
对于第一分支集合中的每一个移动分支,该移动分支与第一分支集合中的任意一个其他的移动分支具有至少一个不同的可行move。
步骤103,采用预设的第一排序方式对第一分支集合中的所有移动分支进行排序,得到经过排序的第一分支集合。
在本申请中,第一排序方式包括:按照与移动分支相关的物料的恢复时间以由小至大的顺序进行排序或按照与移动分支相关的物料的安全驻留时长以由小至大的顺序进行排序。
在本申请中,物料的恢复时间可以称之为TimeToAvailable。
在本申请中,定义物料的TimeToAvailable可以是指:在当前的调度之前针对该物料的一个移动完成,该物料恢复到空闲状态,相应的机械手例如WTR可以开始对该物料进行在当前的调度过程中的相应的移动的时间。
换言之,物料的TimeToAvailable可以表示物料已经满足可以移动的条件,该物料可以被机械手移动的时刻。
在本申请中,物料的TimeToAvailable均是相对于整个调度系统定义的基准时刻例如0时刻而言的。第一次调度的开始时刻可以作为基准时刻。
TimeToAvailable的大小可以是指TimeToAvailable的早晚。TimeToAvailable越小,则TimeToAvailable越早。同理,TimeToAvailable越大,则TimeToAvailable越晚。
在一次调度过程中,物料的TimeToAvailable越小,则物料的TimeToAvailable越早,表示物料越早可以被移动。同理,TimeToAvailable越大,则TimeToAvailable越晚,表示物料越晚可以被移动。
在本申请中,在优先产能的情况下,可以对于第一分支集合中的每一个移动分支,按照与移动分支相关的物料的恢复时间TimeToAvailable以由小至大的顺序进行排序。
从而,在进行排序之后,与移动分支相关的物料的TimeToAvailable越小,即与移动分支相关的物料可以被移动的时刻越早,相应的,与物料相关的移动分支的位置越靠前。
对于每一个移动分支,当该移动分支包括多个可行移动时,则每一个可行移动可以由相应的机械手执行,每一个可行移动可以各自针对一个物料,每一个可行移动针对的物料不同。
在本申请中,优选的,在按照与移动分支相关的物料的恢复时间TimeToAvailable以由小至大的顺序进行排序时,对于每一个移动分支,与该移动分支相关的物料可以是指该移动分支中的、由WTR执行的可行移动针对的物料。换言之,对第一分支集合中的所有移动分支,按照移动分支中的由WTR执行的可行移动所针对的物料的TimeToAvailable进行排序。
对于由WTR执行的可行移动针对的物料,由WTR将该物料搬运至目的工艺槽,以在目的工艺槽中对该物料进行相应的工艺操作。若WTR在开始执行可行移动时,相应的物料正在源工艺槽(即起始工艺槽)中进行工艺操作,则WTR需要等待在源工艺槽中进行的针对该物料的工艺操作完成,才能将该物料搬运至目的工艺槽。
对于一个移动分支,在该移动分支被作为可执行移动分支时,则在该移动分支的执行过程中,对于该移动分支中的每一个移动,由负责执行该移动的机械手执行该移动。
对于该移动分支中的每一个可行移动,在该可行移动完成之后,相应物料的TimeToAvailable就会发生更新,更新后的物料的TimeToAvailable会在下一次排序时使用。
以更新一个可行移动针对的物料的TimeToAvailable为例,在执行针对该物料的可行移动之前,该物料的TimeToAvailable利用WT表示。在执行针对该物料的可行移动之后,将该物料的TimeToAvailable更新为WT’。
在执行针对该物料的可行移动之前需要进行洗手操作的情况下,采用以下公式计算WT’:
WT’=max{WT,STT,ETT,ROT}+Sum+Wash Time
其中,Sum=RMT(CU,ST)+PT+RMT(ST,ET)+NPT+RMT(ET,IT)
Wash Time表示洗手操作的时长。
在执行针对该物料的可行移动之前不需要进行洗手操作的情况下,采用以下公式计算WT’:
WT’=max{WT,STT,ETT,ROT}+Sum
针对该物料的可行move的源Tank表示为Start Tank(ST),针对该物料的可行move的目的Tank表示为End Tank(ET),负责执行针对该物料的可行move需要的机械手表示为Robot(RO)。
执行针对该物料的可行move之前该物料的TimeToAvailable表示为WT即该物料的当前的TimeToAvailable表示为WT,执行针对该物料的可行move之前ST的TimeToAvailable表示为STT。ST的TimeToAvailable可以是指ST可以配合机械手执行针对该物料的可行move的时刻。执行针对该物料的move之前ET的TimeToAvailable表示为ETT。ET的TimeToAvailable可以是指ET可以配合机械手执行针对该物料的可行move的时刻。执行针对该物料的可行move之前RO的TimeToAvailable表示为ROT。RO的TimeToAvailable可以是指RO可以执行针对该物料的可行move的时刻。
针对该物料的可行move花费的总时长表示为Sum,RO的移动时间矩阵表示为RMT(x,y),其中x代表RO执行针对该物料的可行move之前的位置,y代表RO执行完成针对该物料的可行move之后的位置。定义RO的当前位置表示为Current Tank(CU),RO配置中设置的默认位置表示为IDLE Tank(IT),RO从CU移动至ST所需的时长表示为RMT(CU,ST),RO从ST移动至ET所需的时长表示为RMT(ST,ET),RO从ET移动至IT所需的时长表示为RMT(ET,IT),RO抓取物料所需的时长表示为PT,RO释放物料所需的时间NPT。
由上述分析可知,物料的TimeToAvailable的数值变化是一个迭代的过程,在计算物料当前的TimeToAvailable以进行排序时需要基于物料的前一个TimeToAvailable进行计算。
在本申请中,物料的安全驻留时长可以称之为ValidTime。
在本申请中,物料的ValidTime表示物料在晶圆清洗设备中的模块中可以驻留的剩余时长。
物料的ValidTime表示为V。定义物料在一个工艺槽即Tank中执行某工艺操作时,该物料在该Tank中还需要继续执行该工艺操作直至完成该工艺操作所需的时长称之为物料在该Tank的工艺剩余时长,物料在Tank的工艺剩余时长表示为LP。若物料在一个Tank中已经完成工艺操作,该物料在完成工艺操作后在该Tank中继续浸泡的时长称为物料在该Tank的过泡时长,物料在Tank的过泡时长表示为OT。预先设置的物料在一个Tank中允许的过泡时长称之为物料在该Tank的过泡阈值,物料在Tank的过泡阈值表示为TR。
预先设置的物料在WTC中允许的空气暴露时长可以称为WTC的暴露阈值,预先设置的物料在IOBuffer中允许的空气暴露时长可以称之为IOBuffer的暴露阈值,物料在WTC或IOBuffer中允许的空气暴露时长表示为TA。
在物料位于WTC或IOBuffer中并且LP>0,物料正在WTC或IOBuffer中被进行相应的工艺操作时,可以采用以下公式计算物料的ValidTime:V=LP+TA。
在物料位于其他工艺槽即Tank中并且LP>0,可以采用以下公式计算物料的ValidTime:V=LP+TR。
在物料位于WTC或IOBuffer中并且LP=0,物料在Tank中已经完成工艺操作,可以采用以下公式计算物料的ValidTime:V=TA–OT。
在物料位于其他工艺槽即Tank中并且LP=0,可以采用以下公式计算物料的ValidTime:V=TR–OT。
在本申请中,在优先工艺精度的情况下,可以对于第一分支集合中的所有移动分支,按照与移动分支相关的物料的ValidTime以由小至大的顺序进行排序。移动分支所关联的物料的ValidTime越小,移动分支的位置越靠前。
在本申请中,对于每一个移动分支,当该移动分支包括多个移动时,则每一个移动可以各自针对一个物料,每一个移动针对的物料不同。该移动分支针对的所有物料由该移动分支中的每一个移动各自针对的物料组合而成。
对于每一个移动分支,在优先工艺精度的情况下,若该移动分支针对的所有物料包括位于危险工艺槽中的物料,换言之,该移动分支包括针对位于危险工艺槽中的物料时,优先将位于危险工艺槽中的物料作为与移动分支相关的物料参与排序,相应的,位于危险工艺槽中的物料的ValidTime参与排序。
若每一个移动分支均各自包括针对位于危险工艺槽中的物料的移动,则每一个移动分支各自关联一个位于危险工艺槽即Critical Tank中的物料,可以按照所有与移动分支相关的位于危险工艺槽中的物料的ValidTime由小至大的顺序,对所有移动分支进行排序。
对于每一个移动分支,在优先工艺精度的情况下,若该移动分支针对的所有物料不包括位于危险工艺槽中的物料,并且该移动分支针对的所有物料包括位于WTC和/或位于IOBuffer中的物料、位于常规工艺槽中的物料,则可以优先将位于WTC或IOBuffer中的物料作为与移动分支相关的物料参与排序。
对于每一个移动分支,在优先工艺精度的情况下,若该移动分支针对的所有物料不包括位于危险工艺槽中的物料,并且该移动分支针对的所有物料不包括位于WTC和位于IOBuffer中的物料,该移动分支针对的所有物料包括位于常规工艺槽中的物料,则将所有位于常规工艺槽中的物料的ValidTime最小的物料作为与移动分支相关的物料参与排序。移动分支所关联的物料过泡风险越大,移动分支的位置越靠前。
步骤104,依次访问经过排序的第一分支集合中的每一个分支,查找满足预设的可执行条件的移动分支。
在本申请中,可执行条件包括:执行移动分支之后晶圆清洗设备不处于死锁状态、执行移动分支之后处于危险工艺槽中的物料不处于过泡状态。
换言之,可执行条件包括以下条件项:执行移动分支之后晶圆清洗设备不处于死锁状态、执行移动分支之后预设危险工艺槽中的物料不处于过泡状态。当满足所有条件项时,则满足可执行条件。
在依次访问经过排序的第一分支集合中的移动分支可以是指按照排序之后的顺序访问第一分支集合中的移动分支。
首先访问第一分支集合中的第1个移动分支,即第一个访问的移动分支为第一分支集合中的第1个移动分支。若访问到的移动分支不满足可执行条件,继续访问下一个移动分支。第1个移动分支不满足可执行条件,则继续访问第2个移动分支,依次类推。
晶圆清洗设备的死锁状态的定义为:对于晶圆清洗设备中的任意一个物料,与针对该物料的下一次移动相关的模块例如源工艺槽或目标工艺槽当前均被其他的物料占用,相应的,对于任意一个机械手,均不存在可以由该机械手负责执行的可行move。
在本申请中,若危险工艺槽即Critical Tank中的物料ValidTime<0,则证明在Critical Tank中的物料在Critical Tank中浸泡的时长已经超过预先设置的最大安全时长,Critical Tank中的物料处于过泡状态。
执行移动分支之后预设危险工艺槽中的物料不处于过泡状态可以是指执行移动分支之后任意一个处于预设危险工艺槽中的物料的ValidTime均大于0。
步骤105,在查找到满足可执行条件的移动分支时,停止访问其他移动分支,根据执行该移动分支后晶圆清洗设备中的全部物料是否均处于安全位置,执行相应的操作。
例如,第1个移动分支为满足可执行条件的可执行移动分支。则不再访问位于第1个移动分支之后的其他移动分支。在第1个移动分支执行完成之后,晶圆清洗设备不处于死锁状态、执行移动分支之后处于预设危险工艺槽中的物料不处于过泡状态。
在本申请中,在查找到满足可执行条件的移动分支时,停止访问其他移动分支,可以判断执行该满足可执行条件的移动分支之后,晶圆清洗设备中的全部物料是否均处于安全位置,若否,则存储该满足可执行条件的移动分支,虚拟执行该移动分支后返回生成可行移动集合的步骤,若是,则存储该满足可执行条件的移动分支,按存储次序将该满足可执行条件的移动分支和已存储的移动分支组成调度移动序列,并输出调度移动序列。
在本申请中,可以定义只要执行移动分支之后物料所在的模块不是危险工艺槽Critical Tank,该模块为一个预设安全位置。换言之,在执行移动分支之后,每一个物料均不处于危险工艺槽Critical Tank中,则在执行移动分支之后,每一个物料均处于预设安全位置。
在本申请中,在依次访问到经过排序的第一分支集合中储移动分支时,如果查找到了一个移动分支,其被执行后晶圆清洗设备不处于死锁状态、处于预设危险工艺槽中的物料不处于过泡状态,但不满足每一个物料均处于安全位置,则先存储该移动分支,再虚拟执行该移动分支,以更新晶圆清洗设备的状态,进行下一轮的调度判断流程。
当前执行的步骤101-105基于的可行移动集合为集合M。
在本申请中,虚拟执行该移动分支后返回生成可行移动集合的步骤可以是指:模拟执行满足可执行条件的移动分支,然后,再次执行步骤101-105。再次执行步骤101即生成可行移动集合时,是根据晶圆清洗设备新状态下物料的位置,再次生成可行移动集合。
在模拟执行满足可执行条件的移动分支之后,晶圆清洗设备处于一个新的状态,相应的物料处于新的位置,每一个机械手处于新的位置,确定在晶圆清洗设备的新的状态下,每一个机械手各自的可行move,每一个机械手各自的可行move组成可行移动集合M’,即在模拟执行可存储移动分支之后,晶圆清洗设备中的每一个机械手可以执行的可行move组成集合M’。
将确定出的可行移动集合M’作为再次执行步骤102时的可行移动集合。
若多次执行步骤101-105这个调度判断流程,在最后一次执行的调度判断流程中的步骤105查找到了满足可执行条件且执行后部物料均处于安全位置的移动分支。由于之前的每一次执行的步骤105,均查找并存储了满足可执行条件但执行后并不是全部物料均处于安全位置的移动分支,因此,可以按存储次序,将最后一次执行的步骤105查找到的移动分支与已经存储的其他移动分支组成调度移动序列,并输出调度移动序列,供晶圆清洗设备实际执行,此次工艺调度就结束了,在晶圆清洗设备实际执行完此次输出的调度移动序列后,开始下一次工艺调度。在输出的调度移动序列中,移动分支被存储的时刻越早,存储次序越靠前,从而,调度移动序列中的顺序可以为存储时间由早到晚的顺序。最早被存储的移动分支为第1个移动分支,最晚被存储的移动分支即最后一次执行的步骤105查找到的移动分支为最后一个移动分支。从而,在晶圆清洗设备实际执行完此次输出的调度移动序列后,可以确保晶圆清洗设备不处于死锁状态、处于预设危险工艺槽中的物料不处于过泡状态、每一个物料均处于安全位置。
在执行移动分支时,可以并行地执行移动分支中的每一个可行move,即每一个可行move所属的机械手各自执行可行move,移动分支中的最后一个可行move执行完成时,可以视为移动分支执行完成。
在一些实施例中,在查找不到满足可执行条件的移动分支时,将可行移动集合中的每一个可行移动分别作为一个独立移动分支,构成第二分支集合;采用第一排序方式和/或预设的第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合,其中,第二排序方式包括:相关物料离开所述晶圆清洗设备的独立移动分支优先于相关物料进入晶圆清洗设备的独立移动分支;依次访问所述经过排序的第二分支集合中的每一个分支,查找满所述足可执行条件独立移动分支;在查找到满足所述可执行条件的独立移动分支时,停止访问其他独立移动分支,判断执行该独立移动分支后,晶圆清洗设备中的全部物料是否均处于安全位置,若否,则存储该独立移动分支,虚拟执行该独立移动分支后返回所述生成可行移动集合的步骤,若是,则存储该独立移动分支,按存储次序将该独立移动分支和已存储的移动分支和/或独立移动分支组成调度移动序列,并输出所述调度移动序列。
在本申请中,若访问经过排序的第一分支集合中的每一个移动分支,确定其中每一个移动分支均不满足可执行条件,则将可行移动集合中的每一个可行移动分别作为一个独立移动分支,构成第二分支集合。
换言之,独立分支集合实际就是可行移动集合,只是每一个可行move各自被作为一个独立移动分支。
第二分支集合可以由所有独立移动分支组成,换言之,第二分支集合可以由可行移动集合中的所有可行移动组成。
可以采用第一排序方式和/或预设的第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合。
依次访问经过排序的第二分支集合中的每一个分支,查找满所述足可执行条件独立移动分支;在查找到满足可执行条件的独立移动分支时,停止访问其他独立移动分支,判断执行该独立移动分支后,所述晶圆清洗设备中的全部物料是否均处于安全位置,若否,则存储该独立移动分支,虚拟执行该独立移动分支后返回生成可行移动集合的步骤,若是,则存储该独立移动分支,按存储次序将该独立移动分支和已存储的移动分支和/或独立移动分支组成调度移动序列,并输出调度移动序列。
在访问到第二分支集合中满足可执行条件的独立移动分支时,停止访问第二分支集合中的位于该独立移动分支之后的其他独立移动分支。
已存储的移动分支为:被查找到的满足可执行条件的但由于被执行之后不是全部物料均处于安全位置而被存储的移动分支。
已存储的独立移动分支为:被查找到的满足可执行条件但由于被执行后不是全部物料均处于安全位置而被存储的独立移动分支。
在访问到满足可执行条件且被执行后全部物料均处于安全位置的独立移动分支时,可以按存储次序,将访问到的独立移动分支与已存储的移动分支和/或独立移动分支组成调度移动序列,并输出调度移动序列,供晶圆清洗设备实际执行。在输出的调度移动序列中,被存储的时刻越早,存储次序越靠前,从而,调度移动序列中的顺序可以为存储时间由早到晚的顺序。从而,在晶圆清洗设备实际执行完此次输出的调度移动序列后,可以确保晶圆清洗设备不处于死锁状态、处于预设危险工艺槽中的物料不处于过泡状态、每一个物料均处于安全位置。
在本申请中,采用第一排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合的方式与上述采用第一排序方式对第一分支集合中的所有移动分支进行排序,得到经过排序的第一分支集合的方式同理。当仅采用第一排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合时,可以参考上述采的第一排序方式对第一分支集合中的所有移动分支进行排序,得到经过排序的第一分支集合的方式。
在本申请中,第二排序方式包括:相关物料离开晶圆清洗设备的独立移动分支优先于相关物料进入晶圆清洗设备的独立移动分支。
相关物料离开晶圆清洗设备的独立移动分支包括用于使得物料离开晶圆清洗设备的可行移动,该可行移动的数量为一个。相关物料进入晶圆清洗设备的独立移动分支包括用于使得物料进入晶圆清洗设备的可行移动,该可行移动的数量为一个。
相关物料离开晶圆清洗设备的独立移动分支优先于相关物料进入晶圆清洗设备的独立移动分支可以是指:在没有针对相关物料离开晶圆清洗设备的独立移动分支和相关物料进入晶圆清洗设备的独立移动分支的前后位置关系的限制条件的情况下,将相关物料离开晶圆清洗设备的独立移动分支排在相关物料进入晶圆清洗设备的独立移动分支之前。
在仅采用第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合时,第二排序方式为:将相关物料离开晶圆清洗设备的独立移动分支排在相关物料进入晶圆清洗设备的独立移动分支之前,对于第二分支集合中的除了相关物料离开晶圆清洗设备的独立移动分支和相关物料进入晶圆清洗设备的独立移动分支之外的其他的独立移动分支,可以将其他的独立移动分支排在相关物料进入晶圆清洗设备的独立移动分支之后。在仅采用第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合时,若当其他的独立移动分支的数量为多个,第二排序方式还可以包括对于所有他的独立移动分支,按照与移动分支相关的物料的恢复时间以由小至大的顺序进行排序或按照与移动分支相关的物料的安全驻留时长以由小至大的顺序进行排序。
在本申请中,当采用第一排序方式和预设的第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合时,可以首先采用第一排序方式对所有独立移动分支进行排序,再采用第二排序方式对第二分支集合中的所有独立移动分支进行排序。
在结合第一排序方式对第二分支集合中的所有独立移动分支进行排序时,第二排序方式可以包括:若在采用第一排序方式对所有独立移动分支进行排序之后,相关物料离开晶圆清洗设备的独立移动分支排在相关物料进入晶圆清洗设备的独立移动分支之前,则在采用第二排序方式对第二分支集合中的所有独立移动分支进行排序时,由于相关物料离开晶圆清洗设备的独立移动分支已经排在相关物料进入晶圆清洗设备的独立移动分支之前,即相关物料离开晶圆清洗设备的独立移动分支已经优先于相关物料进入晶圆清洗设备的独立移动分支,此时,保持采用第一排序方式对所有独立移动分支进行排序之后得到的相关物料离开晶圆清洗设备的独立移动分支的位置和相关物料进入晶圆清洗设备的独立移动分支的位置即可,同时,保持采用第一排序方式对所有独立移动分支进行排序之后得到的其他的独立移动分支的位置。
若在采用第一排序方式对所有独立移动分支进行排序之后,相关物料离开晶圆清洗设备的独立移动分支排在相关物料进入晶圆清洗设备的独立移动分支之后,则在采用第二排序方式对第二分支集合中的所有独立移动分支进行排序时,可以将相关物料离开晶圆清洗设备的独立移动分支的位置与相关物料进入晶圆清洗设备的独立移动分支的位置进行交换,以使得相关物料离开晶圆清洗设备的独立移动分支排在相关物料进入晶圆清洗设备的独立移动分支之前,同时,保持采用第一排序方式对所有独立移动分支进行排序之后得到的其他的独立移动分支的位置。
在本实施例的一些可选的实现方式中,采用第一排序方式和/或预设的第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合,包括:采用第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合,其中,进行排序包括:判断离开晶圆清洗设备的物料的恢复时间和与进入晶圆清洗设备的物料的恢复时间之间的时间间隔是否大于关联时长,其中,关联时长为机械手携带进入晶圆清洗设备的物料从当前位置移动至合并工艺槽所需的时长与该机械手从合并工艺槽移动至预设终点位置所需的时长之和;若是,将相关物料进入所述晶圆清洗设备的独立移动分支排在相关物料离开所述晶圆清洗设备的独立移动分支之前;若否,将相关物料离开晶圆清洗设备的独立移动分支排在相关物料进入晶圆清洗设备的独立移动分支之前。
在本申请中,在仅采用第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合时,第二排序方式可以包括:判断离开晶圆清洗设备的物料的恢复时间和与进入晶圆清洗设备的物料的恢复时间之间的时间间隔是否大于关联时长。
若离开晶圆清洗设备的物料的恢复时间和与进入晶圆清洗设备的物料的恢复时间之间的时间间隔大于关联时长,可以将相关物料进入所述晶圆清洗设备的独立移动分支排在相关物料离开所述晶圆清洗设备的独立移动分支之前。若离开晶圆清洗设备的物料的恢复时间和与进入晶圆清洗设备的物料的恢复时间之间的时间间隔不大于关联时长,可以将相关物料离开晶圆清洗设备的独立移动分支排在相关物料进入所述晶圆清洗设备的独立移动分支之前。
离开晶圆清洗设备的物料的恢复时间和进入晶圆清洗设备的物料的恢复时间之间的时间间隔是否大于关联时长作为针对相关物料离开晶圆清洗设备的独立移动分支和相关物料进入晶圆清洗设备的独立移动分支的前后位置关系的限制条件。
在仅采用第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合时,若存在其他的独立移动分支并且其他的独立移动分支的数量为多个,第二排序方式还可以包括:对于所有其他的独立移动分支,按照与移动分支相关的物料的恢复时间以由小至大的顺序进行排序或按照与移动分支相关的物料的安全驻留时长以由小至大的顺序进行排序,其他的独立移动分支为第二分支集合中的除了相关物料离开晶圆清洗设备的独立移动分支和相关物料进入所述晶圆清洗设备的独立移动分支之外的独立移动分支。
在本发明的一个优选实施例中,相关物料离开晶圆清洗设备的独立移动分支针对的物料可以表示为OW,离开晶圆清洗设备的物料的TimeToAvailable表示为OWT。相关物料进入晶圆清洗设备的独立移动分支针对的物料表示为IW,进入晶圆清洗设备的物料的TimeToAvailable表示为IWT。,相关物料离开晶圆清洗设备的独立移动分和相关物料进入晶圆清洗设备的独立移动分支都要经过WTC。用于执行相关物料进入晶圆清洗设备的独立移动分支的机械手携带IW从当前位置移动至WTC所需的时长表示为MIT。
用于执行相关物料进入晶圆清洗设备的独立移动分支的机械手在携带IW从当前位置移动至合并工艺槽WTC之后,从WTC移动至预设终点位置例如一个作为终点的模块中所需的时长表示为MOT。关联时长可以表示为MIT+MOT。
判断离开晶圆清洗设备的物料的恢复时间和进入晶圆清洗设备的物料的恢复时间之间的时间间隔是否大于关联时长。
若OWT>IWT+MIT+MOT,即相关物料离开晶圆清洗设备的独立移动分支针对的物料的恢复时间和相关物料进入晶圆清洗设备的独立移动分支针对的物料的恢复时间之间的时间间隔大于关联时长,则确定相关物料进入晶圆清洗设备的独立移动分支的位置位于相关物料离开晶圆清洗设备的独立移动分支的位置之前。
若在第二分支集合中,相关物料进入晶圆清洗设备独立移动分支的位置位于相关物料离开晶圆清洗设备的独立移动分支的位置之前,则不需要对相关物料进入晶圆清洗设备的移动分支的位置和相关物料离开晶圆清洗设备的独立移动分支的位置进行调整,同时,保持第二分支集合中的其他的移动分支的位置不变,得到经过排序的第二分支集合,换言之,直接将第二分支集合作为经过排序的第二分支集合。
若在第二分支集合中,进入相关物料晶圆清洗设备的独立移动分支的位置位于相关物料离开晶圆清洗设备的独立移动分支的位置之后,则将进入晶圆清洗设备的独立移动分支的位置与离开晶圆清洗设备的独立移动分支的位置交换,使得进入晶圆清洗设备的独立移动分支的位置位于离开晶圆清洗设备的独立移动分支的位置之前,同时,保持第二分支集合中的其他的移动分支的位置不变,得到经过排序的第二分支集合。
若OWT不大于IWT+MIT+MOT,即相关物料离开晶圆清洗设备的独立移动分支针对的物料的恢复时间和相关物料进入晶圆清洗设备的独立移动分支针对的物料的恢复时间之间的时间间隔小于或等于关联时长,则确定相关物料离开晶圆清洗设备的独立移动分支的位置位于相关物料进入晶圆清洗设备的独立移动分支的位置之后。
若在第二分支集合中,进入晶圆清洗设备的独立移动分支的位置位于离开晶圆清洗设备移动分支的位置之后,则不需要对进入晶圆清洗设备的独立移动分支的位置和离开晶圆清洗设备的独立移动分支的位置进行调整,同时,保持第二分支集合中的其他的独立移动分支的位置不变,得到经过排序的第二分支集合,换言之,直接将第二分支集合作为经过排序的第二分支集合。
若在第二分支集合中,进入晶圆清洗设备的独立移动分支的位置位于离开晶圆清洗设备的独立移动分支的位置之前,则将进入晶圆清洗设备的独立移动分支的位置与离开晶圆清洗设备独立移动分支的位置交换,使得进入晶圆清洗设备的独立移动分支的位置位于离开晶圆清洗设备的独立移动分支的位置之后,同时,保持第二分支集合中的其他的独立移动分支的位置不变,得到经过排序的第二分支集合。
在本实施例的一些可选的实现方式中,采用第一排序方式和/或预设的第二排序方式对第二分支集合中的所有独立移动分支进行排序,得述经过排序的第二分支集合,包括:采用第一排序方式对第二分支集合中的所有独立移动分支进行排序;再采用第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合,其中,采用第二排序方式进行排序包括:判断离开晶圆清洗设备的物料的恢复时间和与进入晶圆清洗设备的物料的恢复时间之间的时间间隔是否大于关联时长,其中,关联时长为机械手携带与进入所述晶圆清洗设备的物料从当前位置移动至合并工艺槽所需的时长与该机械手从所述合并工艺槽移动至预设终点位置所需的时长之和;若是,将相关物料进入所述晶圆清洗设备的独立移动分支排在相关物料离开晶圆清洗设备的独立移动分支之前;若否,将相关物料离开晶圆清洗设备的独立移动分支排在相关物料进入所述晶圆清洗设备的独立移动分支之前;将待插入移动分支插入到第二分支集合中的除了待插入移动分支之外的每一个其他独立移动分支中。
可以首先采用第一排序方式对第二分支集合中的所有独立移动分支进行排序。
在采用第一排序方式对第二分支集合中的所有独立移动分支进行排序时,若优先产能,可以对第二分支集合中的所有独立移动分支按照与移动分支相关的物料的TimeToAvailable排序。
在采用第一排序方式对第二分支集合中的所有独立移动分支进行排序时,若优先工艺精度,可以对第二分支集合中的所有独立移动分支按照与移动分支相关的物料的ValidTime排序。
在采用第一排序方式对第二分支集合中的所有独立移动分支进行排序之后,可以再采用第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合。
在结合第一排序方式对第二分支集合中的所有独立移动分支进行排序时,第二排序方式可以包括:判断离开晶圆清洗设备的物料的恢复时间和与进入晶圆清洗设备的物料的恢复时间之间的时间间隔是否大于关联时长,其中,关联时长为机械手携带与进入所述晶圆清洗设备的物料从当前位置移动至合并工艺槽所需的时长与该机械手从合并工艺槽移动至预设终点位置所需的时长之和;若是,将相关物料进入所述晶圆清洗设备的独立移动分支排在相关物料离开所述晶圆清洗设备的独立移动分支之前;若否,将相关物料离开晶圆清洗设备的独立移动分支排在相关物料进入晶圆清洗设备的独立移动分支之前;将待插入移动分支插入到第二分支集合中的除了待插入移动分支之外的每一个其他独立移动分支中。第二排序方式还可以包括:保持在采用第一排序方式对第二分支集合中的所有独立移动分支进行排序之后得到的其他独立移动分支的位置不变,其他独立移动分支为除了相关物料离开晶圆清洗设备的独立移动分支和相关物料进入晶圆清洗设备的独立移动分支之外的独立分支。通过第二排序方式,可以确定相关物料离开晶圆清洗设备的独立移动分支和相关物料进入晶圆清洗设备的独立移动分支的前后位置关系,同时,保持在采用第一排序方式对第二分支集合中的所有独立移动分支进行排序之后得到的其他独立移动分支的位置不变。根据确定的前后位置关系,进一步确定是保持在采用第一排序方式对第二分支集合中的所有独立移动分支进行排序之后相关物料离开晶圆清洗设备的独立移动分支的位置和相关物料进入晶圆清洗设备的独立移动分支的位置或者是交换相关物料离开晶圆清洗设备的独立移动分支的位置和相关物料进入晶圆清洗设备的独立移动分支的位置。
在依次通过第一排序方式、第二排序方式对第二分支集合中的所有独立移动分支进行排序,最终确定每一个独立分支的位置之后,可以将待插入移动分支插入到第二分支集合中的除了待插入移动分支之外的每一个其他独立移动分支中,最终得到经过排序的第二分支集合。第二分支集合中的除了待插入移动分支之外的独立移动分支可以称之为其他独立移动分支。在将待插入移动分支插入到第二分支集合中的每一个其他独立移动分支中之后,最终得到的经过排序的第二分支集合由待插入移动分支、每一个其他独立移动分支各自对应的合并移动分支组成。对于每一个其他独立移动分支,该其他独立移动分支对应的合并移动分支由该其他独立移动分支和待插入移动分支组成。
图4示出了本申请实施例提供的晶圆清洗设备中的工艺调度方法的第二实施例的流程图,该方法包括:
步骤401,生成可行移动集合,该可行移动集合基于第一类型的晶圆清洗设备中的机械手的可行移动生成。
步骤401-406针对第一类型的晶圆清洗设备,相应的,生成的可行移动集合基于第一类型的晶圆清洗设备中的机械手的可行移动生成。
步骤401的具体执行过程与步骤101的具体执行过程同理,步骤401的具体执行过程参考步骤101的执行过程。在本实施例中,晶圆清洗设备为第一类型的晶圆清洗设备,基于第一类型的晶圆清洗设备中的机械手的可行移动生成可行移动集合。
步骤402,基于该可行移动集合,生成多个移动分支,构成第一分支集合。
在本实施例中,晶圆清洗设备为第一类型的晶圆清洗设备,基于可行移动集合,生成多个移动分支,构成第一分支集合,包括:从可行移动集合中查找出多个所述机械手各自的可行移动子集合,其中,多个所述机械手包括晶片传输机械手、晶片抓取机械手、片盒机械手,一机械手的可行移动子集合包括:所述可行移动集合中的所有属于该机械手的可行移动;对来自不同可行移动子集合的可行移动进行排列组合,生成所述多个移动分支,构成第一分支集合,其中,所述移动分支中的每一个可行移动各自属于一个可行移动子集合,每一个可行移动属于的可行移动子集合不同。
在本实施例中,晶圆清洗设备为第一类型的晶圆清洗设备,当基于可行移动集合,生成多个移动分支,构成第一分支集合时,可以从可行移动集合中查找出多个机械手各自的可行移动子集合。该多个机械手包括晶片传输机械手即WTR、晶片抓取机械手即WHR、片盒机械手即FR。
首先可以从可行移动集合中查找出WTR的可行移动子集合、WHR的可行移动子集合、FR的可行移动子集合。
WTR的移动子集合可以称之为MT集合,WHR的移动子集合可以称之为MH集合,FR的移动子集合可以称之为MF集合。
将不同的可行移动子集合中的可行move进行排列组合,得到第一分支集合,每一个移动分支各自包括每一个可行移动子集合中的一个可行move。
将不同的子集合中的move进行排列组合相当于每一次分别从每一个子集合中选择一个move进行组合,即每一次分别从MT集合、MH集合、MF集合中选择一个可行move进行组合。
对于第一分支集合中的每一个移动分支,该移动分支包括:一个属于WTR的可行move、一个属于WHR的可行move、一个属于FR的可行move。
在本实施例中,晶圆清洗设备为第一类型的晶圆清洗设备,基于可行移动集合,生成多个移动分支,构成第一分支集合可以还包括:判断第一分支集合是否包括问题分支,其中,问题分支为包括存在冲突的两个可行移动的移动分支;若否,将待插入可行移动集合分别插入到第一分支集合中的每一个移动分支中,待插入可行移动集合包括:每一个双槽机械手各自的与晶片传输机械手的任意一个可行移动不冲突的可行移动;若是,将问题分支中存在冲突的两个可行移动分别作为一个独立分支;对于每一个独立分支,将问题分支中的除了存在冲突的两个可行移动之外的其他可行移动插入到所述独立分支中,得到两个新的移动分支;之后,再将待插入可行移动集合分别插入第一分支集合中的每一个移动分支中。
当晶圆清洗设备为预设第一类型的晶圆清洗设备时,在第一类型的晶圆清洗设备中,WTR与WHR不能同时经过WTC模块,换言之,WTR的可行move的移动路线和WHR的可行move的移动路线不能同时包括WTC模块。
对于第一类型的晶圆清洗设备而言,若一个移动分支中WTR的可行move的移动路线和该移动分支中的WHR的可行move的移动路线同时包括WTC模块,则WTR的可行move和WHR的可行move为存在冲突的两个可行move,该移动分支为一个问题移动分支。
在第一类型的晶圆清洗设备中,FR与WHR不能同时经过PDO1模块或PDO2模块,换言之,FR的可行move的移动路线与WHR的可行move的移动路线不能均包括PDO1模块或PDO2模块。
此外,在第一类型的晶圆清洗设备中,WTR的可行move的移动路线与D12的可行move的移动路线不能包括同一个Tank模块、WTR的可行move的移动路线与D78的可行move的移动路线不能包括同一个Tank模块。
在得到第一分支集合之后,可以判断第一分支集合是否包括问题移动分支。问题移动分支为包括存在冲突的两个可行移动的移动分支。
待插入可行移动集合可以为由第一类型晶圆清洗设备中的D12的、与WTR的任意一个可行move不冲突的一个可行move和由第一类型的晶圆清洗设备中的D78的、与WTR的任意一个可行move不冲突的一个可行move组成的可行move集合。
若第一分支集合不包括问题移动分支,可以将待插入可行移动集合分别插入到第一分支集合中的每一个移动分支中。将待插入可行移动集合分别插入到第一分支集合中的每一个移动分支中之后,第一分支集合包括:多个不同的合并移动分支,每一个合并移动分支各自包括第一分支集合中的一个移动分支和被插入到该移动分支中的待插入可行移动集合。
若第一分支集合包括问题移动分支,可以将问题分支中存在冲突的两个可行移动分别作为一个独立分支;对于每一个独立分支,将问题分支中的除了存在冲突的两个可行移动之外的其他可行移动插入到该独立分支中。从而,可以得到两个新的移动分支,第一分支集合发生了更新。两个新的移动分支中的每一个新的移动分支各自包括一个独立分支和被插入到问题分支中的除了存在冲突的两个可行移动之外的其他可行移动。然后,可以将待插入可行移动集合分别插入第一分支集合每一个移动分支中。
步骤403,采用预设的第一排序方式对第一分支集合中的所有移动分支进行排序,得到经过排序的第一分支集合。
步骤403的具体执行过程与步骤103的具体执行过程同理,步骤403的具体执行过程参考步骤103的执行过程。
步骤404,依次访问经过排序的第一分支集合中的每一个分支,查找满足预设的可执行条件的移动分支。
步骤404的具体执行过程与步骤104的具体执行过程同理,步骤404的具体执行过程参考步骤104的执行过程。
步骤405,在查找到满足可执行条件的移动分支时,停止访问其他移动分支,根据执行该移动分支后晶圆清洗设备中的全部物料是否均处于安全位置,执行相应的操作。
步骤405的具体执行过程与步骤105的具体执行过程同理,步骤405的具体执行过程参考步骤105的执行过程。
步骤406,在查找不到满足可执行条件的移动分支时,执行相关的操作。
在本实施例中,在查找不到满足可执行条件的移动分支时,执行的相关的操作包括:将可行移动集合中的每一个可行移动分别作为一个独立移动分支,构成第二分支集合;采用第一排序方式和/或预设的第二排序方式对第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合,其中,第二排序方式包括:相关物料离开所述晶圆清洗设备的独立移动分支优先于相关物料进入晶圆清洗设备的独立移动分支;依次访问所述经过排序的第二分支集合中的每一个分支,查找满所述足可执行条件独立移动分支;在查找到满足所述可执行条件的独立移动分支时,停止访问其他独立移动分支,判断执行该独立移动分支后,晶圆清洗设备中的全部物料是否均处于安全位置,若否,则存储该独立移动分支,虚拟执行该独立移动分支后返回所述生成可行移动集合的步骤,若是,则存储该独立移动分支,按存储次序将该独立移动分支和已存储的移动分支和/或独立移动分支组成调度移动序列,并输出所述调度移动序列。
步骤406的具体执行过程与第一实施例中可选的实现方式中的在查找不到满足可执行条件的移动分支时,执行的相关的操作的过程同理,步骤406的具体执行过程可以参考第一实施例中可选的实现方式中的在查找不到满足可执行条件的移动分支时,执行的相关的操作的过程。
图5示出了本申请实施例提供的晶圆清洗设备中的工艺调度方法的第三实施例的流程图,该方法包括:
步骤501,生成可行移动集合,该可行移动集合基于第二类型的晶圆清洗设备中的机械手的可行移动生成。
步骤501-506针对第二类型的晶圆清洗设备,相应的,生成的可行移动集合基于第二类型的晶圆清洗设备中的机械手的可行移动生成。
步骤501的具体执行过程与步骤101的具体执行过程同理,步骤501的具体执行过程参考步骤101的执行过程。在本实施例中,晶圆清洗设备为第二类型的晶圆清洗设备,基于第二类型的晶圆清洗设备中的机械手的可行移动生成可行移动集合。
步骤502,基于该可行移动集合,生成多个移动分支,构成第一分支集合。
在本实施例中,晶圆清洗设备为第二类型的晶圆清洗设备,基于可行移动集合,生成多个移动分支,构成第一分支集合,包括:从可行移动集合中查找出每一个机械手各自的可行移动子集合;对来自不同可行移动子集合的可行移动进行排列组合,生成多个移动分支,构成第一分支集合,其中,移动分支中的每一个可行移动各自属于一个可行移动子集合,每一个可行移动属于的可行移动子集合不同。
当基于可行移动集合,生成多个移动分支,构成第一分支集合时,可以首先从可行移动集合中查找出每一个机械手各自的可行移动子集合。然后,可以将不同的可行移动子集合中的可行move进行排列组合,得到多个移动分支,从而,可以生成包括多个移动分支的第一分支集合。每一个移动分支各自包括每一个可行移动子集合中的一个可行move。将不同的可行移动子集合中的可行move进行排列组合相当于每一次分别从每一个机械手的可行移动子集合中选择一个可行move进行组合。对于第一分支集合中的每一个移动分支,该移动分支包括:每一个机械手的一个可行move。
在本实施例中,晶圆清洗设备为第二类型的晶圆清洗设备,基于可行移动集合,生成多个移动分支,构成第一分支集合可以还包括:判断第一分支集合是否包括问题分支,其中,问题分支为包括存在冲突的两个可行移动的移动分支;若是,将问题分支中存在冲突的两个可行移动分别作为一个独立分支;对于每一个独立分支,将问题分支中的除了存在冲突的两个可行移动之外的其他可行移动插入到独立分支中,得到两个新的移动分支。
当晶圆清洗设备为预设第二类型的晶圆清洗设备时,在第二晶圆清洗设备中,WTR与WHR不能同时经过WTC模块,换言之,WTR的可行move的移动路线与WHR的可行move的移动路线不能均包括WTC模块。
在第二晶圆清洗设备中,FR与WHR不能同时经过PDO1模块或PDO2模块,换言之,FR的可行移动move的移动路线与WHR的可行move的移动路线不能均包括PDO1模块或PDO2模块。
当晶圆清洗设备为第二类型晶圆清洗设备时,在将不同的可行移动子集合中的可行move进行排列组合,生成包括多个移动分支的第一分支集合之后,可以判断第一分支集合是否包括问题移动分支。
若第一分支集合包括问题移动分支,可以将问题分支中存在冲突的两个可行移动分别作为一个独立分支;将问题分支中存在冲突的两个可行移动分别作为一个独立分支;对于每一个独立分支,将问题分支中的除了存在冲突的两个可行移动之外的其他可行移动插入到该独立分支中,得到两个新的移动分支。
两个新的移动分支中的每一个新的移动分支各自包括一个独立分支和被插入到问题分支中的除了存在冲突的两个可行移动之外的其他可行移动。将问题分支中的除了存在冲突的两个可行移动之外的其他可行移动分别插入到每一个独立分支得到两个新的移动分支之后,第一分支集合被更新。
步骤503,采用预设的第一排序方式对第一分支集合中的所有移动分支进行排序,得到经过排序的第一分支集合。
步骤503的具体执行过程与步骤103的具体执行过程同理,步骤503的具体执行过程参考步骤103的执行过程。
步骤504,依次访问经过排序的第一分支集合中的每一个分支,查找满足预设的可执行条件的移动分支。
步骤504的具体执行过程与步骤104的具体执行过程同理,步骤504的具体执行过程参考步骤104的执行过程。
步骤505,在查找到满足可执行条件的移动分支时,停止访问其他移动分支,根据执行该移动分支后晶圆清洗设备中的全部物料是否均处于安全位置,执行相应的操作。
步骤505的具体执行过程与步骤105的具体执行过程同理,步骤505的具体执行过程参考步骤105的执行过程。
步骤506,在查找不到满足可执行条件的移动分支时,执行相关的操作。
步骤506的具体执行过程与第一实施例中可选的实现方式中的在查找不到满足可执行条件的移动分支时,执行的相关的操作的过程同理,步骤506的具体执行过程可以参考第一实施例中可选的实现方式中的在查找不到满足可执行条件的移动分支时,执行的相关的操作的过程。
不同之处在于,在本实施例中,晶圆清洗设备为第二晶圆清洗设备,在查找不到满足可执行条件的移动分支时,执行相关的操作时,相关操作中的将可行移动集合中的每一个可行移动分别作为一个独立移动分支,构成第二分支集合,包括:基于所有独立移动分支,构成第二分支集合;将待插入移动分支作为一个新的独立移动分支插入第二分支集合,其中,待插入移动分支包括所有双槽机械手的可行移动;删除第二分支集合中所有属于双槽机械手的独立移动分支。
可以首先生成包括所有独立移动分支的第二分支集合。同时,可以生成包括可行分支集合中的属于双槽机械手的可行移动的待插入移动分支。换言之,每一个双槽机械手各自的一个移动分支实际为每一个双槽机械手各自的一个可行move。将待插入移动分支作为一个新的独立移动分支插入第二分支集合,删除第二分支集合中所有属于双槽机械手的独立移动分支。在删除第二分支集合中所有属于双槽机械手的独立移动分支之后,第二分支集合由待插入移动分支和除了第二分支集合中所有属于双槽机械手的独立移动分支之外的独立移动分支组成。
之后的操作即可基于第二分支集合进行,在依次通过第一排序方式、第二排序方式对第二分支集合中的所有独立移动分支进行排序,最终确定每一个独立分支的位置之后,可以将已成为了一个新的独立移动分支的待插入移动分支插入到第二分支集合中的除了待插入移动分支之外的每一个其他独立移动分支中,最终得到经过排序的第二分支集合。第二分支集合中的除了待插入移动分支之外的独立移动分支可以称之为其他独立移动分支。在将待插入移动分支插入到第二分支集合中的每一个其他独立移动分支中之后,最终得到的经过排序的第二分支集合由待插入移动分支、每一个其他独立移动分支各自对应的合并移动分支组成。对于每一个其他独立移动分支,该其他独立移动分支对应的合并移动分支由该其他独立移动分支和待插入移动分支组成。
基于当前的第二分支集合,继续执行依次访问,查找满足预设的可执行条件的移动分支的步骤,具体执行过程参考步骤104的执行过程。在查找到满足可执行条件的移动分支时执行相应的操作,具体执行过程参考步骤104的执行过程。
请参考图6,其示出了在晶圆清洗设备中进行工艺调度的流程示意图。在一次调度判断流程中,在该次调度判断流程中查找不到满足可执行条件的移动分支的情况下,可以生成指示拆分为独立分支的信息。该指示拆分为独立分支的信息可以指示在进行该次的下一次调度判断流程时,需要将该次的下一次调度判断流程针对的可行move集合拆分为独立分支即该次的下一次调度判断流程针对的可行move集合中的每一个可行move分别作为一个独立移动分支,构成第二分支集合,然后,针对第二分支集合以第一排序方式和/或第二排序方式进行排序。
在一次调度判断流程中,首先判断是否将该次调度判断流程针对的可行移动集合拆分为独立分支。判断流程针对的可行移动集合拆分为独立分支基于在该次的上一次调度判断流程中是否生成指示拆分为独立分支的信息而确定。若在该次的上一次调度判断流程中生成指示拆分为独立分支的信息,则确定将该次调度判断流程针对的可行移动集合拆分为独立分支。若在该次的上一次调度判断流程中没有生成指示拆分为独立分支的信息,则确定不将该次调度判断流程针对的可行移动集合拆分为独立分支,对于该次调度判断流程针对的可行移动集合,继续执行查找出每一个机械手的所有可行move的操作。然后,可以生成相应的第一分支集合,采用第一排序方式对第一分支集合进行排序,得到经过排序的第一分支集合。在一次调度判断流程中,该次调度判断流程针对的可行移动集合为集合M。若在调度判断流程中查找到了一个移动分支,该移动分支被执行后晶圆清洗设备不处于死锁状态、处于预设危险工艺槽中的物料不处于过泡状态,但不满足每一个物料均处于安全位置,则存储该移动分支,虚拟执行该移动分支后返回生成可行移动集合M’,可行移动集合M’作为该次的下一次调度判断流程针对的可行移动集合。
在一次调度判断流程中,若查找到了满足可执行条件且执行后全部物料均处于安全位置的移动分支,则存储该满足可执行条件且执行后全部物料均处于安全位置的移动分支,按存储次序,将查找到的满足可执行条件且执行后全部物料均处于安全位置的移动分支与已经存储的其他移动分支组成调度移动序列,并输出调度移动序列。在输出的调度移动序列中,移动分支被存储的时刻越早,存储次序越靠前,调度移动序列中的顺序可以为存储时间由早到晚的顺序。第二排序方式可以称之为进出优先级排序。在查找不到满足可执行条件的移动分支时,将可行移动集合中的每一个可行移动分别作为一个独立移动分支,构成第二分支集合。对于第一类型的的晶圆清洗设备,可以首先采用第一排序方式进行排序,然后,再采用第二排序方式即进出优先级排序针对第二分支集合进行排序,得到经过排序的第二分支集合。对于第二类型的的晶圆清洗设备,可以直接采用第二排序方式即进出优先级排序针对第二分支集合进行排序,得到经过排序的第二分支集合。
请参考图7,其示出了本申请实施例提供的晶圆清洗设备中的工艺调度装置的结构框图。晶圆清洗设备中的工艺调度装置包括:第一生成单元701,第二生成单元702,排序单元703,访问单元704,第一调度单元705。
第一生成单元701被配置为生成可行移动集合,其中,所述可行移动集合包括当前所述晶圆清洗设备中每一个机械手的所有可行移动;
第二生成单元702被配置为基于所述可行移动集合,生成多个移动分支,构成第一分支集合,其中,所述移动分支包括:多个所述可行移动,所述移动分支中每一个可行移动所属的机械手不同;
排序单元703被配置为采用预设的第一排序方式对所述第一分支集合中的所有移动分支进行排序,得到经过排序的第一分支集合,其中,所述第一排序方式包括:按照与移动分支相关的物料的恢复时间以由小至大的顺序进行排序或按照与移动分支相关的物料的安全驻留时长以由小至大的顺序进行排序;
访问单元704被配置为依次访问所述经过排序的第一分支集合中的每一个分支,查找满足预设的可执行条件的移动分支,所述可执行条件包括:执行移动分支之后所述晶圆清洗设备不处于死锁状态、执行移动分支之后处于危险工艺槽中的物料不处于过泡状态;
第一调度单元705被配置为在查找到满足所述可执行条件的移动分支时,停止访问其他移动分支,判断执行该移动分支后,所述晶圆清洗设备中的全部物料是否均处于安全位置,若否,则存储该移动分支,虚拟执行该移动分支后返回所述生成可行移动集合的步骤,若是,则存储该移动分支,按存储次序将该移动分支和已存储的移动分支组成调度移动序列,并输出所述调度移动序列。
在一些实施例中,晶圆清洗设备中的工艺调度装置还包括:第二调度单元,被配置为在查找不到满足所述可执行条件的移动分支时,将所述可行移动集合中的每一个可行移动分别作为一个独立移动分支,构成第二分支集合;采用所述第一排序方式和/或预设的第二排序方式对所述第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合,其中,所述第二排序方式包括:相关物料离开所述晶圆清洗设备的独立移动分支优先于相关物料进入所述晶圆清洗设备的独立移动分支;依次访问所述经过排序的第二分支集合中的每一个分支,查找满所述足可执行条件独立移动分支;在查找到满足所述可执行条件的独立移动分支时,停止访问其他独立移动分支,判断执行该独立移动分支后,所述晶圆清洗设备中的全部物料是否均处于安全位置,若否,则存储该独立移动分支,虚拟执行该独立移动分支后返回所述生成可行移动集合的步骤,若是,则存储该独立移动分支,按存储次序将该独立移动分支和已存储的移动分支和/或独立移动分支组成调度移动序列,并输出所述调度移动序列。
在一些实施例中,第一生成单元包括:第一集合生成子单元,被配置为从所述可行移动集合中查找出多个所述机械手各自的可行移动子集合,其中,多个所述机械手包括晶片传输机械手、晶片抓取机械手、片盒机械手,一机械手的可行移动子集合包括:所述可行移动集合中的所有属于该机械手的可行移动;对来自不同可行移动子集合的可行移动进行排列组合,生成所述多个移动分支,构成所述第一分支集合,其中,所述移动分支中的每一个可行移动各自属于一个可行移动子集合,每一个可行移动属于的可行移动子集合不同。
在一些实施例中,第一集合生成子单元进一步被配置为判断所述第一分支集合是否包括问题分支,其中,所述问题分支为包括存在冲突的两个可行移动的移动分支;若否,将待插入可行移动集合分别插入到所述第一分支集合中的每一个移动分支中,所述待插入可行移动集合包括:每一个双槽机械手各自的与所述晶片传输机械手的任意一个可行移动不冲突的可行移动;若是,将所述问题分支中存在冲突的两个可行移动分别作为一个独立分支;对于每一个所述独立分支,将所述问题分支中的除了存在冲突的两个可行移动之外的其他可行移动插入到所述独立分支中,得到两个新的移动分支;将所述待插入可行移动集合分别插入所述第一分支集合中的每一个移动分支中。
在一些实施例中,第一生成单元包括:第二集合生成子单元,被配置为从所述可行移动集合中查找出每一个机械手各自的可行移动子集合;对来自不同可行移动子集合的可行移动进行排列组合,生成所述多个移动分支,构成所述第一分支集合,其中,所述移动分支中的每一个可行移动各自属于一个可行移动子集合,每一个可行移动属于的可行移动子集合不同。
在一些实施例中,第二集合生成子单元进一步被配置为判断所述第一分支集合是否包括问题分支,其中,所述问题分支为包括存在冲突的两个可行移动的移动分支;若是,将所述问题分支中存在冲突的两个可行移动分别作为一个独立分支;对于每一个所述独立分支,将所述问题分支中的除了存在冲突的两个可行移动之外的其他可行移动插入到所述独立分支中,得到两个新的移动分支。
在一些实施例中,排序单元包括:第一分支排序单元,被配置为采用所述第二排序方式对所述第二分支集合中的所有独立移动分支进行排序,得到所述经过排序的第二分支集合,其中,所述第二排序方式包括:判断离开所述晶圆清洗设备的物料的恢复时间和与进入所述晶圆清洗设备的物料的恢复时间之间的时间间隔是否大于关联时长,其中,所述关联时长为机械手携带进入所述晶圆清洗设备的物料从当前位置移动至合并工艺槽所需的时长与该机械手从所述合并工艺槽移动至预设终点位置所需的时长之和;若是,将相关物料进入所述晶圆清洗设备的独立移动分支排在相关物料离开所述晶圆清洗设备的独立移动分支之前;若否,将相关物料离开所述晶圆清洗设备的独立移动分支排在相关物料进入所述晶圆清洗设备的独立移动分支之前。
在一些实施例中,第二调度单元进一步被配置为基于所有所述独立移动分支,构成所述第二分支集合;将待插入移动分支作为一个新的独立移动分支插入所述第二分支集合,其中,所述待插入移动分支包括所有双槽机械手的可行移动;删除所述第二分支集合中所有属于所述双槽机械手的独立移动分支。
在一些实施例中,排序单元包括:第二分支排序单元,被配置为采用所述第一排序方式对所述第二分支集合中的所有独立移动分支进行排序;再采用所述第二排序方式对所述第二分支集合中的所有独立移动分支进行排序,得到所述经过排序的第二分支集合,其中,采用所述第二排序方式进行排序包括:判断离开所述晶圆清洗设备的物料的恢复时间和与进入所述晶圆清洗设备的物料的恢复时间之间的时间间隔是否大于关联时长,其中,所述关联时长为机械手携带与进入所述晶圆清洗设备的物料从当前位置移动至合并工艺槽所需的时长与该机械手从所述合并工艺槽移动至预设终点位置所需的时长之和;若是,将相关物料进入所述晶圆清洗设备的独立移动分支排在相关物料离开所述晶圆清洗设备的独立移动分支之前;若否,将相关物料离开所述晶圆清洗设备的独立移动分支排在相关物料进入所述晶圆清洗设备的独立移动分支之前;将待插入移动分支插入到第二分支集合中的除了待插入移动分支之外的每一个其他独立移动分支中。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (10)
1.一种晶圆清洗设备中的工艺调度方法,其特征在于,所述方法包括:
生成可行移动集合,其中,所述可行移动集合包括当前所述晶圆清洗设备中每一个机械手的所有可行移动;
基于所述可行移动集合,生成多个移动分支,构成第一分支集合,其中,所述移动分支包括:多个所述可行移动,所述移动分支中每一个可行移动所属的机械手不同;
采用预设的第一排序方式对所述第一分支集合中的所有移动分支进行排序,得到经过排序的第一分支集合,其中,所述第一排序方式包括:按照与移动分支相关的物料的恢复时间以由小至大的顺序进行排序或按照与移动分支相关的物料的安全驻留时长以由小至大的顺序进行排序;
依次访问所述经过排序的第一分支集合中的每一个分支,查找满足预设的可执行条件的移动分支,所述可执行条件包括:执行移动分支之后所述晶圆清洗设备不处于死锁状态、执行移动分支之后处于危险工艺槽中的物料不处于过泡状态;
在查找到满足所述可执行条件的移动分支时,停止访问其他移动分支,判断执行该移动分支后,所述晶圆清洗设备中的全部物料是否均处于安全位置,若否,则存储该移动分支,虚拟执行该移动分支后返回所述生成可行移动集合的步骤,若是,则存储该移动分支,按存储次序将该移动分支和已存储的移动分支组成调度移动序列,并输出所述调度移动序列。
2.根据权利要求1所述的方法,其特征在于,还包括:
在查找不到满足所述可执行条件的移动分支时,将所述可行移动集合中的每一个可行移动分别作为一个独立移动分支,构成第二分支集合;
采用所述第一排序方式和/或预设的第二排序方式对所述第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合,其中,所述第二排序方式包括:相关物料离开所述晶圆清洗设备的独立移动分支优先于相关物料进入所述晶圆清洗设备的独立移动分支;
依次访问所述经过排序的第二分支集合中的每一个分支,查找满足所述可执行条件独立移动分支;
在查找到满足所述可执行条件的独立移动分支时,停止访问其他独立移动分支,判断执行该独立移动分支后,所述晶圆清洗设备中的全部物料是否均处于安全位置,若否,则存储该独立移动分支,虚拟执行该独立移动分支后返回所述生成可行移动集合的步骤,若是,则存储该独立移动分支,按存储次序将该独立移动分支和已存储的移动分支和/或独立移动分支组成调度移动序列,并输出所述调度移动序列。
3.根据权利要求1所述的方法,其特征在于,所述基于所述可行移动集合,生成多个移动分支,构成第一分支集合,包括:
从所述可行移动集合中查找出多个所述机械手各自的可行移动子集合,其中,多个所述机械手包括晶片传输机械手、晶片抓取机械手、片盒机械手,一机械手的可行移动子集合包括:所述可行移动集合中的所有属于该机械手的可行移动;
对来自不同可行移动子集合的可行移动进行排列组合,生成所述多个移动分支,构成所述第一分支集合,其中,所述移动分支中的每一个可行移动各自属于一个可行移动子集合,每一个可行移动属于的可行移动子集合不同。
4.根据权利要求3所述的方法,其特征在于,所述基于所述可行移动集合,生成多个移动分支,构成第一分支集合,还包括:
判断所述第一分支集合是否包括问题分支,其中,所述问题分支为包括存在冲突的两个可行移动的移动分支;
若否,将待插入可行移动集合分别插入到所述第一分支集合中的每一个移动分支中,所述待插入可行移动集合包括:每一个双槽机械手各自的与所述晶片传输机械手的任意一个可行移动不冲突的可行移动;
若是,将所述问题分支中存在冲突的两个可行移动分别作为一个独立分支;对于每一个所述独立分支,将所述问题分支中的除了存在冲突的两个可行移动之外的其他可行移动插入到所述独立分支中,得到两个新的移动分支;将所述待插入可行移动集合分别插入所述第一分支集合中的每一个移动分支中。
5.根据权利要求1所述的方法,其特征在于,所述基于所述可行移动集合,生成多个移动分支,构成第一分支集合,包括:
从所述可行移动集合中查找出每一个机械手各自的可行移动子集合;
对来自不同可行移动子集合的可行移动进行排列组合,生成所述多个移动分支,构成所述第一分支集合,其中,所述移动分支中的每一个可行移动各自属于一个可行移动子集合,每一个可行移动属于的可行移动子集合不同。
6.根据权利要求5所述的方法,其特征在于,所述基于所述可行移动集合,生成多个移动分支,构成第一分支集合,还包括:
判断所述第一分支集合是否包括问题分支,其中,所述问题分支为包括存在冲突的两个可行移动的移动分支;
若是,将所述问题分支中存在冲突的两个可行移动分别作为一个独立分支;对于每一个所述独立分支,将所述问题分支中的除了存在冲突的两个可行移动之外的其他可行移动插入到所述独立分支中,得到两个新的移动分支。
7.根据权利要求2所述的方法,其特征在于,所述采用所述第一排序方式和/或预设的第二排序方式对所述第二分支集合中的所有独立移动分支进行排序,得到经过排序的第二分支集合,包括:
采用所述第二排序方式对所述第二分支集合中的所有独立移动分支进行排序,得到所述经过排序的第二分支集合,其中,所述第二排序方式包括:
判断离开所述晶圆清洗设备的物料的恢复时间和与进入所述晶圆清洗设备的物料的恢复时间之间的时间间隔是否大于关联时长,其中,所述关联时长为机械手携带进入所述晶圆清洗设备的物料从当前位置移动至合并工艺槽所需的时长与该机械手从所述合并工艺槽移动至预设终点位置所需的时长之和;
若是,将相关物料进入所述晶圆清洗设备的独立移动分支排在相关物料离开所述晶圆清洗设备的独立移动分支之前;
若否,将相关物料离开所述晶圆清洗设备的独立移动分支排在相关物料进入所述晶圆清洗设备的独立移动分支之前。
8.根据权利要求2所述的方法,其特征在于,所述将所述可行移动集合中的每一个可行移动分别作为一个独立移动分支,构成第二分支集合,包括:
基于所有所述独立移动分支,构成所述第二分支集合;
将待插入移动分支作为一个新的独立移动分支插入所述第二分支集合,其中,所述待插入移动分支包括所有双槽机械手的可行移动;
删除所述第二分支集合中所有属于所述双槽机械手的独立移动分支。
9.根据权利要求8所述的方法,其特征在于,所述采用所述第一排序方式和/或预设的第二排序方式对所述第二分支集合中的所有独立移动分支进行排序,得述经过排序的第二分支集合,包括:
采用所述第一排序方式对所述第二分支集合中的所有独立移动分支进行排序;
再采用所述第二排序方式对所述第二分支集合中的所有独立移动分支进行排序,得到所述经过排序的第二分支集合,其中,采用所述第二排序方式进行排序包括:
判断离开所述晶圆清洗设备的物料的恢复时间和与进入所述晶圆清洗设备的物料的恢复时间之间的时间间隔是否大于关联时长,其中,所述关联时长为机械手携带与进入所述晶圆清洗设备的物料从当前位置移动至合并工艺槽所需的时长与该机械手从所述合并工艺槽移动至预设终点位置所需的时长之和;
若是,将相关物料进入所述晶圆清洗设备的独立移动分支排在相关物料离开所述晶圆清洗设备的独立移动分支之前;
若否,将相关物料离开所述晶圆清洗设备的独立移动分支排在相关物料进入所述晶圆清洗设备的独立移动分支之前;
将所述待插入移动分支插入到第二分支集合中的除了所述待插入移动分支之外的每一个其他独立移动分支中。
10.一种晶圆清洗设备中的工艺调度装置,其特征在于,所述装置包括:
第一生成单元,被配置为生成可行移动集合,其中,所述可行移动集合包括当前所述晶圆清洗设备中每一个机械手的所有可行移动;
第二生成单元,被配置为基于所述可行移动集合,生成多个移动分支,构成第一分支集合,其中,所述移动分支包括:多个所述可行移动,所述移动分支中每一个可行移动所属的机械手不同;
排序单元,被配置为采用预设的第一排序方式对所述第一分支集合中的所有移动分支进行排序,得到经过排序的第一分支集合,其中,所述第一排序方式包括:按照与移动分支相关的物料的恢复时间以由小至大的顺序进行排序或按照与移动分支相关的物料的安全驻留时长以由小至大的顺序进行排序;
访问单元,被配置为依次访问所述经过排序的第一分支集合中的每一个分支,查找满足预设的可执行条件的移动分支,所述可执行条件包括:执行移动分支之后所述晶圆清洗设备不处于死锁状态、执行移动分支之后处于危险工艺槽中的物料不处于过泡状态;
调度单元,被配置为在查找到满足所述可执行条件的移动分支时,停止访问其他移动分支,判断执行该移动分支后,所述晶圆清洗设备中的全部物料是否均处于安全位置,若否,则存储该移动分支,虚拟执行该移动分支后返回所述生成可行移动集合的步骤,若是,则存储该移动分支,按存储次序将该移动分支和已存储的移动分支组成调度移动序列,并输出所述调度移动序列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010820643.6A CN111923066B (zh) | 2020-08-14 | 2020-08-14 | 一种晶圆清洗设备中的工艺调度方法、装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010820643.6A CN111923066B (zh) | 2020-08-14 | 2020-08-14 | 一种晶圆清洗设备中的工艺调度方法、装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111923066A true CN111923066A (zh) | 2020-11-13 |
CN111923066B CN111923066B (zh) | 2021-11-12 |
Family
ID=73311929
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010820643.6A Active CN111923066B (zh) | 2020-08-14 | 2020-08-14 | 一种晶圆清洗设备中的工艺调度方法、装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111923066B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113299587A (zh) * | 2021-05-21 | 2021-08-24 | 无锡亚电智能装备有限公司 | 一种晶圆清洗工艺任务排列方法及装置 |
CN115169997A (zh) * | 2022-09-06 | 2022-10-11 | 埃克斯工业(广东)有限公司 | 物料加工进出时机的规划方法、设备及可读存储介质 |
CN117711994A (zh) * | 2024-02-06 | 2024-03-15 | 泓浒(苏州)半导体科技有限公司 | 一种基于链路逻辑图的晶圆单片运输控制方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5801945A (en) * | 1996-06-28 | 1998-09-01 | Lam Research Corporation | Scheduling method for robotic manufacturing processes |
JP2007214551A (ja) * | 1999-06-23 | 2007-08-23 | Asml Us Inc | ウェーハ処理システムにおけるロボットの事前配置 |
CN101459098A (zh) * | 2007-12-14 | 2009-06-17 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 一种晶片优化调度的方法和装置 |
CN101763098B (zh) * | 2009-12-24 | 2012-06-06 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 一种硅片优化调度的方法和装置 |
CN105336652A (zh) * | 2014-06-26 | 2016-02-17 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 硅片传输控制方法及系统 |
CN105810618A (zh) * | 2016-05-31 | 2016-07-27 | 北京七星华创电子股份有限公司 | 提高晶圆传输效率的系统及方法 |
CN111229679A (zh) * | 2020-01-21 | 2020-06-05 | 北京北方华创微电子装备有限公司 | 晶圆清洗设备的控制方法、控制装置及晶圆清洗设备 |
-
2020
- 2020-08-14 CN CN202010820643.6A patent/CN111923066B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5801945A (en) * | 1996-06-28 | 1998-09-01 | Lam Research Corporation | Scheduling method for robotic manufacturing processes |
JP2007214551A (ja) * | 1999-06-23 | 2007-08-23 | Asml Us Inc | ウェーハ処理システムにおけるロボットの事前配置 |
CN101459098A (zh) * | 2007-12-14 | 2009-06-17 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 一种晶片优化调度的方法和装置 |
CN101763098B (zh) * | 2009-12-24 | 2012-06-06 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 一种硅片优化调度的方法和装置 |
CN105336652A (zh) * | 2014-06-26 | 2016-02-17 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 硅片传输控制方法及系统 |
CN105810618A (zh) * | 2016-05-31 | 2016-07-27 | 北京七星华创电子股份有限公司 | 提高晶圆传输效率的系统及方法 |
CN111229679A (zh) * | 2020-01-21 | 2020-06-05 | 北京北方华创微电子装备有限公司 | 晶圆清洗设备的控制方法、控制装置及晶圆清洗设备 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113299587A (zh) * | 2021-05-21 | 2021-08-24 | 无锡亚电智能装备有限公司 | 一种晶圆清洗工艺任务排列方法及装置 |
CN113299587B (zh) * | 2021-05-21 | 2022-04-26 | 无锡亚电智能装备有限公司 | 一种晶圆清洗工艺任务排列方法及装置 |
CN115169997A (zh) * | 2022-09-06 | 2022-10-11 | 埃克斯工业(广东)有限公司 | 物料加工进出时机的规划方法、设备及可读存储介质 |
CN115169997B (zh) * | 2022-09-06 | 2022-12-06 | 埃克斯工业(广东)有限公司 | 物料加工进出时机的规划方法、设备及可读存储介质 |
CN117711994A (zh) * | 2024-02-06 | 2024-03-15 | 泓浒(苏州)半导体科技有限公司 | 一种基于链路逻辑图的晶圆单片运输控制方法及系统 |
CN117711994B (zh) * | 2024-02-06 | 2024-04-19 | 泓浒(苏州)半导体科技有限公司 | 一种基于链路逻辑图的晶圆单片运输控制方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111923066B (zh) | 2021-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111923066B (zh) | 一种晶圆清洗设备中的工艺调度方法、装置 | |
US9748088B2 (en) | Method, storage medium and system for controlling the processing of lots of workpieces | |
US10766139B2 (en) | Method for avoiding collisions between two robots | |
KR101216836B1 (ko) | 진공 처리 장치 및 기록 매체 | |
CN111933517A (zh) | 一种半导体工艺设备中工艺任务的启动方法、装置 | |
CN110554673B (zh) | 智能rgv加工系统调度方法和装置 | |
CN105676815B (zh) | 用于单臂多组合设备的调度和最优缓冲空间构造 | |
CN112198880B (zh) | 一种agv任务分配方法、物流分拣方法及系统 | |
CN114819420B (zh) | 基于冲突消解的天车运输路径规划方法 | |
WO2023124684A1 (zh) | 一种任务调度方法和半导体工艺设备 | |
Shi et al. | Multi-objective automated guided vehicle scheduling based on MapReduce framework. | |
CN112987674A (zh) | 半导体加工设备的物料调度方法和装置 | |
CN112214024B (zh) | 一种agv任务分配方法、物流分拣方法及系统 | |
CN113743747A (zh) | 一种车间环境下的多agv协同调度方法及装置 | |
CN116053175B (zh) | 一种晶圆调度方法、装置及半导体设备 | |
CN116679636A (zh) | 一种物流搬运机器人任务调度系统及方法 | |
Corréa et al. | Dispatching and conflict-free routing of automated guided vehicles: A hybrid approach combining constraint programming and mixed integer programming | |
WO2022068935A1 (zh) | 一种电梯资源调度方法及装置 | |
CN115794506A (zh) | 一种晶片调度方法和一种电子设备 | |
Reddy et al. | Simultaneous scheduling of machines and tools considering tool transfer times in multimachine FMS using CSA | |
US20050096782A1 (en) | Automated sorter system and method thereof | |
Zhang et al. | A disjunctive graph and shifting bottleneck heuristics for multi hoists scheduling problem | |
Zheng et al. | Conflict Model and Time Window Based Multi AGF Path Finding and Coordination | |
Zhang et al. | Dynamic scheduling model of intelligent rail-guided vehicles based on dynamic programming | |
CN117954342A (zh) | 一种半导体工艺设备的晶片调度方法和半导体工艺设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |