基于Vitis硬件加速平台测试用例-vector-add

14 篇文章 0 订阅
9 篇文章 1 订阅

1、参考官方网站
https://forums.xilinx.com/t5/Design-and-Debug-Techniques-Blog/Creating-an-Acceleration-Platform-for-Vitis-Part-One-Creating/ba-p/1138208
https://www.xilinx.com/html_docs/xilinx2020_2/vitis_doc/embeddedplatforms.html
https://www.hackster.io/mohammad-hosseinabady2/ultra96v2-linux-based-platform-in-xilinx-vitis-2020-1-06f226
2、软件版本
vitis:2020.01
petalinux:2020.01
XRT:2020.01
3、这个东西的意义我觉得就是软件在运行时,将一些适合用pl加速的功能卸载到逻辑端运行,使cpu解放出来做其他的事情,所以在vivado建立平台时,要描述好预留的输入输出接口,不同频率的时钟还有就是中断,方便数据的输入和输出。
4、新建vivado工程
板卡为自定义,芯片为xczu3eg-sfvc784
(1)vivado中自选外设uart eth usb sd dp pcie(ssd),其实只选择uart和sd即可。
在这里插入图片描述
(2)新建clk
在这里插入图片描述
(3)新建中断控制器,并修改中断输出接口
在这里插入图片描述
(4)工程整体连接
在这里插入图片描述
(5)选择paltform,使下面的接口全部enable,这是硬件平台的数据和时钟接口,时钟接口需要选择一个默认的时钟频率,并设定为default。

set_property PFM.IRQ {intr {id 0 range 31}} [get_bd_cells /axi_intc_0]

此命令是类似于上述,使32个中断也全部enable。
在这里插入图片描述
(6)设置一些属性

set_property platform.default_output_type "sd_card" [current_project]
set_property platform.design_intent.embedded "true" [current_project]
set_property platform.design_intent.server_managed "false" [current_project]
set_property platform.design_intent.external_host "false" [current_project]
set_property platform.design_intent.datacenter "false" [current_project]

(7)生成bit流。
(8)导出xsa文件,至此,vivado的工作结束。
在这里插入图片描述
5、新建petalinux工程
(1)当执行到petalinux-config --get-hw-description= 的命令后
在project-spec/meta-user/conf/user-rootfsconfig文件中,加入

CONFIG_xrt
CONFIG_xrt-dev
CONFIG_zocl
CONFIG_opencl-clhpp-dev
CONFIG_opencl-headers-dev
CONFIG_packagegroup-petalinux-opencv

(2)运行petalinux-config -c kernel
将cma大小调整为512
(3)运行petalinux-config -c rootfs
在User Packages中,使能全部
在这里插入图片描述
(4)修改设备树,增加eth,usb3.0,sd的说明,zocl和中断号。
在这里插入图片描述
(5)petalinux-build
(6)petalinux-build --sdk
(7)petalinux-package --sysroot
至此,petalinux的工作结束。
6、新建vitis工程 运行软件前

export LIBARARY_PATH=/usr/lib/x86_64-linux-gnu

否则,在运行emulation hw时 报错!

(1)新建xrt文件夹,在此文件夹中新建文件夹linux_xrt,在此问价夹中新建boot和image两个文件夹
(2)在xrt文件夹中新建vitis工程,将petalinux工程中,image/linux文件夹中生成的4个elf文件拷贝到boot文件中,将boot.scr image.ub rootfs.cpio.gz拷贝到image文件夹中,其实放在一起也是可以的。
在这里插入图片描述
在这里插入图片描述

(3)将petalinux工程的build文件夹中的bootgen.bif文件拷贝到boot文件夹中,并做修改
在这里插入图片描述
此处注意,一定要用绝对路径,否则最后编译错误,其中的bitstream也必须是这个,不能指定,否则最后在运行程序时会挂到下面
在这里插入图片描述
(4)新建工程后,选择bif文件,选择对应的路径,文件系统,sysroot 路径选择petalinux工程sdk路径下的aarch64,配置完成后,选择build,当vivado工程改变时,需要同时更新xsa文件。
在这里插入图片描述
(5)新建应用,选择此平台,选择vector_add的模板,选择对应的路径,所需的文件都在image问价夹中。下图的路径改变是自动的,当编译一次成功以后,就会改变。
在这里插入图片描述
(6)选择锤子右侧的下三角,选择hardware选项进行build。
(7)等待build成功,至此,vitis的工作结束。
在这里插入图片描述
7、应用测试
(1)在vitis工程,hardware,package文件夹下有sd_card.img文件,可通过win32disk等工具对sd卡进行烧录
(2)或者分区sd卡,第一分区为fat,将sd_card文件夹下的五个文件全部拷贝到fat分区。
(3)以上两种操作后,sd内的文件是一样的。
(4)开机
在这里插入图片描述
inin.sh中的内容是
export XILINX_XRT=/usr
(5)其中直接运行
export XILINX_XRT=/usr
与以下运行方式效果是相同的,而且必须配置XRT的运行环境。
在这里插入图片描述
(6)运行demo

在这里插入图片描述
(7)测试成功。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值