1. 실험이론전가산기란?전가산기는 3개의 입력비트의 합을 계산하는 조합회로이며, 3개의 입력과 2개의 출력으로 구성된다. A와 B로 표시된 두개의 입력변수는 더해 질 현재 위치의 두 비트이며, C_in으로 표시된 세 번째 입력변수는 바로 이전 위치로부터 올라온 캐리이다. 3개의 비트를 더할 때 합은 0부터 3까지 나올 수 있고, 2와 3을 2진수로 표시하는데 2개의 출력이 필요하다. 2개의 출력 중 합에 대해서는 S_out, 캐리에 대해서는 C_out라는 기호로 표시한다.ABC_inSC_out**************************10100100010111 0*************1001C_out에 관한 카노맵위의 진리표를 보고 아래와 같이 카노맵으로 간소해 해보면,0*************1010S에 관한 카노맵S =A'B'C +A'BC'+ABC+ABC' = A'(B'C+BC')+A(BC+B'C')=A'(B ? C)+ A(B ? C)=A ? (B ? C)=A ? B ? CC_out =AB+A'BC+AB'C = AB+C(A'B+AB')=AB+C(A ? B)위의 식을 아래와 같은 회로도로 나타낼 수 있다.위의 회로도는 xor게이트와 and게이트로 이루어진 반가산기 두개와 or게이트 하나와 같음을 알 수 있다.2. VHDL code와 파형1) 전가산기(Dataflow)library IEEE;use IEEE.std_logic_1164.all;-- Entity declarationentity Full_Adder isport(X, Y, C_in : in std_logic;S_out, C_out : out std_logic);end Full_Adder;-- Architecture bodyarchitecture Dataflow_Description of Full_Adder isbeginS_out