1
0
rocket-chip/src/main/scala/rocketchip/RocketPlexMaster.scala

40 lines
845 B
Scala
Raw Normal View History

// See LICENSE.SiFive for license details.
package rocketchip
import Chisel._
import config._
import diplomacy._
import uncore.tilelink2._
import uncore.devices._
import util._
import coreplex._
2016-11-23 01:58:24 +01:00
trait RocketPlexMaster extends L2Crossbar {
val module: RocketPlexMasterModule
val mem: Seq[TLInwardNode]
val coreplex = LazyModule(new DefaultCoreplex)
2016-11-23 01:58:24 +01:00
coreplex.l2in := l2.node
socBus.node := coreplex.mmio
coreplex.mmioInt := intBus.intnode
mem.foreach { _ := coreplex.mem }
}
2016-11-23 01:58:24 +01:00
trait RocketPlexMasterBundle extends L2CrossbarBundle {
val outer: RocketPlexMaster
}
2016-11-23 01:58:24 +01:00
trait RocketPlexMasterModule extends L2CrossbarModule {
val outer: RocketPlexMaster
val io: RocketPlexMasterBundle
val clock: Clock
val reset: Bool
outer.coreplex.module.io.tcrs.foreach { case tcr =>
tcr.clock := clock
tcr.reset := reset
}
}