You are on page 1of 17

카르노 맵

카르노 맵

 카르노 맵
 1953 년 , 모리스 카르노 (Maurice Karnaugh)
 함수에서 사용될 최소항들을 표의 각 칸 안에 표시
 변수의 개수가 2 개 , 3 개 , 4 개인 경우에 주로 사용
 셀 (cell) : 각각의 네모칸 , 진리표의 각 행과 일대일 대응관계를 가짐 .
 좌측 상단에는 사용되는 입력변수를 , 좌변과 상변에 있는 2 진수는 해당변수의
값을 뜻함 .
A B C f
0 0 0 1 BC
0 0 1 1 A 00 01 11 10
0 1 0 0
0 1 1 0
0 1 1
1 0 0 0
1 0 1 0 1 1 1
1 1 0 1
1 1 1 1
카르노 맵을 이용한 간소화 방법

① 1, 2, 4, 8, 16 개로 그룹을 지어 묶는다 .
② 바로 이웃해 있는 항들끼리 묶는다 .
③ 반드시 직사각형이나 , 정사각형의 형태로 묶어야만 한다 .
④ 가능한 크게 묶는다 .
⑤ 묶인 부분에서 상태가 변하지 않는 항만 적는다 .

•중복하여 묶어도
된다 .

 간소화 예
a b f b 0 1
0 0 1 a f = ∑ m(0,1,2) = ab + ab + ab
0 1 1
0 1 1 = a (b + b ) + b ( a + a ) = a ⋅ 1 + b ⋅ 1
1 0 1 1 1
1 1 0 = a+b
f = a+b
예 ) 카르노 맵을 이용한 간소화

다음 진리표를 카르노맵을 사용하여 간략화 하시오 .

a b f

0 0 1
0 1 1
1 0 0
1 1 0
3 변수 카르노 맵

 3 변수 카르노 맵 표현 방법

a b c 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
3 변수 카르노 맵
 간소화 예
BC BC
A 00 01 11 10 A 00 01 11 10
0 1 1 0 1 1

1 1 1 1 •양쪽 끝은 연
결되어 있다 .
F = A B + AB F = AC

BC BC
A 00 01 11 10 A 00 01 11 10
0 1 1 0 1 1 1 1

1 1 1 1

F =C F=A
BC
A 00 01 11 10 •양쪽 끝은 연
0 1 1 결되어 있다 .

1 1 1

F =C
3 변수 카르노 맵 ( 간소화 예 )

•가능한 크
게 묶는다 .

BC BC
A 00 01 11 10 A 00 01 11 10
0 1 1 1 1 0 1 1 1 1

1 1 1 1 1 1

F = A+C F = AC + C
3 변수 카르노 맵 ( 간소화 예 )

a b c f
f = ∑ m(3,5,6,7) = ab + bc + ac
0 0 0 0
0 0 1 0
bc
0 1 0 0 a 00 01 11 10
0 1 1 1 0 1
1 0 0 0
1 0 1 1
1 1 1 1
1 1 0 1
1 1 1 1
•세 번 중복하여
묶었다 .
4 변수 카르노 맵

a b c d f
0 0 0 0 1
0 0 0 1 0
•상하 좌우는
0 0 1 0 0
연결되어 있다
0 0 1 1 0
.
0 1 0 0 1
0 1 0 1 0
0 1 1 0 0
0 1 1 1 0
1 0 0 0 0
1 0 0 1 0
1 0 1 0 1
1 0 1 1 0
1 1 0 0 0
1 1 0 1 0
1 1 1 0 0
1 1 1 1 0
4 변수 카르노 맵 ( 여러가지 예 )

CD CD CD
AB 00 01 11 10 AB 00 01 11 10 AB 00 01 11 10
00 00 00 1
01 1 1 01 01
11 11 1 1 11
10 10 10 1

F = ABC F = AB D F = BC D

CD CD CD
AB 00 01 11 10 AB 00 01 11 10 AB 00 01 11 10
00 1 00 00 1 1

01 1 1 1 01 1 1 01 1 1

11 1 1 1 11 1 1 11 1 1

10 1 10 10 1 1

F = C D + BC F = BD
F = BD + B D
4 변수 카르노 맵 ( 여러가지 예 )

CD CD CD
AB 00 01 11 10 AB 00 01 11 10 AB 00 01 11 10
00 1 1 00 1 1 1 1 00 1 1 1 1
01 1 1 01 01 1 1 1 1

11 1 1 11 11 1 1

10 1 1 10 1 1 1 1 10 1 1

F =C F=B F = A+C

CD CD CD
AB 00 01 11 10 AB 00 01 11 10 AB 00 01 11 10
00 1 1 1 1 00 1 1 1 1 00 1 1 1 1
01 1 1 01 1 1 01 1 1
11 1 1 1 1 11 1 1 11 1 1
10 1 1 10 1 1 1 1 10 1 1 1

F = A B + AB + C D + CD F = B+D F = A B + A D + AC + BC
4 변수 카르노 맵 ( 여러가지 예 )

CD
CD AB 00 01 11 10
AB 00 01 11 10 00 1 1 1
00 1 1 1
01 1 1
01 1 1
11 1 1
11
10 1 1
10 1 1

F = ABC + ABC + BC D + BCD F = ABC + ABC + BD + CD

CD
AB 00 01 11 10
00 1 1 1

01 1 1 1
11 1 1 1

10 1 1 1

F = AC + AC + D
선택적 카르노 맵

yz yz
x 00 01 11 10 x 00 01 11 10
0 1 1 0 1 1

1 1 1 1 1 1 1 1

f = x y + x y + xz f = x y + x y + yz

CD CD
AB 00 01 11 10 AB 00 01 11 10
00 1 1 00 1 1
01 01
11 1 1 1 1 11 1 1 1 1
10 1 10 1

F = AB + ABD + ACD F = AB + A BD + BCD


논리식을 카르노 맵으로 간략화

다음 논리식을 카르노 맵으로 작성하고 간소화 . F = A + B + A BC D

CD CD CD
AB 00 01 11 10 AB 00 01 11 10 AB 00 01 11 10
00 00 00 1
01 01 1 1 1 1 01
11 1 1 1 1 11 1 1 1 1 11
10 1 1 1 1 10 10

A B A BC D
CD
AB 00 01 11 10
00 1
01 1 1 1 1
F = A + B + CD
11 1 1 1 1
10 1 1 1 1
다음 논리식을 카르노 맵으로 작성하고 간소화 하시오 .

F = AB + BC + ACD + AB D + AC D
무관조건 (don’t care condition)

F ( x, y , z ) = x F ( x, y , z ) = z
x y z F x y z F
0 0 0 0
yz 0 0 0 0 yz
입력 변수 출력 변수 00 01 11 10
0 0 1 0
x 0 0 1 0 x 00 01 11 10
x 0 0 1 1
0 1 0 0 0 1 0 0
y F 0 1 1 0 1 1 1 1 1 0 1 1 1 1 d d d
논리회로
z 설계 1 0 0 1 1 0 0 1
1 0 1 1 1 0 1 d
1 1 0 1 무관 조건 1 1 0 d
(don’t care)
1 1 1 1 1 1 1 d

(a) 회로 블럭도 (b) 진리표와 카르노 맵 (c) 무관 조건에 대한


진리표와 카르노 맵
다음 논리식을 카르노 맵으로 작성하고 간소화 .

F = AB + BC + ACD + AB D + AC D

CD CD CD
AB 00 01 11 10 AB 00 01 11 10 AB 00 01 11 10
00 00 1 1 00

01 01 01

11 1 1 1 1 11 11 1

10 10 1 1 10 1

AB BC ACD

CD CD CD
AB 00 01 11 10 AB 00 01 11 10 AB 00 01 11 10
00 00 00 1 1
01 01 01
11 1 1 11 1 11 1 1 1 1
10 10 1 10 1 1

AB D AC D F = AB + BC