检查两个向量中的所有值是否相等
Checking if all values are equal in two vectors
我有两个 std_logic_vectors
RA
和 RB
,我想对它们执行以下算法:
for i = 0 to 15 loop
if RA(i) = RB(i) then RT(i) <= 0xFFFFFFFF;
else RT(i) <= 0x00000000;
end if;
end loop;
基本上,我想将两个向量相互比较(在本例中为逐位比较),看看它们是否相等。如果是,那么我将我的输出向量 RT
设置为全 1,否则,RT
全部为零。
这样做的好方法是什么?我可能可以蛮力执行一些实现,但我宁愿以一种聪明的方式来做。
谢谢,
怎么样
if (RA = RB) then
RT <= (others => '1');
else
RT <= (others => '0');
end if;
假设 RT 也是 std_logic_vector
的子类型。不需要循环,比较运算符定义为std_logic_vector
s(等维)。
我有两个 std_logic_vectors
RA
和 RB
,我想对它们执行以下算法:
for i = 0 to 15 loop
if RA(i) = RB(i) then RT(i) <= 0xFFFFFFFF;
else RT(i) <= 0x00000000;
end if;
end loop;
基本上,我想将两个向量相互比较(在本例中为逐位比较),看看它们是否相等。如果是,那么我将我的输出向量 RT
设置为全 1,否则,RT
全部为零。
这样做的好方法是什么?我可能可以蛮力执行一些实现,但我宁愿以一种聪明的方式来做。
谢谢,
怎么样
if (RA = RB) then
RT <= (others => '1');
else
RT <= (others => '0');
end if;
假设 RT 也是 std_logic_vector
的子类型。不需要循环,比较运算符定义为std_logic_vector
s(等维)。