Ultra96v2 petalinux 2019.2软件平台设计与调试

电子说

1.3w人已加入

描述

《含Wifi和DPU功能的Ultra96v2 Vitis AI Linux加速平台的设计与制作》-下

第二部分 Ultra96v2petalinux 2019.2软件平台设计与调试

2.2          petalinux 加速功能部分

2.2.1       加速功能根文件设置

2.2.2       编辑petalinux-image-full.bbappend文件

2.2.3       添加zocl设备树

2.2.4       删除chromium模块

2.2.5       生成SDK安装包

第三部分  Vitis AI Linux加速平台

3.1           准备工作

3.2           加速平台生成

第二部分

Ultra96v2 petalinux 2019.2软件平台设计与调试

2.2     petalinux 加速功能部分

2.1.1  加速功能根文件设置

我们直接通过文件操作来完成,同DPU根文件配置一样分为两步走。

首先在/project-spec/meta-user/conf/user-rootfsconfig中引入相应模块

#use the XRT and acceleration kernels.

CONFIG_xrt

CONFIG_xrt-dev

CONFIG_zocl

CONFIG_opencl-clhpp-dev

CONFIG_opencl-headers-dev

CONFIG_packagegroup-petalinux-opencv

参见下图中的#XRT部分

模块

然后在rootfs_config中添加该项,并置=y

Rootfs_config

CONFIG_xrt=y

CONFIG_xrt-dev=y

CONFIG_zocl=y

CONFIG_packagegroup-petalinux-opencv=y

CONFIG_opencl-clhpp-dev=y

CONFIG_opencl-headers-dev=y

2.1.2  编辑petalinux-image-full.bbappend文件

# acceleration

IMAGE_INSTALL_append= " opencl-headers"

IMAGE_INSTALL_append= " opencl-clhpp"

IMAGE_INSTALL_append= " ocl-icd"

IMAGE_INSTALL_append= " xrt"

IMAGE_INSTALL_append= " xrt-dev"

IMAGE_INSTALL_append= " zocl"

添加recipes-xrt文件夹

cp -rp../reference_files/platform_project/plnx/recipes-xrt project-spec/meta-user

模块

2.1.3  添加zocl设备树

我们需要改变Linux Device Tree,以便Xilinx Runtime kernel drivers能够被正确地探测到,在project-spec/meta-user/recipes-bsp/device-tree/files/system-user.dtsi文件中增加Zynq OpenCL node到设备树中。

&amba {

zyxclmm_drm {

compatible = "xlnx,zocl";

status = "okay";

reg = <0x0 0xA1000000 0x0 0x1000000>;

};

};

其地址及范围参见下图:

模块

2.1.4  删除chromium模块

在2018.3的以后官方版本中加入chromium模块,但所消耗的内存和硬盘高达50G以上,时间超级长,非普通电脑所承受,必须去掉。

模块

下面是我的电脑中编译过程中所记录的内存量。

模块

将packagegroup-petalinux-ultra96-webapp注释掉

模块

为保险起见,再加入语句IMAGE_INSTALL_remove=“packagegroup-petalinux-ultra96-webapp”

模块

经过以上配置后,就可以编译成功了。

模块

2.1.5   生成SDK安装包

john@john-virtual-machine:~/ultra96v2DPU/images/linux$ petalinux-build –sdk

运行时间大约一个小时

模块

模块

第三部分

Vitis AI Linux加速平台

3.1   准备工作

在pfm下建立文件夹boot和wksp1,

cd ultra96v2DPU
mkdir pfm
cd pfm
mkdir wksp1
mkdir boot

模块

模块

将/images/linux目录中的文件拷入boot文件夹

image.ub

zynqmp_fsbl.elf

pmufw.elf

bl31.elf

u-boot.elf

模块

模块

在/home/john/ultra96v2DPU/pfm文件夹用./sdk.sh安装根文件sysroots

模块

每次新打开终端,都需要运行环境变量

./home/john/ultra96v2DPU/pfm/environment-setup-aarch64-xilinx-linux

pfm文件夹里运行:

3.2   加速平台生成

vitis -workspace wksp1

模块

输入平台名称ultra96v2_plat

模块

指向硬件xsa文件

模块

模块

将下图右下方的各种目录设置好

模块

现在就可以编译平台了

模块

新建一个应用项目

模块

选中刚编译成功的平台

模块

模块

打开项目选用的我们刚完成编译的平台ultra96v2_plat的summary,可以看到这个平台的Category是Acceleration加速平台,操作系统是Linux。

完全符合要求,成功创建了ultra96v2 Vitis加速平台。

模块

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分