赛灵思
直播中

李润基

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

有人知道IO时钟边沿和DIVCLK边沿之间应该有多少延迟,以确保我们从Virtex 6 ISERDES中获得明确定义的字

嗨,
有没有人知道IO时钟边沿和DIVCLK边沿之间应该有多少延迟,以确保我们从Virtex 6 ISERDES中获得明确定义的字?
换句话说,如果我在1:4 serdes中计时4位,那么DIVCLK何时应该转换,所以我确定我得到这4位而不是之前的4位。
我无法在此找到建立/保持数据。
我在网络模式下使用DDR和ISERDES。
我正在研究用于天线阵列的800 Msample / s ADC接口,并且通过系统的不同阶段的数据延迟必须是非常可重复和可靠的。
当我使用BUFIO / BUFR生成IOCLK和DIVCLK时,DIVCLK在IOCLK上升沿后0.14 ns到达并且运行良好并通过ISERDES获得一致的延迟。
但是,如果我使用具有适当反馈的PLL生成IOCLK和DIVCLK,则在IOCLK之前DIVCLK是几ps,我随机获得前一个或下一个字。
我可以使用训练模式和bitlip来解决问题,但我担心这可能不可靠。
有任何想法吗?

回帖(6)

张晓宁

2020-6-15 12:22:49
您应该阅读UG361,ISERDESE1时钟方法部分。
在版本1.3中,本节从第131页开始。它包括对CLK和CLKDIV之间的相位关系要求的讨论。
- 鲍勃埃尔金德
签名:新手的自述文件在这里:http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369总结:1。
阅读手册或用户指南。
你读过手册了吗?
你能找到手册吗?2。
搜索论坛(并搜索网页)以寻找类似的主题。
不要在多个论坛上发布相同的问题。
不要在别人的主题上发布新主题或问题,开始新的主题!5。
学生:复制代码与学习设计不同.6“它不起作用”不是一个可以回答的问题。
提供有用的详细信息(请与网页,数据表链接).7。
您的代码中的评论不需要支付额外费用。
我没有支付论坛帖子的费用。
如果我写一篇好文章,那么我一无所获。
举报

李铃华

2020-6-15 12:29:29
鲍勃你好,
感谢你的回答。
是的,我已多次阅读该部分,据我了解,我确实坚持使用这两种支持的配置。
BUFR / BUFIO方法效果很好。
这种MMCM方法看起来效果不佳。
我能找到的唯一信息是“CLK和CLKDIV输入必须在名义上相位对齐。”,这不是非常量化的。
从FPGA编辑器中我看到两个MMCM输出IOCLK和DIVCLK确实在几十ps内完全对齐。
但是如果我将DIVCLK延迟150 ps(通过相移MMCM输出),我会从ISERDES中得到一个不同的字,而且这个字现在是稳定的。
这表明我从MMCM获得的名义时间留下了很小的余量。

我想知道是否有一个规范说为了保证我们从ISERDES读出一个正确的字,IOCLK的上升沿和DIVCLK的上升沿之间的延迟应该是例如> 100 ps和
举报

张晓宁

2020-6-15 12:47:47
如果您在生成和分发CLK和DIVCLK时遵循文档的文字和精神,并且您的结果不一致,那么这值得一个webcase。
你做错了什么,或用户指南不足 - 或两者兼而有之。
如果你打开一个webcase,请在这个帖子中跟进结果。
- 鲍勃埃尔金德
签名:新手的自述文件在这里:http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369总结:1。
阅读手册或用户指南。
你读过手册了吗?
你能找到手册吗?2。
搜索论坛(并搜索网页)以寻找类似的主题。
不要在多个论坛上发布相同的问题。
不要在别人的主题上发布新主题或问题,开始新的主题!5。
学生:复制代码与学习设计不同.6“它不起作用”不是一个可以回答的问题。
提供有用的详细信息(请与网页,数据表链接).7。
您的代码中的评论不需要支付额外费用。
我没有支付论坛帖子的费用。
如果我写一篇好文章,那么我一无所获。
举报

郑成枝

2020-6-15 12:56:56
我正在Virtex 6中构建一个ADC接口。
使用ug361中定义的方法在网络模式下驱动iserdes
[位时钟通过buf io和div clk通过bufr设置为div / 4]
我在地图中收到错误
-----------------------------------------
阶段1.1初始放置分析ERROR:位置:1073 - 由于以下原因,Placer无法为BUFIO类型的组件Inst_ADC6445_interface / BUFIO_inst创建RPM [BUFIO_RPMs]。
出现此问题的原因:与此结构相关的一些逻辑被锁定。
这应该导致其余的逻辑被锁定。
我们发现了一个问题,我们应该将BUFIO Inst_ADC6445_interface / BUFIO_inst置于芯片边缘,以满足该逻辑的相对布局要求。
以下组件是此结构的一部分:BUFIO Inst_ADC6445_interface / BUFIO_inst IOB RX_MEZZ_A_DCLK_PRX_MEZZ_A_DCLK_P并且它的N对应是我的位时钟
DCLK_P / N - > ibufds - > DCLK - > bufio - > BIT_CLK - > iserdes_high_speed_clock 
DCLK - > bufr / 4 - > DIV_CLK - > iserdes_divided_clock
是我目前的设置....
使用mmcm划分我的bitclock工作,但我需要恢复mmcm以在设计中的其他地方使用,这应该是一个简单的交换。
有人能够对我在这里看到的东西有所了解吗?
举报

更多回帖

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