1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
嗨,
我正在尝试将Camera Link接收器编码为Virtex 6(XC6VLX130T-1FFG784)。 游戏计划是输入60 MHz像素时钟,在MMCM中乘以7,然后使用420 MHz的CLK和60 MHz的CLKDIV在输入时钟和4条数据线上以SDR模式为ISERDES模块提供时钟。 具有固定延迟的IODELAY将使时钟在数据上居中。 连接到时钟的ISERDES模块允许我进行BITSLIP,直到时钟和数据位都在正确的位置。 这在数据线上实现很好,问题是时钟线。 我试过的初始连接是: 差分焊盘 - > IBUFGDS - > MMCM.CLKIN1 同时,IBUFGDS输出也是 - > IODELAY.IDATAIN - > ISERDES.DDLY ISE报告说这是不可行的。 根据FPGA编辑器向我展示的内容,我的下一次尝试是将时钟路由到未延迟的ISERDES路径并连接到MMCM: 差分焊盘 - > IBUFGDS - > ISERDES.D - > ISERDES.O - > MMCM.CLKIN 同时,IBUFGDS输出也是 - > IODELAY.IDATAIN - > ISERDES.DDLY 这路线很好。 我在ISERDES上设置了IOBDELAY =“IFD”。 UG361中的表3-4表明这意味着ISERDES的未延迟D输入被发送到组合O输出(并且在我的设计中被发送到MMCM),而延迟的DDLY输入应该用于Q输出。 不幸的是,时序报告显示在ISERDES中使用了未延迟的D输入,因此所有时钟线都有保持时间违规,而所有数据线都没问题。 有没有其他人使用类似的拓扑? XAPP1064展示了如何为Spartan 6实现这一功能,但我没有看到任何为Virtex 6采样这样的抽取时钟的示例。 谢谢, -Greg |
|
相关推荐
9个回答
|
|
我不知道Virtex-6,但我已经成功地在Virtex-5 LX& A上实现了40 MHz CameraLink基站接收器。
SX(在ML 505和ML506板上)使用ISERDES和编码的FSM来控制BITSLIP操作。 我想我可以把它扩展到中等或完整的配置,可能甚至更高的clcok率。 我使用了针对Virtex-4编写的XAPP707(测试案例1,图3-5)和UG070的第8章作为指导,以了解如何在Virtex-5上执行此操作。 在最终实现时,我发现使用ML 505/506板上的上/下按钮的可变延迟不太实用(因为我试图解决由数据和时钟线之间的偏斜引起的帧抖动问题),而是使用 仅根据相机的实验修复了数据线上的IOB延迟。 最终结果非常出色(坚如磐石的帧输出,即没有帧抖动)。 FSM很小,因此整个C / L接收器几乎不占用任何空间,因为Virtex-5的I / O环中的设计几乎完全独立。 我使用了两个PLL:一个为XCLK生成7X时钟,另一个PLL从板载100 MHz振荡器提供,为IOB延迟提供时钟。 希望这可以帮助。 埃德温格里戈里安 |
|
|
|
|
|
|
|
是。
我有4对(Master& Slave)ISERDES块用于数据线,1对ISERDES用于XCLK。 我使用XCLK ISERDES的7 Q输出作为FSM的输入。 -Edwin |
|
|
|
仔细检查我发布的示例代码后,时序分析实际上是在时钟路径上报告两次,一组从CLK_P到ISERDES.DDLY,一组从CLK_P到ISERDES.D,只有ISERDES.D路径失败。
从这里我可以推断出在DER和DDLY输入的ISERDES中有单独的触发器,并且时序分析正在检查它们两者,即使我告诉它只使用DDLY输入进行反序列化? 也许添加一个覆盖ISERDES.D输入的TIG就足够了? 编辑: 不 - 试图忽略D路径(PIN“ISERDESE1_CLK_MASTER.D”TIG)也会高兴地禁用检查MMCM路径上的时序,这会禁用我感兴趣的所有约束。 另一个编辑: 我一直在玩其他可能的解决方案,例如禁用延迟和使用MMCM相位调整以数据眼为中心。 每当我将时钟线连接到MMCM和ISERDES时,时序余量都会受到严重影响。 因此,我可以获得良好的时序余量,无法正确地进行bitlip,或者时序余量不足以及正确的帧数据。 叹。 |
|
|
|
我遇到了类似的任务。
我们遇到问题,要使数据保持一致。 是否可以使用IODELAY来弥补这一点? 你也在设计中吗? 目前,我只专注于到达80MHz时钟的时钟边沿,并生成640 MHz的边缘对齐serdes时钟。 |
|
|
|
由于必须乘以时钟的频率,因此基本上只有一个架构可能。
IBUFGDS.O - > MMCM.CLKIN MMCM.CLKFBOUT - > BUFx.I - > BUFx.O - > MMCM.CLKFBIN MMCM.CLK0 - > BUFx.I - > BUFx.O - > ISERDES.CLK MMCM.CLK1 - > BUFx.I - > BUFx.O - > ISERDES.CLKDIV 三个缓冲区(BUFx)都必须是相同的类型,但它们可以是BUFG或BUFH。 BUFH将为您提供稍微好一点的性能,但需要将所有逻辑限制在一个时钟区域。 CLK0输出应为640MHz(或320MHz,并在DDR模式下使用ISERDES)。 CLK1输出应为80MHz。 但是,在640MHz时,单位间隔(比特周期)为1.56ns。 这可能太小而无法静态捕获,您可能不得不使用动态相位调整来查找数据眼图(使用MMCM的“插值精细相移”功能)来查找数据眼图,甚至可能使用IDELAYs 数据输入用于校正各个数据位中的任何偏差。 Avrum |
|
|
|
|
|
|
|
|
|
|
|
非常感谢
|
|
|
|
只有小组成员才能发言,加入小组>>
2420 浏览 7 评论
2823 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2294 浏览 9 评论
3374 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2461 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
1159浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
584浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
450浏览 1评论
2005浏览 0评论
729浏览 0评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 06:30 , Processed in 1.400717 second(s), Total 93, Slave 77 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号