4 / 63 · 개념
NAND·NOR와 반전 기호 읽기
부정의 범위를 구분하고 드모르간 법칙으로 같은 기능의 기호와 식을 연결합니다.
내용은 무료로 볼 수 있습니다. 수강 신청하면 학습 기록을 저장할 수 있어요.
작은 원은 출력값 전체를 반전합니다
NAND는 AND의 결과를, NOR는 OR의 결과를 반전합니다. NAND가 “입력을 각각 반전한 AND”라는 뜻은 아닙니다. 부정부정 0을 1로, 1을 0으로 바꾸는 NOT 연산입니다. 수식 위의 선은 선 아래 식 전체에 NOT을 적용한다는 뜻입니다.이 씌워지는 범위를 먼저 확인하세요.
| a | b | NAND | NOR |
|---|---|---|---|
| 0 | 0 | 1 | 1 |
| 0 | 1 | 1 | 0 |
| 1 | 0 | 1 | 0 |
| 1 | 1 | 0 | 0 |
| a | b | y |
|---|---|---|
| 0 | 0 | 1 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
NAND를 선택해 11에서만 출력이 0인지 확인하세요. 이어 NOR로 바꾸면 00에서만 출력이 1입니다. 반전된 출력도 유효한 0/1 신호이며, “아직 계산되지 않은 값”이 아닙니다.
드모르간 법칙은 게이트를 읽는 방법입니다
AND의 출력에서 반전을 입력으로 옮기면 연산도 OR로 바뀝니다. 반전 원의 위치만 옮기고 AND를 그대로 유지하면 다른 함수가 됩니다. 에서 NAND는 1이지만 는 0이므로 즉시 반례를 찾을 수 있습니다.
- NAND: Y = NOT (a AND b)
- 입력 각각 반전: NOT a와 NOT b를 만든다
- OR로 결합: Y = (NOT a) OR (NOT b)
Active-low는 신호가 의미를 가지는 방향입니다
reset_n처럼 0일 때 동작하는 신호를 active-lowactive-low 신호가 0일 때 요청이나 기능이 활성이라는 규칙입니다. 이름 끝의 _n은 흔한 표기 관례이며, 실제 동작은 명세로 정합니다.라고 합니다. 이름의 _n은 관례이고, 동작은 명세와 회로가 결정합니다. 두 요청 req0_n, req1_n 중 하나라도 0일 때 경보 alarm을 1로 만들려면 다음과 같이 계산합니다.
각 신호 위의 선은 그 신호에 NOT을 적용합니다. 마지막 긴 선은 두 신호의 AND 결과 전체에 NOT을 적용하므로 NAND 하나로 구현할 수 있습니다. 예를 들어 두 입력이 11이면 요청이 없으므로 alarm=0이고, 01이면 첫 요청이 활성이라 alarm=1입니다.
신호의 “활성”과 숫자 1은 항상 같지 않습니다. 입력을 읽을 때 논리값, 활성 조건, 반전 기호를 따로 확인하세요.
직접 생각해 보기
두 active-low 허가 permit0_n, permit1_n이 모두 활성일 때만 go=1이 되어야 합니다. NAND와 NOR 중 무엇을 연결하면 될까요?
해설 보기
둘 다 0일 때만 1이어야 하므로 NOR입니다. go=NOT(permit0_n OR permit1_n)입니다. “둘 다”라는 문장만 보고 바로 AND를 선택하면 신호의 활성 방향을 놓칩니다.