Tronlong

  • 626 主题
  • 641 帖子
  • 4650 积分
  • 身份:LV5 资深技术员
  • 论坛新秀 灌水之王
  • E币:2090

FPGA的HLSHLS基本开发流程|基于Kintex-7、Zynq-7045_7100开发板

2021-2-19 19:15:16 显示全部楼层
FPGA的HLS案例开发|基于Kintex-7、Zynq-7045_7100开发板
前 言
本文主要介绍HLS案例的使用说明,适用开发环境:Windows 7/10 64bit、Xilinx Vivado 2017.4、Xilinx VivadoHLS 2017.4、Xilinx SDK 2017.4。
Xilinx Vivado HLS(High-Level Synthesis,高层次综合)工具支持将C、C++等语言转化成硬件描述语言,同时支持基于OpenCL等框架对Xilinx可编程逻辑器件进行开发,可加速算法开发的进程,缩短产品上市时间。

HLS基本开发流程如下:
(1) HLS工程新建/工程导入
(2) 编译与仿真
(3) 综合
(4) IP核封装
(5) IP核测试
基于创龙科技TLK7-EVM开发板,是一款基于Xilinx Kintex-7系列FPGA设计的高端评估板,由核心板和评估底板组成。核心板经过专业的PCB Layout和高低温测试验证,稳定可靠,可满足各种工业应用环境。
评估板接口资源丰富,引出FMC、SFP+、PCIe、SATA、HDMI等接口,方便用户快速进行产品方案评估与技术预研。


2b1089f953085528e785210e944df1bf.png

图1  TLK7-EVM评估板

开发案例主要包括:
l CameraLink、SDI、HDMI、PAL视频输入/输出案例
l 高速AD(AD9613)采集+高速DA(AD9706)输出案例
l AD9361软件无线电案例
l UDP(10G)光口通信案例
l UDP(1G)光口通信案例
l Aurora光口通信案例
l PCIe通信案例
l 案例源码、产品资料(用户手册、核心板硬件资料、产品规格书):site.tronlong.com/pfdownload
HLS案例位于产品资料“4-软件资料\Demo\FPGA-HLS-demos\”目录下,案例目录详细说明如下表。

表1
hls_ip_demo
bin
IP核测试程序可执行文件
project
IP核测试程序Vivado工程
vivado_hls
ip_package
IP核
poject
solution1
仿真方案
src
HLS工程源码
test_bench
HLS工程仿真程序或测试文件
vivado_hls.app
HLS工程文件
HLS详细开发说明可参考产品资料“6-开发参考资料\Xilinx官方参考文档\”目录下的《ug871-vivado-high-level-synthesis-tutorial.pdf》和《ug902-vivado-high-level-synthesis.pdf》。


HLS工程导入
双击桌面如下图标打开Xilinx Vivado HLS 2017.4,并在弹出的界面中点击“Open Project”选择案例“vivado_hls\project\”目录,然后点击“确定”导入HLS工程。

5cd0e9b3a1c6fcc74ea8a2d00ed15c69.png
图2

47fbf0e15dc6a7fa27dd586d6b3834c7.png
图3

f21d64e4fc63667b4fd98e08daca43f6.png
图4
亦可新建HLS工程,并使用C/C++等语言进行程序编写。
IP核测试
进入案例“hls_ip_demo\project\”的IP核测试程序Vivado工程目录,双击.xpr文件打开工程,工程默认已添加待测试的IP核。

12e66e4fd88d8c2a12e74be6372c53f0.png

图17
如需自行导入IP核,请参考如下步骤。

(1) 请点击“IP Catalog -> User Repository -> Add IP to Repository…”,在弹出的界面中选择IP核后点击OK。
60143e099d918610cf9fd5e9f38e56e4.png

图18
5e3f59c944e9fb97971719de26f2e15f.png
图19
(2) 右击“User Repository”后点击“Refresh Repository”,即可看到添加的IP核。
41b031654b2200e641af211f216e07ea.png

图20
6fddaac6273dffceed21d39f35b29484.png
图21

(3) 如需添加Vivado自带的IP核,点击“Open Block Design”,在弹出的界面中点击,并选择所需IP核将其导入工程。

335fe621da67ef30673e79a335184c23.png

图22
e5cf4332116faf928a070f69c60eb874.png
图23
点击Vivado界面左侧的“Generate Bitstream”选项,在弹出的界面中点击OK进行IP核测试程序Vivado工程编译。
c516ff5bc9a460f969dc1ab18d1fc1fe.png


图24

10925af6c52d299d3a1f973b537376ca.png
图25

编译完成后,将会在工程“led_flash.runs\impl_1\”目录下生成.bit和.bin格式可执行文件。

78afb06517e315f100c4ed6a9737e159.png

图26

请参考基于Vivado的FPGA程序加载与固化手册加载.bit格式可执行文件,即可看到评估底板的LED2进行闪烁。


编译和仿真C代码
仿真程序位于工程的test_bench目录下,用于验证src目录下的HLS工程源码。
导入HLS工程后,点击(Run C Simulation)进行编译与仿真。

23f038f0ad48858b594026c869382e35.png
图5

弹出如下界面,勾选“Launch Debugger”,并点击OK。

b965f42baa7dd6db858ef457915d1376.png
图6

编译完成后即可全速或单步运行仿真代码。
fa0e81f445bc85f9ab9427a840c4a41f.png
图7


综合
本小节演示将C/C++等程序综合成为RTL设计,并生成综合报告。
点击界面右上角Synthesis返回至工程界面,然后点击进行综合。

355d0259e6037c436f0b7e7d98ca842a.png
图8

893ac7c1726ede895caa7043ffc3f467.png

图9

综合完成后,报表文件将自动打开。

e3759b3fb927c4f5f95dd3a81802d2d5.png
图10

通过报表文件可查看本设计的时延、资源占用等信息。

ae6d29623ba660e71539698b3699b907.png

图11



IP核封装
综合完成后,点击生成IP核。
ff98f05e5d091cc26d1ec9946fedf4c9.png

图12

a6e1d2f9c12c92ae4bd4397da731e96a.png
图13
1e2ce656f2da1dd82f1ad0aa376b94e4.png
图14
运行完成后,将会在案例“vivado_hls\project\solution1\impl\ip\”目录下生成IP核。
e90d59023fd19186ee3dbee7db77841e.png

图15
7921f11e9fa581597bffcf26a73580fd.png
图16


l 更多推荐
4df7c8aff705737e56825d2b2faf11b1.png

图27

您需要登录后才可以评论 登录 | 立即注册

最新评论

楼层直达:
快速回复
0
1
广告
关闭 热点推荐上一条 /3 下一条
快速回复 返回列表