4 ビットの数値 (swr) を 7 セグメント ディスプレイ (seg) に出力するとします。最初のアプローチでは、case ステートメントを使用します。
process (swr)
begin
case swr is
when "0000" => seg<="1000000";
when "0001" => seg<="1111001";
-- and so on...
when others => seg<="-------";
end case;
end process;
または、「with select」ステートメントを使用することもできます (今回はプロセス内ではありません)。
with swr select
seg<= "1000000" when "0000",
"1111001" when "0001" ,
-- and so on...
"-------" when others;
これら 2 つのアプローチの違いを教えてください。(一方が他方より速いか、またはより多くの論理ゲートを使用するか、または ...)