f5e0358c759cc861a64b10dfeea01278.ppt
- Количество слайдов: 131
컴퓨터구조 Computer System Architecture 멀티미디어공학과 김해영 hykim@tu. ac. kr Computer System Architecture 멀티미디어공학과 김해영
제 1 장 서론 – 컴퓨터 개요 구성 Computer System Architecture v 컴퓨터의 발달 v 컴퓨터의 분류 v 컴퓨터 시스템의 구성 v 프로그래밍 언어 멀티미디어공학과 김해영
컴퓨터의 개요 n 컴퓨터의 정의 작성된 프로그램에 의해 입력 데이터를 받아 저 Application S/W 장/ 처리해서 결과를 만들어 내도록 설계 제작된 신뢰성 있는 고속 전자 자료 처리 장치(Electronic Data Processing System) n 컴퓨터 = 하드웨어(H/W) + 소프트웨어(S/W) n API Operating System 프로그램(S/W) u 명령어(instruction)의 집합 u 소프트웨어 = Program + Data u 응용 소프트웨어(Application S/W ) DB, Word processor, Spread Sheet u 시스템 소프트웨어(System S/W ) l OS, Firmware, Compiler, Device Driver 등 l Computer System Architecture ROM BIOS Computer H/W 멀티미디어공학과 김해영
컴퓨터의 개요 n continued 컴퓨터 하드웨어 u CPU u Memory Program Memory(ROM) l Data Memory(RAM) u I/O Device l Interface: 8251 SIO, 8255 PIO, 6845 CRTC, 8272 FDC, 8237 DMAC, 8279 KDI l Input Device: Keyboard, Mouse, Scanner l Output Device: Printer, Plotter, Display l Storage Device(I/O): FDD, HDD, MOD l Computer System Architecture Memory CPU Input Device Interface Output Device Block Diagram of a digital Computer 멀티미디어공학과 김해영
컴퓨터의 발달 continued q 컴퓨터의 세대별 특징(1) 구분 하드웨어특징 소프트웨어특징 제 1세대 제 2세대 제 3세대 제 4세대 제 5세대 진공관 트랜지스터 집적회로 LSI 마이크로프로세서 VLSI 일괄처리 다중프로그래밍 온라인 실시간 처리 시분할 처리 인공지능 전문가시스템 인공지능 병렬처리 자연언어처리 q Von Neumann 컴퓨터 구조 프로그램 내장 개념 (Stored program concept) : 프로그램이 데이터와 함께 기억장치에 저장 Computer System Architecture 멀티미디어공학과 김해영
컴퓨터의 발달 q 컴퓨터의 세대별 특징(2) 제 1세대 하드웨어 개발에 중점 - 진공관 열화에 의한 냉각 장치의 필요 - 기억장치: 수은 지연 회로 및 자기 드럼 - 프로그램: 기계어, 어셈블리 언어 -실현: 군사용, 30 t, 진공관 17, 468개 사용 - 대표 시스템: ENIAC 제 2세대 - 기억 용량과 처리 속도에 중점 - 컴퓨터 응용 범위의 확장 및 병렬성, PC 등장. 기억장치: 고밀도 집적 회로(LSI), 소형화 프로그램: 특수 목적의 프로그램, 다양한 응용 실현: 마이크로프로세서, 가상기억체제와 캐시 대표 시스템: IBM사 370, IBM PC/XT, PC/AT 신뢰성과 소프트웨어 개발에 중점 진공관을 트랜지스터로 대치, 외형의 크기, 열의 발생이 대폭 감소 기억장치: 자기 코어 프로그램: 고급언어 개발(COBOL, FORTRAN 등) 실현: 온라인 실시간 처리, 다중 프로그래밍, 운영체제 대표 시스템: IBM 7904, PDP-1, Univac LARC 제 3세대 - 제 4세대 멀티 프로그래밍과 마이크로 프로그램 제어 집적회로(IC)사용, 소프트웨어 산업의 태동 기억장치: 집적 회로 프로그램: 호환성을 고려한 컴퓨터 시리즈 출현 실현: 시분할 처리, 파이프라인, 캐쉬 메모리 대표 시스템: IBM 360 -370, ASC, PDP-8 Computer System Architecture 제 5세대 고도 병렬처리(MPP)에 중점 - 새로운 응용과 이기종 프로세싱, VLSI 사용 기억장치: ULSI/VHSIC 프로그램: 대규모의 문제 처리 프로그램 대표 시스템: Fujitsu(VPP 500), Cray(MPP) 멀티미디어공학과 김해영
컴퓨터의 분류 자료표현에 따른 분류 사용목적에 따른 분류 처리성능과 규모에 따른 분류 ○ 디지털 컴퓨터 ○ 아날로그 컴퓨터 ○ 하이브리드 컴퓨터 ○ 전용 컴퓨터 ○ 범용 컴퓨터 ○ 슈퍼 컴퓨터 ○ 메인 프레임 컴퓨터 ○ 미니 컴퓨터 ○ 마이크로 컴퓨터 ○ 일괄처리 컴퓨터 처리방법에 따른 분류 ○ 실시간처리 컴퓨터 ○ 분산처리 컴퓨터 ○ 병렬처리 컴퓨터 Computer System Architecture 멀티미디어공학과 김해영
컴퓨터의 분류 q 자료표현에 따른 분류 - 아날로그보다 정확도가 정밀 - 디지털보다 더 빠른 처리 속도 - A/D, D/A 변환기 사용 An er at pu log m Co Co m rid pu yb ter H - 연속적이며 물리적 양의 형태 - 프로그램 기억 불가능 - 신속한 입력과 즉각적인 반응 - 프로세서 제어에 적합 - 제한된 정밀도 Digital Computer - 불연속적인 수의 형태 - 프로그램 기억 가능 Computer System Architecture - 논리회로 사용(부호화) - 정밀도 변화 가능 멀티미디어공학과 김해영
컴퓨터의 분류 q 사용 목적에 따른 분류 (1) 전용 컴퓨터(Special-purpose computer): 특정 목적에 사용, 군사용, 기상예보용 등 (2) 범용 컴퓨터(General-purpose computer): 여러 분야의 다양한 업무 처리/일반업무 q 처리 방법에 따른 분류 (1) (2) (3) (4) 일괄처리 컴퓨터 실시간 처리 : 대화식 처리 분산 처리 컴퓨터 : 네트워크 병렬 처리 컴퓨터 : 동시에 여 러 프로세서를 수행 q 처리 성능과 규모에 따른 분류 Computer System Architecture 멀티미디어공학과 김해영
컴퓨터 시스템의 구성 n 컴퓨터 = 하드웨어(H/W) + 소프트웨어(S/W) 하드웨어와 소프트웨어의 계층 구조 Computer System Architecture 멀티미디어공학과 김해영
컴퓨터 시스템의 구성 q 하드웨어 프로그램과 프로그램 수행에 필 요한 데이터와 연산 결과 데이터 등을 기억(주기억장치와 보조기 억장치) 외부로부터 프로그램이나 데이터를 컴퓨터 내부로 읽어 들이기 위한 장치 산술 연산과 논리연산 등을 실행 각 장치의 동작과 데이터의 흐름을 제어 처리한 결과를 표시 혹 은 출력하는 장치 컴퓨터 하드웨어 기본 구성 Computer System Architecture 멀티미디어공학과 김해영
컴퓨터 시스템의 구성 q 소프트웨어 컴퓨터 소프트웨어 Computer System Architecture 멀티미디어공학과 김해영
컴퓨터에 의한 문제 풀이 q 정보의 표현 - 중앙처리장치 : 전자회로 - 정보 : 전기적 신호로 변환(전류, 전압) * 아날로그 신호 : 시간에 따라 연속적으로 변화하는 전류나 전압 값으로 직접 표현 * 디지털 신호 : 부호(code)화, 비연속적인 값에 의하여 표현 - 디지털 정보 : 디지털화한 부호로 표현-> 전자 신호화-> 디지털 신호만을 취급하는 전자회로 -> 디지털 회로 -> 이진 디지털 정보, 이진 디지털 신호를 취급하는 회로 -> 이진 디지털 회로/논리 회로 -> 디지털 컴퓨터/ 컴퓨터 - 경제성, 정확성, 신뢰성 등을 고려([그림 1 -6]) Computer System Architecture 멀티미디어공학과 김해영
컴퓨터에 의한 문제 풀이 디지털 신호의 비교 * 부호들을 나타내는 전압의 차이가 적으면 적을수록 부호들을 구별하기가 어려우므로 회로가 더 정교해야 되고, 회로의 값이 이에 비례하여 더 비싸지면서도 정확도가 떨어져 신뢰도가 저하 * 2진 디지털 회로의 구현이 쉽고, 경제적이며, 신뢰성이 높음 * 이진 디지털 회로 -> 부울 대수 적용 용이 Computer System Architecture 멀티미디어공학과 김해영
컴퓨터에 의한 문제 풀이 q 컴퓨터 하드웨어 기능 - 컴퓨터 하드웨어 : 논리회로 구성 * 디지털 정보의 처리 기능 : 조합논리회로, 기본 회로 : 게이트 * 디지털 정보의 기억 능력 : 순차논리회로, 기본 회로 : 플립플롭 - 하드웨어에 의한 문제 해결 * 컴퓨터 하드웨어의 기능 : 주어진 문제를 해결하기 위한 정보처리 명령어 세트 * 컴퓨터의 정보처리 기능 : 수치적 기능(계산), 비수치적 기능(논리적 계산) q 프로그래밍 - 컴퓨터에 의한 문제 해결 : 프로그램 * 프로그램 : 주어진 문제를 푸는 과정을 컴퓨터의 명령어 세트를 이용하여 기술 - 프로그램 작성 * 알고리즘 작성 단계 : 문제를 푸는 방법 기술(기계 독립적) * 프로그램 작성 단계 : 기술한 알고리즘을 컴퓨터 명령어 세트를 이용하여 컴퓨터 에서 수행할 수 있는 형태로 기술(기계 종속적) Computer System Architecture 멀티미디어공학과 김해영
프로그래밍 언어 q 프로그래밍 언어 컴퓨터 하드웨어에 가장 가까운 언어, 프로세서에 직접 작업을 지시하기 위한 언어로 0과 1의 2진수로 작성 2진 코드로 구성된 기계어에 1: 1로 대응하는 1~6개의 문자로 기호화한 연산 코드를 정하여 사용하는 언어. 하드웨어 마다 고유의 어셈블리 언어 체계가 있어 언어의 호환성이 없음. 프로그래밍 언어의 분류 Computer System Architecture 멀티미디어공학과 김해영
프로그래밍 언어 q 프로그램의 번역 과정 어셈블리 언어나 고급 언어로 작성된 프로그램은 컴퓨터가 이해할 수 있는 기계어로 변환되어 주기억 장치에 적재 해야만 실행이 가능 사람이 컴퓨터 언어를 이용하여 작성한 프로그램 기계언어로 번역된 프로그램 실행 가능한 프로그램을 만들기 위하여 컴파일 부호의 목적 모듈 들을 서로 연결 시키는 것 여러 개의 모듈을 연결하여 하나의 실행할 수 있는 모듈로 생성 특정 프로그램을 실행하기 위하여 그 프로그램의 명령문들과 데이터들을 주기억장치에 적재하는 프로그램의 번역 과정 Computer System Architecture 멀티미디어공학과 김해영
제 2 장 디지털 논리회로 컴퓨터구조 Computer System Architecture 멀티미디어공학과 김 해영 hykim@tu. ac. kr Computer System Architecture 멀티미디어공학과 김해영
제 2 장 디지털 논리회로 구성 Computer System Architecture v 논리 게이트(gate) v 부울 대수(Boolean Algebra) v 조합 논리 회로 v 순차 논리 회로 멀티미디어공학과 김해영
논리 게이트 n 논리회로는 서로 다른 두 가지 값 (0, 1)을 다루는 회로 u 동작 특성 : 부울 대수로 표현 n 디지털 컴퓨터에서 이진 정보 : ADC(Analog to Digital Conversion) u Physical Quantity 예 : V, A, F, 거리 Computer System Architecture Signal Binary Information Discrete Value 0 : 0. 5 V 1 : 3 V~5 V 멀티미디어공학과 김해영
논리 게이트 n 게이트 u 이진 정보를 처리하는 가장 기초적인 논리회로 소자 u 각 게이트의 동작 : 부울 대수/함수 u 게이트의 입출력 관계 : 진리표(Truth table) n George Boole u 출생 : 영국의 링컨에서 출생 u 사고법칙에 대한 고찰(Investigation of the Laws of Thought)이라는 제 목으로 책을 만들었는데, 여기에서 형식논리와 오늘날 부울 대수라 알 려진 집합의 대수인 새로운 대수학을 확립. u 부울 대수는 전기 스위치 회로이론 등과 같은 수많은 분야에 응용되고 있다. 1859년에 부울은 <미분방정식론, Treatise on Differential Equations>, 1860년에는 <차분법론, the Calculus of finite differenes>을 발표 Computer System Architecture 멀티미디어공학과 김해영
논리 게이트 n 표 2 -1 Digital Logic Gates u AND, OR, INVERTER, BUFFER, NAND, NOR, XNOR F = A·B AND gate F = (A·B)’ NAND gate F = (A + B)’ NOR gate F=A B XOR gate Computer System Architecture F=A+B OR gate F = A’ F=A B XNOR gate NOT gate F=A Buffer gate 멀티미디어공학과 김해영
기본 게이트 ( Gate ) n NOT 게이트 ( 인버터 ) u 1입력 1출력 u 보수표시 기호 x Computer System Architecture 논리함수 F F = NOT x =x 진리표 x F 0 1 1 0 멀티미디어공학과 김해영
기본 게이트 ( Gate ) n AND 게이트 u 2 이상의 입력 1출력 u 모든 입력이 참일 때만 참 값 출력 기호 논리함수 진리표 F 전기회로의 직렬 연결 Computer System Architecture F = x AND y =x • y =xy x y F 0 0 1 0 1 x y 0 0 1 1 1 멀티미디어공학과 김해영
기본 게이트 ( Gate ) n OR 게이트 u 2 이상의 입력 1출력 u 입력 중 어느 하나라도 참이면 참 값 출력 기호 논리함수 진리표 x F 전기회로의 병렬 연결 Computer System Architecture F = x OR y =x+y y F 0 0 1 1 1 x y 0 1 1 멀티미디어공학과 김해영
기본 게이트 ( Gate ) n 버퍼 게이트 ( Buffer ) u 1입력 1출력 u 입력이 참일 때만 참 값 출력 기호 논리함수 진리표 Computer System Architecture F F= x x F 0 0 1 x 1 멀티미디어공학과 김해영
기본 게이트 ( Gate ) n NAND 게이트 u 2 이상의 입력 1출력 u 모든 입력이 참일 때만 거짓 값 출력 기호 논리함수 진리표 F F = x NAND y =x • y y F 0 0 1 1 Computer System Architecture x 1 x y 1 0 멀티미디어공학과 김해영
기본 게이트 ( Gate ) n NOR 게이트 u 2 이상의 입력 1출력 u 모든 입력이 거짓일 때만 참 값 출력 기호 논리함수 진리표 F F = x NOR y =x+y y F 0 0 1 0 0 0 1 Computer System Architecture x 1 x y 1 0 멀티미디어공학과 김해영
기본 게이트 ( Gate ) n XOR 게이트 ( Exclusive-OR Gate ) u 2 이상의 입력 1출력 u 두 입력 값이 서로 다를 때만 참 값 출력 기호 논리함수 진리표 Computer System Architecture y F 0 0 1 1 F F = x XOR y =xy+xy =x + y x 1 x y 1 0 멀티미디어공학과 김해영
기본 게이트 ( Gate ) n XNOR 게이트 u 2 이상의 입력 1출력 u 두 입력이 같은 경우에 만 참 값 출력 기호 논리함수 진리표 Computer System Architecture y F 0 0 1 0 0 0 1 F F = x XNOR y =xy+xy =x • y x 1 x y 1 1 멀티미디어공학과 김해영
논리 게이트 n [문제 2 -1] 두개의 입력(two input)을 가지는 게이트에서 입력 신호 A, B의 조합에 따른 출력 타이밍도(timing diagram)를 그려라. Computer System Architecture 멀티미디어공학과 김해영
유니버설 게이트 n NAND와 NOR 게이트 : 표준 논리 게이트 n 모든 부울 함수 : NAND와 NOR 게이트로서 쉽게 구현 u NOT 게이트 u AND 게이트 Computer System Architecture OR 게이트 멀티미디어공학과 김해영
Wired-Logic n NAND와 NOR 게이트 : 둘 이상의 게이트 출력을 선(Wire)으로 연 결하면 AND/OR 논리를 수행 Wired-logic n 개방 콜렉터형 NAND 게이트 n ECL NOR 게이트 Computer System Architecture 멀티미디어공학과 김해영
부울 대수(boolean Algebra) n 부울 대수(Boolean Algebra) u 이진 변수(binary variable) + 논리 동작(logic operation) 을 취급하는 대수 (A, B, x, y 등) (AND, OR, NOT…) n 부울 대수의 사용 목적 : 디지털 회로의 설계와 해석을 용이하게 하기 위해 변수 사이의 진리표 관계를 대수 형식으로 표현 n 부울 대수를 이용하면 ① 변수 사이의 진리표 관계를 대수형식으로 표시하기가 용이 ② 논리도의 입출력 관계를 대수형식으로 표시하기가 용이 ③ 동일 기능을 가진 더 간단한 회로(논리식의 간소화)를 설계하는 것이 용이 Computer System Architecture 멀티미디어공학과 김해영
부울 대수(boolean Algebra) n 정의 u 2진 변수와 논리 동작을 다루는 대수 u 2진 연산자 +(OR), • (AND)와 단항 연산자인 NOT 로 구성된다. n 기본 부울 대수 연산 진리표 x y x+y x • y x x 0 0 0 0 1 1 0 1 0 1 1 0 0 1 1 1 Computer System Architecture 멀티미디어공학과 김해영
부울 대수(boolean Algebra) n 부울함수(Boolean Function) : variable + operation u F(A, B, C) = A’B + C n Truth Table : Fig. 2 -5 n Logic Diagram : Fig. 2 -5 Relationship between a function and variable A B C 2 n Combination Variable n = 3 Computer System Architecture 0 1 1 1 0 1 논리도(Logic Diagram)(gates로 표현) F 0 0 1 1 대수적 표현 0 0 1 1 0 1 0 1 F(A, B, C) = A’B + C 멀티미디어공학과 김해영
부울 대수(boolean Algebra) n 부울 대수 법칙 : Table. 2 -5 참조 항등원의 존재 x + 0 = x x • 1=x 교환 법칙 x+y=y+x x • y=y • x 분배 법칙 x(y+z)=xy+xz x+yz=(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 = x y x(yz)=(xy)z xy= x+y 흡수법칙 x+xy=x x(x+y)=x 인접법칙 x+xy=x+y Computer System Architecture 멀티미디어공학과 김해영
드모르강 정리 n 드모르강의 정리 v De. Morgan's Law: (x + y)' = x' • y’ , (x • y )’ = x’ + y’ 연산자와 변수로 구성된 임의의 함수가 있을 때 이 함수의 전체 부정은 연산자 +는 ·로, ·는 +로 바꾸고(+ ↔ ·) 함수에 포함된 변수는 긍정은 부 정으로 부정은 긍정으로(A' ↔ A)으로 바꾸어 각각의 변수에 대한 부정을 취하는 것과 결과가 같음을 나타내는 법칙으로 NAND와 NOR를 취급하는 데 유용 n graphic symbols for NOR gate x y z (x+y+z)’ (a) OR-invert Computer System Architecture = x y z x’ y’z’ (b) invert-OR 멀티미디어공학과 김해영
n graphic symbols for NAND gate x y z (xyz)’ = x y z (a) NAND-invert (x’+y’+z’) (b) invert-NAND n [표 2 -5]의 부울대수 기본관계식의 적용 예 F=AB'C+AB'C'+A'C Computer System Architecture 멀티미디어공학과 김해영
n [표 2 -5]의 부울대수 기본관계식의 적용 예 F=AB'C+AB'C'+A'C =AB'(C+C')+A'C =AB'+A'C F=AB'+A'C 간소화된 함수식에 의한 회로로서 다섯 개의 게이트들 만을 이용하여 그림 2 -6과 동일한 결과 Computer System Architecture 멀티미디어공학과 김해영
수식의 보수 n n 어떤 함수 F의 보수는 F'이며, 드모르강 정리를 이용하여 얻을 수 있다. 드모르강 정리는 부울 함수식에서 모든 OR 연산은 AND 로, 모든 AND 연산은 OR로 바꾸어 주고, 함수 내의 각 변수를 보수화 하면 된다. F = AC + C'D + B'D'의 보수는 F'= (A'+C')(C+D')(B+D) 이 된다. Computer System Architecture 멀티미디어공학과 김해영
부울 함수 n 부울함수(Boolean Function) : 디지털회로를 설계하고 해석하기 위 해 변수 사이의 진리표 관계를 대수 형식으로 표현 variable + operation(AND, OR, NOT) + 괄호 + 등호 u 예 F 1 = ABC' F 2 = A + B'C F 3 = AB'C+AB'C'+A'C F 4 = AB' + A'C u 위 부울함수의 입출력 관계 진리표 n개의 2진 변수 2 n개의 조합 u F 1은 A=1, B=1, C=0일 때만 출력 F 1 = 1 u 마찬가지로 함수 F 2, F 3, F 4도 같은 방법 적용 Computer System Architecture 멀티미디어공학과 김해영
부울 함수 n 부울 함수 F 1 , F 2 , F 3 , F 4 에 대한 진리표 F 1 = ABC', F 2=A+B'C, F 3 = AB'C+AB'C'+A'C, F 4 = AB'+A'C에 대한 진리표에서 F 3과 F 4는 동일한 함수값, 같은 부울 함수에 대해 서로 다른 대수적 표현이 가능하다는 것을 의미, 이 두 함수는 같다고 말한다. 함수 F 4는 함수 F 3을 간소화 한 것이다. Computer System Architecture 멀티미디어공학과 김해영
부울 함수 n 부울 함수 논리도(Logic Diagram) (a) F 1 = ABC' (c) F 3 = AB'C+AB'C'+A'C (b) F 2=A+B'C (d) F 4 = AB'+A'C ※ 함수 F 4가 함수 F 3 보다 더 경제적 Computer System Architecture 멀티미디어공학과 김해영
부울 함수의 표준형(standard form) n 최소항(Minterm)과 최대항(Maxterm) u 최소항(Minterm) : n variables product ( x=1, x’=0) u 최대항(Maxterm) : n variables sum (x=0, x’=1) n 2 variables example m 0 + m 1 + m 2 + m 3 Computer System Architecture M 0 M 1 M 2 M 3 멀티미디어공학과 김해영
부울 함수의 표준형(standard form) n 3 variables example 변수 최소항 최대항 함수 x y z 항 표시 F 1 F 2 0 0 0 xyz m 0 x+y+z M 0 1 0 0 0 1 xyz m 1 x+y+z M 1 0 1 0 xyz m 2 x+y+z M 2 0 1 1 xyz m 3 x+y+z M 3 1 0 0 xyz m 4 x+y+z M 4 0 1 1 0 1 xyz m 5 x+y+z M 5 0 1 1 1 0 xyz m 6 x+y+z M 6 1 0 1 1 1 xyz m 7 x+y+z M 7 0 1 Computer System Architecture 멀티미디어공학과 김해영
함수의 표현 예제 n 곱(최소항 )의 합형 : 출력값이 1 이 되는 항의 합 F 1 = x y z + x y z = m 0 + m 3 + m 6 = ∑ (0, 3, 6) n 합 (최대항 ) 의 곱형 : 출력값이 0 이 되는 항의 곱 F 2 = ( x + y + z ) • ( x + y + z ) = M 0 + M 3 + M 6 = ∏ (0, 3, 6) n 곱의 합형의 보수 F 1 = x y z + x y z =(xyz) • (xyz) =(x+y+z) • (x+ y+z) = M 0 + M 3 + M 6 = F 2 Computer System Architecture 멀티미디어공학과 김해영
최소항의 합(sum of product) n 부울 함수는 주어진 진리표를 보고 대수적으로 표시 n 최소항의 합 진리표에서 출력값이 1이 되는 최소항을 구하고 이들 최 소항들에 대해 모두 OR연산 을 취함 n F 1 = x'y'z + xy'z' + xy'z + xyz' = m 1 + m 4 + m 5 + m 6 = ∑(1, 4, 5, 6) = M 0 · M 2 · M 3 · M 7 = ∏(0, 2, 3, 7) (Complement = M 0 M 2 M 3 Computer System Architecture M 7 ) 멀티미디어공학과 김해영
최대항의 곱(product of sum) n 부울 함수는 주어진 진리표를 보고 대수적으로 표시 n 최대항의 곱 진리표에서 출력값이 0이 되는 최대항을 구하고 이들 최대항들에 대해 모두 AND연산 을 취함 n F 2 = (x+y+z')·(x'+y+z')·(x'+y'+z) = M 1 · M 4 · M 5 · M 6 = ∏(1, 4, 5, 6) Computer System Architecture 멀티미디어공학과 김해영
부울함수의 간소화 n 식에 포함된 문자와 항들의 개수를 줄여 간단한 형태로 유도하는 절차 논리 게이트를 이용한 설계가 간단하여 구현시 가격, 유지보수에 유리 n (1) 정리와 가설을 이용한 간소화 방법 F = AB' + B = B + A B' = (B + A)(B + B') = (B + A)· 1 =B+A =A+B Computer System Architecture 간소화 멀티미디어공학과 김해영
부울함수의 간소화 n (2) Map을 이용한 간소화 방법 (참고설명 참조) u 3 variables u 2 variables B u 4 variables C B A A B A C u 5 variables C D B A E D E n 논리적으로 인접한 항이 포함되도록 2, 4, 8, 16개 그룹으로 묶으면 그만큼 지워지는 변수가 많아지므로 가능한 한 많은 수의 항을 묶는다. 간소화된 항들은 최소항의 합형이나 최대항의 곱형으로 표현 Computer System Architecture 멀티미디어공학과 김해영
부울함수의 간소화 n (2) Map을 이용한 간소화 방법 u 2 variables u 3 variables u 4 variables n 논리적으로 인접한 항이 포함되도록 2, 4, 8, 16개 그룹으로 묶으면 그만큼 지워지는 변수가 많아지므로 가능한 한 많은 수의 항을 묶어야 하며, 간소화된 항들은 최소항의 합형이나 최대항의 곱형으로 표현 Computer System Architecture 멀티미디어공학과 김해영
부울함수의 간소화 n 인접 영역 u 인접 영역의 수 = 2 n (1, 2, 4, 8, …. ) u The squares at the extreme ends of the same horizontal row are to be considered adjacent u The same applies to the top and bottom squares of a column u The four corner squares of a map must be considered to be adjacent u Groups of combined adjacent squares may share one or more squares with one or more group Computer System Architecture 멀티미디어공학과 김해영
부울함수의 간소화 n [예제] F= x + y’z (1) 진리표 (2) (3) 인접 영역을 묶는다 y 1 x 1 1 z F= x + y’z Computer System Architecture 멀티미디어공학과 김해영
부울함수의 간소화 n [예제] B u F=AC’ + BC A n [예제] C C u F=C’ + AB’ B C A n [예제] u F=C’ + AB’ B n Product-of-Sums Simplification A D F=B’D’ + B’C’ + A’C’D Sum of product F’=AB + CD + BD’(square marked 0’s) (F’)’=(A’ + B’)(C’ + D’)(B’ + D) B A Product of Sum Computer System Architecture C D 멀티미디어공학과 김해영
카르노 맵 ( karnaugh Map ) n 2 변수 카르노 맵 u 최대 4개의 최소항으로 구성 u 부울 함수의 각 최소항 부분만 1을 기입하고, 나머지는 0으로 채움 0 1 0 m 1 1 m 2 m 3 Computer System Architecture 0 0 xy xy 1 xy xy y y x xy xy 1 멀티미디어공학과 김해영
카르노 맵 ( karnaugh Map ) n 2 변수 카르노 맵의 예제 F=xy+xy+xy u 카노르 맵 진리표 x y F 0 0 y x 0 1 1 1 0 0 1 1 1 1 1 F=x+y Computer System Architecture 멀티미디어공학과 김해영
카르노 맵 ( karnaugh Map ) n 3 변수 카르노 맵 u 최대 8개의 최소항으로 구성 u 서로 인접한 것을 묶을 수 있도록 배치 u 최소항의 순서는 그레이 코드값에 따라 배치 인접한 변수가 서로 다른 값을 가짐 yz yz yz x m 0 m 1 m 3 m 2 x m 4 m 5 m 7 m 6 x Computer System Architecture yz 00 01 11 10 0 xyz xyz 1 xyz xyz x 멀티미디어공학과 김해영
카르노 맵 ( karnaugh Map ) n 3 변수 카르노 맵의 예제 u F ( x, y, z ) = m ( 0, 2, 3, 4, 6 ) 카노르 맵 진리표 x y z F 0 0 0 1 0 1 1 0 1 1 1 1 0 Computer System Architecture yz 00 01 11 10 0 1 1 1 1 0 0 1 x F=z+xy 멀티미디어공학과 김해영
카르노 맵 ( karnaugh Map ) n 3변수 논리회로 구현 F=z+xy x y z Computer System Architecture F 멀티미디어공학과 김해영
카르노 맵 ( karnaugh Map ) n 4 변수 카르노 맵 u 최대 16개의 최소항으로 구성 u 최소항의 순서는 그레이 코드값에 따라 배치 yz wx yz yz wx m 0 m 1 m 3 m 2 wx m 4 m 5 m 7 m 6 wx m 12 m 13 m 15 m 14 wx m 8 m 9 m 11 m 10 yz 01 11 10 00 wxyz 01 wxyz wxyz 10 Computer System Architecture 00 wxyz wx 멀티미디어공학과 김해영
카르노 맵 ( karnaugh Map ) n 4 변수 카르노 맵의 예제 u 최대항을 이용한 맵 l 0을 묶어 값을 취한 후 각 문자의 보수를 취함 F ( w, x, y, z ) = M ( 1, 2, 4, 6, 9, 12, 14, 15 ) yz 00 01 11 10 00 1 0 01 0 1 0 0 10 1 1 wx F=xz+xyz+wxy F=(x+z)(x+y+z)(w+x+y) Computer System Architecture 멀티미디어공학과 김해영
카르노 맵을 이용한 간소화 연습 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 ) Computer System Architecture 멀티미디어공학과 김해영
카르노 맵을 이용한 간소화 연습 1) F ( w, x, y, z ) = m ( 0, 1, 2, 8, 10, 11, 14, 15 ) yz 00 01 11 10 00 1 1 01 0 0 11 0 0 1 1 10 1 1 wx F=wxy+xz+wy Computer System Architecture 멀티미디어공학과 김해영
카르노 맵을 이용한 간소화 연습 2) F ( w, x, y, z ) = m ( 1, 4, 6, 7, 8, 9, 10, 11, 15 ) yz wx 00 00 01 01 10 1 1 11 10 11 1 1 F=xyz+wxz+xyz+wx Computer System Architecture 멀티미디어공학과 김해영
카르노 맵을 이용한 간소화 연습 3) F ( w, x, y, z ) = M ( 3, 4, 6, 7, 11, 12, 13, 14, 15 ) yz wx 00 01 00 11 10 0 01 0 11 0 0 0 10 0 0 F= wx+yz+xz F=(w+x)(y+z)(x+z) Computer System Architecture 멀티미디어공학과 김해영
무관 조건 ( Don’t Care Condition, 리던던시 ) n 입력 변수들의 조합이 함수 출력에 영향을 미치지 않는 경우 n 함수 간단화에 사용 n 예) BCD코드에서 4자리인 1010, 1101, 1110, 1111등은 발생 하지 않는다는 조건 하에서 동작. 결과적으로 출력과 무관한 논리회 로가 구성됨. n 무관조건이 있는 논리함수 표현 F ( w, x, y, z ) = m ( 1, 3, 5, 7 ) + d ( 0, 4 ) Computer System Architecture 멀티미디어공학과 김해영
무관 조건이 포함된 함수의 간소화 F ( w, x, y, z ) = m ( 0, 7, 8, 10, 15 ) + d ( 1, 2, 9, 11, 13 ) 곱의 합형 yz wx 00 01 00 1 d 10 yz wx 00 01 11 10 d 00 1 d 0 d 1 01 0 0 1 0 d 1 11 0 d d 10 1 d d 1 01 11 10 1 11 F ( w, x, y, z ) = x y z + x z Computer System Architecture 합의 곱형 1 F ( w, x, y, z ) = ( x + y ) ( x + z ) 멀티미디어공학과 김해영
논리회로의 구분 n 조합회로 u 현재의 출력이 이전의 입력 조합에 관계없음 u 현재의 입력 조합에 의해서만 출력 결정 u 논리 게이트 만으로 구성 u 가산, 감산 등의 연산 회로에 사용 u 종류 : 반가산기, 전가산기, 디코더, 엔코더, 멀티플렉서 n 순차회로 u 논리 게이트 외에 F/F 와 같은 메모리 장치요소 사용 u 메모리 요소의 상태와 입력 조합에 의해 출력 결정 u 즉, 현재의 입력뿐 아니라 과거의 입력도 출력에 영향을 줌. u 회로의 동작 : 내부상태와 시간순차(Time Sequence)에 의해 결정 u 종류 : 카운터 회로, 계수기, 정보 기억 소자 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로(Combinational Circuit) n 조합 논리 회로(Combinational Circuits) u 입력과 출력을 가진 논리 게이트(logic gates)의 집합으로 출력은 현재의 in Combinational Circuits (Logic Gates) . . . i 0 i 1 . . . 입력값에 의해 결정 u Fig. 2 -12 조합회로 블록도 f 0 f 1 fm n 해석(Analysis) u Logic circuits diagram n 설계(Design)(Analysis의 반대) Boolean function or Truth table Experience 1. 주어진 문제를 분석 2. 입출력 변수의 개수를 결정/입출력 변수에 기호 할당 3. 입출력 변수에 대한 진리표 작성(Truth table) 4. 출력을 간소화된 부울 함수로 표현(Map 과 Boolean 대수 이용) 5. 논리 회로를 작성(Logic circuit diagram) Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로(Combinational Circuit) in Combinational Circuits (Logic Gates) . . . i 0 i 1 . . . n 조합 논리 회로(Combinational Circuits) f 0 f 1 fm n【문제 2. 6】위의 그림과 비교하면서 다음 문제를 생각해 봅시다. 아래 그림에서 몇 개의 입력 조합이 나타나는가? 또 몇 개의 출력이 나오는가? Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 해석 예 n 조합 회로의 해석은 주어진 논리 회로도로부터 부울 함수나 진리표 를 구하고 논리 회로의 동작을 해석 n 해석 과정 (1)논리 회로도에서 해석을 위해 필요한 입·출력 변수명을 결정한다. (2) n개의 입력 변수에 대한 2 n개의 입력조합과 출력변수 에 대한 진리표를 작성하거나 각 게이트의 출력 부울 함수를 구한다. (3) 최종 출력 부울 함수를 구한 후 간소화한다. (4) 출력 부울 함수와 진리표를 통해 논리 회로의 동작을 해석한다. Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 해석 예 n 그림 2 -14와 같은 조합 회로를 해석 u 3개의 입력변수와 1개의 출력변수 (1) 입력변수 : A, B, C 출력변수 : F 해석을 위한 임시변수 : T 1, T 2, T 3을 결정 (2) 입력변수에 대한 진리표를 작성 혹은 각 게이트의 출력을 구한다. T 1 = AB', T 2 = AB'C, T 3 = A'B 간소화 (3) 최종 출력 부울 함수를 구한다. F = T 1 + T 2 + T 3 = AB' + AB'C + A'B F = AB' + A'B Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로의 해석 예제 1) 입력 변수와 출력 변수 선정 x y z T 1 T 2 F T 3 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로의 해석 예제 2) 입력 변수 진리표 작성 x z T 1 T 2 T 3 F 0 0 0 0 0 1 0 1 0 1 1 1 0 0 0 0 1 1 1 Computer System Architecture y 1 1 0 0 1 1 멀티미디어공학과 김해영
조합 논리 회로의 해석 예제 3) 각 게이트 출력 구함 T 1 = x y z T 2 = x y z T 3 = x y 4) 진리표에 의한 부울 함수 구함 F = T 1 + T 2 + T 3 = x y z + x y Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로의 해석 예제 5) 부울 함수식을 간소화 한다. F=xyz+xy =xy(z+z)+xy =y(x+x) =y 카노르 맵 yz 00 01 11 10 0 1 1 1 0 0 1 1 x F= y Computer System Architecture 멀티미디어공학과 김해영
무관 조건이 있는 조합 논리 회로의 해석 예제 1) 입력 변수와 출력 변수 선정 w T 3 a T 4 T 5 x b T 1 y z Computer System Architecture T 2 c d 멀티미디어공학과 김해영
무관 조건이 있는 조합 논리 회로의 해석 예제 2) 입력 변수에 의한 입력 진리표 작성 입력 변수가 4개 이므로 16가지 입력 조합. 3) 각 게이트의 출력을 구한다 T 1 = y + z T 2 = y • z = y z + y z T 3 = T 1 x = ( y + z ) x = x y + x z T 4 = T 1 x = ( y + z ) x = x y + x z T 5 = x y z Computer System Architecture 멀티미디어공학과 김해영
무관 조건이 있는 조합 논리 회로의 해석 예제 4) 진리표 a, b, c, d 의 각각의 함수 값을 구하고, 간소화 한다. a = w + T 3 = w + T 1 x =w+(y+z)x =w+xy+xz b = T 4 + T 5 = x T 4 + x y z = x ( y + z ) + x y z =xy+xz+xyz c = T 2 = y z + y z d=z Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 n 글로 표현된 문제로부터 시작하여 부울 함수나 진리표 이용해 논리 회로의 동작을 계획하고 논리 회로도를 완성하는 과정 n 설계 과정 (1) 설계에 관한 문제를 보고 분석한다. (2) 주어진 문제에서 입력과 출력변수의 개수를 구하고 각 각의 기호를 붙인다. (3) (2)항의 내용에 따른 진리표를 얻는다. (4) (3)항의 진리표에서 각 출력 변수에 대한 간소화된 부울 함수를 얻는다. (5) 논리 회로도를 그린다. Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 n 설계 과정 u 1) u 2) u 3) u 4) u 5) n 주어진 문제를 분석한다. 논리 회로의 입. 출력 변수와 변수 명을 결정 진리표를 작성한 후 부울 함수를 구한다 부울 함수를 간소화 한다 간소화된 부울 함수로 부터 논리 회로 설계 설계 시 유의사항 u 게이트 입력의 최소화 u 게이트 수의 최소화 u 논리회로의 전파 지연시간 최소화 u 상호 연결 수 최소화 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 가산기( Adder) 반가산기(Half Adder : HA) 전가산기(Full Adder : FA) u 반가산기 u 전가산기 u 1비트의 두 2진수를 더하는 조합 논리 회로 u 반가산기 : 2 입력(A, B)과 2 출력(합 : S, 자리올림 : C) 전가산기 : 3 입력 (Carry considered)(A, B, C 0)과 2 출력 (합 : S, 자리올림 : C 1) u 진리표 u 전가산기 u 반가산기 Computer System Architecture 멀티미디어공학과 김해영
반 가산기 n 1 비트의 두개 2진수를 더하는 논리회로 n 2입력 2출력 u 2 입력 : 피 연산수(x)와 연산수(y) u 2 출력 : 합( S : Sum)과 올림수( C : Carry ) n 설계 순서 1) 문제 분석 x + C : 피 연산수 y : 연산수 S : 합 올림수 Computer System Architecture 멀티미디어공학과 김해영
반 가산기 2) 입 출력 변수와 변수명 정의 u 피연산 입력 변수 u 합 출력변수 u 올림수 출력변수 : x : y : S : C 3) 반 가산기의 진리표 작성 x C S 0 0 0 1 1 Computer System Architecture y 1 1 0 멀티미디어공학과 김해영
반 가산기 4) 진리표로부터 출력 함수 S, C 최소화 S=xy+xy =x + y n 맵으로 간소화 시키면 ? ? ? C=xy 5) 구해진 출력 함수로 회로 설계 x y S C Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 설계 예 : 전가산기(Full Adder)를 설계하시오. u 1. 문제 분석 u 2. 입출력 변수의 개수를 결정/ 변수를 할당 3 입력(A, B, C 0), 2 출력(S: sum, C 1: carry) u 3. 진리표 작성 u 5. 논리 회로도 u 4. 맵을 이용한 간소화 C 1 = AB’C 0 + A’BC 0 + AB S=AB’C 0’ + A’B’C 0 + ABC 0 + A’BC 0’ = C 0’(AB’ + A’B) + C 0(A’B’ + AB) =C 0(AB’ + A’B) + AB = C 0’(A B) + C 0(A B)’ = C 0 (A B) + AB = a’b + ab’ (let a= C 0, b=A B) = A B C 0 (A B)’=(AB’+A’B)’ =(A’+B)(A+B’) =A’A+A’B’+AB+BB’ =A’B’+AB Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 감산기( Subtractor) 반감산기(Half Subtractor : HS) 전감산기(Full Subtractor : FS) u 반감산기 u 전감산기 u 1비트의 두 2진수를 감산하는 조합 논리 회로 u 반감산기 : 2 입력(X, Y)과 2 출력(차 : D, 자리빌림 : B) 전감산기 : 3 입력 (Borrow considered)(X, Y, B 0)과 2 출력 (차 : D, 자리빌림 : B 1) u 진리표 u 전감산기 u 반감산기 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 디코더(Decoder) u u n비트의 2진 입력을 받아 2 n 개의 출력 중 하나를 활성화(‘ 1’이 되도록 함) 활용 : 메모리 칩 선택 신호, 명령어 해독과 제어 장치 등에 사용 n× 2 n 디코더 : n개의 입력과 2 n 개의 출력 2× 4 디코더를 설계 l 1. 입출력 변수의 개수를 결정/변수를 할당 2 입력 (A, B), 4 출력(D 0, D 1, D 2, D 3) l 2. 진리표를 작성 l 3. 논리회로 작성 2× 4 디코더 37 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 인에이블 입력을 가진 3 x 8 디코더 u 회로동작 제어를 위해 인에이블(enable) 입력 사용 A u 예 : 그림 [2 -22] u enable input = 0, 모든 출력 0 B u enable input = 1, 정상 동작 C D 0 D 1 D 2 D 3 인에이블 입력을 가지는 3× 8 디코더 D 4 D 5 D 6 블록도 38 Computer System Architecture D 7 Enable 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 디코더(Decoder)를 이용한 조합 논리 회로 설계 u n개의 입력변수들에 대한 2 n개의 최소항 표현 u 이를 이용하여 임의의 조합 논리 회로 설계시 디코더를 사용 u 즉, 모든 부울함수는 최소항의 합 형으로 표현 가능 디코더 최소항 표현, 합 OR게이트 이용 u n개의 입력과 m개의 출력을 가지는 임의의 조합 회로를 설계하려면 n × 2 n 디코더와 m개의 OR 게이트로 구현 가능 u 예 : 전가산기를 디코더로 설계(입력변수 3개, 출력변수 2개) S(A, B, C 0) = ∑(1, 2, 4, 7) C 1(A, B, C 0) = ∑(3, 5, 6, 7) 39 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 인코더(Encoder) u 디코더의 반대 기능을 수행, OR 게이트로 구성 u 2 n개의 입력과 n개의 출력 u 8진× 2진 인코더 설계 1. 입출력 변수의 개수를 결정/변수를 할당 8 입력 (D 0, D 1, D 2, D 3, D 4, D 5, D 6, D 7), 3 출력(A, B, C) 2. 진리표를 작성 3. 진리표로부터 출력 부울 함수를 구하면 A = D 4 + D 5 + D 6 + D 7 B = D 2 + D 3 + D 6 + D 7 C = D 1 + D 3 + D 5 + D 7 40 4. 논리회로 작성 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 8진-2진 인코더 1. 입력 D 0은 어떤 OR 게이트에도 연결되지 않았는데 이 경우에 2진 출력은 모두 0 이 되어야 하기 때문 2. 회로에서 인코더의 입력은 단지 하나의 입력만이 1 이 된다고 가정 이 회로에서 입력은 8개이므로 28=256가지의 입력 조합이 나타남. 이들 중 단지 8개만이 의미 있는 입력이므로 다른 입력들은 전부 무관조건이 됨. Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 멀티플렉서(Multiplexer) u 여러 개의 입력선 중의 한 선으로부터 정보를 받아들여 단일의 출력선으로 정보를 출력하는 조합 논리 회로 u 특정 입력선의 선택은 선택선(Select line)에 의해 제어 u 2 n개의 입력과 1개의 출력, n개의 선택선 u 4× 1 멀티플렉서 설계 l 1. 입출력 변수의 개수를 결정/변수를 할당 4 입력 (I 0, I 1, I 2, I 3), 1 출력(Y), 2 선택선(S 0, S 1) l 2. 함수표(진리표)를 작성 l 3. 논리회로 작성 u OR게이트의 역할: 선택된 입력과 출력을 연결시켜 주는 통로 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 4개의 2× 1 멀티플렉서(Multiplexer) u Enable input = 0 , 정상 동작 u 선택선 S와 인에이블 입력선 E는 공통으로 인가 (b) 함수표 (a) 블록도 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 디멀티플렉서(De. Multiplexer) u 멀티플렉서의 역기능을 수행 u 하나의 입력선과 2 n개의 출력선, n개의 선택선으로 구성 u 1× 4 디멀티플렉서 (b) 함수표 (a) 회로도 Computer System Architecture (c) 블록도 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 코드 변환 회로(2진/그레이 코드 변환기) u 그레이 코드 : 서로 이웃한 수끼리 1비트만 다르게 구성된 코드 u 3비트의 2진수를 그레이 코드로 변환하는 회로 설계 l 1. 입출력 변수의 개수를 결정/변수를 할당 3 입력 (a, b, c), 3 출력(x, y, z) l 2. 진리표를 작성 (변환과정 다음 Page) l 4. 논리 회로 작성 l 3. 맵을 이용한 간소화 : 출력 부울 함수 유도 45 Computer System Architecture x=a y = a'b + ab' z = b'c + bc' 멀티미디어공학과 김해영
조합 논리 회로 해석 예 n 2진수/그레이 코드 변환 과정 ① 2진수의 최상위 비트는 그레이 코드의 최상위 비트가 된다. ② 최상위 비트부터 한 비트씩 오른쪽으로 진행하면서 이웃하는 2개의 2진수에 대한 XOR 연산을 수행하면 그 결과가 그레이 코드 a b c 가 된다. (2진수) ③ 마지막 코드가 얻어질 때까지 ②번을 반복한다. n 그레이 코드/2진수 변환 과정 x y z (그레이 코드) ① 그레이 코드의 최상위 비트는 2진수의 최상위 비트가 된다. ② 최상위 비트와 두 번째 비트를 XOR 연산하면 결과가 2진수가 된다. ③ 두 번째 2진수 비트와 세 번째 그레이 코드의 비트를 XOR 연산하면 결과가 2진수가 된다. x y z (그레이크드) ④ 마지막 코드가 얻어질 때까지 ③번을 반복한다. 간소화와 논리회로 작성 fig. 2 -28 a Computer System Architecture b c (2진수) 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 코드 변환 회로 ( BCD / 2421 ) u 2421 코드 : 각 자리수의 가중치를 21 , 22, 21 , 20 로 한 코드 u BCD 코드와 2421 는 4비트의 2진수의 16 가지의 비트 조합이 가능하지만 16개중 10개만을 사용하므로 6개는 무관 조건이 됨 l 1. 입출력 변수의 개수를 결정/변수를 할당 4 입력 (w, x, y , z), 4 출력(a, b, c, d) l 2. 진리표를 작성 l 3. 맵을 이용한 간소화 : 출력 부울 함수 유도 45 l 4. 논리 회로 작성 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 코드 변환 회로 ( BCD / 2421 ) 3. 맵을 이용한 간소화 : 출력 부울 함수 유도 yz wx 10 yz wx 00 01 11 10 00 0 01 0 1 1 11 d d d d 10 1 1 d d a=w+xy+xz b=w+xy+xz 45 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 코드 변환 회로 ( BCD / 2421 ) 3. 맵을 이용한 간소화 : 출력 부울 함수 유도 yz wx 00 01 11 10 00 0 0 1 1 0 01 0 1 1 0 11 d d d d 10 1 1 d d 10 0 1 d d c=w+xy+xyz d=z 45 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n 코드 변환 회로 ( BCD / 2421 ) 4. 논리 회로 작성 w x y a z b c d 45 Computer System Architecture 멀티미디어공학과 김해영
패러티 발생기(Parity bit generator) n 패리티 비트 (Parity bit) - 2진 정보를 전송할 경우 외부 잡음에 의해 1은 0으로 혹은 0은 1로 변하는 에러가 발생 - 에러가 발생한 2진 정보에서 에러를 탐지하기 위해 하나의 데이터 비트 첨가하는 에러 검출용 비트를 패리티 비트라고 함 n 진리표 ‘ 1’이 홀수 개 되게 함 3 비트 정보 ‘ 1’이 짝수 개 되게 함 x y z 짝수 패러티 PE 0 0 0 1 0 1 0 0 1 1 1 0 0 0 1 1 0 1 1 1 Computer System Architecture 홀수 패러티 PO 0 1 멀티미디어공학과 김해영
패러티 발생기(Parity bit generator) n 카르노 맵을 이용한 간소화 yz 00 01 11 10 0 1 0 1 0 1 x 홀수 패러티 Computer System Architecture yz 00 01 11 10 0 0 1 1 1 0 x 짝수 패러티 멀티미디어공학과 김해영
패러티 발생기(Parity bit generator) n 부울 대수의 관계식을 이용한 간소화 ( 홀수 패러티 ) PO = x y z + x y z + x y z =(yz+yz)x+(yz+yz)x =(y • z)x+(y + z)x =(y + z)x+(y + z)x =(y • z)x+(y • z)x y + z=p y • z=q =xp+xp =xq+xq =x • p =x + q =x • (y + z) =x + (y • z) =x • y + z =x + y • z Computer System Architecture 멀티미디어공학과 김해영
패러티 발생기(Parity bit generator) n 부울 대수의 관계식을 이용한 간소화 ( 짝수 패러티 ) PE = x y z + x y z + x y z =(xy+xy)z+(xy+xy)z =(x • y)z+(x + y)z =(x + y)z+(x + y)z =(x • y)z+(x • y)z x + y=p x • y=q =pz+pz =qz+qz =p + z =q • z =(x + y) + z =(x • y) • z =x + y + z =x • y • z Computer System Architecture 멀티미디어공학과 김해영
패러티 발생기(Parity bit generator) n 출력 함수로부터 회로 구현 x y PO z 홀수 패러티 x y PE z 짝수 패러티 Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n ROM을 이용한 조합 회로 설계 u 2. 3. 4에서 디코더를 이용한 조합회로 설계 u ROM = 디코더 + OR l 디코더의 출력들과 OR게이트의 입력들을 서로 연결 ROM을 프로그래밍 l n개의 입력선과 m개의 출력선으로 구성 l 2 n개의 워드(word)와 워드당 m 비트로 구성 ROM 블록도 l n개의 입력과 m개의 출력을 가지는 조합회로를 ROM을 이용하여 구현 2 n x m ROM이 필요 l예 F 1(A, B) = ∑(1, 2, 3) F 2(A, B) = ∑(1, 3) Computer System Architecture 멀티미디어공학과 김해영
조합 논리 회로 설계 예 n ROM을 이용한 조합 회로 설계 u 구현 : 2개(n)의 입력과 2개의 출력(m)을 가지는 ROM 필요 u ROM의 크기 4 x 2 2 n x m F 1(A, B) = ∑(1, 2, 3) F 2(A, B) = ∑(1, 3) Computer System Architecture 4 x 2 ROM으로 조합 회로 구현 멀티미디어공학과 김해영
순차 논리 회로(Sequential logic circuit) n 순차 논리 회로 n 조합 논리 회로 + 메모리 요소(플립플롭) Combinational Circuit = Gate Sequential Circuit = Gate + F/F u 출력 : 입력변수의 값과 현재상태[Q(t)]의 값에 의해 결정 순차회로 블록도 동기식(synchronous) : 입력신호 타이밍이 클럭 발생기에서 규칙적으로 발생 비동기식(asynchronous) : 입력신호들이 변화하는 순서에 좌우됨 u 메모리 요소 : 플립플롭(f/f) 한 비트의 이진 정보를 저장할 수 있는 이진 셀(cell) 정상 출력 Q(t)과 보수 출력 Q’(t) 50 Computer System Architecture 멀티미디어공학과 김해영
플립 플롭(Flip flop) n 기본 플립 플롭 회로 u 2개의 NAND 게이트 혹은 NOR 게이트로 구성 u SR 래치(latch) 50 Computer System Architecture 멀티미디어공학과 김해영
플립 플롭(Flip flop) n SR(Set/Reset) 플립플롭 논리도 기호 Computer System Architecture S 와 R 이 동시에 1 이 될 수 없음 특성 방정식 특성표 멀티미디어공학과 김해영
플립 플롭(Flip flop) n D(Data) 플립플롭 n RS 플립플롭의 변형으로 R=S=1인 경우, RS f/f 은 불능이 되므로 S와R이 동시에 1이 되지 않도록 회로적으로 보장한 것 n JK(Jack/King) 플립플롭 Computer System Architecture 멀티미디어공학과 김해영
플립 플롭(Flip flop) n T(Toggle, 반전) 플립플롭 : JK f/f 을 한개의 입력으로 한 것 논리도 기호 Computer System Architecture 특성표 특성 방정식 멀티미디어공학과 김해영
주-종(Master-Slave) 플립 플롭 n 주-종 플립플롭 u CP = 0 : 주(master) 플립플롭 비활성화 u CP = 1 : 종(slave) 플립플롭 비활성화 주-종 플립플롭에서의 시차 관계 주-종 플립플롭 1. S=1, R=0 인 경우, CP가 0에서 1로 변하는 동안 주f/f 는 세트되고 종 f/f 는 CP=0 이므로 아무런 영향이 없음 2. CP=0 가 1 에서 0 으로 바뀌면 주f/f의 정보가 종f/f 에 전 송되며 외부 출력이 Q=1 이 됨 3. 주종 f/f 의 특성은 CP 가 0에서 1로 바뀌는 순간에 외부 출력 Q가 변화함 55 Computer System Architecture 멀티미디어공학과 김해영
플립 플롭의 여기표 n 여기표(Excitation Table) p 109~ p 112 의 특성표를 보고 u 현재 상태와 다음 상태를 알 때 플립플롭의 입력 조건 정의한 표 u 현재 상태(Present State) 와 다음 상태(Next State)로 표현 Computer System Architecture 멀티미디어공학과 김해영
플립 플롭의 트리거링(triggering) n 레벨 트리거 플립플롭(Level -Triggered F/F) u 상태 변화 : Clock Pulse가 1인 상태를 유지하는 동안의 입력신호 변화가 출력에 반영 n 예제 (a) 출력 파형(초기상태 = low) Computer System Architecture (b) 블록도 멀티미디어공학과 김해영
플립 플롭의 트리거링(triggering) n 에지 트리거 플립플롭(Level -Triggered F/F) u 상태 변화 : Clock Pulse의 에지(상승에지와 하강에지) 동안에만 입력신 호 변화가 출력에 반영 (a) 클록 펄스의 에지 (c) 상승 에지 플립플롭 블록도 Computer System Architecture (b) 출력 파형(초기상태 = low) (d) 하강 에지 플립플롭 블록도 멀티미디어공학과 김해영
순차 논리 회로의 해석 n 순차 논리 회로의 해석 u 논리도로 부터 상태표 혹은 상태도를 도출 n Clocked synchronous sequential circuit Input Combinational Circuit Output 1 Clock Flip-Flops Clock n 플립플롭 입력식( 1 ) x DA u Boolean expression for F/F input A’ u 입력식 l DA = Ax + B’x, DB = A’x u 출력식 l y = Ax’ + B’x’ A DB Clock B B’ y 60 Computer System Architecture 멀티미디어공학과 김해영
순차 논리 회로의 해석 n 상태표(State Table) u Present state, input, next state, output 표현 Input Equ. = Next State n 상태도(State Diagram) u 상태도의 그래픽 표현(Graphical representation ) u 원(상태: state), 직선(상태의 전이), I/O(input/output) Computer System Architecture 멀티미디어공학과 김해영
순차 논리 회로의 설계 n 순차 논리 회로 설계 과정 ① 설계 사양으로부터 상태표와 상태도를 구한다. ② 사용할 플립플롭의 종류를 선택하고 플립플롭의 수를 결정한다. ③ 플립플롭의 입력과 출력 각각에 문자 기호를 붙인다. ④ 상태표를 확장하여 여기표와 출력표를 구한다. ⑤ 맵을 이용하여 간소화된 플립플롭의 입력함수와 조합 회로 부분의 출력함수를 구한다. ⑥ 논리도를 그린다. Computer System Architecture 멀티미디어공학과 김해영
순차 논리 회로의 설계 n 설계 예 : 이진 카운터 설계 u 2비트 이진 카운터를 설계, JK 플립플롭 사용 u 단 상태의 변화는 외부입력 x=1일 때 이진 상태 00, 01, 10, 11, 00, …를 반복 l 1. 상태도 작성 JK특성표 Next State = Output l Computer System Architecture 2. 상태표/여기표 작성 멀티미디어공학과 김해영
순차 논리 회로의 설계 l l 3. 맵을 이용한 간소화 4. 논리 회로 작성 JA = Bx KA = Bx 2비트 이진 카운터 논리도 JB = x KB = x Computer System Architecture 멀티미디어공학과 김해영
카운터의 설계 n 동기식 카운터, 비동기식 카운터(리플 카운터) n 비동기식 예제 (a) 타이밍 차트 (b) 10진 카운터 회로 65 Computer System Architecture 멀티미디어공학과 김해영
카운터의 설계 n 동기식 예제(3비트 이진 카운터) u 하나의 공통 클럭이 모든 플립플롭의 클럭에 연결되며 이 공통 클럭에 의 해 모든 플립플롭이 동시에 동작하는 카운터 u n비트의 2진 카운터는 n개의 플립플롭으로 구성되며 0에서 2 n-1까지 셀 수가 있음 1. 상태도 작성 상태도 Computer System Architecture 2. 상태표와 여기표 작성 (b) 상태도와 여기표 멀티미디어공학과 김해영
카운터의 설계 n 동기식 예제(3비트 이진 카운터) u 3. 맵을 이용한 간소화 TA = BC TB = C TC = 1 u 4. 논리 회로 작성 Computer System Architecture 멀티미디어공학과 김해영
레지스터 n 레지스터 u 2진 정보를 저장하는 기억소자 u 여러 개의 플립플롭으로 구성 u n비트 레지스터 : n개의 플립플롭으로 구성 u 기능 : 저장, 시프트(Shift), 회전 등 4비트 레지스터 Computer System Architecture 멀티미디어공학과 김해영
시프트 레지스터 n 시프트 레지스터 u 오른쪽, 왼쪽으로 이진 정보를 시프트 u n비트 시프트 레지스터 : n개의 플립플롭 + 제어 게이트 오른쪽 시프트 레지스터의 블록도 n 입출력 방식 직렬 직렬 병렬 병렬 Computer System Architecture 입력 입력 - 직렬 - 병렬 출력 출력 멀티미디어공학과 김해영
집적 회로 n 집적 회로 u 크기가 작다. u 동작 속도가 빠르다. u 전력 소모가 적다. u 수명이 길며, 고장률이 낮아 신뢰도가 높다. u 외부 회로와 연결 회로가 간단하다. u 따라서, 경제적이다. n 반도체 제조 기술에 따른 집적 회로의 분류 Computer System Architecture 멀티미디어공학과 김해영
집적 회로 n 회로의 집적도에 따른 분류 u 소규모 집적 회로(SSI : Small scale Integrated circuit) u 중규모 집적 회로(MSI : Medium scale Integrated circuit) u 대중규모 집적 회로(LSI : Large scale Integrated circuit) u 초대규모 집적 회로(VLSI : Very Large scale Integrated circuit) n DIP 모형 Computer System Architecture 멀티미디어공학과 김해영
집적 회로 n TTL IC n 마이크로프로세서 Computer System Architecture 멀티미디어공학과 김해영
f5e0358c759cc861a64b10dfeea01278.ppt