System Project Configuration Files - 2024.1 English

Vitis Unified Software Platform Documentation: Application Acceleration Development (UG1393)

Document ID
UG1393
Release Date
2024-07-03
Version
2024.1 English

There are two types of configuration files for a Vitis system project:

CMake Files

There are two CMake files: CMakefileList.txt and UserConfig.cmake.

The parameters defined in CmakeList.txt are translated to configuration settings to the compilers by CMake, a commonly used build utility. The UserConfig.cmake is included by the CMakeList.txt file. It provides the user interface to modify the configurations for compilers, and supports both GUI mode and text editor mode.
Note: Users are advised against direct modification of the CMakeList.txt. Instead, it is recommended for users to adjust compiler settings within the UserConfig.cmake file.

Configuration Files

The new Vitis Unified IDE provides a Config File editor with GUI rendering for option selection with example syntax. The default view is GUI rendering, but you can view the text form of the config file by clicking the </> button to switch to the code view. The code view can be used for manual entry of configuration commands, which can be necessary in some circumstances. There are four configuration files used in the system:

AI Engine Configuration (aiecompiler.cfg)
This is the configuration file for the AI Engine component for compilation and simulation of the component. The aiecompiler.cfg file is used by the v++ -c --mode aie command, in addition to the x86simulator and aiesimulator commands.
HLS Configuration (hls_config.cfg)
This is the configuration file for the HLS component to drive synthesis of the C/C++ code into an RTL module. It can be used to define properties of the design for synthesis, simulation, co-simulation, and implementation. The hls_config.cfg file is used by the v++ -c --mode hls command in addition to the vitis-run command.
Hardware Link Configuration (hw_link/binary_containers_1-link.cfg)
This is a configuration file for the System project and defines build instructions for linking the system of components with the platform. The hw_link/binary_containers_1-link.cfg configuration file is used by the v++ --link command.
Package Configuration (package/package.cfg)
This is another configuration file for the System project and defines packaging instructions for packaging boot files for the system, and creating an SD card. The package/package.cfg configuration file is used by the v++ --link command.