1. SECS/GEM 协议概述
SECS/GEM 是半导体制造领域最核心的设备自动化通信标准族。它定义了制造执行系统(MES)与工艺设备之间的数据交换格式、通信协议和行为模型。理解 SECS/GEM 的协议栈结构,是掌握配方上传下载流程设计与异常恢复的基础。
1.1 协议栈三层架构
SECS/GEM 协议栈从下至上分为物理传输层、消息层和语义行为层,每一层解决不同粒度的通信问题。
| 层级 | 协议/标准 | 主要职责 | 典型应用场景 |
|---|---|---|---|
| 物理传输层 | SECS-I / HSMS | 定义电气接口、连接建立、数据帧传输 | RS-232 串口(SECS-I)或 TCP/IP 网络(HSMS) |
| 消息层 | SECS-II | 定义消息格式、数据类型、事务处理规则 | 设备与主机之间的请求/响应消息编码 |
| 语义行为层 | GEM | 定义设备状态模型、事件报告、配方管理、报警处理等行为 | 配方上传下载、设备状态采集、远程控制 |
关键理解: 配方上传下载流程跨越整个协议栈——GEM 定义“何时上传/下载”,SECS-II 定义“消息长什么样”,HSMS/SECS-I 定义“数据怎么传过去”。任何一层的异常都会导致配方传输失败。
1.2 SECS-I:串行通信基础
SECS-I 是早期半导体设备通信标准,基于 RS-232C 串行接口,采用半双工通信模式。虽然现在新建工厂已逐步转向 HSMS,但大量存量设备仍在使用 SECS-I。
- 物理层: RS-232C,波特率 9600/19200 bps,数据位 7/8,停止位 1,奇偶校验可选。
- 数据块(Block): 最大 254 字节,超过则分块传输。
- 超时机制: T1(字符超时)、T2(协议超时)、T3(回复超时)等 7 个定时器。
- 连接管理: 设备端主动建立连接,主机端监听。
工程提示: SECS-I 的 T3 超时(等待回复时间)在配方上传下载中至关重要。如果配方数据量大,设备处理时间长,T3 设置过短会导致主机误判为通信中断,触发不必要的异常恢复流程。
1.3 HSMS:高速以太网通信
HSMS(High-Speed SECS Message Services)将 SECS 通信迁移到 TCP/IP 网络,大幅提升传输速率和连接灵活性。HSMS 定义了两种连接模式:主动模式(Initiator)和被动模式(Responder)。
| 特性 | SECS-I | HSMS |
|---|---|---|
| 物理介质 | RS-232C 串口线 | 以太网(TCP/IP) |
| 最大传输速率 | 19200 bps | 100 Mbps 及以上 |
| 最大消息长度 | 254 字节/块 | 无限制(分帧传输) |
| 连接管理 | 硬件信号线控制 | TCP 连接 + 心跳检测 |
| 超时模型 | T1~T7 定时器 | T3、T5、T6、T7、T8 |
| 适用场景 | 老旧设备、低速数据 | 新建设备、大数据量配方 |
异常恢复关注点: HSMS 的 T6 超时(连接超时)和 T8 超时(帧传输超时)在配方上传下载过程中需要特别监控。网络抖动可能导致 T8 超时,触发连接断开,此时需要设计重连和断点续传机制。
1.4 SECS-II:消息编码与事务
SECS-II 定义了设备与主机之间交换消息的格式。每个消息由 流(Stream) 和 功能(Function) 唯一标识,例如 S7F3 表示“配方列表请求”。
- 消息结构: 消息头(10 字节)+ 消息体(数据项列表)。
- 数据类型: 布尔(Boolean)、整数(U1/U2/U4/I1/I2/I4)、浮点(F4/F8)、字符串(ASCII/UTF-8)、列表(List)等。
- 事务规则: 主设备发送请求(Primary Message),从设备回复响应(Secondary Message),事务 ID(W_BIT)保证一一对应。
- 配方相关流: S7(配方管理)、S14(配方上传下载)、S16(配方数据块传输)。
// SECS-II 消息示例:S7F3(配方列表请求)
// 消息头
Stream = 7, Function = 3, W_BIT = 1
// 消息体(空列表,表示请求所有配方)
<L>
</L>
// 响应 S7F4(配方列表数据)
// 消息体
<L>
<A>RECIPE_A</A>
<A>RECIPE_B</A>
<A>RECIPE_C</A>
</L>
1.5 GEM 标准:设备行为模型
GEM(Generic Equipment Model)是 SEMI E30 标准,定义了设备在半导体制造中的通用行为模型。GEM 将设备抽象为有限状态机,并规定了状态转换、事件报告、配方管理、报警处理等核心功能。
GEM 的核心价值: 它让不同厂商的设备以统一的方式与 MES 交互。无论设备是刻蚀机、光刻机还是检测设备,配方上传下载的流程框架在 GEM 层面是一致的。
GEM 设备状态模型
设备状态模型是 GEM 的基石,定义了设备从初始化到生产、再到空闲的完整状态转换路径。
GEM 在配方管理中的关键功能
GEM 标准为配方上传下载提供了完整的行为框架,主要包括以下功能点:
- 配方管理(Recipe Management): 定义配方列表查询、配方上传(设备→主机)、配方下载(主机→设备)、配方删除、配方验证等操作。
- 配方数据块传输(Large Data Transfer): 针对大配方,GEM 支持分块传输(S16 流),避免单次消息超长导致超时。
- 事件报告(Event Notification): 配方传输完成、失败、中断时,设备主动上报事件给主机。
- 异常恢复(Exception Recovery): 定义通信中断、传输超时、数据校验失败等场景下的恢复流程。
- 配方校验(Recipe Verification): 下载完成后,设备可对配方进行 CRC 校验或格式校验,确保数据完整性。
配方上传下载流程设计要点: 在 GEM 框架下,配方上传下载不是简单的文件传输,而是一个包含状态检查、权限验证、数据分块、校验确认、异常回滚的完整事务。设计时需充分考虑每一步的异常分支。
1.6 协议栈整体架构
下图展示了 SECS/GEM 协议栈的完整分层架构,以及各层在配方上传下载流程中的角色。
1.7 GEM 在半导体制造中的核心作用
GEM 标准是半导体制造自动化的“通用语言”,其核心作用体现在以下四个方面:
| 作用维度 | 具体说明 | 对配方上传下载的影响 |
|---|---|---|
| 设备互操作性 | 不同厂商设备使用统一的行为模型和消息接口 | 配方上传下载流程可跨设备复用,降低集成成本 |
| 状态一致性 | 设备与主机共享同一状态模型,避免状态不同步 | 配方传输前检查设备状态,防止在非就绪状态下操作 |
| 异常可追溯 | 定义标准事件和报警,异常时可精确定位 | 配方传输失败时,主机可获取具体错误码和原因 |
| 流程标准化 | 配方上传下载的步骤、消息序列、超时处理均有标准定义 | 减少定制开发,提高系统稳定性和可维护性 |