网站设计怎么做好,什么视频直播网站做挣钱,做视频网站需要什么空间,做图片网站会被本文开源一个FPGA项目#xff1a;UDP万兆光通信。该项目实现了万兆光纤以太网数据回环传输功能。Vivado工程代码结构和之前开源的《UDP RGMII千兆以太网》类似#xff0c;只不过万兆以太网是调用了Xilinx的10G Ethernet Subsystem IP核实现。
下面围绕该IP核的使用、用户接口…
本文开源一个FPGA项目UDP万兆光通信。该项目实现了万兆光纤以太网数据回环传输功能。Vivado工程代码结构和之前开源的《UDP RGMII千兆以太网》类似只不过万兆以太网是调用了Xilinx的10G Ethernet Subsystem IP核实现。
下面围绕该IP核的使用、用户接口以及数据传输方案展开介绍。文章末尾有该工程源码获取方式有需要的小伙伴可以点赞、分享支持一下~
一、软硬件平台
软件平台Vivado 2017.4; 硬件平台XC7Z035FFG676-2;
二、IP核参数配置
AXI4-Stream数据位宽选择64bits。对应的用户接口时钟频率为156.25MHZ。 PCS/PMA Options配置GTX动态重配置端口DRP时钟为100MHZ该设置同样仅对IP核out-of-context模式的综合有效不使用Transceiver Debug功能。 IEEE1588 OptionsIEEE1588功能一般用于某些需要进行网络时间同步的场合例如音视频传输。在本项目中只是进行数据传输因此可以不选择使用。 Shared Logic由于在此项目Vivado工程中只需例化一个该IP核因此这里选择Include Shared Logic in core将共享资源包含在IP内部即可。如果需要例化多个该IP核只需将其中一个IP核配置为Include Shared Logic in core其余的都配置为Include Shared Logic in example design。 三、用户接口
AXI-Stream发送接口
用户通过该接口将要发送的以太网数据包写入IP核。另外由tx_ifg_delay接口控制发送间隔将其配置为0即可。AXI-Stream发送接口时序如下图所示。 AXI-Stream接收接口
用户通过该接口读取IP核输出的以太网数据包。AXI-Stream接收接口时序如下图所示。 Pcspma-Status接口
该接口用于输出IP核内部PCS PMA部分工作状态在该工程中只有第0bit有效用于指示PCS Block Lock。 Sim-Speed-Up接口
该接口只在仿真时会用到用于加快仿真速度在该工程中将其设置为0即可。 Optical模块接口
signal_detect光模块状态指示信号配置为1
tx_fault光模块状态指示信号配置为0
tx_disable输出光模块控制信号。 Flow-Control接口
在高带宽、大负荷传输场合一般需要流量控制功能。在该工程不需要发送暂停帧因此将以下两个信号设置为0。
s_axis_pause_tvalid s_axis_pause_tdata。 AXI-Lite接口
该接口用于读写IP核内部寄存器通过对IP核各参数进行配置以实现基本的以太网数据包收发功能。
四、数据传输方案及测试
该项目的功能主要用于实现万兆以太网光纤数据回环传输在电脑端通过网络调试助手向FPGA发送数据包FPGA端接收、缓存数据包后回传给上位机。以太网数据回环传输方案如下图所示。 其中时钟为156.25MHZ数据位宽为64bits。在UDP IP核和10G Ethernet Subsystem IP核之间通过插入FIFO实现对每包以太网数据流的缓存功能。
利用wireshark软件抓取PC端和FPGA端之间以太网双向传输数据包结果如下图所示。 五、源码获取方式
需要该工程源码的小伙伴请下载我的 资源《FPGA优质开源项目获取方式》 里面有Vivado工程源码免费获取方式。 或者点击链接跳转到原文获取《FPGA优质开源项目 – UDP万兆光纤以太网通信》。