LVDS系列38:Xilinx 7系 AD9253 LVDS接口设计仿真(五)

 LVDS数据仿真:

本设计,是基于外部LVDS电路是处于理想情况下进行的,也就是在ADC芯片输出端口和PCB板上,硬件设计者通过等长布线确保了 DCLK的边沿正好对准数据眼的中心(90°相位差)。此时,如果用这个比特时钟直接采样数据,时序最佳,但是这只是FPGA端口处的情况,离FPGA内部逻辑实现还有一段距离;

在进入FPGA后,情况就比较复杂了:

对于数据路径和FCLK帧时钟路径,LVDS数据进入FPGA引脚后,经过IBUFDS,直接连接到ISERDESE2原语的D输入端口,这条路径是专用的比较直接的硬件连线,也就是说,帧时钟和数据通道,到需要FPGA内部采样时,还能保持,相对于FPGA端口处理想时序来说比较好的时序关系;

但是对于时钟路径,比特时钟进入FPGA引脚后,FPGA为了使用该时钟去采样去驱动ISERDESE2,不能直接连接到ISERDESE2的CLK端口,比特时钟需要经过以下路径:先进入时钟专用引脚,经过IBUFGDS或IBUFIO,经过BUFIO或BUFR,最后通过FPGA的全局或区域时钟树,布线到各个CLK或CLKDIV端口,可以看到,时钟路径会和数据路径完全不一致,且时钟路径延时会长的多,且无法去确定其延时,如果直接使用其去采集,采样结果将完全无法预测;

所以本次设计,主要目的,就是使用FPGA端口处,时序良好的比特时钟,去派生出一个FPGA内部使用的采样时钟和分频时钟,然后用IDEAYE2去把内部的采样时钟,和FPGA端口处的采样时钟去对齐,因为端口处采样时钟和数据路径关系比较理想,所以把内部采样时钟和端口处采样时钟,两者对齐后,内部采样时钟也能尽量对齐数据路径的数据眼中心;

本次仿真,是tb中产生标准的ad9253的时序输入,用模块进行处理,tb模拟产生的,模拟FPGA输入端点处理想的输入时序,

Testbench:



仿真结果:

dds产生1M的正弦波,4个通道修改不同的幅度,模拟LVDS时序输入模块进行处理;

输入的lvds时序:

比特时钟对齐数据眼中心,数据边沿和帧时钟边沿对齐,和ad9253的时序一致;

可以看到下图中,是采样出来输出的数据波形,其中分成3个时间段,下面图中红字标准,时间段1,是还没有做对齐操作,时间段2,是对齐过程中,时间段3,是对齐稳定后,

下面看看处理流程中信号时序的变化,这里只看通道0数据,模块中使用BitClk_Dclk采样,单端化后的ad_data_D0_A、ad_data_D1_A,

时间段1:

可以看到,虽然也能采样出正常的正弦波,但是此时的采样点比较危险,十分靠近数据眼边沿,在实际上板过程中,这种采样时刻,采样输出肯定会出错;

时间段2:

这个时间段,时序在变化,采样点在数据眼上移动变化,

时间段3:

可以看到,对齐稳定后,采样时钟边沿对齐到数据眼中心,采样时钟恢复到输入端点处的最佳采样点附近了;

本文章由威三学社出品

对课程感兴趣可以私信联系

相关推荐
LCMICRO-133108477461 小时前
长芯微LPS123完全P2P替代ADP123,高性能、低压差的线性稳压器
单片机·嵌入式硬件·fpga开发·硬件工程·dsp开发·线性稳压器
fei_sun3 小时前
面经、笔试(持续更新中)
fpga开发·面试
xixixi777773 小时前
通信领域的“中国速度”:从5G-A到6G,从地面到星空
人工智能·5g·安全·ai·fpga开发·多模态
Nobody335 小时前
Verilog always语句详解:从组合逻辑到时序逻辑
fpga开发
李嘉图Ricado7 小时前
FPGA 时序约束与分析
fpga开发
白又白、10 小时前
时序优化和上板调试小结
fpga开发
Z22ZHaoGGGG11 小时前
verilog实现采样电流有效值的计算
fpga开发
fei_sun12 小时前
牛客Verilog刷题篇
fpga开发
my_daling15 小时前
DSMC通信协议理解,以及如何在FPGA上实现DSMC从设备(1)
学习·fpga开发
fei_sun1 天前
FPGA&数字前端
fpga开发