Merge branch 'rebar-dev' of https://github.com/ucb-bar/project-template into firesim-integration

This commit is contained in:
David Biancolin
2019-06-28 18:10:19 +00:00
33 changed files with 278 additions and 80 deletions

View File

@@ -205,7 +205,7 @@ class GPIOBoomAndRocketConfig extends Config(
new WithGPIOBoomRocketTop ++
new BaseBoomAndRocketConfig)
class DualCoreBoomAndOneRocketConfig extends Config(
class DualBoomAndOneRocketConfig extends Config(
new WithNormalBoomRocketTop ++
new WithBootROM ++
new boom.system.WithRenumberHarts ++
@@ -216,12 +216,12 @@ class DualCoreBoomAndOneRocketConfig extends Config(
new freechips.rocketchip.subsystem.WithNBigCores(1) ++
new freechips.rocketchip.system.BaseConfig)
class DualCoreBoomAndOneHwachaRocketConfig extends Config(
class DualBoomAndOneHwachaRocketConfig extends Config(
new WithNormalBoomRocketTop ++
new WithBootROM ++
new WithMultiRoCC ++
new WithMultiRoCCHwacha(0) ++ // put Hwacha just on hart0 which was renumbered to Rocket
new boom.system.WithRenumberHarts ++
new boom.system.WithRenumberHarts(rocketFirst = true) ++
new hwacha.DefaultHwachaConfig ++
new boom.common.WithRVC ++
new boom.common.DefaultBoomConfig ++

View File

@@ -57,11 +57,11 @@ object Generator extends GeneratorApp {
import freechips.rocketchip.system.DefaultTestSuites._
val xlen = params(XLen)
// TODO: for now only generate tests for the first rocket/boom tile in the subsystem
// TODO: support heterogenous systems?
// TODO: generate tests for hart0 of the system since asm tests run on hart0 by default
// rocket specific tests
params(RocketTilesKey).headOption.map { tileParams =>
params(RocketTilesKey).find(_.hartId == 0).map { tileParams =>
val coreParams = tileParams.core
val vm = coreParams.useVM
val env = if (vm) List("p","v") else List("p")
@@ -95,7 +95,7 @@ object Generator extends GeneratorApp {
}
// boom specific tests
params(BoomTilesKey).headOption.map { tileParams =>
params(BoomTilesKey).find(_.hartId == 0).map { tileParams =>
val coreParams = tileParams.core
val vm = coreParams.useVM
val env = if (vm) List("p","v") else List("p")

View File

@@ -16,13 +16,13 @@ import sifive.blocks.devices.gpio._
// BOOM and/or Rocket Top Level Systems
// -------------------------------
class BoomRocketTop(implicit p: Parameters) extends boom.system.ExampleBoomAndRocketSystem
class BoomRocketTop(implicit p: Parameters) extends boom.system.BoomRocketSystem
with HasNoDebug
with HasPeripherySerial {
override lazy val module = new BoomRocketTopModule(this)
}
class BoomRocketTopModule[+L <: BoomRocketTop](l: L) extends boom.system.ExampleBoomAndRocketSystemModule(l)
class BoomRocketTopModule[+L <: BoomRocketTop](l: L) extends boom.system.BoomRocketSystemModule(l)
with HasNoDebugModuleImp
with HasPeripherySerialModuleImp
with DontTouch