CPU 구조 와 기능 및 내부 레지스터 특징

정보통신 기술/컴퓨터 기술정보

CPU 구조 와 기능 및 내부 레지스터 특징

리챠드후앙 2021. 1. 4. 20:30
반응형

 

 

컴퓨터에서의 핵심인 CPU에 대한 구조와 기능들

그리고 CPU 내부의 레지스터들에 대한

특징들을 살펴보도록 하겠습니다.

 

CPU Central Processing Unit의 약자로,

컴퓨터 프로그램의 명령어 해석 및 연산 후,

결과를 출력하는 역할로 거의 사람에 있어

뇌와 같은 기능을 하고 있습니다.

 

CPU는 연산량이 매우 많기 때문에,

열이 아주 많이 발생합니다.

 

그렇기 때문에 CPU에 보시면 모두 쿨러가

장착되어 있는 것을 볼 수 있습니다.

 

이런 CPU에 무리를 가지 않도록 우리는

CPU와 메모리가 어떻게 일을 하는지

이해하고 있어야 좋은 프로그램을 만들 수 가 있지요.

 

그럼 CPU 기능부터 알아보도록 하겠습니다.

 

 ■ CPU의 기능 

 

명령어 인출 / 명령어 해독 :

모든 명령어들에 대하여 공통적으로 수행하며

기억장치로부터 명령어를 읽어옵니다.

 

데이터 인출 / 데이터 처리 / 데이터 쓰기 :

명령어에 따라 필요한 경우에만 수행합니다.

 

명령어 해독 :

수행해야 할 동작을 결정하기 위하여

인출된 명령어를 해독 합니다.

 

데이터 인출 :

명령어 실행을 위하여 데이터가 필요한 경우에는

기억장치 또는 입출력 장치로부터 그 데이터를 읽어 옵니다.

 

데이터 처리 :

데이터에 대한 산술적 또는 논리적 연산을 수행합니다.

 

데이터 쓰기 :

수행한 결과를 저장합니다.

반응형

■ CPU의 구조 와 구성요소 

 

CPU 의 구조는

'산술논리연산장치 (Arithmetic and Logical Unit: ALU), 

레지스터 세트 (Register Set), 

제어 유니트 (Control Unit)' 가 있습니다.

 

 

내부구성 요소에 대한 특징을 살펴보면

 

[ ALU ] 

각종 산술 연산들과 논리 연산들을 수행하는

회로들로 이루어진 하드웨어 모듈이며.

산술 연산 : +, -, ×÷

논리 연산 : AND, OR, NOT, XOR 등이 있습니다.

 

[ 레지스터 세트 ]

CPU 내부 레지스터들의 집합으로

컴퓨터의 기억장치들 중에서

액세스 속도가 가장 빠릅니다.

 

CPU 내부에 포함할 수 있는

레지스터들의 수가 제한됩니다.

(특수 목적용 레지스터들과 적은 수의 일반 목적용 레지스터들)

 

[ 제어 유니트 ]

프로그램 코드(명령어)를 해석하고,

그것을 실행하기 위한 제어 신호들(control signals)

순차적으로 발생하는 하드웨어 모듈입니다.

 

[ 내부 CPU 버스(internal CPU bus) ]

ALU와 레지스터들 간의 데이터 이동을 위한

데이터 선들과 제어 유니트로부터

발생되는 제어 신호 선들로 구성된 내부 버스입니다.

 

외부의 시스템 버스들과는 직접 연결되지 않으며,

반드시 버퍼 레지스터들 혹은 시스템 버스

인터페이스 회로를 통하여 시스템 버스와 접속합니다.

CPU 명령어 사이클 

 

CPU가 한 개의 명령어를 실행하는 데

필요한 전체 처리 과정으로서,

CPU가 프로그램 실행을 시작한 순간부터

전원을 끄거나 회복 불가능한 오류가 발생하여

중단될 때까지 반복하는 것을 말합니다.

 

기본 명령어 사이클

 

# 인출 사이클(fetch cycle) : 

CPU가 기억장치로부터 명령어를 읽어오는 단계 입니다.

 

 # 실행 사이클(execution cycle) : 

명령어를 실행하는 단계 입니다


CPU 내부 레지스터들 

 

 

# 프로그램 카운터(Program Counter: PC)

다음에 인출할 명령어의 주소를 가지고 있는 레지스터.

 

각 명령어가 인출된 후에는 자동적으로

일정 크기(한 명령어 길이)만큼 증가

분기(branch) 명령어가 실행되는 경우에는 목적지 주소로 갱신

 

# 누산기(Accumulator: AC)

데이터를 일시적으로 저장하는 레지스터.

레지스터의 크기는 CPU가 한 번에 처리할 수 있는

데이터 비트 수(단어 길이)

 

# 명령어 레지스터(Instruction Register: IR)

가장 최근에 인출된 명령어 코드가

저장되어 있는 레지스터

 

# 기억장치 주소 레지스터(Memory Address Register: MAR)

PC에 저장된 명령어 주소가 시스템 주소 버스로

출력되기 전에 일시적으로

저장되는 주소 레지스터

 

# 기억장치 버퍼 레지스터(Memory Buffer Register: MBR)

기억장치에 쓰여질 데이터 혹은

기억장치로부터 읽혀진 데이터를 일시적으로

저장하는 버퍼 레지스터

 

이상과 같이 컴퓨터에 대한 핵심인 CPU 구조를

잘 이해하는 것은 매우 중요합니다.

반응형