SECS协议学习

摘抄自大佬博文:
SECS/GEM协议开发系列(二)与Host连接

1.SECS介绍

SEMI(国际半导体协会)为了方便工厂系统与设备沟通而建立的一种通信标准
SECS 是半导体设备通信标准的首字母缩略词。GEM 是指 SEMI E30 标准,它使用 SEMI E5标准中定义的消息类型的子集来描述设备行为和通信的通用模型。SECS/GEM 接口的部署通常会使用 SEMI 标准 E37 和 E37.1 指定的 TCP/IP 网络,但标准 E4 中也可使用 RS-232 串行连接。后者在较旧设备中更为常见。SEMI 标准具有速记名称及其官方标识符,因此 E4、E5 和 E37 也分别称为 SECS-I、SECS-II 和 HSMS。
在这里插入图片描述

想要真正的深入了解还需要仔细的研究SEMI的相关文档。下面列出的是主要的相关文档,有需要的可自行查阅:

SEMI E4-0699:SEMI设备通信标准1消息传送(SECS-I)
SEMI E5-0304:SEMI设备通信标准2消息内容(SECS-II)
SEMI E30-1103:通信的一般模式和SEMI设备的控制(GEM)
SEMI E39-0703:目标服务标准:概念、性能和服务
SEMI E40-0304:加工过程管理标准
SEMI E87-0304:运载管理暂行规范
SEMI E90-0304:衬底跟踪规范
SEMI E116-0703:设备运行跟踪暂行规范
SEMI E94-0702:控制工作管理暂行规范
SEMI E95-1101:设备人机界面规范

现在FAB厂使用的GEM标准主要有2套,分别是GEM200(8寸)、GEM300(12寸),对标准的要求如下:
在这里插入图片描述
其实简单一点来说GEM就是:

从工厂主机的角度来看,设备应该具有什么功能。
在什么情况下,使用哪些SECS-II 消息。
那么设备一般应该具有哪些功能?如下:

现在应该知道自己的设备需要支持哪些标准、哪些功能了?

2.SECS常用功能

2.1.设备向工厂系统报告设备状态(自动、暂停、初始化、报警,特殊事件:如门开启等)

2.2.远程控制设备(启动、停止、初始化、报价消除)

2.3.远程下载设备参数

2.4.设备向工厂系统报告报警信息

3.HSMS报文格式

在这里插入图片描述
** 前四个字节 00 00 00 0A ** 一个 4 字节无符号整数,表示其后 Message Header 加上 Message Text 总的字节数,其最小值为十字节。

3.1.报文头信息数据详解:

在这里插入图片描述

1-2:前两个字节为:会话id(设备id)十六比特无符号整数,最高位必须为零,剩下十五比特用于唯一标识一台设备。
3:(Header Byte2):流  (0x80+S编号)	对于不同类型的消息取值不同。
4:(Header Byte3):功能 (0xf) 对于不同类型的消息取值不同。
5:(PType编码格式)通常为0;表示类型(Presentation Type)为八比特无符号整数,用于枚举表示层消息类型,即消息头和消息内容是以何种方式编码的,PType 取值如下表所示:

在这里插入图片描述

6:(SType 会话类型)为八比特无符号整数,其取值类型如下表所示:

在这里插入图片描述

7-10:四字节无符号整数,用于唯一标识一次消息交互。

4.HSMS数据报文格式

在这里插入图片描述
第一个字节: 表示数据类型代码总共6位,和具体的数据长度占多少字节,1个字节最大值为255,如果后面的数据没有超过255后面两位就用 01 表示 及 01000001 十六进制表示为 41;
第一个字节后面跟几个字节长度: 根据第一个字节后面的2位决定,如果后两位为01,则代表占1个字节,如果后两位为02,则代表占2个字节(代表后面数据字节长度),上面的 hello secs 占十个字节 及 0x0A 表示(上图是 41 后面的 10是之前博主忘了转十六进制,41后面应该是 0A)
数据: 后面就是跟着实际数据

4.1.HSMS支持的数据类型

在这里插入图片描述

5.流和功能

在SECS的标准中,又将这些讯息分以不通的Stream Number 搭配不同的Function Number来表示,首先以Stream Number来区分不同的信息种类,再以Function Number来分类信息含义,Stream Number的取值范围0~127;Function Number的取值范围0~255,并以SnFm来表示,下面附上常用的Stream Function和Function Number

在这里插入图片描述

6 基本概念扫盲

6.1 连接方式

		主动连接:这个是设备软件在启动后,会主动与Host服务端进行连接。

                此时配置

                remote IP / port :Host IP/Port

                local IP / port     :Equitment IP/Port

        被动连接:设备不主动与Host连接,而是等待Host发起连接。

                此时只需要配置

                remote IP / port :Equitment IP/Port

                local IP / port     :Equitment IP/Port

6.2 超时事件设置

		T3 回复超时
                指发送指令到接收到回复指令的最大时间
                如果T3 计时器超时则取消这次会话但不断开 TCP/IP 连接,
                如果这个实体是设备,则向主机发送 SECS-II S9F9 消息。

在这里插入图片描述

        T5 连接间隔、
                指断开连接和重新连接的最小时间
                过于频繁的向一个未准备好连接的实体发起连接请求,会加重 TCP/IP 的负荷。
                因此,当一个主动模式实体发起的连接操作终止后(不论是成功结束还是被远端实体拒绝),
                该实体必须等待 T5 计时器超时后发起下一次连接请求。

在这里插入图片描述

        T6 控制指令超时时间
                控制会话超时 T6 (T6 control transaction timeout)表示一个控制会话所能开启的最长时间,
                超过该时间就认为这次通信失败。当发送<xx>.req 控制消失时 T6计时器开启,
                若在 T6 超时之前收到相应的<xx>.rsp 消息则计时器关闭,否则控制消息的发起者将关闭这次会话,
                并认为出现一个通信故障

在这里插入图片描述

        T7 连接超时
                指TCP/IP连接成功后到连接选择之间的最大时间,也就是发送stype=1 到收到stype=2 回复的这段时间
                表示当建立了 TCP/IP 连接之后通信处于 Not Select 状态的最长时间,通信必须在该时间完成 select 操作,否则将会断开 TCP/IP 连接。

在这里插入图片描述

        T8 接收超时
                网络字符超时 T8 (T8 network intercharacter timeout)表示成功接收到单个HSMS 消息的字符之间的最大时间间隔。
                鉴于 TCP/IP 是面向流的通信协议,因此一个 HSMS 通信消息可能被分为若干个 TCP/IP 消息进行传输,
                若 T8 计时器超时则认为这次传输失败。

在这里插入图片描述

6.3 在线,离线,连接,未连接

		在线:设备与Host主机已对接成功,且设备在host的服务端状态为在线,可以接收Host命令。

        离线:设备在host服务端设置的状态是离线,但连接是正常的。设备处于离线状态只响应S1F17和S1F13指令 其他指令都会返回设备离线响应

        连接:设备与Host主机已对接成功。

        未连接:设备与Host主机还未连接。

6.4 基本概念

		DeviceID:用于Host识别的设备号。

        CEID:event ID 即事件ID

        SVID:设备状态变量ID

        ECID:设备常量ID

        VID  :变量ID

        RPTID:report ID 即上报ID

        PPID:recipe ID 即配方ID(工艺ID)

        CHIPID:芯片ID

6.5 命令字

		secs的核心设计就是命令交互。secs对命令字的功能都有详细的定义。

        命令字由S和F组成,S-Stream   F-Function  简单理解,S是一级目录,F是二级目录。

        例如:S1F5 命令字向请求设备状态。H->E

              S1F6命令字响应S1F5,上报设备状态。E->H

7 连接交互

//1.通信确认
REQUEST: S1F1 are you there request
RESPONSE:  S1F2  online data
//2.确认状态
REQUEST:S1F3 
RESPONSE:S1F4
//3.建立连接
REQUEST:S1F13 
RESPONSE:S1F14
//4.离线通知
REQUEST:S1F15   
RESPONSE:S1F16
//5.上线通知
REQUEST:S1F17   
RESPONSE:S1F18

8 GEM通信标准

GEM (Generic Model for Communications and Control of Manufacturing Equipment)定义了通过通信链路所能看到的半导体设备的行为。
SECS-II 标准定义了在主机和设备之前交换的消息格式以及相关数据项。GEM标准在此基础上定了在何种情况下使用哪些SECS-II消息以及会发生哪些行为。
主机电脑在任何时间都可能发起任何GEM消息场景,设备必须按照 GEM标准中的描述做出响应。

GEM标准为所有半导体制造设备定义了实现SECS-II的标准方法。
标准定义了设备行为和通信功能的通用集合,这样为支持半导体设备的自动化加工程序提供了功能性和弹性。
设备提供商可以提供GEM中没有的额外功能,但是不能与GEM中已定义的行为和功能相冲突。

E5、E37标准规定了主机如何同设备建立起通信,以及传输数据的格式。

在实际上,设备可能只需要采用SECS-II的某部分信息便可使工厂主控电脑达到控制设备的功能,并不需要完全使用SECS-II的所有信息。

于是E30 GEM (通用设备模型通讯与控制标准)标准被制定了出来。

8.1 状态模型

状态模型从主机角度以简洁易懂的方式描述设备行为。
不同设备的状态模型在有些方面相同(比如通信)但是在其他方面不同(比如加工)。
因而需要把一个设备分为并行的几个部分,这些部分既可以单独的建模又可以合并起来,如下图所示:

在这里插入图片描述

8.1.1 通信状态图

通信状态模型定义了关于设备与主机之间的通讯行为,描述的是主机与设备之间交换消息的功能,GEM 中的通信状态如下图所示:
在这里插入图片描述

8.1.2 控制状态图

控制状态模型定义了主机与设备之间的操作等级,此外还说明了操作员应该如何控制主机的不同层次。通信状态模型描述的是主机与设备之间交换消息的功能,控制状态模型则描述设备应该如何响应它所收到的消息。

控制状态模型为主机提供了三个基本层次的控制。在最高层次(REMOTE),主机可以最大程度的控制设备。在中间层次(LOCAL)主机可以访问设备的所有信息,但对设备的操作有所限制。在最低层次(OFF-LINE)设备不允许主机控制且只能提供很有限的信息。控制状态图如下图所示:
在这里插入图片描述

8.1.3 设备加工状态图

设备加工状态模型主要取决于设备加工、所采用的技术和类型。然而仍然可以用一个模型表示其中共同的部分。下图表示了一个实现模型,该模型示范了设备加工模型所需要的特性。
在这里插入图片描述

8.2 设备功能

设备功能即半导体制造设备提供的操作,这些操作通过使用 SECS-II 消息由通信接口发起。通信场景即为了实现某个功能按顺序排列的一组 SECS-II 消息。

8.2.1 建立通信

建立通信功能提供了一系列在系统初始化或通信节点丢失了通讯之后正式建立通信的方法,以及通知远程通信节点通信发生了中断。通信在主机和设备分别发送 S1F13 和 S1F14 消息之后正式建立,通信场景如下图所示:
在这里插入图片描述

8.2.2 数据收集

数据收集功能使主机可以通过事件报告、跟踪数据报告、阀值检测和查询选定状态等来监测设备的活动,并通过收集到的数据完成优化控制。

事件数据收集
事件数据收集为用户提供了一种灵活的方法来实现设备相关的数据表示以及如何向主机报告。基于事件的数据收集方法可以自动向主机提供设备的活动信息,并且可以检测设备状态以及同设备保持同步。其通信场景如下图:
在这里插入图片描述
变量数据收集
这个功能使主

机可以查询设备的数据变量,以便于初始化和同步。通信场景如下图所示:
在这里插入图片描述
跟踪数据收集
跟踪数据收集提供了一种定期对数据采样的方法。这种基于时间的数据收集方法便于跟踪数据趋势、在某个时间间隔内重复应用和检测某个连续变量。通信场景如下图所示:
在这里插入图片描述
阀值监测
阀值监测功能为主机提供了一种异步监测设备状态的方法,使主机不用持续的向设备查询状态值。通信场景如下图:
在这里插入图片描述
状态数据收集
状态数据收集功能使主机可以向设备查询选中的状态信息,便于同设备状态保持同步。通信场景如下图:
在这里插入图片描述
在线确认
在线确认用于设备响应主机发送的 S1F1 消息。通信场景如下图:
在这里插入图片描述

8.2.3 报警管理

报警管理功能使主机可以管理设备上发生的警报状态并获得相应通知。主机可以打开或关闭某个报警,要求设备上传警报信息等。通信场景如下图:
在这里插入图片描述

8.2.4 远程管理

远程控制功能使主机按不同层次对设备进行操作。设备向主机提供的操作包括:开始加工、选择某个加工程序或配方、停止加工、暂时挂起加工程序、恢复加工和取消加工。通信场景如下图所示:
在这里插入图片描述

8.2.5 设备常量

设备常量功能使主机可以读取并改变选中的设备常量。通信场景如下图:
在这里插入图片描述

8.2.6 加工程序管理

加工程序管理功能使主机能够通过同设备的接口来管理加工程序和配方。加工程序使工程师按不同目的配置设备的加工和加工所需要的相关参数。不同的产品可能需要不同的加工程序,因此工程师必须能够在设备的存储器中创建、修改和删除这些程序。为了使主机能够确保相应的程序存储在设备中正确的位置,该功能提供了从设备到主机和从主机到设备的传送程序的方法。主机还可以删除设备存储器中的某些程序,以便为下载新程序腾出空间。此外,主机还应该知道设备上的加工程序在内容和状态上发生了哪些改变。配方的管理同程序的管理类似,稍有不同的是配方在传输过程中参数连同配方一起传输。通信场景如下图:
在这里插入图片描述

8.2.7 原料运输

原料运输功能包括原料在设备、缓冲区和存储工具之间的物理传输。该功能可以通知主机原料是否已从设备的某个端口接收或传输。通信场景如下图:
在这里插入图片描述

8.2.8 设备终端服务

设备终端服务功能使主机能够在设备的显示装置上显示信息,并且使设备的操作员能够向主机发送消息。通信场景如下图:
在这里插入图片描述

8.2.9 错误消息

错误消息功能用于向主机提供设备检测到的消息或通信错误的相关信息。通信场景如下图:
在这里插入图片描述

8.2.10 时钟

时钟功能使主机能够管理设备上与时间相关的行为和事件。时钟的主要目的是为收集事件和警报报告提供时间戳。时间戳的使用利于分清事件或警报的发生顺序,并使主机能够调度设备行为。该功能使主机能把设备的内部时钟设定为某个特定值,同时设备也可以向主机询问当前日期和时间。通信场景如下图:
在这里插入图片描述

8.2.11 数据缓存

数据缓存功能使设备可以在发生通信错误时存储消息并随后在通信修复之后继续向主机发送这些消息。数据缓存的目的在于当发生通信错误时保存消息以免信息丢失。数据缓存状态图如下图所示:
在这里插入图片描述

8.2.12 控制

控制功能用于配置并操作控制状态图,使用户或主机可以修改设备的控制相关行为。通信场景如下图:
在这里插入图片描述

SECS协议的应用层主要包括SECS/GEM和SECS-I。SECS/GEM(SEMI Equipment Communications Standard/Generic Equipment Model)是SECS协议的一种通信标准和设备模型,它充当消息代理并提供高效的消息传输。每个SECS/GEM接口都可以订阅和发布警报、收集事件和跟踪数据,使设备可以根据应用程序的需求发布所需的数据,从而节省网络带宽。SECS/GEM消息以高效的二进制格式进行传输,比ASCII格式的协议使用更少的带宽。此外,SECS/GEM可以与标准的XML符号进行互转。SECS-I是SECS协议的另一种实现,它基于RS-232串行通信,目前使用较少,无法快速触发收集事件。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [金南瓜 secs/gem协议 符合SEMI secs/gem协议 国际通讯协](https://blog.csdn.net/secsgem300/article/details/125479448)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [SECS协议学习](https://blog.csdn.net/qq_43510515/article/details/131381130)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值