1
0
Fork 0

subsystem: XSubsystemModule => XSubsystemModuleImp

This commit is contained in:
Henry Cook 2018-02-21 12:51:16 -08:00
parent 1af02f754e
commit e237f72539
4 changed files with 9 additions and 9 deletions

View File

@ -33,10 +33,10 @@ class GroundTestSubsystem(implicit p: Parameters) extends BaseSubsystem
// No PLIC in ground test; so just sink the interrupts to nowhere // No PLIC in ground test; so just sink the interrupts to nowhere
IntSinkNode(IntSinkPortSimple()) := ibus.toPLIC IntSinkNode(IntSinkPortSimple()) := ibus.toPLIC
override lazy val module = new GroundTestSubsystemModule(this) override lazy val module = new GroundTestSubsystemModuleImp(this)
} }
class GroundTestSubsystemModule[+L <: GroundTestSubsystem](_outer: L) extends BaseSubsystemModule(_outer) class GroundTestSubsystemModuleImp[+L <: GroundTestSubsystem](_outer: L) extends BaseSubsystemModuleImp(_outer)
with HasMasterAXI4MemPortModuleImp { with HasMasterAXI4MemPortModuleImp {
val success = IO(Bool(OUTPUT)) val success = IO(Bool(OUTPUT))

View File

@ -16,7 +16,7 @@ abstract class BareSubsystem(implicit p: Parameters) extends LazyModule with Bin
lazy val json = JSON(bindingTree) lazy val json = JSON(bindingTree)
} }
abstract class BareSubsystemModule[+L <: BareSubsystem](_outer: L) extends LazyModuleImp(_outer) { abstract class BareSubsystemModuleImp[+L <: BareSubsystem](_outer: L) extends LazyModuleImp(_outer) {
val outer = _outer val outer = _outer
ElaborationArtefacts.add("graphml", outer.graphML) ElaborationArtefacts.add("graphml", outer.graphML)
ElaborationArtefacts.add("dts", outer.dts) ElaborationArtefacts.add("dts", outer.dts)
@ -27,7 +27,7 @@ abstract class BareSubsystemModule[+L <: BareSubsystem](_outer: L) extends LazyM
/** Base Subsystem class with no peripheral devices or ports added */ /** Base Subsystem class with no peripheral devices or ports added */
abstract class BaseSubsystem(implicit p: Parameters) extends BareSubsystem { abstract class BaseSubsystem(implicit p: Parameters) extends BareSubsystem {
override val module: BaseSubsystemModule[BaseSubsystem] override val module: BaseSubsystemModuleImp[BaseSubsystem]
// These are wrappers around the standard buses available in all subsytems, where // These are wrappers around the standard buses available in all subsytems, where
// peripherals, tiles, ports, and other masters and slaves can attach themselves. // peripherals, tiles, ports, and other masters and slaves can attach themselves.
@ -97,7 +97,7 @@ abstract class BaseSubsystem(implicit p: Parameters) extends BareSubsystem {
} }
} }
abstract class BaseSubsystemModule[+L <: BaseSubsystem](_outer: L) extends BareSubsystemModule(_outer) { abstract class BaseSubsystemModuleImp[+L <: BaseSubsystem](_outer: L) extends BareSubsystemModuleImp(_outer) {
println("Generated Address Map") println("Generated Address Map")
private val aw = (outer.sbus.busView.bundle.addressBits-1)/4 + 1 private val aw = (outer.sbus.busView.bundle.addressBits-1)/4 + 1
private val fmt = s"\t%${aw}x - %${aw}x %c%c%c%c%c %s" private val fmt = s"\t%${aw}x - %${aw}x %c%c%c%c%c %s"

View File

@ -148,10 +148,10 @@ trait HasRocketTilesModuleImp extends HasTilesModuleImp
class RocketSubsystem(implicit p: Parameters) extends BaseSubsystem class RocketSubsystem(implicit p: Parameters) extends BaseSubsystem
with HasRocketTiles { with HasRocketTiles {
val tiles = rocketTiles val tiles = rocketTiles
override lazy val module = new RocketSubsystemModule(this) override lazy val module = new RocketSubsystemModuleImp(this)
} }
class RocketSubsystemModule[+L <: RocketSubsystem](_outer: L) extends BaseSubsystemModule(_outer) class RocketSubsystemModuleImp[+L <: RocketSubsystem](_outer: L) extends BaseSubsystemModuleImp(_outer)
with HasRocketTilesModuleImp { with HasRocketTilesModuleImp {
tile_inputs.zip(outer.hartIdList).foreach { case(wire, i) => tile_inputs.zip(outer.hartIdList).foreach { case(wire, i) =>
wire.clock := clock wire.clock := clock

View File

@ -16,10 +16,10 @@ class ExampleRocketSystem(implicit p: Parameters) extends RocketSubsystem
with HasSlaveAXI4Port with HasSlaveAXI4Port
with HasPeripheryBootROM with HasPeripheryBootROM
with HasSystemErrorSlave { with HasSystemErrorSlave {
override lazy val module = new ExampleRocketSystemModule(this) override lazy val module = new ExampleRocketSystemModuleImp(this)
} }
class ExampleRocketSystemModule[+L <: ExampleRocketSystem](_outer: L) extends RocketSubsystemModule(_outer) class ExampleRocketSystemModuleImp[+L <: ExampleRocketSystem](_outer: L) extends RocketSubsystemModuleImp(_outer)
with HasRTCModuleImp with HasRTCModuleImp
with HasExtInterruptsModuleImp with HasExtInterruptsModuleImp
with HasMasterAXI4MemPortModuleImp with HasMasterAXI4MemPortModuleImp