Add NarrowRocketCache config fragment

For configs with wide SBUS, a narrow rocket cache is easier to PD, and does not incur any performance loss usually
This commit is contained in:
Jerry Zhao
2023-09-20 15:53:13 -07:00
committed by GitHub
parent 0fd04c302f
commit 8c3a586c73

View File

@@ -66,6 +66,15 @@ class WithNPMPs(n: Int = 8) extends Config((site, here, up) => {
}
})
class WithRocketCacheRowBits(rowBits: Int = 64) extends Config((site, here, up) => {
case TilesLocated(InSubsystem) => up(TilesLocated(InSubsystem)) map {
case tp: RocketTileAttachParams => tp.copy(tileParams = tp.tileParams.copy(
dcache = tp.tileParams.dcache.map(_.copy(rowBits = rowBits)),
icache = tp.tileParams.icache.map(_.copy(rowBits = rowBits))
))
}
})
class WithRocketICacheScratchpad extends Config((site, here, up) => {
case TilesLocated(InSubsystem) => up(TilesLocated(InSubsystem), site) map {
case tp: RocketTileAttachParams => tp.copy(tileParams = tp.tileParams.copy(