CPU란 ?

이상민·2024년 10월 4일

CS공부

목록 보기
8/18

컴퓨터에서 4가지 핵심 부품을 고르라고 하면 크게 CPU, 메모리, 보조기억장치, 입출력장치가 있다.
그중 사람의 뇌라고 할 수있는 CPU에 대해서 알아보자!

CPU란 ?

CPU는 컴퓨터가 사용자의 명령에 대한 작업을 수행하는 처리장치이다. 푸드트럭에 비유하자면 푸드트럭에서 음식을 만드는 요리사에 해당한다.위 그림으로 이해를 해보면

  • 우뇌 🧠 : 요리사가 레시피에 따라서 재료와 요리시간을 연산하고 수행하는 역할로
    • CPU에서 산술논리 연산장치(ALU) : 즉, 비교, 판단, 연산을 담당한다.
  • 좌뇌 🧠 : 요리할때 주문 순서, 레시피 순서대로 하도록 스케쥴을 제어하는 역할로
    • CPU에서 제어부(CU)와 내부 버스  : 명령어의 해석과 올바른 실행을 위하여 CPU를 내부적으로 제어합니다.
  • 양손 ✋ : 요리에 사용할 요리도구를 있는 역할로
  • 레지스터 : 즉, 처리할 명령어를 저장하고
  • 캐시 메모리(L1) : 처리속도를 높여주는 역할을 한다.

레지스터

레지스터는 연산에 필요한 데이터를 저장하고 빠른속도로 접근할 수 있는 저장공간입니다.
(푸드트럭의 요리사로 비유하면 요리사의 손을 의미)

프로세서에 위치한 고속 메모리로 극히 소량의 데이터나 처리 중인 중간 결과와도 같은 프로세서가 바로 사용할 수 있는 데이터를 담고 있는 영역을 레지스터라고 한다. 컴퓨터 구조에 따라 크기와 종류가 다양한데, 용도에 따라 범용 레지스터와 특수목적 레지스터로 구분된다!

범용 레지스터 : 연산에 필요한 데이터나 연산 결과를 임시로 저장.
특수목적 레지스터 : 특별한 용도로 사용하는 레지스터

제어장치 (CU)

제어장치는 명령어를 실행하는 순서를 제어하고 스케쥴링 역할을 합니다.
(푸드트럭의 요리사로 비유하면 요리사의 구성력을 담당하는 좌뇌입니다.)

제어부

  • 주기억 장치에 저장되어 있는 명령어를 순서대로 호출하여 해독하고, 제어 신호를 발생시켜 컴퓨터의 각 장치를 동작하도록 하는 장치

내부버스

연산장치 (ALU)

연산장치는 논리연산(덧셈,뺄셈,비교연산) 수행 합니다.
(푸드트럭의 요리사로 비유하면 요리사의 연산력을 담당하는 우뇌입니다.)

연산장치

  • 산술 논리 장치라고 불리는 이 곳은 덧셈, 뺄셈같은 산술연산과 논리 연산을 계산하는 디지털 회로입니다.

CPU의 동작

컴퓨터가 모든 데이터를 “기계어”(0,1)로 동작한다.

  • 이러한 “기계어”를 모스부호처럼 하드웨어적으로 CPU가 알아볼 수 있게 변환한게 “어셈블리어”고
  • “어셈플리어”를 사람이 알아볼 수 있게 소프트웨어적으로 변환한게 “프로그래밍 언어”라고 보면 된다.
  • 즉, 기계어(저장공간) > 어셈플리어(CPU) > 프로그래밍 언어(사람) 이라고 생각하면 된다.

CPU가 명령어를 읽고 수행하는 동작

    1. 명령어 인출 : CU가 이번에 수행할 명령어 정보를 가지고 옴
    1. 명령어 해독 : 명령어 정보를 성공적으로 인출했으면 보통 opcode라고 하는 명령어 코드를 인출하고 opcode의 성격에 맞게 레지스터들을 준비
    1. 실행 : 해독된 명령어를 수행
    1. 반영 : 이 명령어의 수행 결과를 반영함으로써 명령어 수행의 한 사이클이 끝이난다.

CPU의 성능

이번에는 CPU의 성능에 중요한 역할을 미치는 CPU 속도(코어)와 CPU코어개수에 대해 알아보자.

클럭

  • 클럭이란 CPU 내부에서 일정한 주파수를 가지는 신호로, 이 신호로 모든 명령어가 동작되게 된다.
  • 1Hz(헤르츠)면 1초에 한 번의 주기. 1기가 헤르츠라고 하면 1초에 1기가만큼(1024메가), 즉 10억 번 정도인 셈이다.
    • 예를 들어 4.5GHz라는 것은 초당 45억 번의 명령어를 처리할 수 있다는 뜻
  • 따라서 클럭 주파수가 빠를수록 제한된 시간에 더 많은 명령을 처리할 수 있기에 더 좋은 성능의 중앙 처리 장치라고 할 수 있다.

코어

  • 코어는 중앙처리 장치 역할을 하는 블록을 의미한다.
  • 즉, 멀티 코어들은 싱글 코어에 비해서 마치 여러 개의 CPU(요리사)가 작동하듯이 많은 연산을 빠르게 병렬 처리할 수 있다.
  • 물론 컴퓨터의 전체적인 성능은 CPU 만으로 결정되지는 않는다. (메모리도 중요)
    하지만, 가장 중요한 부분이라고 할 수 있는건 푸드트럭의 요리사 또는 사람의 뇌에 즉 CPU 이다.

0개의 댓글