Vivado 报错:[Place 30-574] Poor placement for routing between an IO pin and BUFG.

一、报错内容

[Place 30-574] Poor placement for routing between an IO pin and BUFG. 
If this sub optimal condition is acceptable for this design, 
you may use the CLOCK_DEDICATED_ROUTE constraint in the .xdc file to demote 
this message to a WARNING. However, the use of this override is highly discouraged. 
These examples can be used directly in the .xdc file to override this clock rule.
	< set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets clk_out_IBUF] >

	clk_out_IBUF_inst (IBUF.O) is locked to IOB_X0Y185
	 and clk_out_IBUF_BUFG_inst (BUFG.I) is provisionally placed by clockplacer on BUFGCTRL_X0Y5

二、报错原因

简单来说,是因为代码里使用到了时钟信号clk_out,但是该信号不是来自FPGA板子上的晶振,而是来自外部输入。这种情况下在绑定引脚的时候,如果把时钟绑定到普通IO上就会报如上错误,此时就需要做特殊处理。


三、解决办法

1、将时钟信号clk_out绑定到支持时钟的引脚上。

我使用的是genesys2开发板,时钟信号clk_out由上一级电路从genesys2FMC接口输入,一开始我绑定的是普通IO,后来改成绑定到FMC_CLK2_P引脚上就不报错了。因此,只要绑定到带CLK字眼的引脚上就可以了!!!
在这里插入图片描述
2、将“时钟专用路由”添加到XDC中

如果I/O位置无法更改,并且本地资源上的次优路由是可接受的,则可以使用.xdc文件中的CLOCK_DEDICATED_ROUTE约束将此消息降级为警告。但是,强烈建议不要使用此覆盖。

具体操作是在XDC文件中添加一句:set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets clk_out]

  • 27
    点赞
  • 113
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

耐心的小黑

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值