fix(jalr): 忽略最低位
This commit is contained in:
parent
fb799d5e7f
commit
ed6c3221e8
|
@ -44,6 +44,6 @@ class JumpCtrl(implicit val config: CpuConfig) extends Module {
|
||||||
io.out.jump_target := Mux(
|
io.out.jump_target := Mux(
|
||||||
jump_inst,
|
jump_inst,
|
||||||
io.in.src_info.src1_data + io.in.src_info.src2_data,
|
io.in.src_info.src1_data + io.in.src_info.src2_data,
|
||||||
io.in.src_info.src1_data
|
(io.in.src_info.src1_data + io.in.src_info.src2_data) & ~1.U(XLEN.W)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
@ -115,7 +115,7 @@ class ExecuteUnit(implicit val config: CpuConfig) extends Module {
|
||||||
Seq(
|
Seq(
|
||||||
(fu.branch.pred_fail && fu.branch.branch) -> io.executeStage.inst0.jb_info.branch_target,
|
(fu.branch.pred_fail && fu.branch.branch) -> io.executeStage.inst0.jb_info.branch_target,
|
||||||
(fu.branch.pred_fail && !fu.branch.branch) -> (io.executeStage.inst0.pc + 4.U),
|
(fu.branch.pred_fail && !fu.branch.branch) -> (io.executeStage.inst0.pc + 4.U),
|
||||||
(io.executeStage.inst0.jb_info.jump_regiser) -> (io.executeStage.inst0.src_info.src1_data + io.executeStage.inst0.src_info.src2_data)
|
(io.executeStage.inst0.jb_info.jump_regiser) -> ((io.executeStage.inst0.src_info.src1_data + io.executeStage.inst0.src_info.src2_data) & ~1.U(XLEN.W)),
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue