栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

学习SECS协议

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

学习SECS协议

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录
  • 一、SECS是什么?
  • 二、SECS-II Message Protocol
    • 1.Stream和Function
    • 2.Message Layout
    • Data Items(数据项)
    • Layout Encoding(布局编码)
      • 数据项编码如下:
      • 消息布局编码
    • Multi-Block Messages(多块消息)
    • Interleaving Messages(交错消息)
    • Common SECS-II Messages(常用的SECS-II消息)
  • SECS-I Block Transfer Protocol块传输协议
    • Handshake Sequence(握手序列)
    • Block Data(块数据)
    • Example of S1F1 / S1F2

一、SECS是什么?

SECS/GEM是由国际半导体设备与材料协会(SEMI)的会员一起构建的连接性标准。该标准应用于在设备和工厂管理系统间的通讯标准。
SECS是一个分层协议,由3个级别组成:
1.Message Protocol消息协议,
2.Block Transfer Protocol,块传输协议
3.Physical Link,物理连接

二、SECS-II Message Protocol

Message Protocol(消息协议)用于在主机和设备之间发送SECS-II消息。每个SECS-II消息包含一条发送消息和一条回复消息。这也被称为交易。

1.Stream和Function

SECS-II消息包括Stream和Function。每条消息都有一个Stream值(Sx)和一个Function值(Fy)。在Stream1、Function1的情况下,写为“S1F1”。Stream决定了消息的类别,而Function是该类别中的特定消息。Function值在发送消息中始终为奇数,应答中的Function值为大于发送消息的偶数。

有一些保留的和留给用户自定义的Stream和Function

所有的Function 0都有特定含义,作为终止消息的回复

2.Message Layout

Message Layout定义了SECS-II Message的所有数据项。
SECS接口的提供者通常会提供一份接口手册。本手册详细介绍了SECS消息及其布局。它还可以包括定义消息项的数据项字典。
SECS-II消息可以使用几种约定进行注释。下面显示了两种最常见的约定:

Data Items(数据项)

数据项由格式代码决定。下表列出了所有可能的数据项及其格式代码。格式代码由6位定义。注意:List数据项是用来包含更多的数据项,list可以包含list。

Layout Encoding(布局编码)

在发送SECS-II消息之前,必须对布局进行编码。消息布局中的每个数据项都经过编码,成为数据结构的一部分。重复此操作,直到对布局中的所有数据项完成编码。数据结构通过SECS-I协议发送。

数据项编码如下:

编码数据项的第一个字节包含数据项格式代码、数据项字节数。格式代码第2位到第7位,字节数第0位到第1位。因此,长度字节数在0到3个字节之间。

接下来的0个、1个、2个、3个字节数据表示数据长度。比如,数据为1000个字节,就需要两个字节来表示(03E8)。下面的表格表示了不同的字节数能够表示的字节数长度:

接下来的n个数据包含数据项的数据

下面显示了如何对ASCII数据项进行编码。根据它包含的数据字节数,它可能需要0、1、2或3个长度字节来表示数据字节的总数。
Format code 0100 00------ASCII

消息布局编码

下面显示了如何对SECS-II消息布局进行编码。注意,在本例中,仅对消息布局进行编码,不对Stream和Function进行编码。所有数据均为hex格式:

Multi-Block Messages(多块消息)

由于SECS-I协议中的数据大小限制,编码的SECS-II消息(数据结构)一个SECS-I消息可能传送不完。因此,编码的SECS-II消息被分成更小的块,并一次发送一个块。这被称为多块消息传递。
每个SECS-I消息块限制为244个编码的SECS-II消息字节。消息块的最大数量为32767,因此SECS-II编码的最大消息大小为244 x 32767字节。
SECS-II Parameters

Interleaving Messages(交错消息)

这是指一次处理多个消息传送。一次传送会发送一条主要消息,并可选地接收一条回复。传送在等待回复时被“打开”。交错是指能够有多个“打开”的传送。这允许发送多条主要消息,而无需必须等待次要回复。

Common SECS-II Messages(常用的SECS-II消息)

下面列举了常用的SECS-II消息。
第一组消息通常在第一次连接设备初始化时使用
下面的这些消息用于配方选择、远程启动、晶圆选择等

下面这些消息用于数据采集

S5F1用于处理设备报警
当设备检测到之前的消息错误时,会发送S9。

SECS-I Block Transfer Protocol块传输协议


Block Transfer Protocol用于确定通信方向,并为传递消息块提供环境。主消息或回复消息可能需要多块传输(多块消息)

Handshake Sequence(握手序列)

握手顺序是主机和设备之间的字节交换。
握手代码-4个握手代码,用于控制块传输协议中的数据流。

SECS-I Parameters-用于在实现块传输协议时定义一些限制范围:

T1-块数据在接收到第一个字符后字符间接收超时时间
T2-发送ENQ和接收到EOT的超时时间
下图显示了bock传输协议期间的握手代码。它还显示了T1和T2超时以及可能的NAK:

RTY-这定义了启动块传输的次数(使用ENQ开始发送)。在收到NAK(或其他协议错误)后,将调整RTY值,并再次尝试块传输。
Master/Slave-用于解决争用。争用是指主机和设备同时尝试沟通。

Block Data(块数据)

Block Data是单个块或多块消息的数据部分。它包含一个长度字节、N个数据字节和一个两字节校验和。

Length Byte-是块数据中发送的第一个字节。它是N个数据字节(10字节头+数据结构)中的字节数。此计数中不包括两字节校验和,其值范围为10到254字节。
N Data Bytes-是消息块的数据部分。它包含一个10字节的报头和Message Data(消息数据)。大小从10字节到254字节不等。N个数据字节的最小大小为10(仅包含10字节的头),最大大小为254。
Message Data-是消息的数据部分。它包含编码的SECS-II的全部或部分(如果是多块消息)。
10字节报头
每条消息都包含一个报头。报头用于描述块数据中包含的数据。它包含Device ID、Message ID、Block Number和System Bytes。其他重要指标也包括在内。
Device ID-报头的字节1和2是Device ID。字节1是device ID高8位,字节2 是device ID低8位。字节1最高位是反向位(R位)。R位决定消息的方向。

Message ID-报头的字节3和4是Message ID。字节1是Message ID的高8位,字节2是Message ID的低8位。字节1最高位是消息ID等待位(W位)。W位用于指示主消息的发送方正在等待回复。

Block Number-报头的字节5和6是Block Number。字节1是Block Number高8位,字节2是Block Number低8位。字节1最高位是结束位(E位)。E位表示这是消息的最后一个块。

System Bytes-报头的最后四个字节是System Bytes。左边的两个字节是source ID,右边的两个字节是transaction ID。sourceID标识消息的发送者,并用于消息路由。transactionID标识消息,对于发送的每条消息都是唯一的。在其关联的回复中显示主消息具有相同的System
Bytes。

Example of S1F1 / S1F2

下面显示了在发送主要消息和接收次要回复时传输的字节。这不是多块消息。主机发送S1F1,设备发送S1F2应答。

Typical SECS Protocol Parameters
下面是一组SECS-I/SECS-II协议参数的摘要,以及一些典型值。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/882147.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号