配方管理
在几篇SECS/GEM系列博客文章(包括收集事件、数据轮询和警报)之后,我们现在讨论GEM特性的特性和优点,称为配方管理。我们将介绍配方的定义, 配方管理是什么意思,,以及为什么需要这个功能!
什么是配方?
配方是一组描述设备应如何处理其材料的指令。配方内容由设备供应商定义。
什么是配方管理?
配方管理允许工厂主机在设备之间传输配方。它还要求设备在设备上的配方发生变化时通知工厂主机。
为什么需要这个特性?
几乎所有的半导体工厂都需要这个特性来确保配方的完整性并支持可追溯性。主机将设备上已批准的配方上传并保存下来供以后使用,以确保配方不会被更改。为了可跟踪性,配方通常与工艺数据一起保存。
配方管理是如何工作的?
配方通过SECS消息在主机和设备之间传递。有几组SECS消息被用于这个功能。E30 GEM列举了格式化、非格式化和大型配方的消息集。这里将不讨论大型配方的消息集。
当操作人员在设备上修改配方时,设备还需要通知主机。生成的PPChange收集事件还需要伴有两个数据变量:载有被更改的配方ID的变量PPChangeName以及载有包含更改类型(创建、删除和编辑)的变量PPChangeStatus。当配方被传到设备上时,设备应对内容进行验证。如果配方无效,则应该生成一个PPVerificationFailed的收集事件,伴有包含验证失败信息的PPError数据变量,以将问题通知主机。如果验证失败,该配方将不被使用。
识别
每个配方都由一个名为process program ID或PPID的ASCII名称标识。工厂主机和设备GEM接口在配方操作中使用该名称。
持续性
在GEM 接口中, 配方是持续性的。如果主机断开并重新连接,或者设备重新启动,GEM接口仍将记得配方。此外,大多数工厂主机会将配方保存在工厂端。
使用哪些消息?
下面是与集合事件相关的每个主要消息的总结。注意,“S”表示“流”,“F”表示“函数”。S和F一起唯一地标识消息。
1. 所有配方
消息编号 |
方向 |
描述 |
S7F17 |
主机 -> 设备 |
从设备上删除一个配方。 空列表将删除设备上的所有配方。 |
消息编号 |
方向 |
描述 |
S7F19 |
主机 -> 设备 |
请求设备上所有可用的配方列表 |
2. 非格式化配方
a) 设备端发起上传
消息编号 |
方向 |
描述 |
S7F1 |
主机 <- 设备 |
设备要求上传一个配方(仅当配方是Multi-block) |
S7F3 |
主机 <- 设备 |
设备上传一个配方到主机 |
b) 设备端发起下载(从主机获取一个配方)
消息编号 |
方向 |
描述 |
S7F5 |
主机 <- 设备 |
设备请求从主机获取一个配方 |
c) Host端发起下载(下载一个配方到设备)
消息编号 |
方向 |
描述 |
S7F1 |
主机 -> 设备 |
主机要求下传一个配方到设备 |
S7F3 |
主机 -> 设备 |
主机下传一个配方到设备 |
d) Host端请求从设备获取一个配方
消息编号 |
方向 |
描述 |
S7F5 |
主机 -> 设备 |
主机请求从设备获取一个配方 |
3. 格式化配方
a) 设备上传一个配方
消息编号 |
方向 |
描述 |
S7F1 |
主机 <- 设备 |
设备要求上传一个配方 |
S7F23 |
主机 <- 设备 |
设备上传一个配方到主机 |
b) 设备端发起下载(从主机获取一个配方)
消息编号 |
方向 |
描述 |
S7F25 |
主机 <- 设备 |
设备请求从主机获取一个配方 |
c) Host端发起下载(下载一个配方到设备)
消息编号 |
方向 |
描述 |
S7F1 |
主机 -> 设备 |
主机要求下传一个配方到设备 |
S7F23 |
主机 -> 设备 |
主机下传一个配方到设备 |
d) Host端请求从设备获取一个配方
消息编号 |
方向 |
描述 |
S7F5 |
主机 -> 设备 |
主机请求从设备获取一个配方 |
e) 设备请求发送配方验证结果
消息编号 |
方向 |
描述 |
S7F29 |
主机 <- 设备 |
设备请求发送配方验证结果 |
f) 设备发送配方验证结果
消息编号 |
方向 |
描述 |
S7F27 |
主机 <- 设备 |
设备发送配方验证结果 |
有关配方管理的常见问题
可以传送一个多大的配方?
对于未格式化的菜谱消息,菜谱要么是单个ASCII字符串,要么是二进制数组值。单个数组值被限制为16.777215 MB。
格式化的配方消息,将配方分解为一个项目列表。单个数组值被限制为16.777215 MB。消息的总大小被限制为4.294967295 GB。