一种万兆光纤以太网的实现方法
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一种万兆光纤以太网的实现方法
【摘要】文中介绍了IEEE802.3ae规范中万兆以太网物理层和媒质接入层的有关知识,提出了一种万兆光纤以太网的实现方法,并通过仿真进行了验证,对于解决新型雷达海量数据传输带宽的问题具有重要意义。
【关键词】万兆以太网;FPGA;UDP;IP
0 引言
由于相控阵雷达及多波束数字阵列信号处理技术的飞
速发展,雷达系统对于数据的吞吐能力及数据的传输带宽的需求呈现急速上升的趋势。为了满足相控阵雷达对多波束数据的实时快速处理,需要建立各分系统间数据的高速通道,实现对阵列雷达前端数据的实时传输。
传统的雷达对前端数据一般采用百兆或千兆铜介质以
太网与雷达信号处理机进行对接,这种实现方式已经无法满足大量数据传输的需求,而且对雷达信号处理机的实时性能提出了更高的要求。近年来随着以太网技术的不断发展,万兆以太网因其卓越的带宽优势,使得雷达系统间高速海量数据的实时传输成为可能。本文以IEEE 802.3ae-2008规范为基础,介绍了以光纤为传输介质实现的万兆以太网的传输方案。
1 万兆以太网的协议体系结构
考虑到与当前的千兆以太网标准的兼容性,万兆以太网(10GE)技术标准―IEEE802.3ae继承了现有以太网的基本模型、煤质接入控制(Media Access Control,简称MAC)协议以及网络的拓扑结构。为了将以太网的工作速率提升到
10Gbps,同时保证其可以用于MAN和WAN的链路,针对现有的千兆以太网中的物理层(Physical,简称PHY)和MAC
层进行了相应的改造。
为了满足10GE对带宽的要求,不同于千兆以太网中125MHz时钟域工作的MAC层,在10G以太网的MAC层设计中面临着更多的挑战。在10G以太网的规范中定义了一种新的接口―XGMII(10 Gigabit Media Independent Interface)。这个新的接口可以用于MAC层和不同的物理煤质进行连接。新的接口数据位宽达到了32bit,并且可以在156.25MHz的时钟下以DDR的方式工作,以此达到10G以太网对带宽的要求。在物理层中,广域网与局域网的连接功能由WIS(广域网接口子层)完成,其中实现了一个简单的SONET/SDH的成帧器,同时,为了能够正确的传输以太网数据,在物理层中实现了64B/66B的编解码器和扰码器,可以有效的保证10GE 的应用空间的扩展。
2 传输方案设计与实现
万兆光纤以太网的实现方案如图1所示,本文设计采用Xlinx公司的Virtex-7系列的XC7VX485T器件,该器件采用
28nm工艺,其中-2速度等级的器件可以提供最大
10.3125Gbps的GTX串行收发器,可以在不使用外部专用PHY 芯片的情况下实现万兆以太网物理层的部分功能。
本设计主要由数据缓存单元、数据封装与解封装单元,10GE MAC IP核、10GE PCS/PMA(10GBASE-R)IP核及光收发器SFP+模块组成。数据缓存单元采用双口RAM对采样数据进行缓存;数据封装与解封装单元按照以太网的UDP及IP
协议对数据进行封装或解封装;10GE MAC IP核及10GE PCS/PMA(10GBASE-R)IP核完成封装后的数据的接收、发送及流量控制等功能。
(1)帧封装:根据UDP及IP的帧格式,帧封装模块的实现如图2,由输入缓冲模块、输出缓冲模块、计数模块、校验模块、数据存储模块、首部存储模块和控制逻辑模块构成。封装的完整操作过程如流水线一样,缓冲单元模块对输入的单字节的数据进行缓存,然后输出双字节的数据,顺序通过计数模块和校验和计算模块;随后对计数模块及校验和计算模块的输出数据进行存储,完成所有数据的运算后,将数据依次送入输出缓冲单元模块,最后输出单字节的数据,进入下一阶段的处理过程;封装流程的控制由控制逻辑模块完成,其可以生成封装运算的启动和结束标志。因为UDP的首部结构和IP的首部结构存在一定差异,因此在封装的过程里由不同的数据段进行校验和的计算,但因为文中采用的二
进制反码求和的算法可同时用于IP帧与UDP帧的校验和计算,所以,本文设计的校验和计算的模块可同时用于两种帧的校验和计算,如图3所示。为了方便计算,文中采用十六进制的数据运算:首先为防止高位的数据溢出,将16位进
行一位扩展,随后对数据依次求和,每次求和结束后对0xFFFF 进行取模,完成所有数据的求和运算后,将和与0xFFFF相减所得即为校验和。
(2)帧解封装:解封装的过程与封装过程相反,因此
设计如图4所示处理模块。完整的数据帧顺序通过输入缓冲、去MAC头、去IP头、去UDP头和输出缓冲,输出即为最终的数据部分。控制逻辑用于产生整个过程的起始与结束标志。
3 仿真验证
本文中方案在Xilinx公司的ISE14.2开发工具中开发,经ModelSim SE 10.1b工具进行了仿真验证,如图5所示,实现了数据的发送与接收功能。
4 结束语
本文根据IEEE802.3和802.3ae的规范,在分析万兆以太网协议的基础上,借助Xilinx的10GE MAC IP核及10GE
PCS/PMA IP核,实现了用于雷达分系统间高速数据传输的万兆互联方案,阐述了各个模块的功能及实现方式,并对其进行了仿真验证。相比于传统的雷达分系统数据传输方案,本方案的实现能够满足新型雷达对海量高速数据传输的带宽
要求。
【参考文献】
[1]杨阳,刘剑,等. 一种基于FPGA的万兆光纤以太网高速传输方法[J].雷达与对抗,2015.
[2]李伟,窦衡,等. 基于FPGA的万兆光纤以太网接口的设计与实现[J].光通信技术,2009.
[3]张友亮,刘志军,等.万兆以太网MAC层控制器的FPGA 设计与实现[J].计算机工程与应用,2012.
[4]IEEE Standard 802.3ae-2008 Media Access Control (MAC)Parameter,Physical Layers,and Management Parameters for 10Gbps Operation,2012[Z].
[责任编辑:王伟平]