有线和三网,魔杖和三连体之间的区别是什么?

时间:2017-08-06 09:14:17

标签: verilog

我正在学习Verilog。我不明白电线和电线之间的区别三网类型,魔杖和三网类型。我们究竟需要将网络指定为魔杖和三角形?

1 个答案:

答案 0 :(得分:2)

wiretri之间没有区别。他们是同义词。通常,惯例是在常规声明中使用wire,在声明多个驱动的网络tri端口时使用inoutwand / triandwor / trior也是如此。但是tri的变体更多,如tri1tri0。还有一个三态寄存器类型:trireg

出于实际目的,只有wiretri是可综合的,其余的则不是。

常规wire / tri类型及其和/或版本之间的差异在于结果值分辨率,其中网络由多个驱动程序驱动。对于简单wire,当它由具有不同值的多个信号驱动时,结果将为 X 。否则它将具有所有驱动程序的值。 and版本将在它们之间执行& or将执行 |

以下是由2个驱动程序驱动的三种网络类型的真值表:

线/三

  0 1 x z
0 0 x x 0
1 x 1 x 1
x x x x x
z 0 1 x z

棒/三 -

  0 1 x z
0 0 0 0 0
1 0 1 x 1
x 0 x x x
z 0 1 x z

窝/三 - 或

  0 1 x z
0 0 1 x 0
1 1 1 1 1
x x 1 x x
z 0 1 x z