将 C/C++ 内核编译为对象 (XO) 文件、将任意 RTL 内核封装为 XO 文件,并将 AI 引擎计算图应用编译到 libadf.a 文件内之后,Vitis
v++ --link
命令会将其与目标平台加以链接,以构建平台文件 (XSA) 或器件二进制文件 (.xclbin),如下图所示。
图 1. 器件构建进程
该进程(如上所述)分 2 个步骤:
- 从源代码中编译设计组件。
- 对于 C 语言和 C++ 内核,
v++ -c --mode hls
命令可将源代码编译到对象 (XO) 文件中。多个内核将编译到不同的 XO 文件中。 - 对于 RTL 内核,Vivado IP 封装器命令会生成 XO 文件用于链接。如需了解更多信息,请参阅 封装 RTL 内核。
- 任意 AI 引擎计算图应用均使用
v++ -c --mode aie
命令进行编译以创建 libadf.a 文件。
- 对于 C 语言和 C++ 内核,
- 编译后,
v++ -l
命令会将一个或多个内核对象 (XO) 和 libadf.a 文件(如果存在)与硬件平台链接在一起,以生成赛灵思二进制文件 .xclbin 或更新后的.xsa
文件。
以下章节描述了如何构建系统设计的不同组件以生成器件二进制文件。