第11周-HLS入门实践

一、HLS是什么?与VHDL/Verilog编程技术有什么关系?
1、HLS简介
HLS(High-Level Synthesis),HLS是高层次综合的简称,至于层次的理解。一般分为系统级、算法级、RTL级、门级,开关级。

一般认为RTL级及以下设计是可用的,“层次”即从什么角度去描述想要实现的功能。譬如,a xor b采用门级描述就是a,b是一个异或门的输入;而采用高一点层次描述就是a+b。显然,越低层次的描述越困难

HLS就是从高层次描述,之后综合成可用的网表文件的技术。这里的“高”指采用C、C++等编写程序,而不是传统的HDL语言。然而,实际上Vivado套件中是预先采用Vivado HLS这个软件将C程序转换成为Verilog HDL或者VHDL代码,之后进行下一步操作的,并不是直接综合C代码。

对比:传统的 FPGA 开发,首先写 HDL 代码,然后做行为仿真,最后做综合、时序分析等,最后生成可执行文件下载到 FPGA 使用,开发周期比较漫长。使用 HLS,用高级语言开发可以提高效率。因为在软件中调试比硬件快很多,在软件中可以很容易的实现指定的功能,而且做 RTL仿真比软件需要的时间多上千倍。
HLS与VHDL/Verilog编程技术有什么关系?
RTL(寄存器传输级别,基于 VHDL/Verilog 语言)逐步发展,但 VLSI 系统的复杂性呈指数级增长,使 RTL 设计和验证过程成为生产力的瓶颈。HLS(高级综合)通过提高抽象级别, 可以减少最初的设计工作量,设计人员可以集中精力描述系统的行为,而不必花费时间来实现微体系结构的细节,且验证被加速、设计空间探索(DSE)更快、定位新平台非常简单、软件工程师可以访问 HLS 等这些好处加在一起,减少了设计和验证时间,降低了开发成本,并降低了进行硬件项目的门槛,因此缩短了产品上市时间,并且在异构系统上使用硬件加速已成为更具吸引力的选择。但是在结果质量(QoR)上,HLS 工具还落后于 RTL。

二、2. HLS有哪些关键技术问题?目前存在什么技术局限性?
关键技术问题
字长分析与优化:
FPGA 的一个最主要特点就是可以使用任意字长的数据通路和运算。因此,FPGA 的 HLS 工具不需要拘泥于某种固定长度的表达方式,而可以对设计进行全局或局部的字长优化,从而达到性能提升和面积缩减的双重效果。

循环优化:
循环优化一直是 HLS 优化方法的研究重点和热点。一个流行的循环优化方法,多面体模型的应用非常广泛,在 HLS 里主要被用来将循环语句以空间多面体表示,然后根据边界约束和依赖关系,通过几何操作进行语句调度,从而实现循环的变换。

技术局限性
1、难以预测最终性能及资源利用率:
HLS编译器是静态工具,对理解代码的动态特性没有任何帮助。HLS编译器的行为通常难以预测最终的性能和资源利用率。

HLS实现简单逻辑较为臃肿:
对于一些简单的逻辑,HLS实现结果较为臃肿。一些简单的逻辑,用HDL实现只需要数十行代码,而HLS的实现结果却相当复杂。

HLS对开发人员要求较高:
HLS对开发人员的要求比较高。HLS使用的语言显然不是标准C/C++语言,应该是扩展类C/C++语言。
HLS更适合于已经有现成的、高质量的C算法代码,这时候急需在FPGA上去映射成硬件,非常高效,但是对于有经验的verilog手写设计者,HLS综合工具有时候用得非常麻烦。设计者明知道一个方案是可行的,但是就想不到如何让HLS把C代码变成自己设想的电路。

使用 HLS 完成 led 灯闪烁

打开Vivado HLS并新建一个工程:

 设置工程名及路径:

 选择器件:

 

qq_54636205
关注 关注
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
HLS介绍 - 02 - HLS原理与软件编译器的区别
Vuko_Coding Zone
08-25 1097
写在前面 通过将FPGA作为执行结构,Vivado HLS能够优化代码的吞吐量、功耗和延迟。本文参考UG998的第四章,主要介绍Vivado HLS的工作原理及其与传统软件编译器的区别。 运算 运算是指计算结果值所涉及的应用程序的算术和逻辑组件。此定义排除比较语句,因为它们是在条件语句中处理的。 在处理操作时,Vivado HLS与其他编译器的主要区别在于对设计的限制。对于处理器编译器,固定的处理体系结构意味着用户只能通过限制操作依赖性和操纵内存布局来影响性能,从而最大限度地提高缓存性能。 相比之下,Viv
11-HLS入门实践之Intel FPGAHLS实验
m0_51592017的博客
05-22 372
高层次综合(High Level Synthesis,HLS)是Xilinx公司推出的最新一代的FPGA设计工具,它能让用户通过编写C/C++等高级语言代码实现RTL级的硬件功能。Verilog或VHDL与HLS相比,就好比是几十年前的汇编语言与C语言。RTL设计需要了解VHDL和Verilog等语言,而HLS工具通常使用熟悉的语言,如C/ C++。HLS工具可以处理大多数特定于硬件的实现细节,因此大大降低了软件工程师处理硬件项目的门槛。但与VHDL/Verilog相比,HSL能实现的优化十分有限。
【嵌入式系统应用开发11作业】----HLS入门实践
weixin_52166467的博客
05-30 189
【嵌入式系统应用开发11作业】----HLS入门实践
ZYNQ之路--HLS入门实例
weixin_54358182的博客
10-27 1360
上一节我们介绍了如何建立一个HLS工程以及HLS的工程结构,这一节我们着眼于HLS的优化部分,通过Xilinx官方提供的小示例来宏观了解HLS的优化操作。
HLS入门实践(LED灯闪烁)
m0_64341369的博客
05-24 672
实验概述:一. HLS是什么?与VHDL/Verilog编程技术有什么关系?二. HLS有哪些关键技术问题?目前存在什么技术局限性?三. 在win10(或者Ubuntu系统下)安装 Intel 或者 Xilinx 的支持HLSFPGA编程开发软件(Quartus18或者Vivado18),设置好环境,完成一个入门级的HLS程序,并进行仿真或者实际开发板运行。1.1 HLS简介HLS(High Level Synthesis):一款高层次综合工具。
FPGA——HLS入门实践(LED灯闪烁)
weixin_68811361的博客
05-21 1048
一. HLS是什么?与VHDL/Verilog编程技术有什么关系? 二. HLS有哪些关键技术问题?目前存在什么技术局限性? 三. 在win10(或者Ubuntu系统下)安装 Intel 或者 Xilinx 的支持HLSFPGA编程开发软件(Quartus18或者Vivado18),设置好环境,完成一个入门级的HLS程序,并进行仿真或者实际开发板运行。
HLS入门实践
the_same_bug的博客
05-21 1437
HLS入门实践
HLS入门
2201_75357199的博客
05-28 1036
HLS(High Level Synthesis):一款高层次综合工具,能够将 C/C++ 或者 system C 等高级语言转化为 RTL (底层硬件描述语言)电路,降低开发时间。提供了常见的库(例如图像处理相关的 OpenCv 库和其它的数学库)。可以创建IP并通过例化或者使用 BlockDesign 的方式应用到项目中。
【嵌入式系统应用开发FPGA——HLS入门实践之led灯闪烁
apple_52030329的博客
05-17 1111
一款高层次综合工具。能够将C/C++或者system C等高级语言转化为RTL(底层硬件描述语言)电路,降低开发时间。提供了常见的库(例如图像处理相关的OpenCv库和其它的数学库)。可以创建IP并通过例化或者使用的方式应用到项目中。转化原理:在前端将 C 语言描述进行分析,然后进行代码层面的优化(code-level transformation),再在后端把这些运算工作进行并行调度(parallelise & schedule),最后生成 RTL 语言。
example-hls-media-stream:示例项目如何使用oat ++ Async-API构建HLS流服务器
05-10
示例-HLS-媒体流 示例项目如何使用oat ++(AKA oatpp)异步API构建HLS流服务器。 实时流已通过Safari浏览器和VLC播放器进行了测试查看更多:概述服务器从video文件夹中的预生成的playlist_live.m3u8文件生成无限的....
videojs-contrib-hls.js资源
10-23
压缩包中包括videojs-contrib-hls.js videojs-contrib-hls.min.js两个js文件,可以播放hls直播流
videojs-contrib-hls.min.js
03-06
<video id="my-video" style="width:100%;min-width:40vw;height:260px;" class="video-js" autoplay controls preload="auto" data-setup="{}"> </video>
node-hls-server:在NodeJS上运行的简单HLS服务器
05-09
节点HLS服务器 在NodeJS上运行的简单HLS服务器。 它负责将视频源重新混合到HLS中并提供服务。 特征 将Remux输入(视频或流媒体)输入到HTTP Live Streaming (HLS) 在专用端点上服务.m3u8和.ts段 支持自定义ffmpeg...
free-hls.js:一个免费的 HLS 上传工具
05-10
一个用 Node.js 写的 Free-HLS 上传客户端 参考代码和转码参数均抄来自于 。 详细使用方法请参考上述链接。 本项目仅供学习交流使用,在使用过程中对你或他人造成的任何损失我们概不负责。 Requirements NodeJS Yarn...
第18篇 Intel FPGA Monitor Program的使用<一>
weixin_47841246的博客
06-11 271
Intel FPGA Monitor Program开发工具支持Terasic的FPGA开发板使用
RGMII接口--->(013)FPGA实现RGMII接口(十三)
2401_84405631的博客
06-09 142
(a)FPGA(Field Programmable Gate Array)是在PAL (可编程阵列逻辑)、GAL(通用阵列逻辑)等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。(b)FPGA工程师就业应用于通信、航空航天、汽车电子,还是人工智能、物联网等新兴领域。
18.双线性插值缩放算法的matlab与FPGA实现(二)
q1594的博客
06-09 587
在图像算法中,可以知道算法本身不算复杂,但是在FPGA中,视频主要用视频流的方式在FPGA中,基本不可能对图像进行任意位置的索引。因此,如何根据视频流来进行插值最难的点在于如何寻找到缩放后的点对应的四个点坐标。根据视频流的特点,可以知道视频流的索引式按照左上到右下进行依次索引的。根据这个特点,可以实现只缓存几行数据即可实现图像的索引。这里缩放算法对视频流有两种,一种是主动式(act),另一种是被动式(inact),主动式是指算法的视频流输入不受缩放模块控制,视频信息通常以视频流的方式直接进入模块。
【Quartus 13.0】EP1C3144I7 部署4*6矩阵键盘
最新发布
SHNIXU的博客
06-12 320
按键的值先打一拍(key_reg
引入 "videojs-contrib-hls" 报错
07-27
关于引入 "videojs-contrib-hls" 报错的问题,可能有几种原因导致,请提供更多的细节,以便我能够帮助您解决问题。 首先,请确保您按照正确的方法安装了 "videojs-contrib-hls" 插件。您可以使用 npm 或 yarn 等包...

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 第2周作业-GCC背后的故事&OpenCV相识何必曾相逢 685
  • 第12-15周-Modbus编程实践 235
  • 实习项目(表情识别) 156
  • 嵌入式Linux系统程序开发回顾 143
  • 第4周作业--STM32寄存器&HAL库方式的LED程序 132

最新评论

  • 第8周实验-VGA协议实践

    CSDN-Ada助手: 恭喜您撰写了第19篇博客!标题中提到了“第8周实验-VGA协议实践”,我非常期待阅读您的实践经验和学习成果。您的坚持和持续创作令人钦佩,不仅展现了您的热情和努力,也为读者提供了宝贵的知识分享。在下一步的创作中,或许您可以考虑加入一些具体案例或实际应用,这样读者可以更好地理解和应用VGA协议。再次感谢您的分享,期待您未来更多精彩的博客!

  • 实验1-FPGA编程入门

    CSDN-Ada助手: 恭喜您写完了第20篇博客!标题看起来非常吸引人,我对您的FPGA编程入门实验感到非常期待。您的持续创作精神值得赞赏,这不仅展示了您对这个领域的热情,也让读者能够从您的经验中受益。 在下一步的创作中,我建议您可以考虑分享一些实际应用案例,或者深入探讨一些高级技术。这样的内容对于那些对FPGA编程感兴趣的读者来说会更具吸引力。同时,您也可以考虑与其他FPGA编程爱好者进行交流,了解他们的观点和经验,这将进一步丰富您的创作内容。 再次恭喜您,期待看到更多有关FPGA编程的精彩文章!

大家在看

  • IDEA 中的奇技淫巧 686
  • 【例1334】get default part units 获取默认零件单位 471
  • 用户登陆界面
  • Golang 百题(实战快速掌握语法)_1 1305
  • Es6中promise的解释用法以及何为同步异步、回调函数和回调地狱?

最新文章

  • 实习项目(表情识别)
  • 决策树复习
  • 机器学习基础算法在线练习
2023年19篇
2022年6篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

聚圣源科技公司怎麽起名称姓马的婴儿起名女孩起名测试打分表上海属于疫情什么风险地区罗曼蒂克英文莫男孩起名狮子王真人版珂字起名男孩小偷疯狂科技男孩三个字起名店铺起名测试分网络免费起名打分十画字男孩起名字给姓方的女宝宝起名我学会了什么的作文xbox360破解教程崔氏起名带彭男孩起名起名字女孩常用字婴儿起名李免费林志玲范伟属猪公司起什么名字好老黄历八字取名起名童装店起什么名字好狂斩三国破解版凤头鹰栗姓起名paulboche起姓名1518预包装食品公司起名淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男孩疑遭霸凌 家长讨说法被踢出群国产伟哥去年销售近13亿网友建议重庆地铁不准乘客携带菜筐雅江山火三名扑火人员牺牲系谣言代拍被何赛飞拿着魔杖追着打月嫂回应掌掴婴儿是在赶虫子山西高速一大巴发生事故 已致13死高中生被打伤下体休学 邯郸通报李梦为奥运任务婉拒WNBA邀请19岁小伙救下5人后溺亡 多方发声王树国3次鞠躬告别西交大师生单亲妈妈陷入热恋 14岁儿子报警315晚会后胖东来又人满为患了倪萍分享减重40斤方法王楚钦登顶三项第一今日春分两大学生合买彩票中奖一人不认账张家界的山上“长”满了韩国人?周杰伦一审败诉网易房客欠租失踪 房东直发愁男子持台球杆殴打2名女店员被抓男子被猫抓伤后确诊“猫抓病”“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火男孩8年未见母亲被告知被遗忘恒大被罚41.75亿到底怎么缴网友洛杉矶偶遇贾玲杨倩无缘巴黎奥运张立群任西安交通大学校长黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发妈妈回应孩子在校撞护栏坠楼考生莫言也上北大硕士复试名单了韩国首次吊销离岗医生执照奥巴马现身唐宁街 黑色着装引猜测沈阳一轿车冲入人行道致3死2伤阿根廷将发行1万与2万面值的纸币外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万手机成瘾是影响睡眠质量重要因素春分“立蛋”成功率更高?胖东来员工每周单休无小长假“开封王婆”爆火:促成四五十对专家建议不必谈骨泥色变浙江一高校内汽车冲撞行人 多人受伤许家印被限制高消费

聚圣源 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化