0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA设计如何最优化

FPGA快乐学习 来源:FPGA快乐学习 2023-06-25 15:46 次阅读

这是笔者去年某个时间节点的感悟,由于工作繁忙,写完后搁置一边了。而对于“设计最优化”这个议题,笔者也一直深感功力不够,不敢多做阐释。但是,不管怎样,若能每隔几年都好好做些反思回顾,让自己对“设计最优化”的认知再做一些提升,也算是给当下的自己一个“设计最优化”吧。基于此,把去年的文章略作梳理,分享给大家。

之所以想写点什么,是基于近期的一些工作触动。两年前,由于公司人力资源的需要,笔者从当时基本稳定的FPGA设计中抽出身来,大部分的精力投入到了产品算法开发中。而在那个当儿,正好做了一个算法的FPGA实现评估,整个设计,包括代码、仿真基本做完了。在当时,目标是用有限的FPGA资源实现一个复杂的图像处理算法,可以说是绞尽脑汁做了很多实际的FPGA设计优化。

时过境迁,经过两年算法的学习研究和工程实践后,基于系统最优化的一些考虑,又重新回到原点,需要再次评估和实现当年那个图像处理算法的FPGA版本。而当重新审查当年的那些设计代码时,忽然感受到当时一些设计细节做得尤为精妙,虽然大多数方法其实是一些经典的通用的优化方法——用加法和流水线设计减少乘法器数量;用移位比较以及流水线的方式定制化一个资源占用率极低的除法器;用查找表实现指数运算;甚至尝试过自己实现开根号的逻辑源码……当然,我并不是觉得这些设计已经登峰造极,做到设计最佳了。反而,让我重新思考FPGA的设计最优化问题。做算法的经历,让我感受到了CPU的强大算力;但是一些实时应用场景下,又让我感受到了CPU在面对一个复杂和大计算量的算法时的力不从心。做FPGA的经历,让我即便是在写着跑在CPU上的代码,也处心积虑的考虑速度性能问题——能用加法或移位就绝不用乘法、能用乘法就绝不用除法、能查表的就绝不直接进行指数或根号等复杂的运算……总而言之,不做一次多余的或不必要的复杂的运算。

对于FPGA的工程实现而言,设计本身并没有绝对的最优化。对于一些没有实用性要求的研究或评估,对于FPGA的器件资源、实时的速度性能或许不会太在意。但是对于必须产品化的工程实现来说,目标通常是在FPGA器件的资源有限制、吞吐量有要求的情况下完成既定功能。FPGA的资源,通常包括FPGA内部的逻辑资源、乘法器资源、片内存储器资源、布局布线资源以及其它诸如时钟、高速接口等专用资源。FPGA的数据吞吐量,通常表现为FPGA在单位时间内的平均处理能力或瞬时最大处理能力,这可能涉及FPGA片内或片外存储器的读写访问速度、满足必须的并行运算处理所需的资源可用性、达到设计目标的最低FPGA时钟频率的时序性能等。

由此看来,FPGA的设计最优化,并不意味着最高的绝对精度、最快的处理速度或最大的数据吞吐量,也不意味着最高的资源利用率或最低的实现资源……纯粹的研究或评估,或许可以只关注某一方面的最佳性能;但对于FPGA的产品实现而言,在众多的限制条件下,各方面性能达到一个动态平衡,让我们的目标FPGA器件物尽其用,或许才是我们这些务实的工程师所追求的“最优化设计”。
责任编辑:彭菁

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA设计
    +关注

    关注

    9

    文章

    425

    浏览量

    26273
  • 存储器
    +关注

    关注

    38

    文章

    7150

    浏览量

    161998
  • 图像处理
    +关注

    关注

    26

    文章

    1225

    浏览量

    55827

原文标题:设计最优化

文章出处:【微信号:FPGA快乐学习,微信公众号:FPGA快乐学习】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    CAM在FPGA上的最优化实现方案

    我们都知道RAM是根据地址查找对应的数据,而对于CAM,则恰好相反,是已知数据查找其对应的地址。像在网络报文处理里,根据报文的五元组的一些信息去查询其所属的规则地址,随后通过该地址去查询对应的RAM获取对应的Action信息。
    发表于 04-15 11:06 121次阅读
    CAM在<b class='flag-5'>FPGA</b>上的<b class='flag-5'>最优化</b>实现方案

    FPGA基本开发设计流程

    FPGA的设计流程就是利用EDA开发软件和编程工具对FPGA芯片进行开发的过程。FPGA的开发流程一般包括功能定义、设计输入、功能仿真、综合优化、综合后仿真、实现与布局布线、时序仿真与
    发表于 12-31 21:15

    云计算中电源系统设计的“最优解”

    云计算中电源系统设计的“最优解”
    的头像 发表于 12-05 14:52 174次阅读
    云计算中电源系统设计的“<b class='flag-5'>最优</b>解”

    什么是机器人最优控制和逆最优控制

    相反的关系: 最优控制理论是数学优化的一个分支,它处理在一段时间内为一个动态系统找到一个控制,使目标函数得到优化。目标是找到目标控制律,使得优化目标函数。 而逆
    的头像 发表于 11-22 15:29 294次阅读
    什么是机器人<b class='flag-5'>最优</b>控制和逆<b class='flag-5'>最优</b>控制

    电池充电器设计如何影响电池可靠性

    电子发烧友网站提供《电池充电器设计如何影响电池可靠性.doc》资料免费下载
    发表于 11-15 11:41 0次下载
    电池充电器设<b class='flag-5'>计如</b>何影响电池可靠性

    基于FPGA的神经振荡器设计及优化

    电子发烧友网站提供《基于FPGA的神经振荡器设计及优化.pdf》资料免费下载
    发表于 11-10 09:39 0次下载
    基于<b class='flag-5'>FPGA</b>的神经振荡器设计及<b class='flag-5'>优化</b>

    Artix-7 FPGA:成本优化器件中的性能和带宽

    电子发烧友网站提供《Artix-7 FPGA:成本优化器件中的性能和带宽.pdf》资料免费下载
    发表于 09-18 10:07 0次下载
    Artix-7 <b class='flag-5'>FPGA</b>:成本<b class='flag-5'>优化</b>器件中的性能和带宽

    SDAccel环境剖析和最优化指南

    电子发烧友网站提供《SDAccel环境剖析和最优化指南.pdf》资料免费下载
    发表于 09-15 11:37 0次下载
    SDAccel环境剖析和<b class='flag-5'>最优化</b>指南

    使用FPGA I/O优化来设计更高性价比的PCB

    电子发烧友网站提供《使用FPGA I/O优化来设计更高性价比的PCB.pdf》资料免费下载
    发表于 09-13 09:24 0次下载
    使用<b class='flag-5'>FPGA</b> I/O<b class='flag-5'>优化</b>来设计更高性价比的PCB

    一种基于FPGA的三轴伺服控制器的设计优化

    目前伺服控制器的设计多以DSP或MCU为控制核心,但DSP的灵活性不如FPGA,且在某些环境比较恶劣的条件如高温高压下DSP的应用效果会大打折扣,因此以FPGA为控制核心,对应用于机载三轴伺服控制平台的控制器进行了设计与优化
    的头像 发表于 09-04 16:53 374次阅读

    #FPGA FPGA电路设计优化:电路速度优化

    fpga
    奔跑的小鑫
    发布于 :2023年07月25日 10:06:45

    如何对车身周围的传感器进行最优化配置

    解决哪些问题,如何对车身周围的传感器进行最优化配置和选择将是我们必须要面对的问题。现如今, 越来越多的企业将目光锁定到了感知的三大新范式之中,相较于传统的感知方法已经无法满足新一代自动驾驶的技术需求,感知的技
    的头像 发表于 06-29 10:00 339次阅读

    FPGA布局及资源优化

    Resource:两片FPGA通过X12 gth互联;每片FPGA使用48路serdes走光口与板外连接;
    发表于 06-20 09:10 701次阅读
    <b class='flag-5'>FPGA</b>布局及资源<b class='flag-5'>优化</b>

    FPGA高级设计之实现功耗优化

    点击上方 蓝字 关注我们   FPGA 高级设计之实现功耗优化 与ASICs(Application Specific Integrated Circuits)比较,相似的逻辑功能,用FPGA来实现
    的头像 发表于 05-19 13:50 890次阅读

    支持向量机寻找最优分类超平面的优化问题

    根据,在线性可分情况下,支持向量机寻找最优分类超平面的优化问题
    的头像 发表于 05-11 11:13 1032次阅读
    支持向量机寻找<b class='flag-5'>最优</b>分类超平面的<b class='flag-5'>优化</b>问题