Forum Discussion
Hi Runlong,
- It suggests me to copy the executable file to the runtime system, and run the executable file.
The "runtime system" referring to the computer that the FPGA Card is connected to, either through PCI-E or USB. We mention copying here because it is common to use different machine to compile and run the executable.
- does it mean I need to run './vector-add-usm.fpga' on my x86 machine as host, and the FPGA will be programmed automatically?
Yes. Assuming you have the FPGA card connected and initialized, and proper driver and BSP/ASP installed. If not, I am linking some resources for how to do that:
- You need to install the oneapi base toolkit and the oneapi fpga support package. You also need to have Quartus installed.
- You need to install the Accelerator Support Package (ASP) for your specific board. You can usually get the ASP from your board vendor, or it can be generated by following this guide: https://ofs.github.io/ofs-2024.2-1/hw/common/user_guides/oneapi_asp/ug_oneapi_asp/
- You need to initialize your board: https://www.intel.com/content/www/us/en/docs/oneapi-fpga-add-on/developer-guide/2024-2/managing-an-fpga-board.html
Once the above is settled up, you can then run the executable such as "vector-add-buffers.fpga" same why you run any binary executable.
The step to generate BSP/ASP can be a bit involved, let me know if you need more help wit it.
Thanks,
-Kevin
Hi Kevin Xu,
By mentioning "You can usually get the ASP from your board vendor, or it can be generated by following this guide", does it mean I can skip generating BSP/ASP myself if I am able to get those support packages from, as you suggested, the board vendor?
Now the guidance on ofs.github.io seems pretty scary to me. I spent two days without figuring out where should I start with. Each step seems to have a bunch of prerequisits and assumptions. I think those steps might be too much before I can run a simple line of 'helloWorld' and become the first-day learner of oneAPI.
If I can somehow get the well-crafted BSP/ASP, does it mean I can start with something like 'aocl install <BSP_root_folder>'? That will make my life much easier. Thanks!
Best,
Runlong
- Kevin_Xu_Intel2 years ago
New Contributor
Hi Runlong,
I can work on getting a BSP/ASP for the I-serial Devkit. But i want to mention:
- It's not going to work with the ARM host you mentioned, only with an x86 host.
- Even if we can generate a BSP/ASP that supports ARM core, the oneAPI runtime still won't work on ARM.
- If running with ARM is a hard requirement, the only way I can think of is to export your oneAPI design as an RTL IP, and connect it to the HPS ARM core in Quartus Platform Designer.
Thanks,
-Kevin
- uniqueMR2 years ago
New Contributor
Hi Kevin,
Thank you so much for your time and effort. Yes, using ARM host is NOT a strong requirements for me at this point. I mentioned the ARM core just because I related it to my other project experience in the past. In the end, I will follow what oneAPI workflow expects me to do. I really appreciate that you can help me with BSP/ASP for I-series Devkit.
Thanks,
Runlong
- Kevin_Xu_Intel2 years ago
New Contributor
Hi Runlong,
I was unable to local a pre-build BSP/ASP for the I-Series devkit. The best I can find is a pre build FIM for this devkit:
Go to https://github.com/OFS/ofs-agx7-pcie-attach/releases/tag/ofs-2024.1-1, and download iseries-1x400-images_ofs-2024-1-1.tar.gz
This FIM should allows you to skip section 2.2 entirely, and it is the most time consuming steps in the process of creating BSP/ASP.
Let me know if you need any help generating BSP/ASP.
Thanks,
-Kevin