관리 메뉴

평행우주 : world 1

[컴퓨터구조론] CPU의 구조와 기능 정리 본문

텃밭 3 : BE/컴퓨터구조 | 공학

[컴퓨터구조론] CPU의 구조와 기능 정리

parallelworlds 2022. 1. 12. 22:59

 

🌏2장 CPU의 구조와 기능

 

CPU 수행 동작 순서대로 정리

1.명령어 인출 

-기억장치로부터 명령어를 읽어옴

2.명령어 해독

-수행해야 할 동작을 결정하기 위하여 명령어 해독

3.데이터 인출

-명령어 실행을 위하여 데이터가 필요한 경우 기억장치 혹은 I/O장치로부터 데이터를 읽어옴

4.데이터 처리

-데이터에 대한 산술적 혹은 논리적 연산 수행

5.데이터 저장

-수행한 결과 저장

 

 

 

 

💫2.1 CPU의 기본 구조

 

CPU는

-산술논리연산장치(ALU)

-레지스터 세트

-제어 유니트로 구성된다

 

 

 

 

 

산술논리연산장치 (ALU)

-각종 산술 연산들과 논리 연산을 수행하는 회로로 이루어진 하드웨어 모듈

-산술연산(+,-,*,/)

-논리연산(and,or,not)

 

 

레지스터

-CPU 내부에 위치한 기억장치

-액세스 속도가 컴퓨터 기억장치 중에서 가장 빠름

-내부회로가 복잡하여 비교적 큰 공간 차지

-따라서 많은 수의 레지스터를 CPU의 내부에 포함하기 어려움

 

 

제어유니트

-프로그램 코드(명령어)를 해석

-그것을 실행하기 위한 제어 신호들을 순차적으로 발생하는 하드웨어 모듈

-명령어 실행에 필요한 각종 정보들의 전송 통로와 방향 지정

-CPU내부 요소들과 시스템 구성요소들의 동작 시간 결정

-명령어의 수가 많아질수록 제어 유니트 내부회로도 복잡해짐

-내부 복잡도를 줄이기 위해 마이크로프로그래밍이라는 소프트웨어로 일부 처리 가능

 

 

 

💫2.2 명령어 실행

 

CPU는 기억장치에 있는 명령어 인출 > 실행 > 실제적인 작업수행

 

명령어 사이클

-CPU가 한 개의 명령어를 실행하는데 필요한 과정

1.명령어 인출

-CPU가 기억장치로부터 명령어를 읽는 단계

2.명령어 실행

-인출된 명령어를 실행하는 단계

 

 

명령어를 실행하기 위해 필요한 CPU 내부 레지스터

1.프로그램 카운터(PC)

-다음 인출될 명령어의 주소를 가진 레지스터

2.누산기(AC)

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

-이 레지스터의 비트 수는 CPU가 한 번에 연산 처리할 수 있는 데이터 비트 수(즉, 단어길이)

3.명령어 레지스터 (IR)

-가장 최근에 인출된 명령어 저장

4.기억장치 주소 레지스터(MAR)

-프로그램 카운터에 저장된 명령어 주소가 시스템 주소 버스로 출력되기 전에 일시적으로 저장되는 주소 레지스터

-이 레지스터의 출력 선들이 주소 버스 선들과 직접 접속

5.기억장치 버퍼 레지스터(MBR)

-기억장치에 저장될 데이터 혹은 기억장치로부터 읽혀진 데이터가 일시적으로 저장되는 버퍼 레지스터

-이 레지스터의 입력 및 출력 선들이 데이터 버스 선들과 직접 접속

 

 

 

 

💫2.3(4) 듀얼 코어 및 멀티 코어

 

CPU 코어

- 기존의 CPU 칩에 포함되던 하드웨어 중에서 명령어 실행에 반드시 필요한 핵심 모듈

-명령어 파이프라인들로 이루어진 슈퍼스칼라 모듈과 ALU 및 레지스터 세트 등

 

멀티-코어 프로세서

-CPU 코어 여러 개를 하나의 칩에 넣은 것

 

듀얼-코어 프로세서

-두 개의 CPU 코어들을 넣은 것

 

 

 

 

💫2.4 명령어 세트 - 연산 종류

 

 

데이터 전송

-레지스터와 레지스터 간

-레지스터와 기억장치 간

-기억장치와 기억장치 간 데이터를 이동하는 동작

-기억장치의 주소를 계산하는 경우도 존재

 

산술연산

- 덧셈, 뺄셈, 곱셈, 나눗셈

 

논리연산

-and, not, or

 

입출력

-CPU와 외부 장치들 간의 데이터 이동을 위한 동작

 

프로그램 제어

-명령어 실행 순서를 변경하는 연산

Comments