Verilog,比较变量的不等位

时间:2011-05-08 14:40:36

标签: binary comparison verilog

我不擅长verilog,我想知道是否有可能比较下面的变量。

reg [7:0] var1;
reg [3:0] var2;

这里我想检查var2是否等于var1的最后4位。我可以这样做,如果是的话怎么样?谢谢你的帮助...

3 个答案:

答案 0 :(得分:3)

像这样:

if (var1[3:0] == var2)
    ...

答案 1 :(得分:3)

请记住,reg类型适用于4状态变量(01xz)。

其中任何一个都适用于可综合的RTL:

if (var1[3:0] == var2[3:0])
if (var1[3:0] == var2)

在测试平台中,最好使用“triple equals”:

if (var1[3:0] === var2[3:0])

答案 2 :(得分:-1)

您可以执行{if ~((var[3:0] ^ var2) | 4b'0000)}

这对编译器来说应该更容易合成。