基于Xilinx FPGA的LVDS高速串行通信系统(四)--数据测试【文末源码】

章节合集:

基于Xilinx FPGA的LVDS高速串行通信系统(一)

基于Xilinx FPGA的LVDS高速串行通信系统(二)

基于Xilinx FPGA的LVDS高速串行通信系(三)

核心功能模块

1. LVDS接收端

物理层接收(lvds_rx_recv.v)

训练同步模块(lvds_rx_training.v)

8b/10b解码器(lvds_receive.v)

2. LVDS发送端

8b/10b编码器(lvds_send.v)

物理层发送(lvds_tx_top.v)

3. 系统集成(lvds_top.v / gsds_LVDS.v)

01 数据通信测试

LVDS数据通信的测试采用软逻辑分析仪测试方法,其原理是在FPGA逻辑代码 设计阶段或综合完成后在工程中插入一个软逻辑分析仪的核,软逻辑分析仪通过综 合块RAM资源,用工作时钟把内部的LVDS相关信号采集到块RAM里,采完以后 再通过FPGA的JTAG接口把块RAM里的LVDS相关数据读到外部PC上显示。最 后通过PC上的显示数据,判定发送端和接收端之间的LVDS 通讯是否正常。

LVDS帧加载器的格式测试结果如下图所示。

由测试结果可知,在整个数据传输的中,分别抓取到数据的帧头、帧位、数据 域、校验位。符合 LVDS 数据帧格式的定义。完成了帧格式的测试,接下来需要对 8B/10B 编码进行测试。首先,对于10B编码后,特殊字符的编码结果如下表所示。

对于发送端,10bit数据的帧格式如下图5-5所示。

如图所示,从蓝色标签的104开始到146结束表示一帧数据的编码,同时此时数据的极性为负。接收端,10 bit数据的帧格式如下图所示。

从蓝色标签的 436 开始到 480 结束表示一帧数据的编码,同时此时数据的极性为正。

数据交互测试,PC 端的发送读取指令,发送端通过 LVDS 通讯接口向接收端下发接收数据指令。通过发送端的软逻辑分析仪,当PC上显示的发送端下发接收数据指 令数据时,表明发送端发送接收数据指令成功。当数据线接收到接收端返回的数据包时,表明 LVDS 数据通讯功能测试完成。 数据交互的逻辑控制及寄存器定义为:对应的信号指令为0x0100FF01时,表示读取接收端固化版本号;对应的信号指令为0x08000002作为数据读取。测试结果如下图所示。

如图所示。当接收端接收到的指令为0x08000002时,data_flag 标志位拉高,此时加载的数据为连续的数据,当接收到的指令为0x0100FF01时, flag 标志位拉高,此时加载的数据为代码的固件版本号 20230421。为了验 证 LVDS 数据传输的过程中没有出现数据丢帧和数据误传的错误,对数据稳定的长时间测试,首先,接收端和发送均发送相同的数据 10'b0010010011,将接收到的数据与 10'b0010010011 作对比,当不相等时, err_flag 标志位拉高,否则保持低电平。测试时间为 12 小时,采用 VIVADO 的 trigger 触发模式,当抓取到err_flag发生状态跳转时,立即停止采样,并将标签停止在状态跳变处。测试结果如图所示。

源码:

1、IP核版本:【IP核 】Xilinx FPGA LVDS 高速接口完整解决方案IP,含验证工程与板级测试用例

2、所有源码版本:【LVDS工程源码】LVDS 高速接口完整解决方案,含验证工程与板级测试用例(所有源码均包含)

相关推荐
tju新生代魔迷5 小时前
Verilog HDL 学习笔记(十八)| 附录C:关键字、系统任务和编译指令
fpga开发
free-elcmacom8 小时前
FPGA学习笔记<1>FPGA的开发流程
fpga开发·硬件工程·hdl
明德扬9 小时前
AD9653单通道波形怎么看?幅度、频率与基础测量入门
学习·fpga开发·fpga
ERROR:9910 小时前
GPT Images 2.5将手稿转时序图效果不佳
fpga开发
尤老师FPGA10 小时前
声学相机介绍
fpga开发
科恒盛远17 小时前
ZU902 FMC194 可编程宽带信号源实测
fpga开发·硬件工程·信号处理
大盛供应链·卢生20 小时前
哪些国产芯片可以替代进口芯片,哪些替代不了
fpga开发·容器
ALINX技术博客1 天前
跨越 1819 公里,ALINX 携 AI 异构平台、电子后视镜及 HIL 仿真方案亮相深圳国际电子展
ai·fpga开发·汽车
Enclustra_China1 天前
FMC为何成为FPGA生态的“万能扩展接口”?
fpga开发·fpga解决方案
tju新生代魔迷1 天前
Verilog HDL 学习笔记(十七)| 附录B:PLI子程序清单
fpga开发