The vote Logic (Pros & Cons)
찬반투표 논리
Description
- 투표자 3명 중 2명 이상이 찬성할 경우 찬성값을 출력하는 회로
- True값(1)은 찬성을 의미한다.
- False값(0)은 반대를 의미한다.
- Parameter A, B, C는 각각의 투표자를 의미하며 Z는 결과값을 의미한다.
Truth Table (진리표)
(Latex로 구현하기)
* 진리표란, 입력에 대한 모든 경우에 따른 결과값을 표시한 표를 말한다.
Expression
Expression 1. Rough (Not optimized)
\(Z = A'BC + AB'C + ABC' + ABC\)
여기서, A'은 A에 NOT 연산을 수행한 값을 의미한다.
즉, A' = NOT(A)
- 진리표 상에서, Z값을 1로 출력하는 네 가지 경우를 일일히 모두 Gates로 구현한 경우이다.
- 최적화가 진행이 되지 않은 형태이며 비효율적인 형태라 할 수 있다.
Expression 2. Optimized
\(Z = AB + BC + AC\)
\(
pf)
A'BC + AB'C + ABC' + ABC \\
\iff A'BC + AB'C + ABC' + ABC + ABC + ABC \qquad 3ABC = ABC \\
\iff A'BC + ABC + AB'C + ABC + ABC' + ABC \\
\iff BC(A' + A) + AC(B' + B) + AB(C' + C) \\
\iff BC + AC + AB \iff AB + BC + AC\\
\\
\therefore A'BC + AB'C + ABC' + ABC \iff AB + BC + AC
\)
즉, Expression 1과 Expression 2가 논리적으로 동치임이 증명되었는데,
이는 두 회로가 논리적으로 같지만(모든 입력에 대한 출력이 일치) Expression 2가 보다 더 간단하다.
회로가 간단하다는 것은 설계 시에 필요한 자원이 적다는 의미이고 그것은 곧 제작 가격이 절감, 빠른 동작을 의미한다.