问题:
使用Libero时,每个模块单独检查语法结果都是successful,但是综合过程总是报错:Net GND_tri (in view: work.flash(verilog)) has multiple drivers。
原因:
关键词是multiple drivers。同一个变量,在不同的always 或者assign中被赋值,造成冲突。这在Verilog语言中是不被允许的。尤其是在复制一段代码之后,漏掉要修改的变量名,很容易导致这个问题。
解决方法:
检查代码,将重复赋值的变量都修正即可。