cu

제어 장치, CU

제어 장치, CU (Control Unit)CPU 내에서 명령어를 해석하고, 각 부품들 (레지스터, ALU, 메모리) 등이 어떻게 동작할 지 지시를 내리는 장치이다. 쉽게 말하면 CPU의 감독관이라고 보면 된다. 명령어를 해석해서 레지스터에 저장하거나 추출, ALU에 명령어를 지시하는 역할을 한다.

주요 역할

제어 장치는 크기 3가지의 역할을 수행한다. 명령어 해석 (Decode)제어 신호 생성, 데이터 흐름 조절이다. 각각의 역할은 다음과 같다.

역할
명령어 해석 (Decode)메모리에서 가져온 명령어가 어떤 연산인지 해석
제어 신호 해석ALU, 레지스터, 메모리 등에 “어떻게 동작하라”는 신호 전달
데이터 흐름 조절어떤 값이 어디서 어디로 가야 하는 지 결정 (경로 제어)

동작 예시

ADD R1, R2, R3를 예로 든다면, 다음과 같이 동작한다.

  1. 명령어 Decode R2 + R3를 계산하여 R1에 저장하라는 뜻

  2. ALU에 신호 전달 덧셈 회로 생성 (ALUControl = 0000) 신호 전달

  3. 레지스터에게 신호 전달 R2, R3 데이터 추출 및 R1에 결과값 저장

  4. 메모리 접근이 필요할 경우 Load/Store 명령이라면 메모리 컨트롤 회로 동시 제어

생성 방식

제어 장치 구현 방식은 2가지로 이루어져있다.

방식
하드와이어드회로로 고정된 제어빠르지만 고정
마이크로프로그램마이크로 명령으로 저장느리지만 유연

대부분의 RISC CPU는 하드와이어드, 복잡한 CISC CPU는 마이크로 프로그램 방식을 사용한다.




참고자료

※ 이 글은 『이것이 컴퓨터 과학이다』 책을 기반으로, 다양한 자료를 참고해 작성했습니다.
Computer Organization and Design』 – David A. Patterson