The author provides Debian GNU / Linux for Ultra96 / Ultra96-V2 (ZynqMP) 1. In addition, XRT (Xilinx Runtime) is an environment for running programs developed in the development environment (Vitis) provided by Xilinx on the platform 2.
Originally, XRT for MPSoC Edge Device works only in the Linux environment (Petalinux) provided by Xilinx, but the procedure for running XRT on Debian GNU / Linux for Ultra96 / Ultra96-V2 is included in some parts. I will explain them separately.
This article describes the elements required to run XRT on Debian GNU / Linux for Ultra96 / Ultra96-V2.
__ The Debian Package presented in this article is not official by Xilinx. __
XRT (Xilinx Runtime) is an environment for running programs developed in the development environment (Vitis) provided by Xilinx on the platform 2. The source code of XRT is available on github.
XRT is implemented as a combination of userspace and kernel driver components. The figure below shows the XRT software stack (quoted from the github repository above).
Fig.1 XRT Software Stack
ZynqMP-FPGA-Linux
I have built and provided Debian GNU / Linux on github as an UltraZed / Ultra96 / Ultra96-V2 platform.
Originally, Xilinx provided the PetaLinux tool as a tool for building a Linux environment with Zynq and ZynqMP. At first, I was planning to build a Linux environment using PetaLinux, but there were two things that weren't cool.
The first is that I couldn't build normally in my environment (Windows7 + VMware + Ubuntu 16.04LTS). For some reason (usually FSBL or PMUFW) the Vivado SDK crashes with a nullpo and fails. It's annoying that it succeeds about once in 10 times, so I can manage to build it by executing the same command many times, but it takes time and it is not good for mental hygiene.
Second, I'm not sure about the PetaLinux configuration. PetaLinux is based on Yocto and builds a centralized management of Boot Loader, Linux Kernel, Root File System, and Tool Chain. That would be useful, but for example, if you want to make a small change to the device tree, compile with a slight change in the Linux Kernel configuration, or have the tool installed in the root, etc., go through the cycle of change> build> experiment. It took too long to do, and there was a problem that I didn't know which setting to change.
In the end, I decided that it would be easier to build the Boot Loader, Linux Kernel, and Root File System separately without using PetaLinux. Thanks to that, I was able to freely change the configuration of Boot Loader (mainly U-Boot) and Linux Kernel, use Debian that I often use for the Root File System, and build it quite freely. It was.
ZynqMP-FPGA-XRT
Building XRT for ZynqMP-FPGA-Linux is a bit tedious and time consuming. Therefore, a Debian package of XRT (Xilinx Runtime) for ZynqMP-FPGA-Linux is available on github. If you have trouble building, please use this.
https://github.com/ikwzm/ZynqMP-FPGA-XRT
[Overview]: https://qiita.com/ikwzm/items/0d3a8adfe725cd17f932 "" Running XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Overview) "@Qiita" [Build]: https://qiita.com/ikwzm/items/d8013ea91125a3fc46aa "Running XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Build)" @Qiita " [Installation]: https://qiita.com/ikwzm/items/6612eacc4a0d324a0a68 "" Running XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Installation) "@Qiita" [Practice]: https://qiita.com/ikwzm/items/58cfea3f9d0f42840511 "" Running XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Practice) "@Qiita" [Vitis Edition]: https://qiita.com/ikwzm/items/e70d8d0e44fe3784a708 "" Running XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Vitis Edition) "@Qiita" ["Debian GNU / Linux (v2019.2 version) boot image for UltraZed / Ultra96 / Ultra96-V2" @Qiita]: https://qiita.com/ikwzm/items/92221c5ea6abbd5e991c "" UltraZed / Ultra96 / Ultra96- Debian GNU / Linux for V2 (v2019.2 version) Providing boot image "@Qiita"
Recommended Posts