Skip to content

Commit

Permalink
fix(dispatch): fix bug of hasException's instr send to iq
Browse files Browse the repository at this point in the history
  • Loading branch information
xiaofeibao-xjtu committed Dec 16, 2024
1 parent ac2e89c commit 45258c9
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions src/main/scala/xiangshan/backend/dispatch/NewDispatch.scala
Original file line number Diff line number Diff line change
Expand Up @@ -388,7 +388,8 @@ class NewDispatch(implicit p: Parameters) extends XSModule with HasPerfEvents wi
val lsqCanAccept = Wire(Bool())
for (i <- 0 until RenameWidth){
// update valid logic
fromRenameUpdate(i).valid := fromRename(i).valid && allowDispatch(i) && !uopBlockByIQ(i) && thisCanActualOut(i) && lsqCanAccept && !fromRename(i).bits.eliminatedMove
fromRenameUpdate(i).valid := fromRename(i).valid && allowDispatch(i) && !uopBlockByIQ(i) && thisCanActualOut(i) &&
lsqCanAccept && !fromRename(i).bits.eliminatedMove && !fromRename(i).bits.hasException
fromRename(i).ready := allowDispatch(i) && !uopBlockByIQ(i) && thisCanActualOut(i) && lsqCanAccept
}
for (i <- 0 until RenameWidth){
Expand Down Expand Up @@ -734,7 +735,6 @@ class NewDispatch(implicit p: Parameters) extends XSModule with HasPerfEvents wi
// (2) previous instructions are ready
thisCanActualOut := VecInit((0 until RenameWidth).map(i => !blockedByWaitForward(i) && notBlockedByPrevious(i) && io.enqRob.canAccept))
val thisActualOut = (0 until RenameWidth).map(i => io.enqRob.req(i).valid && io.enqRob.canAccept)
val hasValidException = fromRename.zip(hasException).map(x => x._1.valid && x._2)

// input for ROB, LSQ
for (i <- 0 until RenameWidth) {
Expand Down

0 comments on commit 45258c9

Please sign in to comment.