본문 바로가기
  • optimuslee
디지털논리회로

2.4 SOP과 POS 그리고 카르노 맵

by OptimusLee 2020. 4. 6.
728x90
반응형

회로를 설계할 때 쓰는 표현 기법과 수단에 대해 알아보도록 하겠다. 원하는 결과물을 만들 수 있도록 중간 과정을 간략하게 할 수 있는 방법에 대해 소개하도록 하겠다. 

 

 

 

 

SOP

 

sum of product 의 약자로 곱의 합이라는 의미이다. 곱으로 표현한 다음 그 결과 값을 더해주어 식으로 표현하는 방법이다. 예를 들어 설명하도록 하겠다. 

 

 

 

A B C F F'
0 0 0 0   ->m0 1
0 0 1 1   ->m1 0
0 1 0 0   ->m2 1
0 1 1 1   ->m3 0
1 0 0 0   ->m4 1
1 0 1 1   ->m5 0
1 1 0 1   ->m6 0
1 1 1 1   ->m7 0

 

 

 

A, B, C가 입력 값이고 F는 결과 값이며 F'는 결과 값을 반대로 바꾼 값이다. 

 

위와 같이 TRUTH Table이 주어졌다고 가정했을 때, SOP로 표현하는 방법은 다음과 같다. 

 

우선 결과 값에서 1로 표시된 부분만 신경쓰면 된다. 

 

결과 값이 1이 나오게 한 입력 값을 곱해서 모두 더해주면 된다. 

 

입력 값이 0이었다면 A'와 같이 표기하면 되고 입력 값이 1이었다면 A와 같이 표현하면 된다. 

 

 

 

 

F(A,B,C,D)=$\sum$ m(1,3,5,6,7)=A'B'C+A'BC+AB'C+ABC'+ABC

 

 

 

 

POS

 

product of sum의 약자로 합의 곱이라는 의미이다. 합으로 표현한 다음 그 결과 값을 더해주어 식으로 표현하는 방법이다. 

 

 

 

A B C F F'
0 0 0 0   ->m0 1
0 0 1 1   ->m1 0
0 1 0 0   ->m2 1
0 1 1 1   ->m3 0
1 0 0 0   ->m4 1
1 0 1 1   ->m5 0
1 1 0 1   ->m6 0
1 1 1 1   ->m7 0

 

 

 

 

위와 같이 TRUTH Table이 주어졌다고 가정했을 때, POS로 표현하는 방법은 다음과 같다.

 

우선 결과 값에서 F'=1으로 표시된 부분만 신경쓰면 된다. 혹은 F=0으로 표시된 부분만 신경쓰면 된다. 

 

결과 값이 F=0이 나오게 한 입력 값을 더해서 곱해주면 된다. 

 

입력 값이 0이었다면 A와 같이 표기하면 되고 입력 값이 1이었다면 A'와 같이 표현하면 된다. 

 

F(A,B,C,D)=$\prod$ M(0,2,4)=(A+B+C)(A+B'+C)(A'+B+C)

 

 

 

 

 

● Tips 좀 더 쉽게 POS를 구하는 방법 

 

F가 0인 값을 기준으로 SOP를 먼저 구한다.

F'에 드모르간의 법칙을 적용해서 F를 구한다. 

 

F'=A'B'C'+A'BC'+AB'C'

F=(A'B'C'+A'BC'+AB'C')'

 =(A+B+C)(A+B'+C)(A'+B+C)

 

 

 

 

 

K-Map

 

 

 

 

A B C D F
0 0 0 0 0
0 0 0 1 0
0 0 1 0 0
0 0 1 1 0
0 1 0 0 0
0 1 0 1 1
0 1 1 0 0
0 1 1 1 1
1 0 0 0 0
1 0 0 1 0
1 0 1 0 0
1 0 1 1 0
1 1 0 0 0
1 1 0 1 1
1 1 1 0 0
1 1 1 1 1
         
         
         

 

 

 

위와 같이 truth table이 주어졌을 때, 카르노 맵은 아래와 같이 작성할 수 있다.

 

 

 

 

SOP  표현 방식

 

A’B’=00

A’B=01

AB=11

AB’=10

C’D’=00

0

0

0

0

C’D=01

0

1

1

0

CD=11

0

1

1

0

CD’=10

0

0

0

0

 

 

 

 

$2^{N}$개로 결과 값이 1인 것듣만 묶어준다. 위에서는 정사각형 모양으로 묶을 수 있다. 그리고 입력 값들이 변하지 않는 것들만 남겨준다. A'B와 AB 중에 B가 겹치므로 B만 남기면 된다. C'D와 CD중에 D만 겹치므로 D남기면 된다. 그런 다음 남아있는 B와 D를 곱해준다. 

 

F=BD  라는 결론을 얻을 수 있다. 

 

이렇게 표현하는 방식이 K-Map을 이용한 SOP  표현 방법이다. 

 

 

 

 

 

 

 

POS 표현 방식

 

A’B’=00

A’B=01

AB=11

AB’=10

C’D’=00

0

0

0

0

C’D=01

0

1

1

0

CD=11

0

1

1

0

CD’=10

0

0

0

0

 

 

 

F' =C'D'+A'B'+CD'+AB'=D'+B'

 

F =(B'+D')'

  =BD   

 

 

 

 

SOP을 기준으로 하거나 POS를 기준으로 하거나 결과 값은 항상 같게 나와야한다. 이를 꼭 명심하자~!!

 

 

 

728x90
반응형

'디지털논리회로' 카테고리의 다른 글

2.3 NAND, NOR, XOR, XNOR의 부울 대수 표현법  (0) 2020.04.05
2. Combinational Logic  (0) 2020.03.29
1. introduction  (0) 2020.03.29
디지털 논리회로를 배우는 목적  (0) 2020.03.28