zrk787

[征文]+[转载]AD9910,双路DDS同步设计及FPGA配置SPI接口的VHDL代码分享

zrk787 在 2013-9-17 建立的討論區
最後回覆由feng111於2017-5-17提供

[征文]+[转载]AD9910,双路DDS同步设计及FPGA配置SPI接口的VHDL代码分享

根据实际应用需求,参考CN0121实验室的电路,制定系统实施方案。系统采用FPGA负责接口和通信控制,2ADCLK846负责参考时钟和同步时钟的缓冲和分发,ADP3338负责DDS数字和模拟电源供电。系统构成框图如下所示。

为了保证两片AD9910之间严格同步,应关闭内部PLL电路,直接使用外部参考时钟作为系统时钟;同时在布局布线时,应尽量满足对称性,使时钟分发芯片ADCLK846输出信号到达两片AD9910的走线长度相等。同步时钟SYNC_OUT由第一片AD9910输出,经ADCLK846缓冲后,分成两路分别给两片AD9910。例如外部输入1GHz的信号,DAC转换速率1GspsSYNC_OUT同步时钟为62.5MHzSYNC_CLK时钟为250MHz
通过寄存器位CFR2<5>和同步控制寄存器MultiChipSync0x0A)完成同步操作。当同步完成时,输出单频信号满足严格的相位关系,如图所示。

需要说明的是,也可以通过比较两路SYNC_CLK相位关系判断同步是否完成;另外,也可以通过SYNC_SMP_ERR来判断同步是否出错。
建议大家根据AD9910的评估软件来设置相应寄存器的值,评估软件下载地址:
http://www.analog.com/static/imported-files/eval_boards/AD9910_Setup1.0.1.zip
如果有需要SPI接口的配置代码的可以通过站内信联系我。其他问题可以跟贴留言,谢谢大家的支持!

 

結果