作者简介:周炳海(1965-),男,教授,博士生导师.研究方向:离散系统建模,调度与仿真.E-mail:bhzhou@tongji.edu.cn
为有效解决300 mm晶圆制造中整体式自动物料搬运系统OHT路径的潜在死锁问题,提出了基于图论的死锁检测/解除策略.首先对路径的潜在死锁问题进行描述,通过定义链和共享点等概念,建立图论模型,在论证其发生的充要条件后,指出解除潜在死锁的可行方法.然后以任务完成时间最小为优化目标建立数学模型,通过对OHT运行路径上的节点依次进行死锁检测和解除来确定无死锁调度方案.仿真实验表明:该方法能够有效检测和解除OHT运行路径上的潜在死锁,提高晶圆制造系统运行的稳定性和安全性.
To resolve the impending deadlock problems in the path planning of Overhead Hoist Transporters (OHTs) in unified Automatic Material Handling Systems (AMHSs) of 300 mm wafer fabrication, an impending deadlock-free path planning strategy was proposed on the basis of the graphic theory. First, the impending deadlock problems were formally described. After introducing novel concepts of chains and share points, necessary and sufficient conditions were identified and an available approach was put forward using the graphic model. Then, a mathematic model was set up with an optimal objective function of minimizing the transporting time. Finally, by executing deadlock detection and resolution steps successively, an impending deadlock-free scheduling solution was assigned. Simulation experiments indicate that the proposed strategy can effectively detect and resolve the impending deadlocks occurring in OHTs' path planning during material handling processes. Thus, it can improve the security and stability of wafer fabrication systems.
晶圆制造的复杂流程和整体式轨道布局的耦合特性使得高空穿梭车(Overhead hoist transporter, OHT)在物料搬运作业中极易引起路径死锁的现象.学界普遍将路径死锁分为直接死锁和潜在死锁(Impending deadlock)两大类, 潜在死锁一旦形成必然会在有限步后导致直接死锁, 且更加隐蔽, 不易探测, 因此是防死锁调度问题研究的难点.
随着整体式布局的广泛应用, 运筹学理论, 规则调度和人工智能等理论被广泛应用于其调度研究.在路径规划方面, Sha等[1]将tool和OHT相结合, 使用决策树和调度规则的方法来提升晶圆的产量.Yang等[2]提出将第
在以往研究路径规划的文献中, 一般只考虑直接死锁的检测和解除, 然而在实际生产中, 潜在死锁更为多见和隐蔽, 对系统的稳定运行构成极大威胁.整体式轨道布局中OHT运输路径高度重叠迂回, 更增加了潜在死锁的发生概率, 因此, 对其进行检测和预防具有实际意义和理论研究价值.传统方法预防死锁一般采取的是前瞻一步的策略, 然而这并不能满足潜在死锁检测的要求.为此, 本文通过定义链和共享点等概念, 提出了基于图论的死锁检测模型, 并在此基础上构造了解除潜在死锁的有效方法.其系统开销较小, 能够高效应用于OHT物料搬运系统的实际运行, 保证晶圆生产环境的安全和稳定.
300 mm半导体制造中整体式自动物料搬运系统是指将Interbay和Intrabay的轨道直接相连, 使得作为物料搬运设备的OHT无需经过存储柜暂存即可实现tool与tool之间直接搬运的布局结构, 如图1所示.
为有效刻画研究问题域, 做如下基本假设:① 自动物料搬运系统采用脊柱型布置; ② 晶圆搬运路径及停驻时间需要在调度过程中决定; ③ OHT在轨道上同向, 同速运行; ④ 在轨道上的机器的装卸载处及轨道的交叉点处设置节点, OHT只能在节点处驻停; ⑤ 每个节点同一时刻只允许一辆OHT运行或驻停, 节点间允许多辆OHT依次通过, 但不允许并行或超越.
为深入分析问题, 对路径上相关变量描述如下:假设系统中OHTi所装载的任务规划路径为
引理1 (一级死锁) 若在一组OHTA=(A1, A2, , et al., An)中, 设OHTk当前所在节点在其路径中序号为m, ∀ k有
证明 由于对∀ k, 其下一节点xk, m+1≠ 0, 因此必须等待, 设当前占据OHTk路径序号
定理1 (二级死锁) 若在两组OHTAi=(
证明 由于对∀ k, 若其下一节点xk, m+1≠ 0, 其必须等待, 若xk, m+1=0, 如果无潜在死锁机制控制, 则OHTk会进入其第m+1个节点, 但是xk, m+2≠ 0, 由引理1可知, 系统必然会发生一级死锁.
推论1 (N级死锁)在N组OHTAi=(
为有效侦测到整体式布局下自动物料搬运系统中OHT运行路径所存在的潜在死锁问题, 以下结合图论思想, 构造潜在死锁的有向图表示方法, 在此基础上证明死锁的形成和解除的充要条件, 最后提出死锁避免的策略.
定义1 (链) 构造链
定义2 (顺向链与逆向链) 以yi 计数点i成为空点的次数, 根据链的构造方法, 对链尾点n, 显然
定义3 (共享点) 由以上定义, 顺向链中, 设空点序号为i点的前链序号为fi, 后链序号为fi+1; 逆向链中, 其前链序号为bi, 后链序号为bi+1 .若有
定理2 若图中共有两条链, 一个共享点, 则二级死锁成立.
证明 由共享点定义,
推论2 若图中共有2(n-2)+2条链, n-1个共享点, 则n级死锁成立.设空点序号为i, 有fi=i; bi=2n-i-1.
由图2(c)可以看到, 潜在死锁的链结构一旦形成, 则必然会在有限步之后陷入死锁, 但由于其较为隐蔽, 因此并不能被一般的死锁探测机制所侦测到, 因此导致的不合理调度会严重损害系统产能, 导致死锁发生.根据所构造的潜在死锁图论模型, 本文提出了相应的解除方法.
定理3 如果在潜在死锁链形成的前一时刻,
证明 如图3所示的二级死锁为例, 始终保证某一链的链尾点可变为空点, 此时采用顺向链和逆向链依次进入共享点的方法, 就可以有效避免死锁发生.
下面结合上述图论模型建立防潜在死锁的调度问题数学模型.设共有任务N个, 对某一任务i来说, 假设其搬运路径为
对多辆OHT来说, 要避免潜在死锁, 则需要有:
又由于节点间允许多辆OHT依次通过, 但不允许并行或超越, 假设
以上各式均有
令T(Pi)为路径Pi 所需要时间, 调度目标为从所有满足约束的路径中找到最短路径Pi, 使得搬运时间最少, 即:
则该问题可以表述为目标函数为式(5), 式(1)~(4)为约束的非线性规划问题.
为防止整体式布局下自动物料搬运系统中的潜在死锁, 结合上述图论模型进行死锁的侦测和解除.通过采用"look forward"的死锁避免策略, 当检测到下一时刻会构成潜在死锁链结构时, 延迟当前OHT进入其下一节点, 同时对已形成的死锁链进行死锁解除.其具体方法为, 通过始终保持链中至少有一个节点在当前时刻为空点, 使得链尾节点的OHT依次有序地占用共享点, 防止OHT出现循环等待.
假设有
步骤1 令i=i+1对任务
步骤2 j=j+1开始死锁检测.设置指针,
步骤3 若
步骤4 若
步骤5 若
步骤6 以
步骤7 共享点重复, 则
步骤8 将当前点所在的链
步骤9 如果
步骤10 若
步骤11 若
首先将死锁检测模块得到的链, 链内节点和共享点按照构造顺序进行标号.
步骤1 得到最晚进入该链结构的OHT, 假设其所在位置为Ri的第j个节点.
步骤2 设mr为当前链尾节点OHT可以进入共享点的链序号.如果
步骤3 若
步骤4 对链
步骤5 若
步骤6 死锁解除阶段结束.
为评价本文所提出的防潜在死锁的整体式半导体自动物料搬运系统调度方法, 引入以下变量来衡量该调度结果的优劣.ACT表示晶圆搬运任务平均耗时, 该值越小, 则物料搬运系统运行效率越高; AWT表示搬运任务平均等待时间, 该值越小, OHT利用率越高; ATT表示任务平均搬运时间, 该值越小, 物料搬运系统运行效率越高.将本文提出的滚动时域调度方法用C++编程实现, 并在主频为2.00 GHz, 内存2 GB的便捷式计算机上运行, 实验结果和分析如下.
分别设系统内的intrabay数目为6, 8, 10, 12, 14, 16, 18, 每个intrabay内设置6台tool, OHT数量M=20任务数量N=40取整个仿真程序运行时间的平均值, 如图4所示.
从图4可知:整个程序运行时间随intrabay数量增加而缓慢递增, 即运行时间与轨道上节点数量成正相关.但总体而言, 相较于OHT搬运任务的运输时间和晶圆的加工周期, 计算调度方案所需时间可以忽略不计, 因此本文提出的调度方法能够快速便捷地得到预防潜在死锁的路径规划方案, 适用于实际生产调度.
设intrabay数目为8, 每个intrabay内设置6台tool, 任务数量
从图5可知:在相同任务数量的情况下, 由于OHT数量增加, 物料搬运系统运力提高, 算法得到的任务平均等待时间下降较为明显, 但任务平均运输时间下降稍平缓, 在小规模布局中, 这可能是由于OHT阻塞或者频繁死锁解除造成的延迟等待而对系统性能造成影响, 因此需要经过权衡合理减少OHT数量, 以减少轨道上的阻塞和等待.
分别设系统内的intrabay数目为8, 12, 16, 20, 24, 每个intrabay内设置6台tool, OHT数量
由图6可知:任务平均完成时间和等待时间均显著增加, 但其平均运输时间趋向平稳, 这表明系统布局规模增大时, 任务平均完成时间的增加主要是由于空驶路径的增长, 说明此时系统运力配置并不能够满足要求, 因此该算法可以用来在固定的小车数目下寻找合理的intrabay布局规模, 以缩短整体完工时间.
将任务数量与OHT数量的比值设置为1, 1.5, 2, 2.5, 3, 设系统内intrabay数目为10, 每个intrabay内设置6台tool, 任务的搬运效率表现如图7所示.
由图7可知:在低负载的情况下, 算法性能受负载率影响较大, 完工时间和等待时间负载率增大均呈增加趋势, 其中平均等待时间增加更为显著, 但在负载率到达2.5之后两者变化明显放缓, 这表明在系统负载不平衡时, 算法表现具有一定稳定性.
由于目前文献中专门针对防止潜在死锁调度方法的研究较少, 因此引用文献[8]中只预防直接死锁的调度方法作为比较的下界, 观察搬运效率的表现情况.分别令系统内的intrabay数目为8, 12, 16, 20, 24, 每个intrabay内设置6台tool, OHT数量
从图8可知:在小规模布局中, 两者的差距随布局规模的增加而增加, 这说明了小规模系统中, 由于路径高度重叠, 潜在死锁发生的概率较大.在中等规模布局中, 两者差距较小, 由于此时系统规模和设备配置趋于合理, 死锁概率减小.而在较大规模系统布局中, 两者差距又逐渐增大, 一旦发生潜在死锁, 其牵涉的OHT数量较多, 逐步解除需要一定耗时, 因此也属于合理范围之内.
针对整体式自动物料搬运系统的特点, 提出了OHT路径规划中防止潜在死锁的调度方法.通过构造链和共享点的概念, 建立了能够有效侦测潜在死锁发生的图论模型, 在论证潜在死锁发生的充要条件后, 提出通过始终保证链中有至少一个空点来逐步解除死锁的策略.仿真结果表明, 本文所提出的防潜在死锁方法运行快速, 效果良好, 能够适用于大规模生产调度.本文对OHT同速, 同向运行的脊柱式布局下路径规划的防潜在死锁方法进行了探讨, 今后将针对异速, 双向以及更加复杂多变的轨道布局下潜在死锁的探测和防止策略进行深入探究.
The authors have declared that no competing interests exist.
[1] |
|
[2] |
|
[3] |
|
[4] |
|
[5] |
|
[6] |
|
[7] |
|
[8] |
|
[9] |
|
[10] |
|