网上有人说。现在的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. 生成电脑的ssh key值

    通过命令 ssh-keygen -t rsa -C "你的邮箱" 然后在用户目录下找到.ssh文件夹,这个是隐藏的,然后打开id_rsa.pub文件,里面的内容就是需要的ssh k ...

  2. Android SDK更新失败对策

    Fetching https://dl-ssl.google.com/android/repository/addons_list-2.xml Failed to fetch URL https:// ...

  3. 用pip install升级已安装的包的附加包, 以tabulate包为例

    用pip install升级已安装的附加包, 以tabulate包为例 去pypi官网查看tabulate包的介绍, 发现tabulate 0.7.6才开始支持宽字符的美化打印. 而且还需要安装它的附 ...

  4. Python排序算法之直接插入排序

    插入排序的主要思想是每次取一个列表元素与列表中已经排序好的列表段进行比较,然后插入从而得到新的排序好的列表段,最终获得排序好的列表. 比如,待排序列表为[49,38,65,97,76,13,27,49 ...

  5. 基本控件文档-UISlider属性

    CHENYILONG Blog 基本控件文档-UISlider属性 Fullscreen     UISlide属性技术博客http://www.cnblogs.com/ChenYilong/ 新浪微 ...

  6. c++刷题(15/100)矩阵转置,最深子树

    题目一:矩阵转置 给定一个矩阵 A, 返回 A 的转置矩阵. 矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引. 示例 1: 输入:[[1,2,3],[4,5,6],[7,8,9]] 输出 ...

  7. python3学习笔记.5.打包发布

    为了给别人使用将 .py 文件打包成 .exe 文件 安装 PyInstaller  ,完成 打开 Cmd 调用 path:\pyinstaller.exe -F path:\name.py 发布文件 ...

  8. JavaScript验证注册信息

    <script language="javascript"> function check_login(form){ if(form.username.value==& ...

  9. aarch64_g3

    glibc-langpack-wal-2.25-6.fc26.aarch64.rpm 2017-06-20 17:08 210K fedora Mirroring Project glibc-lang ...

  10. MVVM模式的命令绑定

    命令绑定要达到的效果 命令绑定要关注的核心就是两个方面的问题,命令能否执行和命令怎么执行.也就是说当View中的一个Button绑定了ViewModel中一个命令后,什么时候这个Button是可用的, ...