Vitis-AI DPU
DPU 资料临时整理目录更新时间2026-04-161. 先说结论B512、B800、B1024、B1152、B1600、B2304、B3136、B4096在官方语义里都属于同一个DPUCZDX8GIP 家族的不同参数配置。这意味着它们通常不是“8 个不同官方下载包”。官方更常见的做法是下载同一套 DPU 源码 / TRD / DPU-PYNQ 工程再通过参数切出目标架构。一旦你改了 DPU 架构通常需要重新生成对应的arch.json并重新编译xmodel。如果还改了核数、RAM usage、URAM 开关、channel augmentation 等也都属于“会影响编译目标”的架构参数不能只换 bitstream 不换模型。所以这份文档里“不同 DPU 架构的下载地址”实际上会分成两类真正的官方下载入口文档、源码仓库、release、板卡镜像、工具链。架构配置入口下载同一套源码之后在其中选择B4096/B2304/...对应配置文件。2. 官方入口总表下表把真正值得保存的官方下载入口先集中起来。类别作用官方地址备注DPU 产品指南 PG338看 DPUCZDX8G 的参数、接口、资源和集成方式https://docs.amd.com/r/en-US/pg338-dpu/IP-Facts最核心的硬件文档入口DPU 参数配置页看DPUCZDX8G架构参数怎么配https://docs.amd.com/r/en-US/pg338-dpu/Configure-DPUCZDX8G-Parameters看B4096/B2304/...、核数、RAM usage 等DPU 接到 PS/DDR 的方式看 Zynq MPSoC 上系统连接关系https://docs.amd.com/r/en-US/pg338-dpu/Connecting-the-DPUCZDX8G-to-the-Processing-System-in-the-Zynq-UltraScale-MPSoC做 Vivado 集成时很关键UG1414 编译文档看arch.json - xmodel的编译关系https://docs.amd.com/r/en-US/ug1414-vitis-ai/Compiling-for-DPU改架构后为什么必须重编模型就在这里Vitis AI 版本兼容表看Vivado/Vitis/PetaLinux与DPU IP、Vitis AI的匹配关系https://xilinx.github.io/Vitis-AI/3.0/html/docs/reference/version_compatibility.html对你现在的 ZCU104 工程很重要Vitis AI 文档总入口看 DPU 系统集成、快速开始、发布文档https://xilinx.github.io/Vitis-AI/3.0/html/index.html官方文档导航页DPU 系统集成文档看 DPU IP 在系统中的位置和类别https://xilinx.github.io/Vitis-AI/3.0/html/docs/workflow-system-integration用来厘清 DPU/IP/平台关系Zynq MPSoC Quick Start看 ZCU104/ZCU102/KV260 的 Vitis AI 快速开始https://xilinx.github.io/Vitis-AI/3.0/html/docs/quickstart/mpsoc.html板端准备的官方路线DPU-PYNQ 仓库PYNQ 路线的 DPU overlay 源码/示例/构建入口https://github.com/Xilinx/DPU-PYNQ已于 2025-08-12 归档只读DPU-PYNQ ReleasesDPU-PYNQ 各版本发布页https://github.com/Xilinx/DPU-PYNQ/releases适合找成套版本说明Vitis AI 仓库Vitis AI 源码、脚本、示例和 releasehttps://github.com/Xilinx/Vitis-AIDPU 编译链的大本营PYNQ Getting StartedPYNQ 官方入门入口https://pynq.readthedocs.io/en/latest/getting_started.html找板卡镜像/板卡文档的入口ZCU104 PYNQ 启动指南ZCU104 的 PYNQ 启动方式https://pynq.readthedocs.io/en/v3.0.0/getting_started/zcu104_setup.html适合当前路线PYNQ Releases看 PYNQ 3.0.1、3.1.1 等发布情况https://github.com/Xilinx/PYNQ/releasesPYNQ SD 镜像版本对齐时有用Vivado 下载入口下载 Vivadohttps://www.amd.com/en/products/software/adaptive-socs-and-fpgas/vivado.html页面上有 Download NowVitis 下载入口下载 Vitishttps://www.amd.com/en/products/software/adaptive-socs-and-fpgas/vitis.html页面上有 Download NowAMD 设计工具总入口工具总导航页https://www.amd.com/en/products/software/adaptive-socs-and-fpgas.html找不到时可以回这里历史 Xilinx Vitis 下载页很多旧文档仍然引用这个入口https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/vitis.html旧资料经常直接给这个地址历史 Xilinx Embedded Platforms 下载页下载 common image 的旧入口https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/embedded-platforms.html很多官方文档仍然直接引用3. 不同 DPU 架构到底从哪下载这一节是最容易混淆的地方。3.1 结论版B512/B800/B1024/B1152/B1600/B2304/B3136/B4096不是 8 个单独官方下载包而是同一个DPUCZDX8GIP 家族同一套 DPU TRD / DPU-PYNQ / Vitis AI 硬件源码通过参数配置切换成不同架构也就是说如果你想“下载 B4096”通常不是去找一个名为“B4096.zip”的官方包而是下载DPU-PYNQ或Vitis AI / DPU TRD相关源码。在源码里选择B4096配置。重新生成arch.json、硬件设计和对应运行资产。3.2 架构级别对照表你可以按下面这个理解去找。架构名是否存在单独官方下载包正确获取方式下载后在源码里的典型配置入口B512否下载统一 DPU 源码/TRDDPUCZDX8G_ISA1_B512.vhB800否下载统一 DPU 源码/TRDDPUCZDX8G_ISA1_B800.vhB1024否下载统一 DPU 源码/TRDDPUCZDX8G_ISA1_B1024.vhB1152否下载统一 DPU 源码/TRDDPUCZDX8G_ISA1_B1152.vhB1600否下载统一 DPU 源码/TRDDPUCZDX8G_ISA1_B1600.vhB2304否下载统一 DPU 源码/TRDDPUCZDX8G_ISA1_B2304.vhB3136否下载统一 DPU 源码/TRDDPUCZDX8G_ISA1_B3136.vhB4096否下载统一 DPU 源码/TRDDPUCZDX8G_ISA1_B4096.vh另外你本机这套源码里还有一个变体DPUCZDX8G_ISA1_B4096_BG3.vh它不是新的 DPU 家族而是B4096的特定变体配置文件。4. 你这台机器上已经找到的本地 DPU 文件我已经在你机器上找到了DPU-PYNQ的本地副本。下面这些位置最有用。4.1 DPU 源 IP 包本地路径E:\0Project\DPU-PYNQ\boards\DPUCZDX8G\dpu_ip\DPUCZDX8G_v4_0_0这里是 DPU IP 本体里面有component.xmlhdl/inc/xci/xgui/这说明你现在本机并不只是有“成品 bitstream”而是已经有一套比较完整的 DPU IP 源。4.2 不同架构的配置头文件本地路径E:\0Project\DPU-PYNQ\boards\DPUCZDX8G\prj\Vitis\dpu_settings该目录下已存在DPUCZDX8G_ISA1_B512.vhDPUCZDX8G_ISA1_B800.vhDPUCZDX8G_ISA1_B1024.vhDPUCZDX8G_ISA1_B1152.vhDPUCZDX8G_ISA1_B1600.vhDPUCZDX8G_ISA1_B2304.vhDPUCZDX8G_ISA1_B3136.vhDPUCZDX8G_ISA1_B4096.vhDPUCZDX8G_ISA1_B4096_BG3.vh这一点非常关键说明“不同 DPU 架构”在你本机上已经不是抽象概念而是确实有对应配置文件。4.3 当前工程实例化出来的 DPU IP本地路径E:\0Project\DPU-PYNQ\boards\DPUCZDX8G\prj\Vivado\srcs\top\ip\top_DPUCZDX8G_0_1\top_DPUCZDX8G_0.xci对应的编译目标描述文件E:\0Project\DPU-PYNQ\boards\DPUCZDX8G\prj\Vivado\srcs\top\ip\top_DPUCZDX8G_0_1\arch.json我从这个.xci里看到的关键信息是ARCH 4096VER_DPU_NUM 3也就是说这个现成实例当前对应的是3 核 B4096不是单核版本。4.4 Vitis 路线的统一配置入口本地路径E:\0Project\DPU-PYNQ\boards\DPUCZDX8G\prj\Vitis\dpu_conf.vh这个文件里现在已经写着define B4096define RAM_USAGE_LOW所以它本身就是“切换 DPU 架构”的核心入口之一。4.5 ZCU104 的 1 核 / 2 核工程配置本地路径E:\0Project\DPU-PYNQ\boards\DPUCZDX8G\prj\Vitis\config_file\prj_config_1dpuE:\0Project\DPU-PYNQ\boards\DPUCZDX8G\prj\Vitis\config_file\prj_config_104_2dpu这两个文件说明同样是 ZCU104官方工程里就已经把1 DPU和2 DPU当成不同系统配置来处理了。所以核数不是一个“运行时开关”而是硬件构建层面的系统配置。5. 如果你现在只想保存“各架构下载入口”最少该留哪些链接如果你吃完饭回来只想先抓住最关键的一组链接建议至少保存下面这些DPU-PYNQ仓库https://github.com/Xilinx/DPU-PYNQDPU-PYNQ Releaseshttps://github.com/Xilinx/DPU-PYNQ/releasesPG338 DPUCZDX8Ghttps://docs.amd.com/r/en-US/pg338-dpu/IP-FactsDPU 参数配置页https://docs.amd.com/r/en-US/pg338-dpu/Configure-DPUCZDX8G-ParametersUG1414 Compiling for DPUhttps://docs.amd.com/r/en-US/ug1414-vitis-ai/Compiling-for-DPUVitis AI 版本兼容表https://xilinx.github.io/Vitis-AI/3.0/html/docs/reference/version_compatibility.htmlPYNQ ZCU104 启动指南https://pynq.readthedocs.io/en/v3.0.0/getting_started/zcu104_setup.htmlVivado 下载入口https://www.amd.com/en/products/software/adaptive-socs-and-fpgas/vivado.htmlVitis 下载入口https://www.amd.com/en/products/software/adaptive-socs-and-fpgas/vitis.htmlEmbedded Platforms Common Image 旧入口https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/embedded-platforms.html6. 如果你要按 ZCU104 PYNQ Vitis AI DPU 这条线实际准备文件这一节不是泛泛而谈而是按你现在的工程情况给出的最实际版本。6.1 最稳妥的版本冻结思路从官方 release 和兼容表看你现在这条路线如果偏重复现实验最稳妥的是Vivado / Vitis / PetaLinux 2022.1DPUCZDX8G IP 4.0Vitis AI 2.5PYNQ 3.0.1DPU-PYNQ v2.5.0或其相邻小修订版本理由DPU-PYNQ发布页明确写了v2.5.0支持PYNQ 3.0.1与Vitis AI 2.5Vitis AI兼容表把2022.1 - DPU 4.0 - Vitis AI 2.5对齐在一起6.2 如果你是“单核 B4096”通常不应该理解成“下载单核 B4096 专用包”而应该理解成先下载统一的 DPU 工程。选择 ZCU104 的1dpu工程配置。在dpu_conf.vh中保留B4096。对 ZCU104 按官方建议开启URAM_ENABLE。重新构建硬件。导出新的arch.json。用新的arch.json重编xmodel。6.3 如果你是“只想先跑 DPU不带 KNN”那么你真正需要的不是“另一套 DPU 架构下载包”而是一套只含PS DPU DDR/AXI 通路的 overlay匹配这套 overlay 的arch.json用这个arch.json编出来的xmodel板端的 PYNQ SD 镜像也就是说你后面应该优先区分的是DPU 架构大小例如B4096DPU 核数例如1dpu/2dpu是否合并 KNN这三个不是同一层概念。7. 常见误区误区 1每个Bxxx都应该有单独下载包不对。大多数时候没有。正确理解官方提供的是统一 IP / TRD / 源码工程。Bxxx是参数配置不是产品线分叉。误区 2改 bitstream 就够了xmodel不用重编通常不对。只要改了 DPU 架构相关参数例如B4096 - B23041 核 - 2 核RAM_USAGE_LOW - RAM_USAGE_HIGHCHANNEL_AUGMENTATION都应该重新导出新的arch.json再重新编译xmodel。误区 3ZCU104 上的 1 核 / 2 核只是运行时选项不对。在现有官方工程里它们就是不同系统构建配置。误区 4DPU 和 KNN 可以各自一个独立 bitstream然后同时随便叠加跑通常不这么做。常规工程上如果要协同运行往往是统一集成进一个硬件设计。如果只是想先验证 DPU则单独做一套 DPU-only overlay。8. 你后面如果真要下载建议怎么放本次我没有自动下载但目录已经先给你准备好了。你可以后面按下面方式放tmp_dpu_downloads_20260416/README.mdtmp_dpu_downloads_20260416/source_repo/tmp_dpu_downloads_20260416/toolchain_notes/tmp_dpu_downloads_20260416/manual_archives/其中建议手动保存的优先级第一优先级DPU-PYNQ仓库快照或 release 压缩包PG338与UG1414的页面地址PYNQ ZCU104启动页第二优先级Vitis AI仓库或 release 页面Vitis AI version compatibility页面第三优先级Vivado / Vitis / common image下载页9. 本次整理用到的来源以下来源均为官方页面或官方仓库AMD PG338 DPUCZDX8GAMD UG1414 Vitis AIXilinx / AMDDPU-PYNQGitHub 仓库与 ReleasesXilinx / AMDPYNQ官方文档与 ReleasesAMD / XilinxVitis AI官方文档AMD Vivado / Vitis 官方产品页另外还结合了你本机已经存在的本地文件E:\0Project\DPU-PYNQ\boards\DPUCZDX8G\...10. 本次未执行的动作按你的要求以下动作全部跳过自动下载 GitHub release 资产自动下载 AMD 安装器自动下载 common image任何需要你额外授权的联网写盘操作如果你回来后要我继续我下一步最顺手的工作是二选一直接把这个临时目录里的内容再压缩成一份“只保留最关键链接和本地入口的超短版”继续往下做成“ZCU104 单核 B4096 的实操清单该改哪个文件、改什么、产出什么”