Vivado 错误代码 [Place 30-574]解决思路

这篇具有很好参考价值的文章主要介绍了Vivado 错误代码 [Place 30-574]解决思路。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

[place 30-574] poor placement for routing between an io pin and bufg. if thi,XILINX FPGA 开发经验专栏,嵌入式硬件,FPGA,XILINX


问题描述

最近利用手头的开发板作UDP通信的设计。准备生成比特流时,出现这个错误:

[place 30-574] poor placement for routing between an io pin and bufg. if thi,XILINX FPGA 开发经验专栏,嵌入式硬件,FPGA,XILINX

 具体信息:

[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 I_PHY_RX_CLK_IBUF] >

    I_PHY_RX_CLK_IBUF_inst (IBUF.O) is locked to IOB_X0Y42
     and I_PHY_RX_CLK_IBUF_BUFG_inst (BUFG.I) is provisionally placed by clockplacer on BUFGCTRL_X0Y1
 

翻译:

IO引脚和BUFG之间的布线放置不当。如果此次优化条件可用于此设计,则可以使用.xdc文件中的CLOCK_DEDICATED_ROUTE约束将此消息降级为警告。但是,强烈不鼓励使用此覆盖。这些示例可以直接在.xdc文件中使用,以覆盖此时钟规则。
<set_property CLOCK_DEDICATED_ROUTE FALSE[get_nets I_PHY_RX_CLK_IBUF]>
I_PHY_RX_CLK_IBUF_inst(IBUF.O)锁定到IOB_X0Y42,I_PHY_RX_CLK_IBUF_BUFG_inst(BUFG.I)由BUFGTRL_X0Y1上的时钟放置器临时放置

电路原理图

此时钟由外部的网络PHY芯片输入,且未经过专门的时钟IO口,走的是普通IO引脚,普通IO引脚附近没有时钟资源,比如全局缓冲器 BUFG等,所以在布局时就出现问题。

[place 30-574] poor placement for routing between an io pin and bufg. if thi,XILINX FPGA 开发经验专栏,嵌入式硬件,FPGA,XILINX

解决

按照错误中给出的方法,可以在XDC里面对该时钟信号增加如下约束,将此错误降低为警告。

set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets I_PHY_RX_CLK]

可以正常生成比特流了: 

[place 30-574] poor placement for routing between an io pin and bufg. if thi,XILINX FPGA 开发经验专栏,嵌入式硬件,FPGA,XILINX

 查看警告信息,此处的错误已经变成警告了:

[place 30-574] poor placement for routing between an io pin and bufg. if thi,XILINX FPGA 开发经验专栏,嵌入式硬件,FPGA,XILINX


 文章来源地址https://www.toymoban.com/news/detail-781395.html

到了这里,关于Vivado 错误代码 [Place 30-574]解决思路的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Vivado2020.1 ERROR: [Place 30-681] Sub-optimal placement for a global clock-capable IO pin and MMCM

    目录 错误log: 报错路径分析: 该类型问题解决方法: 如何加物理约束? 最近跑工程,跑一个小时后place阶段报错,完整的错误截图: 翻译一下报错log: 全局时钟IO管脚和MMCM之间非最优布局。为了解决这错误,可在IO和MMCM之间插入BUFG。 IO锁定在IOB_X1Y132 (在SLR 0区域) MMCM被

    2024年02月05日
    浏览(128)
  • [Place 30-575] | [Place 30-675] Sub-optimal placement for a clock-capable IO pin and MMCM pair

    报错信息,两种 [放置30-575]具有时钟功能的IO引脚和MMCM对的次优放置。如果此设计可接受此次优条件,则可以使用.xdc文件中的CLOCK_DEDICATED_ROUTE约束将此消息降级为“警告”。但是,强烈不鼓励使用此覆盖。可以在.xdc文件中直接使用这些示例来覆盖此时钟规则。 [Place 30-675]具

    2024年02月04日
    浏览(36)
  • Vivado 错误代码 [Labtools 27-2251] 解决思路

    最近调试遇到的,浅浅记录一下这个问题叭~~~ 最近工程定版,FPGA程序需要固化到外部FLASH内。固化的过程很简单: 关于 XILINX FPGA(非ZYNQ系列)的程序固化 记录 https://blog.csdn.net/qq_43045275/article/details/126538221 但是就是在bin文件的烧录过程中出现问题,一个严重警告: [Labtools 27-

    2024年02月02日
    浏览(40)
  • python系列tkinter之pack布局、place布局和grid布局

    tkinter以提供3种界面组件布局管理的方法,分别是:pack,grid,place接下来我们来介绍pack、place和grid。 我们介绍place布局,就做一个简易的账号,密码登录的界面。 首先我们要知道place和其他两种布局方式相比,更加\\\"自由\\\"但是需要做的事情也多。布局一般就是设置子控件相对

    2024年02月10日
    浏览(60)
  • 大数据开发之Hive案例篇9-Not yet supported place for UDAF ‘count‘

    一个很简单的group by和count(*) 操作,然后居然报错了 大概是在Oracle MySQL上写SQL写习惯了,以为可以这么写。 出了问题也是不知道从何排查 后面把order by子句注释掉之后,居然就可以了,那么就是order by 后面不能跟聚合函数了 于是使用了聚合函数的别名,问题搞定 修改为如下

    2024年02月06日
    浏览(50)
  • 测试新开源的激光SLAM回环检测算法“STD A Stable Triangle Descriptor for 3D place recognition”

    测试新开源的激光SLAM回环检测算法“STD: A Stable Triangle Descriptor for 3D place recognition” 最近林博新开源了一个回环检测算法,我将其集成到自己常用的建图定位框架中检测效果。 原算法开源地址:“GitHub - hku-mars/STD: A 3D point cloud descriptor for place recognition” 自己测试的代码地址

    2024年02月01日
    浏览(43)
  • k8s 1.27新特性in-place使用方法:避坑指南(官方文档有坑,已提issue)

    按照官方文档试用新版的in-place特性时,一字不差地执行了,但是却出现了执行失败的情况: 执行 kubectl -n qos-example patch pod qos-demo-5 --patch \\\'{\\\"spec\\\":{\\\"containers\\\":[{\\\"name\\\":\\\"qos-demo-ctr-5\\\", \\\"resources\\\":{\\\"requests\\\":{\\\"cpu\\\":\\\"800m\\\"}, \\\"limits\\\":{\\\"cpu\\\":\\\"800m\\\"}}}]}}\\\' 后该pod一直处于 RunContainerError 状态; 使用 kub

    2024年02月08日
    浏览(45)
  • 多线程C++代码出现段错误的集中情况和解决思路

    示例代码 解释 在上面的代码中,多个线程同时运行 incrementCounter 函数,该函数增加一个全局变量 globalCounter 。由于对 globalCounter 的访问和修改没有进行适当的同步,这可能导致数据竞争和未定义行为,有时甚至会导致程序崩溃(段错误)。 段错误在这种情况下可能不总是发

    2024年01月25日
    浏览(42)
  • matlab函数 状态空间系统ss、能控性矩阵ctrb、矩阵的秩rank、能控标准型canon、零极点配置place、系统极点pole等函数(线性定常系统)

    如果已知线性定常系统的ABCD四个矩阵,可以得到状态空间系统 其他更具体的用法请直接看帮助文档。 用法:ss(A,B,C,D) 假如 可以输入 最后得到 判断系统是否能控,可以用能控性矩阵是否奇异进行判断。ctrb函数用来生成能控性矩阵,rank用来判断矩阵的秩 对于线性定常系统

    2024年02月10日
    浏览(59)
  • 软件打不开,错误代码0xc000007b的解决办法和完美成功思路

    女朋友电脑碰见了一个电脑常见问题:软件打不开报错0x000007B错误代码,我经历了四个小时才修复,接下来记录一下我的大概修复思路。   前提条件软件没有任何问题,也重装试过了,还是会报错。 解决办法: 1用扫描系统的办法在管理员终端里面修复(对我没有用) 2根据

    2024年02月11日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包