Running XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Overview)

Introduction

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.

Caution

__ The Debian Package presented in this article is not official by Xilinx. __

What is XRT

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

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.

reference

[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

Running XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Overview)
Running XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Practice)
Run XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Installation)
Run XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Build)
Run XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Build) [Unfinished]
Run XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Installation) [Unfinished]
Run XRT (Xilinx Runtime) on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Vitis edition)
Running X Window on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Overview)
Running X Window on Debian GNU / Linux for Ultra96 / Ultra96-V2 (fbdev)
Run Lima Driver on Debian GNU / Linux for Ultra96 / Ultra96-V2
Run X Window on Debian GNU / Linux for Ultra96 / Ultra96-V2 (LibMali)
Run X Window on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Video Driver)
Run X Window on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Gnome Desktop)
Run X Window on Debian GNU / Linux for Ultra96 / Ultra96-V2 (Mali Driver)
Debian GNU / Linux (v2019.2 version) boot image provided for UltraZed / Ultra96 / Ultra96-V2
Run bootgen on Debian GNU / Linux, Ubuntu
Linux on Windows -1-: debian introduction