当前位置: 首页 > news >正文

3-基于FZ3B的Vitis AI DPU加速平台搭建

基于FZ3B的Vitis AI DPU加速平台搭建

  • 0 前言
  • 1 环境搭建
  • 2 具体部署-面向硬件开发者
    • 2.1 Vivado最小系统构建
    • 2.2 Petalinux工程构建
  • 3 遇到的问题

0 前言

DPU 的部署通常可分为两条技术路线:① Vivado → Vitis → PetaLinux,② Vivado → PetaLinux。这两种体系的存在,旨在分别服务于硬件开发工程师与软件开发工程师的开发需求。前者强调底层的硬件设计与优化,适合具备 FPGA 开发经验的人员;而后者则更侧重于基于 Vitis AI 的软件应用开发,使开发者无需深入了解 FPGA 细节也能快速上手。

然而,由于 Xilinx 官方在 Vitis AI 相关资料的组织和维护方面存在一定混乱,导致用户在实际部署过程中常常遇到困扰。因此,整理一套清晰、详细的运行流程具有重要意义,有助于提升开发效率并降低系统集成的复杂度。

1 环境搭建

根据官方文档 UG1414 的说明,搭建 Vitis AI 环境有最低系统要求限制。此外,不同版本的 DPU 还对所需的 Xilinx 工具链(包括 Vivado、Vitis 和 PetaLinux)版本以及 Linux 系统内核版本提出了明确要求(不要抱有侥幸心理,三者之间依赖关系很强)。以 Vitis AI 1.4 至 2.0 为例,建议使用 Xilinx 2021.2 工具链版本,并搭配 Ubuntu 18.04Ubuntu 20.04 作为开发主机的操作系统,以确保各组件间的兼容性和工具运行的稳定性。DPU与环境要求

在这里插入图片描述

在这里插入图片描述

2 具体部署-面向硬件开发者

2.1 Vivado最小系统构建

根据所选用的 DPU 版本与型号的不同,需前往 Xilinx 官网下载对应版本的资源包,并将 DPU IP 核路径添加至 Vivado 的 IP 仓库中,以便在 Block Design 中调用使用。在完成最小系统的构建基础上,仅需额外添加少量必要接口,即可满足 DPU 的部署需求。这些接口包括:

  • 中断信号 irq
  • 两个 128-bit 数据位宽的高速端口 HP0HP1
  • 一个 32-bit 数据位宽的高速端口 HP2
  • 一个 32-bit 的主机端口 HPM0

时钟方面,DPU 所需的时钟信号可直接连接至 Processing System 中提供的 CLKx1CLKx2 时钟输出。

在这里插入图片描述

2.2 Petalinux工程构建

Vivado生成包含bit的xsa之后即可进行Petalinux的构建,一些基础的配置没有什么特殊的,可以直接查阅之前的文章

Vitis-AI-resource-2.0

Vitis-Tutorials-2.0

3 遇到的问题

1、Ubuntu20.04安装Xilinx卡在最后一步

缺少依赖库,需要先安装库再重新安装Xilinx。

2、综合过程失败

虚拟机配置的运存8G不够,需要增加到16G。

3、Vitis运行时失败

y2k22-Patch

http://www.lryc.cn/news/601261.html

相关文章:

  • Vscode的常用快捷键(摆脱鼠标计划)
  • CodeBLEU:面向代码合成的多维度自动评估指标——原理、演进与开源实践
  • Jmeter的元件使用介绍:(七)后置处理器详解
  • 【NLP实践】一、中文短句情感二分类实现并提供RestfulApi服务调用
  • Mitk教程案例项目编译
  • Java AI面试实战:Spring AI与RAG技术落地
  • 【Qt开发】信号与槽(二)-> 信号和槽的使用
  • LeetCode第349题_两个数组的交集
  • UDS 0x29 身份验证服务 Authentication service
  • KNN 算法中的各种距离:从原理到应用
  • Java面试全攻略:Spring生态与微服务架构实战
  • 零基础 “入坑” Java--- 十四、字符串String
  • docker-desktop引擎启动失败报wsl --update
  • 数独求解器与生成器(回溯算法实现)
  • 一文读懂 JWT(JSON Web Token)
  • Spring Boot2错误处理
  • Android网络框架封装 ---> Retrofit + OkHttp + 协程 + LiveData + 断点续传 + 多线程下载 + 进度框交互
  • 【AI阅读】20250717阅读输入
  • Linux YUM 安装:高效管理软件包的利器
  • 白杨SEO:搜索引擎优化中的allintitle是什么指令?有哪些用处?
  • 8. 状态模式
  • 【最新版】防伪溯源一体化管理系统+uniapp前端+搭建教程
  • ACL原理和配置
  • 【element-ui】HTML引入本地文件出现font找不到/fonts/element-icons.woff
  • 【lucene】MMapDirectory 在FSDirectory基础上干了啥?
  • 【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - 微博舆情分析实现
  • AI驱动的金融推理:Fin-R1模型如何重塑行业决策逻辑
  • listen() 函数详解
  • GPGPU基本概念
  • 深入解析 Vue 3 中 v-model 与表单元素的绑定机制