1. SECS/GEM 协议概述:SECS-I、SECS-II、HSMS、GEM 标准的定义与历史演进
1.1 协议家族全景
SECS/GEM 协议族是半导体制造设备与工厂主机(Host)之间进行数据通信与远程控制的事实标准,由国际半导体设备与材料协会(SEMI)制定并维护。该协议族自 1980 年代诞生以来,经历了从串行通信到高速以太网、从简单消息传递到完整设备建模的演进,形成了以 SECS-I、SECS-II、HSMS 和 GEM 为核心的标准化体系。
- SECS-I (SEMI E4):物理层与传输层标准,定义 RS-232-C 串行通信的电气特性、帧格式与传输控制。
- SECS-II (SEMI E5):消息层标准,定义设备与主机之间交换的消息结构、数据项格式与标准会话流程。
- HSMS (SEMI E37):高速以太网替代方案,定义基于 TCP/IP 的报文传输机制,逐步取代 SECS-I 的串行链路。
- GEM (SEMI E30):设备行为模型标准,定义设备必须支持的状态机、事件通知、变量集合与远程控制能力。
1.2 历史演进时间线
下表梳理了 SECS/GEM 协议族从诞生至今的关键里程碑,帮助理解各标准之间的依赖关系与版本迭代背景。
| 年份 | 标准编号 | 标准名称 | 关键变化 |
|---|---|---|---|
| 1980 | E4 (初版) | SECS-I | 基于 RS-232-C 的串行通信协议,定义块传输与校验机制 |
| 1982 | E5 (初版) | SECS-II | 定义消息结构(Stream/Function)、数据项格式(SML)与标准会话 |
| 1992 | E30 (初版) | GEM | 首次提出设备行为模型,定义状态机、事件通知与变量集合 |
| 1995 | E37 (初版) | HSMS | 基于 TCP/IP 的高速报文传输,支持单端口与双端口连接 |
| 2000 | E5 (Rev. 12) | SECS-II 增强版 | 增加动态数据项、扩展列表类型,支持更复杂的数据结构 |
| 2007 | E30 (Rev. 7) | GEM 300 | 针对 300mm 晶圆厂需求,增加设备端处理能力与高级事件管理 |
| 2015 | E37.1 | HSMS-SS (单会话) | 简化 HSMS 连接管理,支持单会话模式,降低实现复杂度 |
| 2020 | E30 (Rev. 10) | GEM 最新版 | 统一状态机定义,增加对 Industry 4.0 场景的适配 |
1.3 协议分层架构
SECS/GEM 协议族采用分层设计,各层职责清晰,便于独立演进与替换。下图展示了从物理层到应用层的完整协议栈结构。
1.4 各标准详细定义
1.4.1 SECS-I (SEMI E4) — 物理与传输层
SECS-I 是 SECS/GEM 协议族中最底层的标准,定义了设备与主机之间通过 RS-232-C 串行接口进行数据交换的电气特性、帧格式与传输控制机制。其核心特征包括:
- 物理介质:RS-232-C 串行线,最大传输距离约 15 米,波特率通常为 9600 bps 或 19200 bps。
- 帧结构:每个消息块(Block)包含长度字节、消息头(10 字节)和数据体,最大块长度为 254 字节。
- 传输控制:采用停等协议(Stop-and-Wait),发送方必须等待接收方的确认(ACK/NAK)后才能发送下一块。
- 多块消息:当消息长度超过 254 字节时,自动拆分为多个块,通过块号(Block Number)进行重组。
1.4.2 SECS-II (SEMI E5) — 消息层
SECS-II 定义了设备与主机之间交换消息的语法与语义,是协议族中最核心的“语言”标准。每条 SECS-II 消息由 Stream(流)和 Function(功能)唯一标识,例如 S1F13 表示“建立通信请求”。
- 消息结构:消息由消息头(Message Header)和数据体(Data Body)组成。消息头包含 Stream、Function、W-bit(等待位)、设备 ID 等信息。
- 数据项格式:采用 SML(SECS Message Language)定义数据项类型,包括 ASCII、Binary、Unsigned Integer、Signed Integer、Float、List 等。
- 标准会话:定义了设备与主机之间的标准交互流程,如建立通信(S1F13/S1F14)、设备状态请求(S1F1/S1F2)、变量读取(S2F13/S2F14)等。
- 版本演进:从初版到 Rev. 12+,增加了动态数据项、扩展列表类型、更灵活的数据结构支持。
1.4.3 HSMS (SEMI E37) — 高速以太网传输
HSMS(High-Speed SECS Message Services)是 SECS-I 的以太网替代方案,基于 TCP/IP 协议栈实现消息传输。HSMS 的出现解决了 SECS-I 在速率、距离和并发连接方面的瓶颈。
| 特性 | SECS-I (E4) | HSMS (E37) |
|---|---|---|
| 物理介质 | RS-232-C 串行线 | 以太网 (TCP/IP) |
| 最大速率 | 19200 bps | 100 Mbps / 1 Gbps |
| 最大距离 | ~15 米 | 局域网范围 (100 米+) |
| 连接模式 | 点对点 | 点对点 / 多会话 |
| 消息确认 | 停等协议 | TCP 确认 + 应用层确认 |
| 多块消息 | 块号重组 | TCP 流式传输 |
| 标准版本 | SEMI E4 | SEMI E37 / E37.1 |
1.4.4 GEM (SEMI E30) — 设备行为模型
GEM(Generic Equipment Model)是 SECS/GEM 协议族中最高层的标准,定义了设备必须实现的行为模型与通信能力。GEM 标准的核心内容包括:
- 设备状态机:定义设备从初始化到运行、暂停、报警、停止等状态的转换规则。
- 事件通知:设备在特定状态变化或条件满足时,主动向主机发送事件消息。
- 变量集合:定义设备状态变量(SV)、设备常量(EC)、数据变量(DV)等,供主机读取或写入。
- 远程控制:主机通过 SECS-II 消息远程启动、停止、暂停设备操作。
- 报警管理:设备检测到异常时生成报警,主机可查询报警状态与历史记录。
1.5 标准之间的依赖关系
下图展示了 SECS/GEM 协议族中各标准之间的依赖与引用关系,帮助理解版本兼容性问题的根源。
1.6 版本兼容性核心挑战
从上述标准演进可以看出,SECS/GEM 协议族的版本兼容性处理面临以下核心挑战:
- 传输层替换:从 SECS-I 迁移到 HSMS 时,需要处理消息封装、连接管理和超时机制的差异。
- 消息层扩展:SECS-II 不同版本对数据项类型和消息结构的支持程度不同,旧设备可能无法解析新版本的数据格式。
- 行为模型升级:GEM 版本升级可能引入新的状态、事件或变量,需要设备固件和主机软件同步更新。
- 混合部署场景:工厂中可能同时存在支持不同协议版本的设备,主机需要具备多版本兼容能力。
- 向后兼容性:新版本标准通常要求向后兼容旧版本,但实际实现中可能存在偏差,需要测试验证。