Build Instructions - XAPP1394

Temperature Dependent Dynamic Voltage Scaling Implementation (XAPP1394)

Document ID
XAPP1394
Release Date
2025-10-24
Revision
1.3 English
For demonstration purposes, the following is a list of the VCK190 build steps to validate the temperature DVS functionality along with the CDO sources required and a sample PDI file with these CDOs.
  1. Create a PetaLinux project with the 2022.2 release BSP.
  2. Use the default BIF file from the PetaLinux project. This file can be referenced from the following location: /hardware/xilinx-vck190-2022.2/xilinx-vck190-2022.2.runs/impl_1/project_1_wrapper.bif.
  3. Copy all the required CDO, RCDO, RNPI, and ELF files referenced in the above BIF file from different locations within the PetaLinux project folder.
  4. Modify the BIF file to reference the following CDO files (a sample BIF file is provided in the reference design file accompanying this application note):
    partition 
    {
    id = 0x09
    type = pmcdata, load = 0xf2000000
    file = gen_files/pmc_data.cdo
    //
    // Add the following CDO files
    //
    file = gen_files/board_cdo.src
    file = gen_files/temp_DVS_cdo.src
  5. Generate the PDI file after including the above modified CDO files in the BIF file using the Bootgen utility. Board CDO and Temp_DVS CDO should appear after pmc_data.cdo in the BIF file mentioned below.

    bootgen -arch versal -padimageheader=0 -log trace -w -o BOOT.BIN -image boot.bif
Note: In the 2024.2 release, the DVS feature is not part of the default PLM binary. To include this feature, the PLM binary must be built with the VERSAL_DVS compile macro. For example, the following XSCT commands can be used to build a PLM binary with DVS support:
setws <path to workspace>
repo -set <path to embeddedsw source code>
set xsa <path to XSA file>

app create -name plm -hw $xsa -os standalone -proc psv_pmc_0 -template {versal PLM} -lang C
bsp config -append extra_compiler_flags -DVERSAL_DVS
app build -name plm