半导体加工设备的物料调度方法和装置转让专利
申请号 : CN202110457592.X
文献号 : CN112987674B
文献日 : 2021-09-17
发明人 : 崔琳 , 史思雪 , 刘慕雅
申请人 : 北京北方华创微电子装备有限公司
摘要 :
权利要求 :
1.一种半导体加工设备的物料调度方法,其特征在于,包括以下步骤:S1、建立物料列表,所述物料列表包括多个不同的工艺配方对应的物料组,每个所述物料组包括多个物料,多个所述物料被划分成多个物料分组,每个所述物料分组包括至少一个所述物料;
S2、根据所述工艺配方和所述物料列表建立第一调度任务列表,所述第一调度任务列表包括多个物料调度任务组,所述物料组与所述物料调度任务组一一对应,每个所述物料调度任务组包括多个物料调度任务分组,所述物料分组与所述物料调度任务分组一一对应;每个所述物料调度任务分组包括至少一个物料调度任务;
S3、向求解器输入所述第一调度任务列表,利用所述求解器计算并输出执行所述第一调度任务列表中所有的所述物料调度任务花费时长最短的最优调度结果,并对所述最优调度结果解析获得所有物料的移动序列;
所述步骤S3,包括:
S31、按第一预设规则从所述第一调度任务列表中选取指定数量的所述物料调度任务分组,组成第二调度任务列表;
S32、从所述第一调度任务列表中删除已选取的所述物料调度任务分组;
S33、向所述求解器输入所述第二调度任务列表,利用所述求解器计算并输出所述第二调度任务列表中所有的所述物料调度任务花费时长最短的子最优调度结果,并对所述子最优调度结果解析获得所述第二调度任务列表中所有物料的子移动序列;
S34、将所述子最优调度结果中最早完成的物料调度任务分组对应的结束时间点设定为补料时间点,并从所述子移动序列中筛选出在所述补料时间点以前的部分作为输出序列,且存储该输出序列;
S35、判断所述第一调度任务列表中是否还有所述物料调度任务分组,若有,则执行所述步骤S36;若没有,则执行所述步骤S38;
S36、从所述第二调度任务列表中删除所述最早完成的物料调度任务分组;
S37、按第二预设规则,重新选取一所述物料调度任务分组,并将重新选取的所述物料调度任务分组插入所述第二调度任务列表,然后返回所述步骤S32;
S38、将当前的所述子移动序列和之前存储所有的所述输出序列拼接成所述移动序列。
2.根据权利要求1所述的物料调度方法,其特征在于,所述第一预设规则包括:从各个所述物料调度任务组中选取数量相同的所述物料调度任务分组;
其中,从各个所述物料调度任务组中选取的所述物料调度任务分组的数量等于所述指定数量与所述工艺配方的数量的比值。
3.根据权利要求2所述的物料调度方法,其特征在于,所述第二预设规则包括:从所述第一调度任务列表中所述最早完成的物料调度任务分组对应的物料调度任务组中选取一物料调度任务分组,将该物料调度任务分组插入在所述第二调度任务列表中与所述最早完成的物料调度任务分组属于同一物料调度任务组的物料调度任务分组的最后;
若所述第一调度任务列表中所述最早完成的物料调度任务分组对应的物料调度任务组中已没有物料调度任务分组,则从所述第二物料列表中其他物料调度任务分组对应的物料调度任务组中选取一物料调度任务分组,将该物料调度任务分组插入在所述第二物料列表中与之属于同一物料调度任务组的物料调度任务分组的最后。
4.根据权利要求1所述的物料调度方法,其特征在于,每个所述物料调度任务分组中的多个所述物料调度任务包括加工物料的加工任务和传输物料的传输任务;
在所述步骤S34中,在所述子最优调度结果中,对于所述最早完成的物料调度任务分组,在其结束时间点,若其他的物料调度任务分组中有未完成的所述传输任务,则将完成所有的所述传输任务的结束时间点设定为所述补料时间点;
若其他的物料调度任务分组中没有未完成的所述传输任务,则将所述最早完成的物料调度任务分组的结束时间点设定为所述补料时间点。
5.根据权利要求1所述的物料调度方法,其特征在于,所述物料调度方法还包括:累计各个工艺腔室执行同一物料调度任务组中各所述物料调度任务分组中为加工任务的物料调度任务的次数;
判断各个所述工艺腔室的所述次数是否达到该物料调度任务组对应的工艺配方中预设的最大次数;
若达到,则在该物料调度任务组中的对应位置处插入为腔室清洗任务的物料调度任务。
6.根据权利要求1所述的物料调度方法,其特征在于,所述物料调度任务分组中的多个所述物料调度任务包括加工物料的加工任务和传输物料的传输任务;
在所述步骤S3中,所述求解器计算所述最优调度结果所述采用的数学模型的约束条件包括:
每个所述加工任务的结束时间点等于该加工任务的开始时间点、物料加工时长和物料在工艺腔室中的驻留时长之和;
对于每个所述物料调度任务组中任意相邻的两个所述物料调度任务分组,排列在后面的所述物料调度任务分组的开始时间点即为排列在前面的所述物料调度任务分组的结束时间点;
每个所述工艺腔室在同一时间段内只能执行一个所述加工任务;
若每个所述物料调度任务分组中的多个所述加工任务对应的工艺腔室之间是并列执行的关系,则每个所述加工任务对应一个所述工艺腔室;
所述传输任务包括物料的取出任务和放入任务,同一所述物料调度任务分组的所述取出任务和所述放入任务由同一机械手执行;
对于同一工艺腔室,每个物料的所述放入任务的开始时间点晚于上一个所述物料的所述取出任务的结束时间点;
在同一时间段内,用于传输物料的传输装置中只有一个手臂在执行所述取出任务或所述放入任务。
7.根据权利要求1所述的物料调度方法,所述步骤S1,包括:S11,将多个物料按不同的片盒进行分配;
S12,将同一所述片盒中的物料按不同的所述工艺配方划分成多个所述物料组;
S13,将同一所述物料组中的多个所述物料按预设原则划分成多个所述物料分组。
8.根据权利要求7所述的物料调度方法,所述预设原则包括:根据各个工艺腔室之间是并行关系还是串行关系,以及各个工艺腔室是否开启禁用功能,将同一所述物料组中的多个所述物料划分成多个所述物料分组;
其中,所述并行关系是指多个工艺腔室同时进行加工;所述串行关系是指多个工艺腔室按指定顺序依次进行加工;所述禁用功能是指在一时间段内禁用所述工艺腔室中的至少一个工艺位。
9.一种半导体加工设备的物料调度装置,其特征在于,包括:物料列表模块,用于建立物料列表,所述物料列表包括多个不同的工艺配方对应的物料组,每个所述物料组包括多个物料,多个所述物料被划分成多个物料分组,每个所述物料分组包括至少一个所述物料;
调度列表模块,用于根据所述工艺配方和所述物料列表建立并输出第一调度任务列表,所述第一调度任务列表包括多个物料调度任务组,所述物料组与所述物料调度任务组一一对应,每个所述物料调度任务组包括多个物料调度任务分组,所述物料分组与所述物料调度任务分组一一对应;每个所述物料调度任务分组包括至少一个物料调度任务;以及求解器,用于接收所述第一调度任务列表,计算并输出执行所述第一调度任务列表中所有的所述物料调度任务花费时长最短的最优调度结果,并对所述最优调度结果解析获得所有物料的移动序列;
所述调度列表模块还用于:按第一预设规则从所述第一调度任务列表中选取指定数量的所述物料调度任务分组,组成第二调度任务列表;从所述第一调度任务列表中删除已选取的所述物料调度任务分组;
所述求解器还用于接收所述第二调度任务列表,计算并输出所述第二调度任务列表中所有的所述物料调度任务花费时长最短的子最优调度结果,并对所述子最优调度结果解析获得所述第二调度任务列表中所有物料的子移动序列;
所述调度列表模块还用于:将所述子最优调度结果中最早完成的物料调度任务分组对应的结束时间点设定为补料时间点,并从所述子移动序列中筛选出在所述补料时间点以前的部分作为输出序列,且存储该输出序列;判断所述第一调度任务列表中是否还有所述物料调度任务分组,若有,则从所述第二调度任务列表中删除所述最早完成的物料调度任务分组;按第二预设规则,重新选取一所述物料调度任务分组,并将重新选取的所述物料调度任务分组插入所述第二调度任务列表,然后返回所述从所述第一调度任务列表中删除已选取的所述物料调度任务分组的步骤;若没有,则将当前的所述子移动序列和之前存储所有的所述输出序列拼接成所述移动序列。
说明书 :
半导体加工设备的物料调度方法和装置
技术领域
背景技术
在同一时间内会存在多个物料同时调度的需求。
用搜索树的方式将物料可能的所有移动顺序穷举一遍,并从搜索结果中选择时间最短的分
支作为物料的移动顺序。但是,由于全局搜索会耗费大量时间,导致无法实时得到最优调度
结果。
然后根据评价结果选择最优的路径作为物料的移动顺序。但是,由于该方法不是全局搜索,
只能得到局部最优调度结果,无法保证是全局最优调度结果,在某些情况下可能会造成资
源浪费,降低了设备产能。
发明内容
而可以实现实时得到最优调度结果。
少一个所述物料;
物料调度任务组包括多个物料调度任务分组,所述物料分组与所述物料调度任务分组一一
对应;每个所述物料调度任务分组包括至少一个物料调度任务;
优调度结果解析获得所有物料的移动序列。
子最优调度结果解析获得所述第二调度任务列表中所有物料的子移动序列;
序列,且存储该输出序列;
中与所述最早完成的物料调度任务分组属于同一物料调度任务组的物料调度任务分组的
最后;
的物料调度任务组中选取一物料调度任务分组,将该物料调度任务分组插入在所述第二物
料列表中与之属于同一物料调度任务组的物料调度任务分组的最后。
所有的所述传输任务的结束时间点设定为所述补料时间点;
结束时间点;
至少一个工艺位。
物料分组包括至少一个所述物料;
组一一对应,每个所述物料调度任务组包括多个物料调度任务分组,所述物料分组与所述
物料调度任务分组一一对应;每个所述物料调度任务分组包括至少一个物料调度任务;以
及
获得所有物料的移动序列。
个物料被划分成多个物料分组,每个物料分组包括至少一个物料;S2、根据工艺配方和物料
列表建立第一调度任务列表,该第一调度任务列表包括多个物料调度任务组,物料组与物
料调度任务组一一对应,每个物料调度任务组包括多个物料调度任务,物料分组与物料调
度任务一一对应;S3、向求解器输入第一调度任务列表,利用该求解器计算并输出执行第一
调度任务列表中所有的物料调度任务花费时长最短的最优调度结果,并对最优调度结果解
析获得所有物料的移动序列。本发明实施例采用的上述物料调度方法基于上述求解器计算
最优调度结果,这与基于搜索树的枚举方法相比,不仅可以得到全局最优调度结果,而且由
于求解器只需输入相关参数就可以直接得到输出结果,省去了大量中间过程,从而可以提
高计算速度,进而可以实现实时得到最优调度结果。
附图说明
具体实施方式
括传输腔室1、三个工艺腔室(21,22,23)、装卸载腔室(Load Lock)3、过渡腔室4和三个装卸
载位(51,52,53)。
间段内禁用其中一个工艺位,而另一个工艺位单独进行工艺加工,这种禁用方式称为ST禁
用。在实际应用中,可以同时进行加工的多个工艺腔室之间的关系称为并行关系,此种情况
下,物料可以进入任意一个工艺腔室进行加工;按指定顺序依次加工的多个工艺腔室之间
的关系称为串行关系,此种情况下,物料需要按指定路径以上述指定顺序依次进入多个工
艺腔室进行加工。
个取片位,共四个取片位。其中,Dirty手用于抓取未工艺的物料,Clean手用于抓取已工艺
的物料。
校准位能够放置一个物料。冷却位(Buffer Station)用于在工艺腔室中的物料完成工艺之
后,且在返回装卸载位之前,对该物料进行冷却。
时间内会存在对多个物料同时调度的需求,在此前提下,需要实现物料调度的最优化,以能
够合理利用半导体加工设备中的各个部件,以达到单位时间内加工较多的物料的目的。
一个工艺位,即,ST禁用。
不存在ST禁用的情况,则分配至该工艺腔室中进行加工的物料数量为2个。
工艺腔室(21,22,23)可以同时进行加工,此时每个物料分组中的物料可以进入任意一个工
艺腔室进行加工,在这种情况下,假设每个物料组中有10个物料(编号为1‑10),10个物料可
以平均分配为6个物料分组,分别为(1,2,PM21)(3,4,PM22)(5,PM23)(6,7,PM21)(8,9,
PM22)(10,PM23),其中,PM为工艺腔室。在进行工艺加工时,首先,编号为1和2的两个物料、
编号为3和4的两个物料、编号为5的一个物料分别进入三个工艺腔室(21,22,23)同时进行
加工;待加工完成之后,编号为6和7的两个物料、编号为8和9的两个物料、编号为10的一个
物料分别进入三个工艺腔室(21,22,23)同时进行加工。
为1‑6),6个物料平均分配为3个物料分组,分别为(1,2,PM21‑PM22)(3,4,PM21‑PM22)(5,6,
PM21‑PM22)。在进行工艺加工时,首先,编号为1和2的两个物料先进入工艺腔室21进行加
工,后进入工艺腔室22进行加工;待加工完成之后,编号为3和4的两个物料先进入工艺腔室
21进行加工,后进入工艺腔室22进行加工;待加工完成之后,编号为5和6的两个物料先进入
工艺腔室21进行加工,后进入工艺腔室22进行加工。
个物料平均分配为3个物料分组,分别为(1,2,PM21)(3,4,PM21)(5,6,PM21)。在进行工艺加
工时,首先,编号为1和2的两个物料进入工艺腔室21进行加工;待加工完成之后,编号为3和
4的两个物料进入工艺腔室21进行加工;待加工完成之后,编号为5和6的两个物料进入工艺
腔室21进行加工。
度任务分组一一对应;每个物料调度任务分组包括至少一个物料调度任务。
(machine)和加工时长(包括开始时间点和结束时间点)等的信息。
称为task,这些task包含同一物料分组中的物料依次使用某几个部件(machine)以及在各
个部件上的加工时长(包括开始时间点和结束时间点)等的信息。由此可知,每个PJob中有
多个ScheduleJob,每个ScheduleJob中有至少一个task。
ID=1,2,...,N;同一CJob 中的M个物料的物料组编号为PJob ID,其中,ID=1,2,...,M;同一
PJob 中的R个物料的物料分组编号为ScheduleJob ID,其中,ID=1,2,...,R;需要说明的
是,每个物料具有一个CJob ID和一个PJob ID,且同一PJob ID的物料来自同一个CJob ID,
且recipe相同。
最优调度结果包含所有物料在指定时间依次经过指定machine进行加工的所有调度方案。
(task)所包含的部件(machine)以及在各个部件上的加工时长(包括开始时间点和结束时
间点)等的信息的存储结构转化为求解器中各个物料调度任务(task)的输入格式,格式转
换之后,每个task中包含machine ID,duration(加工时长)等信息,且以task为调度单位。
该输入格式例如为Json格式,转化方式例如采用相应json库的转化函数进行转化。
参数就可以直接得到输出结果,省去了大量中间过程,从而可以提高计算速度,进而可以实
现实时得到最优调度结果。
况下,可以使用禁手功能,即,只有一个机械手臂工作。
间是一套传输动作(包括取片、旋转、放片)所花费时间的两倍。若传输腔室1中设置有真空
机械手(VTR)使用禁手功能,则只有Clean手工作,由于该Clean手具有两个取片位,只需要
传递一次,每次传递两个物料,由此,真空机械手的传输时间即为一套传输动作(包括取片、
旋转、放片)所花费时间。基于上述情况,可以根据机械手是否使用禁手功能,以相应的参数
格式(例如,task的加工时长(duaration)参数)输入至求解器中。
输出的最优调度结果所包含的所有task的初始时间点和结束时间点解析成移动序列(又称
move列表)。由于移动序列中的物料移动动作分为取片移动(pick move)、放片移动(place
move)和工艺加工(process move)移动等等,不同的物料移动动作,与诸如物料、机械手和
部件(machine)等的相关参数也不同,这些相关参数均属于上述接口规则。
务分组的实际数量,例如,在实际应用中,上述第一调度任务列表所包含的物料调度任务分
组的实际数量约为40个,而求解器的计算速度无法在较短的时间内完成这些物料调度任务
分组的计算,从而无法实现实时得到最优调度结果。
以缩短完成所有物料调度任务分组计算所花费的总时间,进而实现实时得到最优调度结
果。
个工艺腔室只能被一个物料调度任务组(PJob)占用。基于此,可选的,上述第一预设规则包
括:从各个物料调度任务组(PJob)中选取数量相同的物料调度任务分组(ScheduleJob),其
中,假设工艺配方(recipe)的数量为N,从各个工艺配方(recipe)对应的物料调度任务组
(PJob)中选取的物料调度任务分组(ScheduleJob)的数量等于上述指定数量(MaxJobNum)
与工艺配方(recipe)的数量N的比值,即,等于MaxJobNum/N。需要说明的是,在从各个工艺
配方(recipe)对应的物料调度任务组(PJob)中选取时,若某一工艺配方(recipe)对应的物
料调度任务组(PJob)中的物料调度任务分组(ScheduleJob)的当前数量少于需要选取的数
量(即,MaxJobNum/N),则选取当前数量的物料调度任务分组(ScheduleJob),即,将该物料
调度任务组(PJob)中的物料调度任务分组全部选取。
列表中所有物料的子移动序列;
序列中筛选出在该补料时间点以前的部分作为输出序列,且存储该输出序列;
产能最大化,不能等待上一轮次的MaxJobNum个schedulejob全部执行完毕之后才“补料”,
即,补入新的MaxJobNum个schedulejob,这就需要选择一个最佳的补料时间点及时进行“补
料”,基于此,在上述子最优调度结果中,选择一个合适的物料调度任务分组,将完成该物料
调度任务分组对应的结束时间点作为上述补料时间点。
料时间点以前的所有的物料移动动作的一部分序列。
二调度任务列表继续进行计算,以获得新的输出序列,新的输出序列与上一轮次的输出序
列可以以该补料时间点作为分界线拼接在一起,这样,所有轮次的输出序列可以组成一个
连续的序列,即为所有物料的移动序列。
输任务,也就是说,有的物料调度任务是加工任务,有的物料调度任务是传输任务。在这种
情况下,在上述步骤S34中,在子最优调度结果中,对于最早完成的物料调度任务分组
(ScheduleJob),在其结束时间点,若其他的物料调度任务分组中有未完成的传输任务,则
将完成所有的传输任务的结束时间点设定为上述补料时间点。也就是说,若有一个
ScheduleJob最早完成全部的task,且其他的ScheduleJob中的所有传输任务执行完毕,则
将该个ScheduleJob的结束时间点,设定为补料时间点。
列表,以获得新的输出序列。
第二调度任务列表中与上述最早完成的物料调度任务分组属于同一物料调度任务组的物
料调度任务分组的最后。
的物料调度任务组中选取一物料调度任务分组,将该物料调度任务分组插入在上述第二物
料列表中与之属于同一物料调度任务组的物料调度任务分组的最后。
任务中是加工任务的累计次数。
点;
物料列表包括多个不同的工艺配方对应的物料组,每个物料组包括多个物料,多个物料被
划分成多个物料分组,每个物料分组包括至少一个物料;调度列表模块62用于根据工艺配
方和物料列表建立并输出第一调度任务列表,该第一调度任务列表包括多个物料调度任务
组,该物料组与物料调度任务组一一对应,每个物料调度任务组包括多个物料调度任务分
组,物料分组与该物料调度任务分组一一对应;每个物料调度任务分组包括至少一个物料
调度任务;求解器63用于接收上述第一调度任务列表,计算并输出执行上述第一调度任务
列表中所有的物料调度任务花费时长最短的最优调度结果,并对该最优调度结果解析获得
所有物料的移动序列。
以得到全局最优调度结果,而且由于求解器只需输入相关参数就可以直接得到输出结果,
省去了大量中间过程,从而可以提高计算速度,进而可以实现实时得到最优调度结果。
神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。