Feasibility of developement of a general OPAE like framework
- 2 years ago
Hi Pulak ,
Welcome to our Intel forums and apologies in the delay of replying to your query.
On your question whether is it feasible or not to do a generic open source driver framework for generic vendors (AMD/Xilinx / Lattice etc..), generally it is possible to do something like what Intel OPAE has but we don't recommend it as it might cause other issues as different FPGA (or vendors) in this case has their own customization/configuration or special handling needs to take care of.
Your generic driver must be robust enough to handle different types of vendor drivers and different set of commands and reinterpret it into same generic command for user to use. You might also need to factor in handling those user custom board FPGA using vendor FPGA chipset.
In my opinion , even for Intel alone, the OPAE SDK does do some device detection to detect which intel FPGA family/model is installed on the system and and handles it differently when executing certain commands.
*taken from opae.github.io , high level overview whereby basically you will need to handle different drivers in your framework
I think you meant this repository where they modify the OPAE to support Xilinx
https://github.com/RSPwFPGAs/opae-xilinx
basically it could work on basic functionality but certain specialize functionality will not be available as the OPAE is not configured for Xilinx.
All in all, it is a possible project to make a generic framework for FPGA, but there will be alot of work under the hood just to handle different types of vendors and FPGA types(+support their own functionalities, configurations)
as a side note: Intel FPGA SDK for opencl is being discontinued and moving towards Intel OneAPI (https://www.intel.com/content/www/us/en/docs/programmable/683846/22-4/eol.html)
Thanks
Regards
Kian