有关HLS的详细认识,可参考:
FPGA基础之HLS
工具所需:
环境测试
在quartus安装路径的【hls】目录下,打开【cmd】;
点击回车;进入如示终端界面
初始化环境:
方式一:双击脚本文件【运行结束自动退出】
方式二:使用指令执行脚本
init_hls.bat
进入counter目录下
双击打开
输入指令,终端进入该目录
cd examples\counter
i++ -march=x86-64 counter.cpp
a.exe
输入指令
i++ -march=CycloneV counter.cpp
i++ -march=CycloneV counter.cpp -ghdl //加-v可以显示编译过程
进入波形文件目录
cd a.prj\verification
dir
vsim vsim.wlf
cd examples\image_downsample
输入指令,执行脚本
生成【test-x86-64.exe】,运行可执行文件
test-x86-64.exe
i++ main.cpp bmp_tools.cpp resize.cpp
查看生成文件
运行可执行文件
结果显示【test.bmp】输入输出压缩操作一样
cd YUV2RGB
build.bat
test-x86-64.exe
image_in.bmp
注意:运行全程终端需保持开启状态。
有关VScode配置C语言编译环境,可参考:
VScode搭配python&C#编译环境
新建工程,用VScode打开【源码】
#include
#include
int add(int a,int b)
{
return a+b;
}
int main()
{
int i;
int a,b,ret;
for(i=0;i<10;i++)
{
a = rand()%10;//产生小于10的随机数a
b = rand()%10; //产生小于10的随机数b
ret = add(a,b);
printf("%d + %d = %d\n",a,b,ret);
}
return 0;
}
#include
#include
#include"hls\hls.h"
component int add(int a,int b)
{
return a+b;
}
int main()
{
int i;
int a,b,ret;
for(i=0;i<10;i++)
{
a = rand()%10;//产生小于10的随机数a
b = rand()%10; //产生小于10的随机数b
ret = add(a,b);
printf("%d + %d = %d\n",a,b,ret);
}
return 0;
}
补充:如果源码的【#include"hls\hls.h"】有错,则需要导入quartus安装路径的【hls】下的【include】文件路径。
①
②
③
④
⑤
即可解决导入文件报错问题。
打开终端,右下角选择cmd
进入hls所在目录
初始化
切换回工程路径
运行程序
i++ -march=x86-64 add.cpp
a.exe
i++ -march=CycloneV add.cpp
a.exe
i++ -march=CycloneV add.cpp -ghdl -v
a.exe
cd a.prj\verification
dir
进入仿真文件所在目录,运行指令
vsim vsim.wlf
简单认识一下这四个文件夹
①components【类似FPGA的IP目录,可直接使用】
②quartus【存放生成的FPGA工程文件以及Verilog文件】
双击打开工程,直接全编译即可
③reports【报告文件,资源占用及其他逻辑分析】
进入如示网页
④verification【存放波形以及类仿真文件】
仿真测试文件