Vivado HLS在Visual Studio2019上的运行情况

本文介绍了如何在Visual Studio 2019中配置Vivado HLS库,并探讨了在VS中运行HLS代码的要求。内容包括配置HLS库的步骤、解决编译问题、在opencv调用中选择HLS还是C++原生函数的探讨,以及适合在VS中运行的HLS代码风格实例。
摘要由CSDN通过智能技术生成

Vivado HLS在Visual Studio2019上的运行情况

简介:本文探究Visual Studio对VIVADO HLS的支持情况。哪些风格的HLS代码可以在Visual Studio中运行。

目录:

1、在Visual studio中配置HLS库

2、探究问题小解决

3、opencv调用为HLS还是C++原配的opencv函数

4、Visual Studio可以运行HLS代码的要求

 

 

在Visual studio中配置HLS库

如何在Visual studio中配置HLS库,并且可以进行编辑,可参考:https://blog.csdn.net/qq_34142805/article/details/106739300

 

探究问题小解决

1、若:在Visual Studio中,验证程序正确,但是由于之前测试的文件出错,导致运行新的正确文件时,反复出现报错如下:

可能由于上次的编译或运行存在问题。使用清理的方法进行去除,让项目重头开始编译

 


VIVAODO在Visual Studio中可以实现部分的功能,但是很多函数不适用。Visual Studio可以运行什么风格的代码,具体探究如下:

 

opencv调用为HLS还是C++原配

现象:目前皮肤检测的HLS可行,高斯的HLS还不行

在环境内加入vivado的库后,使用hls_video的库。

现象:添加入vivado的库之后,原先在纯opencv环境下运行正常的程序,也无法正常工作。

判断原因:关于opencv的函数应该会优先调用hls_video库内置的opencv函数,导致容易出现问题。

 

Visual Studio可以运行HLS代码的要求

之后探究vivado中hls_video库内

视频课程源:http://xilinx.eetop.cn/category-83 目录 1 从软件工程师的角度来看 FPGA 架构 3 2 Vivado HLS的工作机制 5 3-4 HLS设计流程基本概念 9 5 任意精度数据类型 15 5.1 C语言支持的数据类型 15 5.2 sizeof()函数使用 16 5.3 设置Visual Studio支持任意精度数据类型 17 6 数组类型转换 17 6.1 变量的定义和初始化 17 6.2 定点数据类型 18 6.3 浮点数据类型的定义和初始化 19 6.4 隐式数据类型转换 19 6.5 显示数据类型转换 19 7 Vivado HLS中的复合数据类型 20 7.1 结构体 20 7.2 枚举类型 22 8 Vivado HLS中的C++基本运算 23 9 测试平台的基本架构 25 9.1 Test Bench 25 9.2 C Test Bench 26 10 测试激励 28 11 测试输出检测与格式控制 28 11.1 Scoreboard 28 11.2 输出格式控制 30 12 接口综合基本介绍 33 12.1 接口综合概述 33 12.2 block-level interface protocol和port-level interface protocol 34 13 接口综合之数组 35 14 接口综合案例演示 37 14.1 添加寄存器 37 14.2 添加时钟使能信号 38 14.3 指令优化 38 15 for循环优化-基本性能指标 40 15.1 基本衡量指标 40 15.2 for循环pipeline 41 15.3 for循环UNROLL展开 41 15.4 for循环变量i 42 16 for循环优化-循环合并 42 17 for循环优化-数据流 46 18 for循环优化-嵌套的for循环优化 54 18.1 循环嵌套类型 54 18.2 Perfect loop nest示例 55 18.3 Imperfect loop nest示例 56 19 for循环优化-其他优化方法 59 19.1 for循环的并行性 59 19.2 for循环pipeline时的rewind选项 61 19.3 for循环的循环边界是变量时处理方法 64 20 数组优化-数组分割 67 20.1 数组接口 67 20.2 数组分割 67 21 数组优化-数组映射和重组 69 21.1 数组的映射 69 21.2 数组的重组 72 21.3 综合对比 72 22 数组优化-其他优化方法 72 22.1 定义ROM 72 22.2 数组的初始化 74 23 函数层面优化 75 23.1 代码风格 75 23.2 Inline 75 23.3 Allocation 75 23.3 Dataflow 75 24 总结分析 77 24.1 改善吞吐率(Throughput) 77 24.2 改善时延(Latency) 78 24.3 改善资源(Area) 79
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值