diff --git a/generators/chipyard/src/main/scala/ConfigFragments.scala b/generators/chipyard/src/main/scala/ConfigFragments.scala index e66dfb4a..68c41724 100644 --- a/generators/chipyard/src/main/scala/ConfigFragments.scala +++ b/generators/chipyard/src/main/scala/ConfigFragments.scala @@ -18,6 +18,7 @@ import testchipip._ import tracegen.{TraceGenSystem} import hwacha.{Hwacha} +import gemmini.{Gemmini, GemminiConfigs} import boom.common.{BoomTileAttachParams} import ariane.{ArianeTileAttachParams} @@ -105,6 +106,16 @@ class WithMultiRoCCHwacha(harts: Int*) extends Config( }) ) +class WithMultiRoCCGemmini(harts: Int*) extends Config((site, here, up) => { + case MultiRoCCKey => up(MultiRoCCKey, site) ++ harts.distinct.map { i => + (i -> Seq((p: Parameters) => { + implicit val q = p + val gemmini = LazyModule(new Gemmini(OpcodeSet.custom3, GemminiConfigs.defaultConfig)) + gemmini + })) + } +}) + class WithTraceIO extends Config((site, here, up) => { case TilesLocated(InSubsystem) => up(TilesLocated(InSubsystem), site) map { case tp: BoomTileAttachParams => tp.copy(tileParams = tp.tileParams.copy(