修订历史 - 2023.2 简体中文

AI 引擎工具和流程用户指南 (UG1076)

Document ID
UG1076
Release Date
2023-12-04
Version
2023.2 简体中文

下表列出了本文档的修订历史。

章节 修订综述
2023 年 12 月 4 日 2023.2 版
通用 继续更新以反映全新 AMD Vitis™ Unified IDE 的用法。
仿真器选项 添加 --dump-size=SIZE 选项。
AI 引擎编译器选项 添加有关 pl-register-threshold 选项的更多详细信息。
内联关键字 添加有关 inline 关键字的详细信息。
FIFO 深度求值 添加有关 FIFO 深度求值的内容。
利用 ADF API 编译和链接主机代码 新增章节。
基于 AI 引擎仿真的剖析 进一步定义在“Profile”(剖析)报告的“Function Reports”(函数报告)部分中生成的信息。
2023 年 10 月 18 日 2023.2 版
整个文档 更新以反映全新 AMD Vitis™ Unified IDE 的用法。
更新以反映对 AI 引擎机器学习的支持。
移植到 Vitis Unified IDE 添加有关将 2023.1 命令行工程移植到 Vitis Unified IDE 的信息以及将 2023.1 Vitis 传统 IDE 工程移植到 Vitis Unified IDE 的信息。
使用 Vitis Unified IDE 添加有关如何在全新 Vitis Unified IDE 中创建 AI 引擎组件并对其进行仿真和调试的信息。
AI 引擎编译器选项 添加下列选项:--part-runtime-opt--float-accuracy arg--lock-fence-mode--evaluate-fifo-depth
映射器和布线器选项 添加 disableMultiDMAFifoskipUnroutableTraceNets 选项。
器件架构的宏 添加 __AIE_ARCH__ 宏详细信息。
使用 v++(统一编译器)进行编译 更新以反映全新的 Vitis 统一命令行 AI 引擎编译器的用法。
仿真输入和输出数据串流CSV 文件格式 为 PLIO 输入和输出添加 CSV 文件格式支持。
评估 FIFO 深度以打破死锁 添加有关如何使用来自 aiesimulator 的 FIFO 深度报告以缓解死锁的信息。
复用 AI 引擎仿真器选项 澄清第三方仿真器不支持 AIE_Profile 选项。
输入 添加注释:main 函数必须包含返回语句。否则,aiecompiler 将出错。
仿真器选项 添加 --dump_size x86simulator 选项。
基于 AI 引擎机器学习的器件的存储器拼块事件追踪 为基于 AI 引擎机器学习的应用添加存储器拼块的事件追踪详细信息。
剖析存储器拼块 为基于 AI 引擎机器学习的应用添加存储器拼块的剖析详细信息。
从 VCD 执行 AI 引擎追踪 更新生成的事件追踪器数据的目录路径。
利用选定信号生成 VCD 在用于生成 VCD 的 options.txt 文件中添加行、列和时间窗口选项。
使用 IDE 中选中的信号生成 VCD 添加关于如何使用 Vitis Unified IDE 指定行、列和时间窗口选项的信息,这些选项用于生成 VCD。
剖析 NoC 添加有关如何监控 NoC 上网络性能的信息。
XSDB 流程 更新表格以反映存储器拼块的剖析选项。为接口拼块指标添加多层级计算图支持。
XRT 流程 更新表格以反映存储器拼块的剖析选项。为接口拼块指标添加多层级计算图支持。
XSDB 流程 更新多层级计算图支持示例。
XRT 流程 移除 offload_interval_usfile_dump_interval_s 选项。

添加多层级计算图支持示例。

在 Vitis IDE 中查看剖析结果 在“计算图视图”部分中添加新的性能注解。
使用高速调试端口进行事件追踪卸载 添加有关支持使用高速调试端口来卸载追踪数据的信息。
事件追踪布线 添加有关如何处理事件追踪布线失败的信息。
“使用 Vitis 工具流程来集成应用”章节 将内容迁移至 Vitis 统一软件平台文档:应用加速开发(UG1393)
“调试 AI 引擎应用”章节 将内容迁移至 Vitis 统一软件平台文档:应用加速开发(UG1393)
2023 年 6 月 23 日 2023.1 版
对 AI 引擎计算图应用进行仿真在硬件上执行 AI 引擎计算图应用性能分析 添加有关预编译的 AI 引擎测试工具的提示,并包含 GitHub 链接以提供更多信息。
为 x86 处理器编译嵌入式应用 添加有关设置源自 AMD Vitis™ 安装的 GCC 路径的注释。
2023 年 5 月 16 日 2023.1 版
通用 更新截屏,反映可供查看编译和仿真报告以及汇总文件的全新 Vitis IDE。
全文添加 -a 选项,用于通过汇总文件启动 Vitis 分析器,即 vitis_analyzer -a
将“在 AI 引擎内核中使用 restrict 关键字”和“窗口和串流 API 的非模板版本”附录移至 AI 引擎内核与计算图编程指南 (UG1079)
将 window 更新为 buffer,即 input_window 更新为 input_bufferoutput_window 更新为 output_buffer
工具 添加全新 Vitis IDE,用于查看编译和仿真报告以及 AI 引擎编译器所生成的分析输出文件。添加 Vitis 统一命令行接口。
AI 引擎编译器选项 添加 --graph-iterator-event 事件追踪编译器选项。

添加 --evaluate-fifo-depth 杂项选项,这有助于避免添加 FIFO 深度的手动迭代进程。利用该选项编译设计并使用 aiesimulator 进行设计仿真后,仿真器会生成 FIFO 深度建议。

在 Vitis Unified IDE 的“Analysis”视图中查看编译结果 更新本节中的示例和截屏以反映全新 Vitis IDE。
对 AI 引擎计算图应用进行仿真 更新仿真流程表、仿真模型表和仿真功能特性表。
仿真器选项 更新 --display-run-interval=<time in ns>--dump-vcd=<file>--enable-handshake-ext-tb--enable-memory-check--hang-detect-time=<time in ns>--online
仿真器选项

添加 --options-file 选项,为选定的 VCD 指定文本文件。

利用选定信号生成 VCD 新增有关生成 AI 引擎选定的 VCD 模块的章节。
外部流量生成器 新增章节。
复用 AI 引擎仿真器选项 添加有关查看运行汇总的信息。
追踪比较 添加为追踪比较功能特性使用 vitis_analyzer --classic 的建议。
串流开关 FIFO 可视化 新增有关串流开关 FIFO 的数据可视化的章节。
剖析 AI 引擎、存储器模块和接口拼块流程剖析 更新带宽和吞吐量。
XSDB 流程 添加 -start-type-start-time-start-iteration 选项及示例。

-tile_based_aie_tile_metrics 重命名为 -tile-based-aie-tile-metrics ,将 -graph_based_aie_tile_metrics 重命名为 -graph-based-aie-tile-metrics ,将 -tile_based_interface_tile_metrics 重命名为 -tile-based-interface-tile-metrics

XRT 流程 添加 start_typestart_timestart_iteration 选项及示例。
使用延迟事件追踪 新增章节。
Vitis IDE 中的 FIFO 深度可视化 添加有关串流开关 FIFO 的数据可视化的章节。
分析 AI 引擎状态 添加注释,提及您可在传统 Vitis 分析器中使用 vitis_analyzer --classic 访问错误事件,但在全新 Vitis IDE 的“Analysis”视图中无法执行此操作。
在硬件中对事件追踪进行故障排除 在示例中将 -config-level 更新为使用 -graph-based-aie-tile-metrics,因为不再支持 -config-level
对 PS 主机应用进行编程 移除对 ADF API 的引用,更新为仅使用 XRT API。
利用 XRT C++ API 控制应用 更新用于控制 PL 内核与 AI 引擎计算图的 XRT API 的执行模型,并更新代码示例。
控制 AI 引擎 GMIO 传输 添加注释,指出 AI 引擎 GMIO 缓冲器仅支持不可缓存的缓冲器。
为 Linux 编译和链接主机代码 新增章节。
为裸机编译和链接主机代码 新增章节。
AI 引擎阵列的复位和重新加载流程 新增章节。
平台 更新平台类型。
为 Cortex-A72 处理器编译嵌入式应用 更新仅限 XRT 的编译。
AI 引擎阵列的复位和重新加载流程 新增章节。
全新 Vitis Unified IDE 简介 添加新的附录,介绍预览模式工具。
2022 年 10 月 5 日 2022.2 版
文档标题 标题更改为AI 引擎工具和流程用户指南
整个文档 将计算图编程内容移入 AI 引擎内核与计算图编程指南 (UG1079)
AI 引擎编译器选项 添加 DRC 选项。更新事件追踪选项。
仿真输入和输出数据串流 添加仿真选项文件详细信息。
在配置文件中启用第三方仿真器 将 v++ --link 配置更新为使用通用 <SIMULATOR DIRECTORY> 变量。
标量 RTP 数据分析 新增主题。
计算图时延剖析 为硬件流程和硬件仿真流程添加代码示例。
AI 引擎剖析 移除 stream_put_get 指标。
XSDB 流程 添加 XSDB 追踪选项。
限制 新增主题。
存储器模型 添加有关 X86SIM_THREAD_LOCAL 宏如何使全局读/写线程安全的说明。
接口拼块剖析 更新 input_bandwidthsoutput_bandwidths 指标。新增 packets 指标。
XSDB 流程 更新合添加新的 aieprofile 选项。
XRT 流程XRT 流程 全文更新 xrt.ini 选项和示例。
在硬件中对事件追踪进行故障排除 更新在某些串流中丢弃追踪包时可用的故障诊断选项。
控制 AI 引擎 GMIO 传输 新增主题。
迭代 AI 引擎应用编译 新增主题。
查看来自缓冲器端口接口的数据 新增主题。
链接系统 在 Connectivity 节的选项中添加 sp
在硬件仿真中分析 AI 引擎状态 新增主题,用于描述 Vitis 分析器针对硬件仿真中的 AI 引擎剖析和状态的支持。
为 x86 处理器编译嵌入式应用 新增主题,用于描述针对软件仿真中的 PS on x86 流程的支持。
使用 System Verilog/Verilog 创建流量生成器 新增主题,用于描述如何使用 Verilog 或 System Verilog 模块/测试激励文件来驱动流量进出 AI 引擎仿真器中运行的 ADF 计算图。
AI 引擎内核加密 新增附录,其中引用了“加密”Web 专区以提供更多详细信息。
2022 年 5 月 25 日 2022.1 版
AI 引擎编译器选项 添加有关两个保留码字的注释:aieadf 在计算图编程中均为无效的名称空间标识符
在 Vitis Unified IDE 的“Analysis”视图中查看编译结果 更新 2022.1 版的计算图。
I/O信号线拼块 更新 2022.1 版的示例详细信息以及 Vitis 分析器 GUI 截屏。
接口通道 添加新的计算图接口通道详细信息。
用于计算图输入和输出的事件剖析 API 添加有关信号线上的事件的详细信息。
在 Vitis IDE 中查看指南 添加本指南。
为 AI 引擎系统工程使用流量生成器 澄清除 C++ 和 Python 外,您也可在 HDL 中写入外部流量生成器。
2022 年 4 月 26 日 2022.1 版
概述 更新 2022.1 版的 Vitis 核开发套件详细信息。
创建数据流计算图(包含内核) 更新 2022.1 编程模型。
同步窗口访问 添加章节,用于解释窗口到窗口的广播以及多重速率设计支持。
基于串流的访问 添加章节,用于解释使用级联串流执行基于串流的访问的方式。
并行使用串流 更新 32 位宏和 64 位宏的列表。
运行时参数支持汇总 移除不再受支持的 AI 引擎到 AI 引擎运行时间参数构造。
多播支持 更新多播支持场景表。
使用 RTL 编程逻辑的设计流程 更新示例,用于反映 2022.1 编程模型更改。
第 12 章:计算图编程模型 更新整章内的编程模型详细信息和示例。
AI 引擎编译器选项 添加新的多重速率选项。

更新 --Xrouter=<string> 示例。

映射器和布线器选项 移除 enableSplitAsBroadcast 选项(始终开启)。

添加 disablePathBalancing 选项。

x86 功能仿真器 添加在 Vitis 分析器中可视化 X86 仿真输出的功能。
设计编译 添加 X86 仿真器选项。
数据快照 添加在 Vitis 分析器中可视化快照的功能。
限制 移除“仿真输出文件处理注意事项”和“adf::headers 约束和 aie_api 包含文件”章节,因为这些 x86 仿真限制已得到解决。
仿真器选项 添加新选项和挂起检测详细信息。
在配置文件中启用第三方仿真器 更新 VCS 详细信息。

添加 Riviera 仿真器信息。

剖析硬件中的 AI 引擎

接口拼块剖析

剖析 AI 引擎、存储器模块和接口拼块

添加用于 DMA write/read_bandwidths 的事件。

添加剖析接口事件的功能。

Vitis IDE 中的 FIFO 深度可视化 添加可视化 Vitis 分析器中的 DMA FIFO 深度(来自仿真 VCD 数据)的功能。
XSDB 流程

XRT 流程

添加指定事件追踪开始时间的功能。

添加定期卸载追踪数据的功能。

在 Vitis IDE 中查看剖析结果 添加接口指标示例。

添加在 Vitis 分析器中整合多个剖析结果的功能。

分析硬件中的 AI 引擎状态

生成 AI 引擎状态

分析 AI 引擎状态

添加报告并输出硬件中的 AI 引擎状态的功能,并添加在 Vitis 分析器中打开和分析该报告的功能。
DFX 平台封装 添加了除基础平台外还可使用 DFX 平台的功能,并添加了有关在硬件中使用此平台的信息。
用于控制 AI 引擎计算图的多进程和多线程支持 添加有关 xrtGraphClosexrtDeviceClose 行为的澄清信息。
平台 更新“平台类型”,以包含 DFX 平台。
Performance Metrics 添加“Show Percentage”按钮描述。
锁定停滞分析

串流停滞分析

级联停滞分析

存储器停滞分析

添加程序计数器 (PC) 选项,该选项允许您在 Vitis 分析器中对来自“Trace”视图的源代码进行交叉探测。
为 AI 引擎系统使用流量生成器

在 AI 引擎计算图中使用流量生成器

添加在 x86 功能仿真器、AI 引擎仿真器、软件仿真和硬件仿真中使用流量生成器的支持。这些流量生成器可采用 Python、C++ 或 HDL 来编写。
裸机的主机编程

构建裸机系统

Linux 与裸机之间的主机编程支持比较

添加有关裸机软件栈的详细信息。

对在裸机中与在 Linux 操作系统中运行主机应用的功能进行比对。

使用 Vitis 工具流程来集成应用

链接系统

为硬件封装系统

更新以反应 v++ 链接现在可生成 XSA 文件的事实。
AI 引擎硬件剖析和调试方法论 新增有关 AI 引擎硬件剖析和调试方法论的章节。
input_gmio/output_gmio

input_plio/output_plio

更新文档,以反映编程模型的更改,包括 input_gmio/output_gmioinput_plio/output_plio
其他约束 为多重速率设计添加 repetition_count 约束。
2021 年 12 月 17 日 2021.2 版
第 8 章:窗口和串流数据 API 添加更多受支持的无符号整数数据类型。
指定运行时数据参数 澄清描述。
模型功能特性编程 更改章节标题。
AI 引擎编译器选项 新增 表 11
AI 引擎剖析 新增章节。
计算图吞吐量剖析 添加信息。
剖析硬件中的 AI 引擎 新增章节。
硬件中的事件追踪 新增章节。
硬件事件追踪 新增章节。
在硬件中对事件追踪进行故障排除 新增章节。
2021 年 10 月 22 日 2021.2 版
AI 引擎组件 已更新。
内核准备 更新 AI 引擎 API。
创建数据流计算图(包含内核) 添加表示计算图连接的图示。
第 8 章:窗口和串流数据 API 更新 AI 引擎 API 和模板支持的数据类型。
包切换计算图构造 添加浮点数据示例。
面积位置约束 新增章节。
分层约束 添加信息。
模型功能特性编程 新增章节。
AI 引擎编译器选项 新增选项。
对 AI 引擎计算图应用进行仿真 添加仿真流程相关信息。
数据快照 新增章节。
死锁检测 新增章节。
追踪报告 新增章节。
存储器访问违例和 Valgrind 新增章节。
存储器模型 更新信息。
仿真输出文件处理注意事项 新增章节。
adf::headers 约束和 aie_api 包含文件 新增章节。
软件仿真 新增章节。
仿真器选项 新增选项。
硬件仿真 新增章节。
复用 AI 引擎仿真器选项 添加有关设置 AI 引擎编译器 workdir 环境变量以及手动创建仿真选项的信息。
基于 AI 引擎仿真的剖析 新增章节。
受支持的窗口数据类型 更新数据类型。
受支持的串流数据类型
在 Vitis IDE 中执行 AI 引擎停滞分析 新增章节。
用于控制 AI 引擎计算图的多进程和多线程支持 新增章节。
AI 引擎错误事件 更新错误以及调试技巧。
运行软件仿真 新增章节。
面积分组约束 更新属性。
创建 AI 引擎计算图工程和顶层系统工程 更新截屏。
构建和运行系统 更新以添加软件仿真。
调试 AI 引擎应用 添加调试信息。
从 Vitis IDE 进行软件仿真调试 新增章节。
从命令行运行软件仿真 新增章节。
使用调试环境 更新截屏。
观察点 新增章节。
用于软件仿真调试的 Vitis IDE 布局 新增章节。
窗口和串流 API 的非模板版本 添加附录,描述窗口和串流数据类型的非模板版本和 API。
2021 年 7 月 19 日 2021.1 版
FIFO 位置约束 更新 FIFO 约束示例。
受支持的窗口数据类型 新增主题。
受支持的串流数据类型 新增主题。
在 Vitis IDE 中构建裸机 AI 引擎 更新步骤 4。
2021 年 6 月 16 日 2021.1 版
运行时比率 新增主题。
串流数据类型

读取并递增输入串流

写入并递增输出串流

新增串流类型。
运行时参数支持汇总 添加 AI 引擎 RTP 支持表。
串流开关 FIFO

DMA FIFO

AI 引擎拼块 DMA 性能

新增 FIFO 主题。
包切换计算图构造 更新允许的包串流数量。
多播支持 新增主题。
第 11 章:AI 引擎/可编程逻辑集成 更新内容。
硬件仿真流程和硬件流程 移除 ADF_FRONTEND
AI 引擎/PL 与 AI 引擎/NoC 接口之间的性能比较 新增主题。
AI 引擎编译器选项
  • 更新堆和栈大小。
  • 添加 --broadcast-enable-core CDO 选项。
  • 更新追踪选项。
  • 更新 xlopt
计算图和阵列详细信息 新增章节。
AI 引擎编译器指南 新增主题。
复用 AI 引擎仿真器选项 添加 --profile/AIE_PROFILE 选项。
在配置文件中启用第三方仿真器 添加仿真器并更新版本。
x86 功能仿真器 更新内容,添加新章节。
在 Vitis IDE 中查看运行汇总 更新内容。
追踪视图数据可视化 新增章节。
运行时事件 API 性能计数器使用汇总 新增主题。
对 PS 主机应用进行编程 移除 ADF_FRONTEND
利用 XRT C++ API 控制应用 新增主题。
AI 引擎错误报告 更新 xbutil 作用域。
含 ADF API 和 XRT API 的主机代码参考 更新 printf
利用 AI 引擎同步时钟 更新主题。
为 Cortex-A72 处理器编译嵌入式应用 代码更新:aarch64-linux-gnu-g++ 更新为 aarch64-xilinx-linux-g++
运行硬件仿真 新增章节。
使用 Vitis IDE 更新截屏。
映射器/布线器方法论 新增章节。
事件 API 移除额外的“Enumeration”章节。
FIFO 约束 新增主题。
在 AI 引擎内核中使用 restrict 关键字 更新 C++。