Make blocking L1 D$ the default
The nonblocking cache is overdesigned for most Rocket-class cores, so the blocking cache is the more appropriate default.
This commit is contained in:
parent
487b8db5ef
commit
3ea822c2cf
@ -41,7 +41,7 @@ class WithNBigCores(n: Int) extends Config((site, here, up) => {
|
|||||||
divEarlyOut = true))),
|
divEarlyOut = true))),
|
||||||
dcache = Some(DCacheParams(
|
dcache = Some(DCacheParams(
|
||||||
rowBits = site(L1toL2Config).beatBytes*8,
|
rowBits = site(L1toL2Config).beatBytes*8,
|
||||||
nMSHRs = 2,
|
nMSHRs = 0,
|
||||||
blockBytes = site(CacheBlockBytes))),
|
blockBytes = site(CacheBlockBytes))),
|
||||||
icache = Some(ICacheParams(
|
icache = Some(ICacheParams(
|
||||||
rowBits = site(L1toL2Config).beatBytes*8,
|
rowBits = site(L1toL2Config).beatBytes*8,
|
||||||
@ -147,9 +147,9 @@ class WithRV32 extends Config((site, here, up) => {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
class WithBlockingL1 extends Config((site, here, up) => {
|
class WithNonblockingL1(nMSHRs: Int) extends Config((site, here, up) => {
|
||||||
case RocketTilesKey => up(RocketTilesKey, site) map { r =>
|
case RocketTilesKey => up(RocketTilesKey, site) map { r =>
|
||||||
r.copy(dcache = r.dcache.map(_.copy(nMSHRs = 0)))
|
r.copy(dcache = r.dcache.map(_.copy(nMSHRs = nMSHRs)))
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -46,7 +46,7 @@ class BasePlatformConfig extends Config((site, here, up) => {
|
|||||||
/** Actual elaboratable target Configs */
|
/** Actual elaboratable target Configs */
|
||||||
|
|
||||||
class BaseConfig extends Config(new BaseCoreplexConfig ++ new BasePlatformConfig)
|
class BaseConfig extends Config(new BaseCoreplexConfig ++ new BasePlatformConfig)
|
||||||
class DefaultConfig extends Config(new WithBlockingL1 ++ new WithNBigCores(1) ++ new BaseConfig)
|
class DefaultConfig extends Config(new WithNBigCores(1) ++ new BaseConfig)
|
||||||
|
|
||||||
class DefaultL2Config extends Config(new WithL2Cache ++ new WithNBigCores(1) ++ new BaseConfig)
|
class DefaultL2Config extends Config(new WithL2Cache ++ new WithNBigCores(1) ++ new BaseConfig)
|
||||||
class DefaultBufferlessConfig extends Config(
|
class DefaultBufferlessConfig extends Config(
|
||||||
|
Loading…
Reference in New Issue
Block a user