비교기
IT 위키
더 많은 작업
- Comparator; Magnitude Comparator; 크기 비교기
- 두 2진수 A, B 의 크기를 비교해 A>B, A=B, A<B 가운데 어느 관계인지를 출력하는 조합 논리 회로
- 기억 소자 없이 현재 입력만으로 출력이 정해지는 조합 논리 회로다.
- 4비트 비교기 IC(74LS85)는 하위 칩의 결과를 받는 입력이 있어 여러 개를 이어 8비트·16비트 비교기를 만든다.
조합 논리 회로는 모두 같은 순서로 설계한다.
- 입력과 출력을 정한다 — 입력 A, B, 출력 Z
- 진리표를 만든다 — 입력의 모든 조합(n 비트씩이면 22n행)에 대해 출력 Z 를 적는다
- 출력이 1인 행을 모아 최소항의 합(SOP) 으로 논리식을 쓴다
- 부울 대수 법칙이나 카르노 맵으로 식을 간소화한다
- 간소화한 식을 AND·OR·NOT(또는 NAND만) 게이트로 그린다
| A | B | A>B | A=B | AB | Z = A·B' | B 를 NOT 으로 뒤집어 A 와 AND |
|---|---|---|---|---|---|---|
| AB) + (A=B) = A + B' | B 를 NOT 으로 뒤집어 A 와 OR. A<B 의 부정 (A'·B)' 과 같다 |
- A≥B 는 진리표에서 출력이 1인 행이 셋(00, 10, 11)이다. SOP 로 쓰면 A'B' + AB' + AB 이고, 앞의 두 항을 묶으면 B'(A'+A) = B', 남은 AB 와 합치면 A + B' 로 줄어든다.
A = A1A0, B = B1B0 일 때 입력은 4개, 진리표는 16행이다. 상위 비트부터 비교한다.
- 자리마다 같은지 본다: xi = (Ai⊕Bi)' (XNOR)
- A=B = x1·x0
- A>B = A1B1' + x1·A0B0' — 상위 비트가 크거나, 상위 비트가 같고 하위 비트가 크면 A 가 크다
- 카르노 맵으로 간소화한 SOP: A1B1' + A0B1'B0' + A1A0B0'
- A<B = A1'B1 + x1·A0'B0
- A≥B = (A<B)' 이다. 진리표 16행 중 10행이 1이므로, 0인 6행(A<B)을 구해 NOT 을 붙이는 편이 회로가 작다
- SOP 로 간소화하면 A1B1' + A1B0' + A0B1' + A1A0 + B1'B0'
n 비트로 늘려도 같은 원리다. 가장 높은 자리부터 내려오며 처음으로 다른 자리에서 크기가 정해진다.