# CPU (Central Processing Unit, 중앙처리장치)

유방현·2025년 10월 13일

CPU란?

CPU는 컴퓨터의 두뇌에 해당하는 핵심 하드웨어로, 프로그램의 명령어를 해석하고 실행하며 데이터를 처리하는 장치입니다. "프로세서(Processor)"라고도 불립니다.

CPU의 3대 구성 요소

1. 연산장치 (ALU: Arithmetic Logic Unit)

산술 연산과 논리 연산을 수행하는 장치입니다.

산술 연산: 덧셈(+), 뺄셈(-), 곱셈(×), 나눗셈(÷) 등의 사칙연산을 처리합니다.

논리 연산: AND, OR, NOT, XOR 등의 논리 게이트 연산과 비교 연산을 수행합니다.

시프트 연산: 비트를 좌우로 이동시키는 연산을 처리합니다.

2. 제어장치 (Control Unit)

CPU의 지휘자 역할을 하는 장치입니다.

명령어 해석: 메모리에서 가져온 명령어를 해석합니다.

제어 신호 발생: 해석한 명령어에 따라 CPU 내부 및 다른 장치들에게 제어 신호를 보냅니다.

실행 순서 결정: 명령어의 실행 순서를 제어하고 조정합니다.

구성 요소:

  • 명령어 레지스터(IR): 현재 실행할 명령어를 저장
  • 프로그램 카운터(PC): 다음에 실행할 명령어의 주소를 저장
  • 명령어 해독기: 명령어를 해석
  • 제어 신호 발생기: 각 장치에 제어 신호 전달

3. 레지스터 (Register)

CPU 내부의 초고속 임시 저장 공간입니다.

주요 레지스터 종류:

범용 레지스터: 데이터나 주소를 임시 저장하는 다목적 레지스터

특수 목적 레지스터:

  • PC (Program Counter): 다음 실행할 명령어의 주소 저장
  • IR (Instruction Register): 현재 실행 중인 명령어 저장
  • MAR (Memory Address Register): 메모리 주소 저장
  • MBR (Memory Buffer Register): 메모리와 주고받을 데이터 임시 저장
  • AC (Accumulator): 연산 결과를 일시적으로 저장
  • SR (Status Register/Flag Register): CPU 상태 정보 저장 (오버플로우, 제로, 부호 등)

CPU의 동작 원리 (명령어 사이클)

CPU는 인출(Fetch) → 해독(Decode) → 실행(Execute) → 저장(Write Back) 의 사이클을 반복합니다.

1. 인출 단계 (Fetch)

  • PC가 가리키는 메모리 주소에서 명령어를 가져옴
  • 가져온 명령어를 IR에 저장
  • PC 값을 증가시켜 다음 명령어 주소를 가리킴

2. 해독 단계 (Decode)

  • IR에 저장된 명령어를 제어장치가 해석
  • 어떤 연산을 수행할지, 어떤 데이터가 필요한지 파악

3. 실행 단계 (Execute)

  • 해독된 명령어에 따라 ALU가 연산 수행
  • 필요한 데이터를 레지스터나 메모리에서 가져옴

4. 저장 단계 (Write Back)

  • 실행 결과를 레지스터나 메모리에 저장

CPU 성능 결정 요소

1. 클럭 속도 (Clock Speed)

CPU가 초당 수행할 수 있는 사이클 수를 나타냅니다.

단위: Hz (헤르츠), 일반적으로 GHz(기가헤르츠) 사용

  • 예: 3.5 GHz = 초당 35억 번의 클럭 사이클

높을수록: 더 빠른 처리 속도 (하지만 발열과 전력소모 증가)

2. 코어(Core) 수

하나의 CPU 칩 안에 있는 독립적인 처리 장치의 개수입니다.

싱글 코어: 1개의 처리 장치
멀티 코어: 듀얼(2), 쿼드(4), 헥사(6), 옥타(8) 코어 등
효과: 여러 작업을 동시에 병렬 처리 가능

3. 스레드(Thread)

하나의 코어가 동시에 처리할 수 있는 명령어 흐름의 개수입니다.

하이퍼스레딩(Intel) / SMT(AMD): 하나의 물리적 코어를 2개의 논리적 코어처럼 사용

  • 예: 4코어 8스레드 = 물리 코어 4개가 8개처럼 작동

4. 캐시 메모리 (Cache Memory)

CPU와 메인 메모리 사이의 속도 차이를 줄이기 위한 초고속 임시 저장소입니다.

계층 구조:

  • L1 캐시: 가장 빠르고 작음 (코어마다 독립적, 32~128KB)
  • L2 캐시: 중간 속도와 크기 (코어마다 독립적, 256KB~1MB)
  • L3 캐시: 상대적으로 느리지만 큼 (모든 코어 공유, 수 MB~수십 MB)

용량이 클수록: 더 많은 데이터를 빠르게 접근 가능 → 성능 향상

5. 명령어 집합 구조 (ISA: Instruction Set Architecture)

CISC (Complex Instruction Set Computer):

  • 복잡하고 다양한 명령어 제공
  • 예: x86, x86-64 (Intel, AMD)
  • 특징: 명령어가 복잡하고 길이가 가변적

RISC (Reduced Instruction Set Computer):

  • 단순하고 최적화된 명령어만 제공
  • 예: ARM, RISC-V
  • 특징: 명령어가 단순하고 길이가 고정적, 전력 효율 좋음

6. 워드(Word) 크기

CPU가 한 번에 처리할 수 있는 데이터의 크기입니다.

  • 32비트 CPU: 한 번에 32비트(4바이트) 처리
  • 64비트 CPU: 한 번에 64비트(8바이트) 처리

장점: 더 큰 메모리 주소 공간, 더 빠른 연산

7. 파이프라이닝 (Pipelining)

명령어 처리 단계를 겹쳐서 동시에 여러 명령어를 처리하는 기법입니다.

예시:

  • 명령어 1: 인출 → 해독 → 실행 → 저장
  • 명령어 2: 인출 → 해독 → 실행 → 저장

효과: CPU 활용도 증가, 처리 속도 향상

필기시험 출제 포인트

CPU 구성 요소: ALU, 제어장치, 레지스터의 역할
레지스터 종류: PC, IR, MAR, MBR 등의 기능
명령어 사이클: Fetch-Decode-Execute-Write Back
성능 지표: 클럭, 코어, 캐시의 의미
ISA: CISC vs RISC 비교
파이프라이닝: 개념과 장점
캐시 메모리: L1, L2, L3의 계층 구조

CPU는 컴퓨터 구조 과목의 핵심 주제이므로, 각 구성 요소의 역할과 동작 원리를 정확히 이해하는 것이 중요합니다!

0개의 댓글