半导体工艺设备数据采集系统和方法与流程

文档序号:28108853发布日期:2021-12-22 13:42阅读:478来源:国知局
半导体工艺设备数据采集系统和方法与流程

1.本技术涉及半导体装备技术领域,具体涉及一种半导体工艺设备数据采集系统和方法。


背景技术:

2.基于semi interfacea标准的eda(equipment data acquisition,设备数据采集)项目采用的是wcf(windows communication foundation,windows通信基础)通信,绑定协议使用的是nettcpbinding协议(通过tcp协议进行通信)。wcf(windows communication foundation,windows通信基础)是基于windows平台下开发和部署服务的sdk,是由微软开发的一系列支持数据通信的应用程序框架,整合了原有的windows通讯的.net remoting、webservice、socket的机制,并融合有http和ftp的相关技术。其统一的程序开发模型,几乎有.net framework提供的所有的通信方法,对于数据通信提供了最基本最有弹性的支持,是windows平台上开发分布式应用最佳的实践方式。
3.eda项目可以包括设备数据采集eda服务器、eda终端和至少一个半导体工艺设备,各个半导体工艺设备上均安装有集簇设备控制程序ctc,其中eda服务器从半导体工艺设备采集所需数据时,通常采用对象传递数据,例如:如果有一个字符串string类型的数据值为“我是最新string类型的数据”需要从半导体工艺设备中的ctc传输至eda服务器,那么ctc将直接将string类型的数据值反馈至eda服务器,eda服务器直接接收到string类型的数据。这一数据采集过程容易导致数据传输效率低。


技术实现要素:

4.鉴于此,本技术提供一种半导体工艺设备数据采集系统和方法,以解决采用对象传送容易导致数据传输效率低的问题。
5.本技术提供一种半导体工艺设备数据采集系统,包括设备数据采集eda服务器、至少一个eda终端和至少一个半导体工艺设备,所述至少一个半导体工艺设备上均安装有集簇设备控制程序ctc;
6.所述eda终端用于基于用户的操作生成数据采集计划dcp,并将所述dcp和所述dcp对应的激活指令发送至所述eda服务器;
7.所述eda服务器用于采用所述激活指令激活所述dcp,基于所述dcp确定其对应的半导体工艺设备和采集数据目标,并将所述采集数据目标发送至所述dcp对应的半导体工艺设备;
8.所述半导体工艺设备中的所述ctc用于根据所述采集数据目标采集设备数据,将采集到的所述设备数据转换为比特字节流,并将所述比特字节流发送至所述eda服务器。
9.可选地,所述ctc用于将所述设备数据组织为数据对象,再基于预设的数据转换动态库将所述数据对象转换为所述比特字节流。
10.可选地,所述eda服务器还用于基于预设的所述数据转换动态库将比特字节流转
换为所述数据对象。
11.可选地,所述数据转换动态库包括对象数据类型和对象数据转换类;
12.所述对象数据类型枚举有所述数据对象的数据类型;
13.所述对象数据转换类可将各个数据类型的数据对象转换为比特字节流以及将比特字节流转换为不同数据类型的数据对象的数据转换方法和多个用于所述数据转换方法中的属性字段。
14.可选地,所述数据类型包括以下类型中的至少一种:无符号整数、有符号整数、布尔型变量、二进制、单精度浮点型、双精度浮点型、字符串、枚举类型、列表和任意类型。
15.可选地,所述属性字段包括:表征所述数据对象是否为数组类型的标志;表征取所述数据类型中一种类型的取值标志;和/或,所述数据对象所存储的值;
16.所述数据转换方法包括:用于将所述设备数据组织为所述数据对象的创建函数;用于将所述数据对象转换为所述比特字节流的写函数;用于将所述比特字节流转换为所述数据对象的读函数;用于判断所述数据对象是否为列表的列表格式判断函数;用于获取所述数据对象中指定索引处的数据值的索引函数;和/或,至少一个用于在组织所述数据对象时初始化所述数据对象的构造函数。
17.本技术还提供一种半导体工艺设备数据采集方法,包括:
18.eda终端基于用户的操作生成数据采集计划dcp,并将所述dcp和所述dcp对应的激活指令发送至所述eda服务器;
19.所述eda服务器采用所述激活指令激活所述dcp,基于所述dcp确定其对应的半导体工艺设备和采集数据目标,并将所述采集数据目标发送至所述dcp对应的半导体工艺设备;
20.所述半导体工艺设备上安装的集簇设备控制程序ctc根据所述采集数据目标采集设备数据,将采集到的所述设备数据转换为比特字节流,并将所述比特字节流发送至所述eda服务器。
21.可选地,所述将采集到的所述设备数据转换为比特字节流包括:
22.将所述设备数据组织为数据对象,再基于预设的数据转换动态库将所述数据对象转换为所述比特字节流。
23.可选地,上述半导体工艺设备数据采集方法,还包括:
24.所述eda服务器基于预设的所述数据转换动态库将比特字节流转换为所述数据对象。
25.可选地,所述数据转换动态库包括对象数据类型和对象数据转换类;
26.所述对象数据类型枚举有所述数据对象的数据类型;
27.所述对象数据转换类可将各个数据类型的数据对象转换为比特字节流以及将比特字节流转换为不同数据类型的数据对象的数据转换方法和多个用于所述数据转换方法中的属性字段。
28.上述半导体工艺设备数据采集系统和方法中,ctc可以将采集到的设备数据转换为比特字节流,向eda服务器传输该比特字节流,可以提高半导体工艺设备向eda服务器传输设备数据的效率,减轻数据传输过程分别对半导体工艺设备和eda服务器的cpu造成的压力,提高各端cpu性能,提升相应半导体工艺设备数据采集系统的数据采集能力。
29.此外,ctc还可以将设备数据组织为数据对象,再基于数据转换动态库将数据对象转换为比特字节流进行传输,使eda服务器基于上述数据转换动态库将比特字节流转换为数据对象,以获取设备数据,可以提高对应数据传输过程中点的安全性,从而提高相应半导体工艺设备数据采集系统的安全性能。
附图说明
30.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
31.图1a是eda项目对应的系统结构图;
32.图1b是现有方案的对象传输示意图;
33.图2是本技术一实施例的半导体工艺设备数据采集系统结构示意图;
34.图3是本技术一实施例的数据传输过程示意图;
35.图4是本技术一实施例的半导体工艺设备数据采集方法流程示意图。
具体实施方式
36.eda项目包括eda服务器、至少一个eda终端和至少一个半导体工艺设备,各个半导体工艺设备上均安装有集簇设备控制程序ctc。eda终端可以根据eda服务器提供的接口来访问和定义需要采集的数据。eda服务器的数据需要从对应的ctc获取。eda服务器、eda终端和设有ctc的半导体工艺设备对应的系统结构图可以参加图1a所示,从ctc获取数据的基本步骤流程包括:(1)ctc启动;(2)eda服务器连接到对应的ctc;(3)eda终端选择连接eda服务器已经启动的ctc;(4)eda终端根据semi interfacea标准定义需要采集的设备dcp(data collection plan,数据采集计划),并将dcp和对应的激活指令发送给eda服务器;(5)eda服务器接收到eda终端订制的对应ctc的dcp,激活该dcp以获取要采集的数据;(6)eda服务器向ctc发送要采集的数据;(7)ctc向eda服务器反馈相应的设备数据;(8)eda服务器反馈eda终端采集到的对应设备数据。
37.其中eda服务器与ctc通信时,通常如图1b所示直接采用对象传递数据,即设备端直接将获取的各种当前类型的数据以对象的形式发送给eda服务器;例如:如果有一个字符串string类型的数据值为“我是来自ctc设备端的最新string类型的数据”,那么设备端将直接将string类型的数据值反馈给eda服务器,eda服务器直接接收到string类型的数据。上述eda服务器与ctc之间的数据采集方案容易影响相应数据传送速率和cpu(中央处理器)性能。比如传送4000个data/100ms平均需要2个cpu。但随着技术的发展,需要实现至少10hz的采集能力,即每100毫秒采集1000个数据,甚至更高的采集能力,这时就要考虑cpu的性能及传输速率,因此亟需一个方案来解决的eda服务器与ctc之间数据传输性能和速率问题。
38.针对eda服务器与ctc之间数据传输性能和速率问题,本技术提供一种半导体工艺设备数据采集系统和方法,其能够提高eda服务器与ctc之间数据传输速率,改善传输性能。
39.下面结合附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术一部分实施例,而非全部实施例。基于本技术中的实施例,本领域技
术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。在不冲突的情况下,下述各个实施例及其技术特征可以相互组合。
40.本技术第一方面提供一种半导体工艺设备数据采集系统,参考图2所示,该半导体工艺设备数据采集系统包括设备数据采集eda服务器110、至少一个eda终端120和至少一个半导体工艺设备130,所述至少一个半导体工艺设备130上均安装有集簇设备控制程序ctc;
41.所述eda终端120用于基于用户的操作生成数据采集计划dcp,并将所述dcp和所述dcp对应的激活指令发送至所述eda服务器110;
42.所述eda服务器110用于采用激活指令激活对应的dcp,基于所述dcp确定其对应的半导体工艺设备130和采集数据目标,并将所述采集数据目标发送至所述dcp对应的半导体工艺设备130;
43.所述半导体工艺设备130中的所述ctc用于根据所述采集数据目标采集设备数据,将采集到的所述设备数据转换为比特字节流,并将所述比特字节流发送至所述eda服务器110。
44.可选地,上述eda终端120还可以向eda服务器110发送取消激活dcp的指令,以使eda服务器110依据取消激活dcp的指令取消当前激活相应dcp的操作,避免后续依据不需要激活的dcp进行相关数据采集,可以保证数据采集工作的有效性。可选地,上述eda终端120还可以向eda服务器110发送删除dcp的指令,以使eda服务器110依据删除dcp的指令删除对应的dcp,保证所存dcp的有效性。
45.上述半导体工艺设备数据采集系统中,半导体工艺设备130中的ctc可以将采集到的设备数据转换为比特字节流,再将比特字节流发送至eda服务器110。由于二进制编码格式通过tcp、ipc或msmq可以获得最佳的性能,所以上述方案可以提高半导体工艺设备130向eda服务器110传输设备数据的效率,从而提高半导体工艺设备数据采集系统的数据采集能力。
46.在一个实施例中,上述ctc用于先将设备数据组织为数据对象,再基于预设的数据转换动态库将所述数据对象转换为所述比特字节流。
47.参考图3所示,本实施例中,ctc可以先将设备数据组织为数据对象,从而不要对现有的系统架构和功能进行大幅改动,只需要增加一个自定义的数据转换动态库(可以称为nvaluelib动态库),用于将数据对象转换为比特字节流即可。另外,将数据对象转换为比特字节流,即便在传输过程中所传输的比特字节流被泄露,也只能得到比特字节流对应的二进制数据(以0和1为主的一串编码数据),而难以获取需要采集的设备数据,可以提高数据采集过程中的安全性。
48.对应地,上述eda服务器还用于基于预设的所述数据转换动态库将比特字节流转换为数据对象,以依据该数据对象获取对应的设备数据。可选地,上述eda终端还可以获取eda服务器采集的设备数据,以采用这些设备数据响应用户操作。
49.可选地,上述数据转换动态库可供ctc调用,以将设备数据组织为数据对象后,再将数据对象转换为比特字节流;还可供eda服务器调用,以将比特字节流转换为数据对象,获取数据对象对应的设备数据,以使eda服务器可以准确采集所需的设备数据。
50.在一个示例中,上述数据转换动态库可以包括对象数据类型(可以称为nvaluetype)和对象数据转换类(可以称为nvalue类);其中,上述对象数据类型枚举有数据
对象的数据类型;上述对象数据转换类包括可将各个数据类型的数据对象转换为比特字节流以及将比特字节流转换为不同数据类型的数据对象的数据转换方法和多个用于所述数据转换方法中的属性字段。
51.具体地,数据类型可以包括以下类型中的至少一种:无符号整数、有符号整数、布尔型变量、二进制、单精度浮点型、双精度浮点型、字符串、枚举类型、列表和任意类型。
52.其中,无符号整数可以包括8位无符号整数、16位无符号整数、32位无符号整数和64位无符号整数;有符号整数可以包括8位有符号整数、16位有符号整数、32位有符号整数和64位有符号整数;枚举类型可以包括相同类型的一组数据,如包括维修保养状态、在线状态和离线状态这些均表征设备状态的一组数据;列表可以包括多个数据;任意类型可以包括属于不同类型的一组数据,如job(制程)操作包括的jobid(制程编码)、jobname(制程名称)和job状态这些属于不同类型的一组数据,其中jobid为整形,jobname为字符串型,job状态可以为枚举类型。
53.可选地,各种数据类型的符号、含义和相关特征可以如下所示:
54.u1:byte,8位无符号整数,在内存中占用1个字节(一个字节存储8位);
55.u2:uint16(ushort),即unsigned short,16位无符号整数;
56.u4:uint32,即32位无符号整数;
57.u8:uint64,即64位无符号整数;
58.i1:sbyte,即8位有符号整数,取值范围

128~127;
59.i2:int16(short),即16位有符号整数;
60.i4:int32(int),即32位有符号整数;
61.i8:int64(long),即64位有符号整数;
62.bo:bool,即布尔型变量,也就是逻辑型变量的定义符;
63.bi:binary,表示二进制类型;
64.f4:float,即单精度浮点型,在内存中占用4个字节,精度为7位,有效数字8位;
65.f8:double,即双精度浮点型,在内存中占8个字节,有效数字16位;
66.a:string,字符串类型;
67.w:enum,枚举类型;
68.l:list,列表类型,列表中的数据类型可以为对象数据中的任一数据类型;
69.any:任意类型。
70.具体地,上述属性字段可以包括:表征所述数据对象是否为数组类型的标志;表征取所述数据类型中一种类型的取值标志;和/或,所述数据对象所存储的值。其中,属性字段可以通过如下符号记录在数据转换方法中:
71.isarray:数据对象是否为数组类型,true——为数组类型,false——为非数组类型;
72.type:取数据类型中的一种类型。
73.value:数据对象存储的值。
74.具体地,上述数据转换方法可以包括:
75.用于将所述设备数据组织为所述数据对象的创建函数;
76.用于将所述数据对象转换为所述比特字节流的写函数;
77.用于将所述比特字节流转换为所述数据对象的读函数;
78.用于判断所述数据对象是否为列表的列表格式判断函数;
79.用于获取所述数据对象中指定索引处的数据值的索引函数;
80.和/或,至少一个用于在组织所述数据对象时初始化所述数据对象的构造函数。
81.可选地,若采用nvalue对象表征数据对象,上述创建函数可以包括第一子函数和第二子函数,第一子函数用于创建非数组类型的nvalue对象,第二子函数用于创建数组类型的nvalue对象;写函数可以包括第一级读函数和第二级读函数,第一级写函数用于将数据对象的一部分内容写为第一级流数据,调用第二级写函数将数据对象的另一部分内容写为第二级流数据,根据第一级流数据和第二级流数据确定比特字节流;读函数可以包括第一级读函数和第二级读函数,第一级读函数用于根据比特字节流转换的一部分流数据读取第一级对象内容,调用第二级读函数根据比特字节流转换的另一部分内容读取第二级对象内容,根据第一级对象内容和第二级对象内容确定数据对象;构造函数可用于在组织数据对象时初始化数据对象,包括无参构造函数、有一个参数的构造函数和有二个参数的构造函数等等。这里写函数和读函数为拆分函数,其中写函数包括第一级读函数和第二级读函数,读函数包括第一级读函数和第二级读函数,两者均包括多级函数有利于在相应的数据转换过程中进行数据结构解偶,且将具有相通功能的代码封装到同一个函数中,还便于重复调用和修改维护,可以在相应程序开发中实现函数模块化。
82.其中,上述各个函数的表达式和相关含义包括:
83.create(object value):第一子函数,根据参数value的类型,创建是非数组类型的nvalue对象;
84.create(type type,object value):第二子函数,根据参数的type和value创建数组类型的nvalue对象;
85.frombytebuffer(binaryreader br):第一级读函数,读取参数br中的数据类型和值创建nvalue对象;
86.frombytebuffer(byte[]buffer):第二级读函数,将参数buffer转换为流和特定的字符编码格式,并创建nvalue对象;
[0087]
getlistcount():列表格式判断函数,获取nvalue对象中的列表数据个数,若nvalue对象不是列表格式,则返回eda服务器;
[0088]
getlistnvalueatindex(int index):索引函数,获取nvalue对象中列表中指定索引(index)处的nvalue值,nvalue值表示数据值;
[0089]
nvalue():无参构造函数;
[0090]
nvalue(nvaluetype type):有一个参数的构造函数;
[0091]
nvalue(nvaluetype type,object value)有二个参数的构造函数;
[0092]
tobytebuffer():第一级写函数,将nvalue对象转换为byte[]格式,byte[]表示比特字节流;
[0093]
tobytebuffer(binarywriter bw):第二级写函数,将bw根据当前nvalue对象的类型和值写入到比特字节流。
[0094]
在一个示例中,以立式炉中ctc采集的a=44这一设备数据的传输过程对上述半导体工艺设备数据采集系统的部分工作过程进行说明,包括如下步骤:
[0095]
(1)ctc将设备数据:a=44,组织为数据对象,基于数据转换动态库将数据对象转换为比特字节流;具体地,确定a=44对应的数据类型,采用该数据类型对应的创建函数create(a)创建数据对象,再采用写函数tobytebuffer()将数据对象写入为byte数组,该byte数组即为对应的比特字节流;其中创建函数的实现代码可以包括:nvalue val=nvalue.create(a),写函数的实现代码可以包括:val.tobytebuffer()。
[0096]
(2)ctc将转换好的byte数组通过通信接口传输给eda服务器。
[0097]
(3)eda服务器接收到ctc传输的byte数组之后,再基于预设的数据转换动态库,将byte数组转换为数据对象,以获取设备数据a=44;这里假设获得的byte数组为data,可以采用读函数将data先转换为数据对象nvalue,根据nvalue的数据类型获得设备数据value;其中读函数的实现代码可以包括:nvalue datas=nvalue.frombytebuffer(data)。
[0098]
本示例采用比特字节流传输采集的设备数据,实现所需设备数据的采集,相对于传统方案采用对象进行传输的方式,比特字节流对应的二进制编码格式通过tcp、ipc或msmq可以获得最佳的性能,经过测试,本示例基于比特字节流的传输方式比传统传输方式的传输速度快了近10倍,极大的提高了数据在传输通道上的数据交换速率,实时减轻了相应cpu的压力。采用本技术提供的半导体工艺设备数据采集系统采集设备数据,可以实现10hz、4000个数据采集性能,使相应cpu的性能提高一倍,且ctc所在半导体工艺设备的cpu资源占用率少于2%,能够满足现场客户的需求,提升客户体验。
[0099]
以上半导体工艺设备数据采集系统,其中半导体工艺设备中的ctc可以将采集到的设备数据转换为比特字节流,向eda服务器传输该比特字节流,可以提高半导体工艺设备向eda服务器传输设备数据的效率,减轻数据传输过程分别对半导体工艺设备和eda服务器的cpu造成的压力,提高各端cpu性能,提升相应半导体工艺设备数据采集系统的数据采集能力;此外,ctc还可以将设备数据组织为数据对象,再基于数据转换动态库将数据对象转换为比特字节流进行传输,使eda服务器基于上述数据转换动态库将比特字节流转换为数据对象,以获取设备数据,在保证数据采集过程稳定性的基础上,可以提高其中数据传输过程中点的安全性,从而提高相应半导体工艺设备数据采集系统的安全性能。
[0100]
本技术在第二方面提供一种半导体工艺设备数据采集方法,参考图4所示,上述半导体工艺设备数据采集方法包括:
[0101]
s210,eda终端基于用户的操作生成数据采集计划dcp,并将所述dcp和所述dcp对应的激活指令发送至所述eda服务器;
[0102]
s220,eda服务器采用所述激活指令激活对应的dcp,基于所述dcp确定其对应的半导体工艺设备和采集数据目标,并将所述采集数据目标发送至所述dcp对应的半导体工艺设备;
[0103]
s230,半导体工艺设备上安装的集簇设备控制程序ctc根据所述采集数据目标采集设备数据,将采集到的所述设备数据转换为比特字节流,并将所述比特字节流发送至所述eda服务器。
[0104]
在一个实施例中,所述将采集到的所述设备数据转换为比特字节流包括:
[0105]
将所述设备数据组织为数据对象,再基于预设的数据转换动态库将所述数据对象转换为所述比特字节流。
[0106]
具体地,上述半导体工艺设备数据采集方法还包括:
[0107]
所述eda服务器基于预设的所述数据转换动态库将比特字节流转换为所述数据对象。
[0108]
具体地,所述数据转换动态库包括对象数据类型和对象数据转换类;
[0109]
所述对象数据类型枚举有所述数据对象的数据类型;
[0110]
所述对象数据转换类可将各个数据类型的数据对象转换为比特字节流以及将比特字节流转换为不同数据类型的数据对象的数据转换方法和多个用于所述数据转换方法中的属性字段。
[0111]
对于上述各实施提供的半导体工艺设备数据采集方法,能够应用于上述各实施提供的半导体工艺设备数据采集系统,其具有上述各实施提供的半导体工艺设备数据采集系统所具有的所有有益效果,在此不再赘述。
[0112]
尽管已经相对于一个或多个实现方式示出并描述了本技术,但是本领域技术人员基于对本说明书和附图的阅读和理解将会想到等价变型和修改。本技术包括所有这样的修改和变型,并且仅由所附权利要求的范围限制。特别地关于由上述组件执行的各种功能,用于描述这样的组件的术语旨在对应于执行所述组件的指定功能(例如其在功能上是等价的)的任意组件(除非另外指示),即使在结构上与执行本文所示的本说明书的示范性实现方式中的功能的公开结构不等同。
[0113]
即,以上所述仅为本技术的实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,例如各实施例之间技术特征的相互结合,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
[0114]
另外,对于特性相同或相似的结构元件,本技术可采用相同或者不相同的标号进行标识。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个特征。在本技术的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
[0115]
在本技术中,“示例性”一词是用来表示“用作例子、例证或说明”。本技术中被描述为“示例性”的任何一个实施例不一定被解释为比其它实施例更加优选或更加具优势。为了使本领域任何技术人员能够实现和使用本技术,本技术给出了以上描述。在以上描述中,为了解释的目的而列出了各个细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本技术。在其它实施例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本技术的描述变得晦涩。因此,本技术并非旨在限于所示的实施例,而是与符合本技术所公开的原理和特征的最广范围相一致。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1