当前位置:   article > 正文

第11周-HLS入门实践之Intel FPGA的HLS实验_hls硬件调试

hls硬件调试

一、简答

1. HLS是什么?与VHDL/Verilog编程技术有什么关系?

高层次综合(High Level Synthesis,
HLS)是Xilinx公司推出的最新一代的FPGA设计工具,它能让用户通过编写C/C++等高级语言代码实现RTL级的硬件功能。

Verilog或VHDL与HLS相比,就好比是几十年前的汇编语言与C语言。RTL设计需要了解VHDL和Verilog等语言,而HLS工具通常使用熟悉的语言,如C/ C++。HLS工具可以处理大多数特定于硬件的实现细节,因此大大降低了软件工程师处理硬件项目的门槛。但与VHDL/Verilog相比,HSL能实现的优化十分有限。

在这里插入图片描述

理想的方法是将 HLS 代码用于计算密集型部分与手工制作的用于逻辑控制和存储器管理的 HDL
实现相结合。但是,当内存管理和控制逻辑是应用程序实现过程中最复杂,最耗时的部分时(如本文所说),与纯 HDL
设计相比,混合方法可能不会增加太多价值。此外,在这种方法中,HDL 模块将被视为 HLS 设计中的黑匣子,从而阻碍了该工具重新使用 HDL
模块消耗的资源的努力。

2. HLS有哪些关键技术问题?目前存在什么技术局限性?

HLS协议的小切片方式会生成大量的文件,存储或处理这些文件会造成大量资源浪费。如果要实现数天的时移,索引量将会是个巨额数字,并明显影响请求速度。因此,HLS协议对存储I/O要求相当苛刻。

目前存在的技术局限性:HLS技术无法直接用于布局布线之后的综合,高级语言仍然需要转换成硬件描述语言。并且一般的C语言学习不会涉及到地址映射、Avalon总线等,开发起来具有一定难度。

二、环境搭建

如果卸载了VS还需得重新安装上VS2010,可以去微信公众号“软件管家”处找到安装包

1、初始化

打开系统命令管理器cmd,定位到init_hls.bat的路径,并运行

d:
cd D:\intelFPGA\18.1\hls
init_hls.bat

  • 1
  • 2
  • 3
  • 4

在这里插入图片描述
查看路径和环境变量,找到init_hls.bat
在这里插入图片描述
在这里插入图片描述

2、编写测试文件

在D盘新建文件夹prj(英文路径下就可以),创建test.cpp,编写如下乘法器代码:

#include “HLS/hls.h”
#include “stdio.h”

component int mul(int a,int b)
{
int c =0;
c = a*b;
return c;
}
int main()
{
int a=0,b=0,c=0,i=0;
for(i=0;i<5;i++)
{
a= i+1;
b= i+2;
c = mul(a,b);
printf("%d * %d = %d\n",a,b,c);
}
return 0;
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22

3、编辑测试文件

1.切换到刚刚新建的工程目录,输入i++ -march=x86-64 -o mul.exe test.cpp,生成exe文件

d:
cd D:\Hproject\prj
i++ -march=x86-64 -o mul.exe test.cpp 用于生成mul.exe文件

  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

在这里插入图片描述

2.运行mul.exe文件

mul.exe

  • 1
  • 2

在这里插入图片描述

3.生成镜像文件
输入i++ -march=CycloneV -o mul test.cpp -ghdl

i++ -march=CycloneV -o mul test.cpp -ghdl

  • 1
  • 2

在这里插入图片描述

在这里插入图片描述

4.继续运行mul.exe文件,产生波形文件vsim.wlf

mul.exe

  • 1
  • 2

在这里插入图片描述

在这里插入图片描述

5、查看报告

在这里插入图片描述
在这里插入图片描述
6、导入自编辑IP核
将生成的 components 文件夹的路径导入到quartus中
Tools–>Options–>IP Setting–>IP Catalog Search Locations
在这里插入图片描述
在这里插入图片描述

三、小结

通过本实验的学习,学会了HLS开发环境的搭建。

参考链接

https://blog.csdn.net/han422858897/article/details/117106846?utm_source=app&app_version=4.7.1&code=app_1562916241&uLinkId=usr1mkqgl919blen

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/代码探险家/article/detail/744677
推荐阅读
相关标签
  

闽ICP备14008679号