明德扬论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫一扫,快捷登录!

查看: 157590|回复: 0

JESD204B调试笔记(实用版)

[复制链接]

78

主题

106

帖子

5181

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5181
发表于 2019-11-9 14:09:54 | 显示全部楼层 |阅读模式

马上注册,看完整文章,学更多FPGA知识。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
JESD204B调试笔记(实用版)
作者:晨风

    本文为明德扬原创文章,转载请注明出处!
     进行工程的功能调试时,对AD9144,AD9516进行参数配置是非常重要且必不可少的,这过程中遇到了以下问题。
一、问题1

     在我们使用上位机软件进行配置时发现上位机的log记录中有写入参数而无读出参数,这个问题有两种可能性,一是参数没有写入进去所以读出来的参数都是0,二是写进去了但是在读参数时出错了。


如图所示:
图片1.png




      对此我们怀疑是否是网路通信有问题,检查发现PC与FPGA连接的网口千兆网指灯
       没有亮百兆网却亮了。


图片2.png




      检查网络配置发现网络的连接速度只有百兆网选项,无法使用千兆网传输,也就是电脑不支持千兆网络。
图片3.png

file:///C:\Users\27657\AppData\Local\Temp\ksohtml5264\wps3.png

      解决方法有两种,一是重新更换电脑主机,二是重新更改程序将其设置为百兆网传输。

此次我们选择方法一,更换PC主机后重新测试发现AD9144,AD9516配置可以正常读写,

故此次问题原因是PC与FPGA网络接口不匹配所致。


二、问题2

在进行AD9144,AD9516寄存器配置后,下载bit流文件到FPGA后,用示波器观察AD9144输出信号,发现无波形输出,用Vivado抓取信号观察,发现sync和tx_tready信号始终为低没有拉高,也就是说明AD9144与jesd204b没有同步上。

同步不上的原因有多种,大致可分为硬件问题、时钟关系问题、寄存器配置问题,先暂将硬件问题排除。

对时钟关系进行分析,发现时钟理论数值计算结果没有错误,详细的分析步骤请自行查看《时钟关系说明》。

依据时钟关系理论值检查JESD204B的IP核设置,未发现错误。


       用示波器检查FPGA输送给AD9516的分频时钟发现无法侦测到,检查原理图后定位到对应的引脚,发现FPGA输送过来的时钟过大超频了,使得示波器也无法侦测到信号,通过查找AD9516的操作手顺发现其用来分频的源时钟最大值为250MHZ,后将AD9516源时钟设置为250MHZ,用示波器也能正常测试到。

250MHZ时钟源:
图片4.png

       对程序内的时钟进行分析发现数据产生模块的使用的时钟为62.5MHZ,而用来驱动JESD204B模块的时钟为device_clock=125MHZ,因为数据产生和数据传递是同步,所以时钟不匹配,将62.5MHZ改为125MHZ。

对照JESD204B的IP核手顺提供的寄存器配置数据,未发现有错误。

JESD204B的IP核参数:

图片5.png

file:///C:\Users\27657\AppData\Local\Temp\ksohtml5264\wps5.jpg

    查看AD9144寄存器配置手册,找到AD9144同步信号指示0X470,0X471,0X472,0X473

     其分别代表代码组同步信号既同步K码,帧同步信号校验核检查标志,初始通道同步信号。

     然后再次通过上位机配置观察配置过程发现其他寄存器值都可以正常读写,而这4个寄存器读出值为0,也就是说明硬件无问题,极有可能是寄存器配置方面出错了。

同步指示寄存器:

图片6.png

file:///C:\Users\27657\AppData\Local\Temp\ksohtml5264\wps6.jpg

        查阅AD9144,AD9516手册发现AD9516的寄存器0X232的写入值应该为1,但是AD9516的配置软件给出的参考值为0,因而更改寄存器值后能够成功配置。

寄存器配置:

图片7.png
file:///C:\Users\27657\AppData\Local\Temp\ksohtml5264\wps7.jpg
成功配置后如下图所示:
图片8.png

file:///C:\Users\27657\AppData\Local\Temp\ksohtml5264\wps8.jpg

三、问题3

   解决配置问题后,进行测试用vivado的观测sync,tx_tready信号发现信号已经拉高,并且tx_data有数值,说明AD9144与JESD204B已经完成同步了。

同步完成后的信号:
图片9.png

file:///C:\Users\27657\AppData\Local\Temp\ksohtml5264\wps9.png
      但是在用示波器观察AD9144的模拟波形时发现波形与预期的有偏差,查阅AD9144和JESD204B的手顺并结合vivado的vio功能来在线调试数据,发现其数模转换的方式是以16进制的补码相对应,后重新调整数据后,输出波形与预期一致,完成调试。

异常波形(125MHZ):
图片10.png
file:///C:\Users\27657\AppData\Local\Temp\ksohtml5264\wps10.png

正常波形(31.25MHZ):
图片11.png
file:///C:\Users\27657\AppData\Local\Temp\ksohtml5264\wps11.png

以上就是调试过程中遇到的问题,这里总结出来与大家分享,欢迎在评论中互相讨论。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|MDYBBS ( 粤ICP备16061416号 )

GMT+8, 2024-11-23 00:37 , Processed in 0.051664 second(s), 22 queries .

Powered by Discuz! X3.4

本论坛由广州健飞通信有限公司所有

© 2001-2019 Comsenz Inc.

快速回复 返回顶部 返回列表