X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmain%2Fscala%2Fdevices%2Fxilinxvc707pciex1%2FXilinxVC707PCIeX1.scala;h=9bb0c05ddd052296c786b71c95a3aa660f387020;hb=0ed21ba46590a23434d7ee55fa47bda3e114b4cd;hp=2e376d0fc9d7a0db3cf499ee1586a253a48dbf8b;hpb=9cb80ac9134ad4036e2ae40fb9be8f0f3e7065a4;p=sifive-blocks.git diff --git a/src/main/scala/devices/xilinxvc707pciex1/XilinxVC707PCIeX1.scala b/src/main/scala/devices/xilinxvc707pciex1/XilinxVC707PCIeX1.scala index 2e376d0..9bb0c05 100644 --- a/src/main/scala/devices/xilinxvc707pciex1/XilinxVC707PCIeX1.scala +++ b/src/main/scala/devices/xilinxvc707pciex1/XilinxVC707PCIeX1.scala @@ -20,9 +20,9 @@ class XilinxVC707PCIeX1IO extends Bundle with VC707AXIToPCIeX1IOSerial } 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) @@ -33,22 +33,23 @@ class XilinxVC707PCIeX1(implicit p: Parameters) extends LazyModule { 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