본문 바로가기
지식창고/IT 지식

CPU 구조

by eteo 2023. 12. 18.

 

 

 

 

 

 

 

CPU 구조

 

ALU (Arithmetic logic unit) : 각종 산술 연산(덧셈, 뺄셈, 곱셈, 나눗셈)과 논리연산(AND, OR, NOT)을 수행하는 회로로 이루어진 하드웨어 모듈이다.

 

Register : CPU 내부에 위치한 기억장치로서, 액세스 속도가 컴퓨터의 기억장치들 중에서 가장 빠르다. 그러나 내부 회로가 복잡하여 비교적 큰 공간을 차지하기 때문에 지정된 용도로만 사용되는 특수 목적 레지스터들과 적은 수의 일반 목적용 레지스터들만이 포함된다.

 

Control Unit : 명령어를 해석하고, 그것을 실행하기 위한 다양한 제어 신호를 순차적으로 발생하는 하드웨어 모듈이다. CPU가 제공하는 명령어들의 수가 많아질수록 Control Unit의 내부 회로는 더 복잡해지므로 최근에는 명령어의 수를 가능한 한 줄이고 명령어 형식을 단순화한 RISC(Reduced Instruction Set Computer) 설계 개념이 많이 사용된다.

 

 

 

CPU 레지스터

 

CPU 레지스터의 유형은 매우 다양한데 대표적으로 몇개를 알아보면 다음과 같다.

 

PC (Program Counter) : 다음에 인출될 명령어의 주소를 가지고 있는 레지스터이다. 각 명령어가 인출된 이후에는 그 내용이 자동적으로 1 증가 또는 명령어 길이에 따라 주소 단위만큼 증가한다.

 

IR (Instruction Register) : 가장 최근에 인출되었던 명령어(현재 실행중인)가 저장되어있는 레지스터이다.

 

AC (Accumulator) : 연산 결과 데이터를 일시적으로 저장하는 레지스터이다. 이 누산기의 길이가 한번에 연산 처리하는 데이터의 비트 수와 같다.  

 

SR (Status Register) : 현재 CPU 의 상태를 가지고 있는 레지스터

 

MAR (Memory Address Register) : PC로부터 저장된 명령어 주소가 시스템 주소 버스로 출력 전에 일시적으로 저장된다.

 

MBR (Memory Buffer Register) : 기억장치로부터 읽혀진 데이터가 일시적으로 저장되는 버퍼 레지스터. 입출력 선들이 데이터 버스의 선과 동일하다.

 

 

 

 

 

CPU 명령어 사이클

 

Fetch : 메모리상의 프로그램 카운터가 가리키는 명령어를 CPU로 인출하여 적재한다. 

Decode : 명령어의 해석. 이 단계에서 명령어의 종류와 타겟 등을 판단한다. 

Execute : 해석된 명령어와 오퍼랜드에 따라 데이터에 대한 연산을 수행한다.

Writeback : 명령어대로 처리 완료된 데이터를 메모리에 기록한다.

 

명령어 사이클의 각 단계는 여러 마이크로 연산의 조합으로 나눌 수 있고, 마이크로 연산은 CPU클럭의 한 주기 동안 수행된다.

 

 

CPU 시스템 버스

 

 

주소버스 : CPU가 외부로부터 또는 외부로 발생하는 주소 정보를 전송하는 방식의 버스 형태로 선의 수는 최대 기억장치 용량을 의미한다. 예를 들어서 주소버스의 형식이 8비트 형식으로 구성되어 있다면, 해당 기억장치 요소도 2의 8승, 256개의 기억장소들의 주소지정이 가능하다. 주소가 CPU에서 기억장치(메모리 계통)또는 입출력 장치로 이동하므로, 단방향 통신을 한다.

 

데이터 버스 : 주소 버스를 사용하여 마이크로초 내에서 기억장치, 입출력 장치 등의 외부 장치들과의 데이터 통신을 하는 버스 형태로, 한번에 전송할 수 있는 비트의 수를 정의하며 양방향 통신을 한다.

 

제어버스 : CPU가 외부 구성 부품들을 제어하기 위해서 사용된 버스로 양방향 통신을 한다.

 

 

 

 

참고 :

https://velog.io/@kdh10806

https://technote.kr/310

https://namu.wiki/

'지식창고 > IT 지식' 카테고리의 다른 글

TCP/IP stack  (0) 2024.01.10
loop unroll  (0) 2023.12.19
스위치, 허브, 라우터, 공유기 차이점  (0) 2023.12.16
ISO 국가표준 규격서 무료 열람  (0) 2023.12.10
UTF-8, UTF-8(BOM) 차이  (0) 2023.11.27