Custom Versal DFX Platform Creation Tutorial - 2024.1 English

Vitis Tutorials: Platform Creation (XD101)

Document ID
Release Date
2024.1 English

Version: 2024.1

In this module, you will create a custom Dynamic Function eXchange (DFX) platform to run acceleration applications for VCK190 evaluation board. Platforms that support DFX features allows you to reload acceleration kernels during runtime.

You can define one reconfigurable partition (RP) region and create multiple reconfigurable modules (RM). The RP defines the boundary between reconfigurable region and static region. The RM defines the content to be reconfigured each time. The RP can include Programmable Logic and AI Engine resources. You can reconfigure the RM (rm1.xclbin, rm2.xclbin, etc.) during runtime with XRT. The AI Engine needs to be fully reconfigured or not at all. Multi-partition AI Engine and PL DFX is not supported in this version.


This tutorial assumes that you understand the basics of the AMD Versal™ Custom Platform creation steps, for example, creating AMD Vivado™ designs from Vivado Customizable Example Design template, setting up software components with common images or PetaLinux, creating AMD Vitis™ platforms, and creating basic acceleration applications for platform validation. This tutorial will focus on the differences between the DFX platforms and the normal flat platforms.

In a general Vitis acceleration platform design, you start from building a base bootable design, then add platform required components and properties to it. You must validate each step before going to the next step to prevent error propagating. This workflow is described in the following diagram.

Step 0: Base Bootable DesignStep 1: Update Hardware PlatformStep 2: Update Software DesignStep 3: Create Vitis Platform Step 4: Test Vitis PlatformTestTestTest

In this tutorial, you will use the Vivado Versal DFX customizable example design to create the hardware design.

To prepare the software components, use the common image released by AMD and the createdts command to generate the device tree file.

After the software and hardware components are ready, you can package the platform.

In each step, test the generated files to make sure they work as expected. A frequent test methodology can help to narrow down the root causes if any error occurs. Finally, run several test applications on this platform to test this customized platform.

Navigate through this tutorial using the following table of contents links.

  • Step 1: Hardware Settings for Vitis Platform

  • Step 2: Create the Software Components and Generate Platform

  • Step 3: Test the Platform

  • Iteration Guidelines

  • Frequently Asked Questions