컴퓨터구조 7주차

2022. 4. 23. 23:58학교수업

제어 유니트 기능

- 명령어 코드 해독

- 명령어 실행에 필요한 제어 신호들의 발생

 

마이크로명령어 : 마이크로-연산을 지정해주는 2진 비트 : 제어 단어라고도 한다.

마이크로프로그램 : 마이크로명령어들의 집합

루틴 : CPU의 특정 기능을 수행하기 위한 마이크로명령어들의 그룹

ex) 인출 사이클 루틴, 실행 사이클 루틴, 인터럽트 사이클 루틴

 

제어 유니트 구조

1. 명령어 해독기

- 연산 코드를 해독, 연산을 수행하기 위한 루틴의 시작 주소결정

2. 제어 주소 레지스터 : CAR

- 다음 실행할 마이크로명령어 주소 저장, 주소는 제어 기억장치의 특정 위치를 지칭

3. 제어 기억장치

- 마이크로 명령어들로 이루어진 마이크로프로그램을 저장하는 내부 기억장치

4. 제어 버퍼 레지스터 : CBR

- 기억장치로부터 읽혀진 마이크로명령어 비트들을 일시적으로 저장

5. 서브루틴 레지스터 : SBR

- 서브루틴이 호출되는 경우 현재의 CAR내용을 일시적으로 저장

6. 순서제어 모듈

- 마이크로명령어의 실행 순서를 결정하는 회로들의 집합

 

CPU의 마이크로 명령어 세트 설계 과정

1. 명령어들의 종류 및 비트 패턴 정의

2. 명령어들의 실행에 필요한 하드웨어 설계

3. 각 명령어를 위한 실행 사이클 루틴 작성

4. 마이크로프로그램 코드들을 제어 기억장치에 저장

 

제어 기억장치 내부 구성

- 제어 기억장치 용량 128단어

- 전반 (0~63) : 공통 루틴 저장

- 후반 (64~127) : 각 명령어 실행 사이클 루틴 저장

 

명령어 해독

- 사상(mapping)을 이용한 해독 방법

 

마이크로명령어 형식

- 연산 필드가 두 개이면, 두 개의 마이크로-연산들을 동시에 수행 가능

 

- 조건(CD) 필드는 분기에 사용될 조건 플래그 지정

-> 기호 U : 무조건 분기, 기호 I=1이면 간접 사이클 루틴 호출,

-> 기호 S : 누산기에 저장된 데이터 분기가 1이면 분기, 기호 Z : 누산기에 저장된 데이터가 0 (Z=1)이라면 분기

 

- 분기(BR) 필드는 분기 종류, 다음 실행할 마이크로명령어 주소 결정

-> 조건 필드 조건이 만족되면 ADF 필드 내용을 CAR로 적재 -> 그 주소로 분기

-> RET : 서브루틴으로부터 복귀 (SBR에 저장된 내용을 CAR로 적재)

-> MAP : 사상 방식에 의하여 분기 목적지 주소 결정

 

- 주소 필드(ADF)의 내용은 분기가 발생하는 경우 목적지 마이크로명령어의 주소로 사용

 

루틴의 시작 주소 1xxxx00

ex) 연산코드 0010 -> 1001000

 

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

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

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

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

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

 

주소 선택 방법

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

C=0, 다음 위치의 마이크로명령어 선택 // 조건 만족 X

C=1, 주소필드 (ADF)가 지정하는 위치로 점프 혹은 호출 (호출 시, CAR 내용을 SBR에 저장) // 조건 만족

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

- BR 11(MAP)일 때, 사상 결과 CAR에 적재 // 1xxxx00

 

수직적 마이크로프로그래밍 

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

ex) 연산 필드 3비트를 3x8해독기를 통하여 8비트 신호로 바꾼다.

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

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

 

수평적 마이크로프로그래밍

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

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

장점 : 하드웨어가 간단하고, 해독에 따른 지연 시간이 없다.

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

 

 

'학교수업' 카테고리의 다른 글

컴퓨터 그래픽스 8주차  (0) 2022.05.04
게임공학개론 9주차  (0) 2022.05.04
UNIX 서버 7주차  (0) 2022.04.23
게임공학개론 7주차  (0) 2022.04.21
인공지능개론 7주차  (0) 2022.04.20