资讯专栏INFORMATION COLUMN

基于Zynq-7000系列之硬件开发学习教程——Xilinx Vivado HLS案例(2)

shaonbean / 576人阅读

摘要:案例案例功能控制评估底板每隔将状态翻转一次。工程说明时钟工程配置的时钟为,案例将该时钟用于计算间隔时间进行亮灭状态控制,生成的核亦需接入该时钟。图顶层函数案例顶层函数为中的。由于默认值为,因此的值为。

前 言

本文主要介绍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图形界面开发,方便快速进行产品方案评估与技术预研。

led_flash案例

案例功能:控制评估底板LED2每隔0.5s将状态翻转一次。

HLS工程说明

  1. 时钟

HLS工程配置的时钟为100MHz,案例将该时钟用于计算0.5s间隔时间进行LED2亮灭状态控制,生成的IP核亦需接入该时钟。如需修改时钟频率,请打开HLS工程后点击,在弹出的界面中的Synthesis栏目进行修改。

图 26

  1. 顶层函数

案例顶层函数为led_flash.cpp中的led_flash()。

图 27

点击然后,可在弹出的界面中的Synthesis栏目查看或设置顶层函数。

图 28

该函数控制评估底板LED2每隔0.5s将状态翻转一次。工程设置的时钟为100MHz(周期10ns),在for循环里计数值为100000000,用时为10ns x 100000000 = 1s。

编译与仿真

请参考本文档HLS开发流程说明章节,进行编译。编译完成后,进入仿真界面点击后进行单步运行,进入led_flash()函数。

图 29

继续点击后进入for循环,当i < 50000000时,*led_o等于1(true)。

图 31

点击后全速运行或修改i的值为50000000,当i ≥ 50000000时,*led_o等于0(false)。

图 32

IP核测试

请参考本文档HLS开发流程说明章节,完成IP核测试前的准备工作。

HLS工程生成的IP核为led_flash_0。

图 33

加载PL端.bit格式可执行文件,即可看到评估底板的LED2进行闪烁。

key_led_demo案例

案例功能:通过按键KEY2控制评估底板的LED2状态。

HLS工程说明

  1. 时钟

HLS工程配置的时钟为100MHz。案例通过按键KEY2控制评估底板的LED2状态,实际没有使用该时钟。如需修改时钟频率,请打开HLS工程后点击

,在弹出的界面中的Synthesis栏目进行修改。

图 34

  1. 顶层函数

案例顶层函数为key_led_demo.cpp中的key_led_demo()。

图 35

点击后,可在弹出的界面中的Synthesis栏目查看或设置顶层函数。

图 36

按键所对应的IO默认是上拉、高电平。按下按键时,key_i为0;松开按键时,key_i为1。

普通标量类型参数对应IP核的输入接口,如key_i作为输入。指针类型参数可作为输入输出,如*led_o作为输出。

图 37

编译与仿真

请参考本文档HLS开发流程说明章节,进行编译。编译完成后,进入仿真界面点击后进行单步运行,可看到Console窗口打印led_o的值。由于key_i默认值为0,因此led_o的值为1。

图 38

修改key_i的值为1,并继续点击进行单步运行。

图 39

此时可看到led_o的值为0。

图 40

IP核测试

请参考本文档HLS开发流程说明章节,完成IP核测试前的准备工作。

HLS工程生成的IP核为key_led_demo_0。

图 41

加载PL端.bit格式可执行文件,按下KEY2则LED2点亮,松开KEY2则LED2熄灭。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/123019.html

相关文章

  • 针对工控领域的电子元器件国产化的讨论内容记录及国产FPGA厂家介绍

    摘要:本文就关于电子元件国产化的一些交流内容进行介绍。一些重要的工业领域的国产化要求越来越高,也会对高端的需求增加。 前几天发表的工业控制领域电子元件全国产化替代解读文章也有一些关注与讨论,这个文章有人说是软文,想想也像是软文,不过里边提到的任一个厂家都没有给赞助,也是很无奈。文章主要目的是把我接...

    Shimmer 评论0 收藏0
  • Zynq7000硬件开发电源供电系统(PDN)设计(一)

    摘要:本次更新内容主要讲述如何通过基于芯片开发的板级电源要求解读电源树设计等。电源部分设计主要参考技术手册。另外如果电源电压一致,则可同时上电断电。收发器的上电顺序为或者,断电顺序相反。       如果觉得一直从事PCB Layout太乏味,不如通过一个硬件项目搞明白后去应聘硬件工程师,如果有完...

    sydMobile 评论0 收藏0
  • 工业控制领域电子元件国产化硬件设计替代解读

    摘要:汽车电子超算基带视频手机安防以及消费电子这些领域也有很多国产器件厂家,希望大家都多支持国产器件,替代原则可以安装先辅助功能后主要功能以及先接口后处理器开展,众人拾柴火焰高,早日走出芯困局。        本文作为一个小编所属的领域的全部器件的国产化的一个应用情况(不全面)进行阐述下,后续会针...

    Lucky_Boy 评论0 收藏0
  • 腾讯云推FPGA云IP市场服务 助力FPGA云服务落地

    摘要:年月,腾讯云推出国内首款高性能异构计算基础设施,并致力于整个云服务生态圈的建设。基于此,腾讯云在市场上带来了一系列创新举措。图市场提供行业解决方案腾讯云云服务市场已在基因图片视频教育等行业和场景中落地。FPGA云服务,作为云计算产品中一种新型的行业解决方案,具有性能优越、开发便捷、计费灵活等红利,加之其具有低延迟,高吞吐等能力,在基因、人工智能、金融等计算密集型领域得到广泛使用。2017年1...

    defcon 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<