我不擅长verilog,我想知道是否有可能比较下面的变量。
reg [7:0] var1;
reg [3:0] var2;
这里我想检查var2是否等于var1的最后4位。我可以这样做,如果是的话怎么样?谢谢你的帮助...
答案 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)}
这对编译器来说应该更容易合成。