This commit is contained in:
Zhaoyang You 2025-04-22 10:03:09 +08:00 committed by GitHub
commit d9a36eaa7d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 7 additions and 2 deletions

View File

@ -352,7 +352,9 @@ trait MachineLevel { self: NewCSR =>
}).setAddr(CSRs.mhpmcounter3 - 3 + num)
)
val mvendorid = Module(new CSRModule("Mvendorid") { rdata := 0.U })
val mvendorid = Module(new CSRModule("Mvendorid", new CSRBundle {
val ALL = RO(63, 0)
}))
.setAddr(CSRs.mvendorid)
// architecture id for XiangShan is 25

View File

@ -990,7 +990,10 @@ class NewCSR(implicit val p: Parameters) extends Module
}
})
private val regOut = Mux1H(csrOutMap.map { case (id, regOut) =>
private val rwMask = 0xc00
private val csrOutMapFilter = csrOutMap.filter { case (id, _) => (id & rwMask) != rwMask }
private val regOut = Mux1H(csrOutMapFilter.map { case (id, regOut) =>
if (vsMapS.contains(id)) {
((isModeVS && addr === vsMapS(id).U) || !isModeVS && addr === id.U) -> regOut
} else if (sMapVS.contains(id)) {