RidgeRun's V4L2 interface for PCIe connected FPGAs : FPGA V4L2 PCIe Driver
Updated: Sep 9, 2020
HW acceleration is an essential component of modern embedded systems. With ever increasing real-time demands and low power requirements, long are the days where single CPUs systems could fulfill today's market expectations. Among available accelerators, FPGAs typically excel in flexibility and performance, at the cost of integration complexities. It's common to see every FPGA integrated differently in every product, with different interfaces and home-made APIs. Despite this, one common remark that can be observed is that they are typically connected via high bandwidth PCIe.
RidgeRun is developing a single, standard V4L2 interface for PCIe connected FPGAs for a variety of vendors and models. No matter your HW setup, the FPGA is exposed as a combination of camera and display devices. This allows out-of-the-box usage with OpenCV, GStreamer, Libav, browsers and any other standard software that communicates via V4L2 calls.
This V4L2-FPGA driver act as an alternative to solve FPGA-SoC communication in a more standard way, without sacrificing communication performance and make you able to concentrate in the FPGA hardware description. V4L2-FPGA driver allows communicating with an external FPGA using the V4L2 API.
Figure 1. Software stack description using V4L2 FPGA.
This project consists of three subsystems which allow for the acceleration of algorithms on custom hardware as shown in the following image:
Figure 2: V4L2 Data Flow
Current on-going development is targeted for the PicoEVB Xilinx module on the NVIDIA Xavier. Contact us if you are interested in sponsoring the port to your hardware configuration.
More details in our developer wiki here.
Purchase directly from our online store here.
You can also send an email to firstname.lastname@example.org for technical support, more information about the features, evaluation version (if available) or for more details about how to sponsor a new feature.