• DocumentCode
    676333
  • Title

    System-level FPGA device driver with high-level synthesis support

  • Author

    Vipin, Kizheppatt ; Shreejith, Shanker ; Gunasekera, Dulitha ; Fahmy, Suhaib A. ; Kapre, Nachiket

  • Author_Institution
    Sch. of Comput. Eng., Nanyang Technol. Univ., Singapore, Singapore
  • fYear
    2013
  • fDate
    9-11 Dec. 2013
  • Firstpage
    128
  • Lastpage
    135
  • Abstract
    We can exploit the standardization of communication abstractions provided by modern high-level synthesis tools like Vivado HLS, Bluespec and SCORE to provide stable system interfaces between the host and PCIe-based FPGA accelerator platforms. At a high level, our FPGA driver attempts to provide CUDA-like driver behavior, and more, to FPGA programmers. On the FPGA fabric, we develop an AXI-compliant, lightweight interface switch coupled to multiple physical interfaces (PCIe, Ethernet, DRAM) to provide programmable, portable routing capability between the host and user logic on the FPGA. On the host, we adapt the RIFFA 1.0 driver to provide enhanced communication APIs along with bitstream configuration capability allowing low-latency, high-throughput communication and safe, reliable programming of user logic on the FPGA. Our driver only consumes 21% BRAMs and 14% logic overhead on a Xilinx ML605 platform or 9% BRAMs and 8% logic overhead on a Xilinx V707 board. We are able to sustain DMA transfer throughput (to DRAM) of 1.47GB/s (74% peak) of the PCIe (x4 Gen2) bandwidth, 120.2MB/s (96%) of the Ethernet (1G) bandwidth and 5.93GB/s (92.5%) of DRAM bandwidth.
  • Keywords
    DRAM chips; device drivers; field programmable gate arrays; high level synthesis; local area networks; network routing; parallel architectures; API; AXI-compliant; BRAM; Bluespec; CUDA-like driver behavior; DRAM; Ethernet; PCIe-based FPGA; RIFFA 1.0 driver; SCORE; Vivado HLS; Xilinx ML605 platform; communication abstractions; high-level synthesis support; lightweight interface switch; multiple physical interfaces; portable routing capability; standardization; system-level FPGA device driver; Field programmable gate arrays; Graphics processing units; Hardware; Kernel; Random access memory; Switches;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Field-Programmable Technology (FPT), 2013 International Conference on
  • Conference_Location
    Kyoto
  • Print_ISBN
    978-1-4799-2199-7
  • Type

    conf

  • DOI
    10.1109/FPT.2013.6718342
  • Filename
    6718342