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工程新建/工程导入编译与仿真综合IP核封装IP核测试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详细开发说明可参考产品资料如下文档。
ug871-vivado-high-level-synthesis-tutorial.pdfug902-vivado-high-level-synthesis.pdfHLS开发流程说明本章节以产品资料“4-软件资料\Demo\FPGA-HLS-demos\”目录下的led_flash案例为例,演示HLS开发流程。此案例的功能是由PL端控制评估底板的LED2进行闪烁。
在此之前,请将对应案例目录拷贝至Windows非中文路径下。
备注:Windows路径有长度限制,路径太长将会导致工程打开出错。
在进行本文如下操作前,请先按照调试工具安装文档安装Xilinx Vivado开发工具包。本文默认使用创龙科技的TL-DLC10下载器进行操作演示。
HLS工程导入双击桌面如下图标打开Xilinx Vivado HLS 2017.4,并在弹出的界面中点击“Open Project”选择案例“vivado_hls\project\”目录,然后点击“确定”导入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核封装综合完成后,点击生成IP核。
图 11
图 12
图 13
运行完成后,将会在案例“vivado_hls\project\solution1\impl\ip\”目录下生成IP核。
图 14
图 15
IP核测试进入案例“hls_ip_demo\project\”或“hls_ip_demo\hw\project\”对应平台PL端IP核测试Vivado工程目录,双击.xpr文件打开工程,工程默认已添加待测试的IP核。
图 16
如需自行导入IP核,请参考如下步骤。
请点击“IP Catalog -> User Repository -> Add IP to Repository…”,在弹出的界面中选择IP核后点击OK。图 17
图 18
右击“User Repository”后点击“Refresh Repository”,即可看到添加的IP核。图 19
图 20
如需添加Vivado自带的IP核,点击“Open Block Design”,在弹出的界面中点击,并选择所需IP核将其导入工程。图 21
图 22
点击Vivado界面左侧的“Generate Bitstream”选项,在弹出的界面中点击OK进行PL端IP核测试Vivado工程编译。
图 23
图 24
编译完成后,将会在工程“led_flash.runs\impl_1\”目录下生成.bit和.bin格式可执行文件。
图 25
参考PL端案例开发手册说明加载PL端.bit格式可执行文件,即可看到评估底板的LED2进行闪烁。