Vitis Export to Vivado Flow - Vitis Export to Vivado Flow - 2026.1 English - UG1701

Embedded Design Development Using Vitis User Guide (UG1701)

Document ID
UG1701
Release Date
2026-06-23
Version
2026.1 English

In certain situations, exporting Vitis content to a Vivado project offers advantages. The Vitis export to Vivado flow uses a Vitis linker-generated metadata archive (VMA), which Vivado imports to update the original block design with Vitis content. This flow gives you fine-grained control over synthesis and implementation within the Vivado design project. The following figure shows a simplified overview of the flow.

Figure 1. Vitis Export to Vivado Flow

The Vitis export to Vivado flow mirrors the Vitis Integrated Flow up to the Vitis linking step, except that the software application is created after the Vitis package step.

In this flow, Vivado performs design synthesis and implementation. The Vitis linking step assembles the Vitis components using pre-synthesis and generates the VMA. Vivado then imports the VMA into the original project to complete implementation. For details, see Vitis Export to Vivado Flow Detailed Example.

Embedded software development begins after Vivado implementation completes. In the figure, a full custom machine configuration is built from the system device tree extracted from the implemented fixed hardware design, combined with the domain, memory, and custom device tree descriptions. The machine configuration builds the OS and boot artifacts and prepares an SDK for host application development. The Vitis package step prepares boot artifacts and PL and AIE binaries with their corresponding overlays. Preparing SD card or flash images and the Deploying and Running the System step remain similar to the Vitis flow.

Key Features of the Vitis Export to Vivado Flow

  • Modular heterogeneous subsystems: integrates PL kernels and AIE graphs into the hardware design.
  • Implementation and timing control: provides detailed implementation and timing control in Vivado.
  • Integrated software development environment: supports complete software development, verification, and debug.
  • Deliverable package customization: simplifies package creation with the Vitis packager, or supports advanced configuration with Bootgen.

While this flow gives you more control over the design process, it requires a deeper understanding of design management, especially the dependencies between the extensible platform, the Vitis domain, and the Vivado implementation.