([Synth 8-3352] multi-driven net min_1_OBUF[2] with 1st driver pin ‘<端口名/(信号?)>‘ )

   日期:2020-09-12     浏览:459    评论:0    
核心提示:([Synth 8-3352] multi-driven net min_1_OBUF[2] with 1st driver pin ‘<端口名/(信号?)>’ )怎么查找是哪些变量信号或者端口存在多冲驱动

FPGA,VIVADO新手,这也是自己摸索出来的,如果说的不对的地方,欢迎指出,如果是根本性的错误,我将修改删除等等。。。互相交流。
**

怎么查找存在多重驱动的变量、信号或者端口

**
如果有多重驱动的话,一般是进行RTL分析或者综合的时候就会出现多重驱动警告。网上说了这些警告提到的端口不一定就真的是多重驱动出现的端口,但不论如何,肯定是有端口存在多重驱动的,下面是找到这些端口的步骤。
第一步:点击RTL分析【1】。等待出现Netlist后,点击Netlist【2】,挨个查看 ,同时注意Net Properties栏中的Numbers of drivers【3】,这个就表示变量的驱动个数,>=1就表示存在多重驱动。

这是我多重驱动端口中的一个:

可以看见,输出端口min_0[3:0]的确由 RTL_REG 和 RTL_REG_SYNC这两个寄存器在输出值,也就是在驱动,这个设计的确是有问题的。

第二步,回到自己的design 代码,ctrl+F,高亮 ,找到 多重驱动端口所在的所有代码片段。然后就修改自己的代码,争取能够消除多重驱动。其他的修改方法,网上其他有人也说了,如重新设计自己代码的逻辑等等。(下图是我这个程序中另外一个多重驱动的端口cnt4)

第三步,这是我修改后的RTL图,可以看见,多重驱动被消除了。综合也没有了多重驱动警告。


未完可能待续。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服