1. SECS/GEM 概述
SECS/GEM 是半导体制造设备与工厂主机(Host)之间进行数据通信和远程控制的事实标准协议族。它由国际半导体设备与材料协会(SEMI)制定并维护,覆盖从单台设备到整厂自动化的通信需求。理解 SECS/GEM 是进入半导体智能制造领域的第一步。
1.1 协议定义与核心作用
SECS/GEM 并非单一协议,而是一套分层定义的通信规范。其核心目标是为半导体制造环境中的“设备”与“主机”提供统一、可靠、可互操作的通信语言。
| 术语 | 全称 | 核心作用 |
|---|---|---|
| SECS | SEMI Equipment Communications Standard | 定义消息的格式、编码规则以及传输的物理/逻辑机制。 |
| GEM | Generic Equipment Model | 定义设备的行为模型、状态机、事件报告、报警、远程控制等通用功能。 |
| Host | Factory Host / Manufacturing Execution System (MES) | 工厂上层的生产管理与调度系统。 |
| Equipment | Process Tool / Metrology Tool | 执行具体工艺或测量的半导体设备。 |
1.2 在半导体制造中的作用
在晶圆厂(FAB)中,SECS/GEM 是连接物理设备与数字系统的桥梁。没有它,设备就是信息孤岛。其具体作用体现在以下方面:
- 配方管理(Recipe Management): 主机通过 SECS/GEM 向设备下发工艺配方,设备执行后反馈结果。
- 数据采集(Data Collection): 设备实时上报工艺参数(温度、压力、流量等),供主机进行统计过程控制(SPC)。
- 报警与事件管理(Alarm & Event Management): 设备发生故障或状态变更时,主动向主机发送报警或事件通知。
- 远程控制(Remote Control): 主机可以远程启动、停止设备,或切换设备的运行模式。
- 物料跟踪(Material Tracking): 设备上报晶圆盒(FOUP/Cassette)的装载与卸载信息,实现生产追溯。
1.3 协议栈概览
SECS/GEM 协议栈采用分层架构,从下到上依次为:SECS-I(或 HSMS)、SECS-II、GEM。每一层解决不同的问题,层与层之间通过标准接口交互。
1.4 各层详解
1.4.1 SECS-I (物理/数据链路层)
SECS-I 定义基于 RS-232 串行通信的物理连接和块传输协议。它使用半双工通信,通过“块(Block)”为单位传输数据,并包含校验和(Checksum)机制保证数据完整性。虽然现在新设备多采用 HSMS,但 SECS-I 仍在许多旧设备上运行。
1.4.2 HSMS (高速消息服务)
HSMS(High-Speed SECS Message Services)是 SECS-I 的 TCP/IP 替代方案。它定义如何在 TCP 连接上封装和传输 SECS-II 消息。HSMS 支持全双工通信,速度远高于 SECS-I,是现代 300mm 设备的主流选择。
| 特性 | SECS-I | HSMS |
|---|---|---|
| 物理介质 | RS-232 串行线 | 以太网 (TCP/IP) |
| 通信模式 | 半双工 | 全双工 |
| 传输速率 | 9600 ~ 38400 bps | 10/100/1000 Mbps |
| 连接管理 | 物理连接持续 | TCP 连接建立/断开 |
| 适用场景 | 旧设备、低速通信 | 新设备、高速数据采集 |
1.4.3 SECS-II (消息层)
SECS-II 定义消息的结构和编码规则。所有消息都由“流(Stream)”和“功能(Function)”编号唯一标识,例如 S1F13 表示“建立通信请求”。消息体使用 SECS 数据项(Item)进行编码,支持多种数据类型(如 ASCII、Binary、Unsigned Integer、List 等)。
S1F13
<L>
<A "MDLN-A"> // 设备型号
<A "REV-1.0"> // 软件版本
</L>
.
1.4.4 GEM (设备行为模型)
GEM 是协议栈的最上层,它定义了设备必须支持的一组标准功能集合,包括:
- 状态模型(State Model): 设备必须实现通信状态、控制状态、处理状态等标准状态机。
- 事件通知(Event Notification): 设备在特定状态变化或条件满足时,主动向主机发送事件报告。
- 报警管理(Alarm Management): 设备定义报警集,并在报警发生时通知主机。
- 远程命令(Remote Command): 主机可以发送标准远程命令(如 START、STOP、PAUSE)控制设备。
- 数据变量(Data Variable): 设备暴露可读写的变量,供主机查询或修改。
1.5 协议栈通信流程示例
一次典型的 SECS/GEM 通信流程如下:
- 连接建立: 设备与主机通过 HSMS 建立 TCP 连接(或通过 SECS-I 建立物理连接)。
- 通信协商: 设备发送 S1F13 消息,主机回复 S1F14,双方交换设备 ID、版本号等信息。
- 在线通知: 设备发送 S1F1(Are You There?)的回复,确认通信正常。
- 数据采集: 主机发送 S2F17(请求数据变量),设备回复 S2F18 携带当前工艺参数。
- 事件上报: 当设备状态变化(如批次完成),设备主动发送 S6F11(事件报告)给主机。
- 连接断开: 通信结束时,任一方发起 HSMS 断开流程。