Vivado HLS 2018.3下xfopencv库使用问题总结

    • HLS开发环境配置
    • 版本选择
    • 例程工程配置流程
    • 注意事项

HLS开发环境配置

项目 版本
系统 Windows 10
软件 Vivado_2018_3
xfopencv 2018.3

xfopencv 2018.3 下载链接: 2018.3.

版本选择

使用Vivado HLS 2018.3调用xfopencv库必须使用2018.3版本,使用2019.1版本以上或者2018.2版本会有报错,兼容性不是很好,可以通过Xilinx论坛可以解决部分共性问题,但经测试使用2018.3最好。

例程工程配置流程

  1. 下载xfopencv2018.3的库文件,将库文件存放在X:/Xilinx/xfopencv_master下;
  2. 打开Vivado HLS 2018.3程序,选择工程文件目录,命名;
  3. 添加源文件,添加TestBench文件;

注意事项

  1. 本次测试使用的是xfopencv文件夹下的HLS_Use_MODEL文件下的Standalone_HLS_Example,将图片转换为灰度图片;
    注: 不要使用AXI_Sample,该例程是将文件配置为使用AXI接口协议的IPcore,直接使用测试图片会报错。
  2. 可以使用2018.2或2018.3,在使用2018.2时需要在cpp文件后添加:
-I <include path> -D __XFCV_HLS_MODE__ -std=c++0x  #2018.3版本以后在指令中不需要加--std=c++0x
  1. 如果遇到函数或变量未声明问题,请检查头文件,例如cvMat2Videoxf需要添加“common/xf_axi.h”;

  2. Vivado软件中能够实时更新代码的报错,要灵活运用报错标注 。

  3. xfOpenCV Standalone_HLS_AXI_Example C 仿真没错,综合分析时报错
    ERROR: [XFORM 203-191] Unsupported pointer usage: '' used by 'imgOutput1.data.chnl.V.load' in function 'ip_accel_app' .
    ERROR: [HLS 200-70] Synthesizability check failed.
    需要添加“xf_ip_accel_app.h”到Synthesis Source C/C++Files下
    在这里插入图片描述

  4. Cannot find the top function报错代码如下:
    ERROR: [SYNCHK 200-79] Cannot find the top function 'svm_classify' in the design. Possible causes are: (1) the top function name is misspelled; (2) the top function is nonexistent or declared as static.
    ERROR: [HLS 200-70] Synthesizability check failed.
    注: You should check it in Project Settings - Synthesis - Top Function.

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐