事件上报基础概念:CEID、Report 与 DV
在 SECS/GEM 协议中,采集事件上报是设备主动向主机(Host)通知特定状态变化的核心机制。要正确配置上报条件,必须先理解三个基础概念:CEID(Collection Event ID)、Report(事件报告)和DV(Data Variable,数据变量)。这三者构成了从“事件发生”到“数据上报”的完整链路。
核心关系速记:CEID 定义“何时触发”,Report 定义“上报哪些数据”,DV 定义“数据的具体内容”。三者缺一不可。
1. CEID(Collection Event ID)—— 事件触发器
CEID 是一个整数标识符,用于唯一标识设备上的一个可采集事件。当设备内部发生特定状态变化(如晶圆到达、加工完成、报警产生)时,设备会检查该事件是否已启用采集,若启用则触发对应的上报流程。
- 唯一性:每个 CEID 在设备范围内唯一,通常由设备厂商定义。
- 可配置性:主机可通过 S2F41(Enable/Disable Collection Event)命令动态启用或禁用特定 CEID。
- 关联性:一个 CEID 可以关联多个 Report,一个 Report 也可以被多个 CEID 引用。
实际场景:例如 CEID=101 表示“晶圆进入加工腔”,CEID=102 表示“加工完成”。主机只需启用需要的 CEID,即可按需接收事件。
2. Report(事件报告)—— 数据容器
Report 是一个命名的数据集合,用于将多个 DV 组合成一个逻辑单元。当 CEID 被触发时,设备会查找与该 CEID 关联的所有 Report,并将这些 Report 中包含的 DV 值打包发送给主机。
| 属性 | 说明 | 示例 |
|---|---|---|
| Report ID | 唯一标识一个 Report 的整数 | RPT_ID = 1001 |
| 关联 DV 列表 | 该 Report 包含的 DV 集合 | DV1, DV2, DV5 |
| 关联 CEID | 哪些 CEID 触发时会发送此 Report | CEID=101, CEID=102 |
常见误区:一个 Report 可以同时被多个 CEID 引用,但每个 CEID 触发时都会独立发送该 Report 的完整数据。如果多个 CEID 同时触发,主机可能收到重复的 Report 数据,需要在应用层去重。
3. DV(Data Variable)—— 数据原子
DV 是 SECS/GEM 中最小的数据单元,代表设备的一个可观测状态或属性。每个 DV 都有一个唯一的 ID 和数据类型(如整型、字符串、浮点型等)。
- 静态 DV:值相对固定,如设备型号、软件版本。
- 动态 DV:值随设备状态实时变化,如当前温度、晶圆位置、加工时间。
- 状态 DV:反映设备当前状态,如设备模式(Online/Offline)、报警状态。
关键规则:DV 必须被包含在至少一个 Report 中,才能通过 CEID 触发上报。未被任何 Report 引用的 DV 不会出现在事件上报中。
4. 三者协作关系总结
CEID、Report、DV 的协作关系可以用以下流程概括:
- 配置阶段:主机通过 S2F37(Define Report)定义 Report 及其包含的 DV 列表;通过 S2F35(Link Event Report)将 CEID 与 Report 关联。
- 运行阶段:设备检测到状态变化,检查对应 CEID 是否启用。
- 上报阶段:若 CEID 启用,设备收集关联 Report 中所有 DV 的当前值,打包成 S6F11(Event Report Data)消息发送给主机。
5. 配置注意事项
| 概念 | 配置要点 | 常见错误 |
|---|---|---|
| CEID | 确保 CEID 在设备范围内唯一;启用/禁用状态需与主机同步 | 重复定义 CEID 导致触发混乱 |
| Report | Report 包含的 DV 数量不宜过多(建议 ≤ 20 个),避免消息过大 | Report 未关联任何 CEID,导致数据永不发送 |
| DV | DV 的数据类型必须与设备实际值匹配;动态 DV 需保证实时性 | DV 类型定义错误导致解析失败 |
最佳实践:建议在设备初始化阶段,通过 S1F3(Request Equipment Data)获取设备支持的 CEID、Report 和 DV 列表,确保配置的准确性。避免在运行过程中频繁修改关联关系。