SECS/GEM是由国际半导体设备与材料协会(SEMI)的会员一起构建的连接性标准。该标准应用于在设备和工厂管理系统间的通讯标准。

协议网站 www.secsgem.cn

金南瓜SECS/GEM在三星、LG、海力士、长江存储、长鑫存储、中芯国际等工厂里面7*24小时稳定运行,已经无重启无故障3年以上时间。

介绍

SECS/GEM指的是一组用于管理制造设备和工厂主机系统之间通信的半导体行业标准。消息层标准SEMI E5 SECS-II定义了一个通用的消息结构和一个包含许多标准化消息的库。协议层标准SEMI E37高速消息服务(HSMS)定义了使用TCP/IP传输SECS-II消息的二进制结构。SEMI E30 GEM定义了一组最低要求、附加(可选)功能、用例和部分SECS-II消息的用户场景。

SECS/GEM是在设备上实现的,工厂使用它来实现命令和控制功能。由于它是一个行业标准,任何符合SECS/GEM的主机软件都可以与任何符合SECS/GEM设备进行通信。该标准在设备上全面实施后,工厂软件可通过其SECS/GEM接口对设备进行全面控制和监控。这些标准为设备制造商和工厂提供了许多好处。

通讯

SECS/GEM SEMI连通性标准定义主机与设备如何初始地建立通讯。它也定义当通讯中断时如何重新建立通讯。线上识别方法可验核设备的硬体和软体识别身分。SECS/GEM终端服务特性让主机操作者及设备操作者能够交换在主控台处手动键入的文字。

SECS/GEM适应性 GEM Adaptability

GEM COMPLIANCE STATEMENT

FUNDAMENTAL GEM REQUIREMENTS

MPLEMENTED

GEM-COMPLIANT

State Models

■Yes   □No

■Yes   □No

Equipment Processing States

■Yes   □No

Host Initiated S1F13/F14 Scenario

■Yes   □No

Event Notification

■Yes   □No

On-Line Identification

■Yes   □No

Error Messages

■Yes   □No

■Yes   □No

Documentation

■Yes   □No

Control (Operator Initiated)

■Yes   □No

ADDITIONAL CAPABILITIES

IMPLEMENTED

GEM-COMPLIANT

Establish Communications

■Yes   □No

■Yes   □No

Dynamic Event Report Configuration

■Yes   □No

■Yes   □No

Data Variable and Collection Event Namelist Requests

■Yes   □No

■Yes   □No

Variable Data Collection

■Yes   □No

■Yes   □No

Trace Data Collection

■Yes   □No

■Yes   □No

Status Data Collection

■Yes   □No

■Yes   □No

Alarm Management

■Yes   □No

■Yes   □No

Remote Control

■Yes   □No

■Yes   □No

Equipment Constants

■Yes   □No

■Yes   □No

Process Program Management

■Yes   □No

■Yes   □No

Material Movement

□Yes   ■No

■Yes   □No

Equipment Terminal Services

■Yes   □No

■Yes   □No

Clock

■Yes   □No

■Yes   □No

Limits Monitoring

■Yes   □No

■Yes   □No

Spooling

□Yes   ■No

□Yes   ■No

Control (Equipment-Initiated)

■Yes   □No

■Yes   □No

半导体前端

SECS/GEM半导体前端行业定义了一系列称为GEM300标准的标准,其中包括SEMI标准E40,E87,E90,E94和E116,并引用了E39标准。每个标准都为GEM接口提供了附加功能,但仍以GEM E30标准中的功能为基础。全球300毫米工厂使用基本的GEM标准的数据收集功能来监视特定的设备活动,例如晶圆移动和工艺作业执行。几乎每一个300mm晶圆制造工具都需要SECS / GEM标准和其他GEM300标准,以实现制造自动化。该行业一直是GEM和相关SEMI标准的最强支持者。

半导体后端

SECS/GEM半导体后端行业中的许多设备都执行SECS/GEM标准。已经实现了其他标准,例如用于测试仪专用设备模型的SEMI E122标准和用于处理设备专用设备模型的SEMI E123标准。

表面贴装技术

表面贴装技术行业中的许多设备都支持SECS/GEM标准,包括芯片放置,焊膏,烤箱和检查设备。GEM标准已在这些设备上使用了15年以上,尽管它没有比其他广泛使用的工业4.0选项优先使用。

光伏发电

光伏行业正式决定采用SECS / GEM标准,并提交了有关新的SEMI标准(第4557号投票)的提案,作为新的PV行业标准。甚至在采用SECS/GEM标准之前,多家光伏设备供应商就已经能够支持GEM标准。新标准称为“ PV设备通信接口(PVECI)指南”,并定义了一个框架,该框架利用SEMI E37(HSMS),SEMI E5(SECS-II),SEMI E30(GEM),SEMI E148和SEMI E10标准

GEM300介绍

GEM300支持协议E5、E30、E37、E40、E87、E90、E94、E116等标准。

拥有成熟的SECS/GEM300实施经验,为多个设备厂商提供设备支持GEM300,并且稳定运行于国内多个FAB厂。

我们的客户设备有湿法、退火、气体沉淀、离子注入、外延等设备

GEM300满足APC、FDC和EAP的高性能要求,并且运行稳定。

设备无缝对接EAP系统,从OHT天车放料到生产过程中,顺畅自然。我们以毫秒级交互别为目标,并非友商能用就行的实施态度。

满足FDC的高指标要求,大数据分析设备生产过程中的任何状态,包含大量的传感器,数千的传感器实时监控设备各项内容。通过大量的传感器反馈机制,设备快速的微调各项参数而保证持久稳定。FDC对于SDK的要求非常高,生产过程中时刻采集大量的数据,监控设备整体的实时情况

支持Run To Run使用场景,产品功能强大性与世界级接轨。

符合半导体设备安全设计考量,避免客户误操作导致的设备危险性动作问题。

数字孪生已经成为工业4.0最强有力的概念之一。通过整个制造和生产过程基于模型、实时、云回路监控、控制和优化的实现,数字孪生有助于达到实时集成制造的组织实施。

远程

主机可以最大限度地控制设备。

设备可能会限制当地操作员控制设备的能力,但这不是标准的要求。主机必须能够处理操作员在设备上调用的意外命令。

主机使用GEM远程命令来调用设备上的命令。

本地

操作者可以尽可能地控制设备。

主机可以完全访问信息。主机可以使用其他GEM特性(如收集事件、跟踪和状态数据收集)收集数据。

限制主机如何影响设备操作:

禁止启动处理(例如START)或导致物理移动的远程命令。在处理期间,还禁止影响处理的远程命令(停止、中止、暂停、恢复)。

允许使用其他不启动处理、不会导致物理移动或影响处理的远程命令。

在处理期间,禁止主机修改任何影响该进程的设备常数。

不影响当前运行进程的设备常数可以更改。

当不处理时,所有的设备常数都是可变的。

第一章 介绍

SECS/GEM指的是一组用于管理制造设备和工厂主机系统之间通信的半导体行业标准。消息层标准SEMI E5 SECS-II定义了一个通用的消息结构和一个包含许多标准化消息的库。协议层标准SEMI E37高速消息服务(HSMS)定义了使用TCP/IP传输SECS-II消息的二进制结构。SEMI E30 GEM定义了一组最低要求、附加(可选)功能、用例和部分SECS-II消息的用户场景。

SECS/GEM是在设备上实现的,工厂使用它来实现命令和控制功能。由于它是一个行业标准,任何符合SECS/GEM的主机软件都可以与任何符合SECS/GEM设备进行通信。该标准在设备上全面实施后,工厂软件可通过其SECS/GEM接口对设备进行全面控制和监控。这些标准为设备制造商和工厂提供了许多好处。本文重点介绍了其中的几个好处。

SECS/GEM降低了设备集成成本

工厂通常由跨国企业拥有和经营,这些企业从各种设备制造商购买设备。尽管每种设备的控制软件都不一样,但要求工厂对设备进行整合,使设备协调运行。虽然可以独立地将每个设备与定制的软件集成在一起,但是这样做既不节约成本,也不节省时间。

设备制造商的情况也类似,他们的产品销往全球各地的不同工厂。每个工厂的数据收集和应用软件都是不同的。设备制造商需要帮助工厂整合采购的设备。虽然为每个工厂开发定制的集成解决方案是可能的,但这仍然不是成本有效的。每当工厂要求定制集成特性时,这些成本就会转嫁到工厂本身。

定制化软件,无论是由设备制造商还是工厂开发的,创建和维护起来都很昂贵,而且往往质量低于预期。相比之下,SECS/GEM标准定义了如何在任何制造设备上创建标准化接口。设备制造商受益于为所有客户开发一个接口。工厂通过为他们购买的所有设备重用相同的集成软件而获益。工厂和设备制造商对该软件和技术的重用提高了软件质量,降低了成本,并允许更多的功能。设备制造商和工厂不仅可以在所需的最低需求功能上投资,还可以实现在其他方面无法负担的高级功能。如果他们只需要支持SECS/GEM,那么设备制造商就可以发布更多的数据,支持更先进的控制。反过来,工厂可以利用这些额外的数据来提高产品质量和生产率。

SECS/GEM适用于所有制造设备

因为SECS/GEM被划分为基本需求和附加功能,它可以在任何制造设备上实现,而不考虑其大小和复杂性。额外的功能是可选的,因为它们并不总是被需要的。例如,一些设备没有配方,因此不需要实现配方管理这项附加功能。

SECS/GEM也可以很好地根据设备数据的大小进行规模的缩放。例如,一个非常简单的设备或设备可能会发布10个不同的采集事件,而一个复杂的设备可能会发布5000个不同的采集事件; 然而,两者都可以使用相同的SECS/GEM技术。

使用SECS/GEM接口可以支持无数的应用程序

SECS/GEM使得设备上发生的一切都可以被追踪到。支持任何远程控制功能和系统配置。设备发布的数据越多,工厂可以实现的软件应用程序就越多。SECS/GEM接口使统计工艺控制、故障排除、预测性维护、前馈/反馈工艺控制、设备利用率、材料跟踪、配方验证以及更多应用程序的实现成为可能。这些应用程序通常减少了对设备上人机操作界面的需要,从而减少了工厂中操作员的数量。配方管理允许工厂最小化报废材料。例如,使用SECS/GEM接口将黄金配方存储在工厂的中央存储器,并确保在材料上使用正确的配方。

SECS/GEM非常有效地使用网络带宽

有几个特性使SECS/GEM自然高效。首先,每个SECS/GEM接口都充当消息代理。由于代理在设备上运行,未订阅的数据不会在网络上发布。如果主机软件要接收警报、收集事件或跟踪数据消息,必须先订阅。由于每个对警报、收集事件和跟踪数据的订阅都是单独管理的,因此设备可以实现单个SECS/GEM接口,该接口发布所有工厂应用程序请求的所有警报、收集事件和跟踪数据,而不会因为不必要的数据浪费网络带宽。此外,当主机订阅跟踪数据时,它可以指定数据收集速率,这使得SECS/GEM比以硬编码速率发布数据的协议更有效和有用。

另外,所有SECS/GEM消息总是以高效率的二进制格式传输。这比ASCII格式的协议使用更少的带宽。尽管使用二进制格式,SECS/GEM消息也很容易和标准的XML符号进行互转。

SECS/GEM获得业界的大力支持

多年来,SECS/GEM一直是半导体行业工厂/设备通信和控制系统的支柱。这意味着今天所有的半导体制造完全依赖于SECS/GEM通信。自90年代末以来,300mm半导体工厂一直在以SECS/GEM通信为基础的全自动化运行——像台积电、三星、美光、英特尔、东芝等大公司在每个工厂7*24小时的使用SECS/GEM。平板显示器、高亮度LED和光伏等其他行业也正式开始使用SECS/GEM,因为它们认识到SECS/GEM特性可以应用于任何制造设备,以支持关键任务的应用。

SECS/GEM是自描述的

虽然该标准要求GEM文档随设备一起提供,但是SECS/GEM仍支持多种方法让主机软件自动适应设备的SECS/GEM接口。主机软件可以通过一些消息请求可用报警、状态变量以及设备常量的列表,对于较新的SECS/GEM实现,主机软件还可以请求可用采集事件和数据变量的列表。这些消息使得SECS/GEM接口即插即用。此外,设备制造商还可以提供一个标准化的提供SECS/GEM接口及其特性的完整描述的XML文件。

总结

对于工厂和设备制造商来说,使用SECS/GEM技术有许多好处,以上只是其中的一部分。SECS/GEM是当今可用的成熟技术。

第二章 GEM 收集事件

在开始我们的SECS/GEM系列之前,让我们先来解释GEM标准的一个关键特性,即Collection Events。我们将从解释它们如何工作开始,然后进一步说明为什么它们在从制造设备收集数据方面如此有效。

什么是收集事件?

“收集事件”名称中的两个单词是描述性的。

如“事件”一词所示,收集事件是通知。它的目的是在设备上发生感兴趣的事情时通知主机。“主机”是指连接到设备GEM接口的工厂客户端软件。例如,收集事件可以在物料到达时报告,耗材不足时报告,出现硬件问题时报告,摄像机对物料进行检查时报告,物料准备取出时报告,燃烧室达到目标真空压力时报告,加工完成时报告等等。设备可以使用收集事件特性来报告任何感兴趣的事件。创建GEM接口的人准确地定义了主机可以使用哪些收集事件;因此,不同设备类型的可用收集事件集是不同的。

收集事件功能也能够将数据与收集事件消息一起发布。这是一种非常有效的数据收集形式,在消息可用时异步提供信息。例如,当物料到达时报告的收集事件也可以报告到达物料的条码和位置。GEM接口中有三种类型的数据; 关于收集事件的数据(称为数据变量)、关于状态的信息(称为状态变量)和设备设置信息(称为设备常量)。无论谁创建GEM接口,都将准确地定义每个收集事件将提供哪些信息。因此,不同设备类型的收集事件的可用信息集是不同的。只有在主机设置报表时,设备才会将可用数据发送到主机。

综上所述,收集事件不仅可以告诉主机发生了什么事情,还可以提供关于发生了什么事情以及设备状态的更详细的信息。

一个小的类比

打个比方,把工厂想象成老板,把他们购买的设备想象成员工。有许多不同的管理风格,就像有不同类型的工厂和运行工厂的风格一样。你不想被迫按照别人的工厂的方式经营自己的工厂。你想按你自己的方式去做。

此外,每个员工都是独特的,需要独特的关注度。每个员工都在做独特的事情。一般来说,所有的管理者都想知道员工的基本情况以及他们的员工在做什么。他们想要知道员工什么时候开始一个项目,什么时候完成一个项目。有些员工即使在极少的监督和汇报下也非常高效。一些员工需要大量的监督和报告。GEM允许工厂以独特的方式处理每台设备。具体来说,GEM收集事件为设备提供了一种报告其正在做什么的方式。

主机必须为报告建立规则,并适当地调整规则。例如,有时经理并不关心员工什么时候去洗手间。对于某些员工,经理可能想知道。在GEM接口中,主机可以选择哪些通知会发生,哪些不会发生。

有时经理只需要知道员工什么时候来,什么时候走,什么时候休息,什么时候下班。有时经理需要更多的细节,比如你完成了什么项目,花了多长时间,项目的关键结果。类似同样的,GEM允许主机不仅仅跟踪事件发生的时间,还要提供关于活动的详细信息。GEM报告非常有效地满足了这一需求。

为什么需要这个功能?

简单地说,收集事件允许您实时跟踪设备在做什么。如果一家工厂想要进行某种程度的智能制造,或者只是想提高生产率,那么首先需要的是能够跟踪设备在做什么。收集事件提供了这一点。您可以跟踪设备利用率、材料移动、处理里程碑、活动周期计数,以便进行预测性维护、消耗品使用,以及与发布的收集事件相关的任何其他内容。这些信息的应用是无止境的。

有时,收集事件还用于实现以下场景:设备在继续或获得继续的许可之前需要来自主机的信息。当设备准备好接受主机指令或权限时,可以通过收集事件通知主机。

收集事件通知如何工作?

设备的GEM接口可以发布许多不同的收集事件。通常情况下,主机不希望一次得到所有这些信息的通知,也不需要这样做。收集事件以两种方式使用发布/订阅设计模式。

基本的发布/订阅通知

主机订阅特定的收集事件,以便在事件发生时接收通知。订阅允许主机启用或禁用GEM接口中可用的每个收集事件的报告。设备在会该收集事件发生时发布它们。

事件报告发布/订阅数据收集

默认情况下,收集事件消息不包含任何数据。订阅还允许主机决定在每个启用的收集事件的消息中包含哪些数据。主机定义报表并将报表链接到收集事件;从而订阅数据。每个收集事件可以有不同的报告。还可以多个收集事件共享一个报表。报表里可以包含与收集事件关联的任何数据变量、任何状态变量和任何设备常量。设备会在发布收集事件是将请求的数据一并带出。

识别

设备发布的每个收集事件都有一个惟一的ID号进行标识。主机软件在启用或禁用收集事件时使用ID号。设备在发送收集事件消息时使用ID号。每个可用的数据变量、状态变量和设备常量都有一个惟一的ID号。当主机定义报表时,它也需要为报表分配惟一的ID号。

代理

代理构建在设备的GEM接口中,负责处理所有收集事件发布/订阅。它是设备系统的一部分。主机(客户端)和GEM接口之间的通信使用SECS/GEM通信进行标准化。GEM接口与设备的其余硬件和软件(设备收集事件和数据的源)之间的通信可以是任何适当的技术,只要GEM接口功能正常并且性能足够好就可以了。

这意味着消息只会在主机订阅之后才从设备发送到主机。将代理作为设备和GEM接口的一部分可以使GEM接口变得非常有效,并且比使用外部代理的协议使用更少的带宽,因为在外部代理中,所有消息和数据都必须一直发送到代理。

持久性

收集事件订阅持久化在GEM接口中。因此,如果主机断开并重新连接,或者设备重新启动,GEM接口仍旧记得所有订阅的设置。

GEM使用哪些消息?

下面是与收集事件相关的每个主要消息的摘要。注意,“S”表示“流”,“F”表示“函数”。流和函数号一起惟一地标识一个消息。

消息编号 方向 描述
S2F37 主机->设备 启用或禁用一组收集事件的报告。 空列表将启用或禁用所有收集事件的报告。在描述GEM接口时,启用所有收集事件报告非常有用。在启用所需收集事件的报告之前,禁用所有收集事件是非常有用的。
S2F33 主机->设备 定义一个或多个报告。 空列表将删除所有报告以及指向收集事件的报告链接。当试图重置订阅或首次连接到GEM接口并覆盖默认订阅时,删除所有报告功能非常有用。
S2F35 主机->设备 将一个或多个报告链接到一组收集事件。 如果报表已链接到一个收集事件,则必须移除链接,然后在一条消息中链接所有收集事件。空列表将从收集事件中删除报表链接。
S1F23 主机->设备 请求获取可用收集事件列表以及每个收集事件的可用数据列表。
S6F11 设备->主机 收集事件消息。 如果没有链接任何报告,则消息将只包含收集事件的ID。如果一个或多个报告链接到集合事件,则消息中将包含每个链接报告的报告数据。

关乎收集事件的常见问题

收集事件需要多少带宽?

这取决于几个因素。

  1. 主机启用的收集事件的数量。
  2. 连接到收集事件的数据报告的大小。
  3. 设备触发启用的收集事件的频率。这取决于收集事件的含义。

收集事件触发的速度有多快?

GEM标准使用标准通信硬件,并不限制收集事件的频率。换句话说,通过改进硬件,可以加快收集事件的速度。

GEM支持两种协议:SECS-I和HSMS。SECS-I基于RS-232串行通信,因此目前很少使用。这样的实现无法非常快地触发收集事件。

HSMS基于网络通信。由于串行通信很慢,所以目前大多数GEM实现都使用HSMS。GEM可以非常有效地使用TCP/IP。收集事件的可能频率取决于网络硬件的速度、设备计算机性能和主机性能。与大多数协议一样,使用消息通常比生成消息需要更多的计算机资源。

生成收集事件的速度还取决于链接到收集事件的数据报告。例如,如果数据报告很大,比如10mb,这将影响性能。

为什么我无法收到收集事件消息?

主机无法收到收集事件消息的可能原因有几个。

  1. 主机和设备必须使用成功的S1F13/S1F14交换建立GEM通信。
  2. GEM控制状态必须在线。它不能处于主机-脱机或设备-脱机状态。
  3. GEM Spooling 必须是非活跃的。在Spooling已经活跃时时禁用该功能并不会使Spooling变为活跃。如果不需要Spooling消息,则需要使用消息S6F23清除Spooling内容。如果需要假脱机消息,那么使用S6F23逐个获取它们,直到Spooling机状态变为非活跃状态。
  4. 必须启用收集事件。使用S1F3检查“EventsEnabled”状态变量以确认收集事件已启用。使用消息S2F37启用收集事件。
  5. 需要发生收集事件活动。例如,如果材料没有实际到达,那么当材料到达时将永远不会发生收集事件报告。如果活动发生且满足上述条件,则设备GEM接口存在缺陷。

如果设备的GEM接口没有发布我需要的收集事件,该怎么办?

请设备供应商添加所需的收集事件。设备供应商很难准确预测工厂需要的所有收集事件。设备供应商需要升级其在工厂中的GEM接口软件。

当链接到收集事件时,数据报告的大小是多少?

GEM允许单个数据变量值或状态变量的值为任意数据类型的数组或结构体,包括浮点数、字符串或整数。单个数组的大小限制为16.777215 MB,消息的总大小限制为4.294967295 GB。

第三章 数据轮询

GEM是一种工业标准,它定义了工艺设备和工厂主机软件之间, 为了达到监视和控制目的所建立通信的标准方法。通过连接GEM设备,工厂可以立即体验到运营效益。工厂主机可以通过多种方式收集数据。之前的一篇博客文章讨论了使用收集事件报告收集数据,其中数据基于设备状态的变化被推送到主机。除了事件报告之外,工厂主机通常还需要轮询设备的当前数据值。数据值可以由主机直接请求,也可以在跟踪报告中定期采样。这就是所谓的数据轮询,也是今天讨论的主题。

数据的类型

GEM接口中有三种类型的数据:

数据变量(DV) —— 设备事件发生时可以收集的数据项。此数据只保证在事件上下文中有效。例如,GEM接口可能提供一个名为PPChanged的事件(当配方发生更改时触发)。该接口还可以提供一个名为changed recipe的数据变量。此数据变量(DV)的值仅在PPChanged事件的上下文中有效。在其他的时间轮询该值可能会有无效或意外的数据。

状态变量(SV) —— 包含设备信息的数据项。该数据保证在任何时候都是有效的。例如,该设备可能在流程模块中有一个温度传感器。GEM接口可以提供模块温度状态变量。主机可以在任何时候请求这个状态变量(SV)的值,并期望这个值是准确的。

设备常数(EC) —— 包含设备设置的数据项。设备常数决定设备的行为。例如,GEM接口可能有一个名为MaxSimultaneousTraces的设备常量(EC),该常量指定可以同时从主机请求的最大跟踪数。设备常数的值总是保证是有效的和最新的。

数据属性

上面列出的三种数据类型都有一些类似的有助于定义数据的属性。设备供应商需要在GEM手册中提供这些属性,以便工厂主机能够与数据进行交互。一些重要的数据属性有:

ID —— 在该GEM接口中唯一的数字ID。这些ID可以按数据类型分为SVID(状态变量ID), DVID(数据变量ID)和ECID(设备常量ID)。

名称 —— 数据项的可读名称。
格式 —— 数据项的数据类型。

数据格式可以是简单类型(数字、ASCII、布尔值),也可以是复杂类型(数组、列表、结构)。例如,数字类型可以是I1、I2、I4、I8(不同字节长度的带符号整数类型)、U1、U2、U4、U8(无符号整数类型)和F4或F8(浮点类型)。列表和数组类型会在数据项中包含多个值。例如,图像数据通常采用字节数组作为数据格式。

结构类型包含特定类型的数据。例如,一个变量可以表示一个Slot map,其中包含Carrier信息,Slot列表和晶圆的存放信息。

值 —— 数据项的实际值。数据值采用精确、高效、自描述的二进制格式,从而主机知道如何解释数据。数据格式允许更有效地收集更多的数据。

收集事件(CE)和警报也有ID和名称。这些内容将在其他博客文章中讨论,但是了解本文的提到的这些属性非常重要,因为这些属性也可以被Host所查询。

数据轮询

如前所述,工厂主机经常通过它所定义的跟踪报告和事件报告定期获得数据。GEM还为工厂主机提供了一种可以根据他的需要去轮询设备数据的方法。

状态变量

主机可以在任何时候通过发送一条包含状态变量ID(SVID)列表的消息来查询这些状态变量(SV)的当前值。如果该列表的长度为1,则只返回单个状态变量(SV)的值。如果列表的长度为零,则返回GEM接口中定义的所有状态变量(SV)的值。这些值会包含在在设备回复的S1F4消息中。

主机还可以通过向设备发送S1F11消息向设备请求状态变量(SV)名称列表。上面提到的列表规则也适用于此消息。返回消息将包含每个状态变量(SV)的条目,包括状态变量ID(SVID)、名称和单位。

设备常量

状态变量(SV)的工作方式类似,主机还可以通过发送一条S2F13消息来查询GEM接口中定义的设备常量的值。这些值会包含在在设备回复的S2F14消息中。

与状态变量(SV)类似,可以使用S2F29消息查询设备常量的名称列表。

数据变量

由于数据变量只在集合事件的上下文中有效,因此没有轮询数据变量值的方法。数据变量的值只能在收集事件报告中上报给主机。

其他

除了上面讨论的数据轮询方法外,还可以通过轮询从设备获取以下信息:

收集事件(CE) —— 主机可以查询GEM接口上可用的收集事件,以及与每个CE关联的DVs。这些是使用S1F23消息请求的。
警报 —— 主机可以通过发送一个列有所期望的警报ID列表的S5F5消息来查询设备上有哪些警报是可用的。返回的消息将列出与ALID关联的警报ID和警报文本。每个GEM接口都需要有两个状态变量。AlarmEnabled包含设备上所有启用警报的ID列表。AlarmsSet包含设备商所有当前处于设置状态的警报ID。由于这些值是状态变量,所以主机可以在任何时候查询它们的值。
MDLN和SOFTREV —— 对S1F1(你在吗?)消息的回复将包含设备模型类型(MDLN)和软件修订版本(SOFTREV)。
DateTime ——主机可以使用S2F17消息请求设备的日期和时间,也可以使用S2F31消息同步设备的时间。GEM要求设备维护一个包含当前时间的时钟状态变量。允许主机查询和同步时间使得可以对系统上几乎同时发生的事件进行排序。

跟踪数据收集

跟踪数据收集提供了一种定期采样数据的方法。这种基于时间的数据收集方法对于跟踪一段时间内的数据变化趋势或重复的应用,或者监视连续的数据非常有用。在创建跟踪的定义时,主机需要提供以下内容:

采样周期 —— 样本之间的时间。以百分之一秒为最小单位,因此可以使用跟踪非常快速地收集数据。能够支持10赫兹的采样间隔数据的设备很常见。
数据组大小 —— 跟踪报告中包含的样本数量。
状态变量 —— 跟踪报告中包含的状态变量列表。
总样本数 —— 在跟踪的整个生命周期内要采集的样本数量。
跟踪请求ID —— 跟踪请求的标识符(GEM只允许整数类型的跟踪ID)。

主机使用S2F23消息定义跟踪请求。跟踪报告使用S6F1消息从设备发送到主机。

跟踪报告样本

假设一个设备正在处理一个晶圆片,这个过程需要5分钟。重要的是要保持卡盘温度在一定的可接受范围内,并确保腔室压力保持在指定的水平以下。每隔15秒采样一次这些状态变量值就足够了,但是我们可以创建数据组,实现每分钟只接收一次报告。主机可以发送一条包含如下跟踪配置的S2F23消息:

跟踪ID : 100 (ID必须是整数)
采样周期 : 00001500(每15秒采样一次)
总样本:75个(每15秒采样5英寸)
数据组大小: 4
SVID列表 :
300(包含卡盘温度信息的状态变量的ID)
301(包含室压信息的状态变量ID)

一分钟后,第一个跟踪报告将来自设备发出的的S6F1消息。这条消息将包含以下信息:

100(跟踪ID)
4(最后一个样本号)
2018-01-22T14:20:34.8(日期格式取决于时间格式设备常数)
状态变量列表:(长度为8 : 2 个状态变量,数据组大小为4)

219.96(第一次采样卡盘温度)
0.0112(第一次采样压力)
219.97(第二次采样卡盘温度)
0.0122(第二次采样压力)
219.97(第三次采样卡盘温度)
0.0120(第三次采样压力)
219.96(第四次采样卡盘温度)
0.0119(第四次采样压力)

再过一分钟,跟踪报告可能如下所示:

100(跟踪ID)
8(最后一个样本号)
2018-01-22T14:21:34.8(日期时间显示比第一个跟踪晚一分钟)
状态变量列表 : (长度为8: 2 个状态,数据组大小为4)

219.96(第五次采样卡盘温度)
0.0112(第五次采样压力)
219.97(第六次采样卡盘温度)
0.0122(第六次采样压力)
220.01(第七次采样卡盘温度)
0.0120(第七次采样压力)
220.00(第八次采样卡盘温度)
0.0119(第八次采样压力)

以一分钟为间隔,后续还将收到三份报告。主机可以检查报告中返回的值,并在值超出预期范围时做出相应的处理。

结论

如果主机想在特定的时间点检查一个值,它可以使用S1F3轮询状态数据。如果希望在给定的时间内连续收集数据,则可以设置跟踪报告。

使用本博客中概述的数据采样方法,将允许主机应用程序在需要时轮询所需的数据。GEM提供了从设备请求数据的灵活性,允许主机在给定的时间点查询值,或者使用跟踪定期采样样。

第四章 GEM 工厂应用支持

工厂如何处理这些数据?

与本系列中其他涉及SEMI E30 GEM(通用设备模型)标准的特定特性和功能的文章不同,本篇博客阐述了许多使用设备上收集到的数据的工厂应用程序。

此外,由于我们经常听到这样的问题:“工厂实际如何使用哪些希望我们提供的各种类型的设备信息?”这篇文章将总结出支持这些应用程序所需的具体数据。这个列表并没有涵盖所有的内容,但是应该可以让您了解由GEM数据收集支持其目标的工厂受益者。下图说明了关键性能指标(kpi)、负责优化它们的受益者、用于实现此目的的应用程序以及这些应用程序所需的数据之间的关系。

分享这类信息最有效的方式是表格形式。在一组相关的应用程序中(例如,调度、预防性维护),应用程序通常按照复杂性递增的顺序列出,这也是工厂应用程序开发人员实现的可能顺序。

工厂应用 需要的设备数据
OEE(设备总体效率) 足够对所有时间段设备状态进行分类的转换事件和状态代码。
Intra-equipment material flow设备内部物料流 物料跟踪时间,物料位置状态指示和状态变化时间。
Process execution tracking工艺执行跟踪 所有工艺模块的开始/结束事件;所有支持多步骤配方的工艺模块里每个步骤的指示和步骤变化时间
WTW (wait time waste) analysis等待时间损耗分析 设备内部物料流和工艺执行跟踪应用程序所需要的事件以及划分所有时间段物料状态所需要的上下文数据的组合。参见SEMI E168产品时间管理标准作进一步解释)
Time-based PM (PreventiveMaintenance)基于时间的预防性保养 现场可替换部件级别的使用次数。
Usage-based PM基于用法的预防性保养 每个可替换部件使用参数及累计值,比如状态内市场,执行次数,流体流量,耗材流量,功耗等等。
Condition-based PM基于条件的预防性保养 每个可替换部件的有意义的健康指标
FDC (错误检测分类) 特定错误模块所要求的设备/工艺参数及上下文信息(这里想要做到完整比较困难,因为多数FDC系统都有)
Automated equipment interdiction自动设备停止 远程停止命令(例如当FDC应用感知到以及存在或者将要发生的错误时)
Equipment configurationMonitoring设备配置监控 重要设备常量的矢量,包括期望值和可接受范围。如果值是依赖于设置的期望值和可接受范围会有多套。这套系统是为了能够捕获因为操作人员手工修改参数导致的人为错误。
Component fingerprinting组件识别 设备关键机制的性能参数,包括传感器/驱动器级别的命令/响应信号。
Static job scheduling静态作业调度 每个产品/配方组合的计划和执行时间,以及当前计划的信息。
Real-time job dispatching实时作业分配 预估当前作业完成时间;预估设备上所有排队等待的物料的完成时间。
Factory cycle time optimization工厂周期优化 物料缓存内容,作业队列信息
Operator notification操作员通知 非自动化/半自动化环境下一些操作员频繁操作的通知代码,比如加载/卸载物料, 选择/确定配方,一旦设备卡住提供的一些手动协助等等。
Real-time dashboard实时仪表盘 设备/部件生产状态指标
Equipment failure analysis设备失败分析 有意义的报警/错误代码,或者最近的历史记录/数据
Run-to-run process control批次工艺控制 配方可调整参数识别以及远程更新这些参数的命令。

在某种程度上,在上面的表中描述的应用程序数据可以跨设备类型进行标准化,这样的话就有可能创建通用的工厂的应用程序, 只需要一个从供方定义的GEM ID (收集事件id、状态/数据变量,常量,设备等)到通用应用方的对应列表。但是这是另一个关于GEM上下文中“即插即用”概念的主题。

我们希望这个解释能够帮助您理解设备信息对于使用它的工厂是多么有价值,从而明白在您将来设计的GEM接口中提供一组丰富的事件、变量和其他详细信息是多么重要。

第五章 报警

以前的文章已经讨论了允许通过GEM接口收集数据的功能,以便在最近的文章中描述的工厂应用程序能够分析这些数据。在这篇文章中,我们将回到对SEMI E30 GEM(通用设备模型)标准的特定特性和功能的讨论,特别是对设备错误情况的管理。

在一个完美的世界里,一切都按计划进行,但在现实中,事情总是会出错。成功的秘诀是能够知道什么时候出了问题,然后做出适当的反应。

就像家庭报警系统一样,半导体晶圆厂也想知道什么时候发生了不好的事情。他们想防止正在加工的材料被报废。报警管理使设备能够在出错时通知主机,并提供出错信息。GEM标准将报警管理定义为设备能够通知主机对设备上发生的报警情况和对报警情况进行管理的能力。

在GEM中,一个报警可以是指设备上的任何可能危及正在加工的人员、设备或材料的异常情况。例如,如果技术人员打开一个盖板来替换组件,设备应该发出报警,通知主机在当前状态下操作设备是不安全的。另一个例子可能是,如果一个设备需要高温进行加工,但是传感器检测到低温条件,它应该触发报警,因为在这些条件下运行过程可能会损坏正在加工的材料。当出现报警情况时,设备制造商也有责任制止设备上的不安全活动。设备制造商最清楚设备上需要什么样的特殊报警,以确保人员、设备和材料的安全。

通常,在报警条件发生时,能得到更多的设备中的状况信息是有用的。向传达额外的信息是非常有价值的,但是没法通过正常的报警报告发送/确认消息。为了提供一种途径获取额外信息,GEM要求为设备上每种可能的报警条件定义两个收集事件——一个事件用于设置报警,另一个事件用于清除报警。这些收集事件使得GEM事件数据收集机制可以被用于在报警更改状态时向主机发送额外的相关信息。

除了提供报警状态更改的时间外,设备上的报警管理必须允许主机获取所有报警id和相关报警文本的列表。主机还必须能够启用/禁用设备上的单个报警的报告,并查询设备以获得当前启用报告的报警列表。

报警的状态图不是很令人兴奋,但是它满足了一个至关重要的需求。下图为报警状态图:

GEM报警只有两种状态: 每个报警要么处于设置状态,要么处于清除状态。它简单但是有效。

报警管理不是复杂的事情,但通过有效地使用报警管理,晶圆厂可以仔细的监控其工艺设备的健康状况,并将其对生产良率的负面影响降到最低。

第六章 配方管理

在几篇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系列的特性和优点的第一篇文章所指出的,SECS/GEM标准定义了一个可以在任何设备上使用的标准化接口。GEM接口通过状态变量、数据变量、收集事件、警报、数据格式、错误代码、SECS-II消息和其他可选的GEM功能公开设备的功能。GEM标准要求每台设备都附带文档; 确保工厂拥有使用设备GEM接口所需的信息。该文档通常称为GEM手册。

GEM手册可以以多种形式分发。目前,大多数GEM手册都是以Word、Excel或PDF文档的形式提供的。GEM手册中的大量信息被用于做出购买决策、开发主机软件和测试设备。对于一个功能完整的GEM接口,GEM手册必须包含以下主题: 状态模型、场景、数据收集、警报管理、远程控制、设备常量、流程配方管理、物料移动、终端服务、错误消息、时钟、假脱机、控制、支持的SECS-II消息、GEM遵从性声明和数据项格式。为了使这篇文章保持一个合理的长度,我们将只讨论一些必要的主题。

GEM遵从性声明

遵从性声明是要审阅的第一个主题之一。它是一种快速、简单地了解设备接口特性的方法。制造商需要标记在设备上实现了哪些GEM功能,以及这些功能是否以符合GEM标准的方式实现。

状态模型

状态模型是GEM的基本功能,因此可以在每个设备上实现。该功能定义了设备的通信、控制和假脱机行为。设备必须提供处理状态模型。但是,定义出一个适用于所有设备的工艺状态的状态机是不可能的。本标准规定了所有设备应具有相同的加工行为。每个状态模型都必须用状态模型图、转换表和每个状态的文本描述来记录归档。关于每个状态模型的一致和详细信息使工厂能够在得到GEM手册之后立即开始编写主机应用程序。

警报、收集事件、设备常数、数据变量和状态变量

设备收集数据的一大部分都是警报、收集事件和变量。所以需要将他们包含在GEM手册中并不意外。设备上的每个警报都应该在GEM手册中有其ID、名称、描述和相关的Set/Clear事件。每个集合事件的文档应该包括ID、名称、描述和关联变量列表。所有变量的文档将包括ID、名称、描述和数据类型。还应该在适当的时候提供变量默认值或值范围的信息。虽然不是必需的,但通常将所有这些信息显示在五个容易找到的表中。对于以下每一类都有一个表: 警报、收集事件、设备常量、数据变量和状态变量。参见下面的示例。

远程控制

一旦工厂能够从设备中收集数据,他们就开始研究如何控制设备。远程控制是GEM功能,它允许主机应用程序请求设备执行一个操作。所有远程命令都应该包含在手册中,包括它的名称、描述以及可能随命令一起发送的每个命令参数的详细信息。命令参数的详细信息应该包括名称、格式和描述。下面显示了一个示例。

SMN 和SEDD

GEM手册很少采用易于在软件中解析的格式。这通常会导致重复代码,并进行一些小的更改,以便与其他设备通信。SEMI E172 SECS设备数据字典(SEDD)和E173 SECS消息表示法(SMN)是两个标准,它们可以极大地提高主机应用程序的灵活性和可重用性。SEDD是一个易于在软件中分布和解析的xml文件。SEDD可以被认为是一个现代化的GEM手册,因为它包含了与GEM手册中相同的信息。例如,SEDD文件包含关于每个变量、收集事件、警报和受支持的SECS-II消息的详细信息。SEDD文件使用SMN表示数据项、变量和SECS-II消息。SMN也是XML格式,它是第一个定义表达数据项和SECS-II消息的表示法的标准。这意味着单个应用程序可以读取SEDD文件,进行一个简短的配置过程,然后立即开始使用设备的GEM接口。这些特性允许单个应用程序用于多个设备,而不是为每个设备创建略有不同的变体。

总结

GEM手册是GEM标准所要求的与每个设备一起提供的重要文档。当遇到关于设备的GEM接口的问题时,GEM手册应该是寻找答案的首选。SEMI也在通过更新现有标准和创建新标准,继续改进GEM手册的内容和灵活性。

第八章 设备终端服务

在本系列的几篇文章讨论了数据收集、事件、警报、配方管理和文档之后,本文重点讨论GEM标准的Twitter - 设备终端服务(Terminal Services)。我们将研究什么是终端服务(Terminal Services),为什么需要它们,以及它们的工作机制。

什么是终端服务(Terminal Services)?

设备终端服务允许工厂操作员从设备工作站与主机交换信息。主机可以在设备的显示设备上显示信息。它还允许设备的操作员向主机发送信息。设备必须能够显示主机传递给它的信息,供操作员注意。

为什么需要这个特性?

金南瓜 secs/gem协议 符合SEMI secs/gem协议 国际通讯协相关推荐

  1. plc secs通讯协议_SECS/GEM解决方案:PLC与MES间的通讯

    符合SEMI E4, E5, E30, E37 的 SECS/GEM通讯方案 遵循 SEMI 人机交互设计,提供触摸屏支持让你触手可及. 毫米级的响应,让设备行云流水般流畅. 我们为你快速搭建PLC与 ...

  2. 【翻译】SECS GEM系列之二:GEM 收集事件

    在开始我们的SECS/GEM系列之前,让我们先来解释GEM标准的一个关键特性,即Collection Events.我们将从解释它们如何工作开始,然后进一步说明为什么它们在从制造设备收集数据方面如此有 ...

  3. ISO7816协议深度解析-简单易懂协议详解(一)-- 复位,字符帧,及ATR

    1. 摘要 IC卡必须支持T=0或T=1的协议,但不是同时支持这两种协议,而终端则必须同时支持T=0和T=1的协议. • T=0通讯协议是异步半双工字符传输协议: • T=1通讯协议是异步半双工块传输 ...

  4. dmx512协议c语言编程,DMX512协议+c程序代码.pdf

    DMX512 协议 1.协议简介 DMX 是Digital MultipleX 的缩写 ,意为多路数字传输.DMX512 控制协议 是美国舞台灯光协会(USITT)于1990 年发布的灯光控制器与灯具 ...

  5. 计算机网络总结各种协议首部的长度,计算机网络协议总结

    计算机网络协议全面总结 一.OSI七层协议 物理层: 很久很久以前,那时候还没有现在的外星人超级电脑,或者华为的P30.比较调皮的小明想要把自己机器上写好的一些个人游戏心得(如何玩好王者农药)发给小红 ...

  6. 带你一文搞懂网络层的IP协议\数据链路层的以太网\ARP协议以及DNS和NAT协议

    TCP连接管理中的保活机制: TCP协议是面向连接通信,若通信双方长时间没有数据往来,就需要确定对方还是否在线,连接是否正常?        若通信双方长时间(7200秒)没有数据往来,在服务端会向客 ...

  7. 【计算机网络面试高频】-HTTP协议详解,HTTP协议常见问题

    4.HTTP协议详解有关问题 4.1 HTTP请求 一个HTTP请求报文由请求行.请求头部.空行和请求数据四个部分组成. 1.请求行 请求行中有请求方法字段.URL字段和HTTP协议版本3个字段组成. ...

  8. 什么是HTTP协议?什么是HTTPS协议?

    点赞关注是对我最大的支持,留言可分享测试资料. 什么是HTTP协议?什么是HTTPS协议? HTTP是超文本传输协议,是互联网上用得最多的网络协议, 所以的www文件都遵守这个标准.HTTP 协议工作 ...

  9. 【转】DICOM协议新手入门资料-DICOM协议详细解释!!

    转自:https://blog.csdn.net/zhuwei0710/article/details/82620036 数字影像传输标准协议的初衷,是为了在不同厂商生产的数字影像设备之间实现影像及其 ...

  10. 浅析GRE协议(通用路由封装协议)

    1.GRE的概念 1)全称:GRE(Generic Routing Encapsulation):通用路由封装协议. 2)功能:定义了在一种网络层协议上封装另一种协议(或同一种协议). 3)举例:对某 ...

最新文章

  1. 大专一年级计算机考试题,(大专一年级语文期中考试试卷.doc
  2. 042、用volume container 共享数据 (2019-03-05 周二)
  3. win1编辑java环境,在win7下配置java编译环境
  4. java utf8 byte_byte以及UTF-8的转码规则
  5. 开发了一款chrome扩展程序
  6. Homebrew:无法符号链接,/ usr / local / bin不可写[关闭]
  7. windows搭建ABD环境 搭建ADB开发环境
  8. BAT变TAT?2019年互联网各梯队排名重组
  9. Instantiation of Chaincode using Fabric Node manifest for hyperledger/fabric-ccenv:latest not found
  10. java基本数据类型_资深大厂Java程序员,由浅入深Java学习资料,高清视频
  11. 解决办法:GLib-ERROR **: Creating pipes for GWakeup: Too many open files
  12. 克拉默法则(Cramer's Rule)的证明
  13. 杨柳目-杨柳科-杨属-杨树:杨树
  14. WEB渗透测试-安全白帽子修炼
  15. C语言人五英尺七英寸,5尺7寸(5尺7寸是多高美国)
  16. 104届广交会秋交会展位(摊位)联营参展函 (广交会展位合作)
  17. python读取xlsx文件找不到_在python中打开并读取excel .xlsx文件
  18. 什么是 Linux 发行版?为什么它被称为“发行版”
  19. 迷你马拉松的微博营销
  20. 行人reid ,多个开源地址数据变成 market1501格式合并,附代码,数据地址

热门文章

  1. 【SCM】基于报童模型的MAPE与Profit仿真
  2. 06. Java面向对象——更改器方法和访问器方法
  3. roseha 11 用VM虚拟机创建集群测试
  4. python查找excel中内容_Excel查找数据
  5. windows-sys4:win10 预览体验计划不能选择版本渠道
  6. 双十一会场体验 SSR 优化 - 走向更复杂的渲染架构
  7. 物联网建设,智慧城市道路智能交通解决方案
  8. 用OOP设计以下场景。太阳发出太阳光,照射在墙壁上,在地面形成影子。
  9. Window同时兼容运行多版本谷歌浏览器chrome
  10. 网站静态页面克隆 | 学习笔记