[MIPS] lw Control unit (Single-Clock)
↓↓↓ LW Control unit ↓↓↓
• RegDst(Register Destination) - 0
lw instruction format은 destination이 [20:16] bit에 존재합니다.
그렇기 때문에 MUX의 값을 0로 발생시켜야 됩니다.
• RegWrtie(Register Write) - 1
Data memory에서 fetch한 값을 Register에 저장해야 되기 때문에
MUX의 값을 1로 발생시켜야 됩니다.
• ALUSrc(ALU Source) - 1
ALU에서 필요한 두 번째 source가 SignExt을 지나와야 되기 때문에
MUX의 값을 1로 발생시켜야 됩니다.
• ALUop(ALU operation) - add
두 번째 source와 immediate 값을 더해야되기 때문에
ALUop를 add의 값으로 발생시킵니다.
(주소값 계산)
• MemWrite(Memory write) - 0
lw의 경우는 memory에 값을 쓸 일이 없습니다.
그렇기 때문에 MUX의 값을 0으로 발생시켜야 됩니다.
• MemRead(Memory read) - 1
lw의 경우는 memory를 읽어야 합니다.
그렇기 때문에 MUX의 값을 1로 발생시켜야 됩니다.
• MemtoReg(Memory to Register) - 1
lw의 경우는 memory를 읽고 값을 가져와야 됩니다.
그렇기 때문에 MUX의 값을 1으로 발생시켜야 됩니다.
• PCSrc(PC Source) - 0
lw의 경우는 PC의 값을 조정할 필요가 없습니다.
그렇기 때문에 MUX의 값을 0으로 발생시켜야 됩니다.
◡̈