QEMU is a fast functional and instruction accurate emulator that can be installed on Linux hosts. The AMD QEMU features a large number of the same peripheral models as AMD silicon and can even inject real data from the host into emulation (for example, Ethernet, UART, storage, CAN-FD, etc.) to stimulate your applications. AMD has provided QEMU as a development platform for many generations including Versal devices, Zynq UltraScale+ MPSoC, Zynq 7000, and MicroBlaze processors.
The AMD QEMU is already integrated in Vitis tools, PetaLinux, and Yocto in every AMD release. For the most up to date development branch, you can download AMD QEMU, build and install from source.
To use this emulation platform you must be familiar with:
- Device architecture
- GNU debugger (GDB) for remote debugging
- Generation of guest software applications using Yocto, AMD PetaLinux and Vitis tools
- Linux device trees
This document focuses on the list of features supported for the emulation of Versal devices in AMD QEMU. The purpose of this section is to familiarize software application developers, system software developers, system hardware designers, and validation/verification designers with the basic information to use and debug software with QEMU.
Using the QEMU
For more information on using the QEMU, see the Xilinx Quick Emulator User Guide: QEMU .