Frog is cry
전자계산기 구조 : 4-명령 수행 및 제어 본문
1장 명령어 수행 및 마이크로 동작
명령어의 수행
명령어(Instruction) 수행 순서
> 명령어 인출 > 명령어 해독 > 오퍼랜드 인출 > 실행 > 인터럽트 조사
마이크로 오퍼레이션(Micro-Operation)
마이크로 오퍼레이션의 개념
> CPU에서 발생시키는 하나의 클록 펄스(Clock Pulse)동안 실행되는 기본 동작을 의미한다.
> CPU에 있는 레지스터와 플래그의 상태 변환을 일으키게 하는 동작을 의미한다.
> CPU에서 발생시키는 제어 신호에 따라 마이크로 오퍼레이션이 순서적으로 일어난다.
> 명령어의 수행은 마이크로 오퍼레이션의 수행으로 이루어진다.
2장 메이저 상태
메이저 사이클의 종류
> 메이저 상태는 주기억 장치에 무엇을 위해 접근하는지에 따라 인출(Fetch), 간접(Indirect), 실행(Execute), 인터럽트(Interrupt) 4가지 상태가 있으며, 이 상태는 F, R 플래그의 상태를 가지고 파악한다.
메이저 사이클의 마이크로 오퍼레이션
인출 주기(Fetch Cycle)
> 명령어를 기억 장치에서 중앙 처리 장치로 읽어오는 주기이다.
> 명령어를 해독하는 주기이다.
> 명령어의 종류가 판단되는 주기이다.
> PC(Program Counter)가 하나 증가되어 다음 명령어를 지시하는 주기이다.
간접 주기(Indirect Cycle)
> 유효 주소를 얻기 위하여 기억 장치에 한 번 더 접근하는 주기이다.
> 오퍼랜드(Operand)에 표현된 주소가 간접 주소인 경우에 수행되는 주기이다.
LOAD(LDA)마이크로 동작
> ACC(누산기)를 0으로 초기화하고, 이 초기화된 누산기와 메모리에 있는 내용을 더해서 결과를 ACC(누산기)에 넣어놓게 되면 메모리에 있는 내용을 누산기로 이동시킨 효과를 보게된다.
인터럽트 주기(Interrupt Cycle)
> 여러 가지 원인에 의해서(입출력 요구, 타이머 요청 등) 정상적으로 수행 과정을 계속할 수 없어 먼저 응급조치를 취한 후에 계속 수행할 수 있도록 CPU의 현 상태를 보관하기 위해 기억 장치에 접근하는 주기이다.
> 명령어 수행 과정에서 인터럽트가 발생하더라도 반드시 해당 명령어가 완료된 상태에서 인터럽트를 처리하게 된다. 따라서 인터럽트 처리가 완료된 상태에서는 반드시 인출 주기로 가게 된다.
3장 제어(Control)
제어 장치의 구성
명령어 해독기(Instruction Decoder)
> 명령 레지스터(IR : Instruction Register)에 호출 된 OP-Code를 해독하여 그 명령을 수행시키는데 필요한 각종 제어 신호를 만들어 내는 장치이다.
순서 제어기(SequencController)
> 마이크로 명령어의 실행 순서를 결정하는 장치이다.
제어 주소 레지스터(CAR : Control Address Register)
> 제어 메모리의 주소를 기억하는 레지스터이다.
제어 메모리(Control Memory)
> 마이크로 명령어들로 이루어진 마이크로프로그램을 저장하는 내부 기억 장치로 액세스 타임이 빠른 ROM으로 만들어진다.
제어 버퍼 레지스터(CBR : Control Buffer Register)
> 제어 메모리(Control Memory)로 부터 읽혀진 마이크로 명령어를 일시적으로 기억하는 레지스터이다.
마이크로프로그램의 개념
> 마이크로프로그램은 어떤 명령을 수행할 수 있는 일련에 제어 워드가 특수한 기억 장치(ROM) 속에 저장되어 기계어 명령어들이 적절히 수행되도록 각종 제어 신호를 발생시키는 프로그램을 의미한다.
> 마이크로프로그램은 CPU내의 제어 장치를 설계하는 프로그램이다.
> 마이크로프로그램은 마이크로 명령어로 형성되어 있다.
> 제어 메모리는 보통 빠른 사이클 타임이 요구되므로 ROM을 사용하는 것이 일반적이다.
> 하드웨어와 소프트웨어의 중간적인 것으로 펌웨어(Firmware)라고도 한다.
'자격증 > 정보처리산업기사' 카테고리의 다른 글
전자계산기 구조 : 6-입력 및 출력 (0) | 2020.08.05 |
---|---|
전자계산기 구조 : 5-기억 장치 (0) | 2020.08.05 |
전자계산기 구조 : 3-명령어 및 프로세서 (0) | 2020.08.05 |
전자계산기 구조 : 2-자료 표현 및 연산 (0) | 2020.08.04 |
전자계산기 구조 : 1-논리회로 (0) | 2020.08.04 |