본문 바로가기
CS(Computer Science)/컴퓨터구조

9. 프로세서 (1)

by 동욷 2023. 6. 4.

MIPS 

1) Arithmetic / logical : add, sub, and, or , slt -> R-type instruction

2) Memory access : lw, sw

3) Control transfer : beq, j

 

CPU 처리 과정 (공통)

1) fetch : memory로 부터 instruction을 Load

-  Memory address : PC

 

2) decode : opcode를 확인하여 instruction type을 확인

-  Instruction [31 : 26]

 

 

R-type Instruction

=> opcode | rs | rt | rd | shamt | funct

 

CPU Arithmetic / Logical : add , sub, and , or , slt

- rs, rt 레지스터로 부터 2 words 를 읽음

- calculation 수행

- 결과를 rd 레지스터에 저장

- PC += 4

 

load / store Instruction

=> opcode | rs | rt | address 

(Load)

- rs 레지스터로부터 1 word를 읽음 (base address)

- base address + offset을 수행 => immediate field

- Data memory로 부터 word를 Load 해온다 (@base address + offset)

- Load 한 word를 rt 레지스터에 저장

- PC += 4

 

(Store)

- rs 레지스터로부터 1 word를 읽음 (base address)

- base address + offset을 수행 => immediate field

- rt 레지스터로부터 1 word를 읽음

- 그 결과를 data memory에 저장 (@base address + offset)

- PC += 4

 

branch instruction 

=> opcode | rs | rt | address

 

(beq)

- rs , rt 레지스터로부터 2 word를 읽음

- ALU 연산을 통해서 비교 수행

if rs == rt  PC = PC + 4 + offset(immediate field) *4

else PC += 4

 

Jump instruction

=> 6bits + address(26bits)

 

(j)

- PC <- PC[31:28] | (address field) *4

- or 연산

 

 

 

Main Memory => Cache => CPU

Cache에는 instruction cache와 data cache가 있다

 

728x90

'CS(Computer Science) > 컴퓨터구조' 카테고리의 다른 글

10. 파이프라인 (3)  (0) 2023.06.04
10. 파이프라인 (2)  (0) 2023.06.04
10. 파이프라인 (1)  (0) 2023.06.04
9. 프로세서 (3)  (0) 2023.06.04
9. 프로세서 (2)  (0) 2023.06.04