zl程序教程

您现在的位置是:首页 >  Java

当前栏目

Vitis Library你用了吗?

2023-02-18 16:37:38 时间

对于传统的RTL代码开发方式,Vivado提供了很多IP,这些IP已经通过验证,可以快速地布署在用户的设计中,从而加速开发进程,缩短开发周期。那么对于HLS开发方式,是否也有类似的IP呢?答案的肯定,这就要提到Vitis Library了。

Vitis Library具体网址如下:

https://github.com/Xilinx/Vitis_Libraries

从基本的矩阵运算到编解码,从数据分析到数据压缩,从数字信号处理到高性能计算,从矩阵分解到图形/视频处理均包含其中。这其实可以理解为C++版本的IP,只是以C++函数的方式呈现而已。

这里我们以data_compression为例,点击会呈现如下内容:

其中L1面向硬件工程师,其下的代码可直接拿来在Vitis HLS下使用。L2和L3需要在Vitis下使用。这里我们重点介绍如何使用L1的代码,对一些IP的性能进行评估。L1下的文件结构如下图所示:

我们在做性能评估时可以直接使用tests目录下的文件,如下图所示。

这里需要我们关注的就是run_hls.tcl文件。这个文件由一些Tcl脚本构成,其目的是创建Vitis HLS工程,并根据settings.tcl(该文件未列在tests目录下)的设置对工程进行相应的操作,包括C仿真、C综合、C/RTL协同仿真、Vivado综合和Vivado布局布线。用到的Tcl命令如下:

open_project 创建一个Vitis HLS工程

add_files 添加待综合的C文件

add_files -tb 选项-tb表明添加的是测试文件

set_top 设置待综合的顶层C函数

open_solution 创建一个新的solution

csim_design 执行C仿真

csynth_design 执行C综合

cosim_design 执行C/RTL协同仿真

export_design 导出设计

执行run_hls.tcl脚本需要打开Vitis HLS Command Prompt,如下图所示。将工作目录切换到run_hls.tcl所在目录下,运行如下命令:

vitis_hls -f run_hls.tcl

run_hls.tcl执行结束,可以通过命令vitis_hls -p打开Vitis HLS GUI界面。

vitis_hls -p lz4_compress_test.prj

这里-p后跟的字符串为工程名,可在run_hls.tcl中找到。

Vitis Library用户手册:

https://xilinx.github.io/Vitis_Libraries/

Copyright @ FPGA技术驿站

转载事宜请私信 | 获得授权后方可转载