이번에는 가산기와 감산기에 대해 다뤄볼 예정이다.
가산기
가산기는 두 개의 2진수를 더하는 동작을 수행하며 두 개의 입력을 받고 두 개의 출력을 내보낸다.
두 개의 출력은 합(Sum)과 자리올림(Carry)으로 구성되어 있다.
일반적으로 가산기라하면 전가산기(Full Adder)를 말하며, 전가산기 외에도 반가산기가 존재한다.
전가산기는 두개의 반가산기로 구성이 되며, 1비트의 2진수를 더할 수 있다.
전가산기의 진리표는 아래의 표와 같다.
A | B | Ci | S | Co |
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 |
진리표를 바탕으로 논리식을 구성해보면 S = ( A ⊕ B ) ⊕ Ci, Co = AB + Ci( A ⊕ B )가 되는 것을 확인할 수 있다.
아래의 회로는 위 논리식을 바탕으로 구성한 회로이다.
구성한 회로를 시뮬레이션 하면 아래와 같은 결과가 출력되는 것을 확인할 수 있다.
회로의 출력결과는 위 언급된 전가산기의 진리표의 결과와 동일한 것을 확인할 수 있다.
감산기
감산기는 2진수에서 다른 2진수를 빼는 동작을 수행한다. 감산기 또한 반감산기와 전감산기로 구분이 되며, 가산기의 경우와 동일하게 전감산기는 두 개의 반감산기로 구현될 수 있다.
감산기는 두 개의 입력을 받으며, 두 개의 출력은 차(Difference)와 자리빌림 출력(Borrow Out)으로 이루어져 있다.
전감산기의 진리표는 아래의 표와 같다.
A | B | Bi | D | Bo |
0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 | 1 |
0 | 1 | 0 | 1 | 1 |
0 | 1 | 1 | 0 | 1 |
1 | 0 | 0 | 1 | 0 |
1 | 0 | 1 | 0 | 0 |
1 | 1 | 0 | 0 | 0 |
1 | 1 | 1 | 1 | 1 |
진리표를 바탕으로 논리식을 구성해 보면, D = ( A ⊕ B ) ⊕ Bi, Bo = A'B + Bi( A ⊕ B )'가 된다.
아래의 회로는 위 논리식을 바탕으로 구성한 전감산기 회로이다.
아래의 그림은 전감산기 회로를 시뮬레이션 한 출력 결과를 나타낸다.
전감산기의 출력결과는 위 진리표와 동일한 것을 확인할 수 있다.
'Tool > PSpice' 카테고리의 다른 글
디지털 회로 실험 : 인코더, 디코더 (0) | 2024.07.08 |
---|---|
디지털 회로 실험 : 멀티플렉서, 디멀티플렉서 (1) | 2024.07.08 |
디지털 회로 실험 : 부울 대수, 드모르간 정리 (3) | 2024.06.27 |
디지털 회로 실험 : XOR, XNOR 구현 (0) | 2024.06.27 |
디지털 회로 실험 : PSpice 회로 시뮬레이션 기초 (0) | 2024.06.26 |