1
0

tile: put a BasicBusBlocker inside RocketTile (#1115)

...instead of on the master side of the system bus.

People inheriting from HasTileMasterPort might need to add
`masterNode := tileBus.node` to their Tile child class.
This commit is contained in:
Henry Cook
2017-11-17 17:26:48 -08:00
committed by GitHub
parent e7704f46c8
commit b625e68360
6 changed files with 19 additions and 15 deletions

View File

@ -23,6 +23,7 @@ trait TileParams {
val btb: Option[BTBParams]
val trace: Boolean
val hartid: Int
val blockerCtrlAddr: Option[BigInt]
}
trait HasTileParameters {
@ -85,7 +86,6 @@ trait HasTileLinkMasterPort {
val module: HasTileLinkMasterPortModule
val masterNode = TLIdentityNode()
val tileBus = LazyModule(new TLXbar) // TileBus xbar for cache backends to connect to
masterNode := tileBus.node
}
trait HasTileLinkMasterPortBundle {

View File

@ -23,6 +23,7 @@ case class RocketTileParams(
hcfOnUncorrectable: Boolean = false,
name: Option[String] = Some("tile"),
hartid: Int = 0,
blockerCtrlAddr: Option[BigInt] = None,
boundaryBuffers: Boolean = false // if synthesized with hierarchical PnR, cut feed-throughs?
) extends TileParams {
require(icache.isDefined)