技术领域
[0001] 本实用新型涉及以太网卡,具体涉及一种支持TSN特性的以太网卡。
相关背景技术
[0002] 以太网卡是计算机、交换机、路由器等网络设备与外部网络连接的关键部件,它负责按照TCP/IP协议对数据进行封装和解析,从而实现用户数据与以太网帧之间的接口转换。以太网的一项重要特性指标是传输延迟,为了减小传输延迟,目前主流的做法有两种,一种是提升网络速率,另一种是增加优先级调度机制。提升网络速率虽然可以在一定程度上减小网络延迟,但是成本过高,且网络带宽利用率有时不高,造成一定的带宽浪费;增加优先级调度机制在低端网卡中是不支持的,在高端网卡中通常以QOS优先级设置的方式呈现,且实现方式不统一,给用户在使用上带来了不便。
[0003] TSN(Time‑Sensitive Networking)时间敏感网络,即在非确定性的以太网中实现确定性的最小时间延时的协议族,是IEEE 802.1工作组中的TSN工作组开发的一套协议标准,定义了以太网数据传输的时间敏感机制,为标准以太网增加了确定性和可靠性,使得数据能够实时、确定和可靠地传输。目前,应用较为成熟的TSN协议有IEEE802.1AS、IEEE 802.1Qav和IEEE 802.1Qbv,这些协议可以满足大多数控制延迟的需求。
[0004] 传统的以太网卡独立运行在主控计算机中,多块网卡间无法实现高精度时间同步,在以太网卡中实现TSN协议特性,既可以解决网络负荷较高时,数据传输延迟不确定的问题,也可以借助TSN协议特性中的高精度时间同步协议,做到很好的板卡数据同步。实用新型内容
[0005] (一)解决的技术问题
[0006] 针对现有技术所存在的上述缺点,本实用新型提供了一种支持TSN特性的以太网卡,能够有效克服现有技术所存在的无法对开发难度与传输延迟进行有效平衡、多板卡间数据同步性较差的缺陷。
[0007] (二)技术方案
[0008] 为实现以上目的,本实用新型通过以下技术方案予以实现:
[0009] 一种支持TSN特性的以太网卡,包括可编程逻辑模块、CPU模块和以太网物理接口收发器,所述可编程逻辑模块与CPU模块、以太网物理接口收发器连接,所述可编程逻辑模块与主控计算机进行数据通信,并通过时间同步接口发送或接收时间同步信号;
[0010] 所述可编程逻辑模块包括用于对可编程逻辑模块与主控计算机之间的通信数据进行缓存,并在以太网卡接收数据时生成中断信号的接口缓存模块,通过时间同步接口对外输出时间同步信号,并在接收到时间同步接口传输的时间同步信号后,向以太网组帧模块发送触发信号的时间同步模块,用于在以太网卡发送数据时对接口缓存模块中的缓存数据进行封装,并根据触发信号进行以太网帧收发的以太网组帧模块,以及用于CPU模块与以太网组帧模块传输TSN特性参数的总线转换模块,所述以太网组帧模块与接口缓存模块、时间同步模块、总线转换模块和以太网物理接口收发器连接。
[0011] 优选地,所述可编程逻辑模块与主控计算机之间通过PCIe接口通信,所述接口缓存模块与PCIe接口连接,所述接口缓存模块为PCIe接口缓存。
[0012] 优选地,所述PCIe接口支持Gen2×4规格。
[0013] 优选地,所述以太网物理接口收发器与RJ45网口连接,所述以太网物理接口收发器支持10M/100M/1000M自适应。
[0014] 优选地,所述时间同步信号为一路1PPS信号和TOD信号,1PPS信号每秒输出一个宽度为50ms的正脉冲,TOD信号采用GPZDA时间信息格式,并紧随1PPS信号的上升沿后产生。
[0015] 优选地,所述CPU模块与配置上位机之间通过RS232串口传输TSN特性参数。
[0016] 优选地,所述CPU模块在可编程逻辑模块上构成片上SOC,所述CPU模块与以太网组帧模块之间通过AXI4总线连接,所述总线转换模块采用AXIS2AXI模块。
[0017] (三)有益效果
[0018] 与现有技术相比,本实用新型所提供的一种支持TSN特性的以太网卡,包括以下有益效果:
[0019] 1)基于CPU+FPGA架构,能够将TSN协议中涉及到复杂数学计算的部分通过FPGA搬移到CPU中实现,将对实时性要求高的协议组帧、封帧操作在FPGA中实现,实现了开发难度与传输延迟之间的平衡;
[0020] 2)将IEEE 802.1AS时间同步后的信号通过标准的1PPS+TOD信号引出,能够有效提升多板卡间数据通信的同步性;
[0021] 3)支持通过外部串口进行参数配置,也支持通过PCIe接口进行参数配置,通过配置TSN特性参数,在兼容传统以太网卡的基础上,可以体验到TSN特性带来的便利。
具体实施方式
[0025] 为使本实用新型实施例的目的、技术方案和优点更加清楚,下面将结合本实用新型实施例中的附图,对本实用新型实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例是本实用新型一部分实施例,而不是全部的实施例。基于本实用新型中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本实用新型保护的范围。
[0026] 一种支持TSN特性的以太网卡,如图1所示,包括可编程逻辑模块、CPU模块和以太网物理接口收发器,可编程逻辑模块与CPU模块、以太网物理接口收发器连接,可编程逻辑模块与主控计算机进行数据通信,并通过时间同步接口发送或接收时间同步信号。
[0027] 如图2所示,可编程逻辑模块包括用于对可编程逻辑模块与主控计算机之间的通信数据进行缓存,并在以太网卡接收数据时生成中断信号的接口缓存模块,通过时间同步接口对外输出时间同步信号,并在接收到时间同步接口传输的时间同步信号后,向以太网组帧模块发送触发信号的时间同步模块,用于在以太网卡发送数据时对接口缓存模块中的缓存数据进行封装,并根据触发信号进行以太网帧收发的以太网组帧模块,以及用于CPU模块与以太网组帧模块传输TSN特性参数的总线转换模块,以太网组帧模块与接口缓存模块、时间同步模块、总线转换模块和以太网物理接口收发器连接。
[0028] 可编程逻辑模块与主控计算机之间通过PCIe接口通信,接口缓存模块与PCIe接口连接,接口缓存模块为PCIe接口缓存。
[0029] PCIe接口支持Gen2×4规格。
[0030] 以太网物理接口收发器与RJ45网口连接,以太网物理接口收发器支持10M/100M/1000M自适应。
[0031] 时间同步信号为一路1PPS信号和TOD信号,1PPS信号每秒输出一个宽度为50ms的正脉冲,TOD信号采用GPZDA时间信息格式,并紧随1PPS信号的上升沿后产生。
[0032] CPU模块与配置上位机之间通过RS232串口传输TSN特性参数。
[0033] CPU模块在可编程逻辑模块上构成片上SOC,CPU模块与以太网组帧模块之间通过AXI4总线连接,总线转换模块采用AXIS2AXI模块。
[0034] 支持TSN特性的以太网卡通过PCIe总线和主控计算机通信,以太网卡发送数据时,接收主控计算机下发的DMA数据和控制信号,控制信号有效后,以太网组帧模块将PCIe接口缓存的数据封装为GMII接口格式的以太网报文,GMII接口的报文经过以太网组帧模块后,以RGMII接口形式输出到以太网物理接口收发器;以太网卡接收数据时,将以太网报文存储到PCIe接口缓存,并由PCIe接口缓存产生中断信号,主控计算机收到中断信号后将报文读出。
[0035] 支持TSN特性的以太网卡在接收到主控计算机发送的带有VLAN标识的DMA数据和控制信号后,在以太网组帧模块中将VLAN标识填入指定的以太网帧字段中,并根据VLAN标识和TSN特性参数执行IEEE 802.1Qav协议和IEEE 802.1Qbv协议。
[0036] 支持TSN特性的以太网卡在接收到其它网卡发送的以太网帧后,根据以太网帧中的VLAN标识和TSN特性参数执行IEEE 802.1Qav协议和IEEE 802.1Qbv协议,然后将优先级高且当前门控打开的队列中的数据输出到PCIe接口缓存中,然后PCIe接口缓存产生中断信号,主控计算机收到中断信号后将报文读出。
[0037] 支持TSN特性的以太网卡在IEEE 802.1AS时间同步后,当时间戳计算到整秒时,时间同步模块对外输出一路1PPS信号和TOD信号,时间同步接口实时监测其他网卡发送的1PPS信号和TOD信号。当要求进行以太网帧的同步收发时,通过配置TSN特性参数,时间同步模块会在设定的TOD整秒后产生一个触发信号发送至以太网组帧模块,以太网组帧模块根据该触发信号进行以太网帧的收发。
[0038] 本申请技术方案中,CPU模块和可编程逻辑模块采用Xilinx Zynq系列FPGA,片上集成了CPU模块和可编程逻辑模块,CPU模块通过AXIS2AXI模块与以太网组帧模块进行数据交互,以实现TSN协议中的IEEE 802.1AS高精度时间同步计算、TSN协议中的IEEE 802.1Qav参数配置和IEEE 802.1Qbv参数配置。
[0039] 支持TSN特性的以太网卡有两种参数配置方式:
[0040] 第一种配置方式是通过RS232串口将TSN特性参数配置到CPU模块中,CPU模块在设置自身需要的参数后,将参数通过AXIS2AXI模块配置到以太网组帧模块中,由以太网组帧模块提取需要的参数进行设置;
[0041] 第二种配置方式是通过PCIe接口和配置上位机(主控计算机)进行参数配置,配置上位机将具有特殊数据结构的配置帧通过PCIe发送到以太网组帧模块中,由以太网组帧模块提取需要的参数进行设置后,将参数通过AXIS2AXI模块配置到CPU模块中,CPU模块提取需要的参数进行设置。
[0042] 其中,第一种参数配置方式支持在进行以太网帧收发的同时进行TSN特性参数配置,适合参数调试阶段使用;第二种参数配置方式需要先停止以太网帧的收发,再进行TSN特性参数配置,适合参数确定后的初始化配置。
[0043] 值得注意的是,本申请技术方案的目的仅是为了提供一种不同于现有技术的硬件配置,使技术人员能够在这样的硬件配置下实现进一步的开发,至于软件程序可在后期由本领域的编程人员根据实际效果需要进行编程。
[0044] 以上实施例仅用以说明本实用新型的技术方案,而非对其限制;尽管参照前述实施例对本实用新型进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不会使相应技术方案的本质脱离本实用新型各实施例技术方案的精神和范围。