一、遇见的问题
这两天遇见了一个怪事,Vivado跑综合的时候 错,但是没有提示错误点在哪里。
软件版本:Vivado2020.2
去查看综合运行日志,提示如下:
二、调试过程:
折腾的两个晚上,主要是查找问题点,总结如下。
首先我通过一个个禁用工程中的文件的形式,一遍一遍的跑了综合,发现是我的I2C 驱动程序部分导致的(禁用了I2C驱动程序,可以跑过综合)。
然后我将I2C驱动程序中所有的宏定义开关,Debug原语全部都注释掉,再将I2C驱动程序加入工程,发现此时也可以跑过综合,并且跑完程序后时序冗余还有17ns多,显然不是资源时序问题;
接下来依次将Debug原语还原,逐次跑综合,发现是这个信 导致的。
找到相关的代码如下:
sda是一个inout信
推测由于sda_out直接连接到引脚,不能使用ILA抓数据;修改如下:
此时再使用ILA抓sda_out数据,已经能够跑过综合了!!!!!
三、问题总结
总体来说,这个综合 错是由于使用ILA抓直连 inout 引脚信 导致的,修改代码可以解决。
至于综合 错,但是不提示错误原因,并且日志显示Stack:no stack trace available, please use hs_err_
分享一下,希望别人在遇见这个问题的时候有个思路。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!