상세 컨텐츠

본문 제목

04. 제어 유니트 (4) [마이크로 프로그램의 순서제어]

Computer Science/Computer Architecture

by RACC8N 2020. 4. 22. 20:47

본문

4.5 마이크로 프로그램의 순서제어

- 순서 제어 (sequencing) : 다음에 실행할 마이크로 명령어의 주소 결정

- CAR의 초기값 = 0 (인출 사이클 루틴의 첫 번째 마이크로 명령어의 주소)

- MUX1 : 다음에 실행할 마이크로 명령어의 주소 선택

- MUX2 : 조건 플래그를 선택하여 주소선택 회로로 전송

 

순서제어 회로가 포함된 제어 유니트의 구성도

 

- CD 필드의 두 비트들은 MUX2로 보내져서 네 개의 조건 비트들 중 하나를 선택

 > 그 출력은 주소 선택 회로의 한 입력(C)로 들어감

 > 주소 선택 회로의 다른 두 입력들로는 BR필드의 두 비트들이 들어감

 

주소 선택 방법

- BR = 00 (JUMP) 혹은 01 (CALL)일 때,

 > C = 0, 다음 위치의 마이크로 명령어 선택

 > C = 1, 주소 필드(ADF)가 지정하는 위치로 JUMP 혹은 CALL (단, 호출 시에는 CAR의 내용을 SBR에 저장)

- BR = 10 (RET)일 때는 SBR 내용을 CAR로 적재 : 복귀

- BR = 11 (MAP)일 때는 사상 결과를 CAR에 적재

※ 제어 기억장치로부터 인출된 마이크로 명령어 내 연산 필드의 비트들이 제어 유니트의 외부로 출력되어, 각각 제어 신호로 사용됨

 

수직적 마이크로 프로그래밍 (Vertical microprogramming)

- 마이크로 명령어의 연산 필드에 적은 수의 코드화된 비트들(encoded bits)을 포함시키고, 해독기를 이용하여 그 비트들을 필요한 수 만큼의 제어 신호들로 확장하는 방식

[장점] 마이크로 명령어의 길이(비트 수) 최소화 -> 제어 기억장치 용량 감소

[단점] 해독 동작에 걸리는 만큼의 지연 시간 발생

원래) 연산 필드1 = 3 , 연산필드 2 = 3 총 6개 , -> 해독기 : 연산필드 1 = 3->8, 연산필드 2 = 3->8 총 16개

 

수평적 마이크로 프로그래밍 (Horizontal microprogramming)

- 연산 필드의 각 비트와 제어 신호를 1:1로 대응시키는 방식

- 필요한 제어 신호 수 만큼의 비트들로 이루어진 연산필드 비트들이 마이크로 명령어에 포함되어야 함

[장점] 하드웨어가 간단하고, 해독에 따른 지연 시간이 없음

[단점] 마이크로 명령어의 비트 수가 길어지기 때문에 제어 기억 장치의 용량이 증가

 

 

관련글 더보기

댓글 영역