[Digital design] 함수의 보수와 Canonical form 사이의 변환

2019. 7. 3. 04:06전자공학과 전공과목/digital design-논리회로

학부생의 입장에서 내용을 정리하였으며 피드백을 환영합니다.

 


 

함수의 보수

보수는 앞에서 1의 보수, 2의 보수등을 들어보았을 것이다.  그것들의 보수의 의미도 보충해주는 수 이다. 집합으로 따지면 여집합을 나타낸다. 이번 포스팅에서는 함수의 보수를 다룰 것이다.

 

1. 함수의 보수란?

함수 F의 보수는 F'이다.

 

즉, F의 힘수값에서 1을 0으로, 0을 1로 바꾸어주면 된다. Truth table에서 예를 들어보자.

 

이렇게 함수값에서 0과 1을 서로 바꿔주면 보수 관계에 있는 함수이다.

 

2. 함수의 보수 만들기

함수의 보수를 만들기 위해서는 앞에서 배운 드모르간 법칙을 반드시 알아야한다.

 

(x+y)'=x'y'

(xy)'=x'+y'

 

드모르간 법칙은 정말 중요한 법칙이므로 꼭 알아두어야한다. 보수를 취한는 방법은 2가지가 있다.

 

1. 드모르간 법칙을 여러번 쓰기

2. 쌍대를 취하고 각 literal(리터럴)의 보수를 취한다.

 

다음의 함수를 2가지 방법으로 보수를 취해보겠다.

F = (x'yz'+xy)z

1. 드모르간 법칙 여러번 쓰기

드모르간 법칙을 3번 써서 다음과 같은 식을 얻었다.

 

2. 쌍대를 취하고 각 리터럴에 보수 취하기

 쌍대란 AND연산자를 OR연산자로 바꾸고 0을 1로, 1을 0으로 바꿔주는 것이다. 하지만 우리가 전개할 식에는 0이나 1이 포함되있지 않으므로 AND와 OR연산자만 바꿔주면 된다.

2가지 방법을 모두 알아야한다. 2번 방법은 유용하게 써먹길 바란다.

 

Canonical form사이의 변환

이번 내용도 역시 드모르간 법칙이 필수이다. 드모르간 법칙에 의해서 다음과 같은 식이 얻어진다.

 

mj'=Mj

 

위에서 배운 보수의 개념과 minterm과 maxterm의 관계를 나타낸 다음의 식을 이용하면 canonical form사이의 변환을 이해할 수 있다.

 

F = x'y'z+x'yz'+xy'z'+xyz

 

위의 불 함수로 예를 들어보자. 이번에도 Truth table과의 관계를 잘 보도록 하자.

여기서 F에 보수를 취하면

F를 얻기위해 또 한번 보수를 취해보자. 드모르간 법칙과 위에서 알려준 공식을 쓰면 손쉽게 유도할 수 있다.

이것을 Truth table에 나타내보자.

결국 다음과 같이 canonical SOP를 canonical POS로 변환했다.

 

F=(x+y+z)(x+y'+z')(x'+y+z')(x'+y'+z)

 

결과를 간단히 모식도로 정리하면 다음과 같다.

이 게시글에서는 시그마 쪽을 포스팅했다. 파이쪽은 여러분이 직접 해보길 바란다.

 

여기까지는 Truth table을 보고 canonical SOP와 canonical POS를 알아내는 법을 배웠다. 다음 포스팅에서는 이렇게 얻어진 불 함수를 간소화 하는 법을 배울 것이다.