2. 设备状态机基础:概念、状态、事件、转换与动作
在 SECS/GEM 协议体系中,设备状态机(Equipment State Machine, ESM)是描述半导体设备行为与通信逻辑的核心模型。它通过有限个状态、事件、转换和动作,精确刻画设备从初始化到生产、再到停止的完整生命周期。理解状态机基础,是后续设计 GEM 功能、验证设备合规性的前提。
2.1 状态机基本概念
状态机(State Machine)是一种数学模型,用于描述对象在多个离散状态之间如何响应事件并执行动作。在半导体设备中,状态机将复杂的物理行为(如晶圆传输、工艺腔抽真空、报警恢复)抽象为可编程的逻辑单元。
| 术语 | 定义 | 设备示例 |
|---|---|---|
| 状态 (State) | 设备在某一时刻的稳定工况,具有唯一标识 | INITIAL、IDLE、PROCESSING、ALARM |
| 事件 (Event) | 触发状态转换的外部或内部信号 | 远程指令、传感器触发、定时器超时 |
| 转换 (Transition) | 从当前状态到目标状态的有向路径 | IDLE → PROCESSING(事件:START) |
| 动作 (Action) | 转换发生时执行的原子操作 | 发送 S1F1、锁定传送门、记录日志 |
2.2 状态 (State) 的定义与作用
状态是设备行为的最小稳定单元。在 SECS/GEM 中,状态通常分为控制状态(如 COMMUNICATION、CONTROL)和处理状态(如 PROCESSING、IDLE)。每个状态必须满足:
- 唯一性: 同一时刻设备只能处于一个状态。
- 可观测性: 主机可通过 S1F3/S1F4 查询当前状态。
- 稳定性: 除非发生事件,否则设备不会自动离开当前状态。
2.3 事件 (Event) 的定义与作用
事件是状态转换的触发器。在 SECS/GEM 中,事件分为两类:
- 外部事件: 来自主机(Host)的 SECS 消息,如 S2F41(远程命令)、S1F5(请求状态)。
- 内部事件: 设备自身产生的信号,如传感器超限、定时器到期、操作员按下按钮。
事件必须满足原子性:一个事件要么完全发生,要么完全不发生,不存在中间状态。事件通常携带参数(如报警 ID、工艺配方号),这些参数会影响转换后的动作。
2.4 转换 (Transition) 的定义与作用
转换定义了设备如何从一个状态迁移到另一个状态。每个转换包含三个要素:
- 源状态 (Source State): 转换开始前的状态。
- 触发事件 (Trigger Event): 导致转换发生的事件。
- 目标状态 (Target State): 转换结束后的状态。
转换必须满足确定性:在任意状态下,对于同一事件,最多只能有一个确定的转换路径。如果存在多个可能路径,则必须通过守卫条件 (Guard Condition) 来区分。
2.5 动作 (Action) 的定义与作用
动作是状态转换过程中执行的具体操作。动作可以是:
- 通信动作: 发送 SECS 消息(如 S1F1、S6F11)、更新状态变量。
- 物理动作: 控制电机启停、打开/关闭阀门、切换光源。
- 记录动作: 写入日志、更新数据库、触发报警显示。
动作必须满足可重入性:如果转换因错误中断,设备应能回滚到安全状态,或通过补偿动作恢复一致性。动作通常按顺序执行,且每个动作的执行结果会影响后续动作。
2.6 状态机设计原则
| 原则 | 说明 | 违反后果 |
|---|---|---|
| 完备性 | 每个状态对所有可能事件都有定义 | 未定义事件导致设备行为不可预测 |
| 一致性 | 相同事件+相同状态总是产生相同转换 | 主机与设备状态不同步 |
| 可达性 | 所有状态都能从初始状态经过有限转换到达 | 部分功能永远无法使用 |
| 安全性 | 不允许从非安全状态直接进入危险操作 | 设备损坏或人员受伤 |
2.7 状态机在 SECS/GEM 中的映射
在 SECS/GEM 标准中,设备状态机并非孤立存在,而是与 GEM 的能力模型紧密绑定。每个状态、事件、转换和动作,最终都会映射到具体的 SECS 消息和 GEM 状态变量:
- 状态 → 状态变量 (SV): 如 MDLN(设备型号)、SOFTREV(软件版本)等。
- 事件 → 通知消息: 如 S6F11(事件报告)、S5F1(报警报告)。
- 转换 → 远程命令 (RCMD): 如 S2F41 中的 START、STOP、RESET。
- 动作 → 设备终端服务 (DTS): 如 S10F3(终端显示)、S2F49(设备控制)。