ADC12dj3200多片同步调试记录
项目场景
在一块基带板上两片DA发送数据,另一块基带板上两片AD芯片对数据采样接收,芯片间通过同轴线直连。AD端通过物理层算法对数据做相关,通过ILA抓取相关峰判断同步情况。该项目是我从别人手里接过来调试的在此之前接口代码已经写好,基本通信功能可以实现。
问题描述
1. 数据同步不稳定
在保持DA发送的情况下,AD板每次下bit相关峰有一定几率出现相差18、20、22个clk的情况,正常情况下相关峰应该是对齐的。
问题分析:保持DA端发送条件不变,在AD收端反复下bit观察同步情况,有一定几率出现上述不同采样点的延迟差异,判定是AD收端的问题。检查时钟芯片的时钟输出值,发现SYSREF采用1MHz,怀疑是时钟太小导致其建立、保持时间难以满足要求,尝试调大SYSREF时钟。
解决方法:阅读AD芯片手册后,根据当前工作模式选定20M,修改后多次测试再未出现相差18、20、22个clk的情况。
2. 数据同步不稳定,有时相差2clk
在解决上述问题后,虽然没有再出现相关峰相差18、20、22个clk的情况,但相关峰仍有几率会出现相差2个clk的情况。
问题分析: 首先判断是收端的时钟不稳定造成还是AD芯片的问题,给AD接口的配置模块加上手动复位,在下载一次bit后通过不断复位AD发现同步结果会在0clk和2clk之间反复横跳ÿ