AD芯片输出数据和时钟到FPGA,本来是同步的,但数据又通过了差分转单端芯片,导致数据和时钟不同步,在FPGA采到的数据出现毛刺,这种情况怎么解决?如何把数据和时钟做到同步,再在FPGA内进行跨时钟域的同步设计!
建议用RAM进行时钟同步了。
一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!
首先确定你的时钟频率是多少,如果是低速,很好解决,使用PLL或LCELL将输入时钟移相,使时钟和数据中心对齐,内部跨时钟域传输可以使用异步FIFO来实现
有个不是很靠谱的方法,就是在FPGA里做在线调试抓这两个不同步的信号,然后做时钟相移。
比较好的方法:
1、就是2楼说的,加RAM做同步;
2、考虑消除差分转单端芯片引起的问题。
输入的数据和时钟的相位关系都不确定,怎么往RAM里写,能保证写进去的数据的正确性吗?靠谱吗
FPGA系统时钟肯定高于数据时钟。所以用系统时钟作为读写RAM时钟,进行数据同步,这是常用的方式。
一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!