AXI Traffic Generator - 2022.1 简体中文

Versal ACAP AI 引擎编程环境 用户指南 (UG1076)

Document ID
UG1076
Release Date
2022-05-25
Version
2022.1 简体中文

AXI Traffic Generator 是作为 XO 文件来提供的,这些文件需使用 Vitis 编译器 (v++) 链接至您的仿真平台。这些 XO 文件名为 sim_ipc_axis_master_XY.xosim_ipc_axis_slave_ZW.xo,其中 XY 和 ZW 对应于 PLIO 接口中的位数。例如,sim_ipc_axis_master_128.xo 提供位宽为 128 位的 AXI4-Stream 主数据总线。接口越宽,PL 就能以更低的时钟频率达成相同的吞吐量,并允许 AI 引擎阵列尽可能增大其存储器带宽。但每个 PLIO 接口拼块位宽均为 64 位,并且属于受限资源。以时钟速度两倍的速度来使用一个 64 位 PLIO 接口所提供的带宽与仅使用单个 PLIO 拼块时的 128 位 PLIO 所提供的带宽相同。这要求 PL 以时钟速度两倍的速度运行,并且最优选择因应用而异。

要将流量生成器与 Vitis 编译器搭配使用,需要两个步骤。首先,在 AI 引擎阵列上的 sim_ipc 模块与其对应的 AXI4-Stream 端口之间建立连接。这通常是在 system.cfg 文件中完成的。示例如下:

[connectivity]
nk=sim_ipc_axis_master:1:inst_sim_ipc_axis_master
nk=sim_ipc_axis_slave:1:inst_sim_ipc_axis_slave
stream_connect=sim_ipc_axis_master.M00_AXIS:ai_engine_0.DataIn
stream_connect=ai_engine_0.DataOut:sim_ipc_axis_slave.S00_AXIS
连接 sim_ipc_axis XO 文件的语法如下。
nk=sim_ipc_axis_master:<Number Of Masters>:<inst_name_1>.<inst_name_2>.<...>
nk=sim_ipc_axis_slave:<Number Of Slaves>:<inst_name_1>.<inst_name_2>.<...>
sim_ipc_axis_master/slave 用于指定 XO 文件的类型,实例名称应对于您的应用有意义。
下一步,将 XO 文件添加到 Vitis 链接命令中。请注意,sim_ipc XO 文件只能搭配目标 hw_emu 使用。
v++ -l --platform <platform.xpfm> sim_ipc_axis_master_128.xo sim_ipc_axis_slave_128.xo libadf.a -target hw_emu --config system.cfg

如需了解有关如何将 XO 文件与 Vitis 编译器搭配使用的更多信息,请访问 https://github.com/Xilinx/Vitis-Tutorials/tree/master/AI_Engine_Development/Feature_Tutorials/05-AI-engine-versal-integration

注释: 要同时使用多个 AXI4-Stream 主接口,请按需将 system.cfg 文件中的 Number of Masters 字段从 1 更改为尽可能大的值(最大值为 8)。