TSN介绍
随着智能制造、工业物联网、大数据的发展,许多工业自动化应用对于延迟和确定性的要求越来越严格。现有的大部分自动化控制解决方案都是基于传统的以太网实现的,各大厂商研发了一些附加的技术机制,从而导致了很多协议都不兼容。如Profinet、Powerlink、EtherCAT、SercOSIII等均无法互相兼容也无法和标准以太网共同进行数据传输。因此实时以太网解决方案市场非常分散,无法支持未来工业网络的发展。时间敏感网络(TSN)迎合了工业以太网的需求,其低延迟、低抖动、高可靠性能,保证了数据的确定性传输和网络复用性。
TSN本身并非是一个全新的技术,IEEE于2002年发布了IEEE1588精确时钟同步协议,而2005年,IEEE802.1成立了IEEE802.1AVB工作组,开始制定基于以太网架构的音频视频传输协议集,用于解决数据在以太网中的实时性、低延时以及流量整形的标准,同时又确保与以太网的兼容性。而AVB又引起了汽车工业、工业领域的技术组织及企业的关注,并成立了TSN工作组,并开发了时钟同步、流量调度、网络配置系列标准集。
TSN是基于IEEE802.1Q标准的VLAN(虚拟局域网),该标准允许在以太网帧增加4个字节用于定义其特征:
1)、标签协议识别:网络类型识别,代表这是一个TSN网络,标记0X8100;
2)、优先级代码(Priority Code Point):3位代码构成三个优先级位,简称PCP;
3)、标志位:对于网络低QoS要求的数据,可以予以丢弃,以确保高优先级数据的QoS;
4)、VLAN Identifier(VID):VLAN网络的识别号,12位表示可支持的子网数量,2的12次方即4096个子网,VID=0用于识别帧优先级,4095(FFF)作为预留值,所以VID最多可以表示4094个子网,说明TSN是为了大型的数据传输而设计的。
TSN作为IEEE802.1Q仅指ISO/OSI参考模型的第二层,数据链路层的标准,它与其它实时总线相比有有所差别。下图对比了各种总线在7层网络协议中的位置。
TSN协议族包含了时钟同步、流量整形、数据调度、网络配置、应用配置等方面的标准:
IEEE着手将以太网全面升级为TSN网,这个过程可能要用20年时间。其应用范围很广,涵盖6个领域,分别是:
a、以太网音视频桥即EAVB,802.1BA标准;
b、5G射频前传FrontHaul,即802.1CM/de标准;
c、工业自动化即IEC/IEEE 60802标准;
d、车载TSN即802.1DG标准;
e、服务供应商Service Provider即802.1DF标准。
其中后3个标准尚未完成。
TSN机制
时钟同步机制
IEEE 802.1AS是基于IEEE 1588 V2精确时钟同步协议发展的,称为gPTP-广义时钟同步协议。gPTP是一个分布式主从结构,它对所有gPTP网络中的时钟与主时钟进行同步。首先由最佳主时钟算法(best clock master algrothms,BCMA)建立主次关系,分别称为主时钟(clock master,CM)和从时钟(clock slave,CS)。
每个gPTP节点会运行一个gPTP Engine。IEEE1588所采用的PTP是由网络的L3和L4层的IP网络传输,通过IPv4或IPv6的多播或单播进行分发时钟信息。而gPTP则是嵌入在MAC层硬件中,只在L2工作,直接对数据帧插入时间信息,并随着数据帧传输到网络每个节点。
而IEEE802.1AS-rev则是一种多主时钟体系,它主要为了确保当有一个GrandMaster宕机时,可以快速切换到一个新的主时钟,以便实现高可用性系统,对于车载系统基于IEEE802.1AS即可,而对于工业则考虑高可用性采用AS-Rev版本。
数据调度机制
TSN 的数据调度是保证时间敏感的基础,它的核心思想是基于不同的整形器来进行不同应用场景的流控制。IEEE 802.1 提供了一系列的标准来确保可靠性的数据传输,其中AMD的数据调度方式是时间感知的整形器(TAS Time Awareness Shaper),通过门控制列表(GCL)周期性的控制门的开/关,TAS需要从发送方(Talker)到接收方(Listener)中间的所有网桥进行时钟同步,对于网桥中的每个端口,TAS根据已知且商定的时钟表进行开关驱动动作,而数据调度则可以根据每个节点及队列的优先级进行定义,在IEEE802.1Qbv的实现中,那些需要实时传输的数据流通常被第一个安排进行传输,需要在时间调度配置时预先予以确定,而与此同时,还需要为非周期性的数据预留一个通道。
其他机制
除此之外,TSN还包括IEEE 802.1Qci(包过滤,可以防止ARP攻击等) IEEE 802.1CB(帧复制和消除,冗余系统) IEEE 802.1Qcc(网络管理配置) IEEE 802.1Qbu(帧抢占策略)等标准。
AMD TSN-IP简介
LogiCORE100M/1GTSN Subsystem IP在Zynq-7000和MPSoC系列SoC上实现了TSN标准,提供了双口桥接低延迟端点或者单端点的方案,外部可以通过RGMII/GMII连接到PHY,支持100Mb/s和1Gb/s网络。
AMD的TSN IP提供了以下标准:
从IP所具备的标准可以看出这个IP非常适合工业自动化等领域作为节点使用。
AMD TSN IP可以配置为单口端点模式和双口交换模式:
双口交换模式实现方式如下:
每个端口都有一个TAS整形器,用来控制内部和每个端口之间的数据流,3-Port Switch是一个3口交换IP,一个口连接内部数据,另外两个通过MAC连接到外部网络,PTP功能则是通过BRAM进入到MAC层中。
在Vivado中也有相应的实现:
在PS侧,提供了相应的软件驱动和设备树,保证用户客户可以方便快速的使用TSN IP。
目前TSN IP支持Zynq-7000系列和MPSoC系列,IP配置为不同的模式消耗的逻辑资源如下:
审核编辑:刘清