跟我实现半导体SECSGEM通讯协议之(一)- HSMS消息格式

下一章:跟我实现半导体SECSGEM通讯协议之(二)- HSMS连接建立及超时处理

HSMS消息格式

HSMS消息格式按顺序分别为包含4字节的消息长度,10字节的消息头与n字节的消息体。

字节数 描述
4 Bytes 指消息头与消息体字节数相加的总长度之和。由此可知一条基于HSMS的消息最长可达2的32次方,是4GB
10 Bytes 消息头
0-n Bytes 消息体, 其中PType指定消息体的类型,PType为0时表示消息体为SECS-II消息

10字节消息头:定义了HSMS消息的类型。如下表:

消息类型 0-1字节 SessionID 2字节 3字节 4字节 PType 5字节 SType 6-9字节System Bytes
数据消息 * W-bit 以及 SECS Stream SECS Function 0 0 Primary: 唯一值, Reply: 与 primary一致
Select.req * 0 0 0 1 唯一值
Select.rsp 与Select.req一致 0 Select Status 0 2 与Select.req一致
Deselect.req * 0 0 0 3 唯一值
Deselect.rsp 与 Deselect.req一致 0 0 0 4 与 Deselect.req一致
Linktest.req 0xFFFF 0 0 0 5 唯一值
Linktest.rsp 0xFFFF 0 0 0 6 与Linktest.req一致
Reject.req 与被Reject消息一致 被Reject消息的PType或是SType Reason Code 0 7 与被Reject消息一致
Seperate.req * 0 0 0 9 唯一值

当PType=0时,表示消息体承载的消息为SECS-II消息。本系列也只讨论HSMS-SS, SECS-II的实现过程。

HSMS消息大致分为两类:

  1. 数据消息(Data Message):
    当Byte5(SType)= 0 时,表示此消息为数据消息。
    当Byte4(PType)= 0时,表示这条数据消息为SECS-II的数据消息。此时:
    Byte0-1则表示为SECS-II的Device ID.
    Byte2为W-bit以及Stream,W-bit占用此字节的第8位,为1表示消息需要回复,为0表示不需要回复。剩下7位表示SECS-II的stream。如下图所示:
    在这里插入图片描述
    Byte3表示SECS-II的Function。

  2. 控制消息(Control Message):
    上表所示的消息除Data Message(PType=0,SType=0)外,其余都是控制消息。
    控制消息定义了HSMS底层相关的通讯连接建立(Select ),心跳(Linktest)以及断开连接(Deselect / Seperate)

Byte6-9则是表示消息的唯一ID,当发送消息与回复消息ID相同时,则说明是一对Primary和Secondary消息。

下面是Hsms消息所对应的结构体,其中关键字__attribute__ ((packed)) 表示不需要字节对齐。

typedef struct __attribute__ ((__packed__)) hsms_msg_s {
   
    uint32_t        len;
    uint16_t        session_id;
    char            h2;
    char            h3;
    char            ptype;
    char            stype;
    uint32_t        system_bytes;
    char            body[];
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 半导体通讯协议是为半导体生产而设计的应用层通讯协议,它为多个半导体设备提供了统一的通讯接口,从而实现了设备间的通讯互联。SECS-I(SEMI Equipment Communications Standard 1)和SECS-II(SEMI Equipment Communications Standard 2)是其中最为常用的两种协议。 SECS-I是一种基于二进制的协议,数据传输速度较慢,主要应用于较简单的半导体生产设备和IC卡生产设备等。它是面向字节的协议,提供了设备状态变化通知、命令接受、执行结果返回等功能。 SECS-II则是在SECS-I基础上做出的升级,是一种基于消息段的协议,数据传输速度更快,支持Java和C++编程语言。它不仅提供了SECS-I所有的功能,还可以支持更多的应用,如运行时修改协议、自动重连等。 HSMS(High Speed Message Service)是一种高速数据传输的协议,使用独特的三层模型。它使用TCP/IP层传输数据,传输速度远高于SECS-I和SECS-II。 GEM(Generic Equipment Model)是SEMI标准制定的设备模型,它提供了一种公共的数据操作接口,用于与设备交互。它不仅提供了设备的基本信息,还具有完整的运行数据和状态信息。 SECS协议资料包括为用户提供的收发消息解析器、SEMI协议文献、SEMI协议使用说明等。这些资料可以为用户提供完整的协议使用指南,利用这些资料可以更好地理解和操作SECS协议。 ### 回答2: 半导体设备制造通讯协议SECS(Semiconductor Equipment Communications Standard)是一种用于在半导体设备之间进行通讯的标准化协议。其最初的版本SECS-I是于1987年提出的,用于支持简单的消息传输和无异常数据传输。后来,为了提高数据传输带宽和可靠性,SEMI又推出了SECS-II版本。SECS-II在SECS-I的基础上增加了更多的报文传输方式和报文格式,同时引入了多线程、消息重发和超时管理机制,支持了更为复杂和高速的通讯。 HSMS(High Speed Message Service)是一种基于TCP/IP协议的SEMI标准通讯协议,相比于SECS-II更为高速,需要更低的通讯延迟。HSMSSECS-II一样,具有可靠性、扩展性、兼容性和互操作性,可用于半导体制造设备之间的通讯。 GEM(Generic Equipment Model)是SEMI制定的一种标准通讯协议,用于在半导体制造设备和自动化系统之间实现消息互通和控制。GEM基于SECS-II和HSMS通讯协议实现了制造系统和制造设备之间的互操作性,可以通过它实现诸如数据收集、报警、设备控制、远程诊断等功能操作。 SECS协议资料包括了SEMI组织发布的各类规范和标准、数据手册、报文协议说明和范例、通讯模拟工具等。这些资料将有助于半导体设备厂商、系统集成商、应用开发者和维护人员理解和应用SECS及其衍生协议,从而提高设备通讯的效率和可靠性。 ### 回答3: 半导体通讯协议SECS(SEMI Equipment Communications Standard)是一种用于半导体制造设备之间通信的标准协议。其中,SECS-I和SECS-II分别是SECS的两个版本。 SECS-I是原始版本,也是较简单的版本。它采用Synchronous Link Control(SLC)协议,以半双工方式传输数据。每次只能有一台设备发送数据,另一台设备则必须等待。由于其简单性和易用性,SECS-I广泛应用在晶圆切割机、半导体封装机等设备通信中。 SECS-II是更新版本,也是当前广泛使用的版本。它使用TCP/IP协议进行通信,支持双向数据传输,实现了高速、高效的数据传输。SECS-II还拥有更丰富的功能和更灵活的扩展性,能够满足不同设备之间复杂的通信需求。因此,SECS-II被广泛应用于半导体生产的各个环节,如控制制造设备、数据收集和分析等。 HSMS(High-Speed SECS Message Services)是一种基于SECS-II的通讯协议。它利用TCP/IP协议实现高速的数据传输,从而提高生产效率。HSMS支持多个连接,能够实现多设备同时与工控机通信,满足大规模制造的需要。 GEM(Generic Equipment Model)是SECS协议的一种扩展,它定义了半导体设备与上层系统之间的通信接口。GEM将设备抽象成状态机,提供了一组标准的状态变化模型和可重用的状态模板,从而简化了设备开发和系统集成的工作。GEM的应用范围广泛,例如,它可以用于管理半导体生产线的批处理和工艺路线。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zxh9813

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值