本文主要介绍HLS案例的使用说明,适用开发环境:Windows 7/10 64bit、Xilinx Vivado 2017.4、Xilinx Vivado HLS 2017.4、Xilinx SDK 2017.4。
Xilinx Vivado HLS(High-Level Synthesis,高层次综合)工具支持将C、C++等语言转化成硬件描述语言,同时支持基于OpenCL等框架对Xilinx可编程逻辑器件进行开发,可加速算法开发的进程,缩短产品上市时间。
本次案例用到的是创龙科技的TLZ7x-EasyEVM-S开发板,它是一款基于Xilinx Zynq-7000系列XC7Z010/XC7Z020高性能低功耗处理器设计的异构多核SoC评估板,处理器集成PS端双核ARM Cortex-A9 + PL端Artix-7架构28nm可编程逻辑资源,评估板由核心板和评估底板组成。核心板经过专业的PCB Layout和高低温测试验证,稳定可靠,可满足各种工业应用环境。
TLZ7x-EasyEVM-S评估板
TLZ7x-EasyEVM-S评估板评估板接口资源丰富,引出千兆网口、双路CAMERA、USB、Micro SD、CAN、UART等接口,支持LCD显示拓展及Qt图形界面开发,方便快速进行产品方案评估与技术预研。
HLS基本开发流程如下:
HLS案例目录详细说明如下表。
表 1
目录 | 目录 | 文件/目录 | 说明 |
hls_ip_demo | bin或 hw/bin | xxx_xc7z010.bin/xxx_xc7z010.bit | xc7z010 PL端IP核测试可执行文件 |
xxx_xc7z020.bin/xxx_xc7z020.bit | xc7z020 PL端IP核测试可执行文件 | ||
project或 hw/project | xxx_xc7z010 | xc7z010 PL端IP核测试Vivado工程 | |
xxx_xc7z020 | xc7z020 PL端IP核测试Vivado工程 | ||
sw | bin | PS端IP核测试裸机可执行文件 | |
project | PS端IP核测试裸机工程 | ||
vivado_hls | ip_package | xxx.zip | IP核 |
project | solution | 仿真方案 | |
src | HLS工程源码 | ||
test_bench | HLS工程仿真程序或测试文件 | ||
vivado_hls.app | HLS工程文件 |
HLS详细开发说明可参考产品资料如下文档。
本章节以产品资料“4-软件资料DemoFPGA-HLS-demos”目录下的led_flash案例为例,演示HLS开发流程。此案例的功能是由PL端控制评估底板的LED2进行闪烁。
在此之前,请将对应案例目录拷贝至Windows非中文路径下。
备注:Windows路径有长度限制,路径太长将会导致工程打开出错。
在进行本文如下操作前,请先按照调试工具安装文档安装Xilinx Vivado开发工具包。本文默认使用创龙科技的TL-DLC10下载器进行操作演示。
双击桌面如下图标打开Xilinx Vivado HLS 2017.4,并在弹出的界面中点击“Open Project”选择案例“vivado_hlsproject”目录,然后点击“确定”导入HLS工程。
图 1
图 2
图 3
亦可新建HLS工程,并使用C/C++等语言进行程序编写。
仿真程序位于Test Bench目录下,用于验证Source目录下的HLS工程源码。
导入HLS工程后,点击(Run C Simulation)进行编译与仿真。
图 4
弹出如下界面,勾选“Launch Debugger”,并点击OK。
图 5
编译完成后,即可全速或单步运行进行仿真。
图 6
本小节演示将C/C++等程序综合成为RTL设计,并生成综合报告。
点击界面右上角Synthesis返回至工程界面,然后点击开始进行综合。
图 7
图 8
综合完成后,报表文件将自动打开。
图 9
通过报表文件可查看本设计的时延、资源占用等信息。
图 10
综合完成后,点击生成IP核。
图 11
图 12
图 13
运行完成后,将会在案例“vivado_hlsprojectsolution1implip”目录下生成IP核。
图 14
图 15
进入案例“hls_ip_demoproject”或“hls_ip_demohwproject”对应平台PL端IP核测试Vivado工程目录,双击.xpr文件打开工程,工程默认已添加待测试的IP核。
图 16
如需自行导入IP核,请参考如下步骤。
图 17
图 18
图 19
图 20
图 21
图 22
点击Vivado界面左侧的“Generate Bitstream”选项,在弹出的界面中点击OK进行PL端IP核测试Vivado工程编译。
图 23
图 24
编译完成后,将会在工程“led_flash.runsimpl_1”目录下生成.bit和.bin格式可执行文件。
图 25
参考PL端案例开发手册说明加载PL端.bit格式可执行文件,即可看到评估底板的LED2进行闪烁。