중앙처리 장치의 정의와 구성

최고요·2023년 5월 25일
0
post-thumbnail

중앙처리장치란?

중앙처리장치(CPU : Central Processing Uint)는 사람으로 따지면 두뇌의 역할을합니다
컴퓨터 시스템에 부착된 모든 장치의 동작을 제어하고 명령을 실행하는 장치입니다.
중앙처리장치 = 제어장치+연산장치 + 레지스터

* 중앙처리장치의 구성요소

예전 중앙처리 장치는 제어장치,연산장치,레지스터가 별도로 존재하는 회로 기판이었습니다.
지금은 한 개의 반도체 칩에 제어장치와 연산장치를 장착한 마이크로 프로세서가 개발되면서 마이크로프로세서를 CPU로 간주하는 경향이 생겨서 제어장치,연산장치,레지스터를 CPU의 구성요소로 보기도합니다.


제어장치

제어장치(Control Unit)는 컴퓨터에 있는 모든 장치들의 동작을 지시하고 제어하는 장치를 의미합니다.

  • 제어장치는 명령 레지스터에서 읽어들인 명령어를 해독하여 해당하는 장치에게 제어신호를 보내 정확하게 수행하도록 지시합니다.

* 제어장치의 구성

프로그램 카운터(PC) : Program Counter 즉, PC는 Central Processing Unit의 Regster로 현재 실행중인 명령어의 주소를 가리킵니다.
PC는 명령어의 순서를 추적하고 다음에 실행할 명령어의 위치를 결정하는데 사용됩니다.

명령어 레지스터(IR) : 현재 실행중인 명령어를 저장하는 역할이며, cpu는 명령어를 메모리에서 가져와 Instruction Register에 저장하고 cpu는 이를 해석하고 실행합니다.

부호기(제어신호 발생기) : Control Unit 은 컴퓨터 중앙처리 장치 내부에 있는 하드웨어 구성요소로, CPU의 제어신호를 생성하고 전달하는 역할을 합니다.
부호기는 명령어를 해석하고 실행하기 위해 필요한 제어신호를 생성하여 CPU의 다른 구성요소를 제어합니다.

명령어 해독기 : Decoder 명령어 해독기는 컴퓨터의 중앙처리장치 내부에 위치한 구성요소로, 명령어를 해석하고 실행하기 위해 필요한 정보를 추출하는 역할을합니다.
Decoder는 CPU의 명령어를 이해하고 해당 명령어에 필요한 제어신호를 생성하는 다른 구성요소(Ex : 부호기)를 제어합니다.

번지해독기 :컴퓨터 시스템의 구성 요소 중 하나로 메모리 주소를 해석하고 해당하는 주변장치 또는 메모리 위치를 선택하는 역할을 합니다. 번지해독기는 CPU와 주변장지간의 상호연결을 담당하고, CPU가 접근하려는 주소를 해석하여 해당 장치에 신호를 보냅니다.

제어장치는 프로그램 카운터, 명령 레지스터, 부호기,명령어 해독기, 번지해독기 등으로 구성되어있습니다.


연산장치 (Arithmetic & Logic Unit)

제어장치의 명령에 따라 실제로 연산을 수행하는 장치를 의미합니다.

연산장치가 수행하는 연산에는 산술연산,논리연산,관계연산,이동(shift) 등이 있습니다.

연산장치의 구성은 아래처럼
연산장치 = 가산기 + 누산기(AC) +보수기 +데이터 레지스터 +상태 레지스터 + 오버플로 검출기 + 시프트 레지스터 + ...등으로 구성되어있습니다.


레지스터 Register

레지스터는 CPU내부에서 처리할 명령어나 연산의 중간 결과값 등을 일시적으로 기억하는 임시 기억 장소를 의미합니다.

레지스터 특징과 사용하는 이유 ?

  • 레지스터는 메모리 중에서 속도가 가장 빠릅니다.
  • 연산속도를 향상시키기 위해 사용되기도 합니다.
  • 레지스터는 새로운 데이터가 전송되면 기존에 있던 내용은 지워지고 새로운 내용만 기억됩니다.

레지스터들의 기능


프로그램 카운터(Program Counter,PC) : 다음번에 실행할 명령어의 번지를 기억하는 레지스터
명령 레지스터(Instruction Register,IR) : 현재 실행중인 명령의 내용을 기억하는 레지스터
누산기(Accumulator,AC) : 연산된 결과를 일시적으로 저장하는 레지스터로 연산의 중심이 됩니다.
상태 레지스터(Status Register)
PSWR(Program Status Word Register)
플러그 레지스터(Flag Register)

->
시스템 내부의 순간의 상태가 기록된 정보를 PSW라고합니다
로버플로,언더플로,자리올림,인터럽트 등의 PSW를 저장하고 있는 레지스터입니다.
제어장치와 연산장치의 실행 순서를 제어하기위해 사용되는 레지스터입니다.


메모리 주소 레지스터(Memory Address Register) : 기억장치를 출입하는 데이터의 번지를 기억하는 레지스터입니다.
메모리 버퍼 레지스터(Memory Buffer Register) : 기억장치를 출입하는 데이터가 잠시 기억되는 레지스터이며 버퍼레지스터라고도 부릅니다.
인덱스 레지스터(Index Register) : 주소의 변경 서브루틴 연결 및 프로그램에서의 반복 연산의 횟수를 세는 레지스터입니다.
데이터레지스터(Data Register) : 연산에 사용될 데이터를 기억하는 레지스터입니다.
Shift Register : 클럭펄스(Clock Pulse)에 의해서 기억된 내용을 왼쪽 또는 오늘쪽으로 1Bit 씩 자리를 이동시키는 레지스터입니다.
2배 길이 레지스터라고도 합니다.


마이크로프로세서 Microprocessor

마이크로 프로세서는 제어장치, 연산장치, 레지스터가 하나의 대규모 직접회로 칩에 내장된 것으로, 개인용 컴퓨터에서 중앙처리 장치로 사용되고 있습니다.

마이크로 프로레서는 클럭 주파수와 내부버스의 폭으로 성능을 평가합니다.
설계방식에따라 RISC와 CISC로 구분되며, RISC방식은 명령어가 적어 전력소비가 적고 속도가 빠르지만 복잡한 연산을 하기위해 명령어들을 반복하고 조합하여 사용해야 하므로 레지스터를 많이 필요로하고 프로그램이 복잡합니다.

CISC 방식은 명령어의 종류가 많아 전력소비가 많고 설계가 어려워 고가이지만 레지스터를 적게 필요로 한다는(프로그램 간단해짐) 장점이 있습니다.

profile
i'm best

0개의 댓글