library ieee; use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
use work.GatePackage.all;
entity Adder_4bit is
port(A, B : in std_logic_vector(4 downto 0);
S : out std_logic_vector(4 downto 0));
end Adder_4bit;
architecture bd of Adder_4bit is
procedure pr_add(x,y : std_logic_vector;
z: out std_logic_vector) is
begin
z := x + y;
end pr_add;
begin
process(A, B)
variable sum : std_logic_vector(4 downto 0);
begin
pr_add(A, B, sum); -- 이부분에서 왜 (A,B,S)로 안쓰고 (A,B,sum) sum을 따로 왜만들었을까요?? 바로 (A,B,S)로 하면 안되나요?
S <= sum;
end process;
end bd;
ㅅㅂ 배운지 졸라 오래돼서 기억이 안나네. 기억은 안나지만, 둘 다 해보면 되잖아? 둘 다 파형 찍어봐. 그럼 뭔가 다르겠지.
나도 그러고싶은데 지금 깐버전이 파형까지는 안되는거같은데.. 그게없어 그래서 ㅠㅠ
C포트는 출력이라서 그런가