Microsoft PowerPoint - M08_CPUcontrol.ppt [호환 모드]

Similar documents
Microsoft PowerPoint - DSD06b_Cont.pptx

Microsoft PowerPoint - DSD03_verilog3b.pptx

Microsoft PowerPoint - M07_RTL.ppt [호환 모드]

한국기술교육대학교장영조 한국기술교육대학교전기전자통신공학부 1

Microsoft PowerPoint - hy2-12.pptx

학습목차 r 개념으로살펴보는 CPU 속의제어장치 r 마이크로연산 r 제어장치의동작 r 마이크로프로그램을이용한제어 컴퓨터구조 제어장치

Microsoft PowerPoint - hw8.ppt [호환 모드]

Microsoft PowerPoint - 30.ppt [호환 모드]

hwp

untitled

PowerPoint 프레젠테이션

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A638C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

9

학습목표 2/33 마이크로프로세서와마이크로컨트롤러의차이를알수있다. 마이크로프로세서에서프로그램이수행되기위한명령어형식과명령어실행절차를알수있다. 프로그램을수행하려면어떤종류의명령어가필요한지알수있다. 현대컴퓨터의기본모델인저장형프로그램컴퓨터의한계점과그한계를완화하려는방법을알수있다.

논리회로설계 6 장 성공회대학교 IT 융합학부 1

9장 순차논리 회로

프로그램카운터 (Program Counter) 명령레지스터 (Instruction Register) 누산기 (AC: Accumulator) 상태레지스터 (Status Register) PSWR(Program Status Word Register) 메모리주소레지스터 (M

<C1A4BAB8C3B3B8AE5FB1E2BBE75FC7CAB1E25F FB1E2BBE7C6D0BDBABFEB2E687770>

Microsoft PowerPoint - ch11_reg.pptx

Computer Architecture

동기순차회로 p 조합논리회로 combinational logic circuit) v 출력이현재의입력에의해서만결정되는논리회로 p 순차논리회로 sequential logic circuit) v 현재의입력과이전의출력상태에의해서출력이결정 v 동기순차논리회로와비동기순차논리회로로

Microsoft PowerPoint - hy2-12.pptx

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

Computer Architecture

ºÎ·ÏB

Microsoft PowerPoint - ARM System-on-chip architecture_Chap 4_23p.ppt

. 고성능마이크로프로세서 LU 와레지스터 파일의구조 (2.). 직접디지털주파수합성기 (FS) 의구조 3. 고성능마이크로프로세서부동소수점연산기 (Floating-Point Unit) 구조 (2) (2.) (2.) 2. 암호화를위한 VLSI 구조와설계의개요 (2.) 다음참

개요 데이터를저장할수있는기억소자 여러개의플립플롭으로구성. 메모리는단순데이터를저장하는소자이지만, 레지스터는저장뿐아니라저장된데이터를처리할수있는기능도있다. 카운터도클록펄스가입력되면미리정해진순서에따라상태가변하는레지스터이다. 카운터와레지스터의차이점 데이터를저장또는이동하는목적으로

정보보안 개론과 실습:네트워크

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

슬라이드 1

Chapter ...

Microsoft Word - 1. ARM Assembly 실습_xp2.doc

4. 다음주소지정방식중속도가가장빠른주소방식은? 가. immediate addressing mode 나. direct addressing mode 다. indirect addressing mode 라. index register. 5. 간접주소 (indirect addr

Microsoft PowerPoint - DSD06c_ISA.pptx

8장 조합논리 회로의 응용

(1) 주소지정방식 Address Mode 메모리접근 분기주소 명령어 직접번지 Reg. 지정 Reg. 간접 Base Index 간접 Immediate 상대번지 절대번지 Long 주소 Reg. 간접 Byte Access Bit Access 내부 Data M

Microsoft PowerPoint - DSD03_verilog3a.pptx

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

Microsoft PowerPoint - VHDL08.ppt [호환 모드]

Microsoft PowerPoint - 사본 - OAS04-사무자동화 기술(HW-CPU).ppt

마이크로프로세서 개요

1. 일련의순차적인수를세는회로는? < 가 > 가카운터 다디코더 나레지스터 라인코더 2. 입력펄스에따라미리정해진순서대로상태가변화하는레지스터로써발생회수를세거나동작순서를제어하기위한타이밍 (timing) 신호를만드는데가장적합한회로는? < 다 > 가범용레지스터 다

<C0FCC0DAB0E8BBEAB1E2B1B8C1B6397E3131B0AD20B9AEC1A62BC1A4B4E42E687770>

Microsoft PowerPoint - M09_CPUarchi.ppt [호환 모드]

Microsoft Word - PLC제어응용-2차시.doc

실사구시학파의 실증적 학풍이 일어나므로 서구적인 과학사상의 유입을 본 것 등이 인식 의 대상이 될 것이다. 그러나 이조 봉건사회 최종의 절대적 왕권주의자 대원군에 의하여 그 싹은 잘리고 말았다. 따라서 다단한 전기가 될 근대적 개방에 의하여 재건하려던 서구적 교육 즉

온라인 IT 교육최강 ( 강의정보처리필기강사조대호 차시명 [CA-06 강 ] 프로세서와명령어차시 6 차시 학습내용 프로세서와명령어 학습목표 컴퓨터의구조와프로세서에대해이해할수있다 컴퓨터의명령어에대해이해할수있다 학습내용 1. 컴퓨터의구성 - 1

Microsoft PowerPoint - o8.pptx

PowerPoint 프레젠테이션

T100MD+

untitled

<4D F736F F F696E74202D20332EB5F0C1F6C5D0C8B8B7CEBFCD20B1B8C7F62E >

MicrocontrollerAcademy_Lab_ST_040709

학습목차 r 컴퓨터본체에서 CPU 의위치살펴보기 r CPU 의성능 r CPU 의기능 r CPU 의조직 r 레지스터의조직 r 명령어사이클 r 명령어파이프라이닝 컴퓨터구조 2 9. CPU 조직과기능

AVR ATmega128 소개 마이크로컨트롤러 AVR ATmega128 저자 : 이상설 소속 : 원광대학교전기 정보통신공학부

chap7_ohp.hwp

PowerPoint 프레젠테이션


Computer Architecture

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

Computer Architecture

PowerPoint 프레젠테이션

v6.hwp

Microsoft Word - logic2005.doc

Introduction to LMC

À̵¿·Îº¿ÀÇ ÀÎÅͳݱâ¹Ý ¿ø°ÝÁ¦¾î½Ã ½Ã°£Áö¿¬¿¡_.hwp

슬라이드 1

슬라이드 제목 없음

학습목차 r컴퓨터분해를통한본체살펴보기 r컴퓨터구성요소 r컴퓨터의기능 r버스와상호연결 컴퓨터구조 2 4. 컴퓨터시스템의구성과기능

슬라이드 1

Microsoft PowerPoint - es-arduino-lecture-03

Microsoft PowerPoint - 09-컴구조-5-프로세서

Microsoft PowerPoint - 3ÀÏ°_º¯¼ö¿Í »ó¼ö.ppt

구문 분석

[ 마이크로프로세서 1] 1 주차 1 차시. 마이크로프로세서개요 1 주차 1 차시마이크로프로세서개요 학습목표 1. 마이크로프로세서 (Microprocessor) 를설명할수있다. 2. 마이크로컨트롤러를성능에따라분류할수있다. 학습내용 1 : 마이크로프로세서 (Micropr

untitled

FARA PLC N70plus 시스템 사용자 메뉴얼

PRO1_09E [읽기 전용]

sw $6,50($1) I3 If register read/write can be done in one cycle, only 2 s are needed. (Both are correct) lw $1,40($6) I1 add $6,$2,$2 I2 sw $6,50($1)

슬라이드 1

Microsoft PowerPoint - 제10장.ppt [호환 모드]

歯FDA6000COP.PDF

그룹웨어와 XXXXX 제목 예제

. PC DP-1VR P15 1ch 1 Input Tool 4ch RS-232C RS-232C. Input Tool P14 MUX-10F P16 MeasureReport P21 GO/NG 2 MeasurLink Real-Time P19 MeasurLink STATMea

PowerPoint Presentation

SRC PLUS 제어기 MANUAL

Microsoft PowerPoint - 부호기와 복호기.PPT

ADP-2480

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D>

API 매뉴얼

PowerPoint 프레젠테이션

Remote UI Guide

2009년2학기 임베디드시스템 응용

adfasdfasfdasfasfadf

<4D F736F F F696E74202D203137C0E55FBFACBDC0B9AEC1A6BCD6B7E7BCC72E707074>

PowerPoint 프레젠테이션

Transcription:

제 8 장순차진행과제어 8-1 제어장치 동기형디지틀시스템의제어 : - master clock 발생회로에의한클럭제어 - 각클럭사이클마다레지스터의상태값변화 제어장치 - 연산순서에맞는제어신호공급 - 연속된마이크로연산결정 - Programmable and non-programmable system 명령어 (instruction) - programmable system - 연산종류, operand, 저장위치, next 명령어등지정 - RAM/ROM에저장됨 - PC : 실행할 instruction에대한주소저장 1

ASM(Algorithmic State Machine) - 디지털하드웨어알고리즘정의 - 클럭펄스에의한연산실행표현 ASM 구성요소 state box : 상태부호 ( 이진값 ), 활성레지스터, 출력신호 decision box : 분기신호 conditional output box : 조건출력 decision box로부터 2

ASM block - 한개의상태박스는반드시포함, 판별및조건적출력박스는 option - 한개의 ASM 블럭은한개의클럭타임에수행 Timing - 레지스터의상태변화는다음클럭의에지에서발생함에유의 *ASM 도는상태도와유사 상태박스 - 상태원, decision 상태천이조건 조건출력 Mealy type 출력 3

8-3 ASM chart 에의한이진 Multiplier 설계 4

승산기구조 CAQ : carry, product(aq), 승수 (Q) shift right 레지스터 P : shift 연산마다 down counter, 초기값 (n-1) 제어기 : G, Z, Qo 입력상태및모드제어신호출력 5

승산기 ASM도초기연산 : B 피승수, Q 승수 3개의상태 IDLE 외부입력 G=0 차기상태는 idle, G=1 C,A,P CAP 초기화, MUL0 로천이 MUL0 Q0=1 addition C, A A+B goto MUL1 MUL1 c 0, CIIAIIQ sr CIIAIIQ P P-1 if Z=1 goto IDLE Z=0 goto MUL0 (loop n-1) 데이터처리장치기능 A 레지스터 : 병렬로드, 시프트, 동기클리어 Q 레지스터 : 병렬로드, 시프트 C 플립플럽 : 로드, 동기클리어 B 레지스터 : 병렬로드 P 카운터 : 병렬로드, 하강카운터 6

8-4 Hardwired Control Sequencer Control sequencer 데이터패스모드제어신호발생제어순서상태신호발생 - 모드제어신호각마이크로연산제어레지스터동작제어상태및제어입력에의한논리식 - 상태신호상태박스와상태천이를변화시키는판별박스로부터상태변화유도상태도와유사 7

제어회로설계 (1) 레지스터 + 디코더방식 n개의상태변수레지스터 n-to-2 n 디코더논리게이트 - 순서회로설계방식과동일현재상태, 차기상태, 출력 - 상태 F/F입력방정식유도 D M0 = IDLE G + MUL1 Z D M1 = MUL0 - 모드제어신호 init=idle G load = MUL0 Q 0 shift_dec = MUL1 clear_c = IDLE G + MUL1 8

(2) 상태당한플립플럽방식 (one F/F per state, t one hot code) - h/w cost는크나회로설계가간단 - 한클럭사이클에하나의 F/F 만이 1 값을유지 - ASM도에서논리회로유도상태박스 : F/F, 상태값표현판별박스 :DEMUX DEMUX, 판별신호는 sel 신호입력의 junction : OR 조건출력 : 제어신호이름을표현 9

One F/F per state 제어회로 - 초기상태를위해 IDLE F/F: 비동기 preset 나머지 F/F 는비동기 reset 10

8-6 Verilog 설계 11

8-7 마이크로프로그램제어 - 메모리에제어워드저장 - microinstruction(ui): 마이크로연산지정 - microprogram : ui의집합, ROM 또는 RAM에저장 control memory - 제어변수값을여러개의워드로결합하여표현이를연속적으로읽어내어제어논리회로에인가 마이크로프로그램제어구조제어메모리 : 제어워드로제어정보저장 CDR(control data register) : 현재실행되는 ui 저장선택사항, 파이프라인한단계로작용 ( 경로지연감소 ) CAR(control address register) : ui의주소저장다음주소결정요소 : 제어워드가포함하고있는다음주소정보 DP로부터오는 status ( 예 ;Z, Ov,Carry..) 외부제어입력 ( 예 ; start, stop, ) ROM 출력 : ui 직접출력또는 CDR 에저장 상태비트 : 다음주소결정, ASM 에서다음상태결정 12

ASM for micro programmed for multiplier 무어머신형태필요 : 조건적출력박스제거, 상태수증가 INIT 및 ADD 상태로추가마이크로프로그램제어기설계 : 제어워드비트, ROM, CAR크기, 다음주소생성기구조결정 데이터패스모드제어신호 : 4가지신호 (IT, LD,CC,SD) 제어워드로표현시코드화 제어신호가많을때, 디코더필요 : 2비트비코드화 디코더불필요, 제어워드가커짐 : 4비트 13

- 제어장치의순차적진행방식 : 순차진행또는조건에의한진행 - 주소결정방식 : 시스템처리속도와구현비용에영향 2 개주소방식 : 조건값에따라제어워드에 2 개주소포함긴제어워드로 ROM 비트증가, 주소할당이용이 1 개주소방식 : CAR 을병렬로드기능이있는카운터사용으로순차또는분기제어, 임의주소할당이어렵다. 2 개주소방식제어워드구조 : 12 비트 SEL MUX Control 14

- 이진곱셈기의마이크로실행에대한레지스터전달식 - 곱셈기에대한마이크로프로그램제어워드형태 : 5 제어워드, 5 x 12 비트 ROM 에저장될이진프로그램정보 SCLI 15

8-8 간단한컴퓨터구조 - 프로그램가능한제어구조기사용 Instruction 컴퓨터의프로그램정보프로그램메모리에저장 1개이상의마이크로연산실행 instruction set : 컴퓨터의전체명령어연산종류, 오퍼랜드정보포함명시적 (explicit) 오퍼랜드묵시적 (implicit) 오퍼랜드 Instruction format - opcode, DR, SA, SB 등의오퍼랜드정보필드포함 - 각연산에따른 format 차이 - 8개의레지스터세트를가정할때, 각오퍼랜드는 3비트사용레지스터방식 : R1 R2 R3 (sub) immediate방식 : R2 R7 + 011 jump and branch 방식 : R 또는메모리내용변화무명령어의실행순서변화 : PC값변화 - PC-상대주소지정방식 : PC를기준으로주소offset을 2의보수형태로저장 branch-on-zero R6(SA) 35(AD) 현재 PC가 55일때 20을 AD에저장, R6값이 0이면 55+(-20) 으로 PC는 35가되고 R6=0이면 PC=56번지 *** AD주소를자리확장시부호비트를확장 (sign extension) 함에유의 16

- 7비트 opcode 명령어 + 9비트 operand 16비트명령어형태 - 더큰 (32~64) 비트컴퓨터한워드의길이와동일한개의즉시오퍼랜드길이메모리주소길이레지스터개수명령어워드의확장 간단한컴퓨터의메모리구조 -instruction memory : CPU 명령어저장 -Data memory : 프로그램실행시데이터저장 -16 비트 PC -8 개의 16 비트레지스터 17

8-9 한사이클하드웨어제어방식 - 한클럭사이클에한명령어실행 PC ( 명령어주소 ) instruction memory( 명령어인출 ) Instruction decoder( 명령어해독, 연산종류, 오퍼랜드결정, 제어신호발생 ) 오퍼랜드로부터 ALU 연산 data 메모리에 R/W 레지스터에저장 - PC 는현재명령어인출후 +1 자동증가 Branch/jump 시는증가이전값에 offset 값처리 18

Instruction decoder - 조합회로, 명령어에따라필요제어신호발생 - 필요제어신호 DA, AA, BA : 오퍼랜드주소 BC : 분기조건 (C,N,V,Z,C N,V,Z ) MB, MD, RW :DP 모드제어 MW : 데이터메모리 R/W제어 FS : ALU 함수선택 PL, JB : jump에대한 PC 제어 PL=1 PC 가 jump 할주소 load 0 PC++, 자동증가 PL=1 JB=1 jump PL=1 JB=0 조건적분기 - 명령어군에따라디코더논리회로설계필요 MB=B 15 MD=B 14 RW=B 14 +B 15 B 13 MW=B 15 B 14 B 13 PL=B 15 B 14 JB=B 13 FS=B 13 B 12 B 1 1 B 1 0 B 9 (B 15 +B 14 ) FS는 6 비트 19

한개사이클컴퓨터에대한명령어동작과필요제어신호예 명령어에의한프로그램예 : 83 (2 + 3) 초기값 [R3]=248, M[248]=2, 2 M[249]=83, M[250] store result LD R1, R3 248번지내용 2를 R1에 load, R1 M[R3] ADI R1, R1, 3 R1(5) R1(2) +#3 NOT R1,R1 1의보수 INC R1, R1 2의보수 (-5) INC R3, R3 R3 주소증가, 249번지 LD R2, R3 R2에 R3값 83 copy ADD R2, R2, R1 R2 R2+R1 (78 = 83+(-5) ) INC R3, R3 R3주소증가, 250번지 ST R3, R2 결과값저장 M[R3] R2 20

- 한개사이클컴퓨터에대한장단점복잡한연산수행시한개이상의명령어로실행 R1 R1 + R2, add R1 sr R1, shift 메모리가 2개필요 : instruction memory ( 프로그램메모리 ) data memory ** 보통다수사이클컴퓨터는한개메모리로프로그램과데이터메모리를 2번 access 지연경로 (delay path) 가길다그림에서최대지연경로 (critical delay path) 가 17ns로최대동작주파수가 58.8 MHz 짧은경로또는빠른동작소자사용필요 구조적으로는파이프라인, 다수사이클로변환필요 21

8-10 Multi cycle 마이크로프로그램제어 Multi cycle computer 의구조적변화 - M 메모리 : 데이터및명령어저장 MM mux 로주소선택 MB mux로데이터입력선택 MD mux 로데이터출력선택 - 레지스터파일기존 8개에 tmp reg R8 추가오퍼랜드주소선비트 (TD,TA,TB) 다수사이클실행데이터임시저장 - IR (instruction register) 현재실행되는명령어저장,IL (instr load) PC제어신호 PI : instr read 시 1 증가 PL : PC PC+se AD *se : sign extension 현재의 DP오퍼랜드 (DR,SA,SB) 포함 제어워드에서는이를생략하여제어워드구조가단순화됨 - control memory ui에대한제어워드저장 CAR : CM 의주소값지정, 아래 mux에의해 CAR은 load/inc MC mux: IR 또는CM 에의한주소 MS mux : status에의한주소 22

다수사이클컴퓨터에대한마이크로명령어의형식 ALU 코드와관련 DP 제어신호 23

MUX S 에대한선택값과제어정보 24

마이크로명령어실행 - ui 에대한 ASM instr fetch(read) 상태 : IF instr 실행상태 : EX0 -IF 상태 IR M[PC] PC 지정주소에서 instr read PC PC+1 다음 instr을위해자동증가 - EX0 상태 IR값에따라 instr decoding - opcode 값에따라필요한마이크로연산실행상태로분기 7 bit opcode 128 ui 128 실행상태분기 - 옆예는 3 개사이클에한명령어실행하는 ASM 25

각 Instruction 에대한마이크로프로그램과이진코드값예 26

- Indirect addressing load R[DR] M[M[R[SA]]] 4 클럭사이클 - 다수 shift 연산 tmp reg인 R8에이동연산수를저장하여반복실행사이클구성가능 2s +3 클록사이클, s : 이동수 3 사이클단일shift연산시의클록수는 3s 27

다수사이클컴퓨터의 hardwired control Decoder based 혹은 one F/F per state - 리셋기능을가진카운터 + 디코더로구현예조건적출력박스를이용해 CAR 로드 : 2클록실행 go IF 상태 (000) : counter reset CR = EX0 LRI + EX1 RW = EX0 ST 28

8-11 Pipelined 제어 4 단계파이프라인구조 IF : instr fetch DOF : instr decode EX : 실행 WB : store - 파이프라인실행성능 1~7상수값을각 reg에 load LDI R1, 1 LDI R2, 2 4 stage LDI R3, 3 pipeline구조에서 10 클록요 LDI R4, 4 LDI R5, 5 5nsx10=50ns LDI R6, 6 17nsx7=119ns 한개사이클방식 LDI R7, 7 29