在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5497|回复: 1

[求助] vivado 生成bit,ila加载不出来

[复制链接]
发表于 2023-12-13 10:23:32 | 显示全部楼层 |阅读模式
200资产
芯片:XC7K325T

软件版本:vivado 2018.3
问题描述:工程生成的bit,在线加载到芯片中会概率性的出现ila/vio起不来的情况(如下图)
5dd2b101c3616d96acfc72056e2c85a.png
烧录过程中会出现过很多警告/错误类型:
错误1:“invalid map<K, T> key”
错误2:WARNING: [Labtools 27-3413] Dropping logic core with cellname:'doa_distill/ila_doa_distill' at location 'uuid_1F690DD945965BB99289F14C2D64EC19' from probes file, since it cannot be found on the programmed device.
错误3:WARNING: [Labtools 27-1974] Mismatch between the design programmed into the device xc7k325t_0 and the probes file(s) C:/710/12_13/40M_RST_4/map/hnr_rru_top/hnr_rru_top.runs/impl_2/hnr_rru_top.ltx.
The device design has 10 ILA core(s) and 7 VIO core(s). 7 ILA core(s) and 7 VIO core(s) are matched in the probes file(s).
Resolution:
1. Reprogram device with the correct programming file and associated probes file(s) OR
2. Goto device properties and associate the correct probes file(s) with the programming file already programmed in the device.

但是下一次稍微改动一下代码,比如增删一些小模块或者ila,vio(不是某个特殊的ila/vio导致的这个问题),让整个工程重新综合实现一次,下一次生成的bit概率性会正常工作,非常影响调试进度。这里想求助一下各位大佬,我该注意哪些地方,怎么去系统的排查一下这个问题。

补充说明:1. ila/vio的时钟用的都是板上晶振经过clk_wizard ip后输出的时钟,基本上接的都是150M的主时钟,有些用的是50M的时钟
                2. 整体资源使用情况如下:
87ddbbbaac3479ce2ef7ec76a2696d9.png

4962f1ba9d138516eab3837f98942fb.png
 楼主| 发表于 2023-12-14 10:46:44 | 显示全部楼层
更新一下昨天的调试情况:
1.针对这个问题“WARNING: [Labtools 27-3413] Dropping logic core with cellname:'doa_distill/ila_doa_distill' at location 'uuid_1F690DD945965BB99289F14C2D64EC19' from probes file, since it cannot be found on the programmed device.”我核对了一下ltx文件的uuid和bit'文件的uuid(点击name下面的ila/vio可以查看,如下图所示) 8c8b70168ec737b4fa68b1c5cf441e2.png (该界面下的ila/vio和ltx文件中的声明是顺序对应的)
发现大部分ila/vio的uuid都对的上,只有报错的两个对不上,尝试过修改ltx文件中的uuid,有一个修改之后就对上了,但是另一个修改之后还是对不上,原因是上图红箭头中的uuid每次烧录都变化了,为什么变化原因不明(突然想到每次修改完ltx都是重新烧录的,下次可以不重烧,只修改ltx文件,看看能否正常加载ila/vio)
2.网上说关注dbg_hug的时钟,实现后在网表上确认了dbg_hug的时钟是系统主时钟(150M),也比仿真器的时钟快两倍以上,约束也有。
3.新增的两个大的ila/vio导致了很多时序违例,加了set_false_path,让vivado不去分析那两个ila/vio的时序,降了5500的TNS/WNS,然后产生的bit和ltx就可以正常加载了。那可能是时序违例多导致ila无法加载,也需要后面再进行多次验证确认。不过也可能是这运气好就能用了。
    虽然暂时性解决了,但是各位大佬有建议看法也可以说一下,非常感谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-18 19:49 , Processed in 0.015224 second(s), 6 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表