1. 4변수 카르노 도표
- 네 개의 변수를 가지는 부울 함수 -> 16개의 최소항
- 각각의 정사각형은 하나의 최소항에 대응된다.
WX \ YZ 00 01 11 10
00
01
11
10
이렇게 순서가 바뀌어 있는 것에 유념
1) 하나의 정사각형 -> 네 개 문자의 곱항으로 표시
2) 두 개의 정사각형 -> 3개
3) 네 개 -> 2개
4) 여덟 개 -> 1개
5) 열 여섯 개 -> 상수 1
2의 n승으로 묶어진다.
F(W, X, Y, Z)= Σm(1,3,4,5,11,12,13)의 간소화를 해보자.
1) 4변수 기본 도표를 작성한다.
2) 주어진 부울함수에서 최소항을 해당 사각형에 1 로 표기한다.
3) 묶는 규칙을 고려하여 인접 사각형끼리 묶는다.
4) 간소화된 각 항을 논리합(OR)으로 결합한다
2. 무관 조건
어떤 회로를 설계할 때 전혀 신경쓰지 않아도 되는 조건들이 발생
=> 이런 조건들을 고려하면 보다 간소화된 부울 함수를 구할 수 있다.
무관조건(don'tcare condition)
- 입력변수들의 조합에 따라 함수값이 발생하지 않는 경우
- 함수값이 0과 1중 어떤 출력값으로 나와도 무관한 경우
예시)
- BCD 코드의 경우
-> 2진수 16개 조합중 10개만 사용 (0 ~ 9)
-> 나머지 조합 (11 ~ 15)는 사용하지 않는다.
-> 따라서 BCD 코드를 사용하는 논리회로는 6개 조합은 발생하지 않는다는 가정하에 동작
-> 결국 6개 조합에 무관하게 동작하는 논리회로 구성
- 부울함수에서 무관조건의 표현
"d"라고 쓴다.
-> d(A, B, C) = ∑m(0, 1, 7) => 0, 1, 7항은 어떤 값이 나와도 신경쓰지 않겠다
=> 묶음을 표현할 때 더 쉽게 표현 가능
카르노 도표에서 무관 조건의 표현
- "x"로 표시
=> 0 아니면 1로 사용하여 인접사각형 선택시 사용
만약 무관조건이 없다면 4개 항이 다 각각 나온다.
1) 4개 묶고
2) (2,4), (3,4) 묶고
3) (1,3), (4,4) 묶고
4) 단독 (1,1)
=>
3. 기타 카르노 도표
XOR나 ~XOR은 어떻게 표시할 것인가?
XOR 카르노 도표
3변수 XOR의 논리식 =
3변수는 4개의 최소항이 나오게 되는데
- 3변수 XOR : 한 변수가 1 이거나 또는 세 변수 모두가 1 인 경우
- 2변수 XOR : 오직 한 변수만 1 인 경우
- 다중 변수 XOR : 홀수개의 변수가 1 이어야 한다.
- 따라서 다중변수 XOR연산을 홀수함수(odd function)라 한다.
이런 경우에 카르노 도표는 ?
묶음이 전혀 나타나지 않는다.
4변수 익스클루시브OR => 어느 것 하나 인접하지 않는 홀수 함수 형태
4. NAND 게이트와 NOR 게이트를 이용한 논리회로 구현
=> 둘 중에 하나만 써서 회로를 구현한다. 두가지 혼용 x
=>왜 그렇게 할까?
- NAND, NOR 게이트가 전자회로로 제작이 용이
- 회로구성이 동일 게이트로 구성되는 것이 유리하기 때문
=> 동일 게이트로 구현하는게 더 유리
변환 방법
1) X => NOT => ~X
2) XY => NOT 붙여주고 한번더 NOT 연산 => ~(~(XY))
3) X+Y => OR에 NOT을 넣어주고자 한다면, 앞에다가 NOT을 넣어주기
NAND => ANT-NOT = NOT-OR
임의의 부울함수를 NAND 게이트만을 이용한 2단계 구현과정
1 간소화하여 곱의 합 형태로 나타낸다.
2. 2개 이상의 입력들의 곱항을 NAND 게이트로 나타내고, 하나의 입력의 곱항은 NOT 게이트로 나타낸다.
3.2 NAND와 NOR게이트를 이용한 구현방법
모든 회르를 다음과 같이 NAD로만 바뀐 것으로 그릴 수 있다.
NOR = OR의 반대를 의미
이것의 반대는 NOT AND
다단계 구현 정리
1 모든 OR 게이트를 NOR로 만들어야 하는 것이므로 OR 기호의 뒤에다가 NOT 붙여준다.
2 모든 AND 게이트를 NAND로 만들어야 하는 것이므로 AND기호 앞에다가 NOT을 붙여준다.
3 논리도에서 모든 작은 원을 점검하여, 동일 선상의 두 원은 서로 상쇄시키고, 상쇄되지 않은 원은 NOT을 추가시키거나, 입력변수에 보수를 취한다.
앞에다가 NOT을 붙인 것에 대해서는 변수에 NOT을 취해주면 된다.
참고자료: 디지털논리회로(김형근, 손진곤 공저, KNOU press 출판)
'CS > 디지털논리회로' 카테고리의 다른 글
코드 변환기, 패리티 발생기/검사기, BCD-세븐 세그먼트 표시기, 인코더 (0) | 2023.06.14 |
---|---|
MSI를 이용한 조합논리회로, 디코더, 멀티플렉서, 디멀티플렉서 (1) | 2023.06.14 |
조합논리회로의 분석과 설계, 기본 연산회로, 가산기, 감산기, 가감산기 (0) | 2023.06.14 |
부울함수의 간소화, 카르노 도표 (0) | 2023.06.14 |
부울함수의 정규형 및 표준형, 최소항의 합, 최대항의 곱 (0) | 2023.06.14 |