我正在尝试实现对单周期 MIPS 处理器的 jr(跳转寄存器)指令支持。在下图中,我绘制了一个简单的多路复用器,它允许在普通链 PC 或指令 (jr) 地址之间进行选择。
我怎么知道指令是 JR 将多路复用器选择设置为“1”?我已经完成了 jump 和 jump_and_link (虽然图像没有显示它,因为我现在没有我的项目),并且为了控制它们,我只需检查 OP 代码是否为 10(跳转)或11 (jal) 在主控件中,然后将 mux sel 设置为“1”。但我认为我不能对 jr 做同样的事情,因为指令布局是不同的。