J-type

JALR (I-Format)

I'm sorry for putting JALR here. Actually JALR is I-type.

  • JALR rd, rs1, imm

    • Reg[rd] <- PC + 4; PC <- Reg[rs1] + imm;

      • Write PC + 4 to Reg[rd] (return address)

      • Sets PC = Reg[rs1] + offset

Don't need to multiply the immediate by 2.

Adding JALR to datapath

JAL

  • JAL rd, imm

    • Reg[rd] <- PC + 4; PC <- PC + imm;

      • Write PC + 4 to Reg[rd] (return address)

      • Sets PC = PC + offset

Adding JAL to datapath

What should be added to datapath?

Last updated