hls中c语言的用法,HLS学习日记(一)走一遍形式

英语水平太差真是个硬伤,每次看xilinx的文档简直就是地狱一样,以前总能找到一些大神的博客来解救,但现在开始学习HLS几乎没有什么中文资料,只能啃着英文的,效率不得不说是太低了,特别是一些优化功能啥的,就算每个单词会了但还是不明白整体的意思,希望多看几份文档会好一些吧QAQ~为了放止自己忘记学过的东西,所以这里写点日记备忘一下哈哈。

学习HLS主要看的是ug871和ug902两个文档,好吧一个200+页一个600+页,不一边实践一边看我估计是撑不下去的了。

简单看了一下两个文档,惯例先自己写个简单的程序熟悉一下过程。

这里写一个简单的两个数组相加的程序,转换成逻辑就是将两个ram或rom中的数据相加存入另一个ram中。

新建工程,添加add.cpp,add_tb.cpp,整个结构和vivado中写testbench差不多,不过只是将hdl语言换成了c语言了而已,虽然功能部分c语言部分感觉很抽象,但testbench用c语言写感觉挺符合逻辑的,verilog中的initial语句这种串行执行的方式本来就像是c语言的风格。

工程:

hls中c语言的用法,HLS学习日记(一)走一遍形式_第1张图片

代码:add.cpp

#include "add.h"

void add_arary(data_t src1[16],data_t src2[16],data_t dst[16])

你可能感兴趣的:(hls中c语言的用法)