完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
设计工具:ISE 11.4
FPGA:xc5vfx70t-2ff1136 查看Virtex 5 FPGA(ds202)的数据手册,我看到BUFG(包括BUFGCTRL)的FMAX为667 MHz。 当我为600 MHz的BUFGMUX_CTRL的输入时钟指定时间约束时,我得到组件切换限制的失败约束,这似乎告诉我通过BUFGCTRL可以发送的最大频率是400 MHz。 Virtex 5用户指南(UG190(v5.4))似乎表明BUFGMUX_CTRL基于BUFGCTRL,这是有道理的。 该设计使用600 MHz时钟,但定时误差有关。 我有几个想法,但没有办法证明或反驳他们: 1. ISE 11.4可能有一个错误,它报告了BUFGCTRL错误的MINPERIOD限制,失败的约束不是真的吗? 2.由于某些原因,BUFGMUX_CTRL实际上与BUFGCTRL没有相同的FMAX,最大值为400 MHz? 我做错了什么? 我尝试用BUFG替换BUFGMUX_CTRL以查看错误是否消失,它确实(组件切换限制失败约束),但后来我在其他地方得到了一些SETUP错误。 我错过了什么? ISE可能有错误吗? 提前感谢您的意见。 时序报告输出如下: 组件切换限制检查:NET“EM1_Dds1ClkOut_nobuf”PERIOD = 1.66666667 ns HIGH 50%; --------------------------------- ----------------------------------------------- Slack: - 0.834ns(周期 - 最小周期限制)周期:1.666ns最小周期限制:2.500ns(400.000MHz)(Tbcper_I)物理资源:HR_MODULE1_C / TX_CLK_OUT_BUFG / I0逻辑资源:HR_MODULE1_C / TX_CLK_OUT_BUFG / I0定位引脚:BUFGCTRL_X0Y27.I0时钟网络 :HR_MODULE1_C / TxInternalClk ---------------------------------------------- ----------------------------------松弛:-0.834ns(期间 - 最小期限)期间:1.666ns 最小周期限制:2.500ns(400.000MHz)(Tbcper_I)物理资源:HR_MODULE1_C / TX_CLK_OUT_BUFG / I1逻辑资源:HR_MODULE1_C / TX_CLK_OUT_BUFG / I1定位引脚:BUFGCTRL_X0Y27.I1时钟网络:EM1_Dds1ClkOut_nobuf ----------- -------------------------------------------------- -------------------松弛:0.848ns(周期 - (最小脉冲下限/(低脉冲/周期)))周期:1.666ns低脉冲:0.833ns 低脉冲限制:0.409ns(Tcl)物理资源:HR_MODULE1_C / SERDES_C / GEN_TX_DDS_1.TX_DDS_CONTROL / DdsClkVect / CLK逻辑资源:HR_MODULE1_C / SERDES_C / GEN_TX_DDS_1.TX_DDS_CONTROL / DdsClkVect_1 / CK定位引脚:SLICE_X33Y105.CLK时钟网络:EM1_Dds1ClkOut_nobuf |
|
相关推荐
5个回答
|
|
嗨,
数据表值非常完美,违规也是如此。 请参阅DS202表71。 我希望你从你提到的快照中使用-1速度等级。 对于FX70T,BUFGCTRL被称为0.25ns,它只是400MHz,但BUFG FMAX直接指定为600MHz。 由于过度约束,预计脉冲宽度超过1.666ns。 脉冲宽度违规表明不满足硅水平要求。 正如你自己所说,在使用BUFG脉冲宽度违规解决后更换,这也是预期的,因为它具有不同的原始级别要求。 关于你的观点:该设计适用于600 MHz时钟,但定时误差很重要。 & I我尝试用BUFG替换BUFGMUX_CTRL以查看错误是否消失,并且确实(组件切换限制失败约束),但在其他地方我得到了许多SETUP错误。 没有BUG也没有违规行为,他们在他们的地方是正确的。 设置违规是存在的,因为那些数据路径(或者可能只是累积的原始级别延迟)它自己超过了1.6ns的周期要求,即你的时钟周期的1个时钟周期。 如果它仅超过累积的原始级别延迟,那么就不可能通过工具来满足,并且需要进行RTL修改。 如果是数据路径延迟(即原始延迟+路由),那么您可以为它做一些事情。 谢谢,佳日 在原帖中查看解决方案 |
|
|
|
嗨,
数据表值非常完美,违规也是如此。 请参阅DS202表71。 我希望你从你提到的快照中使用-1速度等级。 对于FX70T,BUFGCTRL被称为0.25ns,它只是400MHz,但BUFG FMAX直接指定为600MHz。 由于过度约束,预计脉冲宽度超过1.666ns。 脉冲宽度违规表明不满足硅水平要求。 正如你自己所说,在使用BUFG脉冲宽度违规解决后更换,这也是预期的,因为它具有不同的原始级别要求。 关于你的观点:该设计适用于600 MHz时钟,但定时误差很重要。 & I我尝试用BUFG替换BUFGMUX_CTRL以查看错误是否消失,并且确实(组件切换限制失败约束),但在其他地方我得到了许多SETUP错误。 没有BUG也没有违规行为,他们在他们的地方是正确的。 设置违规是存在的,因为那些数据路径(或者可能只是累积的原始级别延迟)它自己超过了1.6ns的周期要求,即你的时钟周期的1个时钟周期。 如果它仅超过累积的原始级别延迟,那么就不可能通过工具来满足,并且需要进行RTL修改。 如果是数据路径延迟(即原始延迟+路由),那么您可以为它做一些事情。 谢谢,佳日 |
|
|
|
谢谢Yash!
所以我误解了DS202表71,假设BUFGCTRL应该具有与BUFG相同的FMAX。 在用BUFG替换BUFGCTRL时,您的反应是有道理的。 我想我之前看到的是你所指的并且错过了。 -1的0.25 ns是BUFGCTRL从输入到输出的延迟。 这基本上是400 MHz限制的来源。 然而,我正在使用-2速度等级部件,并且具有ISE项目导航器中指定的速度等级。 这应该给我一个0.22 ns的延迟,这将略高于400 MHz,但对于我的600 MHz时钟仍然不够。 不知道为什么工具说明400 MHz是极限,但我认为这对我来说不重要。 切换到BUFG可能是我需要解决的问题,而不是使用BUFGCTRL。 我将研究如何纠正采用这种方法时出现的时序问题。 |
|
|
|
很高兴知道,提供的信息很有帮助。如果你得到了你想要的东西,请通过将接受标记为解决方案来关闭线程。关于设置的时间违规,如果你需要任何帮助,请分享报告以便我可以分析路径
并为您提供进一步的建议。 最好在Timing forum中为它创建新的线程。谢谢,Yash |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
2424 浏览 7 评论
2826 浏览 4 评论
Spartan 3-AN时钟和VHDL让ISE合成时出现错误该怎么办?
2294 浏览 9 评论
3375 浏览 0 评论
如何在RTL或xilinx spartan fpga的约束文件中插入1.56ns延迟缓冲区?
2465 浏览 15 评论
有输入,但是LVDS_25的FPGA内部接收不到数据,为什么?
1242浏览 1评论
请问vc707的电源线是如何连接的,我这边可能出现了缺失元件的情况导致无法供电
590浏览 1评论
求一块XILINX开发板KC705,VC707,KC105和KCU1500
453浏览 1评论
2008浏览 0评论
732浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 17:57 , Processed in 1.438334 second(s), Total 86, Slave 70 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号