Verilog,比较不等位的变量。

问题描述 投票:2回答:3

我想知道是否有一种方法可以比较下面的变量。

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

在这里,我想检查如果 var2 相当于最后4位的 var1. 我可以这样做吗? 如果可以,怎么做?

binary comparison verilog
3个回答
3
投票

像这样。

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

3
投票

请记住 reg 类型为4态变量(01xz)。

其中任何一种都适用于可综合的RTL。

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

在测试台中,最好使用 "三等分"。

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

-1
投票

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

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

© www.soinside.com 2019 - 2024. All rights reserved.