[컴퓨터 구조] CPU 명령어 수행 방식

2020. 6. 12. 22:31컴퓨터 구조

프로세서(CPU)에서 명령어를 수행하는 방식


개요

1. 프로그램 카운터(PC)를 메모리로 보내 메모리로부터 명령어를 가져온다.

2. 명령어 수행에 필요한 레지스터를 읽는다.

3. ALU를 거쳐 계산한다.

4. 나온 값을 멀티플렉서(mux)를 거쳐 선택한다.
제어 유닛(Control Unit)에서 나온 제어선을 통해 선택한다.

PC → MEM → ALU → MEM

 

필요한 하드웨어


R-타입(ALU 연산)

레지스터 파일
레지스터들의 집합으로 구성된 상태 소자

ALU

 

load, store

데이터 메모리

부호 확장(Sign-extend)

 

branch

ALU
분기 조건 계산

Adder
분기 목적지 주소 계산

 

Datapath


명령어를 수행하는 경로

 

 

 

제어 유닛(Control Unit)


들어온 명령어를 해독하여각 장치들에게 신호를 주는 장치각 장치들은 신호에 맞게 적절한 동작을 하게 된다.

 

Instruction RegDst ALUSrc MemtoReg RegWrite MemReam MemWrite Branch ALU-Op1 ALU-Op0 Jump
R-format 1 0 0 1 0 0 0 1 0 0
lw 0 1 1 1 1 0 0 0 0 0
sw X 1 X 0 0 1 0 0 0 0
beq X 0 X 0 0 0 1 0 1 0
j X X X 0 0 0 X X X 1