Programmable Device Image - 2023.2 English

Versal Adaptive SoC System Software Developers Guide (UG1304)

Document ID
Release Date
2023.2 English

The boot image for Versal devices is called a PDI, which is an AMD file format processed by the PLM as part of the boot process or partial configuration process. The PDI data is specific to the design requirements. The boot image for Versal devices typically involves binaries used to boot and configure the platform, these binaries can include: bootloader, firmware, hardware configuration data, OS and user applications. Examples include adaptable engine (PL) configuration file, PLM image, TF-A, U-Boot, Linux kernels, rootfs, device tree, and standalone or RTOS applications.

A PDI file is a collection of images, where an image consists of one or more partitions. A partition can include:

  • CDO files consisting of a list of commands executed in sequence
  • Loadable data ( for example, APU/RPU ELFs or data)

There can be different PDI files based on the use case.

PDI for Start-up
Occurs during the power-on reset (POR) and SRST. This PDI contains the following information needed to boot, configure, and manage a Versal device:
  • A boot header
  • A PLM subsystem
  • Additional subsystem images and image partitions which are used to configure a specific subsystem or engine. These can also include necessary CDO. Some of these images can also be part of another PDI that is targeted for secondary boot.
PDI for Subsystem Restart or DFX
Occurs in some power management, warm restart, PL reconfiguration, and DFX scenarios.

This type of PDI contains the images or partitions needed to reconfigure parts or subsystems of the Versal device, and does not contain the boot header, PLM, and the PMC.CDO.

Note: The RCU executes the BootROM that loads the PLM into the PPU RAM. The BootROM then releases the PPU from reset and executes the PLM.