Creating an Initialization PDI (for Versal Devices) - 2025.2 English - UG908

Vivado Design Suite User Guide: Programming and Debugging (UG908)

Document ID
UG908
Release Date
2025-11-20
Version
2025.2 English
AMD Versal™ devices require a user supplied device image that boots the device during the configuration memory programming process. This can be the design PDI. But in some cases, such as when a different controller option is desired, a different PDI is used for this initial boot process.
  1. Create a new AMD Vivado™ project targeting the desired Versal device to be used during memory device configuration.
  2. Once the project is created, create a new block design by clicking IP INTEGRATOR → Create Block Design.
  3. Click + icon to add a new IP to the IP Integrator Canvas and search for the Control, Interfaces & Processing System. Add an instance of the Control, Interfaces & Processing System IP to the IP Integrator canvas.
  4. Double click the Control, Interfaces & Processing System IP to configure options in the PS PMC. At this point, configure the desired controller options used in the Initialization PDI. For example, to use QSPI x4 during configuration memory device programming, set the following.
    Note: The options set in the Initialization PDI are used only during the configuration memory device programming steps. Do not carry over to the design programmed into the configuration memory device.
  5. After configuration is complete in the Control, Interfaces & Processing System IP, run block design validation and save the block design. Return to the Project Navigator by clicking PROJECT MANAGER in the Flow Navigator. Right-click on the newly created block design in the sources pane. Select Create HDL Wrapper and select Let Vivado Manage wrapper and auto-update.
  6. In the Flow Navigator, select PROGRAM AND DEBUG → Generate Device Image to create the PDI.
    Note: The PDI created during this step is the Initialization PDI to be used during the configuration memory programming process.
  7. The Initialization PDI has been created and must be saved for use during the configuration memory programming process later in this guide.