1 / 107

컴퓨터구조 Computer System Architecture 멀티미디어공학과 김 해영 hykim @tu.ac.kr

제 2 장 디지털 논리회로. 컴퓨터구조 Computer System Architecture 멀티미디어공학과 김 해영 hykim @tu.ac.kr. 제 2 장 디지털 논리회로. 구성. 논리 게이트( gate) 부울 대수( Boolean Algebra) 조합 논리 회로 순차 논리 회로. 논리 게이트. 논리회로는 서로 다른 두 가지 값 (0,1)을 다루는 회로 동작 특성 : 부울 대수로 표현 디지털 컴퓨터에서 이진 정보 : ADC(Analog to Digital Conversion)

Download Presentation

컴퓨터구조 Computer System Architecture 멀티미디어공학과 김 해영 hykim @tu.ac.kr

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 제 2 장 디지털 논리회로 컴퓨터구조 Computer System Architecture 멀티미디어공학과 김 해영 hykim@tu.ac.kr

  2. 제 2 장 디지털 논리회로 구성 • 논리 게이트(gate) • 부울 대수(Boolean Algebra) • 조합 논리 회로 • 순차 논리 회로

  3. 논리 게이트 • 논리회로는 서로 다른 두 가지 값 (0,1)을 다루는 회로 • 동작 특성 : 부울 대수로 표현 • 디지털 컴퓨터에서 이진 정보 : ADC(Analog to Digital Conversion) • Physical Quantity Signal Binary Information 예 : V, A, F, 거리Discrete Value 0 : 0.5V 1 : 3V~5V

  4. 논리 게이트 • 게이트 • 이진 정보를 처리하는 가장 기초적인 논리회로 소자 • 각 게이트의 동작 : 부울 대수/함수 • 게이트의 입출력 관계 : 진리표(Truth table) • George Boole • 출생 : 영국의 링컨에서 출생 • 사고법칙에 대한 고찰(Investigation of the Laws of Thought)이라는 제목으로 책을 만들었는데, 여기에서 형식논리와 오늘날 부울 대수라 알려진 집합의 대수인 새로운 대수학을 확립. • 부울 대수는 전기 스위치 회로이론 등과 같은 수많은 분야에 응용되고 있다.1859년에 부울은 <미분방정식론, Treatise on Differential Equations>, 1860년에는 <차분법론, the Calculus of finite differenes>을 발표

  5. 논리 게이트 • 표 2-1 Digital Logic Gates • AND, OR, INVERTER, BUFFER, NAND, NOR, XOR, XNOR F = A’ F = A·B F = A + B OR gate AND gate NOT gate F = A F = (A·B)’ F = (A + B)’ NOR gate NAND gate Buffer gate F = A B F = A B XNOR gate XOR gate

  6. 기본 게이트 ( Gate ) • NOT 게이트 ( 인버터 ) • 1입력 1출력 • 보수표시 기호 논리함수 진리표 F = NOT x = x x F

  7. 기본 게이트 ( Gate ) • AND 게이트 • 2 이상의 입력 1출력 • 모든 입력이 참일 때만 참 값 출력 기호 논리함수 진리표 F = x ANDy = x • y = x y x F y 전기회로의 직렬 연결

  8. 기본 게이트 ( Gate ) • OR 게이트 • 2 이상의 입력 1출력 • 입력 중 어느 하나라도 참이면 참 값 출력 기호 논리함수 진리표 F = x ORy = x + y x F y 전기회로의 병렬 연결

  9. 기본 게이트 ( Gate ) • 버퍼 게이트 ( Buffer ) • 1입력 1출력 • 입력이 참일 때만 참 값 출력 기호 논리함수 진리표 F = x x F

  10. 기본 게이트 ( Gate ) • NAND 게이트 • 2 이상의 입력 1출력 • 모든 입력이 참일 때만 거짓 값 출력 기호 논리함수 진리표 F = x NANDy = x • y x F y

  11. 기본 게이트 ( Gate ) • NOR 게이트 • 2 이상의 입력 1출력 • 모든 입력이 거짓일 때만 참 값 출력 기호 논리함수 진리표 F = x NORy = x + y x F y

  12. 기본 게이트 ( Gate ) • XOR 게이트 ( Exclusive-OR Gate ) • 2 이상의 입력 1출력 • 두 입력 값이 서로 다를 때만 참 값 출력 기호 논리함수 진리표 F = x XORy = x y + x y = x + y x F y

  13. 기본 게이트 ( Gate ) • XNOR 게이트 • 2 이상의 입력 1출력 • 두입력이 같은 경우에 만 참 값 출력 기호 논리함수 진리표 F = x XNORy = x y + x y = x • y x F y

  14. 논리 게이트 • [문제 2-1] 두개의 입력(two input)을 가지는 게이트에서 입력 신호 A, B의 조합에 따른 출력 타이밍도(timing diagram)를 그려라.

  15. 논리 게이트 • [문제 2-1] 두개의 입력(two input)을 가지는 게이트에서 입력 신호 A, B의 조합에 따른 출력 타이밍도(timing diagram)를 그려라.

  16. 유니버설 게이트 • NAND와 NOR 게이트 : 표준 논리 게이트 • 모든 부울 함수 : NAND와 NOR 게이트로서 쉽게 구현 • NOT 게이트 • AND 게이트 OR 게이트 Fig. 2-2

  17. Wired-Logic • NAND와 NOR 게이트 : 둘 이상의 게이트 출력을 선(Wire)으로 연결하면 AND/OR 논리를 수행 Wired-logic • 개방 콜렉터형 NAND 게이트 Fig. 2-3 ECL NOR 게이트

  18. 부울 대수(boolean Algebra) • 부울 대수(Boolean Algebra) • 이진 변수(binary variable) + 논리 동작(logic operation) 을 취급하는 대수 (A, B, x, y 등) (AND, OR, NOT…) • 부울 대수의 사용 목적 : 디지털 회로의 설계와 해석을 용이하게 하기 위해 변수사이의 진리표 관계를 대수 형식으로 표현 • 부울 대수를 이용하면 ① 변수 사이의 진리표 관계를 대수형식으로 표시하기가 용이 ② 논리도의 입출력 관계를 대수형식으로 표시하기가 용이 ③ 동일 기능을 가진 더 간단한 회로(논리식의 간소화)를 설계하는 것이 용이

  19. 부울 대수(boolean Algebra) • 정의 • 2진 변수와 논리 동작을 다루는 대수 • 2진 연산자 +(OR),•(AND)와단항 연산자인 NOT 로 구성된다. • 기본 부울 대수 연산 진리표

  20. 부울 대수(boolean Algebra) A B C F 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 1 • 부울함수(Boolean Function) : variable + operation • F(A,B,C) = A’B + C • Truth Table : Fig. 2-5Relationship between a function and variable • Logic Diagram : Fig. 2-5 대수적 표현논리도(Logic Diagram)(gates로 표현) 2n Combination Variable n = 3

  21. 부울 대수(boolean Algebra) p57~p60 참조 • 부울대수 법칙 : Table. 2-5 참조 - Operation with 0 and 1: x + 0 = x , x + 1 = 1 , x • 1 = x , x • 0 = 0 - Idempotent Law: x + x =x , x • x = x - Complementary Law: x + x' = 1 , x • x' = 0 - Commutative Law: x + y = y + x , x • y = y • x - Associative Law: x + (y + z) = (x + y) + z , x • ( y • z) = (x • y) • z - Distributive Law: x • ( y+ x) = (x • y) + (x • z) , x + (y • z) = (x + y) • (x + z) - DeMorgan's Law: (x + y)' = x' • y’ , (x • y )’ = x’ + y’ n개의 변수로 확장한 일반식 (x1 + x2 + x3 + … xn)' = x1' • x2' • x3' • … xn’ (x1 • x2 • x3 • … xn) ' = x1' + x2' + x3' + … xn’

  22. 부울 대수(boolean Algebra) 항등원의 존재 x + 0 = x x • 1 = x 교환 법칙 x + y = y + x x • y = y • x 분배 법칙 x ( y + z ) = x y + x z x + y z = ( x + y ) • ( x + z ) 역의 존재 x + x = 1 x • x = 0 한계법칙 x + 1 = 1 x • 0 = 0 멱등 법칙 x + x = x x • x = x 대합성 x = x 결합 법칙 x + ( y + z ) = ( x + y ) + z x ( y z ) = ( x y ) z 드모르강 법칙 x + y = x y x + y = x y x y= x + y 흡수법칙 x + x y = x x ( x + y ) = x 인접법칙 x + x y = x + y x + x y = x + y p57~p60 참조 • 부울 대수 법칙 : Table. 2-5 참조

  23. 드모르강 정리 • 드모르강의 정리 • DeMorgan's Law: (x + y)' = x' • y’ , (x • y )’ = x’ + y’ 연산자와 변수로 구성된 임의의 함수가 있을 때 이 함수의 전체 부정은 연산자 +는 ·로, ·는 +로 바꾸고(+ ↔ ·) 함수에 포함된 변수는 긍정은 부정으로 부정은 긍정으로(A' ↔ A)으로 바꾸어 각각의 변수에 대한 부정을 취하는 것과 결과가 같음을 나타내는 법칙으로NAND와 NOR를 취급하는데 유용 • graphic symbols for NOR gate (a) OR-invert (b) invert-OR x y z x y z = (x+y+z)’ x’y’z’

  24. graphic symbols for NAND gate (a) NAND-invert (b) invert-NAND • [표 2-5]의 부울대수 기본관계식의 적용 예 x y z x y z = (xyz)’ (x’+y’+z’) Fig. 2-6 F=AB'C+AB'C'+A'C

  25. [표 2-5]의 부울대수 기본관계식의 적용 예 [표 2-5]의 1-5와 2-2에 의해 F=AB'C+AB'C'+A'C =AB'(C+C')+A'C =AB'+A'C Fig. 2-7 F=AB'+A'C 간소화된 함수식에 의한 회로로서 다섯 개의 게이트들 만을 이용하여 그림 2-6과 동일한 결과

  26. 수식의 보수 • 수식의 보수 어떤 함수 F의 보수는 F'이며, 드모르강 정리를 이용하여 얻을 수 있다. 드모르강 정리는 부울 함수식에서 모든 OR 연산은 AND 로, 모든 AND 연산은 OR로 바꾸어 주고, 함수 내의 각 변수를 보수화 하면 된다. F = AC + C'D + B'D'의 보수는 F'= (A'+C')(C+D')(B+D) 이 된다.

  27. 부울 함수 • 부울함수(Boolean Function) : 디지털회로를 설계하고 해석하기 위해 변수 사이의 진리표 관계를 대수 형식으로 표현 variable + operation(AND, OR, NOT)+ 괄호 + 등호 • 예 • 위 부울함수의 입출력 관계  진리표 n개의 2진 변수  2n개의 조합 • F1은 A=1, B=1, C=0일 때만 출력 F1 = 1 • 마찬가지로 함수 F2, F3, F4도 같은 방법 적용 F1 = ABC' F2 = A + B'C F3 = AB'C+AB'C'+A'C F4 = AB' + A'C

  28. 부울 함수 • 부울 함수F1 , F2 , F3 , F4에 대한 진리표 Tab. 2-6 F1 = ABC', F2=A+B'C, F3 = AB'C+AB'C'+A'C, F4 = AB'+A'C에 대한 진리표 진리표에서 F3과 F4는 동일한 함수값, 같은 부울 함수에 대해 서로 다른 대수적 표현이 가능하다는 것을 의미, 이 두 함수는 같다고 말한다. 함수 F4는 함수 F3을 간소화 한 것이다.

  29. 부울 함수 • 부울 함수 논리도(Logic Diagram) (a) F1 = ABC' (b) F2=A+B'C (c) F3 = AB'C+AB'C'+A'C (d) F4 = AB'+A'C ※ 함수 F4가 함수 F3보다 더 경제적

  30. 부울 함수의 표준형(standard form) • 최소항(Minterm)과 최대항(Maxterm) • 최소항(Minterm) : n variables product ( x=1, x’=0) • 최대항(Maxterm) : n variables sum (x=0, x’=1) 2 variables example m0 + m1 + m2 + m3 M0 M1 M2 M3

  31. 부울 함수의 표준형(standard form) 3 variables example

  32. 함수의 표현 예제 F1 = x y z + x y z + x y z = m0 + m3 + m6 =∑ (0, 3, 6) F1 = x y z + x y z + x y z = ( x y z ) • ( x y z ) • ( x y z ) = ( x + y + z ) • ( x + y + z ) • ( x + y + z ) = M0 + M3 + M6 = F2 • 곱(최소항 )의 합형 : 출력값이 1 이 되는 항의 합 • 합 (최대항 ) 의 곱형 : 출력값이 0 이 되는 항의 곱 • 곱의 합형의 보수 F2 = ( x + y + z ) • ( x + y + z ) • ( x + y + z ) = M0 + M3 + M6 =∏ (0, 3, 6)

  33. 최소항의 합(sum of product) 부울 함수는 주어진 진리표를 보고 대수적으로 표시 • 최소항의 합  진리표에서 출력값이 1이 되는 최소항을 구하고 이들 최소항들에 대해 모두 OR연산 을 취함 • F1 = x'y'z + xy'z' + xy'z + xyz' = m1 + m4 + m5 + m6 = ∑(1, 4, 5, 6) =M0· M2· M3· M7=∏(0, 2, 3, 7) (Complement =M0 M2 M3 M7)

  34. 최대항의 곱(product of sum) 부울 함수는 주어진 진리표를 보고 대수적으로 표시 • 최대항의 곱  진리표에서 출력값이 0이 되는 최대항을 구하고 이들 최대항들에 대해 모두 AND연산 을 취함 • F2 = (x+y+z')·(x'+y+z)·(x'+y+z')·(x'+y'+z)=M1· M4· M5· M6 =∏(1,4, 5, 6)

  35. 부울함수의 간소화 식에 포함된 문자와 항들의 개수를 줄여 간단한 형태로 유도하는 절차 논리 게이트를 이용한 설계가 간단하여 구현시 가격, 유지보수에 유리 • (1) 정리와 가설을 이용한 간소화 방법 Tab. 2-5 F = AB' + B = B + A B' = (B + A)(B + B') = (B + A)·1 = B + A = A + B 1-7 적용 1-12 적용 간소화 1-5 적용 2-3 적용 1-7 적용

  36. 부울함수의 간소화 C B A B A C D • (2) Map을 이용한 간소화 방법 • 2 variables (참고설명 참조) • 3 variables • 4 variables B A • 5 variables C B A D E E 논리적으로 인접한 항이 포함되도록 2, 4, 8, 16개 그룹으로 묶으면 그만큼 지워지는 변수가 많아지므로 가능한 한 많은 수의 항을 묶는다. 간소화된 항들은 최소항의 합형이나 최대항의 곱형으로 표현

  37. 부울함수의 간소화 • (2) Map을 이용한 간소화 방법 • 2 variables • 3 variables • 4 variables 논리적으로 인접한 항이 포함되도록2, 4, 8, 16개 그룹으로 묶으면 그만큼 지워지는 변수가 많아지므로 가능한 한 많은 수의 항을 묶어야 하며, 간소화된 항들은 최소항의 합형이나 최대항의 곱형으로 표현

  38. 부울함수의 간소화 • 인접 영역 • 인접 영역의 수 = 2n (1, 2, 4, 8, ….) • The squares at the extreme ends of the same horizontal row are to be considered adjacent • The same applies to the top and bottom squares of a column • The four corner squares of a map must be considered to be adjacent • Groups of combined adjacent squares may share one or more squares with one or more group

  39. 부울함수의 간소화 y x • [예제] F= x + y’z (1) 진리표 (2) (3) 인접 영역을 묶는다 1 1 1 1 1 z F= x + y’z

  40. 부울함수의 간소화 C C B B A A B B A A C C D D • [예제] • F=AC’ + BC • [예제] • F=C’ + AB’ • [예제] • F=C’ + AB’ • Product-of-Sums Simplification F=B’D’ + B’C’ + A’C’D F’=AB + CD + BD’(square marked 0’s) (F’)’=(A’ + B’)(C’ + D’)(B’ + D) Sum of product Product of Sum

  41. NAND/NOR게이트로의 구현 • NAND Implementation • Sum of Product : F=B’D’ + B’C’ + A’C’D • NOR Implementation • Product of Sum : F=(A’ + B’)(C’ + D’)(B’ + D) • 무관 조건(Don’t care conditions) • F(A,B,C)=(0, 2, 6), d(A,B,C)= (1, 3, 5) • F=A’ + BC’= (0, 1, 2, 3, 6) B’ D’ C’ A’ D A’ B’ C’ D’ D’ B 1 1 X X A 1 X C

  42. 카르노 맵 ( karnaugh Map ) • 진리표를 그림 모양으로 나타내어 부울 함수의 최소화에 사용 • 두 개의 변수 중,하나의 비트만이 서로 다를 때  논리적으로 인접 • 두 최소항에서 하나의 문자만 다를 때 그 문자를 제외한 논리곱 형성 A + A’ = 1인 관계 이용 • 최소항 (Minterm)과 최대항 (Maxterm)을 이용 • 예) A B + A B = B

  43. 카르노 맵 ( karnaugh Map ) • 2 변수 카르노 맵 • 최대 4개의 최소항으로 구성 • 부울 함수의 각 최소항 부분만 1을 기입하고, 나머지는 0으로 채움

  44. 카르노 맵 ( karnaugh Map ) • 2 변수 카르노 맵의 예제 • F = x y + x y + x y 진리표 카노르 맵 F = x + y

  45. 카르노 맵 ( karnaugh Map ) • 3 변수 카르노 맵 • 최대 8개의 최소항으로 구성 • 서로 인접한 것을 묶을 수 있도록 배치 • 최소항의 순서는 그레이 코드값에 따라 배치 인접한 변수가 서로 다른 값을 가짐

  46. 카르노 맵 ( karnaugh Map ) • 3 변수 카르노 맵의 예제 • F ( x, y, z ) =  m ( 0, 2, 3, 4, 6 ) 카노르 맵 진리표 F = z + x y

  47. 카르노 맵 ( karnaugh Map ) • 3변수 논리회로 구현 F = z + x y x y F z

  48. 카르노 맵 ( karnaugh Map ) • 4 변수 카르노 맵 • 최대 16개의 최소항으로 구성 • 최소항의 순서는 그레이 코드값에 따라 배치

  49. 카르노 맵 ( karnaugh Map ) • 4 변수 카르노 맵의 예제 • 최대항을 이용한 맵 • 0을 묶어 값을 취한 후 각 문자의 보수를 취함 F ( w, x, y, z ) =  M ( 1, 2, 4, 6, 9, 12, 14, 15 ) F = xz + x y z + w y z + w x y F = ( x + z ) ( x + y + z ) ( w + y + z ) ( w + x + y )

  50. 카르노 맵을 이용한 간소화 연습 1) F ( w, x, y, z ) =  m ( 0, 1, 2, 8, 10, 11, 14, 15 ) 2) F ( w, x, y, z ) =  m ( 1, 4, 6, 7, 8, 9, 10, 11, 15 ) 3) F ( w, x, y, z ) =  M ( 3, 4, 6, 7, 11, 12, 13, 14, 15 )

More Related