GEM 状态模型基础:设备状态机(EQUIPMENT STATE MACHINE)的三大状态详解

在 SECS/GEM 协议体系中,设备状态机(Equipment State Machine, ESM) 是描述设备宏观运行阶段的核心模型。它定义了设备从上电到完成生产任务的全生命周期行为。GEM 标准将设备状态机划分为三个顶级状态:INIT(初始化)、IDLE(空闲) 和 EXECUTING(执行)。理解这三个状态及其转换关系,是掌握 T6 定时器超时处理与状态机复位逻辑的前提。

核心要点: 设备状态机是 GEM 通信模型中最高层级的状态机,它控制着设备是否允许开始加工、是否处于报警状态、以及是否能够响应远程命令。T6 定时器超时往往会导致状态机强制复位到 INIT 或 IDLE 状态。

2.1 三大状态的定义与职责

下表从状态描述、进入条件、主要行为三个维度,对 INIT、IDLE、EXECUTING 进行对比:

状态名称 状态描述 进入条件 主要行为 / 职责
INIT 设备上电或复位后的初始阶段,尚未完成自检与通信就绪 设备上电、硬件复位、T6 超时强制复位 执行内部自检、加载配方参数、建立通信链路、初始化 GEM 变量
IDLE 设备已完成初始化,处于待命状态,未执行任何加工任务 INIT 阶段成功完成、加工任务结束、异常中止后清理完成 等待主机(Host)下发启动命令、允许远程控制、监控报警状态
EXECUTING 设备正在执行加工、传输或测量任务 从 IDLE 接收到启动命令(如 S02F41) 执行工艺步骤、上报事件、处理材料、响应暂停/中止命令
工程提示: 在半导体设备中,IDLE 状态并不等同于“断电”或“离线”。处于 IDLE 状态的设备仍然保持与主机的 SECS 连接,并且可以响应状态查询、报警上报等非加工类消息。

2.2 状态转换流程与触发条件

设备状态机的转换遵循严格的单向或双向路径。下图展示了三个状态之间的标准转换关系:

GEM 设备状态机三大状态转换图 设备状态机(ESM)三大状态转换图 INIT 初始化 / 自检 IDLE 空闲 / 待命 EXECUTING 执行加工 初始化完成 启动命令 加工完成 / 中止 复位 / T6 超时 严重异常 / T6 超时强制复位 说明: 实线箭头表示正常流程转换;红色虚线箭头表示异常复位路径,通常由 T6 定时器超时或硬件故障触发。

2.3 各状态内部子状态与关键行为

每个顶级状态内部还包含若干子状态,这些子状态决定了设备在宏观阶段中的具体行为。以下是各状态的关键子状态与行为清单:

2.3.1 INIT 状态

  • Power On Self Test (POST): 设备上电后执行硬件自检,检查传感器、执行器、通信模块是否正常。
  • Communication Establishment: 建立 SECS 连接(如果配置为主动连接模式),发送 S01F01 请求通信。
  • Variable Initialization: 将 GEM 状态变量(如 MDLN、SOFTREV、CLOCK)恢复为默认值或从非易失存储加载。
  • Recipe Loading: 加载当前激活的配方参数到控制器内存。
注意: 如果 INIT 阶段超过 T6 定时器设定的超时时间(通常为 10-60 秒),设备应主动上报 S06F01 报警,并可能触发状态机复位循环。这是 T6 超时处理的关键场景之一。

2.3.2 IDLE 状态

  • Remote Command Listening: 监听主机下发的远程命令(如 S02F41 启动、S02F41 停止)。
  • Alarm Monitoring: 持续监控设备报警状态,若发生报警则主动上报 S05F01。
  • Material Presence Check: 检查加工腔内是否有材料(晶圆、掩模版等),并上报 S01F11 状态数据。
  • Operator Interface: 允许本地操作员通过 HMI 查看状态或手动干预。

2.3.3 EXECUTING 状态

  • Process Step Execution: 按照配方步骤顺序执行工艺参数(温度、压力、时间、流量等)。
  • Event Reporting: 在关键工艺节点(如步骤开始、步骤结束、报警触发)上报 S06F11 事件通知。
  • Material Tracking: 跟踪材料在设备内的位置与状态,更新物料跟踪系统。
  • Pause / Abort Handling: 响应主机的暂停(S02F41 PAUSE)或中止(S02F41 ABORT)命令,执行安全停止流程。

2.4 状态转换的触发消息与条件

下表列出了从 IDLE 到 EXECUTING 以及返回时,GEM 标准中常用的 SECS 消息:

转换方向 触发消息 消息方向 说明
IDLE → EXECUTING S02F41 (Host Command: START) Host → Equipment 主机下发启动命令,设备进入加工流程
EXECUTING → IDLE S02F41 (Host Command: STOP / ABORT) Host → Equipment 主机下发停止或中止命令,设备结束加工
EXECUTING → IDLE 本地加工完成事件 Equipment 内部 配方执行完毕,自动返回空闲状态
IDLE → INIT S02F41 (Host Command: RESET) Host → Equipment 主机下发复位命令,设备重新初始化
任何状态 → INIT T6 定时器超时 Equipment 内部 通信或操作超时,强制复位状态机

2.5 状态机与 T6 定时器的关联

T6 定时器在 GEM 协议中用于监控设备对主机请求的响应时间。当 T6 超时时,设备状态机将根据设备配置执行以下两种复位策略之一:

  1. 软复位(Soft Reset): 状态机从当前状态跳转到 IDLE 状态,保留部分配置参数(如配方、报警设置),仅清除通信缓冲区。
  2. 硬复位(Hard Reset): 状态机强制跳转到 INIT 状态,所有 GEM 变量恢复为出厂默认值,需要重新执行完整的初始化流程。
最佳实践: 在半导体设备开发中,建议将 T6 超时后的复位策略设计为可配置项。对于关键工艺设备(如刻蚀机、光刻机),推荐使用硬复位以确保状态一致性;对于传输类设备(如机械手、EFEM),软复位可减少停机时间。

2.6 状态机复位对设备行为的影响

当设备状态机因 T6 超时或其他异常发生复位时,以下 GEM 行为将受到影响:

  • 通信会话: 如果复位到 INIT,设备可能断开现有 SECS 连接并重新建立,导致主机需要重新发送 S01F13 建立通信。
  • 事件订阅: 所有通过 S02F33 注册的 CEID(收集事件 ID)将被清除,主机需要重新订阅。
  • 报警状态: 当前激活的报警可能被清除或保留,取决于复位类型。
  • 配方状态: 硬复位会丢失当前加载的配方,软复位则保留。
  • 材料跟踪: 正在加工的材料可能被标记为“未知”状态,需要人工干预。

下图展示了 T6 超时触发状态机复位时的内部处理流程:

T6 超时触发状态机复位流程 T6 超时触发状态机复位流程 T6 定时器超时 判断复位策略 软复位 → IDLE 硬复位 → INIT 保留配方/报警 恢复出厂默认 等待主机命令 重新初始化

2.7 常见问题与避坑指南

常见误区 1: 认为 IDLE 状态等同于“离线”。实际上,IDLE 状态下的设备仍然保持 SECS 连接,可以响应 S01F01 和 S01F03 等查询消息。只有处于 INIT 状态且未完成通信建立时,设备才可能处于离线状态。
常见误区 2: 忽略 EXECUTING 状态下的 T6 超时。许多开发者只在 IDLE 或 INIT 状态监控 T6 定时器,但 EXECUTING 状态下如果主机长时间未响应设备的上报消息(如 S06F11 事件确认),同样会触发 T6 超时,导致加工中断。
调试建议: 在开发阶段,建议在设备 HMI 上实时显示当前状态机所处的顶级状态和子状态,并记录状态转换日志。当 T6 超时发生时,日志应包含超时发生时的状态、已等待时间、以及复位后的目标状态,便于快速定位问题。