1
0

Add uncached->cached tilelink converter

This commit is contained in:
Henry Cook 2014-12-12 12:07:04 -08:00
parent 424df2368f
commit 6a8b66231c

View File

@ -226,6 +226,25 @@ class TileLinkIO extends UncachedTileLinkIO {
val release = new DecoupledIO(new LogicalNetworkIO(new Release)) val release = new DecoupledIO(new LogicalNetworkIO(new Release))
} }
class TileLinkIOWrapper extends TLModule {
val io = new Bundle {
val in = new UncachedTileLinkIO().flip
val out = new TileLinkIO
}
io.out.acquire <> io.in.acquire
io.out.grant <> io.in.grant
io.out.finish <> io.in.finish
io.out.probe.ready := Bool(false)
io.out.release.valid := Bool(false)
}
object TileLinkIOWrapper {
def apply[T <: Data](uncached: UncachedTileLinkIO) = {
val conv = Module(new TileLinkIOWrapper)
conv.io.in <> uncached
conv.io.out
}
}
abstract class TileLinkArbiterLike(val arbN: Int) extends TLModule { abstract class TileLinkArbiterLike(val arbN: Int) extends TLModule {
type MasterSourcedWithId = MasterSourcedMessage with HasClientTransactionId type MasterSourcedWithId = MasterSourcedMessage with HasClientTransactionId
type ClientSourcedWithId = ClientSourcedMessage with HasClientTransactionId type ClientSourcedWithId = ClientSourcedMessage with HasClientTransactionId