如 AI 引擎内核与计算图编程指南(UG1079) 中所述,AI 引擎内核是 C/C++ 程序,它是使用 AI 引擎 API 和专用内部函数编写的,以 AMD Versal™ AI Core 器件的 VLIW 标量和矢量处理器为目标。
AI 引擎编译器会生成在 AI 引擎处理器上运行的 ELF 文件。在每个自适应数据流 (ADF) 图中包含多个 AI 引擎内核组合,此 ADF 图由节点和边缘组成,其中节点表示计算内核函数,边缘则表示数据连接。ADF 计算图属于含内核的静态数据流计算图,这些内核在数据串流上并行运算。ADF 计算图会按前述方式与器件二进制文件 (.xclbin)、全局存储器和主机应用中的 PL 内核进行交互。AI 引擎编译器会生成包含计算图应用的 libadf.a 文件,Vitis 编译器可将此文件与 PL 内核及可扩展平台相链接以生成器件二进制文件。
如
AI 引擎工具和流程用户指南(UG1076) 中所述,AI 引擎编译器(v++
或 aiecompiler
)可作为独立命令来使用,也可包含在 Vitis Unified IDE 内使用。此 IDE 会为组件提供语言敏感型编辑器、仿真、剖析和调试。AI 引擎组件可设计为独立组件,并从命令行集成到系统工程中(如 构建和运行系统 中所述)或者包含在 Vitis Unified IDE 中(如 使用 Vitis Unified IDE 中所述)。