VHDL合成后减少多路复用器数量

时间:2016-10-26 06:34:10

标签: vhdl synthesis

我正在用VHDL编写设计,经过综合后我发现使用的多路复用器(专用)数量很多。我的代码有很多if-else staments,所以看起来合乎逻辑。

但我想知道是否有可能以另一种方式实现if-else(或类似的staments)以减少所使用的多路复用器资源的数量。

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以尝试使用简单的逻辑元素,例如andor。例如:

if (a and b) = '1' then
   out_0 <= '1';
else
   out_0 <= '0';
end if;

if (c or d) = '1' then
   out_1 <= '1';
else
   out_1 <= '0';
end if;

这可以用以下内容替换:

out_0 <= a and b;
out_1 <= c or d;

等等......