3. 게이트레벨 최소화

34
3. 게게게게게 게게게

Upload: martina-mccall

Post on 03-Jan-2016

66 views

Category:

Documents


5 download

DESCRIPTION

3. 게이트레벨 최소화. Karnaugh Map 을 이용한 논리함수 간소화 방법. 논리함수식을 간소화하기 위해 체게화된 방법 K-map 을 이용하여 함수 간소화 방법 수평 , 수직으로 인접한것들끼리 묶는다 겸치는부분이 있더라도 가능하면 크게 묶는다 1, 2, 4, 8, … , 2ⁿ 개씩 묶으면 각각 0, 1, 2, 3, … n 개의 literal 수를 줄일수 있다 “ 1” 을 묶으면 f 에대한 표현식 , “0” 을 묶으면 f′ 에 대한 표현식을 얻을수 있다 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 3.  게이트레벨 최소화

3. 게이트레벨 최소화

Page 2: 3.  게이트레벨 최소화

Karnaugh Map 을 이용한 논리함수 간소화 방법

논리함수식을 간소화하기 위해 체게화된 방법 K-map 을 이용하여 함수 간소화 방법

수평 , 수직으로 인접한것들끼리 묶는다 겸치는부분이 있더라도 가능하면 크게 묶는다 1, 2, 4, 8, … , 2ⁿ 개씩 묶으면 각각 0, 1, 2, 3, … n 개의

literal 수를 줄일수 있다 “1” 을 묶으면 f 에대한 표현식 , “0” 을 묶으면 f′ 에

대한 표현식을 얻을수 있다 Sum of Product : “1” 을 묶어 f 에 대하여 표현한 식 입력수가 7 개 이상이면 다루기 어렵다

Page 3: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 2- 입력 맵

0 1

0x′y′(m

0)

x′y(m

1)

1xy′(m

2)

Xy(m

3)

xy

0 1

0 0 0

1 1 1

xy

0 1

0 0 1

1 0 1

xy

0 1

0 1 1

1 0 0

xy

0 1

0 1 0

1 1 0

xy

0 1

0 1 1

1 1 1

xy

0 1

0 0 0

1 0 0

xy

xy’ + xy = x(y+y’) = x

x’y + xy = y(x+x’) = y

x’y’ + x’y = x’(y’+y) = x’

x’y’ + xy’ = (x’+x)y’ = y’

x + x’ = 1 or y + y’ = 1

0

Page 4: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 2- 입력 맵

x y f

0 0 0

0 1 1

1 0 1

1 1 1

1. Bool 대수 이용

f = x’y + xy’ + xy = x’y + x(y’+y) = x’y + x = (x’+x)(y+x) = x+y

2. map 이용0 1

0 1

1 1 1

xy

f = x + y

Page 5: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 3- 입력 맵

00 01 11 10

0x′y′z’(m

0)

x′y′z(m

1)

x′yz(m

3)

x′yz’(m

2)

1xy′z’(m

4)

xy′z(m

5)

xyz(m

7)

xyz’(m

6)

xyz

y’ y

z

x’

x

Page 6: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 3- 입력 맵

00 01 11 10

0

1

xyz

00 01 11 10

0

1

xyz

00 01 11 10

0

1

xyz

00 01 11 10

0

1

xyz

00 01 11 10

0

1

xyz

00 01 11 10

0

1

xyz

Page 7: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 3- 입력 맵

x y z f

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 1

f = ∑(3 ,5 ,6 ,7)

00 01 11 10

0 11 1 1 1

xyz

f = xy + yz + xz

Page 8: 3.  게이트레벨 최소화

x y z f

0 0 0 0

0 0 1 0

0 1 0 1

0 1 1 1

1 0 0 1

1 0 1 0

1 1 0 1

1 1 1 1

f = ∑(2, 3, 4 ,6 ,7)

게이트 - 레벨 최소화 – 3- 입력 맵

00 01 11 10

0 1 11 1 1 1

xyz

f = y + xz’

Page 9: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 3- 입력 맵

(ex) f = A’C+A’B+AB’C+BC

00 01 11 10

0 1 11 1 1

ABC

f = ∑(1, 2, 4, 7)

F = A’B’C+A’BC’+AB’C’+ABC = A’(B’C+BC’)+A(B’C’+BC) = A’(B C)+A(B ᆞ C) = A’(B C)+A(B C)’ = A (B C) = A B C

+

+ ++ +

+ +

Page 10: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 4 변수 맵

00 01 11 10

00w’x’y’z’

(m0)

w’x’y’z

(m1)

w’x’yz

(m3)

w’x’yz’

(m2)

01w’xy’z’

(m4)

w’xy’z

(m5)

w’xyz

(m7)

w’xyz’

(m6)

11wxy’z’

(m12

)wxy’z

(m13

)wxyz

(m15

)Wxyz’

(m14

)

10wx’y’z’

(m8)

wx’y’z

(m9)

wx’yz

(m11

)wx’yz

(m10

)

wxyz y’ y

w’

w

x’

z

Page 11: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 4 변수 맵

00

01

11

10

00

01

11

10

wxyz

00

01

11

10

00

01

11

10

wxyz

00

01

11

10

00

01

11

10

wxyz

00

01

11

10

00

01

11

10

wxyz

00

01

11

10

00

01

11

10

wxyz

00

01

11

10

00

01

11

10

wxyz

Page 12: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 4 변수 맵00

01

11

10

00

01

11

10

wxyz

00

01

11

10

00

01

11

10

wxyz

00

01

11

10

00

01

11

10

wxyz

00

01

11

10

00

01

11

10

wxyz

00

01

11

10

00

01

11

10

wxyz

f = ∑(0,1,2,4,5,6,8,9,12,13,14)f = A’B’C’+B’CD’+A’BCD’+AB’C’

Page 13: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 4 변수 맵 (ex)

00

01

11

10

00

01

11

10

wxyz

00

01

11

10

00

01

11

10

wxyz

f = ∑(0,1,2,5,8,9,10)f = ∏(3,4,6,7,11,12,13,14,15)

Page 14: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 5 변수 맵

ABCDE

000 001 011 010 110 111 101 100

00A’B’C’D’E’

(m0)

A’B’C’D’E

(m1)

A’B’C’DE

(m3)

A’B’C’DE’

(m2)

A’B’CDE’

(m6)

A’B’CDE

(m7)

A’B’CD’E

(m5)

A’B’CD’E’

(m4)

01A’BC’D’E’

(m8)

A’BCDE’

(m9)

A’BC’DE

(m11

)A’BC’DE’

(m10

)A’BCDE’

(m14

)A’BCDE

(m15

)A’BCD’E

(m13

)A’BCD’E’

(m12

)

11ABC’D’E’

(m24

)ABC’D’E

(m25

)ABC’DE

(m27

)ABC’DE’

(m26

)ABCDE’

(m30

)ABCDE

(m31

)ABCD’E

(m29

)ABCD’E’

(m28

)

10AB’C’D’E’

(m16

)AB’C’D’E

(m17

)AB’C’DE

(m19

)AB’C’DE’

(m18

)AB’CDE’

(m22

)A’BCDE

(m23

)AB’CD’E

(m21

)AB’CD’E’

(m20

)

Page 15: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 5 변수 맵

000 001 011 010 110 111 101 100

00

01

11

10

ABCDE

000 001 011 010 110 111 101 100

00

01

11

10

ABCDE

000 001 011 010 110 111 101 100

00

01

11

10

ABCDE

000 001 011 010 110 111 101 100

00

01

11

10

ABCDE

Page 16: 3.  게이트레벨 최소화

000 001 011 010 110 111 101 100

00

01

11

10

ABCDE

000 001 011 010 110 111 101 100

00

01

11

10

ABCDE

000 001 011 010 110 111 101 100

00

01

11

10

ABCDE

000 001 011 010 110 111 101 100

00

01

11

10

ABCDE

게이트 - 레벨 최소화 – 5 변수 맵

Page 17: 3.  게이트레벨 최소화

000 001 011 010 110 111 101 100

00 0 1 3 2 6 7 5 4

01 8 9 11 10 14 15 13 12

11 24 25 27 26 30 31 29 28

10 16 17 19 18 22 23 21 20

ABCDE

000 001 011 010 110 111 101 100

00 1 1 1 1

01 1 1

11 1 1 1

10 1 1

ABCDE

게이트 - 레벨 최소화 – 5 변수 맵

f = A’B’E’ + BD’E+ACE

f = ∑(0,2,4,6,9,13,21,23,25,29,31)

Page 18: 3.  게이트레벨 최소화

000 001 011 010 110 111 101 100

00 0 1 3 2 6 7 5 4

01 8 9 11 10 14 15 13 12

11 24 25 27 26 30 31 29 28

10 16 17 19 18 22 23 21 20

ABCDE

000 001 011 010 110 111 101 100

00 1 1 1 1

01 1 1 1 1

11 1 1 1 1

10 1

ABCDE

게이트 - 레벨 최소화 – 5 변수 맵

f = A’B’E’ + BD’E+ACE

f = ∑(0,2,4,6,9,11,13,15,17,21,25,27,29,31)

Page 19: 3.  게이트레벨 최소화

게이트 - 레벨 최소화 – 5 변수 맵 Ex 3-7) 다음 Boole 함수를 간략화하라 .

F(A,B,C,D,E)=Σ(0,2,4,6,9,13,21,23,25,29,31)

F = A'B'E' + BD'E + ACE

Page 20: 3.  게이트레벨 최소화

합의 곱 (Product of Sum) 간략화

(1) “0” 을 묶어 f’ 의 Sum of Product 를 구한 후 (2) f’ 의 보수를 취하여 f 를 구한다

00

01

11

10

00

1 1 1

01

1

11

10

1 1 1

wxyz

f = ∑(0,1,2,5,8,9,10) 00

01

11

10

00

0

01

0 0 0

11

0 0 0 0

10

0

wx

yz

Sum of Product f = B’C’ + B’C’ + A’C’D

Product of Sum f’ = AB + CD + BD’ f = (f’)’ f = (A’+B’)(C’+D’)(B’+D)

Page 21: 3.  게이트레벨 최소화

Don’t-Care 조건

논리값이 규정 (“0” or “1”) 되어있지 않은 Minterm 의 집합 Don’t Care 조건항을 포함하여 묶어도 관계없다

00

01

11

10

00

x 1 1 X

01

X 1

11

1

10

1

wxyz

f = ∑(1,3,7,11,15)d = ∑(0,2,5)

f = yz + w’x’

00

01

11

10

00

x 1 1 X

01

X 1

11

1

10

1

wxyz

f = yz + w’z

or

Page 22: 3.  게이트레벨 최소화

00

01

11

10

00

1 1

01

X X 1 1

11

1 X

10

1

wxyz

f = ∑(1,3,6,7,11,15)d = ∑(4,5,14)

f = w’x + yz + w’z

00

01

11

10

00

1 1

01

X X 1 1

11

1 X

10

1

wxyz

f = yz + xy + w’z

Don’t-Care 조건

Page 23: 3.  게이트레벨 최소화

B8

B4

B2

B1

0 0 0 0

0 0 0 1

0 0 1 0

0 0 1 1

0 1 0 0

0 1 0 1

0 1 1 0

0 1 1 1

1 0 0 0

1 0 0 1

1 0 1 0

1 0 1 1

1 1 0 0

1 1 0 1

1 1 1 0

1 1 1 1

Don’t-Care 조건 (ex:7-Segment Display)

Don’t-Care 조건

Page 24: 3.  게이트레벨 최소화

NAND 와 NOR 의 구현

NAND 와 NOR 게이트가 집적회로로 제작 , 구현하기가 용이 Digital 회로는 대부분 NAND/NOR/NOT 게이트로 구성 NAND/NOR/NOT 게이트를 digital logic family 의 universal gate 라 함

AND 게이트의 구현 OR 게이트의 구현

((xy)’)’ = xy

(x’+y’)’ = xy

((x+y)’)’ = x+y

(x’y’)’ = x+y

Page 25: 3.  게이트레벨 최소화

NAND 와 NOR 의 구현

NAND 와 NOR 게이트로의 변환

(xyz)’

=

x’ + y’ + z’ = (xyz)’

(x + y + z)’ x’y’z’ = (x + y + z)’

=

Page 26: 3.  게이트레벨 최소화

NAND 회로의 구현[ 방법 1] 게이트의 변환을 이용

(ex) [ 방법 1] f = AB + CD+ E

Page 27: 3.  게이트레벨 최소화

NAND 회로의 구현

00 01 11 10

0 11 1

xyz

[ 방법 2] “1” 를 묶어 f 의 sum of product 를 구한후 , f 에 보수를 두번 취한다

f = x’y’z’ + xyz’ = ((x’y’z’+xyz’)’)’ = ((x’y’z’)’(xyz’)’)’

zyx

(ex) f = ∑(0, 6)

Page 28: 3.  게이트레벨 최소화

NAND 회로의 구현

00 01 11 10

0 0 0 01 0 0 0

xyz

[ 방법 3] “0” 을 묶어 f’ 의 sum of product 를 구한후 , 다시 보수를 두번 취하여 f’ 에 대한 NAND 회로로 구현한후 , 출력에 NOT 게이트를 연결

f’ = x’y + xy’+z = ((x’y+xy’+z)’)’ = ((x’y)’(xy’)’(z)’)’

zyx

f'

f

Page 29: 3.  게이트레벨 최소화

NAND 회로의 구현

00 01 11 10

0

1

xyz

(ex) f = ∑(0, 2, 4)

00 01 11 10

0

1

xyz

[ 방법 2] [ 방법 3]

Page 30: 3.  게이트레벨 최소화

NAND 회로의 구현

[ 방법 1] 게이트의 변환을 이용

Page 31: 3.  게이트레벨 최소화

NAND 회로의 구현[ 방법 2] “0” 를 묶어 f’ 의 sum of product 를 구한다 f’ 에 보수를 취하여 f 를 구한후 , f 에 보수를 두번 취한다

f’ = x’y+xy’+z(f’)’ = (x’y+xy’+z)’ = (x+y’)(x’+y)z’((f)’)’ = (((x+y’)(x’+y)z’)’)’ = ((x+y’)’+((x’+y)’+z)’

(ex) f = ∑(0, 6)

00 01 11 10

0 0 0 01 0 0 0

xyz

zyx

f

Page 32: 3.  게이트레벨 최소화

NAND 회로의 구현[ 방법 3] “1” 를 묶어 f 의 sum of product 를 구한 후 , f 에 보수를 취하여 f’ 에 대한 NOR 회로로 구현 후 출력에 NOT 게이트를 연결한다

00 01 11 10

0 11 1

xyz

f = x’y’z’+xyz’ f’ = (x’y’z’+xyz’)’ = (x’y’z’)’(x+y+z’)’ = (x+y+z)(x’+y’+z) = ((x+y+z)’+(x’+y’+z)’)’

zyx

f

f

Page 33: 3.  게이트레벨 최소화

패리티의 생성과 검사

P = x y z

Exclusive-OR 함수

Page 34: 3.  게이트레벨 최소화

Exclusive-OR 함수

C = x y z P