具体实施方式
为使本申请的所述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本发明任一实施例中,用于晶圆厂内对涉及晶圆产品的目标区域进行生产调度。
需要说明的是,在本发明任一实施例中,Petri网(Petri Net,简写为PN)是一种强大的图形化建模工具,既能刻画系统结构又能描述系统运行。它可被描述为二元有向图;通过对比研究了面向过程(POPN)和面向资源(ROPN)两类一般Petri网模型中内在活性结构的对应关系,将POPN中的研究成果推广到ROPN中,使得可以有效辨识结构更加精简的活性结构,并在此基础上设计实现代价更小的控制器。
需要说明的是,一个PN模型是由库所、变迁、有向弧、令牌等元素组成。在一个PN模型中,库所用圆圈表示,库所表示资源状态或操作;变迁用矩形方框表示,变迁用于描述事件的开始与结束,用于确定局部状态和事件的发生,使得系统从某一离散状态转移为另一种离散状态;有向弧用来连接库所与变迁;令牌表示库所中的动态对象,可以从一个库所移动到另一个库所。
通常一个PN表现为一个六元组(P, T, I, O, M, K),其中:
(1)P为P={p0, p1, ..., pm},P表示有限库所的集合;
(2)T为T={t0, t1, ..., tn},T表示有限变迁的集合,P∪T≠Φ,P∩T=Φ;
(3)I为P×T→N={0,1,2,...},即I是输入函数,I(p,t)表示库所p触发变迁t,从p输入到t的令牌数;
(4)O为P×T→N,即O是输出函数,O(p,t)表示库所p触发变迁t,从t输出到p的令牌数;
(5)M为 P→N,M代表库所中令牌数量的标识,M(p)表示库所p中令牌数量;
(6)K为P→N+={1,2,...},即K是容量函数,K(p)表示库所p能容纳令牌的最大数量。
参照图1,示出了本申请一实施例提供的一种基于ROPN模型的生产调度仿真方法的步骤流程图;
一种基于ROPN模型的生产调度仿真方法,所述方法包括:
S110、获取至少一目标区域以及所述目标区域对应的生产信息,其中,所述生产信息包括所述目标区域类型、目标区域数量、设备类型、设备数量、产品类型和产品数量;
S120、依据所述生产信息通过预设ROPN模型确定ROPN元素信息,所述ROPN元素信息包括用于分拣产品的第一库所、每一目标区域内的第二库所、令牌和变迁,其中,所述产品通过所述第一库所进行分拣进入成品库或其他区域;
S130、依据所述变迁确定仿真事件类型,其中,所述仿真事件类型包括即时仿真事件和预测仿真事件;
S140、依据所有的所述即时仿真事件和所有的所述预测仿真事件生成第一仿真事件列表;
S150、获取所述第一仿真事件列表中小于预设时间的所有仿真事件生成新仿真事件,并依据所述新仿真事件生成所述第二仿真事件列表;
S160、当所述第二仿真事件列表内无仿真子事件以及所述第二仿真事件列表内的所有库所的标识信息满足预设条件时,则完成仿真。
在本申请的实施例中,通过获取至少一目标区域以及所述目标区域对应的生产信息,其中,所述生产信息包括所述目标区域类型、目标区域数量、设备类型、设备数量、产品类型和产品数量;依据所述生产信息通过预设ROPN(Resource-Oriented PetriNet,面向资源的Petri网)模型确定ROPN元素信息,所述ROPN元素信息包括用于分拣产品的第一库所、每一目标区域内的第二库所、令牌和变迁,其中,所述产品通过所述第一库所进行分拣进入成品库或其他区域;依据所述变迁确定仿真事件类型,其中,所述仿真事件类型包括即时仿真事件和预测仿真事件;依据所有的所述即时仿真事件和所有的所述预测仿真事件生成第一仿真事件列表;获取所述第一仿真事件列表中小于预设时间的所有仿真事件生成新仿真事件,并依据所述新仿真事件生成所述第二仿真事件列表;当所述第二仿真事件列表内无仿真子事件以及所述第二仿真事件列表内的所有库所的标识信息满足预设条件时,则完成仿真。能够提升产线效率,优化WIP(work in progress,正在进行的工作)及利用率,降低设备投资,提升产品质量,快速应对变化,按时交货,降低成本。
下面,将对本示例性实施例中一种基于ROPN模型的生产调度仿真方法作进一步地说明。
需要说明的是,目标区域类型指的是工厂内的各个区域根据分工的不同分为不同类型的区域;设备类型指的是各个区域内设备参数;产品类型指的是晶圆产品的加工状态,加工状态分为待加工和已加工;目标区域数量指的是工厂内区域的数量;设备数量指的是各个区域内设备的数量;产品数量指的是所有产品的数量;通过区域个数和设备个数确定需要构建的库所,具体地,第一库所和第二库所均表示的是如设备、缓冲区、分拣区和成品区这些可以存放晶圆产品的实体。
如所述步骤S120所述,依据所述生产信息通过预设ROPN模型确定ROPN元素信息,所述ROPN元素信息包括用于分拣产品的第一库所、每一目标区域内的第二库所、令牌和变迁,其中,所述产品通过所述第一库所进行分拣进入成品库或其他区域。
在本发明一实施例中,可以结合下列描述进一步说明步骤S120所述“依据所述生产信息通过预设ROPN模型确定ROPN元素信息,所述ROPN元素信息包括用于分拣产品的第一库所、每一目标区域内的第二库所、令牌和变迁,其中,所述产品通过所述第一库所进行分拣进入成品库或其他区域”之前的具体过程。
如下列步骤所述,
S210、依据所述第一库所和所述第二库所确定库所属性以及用于表示所述产品执行操作的所述变迁,其中,所述第一库所为用于分拣所述产品的分拣总库所,所述第二库所用于接收由所述分拣总库所分拣后的所述产品的子库所;
S220、依据所述库所属性和所述库所确定用于表示所述令牌存储量的容量;
S230、依据所述产品数量确定用于表示所述产品数量的所述令牌;
S240、依据所述令牌确定用于表示所述令牌当前状态的令牌属性;
S250、依据所述第一库所、所述第二库所、所述令牌、所述变迁、所述容量、所述令牌属性和所述库所属性构建所述预设ROPN模型;
S260、依据所述预设ROPN模型确定所述ROPN元素信息。
需要说明的是,通过产品数量确定令牌,具体地,产品数量指的是晶圆产品的产品个数即令牌,其中令牌也可称为标识。
需要说明的是,通过所述第一库所和所述第二库所确定库所属性以及用于表示所述产品执行操作的所述变迁;具体地,例如库所是某一设备时,设备有容量、区域信息、工步和产能等数据信息,上述的数据信息构成该库所的库所属性;例如库所是分拣总库所即第一库所时,分拣总库所即第一库所内只有容量一个数据信息,该数据信息为该库所的库所属性;例如库所是某一区域,若区域为缓冲区,缓冲区有区域信息和容量两个数据信息,该数据信息为该库所的库所属性;其中,库所属性能够决定库所内的令牌是否能够移动。
需要说明的是,依据所述第一库所和所述第二库所确定库所属性以及用于表示所述产品执行操作的所述变迁;在构建库所后通过不同库所之间的对应关系确定变迁,具体地,变迁通过根据库所相互之间的对应关系建立而来,变迁可以理解为执行某种动作;在本实施例中,即可理解为令牌从一个库所移动或者驻留的这些动作的表示。
需要说明的是,依据所述库所属性和所述库所确定所述容量,容量为库所属性中的一种;具体地,容量由库所以及库所属性决定,例如库所为某一设备,而某一设备只能放一个晶圆产品,那该库所的容量就是1,是确定的属性;
需要说明的是,依据所述令牌确定所述令牌属性;具体地,令牌即晶圆产品的个数,晶圆产品的属性包括优先级、工艺流程和当前工步,因此令牌属性也即晶圆产品的属性;其中,令牌属性能够决定令牌是否能够移动。
作为一种示例,假设工厂共有n个区域,第i个区域(i=1,2,...,n)拥有m
i台设备,需要加工a个晶圆产品,则需要构造
个库所、
个变迁和a个令牌,所有令牌默认在仿真起始时间(BeginTime)同时到达,产品分拣中心S即分拣总库所,产品分拣中心S的标识即令牌为a,需要注意的是标识包括一初始标识,初始标识就是表示一开始令牌的具体位置;其他库所即子库所的标识即令牌为0。默认全局仿真时间(GlobalTime)此时为仿真起始时间,仿真事件列表(Schedule)初始化为一空列表。
在本实施例中,产品分拣中心S的作用就是利用令牌以及令牌属性来移动其到合适的缓冲区,例如某一令牌当前需要加工的步骤是光刻,就立即移动到光刻区上的缓冲区,作为一个中转的作用,所有完成一个加工即驻留变迁的令牌都要先移动到产品分拣中心S进行分发,产品分拣中心S可以理解为一个中央处理器;当然也可以由设备判断直接移动到对应的缓冲区,但会产生大量的变迁,增大了模型规模也增大了仿真的计算量,因为其中要遍历判断变迁能否触发,变迁越多计算量越大,所以通过产品分拣中心S能够减少建模规模和减少计算压力。
如所述步骤S130所述,依据所述变迁确定仿真事件类型,其中,所述仿真事件类型包括即时仿真事件和预测仿真事件。
在本发明一实施例中,可以结合下列描述进一步说明步骤S130所述“依据所述变迁确定仿真事件类型,其中,所述仿真事件类型包括即时仿真事件和预测仿真事件”的具体过程。
如下列步骤所述,
S310、在所述变迁中筛选可触发变迁和延时变迁,并依据所述可触发变迁和所述延时变迁生成目标变迁;
S320、当所述目标变迁满足第一预设触发规则时,则依据所述目标变迁确定所述仿真事件类型为即时仿真事件;或,
S330、当所述目标变迁满足第二预设触发规则时,则依据所述目标变迁确定所述仿真事件类型为预测仿真事件。
需要说明的是,通过在变迁中筛选出所有可触发的变迁即可触发变迁,以及延时后的变迁即延时变迁,对可触发的变迁和延时后的变迁通过预设触发规则确定变迁对应的仿真事件类型。
作为一种示例,在一个PN模型中,对于∀p∈P,变迁t∈T可以被触发规则是
M(p)≥I(p,t),
K(p)≥M(p)-I(p,t)+O(p,t)。
预设触发规则可以解释为将移动出库所中的令牌数量小于或等于库所中存在的令牌数量,同时库所移出和移入令牌后所在令牌数量不超过库所容量。
在一具体实现中,根据上述两个公式检查此时所有可触发的变迁和获取延时后的变迁,根据预设触发规则生成其对应的仿真事件类型,仿真事件类型包括即时仿真事件和预测仿真事件;一个仿真过程即从仿真开始时间(BeginTime)出发,通过一系列仿真事件的推进直至仿真完成,同步更新全局仿真时间(GlobalTime)。仿真事件类型分为即时仿真事件和预测仿真事件,即时仿真事件的仿真时间为全局仿真时间,预测仿真事件需要计算驻留时间,仿真时间为驻留后的时间,即全局仿真时间加上驻留时间。
如所述步骤S320所述,当所述目标变迁满足第一预设触发规则时,则依据所述目标变迁确定所述仿真事件类型为即时仿真事件。
在本发明一实施例中,可以结合下列描述进一步说明步骤S320所述“当所述目标变迁满足第一预设触发规则时,则依据所述目标变迁确定所述仿真事件类型为即时仿真事件”的具体过程。
如下列步骤所述,
S410、依据所述目标变迁确定当前库所和当前令牌;
S420、当所述当前令牌从所述当前库所移动至目标库所时,则确定所述目标变迁对应的所述仿真事件类型为即时仿真事件。
需要说明的是,变迁t可以解释为令牌从一库所(即当前库所)移动到另一库所(即目标库所),从而确定其仿真事件类型为即时仿真事件。
作为一种示例,通过目标变迁确定当前库所和当前令牌,通过当前令牌判断其是否从当前库所移动到目标库所中,若是,则确定目标变迁对应的仿真事件类型为即时仿真事件。
在一具体实现中,如果此时由预设触发规则判断得到的可触发的变迁为t0、ti,0、ti,j、ti,j,0,则生成即时仿真事件,仿真时间为全局仿真时间(GlobalTime)。
如所述步骤S330所述,当所述目标变迁满足第二预设触发规则时,则依据所述目标变迁确定所述仿真事件类型为预测仿真事件。
在本发明一实施例中,可以结合下列描述进一步说明步骤S330所述“当所述目标变迁满足第二预设触发规则时,则依据所述目标变迁确定所述仿真事件类型为预测仿真事件”的具体过程。
如下列步骤所述,
S510、依据所述目标变迁确定当前库所和当前令牌;
S520、获取所述当前令牌中的令牌属性,其中,所述令牌属性包括输入函数和输出函数;
S530、当所述当前令牌停留在当前库所,且所述输入函数和所述输出函数都为0时,则确定所述目标变迁对应的所述仿真事件类型为预测仿真事件。
需要说明的是,变迁t停留在同一库所(即当前库所)一定时间,输入函数I和输出函数O的具体计算由库所、库所属性、令牌以及令牌属性统计得到,也即输入函数I和输出函数O在变迁建立后就自动生成,输入函数I和输出函数O具体表示移动的个数,每次移动都是要判断和统计个数,输入函数I和输出函数O是变迁上的两个统计方法,就是统计个数,其具体值由令牌属性判断得到;通过判断输入函数I和输出函数O是否为0,从而确定变迁t是否停留在同一库所(即当前库所)一定时间;当输入函数I和输出函数O都为0时,确定变迁t停留在同一库所(即当前库所)一定时间,从而确定其仿真事件类型为预测仿真事件。
作为一种示例,通过目标变迁确定当前库所和当前令牌,通过当前令牌判断其是否停留在当前库所一定时间,若是,则确定目标变迁对应的仿真事件类型为预测仿真事件。
在一具体实现中,如果变迁为驻留(di,j)的情况,则根据计算得到的驻留时间生成预测仿真事件,仿真时间为全局仿真时间加上驻留时间。
用L={l0, l1, ..., ls}表示有限令牌的集合,定义驻留时间计算函数为W: P×L→R,W(p,l)表示令牌l在库所p需要延迟的时间量。
如所述步骤S140所述,依据所有的所述即时仿真事件和所有的所述预测仿真事件生成第一仿真事件列表。
在本发明一实施例中,可以结合下列描述进一步说明步骤S140所述“依据所有的所述即时仿真事件和所有的所述预测仿真事件生成第一仿真事件列表”的具体过程。
如下列步骤所述,
S610、获取所有的所述即时仿真事件对应的即时仿真时间;
S620、获取所有的所述预测仿真事件对应的预测仿真时间;
S630、依据所述即时仿真时间和所述预测仿真时间对所述即时仿真事件和所述预测仿真事件按时间先后的顺序进行排序,并生成所述第一仿真事件列表。
需要说明的是,一个仿真事件E表示为一个四元组(simtime, priority, p, t),表示在特定时间对某库所触发某变迁,其中:
(1)simtime表示该事件发生的具体时间;
(2)priority表示事件的优先程度,默认为同一优先级,若遇到紧急或特殊事件将赋予更高级别优先级;
(3)p∈P为库所,t∈T为变迁,P、T与上述PN模型定义一致。
作为一种示例,通过获取所有的所述即时仿真事件对应的即时仿真时间以及获取所有的所述预测仿真事件对应的预测仿真时间,从而得到所有仿真事件的具体时间,并依据具体时间按照时间先后的顺序进行排序,排序后生成第一仿真事件列表。
在一具体实现中,还包括初始仿真事件列表,初始仿真事件列表为空,在生成即时仿真事件和预测仿真事件后,通过对其进行时间先后的排序,将排序后的即时仿真事件和预测仿真事件移动至初始仿真事件列表内,从而形成第一仿真事件列表。
需要说明的是,当仿真事件中的具体时间相同时,通过优先级顺序排序,其中优先级是通过仿真事件中的令牌的令牌属性确定,如该令牌为优先令牌,则生成仿真事件时会定义更高优先级。
如所述步骤S150所述,获取所述第一仿真事件列表中小于预设时间的所有仿真事件生成新仿真事件。
在本发明一实施例中,可以结合下列描述进一步说明步骤S150所述“获取所述第一仿真事件列表中小于预设时间的所有仿真事件生成新仿真事件”的具体过程。
如下列步骤所述,
S710、在所述第一仿真事件列表内获取小于预设时间的所有仿真事件;
S720、获取所述所有仿真事件的所有变迁;
S730、依据所述所有变迁生成目标库所和目标时间;
S740、依据所述所有变迁、所述目标库所和所述目标时间生成新仿真事件。
需要说明的是,取出第一仿真事件列表中仿真事件小于预设时间的所有仿真事件,此时最小时间为第一仿真事件列表中首个仿真事件的仿真事件时间,触发所有仿真事件中的所有变迁,从而生成目标库所和目标时间,依据所述所有变迁、所述目标库所和所述目标时间生成新仿真事件,将新仿真事件插入至第一仿真事件列表中,从而生成所述第二仿真事件列表(即对原第一仿真事件列表进行更新)。
作为一种示例,在p的标识为M(p)时,如果触发变迁t,触发后p的标识为:
M’(p)=M(p)-I(p,t)+O(p,t);
通过上述公式更新所有库所的标识及全局仿真时间。
在一具体实现中,当触发的变迁的仿真事件类型为即时仿真事件时,令牌将从当前库所移动到目标库所;当触发的变迁的仿真事件类型为预测仿真事件时,全局仿真时间(即目标时间)更新为此仿真事件的时间。
如所述步骤S160所述,当所述第二仿真事件列表内无仿真子事件以及所述第二仿真事件列表内的所有库所的标识信息满足预设条件时,则完成仿真。
在本发明一实施例中,可以结合下列描述进一步说明步骤S160所述“当所述第二仿真事件列表内无仿真子事件以及所述第二仿真事件列表内的所有库所的标识信息满足预设条件时,则完成仿真”的具体过程。
如下列步骤所述,
S810、获取所述第二仿真事件列表内的所有库所的类别信息,其中所述类别信息包括成品库以及未成品库;
S820、当所述成品库中的第一标识信息为预设令牌值,且所述未成品库中的第二标识信息为0,以及所述第二仿真事件列表内无子仿真事件时,则停止仿真,完成所述仿真。
需要说明的是,获取所述第二仿真事件列表内的所有库所的类别信息,其中所述类别信息包括成品库以及未成品库,并判断成品库以及未成品库是否满足预设条件,预设条件包括如下,条件一:成品库的第一标识信息是否满足预设令牌值即预设令牌数量;条件二:未成品库的第二标识信息是否为0;当同时满足上述条件一和条件二时,则停止仿真,完成所述仿真。
作为一种示例,若满足第二仿真事件列表无子仿真事件且除成品库外的未成品库的标识为M(p)=0(p≠D),成品库标识为M(D)=a时,停止仿真,完成所述仿真。
如所述步骤S160所述,判断所述第二仿真事件列表是否无子仿真事件以及判断所述第二仿真事件列表内的所有库所的标识信息是否满足预设条件。
在本发明一实施例中,可以结合下列描述进一步说明步骤S160所述“当所述第二仿真事件列表内无仿真子事件以及所述第二仿真事件列表内的所有库所的标识信息满足预设条件时,则完成仿真”的具体过程,还包括:
如下列步骤所述,
S910、当未成品库中的第二标识信息不为0,以及所述第二仿真事件列表存在子仿真事件时,则继续仿真。
需要说明的是,获取所述第二仿真事件列表内的所有库所的类别信息,其中所述类别信息包括成品库以及未成品库,并判断成品库以及未成品库是否满足预设条件,预设条件包括如下,条件一:未成品库的第二标识信息不为0;条件二:第二仿真事件列表存在子仿真事件;当同时满足上述条件一和条件二时,则继续仿真,返回至筛选变迁,直至第二仿真事件列表内无子仿真事件。
实施例一
晶圆厂可以分为炉管(Diff)、离子沉积(Imp)、清洗(Clean)、蚀刻(Etch)、光刻(Litho)、测试晶圆性能(PCM)、化学研磨(CMP)、量测(Metro)八个大区域。其中离子沉积、蚀刻、测试晶圆性能、化学研磨、量测和光刻每次只能加工一个批次(lot),即容量K(p)=1,而炉管、清洗可实现同时加工多个批次的晶圆产品,最多可一次性加工6个批次,即容量K(p)=6,但要保证配方一致。光刻是晶圆加工最重要也是最耗成本的工序,配方切换相比起其他工序消耗更多时间,所以对光刻设备的要求是满载与配方切换少。
需要说明的是,满载即满负荷运行,由于光刻设备价格昂贵,所以要保证利用率最高不浪费产能;配方是工艺参数,切换参数需要一定时间,相当于设备不工作浪费产能,需要减少这个次数来提高利用率。
需要说明的是,配方指工艺参数,例如炉管是加热工序,不同晶圆产品需要加热的温度可能不同,清洗需要的化学成分可能不同,如果要同时加工,需要保证工艺参数一致。
其中,各个区域的主要处理的工艺为:
①炉管(Diff):通过高温热处理,在晶圆表面形成绝缘膜。
②离子沉积(Imp):将杂质电离成离子并聚焦成离子束,在电场中加速而获得极高的动能后,注入到硅中而实现掺杂。
③清洗(Clean):半导体清洗技术采用特定的化学药液和去离子水,对晶圆表面进行无损伤清洗。
④蚀刻(Etch):将光刻(微光刻)后所产生的光阻图案转印至光阻下的材质上,以形成积体电路的复杂架构。
⑤光刻(Litho):使用光学曝光技术在晶圆上创建图案。
⑥测试晶圆性能(PCM):测试晶圆性能的设备,每个测试晶圆性能中包括多个测试结构,如长宽度、深度或厚度等测试结构,以及电容、接触电阻、漏电流、击穿、范德堡、垂直通孔接触等电学测试结构。
⑦化学研磨(CMP):抛光头将晶圆待抛光面压抵在粗糙的抛光垫上,借助抛光液腐蚀、微粒摩擦、抛光垫摩擦等耦合实现全局平坦化。
⑧量测(Metro):包括膜厚测量、光学方法测关键尺寸,层与层之间的套刻、晶圓基体厚度,弯曲翘曲等尺寸大小测量。
并分别对各个区域制定以下规则:(1)炉管、清洗:相同配方数量总数最大优先,若配方总数相同则下一个工步WIP数最少优先;(2)光刻:连续配方加工优先,若无相同配方则下一个工步WIP数最少优先;(3)离子沉积、蚀刻、测试晶圆性能、化学研磨、量测:下一个工步WIP数最少优先。
需要说明的是,WIP(work in progress,正在进行的工作)是排程的术语,表示加工中晶圆产品,WIP即为PN模型中的令牌,WIP数指的是该工步所在库所的状态。
对晶圆厂进行ROPN建模,库所S表示产品分拣中心,库所D表示成品库,8个缓冲区Bi(i=1,2,...,8)分别表示上述8个区域即炉管(Diff)、离子沉积(Imp)、清洗(Clean)、蚀刻(Etch)、光刻(Litho)、测试晶圆性能(PCM)、化学研磨(CMP)和量测(Metro)用于存放晶圆产品(令牌)的库所,库所Eij表示区域i的第j个设备。
令牌即产品为一个批次,其令牌属性包含编号、类型、数量、工艺流程及每一步的配方;仿真过程中,批次每经过一个设备将记录其编号、类型、数量、所处工步、加工设备、加工开始时间和加工结束时间,记录条数与工艺流程步数一致;所有批次的记录汇总而成生产计划单。
工厂生产车间由以下四个部分组成:
产品分拣中心:加工中晶圆产品的中转站,判断晶圆产品下一个工步所处的区域并立即运往该区域的缓冲区;若晶圆产品已完成所有工步,则运往成品库;
成品库:存放已完工晶圆产品的区域;
缓冲区:每个区域均包含一个缓冲区,表示晶圆产品已经到达该区域,当加工设备完成一次加工运走晶圆产品时,将向缓冲区请求晶圆产品,晶圆产品的选择需要提前制定规则;
加工设备:不同区域的加工设备加工模式可以不同,同一区域的加工设备加工模式必须相同,加工完的晶圆产品将直接送往产品分拣中心。
因此,可以使用ROPN模型对晶圆厂进行建模,参照图4所示。其中,各个成员含义如下表1所示。
库所 |
含义 |
变迁 |
含义 |
S |
产品分拣中心 |
t0 |
将完成的晶圆产品移到成品库 |
D |
产品成品库 |
ti,0 |
将需要进行加工工序i的晶圆产品移到区域i的缓冲区 |
Bi |
区域i的晶圆产品缓冲区 |
ti,j |
将区域i的代加工晶圆产品移到设备j上 |
Eij |
区域i的第j个设备 |
ti,j,0 |
将区域i设备j的已加工晶圆产品移到产品分拣中心 |
|
|
di,j |
在区域i设备j上驻留(加工) |
表1:ROPN生产模型成员
在上述ROPN模型中,令牌即为晶圆产品,包含了数量、工艺流程、优先级、最新时间等属性。令牌每经过一次库所都将更新其令牌属性,变迁也由令牌属性的不同确定是否可触发。产品分拣中心、成品库和缓冲区即分别对应库所S、D和Bi的容量为无穷大,K(S)=K(D)=K(Bi)=+∞,所以不存在死锁的情况。
晶圆厂仿真过程可以描述为:
在产品分拣中心S判断所有在其中的晶圆产品所在工步对应区域,并移动至该区域上的缓冲区,例如产品分拣中心S有10个令牌,M(S)=10,其中3个的所在工步为区域l,则I(S,t1,0)=O(B1,t1,0)=3,由于K(B1)=+∞,则由触发条件可判断得到变迁t1,0可触发,即将符合的3个晶圆产品移动到区域1的缓冲区;具体地,I表示从产品分拣中心S移出(到光刻区)的数量,就需要判断令牌属性是不是工步为光刻,确认令牌属性的工步为光刻时才能移动,例如3个,I=3;O是(从产品分拣中心S)移入到光刻区的数量,一样是3;
在各个区域中,设备Eij是有限容量的,假定为n,当设备中晶圆产品完成一次加工时(完成一次驻留di,j),由于产品分拣中心S容量无穷,变迁ti,j,0即可触发,触发后相当于设备Eij的晶圆产品移动至产品分拣中心S,其标识状态更新为M(Eij)=0,可以触发一次变迁ti,j,I(Eij,ti,j)=I(Bi,ti,j)=m≤n,触发该变迁所移动的令牌与令牌数由规则确定的顺序决定。
当产品分拣中心S判断一晶圆产品完成所有工序,则移至成品库D。
当所有晶圆产品均移至成品库D时,仿真结束。
对于工厂仿真,制定各区域的筛选规则,使用基于仿真时间的事件推进变迁的触发,以所有晶圆产品所有工步完工为终止条件进行迭代。
其所能效果如下,
对比历史与优化后的结果:
参照图5,如图所示,光刻区历史平均每天加工数10356个,优化后平均每天加工数11069个;
参照图6,如图所示,光刻区重点机台LIS03平均每天加工数37.6提升至39.04,平均配方切换次数从17.56下降至16.59;
参照图7,如图所示,炉管区历史平均上料批数为3.62,优化后平均上料批数为3.92。
综上所述,本方法结合实施例一,可以得知本方法的有益效果包括:
(1)提升产线效率:基于国际领先的排程算法,通过综合考虑完整装配参数,找到最佳生产排程方案,降低生产时间、提升产出、改善产量可变性等,从而提升产线综合生产效率;
(2)优化WIP及利用率:通过合理排程平衡产线、优化设备WIP及利用率;
(3)降低设备投资:提高瓶颈工具的生产效率、降低设备投资;
(4)提升晶圆产品质量:降低生产中违反最大排队时间 (Q-Time) 规则批次数量,减少返工,提升晶圆产品质量;
(5)快速应对变化:极大提高对工厂产线内部变化和外部订单更新的反应速度,快速应对变化,提高企业竞争力;
(6)按时交货:提高按时交货表现,提升客户满意度;
(7)降低成本:极大减少计划和排程人力需求,降低成本。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
参照图2,示出了本申请一实施例提供的一种基于ROPN模型的生产调度仿真装置的结构框图;
一种基于ROPN模型的生产调度仿真装置,具体包括:
获取模块210,用于获取至少一目标区域以及所述目标区域对应的生产信息,其中,所述生产信息包括所述目标区域类型、目标区域数量、设备类型、设备数量、产品类型和产品数量;
第一确定模块220,用于依据所述生产信息通过预设ROPN模型确定ROPN元素信息,所述ROPN元素信息包括用于分拣产品的第一库所、每一目标区域内的第二库所、令牌和变迁,其中,所述产品通过所述第一库所进行分拣进入成品库或其他区域;
第二确定模块230,用于依据所述变迁确定仿真事件类型,其中,所述仿真事件类型包括即时仿真事件和预测仿真事件;
第一生成模块240,用于依据所有的所述即时仿真事件和所有的所述预测仿真事件生成第一仿真事件列表;
第二生成模块250,用于获取所述第一仿真事件列表中小于预设时间的所有仿真事件生成新仿真事件,并依据所述新仿真事件生成所述第二仿真事件列表;
判定模块260,用于当所述第二仿真事件列表内无仿真子事件以及所述第二仿真事件列表内的所有库所的标识信息满足预设条件时,则完成仿真。
在本发明一实施例中,所述第一确定模块220,包括:
第一确定子模块,用于依据所述第一库所和所述第二库所确定库所属性以及用于表示所述产品执行操作的所述变迁,其中,所述第一库所为用于分拣所述产品的分拣总库所,所述第二库所用于接收由所述分拣总库所分拣后的所述产品的子库所;
第二确定子模块,用于依据所述库所属性和所述库所确定用于表示所述令牌存储量的容量;
第三确定子模块,用于依据所述产品数量确定用于表示所述产品数量的所述令牌;
第四确定子模块,用于依据所述令牌确定用于表示所述令牌当前状态的令牌属性;
第一构建子模块,用于依据所述第一库所、所述第二库所、所述令牌、所述变迁、所述容量、所述令牌属性和所述库所属性构建所述预设ROPN模型;
第五确定子模块,用于依据所述预设ROPN模型确定所述ROPN元素信息。
在本发明一实施例中,所述第二确定模块230,包括:
第一生成子模块,用于在所述变迁中筛选可触发变迁和延时变迁,并依据所述可触发变迁和所述延时变迁生成目标变迁;
第六确定子模块,用于当所述目标变迁满足第一预设触发规则时,则依据所述目标变迁确定所述仿真事件类型为即时仿真事件;或,
第七确定子模块,用于当所述目标变迁满足第二预设触发规则时,则依据所述目标变迁确定所述仿真事件类型为预测仿真事件。
在本发明一实施例中,所述第一确定子模块,包括:
第一确定单元,用于依据所述目标变迁确定当前库所和当前令牌;
第二确定单元,用于当所述当前令牌从所述当前库所移动至目标库所时,则确定所述目标变迁对应的所述仿真事件类型为即时仿真事件。
在本发明一实施例中,所述第二确定子模块,包括:
第三确定单元,用于依据所述目标变迁确定当前库所和当前令牌;
第一获取单元,用于获取所述当前令牌中的令牌属性,其中,所述令牌属性包括输入函数和输出函数;
第四确定单元,用于当所述当前令牌停留在当前库所,且所述输入函数和所述输出函数都为0时,则确定所述目标变迁对应的所述仿真事件类型为预测仿真事件。
在本发明一实施例中,所述第一生成模块240,包括:
第一获取子模块,用于获取所有的所述即时仿真事件对应的即时仿真时间;
第二获取子模块,用于获取所有的所述预测仿真事件对应的预测仿真时间;
第二生成子模块,用于依据所述即时仿真时间和所述预测仿真时间对所述即时仿真事件和所述预测仿真事件按时间先后的顺序进行排序,并生成所述第一仿真事件列表。
在本发明一实施例中,所述第二生成模块250,包括:
第三获取子模块,用于在所述第一仿真事件列表内获取小于预设时间的所有仿真事件;
第四获取子模块,用于获取所述所有仿真事件的所有变迁;
第三生成子模块,用于依据所述所有变迁生成目标库所和目标时间;
第四生成子模块,用于依据所述所有变迁、所述目标库所和所述目标时间生成新仿真事件。
在本发明一实施例中,所述判定模块260,包括:
第一判断子模块,用于获取所述第二仿真事件列表内的所有库所的类别信息,其中所述类别信息包括成品库以及未成品库;
第二判断子模块,用于当所述成品库中的第一标识信息为预设令牌值,且所述未成品库中的第二标识信息为0,以及所述第二仿真事件列表是否无子仿真事件时,则停止仿真,完成所述仿真。
在本发明一实施例中,所述判定模块260,还包括:
第三判断子模块,用于当未成品库中的令牌不为0,以及所述第二仿真事件列表存在子仿真事件时,则继续仿真。
参照图3,示出了本发明的一种基于ROPN模型的生产调度仿真方法的计算机设备,具体可以包括如下:
上述计算机设备12以通用计算设备的形式表现,计算机设备12的组件可以包括但不限于:一个或者多个处理器或者处理单元16,系统存储器28,连接不同系统组件(包括系统存储器28和处理单元16)的总线18。
总线18表示几类总线18结构中的一种或多种,包括存储器总线18或者存储器控制器,外围总线18,图形加速端口,处理器或者使用多种总线18结构中的任意总线18结构的局域总线18。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线18,微通道体系结构(MAC)总线18,增强型ISA总线18、音视频电子标准协会(VESA)局域总线18以及外围组件互连(PCI)总线18。
计算机设备12典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备12访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器28可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)30和/或高速缓存存储器32。计算机设备12可以进一步包括其他移动/不可移动的、易失性/非易失性计算机体统存储介质。仅作为举例,存储系统34可以用于读写不可移动的、非易失性磁介质(通常称为“硬盘驱动器”)。尽管图3中未示出,可以提供用于对可移动非易失性磁盘(如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其他光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质界面与总线18相连。存储器可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块42,这些程序模块42被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块42的程序/实用工具40,可以存储在例如存储器中,这样的程序模块42包括——但不限于——操作系统、一个或者多个应用程序、其他程序模块42以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块42通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备12也可以与一个或多个外部设备14(例如键盘、指向设备、显示器24、摄像头等)通信,还可与一个或者多个使得操作人员能与该计算机设备12交互的设备通信,和/或与使得该计算机设备12能与一个或多个其他计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)界面22进行。并且,计算机设备12还可以通过网络适配器20与一个或者多个网络(例如局域网(LAN)),广域网(WAN)和/或公共网络(例如因特网)通信。如图所示,网络适配器20通过总线18与计算机设备12的其他模块通信。应当明白,尽管图3中未示出,可以结合计算机设备12使用其他硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元16、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统34等。
处理单元16通过运行存储在系统存储器28中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的基于ROPN模型的生产调度仿真方法。
也即,上述处理单元16执行上述程序时实现:获取至少一目标区域以及所述目标区域对应的生产信息,其中,所述生产信息包括所述目标区域类型、目标区域数量、设备类型、设备数量、产品类型和产品数量;依据所述生产信息通过预设ROPN模型确定ROPN元素信息,所述ROPN元素信息包括用于分拣产品的第一库所、每一目标区域内的第二库所、令牌和变迁,其中,所述产品通过所述第一库所进行分拣进入成品库或其他区域;依据所述变迁确定仿真事件类型,其中,所述仿真事件类型包括即时仿真事件和预测仿真事件;依据所有的所述即时仿真事件和所有的所述预测仿真事件生成第一仿真事件列表;获取所述第一仿真事件列表中小于预设时间的所有仿真事件生成新仿真事件,并依据所述新仿真事件生成所述第二仿真事件列表;当所述第二仿真事件列表内无仿真子事件以及所述第二仿真事件列表内的所有库所的标识信息满足预设条件时,则完成仿真。
在本发明实施例中,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本申请所有实施例提供的基于ROPN模型的生产调度仿真方法:
也即,给程序被处理器执行时实现:获取至少一目标区域以及所述目标区域对应的生产信息,其中,所述生产信息包括所述目标区域类型、目标区域数量、设备类型、设备数量、产品类型和产品数量;依据所述生产信息通过预设ROPN模型确定ROPN元素信息,所述ROPN元素信息包括用于分拣产品的第一库所、每一目标区域内的第二库所、令牌和变迁,其中,所述产品通过所述第一库所进行分拣进入成品库或其他区域;依据所述变迁确定仿真事件类型,其中,所述仿真事件类型包括即时仿真事件和预测仿真事件;依据所有的所述即时仿真事件和所有的所述预测仿真事件生成第一仿真事件列表;获取所述第一仿真事件列表中小于预设时间的所有仿真事件生成新仿真事件,并依据所述新仿真事件生成所述第二仿真事件列表;当所述第二仿真事件列表内无仿真子事件以及所述第二仿真事件列表内的所有库所的标识信息满足预设条件时,则完成仿真。
可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言——诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言——诸如“C”语言或类似的程序设计语言。程序代码可以完全地在操作人员计算机上执行、部分地在操作人员计算机上执行、作为一个独立的软件包执行、部分在操作人员计算机上部分在远程计算机上执行或者完全在远程计算机或者服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)——连接到操作人员计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种基于ROPN模型的生产调度仿真方法及其装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。