博客
Xilinx提供了一些基础的开发板平台内嵌在Vitis IDE中,用户可以直接从这些platform创建应用程序。但如果是自定义的板卡或者想要部署更多加速器IP、配置不同的性能,我们就需要创建完全自定义的硬件平台。本文介绍创建Vitis AI硬件平台的基本步骤。
经过前面的实验,我们已经基本摸清楚了Vitis IDE & Vivado的使用方法。在开始构建DPU与深度学习软件栈之前,我们先对我们拿到的开发板做个体检(硬件全面测试),由于大部分深度学习软件框架都是运行在Linux, android或IOS等嵌入式系统上,因此测试完硬件后还需要搭建一个Linux系统以供后续开发使用。
本系列笔记旨在更深入的探索Vitis以及Vitis内部所使用到的技术,本系列主要针对深度学习部署进行探索,比如自定义自己的深度学习硬件平台,深度学习模型量化、模型编译、TVM自动调优,多DPU核异构系统的调度计算等等。
Vitis AI开发套件提供high-leve C++/Python APIs(VART)进行从云到边器件开发。对于边缘DPU,除了VART,还可以使用advanced low-level C++/Python APIs。
本文以XC7A35TFGG484-2这款芯片为例,采用米联客FPGA开发板,用MIG核驱动DDR3内存。FPGA外接的晶振大小为50MHz,DDR3内存的驱动频率(ddr3_ck_p和ddr3_ck_n)为400MHz。选用的DDR3内存型号为MT41K128M16,内存容量为256MB。
在Vitis下运行DNNDK例程时,(例程地址https://github.com/Xilinx/Vitis-In-Depth-Tutorial/blob/2020.1/Vitis_Pla…)运行到编译时,(20 Right click the hello_dpu project folder and select Build Project)一直出如下错误
Vitis统一软件平台将Xilinx各种软件统一,即支持Vitis嵌入式软件开发流程,又支持Vitis应用软件加速开发流程。本文介绍Vitis嵌入式软件中的linux应用程序开发流程。
PYNQ结合了Zynq与Python的优势,是机器学习/人工智能、边缘计算、大数据处理等算法加速的优秀平台。PYNQ这个名字来自于Python productivity for Zynq,PYNQ使用Python语言简化了Zynq应用程序开发过程。
Vitis官方文档主要有两个ug1400和ug1393 ,ug1400主要针对嵌入式软件设计,ug1393针对应用加速设计。本文结合以上两个文档,主要针对Zynq®-7000 SoC,和Zynq® UltraScale+™ MPSoCs应用加速开发流程进行简要介绍。
布局规划是为设计增加布局布线约束的过程。一个大型高速设计的布局规划是实现时序收敛的关键。好的布局规划可以大大提高设计性能,并确保设计结果的质量。差的布局规划具有相反的效果,使其无法满足时序约束,并导致设计结果与预期不符
Xilinx工具最新版本已经更新到2020.2,我之所以安装2020.1主要是因为PYNQ最新版本V2.6支持2020.1,今年会做一些PYNQ相关的开发。
在文章中如何将zcu106例程移植到自定义单板,描述了如何在自定义单板平台构建硬件平台、软件系统添加配方,运行zcu106例程。实现过程很复杂。zcu106单板的bsp不能直接用在习惯单板上呢?下面是我做的一些试点,大家可以参考。