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 thex86simulator
andaiesimulator
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 thevitis-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.