-
[문제풀이] 다음 식을 카르노 맵을 이용하여 나타내시오.전자계산기조직응용기사/실기 필답형 기출문제 해설 2022. 4. 5. 13:34반응형
전자계산기조직응용기사 실기 필답형 기출문제 (논리회로-5변수 카르노 맵) - 2020년3회
다음 식을 카르노 맵을 이용하여 나타내시오.
F(A, B, C, D, E) = ∑(4, 5, 6, 7, 9, 11, 13, 15, 21, 29)
- 문제 해설 -
어느 함수의 진리표(truth table)는 유일하지만, 그것을 Boole 함수로 표현하는 방법은 정말 다양합니다.
상황에 따라 의도를 가지고 Boole 함수로 표현하는 경우(예: 범용 NAND게이트)도 있지만,
표준적인 간략화된 식은 곱의 합(sum of product) 또는 합의 곱(product of sum)으로 나타내며, 이때 유용하게 사용되는 것이 카르노 맵(Karnaugh map)입니다.
이번 문제 풀이는 4 변수 맵핑을 이해하고 있다는 전제하에 서술하겠습니다.
본문제에서는 주어진 최소항의 합의 식에는 변수가 5개가 있습니다. 4개보다 많은 변수를 갖는 맵은 사용하기가 간단하지 않습니다. 5 변수 맵은 32개의 네모꼴이 필요하고, 6변수 맵에는 64개의 네모꼴이 필요하며, 이를 조합하기 위하여 기하학적 요소도 복잡하게 됩니다.
그래도 5변수 맵은 할만하니 차근차근 살펴보겠습니다.
5변수 맵도 4 변수 이하 맵들처럼 절차는 동일합니다.(곱의 합일 경우)
1. 진리표를 만든다.
2. 진리표를 토대로 맵을 만든다.
3. 맵 안의 인접한 '1'을 묶어 최소항들을 구한다.
위 절차 중 맵핑에 익숙해지면, ∑ 기호로 표현된 최소항 식이 주어졌을 경우 1번 절차(진리표 만들기)는 생략이 가능합니다.
그럼 문제를 풀어보겠습니다.
F(A, B, C, D, E) = ∑(4, 5, 6, 7, 9, 11, 13, 15, 21, 29) 문제에서 주어진 위의 '최소항의 합' 식으로 바로 맵을 그릴 수 있지만, 설명을 위해 진리표로 나타내면 다음과 같습니다.
변수가 5개면 위와 같이 32(2의 5승)가지의 경우가 정의된 진리표가 만들어집니다.
이를 카르노 맵으로 표현하려면, 하나의 변수를 기준으로 그 변수가 0일 때의 경우와 1일 때의 경우로 나누어서 맵핑을 해야 합니다. 위와 같이 정렬되어 있는 진리표의 경우 보통 변수 A를 기준으로 분리합니다. 그럼 진리표도 나누어 보겠습니다.
위의 표의 좌측은 변수 A가 0일 경우, 우측은 변수 A가 1일 경우로 나누어 보았습니다.
그럼 위 두 개의 표를 A를 제외한 나머지 4개의 변수로 4 변수 카프노 맵을 그려보면 다음과 같습니다.
위의 맵 안에서 인접한 '1'의 값을 묶어 보겠습니다.
이렇게 맵핑을 할 때, 5 변수 맵은 4 변수 맵과는 다르게 기하학적으로 접근을 해야됩니다. 위에서 파란색으로 묶인 부분은 두 개의 맵이 공통된 부분입니다. 3차원으로 표현을 해보겠습니다.
위 그림처럼 5변수 맵은 2개의 4변수 맵을 겹쳐놓았다고 생각하시면 됩니다. 그래서 두개의 맵의 같은 위치는 인접한 값으로 4개의 항을 묶어서 최소항으로 만드는 것입니다. 다시 말해, 최소항 m5, m13, m21, m29는 인접해 있는 값이기 때문에 묶을 수가 있고, A가 0일 때와 1일 때 모두 존재하므로 A값은 상쇄됩니다.
그래서, 본문제의 정답은 그림과 같이 F = A'B'C + CD'E + A'BE 입니다.
https://youtube.com/playlist?list=PLboXycXmAIDt4ObBRPVj29BuD2d27oRnO
반응형'전자계산기조직응용기사 > 실기 필답형 기출문제 해설' 카테고리의 다른 글
[문제해설] 다음 논리식 X = AB + CD의 회로를 2입력 NAND 게이트 3개로 구성하시오. (0) 2022.04.26 [문제해설] 다음 2진수 값을 부분적으로 반전하고자 할 때 사용되는 논리게이트와 마스크 비트 값을 쓰시오. (0) 2022.04.19 [문제해설] 현재 CPU와 스택의 상태가 다음과 같다면 CPU가 스택에서 1바이트 데이터를 독출(POP)한 후 SP의 내용은 무엇인가? (0) 2022.03.20 [문제해설]다음 코드의 출력 결과를 쓰시오. (0) 2022.02.27 [문제해설] 라운드로빈 알고리즘을 사용하여 A, B, C, D, E 작업을 실행 시킬 때 대기시간은 다음과 같다. 평균 대기시간은 얼마인가? (0) 2022.02.22