1
0

rocketchip: use self-type constraints

This commit is contained in:
Wesley W. Terpstra
2016-10-28 22:30:13 -07:00
parent d51b0b5c02
commit 5bca13ebdb
2 changed files with 93 additions and 78 deletions

View File

@ -37,7 +37,7 @@ abstract class BareTopModule[+B <: BareTopBundle[BareTop[BaseCoreplex]]](val io:
}
/** Base Top with no Periphery */
trait TopNetwork {
trait TopNetwork extends HasPeripheryParameters {
this: BareTop[BaseCoreplex] =>
implicit val p = q
TLImp.emitMonitors = p(TLEmitMonitors)
@ -53,13 +53,13 @@ trait TopNetwork {
socBus.node))
}
trait TopNetworkBundle {
trait TopNetworkBundle extends HasPeripheryParameters {
this: BareTopBundle[BareTop[BaseCoreplex]] =>
implicit val p = outer.q
val success = Bool(OUTPUT)
}
trait TopNetworkModule {
trait TopNetworkModule extends HasPeripheryParameters {
this: {
val outer: BareTop[BaseCoreplex] with TopNetwork
val io: TopNetworkBundle