전자계산기 구조 정리
· 약 91분
- 영국 수학자 불에 의해 개발
- AND : 입력 값이 모두 1일 때 1 출력
- OR : 입력 값이 하나라도 1일 때 1 출력
- NOT : 부정
기본 공식
- 합의 곱을 곱의 합으로 변환
- 분배법칙 예외 : A +(B×C) = (A + B)(B + C)
- 드모르강
- (A + B)` = A`×B`
- (A×B)` = A`+ B`
- 멱등
- A + A = A
- A×A = A
- 보수
- A + A` = 1
- A×A` = 0
- 항등
- A + 0 = A
- A + 1 = 1
- A×0 = 0
- A×1 = A
- 콘센서스
- AB + BC + CA` = AB + CA`
- (A + B)(B + C)(C + A`) = (A + B)(C + A`)
- 복원 : A`` = A
- 기타
- A + A`B = A + B
- A + AB = A
카르노 맵
- 설계된 논리식을 도표로 표현하여 최소화 하는 방법
- Karnaugh map = K-map = 카노맵
AB와 CD의 위치를 바 꾸어 계산하는게 쉽다.
00 | 01 | 11 | 10 | |
---|---|---|---|---|
00 | 0 | 1 | 3 | 2 |
01 | 4 | 5 | 7 | 6 |
11 | 12 | 13 | 15 | 14 |
10 | 8 | 9 | 11 | 10 |
논리 게이트
- BUFFER : 입력된 정보를 그대로 출력
- NAND : NOT + AND
- NOR : NOT + OR
- XOR : 입력이 같으면 0, 다르면 1
- X = A⊕B
- X = A`B + AB`
- X = (A + B)(A` + B`)
- XNOR : NOT + XOR
- X = A⊙B
- X = (A⊕B)`
- X = AB + A`B`
조합논리회로
반가산기, 전가산기, 병렬가산기, 반감산기, 전감산기, 디코더, 인코더, 멀티플렉서, 디멀티플렉서, 다수결회로, 비교기 등
반가산기
2진수 두 개를 더한 합과 자리올림수를 구하는 조합논리회로
- 합은 S, 자리올림(캐리)는 C
- C = AB
- S = A`B + AB` = A⊕B
전가산기
1bit 2진수 3자리를 더하여 합과 자리올림수를 구하는 조합논리회로
- 두 개의 반가산기와 한 개의 OR GATE로 구성
- 합은 S, 자리올림(캐리)는 C
- C = (A⊕B)C + AB
- S = (A⊕B)⊕C
- 3 × 8 디코더 1 개 + 4 입력 OR 게이트 2개로 구성가능
병렬가산기
n bit로 된 2진수 A, B에 대한 덧셈을 n개의 전가산기를 이용하여 구현한 실질적인 가산기
- 전파지연을 줄이기 위해 Carry Look Ahead 사용
- 전파지연 : ALU Path에서 가장 긴 Delay
반감산기
1bit 2진수 2자리에 대한 감산을 하는 조합논리회로
- 차는 D, 빌려온 수는 B
- B = A`B
- D = A`B + A`B = A⊕B
- 2 × 4 디코더 1개 + 3 입력 OR 게이트 1개로 구성가능
디코더
n bit의 코드화된 정보를 그 코드의 각 bit 조합에 따라 2^n개의 출력으로 번역하는 조합논리회로
- n개의 입력을 2^n개의 출력으로
- 명령어의 명령부나 번지를 해독할 때 사용
- 주로 AND 게이트로 구성
- 부호화된 데이터에서 정보를 찾아냄
- n × 2^n 디코더의 AND 게이트 수 : 2^n 개
- 5 × 8 디코더 : 8개
인코더
2^n개의 입력선으로 입력된 값을 n개의 출력선으로 코드화해서 출력하는 조합논리회로
- 2^n개의 입력을 n개의 출력으로
- 16개의 입력선일 경우 4개의 출력선 필요 (2^4)
멀티플렉서
2^n개의 입력선 중 1개를 선택하여 그 선에서 입력되는 값을 1개의 출력선으로 출력하는 조합논리회로
- 2^n개의 입력선 중 1개의 선을 선택하기 위해 n개의 선택선 이용
- 16개의 입력선일 경우 4개의 선택선 필요 (2^4)
- 출력선은 하나
디멀티플렉서
1개의 입력선으로 들어오는 데이터를 2^n개의 출력선 중 1개를 선택하여 출력하는 회로
- 2^n개의 출력선 중 1개의 선을 선택하기 위해 n개의 선택선 이용
- 16개의 출력선일 경우 4개의 선택선 필요 (2^4)
- 입력선은 하나
순서논리회로
- 외부의 입력과 현재 상태에 따라 출력이 결정
- 논리 게이트 외에 메모리 요소와 피드백 기능을 포함
- 기억기능 존재
- 출력이 일정한 값을 갖지 않음
- 플리플롭과 논리 게이트로 구성
- 동기식과 비동기식으로 나뉨
- 플리플롭, 카운터, 레지스터, RAM, CPU 등