一 什么是SECS

SECS(SEMI Equipment Communication Standard),半导体设备通讯标准。

此标准由SEMI (Semiconductor Equipment and Materials International 国际半导体设备与材料产业协会) 制定,用来统一各个生产设备之间以及生产设备和控制设备之间的通讯。

SECS标准包括SECS-I、SECS-II、HSMS 和 GEM 四个标准。

1.1 SECS-I (SEMI Equipment Communications Standard 1 Message Transfer)

SECS-I:属于传输协议标准,描述数据是如何通过物理层在设备与主机之间进行传输的,通过 RS-232通信来传送SECS-II 数据的规范。
 

1.2 SECS-II (SEMI Equipment Communications Standard 2 Message Content)

SECS-II:属于消息格式标准,定义了在设备与主机之间进行双向会话时所使用的消息格式。

1.3 HSMS (HIGH-SPEED SECS Message Services (HSMS) Generic Serives)

HSMS:属于传输协议标准,描述数据是如何通过物理层在设备与主机之间进行传输的,使用的传输媒质是以太网。通过以太网来传送SECS-II 数据的规范。

1.4 GEM (Generic Model For Communications And Control Of Manufacturing Equipment)

属于设备功能标准,定义了通过通信链路所能看到的设备接口,指定了根据特定的消息设备所应该采取的对应的行为。

二 SECS的总体结构

SECS-I 和 HSMS 处于模型的底层,为半导体设备通信链路层标准。SECS-I 是基于RS-232的协议,HSMS为基于TCP/IP的协议。

SECS-II协议封装了 SECS-I 和 HSMS,在它们的基础上定义了半导体设备的通信格式。

GEM则在SECS-II的基础上定义了半导体生产制造过程中的交互行为。

三 SECS-I 通讯标准

SECS-I属于传输协议标准,主要定义了电气规格、传输速度、交握码等物理信息。

3.1 物理传输单位 bit

SECS-I 定义了使用 RS-232 作为传输媒质时点到点的数据通信。实际的传输由8位Bit连续发送,有一个开始位和一个停止位。

通信是双向和异步的,但是同一时间只能有一个方向的数据进行传输。方向由特殊字符和握手建立,然后发送数据本身。

3.2 逻辑传输单位 Block

数据被分块进行传输,每个数据块最大为 254 字节。一个消息是一个方向的完整通信单元,由1到32,767个块组成。每个块标头都包含用于标识该块作为特定消息的一部分的信息。

3.3 Block的组成

一个Block包括一个Length Byte、N Data Bytes 和 CheckSum。

  • LengthByte:表示随后有多少个字节的数据(即 N bytes),不包括最后 2个字节的校验和;
  • CheckSum:计算N Data Bytes的校验和;
  • N Data Bytes:Block中的数据,长度范围是 10 至 254 字节,它由十个字节的头和消息数据组成。

Data Bytes 由 10 byte Header 和 Message Data 组成:

  • MessageData:表示Data Bytes中的数据部分,由编码后的 SECS-II 消息构成;
  • 10 byte Header:描述Data Bytes中的数据内容。

10 byte Header 由10个字节4个内容组成,其中:

  • Device ID:Header的第一和第二字节,其第一个比特为 R-bit,其作用是指出消息传输的方向。
  • Message ID:Header的第三和第四字节,其第一个比特为 Wait-bit,用于指示消息的发送者是否需要回复。
  • Block No.:Header的第五和第六字节,其第一个比特为 End-bit,用于指示这个是否是消息的最后一个块。
  • System Bytes:Header的最后四个字节,第七和第八字节表示 source ID,用于表示消息的发送者,第九和第十字节表示 transaction ID,用于唯一标示每个发送的消息。

3.4 Block的传输

块的传输过程,先传输块的长度,再传输块,最后发送校验码。

标准建议每次可传输的Date Bytes字节最多为254,如果一个消息的大小<245个字节,则以一个块的形式进行传输。如果一个消息的大小> 245个字节,则以分块的形式进行传输。

3.5 Block传输协议

通过串行线用于建立通信方向并为传递消息块提供环境的过程称为块传输协议。

协议使用单个字节进行握手,标准定义了四个握手编码。

标准还定义了两个超时参数T1和T2,用于检测通信故障。

  • 超时参数T1:限制了在接收到BlockLengh字节后和接收CheckSum字节之前,接收数据块时每个字符之间的时间间隔。
  • 超时参数T2:限制了发送ENQ和接收EOT之间的时间。

说明:

以上为SECS通信基础知识的整理-1。

SECS半导体设备通讯-1 SECS的基本概念的更多相关文章

  1. SECS半导体设备通讯-4 GEM通信标准

    一 概述 GEM标准定义了通信链路上的半导体设备的行为. SECS-II标准定义了在主机和设备之间交换的消息和相关数据项.GEM标准则定义了在哪种情况下应该使用哪些SECS-II消息以及由此产生的结果 ...

  2. SECS半导体设备通讯-3 SECS-II通信标准

    一 SECS-II 概述 SECS-II 标准定义了使用如SECS-I.HSMS等传输协议在设备和主机之间交换的消息的形式和含义. 定义了以消息的形式在设备和主机之间传递信息,消息按其行为分类,称为S ...

  3. SECS半导体设备通讯-2 HSMS通信标准

    一 HSMS通信标准概述 HSMS定义了使用 TCP/IP 作为物理传输媒质时的通信接口. HSMS使用TCP/IP流支持,提供了可靠的双向同步传输,可以用来作为SECS-I通信以及其他更高级的通信环 ...

  4. secs/gem协议

    介绍SECS/GEM SEMI SECS/GEM标准概述 SECS/GEM是由国际半导体设备与材料协会(SEMI)制定的连接性标准.此连接性标准用于在设备和工厂的资讯和控制系统间建立通讯. SECS是 ...

  5. Auto入门 之 常用概念

    1.SEMI (Semiconductor Equipment And Materials International)  国际半导体设备与材料产业协会 2.SECS SECS协议是基于RS-232或 ...

  6. 【IOCP】 IOCP模型属于一种通讯模型- 较难

    http://baike.baidu.com/link?url=e9vXkKd2aHp8VDr1XTURdwQB4K85r28IYjeMwRIyuaXtsrCsXHY1eohiFgsDXRYRlj6x ...

  7. 多线程的学习与python实现

    学习了进程与线程,现对自己的学习进行记录. 目录: 一.进程与线程的概念,以及联系与区别 二.多线程 三.python中多线程的应用 四.python实例 五.参考文献 一.进程与线程的概念.以及联系 ...

  8. Day5 模块及Python常用模块

    模块概述 定义:模块,用一砣代码实现了某类功能的代码集合. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,提供了代码的重用性.在Python中,一个.py文件就称之为一个模块(Mod ...

  9. Day6 模块及Python常用模块

    模块概述 定义:模块,用一砣代码实现了某类功能的代码集合. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,提供了代码的重用性.在Python中,一个.py文件就称之为一个模块(Mod ...

随机推荐

  1. typescript中的--strictFunctionTypes选项

    什么是协变和逆变 原来,在泛型参数上添加了in关键字作为泛型修饰符的话,那么那个泛型参数就只能用作方法的输入参数,或者只写属性的参数,不能作为方法返回值等,总之就是只能是"入",不 ...

  2. placeholder 设置字体颜色

    input::-webkit-input-placeholder { /* WebKit browsers */ color: #999; } input:-moz-placeholder { col ...

  3. Java面试题(四)--RabbitMQ

    1.MQ有哪些使用场景?(高频) 异步处理:用户注册后,发送注册邮件和注册短信.用户注册完成后,提交任务到 MQ,发送模块并行获取 MQ 中的任务. 系统解耦:比如用注册完成,再加一个发送微信通知.只 ...

  4. 2021年5月15日海外 Meetup 演讲内容分享

    北京时间 2021 年 5 月 16 日 05:00-08:00 我们与Apache ShardingSphere 联合举办了第一场海外Meetup,感谢各位小伙伴的参与,让本次活动圆满结束. 同时我 ...

  5. 数据分表Mybatis Plus动态表名最优方案的探索

    一.应用场景 大家在使用Mybatis进行开发的时候,经常会遇到一种情况:按照月份month将数据放在不同的表里面,查询数据的时候需要跟不同的月份month去查询不同的表. 但是我们都知道,Mybat ...

  6. React报错之Unexpected default export of anonymous function

    正文从这开始~ 总览 当我们尝试使用默认导出来导出一个匿名函数时,会导致"Unexpected default export of anonymous function"警告.为了 ...

  7. 论文解读(PairNorm)《PairNorm: Tackling Oversmoothing in GNNs》

    论文信息 论文标题:PairNorm: Tackling Oversmoothing in GNNs论文作者:Lingxiao Zhao, Leman Akoglu论文来源:2020,ICLR论文地址 ...

  8. linux之间上传下载--SCP

    1.远程拷贝文件 [root@rhel8-client01 yum.repos.d]# scp root@192.168.72.149:/etc/yum.repos.d/* . (.表示拷贝到当前文件 ...

  9. MapReduce计算流程

    MapReduce的计算流程 1.1 原始数据File The books chronicle the adventures of the adolescent wizard Harry Potter ...

  10. mac_VMWare安装总结

    MacOS 安装VmWare 总结 如果之前安装过virtualBox,virtualBox的内核扩展会影响到VmWare的使用 *比如会导致VMWare虽然可以安装,却无法创建虚拟机 这是需要执行以 ...