AMD TSN方案简介

作者: Perry Li,来源:Comtech FPGA微信公众号

TSN介绍

随着智能制造、工业物联网、大数据的发展,许多工业自动化应用对于延迟和确定性的要求越来越严格。现有的大部分自动化控制解决方案都是基于传统的以太网实现的,各大厂商研发了一些附加的技术机制,从而导致了很多协议都不兼容。如Profinet、Powerlink、EtherCAT、SercOSIII等均无法互相兼容也无法和标准以太网共同进行数据传输。因此实时以太网解决方案市场非常分散,无法支持未来工业网络的发展。时间敏感网络(TSN)迎合了工业以太网的需求,其低延迟、低抖动、高可靠性能,保证了数据的确定性传输和网络复用性。

TSN本身并非是一个全新的技术,IEEE于2002年发布了IEEE1588精确时钟同步协议,而2005年,IEEE802.1成立了IEEE802.1AVB工作组,开始制定基于以太网架构的音频\视频传输协议集,用于解决数据在以太网中的实时性、低延时以及流量整形的标准,同时又确保与以太网的兼容性。而AVB又引起了汽车工业、工业领域的技术组织及企业的关注,并成立了TSN工作组,并开发了时钟同步、流量调度、网络配置系列标准集。

TSN是基于IEEE802.1Q标准的VLAN(虚拟局域网),该标准允许在以太网帧增加4个字节用于定义其特征:

图1.png

 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层网络协议中的位置。

图2.png

TSN协议族包含了时钟同步、流量整形、数据调度、网络配置、应用配置等方面的标准:

图3.png

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版本。

图4.png

数据调度机制

TSN 的数据调度是保证时间敏感的基础,它的核心思想是基于不同的整形器来进行不同应用场景的流控制。IEEE 802.1 提供了一系列的标准来确保可靠性的数据传输,其中AMD的数据调度方式是时间感知的整形器(TAS Time Awareness Shaper),通过门控制列表(GCL)周期性的控制门的开/关,TAS需要从发送方(Talker)到接收方(Listener)中间的所有网桥进行时钟同步,对于网桥中的每个端口,TAS根据已知且商定的时钟表进行开关驱动动作,而数据调度则可以根据每个节点及队列的优先级进行定义,在IEEE802.1Qbv的实现中,那些需要实时传输的数据流通常被第一个安排进行传输,需要在时间调度配置时预先予以确定,而与此同时,还需要为非周期性的数据预留一个通道。

图5.png

其他机制

除此之外,TSN还包括IEEE 802.1Qci(包过滤,可以防止ARP攻击等) IEEE 802.1CB(帧复制和消除,冗余系统) IEEE 802.1Qcc(网络管理配置) IEEE 802.1Qbu(帧抢占策略)等标准。

AMD TSN-IP简介

LogiCORE™100M/1G TSN Subsystem IP在Zynq-7000和MPSoC系列SoC上实现了TSN标准,提供了双口桥接低延迟端点或者单端点的方案,外部可以通过RGMII/GMII连接到PHY,支持100Mb/s和1Gb/s网络。

图6.png

AMD的TSN IP提供了以下标准:

图7.png

从IP所具备的标准可以看出这个IP非常适合工业自动化等领域作为节点使用。

AMD TSN IP可以配置为单口端点模式和双口交换模式:

图8.png

 双口交换模式实现方式如下:

图9.png

 每个端口都有一个TAS整形器,用来控制内部和每个端口之间的数据流,3-Port Switch是一个3口交换IP,一个口连接内部数据,另外两个通过MAC连接到外部网络,PTP功能则是通过BRAM进入到MAC层中。

在Vivado中也有相应的实现:

图10.png

 在PS侧,提供了相应的软件驱动和设备树,保证用户客户可以方便快速的使用TSN IP。

图11.png

 目前TSN IP支持Zynq-7000系列和MPSoC系列,IP配置为不同的模式消耗的逻辑资源如下:

图12.png

图13.png

如果您在TSN应用方面有问题,欢迎联系:

simonyang@comtech.cn 

charlesxu@comtech.cn 

最新文章

最新文章