제 3 장 카르노 맵 ( K-map : Karnaugh Map ). 카르노 맵 소개 카르노 맵을 사용한 최소 곱의 합 식 무정의 (Don ’ t Care) 합의 곱 5 변수와 6 변수 맵 다중출력 문제. 카르노 맵 (K-map: Karnaugh map). 각 정사각형은 함수의 최소항들을 나타낸다. Plotting Functions. 3 변수 맵. 예제 3.1. m 0 +m 1 : A B C + A B C =A B
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation
Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement.Téléchargez la présentation en cliquant sur ce lien.Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.
F = AB'(C' + C) + AC(B' + B) + A'BC' = AB'C' + AB'C + AB'C + ABC + A'BC' = m4 + m5 + m5 + m7 + m2 = m2 + m4 + m5 + m7 (중복 제거 및 순서화) 예제 3.3 F = AB' + AC + A'BC' • 곱의 합으로 표현되는 함수식을 맵에 나타내는 방법
내포항 (Implicant) • 함수에 대한 곱의 합 식에서 사용되는 곱 항 • 임의의 곱의 합식은 내포항들의 합 • 내포항은 1, 2, 4, 8, ..(2의 지수승) 개의 1로 구성
내포항 예 최소항2개로 구성된 그룹4 개로 구성된 그룹 A'B'C'D' A'CD CD A'B'CD BCD A'BCD ACD ABC'D' B'CD ABC'D ABC' ABCD ABD AB'CD ------------------------------------------------------- 총 14개의 내포항
주 내포항(Prime Implicant : PI) • 대수적 의미 • 임의의 문자 변수가 주 내포항에서 제거되면 더 이상 내포항이 아닌 내포항을 의미 • A'B'C'D'는 B'C'D', A'C'D', A'B'D', A'B'C'가 내포항이 아니기 때문에 주 내포항
Cover • F에 대한 임의의 곱의 합 식은 내포항들의 합 • F의 각 1들은 적어도 한 개의 내포항에 포함되도록 충분한 내포항들을 선택해야 한다. • 이런 곱의 합식을 F 의 커버(cover)라 한다. • 내포항 ABD는 m13과 m15를 커버
예제 3.4 • 함수 G • 3 개의 최소항 -> 적어도 2개의 항이 필요 • G = ABD + ABC • 함수 H • 최소식 H = BC'D + ABC • 내포항ABD는 다른 항에 의해 커버되는 1만을 커버
ABC' A'B'C'D' CD 필수 주 내포항 (Essential Prime Implicant : EPI) • 다른 주 내포항에 포함되지 않는 적어도 1개의 1을 포함하는 주 내포항이다.A'B'C'D', ABC', CD는 필수 주 내포항 • 필수(Essential) : 주어진 함수에 대한 최소화된 곱의 합 형태의 • 어떤 수식에도 이 주 내포항은 포함되어야 한다는 뜻
카르노 맵을 사용한 최소 곱의 합 식 • N-변수 맵에서, 각각의 사각형은 n 개의 인접한 사각형을 가짐 • 고립되었다는 것은 1을 갖는 인접한 정사각형들의 수가 적은 (또는 없는) 것을 의미한다. 3, 4변수 맵의 인접한 사각형
맵 방법 1 • 모든 필수 주 내포항들을 찾음. • 맵 상에서 필수 주 내포항들을 묶음 • 필수 주 내포항으로 만드는 최소항들에 * 표시를 한다. • 일반적으로 가장 고립된 1들로부터 시작하는 것이 빠르다. 2. 함수를 커버하는 '충분한' 다른 주 내포항들을 찾음.(2 가지 기준) • 선택된 주 내포항에 의해 될수록 많은 새로운(아직 커버되지 않은) 1을 커버하는 주 내포항을 선택. • 고립되고 커버되지 않은 1을 남겨놓지 않도록 함.
예제 3.6필수 주 내포항과 주 내포항에 의해 커버 • 필수 주 내포항 • 가장 고립된 m11 -> wyz • m0,m12,m8 ->y'z' • 주 내포항 • 남은 2개의 1은w'xz 에 의해 커버 • 주 내포항 w'xy', xyz는 새로운 1 • 을 커버하지 않기 때문에 중복 • 최소곱의 합 식 • f = y'z' + w y z + w'xz
예제 3.10특이한 경우 • 최소 해 • G = A'BC' + A'CD + ABC + AC'D
예제 3.11여러 개의 최소 해 g(w, x, y, z)= m(2, 5, 6, 7, 9, 10, 11, 13, 15) g = xz + wz + … g = xz + wz + w'yz' + wx'y g = xz + wz + w'yz' + x'yz' g = xz + wz + x'yz' + w'xy
예제 3.12다소 복잡한 경우 • F = A'C'D' + AC'D + A'CD + ACD' + …(가운데 맵) • 커버되지 않은 3개의 1: B'D', AB', B'C중 임의의 2개로 커버 • 최소 식 F = A'C'D' + AC'D + A'CD + ACD' + B'D' + AB' F = A'C'D' + AC'D + A'CD + ACD' + B'D' + B'C F = A'C'D' + AC'D + A'CD + ACD' + AB' + B'C
예제 3.13여러 개의 최소 해 • m10과m15 • f = b'd + bd + … • 커버되지 않은 1: 3개 • 최소 해: 4가지
맵 방법 2 • 모든 주 내포항들을 원으로 묶음 • 모든 필수 주 내포항들을 선택 • 단지 한 번 원으로 묶인 1을 찾음으로써 쉽게 선택이 가능 • 맵 방법 1에 기술한 것처럼 충분한 다른 주 내포항들을 선택 • 이들 주 내포항들은 이미 단계 1에서 지정됨
예제 3.15복잡한 경우 • 가운데 맵 : 모든 주 내포항 • m3와 m5 -> A'B' 와 C'D 필수 주 내포항 • 남은 4개의 1을 커버: 적어도 2개 이상의 항이 필요 • B'D'는 2개의 새로운 1을 포함 • B'C' 는 단지 1개를 포함 • 남은 1을 커버하기 위하여 ABC가 필요 • 최소 해 • F = A'B' + C'D + B'D' + ABC
예제 3.16필수 주 내포항의 cover가 작은 경우 G(A, B, C, D) = m(0, 1, 3, 7, 8, 11, 12, 13, 15) • 필수 주 내포항 : YZ • 5개의 1이 남음 • 주 내포항: W'X'Z, X'Y'Z', WXY', • W'X'Y', WY'Z' , WXZ • 적어도 3개의 항이 더 필요
예제 3.16계속 • 최소해 • F = YZ + W'X'Z (dotted circle) + X'Y'Z' + WXY' • F = YZ + W'X'Y' + X'Y'Z' + WXY' • F = YZ + W'X'Y' + WY'Z' + WXY' • F = YZ + W'X'Y' + WY'Z' + WXZ
예제 3.17(계속) • a'c'd' 와abd를 선택하는 경우 (가운데 맵) 5개의 항 • a'c'd' 와 a'b'd'를 선택하는 경우 (가운데 맵)->5개의 항 • a'b'd' 로 시작 (세번째 맵) • f = a'b'd' + a'bc' + abd + ab'c
예제 3.18필수 주 내포항이 없고 복잡한 경우 G(A, B, C, D) = m(0, 1, 3, 4, 6, 7, 8, 9, 11, 12, 13, 14, 15) • m0를 커버하는 C'D' 로 시작, 그리고 B'D, BC • m13을 커버하는 3가지(AB 또는AC' 또는AD) • F = C'D' + B'D + BC + { AB 또는AC' 또는AD}
예제 3.18(계속) • m0를 커버하는B'C' 로 시작하는 경우, BD', CD • 앞에서 처럼m13을 커버하는 3가지(AB 또는AC' 또는AD) • 총 6 개의 최소 해가 존재
예제 3.19 • 1개의 필수 주 내포항과 10개의 1이 남음 • 모든 주 내포항 : 가운데 맵 • 주 내포항들을 2개씩 그룹핑함 • 7 개의 항 이내로 간소화가 불가능하고, 32개의 다른 해가 존재 f = a'b'c'd' + a'cd + bc'd + a b'd + a bc' + a'bc + a cd' = a'b'c'd' + a'cd + bc'd + ab'd + abd' + bcd' + ab'c = …
Don’t Care (무정의) • 무정의를 가진 함수에 대한 최소 해를 구하는 방법 • 정의 변경 • 주 내포항 : 다른 더 큰 사각형에 포함되지 않은 1, 2, 4, 8, .. 개의 1 또는 ×의 사각형이다. - ×(무정의)도 1과 같이 동등하게 다룬다. • 필수 주 내포항 : 다른 주 내포항에 의해 커버되지 않는 1을 적어도 한 개를 커버하는 주 내포항이다. 무정의(×)는 주 내포항을 필수로 만들지는 않는다. • 최소 해를 구할 때 무정의 중에 어떤 것은 포함되고 어떤 것은 포함되지 않음
예제 3.20 F(A, B, C, D) = m(1, 7, 10, 11, 13) + d(5, 8, 15) • 최소해 (가운데 맵) • F = BD + A'C'D + AB'C • 모든 무정의를 1로 고려하는 경우 (오른쪽 맵) • F = BD + A'C'D + AB'C + AB'D' • F = BD + A'C'D + ACD + AB'D' • 모든 무정의를 ‘0’으로 고려한 경우 • F = A'B'C'D + A'BCD + ABC'D + AB'C
예제 3.21 모든 해의 대수적 표현이 동일하지 않은 경우 • 2 개의 필수 주 내포항 x'z와 w'yz(가운데 맵) • 4 개의 무정의로 이루어진 w'x'는 주 내포항이지만, 필수는 아님 • 모두 무정의로만 이루어진 주 내포항은 사용할 수 없음 • 최소화 해 g1 = x'z + w'yz + w'y'z' + wxy' (m0 = 1) g2 = x'z + w'yz + xy'z' + wxy' (m0 = 0) g3 = x'z + w'yz + xy'z' + wy'z (m0 = 0) g2와g3 는 대수학적으로 같은 함수이지만 g1 과는 다르다.
예제 3.22 • 첫번째 맵 : 유일한 필수 주 내포항 c'd'와 ab, 3 개의 1이 남음 • 두번째 맵 : b'd'를 이용한 2개의 해 • 세번째 맵 : ad'를 이용한 해 g1 = c'd' + ab + b'd' + a'cd g2 = c'd' + ab + b'd' + a'b'c g3 = c'd' + ab + ad' + a'b'c • 동일성을 검증 : 무정의들이 처리된 값을 표로 구현 • g1≠ g2 = g3
맵 방법 3 1. 맵 방법1또는 2를 사용하여 모든 필수 주 내포항을 찾음 2. 필수 주 내포항에 포함되는 모든 1들을 X 로 대치 포함되지 않고 남아있는 1 을 구별하기 위함 3. 맵 방법1과 2 에서처럼 다른 주 내포항들을 충분히 선택
합의 곱 • 합의 곱 형태의 최소화 • 함수의 보수를 맵에 표현 • 함수에 대한 맵이 이미 존재하는 경우, 모든 0을 1로, 모든 1을 0으로 대치. X 는 변환하지 않음 • 앞에서 사용한 방법을 이용하여 함수의 보수에 대한 최소화 곱의 합 식을 찾음 • 합의 곱 식을 만들기 위하여, 2 에서 구한 곱의 합 수식에 보수를 취함 (드모르강의 정리 (대수적 속성 P11)을 이용)
예제 3.25합의 곱 f (a, b, c, d) = m(0, 1, 4, 5, 10, 11, 14) f '(a, b, c, d)= m(2, 3, 6, 7, 8, 9, 12, 13, 15) • f 에 대한 최소 합의 곱 식 • f' = ac' + a'c + abd • f = (a'+c)(a+c')(a'+b'+d') • f' = ac' + a'c + bcd • f = (a'+c)(a+c')(b'+c'+d') • f 에 대한 최소 곱의 합 식 • f = a'c' + ab'c + acd'
5, 6 변수 맵 • 5변수 맵은 25 = 32개로 구성 • 16개의 정사각형을 2개층(layer)구조로 나타냄 • 5변수 맵(2-layer)
1들 중에서 인접한 층에서 대응하는 정사각형에 1이 없는 것 • 이러한 1을 포함한 주 내포항은 그 층에만 속하게 된다(따라서, 4변수 맵 문제가 된다.). • 이와 같은 예로, m4, m9, m16, m28의 경우가 있다 • F = A'B'C+A'BE+AB'C'E' +ABCD'E' +…