DPU 可搭配部分预定义的选项来配置,这些选项包括 DPUCVDX8G 架构、批次数量、计算单元数和 UltraRAM 用量。这些选项支持您设置 DSP slice(切片)、LUT、块 RAM 和 UltraRAM 用量。
CPB_N
CPB_N 参数表示每个批次的 AI 引擎数量,并用于判断 DPUCVDX8G 的峰值性能。CPB_N 可用的值为 32 或 64。例如,当 CPB_N 为 32 时,DPUCVDX8G 中的每个批处理程序均使用 32 个 AI 引擎。
BATCH_N
BATCH_N 参数用于判定 DPUCVDX8G IP 中集成的批处理程序的数量。该参数支持的值范围为 1 到 6(对应 C32)和 1 到 5(对应 C64)。批处理程序数量越多,表示性能越好且 AI 引擎和 PL 资源越多,同时 DDR I/O 带宽要求也更高。您可根据自己的应用要求来平衡性能、DDR I/O 和资源。
CU_N
CU_N 参数用于判定计算单元的数量。该参数支持的值范围为 1 到 3,且仅适用于 C32B1 和 C64B1。
UBANK_IMG_N
在 Versal 器件中有 2 种类型的片上存储器资源:块 RAM 和 UltraRAM。每个块 RAM 容量均为 36 Kb,每个 UltraRAM 容量均为 288 Kb。可用 RAM 数量因器件而异。
每个 DPUCVDX8G 批处理程序各有 16 个 IMG BANK(每个 bank 均为 128 KB)。每个 IMG BANK 均可由块 RAM 或 UltraRAM 组成。UBANK_IMG_N 参数用于判定由 UltraRAM 组成的 IMG BANK 数量。其余 bank 将由块 RAM 组成。该参数是专为灵活运用片上存储器资源而设计的。
UBANK_WGT_N
DPUCVDX8G 中有 17 个 WGT BANK(每个 bank 均为 256 KB),这与批处理程序数量无关。每个 WGT BANK 均可由块 RAM 或 UltraRAM 组成。UBANK_WGT_N 参数用于判定由 UltraRAM 组成的 WGT BANK 数量。其余 bank 将由块 RAM 组成。该参数是专为灵活运用片上存储器资源而设计的。
UBANK_BIAS
DPUCVDX8G 中有 2 个 BIAS BANK(每个 bank 均为 32 KB),这与批处理程序数量无关。每个 BIAS BANK 均可由块 RAM 或 UltraRAM 组成。UBANK_BIAS 参数用于判定由 UltraRAM 组成的 BIAS BANK 数量。该参数是专为灵活运用片上存储器资源而设计的。
架构 | 最大量 URAM | 最大量 BRAM |
---|---|---|
CxxB1CU1 |
|
|
CxxB2CU1 |
|
|
CxxB3CU1 |
|
|
CxxB4CU1 |
|
|
CxxB5CU1 |
|
|
CxxB6CU1 |
|
|
LOAD_PARALLEL_IMG
LOAD_PARALLEL_IMG 表示为每个 DPUCVDX8G 批处理程序加载图像的并行度级别。每个并行度均使用一个 AXI4 接口执行数据发射。因此,DPUCVDX8G 的 M_IMG_AXI 端口数量取决于 LOAD_PARALLEL_IMG。在此版本中,该参数支持的值固定为 2。并行度越高表示图像加载的吞吐量越大且带宽需求越大,因此,PL 资源利用率也越高。
SAVE_PARALLEL_IMG
SAVE_PARALLEL_IMG 表示为每个 DPUCVDX8G 批处理程序保存图像的并行度级别。每个实例均使用一个 AXI4 接口执行数据发射。保存模块使用 AXI4 接口的写入通道,加载模块则使用 AXI4 接口的读取通道。
在此版本中,该参数支持的值固定为 2。并行度越高表示图像加载的吞吐量越大且带宽需求越大,因此,PL 资源利用率也越高。