马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
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 |