一 什么是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. P2512 【一本通提高篇贪心】「一本通 1.1 练习 6」[HAOI2008]糖果传递

    [HAOI2008]糖果传递 题目描述 有 n n n 个小朋友坐成一圈,每人有 a i a_i ai​ 个糖果.每人只能给左右两人传递糖果.每人每次传递一个糖果代价为 1 1 1. 输入格式 小朋友 ...

  2. dijkstra最短路算法(堆优化)

    这个算法不能处理负边情况,有负边,请转到Floyd算法或SPFA算法(SPFA不能处理负环,但能判断负环) SPFA(SLF优化):https://www.cnblogs.com/yifan0305/ ...

  3. 分享一些小tips

    谷歌浏览器破解 google拓展商店中hackbar地址 https://chrome.google.com/webstore/detail/djmoeoifnlhjolebkehmpaocfnipk ...

  4. 华为分析&联运活动,助您提升游戏总体付费

    ARPU如何提升?付费率如何提升?活动ROI如何提升?这些都是游戏运营人员较常遇到的难题.华为分析与联运活动可以帮助运营提升这些用户付费指标,通过对玩家打标签和用户画像,对目标群体的进行精准推送,实现 ...

  5. 从零开始Blazor Server(11)--编辑用户

    用户编辑和角色编辑几乎一模一样,这里先直接贴代码. @page "/user" @using BlazorLearn.Entity @using Furion.DataEncryp ...

  6. Tomcat报错:类XXXServlet不是Servlet 解决方法

    学习servlet 结果对应网页打不开,报错 HTTP状态 500 - 内部服务器错误 类型 异常报告 消息 类HelloServlet不是Servlet ... 根本原因. java.lang.Cl ...

  7. java-Collection,List简单使用与方法/(集合使用-中)

    1.1集合只存放引用类型的元素并且集合存放的时元素的引用(地址)1.2新循环遍历集合 Collection c = new ArrayList(); c.add("one"); c ...

  8. Java SE 11 新增特性

    Java SE 11 新增特性 作者:Grey 原文地址:Java SE 11 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new ...

  9. 若依3.6.0使用Mybatis-plus分页失效以及完美替换Pagehelper

    一.前言 小编最近在经历后端框架的迁移,虽然不是小编来做,但是有个分页的情况让小编和一个同事去搞. 说一下小编这边的需求: 原来框架使用Mybatis-plus进行分页,要更换的新框架若依是使用Pag ...

  10. MySQL源码分析之SQL函数执行

    1.MySQL中执行一条SQL的总体流程 2.SQL函数执行过程 1.MySQL中执行一条SQL的总体流程 一条包含函数的SQL语句,在mysql中会经过: 客户端发送,服务器连接,语法解析,语句执行 ...