CLOUD2



3. 조합논리회로

3.1 조합논리의 정의

        임의의 원하는 기능을 실행시키는 회로들을 기본 게이트들로 조합시키는 기술
        가산기, 감산기, 디코더, 인코더, 승산기, 제산기, 디스플레이 드라이버, 키보드 인코더

        기능적으로 모두 게이트들만으로 이루어진, 출력으로부터 입력으로 궤환이 없는
        논리회로(메모리를 포함하지 않는 논리회로)

            ☞ 순서회로 : 플립플롭을 포함한, 즉 메모리를 포함하는 회로
 
 

        모든 입력변수들 {x0, x1, . . . , xn}의 집합을 X라 하고, 모든 출력변수들 {y0, y1, .
         . . ,       ym}의 집합을 Y라 할 때 조합함수 F는 입력변수 집합 X를 이용해서
        출력변수 집합.

                                        Y =  F(X)


    3.1.1 진리표 변환과정

        [일반적인 설계 절차]

            해결해야 할 문제를 정의 -> 진리표의 형태 -> 논리식 -> 논리도 ->논리회로

        [진리표 변환과정]

            1) 입력변수와 출력변수 정의.
            2) 각 변수들에 대해 문자 또는 숫자기호 지정.
            3) 진리표의 크기 결정.  입력조합

                             2ⁿ = m

                        n   : 입력변수들의 수
                        m  : 조합들의 수

            4) 입력변수 조합에 대한 모든 경우를 포함하는 진리표 작성.
            5) 출력이 참이 되도록 입력 조합을 결정.


    3.1.2  논리식을 구하는 방법

        논리의 표현방식 : 진리표, Logic Diagram, Boolean Equ.
 

        [정의]

              - 문자 : 문자는 부울 변수이거나 보수를 표시. 문자 X가 2진 변수이면 X'는 이 변수의
                          보수.

              - 곱항 : 곱항(product term)은 한 문자 또는 여러 문자의 논리곱.
                          X, Y, Z가 2진 변수이면 X, XY, X'YZ

              - 합항 : 합항(sum term)은 하나의 문자 또는 여러 문자의 논리합.
                          X, Y, Z가 2진변수이면 X,  X + Y',  X + Y' +  Z'

              - 곱의 합 : 곱의 합(SOP)은 여러 곱항들의 논리합. 각 곱항은 2진 문자의 AND.
                               XY' +  X' + YZ +  XY'Z'

              - 합의 곱 : 합의 곱(POS)은 여러 합항들의 논리곱이다. 각 합항은 2진 문자의 OR.
                              (X + Y')(X + Y + Z')(Y' + Z')

              - 최소항 : 최소항(minterm)은 곱항의 특수한 경우. 최소항은 부울식을 형성하는
                             입력변수 모두를 포함하는 곱항.

              - 최대항 : 최대항maxterm)은 합항의 특수한 경우다. 최대항은 부울식을 형성하는
                             입력변수 모두를 포함하는 합항.

              - 정준 곱의 합 : 정준(canonical 正準) 곱의 합은 출력변수가 논리적으로 1일 때를
                                      정의하는 최소항의 완전한 형태. 진리표에서 출력함수가 1인
                                      열(row)에 대한 각 최소항들의 합.

                                       s =  x'yz + xy'z +  xyz  : 예

              - 정준 합의 곱 : 정준 합의 곱은 출력변수가 논리적으로 0일 때를 정의하는 최대항의
                                      완전한 형태. 출력이 0인 진리표의 열의 최대항의 곱.

                                       s' =  (x + y + z)(x' + y + z)(x'+ y + z')  : 예

                    출력식을 진리표로부터 바로 최소항 또는 최대항으로 표현될수 있고, 이때
                    이 출력식은 정준형.


3.2 정 준 형

    정준(正準) : "일반적인 규칙을 따른다"는 의미

        ☞ 스위칭 식에서 사용되는 각 항에서 사용된 모든 입력변수들을 포함
        ☞ 최소항의 합과 최대항의 곱

                (정준으로 표현하는 것은 간략화가 아님)

                           정준  <---  상반 ---> 간략화 식
 

        ● 부울대수를 이용한 정준형 SOP 표현

            1. 각 AND항에서 없어진 변수들 확인.
            2. 없어진 항과 이의 보수의 합을 원 AND항과 AND --> xy (z + z')
                      (z + z') = 1이므로 원 AND항의 값은 불변.
            3. 분배법칙 적용 --> xyz + xyz'

        ● 부울대수를 이용한 정준형 POS 표현

            1. 각 OR항에서 없어진 변수들 확인.
            2. 없어진 항과 이의 보수의 곱을 원 OR항과 OR -->  x + y'+ zz'
                      zz' = 0이므로 원 OR항의 값은 불변.
            3. 분배법칙 적용 --> (x + y'+ z)(x + y'+ z')


[예제 3.5] 다음 식을 정준형으로 바꾸어라.

         1) s = xy' + xz' + yz : (SOP)

         2) s = w'x + yz' : (SOP)

         3) s = (x + y')(y' + z) : (POS)

         4) s = (w + x' + y)(w' + z) : (POS)


3.3 진리표에서 논리식의 생성

    논리식은 변수명이나 그 보수들을 사용하는 대신에 최대항이나 최소항의 수치
    표현을 사용

         정준 곱의 합 식 s =  (xy'z + xy'z'+ xyz'+ xyz + x'yz)     s = ∑ (5, 4, 6, 7, 3)
                                           5       4        6        7       3
 

         - ∑  :  정준형 곱의 합(SOP)을 의미, 각 수들은 최소항.

         - ∏  : 정준형 합의 곱(POS)을 표시

                    최대항은 최소항의 보수임

        - 입력변수명을 사용하여 식을 쓰는 것보다 진리표로부터 직접
           최대항이나 최소항의 10진수 표현식이 편리


[예제 3.6] 아래 진리표에 대해 정준 최소항과 최대항으로 표현하여라.

                    --------------
                      x   y   z     s         정준 최소항 표현
                    --------------
                      0   0   0     0             s = f(x, y, z) = x'y'z + xy'z' + xy'z
                      0   0   1     1
                      0   1   0     0                                = ∑ (1, 4, 5)
                      0   1   1     0
                      1   0   0     1          정준 최소항 표현
                      1   0   1     1
                      1   1   0     0             s = f(x, y, z) = (x + y + z)(x + y' + z)
                      1   1   1     0
                    --------------                                (x + y'+ z')(x' + y' +z)

                                                                           (x'+ y'+ z')

                                                                        = ∏(0, 2, 3, 6, 7)

[예제 3.7]아래 식을 최소항 형식의 곱의 합 식을 숫자표현법 변환하라.

                    a. H = f(A, B, C) = A'BC + A'B'C + ABC

                        1)  A'BC  = 0112 =  310
                        2)  A'B'C = 0012 =  110
                        3)  ABC   = 1112 =  710

                        H = f(A, B, C) = (1, 3, 7)

                    b. G = f(w, x, y, z) = wxyz' + wx'yz' + w'xyz' + w'x'yz'

                        1.  wxyz'  = 11102 = 1410.
                        2.  wx'yz' = 10102 = 1010.
                        3.  w'xyz' = 01102 = 610.
                        4.  w'x'yz'= 00102 = 210.

                        G = f(w, x, y, z) = (2, 6, 10, 14)

[예제 3.8] 다음의 합의 곱 식을 최대항(10진수 표기)형식으로 나타내어라.

        a. T =  f(a, b, c) = (a + b'+ c)(a + b'+ c')(a'+ b'+ c)

        b. J =  f(A, B, C, D) = (A + B'+ C + D)(A + B'+ C + D')(A'+ B + C + D)
                                       (A'+ B'+ C + D)(A'+ B + C'+ D)(A'+ B'+ C'+ D)


3.4 카노맵

    - 스위칭 식의 간소화 : 하드웨어의 양을 감소 -> 간단한 집적 회로 -> 저가격화
       부울 대수는 식(처리시간 길고, 에러가 발생)

        카노맵(Karnaugh Map) 이용

    - 카노맵은 사각행렬(각 사각형는 부울식으로부터 최소항이나 최대항을 표현)

    - 사각행렬은 출력식을 간소화하는데 필요한 소거할 입력변수를들의 확인에 도움을 준다.

    - 주어진 스위칭 식이 최소항이 있으면 사각형에 1을 넣고, 최대항은 0으로 넣어 표현
 

                    [2 변수 카노멥]

                    [3 변수 카노멥]

                                                                                             2진수 000 혹은
                                                                                             최소항(A'B'C)나 최대항(A B C)

                    - 3개의 2진변수는 8개의 조합 ---- 8개의 사각형
                    - 최소항 A'B'C'(2진수000, 십진수 0)가 스위칭식에 있으면 해당 사각형안에 1을 삽입
                    - 3입력변수로 인한 8개의 최소항의 각각에 대하여 사각형을 할당한것
                    - 각 행과 열의 인접 사각형 사이에서 단지 하나의 비트만 변하는 것을 주시
                    - 수평과 수직적으로 동일한 변수의 수를 갖는 것을 주시

                    [4 변수 카노멥]

                    - 4개의 2진변수는 16개의 조합 ---- 16개의 사각형
                    - 최소항 A'B'C'D'(2진수0000, 십진수 0)가 스위칭식에 있으면 해당 사각형안에
                        Decimal Value가 0 인곳에 1을 삽입
                    - 4입력변수로 인한 16개의 최소항의 각각에 대하여 사각형을 할당한것
                    - 각 행과 열의 인접 사각형 사이에서 단지 하나의 비트만 변하는 것을 주시
                    - 수평과 수직적으로 동일한 변수의 수를 갖는 것을 주시

[예제 3.9] Y =  f(a, b, c) =  ∑(0, 1, 4, 5)를 카노멥에 표현하고 단순화하라.     Y = b'

[예제 3.10] G =  f(x, y, z) = ∑(0, 2, 3, 7)를 카노멥에 표현하고 단순화하라.    G = x'z' +  yz

[예제 3.11] D =  f(x, y, z) =  ∑(0, 2, 4, 6)를 카노멥에 표현하고 단순화하라.     D = z'

[예제 3.12] Q =  f(a, b, c) =  ∑(1, 2, 3, 6, 7)를 카노멥에 표현하고 단순화하라.  Q = b +  a'c

[예제 3.13] J =  f(x, y, z) =  ∑(0, 2, 3, 4, 5, 7)를 카노멥에 표현하고 단순화하라.

                        J = x'z'+ xy'+ yz   or   J = y'z'+ x'y + xz

[예제 3.14] 다음을 카노멥에 표현하고 단순화하라.

                        K =  f(w, x, y, z) = ∑(0, 1, 4, 5, 9, 11, 13, 15)  --> K = w'y'+ wz

                        L =  f(a, b, c, d) = ∑(0, 2, 5, 7, 8, 10, 13, 15)   --> L = b'd'+ bd

                        P =  f(r, s, t, u) = ∑(1, 3, 4, 6, 9, 11, 12, 14)    --> P = s'u + su'

                        D =  f(w, x, y, z) = ∑(5, 7, 8, 9, 13)                 --> D = w'xz + wx'y + xy'z

                        Q =  f(a, b, c, d) = ∑(0, 1, 2, 4, 5, 6, 8, 9, 12, 13, 14)  --> Q = c'+ bd' + a'd'

                        S =  f(a, b, c, d) = ∑(1, 3, 4, 5, 7, 8, 9, 11, 15) --> S = a'd + cd + a'bc'+ ab'c'


[ HOME | TOP | PREVIOUS | NEXT ]


sqCLOUD3 sqCLOUD13