부울함수는 AND, OR, NOT을 기본으로 연산을 한다. 그런데, 디지털 논리 회로를 만들 때도 AND, OR, NOT을 기본 게이트로 사용할까? 이에 대한 답은 AND, OR, NOT 세 가지 게이트를 적절히 섞어서 디지털 논리 회로를 만들 수 있겠지만, 회로가 복잡해지면 이 세가지 게이트의 조합이 너무 복잡해진다. 그래서 좀 더 유용하게 사용할 기본 게이트들이 필요한데, 이 문제에 대한 답을 찾기 앞서 기본적인 디지털 논리 게이트들을 알아보자.
AND, OR, NOT(inverter)
F=XY |
F=X+Y |
|
AND와 OR는 쌍대성이다.
NAND, NOR, Buffer
|
|
F=X
|
AND 게이트와 OR 게이트의 결과값에 각각 NOT을 붙이면 NAND, NOR게이트가 된다.
기본 게이트가 AND와 OR이고 NOT만 붙였으므로 NAND와 NOR는 쌍대성이다.
버퍼(buffer)는 신호를 증폭하는데 사용된다.
XOR(Exclusive-OR), XNOR(Exclusive-NOR)
|
|
XOR와 XNOR는 서로 보수관계다.
XOR는 입력값의 두 신호가 서로 다를 때 결과값이 1이된다.
XNOR는 입력값의 두 신호가 서로 같을 때 결과 값이 1이된다.
기본 게이트가 OR이므로 기호를 보면 알 수 있듯이 서로 보수 관계가 된다.
디지털 회로를 설계할 때 기본 논리 게이트로 NAND나 NOR를 많이 사용한다.