Advertisement

Springer Nature is making SARS-CoV-2 and COVID-19 research free. View research | View latest news | Sign up for updates

VerCoLib: Fast and Versatile Communication for FPGAs via PCI Express

Abstract

PCI Express plays a vital role in including FPGA accelerators into high-performance computing systems. This also includes direct communication between multiple FPGAs, without any involvement of the main memory of the host. We present a highly configurable hardware interface that supports DMA-based connections to a host system as well as direct communication between multiple FPGAs. Our implementation offers unidirectional channels to connect FPGAs, allowing for precise adaptation to all kinds of use cases. Multiple channels to the same endpoint can be used to realise independent data transmissions. While the main focus of this work is flexibility, we are able to show maximum throughput for connections between two FPGAs and up to 92% of the available bandwidth for connections between the FPGA and the host system.

This is a preview of subscription content, log in to check access.

Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13

Notes

  1. 1.

    https://github.com/TI-Bonn/vercolib_pcie

References

  1. 1.

    ARM Ltd. (2010). AMBA AXI4-stream protocol specification v1.0. http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ihi0051a/index.html.

  2. 2.

    Billauer, E. Xillybus. http://xillybus.com.

  3. 3.

    De la Chevallerie, D., Korinth, J., Koch, A. (2016). fflink: A lightweight high-performance open-source pci express gen3 interface for reconfigurable accelerators. SIGARCH Comput. Archit. News, 43(4), 34–39. https://doi.org/10.1145/2927964.2927971.

  4. 4.

    Gong, J., Wang, T., Chen, J., Wu, H., Ye, F., Lu, S., Cong, J. (2014). An efficient and flexible host-fpga pcie communication library. In: 2014 24th international conference on field programmable logic and applications (FPL), pp. 1–6. https://doi.org/10.1109/FPL.2014.6927459.

  5. 5.

    Jacobsen, M., Richmond, D., Hogains, M., Kastner, R. (2015). Riffa 2.1: A reusable integration framework for fpga accelerators. ACM Trans. Reconfigurable Technol. Syst., 8(4), 22:1–22:23. https://doi.org/10.1145/2815631.

  6. 6.

    Northwest Logic. (2017). PCI express solution. http://nwlogic.com/products/pci-express-solution/.

  7. 7.

    PCI-SIG. (2009). PCI express base specification revision 2.1.

  8. 8.

    Simonyan, K., & Zisserman, A. (2014). Very deep convolutional networks for large-scale image recognition. arXiv:1409.1556.

  9. 9.

    Vesper, M., Koch, D., Vipin, K., Fahmy, S.A. (2016). Jetstream: An open-source high-performance pci express 3 streaming library for fpga-to-host and fpga-to-fpga communication. In: 2016 26th international conference on field programmable logic and applications (FPL), pp. 1–9. https://doi.org/10.1109/FPL.2016.7577334.

  10. 10.

    Vipin, K., & Fahmy, S.A. (2014). Dyract: A partial reconfiguration enabled accelerator and test platform. In: 2014 24th international conference on field programmable logic and applications (FPL), pp. 1–7. https://doi.org/10.1109/FPL.2014.6927507.

  11. 11.

    Xilinx Inc. (2016). 7 Series FPGAs integrated block for PCI Express v2.2 product guide for Vivado design suite.

Download references

Author information

Correspondence to Oğuzhan Sezenlik.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Oğuzhan Sezenlik and Sebastian Schüller contributed equally to this work.

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Sezenlik, O., Schüller, S. & Anlauf, J.K. VerCoLib: Fast and Versatile Communication for FPGAs via PCI Express. J Sign Process Syst (2019). https://doi.org/10.1007/s11265-019-01465-6

Download citation

Keywords

  • VerCoLib
  • FPGA
  • PCI Express
  • Transceiver