SECSGEM协议E系列规范与GEM功能集成开发 - 第4节

4.1 GEM通用设备模型(Common Equipment Model)

E30规范定义的通用设备模型(CEM)是GEM功能集成的核心抽象层。它将半导体制造设备抽象为设备(Equipment)、单元(Unit)、模块(Module)和子系统(Subsystem)四个层级,为上层应用提供统一的设备视图。

核心设计原则:CEM模型不绑定具体硬件实现,而是通过标准化的状态机、变量和集合来描述设备行为,使得不同厂商的设备可以通过同一套SECS/GEM接口进行监控和控制。

4.1.1 设备层级结构

层级 英文名称 描述 示例
设备 Equipment 最高层级,代表完整的制造工具 刻蚀机、光刻机、沉积设备
单元 Unit 设备内可独立执行工艺的功能实体 工艺腔室、传输腔室
模块 Module 单元内的子功能组件 射频电源模块、温控模块
子系统 Subsystem 支撑模块运行的底层系统 冷却系统、真空系统
GEM通用设备模型层级结构 设备 (Equipment) 单元 (Unit) 1 单元 (Unit) 2 单元 (Unit) N 模块 A 模块 B 模块 C 模块 D 子系统 1 子系统 2 子系统 3 子系统 4 子系统 5 每个层级都包含独立的状态机、事件集合和变量列表,通过SECS消息进行访问

4.2 设备状态模型(Equipment State Model)

设备状态模型定义了设备从初始化到运行、维护、故障恢复的完整生命周期状态转换。E30规范要求每个设备必须实现至少以下状态:

  • INIT(初始化):设备上电后进入,执行自检和参数加载
  • IDLE(空闲):设备就绪,等待工艺任务
  • RUN(运行):正在执行工艺或传输操作
  • PAUSE(暂停):工艺中断,可恢复
  • ALARM(报警):检测到异常,需要操作员干预
  • MAINT(维护):设备处于维护模式

4.2.1 状态转换规则

当前状态 触发事件 目标状态 说明
INIT 初始化完成 IDLE 自检通过,参数加载成功
IDLE 启动工艺 RUN 收到S2F41启动命令
RUN 暂停请求 PAUSE 操作员或上位机发起暂停
RUN 故障检测 ALARM 传感器触发报警条件
PAUSE 恢复命令 RUN 继续未完成的工艺
ALARM 报警清除 IDLE 故障排除后复位
IDLE 维护请求 MAINT 进入维护模式
MAINT 维护完成 IDLE 维护结束,设备就绪
设备状态模型状态转换图 INIT IDLE RUN PAUSE ALARM MAINT 初始化完成 启动工艺 暂停 故障 维护请求 维护完成 报警清除 恢复

4.3 处理状态模型(Processing State Model)

处理状态模型描述设备在执行具体工艺任务时的微观状态序列。与设备状态模型关注整体运行模式不同,处理状态模型聚焦于晶圆加工流程中的每个步骤。

4.3.1 处理状态定义

  • IDLE_PROC:处理单元空闲,等待晶圆
  • LOADING:晶圆正在装载
  • PROCESSING:正在执行工艺(刻蚀、沉积、清洗等)
  • UNLOADING:晶圆正在卸载
  • COMPLETE:处理完成,等待下一片晶圆
  • ABORTED:处理异常终止
开发提示:处理状态模型通常与设备状态模型嵌套使用。例如,设备处于RUN状态时,其内部的处理单元可能依次经历LOADING→PROCESSING→UNLOADING的循环。
处理状态模型流程图 IDLE_PROC LOADING PROCESSING UNLOADING COMPLETE ABORTED 晶圆到达 装载完成 工艺完成 卸载完成 下一片晶圆 异常

4.4 设备常量与变量定义

E30规范定义了标准化的数据访问接口,通过设备常量(Equipment Constants, EC)和变量(Variables)实现设备参数的读写。这些数据项是SECS/GEM通信中S2F13/S2F14(常量读写)和S1F3/S1F4(变量读写)消息的基础。

4.4.1 设备常量(EC)

设备常量是设备运行过程中相对稳定的配置参数,通常只在设备初始化或维护时修改。每个常量由唯一的常量ID(ECID)标识。

ECID 常量名称 数据类型 描述 典型值
1 CHAMBER_TEMP F4 工艺腔室目标温度 150.0
2 PRESSURE_SETPOINT F4 腔室压力设定值 50.0
3 GAS_FLOW_RATE F4 工艺气体流量 100.0
4 RF_POWER I2 射频功率设定值 500
5 TIMEOUT_SEC I2 工艺超时时间 300

4.4.2 变量(Variables)

变量反映设备的实时状态,包括状态变量(SV)和数据变量(DV)。状态变量描述设备当前状态,数据变量提供测量值。

变量类型 VID 变量名称 数据类型 描述
SV 101 EQUIPMENT_STATE A 设备当前状态(IDLE/RUN/ALARM等)
SV 102 PROCESS_STATE A 处理状态(LOADING/PROCESSING等)
DV 201 CURRENT_TEMP F4 当前腔室温度
DV 202 CURRENT_PRESSURE F4 当前腔室压力
DV 203 WAFER_COUNT I4 已处理晶圆总数

4.4.3 变量访问示例

以下是通过SECS消息读取设备常量和变量的典型代码片段:

// 读取设备常量(S2F13请求,S2F14响应)
// 请求:读取ECID=1(腔室温度)和ECID=2(压力设定值)
S2F13:
  <L [2]
    <U2 1>   // ECID 1
    <U2 2>   // ECID 2
  >

// 响应:
S2F14:
  <L [2]
    <L [2]
      <U2 1>     // ECID
      <F4 150.0> // 值
    >
    <L [2]
      <U2 2>     // ECID
      <F4 50.0>  // 值
    >
  >

// 读取状态变量(S1F3请求,S1F4响应)
// 请求:读取VID=101(设备状态)和VID=201(当前温度)
S1F3:
  <L [2]
    <U2 101>
    <U2 201>
  >

// 响应:
S1F4:
  <L [2]
    <L [2]
      <U2 101>     // VID
      <A "RUN">    // 设备状态值
    >
    <L [2]
      <U2 201>     // VID
      <F4 149.8>   // 当前温度值
    >
  >
注意事项:
  • ECID和VID的分配范围必须遵循E30规范,避免与保留ID冲突(通常0-100为系统保留)
  • 变量数据类型必须与SECS-II编码严格对应,例如F4对应4字节浮点,I2对应2字节有符号整数
  • 设备常量写入(S2F15/S2F16)通常需要操作员权限或安全校验

4.5 模型集成与开发要点

在实际的GEM功能集成开发中,需要将设备模型、状态模型和变量定义统一映射到具体的设备控制软件中。以下是关键集成步骤:

  1. 模型映射:将物理设备分解为CEM层级结构,为每个层级分配ECID和VID范围
  2. 状态机实现:使用状态模式(State Pattern)实现设备状态和处理状态的转换逻辑
  3. 变量注册:在GEM通信层注册所有常量和变量,确保SECS消息能正确路由
  4. 事件绑定:将状态转换事件与SECS事件通知(CEID)关联,实现主动上报
  5. 一致性校验:验证设备状态与处理状态的组合是否合法(例如RUN状态下处理状态不能为IDLE_PROC)
GEM模型集成架构 设备控制应用 CEM + 状态模型 SECS/GEM 接口 EC / SV / DV 注册表 状态回调 SECS消息 读写操作
最佳实践:建议在开发初期建立完整的EC/VID清单文档,并与设备厂商确认每个变量的读写权限和取值范围。使用模拟器先行验证状态转换逻辑,可减少50%以上的现场调试时间。