Xilinx Zynq7035 PL SFP光口通信例程

简介: 本文主要介绍说明XQ6657Z35-EVM 高速数据处理评估板SPF光口通信例程的功能、使用步骤以及各个例程的运行效果。

本文主要介绍说明XQ6657Z35-EVM 高速数据处理评估板SPF光口通信例程的功能、使用步骤以及各个例程的运行效果。
(基于TI KeyStone架构C6000系列TMS320C6657双核C66x 定点/浮点DSP以及Xilinx Zynq-7000系列SoC处理器XC7Z035-2FFG676I设计的异构多核评估板,由核心板与评估底板组成。)

ZYNQ7035 PL SFP光口通信例程

1.1.1例程位置
ZYNQ例程保存在资料盘中的Demo\ZYNQ\PL\aurora_8b10b_0_ex文件夹下。

1.1.2功能简介
使用Aurora 8B/10B IP核生成后带的例子工程,稍作修改。
图片1.png

图片2.png

图 Aurora 8B/10B例子工程

FRAME_GEN: 本地并行数据发送模块
功能:本地产生GTX并行发送数据
接口说明:
// User Interface
output [0:15] TX_D; //发送数据
output TX_REM; //最后一个16bits数据的高低字节有效标识,0表示,表示TX_D[0:7]有效;1表示TX_D[0:15]有效。
output TX_SOF_N; //发送开始标识,低电平有效
output TX_EOF_N; //发送结束标识,低电平有效

output             TX_SRC_RDY_N;  //发送数据源端准备好标志,低有效
input              TX_DST_RDY_N; //发送数据目的端准备好标,为0时才允许发送数据

// System Interface
input              USER_CLK;//用户时钟,由Aurora IP核提供,数据发送模块用此时钟作为同步时钟
input              RESET;//复位,高有效

input CHANNEL_UP;//GTX通道初始化完成标志,为1时表示完成

数据发送模块只有在RESET=0、CHANNEL_UP=1和TX_DST_RDY_N=0时,才允许发送数据。

FRAME_CHECK: 本地并行数据接收检测模块
功能:本地接收GTX并行数据,并检测数据是否存在误码
接口说明:
// User Interface
input [0:15] RX_D; //接收数据
output RX_REM; //最后一个16bits数据的高低字节有效标识,0表示,表示RX_D[0:7]有效;1表示RX_D[0:15]有效。
output RX_SOF_N; //接收开始标识,低电平有效
output RX_EOF_N; //接收结束标识,低电平有效

input              RX_SRC_RDY_N; //接收数据有效,低电平有效

// System Interface
input              USER_CLK; //用户时钟,由Aurora IP核提供,数据发送模块用此时钟作为同步时钟
input              RESET; //复位,高有效
input              CHANNEL_UP; //GTX通道初始化完成标志,为1时表示完成
output  [0:7]      ERR_COUNT; //接收数据错误个数

Aurora 8B10B IP核参数设置如下图所示:
图片3.png

Aurora 8B10B IP核显示最高只支持6.6Gbps,这里我们将线速率设置为5Gbps,参考时钟设置为100MHz

1.1.3管脚约束
ZYNQ PL工程管脚约束如下图所示:
图片4.png

1.1.4例程使用
1.1.4.1连接光纤模块
将光模块插入光模块笼子,并使用光纤线缆将光模块的收、发端口自环对接:
图片5.png

1.1.4.2加载运行ZYNQ程序
1.1.4.2.1打开Vivado工程
打开Vivado示例工程:
图片6.png

工程打开后界面及工程主要模块说明如下图所示:
图片7.png

图片8.png

1.1.4.2.2下载ZYNQ PL程序
下载bit流文件aurora_8b10b_0_exdes.bit,并且配套aurora_8b10b_0_exdes.ltx调试文件,如下图下载界面所示:
图片9.png

1.1.4.3运行结果说明
ZYNQ PL端提供的ILA调试窗口,可以实时抓取采集GTX收发本地并行信号以及错误检测信号的时序波形。
ILA抓取波形如下图所示:
图片10.png

ILA抓取信号说明如下:
ERR_COUNT[0:7]:接收数据错误个数,接收模块分析接收数据是否正确;
tx_d_i[0:15]:发送数据;
tx_rem_i:最后一个发送数据的高低字节有效标识,0表示,表示tx_d_i[0:7]有效,1表示tx_d_i[0:15]有效;
tx_src_rdy_n_i:发送数据源端准备好标志,结合tx_dst_rdy_n_i使用,都为0时表示可以发送数据,
tx_sof_n_i:发送开始标识,低电平有效;
tx_eof_n_i:发送结束标识,低电平有效;
tx_dst_rdy_n_i:发送数据目的端准备好标志;
rx_d_i[0:15]:接收数据
rx_rem_i:最后一个接收数据的高低字节有效标识,0表示,表示rx_d_i[0:7]有效,1表示rx_d_i[0:15]有效;
rx_src_rdy_n_i:接收数据源端准备好标志;
rx_sof_n_i:接收开始标识,低电平有效;
rx_eof_n_i:接收结束标识,低电平有效;
CHANNEL_UP:为1表示GTX通道完成正常初始化;
LANE_UP:指示GTX每个lane是否正常初始化成功,这里只有1个Lane;
SOFT_ERR、HARD_ERR:软、硬件错误指示,正常情况应该为0
tx_lock_i_ila:GTX时钟锁定指示,正常情况应该为1
pll_not_locked_ila:GTX时钟失锁指示,正常情况应该为0

VIO虚拟IO界面如下图所示:
图片11.png

VIO界面上标识Input的为采集信号,用户只能查看对应信号当前的逻辑电平值,1表示高电平,0表示低电平;VIO界面上标识Output的为用户控制信号,用于控制用户逻辑的,用户可以在Value一栏输入0/1电平值,从而达到控制用户逻辑的目的。VIO界面主要用于复位用户逻辑,以及查看通道是否链接成功,VIO界面可以不用操作。

1.1.4.4退出实验
Vivado调试界面Hardware Manager窗口,右键单击localhost(1),在弹出的菜单中点击Close Server,断开ZYNQ JTAG仿真器与板卡的连接:
图片12.png

最后,关闭板卡电源,实验结束。

相关文章
|
存储
ZYNQ-pbuf操作指南(一)
ZYNQ-pbuf操作指南
542 0
ZYNQ-pbuf操作指南(一)
|
6月前
|
缓存 人工智能 Windows
LabVIEW阿尔泰PCIE 5654 例程与相关资料
LabVIEW阿尔泰PCIE 5654 例程与相关资料
36 1
|
6月前
|
传感器 开发工具 芯片
【ZYNQ】ZYNQ7000 XADC 及其驱动示例
【ZYNQ】ZYNQ7000 XADC 及其驱动示例
139 0
|
6月前
|
开发工具 芯片 Perl
【ZYNQ】裸机 PS + PL 双网口实现之 ZYNQ 配置
【ZYNQ】裸机 PS + PL 双网口实现之 ZYNQ 配置
756 0
|
6月前
|
测试技术 Perl
【ZYNQ】ZYNQ7000 UART 控制器及驱动应用示例
【ZYNQ】ZYNQ7000 UART 控制器及驱动应用示例
242 0
|
6月前
MSR04X1 串行通信模块程序调入方案
MSR04X1 串行通信模块程序调入方案
|
存储 网络性能优化 vr&ar
深入理解AMBA总线(十七)AXI是如何提高性能的
深入理解AMBA总线(十七)AXI是如何提高性能的
1999 1
|
网络性能优化
深入理解AMBA总线(十九)AXI4新增信号以及AXI4-lite
深入理解AMBA总线(十九)AXI4新增信号以及AXI4-lite
717 0
|
传感器 5G 数据处理
ZYNQ(FPGA)与DSP之间GPIO通信
基于 TI KeyStone 架构 C6000 系列 TMS320C6657双核C66x 定点/浮点 DSP以及 Xilinx Zynq-7000 系列 XC7Z035/045 SoC 处理器设计的高端异构多核评估板,由核心板与评估底板组成。 DSP采用 TMS320C6657 双核C66x 定点/浮点,每核主频1GHz/1.25GHz。 Xilinx Zynq SoC处理器采用的XC7Z035/045集成PL端Kintex-7架构+PS 端双核ARM Cortex-A9 ,28nm可编程逻辑资源。
ZYNQ(FPGA)与DSP之间GPIO通信
|
网络协议 测试技术 芯片
基于ZYNQ+DSP平台Zynq7035/45 FPGA高速串行接口的千兆以太网UDP例程设计和使用说明
Xilinx XC7Z035/45-2FFG676I PL端高速串行接口的千兆以太网UDP例程设计和使用说明
基于ZYNQ+DSP平台Zynq7035/45 FPGA高速串行接口的千兆以太网UDP例程设计和使用说明