|
生成流文件时老是报错:
错误信息:
[Drc 23-20] Rule violation (LUTLP-1) Combinatorial Loop - 1 LUT cells form a combinatorial loop. This can create a race condition. Timing analysis may not be accurate. The preferred resolution is to modify the design to remove combinatorial logic loops. To allow bitstream creation for designs with combinatorial logic loops (not recommended), use this command: set_property SEVERITY {Warning} [get_drc_checks LUTLP-1]. NOTE: When using the Vivado Runs infrastructure (e.g. launch_runs Tcl command), add this command to a .tcl file and add that file as a pre-hook for write_bitstream step for the implementation run. led_OBUF_inst_i_1.
ERROR: PhysDesignRules:10— The network <shuju_2<12>>is completely unrouted.
这样的错误共有8332个。报了三十个,还有8292个没报。
1:试了一下,把上升沿或者下降沿敏感的关键词去掉就会出现这个问题,,使用边沿敏感应该需要指出上升沿还是下降沿吧:
2:我遇到过这个问题,原因是因为有些脚管已经在代码中屏蔽掉,但是在约束文件里还存在着对应的约束。
3:这个过程有问题应该是P&R的时候资源不够,因为bitgen开始的时候会做DRC。你可以把错误贴出来看看
4:以前我一直按把没用过的多余约束注释掉的法子去做,也能解决问题
5:可是DRC会报错是因为P&R的结果不满足FPGA的rules,去掉的话可能会导致莫名其妙的问题。
比如routing不够的时候,去掉DRC,虽然是可以生成BIT文件,但是又有什么用处呢,设计哪怕是有一条线没有routing好,那么和他相关的功能就完全不工作。
屏蔽错误是不明智的行为。除非有些明显不影响正常功能或性能的才可以屏蔽。这些都需要仔细再仔细的分析
6:从error报告来看,就是资源不够,有信号没有completly routed。就是表明有信号线没完成布线,8千多条。看来你是要好好优化代码了。
block ram可以用coregen,从里面找到blockram的生成向导,自动生成的。
|
|