v++ 常规编译选项 - 2023.2 简体中文

Vitis 统一软件平台文档 应用加速开发 (UG1393)

Document ID
UG1393
Release Date
2023-12-13
Version
2023.2 简体中文

常规 v++ 编译选项通常显示在命令行上,而不是显示在配置文件中。它可包含 -c(或 --compile)选项、--mode(生成 AI 引擎组件或 HLS 组件时)、--platform--part、构建 --target--config 文件,如下所示:

v++ -c --mode aie --platform xilinx_vck190_base_202310_1 --target hw \
-config ./aie_config.cfg <input_files...>
提示: 命令行上使用的相对路径是相对于启动命令的当前工作目录的路径。配置文件中的相对路径是相对于配置文件的位置的路径。

v++ 命令选项一般可在配置文件中或命令行上使用。但以下选项仅可在命令行上使用:

-c [ --compile ]

运行编译模式。

--config <file_name>
指定配置文件路径和名称。
--mode [ aie | hls ]

指定编译模式,可指定为编译 AI 引擎组件或 HLS 组件。

重要: 如不指定 --mode,则会将 v++ -c 命令置于 Vitis 内核流程的传统自上而下编译模式下,如 对 C/C++ PL 内核进行编译 中所述。
-h [ --help ]

打印选项的使用消息。可搭配 --mode 选项一起使用,为 AI 引擎或 HLS 组件列出可用选项。

-v [ --version ]

打印版本信息。

--input_files <arg>

指定输入文件。无需使用 --input_files 选项,亦可按位置指定输入文件。

-o [ --output ] <arg>

指定输出文件名和路径。默认值:libadf.a 适用于 AI 引擎编译模式,<kernel_name>.xo 适用于 HLS 编译模式,a.xclbin 适用于 v++ --link 命令。

-f [--platform]

这是指向 Vitis 平台文件的路径,此文件用于定义 AI 引擎组件、HLS 组件和应用可用的软硬件组件。平台可设为平台规范 (XPFM) 或硬件规格 (XSA)。

--log_dir <arg>

指定目录以便复制内部生成的 log 日志文件。

--macro_dir <arg>

指定宏,以便定义基本目录:<macro_name>=<base_directory> 含 $ 符号的宏可用于指定相对路径。

--report_dir <arg>

指定用于复制报告文件的目录。

--work_dir <arg>

(可选)指定构建和输出文件的工作目录。对于 --mode aie,工作目录默认为 ./Work。对于 --mode hls,默认设为 hls.syn.top 指定的顶层函数。该选项仅可在命令行上指定。

--aie_legacy

aiecompiler 使用传统选项。

以下选项可在配置文件中或命令行上使用:

提示: 由于这些选项均为常规选项,因此无需置于配置文件中的头文件(例如,[AIE][HLS])下。
-t [ --target ] <arg>

--target 实参搭配或不搭配 --mode 使用时所用的值不同。

  • 搭配 --mode 使用时,目标会定义 AI 引擎或 HLS 组件的编译目标。
    • x86:指定编译,用于 AI 引擎组件的 x86 仿真,或者用于 HLS 组件的 C 语言仿真。
    • hw:指定编译,以便搭配 AI 引擎仿真器用于 AI 引擎组件、搭配 C/RTL 协同仿真用于 HLS 组件,或者在物理器件上为任一组件运行编译。
  • 不搭配 --mode 使用时:目标会定义应用流程的传统构建目标(sw_emuhw_emuhw),如 为异构计算创建系统工程 中所述。

指定目标为 sw_emuhw_emuhw(适用于传统 v++ 编译模式);或者指定目标为 x86 仿真(适用于 AI 引擎编译模式)或 hw(适用于 AI 引擎编译)。默认目标为 hw

--part <arg>

指定器件系列或器件值。请注意,该选项与 --platform--hls.board 互斥。

-D [ --define ] <name=definition>

使用 <definition><name> 预定义为宏。

-I [ --include ] <arg>

在目录列表中包含指定目录,此列表可供搜索头文件。