上期内容:异步跨时钟域电路该怎么约束

DATAFLOW作为HLS的一种优化方法,对于改善吞吐率(Throughput)、降低延迟(Latency)非常有效。

DATAFLOW的作用对象

DATAFLOW可以作用于函数,也可以作用于for循环。如下图所示(图片来源Figure62, Figure 63, ug902)。无论是作用于函数还是for循环,都要求数据在函数之间顺序流动,没有反馈回路。

DATAFLOW优化前后对比我们看一个简单的案例,如下图所示(图片来源Figure64, ug902)。顶层函数top下调用了3个子函数。这3个子函数之间的数据是顺序流动的,因此可以用DATAFLOW来优化。如果不使用DATAFLOW,意味着func_A处理结束,才能处理func_B,func_B处理结束,才能处理func_C。这其实就是C语言的处理方式即顺序执行。但从硬件角度看,只有func_A有输出数据,就可以传递给func_B进行处理。这就实现了这3个函数的并行处理,从而将II由8降至3,Latency由8降至5。DATAFLOW的原理DATAFLOW需要额外的硬件资源开销。这是因为Vivado HLS会对相应的函数或者循环进行分析,然后对中间数据(子函数的输出或者循环体中的变量)进行缓存。缓存可能需要用到FIFO或者采用乒乓Buffer(RAM)的方式,如下图所示(图片来源Figure65, ug902)。通常对于标量,HLS会采用FIFO缓存;对于数组,HLS会采用乒乓Buffer缓存。

在报告中确认DATAFLOW

一旦使用了DATAFLOW,在综合报告中会明确地显示处理。同时,在Analysis窗口中可以看到红色椭圆方框标记的图标,如下图所示。

AI Engine到底是什么?

ACAP不可不知的几个基本概念

HLS中如何控制流水程度

Vivado HLS学习资料有哪些

如何查看可综合C代码的中间结果

如何在C代码中插入移位寄存器

HLS IP Library?HLS Math Library:csim ?C/RTL co-sim(2)HLS Math Library:csim ?C/RTL co-sim(1)如何复用关键路径的布局布线信息Vivado学习资料有哪些?异步跨时钟域电路怎么设计ECO都有哪些应用FPGA中的CLOCK REGION和SLR是什么含义FPGA中的BEL, SITE, TILE是什么含义约束文件有哪些如何高效复用Block的位置信息?如何复用关键寄存器的位置信息部分可重配置都生成哪些.bit文件VIO你用对了吗Device视图下能看到什么Schematic视图下能看到什么都是pin,有什么区别都是net,有什么区别如何快速查找目标cell学习笔记:多层感知器学习笔记:单层感知器的局限性学习笔记:单层感知器基础知识学习笔记:神经网络学习算法学习笔记:神经网络模型学习笔记:ReLU的各种变形函数学习笔记:神经元模型(2)学习笔记:神经元模型(1)学习笔记:深度学习之“深”学习笔记:深度学习之“学习”学习笔记:人工智能、机器学习和深度学习2019文章汇总文 | Lauren 图 | LaurenCopyright @ Lauren的FPGA转载事宜请私信 | 获得授权后方可转载

hls fifo_HLS优化方法DATAFLOW你用了吗相关推荐

  1. smart rtmpd 服务器配置文件说明及优化方法介绍

    ---------------------------------------------------------------------------------------------------- ...

  2. ONNX 实时graph优化方法

    ONNX 实时graph优化方法 ONNX实时提供了各种图形优化来提高模型性能.图优化本质上是图级别的转换,从小型图简化和节点消除,到更复杂的节点融合和布局优化. 图形优化根据其复杂性和功能分为几个类 ...

  3. 普通粒子群算法和优化方法

    粒子群优化(PSO, particle swarm optimization) 是由Kennedy和Eberhart在1995年提出的一 种群智能优化方法. 优点:好理解容易实现,适合解决极值问题 缺 ...

  4. 大主子表关联的性能优化方法

    [摘要] 主子表是数据库最常见的关联关系之一,最典型的包括合同和合同条款.订单和订单明细.保险保单和保单明细.银行账户和账户流水.电商用户和订单.电信账户和计费清单或流量详单.当主子表的数据量较大时, ...

  5. Mysql备份与还原及优化方法

    Mysql备份一般采用mysqldump命令,命令形式一般如下: $ mysqldump –hhostname –uuser –ppassword–Pport db_name > db_name ...

  6. 论文: 贝叶斯优化方法和应用综述(1)--------陈述设计类问题举例子,与 model-free优化计算的对比

    陈述:     就是想看一下贝叶斯学派的陈述,从不同的学派的对比,看看有什么优缺点,然后自己思考下.  摘要: 通过设计恰当的概率代理模型和采集函数,贝叶斯优化框架只需经过少数次目标函数评估即可获得理 ...

  7. 机器学习调参自动优化方法

    本文旨在介绍当前被大家广为所知的超参自动优化方法,像网格搜索.随机搜索.贝叶斯优化和Hyperband,并附有相关的样例代码供大家学习. 一.网格搜索(Grid Search) 网格搜索是暴力搜索,在 ...

  8. 机器学习中的优化方法小结

    来源|福大命大@知乎,https://zhuanlan.zhihu.com/p/158215009 前几天听了林宙辰老师的一个报告,讲的是机器学习中的优化方法[1],做个笔记.推荐机器学习的人去听听. ...

  9. 直接对梯度下手,阿里达摩院提出新型优化方法,一行代码即可替换现有优化器...

    来源:机器之心 本文约3284字,建议阅读8分钟. 本文介绍阿里达摩院的研究者另辟蹊径,直接对梯度下手,提出全新的梯度中心化方法.只需一行代码即可嵌入现有的 DNN 优化器中,还可以直接对预训练模型进 ...

最新文章

  1. 港中大教授研发DeepID人脸识别技术 准确率超99%
  2. learning to rank评价指标
  3. 石油化工设备维护检修规程_旋回破碎机横梁臂架、衬板、内外铜套检修步骤及设备检修维护要点...
  4. 【数据库系统】SQL基本固有类型
  5. 如何编写一个好的测试用例
  6. swat模型_安利一个运用SWAT模型模拟径流的简单工具
  7. wiki(维基)系统
  8. wampServer虚拟主机配置
  9. KK课表抓取教务系统
  10. 鸡兔同笼头吃20脚56c语言,数学课件《鸡兔同笼》
  11. DDD领域驱动设计实战(六)-领域服务
  12. win7系统传奇如何架服务器,win7系统如何架设传奇服务端玩游戏更流畅
  13. java文件编译后额外生成的$1.class是怎么一回事
  14. python桌面精灵_360uu游戏盒子
  15. docker删除容器
  16. 分享58个述职报告PPT模板,总有一款适合你
  17. 3D游戏模型教程系列:3D max安装
  18. AI 入行那些事儿(13)人工智能的三类技术岗位
  19. pandas计算年化收益波动率
  20. python开发之Socket网络编程

热门文章

  1. 关于猿如何找对象,心里没点那啥数吗?
  2. 算法工程师和python_算法工程师只掌握Python行吗?如果在java和cpp中选一门语言学习哪个更有用?...
  3. 电脑计算器_CPA考生注意!2020考场只允许带这种计算器
  4. 教学案例 计算机,宁夏计算机教学案例
  5. 把ipa文件上传到服务器,windows电脑上传ipa到appstore的详细流程
  6. 表单新增元素与属性(control、placehoulder、list、AutoComplete、pattern、SelectionDirection、indeterminate属性)
  7. 【APICloud系列|14】xcode下载地址
  8. 天涯明月刀7月4号服务器维护,7月8日服务器例行维护公告
  9. 深入理解DOM节点关系
  10. 我的HTML总结之常用基础便签