제 3 장 명령실행과 제어

1. 마이크로 오퍼레이션(Micro Operation):중앙처리장치내 실행해있는 명령코드

1) 마이크로 오퍼레이션

① 동기 고정식 : 가장 긴 수행 시간을 마이크로 사이클 타임으로 정의.

㉠ 장점 : 각각 명령어의 수행 시간이 비슷할 때 유리.

㉡ 단점 : 각각 명령어의 수행 시간이 차이날 때 CPU 낭비.

② 동기 가변식 : 수행 시간이 유사한 것끼리 모아서 군을 형성.

㉠ 장점 : CPU 시간을 효율적으로 이용.

㉡ 단점 : 제어가 복잡.

③ 비동기식(비순서결정) : 모든 micro operation 에 대해 서로 다른 사이클 정의.

동기 가변식도 경우에 따라 모든 명령에 대해 서로 다른 사이클을 정의할 수 있다.

 

2. 메이저 스테이트(Major State): 중앙처리장치가 일을하고 있는 상태

1) Fetch Cycle(인출 사이클) = load

― 주기억장치의 명령을 CPU로 가져오는 주기.

① MAR ← PC (다음에 수행할 명령번지 지시)

② MBR(메모리버퍼레지스터) ← M(MAR), PC ← PC+1 (프로그램카운터 1씩 증가시킴)

③ IR(명령레지스터) ← MBR

 

2) Indirect Cycle(간접 사이클): 주소를 읽는다

― operand(주소)가 간접 주소일 때 수행되는 주기. (직접,상대주소일때 생략)

 

3) Execute Cycle(실행 사이클)

― 실질적인 연산을 실행하는 주기.

① AND 명령: 논리회로에서 마스킹 역할

MAR ← MBR

MBR ← M(MAR) (누산기)

AC ← AC AND(둘다참일때만참) MBR

② ADD 명령: 덧셈

MAR ← MBR

MBR ← M(MAR)

EAC(실행되는 누산기) ← AC + MBR

③ LDA 명령:=Load (STA의 반대)

MAR ← MBR

MBR ← M(MAR), AC ← 0 (초기화)

AC ← AC + MBR

④ STA 명령

MAR ← MBR

MBR ← AC

M(MAR) ← MBR

⑤ ISZ 명령: 유일한 4단계

MAR ← MBR

MBR ←M(MAR)

MBR ← MBR + 1 (1씩증가)

M(MAR) ← MBR

※ 수행 과정이 3단계로 구성된 명령을 '3 Cycle 명령' 이라 한다.(AND, ADD, LDA, STA 등)

4) Interrupt Cycle

― 현재 수행중인 명령이 중단되는 상태.

MBR ← PC, PC ← 0

MAR ← PC, PC ← PC + 1

M(MAR) ← MBR, IEN ← 0

※ 메이저 스테이트 수행과정

 

 

 

 

 

 

 

3. 마이크로 명령:중앙처리장치에서 실질적으로 처리되는 명령

1) 수평 마이크로 명령

2) 수직 마이크로 명령

3) 나노 명령

 

4. 방식

1) 고정배선방식 : 고속, 고가, 융통성이 없다.

2) 마이크로 프로그램방식: ROM에 저장