1. 문제
- 다음의 전가산기를 signal을 이용하여 구현하여 보아라.
2. 문제 분석
- signal방식 : 대입기호 <=는 즉시 대입되는 것이 아니라 필요한 시점에서 대입된다. signal 선언을 architecture와 begin 사이에 선언된다.
- 전가산기 : 반가산기가 2진수의 한 자릿수만 계산할 수 있는 것과는 달리 전가산기는 n bit의 2진수 덧셈을 위해 아랫자리에서 올라온 자리올림을 함께 계산한다. 즉, 두 개의 2진수 A와 B에 자리올림까지 함께 더하는 회로이다.
- 진리표
a |
b |
c_in |
s |
c_out |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
- 논리 회로
3. VHDL code
library ieee;
use ieee.std_logic_1164.all;
entity exam3 is
port( a, b, c_in : in std_logic;
s, c_out : out std_logic);
end exam3;
architecture exam of exam3 is
signal s1,c1,c2 : std_logic;
begin
s1 <= a xor b;
c1 <= a and b;
s <= s1 xor c_in;
c2 <= s1 and c_in;
c_out <= c1 or c2;
end exam;
4. Simulation
감산기 VHDL (0) | 2008.10.08 |
---|---|
Masking (Constant) (0) | 2008.10.08 |
Variable을 이용한 전가산기의 구현 VHDL (0) | 2008.10.08 |
입력 Signal 비교기 VHDL (Process) (0) | 2008.10.08 |
입력 Signal의 비교기 VHDL(자료흐름) (0) | 2008.10.08 |