在几篇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一起唯一地标识消息。
所有配方
消息编号 |
方向 |
描述 |
S7F17 |
主机 -> 设备 |
从设备上删除一个配方。 空列表将删除设备上的所有配方。 |
S7F19 |
主机 -> 设备 |
请求设备上所有可用的配方列表 |
非格式化配方
消息编号 |
方向 |
描述 |
S7F1 |
主机 <- 设备 |
设备要求上传一个配方 |
S7F3 |
主机 <- 设备 |
设备上传一个配方到主机 |
S7F5 |
主机 <- 设备 |
设备请求从主机获取一个配方 |
S7F1 |
主机 -> 设备 |
主机要求下传一个配方到设备 |
S7F3 |
主机 -> 设备 |
主机下传一个配方到设备 |
S7F5 |
主机 -> 设备 |
主机请求从设备获取一个配方 |
格式化配方
消息编号 |
方向 |
描述 |
S7F1 |
主机 <- 设备 |
设备要求上传一个配方 |
S7F23 |
主机 <- 设备 |
设备上传一个配方到主机 |
S7F25 |
主机 <- 设备 |
设备请求从主机获取一个配方 |
S7F1 |
主机 -> 设备 |
主机要求下传一个配方到设备 |
S7F3 |
主机 -> 设备 |
主机下传一个配方到设备 |
S7F5 |
主机 -> 设备 |
主机请求从设备获取一个配方 |
S7F29 |
主机 <- 设备 |
设备请求发送配方验证结果 |
S7F27 |
主机 <- 设备 |
设备发送配方验证结果 |
有关配方管理的常见问题
可以传送一个多大的配方?
对于未格式化的配方消息,配方要么是单个ASCII字符串,要么是二进制数组值。单个数组值被限制为16.777215 MB。
格式化的配方消息,将配方分解为一个项目列表。单个数组值被限制为16.777215 MB。消息的总大小被限制为4.294967295 GB。
SECS/GEM series: Recipe Management
Following several SECS/GEM series blog posts, including Collection Events, Data Polling and Alarms, we now get into the features and merit of the GEM feature called Recipe Management. We will cover the definition of recipes, what recipe management means and why you need this feature!
What are recipes?
Recipes are sets of instructions describing how the equipment should process its material. The Recipe content is defined by the equipment supplier.
What is recipe management?
Recipe management allows the factory host to transfer recipes to and from the equipment. It also requires the equipment to notify the factory host when recipes are changed on the equipment.
Why do you need this feature?
Almost all semiconductor factories require this feature to ensure recipe integrity and to support traceability. The host will upload approved recipes from the equipment and save them for later use to ensure that the recipe does not change. For traceability, the recipe is usually saved with the process data.
How does recipe management work?
Recipes are passed between the host and equipment via SECS messages. There are several sets of SECS messages to enable this. E30 GEM specifies formatted, unformatted, and large recipe message sets. The large recipe message set will not be discussed here.
The equipment is also required to notify the host whenever recipes are changed by an operator at the equipment. A PPChange collection event is generated with two data variables PPChangeName containing the PPID of the recipe that changed and PPChangeStatus containing the type of change (created, deleted, edited).
Once a recipe has been transferred to the equipment, the equipment should verify the content. If the recipe is invalid, then a PPVerificationFailed collection event should be generated with a PPError data variable containing the validation failure information to notify the host of the problem. The recipe should not be used if it fails verification.
Identification
Each recipe is identified by an ASCII name called a process program ID or PPID. The factory host and the equipment GEM interface use the name in recipe operations.
Persistence
Recipes are persisted in a GEM interface. If the host disconnects and reconnects, or if the equipment is restarted, the GEM interface will remember the recipes. In addition, most factory hosts will save recipes on the factory side.
Which messages are used?
Here is a summary of each of the primary messages related to collection events. Note that the “S” identifies the “stream” and “F” identifies the “function”. Together, a stream and function number uniquely identify a message.
All Recipes
Message ID |
Direction |
Description |
S7F17 |
Host -> Equipment |
Delete a recipe from the equipment. An empty list will delete all recipes from the equipment. |
S7F19 |
Host->Equipment |
Request a list of available recipes from the equipment |
Unformatted Recipes
Message ID |
Direction |
Description |
S7F1 |
Host<-Equipment |
Equipment requests to upload a recipe |
S7F3 |
Host<-Equipment |
Equipment uploads a recipe to the host |
S7F5 |
Host<-Equipment |
Equipment requests a recipe from the host |
S7F1 |
Host->Equipment |
Host requests to download a recipe |
S7F3 |
Host->Equipment |
Host downloads a recipe to the equipment |
S7F5 |
Host->Equipment |
Host requests a recipe from the equipment |
Formatted Recipes
Message ID |
Direction |
Description |
S7F1 |
Host<-Equipment |
Equipment requests to upload a recipe |
S7F23 |
Host<-Equipment |
Equipment uploads a recipe to the host |
S7F25 |
Host<-Equipment |
Equipment requests a recipe from the host |
S7F1 |
Host<-Equipment |
Host requests to download a recipe |
S7F3 |
Host<-Equipment |
Host downloads a recipe to the equipment |
S7F5 |
Host<-Equipment |
Host requests a recipe from the equipment |
S7F29 |
Host<-Equipment |
Equipment requests to verify a recipe |
S7F27 |
Host<-Equipment |
Equipment sends recipe verification results |
Frequently Asked Questions about Recipe Management
How large a recipe can be transferred?
For unformatted recipe messages, the recipe is either a single ASCII string or a binary array value. A single array value is limitedto 16.777215 MB.
Formatted recipe messages,the recipe is split up into a list of items. A single array value is limited to 16.777215 MB. Total message size is limited to 4.294967295 GB.
Topics: SECS/GEM, SECS/GEM Features & Benefits Series
Posted by Bill Grey: Distinguished Software Engineer on Feb 20, 2018 10:54:00 AM


