1. SECS/GEM 协议概述:半导体工厂自动化中的角色、HSMS 与 SECS-I 传输层对比

1.1 半导体工厂自动化中的核心角色

在半导体与 FPD(平板显示)制造中,工厂自动化(Factory Automation, FA)的核心目标是实现设备与上位主机(Host)之间的数据交换与远程控制。SECS/GEM(SEMI Equipment Communications Standard / Generic Equipment Model)正是这一生态中的“通用语言”。

SECS/GEM 协议栈在工厂自动化中扮演以下关键角色:

  • 设备连接层: 定义物理连接与数据帧格式(SECS-I 或 HSMS),确保数据包能在 RS-232 或 TCP/IP 网络上可靠传输。
  • 消息标准化层: 通过 SECS-II 消息格式(Stream & Function),将设备状态、报警、事件、数据变量等抽象为标准化报文,使不同厂商的设备能被同一套 MES/APC 系统管理。
  • 设备行为模型层: GEM 标准定义了设备的状态模型(如 INIT、IDLE、PROCESSING)、报警模型、事件通知模型、远程命令模型等,让主机能够以统一方式控制设备。
  • 数据采集与追溯层: 支持 Trace 数据流、变量订阅、报警触发记录,为良率分析、设备健康预测提供实时数据源。
关键认知: 没有 SECS/GEM,半导体工厂将陷入“设备孤岛”——每台设备都需要定制接口,MES 系统无法实现统一的调度、报警管理和数据采集。

1.2 SECS/GEM 协议栈分层结构

SECS/GEM 协议栈从下至上分为四个层次,每一层解决不同的问题:

层次 协议/标准 主要功能 典型应用场景
物理/传输层 SECS-I / HSMS 定义物理连接(RS-232 或 TCP/IP)、数据帧格式、超时重传机制 设备与主机之间的原始字节流传输
消息层 SECS-II 定义 Stream & Function 消息结构、Item 数据类型(如 ASCII、U4、F8、List) 封装报警上报(S5F1)、事件通知(S6F11)、变量读取(S1F3)等具体消息
设备行为模型层 GEM (E30/E5) 定义设备状态机、报警模型、事件模型、远程命令、数据收集计划(DCP) 主机通过 GEM 标准接口控制设备启停、订阅报警事件、启动 Trace 数据采集
应用层 E39/E40/E87/E90 等 面向特定场景的扩展标准(如 Carrier 管理、Job 管理、Substrate 追踪) 光刻机、刻蚀机、检测设备等复杂机台的物料流与工艺流管理
实战提示: 在排查报警事件联动问题时,最常接触的是 SECS-II 消息层(S5F1/S5F2 报警消息、S6F11/S6F12 事件消息)和 GEM 设备状态模型。传输层问题通常表现为“连接断开”或“超时”,而非报警内容错误。

1.3 HSMS 与 SECS-I 传输层对比

SECS-I 和 HSMS 是 SECS/GEM 协议栈中两个可选的传输层协议。虽然它们都承载相同的 SECS-II 消息,但在物理介质、连接方式、性能特征上存在显著差异。以下从多个维度进行对比:

对比维度 SECS-I HSMS
物理介质 RS-232 串口(通常 9600 bps ~ 19200 bps) TCP/IP 以太网(10/100/1000 Mbps)
连接方式 点对点(Point-to-Point),一对一线缆 网络连接,支持多设备共享同一网络
传输速率 低(典型 9.6 Kbps ~ 115.2 Kbps) 高(可达 100 Mbps 以上)
最大消息长度 受限于串口缓冲区,通常 ≤ 4 KB 理论上无限制(实际受 TCP 缓冲区限制,可达 MB 级)
连接管理 无显式连接握手,物理线缆接通即视为连接 使用 T3/T5/T6/T7/T8 超时定时器管理连接状态,支持主动断开与重连
多会话支持 不支持,单链路单会话 支持,同一 TCP 连接可承载多个逻辑会话(Session)
可靠性机制 硬件流控(RTS/CTS)+ 软件 XON/XOFF + 块校验(CRC) TCP 协议本身提供可靠传输 + 应用层超时重传(T3 超时)
典型应用场景 老旧设备(1990s ~ 2000s 初期)、低速传感器、非关键数据采集 现代半导体设备(2000s 至今)、高速数据采集、实时报警联动
避坑指南: 在排查报警事件联动问题时,如果设备使用 SECS-I 传输层,要特别关注串口线缆质量、波特率匹配、流控设置。HSMS 环境则要重点检查 TCP 连接状态、T3 超时设置(默认 45 秒)以及防火墙规则。很多“报警不上报”的案例,根源是传输层连接已断开,而非 GEM 模型配置错误。

1.4 HSMS 与 SECS-I 协议栈架构对比图

下图直观展示了两种传输层在 SECS/GEM 协议栈中的位置差异:

SECS/GEM 协议栈:HSMS vs SECS-I 传输层对比 SECS-I 协议栈 应用层(E39/E40/E87 等) Carrier 管理 / Job 管理 / Substrate 追踪 GEM 设备行为模型层 状态机 / 报警模型 / 事件模型 / 远程命令 SECS-II 消息层 Stream & Function / Item 数据类型 SECS-I 传输层 RS-232 串口 / 点对点 / 硬件流控 物理层:RS-232 线缆 9600 bps ~ 115.2 Kbps HSMS 协议栈 应用层(E39/E40/E87 等) Carrier 管理 / Job 管理 / Substrate 追踪 GEM 设备行为模型层 状态机 / 报警模型 / 事件模型 / 远程命令 SECS-II 消息层 Stream & Function / Item 数据类型 HSMS 传输层 TCP/IP / 网络连接 / 超时管理 物理层:以太网 10/100/1000 Mbps SECS-I 与 HSMS 共享相同的 SECS-II 消息层和 GEM 设备行为模型,仅传输层实现不同

1.5 传输层选择对报警事件排查的影响

传输层的差异直接影响报警事件排查时的关注点:

  • SECS-I 环境排查要点:
    • 检查串口线缆是否松动、屏蔽是否良好(电磁干扰会导致数据帧错误)。
    • 确认波特率、数据位、停止位、校验位是否与设备配置一致。
    • 关注硬件流控(RTS/CTS)是否启用,流控不匹配会导致数据丢失。
    • SECS-I 没有显式的心跳机制,连接状态只能通过消息响应超时间接判断。
  • HSMS 环境排查要点:
    • 检查 TCP 连接状态(netstat 或设备日志查看是否处于 ESTABLISHED 状态)。
    • 确认 T3 超时(消息响应超时)设置是否合理,默认 45 秒,过短会导致正常消息被误判为超时。
    • 检查防火墙是否阻止了 HSMS 端口(通常为 5000、5001、9999 等)。
    • HSMS 支持 Select/Deselect 会话管理,排查时需确认当前会话是否处于 Selected 状态。
实战建议: 在排查报警事件联动问题时,建议先通过设备日志或网络抓包确认传输层是否正常。对于 HSMS 环境,可以使用 Wireshark 抓取 HSMS 数据包,观察 T3 超时重传和 Select 响应;对于 SECS-I 环境,可以使用串口监听工具(如 AccessPort)查看原始字节流。

1.6 本章小结

SECS/GEM 协议是半导体工厂自动化的基石,它通过标准化的消息格式和设备行为模型,实现了主机与设备之间的无缝集成。传输层作为协议栈的最底层,决定了数据通信的物理方式和性能特征:

  • SECS-I 适用于老旧设备和低速场景,排查重点在串口物理层和流控配置。
  • HSMS 适用于现代高速网络环境,排查重点在 TCP 连接状态和超时参数。
  • 无论使用哪种传输层,SECS-II 消息层和 GEM 设备行为模型是报警事件排查的核心内容,后续章节将深入讲解。