제어유닛 (Control Unit)
제어유닛 (Control Unit)
- 시스템 내 모든 장치들의 동작을 지시하고 제어하는 장치
: 명령 레지스터에서 읽어들인 명령어를 해독하여 해당하는 장치에게 제어신호를 전송
- 기능
: 명령어 코드의 해독
: 명령어 실행에 필요한 제어 신호의 발생
- 관련 개념
: 마이크로 명령어 (제어 단어)
= 명령어 사이클의 각 주기에서 실행되는 마이크로 연산에 대응되는 비트들로 이루어진 단어
= 다음에 수행될 또 다른 마이크로 명령어 결정
: 마이크로 프로그램
= 마이크로 명령어들의 집합
: 루틴
= CPU의 특정 기능을 수행하기 위한 마이크로 명령어들의 그룹
= ex) 인출 사이클 루틴, 실행 사이클 루틴, 인터럽트 사이클 루틴
제어장치와 처리장치간 관계
1. 제어장치는 명령을 받아 신호에 해당하는 제어신호(마이크로연산)을 처리장치(ALU)로 전송
2. 처리장치(ALU)에서 제어신호에 의해 입력 데이터를 받아 처리 후 출력데이터를 반환
3. 처리장치에서 연산 결과로 나타나는 상태신호를 제어장치로 전송
4. 상태신호를 분기, 조건판단 등을 위한 판단 기준을 제공
구성요소(내부장치)
- 명령 해독기 (Instruction Decoder)
: 명령어 레지스터(IR)로 부터 들어오는 수행해야할 명령어를 해독한 뒤 제어 신호 발생
- 제어 주소 레지스터 (CAR, Control Address Register)
: 다음에 실행할 명령어의 주소를 저장하는 레지스터
: Mapping의 결과 값, 주소 필드 및 서브루틴 레지스터의 내용 적재
- 제어 버퍼 레지스터 (CBR, Control Buffer Register)
: 제어 기억장치로부터 읽혀진 마이크로 명령어 비트들을 일시적으로 저장하는 레지스터
- 서브 루틴 레지스터 (SBR, Subroutine Register)
: 마이크로 프로그램에서 서브루틴이 호출되는 경우에 현재의 CAR(제어 주소 레지스터) 내용을 일시적으로
저장하는 레지스터
- 제어 기억장치 (Control Memory)
: 마이크로 프로그램을 저장하는 내부 기억장치
- 순서 제어 모듈 (Sequencing Module)
: 마이크로 명령어의 실행 순서를 결정하는 회로들의 집합
구성요소 (Control Unit 외부 레지스터 - CPU 레지스터 셋에 위치)
- 프로그램 카운터 (Program Counter)
: 다음에 수행될 명렁어의 주소를 기억하는 레지스터
CPU의 명령어 세트 설계 과정
- 명령어들의 종류 및 비트 패턴 정의
- 명령어들의 실행에 필요한 하드웨어 설계
- 각 명령어를 위한 실행 사이클 루틴 작성
: 마이크로 프로그래밍
- 기억 장치에 마이크로 프로그램 코드 저장
Refference
'Computer Science > OS' 카테고리의 다른 글
운영체제의 입출력 관리 (0) | 2021.02.05 |
---|---|
운영체제의 메모리 관리 (0) | 2021.02.05 |
CPU - 산술 연산 장치 (ALU)의 구조와 기능 (0) | 2021.02.05 |
CPU의 구조와 명령어 수행 과정 (0) | 2021.02.05 |
프로세스와 운영체제 (0) | 2021.02.03 |