5 조합회로 응용 설계 [호환 모드] - pusan national university · 2019-09-04 · x y z 3...

14
1 5. 조합회로 응용설계 목표 조합논리회로 응용 설계 방법 이해 7세그먼트 설계 가산기 회로 설계 감산기 회로 설계 비교회로 회로 설계 코드 변환, 패리티 발생 회로 인코더, 디코더 회로 설계 멀티플렉서, 디멀티 플렉서 회로

Upload: others

Post on 28-Dec-2019

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

1

5. 조합회로응용설계

목표• 조합논리회로 응용 설계 방법 이해

• 7세그먼트 설계

• 가산기 회로 설계

• 감산기 회로 설계

• 비교회로 회로 설계

• 코드 변환, 패리티 발생 회로

• 인코더, 디코더 회로 설계

• 멀티플렉서, 디멀티 플렉서 회로

Page 2: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

2

디지털 시스템

1) 조합회로

- 출력 = f(입력)

- 출력의 값이 현재의 입력값에 의해 결정

- 입력변수의 값에 따라 일정한 출력을 갖음

2) 순서회로

- 출력 = f(입력, 상태)

- 출력의 값이 시간적인 상태에 의해 결정

- 메모리 요소와 귀환기능을 포함

조합회로- n 입력변수 : 2n 조합 가능

- 진리표로 문제 기술

- AND, OR, NOT 등으로 구성

- 산술 연산 및 데이터 처리용 회로

조합회로의 설계절차1) 입출력 결정 및 기호 할당

2) 진리표 유도(입출력 간의 관계 정의)

3) 맵 등을 이용한 간략화된 부울함수 유도

4) 논리도 도시

5) 설계결과 확인

설계시 유의사항1) 게이트의 입력을 최소화한다.

2) 게이트의 수를 최소화한다.

3) 회로의 전파지연 시간을 최소화한다.

4) 상호 연결되는 수를 최소화한다.

Page 3: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

3

예제 13 개의 입력과 1 개의 출력을 갖는 조합회로

출력은 입력이 001(3) 보다 작을 때 1 이고 다른 경우에는 0

예제 2- BCD-to-Excess-3 코드 컨버터(Code Converter) : BCD 코드 + 3

- 입력 : A, B, C, D

- 출력 : W, X, Y, Z

- 무정의 조건(1010 - 1111)

Page 4: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

4

예제 3- BCD-to-7- 세그먼트 디코더 : 전자계산기, 디지털시계

- BCD 1010-1111 : 무정의 조건 모든 세그먼트를 꺼지도록

- 7 개의 맵

Page 5: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

5

반가산기(half adder)- 1비트의 2개 2진수를 더하는 논리회로.

- 2개의 입력과 출력으로 구성.

- 2개 입력은 피연산수 x와 연산수 y 이고, 출력은 두 수를 합한 결과인 합 S(sum)과

올림수 C(carry)를 발생하는 회로.

: 피연산수

: 연산수

: 합

올림수

0110

S0001

C0 00 11 01 1

x y 0110

S0001

C0 00 11 01 1

x y yX

S

C

(a) 반가산기 (b) 반가산기 진리표 (c) 반가산기 회로도

: 하위 비트 올림수

: 연산수

: 합

올림수 0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

x y Ci

0 00 10 11 00 11 01 01 1

C0 S0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

x y Ci

0 00 10 11 00 11 01 01 1

C0 Sx

y

ci

c0

s

전가산기(full adder)- 하위비트에서 발생한 올림수를 포함하여 3개의 입력의 합을 구하는 조합논리회로.

- 3개의 입력과 2개의 출력으로 구성됨.

- 3개 입력은 피연산수 x와 연산수 y, 그리고 하위 비트에서 발생한 올림수 Ci 가 되고, 출

력변수는 출력의 합 S(sum)과 올림수C(carry)를 발생하는 회로.

Page 6: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

6

다중 비트 병렬가산기

Page 7: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

7

감산기 구현방법방법 1 : 연산수의 보수를 피연산수와 더하여 구하는 방법.

방법 2 : 피연산수에서 연산수를 빼서 구하는 방법.

0110

D0100

B0

0 00 11 01 1

x y0110

D0100

B0

0 00 11 01 1

x yx

yD

B0

반감산기(Half Subtractor)2개의 2진수를 감산하는 논리회로.

2개의 2진 입력과 2개의 2진 출력(차:D, 빌림수:B)을 가짐.

Page 8: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

8

전감산기(Full Subtractor)- 3개의 입력(피연산수:x, 연산수:y, 빌려준 빌림수:Bi)비트들의 뺄

셈을 구하는 조합논리회로

- 출력은 2 개(차:D, 빌림수:B0)로 구성.

0 01 11 11 00 10 00 01 1

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

D B0x y Bi

0 01 11 11 00 10 00 01 1

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

D B0x y Bix

y

Bi

B0

D

Page 9: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

9

1 의 보수 방법을 이용하여 가산기 활용

예) 4자리의 피감수 A와 감수 B가 있다고 가정하고 1의 보

수 방법을 이용

(10011)2의 최상위 비트에 1이 발생하므로 이를 다시 더해 주어야

한다. 즉, (0011)2 + 1 = (0100)2가 되어 정확한 값이 된다.

2의 보수를 이용하여 감산을 할 경우 2

감수 B를 2의 보수로 바꾸어야 하고 이 수를 피감수 A와 더하게

된다. 그리고 최종적으로 최상위에서 발생하는 캐리는 무시하면

된다.

Page 10: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

10

대소 비교기

두 개의 수를 비교하여 두 수의 관계를 구하는 회로

2개의 입력 A,B와 출력 X,Y,Z가 결정

A = 0, B = 0 일 때, 출력 A = B. X = 0, Y = 1, Z = 0

A = 0, B = 1 일 때, 출력 A < B. X = 0, Y = 0, Z = 1

A = 1, B = 0 일 때, 출력 A > B. X = 1, Y = 0, Z = 0

A = 1, B = 1 일 때, 출력 A = B. X = 0, Y = 1, Z = 0

일치 회로

Page 11: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

11

yx z

a b c

(2진수)

(그레이코드)

a b c (그레이코드)

yx z (2진수)

q 코드 변환기 : 같은 정보에 대해 서로 다른 코드에 사용

l 2진 코드와 그레이 코드 : 그레이 코드는 이웃한 수끼리 한 개비트만 다르게 구성된 코드.

l 2진 코드와 그레이 코드 비교표

0 0 00 0 10 1 10 1 01 1 01 1 11 0 11 0 0

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

a b c그레이 코드출력

x y z2진 코드 입력

0 0 00 0 10 1 10 1 01 1 01 1 11 0 11 0 0

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

a b c그레이 코드출력

x y z2진 코드 입력

wxy

z

a

b

d

c

l BCD 코드와 2421 코드 변환

* 각각 10진수의 한 자리를 4비트를 나타냄.

* 입력과 출력 변수에 대한 비교표와 변환회로

0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 1

a b c d2421코드 출력

0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 1

w x y zBCD 코드 입력

0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 1

a b c d2421코드 출력

0 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 1

w x y zBCD 코드 입력

Page 12: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

12

xy

zPE

l 패리티 발생기(parity bit generator) * 3개의 입력 정보 비트를 x, y, z 라 하고, 출력인 패리티 비트는 P라

한다.

* 정보비트가 3비트일 때 홀수 패리티와 짝수패리티의 진리표

01101001

PE

짝수 패리티

10010110

P0

홀수 패리티

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

x y z3 비트 정보

01101001

PE

짝수 패리티

10010110

P0

홀수 패리티

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

x y z3 비트 정보

xy

zP0

홀수 패리티 발생기 P0 = ( x y ) z = ( x y) z

짝수 패리티 발생기 PE = x y z = x y z

q 디코더와 인코더

l 디코더 : 조합논리회로로서 n비트의 2진 코드는 2n개의 출력으로 변환시켜 주는 회로.

* 3´8 디코더에 대한 진리표

1 0 0 0 0 0 0 00 1 0 0 0 0 0 00 0 1 0 0 0 0 00 0 0 1 0 0 0 00 0 0 0 1 0 0 00 0 0 0 0 1 0 00 0 0 0 0 0 1 00 0 0 0 0 0 0 1

D0 D1 D2 D3 D4 D5 D6 D7

출 력

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

x y z입 력

1 0 0 0 0 0 0 00 1 0 0 0 0 0 00 0 1 0 0 0 0 00 0 0 1 0 0 0 00 0 0 0 1 0 0 00 0 0 0 0 1 0 00 0 0 0 0 0 1 00 0 0 0 0 0 0 1

D0 D1 D2 D3 D4 D5 D6 D7

출 력

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

x y z입 력

x

y

z

D 0 = x y z

D 1 = x y z

D 2 = x y z

D 3 = x y z

D 4 = x y z

D 5 = x y z

D 6 = x y z

D 7 = x y z

Page 13: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

13

엔코더(encoder)디코더의 반대기능을 수행하는 논리회로로, 2n개 이하의 입력과 n개의 출력.

인코더는 OR게이트로 구성되며, 이 OR게이트 입력은 아래의 진리표로부터

결정된다. (예 : 8진 - 2진 인코더)

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

x y z출 력

1 0 0 0 0 0 0 00 1 0 0 0 0 0 00 0 1 0 0 0 0 00 0 0 1 0 0 0 00 0 0 0 1 0 0 00 0 0 0 0 1 0 00 0 0 0 0 0 1 00 0 0 0 0 0 0 1

D0 D1 D2 D3 D4 D5 D6 D7

입 력

0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

x y z출 력

1 0 0 0 0 0 0 00 1 0 0 0 0 0 00 0 1 0 0 0 0 00 0 0 1 0 0 0 00 0 0 0 1 0 0 00 0 0 0 0 1 0 00 0 0 0 0 0 1 00 0 0 0 0 0 0 1

D0 D1 D2 D3 D4 D5 D6 D7

입 력

D7

D5

D6

D4

D3

D2

D1

D0

x= D4 +D 5 +D 6 +D 7

y= D 2 +D 3 +D 6 +D 7

x= D1 +D3 +D5 +D7

멀티플렉서여러 개의 데이터 입력을 받아 그 중 하나를 선택하여 출력하는 조합논리회로이

며, 데이터 선택선이라고도 한다.

MUX

Z

I0

I1

IN-1

선택선

MUX

Z

I0

I1

IN-1

선택선

Page 14: 5 조합회로 응용 설계 [호환 모드] - Pusan National University · 2019-09-04 · x y z 3 비트정보 x y z P 0 홀수패리티발생기P0= ( x y ) z = ( x y) z 짝수패리티발생기PE=

14

F(A, B, C)= (1, 3, 5, 6)을 4x1 MUX로 설계하라.

A’

A

B’C’ B’C BC’ BC

I I I I0 1 2 3

0 1 2 34 5 6 7

0 1 A A’

0

AA’

1 4x1MUX F

B C

Input

Output

Select

0IIII

1

2

3

디멀티 플렉서하나의 입력선에 정보를 싣고 2n개의 가능한 출력선 중 하나로 정보를 전송하

며 특정 출력의 선택선은 n개의 선택선에 의해 제어된다.

QN-1

DEMUX

입력선

Q0

Q1

선택선