오늘 끝나면
논리 게이트와 진리표
- ✓논리 게이트와 진리표의 핵심 문제를 한 문장으로 설명한다
- ✓오른쪽 실습에서 논리이 어떻게 움직이는지 관찰한다
- ✓다음 강의와 이어지는 한계를 말할 수 있다
실습 미션
AND·OR·NOT·XOR·NAND — 입력을 눌러 진리표를 채운다 이 문장이 실제로 무슨 뜻인지 실습에서 한 번 손으로 확인한다.
성공 조건
- □실습의 기본값을 먼저 관찰
- □입력값이나 모드를 한 번 이상 바꿔 결과 비교
- □왜 결과가 바뀌었는지 한 문장으로 설명
반도체 설계 · 03
논리 게이트와
진리표
게이트는 비트를 받아 비트를 낸다.
AND, OR, NOT, XOR, NAND. 규칙은 다섯 줄이면 끝난다.
진리표는 그 규칙을 한 장으로 적은 약속이다.
게이트 = 비트를 받아 비트를 낸다
2강에서 만든 비트(0과 1)는 그냥 값이다. 값만으로는 아무 판단도 못 한다.
게이트는 비트를 받아 비트를 내는 작은 규칙 상자다.
입력도 0과 1, 출력도 0과 1이다. 그 사이를 잇는 규칙 하나가 게이트의 전부다.
앞 강에서는 게이트를 전기 스위치 배치로 만들었다.
여기서는 전기를 잊고 규칙만 본다. 어떤 입력에 어떤 출력을 내느냐가 전부다.
AND · OR · NOT, 가장 기본 셋
판단의 바닥은 세 단어다. 그리고, 또는, 아니다.
AND는 둘 다 1일 때만 1을 낸다. “그리고”에 해당한다.
OR는 하나라도 1이면 1을 낸다. “또는”에 해당한다.
NOT은 입력 하나를 그냥 뒤집는다. “아니다”에 해당한다.
AND와 OR는 입력이 둘이고, NOT은 입력이 하나다.
그래서 NOT의 경우의 수는 0과 1 두 줄이고, AND와 OR는 네 줄이다.
| A | B | out |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
| A | B | out |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
| A | out |
|---|---|
| 0 | 1 |
| 1 | 0 |
XOR · NAND, 다름과 뒤집힌 AND
기본 셋 위에 두 게이트를 더 얹는다. 둘 다 칩에서 어마어마하게 쓰인다.
XOR는 두 입력이 다르면 1, 같으면 0이다.
01과 10에서만 1이 나온다. 비교와 덧셈의 자리 계산에 핵심으로 들어간다.
NAND는 AND를 그대로 뒤집은 것이다. 둘 다 1일 때만 0이고, 나머지는 1이다.
이 NAND 하나로 다른 모든 게이트를 만들 수 있다.
| A | B | out |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
다르면 1 (01·10)
| A | B | out |
|---|---|---|
| 0 | 0 | 1 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
11만 0, 나머지 1
직접 눌러 진리표를 채운다
게이트와 입력 A·B를 고르면 출력이 0일지 1일지 먼저 예측하고, 확인을 눌러 맞춰본다. 출력은 그 전까지 가려둔다.
아래 근거 패널은 그 게이트의 진리표다. 지금 누른 (A,B) 조합이 표의 어느 줄인지 강조된다.
머리로 찍고 표로 검증하는 이 한 사이클이 회로 읽기의 기본 동작이다.
두 입력이 다르면 1
| A | B | 출력 |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | ? |
| 1 | 1 | 0 |
입력 둘이면 네 줄뿐. 지금은 (A,B)=(1,0) 줄.
진리표 = 게이트의 완전한 정의
게이트를 완전히 정의하는 데 필요한 건 진리표 하나뿐이다.
입력이 둘이면 가능한 조합은 00, 01, 10, 11 네 가지다.
그 네 줄의 출력만 정해두면 게이트가 빠짐없이 정해진다.
입력이 n개면 줄은 2의 n제곱이다. 입력이 셋이면 여덟 줄이다.
그래서 아무리 복잡한 회로도 결국 진리표 몇 장이 겹친 것이다.
설계는 원하는 진리표를 정하고 그걸 내는 게이트를 엮는 일로 환원된다.
Q. XOR가 1을 내는 경우는?
정답은 두 입력이 서로 다를 때다.01과 10처럼 다를 때만 1이 나온다.
00이나 11처럼 같으면 0이다. 그래서 XOR는 “다름 검출기”로 읽으면 된다.
| AB | 출력 (내가 정함) |
|---|---|
| 00 | ? |
| 01 | ? |
| 10 | ? |
| 11 | ? |