如何在IP Integrator中使用HLS IP

 

本文是一个复杂的FFT数据块的设计,介绍如何设计HLS IP,并且在IP Integrator中使用它来作一个设计——这里生成两个HLS blocks的IP,并且在一个FFT(Xilinx IP)的设计中使用他们...



概叙

通常来说,我们不仅要用高级综合package RTL,还可以利用内部IP Integrator。本文是一个复杂的FFT数据块的设计,介绍如何设计HLS IP,并且在IP Integrator中使用它来作一个设计——这里生成两个HLS blocks的IP,并且在一个FFT(Xilinx IP)的设计中使用他们,最终使用RTL testbench来验证设计。

Integrate带有Xilinx IP Block的 HLS IP

这里展示了在IP Integrator中,如何将两个HLS IP blocks跟Xilinx IP FFT结合在一起 ,并且在Vivado中验证设计。

Step 1: 创建 Vivado HLS IP Blocks

使用提供TCL脚本的Vivado IP,创建两个HLS block。脚本给这两个HLS设计运行HLS C综合,RTL co-simulation和package IP。

脚本完成后,会生成两个Vivado HLS project(fe_vhls_prj和be_vhls_prj),它们都包含Vivado IP。下面展示Vivado HLS IP blocks如何在IP Integrator中集成到设计,并且验证IP。

Step 2: Create a Vivado Design Suite Project

打开Vivado,创建New Project,在project setting选择:E:xilinx vivado HLSug871-design-files2016.1Using_IP_with_IPIlab1,然后选择RTL Project和 Do not specify sources at this time,最后在Board里选择ZYNQ-7 ZC702,点击finish

Step 3: Add HLS IP to an IP Repository

先后点击IP Catalog和IP Settings,在弹出的Project Settings窗口里,选择Repository Manager下面的Add Repository,分别添加lab1/hls_designs/fe_vhls_prj/IPXACTExport/impl/ip/ 和 lab1/hls_designs/be_vhls_prj/IPXACTExport/impl/ip/

Step 4: Create a Block Design for RealFFT

1.点击Create Block Design,并将Design name命名为RealFFT,选择Add IP,在搜索里输入Fast Fourier Transform

2.双击Fast Fourier Transform IP去打开Re-customize IP,设置Transform Length为512,并选择在Architecture Choice里选择Pipelined, Streaming I/O

3.在Implementation窗口里,将Control Signals设置ARESETN,在Throttle Scheme设置为Non Real Time

4.Add IP,搜索hls,将搜索到的两个IP添加进设计,然后连接HLS和FFT block的端口(连接如下),然后给hls_real2xfft的din_V_V 接口和Hls_xfft2real的dout_V 接口 选择Make External,添加外部接口并分别命名为eal2xfft_din和xfft2real_dout,同理给FFT的aclk和aresetn端口分别Make External,添加 constant IP,联线如下,最后点击Regenerate Layout

5.点击Validate Design,这时会出现一些 warnings,它们是跟FFT的 s_axis_config pin相关。
注意:这里xff的t配置接口悬空,这是因为由于本设计始终运行在默认模式,现在点击OK 关闭messages,然后点击File > Save Block Design。

6.在Sources窗口右击RealFFT.bd,并选择 generate output products,然后在Sources窗口给RealFFT.bd创建HDL Wrapper。

Step 5: Verify the Design

下面就是用realfft_rtl_tb.v验证设计
1.右击Sources窗口里的Simulation Sources,选择Add Sources,在弹出的窗口里选择Add or Create Simulation Sources,然后Add Files,选择Using_IP_with_IPIlab1verilog_tb文件夹,并选择Copy sources into the project

2.在Run Simulation里选择Run Behavioral Simulation,一旦simulation开始了,点击Run All就完成了simulation

总结

本文介绍了如何使用Tcl脚本创建Vivado HLS IP,如何使用IP integrator(IPI)导入创建好的设计,并且包括Xilinx IP和Vivado IP blocks,以及如何在IPI验证设计。

文章来源:weixin_36520607的博客

推荐阅读

好消息!Balser公司板级嵌入式视觉应用开发套件上市了!

面向机器学习、数据分析和视频流的赛灵思可重配置加速堆栈

新型集成数字解调器和JESD204B接口的超声模拟前端可使数据率和接口连接线最多降低80%

拥有5K 摄像头的大疆 Inspire 2 无人机—— Zynq SoC 提供内部“引擎”

【视频】在 Vivado 中使用 OpenCV 和 HLS

创图像分类速度新高:Kintex UltraScale FPGA+xDNN Library+AlexNet+Caffe

【视频】Xilinx产品二维码标记的使用方式介绍

【视频】Xilinx成本优化型 FPGA & SoC 产品组合:最新消息

利用Xilinx器件的INT8优化开展深度学习

【视频】采用 Xilinx FPGA 实现的机器学习加速图像分类

视频指导:怎样选择全可编程FPGA以及SOC器件系列

定点数在CNN网络应用,同等精度下性能提高了2-6倍


    关注 FPGA开发圈


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册