VHDLで4ビット加算器を作る / ライブラリーを使う

pp.114-116

今度はライブラリーを使って4ビット加算器を作ってみる。ただの足し算で表現できる。

5LEを消費した。

library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_unsigned.all; -- usigned数を演算するためのlibraryを使う。

entity adder_4bit_lib is
    port(
        AIN : in  std_logic_vector(3 downto 0);
        BIN : in  std_logic_vector(3 downto 0);
        SOUT: out std_logic_vector(4 downto 0)  -- キャリーアウトも含めて5ビット幅
    );
end adder_4bit_lib;

architecture RTL of adder_4bit_lib is 
begin
   -- &はビット列の連結。+はただの足し算。
   -- 入出力でビット幅を合わせるため入力を5ビット幅にする。
    SOUT <= ('0' & AIN) + ('0' & BIN);
end RTL;

今、0xD + 0xB = 0b1 1000を計算している。
f:id:ti-nspire:20201220111952j:plain:h300 f:id:ti-nspire:20201220112040p:plain:h300