Skip to content

Commit

Permalink
EnqEntry: fix condition of bypass2 in vf -> mem
Browse files Browse the repository at this point in the history
  • Loading branch information
sinsanction authored and xiaofeibao-xjtu committed Apr 16, 2024
1 parent 870ecf1 commit adc944d
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions src/main/scala/xiangshan/backend/issue/EnqEntry.scala
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@ class EnqEntry(isComp: Boolean)(implicit p: Parameters, params: IssueBlockParams
val enqDelay2WakeUpOH = enqDelayOut2.srcWakeUpByIQVec(i)
val enqDelay1IsWakeupByMemIQ = enqDelay1WakeUpOH.zip(io.commonIn.wakeUpFromIQ).filter(_._2.bits.params.isMemExeUnit).map(_._1).fold(false.B)(_ || _)
val enqDelay2IsWakeupByMemIQ = enqDelay2WakeUpOH.zip(io.commonIn.wakeUpFromIQ).filter(_._2.bits.params.isMemExeUnit).map(_._1).fold(false.B)(_ || _)
val enqDelay2IsWakeupByVfIQ = enqDelay2WakeUpOH.zip(io.commonIn.wakeUpFromIQ).filter(_._2.bits.params.isVfExeUnit).map(_._1).fold(false.B)(_ || _)

if (params.inVfSchd && params.readVfRf && params.hasIQWakeUp) {
enqDelayDataSources(i).value := MuxCase(entryReg.status.srcStatus(i).dataSources.value, Seq(
Expand All @@ -95,8 +96,8 @@ class EnqEntry(isComp: Boolean)(implicit p: Parameters, params: IssueBlockParams
}
else if (params.inMemSchd && params.readVfRf && params.hasIQWakeUp) {
enqDelayDataSources(i).value := MuxCase(entryReg.status.srcStatus(i).dataSources.value, Seq(
enqDelayOut1.srcWakeUpByIQ(i).asBool -> DataSource.bypass,
(enqDelayOut2.srcWakeUpByIQ(i).asBool && wakeUpByVf(entryReg.status.srcStatus(i).srcWakeUpL1ExuOH.get)) -> DataSource.bypass2,
enqDelayOut1.srcWakeUpByIQ(i).asBool -> DataSource.bypass,
(enqDelayOut2.srcWakeUpByIQ(i).asBool && enqDelay2IsWakeupByVfIQ) -> DataSource.bypass2,
))
enqDelaySrcWakeUpL1ExuOH.get(i) := Mux(enqDelay1WakeUpValid,
Mux1H(enqDelay1WakeUpOH, params.wakeUpSourceExuIdx.map(x => MathUtils.IntToOH(x).U(backendParams.numExu.W))),
Expand Down

0 comments on commit adc944d

Please sign in to comment.