打印
[FPGA]

FPGA如何把内部驱动时钟输出驱动外部芯片

[复制链接]
4988|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
pingis58|  楼主 | 2016-2-23 13:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
其实两个问题:
1.FPGA如何合理的把内部的驱动时钟输出,用于驱动外部芯片,如AD。时钟200M以上。
XILINX 和 ALTERA两家的芯片有差异吗。
2.同时,要把AD的数据读回来。是否要考虑PCB走线延时影响到的时钟同步问题(数据的建立保持时间,或数FPGA读到AD输出数据在期望的一个或数个时钟后)。如果有影响要调整,是用示波器实测还有用别的方法。通常是怎么做的。
希望各位高手给点指导意见。

相关帖子

沙发
3008202060| | 2016-3-16 23:59 | 只看该作者
1. 直接用DCM模块输出一个时钟 再用一个ODDR直接输出到你外部引脚上就行 还有你200M的时钟 应该是查分的吧 你可以用DCM生成两个200M,相位差180度时钟 用两ODDR输出
2.没做过200M的AD 这么快的速度 估计会影响 尽量保证输出等长吧 其他的也不清楚

使用特权

评论回复
板凳
pingis58|  楼主 | 2016-3-17 10:08 | 只看该作者
3008202060 发表于 2016-3-16 23:59
1. 直接用DCM模块输出一个时钟 再用一个ODDR直接输出到你外部引脚上就行 还有你200M的时钟 应该是查分的吧  ...

谢谢,之前看资料好像不需要两个时钟,DDR直接可以根据CLK双沿输出0和1吧

使用特权

评论回复
地板
3008202060| | 2016-3-17 18:26 | 只看该作者
pingis58 发表于 2016-3-17 10:08
谢谢,之前看资料好像不需要两个时钟,DDR直接可以根据CLK双沿输出0和1吧

DDR确实是可以双采样的 你用的是DDR几 我现在用的DDR3反正都是差分时钟

使用特权

评论回复
5
pingis58|  楼主 | 2016-3-18 10:27 | 只看该作者
3008202060 发表于 2016-3-17 18:26
DDR确实是可以双采样的 你用的是DDR几 我现在用的DDR3反正都是差分时钟

我用的是ZYNQ,只是之前考虑输出AD采样时钟,没用过这类的东西有疑问。

使用特权

评论回复
6
pingis58|  楼主 | 2016-3-31 13:43 | 只看该作者
xiamingmin163 发表于 2016-3-29 16:17
1、altera有个专用的原语“clock—***”具体忘记了, 并且硬件上也要接在PLL的专用时钟管脚输出上面才可以 ...

谢谢了,大概了解清楚了,
内部的逻辑分析仪是FPGA内部的吗?有没有介绍这方面的文档

使用特权

评论回复
7
princkin| | 2016-3-31 22:49 | 只看该作者
请问,如何用CPLD控制AD芯片?

使用特权

评论回复
8
xiamingmin163| | 2016-4-6 16:04 | 只看该作者
1、逻辑分析仪是FPGA自带的IP实现的,xilinx 一般是chipscop,altera是signal tap,可百度相关资料,蛮多的;
2、CPLD控制AD,你只要按照AD芯片的接口时序来操作即可,高速的的AD一般不会用CPLD做,CPLD资源太少了,只能做一些简单的与或非而已。
3、建议你认真读DATASHEET

使用特权

评论回复
9
waiter| | 2016-5-28 11:36 | 只看该作者
FPGA、CPLD本身就不适合用来输出200MHz的时钟。
对于需要提供200MHz时钟的系统,应该考虑使用专门的时钟芯片,而不是FPGA,或者CPLD。
仅供参考。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

131

帖子

3

粉丝