From ac19117ec5fc890b9c9b9540c3cb3f0c1ab65721 Mon Sep 17 00:00:00 2001 From: Jerry Zhao Date: Fri, 23 Oct 2020 15:41:49 -0700 Subject: [PATCH] Add MultiRoCCGemmini config fragment --- .../chipyard/src/main/scala/ConfigFragments.scala | 11 +++++++++++ 1 file changed, 11 insertions(+) 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(