CN100504692C - 用于硅片传输系统的并发控制方法 - Google Patents
用于硅片传输系统的并发控制方法 Download PDFInfo
- Publication number
- CN100504692C CN100504692C CNB2007100472375A CN200710047237A CN100504692C CN 100504692 C CN100504692 C CN 100504692C CN B2007100472375 A CNB2007100472375 A CN B2007100472375A CN 200710047237 A CN200710047237 A CN 200710047237A CN 100504692 C CN100504692 C CN 100504692C
- Authority
- CN
- China
- Prior art keywords
- message
- status code
- hash
- order
- control method
- 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.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Computer And Data Communications (AREA)
- Control By Computers (AREA)
Abstract
本发明公开了一种用于硅片传输系统的并发控制方法,所述硅片传输系统的主控计算机包括一个主消息接收队列、数个发送队列和数个子消息接收队列。该方法包括:a.主控计算机对数个执行部件连续下发命令,根据命令关键字,加入对应执行部件的发送队列中;b.判断执行部件的前一个命令是否执行完毕,若是,执行步骤c,若否,发送线程挂起;c.从每一执行部件的发送队列中取出命令,向执行部件发送命令;d.传输计算机将应答消息反馈给主控计算机,依次加入主消息接收队列内;e.对主消息接收队列中的应答消息进行提取解析,将同一执行部件的应答消息放入对应的子消息接收队列内。本发明提供的并发控制方法实现了对多个执行部件的控制,有效节省了生产时间。
Description
技术领域
本发明涉及半导体领域的用于硅片传输系统的控制方法,尤其是指硅片传输系统中的对多个硬件执行部件实现并发控制的方法。
背景技术
目前在国内,国产的半导体设备产业基本还未形成。研究传输控制系统的科研机构和高校也很少。中国期刊网上的学位论文全文数据库于2006年公开了文献《硅片传输机器人控制系统的研究与开发》,该文献的第四章节重点分析了采用的控制策略,DLL动态链接库和Active控件技术是传输系统上层应用程序和底层硬件设备程序之间交互的主要手段。底层设备程序封装后,以头文件的形式给上层调用,上层程序通过包含头文件,以函数调用的形式来实现对底层设备的流程控制。采用这种方式,能较好的实现控制层次的划分,只要系统的函数接口层次定义完成后,开发人员就能并行开发。但是采用上述函数接口的形式,底层函数被调用后,到结果返回之前,被调用函数内部经历了复杂执行过程,上层程序无法获知所调用函数内部执行的细节过程。另外,如果采用非异步的函数,执行期间,很容易阻塞上层调用程序。北京航空航天大学出版社于2004年4月出版的《51系列单片机高级实例开发指南》涉及了运动控制系统的开发,其中上下层的通讯是通过ASCII形式的命令字符串,应答字符串方式来实现,通常是一条命令对应一条应答消息,这种方式也不能完全反映出被调用方的执行过程细节。
发明内容
本发明解决的技术问题在于提供一种对硅片传输系统多个硬件执行部件实现并发控制的方法。
为解决上述技术问题,本发明提供了一种新的并发控制方法,所述硅片传输系统包括下发命令的主控计算机以及控制数个执行部件的传输计算机,所述主控计算机包括一个主消息接收队列、数个对应执行部件的发送队列和数个对应执行部件的子消息接收队列,该并发控制方法包括如下步骤:a.主控计算机对数个执行部件连续下发命令,根据下发命令的关键字,将命令分类,分别加入对应执行部件的发送队列中;b.判断每一执行部件的前一个命令是否执行完毕,若是,执行步骤c,若否,将当前命令的发送线程挂起;c.从每一执行部件的发送队列中取出命令,向对应的执行部件发送命令;d.传输计算机将下发命令的所有应答消息反馈给主控计算机,依次加入所述主消息接收队列内;e.对主消息接收队列中的应答消息进行提取解析,将同一执行部件的应答消息放入对应的子消息接收队列内。其中所述下达命令使用的数据文件包括命令语句字符串、数行状态码以及结束标志。进一步地,步骤e是利用哈西表对主消息接收队列中的应答消息进行提取解析的,该哈西表的建立过程包括如下步骤:打开下发命令的数据文件进行读取,建立状态码数组;获取命令语句字符串,作为哈西表的关键字,获取状态码加入对应的状态码数组,作为哈西表关键字的值;将所有命令语句字符串以及对应的状态码数组加入散列表,形成哈西表。
进一步地,步骤e中通过哈西表对应答消息进行提取解析的过程包括如下步骤:判断主消息接收队列中是否有应答消息,若有,继续判断得到是否是错误码;若得到的是错误码,加入错误队列,反之,继续判断应答消息的内容是否含状态码和属性码:若既含状态码又含属性码,将状态码加入状态队列,设置属性码;若只含状态码,将状态码加入状态队列;若只含属性码,设置属性码;判断是否有新消息加入主消息接收队列中,若有,循环执行上面步骤;若无,逐项比较状态队列中的状态码和哈西表的散列表中对应关键字的值,将针对同一执行部件的应答消息放入对应的子消息接收队列中。
本发明提供的并行控制方法,可以对硅片传输系统的多个执行部件连续下发命令实现并行控制,节省了执行时间,进而提高了生产效率;通过采用哈西表技术,实现了对混杂信息的并行处理。
附图说明
图1是硅片传输系统的物理结构示意图。
图2是硅片传输系统的通讯结构示意图。
图3是哈西表形成的流程图。
图4是应答消息解析方法的流程图。
图5是本发明对传输系统执行部件的并发控制方法的流程图。
具体实施方式
以下结合附图对本发明用于硅片传输系统的并发控制方法的较佳实施例进行描述,以期进一步理解本发明的目的、具体结构特征和优点。
本发明提供的并发控制方法应用于半导体行业复杂的硅片传输系统。图1是一种硅片传输系统的物理结构图,图中显示了该传输系统具有若干个执行部件(设备),其包括三个独立的用于存放硅片的版库1、2、3(以下分别称为1号版库、2号版库、3号版库)、一个直线导轨5,一个多轴机械手4以及数个传感器(如真空传感器、扫描传感器、接近开关等等,未图示)。所述机械手4一共有五个工作位置。版库被抬升之后,机械手4在直线导轨5上滑行,可以从任何一个版库的任何一个槽位取或者放硅片。
图2是所述硅片传输系统的通讯结构图。参阅图2并结合图1,该传输系统包括主控计算机6、传输计算机7以及若干控制执行部件的设备。通过大部分设备如控制机械手的机械手控制器、真空传感器、直线导轨5以及与版库对应的三个硅片盒管理a、b、c是通过以太网或者RS232 COM2-5串口与传输计算机7进行通讯的,还有一部分部件如数字I/O是通过传输计算机7的扩展槽进行连接控制的。传输计算机7整合这些设备、部件通过集线器或者交换器、以太网等与上位的主控计算机6实现通信。主控计算机6和传输计算机7采用的是双向交互通讯,即传输计算机7不但能接受主控计算机6下发命令,做主被动应答,还应当具有主动上发消息功能,告知主控计算机6,传输系统设备、部件发生的最新变化。主控计算机6下发的一条命令比如机械手初始化命令对应机械手4一系列复杂动作,而每一个动作的完成只是整个命令序列的一个步骤。整个初始化过程可以划分成数层次(节点),每个层次(节点)包含一系列动作(参阅下附表2)。数个初始化层次(节点)的完成构成一个完整的初始化过程。主控计算机6在下发传输系统初始化指令后,需要实时感知传输系统具体初始化过程的每一步骤的进展,判断初始化进程进展的那一个层次,相关层次中的那一步,这是一个动态实时的跟踪过程。当命令下发失败,初始化不能继续下去的时候,主控计算机6能在第一时间,根据传输计算机7连续不断上传的反馈消息做出正确的判断。
本实施例中,主控计算机6与传输计算机7之间采用层次状的消息结构进行通讯。针对传输系统设备、部件的复杂性,设计了如表1所示的消息结构模板。
表1 消息结构模板
该消息结构模板具有如下特征:
1.针对每一条命令(每一项),消息结构模板分成三个部分:事件的开始、结束以及内容。
2.事件位于应答消息的最外层,表示主控计算机下发命令后事件的开始和事件的结束。
3.事件应答消息字符串位于尖括号内,以“事件_XX”开头,“事件”标识本消息的性质,其后的“XX”为具体产生事件的所有者,对应设备、执行部件;“参数=“参数值””是具体事件的特征说明。
4.事件的开始与结束分别通过反馈消息的“<”和“</”来区别。
5.内容消息包含于事件消息之内部。
6.内容消息位于尖括号内,内容结束由“/>”结尾。
7.内容的第一种组成形式是“状态_XX=“状态码””,其中“状态”表示本内容消息的性质,其后的“XX”为产生内容消息的所有者,“状态码”是具体状态特征说明。
8.内容的第二种组成形式是“属性_XX=“属性码””,其中“属性”表示本内容消息的性质,其后的“XX”为产生内容消息的所有者,“属性码”是具体属性特征说明。
9.内容的第三种组成形式是“状态_XX=“状态码”属性_XX=“属性码””,它是特征7和8两部分内容的叠加,该种形式的内容既有状态部分又有属性部分。
10.错误消息和内容消息属于同一个层次,它们都位于事件消息层次之内。当有错误发生时,产生错误消息。错误消息的组成形式是“错误_XX=“错误码””。其中“错误”表示本消息的性质,其后的“XX”为产生错误消息的所有者,“错误码”是具体错误的特征说明。
根据表1所示的消息结构模板以及上述特征7-9,下面给出三个消息结构的具体实施例:
结构1:内容为状态码(实例1)
主控计算机命令(发出)
<命令_真空传感器_连接/>
传输计算机(应答)失败情况
<事件_真空传感器_连接>
<状态_真空传感器_连接=“2030”/>注释:“2030”表示正在进行连接
<错误_真空传感器_连接=“5010”/>注释:“5010”表示连接失败,原因端
口错误
</事件_真空传感器_连接>
主控计算机命令(发出)
<命令_真空传感器_连接/>
传输计算机(应答)成功情况
<事件_真空传感器_连接>
<状态_真空传感器_连接=“2030”/> 注释:“2030”表示正在进行连接
<状态_真空传感器_连接=“2040”/> 注释:“2030”表示连接已经建立
</事件_真空传感器_连接>
结构2:内容为状态和属性码(实例2)
主控计算机命令(发出)
<命令_版库_获取_开锁时间 版库=“1”/> 注释:“1”指的是1号版库
传输计算机(应答)
<事件_版库_获取_开锁时间 版库=“1”>
<状态_版库_获取_开锁时间=“2050”属性_版库_获取_开锁时间=
“250”/>
</事件_版库_获取_开锁时间 版库=“1”>
注释:“2050”表示成功获取开锁时间“250”表示具体的开锁时间是250毫秒
结构3:内容为属性码(实例3)
主控计算机命令(发出)
<命令_版库_扫描 版库=“1”>
传输计算机(应答)
<事件_版库_扫描 版库=“1”>
<属性_版库_扫描=“EFFFFFFFFFFFFFFFFFFFFFFCE”/>
</事件_版库_扫描 版库=“1”>
其中“EFFFFFFFFFFFFFFFFFFFFFFCE”是相关的版库槽扫描消息
可能的数值:E=槽位空 C=槽交叉 F=槽占位
由上述实例可知,根据内容的结构形式不同,消息结构具有三种形式,分别对应上述结构1、结构2以及结构3,分别具有不同的应用场合。有些命令下发后,返回的只有状态码,反映命令执行过程中的事务的状态变迁情况,如运动定位命令,该命令执行时包含运动开始-加速-匀速运动-减速-停止运动5个状态,这类命令就适合套用结构1的格式。部分命令关心的只是定量的数量值(属性),如版库扫描指令,关心的只是版库的相应槽位的具体内容,这类命令就适合于套用结构3的格式。同时需要状态,属性的消息就需要套用结构2的格式。
主控计算机与传输计算机之间的消息交互采用的消息结构具有上述三种形式,且结构与结构之间能互相嵌套,形成更为复杂的消息结构。表2是主控计算机和传输计算机采用嵌套的消息结构进行复杂信息交互的实例。
表2 主控计算机与传输计算机之间的信息交互
主控计算机(命令发出) | 传输计算机(消息应答) |
<命令_真空传感器_连接/> | |
<事件_真空传感器_连接><状态_真空传感器_连接=“正在连接中”/><状态_真空传感器_连接=“连接建立”/></事件_真空传感器_连接> | |
<命令_机械手_初始化/> | |
<事件_机械手_初始化><状态_机械手_初始化=“正在初始化”/><事件_机械手_连接><状态_机械手_连接=“正在连接中”/><状态_机械手_连接=“连接建立”/></事件_机械手_连接><事件_机械手_回零><状态_机械手_回零=“正在回零中”/><状态_机械手_回零=“回到零位”/></事件_机械手_回零><事件_直线导轨_连接><状态_直线导轨_连接=“正在连接中”/><状态_直线导轨_连接=“连接建立”/></事件直线导轨_连接><事件_直线导轨_回零><状态_直线导轨_回零=“正在回零中”/><状态_直线导轨_回零=“回到零位”/><事件_直线导轨_回零><状态_机械手_初始化=“初始化成功”/></事件_机械手_初始化> | |
<命令_版库_连接版库=“1号版库”/> | |
<事件_版库_连接版库=“1号版库”><状态_版库_连接=“正在连接中”/><状态_版库_连接=“连接建立”/></事件_版库_连接版库=“1号版库”> | |
<命令_版库_初始化 版库=“1号版库”/> | |
<事件_版库_初始化版库=“1号版库”><状态_版库_初始化=“盒盖关闭”/><状态_版库_初始化=“版底锁”/><状态_版库_初始化=“版盒开锁”/><状态_版库_初始化=“版盒上升”/></事件_版库_初始化版库=“1号版库”> |
传输系统的设备、执行部件发生状态变更时,还应当具有主动上发消息通知上位主控计算机的功能。在此种情况下产生的消息并不应对主控计算机的下发命令,而是由控制底层设备、执行部件的传输计算机自动产生的告示消息。该告示消息的通用格式如表3所示。
表3 告示消息通用格式
表3所示的告示信息的通用模板具有如下特征:
1.告示消息字符串位于尖括号内。
2.告示的第一种形式是“告示_错误XX=“错误码””,其中“告示_错误”表示本消息的性质,其后的“XX”为消息的所有者,“错误码”是具体告示错误特征说明。
3.告示的第二种形式是“告示_事件XX=“状态码””,其中“告示_事件”表示本消息的性质,其后的“XX”为消息的所有者,“状态码”是具体告示事件特征说明。根据表3提供的通用格式,该告示消息的实例如下:
<告示_错误 机械手=“3010”> “3010”含义:机械手掉电
<告示_错误 机械手=“3020”> “3020”含义:机械手紧停按钮被按下
<告示_事件 机械手=“2020”> “2020”含义:机械手速度变化
<告示_事件 机械手=“2020”> “2100”含义:机械手运行模式变化
从上面四个实例中可以明显看出,告示消息是由传输计算机控制的设备、执行部件自动产生的,而非主控计算机下发命令后的应答。告示消息的产生是随时随地产生的,具有不可预测性,但这些设备、执行部件的实时消息对主控计算机又非常重要,因此采用上述告示消息可以很好的实现传输计算机和主控计算机的双向交互通讯。
分析表2可知,传输系统的执行部件:机械手、版库、真空传感器包含大量运动,每一执行部件执行每一命令具有多个应答消息,需要一定的时间,如机械手初始化5分钟,1条命令对应20条反馈消息;版库初始化3分钟,1条命令对应6条反馈消息;扫描器件初始化2分钟,1条命令对应4条反馈消息(未在表2中显示)。如果采用接收一条完整命令应答消息后,再执行下一条命令,那么整个初始化所需要的时间可长达16分钟。若采用连续发送命令,而把接收反馈消息过程分离出来处理,则整个初始化过程仅需要5分钟。为了使各个执行部件能够并发执行,并且能够按照复杂的工艺流程实现动作序列间的配合,需要提供一种消息解析方法以对多个执行部件混杂消息进行并发处理。另外,从表2中可知,一条命令对应数条应答消息,且每一命令对应应答消息的数量和类型均不一样。一条命令下发后,需要判断收回的应答消息是否完整、匹配,为此,还设计了一套应用到上述消息解析方法中的哈西表技术,在本发明的消息解析过程,通过哈西表技术命令的反馈的应答消息是否完整和匹配。考虑到传输系统命令的多样性和扩展性,本发明还提供了用于硅片传输系统的数据文件模板,如表4所示,该表考虑的是正常执行流程过程中产生的消息序列。
表4 数据文件的模板
表4所示的数据文件具有如下特征:
1.一条命令行在数据文件模板对应一项,每一项由四个部分组成:注释语句、命令语句字符串、状态码、结束标志。
2.注释语句以#开头,对命令文字进行注释;#是注释识别码标志,用于程序的帮助文件;注释语句是命令的可选部分,有些是不需要该注释语句的。
3.紧接注释语句下面的是一行命令语句字符串,在形成哈西表的时候,该部分作为关键字。
4.关键字下面的是状态码,状态码可能占多行,由具体的消息内容所决定,状态码缩进二格,表示附属于命令语句字符串。
5.状态码下面是结束标志,在本实施例中设计成$标识符,哈西表数据文件建立时,通过此标识符,判断一项的结束。
根据表4提供的数据文件模板,提供一个数据文件的具体实例,表示如下:
#注释语句
真空传感器_连接
正在连接中
连接建立
$
#注释语句
机械手_初始化
正在初始化
初始化成功
$
机械手_连接
正在连接中
连接建立
$
从该具体实例可知,命令语句字符串(即建立哈西表时候的关键字)和状态码具有不同的格式。命令语句字符串采用是“执行部件_动作”的形式,而状态码采用的是方便程序处理诸如“0010”这样数字字符串形式。
图3是形成哈西表的流程图。以下部分结合图3描述哈西表的形成过程,首先打开数据文件进行读取,判断数据文件是否结束,若没有结束,建立该项命令的状态码数组。然后获取命令字标识符即数据文件的命令语句字符串,其作为哈西表的关键字,该关键字是主控计算机下发命令的特征码部分,例如:“<命令_真空传感器_连接/>”的特征码部分是“真空传感器_连接”,也就是说“真空传感器_连接”是哈西表对应下发命令“<命令_真空传感器_连接/>”的关键字。注意,#开头的行是注释行,仅仅起帮助文件的作用,在建立哈西表的时候被忽略。接下来继续判断该项命令是否读取完毕,即判断是否读取到状态结束标志$,将若读取到,将获得的命令标识符以及对应该命令标识符的状态码数组加入散列表内,完成哈西表的建立。图3中的命令标识符就是指表4中的命令语句字符串,也是形成的哈西表的关键字,对应的状态码数组就是该关键字的值。
上面提到,本发明的并发控制方法中使用的消息解析方法可以对混杂的消息进行并发处理。在解析过程中,就是利用上述建立的哈西表来确认应答消息是否完整和匹配的。以下结合图4对该消息解析方法进行详细描述:
主控计算机具有一个存放各种消息的主消息接收队列,传输计算机将传输系统设备、执行部件的应答消息反馈给主控计算机,且放入上述主消息接收队列;
首先判断主消息接收队列中是否存放有消息,若有,继续判断得到是否是错误码;反之,解析终止;
若得到的不是错误码,则继续判断消息内容是否含状态码和属性码,反之加入错误队列:
若既含状态码又含属性码,将状态码加入状态队列,设置属性码;
若只含状态码,将状态码加入状态队列;
若只含属性码,设置属性码;
继续判断是否有新消息加入主消息接收队列中,若有,循环执行上面步骤;若无,逐项比较状态队列中的每一项值(状态码)和哈西表中对应的散列表中的关键字(命令字符串)的值(哈西表中的状态码数组),判断出该消息是对主控计算机那个下发命令的应答消息。
图4显示的消息解析方法可以对接收对列中的混杂消息进行并发处理,使得主控计算机对传输系统的多个执行部件的并发控制成为可能。主控计算机的下发命令过程和接收传输计算机反馈应答消息过程相互独立,利用图4的解析方法对混杂消息提取解析,实现对多个执行部件的并发控制。以下部分举例说明利用上述消息解析方法实现对多个执行部件并发控制的方法。本实施例中,需要并发控制的执行部件是版库、传感器、机械手。主控计算机对上述三个执行部件下发的三条命令分别是:版库装载命令、硅片扫描命令、机械手装载命令,传输计算机反馈的应答消息格式如下:
<命令_版库_装载版库=“1号版库”/>
01<事件_版库_装载 版库=“1号版库”>
02<状态_版库_装载=“状态码1”/>
03<状态_版库_装载=“状态码2”/>
04</事件_版库_装载 版库=“1号版库”>
<命令_硅片_扫描版库=“1号版库”/>
11<事件_硅片_扫描 版库=“1号版库”>
12<状态_硅片_扫描=“状态码”/>
13</事件_硅片_扫描 版库=“1号版库”>
<命令_机械手_传输源=“位置号”目的=“位置号”/>
21<事件_机械手_传输 源=“位置号”目的=“位置号”>
22<状态_机械手_传输=“状态码1”/>
23<状态_机械手_传输=“状态码2”/>
24<状态_机械手_传输=“状态码3”/>
25</事件_机械手_传输源=“位置号”目的=“位置号”>
为方便描述,对每条命令对应的应答消息分别标上号。第一条版库装载命令对应的应答码4条,标号01-04;第二条硅片扫描命令对应的应答码3条,标号11-13;第三条机械手传输命令对应的应答码5条,标号21-25。连续下发上述三条命令,传输计算机的服务器端反馈上来的消息顺序可能如下:01、02、11、21、12、22、13、03、23、04、24、25。
应用该并发控制方法的传输系统中的主控计算机除了包括上述主消息接收队列,还包括若干个对应每个执行部件的发送队列、接收子队列以及若干收发线程。请参阅图5,该控制方法包括如下步骤:
命令的下发过程,结合图4:
1.启动主控计算机内的三个发送线程:机械手队列发送线程、版库队列发送线程、传感器队列发送线程。
2.请求控制命令发送。
3.根据命令关键字:例如“<命令_真空传感器_连接/>”的关键字是“真空传感器_连接”,分类加入相应执行部件的命令发送队列:机械手队列、版库队列、传感器队列。
4.是机械手命令,判断前一个机械手命令是否执行完毕,是,即能继续发送,否,线程挂起;是版库命令,判断前一个版库命令是否执行完毕,是,即能继续发送,否,线程挂起;是传感器命令,判断前一个传感器命令是否执行完毕,是,即能继续发送,否,线程挂起。
5.从机械手队列中取命令;从版库队列中取命令;从传感器队列中取命令。
6.向机械手发送命令;向版库发送命令;向传感器发送命令。
传输计算机的服务器端的将其控制的执行部件的应答消息反馈给主控计算机,混杂消息的提取解析过程如下:
1.启动主控计算机的接收线程,将接收的所有应答消息按顺序加入主控计算机的主消息接收队列中。
2.收到的应答消息序列:01,02,11,21,12,22,13,03,23,04,24,25。
3.提取01号消息,经哈西表比较后,确认为版库装载事件,入版库装载命令子消息接收队列。
4.提取02号消息,经哈西表比较后,确认为版库装载命令状态码1应答,入版库装载命令子消息接收队列。
5.提取11号消息,经哈西表比较后,确认为硅片扫描事件,入硅片扫描命令子消息接收队列。
6.提取21号消息,经哈西表比较后,确认为机械手传输事件,入机械手传输命令子消息接收队列。
7.提取12号消息,经哈西表比较后,确认为硅片扫描状态码应答,入硅片扫描命令子消息接收队列。
8.提取22号消息,经哈西表比较后,确认为机械手传输状态码1应答,入机械手传输命令子消息接收队列。
9.提取13号消息,经哈西表比较后,确认为硅片扫描事件结束应答,硅片扫描命令子消息接收队列接收完整,硅片扫描命令执行完毕。
10.提取03号消息,经哈西表比较后,确认为版库装载命令状态码2应答,入版库装载命令子消息接收队列。
11.提取23号消息,经哈西表比较后,确认为机械手传输状态码2应答,入机械手传输命令子消息接收队列。
12.提取04号消息,经哈西表比较后,确认为版库装载事件结束应答,版库装载命令子消息接收队列接收完整,版库装载命令执行完毕。
13.提取24号消息,经哈西表比较后,确认为机械手传输状态码3应答,入机械手传输命令子消息接收队列。
14.提取25号消息,经哈西表比较后,确认为机械手传输事件结束应答,机械手传输命令子消息接收队列接收完整,机械手传输命令执行完毕。
从上述消息下发过程和混杂消息提取解析过程分析可知,硅片传输系统的硬件执行部件不管是三个还是更多个,都可以采用哈西表技术,通过主控计算机上设置多个发送队列、一个应答消息队列以及多个相关的收发线程,实现对硬件多个执行部件的并行控制。本发明提供的对多个执行部件并行控制方法,有效节约了传输系统硅片传输的时间,提高生产效率。
Claims (6)
1.一种用于硅片传输系统的并发控制方法,所述硅片传输系统包括下发命令的主控计算机以及控制数个执行部件的传输计算机,其特征在于,所述主控计算机包括一个主消息接收队列、数个对应执行部件的发送队列和数个对应执行部件的子消息接收队列,该并发控制方法包括如下步骤:
a.主控计算机对数个执行部件连续下发命令,根据下发命令的关键字,将命令分类,分别加入对应执行部件的发送队列中;
b.判断每一执行部件的前一个命令是否执行完毕,若是,执行步骤c,若否,将当前命令的发送线程挂起;
c.从每一执行部件的发送队列中取出命令,向对应的执行部件发送命令;
d.传输计算机将下发命令的所有应答消息反馈给主控计算机,依次加入所述主消息接收队列内;
e.对主消息接收队列中的应答消息进行提取解析,将同一执行部件的应答消息放入对应的子消息接收队列内。
2.如权利要求1所述的并发控制方法,其特征在于:所述下发命令使用的数据文件包括命令语句字符串、数行状态码以及结束标志。
3.如权利要求2所述的并发控制方法,其特征在于:所述数据文件还包括用于对下发命令进行注释的注释行。
4.如权利要求2所述的并发控制方法,其特征在于:所述状态码采用的是数字字符串形式。
5.如权利要求2所述的并发控制方法,其特征在于:步骤e是利用哈西表对主消息接收队列中的应答消息进行提取解析,该哈西表的建立过程包括如下步骤:
打开下发命令的数据文件进行读取,建立状态码数组;
获取命令语句字符串,作为哈西表的关键字,获取状态码加入对应的状态码数组,作为哈西表关键字的值;
将所有命令语句字符串以及对应的状态码数组加入散列表,形成哈西表。
6.如权利要求5所述的并发控制方法,其特征在于:步骤e中通过哈西表对应答消息进行提取解析的过程包括如下步骤:
判断主消息接收队列中是否有应答消息,若有,继续判断得到是否是错误码;
若得到的是错误码,加入错误队列,反之,继续判断应答消息的内容是否含状态码和属性码:
若既含状态码又含属性码,将状态码加入状态队列,设置属性码;
若只含状态码,将状态码加入状态队列;
若只含属性码,设置属性码;
判断是否有新消息加入主消息接收队列中,若有,循环执行上面步骤;若无,逐项比较状态队列中的状态码和哈西表的散列表中对应关键字的值,将针对同一执行部件的应答消息放入对应的子消息接收队列中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007100472375A CN100504692C (zh) | 2007-10-19 | 2007-10-19 | 用于硅片传输系统的并发控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007100472375A CN100504692C (zh) | 2007-10-19 | 2007-10-19 | 用于硅片传输系统的并发控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101169651A CN101169651A (zh) | 2008-04-30 |
CN100504692C true CN100504692C (zh) | 2009-06-24 |
Family
ID=39390299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007100472375A Active CN100504692C (zh) | 2007-10-19 | 2007-10-19 | 用于硅片传输系统的并发控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100504692C (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102692828B (zh) * | 2011-03-25 | 2014-08-20 | 上海微电子装备有限公司 | 光刻设备对准方法 |
DE102013218132A1 (de) * | 2013-09-11 | 2015-03-12 | Carl Zeiss Smt Gmbh | Kollektor |
CN103747034B (zh) * | 2013-12-20 | 2017-12-29 | 华为技术有限公司 | 一种终端的状态机状态转换的方法及装置 |
CN104536407A (zh) * | 2014-12-17 | 2015-04-22 | 中国南方电网有限责任公司调峰调频发电公司 | 一种向iec61850智能装置下发并发控制命令的方法 |
CN105404100B (zh) * | 2015-12-21 | 2017-05-31 | 中国科学院长春光学精密机械与物理研究所 | 一种曝光系统中曝光剂量的监控方法、曝光方法及其曝光系统 |
CN113395358B (zh) * | 2021-08-16 | 2021-11-05 | 贝壳找房(北京)科技有限公司 | 网络请求的执行方法与执行系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6294981B1 (en) * | 1996-08-14 | 2001-09-25 | Hermos Gesellschft Fur Technische Informik Mbh | Transponder reading device and also control system for controlling the handling of transponder-bearing objects by means of transponder reading devices |
CN2743967Y (zh) * | 2004-06-29 | 2005-11-30 | 西安希朗材料科技有限公司 | 传输承载晶片的高纯碳化硅弧形部件 |
EP1393523B1 (en) * | 2001-05-17 | 2006-05-10 | Axalto S.A. | Method and chip card for management of cookie type data files |
CN1848398A (zh) * | 2005-12-09 | 2006-10-18 | 北京圆合电子技术有限责任公司 | 具有视觉传感器的硅片传输系统及传输方法 |
-
2007
- 2007-10-19 CN CNB2007100472375A patent/CN100504692C/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6294981B1 (en) * | 1996-08-14 | 2001-09-25 | Hermos Gesellschft Fur Technische Informik Mbh | Transponder reading device and also control system for controlling the handling of transponder-bearing objects by means of transponder reading devices |
EP1393523B1 (en) * | 2001-05-17 | 2006-05-10 | Axalto S.A. | Method and chip card for management of cookie type data files |
CN2743967Y (zh) * | 2004-06-29 | 2005-11-30 | 西安希朗材料科技有限公司 | 传输承载晶片的高纯碳化硅弧形部件 |
CN1848398A (zh) * | 2005-12-09 | 2006-10-18 | 北京圆合电子技术有限责任公司 | 具有视觉传感器的硅片传输系统及传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101169651A (zh) | 2008-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100504692C (zh) | 用于硅片传输系统的并发控制方法 | |
US8086649B1 (en) | Incremental association of metadata to production data | |
CN101821709B (zh) | 用于工作流生成、调度和/或执行的系统、方法和图形用户界面 | |
US20190303779A1 (en) | Digital worker management system | |
CN102375731B (zh) | 一种免编码集成应用软件平台系统 | |
US8166130B2 (en) | Methods and systems for exchanging data between a command and control information system and an enterprise resource planning system | |
CN106022007B (zh) | 面向生物组学大数据计算的云平台系统及方法 | |
CN103123466B (zh) | 实现与控制设备相关联的工程单位转换 | |
CN102004950A (zh) | 在工业过程控制环境中记录和跟踪非趋势生产数据和事件 | |
US20180165386A1 (en) | Chaining analytic models in tenant-specific space for a cloud-based architecture | |
Wang et al. | Fundamental technology for RFID-based supervisory control of shop floor production system | |
US7113979B1 (en) | System, method and article of manufacture for enhancing electronic messages | |
CN102981823A (zh) | 一种领域驱动开发插件系统 | |
CN102243495A (zh) | 为isa-95标准设计的电子工作指令 | |
CN103970900B (zh) | 基于工业现场的多维交叉数据柔性管理方法及系统 | |
KR101986890B1 (ko) | 스마트공장 검색을 위한 정보 등록 및 온톨로지 모델링 방법 및 장치 | |
EP1617326A1 (en) | Technique for handling hierarchical application data | |
CN101158866A (zh) | 用于硅片传输系统的服务器架构以及信息交换方法 | |
CN109951376B (zh) | 一种即时通讯软件信息采集方法、装置、系统及存储介质 | |
CN102541647A (zh) | 一种软件集成过程中的可执行组件功能外部调用方法 | |
Alshawi et al. | An expert system to assist in generating and scheduling construction activities | |
CN107145368A (zh) | 一种企业系统间的数据交互方法及系统 | |
Papaioannou et al. | Mobile agent technology in support of sales order processing in the virtual enterprise | |
CN1791854B (zh) | 信息处理系统和信息处理方法 | |
CN102033753A (zh) | 基于soa的三维家具协同设计方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: 201203 Zhangjiang High Tech Park, Shanghai, Zhang Dong Road, No. 1525 Co-patentee after: Shanghai Micro And High Precision Mechine Engineering Co., Ltd. Patentee after: Shanghai microelectronics equipment (Group) Limited by Share Ltd Address before: 201203 Zhangjiang High Tech Park, Shanghai, Zhang Dong Road, No. 1525 Co-patentee before: Shanghai Micro And High Precision Mechine Engineering Co., Ltd. Patentee before: Shanghai Micro Electronics Equipment Co., Ltd. |