}
class XilinxVC707PCIeX1(implicit p: Parameters) extends LazyModule {
- val slave = TLInputNode()
- val control = TLInputNode()
- val master = TLOutputNode()
+ val slave = TLAsyncInputNode()
+ val control = TLAsyncInputNode()
+ val master = TLAsyncOutputNode()
val intnode = IntOutputNode()
val axi_to_pcie_x1 = LazyModule(new VC707AXIToPCIeX1)
AXI4Deinterleaver(p(coreplex.CacheBlockBytes))(
AXI4IdIndexer(idBits=4)(
TLToAXI4(beatBytes=8)(
- slave)))))
+ TLAsyncCrossingSink()(
+ slave))))))
axi_to_pcie_x1.control :=
AXI4Buffer()(
AXI4UserYanker()(
- AXI4Fragmenter()(
- AXI4IdIndexer(idBits=0)(
TLToAXI4(beatBytes=4)(
+ TLFragmenter(4, p(coreplex.CacheBlockBytes))(
+ TLAsyncCrossingSink()(
control)))))
master :=
+ TLAsyncCrossingSource()(
TLWidthWidget(8)(
AXI4ToTL()(
AXI4UserYanker(capMaxFlight=Some(8))(
AXI4Fragmenter()(
- AXI4IdIndexer(idBits=0)(
axi_to_pcie_x1.master)))))
intnode := axi_to_pcie_x1.intnode