阻塞赋值=
非阻塞赋值<=
具体可参考https://blog.csdn.net/Times_poem/article/details/52032890
基本原则:
1.时序逻辑一定要用非阻塞赋值<=,且敏感列表中有posedge就用<=
2.组合逻辑一定要用阻塞赋值=,敏感列表没有posedge就用=,有assign就用=
3.时序逻辑和组合逻辑必须分成不同的模块,即一个always中只能有=和<=中的一种
部分报错信息(参考 https://www.bilibili.com/read/cv12437719)
[Synth 8-2576] procedural assignment to a non-register Data is not permitted
always 块中出现了wire型,改正即可。
[Synth 8-2442] non-net port Data cannot be of mode input
reg不能作为输入 改为wire型(?)。
[8-2442],一般来说,在设计中,你不清楚输入信号是组合逻辑输出或者是寄存器型输出,所以一般默认为线性-wire,而输出不同,输出则是有自己确定(),这样就可明确到底是输出了reg型还是net()
标签:逻辑,wire,阻塞,时序,verilog,net,赋值 From: https://www.cnblogs.com/yhish/p/17636369.html