Skip to content

Commit 29800e2

Browse files
committed
ADD: configuration to match updated rocketchip API
1 parent 349885a commit 29800e2

File tree

2 files changed

+16
-8
lines changed

2 files changed

+16
-8
lines changed

generators/chipyard/src/main/scala/config/RocketConfigs.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@ class SV48RocketConfig extends Config(
119119
class LTraceEncoderRocketConfig extends Config(
120120
new freechips.rocketchip.trace.WithTraceSinkDMA(1) ++
121121
new freechips.rocketchip.trace.WithTraceSinkAlways(0) ++
122+
new chipyard.config.WithArbiterMonitor ++
122123
new chipyard.config.WithLTraceEncoder ++
123124
new chipyard.config.WithNPerfCounters(29) ++
124125
new freechips.rocketchip.subsystem.WithoutTLMonitors ++

generators/chipyard/src/main/scala/config/fragments/TileFragments.scala

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,15 @@ import org.chipsalliance.cde.config.{Field, Parameters, Config}
66
import freechips.rocketchip.tile._
77
import freechips.rocketchip.subsystem._
88
import freechips.rocketchip.rocket.{RocketCoreParams, MulDivParams, DCacheParams, ICacheParams}
9+
import freechips.rocketchip.diplomacy._
910

1011
import cva6.{CVA6TileAttachParams}
1112
import sodor.common.{SodorTileAttachParams}
1213
import ibex.{IbexTileAttachParams}
1314
import vexiiriscv.{VexiiRiscvTileAttachParams}
1415
import testchipip.cosim.{TracePortKey, TracePortParams}
1516
import barf.{TilePrefetchingMasterPortParams}
16-
import freechips.rocketchip.trace.{TraceEncoderParams, TraceCoreParams}
17+
import freechips.rocketchip.trace.{TraceEncoderParams, TraceCoreParams, TacitEncoder}
1718

1819
class WithL2TLBs(entries: Int) extends Config((site, here, up) => {
1920
case TilesLocated(InSubsystem) => up(TilesLocated(InSubsystem), site) map {
@@ -68,21 +69,27 @@ class WithNPerfCounters(n: Int = 29) extends Config((site, here, up) => {
6869
class WithLTraceEncoder extends Config((site, here, up) => {
6970
case TilesLocated(InSubsystem) => up(TilesLocated(InSubsystem), site) map {
7071
case tp: RocketTileAttachParams => tp.copy(tileParams = tp.tileParams.copy(
71-
ltrace = Some(TraceEncoderParams(
72-
coreParams = TraceCoreParams(
72+
traceParams = Some(TraceEncoderParams(
73+
encoderBaseAddr = 0x3000000 + tp.tileParams.tileId * 0x1000,
74+
buildEncoder = (p: Parameters) => LazyModule(new TacitEncoder(new TraceCoreParams(
7375
nGroups = 1,
7476
iretireWidth = 1,
7577
xlen = tp.tileParams.core.xLen,
7678
iaddrWidth = tp.tileParams.core.xLen
77-
),
78-
bufferDepth = 16,
79-
encoderBaseAddr = 0x3000000 + tp.tileParams.tileId * 0x1000,
80-
useArbiterMonitor = true
81-
)),
79+
), 16)(p)),
80+
useArbiterMonitor = false
81+
)),
8282
core = tp.tileParams.core.copy(enableTraceCoreIngress=true)))
8383
}
8484
})
8585

86+
class WithArbiterMonitor extends Config((site, here, up) => {
87+
case TilesLocated(InSubsystem) => up(TilesLocated(InSubsystem), site) map {
88+
case tp: RocketTileAttachParams => tp.copy(tileParams = tp.tileParams.copy(
89+
traceParams = Some(tp.tileParams.traceParams.get.copy(useArbiterMonitor = true))))
90+
}
91+
})
92+
8693
class WithNPMPs(n: Int = 8) extends Config((site, here, up) => {
8794
case TilesLocated(InSubsystem) => up(TilesLocated(InSubsystem), site) map {
8895
case tp: RocketTileAttachParams => tp.copy(tileParams = tp.tileParams.copy(

0 commit comments

Comments
 (0)