网上有人说。现在的FPGA,ARM功能已经强大到无需DSP协助处理了,未来DSP会不会消声灭迹?是DSP取代FPGA和ARM,还是ARM,FPGA取代DSP呢?担心好不容易学精了DSP,结果DSP变成了历史。

ARM具有比较强的事务管理功能,可以用来跑界面以及应用程序等,其优势主要体现在控制方面;而DSP主要是用来计算的,主要用在算法方面,比如进行加密解密、调制解调等,优势是强大的数据处理能力和较高的运行速度;FPGA可编程,灵活性强,并行处理能力非常强。由于能够进行编程、除错、再编程和重复操作,因此可以充分地进行设计开发和验证。当电路有少量改动时,更能显示出FPGA的优势,其现场编程能力可以延长产品在市场上的寿命,而这种能力可以用来进行系统升级或除错。大部分情况下FPGA和DSP都是互补的,例如一个3G基站的基带板上可以看到很多颗DSP,同时也有1-2颗FPGA发挥逻辑功能。虽然目前FPGA采用最新的半导体生产工艺,性能提高了很多,也可以做一部分的DSP运算功能,看起来有些重叠,但高端FPGA还是比较贵,开发的时候总没有软件开发得快。开发人员成本也比较高。还有比如说我想通过算法实现一些特性,如果用arm的话,我还另需要一个加速器,跑起来也没有DSP速度快。 由此可见,ARM,DSP,FPGA有各自的应用场合。各有自己的优点。三者可以相互配合使用,比如说ARM+DSP,FPGA+DSP核可以实现更高的性能。

本人主要从事于FPGA方面的开发。特权同学有一篇博客写得非常好:FPGA工程师:持守梦想or屈于现实非常值得一看。看后感悟颇多。很少有公司花大价钱去请单纯的FPGA工程师。我也不满足于仅仅作为一名FPGA工程师而已。在工作实际项目中提升FPGA水平的同时。利用闲余时间学好另一门热门的技术。ARM or DSP?我一直在这两者之间徘徊。FPGA+DSP or FPGA+ARM?那种搭配更好?相信没有很好的答案。各有各自的优势。主要看应用场合。最终我选择DSP。有以下几点原因。

1:记得在大学那会,我们在大三下学期DSP,FPGA两门一起开的。精力有限选择了FPGA。当时也很想学DSP。现在算是弥补当时的遗憾吧。

2:对DSP算法更感兴趣。如果我能够在DSP上实现一些算法。这样你就会明白怎么用软件来实现算法。进而转化为硬件实现。软件能实现的硬件一定能实现。那么移植到FPGA上也不会有太大的问题。这样做很有意思。

3:以前在学校做过DSP入门实验。写过一些简单汇编。对DSP可能还有一定的认识。ARM我可能陌生一些。

4:我目前从事的工作主要是音视频方面。用DSP可能更具优势。

5:我认为一个电子系统核心部分在算法上而不是控制上。算法才是关键。

大家一起加油!

以上几点仅代表我个人的观点。如有不妥的地方还请大家指教。

FPGA+ARM or FPGA+DSP?的更多相关文章

  1. 【6集iCore3_ADP触摸屏驱动讲解视频】6-2 基于FSMC总线的ARM与FPGA通信

    视频简介: 该视频介绍基于FSMC总线的ARM与FPGA通信   源视频包下载地址: 链接:http://pan.baidu.com/s/1slJDoQD 密码:tmw7   银杏科技优酷视频发布区: ...

  2. 利用UltraScale和UltraScale+FPGA和MPSOC加速DSP设计生产力

    利用UltraScale和UltraScale+FPGA和MPSOC加速DSP设计生产力 Accelerating DSP Design Productivity with UltraScale an ...

  3. 使用Intel的FPGA电源设计FPGA 供电的常用反馈电阻阻值

    使用Intel的FPGA电源设计FPGA 供电的常用反馈电阻阻值. 当前仅总结使用EN5339芯片的方案 Vout = Ra*0.6/Rb + 0.6 芯片手册推荐Ra取348K,则 3.3V时,取R ...

  4. 认识 ARM、FPGA

    0. ARM ARM:Advanced RISC machine,微处理行业的一家知名企业.适用于多种领域,如嵌入控制,消费.教育类多媒体.DSP和移动式应用. 优势: 功耗低,不容易发热.死机: 3 ...

  5. 【iCore、iCore2、iBoard例程】【异步FIFO跨时钟域通信(通过ARM 读FPGA FIFO)】

    欢迎访问电子工程师学堂,以便了解更多内容:http://www.eeschool.org 一.本实验基于iCore2 完成,通过简单改动,即可用在 iCore 核心板.iBoard 电子学堂上. iC ...

  6. 【iCore4 双核心板_FPGA】例程十二:基于UART的ARM与FPGA通信实验

    实验现象: 1.先烧写ARM程序,然后烧写FPGA程序. 2.打开串口精灵,会接收到字符GINGKO. 3.通过串口精灵发送命令可以控制ARM·LED和FPGA·LED. 核心代码: int main ...

  7. 【iCore4 双核心板_FPGA】例程十三:基于SPI的ARM与FPGA通信实验

    实验现象: 1.先烧写ARM程序,然后烧写FPGA程序. 2.打开串口精灵,通过串口精灵给ARM发送数据从而给FPGA发送数据 ,会接收到字符HELLO. 3.通过串口精灵发送命令可以控制ARM·LE ...

  8. 【iCore4 双核心板_FPGA】例程十四:基于I2C的ARM与FPGA通信实验

    实验现象: 1.先烧写ARM程序,然后烧写FPGA程序. 2.打开串口精灵,通过串口精灵给ARM发送数据从而给FPGA发送数据 ,会接收到字符GINGKO. 3.通过串口精灵发送命令可以控制ARM·L ...

  9. ARM与FPGA通过spi通信设计2.spi master的实现

    这里主要放两个代码第一个是正常的不使用状态机的SPI主机代码:第二个是状态机SPI代码 1.不使用状态机:特权同学<深入浅出玩转FPGA>中DIY数码相框部分代码: /////////// ...

随机推荐

  1. C#委托Code

    class Program { delegate double ProcessDelegate(double param1, double param2); static double Multipl ...

  2. 苏宁OLAP架构设计

    一. 功能综述 OLAP引擎为存储和计算二合一的引擎,自身内部涵盖了对数据的管理以及提供查询能力.底层数据完全规划在引擎内部,外部系统不允许直接操作底层数据,而是需要通过暴露出来的接口来读写引擎内部数 ...

  3. 简易jQuery插件

    之前写过jQuery插件的笔记 如何用jQuery封装插件 我一直觉得前面讲了一大堆闭包和三种插件封装模式有点冗余,那篇笔记我直到记录到后面才发现这事情很简单,想来想去还是觉得网上的一些文章把事情搞复 ...

  4. SVN 使用笔记

    SVN中检出 和 导出 的区别 检出得到的文件夹中,是受SVN客户端控制的,对其进行文件或文件夹的增删改操作都会被SVN客户端识别出来,对其可以进行update.commit操作.其中含有.svn隐藏 ...

  5. [译]Quartz.NET 框架 教程(中文版)2.2.x 之第八课 调度监听器

    第八课 调度监听器 调度监听器和触发监听器和触发监听器.作业任务监听器非常相似,只是调度监听器在调度器内接收通知事件,而不需要关联具体的触发器或作业任务事件. 跟调度监听器相关的事件,添加作业任务/触 ...

  6. JHipster项目启动后默认的8080主页是空白页面?

    1.背景 根据官网一步步地生成项目,他喵的启动后居然是一个空白页面,这怎么玩啊?还有这种操作的吗?跟说好的不一样啊!关于JHipster资料,国内少的可怜,几乎都是同一样的东西,纯介绍的文章,只好上s ...

  7. Shell-help格式详解

    前言 linux shell命令通常可以通过-h或--help来打印帮助说明,或者通过man命令来查看帮助,有时候我们也会给自己的程序写简单的帮助说明,其实帮助说明格式是有规律可循的 帮助示例 下面是 ...

  8. 十二、springboot之web开发之静态资源处理

    springboot静态资源处理 Spring Boot 默认为我们提供了静态资源处理,使用 WebMvcAutoConfiguration 中的配置各种属性. 建议大家使用Spring Boot的默 ...

  9. go语言版本变化

    The Go Project     Go is an open source project developed by a team at Google and many contributors  ...

  10. Scrapy:创建爬虫程序的方式

    Windows 10家庭中文版,Python 3.6.4,Scrapy 1.5.0, 在Scrapy中,建立爬虫程序或项目的方式有两种(在孤读过Scrapy的大部分文档后): 1.继承官方Spider ...