DOI QR코드

DOI QR Code

Implementation and Performance Evaluation of PCI express on Xilinx FPGA

Xilinx FPGA용 PCI express 구현 및 성능 분석

  • Lee, Jin (Department of Information and Communication, Pyeongtaek University)
  • Received : 2018.11.12
  • Accepted : 2018.11.20
  • Published : 2018.12.31

Abstract

Recently, speeding up real time calculation using the specialized hardware accelerator is often used in the various engineering and science area, and the accelerators are required to include PCI express interconnection between FPGA and a host computer. The implementation of the high speed PCIe for the multi-giga bytes per second transmission is one of the most difficult issue in the development of the accelerators. There are several commercialized IP solutions and research results in the literature, but these solutions are required extra cost and design period to analyze the detailed implementation method. For the hardware accelerator on Xilinx FPGA, utilizing Xilinx's XDMA PCIe IP, which is provided without extra charge, can be the best solution in terms of the development period and cost. Consequently, this paper presents the evaluation system on Zynq-7000 FPGA and Windows 10 host computer, and analyze the performance of the PCIe IP with various configuration parameters.

하드웨어 가속기를 사용하여 다양한 실시간 계산을 하는 여러 공학/과학 분야에서 많은 경우에 FPGA와 호스트 컴퓨터를 PCI express(PCIe)로 연결하는 시스템 구성이 요구된다. 하지만, 초당 수 기가바이트의 데이터를 주고 받는 고속 인터페이스인 PCIe의 구현은 하드웨어 가속기 개발의 가장 큰 어려움 중에 하나이다. 상용 제품과 논문을 통해서 여러 PCIe IP 솔루션을 찾을 수 있지만, 고가의 비용을 지불해서 구매하거나, 별도의 시간과 노력을 투자해서 PCIe를 구현해야 한다. 따라서, Xilinx사의 FPGA를 기반의 하드웨어 가속기를 구현할 때는 Xilinx사에서 무료로 제공 하는 XDMA PCIe IP를 사용하는 것이 개발 기간 및 비용 단축을 위한 최선의 선택이 될 수 있다. 이러한 이유로 본 논문에서는 Xilinx사의 PCIe IP의 성능 평가를 위해 Zynq-7000 FPGA개발보드와 Windows 10 호스트 컴퓨터로 평가 시스템을 구성하고, PCIe IP의 구성 파라미터에 의한 전송 속도 성능 변화에 대해 평가 분석한다.

Keywords

HOJBC0_2018_v22n12_1667_f0001.png 이미지

Fig. 1 The layers of PCI Express architecture.

HOJBC0_2018_v22n12_1667_f0002.png 이미지

Fig. 2 Transaction layer packet (TLP).

HOJBC0_2018_v22n12_1667_f0003.png 이미지

Fig. 3 Topology of PCI Express system[12].

HOJBC0_2018_v22n12_1667_f0004.png 이미지

Fig. 4 Basic options for Xilinx XDMA IP.

HOJBC0_2018_v22n12_1667_f0005.png 이미지

Fig. 5 Xilinx ZC706 EVM board [11].

HOJBC0_2018_v22n12_1667_f0006.png 이미지

Fig. 6 Block diagram of XDMA evaluation system

HOJBC0_2018_v22n12_1667_f0007.png 이미지

Fig. 7 PCIe throughput vs. internal memory size.

HOJBC0_2018_v22n12_1667_f0008.png 이미지

Fig. 8 Write throughputs with different AXI options

HOJBC0_2018_v22n12_1667_f0009.png 이미지

Fig. 10 Write throughputs with different memory widths

HOJBC0_2018_v22n12_1667_f0010.png 이미지

Fig. 9 Read throughputs with different AXI options

HOJBC0_2018_v22n12_1667_f0011.png 이미지

Fig. 11 Read throughputs with different memory widths

Table. 1 FPGA PCIe framework comparison.

HOJBC0_2018_v22n12_1667_t0001.png 이미지

Table. 2 PCIe solution portfolio in Xilinx FPGA.

HOJBC0_2018_v22n12_1667_t0002.png 이미지

Table. 3 Performance with different memory widths

HOJBC0_2018_v22n12_1667_t0003.png 이미지

References

  1. L. Rota, M. Vogelgesang, L. E. Ardila Perez, M. Caselle, S. Chilingaryan, T. Dritschler, N. Zilio, A. Kopmann, M. Balzer, and M. Weber, "A High-throughput Readout Architecture based on PCI-Express Gen3 and DirectGMA Technology," Journal of Instrumentation, vol. 11, pp. 1-9, Feb. 2016.
  2. H. Kavianipour, S. Muschter, and C. Bohm, "High Performance FPGA-Based DMA Interface for PCIe," IEEE Transactions on Nuclear Science, vol. 61, no. 2, pp. 745-749, Apr. 2014. https://doi.org/10.1109/TNS.2014.2304691
  3. M. Vesper, D. Koch, K. Vipin, and S. A. Fahmy, "JetStream: An Open-Source High-Performance PCI Express 3 Streaming Library for FPGA-to-Host and FPGA-to-FPGA Communication," in Proceedings of the 26th International Conference on Field Programmable Logic and Applications, Lausanne, Switzerland, pp. 1-9, Aug. 2016.
  4. J. Gong, T. Wang, J. Chen, H. Wu, F. Ye, S. Lu, and J. Cong, "An Efficient and Flexible Host-FPGA PCIe Communication Library," in Proceedings of the 24th International Conference on Field Programmable Logic and Applications, Munich, Germany, pp. 1-6, Sep. 2014.
  5. L. Rota, M. Caselle, S. Chilingaryan, A. Kopmann, and M. Weber, "A PCIe DMA Architecture for Multi-Gigabyte Per Second Data Transmission," IEEE Transactions on Nuclear Science, vol. 62, no. 3, pp. 972-976, Jun. 2015. https://doi.org/10.1109/TNS.2015.2426877
  6. N. Zilberman, Y. Audzevich, G. A. Covington, and A. W. Moore, "NetFPGA SUME: Toward 100Gbps as Research Commodity," IEEE Micro, vol. 34, issue. 5, pp. 32-41, Jul. 2014. https://doi.org/10.1109/MM.2014.61
  7. A. Byszuk, J. Kolodziejski, G. Kasprowicz, K. Pozniak, W. M. Zabolotny, "Implementation of PCI Express Bus Communication for FPGA-based Data Acquisition System," in Proceedings of Photonics Applications in Astronomy, Communications, Industry, and High-Energy Physics Experiments 2012, vol. 8454, pp. 1-6, Oct. 2016.
  8. S. M. Ryu, "Development of FPGA-based Meteorological Information Data Receiver Circuit for Low-Cost Meteorological Information Receiver System for COMS," Journal of the Korea Institute of Information and Communication Engineering, vol. 19, no. 10, pp. 2373-2379, Oct. 2015. https://doi.org/10.6109/JKIICE.2015.19.10.2373
  9. J. S. Kang, and M. S. Kang, "FPGA Implementation of ARIA Crypto-processor Based on Advanced Key Scheduling," Journal of Security Engineering, vol. 13, no. 6, pp. 439-450, Dec. 2016. https://doi.org/10.14257/jse.2016.12.05
  10. Xilinx. DMA/Bridge Subsystem for PCI Express v4.0 Product Guide [Internet]. Available: https://www.xilinx.com/support/documentation/ip_documentation/xdma/v4_0/pg195-pcie-dma.pdf.
  11. Xilinx. ZC706 Evaluation Board for the Zynq-7000 XC7Z045 SoC User Guide [Internet]. Available: https://www.xilinx.com/support/documentation/boards_and_kits/zc706/ug954-zc706-eval-board-xc7z045-ap-soc.pdf.
  12. PCI-SIG, PCI Express Base Specification, Revision 3.0, PCI-SIG Std., 2010.
  13. J. Lawley, "Understanding Performance of PCI Express Systems," Xilinx: Whte Paper WP350, Oct. 2014.

Cited by

  1. Implementation of High Speed Image Data Transfer using XDMA vol.25, pp.7, 2018, https://doi.org/10.9708/jksci.2020.25.07.001
  2. 선박안전 운항을 위한 이진 분할 알고리즘 기반 해상 객체 검출 하드웨어 가속기 설계 및 구현 vol.24, pp.10, 2018, https://doi.org/10.6109/jkiice.2020.24.10.1331