本篇主要讨论vivado启动modelsim进行仿真时,一直卡在进度条············
利用vivado进行设计xilinx FPGA时,写完设计代码和仿真代码后,点击run simulation(启动modelsim进行仿真)。
正常情况为:modelsim软件直接跳出窗口,开发者进行调试工作。
但是有时就会一直卡在一个进度条,等待很久也启动不开。
一直晃来晃去··············
出现这种情况的原因:
1. 项目过于复杂(特别是中间有很多复杂的ip核),确实需要长时间的运行。
2. 代码中有错误(大多数为语法错误)。
如何区分是哪一种情况呢?
点击后台运行(background)
打开Tcl Console
可以将这个窗口拉大。
观看是否还在打印信息。如果正在一条一条信息打印,那么就是项目过于复杂需要耐心等待。如果一动不动,那么就是第二种情况。
有些小伙伴发现,vivado是可以自行进行语法检查的(不需要综合),所以认为没有提示就是没有语法错误。
这个想法是不正确的(vivado没有那么智能)。
注:笔者版本vivado 2019.2,高级版本不知道是否能高级点。
可是错在什么地方呢?
可以将tcl console中的信息向上翻,一定要认真看,应该会发现几个黑色的error(这个就特别恶心,为啥不能弄成红色的)。
可以看到他也是有提示,可能打开对应的位置,修改错误。
在上述代码中,y的类型不对(这个错误,vivado检测不出来)。
我们修改完,进行保存。
此时需要取消进度条(点击右下角的cancel)。
然后重新点击run simulation。
此时modelsim就会很快跳出窗口来。
为了能够比较快速的发现问题,建议:
启动仿真后,直接把进度条进行后台运行,然后盯着tcl console 窗口,一旦发现错误,立刻进行纠正。
如果您觉得本公众号还不错的话,可以推给身边的朋友们,感谢并祝好!