ADI 技术
直播中

刘刚

7年用户 976经验值
私信 关注
[问答]

FPGA使用ddio方式送数据给AD9957发现FPGA送数据的延迟较大

        请教ADI论坛中的高手。
        现在在调试一块板卡,板卡结构:FPGAI/OAD995718根数据线相连,AD9957PDCLK输出到FPGA的专用时钟管脚,作为FPGA的数据处理时钟,并使用该时钟锁存数据送给AD9957
AD9957工作在Quadrature Modulation Mode模式。按照数据手册中讲的,我的理解是:此时FPGA需要按照PDCLK频率送数据,只是PDCLK的上升沿和下降沿都需要传输数据,上升沿传输I,下降沿传输Q。不知道我的理解对吗?数据手册里面没有相应的图。
现在,我在FPGAEP2S60F1020I4N)中使用的ALTDDIO_OUT宏模块,ALTDDIO_OUT宏模块使用PDCLK作为时钟。目前PDCLK的频率为100Mhz,数据速率为200Mhz。目前FPGA编译,发现FPGA送数据的延迟较大,满足不了AD9957数据I/O的建立时间(1.75ns)。手册中给出的AD9957数据I/O的建立时间,贴出如下所示:
I/Q INPUT TIMING CHARACTERISTICS      
Maximum PDCLK Frequency              250  MHz
Minimum I/Q Data Setup Time to PDCLK    1.75   ns
Minimum I/Q Data Hold Time to PDCLK     0   ns
Minimum TxEnable Setup Time to PDCLK    1.75   ns
Minimum TxEnable Hold Time to PDCLK     0   ns
PDCLK100Mhz,时钟周期为10ns,上升沿下降沿都传数据,上升沿到下降沿就只有5ns。那么,FPGA管脚中寄存器输出到管脚的延时+外部PCB走线+AD9957输入寄存器的建立时间必须要小于5ns?外部pcb走线+AD9957输入寄存器的建立时间(1.75ns),我现在估算的是2ns,那么留给FPGA管脚中寄存器输出到管脚的延时只有3ns。目前FPGA编译的时候,报这个地方的延时无法小于3ns 现在重放出来单频正弦波,发现底噪经常向上跳动。
另外,由AD9957输出的时钟PDCLK,进入FPGA之后,是不是需要使用PLL或者DLLPDCLK进行锁相,保证由PDCLK锁存后输出的DAC_D[170]能够正确地被AD9957内部的PDCLK采样?

回帖(1)

云静京

2018-10-17 15:38:24
您好!是的,您关于AD9957的描述是正确的。
但是关于FPGA如何实现这个时序,目前还没有这个参考代码。您可以尝试联系FPGA的技术支持。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分