공부/System Programming & Computer Structure

CPU구조와 내부 구성요소들의 역할

sudo 2022. 1. 21. 07:00

https://wjdgh283.tistory.com/110#comment8952715

CPU 동작

1. Fetch

- 명령어 가져오기

2. Decode

- 가져온 명령어 해독하기

3. Execute

- 해독한 명령어를 실행

4. Writeback

- 실행한 명령대로 (필요하다면)메모리에 쓰기

CPU 구성요소

ALU

실질적인 연산을 하는 장치. Adder(가산기)로 덧셈을, Complementer(보수기)로 뺄셈을, Shifter로 곱셈, 나눗셈을 할 수 있다. 

Control Unit

입력된 명령어를 Decoder를 이용해서 해독하고, 연산이 필요한 데이터를 메모리로부터 ALU로 옮기거나 역으로 ALU에서 계산된 결과를 메모리로 옮기는 명령을 내린다.

내부에  

Bus Interface

CPU가 외부에 데이터를 주고 받는 용도의 인터페이스. CPU 외부의 I/O Bus로부터 데이터를 주거나 받기 위해서 이 인터페이스가 필요하다

Register

CPU랑 가장 가까운(그래서 가장 접근 속도가 빠른) 저장 공간. 빠른 만큼 용량이 적다. 용도는 ALU에서 연산할때 operand들을 저장할수도 있고, 다음 Cycle에 가져올 명령어의 위치(Program Counter Register)를 저장하고 있는 용도나 지금 실행중인 명령어를 저장(Instruction Register)로 쓰기도 한다.