1. SECS/GEM 协议概述:协议栈与规范体系
SECS/GEM 是半导体制造设备与工厂主机(Host)之间进行数据通信与过程控制的事实标准协议族。理解其协议栈分层结构与 GEM 标准功能,是分析数据采集链路延迟的起点。本章从协议栈、GEM 功能集及核心规范关系三个维度展开。
1.1 协议栈分层架构:SECS-I、SECS-II、HSMS
SECS/GEM 协议栈采用经典的三层模型,自底向上依次为:传输层(SECS-I 或 HSMS)、消息层(SECS-II)、应用层(GEM)。各层职责清晰,共同保障设备与主机间的可靠数据交换。
关键概念: SECS-I 基于 RS-232 串口,HSMS 基于 TCP/IP 网络。当前新建产线几乎全部采用 HSMS,但存量设备中仍有大量 SECS-I 链路,其延迟特性差异显著。
性能提示: 在延迟分析中,传输层选择(SECS-I vs HSMS)直接影响基础 RTT(往返时间)。SECS-I 典型 RTT 在 10-50ms 量级,HSMS 则在 1-5ms 量级。
1.2 各层协议详解
1.2.1 SECS-I(E4 规范)
- 物理层: RS-232C 串行接口,波特率 9600 / 19200 / 38400 bps(典型值)。
- 传输单位: 块(Block),每块最大 254 字节(含 10 字节头部)。
- 特点: 半双工、主从模式、硬件流控。延迟主要来自串口波特率与块传输间隔。
1.2.2 HSMS(E37 规范)
- 传输层: TCP/IP 协议,支持 IPv4/IPv6。
- 会话模式: 主动连接(Active)与被动连接(Passive),支持 Select/Deselect 会话管理。
- 特点: 全双工、高吞吐、低延迟。延迟主要来自网络 RTT 与 TCP 协议栈处理。
1.2.3 SECS-II(E5 规范)
- 消息结构: 流(Stream)与功能(Function)构成二级消息 ID,如 S1F1(Are You There?)。
- 数据编码: 使用 Item 格式(L、A、B、I2、U4、F8 等类型)进行数据封装。
- 特点: 消息解析与序列化/反序列化是延迟的重要贡献者,尤其在复杂嵌套 Item 场景。
1.3 GEM 标准功能与 E5/E30/E37 规范关系
GEM(Generic Equipment Model,E30 规范)定义了设备与主机之间的标准化行为模型,包括状态机、事件通知、数据变量、报警、远程控制等核心功能。GEM 依赖 SECS-II(E5)作为消息载体,并可在 SECS-I(E4)或 HSMS(E37)上运行。
| 规范编号 | 规范名称 | 核心作用 | 与延迟分析的关系 |
|---|---|---|---|
| E4 | SECS-I | 串口传输层定义 | 串口波特率、块传输间隔直接影响基础延迟 |
| E5 | SECS-II | 消息格式与编码规则 | 消息大小、Item 嵌套深度影响序列化/反序列化延迟 |
| E30 | GEM | 设备行为模型与标准化接口 | 事件上报频率、数据变量采集周期决定链路负载 |
| E37 | HSMS | TCP/IP 传输层与会话管理 | 网络 RTT、TCP 窗口、重传机制影响传输延迟 |
常见误区: 很多工程师将 GEM 与 SECS-II 混为一谈。实际上,GEM 是应用层标准,SECS-II 是消息层标准。GEM 定义了“做什么”,SECS-II 定义了“怎么说”。在延迟优化时,必须区分是消息编码问题(SECS-II)还是行为模型问题(GEM)。
1.4 协议栈与延迟分析的关联
在数据采集链路中,延迟可以分解为以下层次贡献:
- 应用层延迟(GEM): 事件触发频率、数据变量采集周期、状态机转换开销。
- 消息层延迟(SECS-II): 消息编码/解码时间、Item 嵌套复杂度、消息大小。
- 传输层延迟(SECS-I / HSMS): 物理传输时间、网络 RTT、重传与流控。
优化切入点: 在后续章节中,我们将逐一量化各层延迟,并给出针对性的优化策略。例如:减少 GEM 事件上报频率、使用 HSMS 替代 SECS-I、优化 SECS-II 消息结构以降低序列化开销。
1.5 小结
- SECS/GEM 协议栈分为传输层(SECS-I/HSMS)、消息层(SECS-II)、应用层(GEM)。
- E4(SECS-I)、E5(SECS-II)、E30(GEM)、E37(HSMS)是核心规范,各自定义不同层次的功能。
- 延迟分析必须分层进行,不同层次的延迟特征和优化手段差异显著。
- HSMS 相比 SECS-I 具有更低的传输延迟,但上层消息编码与 GEM 行为模型同样不可忽视。