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

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

3天内不再提示

FPGA算法映射要点

FPGA设计论坛 来源:未知 2023-09-11 10:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

将图像处理的算法转换为FPGA系统设计的过程称为算法映射,CPU并行算法的实现与FPGA并行算法的实现是有一定区别的。1.算法系统结构

图像处理算法主要有两种设计结构:流水线结构和并行阵列结构。

1.1 流水线结构

在我看来,流水线结构和我们之前所理解的CPU的串行结构还是有一定区别的。相反,它与处理器的流水线结构很相似,都是依照时钟来进行流水层级的同步。

wKgaomT-gFmAJzKfAAA_AVJIrEw142.jpg

1.2并行阵列结构 |--Data1--->Data1-->Data1

|

InputData------Data2--->Data2-->Data2

|

|--Data3--->Data3-->Data32.算法转换2.1 定常数转换

对于FPGA而言,做加法与移位较为简单,而涉及到乘法与除法时需要调用到乘法器或除法器,这在FPGA中是较为宝贵的资源,所以作为定常数,我们尽量转换为移位和加法运算,如:

ex1:

dout = din * 255

转换后

dout = ( din << 8 ) - din

ex2:

dout = din * 11

转换后:

dout = din * 2^2 + din * 2^3 - din * 2^0

= din * (2^2 + 2^3 - 2^0)

上式中的255 和 11就是定常数

2.2 不等式等效转换

进行转换的目的也是为了在FPGA实现后能够更加节省资源。如:

ex1:

√a ̄ < b, a > 0

转换后:

b^2 > a

ex2:

a/b > c/b (b > 0, d > 0)

转换后

a * d > b * c2.3 取近似值

最简单的近似值莫过于四舍五入,假如某数据D[-1~4]为整数部分,D[3~0]为小数部分,那么四舍五入可为:

assign dout = din[3]?(dout[-1~4] + 1) : (dout[-1~4])

泰勒公式定义

wKgaomT-gFmAFIv8AADDEna_xUg409.jpg

那么就可以有如下近似转换:

1/3 = 1/4 * (1 + 1/4 + 1/16 + 1/64 + 1/256) 3.构造查找表

查找表是使用简单的查询操作代替运行时的实时计算,使用查找表代替那些运行时经常需要用到的运算能够极大的减少时间复杂度,如我们经常用到的三角函数就应该使用查找表替换实时计算。

wKgaomT-gFmAX8ZDAAAJM7aZU1A039.png

有你想看的精彩 至芯科技FPGA就业培训班——助你步入成功之路、9月23号北京中心开课、欢迎咨询! 为什么要使用格雷码? 简述基于EDA技术的FPGA设计

wKgaomT-gFqAWtlMAABUdafP6GM346.jpg

扫码加微信邀请您加入FPGA学习交流群

wKgaomT-gFqAPTwHAABiq3a-ogY692.jpgwKgaomT-gFqAXFlfAAACXWrmhKE082.png

欢迎加入至芯科技FPGA微信学习交流群,这里有一群优秀的FPGA工程师、学生、老师、这里FPGA技术交流学习氛围浓厚、相互分享、相互帮助、叫上小伙伴一起加入吧!

点个在看你最好看


原文标题:FPGA算法映射要点

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

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

    关注

    1664

    文章

    22509

    浏览量

    639540

原文标题:FPGA算法映射要点

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    探索Atmel AT17LV系列FPGA配置EEPROM:特性、应用与设计要点

    探索Atmel AT17LV系列FPGA配置EEPROM:特性、应用与设计要点FPGA(Field Programmable Gate Array,现场可编程门阵列)的应用领域中,配置存储器
    的头像 发表于 03-24 17:40 580次阅读

    基于FPGA的低照度条件下EBAPS图像混合噪声去除算法

    本文提出了基于可编程逻辑门阵列(field programmable gate array,FPGA)的开关融合中值-高斯(open and close mix-median-Gaussian,OCMMG)滤波算法
    的头像 发表于 03-11 09:24 7212次阅读
    基于<b class='flag-5'>FPGA</b>的低照度条件下EBAPS图像混合噪声去除<b class='flag-5'>算法</b>

    电子工程师设计相关要点与案例分析

    电子工程师设计相关要点与案例分析 在电子工程师的设计工作中,涉及到众多不同类型的设计,下面将结合几个典型案例来探讨电子设计的要点。 文件下载: ADM8710.pdf 基于FPGA的电子秤
    的头像 发表于 02-27 09:30 251次阅读

    Modbus产品脚本编辑器“映射关系”解释?映射关系的地址对应关系?

    Modbus产品脚本编辑器“映射关系”解释?映射关系的地址对应关系?
    发表于 01-20 15:28

    DMA弹性映射功能

    DMA弹性映射功能 示例 目的:演示AT32F系列DMA弹性映射功能使用的方法。 支持型号:AT32F 系列、AT32F403Axx 主要使用外设: TMR、 GPIO、 DMA 1 快速使用方法
    发表于 12-12 16:04

    技术资讯 I 图文详解 Allegro X PCB Designer 中的 3D 模型映射

    本文要点面对市面上的一切要将PCB板放进一个盒子里的产品的设计都离不开3D模型映射这个功能,3D协同设计保证了产品的超薄化、高集成度的生命线;3D模型映射将PCB设计从传统的二维平面拉入了三维立体
    的头像 发表于 10-17 16:16 2033次阅读
    技术资讯 I 图文详解 Allegro X PCB Designer 中的 3D 模型<b class='flag-5'>映射</b>

    PathFinder在FPGA中的角色与缺陷

    自 1990 年代末以来,PathFinder 一直是 FPGA 布线(routing)阶段的主力算法,为设计工具提供“能连通又不重叠”的路径规划方案。
    的头像 发表于 10-15 10:44 663次阅读
    PathFinder在<b class='flag-5'>FPGA</b>中的角色与缺陷

    基于FPGA的CLAHE图像增强算法设计

    CLAHE图像增强算法又称为对比度有限的自适应直方图均衡算法,其算法原理是通过有限的调整图像局部对比度来增强有效信号和抑制噪声信号。
    的头像 发表于 10-15 10:14 824次阅读
    基于<b class='flag-5'>FPGA</b>的CLAHE图像增强<b class='flag-5'>算法</b>设计

    25年11月上海FPGA算法实现与应用技术高级研修分享

    设计仿真能力。   深入学习数据流,不仅是算法FPGA&DSP设计者的需求,对于从事接口设计工作、软件配置工作、系统测试工作,项目管理工作的同事,也同样有非常重要的意义。在实际工作中,对于
    发表于 10-11 11:55

    ADC和FPGA之间LVDS接口设计需要考虑的因素

    本文描述了ADC和FPGA之间LVDS接口设计需要考虑的因素,包括LVDS数据标准、LVDS接口数据时序违例解决方法以及硬件设计要点
    的头像 发表于 07-29 10:01 5637次阅读
    ADC和<b class='flag-5'>FPGA</b>之间LVDS接口设计需要考虑的因素

    基于FPGA实现FOC算法之PWM模块设计

    哈喽,大家好,从今天开始正式带领大家从零到一,在FPGA平台上实现FOC算法,整个算法的框架如下图所示,如果大家对算法的原理不是特别清楚的话,可以先去百度上学习一下,本教程着重介绍实现
    的头像 发表于 07-17 15:21 3739次阅读
    基于<b class='flag-5'>FPGA</b>实现FOC<b class='flag-5'>算法</b>之PWM模块设计

    基于Matlab与FPGA的双边滤波算法实现

    前面发过中值、均值、高斯滤波的文章,这些只考虑了位置,并没有考虑相似度。那么双边滤波来了,既考虑了位置,有考虑了相似度,对边缘的保持比前几个好很多,当然实现上也是复杂很多。本文将从原理入手,采用Matlab与FPGA设计实现双边滤波算法
    的头像 发表于 07-10 11:28 4853次阅读
    基于Matlab与<b class='flag-5'>FPGA</b>的双边滤波<b class='flag-5'>算法</b>实现

    基于FPGA的压缩算法加速实现

    本设计中,计划实现对文件的压缩及解压,同时优化压缩中所涉及的信号处理和计算密集型功能,实现对其的加速处理。本设计的最终目标是证明在充分并行化的硬件体系结构 FPGA 上实现该算法时,可以大大提高该算法
    的头像 发表于 07-10 11:09 2618次阅读
    基于<b class='flag-5'>FPGA</b>的压缩<b class='flag-5'>算法</b>加速实现

    【经验分享】玩转FPGA串口通信:从“幻觉调试”到代码解析

    FPGA开发,思路先行!玩FPGA板子,读代码是基本功!尤其对从C语言转战FPGA的“宝贝们”来说,适应流水线(pipeline)编程可能需要点时间。上篇点灯代码解读了基础,而如果能亲
    的头像 发表于 06-05 08:05 1261次阅读
    【经验分享】玩转<b class='flag-5'>FPGA</b>串口通信:从“幻觉调试”到代码解析

    大型嵌入式项目构架:从 STM32 对 FPGA 进行内存映射

    未来代码演进方向可能包括: FMC端支持64位传输及采用AHB替代APB协议以降低顺序传输开销。但可以预见,该架构将成为我大型FPGA+MCU项目的长期技术基座。
    的头像 发表于 05-26 11:15 2638次阅读
    大型嵌入式项目构架:从 STM32 对 <b class='flag-5'>FPGA</b> 进行内存<b class='flag-5'>映射</b>