Ye0ngJae

[하드웨어] CPU 구조와 동작과정 본문

컴퓨터 시스템

[하드웨어] CPU 구조와 동작과정

Ye0ngJae 2022. 6. 9. 11:17
728x90

CPU 구조

CPU는 크게 ALU와 Register Set, Control Unit으로 구성되어 있습니다. 그리고 각 구성 요소들은 CPU 내부 버스로 연결되어 있습니다.

ALU

산술연산, 논리 연산 등의 연산을 수행하는 CPU 속 부품입니다. ALU는 가산기와 누산기, 보수기 등으로 이루어져 있습니다.

 

보수기

덧셈 연산을 뺄셈 연산으로 바꿔주는 회로

 

가산기

두 데이터를 받아 덧셈 연산을 하는 회로

 

누산기

계산한 결과를 일시적으로 저장하는 회로

 

오버플로우 검출기

산술 연산 결과 값이 레지스터 용량보다 클 때 에러를 발생시킴

 

Control Unit

Control Unit은 여러 컴퓨터 내부의 여러 부품들을 조작하는 부품입니다. 타이밍과 제어 신호를 제공함으로써 다른 장치들을 조작합니다. 컴퓨터의 모든 자원들은 Control Unit의 제어를 받는데, CPU와 다른 장치 간 데이터 흐름을 제어합니다.

기능

  • 컴퓨터 장치 간에 데이터 및 명령 전송 제어
  • 컴퓨터의 모든 장치 관리 및 조정
  • 메모리에서의 명령 인출, 해석
  • 입출력 장치와 통신

Register Set

레지스터는 CPU에 위치한 고속 메모리로 CPU가 요청을 처리하는데 필요한 각종 데이터들을 임시로 저장하는 데에 사용됩니다. 레지스터는 저장할 수 있는 데이터의 크기가 매우 작지만 속도가 매우 빠릅니다. 용도에 따라 크게 특수 목적 레지스터와 범용 레지스터로 나뉩니다

범용 레지스터

이름 그대로 범용적으로 사용되는 레지스터입니다. 주로 임시로 데이터를 저장하거나 특정 어셈블리 명령어에서는 특정 레지스터를 조작하기도 합니다.

특수 목적 레지스터

범용 레지스터와 달리 특수한 목적에 사용되는 레지스터입니다. 메모리 주소 레지스터(MAR), 프로그램 카운터(PC), 인덱스 레지스터(IX), 스택 포인터(SP) 등이 있습니다.

 

CPU 동작 과정

  1. 주기억장치는 입력장치에서 입력받은 데이터 또는 보조기억장치에 저장된 프로그램 읽기
  2. CPU는 주기억장치에 저장된 프로그램 명령어와 데이터를 읽어와 처리하고 결과를 다시 주기억장치에 저장
  3. 주기억장치는 처리 결과를 보조기억장치로 전달하거나 출력장치로 전달
  4. 제어장치는 1~3 과정에서 명령어가 순서대로 실행되도록 각 장치를 제어

메모리 계층 구조

메모리 계층 구조는 여러 종류의 메모리들을 사용 용도에 따라 나누어 놓은 것입니다. 위 구조를 살펴보면 피라미드 구조인 것을 볼 수 있는데 이러한 모양에는 이유가 있습니다.

 

피라미드 구조에서 제일 상단에 위치한 레지스터는 속도는 피라미드 중 제일 빠르지만 저장 가능한 용량은 제일 적습니다. 반면에 피라미드 맨 하단에 위치한 하드 디스크는 피라미드 중 속도는 제일 느리지만 저장 가능한 용량이 제일 많습니다. 

728x90