HLS学习笔记——vivado HLS的Design Flow案例

HLS学习笔记——vivado HLS的Design Flow案例_第1张图片
对于只有少量逻辑功能的函数会被inline的调用函数中,在log输出中可以看到inlining的信息。可以通过Directives将HLS INLINE功能关闭,该函数就不会被inline掉。
HLS学习笔记——vivado HLS的Design Flow案例_第2张图片

案例

分别是头文件、源文件和TestBench。
HLS学习笔记——vivado HLS的Design Flow案例_第3张图片
HLS学习笔记——vivado HLS的Design Flow案例_第4张图片
HLS学习笔记——vivado HLS的Design Flow案例_第5张图片

创建工程

HLS学习笔记——vivado HLS的Design Flow案例_第6张图片
HLS学习笔记——vivado HLS的Design Flow案例_第7张图片
添加顶层函数:
HLS学习笔记——vivado HLS的Design Flow案例_第8张图片
加入testbench
HLS学习笔记——vivado HLS的Design Flow案例_第9张图片
创建Solution,用于迭代开发
HLS学习笔记——vivado HLS的Design Flow案例_第10张图片
执行C的仿真
HLS学习笔记——vivado HLS的Design Flow案例_第11张图片
执行综合
HLS学习笔记——vivado HLS的Design Flow案例_第12张图片
HLS学习笔记——vivado HLS的Design Flow案例_第13张图片
C和RTL联合仿真
HLS学习笔记——vivado HLS的Design Flow案例_第14张图片
查看波形
HLS学习笔记——vivado HLS的Design Flow案例_第15张图片

迭代优化

创建新的solution
HLS学习笔记——vivado HLS的Design Flow案例_第16张图片
在代码中放置标签,可以方便在Dircetive找到相应的结构进行优化。
HLS学习笔记——vivado HLS的Design Flow案例_第17张图片
HLS学习笔记——vivado HLS的Design Flow案例_第18张图片
两个Solution进行对比分析
HLS学习笔记——vivado HLS的Design Flow案例_第19张图片

两种Dircetive使用方法

HLS学习笔记——vivado HLS的Design Flow案例_第20张图片
HLS学习笔记——vivado HLS的Design Flow案例_第21张图片

HLS学习笔记——vivado HLS的Design Flow案例_第22张图片

HLS学习笔记——vivado HLS的Design Flow案例_第23张图片

Xilinx官方文档
ug871(v2018.1) High-level Synthesis Tutorial Ch3: C Validation Lab 1, Lab 2, Lab 3

学习笔记相关链接:
Design Flow of Vivado HLS
Coding Style of C Synthesis
Optimization Methods of for-loop
Optimization Methods of Array
I/O Port Implementation

你可能感兴趣的:(FPGA开发,HLS)