Vitis HLS跑通视觉加速例程(1)-demosaicing

作者:缘来是你远去是我,文章来源:CSDN博客

1. 新建工程

Project命名

时钟平台选择

2. 添加文件
从Vitis_Libraries-master\vision\L1\examples\demosaicing中复制所有的源文件到新建工程的目录E:\HLS_File\Ex02_demosaicing

添加文件后

引用单个HLS内核文件,引用 Vision 库(-cflags/-csimflags)
-IE:/HLS_File/Vitis_Libraries-master/vision/L1/include -I./. -D__SDSVHLS__ -std=c++14

内核文件CFLAS/CSIMLAGS设置

引用 Test bench文件,引用用于C仿真的Vision库,引用OpenCV 包含文件(-cflags/-csimflags)
-IE:/HLS_File/Vitis_Libraries-master/vision/L1/include -ID:/opencv/build_win10/install/include -I./. -D__SDSVHLS__-std=c++14

Test Bench文件CFLAS/CSIMLAGS设置

3. C-Sim
本部分通过将 HLS IP 和 Testbench 设计发送给编译器进行编译和执行,来执行 HLS 流的 C仿真阶段。此命令用于设置编译器链接器标志和 testbench文件,以及:(官方例程需要修改TB文件:xf:: cv::read为cv::read;xf:: cv::write为cv::write)

引用 OpenCV包含和预编译的库目录
-ldflags “-L D:/opencv/build_win10/install/x64/mingw/lib -lopencv_imgcodecs3411 -lopencv_imgproc3411 -lopencv_core3411 -lopencv_highgui3411 -lopencv_flann3411 -lopencv_features2d3411”

包括用于验证测试台的图像作为主要功能的参数
-argv “E:/HLS_File/Vitis_Libraries-master/vision/data/128x128.png”

C仿真参数设置

C仿真结果

4. C到RTL综合
本部分执行Vitis HLS C到 RTL合成阶段。此阶段不需要标志或选项。

RTL综合结果

5. C/RTL协同仿真
本部分在合成后执行 Vitis HLS IP的 RTL 协同仿真。HLS会自动根据 C testbench 生成RTL testbench进行协同仿真,以下指令用于设置编译器链接器标志和testbench文件,以及:

Co-sim仿真参数设置

Co-sim仿真结果

6. 过程遇到问题及解决方案
error: no matching function for call to 'imread(char*&, int)'
解决方法:xf:: cv::read为cv::read;xf:: cv::write为cv::write

参考:no matching function for call to ‘transform - 程序园 (voidcn.com)

在G ++编译命令中包含-std = c ++ 0x的意义是什么?
解决方法:默认情况下,GCC编译C++代码为 gnu++ 98 ,这是一种奇怪的方式说C++ 98标准加上大量的gnu extenstions。你可以使用-std=?向编译器说明应遵循的标准。不要忽略 -pedantic ,否则会违反标准。你可以选择的选项:

standard with gnu extensions
c++ 98 gnu++ 98
c++ 03 gnu++ 03
c++ 11(c++ 0x)gnu++ 11(gnu++ 0x)
c++ 14(c++ 1y)gnu++ 14(gnu++ 1y)

warning: variable templates only available with -std=c++14 or -std=gnu++14
解决方法:修改C++编译设置-std = c ++ 0x为-std = c++14

参考文献
Vitis_Libraries_2020.2https://github.com/Xilinx/Vitis_Libraries/tree/2020.2
https://github.com/Xilinx/Vitis_Libraries/tree/2020.2
OpenCV 3.4.11https://github.com/opencv
https://github.com/opencv
Vitis Vision | 利用Vitis HLS tcl shell 一键跑通视觉加速例程http://xilinx.eetrend.com/content/2020/100059904.html
http://xilinx.eetrend.com/content/2020/100059904.html
Vitis Unified Software Development Platform 2020.2 Documentation
https://www.xilinx.com/html_docs/xilinx2020_2/vitis_doc/index.html

最新文章

最新文章