SC22 Proceedings

The International Conference for High Performance Computing, Networking, Storage, and Analysis

Workshops Archive

Enabling VirtIO Driver Support on FPGAs


Workshop: Eighth International Workshop on Heterogeneous High-Performance Reconfigurable Computing (H2RC 2022)

Authors: Sahan Bandara (Boston University), Ahmed Sanaullah (Red Hat Inc), Zaid Tahir (Boston University), Ulrich Drepper (Red Hat Inc), and Martin C. Herbordt (Boston University)


Abstract: Host-FPGA connectivity is critical for enabling a vast number of FPGA use-cases. This interface must be reliable, robust, and uniform, while supporting necessary protocols and functionality. Existing support for host-FPGA connectivity has a number of drawbacks, including a lack of portability and poor upstream support. Native VirtIO drivers in the host OS can help address these limitations, but implementing device-side support for VirtIO is challenging due to the hardware complexity involved.

We present a framework for enabling FPGAs to interface native operating system VirtIO drivers on the host. To reduce the implementation overhead and improve portability, this framework uses both generic RTL blocks and modified, chip/device specific PCIe IP blocks. We test the framework using Xilinx IP, implemented on an Alinx board, and a host machine running Fedora. Our results show that the FPGA can be successfully enumerated as a VirtIO device, and interfaced using only native Linux VirtIO drivers.





Back to Eighth International Workshop on Heterogeneous High-Performance Reconfigurable Computing (H2RC 2022) Archive Listing



Back to Full Workshop Archive Listing