一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

多腔体等离子体反应设备的调度方法、计算设备及介质与流程

2021-10-09 13:48:00 来源:中国专利 TAG:等离子体 设备 调度 介质 半导体


1.本发明涉及半导体领域,特别涉及一种多腔体等离子体反应设备的调度方法、计算设备及介质。


背景技术:

2.多腔体等离子体反应设备包含传输室和设置在传输室周围的多个等离子体反应腔(chamber)、多个缓冲腔体(buffer)。在传输室内通常设有多个机械人(robot)。所述缓冲腔体用于临时存放晶圆,而不对晶圆进行工艺处理。
3.图1所示的多腔体等离子体反应设备包含4个反应腔(chamber1~chamber4),2个缓冲腔体(buffer1、buffer2)以及2个机器人(robot1和robot2)。缓冲腔体可以是如图2所示的晶圆盒。晶圆盒具有中空结构,晶圆盒内自上而下间隔布置有多个承载条(slot),相同高度的多个承载条用于承载晶圆。buffer1中放置待加工的晶圆,buffer2中放置已经加工完成的晶圆。
4.半导体产品的生产制造过程需要经过很多工艺步骤,每个工艺步骤都是在多腔体等离子体反应设备相应的等离子体反应腔内完成的。晶圆制程中,机械臂首先将晶圆从buffer1中取出放入对应的反应腔,当晶圆在一个反应腔的工艺步骤完成后,机械臂会将该晶圆从当前的反应腔送入下一工艺的反应腔中。并于工艺反应结束后将晶圆传回至buffer2中。
5.现有技术中,晶圆的处理路径固定,即使存在多个空闲的反应腔能够进行相同的工艺,该些腔体仍无法被自由调度。如图1所示,机器人1仅能够负责在chamber1,chamber3之间传输晶圆。机器人2仅能够负责在chamber2,chamber4之间传输晶圆。而chamber1与chamber2所进行的工艺相同,chamber3与chamber4所进行的工艺相同。机器人1夹取的晶圆只能在chamber1,chamber3内完成,而此时chamber2,chamber4处于空闲状态,导致反应腔闲置、产能降低。


技术实现要素:

6.本发明的目的是提供一种多腔体等离子体反应设备的调度方法、计算设备及介质,能够根据晶圆制作中的流程数量、操作数量、反应腔数量为各反应腔依序分配对应的操作,不仅减少了晶圆排队时间,且使每个反应腔的处理时间尽可能均衡,通过本发明大大提高晶圆生产效率。
7.为了达到上述目的,本发明提供一种多腔体等离子体反应设备的调度方法,每个晶圆在多腔体等离子体反应设备中要依序进行n个流程,该n个流程记为j1~j
n
,其中流程j
s
包含j
s
个操作,s∈[1,n],该j
s
个操作分别记为分别对应操作时长所述多腔体等离子体反应设备包含m个反应腔,任一所述反应腔中能够进行所述n个流程的各个操作,所述方法包含步骤:
[0008]
f1、令|fyq|表示待分配操作的反应腔个数,|fyq|的初值为m;令|cz|表示待分配的操作个数,|cz|的初值为n

=j1

j
n
;初始化计数变量ji2=1;
[0009]
建立时间分配集合a={a1,

,a
|cz|
},其中a
i
=c

i
,i∈[1,|cz|];建立操作集合cz={b1,

,b
|cz|
},其中b
i
=j

i
,i∈[1,|cz|];集合a、集合cz均为有序集合;
[0010]
f2、定义变量low、high,low表示预设的反应腔时长的下限;high表示预设的反应腔时长的上限;为low、high赋初值,满足low<high;进入步骤f3;
[0011]
f3、若low<high,定义变量mid∈[low,high],mid为估计的反应腔时长上限值的最小值;
[0012]
判断mid是否合理,若合理,更新high=mid;否则,更新low=mid 1;
[0013]
再次比较更新后的low和high;若low<high,重复步骤f3;若low≥high,进入f4;
[0014]
f4、从集合a中筛选元素a1,

,a
p
;其中p为从a中筛选出的元素个数,a1,

,a
p
∈a,且满足a1

a
p
=low;将对应的操作j
′1,

,j

p
分配至第ji2反应腔;更新|fyq|=|fyq|

1,更新|cz|=|cz|

p,更新ji2=ji2 1;
[0015]
若|fyq|=0,结束;
[0016]
若|fyq|>0,删除集合a中被筛选出的元素以更新集合a,删除集合cz中被分配的操作以更新集合cz,进入步骤f2。
[0017]
可选的,步骤f2中low、high的初值分别为:
[0018]
low=max(a1,

,a
|lc|
),high=∑a1,

,a
|lc|

[0019]
可选的,步骤f3中判断mid是否合理包含:
[0020]
将集合a={a1,

,a
|cz|
}依序划分为若干个子集合,a1,

,a
u
,u表示划分的子集合总数;a
r
包含i
r
个元素其中划分的规则为:
[0021][0022]
若满足u≤|fyq|,则说明mid合理;否则mid不合理。
[0023]
可选的,步骤f3中mid=(high low)/2。
[0024]
可选的,步骤f4中:
[0025]
更新集合a包含步骤:令a
i
=a
i p
,i∈[1,|cz|

p];删除集合a中的a
|cz|

p 1


,a
|cz|

[0026]
更新集合cz包含步骤:令b
i
=b
i p
,i∈[1,|cz|

p];删除集合cz中的b
|cz|

p 1


,b
|cz|

[0027]
本发明还提供一种计算设备,包括:至少一个处理器;以及至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理器并且存储用于由所述至少一个处理器执行的指令,所述指令当由所述至少一个处理器执行时,使得所述计算设备执行根据本发明所述的方法的步骤。
[0028]
本发明还提供一种计算机可读存储介质,其上存储有计算机程序代码,所述计算机程序代码在被运行时执行如本发明所述的方法。
[0029]
与现有技术相比,本发明的有益效果在于:
[0030]
本发明的多腔体等立体字体设备的调度方法能够根据晶圆制作中的流程数量、操
作数量、反应腔数量为反应腔依序分配对应的流程,不仅减少了晶圆排队时间,且使每个反应腔的处理时间尽可能均衡,避免了下一操作的反应腔被占用而出现调度“死锁”,通过本发明能够大大提高晶圆生产效率;
[0031]
本发明的调度算法流程简单,计算量少,调度效率高。
附图说明
[0032]
为了更清楚地说明本发明技术方案,下面将对描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图:
[0033]
图1为现有技术中多腔体等离子体反应设备示意图;
[0034]
图2为晶圆盒内部结构示意图;
[0035]
图3为本发明的多腔体等离子体反应设备依序处理多个晶圆示意图;
[0036]
图4为本发明的多腔体等离子反应设备的调度方法流程图。
具体实施方式
[0037]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0038]
实施例一
[0039]
本发明的多腔体等离子体反应设备包含m个反应腔和2个缓冲腔(buffer1、buffer2)。所述m个反应腔分别为第一反应腔m1至第m反应腔m
m
。buffer1中放有待处理的多个晶圆。机械臂首先将晶圆从buffer1中取出(每次取出一个)放入对应的反应腔,当晶圆在一个反应腔的工艺步骤完成后,机械臂会将该晶圆从当前的反应腔送入下一工艺的反应腔中。并于工艺反应结束后将晶圆传回至buffer2中。每个晶圆在多腔体等离子体反应设备中要依序进行n个流程,每个流程各包含一个操作。该n个流程记为j1~j
n
。流程j
i
对应的流程时长为c
i
,i∈[1,n]。每个流程可以在所述m个反应腔的任一个反应腔中执行,且每个流程的执行时间不因反应腔的不同而变化。
[0040]
通过多腔体等离子体反应设备处理多个待加工的晶圆时,晶圆在当前腔体处理完成后被送入下一个流程对应的腔体。一旦所述下一流程对应的腔体没有处于空闲状态,则晶圆必须等待。如图3所示,理想状态下,我们希望除了在最初一个/多个晶圆以及最后一个/多个晶圆的处理时间内,多腔体等离子体反应腔的多个腔室在同时工作,且晶圆在腔体之间传递时的等待时间尽可能少。本发明调度方法的目的是,将该n个流程依序分配至m个反应腔(不同的反应腔分配的流程个数可能会不同),使得晶圆完成该n个流程的耗时最短。每个反应腔内所有流程的流程时长之和为该反应腔的反应腔时长。
[0041]
所述将该n个流程依序分配至m个反应腔具体是指:
[0042]
当i,k∈[1,n]且i<k,若流程j
i
、j
k
分别被分配至反应腔m
i

、m
k

,则i

≤k

且i

,k

∈[1,n]。在本发明的实施例中,多腔体等离子体反应腔包含2个反应腔m1和m2,每个晶圆需要进行3个流程j1~j3,j1~j3在m1、m2中均能进行。流程j1~j3只可能有以下两种分配方案:
[0043]
方案一)把流程j1分配至反应腔m1,流程j2、j3分配至反应腔m2;
[0044]
方案二)把流程j1、j2分配至反应腔m1,流程j3分配至反应腔m2;
[0045]
而不会出现将流程j2分配m1,流程j1、j3分配至m2。
[0046]
第i反应腔m
i
被分配i

个流程,该i

个流程的流程时长总和记为反应腔时长t
i
(与m
i
对应的所有流程的时长总和),其中i∈[1,m],i

∈[1,n]。令t
j
=max{t1,

,t
m
}为最大反应腔时长(也称为反应腔时长的上限值),j∈[1,m]。
[0047]
本发明调度方法的目的是使得所有待处理晶圆完成n个流程的耗时最短,显然要避免或尽量减少空闲的反应腔,且使每个反应腔所占用的反应腔时长尽可能平均。由于流程的时长不同,每个反应腔占用的时长不同,因此,本发明等效解决以下问题:将n个流程依序分配至m个反应腔,并满足所述最大反应腔时长最小化(也即t
j
=max{t1,

,t
m
}尽可能小)。理想状态下,多腔体等离子体反应腔的多个腔室在同时工作,在第i反应腔m
i
对某个晶圆进行对应的流程同时,第j反应腔m
j
也对另一个晶圆进行对应的流程,i,j∈[1,m];i≠j。本发明不仅减少了晶圆排队时间,且使每个反应腔的处理时间尽可能均衡,避免了下一流程的反应腔均被占用而出现调度“死锁”。
[0048]
如图1所示,本发明提供一种多腔体等离子反应设备的调度方法,每个晶圆在所述多腔体等离子体反应设备中需要进行流程j1~流程j
n
共n个流程,所述方法包括步骤:
[0049]
s1、本发明的多腔体等离子体反应设备包含m个反应腔,分别为第一反应腔m1至第m反应腔m
m
,令|fyq|表示待分配流程的反应腔个数,|fyq|的初值为m;令|lc|表示待分配的流程个数,|lc|的初值为n;流程j
i
对应的流程时长为c
i
,i∈[1,n];建立反应腔集合fyq={m1,

,m
m
};建立时间分配集合a={a1,

,a
|lc|
},其中a
i
=c
i
,i∈[1,n]。需要强调的是时间分配集合a中的元素是有序的。建立流程集合lc={b1,

,b
n
},其中b
i
=j
i
,i∈[1,n]。ji1、ji2为自然数,作为计数变量;初始化变量ji1=1,ji2=1;
[0050]
s2、定义变量low、high;low表示预设的反应腔时长的下限;high表示预设的反应腔时长的上限;初始化变量low=0;high=0;
[0051]
s3、更新low=max(low,a
ji1
);high=high a
ji1
;a
ji1
∈a;
[0052]
更新ji1=ji1 1,若ji1≤|lc|,重复步骤s3;若ji1=|lc| 1,进入步骤s4;
[0053]
s4、若low<high,定义变量mid=(high low)/2;mid为估计的反应腔时长上限值的最小值;
[0054]
判断mid是否合理,若合理,更新high=mid;否则,更新low=mid 1;
[0055]
步骤s4中所述判断mid是否合理包含:
[0056]
将集合依序划分为若干个子集合,a1,

,a
u
,u表示划分的子集合总数。a
r
包含i
r
个元素r∈[1,u],其中划分的规则为:
[0057]
若满足u≤|fyq|,则说明mid合理。mid虽然合理,但还不一定是最优值,因此我们会通过降低调整反应腔时长的上限high的值,来降低mid。当mid不合理,通过使low=mid 1提高反应腔时长下限,进一步提高下一轮的mid值;
[0058]
再次比较更新后的low和high;若low<high,重复步骤s4;若low≥high,此时的low作为本轮反应腔时长上限值的最小值;进入s5;
[0059]
s5、从集合a中筛选元素a1,

,a
p
;其中p为从a中筛选出的元素个数,a1,

,a
p
∈a,且满足a1

a
p
=low;将对应的流程j1,

,j
p
分配至第ji2反应腔;更新|fyq|=|fyq|

1,更新|lc|=|lc|

r(由于已经将r个流程分配至一个反应腔,因此待分配流程的反应腔数量减1,待分配的流程数减r);
[0060]
若|fyq|>0(说明还没有给所有的反应腔分配流程),更新集合a、集合lc,进入步骤s2;
[0061]
其中:
[0062]
更新集合a具体包含步骤:令a
i
=a
i p
,i∈[1,|lc|

p];并删除a中的a
|lc|

p 1


,a
|lc|

[0063]
更新集合lc包含步骤:令b
i
=b
i p
,i∈[1,|lc|

p];并删除lc中的b
|lc|

p 1


,b
|lc|

[0064]
若|fyq|=0,结束。
[0065]
举例说明,假设集合a中包含五个流程的耗时,a={7,2,5,10,8},多腔体等离子体反应设备包含两个反应腔,因此需要将该五个流程依序分配到该两个反应腔中执行。
[0066]
step1:
[0067]
low=10(集合a中的最大值),high=32(集合a中五个流程耗时之和),mid=21(也即(10 32)/2);(步骤s1~s3)
[0068]
分割集合a为若干个子集合,且每个集合所有流程耗时总长只能尽可能接近21且不能超过21,分割集合a为{7,2,5}{10,8};集合a被分割为两个子集合,未超过待分配的反应腔总数,返回true,此时mid不是最优解,更新high=mid=21,进入step2(重复步骤s4);
[0069]
step2:
[0070]
low=10,high=21,mid=15;
[0071]
分割集合a为若干个子集合,且每个集合所有流程耗时总长只能尽可能接近15且不能超过15,因此将集合a分割为{7,2,5}{10}{8};分割后的子集合数量超过待分配的反应腔总数,返回false,说明mid设定得太小,更新low=mid 1=16;进入step3(重复步骤s4)
[0072]
step3:
[0073]
low=16,high=21,mid=18;
[0074]
分割集合a为若干个子集合,且每个集合所有流程耗时总长只能尽可能接近18且不能超过18,分割集合a为{7,2,5}{10,8};分割后的子集合数量未超过待分配的反应腔总数,返回true;此时mid仍不是最优解,更新high=mid=18,进入step4(重复步骤s4)
[0075]
step4:
[0076]
low=16,high=18,mid=17;
[0077]
分割集合a为若干个子集合,且每个集合所有流程耗时总长只能尽可能接近17且不能超过17,分割集合a为{7,2,5}{10}{8};分割后的子集合数量超过待分配的反应腔总数,返回false,说明mid设定得太小,更新low=mid 1=18;进入step5(重复步骤s4)
[0078]
step5
[0079]
low=18,high=18,mid=18;low>=high;18为最优划分值(两个反应腔中具有较
大反应腔时长的反应腔所能达到的最低时长),集合a的最优分割集合为{7,2,5}{10,8},因此将前三个流程分配至两个反应腔中的第一个反应腔,后两个流程分配至两个反应腔中的第二个反应腔(步骤s5)。
[0080]
实施例二
[0081]
在本实施例中,每个晶圆在多腔体等离子体反应设备中要依序进行n个流程,该n个流程记为j1~j
n
。其中流程j
s
(s∈[1,n])包含j
s
(j
s
为自然数)个操作,该j
s
个操作分别记为分别对应操作时长在本实施例中,多腔体等离子体反应设备的任一反应腔中能够进行所述n个流程的各个操作。
[0082]
本发明调度方法的目的是,将该n

=j1

j
n
个操作依序分配至m个反应腔(不同的反应腔分配的操作个数可能会不同),使得所述多个晶圆完成该n

个操作的耗时最短。
[0083]
所述将该n

个操作依序分配至m个反应腔具体是指:
[0084]
当i,k∈[1,n

]且i<k,若操作j

i
、j

k
分别被分配至反应腔m
i

、m
k

,则i

≤k

,i

,k

∈[1,n

]。
[0085]
本实施例中,将操作集合cz分配至m个反应腔。所述多腔体等离子体反应设备的调度方法,如图4所示,包含步骤:
[0086]
f1、令|fyq|表示待分配操作的反应腔个数,|fyq|的初值为m;令|cz|表示待分配的操作个数,|cz|的初值为n

;ji1、ji2为自然数,作为计数变量;初始化变量ji1=1,ji2=1;
[0087]
建立时间分配集合a={a1,

,a
|cz|
},其中a
i
=c

i
,i∈[1,|cz|]。需要强调的是时间分配集合a中的元素是有序的。建立操作集合cz={b1,

,b
|cz|
},其中b
i
=j

i
,i∈[1,|cz|];
[0088]
f2、定义变量low、high;low表示预设的反应腔时长的下限;high表示预设的反应腔时长的上限;初始化变量low=0;high=0;
[0089]
f3、更新low=max(low,a
ji1
);high=high a
ji1

[0090]
更新ji1=ji1 1,若ji1≤|cz|,重复步骤f3;若ji1=|cz| 1,进入步骤f4;
[0091]
f4、若low<high,定义变量mid=(high low)/2;mid为估计的反应腔时长上限值的最小值;
[0092]
判断mid是否合理,若合理,更新high=mid;否则,更新low=mid 1;
[0093]
步骤f4中所述判断mid是否合理包含:
[0094]
将集合a={a1,

,a
|cz|
}依序划分为若干个子集合,a1,

,a
u
,u表示划分的子集合总数。a
r
包含i
r
个元素其中划分的规则为:
[0095][0096]
若满足u≤|fyq|,则说明mid合理。mid虽然合理,但还不一定是最优值,因此我们会通过降低调整反应腔时长的上限high的值,来降低mid。当mid不合理,通过使low=mid 1提高反应腔时长下限,进一步提高下一轮的mid值;
[0097]
再次比较更新后的low和high;若low<high,重复步骤f4;若low≥high,此时的low作为本轮反应腔时长上限值的最小值;进入f5;
[0098]
f5、从集合a中筛选元素a1,

,a
p
;其中p为从a中筛选出的元素个数,a1,

,a
p
∈a,且满足a1

a
p
=low;将对应的操作j
′1,

,j

p
分配至第ji2反应腔;更新|fyq|=|fyq|

1,更新|cz|=|cz|

p(由于已经将p个操作分配至第ji2反应腔,因此待分配操作的反应腔数量减1,待分配的操作数减p);
[0099]
若|fyq|>0(说明还没有给所有的反应腔分配操作),更新集合a、集合cz,进入步骤f2;
[0100]
其中:
[0101]
更新集合a具体包含步骤:令a
i
=a
i p
,i∈[1,|cz|

p];并删除集合a中的a
|cz|

p 1


,a
|cz|

[0102]
更新集合cz包含步骤:令b
i
=b
i p
,i∈[1,|cz|

p];并删除集合cz中的b
|cz|

p 1


,b
|cz|

[0103]
若|fyq|=0,结束。
[0104]
本发明多腔体等立体字体设备的调度方法能够根据晶圆制作中的流程数量、反应腔数量为反应腔分配对应的流程,不仅减少了晶圆排队时间,且使每个反应腔的处理时间尽可能均衡,避免了下一流程的反应腔均被占用而出现调度“死锁”。
[0105]
本发明还提供一种计算设备,包括:至少一个处理器;以及至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理器并且存储用于由所述至少一个处理器执行的指令,所述指令当由所述至少一个处理器执行时,使得所述计算设备执行根据本发明所述的方法的步骤。
[0106]
本发明还提供一种计算机可读存储介质,其上存储有计算机程序代码,所述计算机程序代码在被运行时执行如本发明所述的方法。
[0107]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜