Computer architectures
[MIPS] beq Datapath (Single-Clock)
YEJI ⍢
2022. 11. 7. 15:27
728x90
beq는 PC 값을 조정하는게 중요 포인트입니다.
beq $s0, $s1 label
① Instruction을 fetch하면서 PC의 값을 증가시킵니다.
② Register($s0, $s1)의 값을 읽습니다.
③ Branch or Not Branch
ALU에서 계산된 값이 Non-zero(true)일 경우에 데이터가 이렇게 움직입니다.
label의 값이 SignExt, shift left 2된 값과 PC+4와 더해져서 PC의 값이 조정됩니다.
ALU에서 계산된 값이 Zero(false)일 경우에 데이터가 이렇게 움직입니다.
PC+4의 값이 그대로 PC에 들어갑니다.
◡̈