fpga arm dsp区别
FPGA 区别于ASIC设计 属于硬件设计的范畴 ASIC是硬件全定制 FPGA是硬件半定制具体来说 ASIC整个电路都由设计师设计的 用多少资源设计多少资源 一般多用于产品设计
FPGA资源事先由厂商给定 例如Altera Xilinx等都提供不同系列的FPGA芯片 设计师可以在给定资源下做硬件设计开发
DSP 主要用于处理信号 事先算法 特点是多级流水 可以加快数据处理的速度 开发环境主要是C语言 可以说DSP应用的范围更专 DSP的设计
可以理解为软件设计 设计师不需要太了解DSP的结构
补充几个小概念
DSP愿意就是指数字信号处理 只不过DSP芯片由于主要功能是实现数字信号处理 实现各种算法 所以简称为DSP(数字信号处理器)
FPGA一样可以做DSP(数字信号处理),就意味着可以用FPGA做硬件设计来实现DSP芯片的功能,当然,相比较专业的DSP芯片 成本太高
现在除了FPGA和DSP之外还有一个近几年热门的产品 ARM
ARM主要应用与手持设备和嵌入式产品 几乎笼罩了90%的市场份额 可以说ARM开发也偏向于软件开发 设计者主要是讲wince系统或者
linux系统移植到ARM开发平台上,然后做各种软件应用开发
所以 这三个方向都有其不同的应用场合 很难讲谁更有前途 不过 作为我个人而言 更喜欢做硬件设计 所以我选择FPGA作为自己的方向 FPGA
主要是给设计者提供了一个硬件平台 开发的核心还是需要独立的应用设计和高效的算法设计 所以设计者应该处理好工具的掌握和具体设
计的区别
这世界真是疯了,貌似有人连FPGA原理是什么都不知道就开始来学习FPGA了。
DSP就是一个指令比较独特的处理器。它虽然是通用处理器,但是实际上不怎么“通用”。技术很牛的人可以用DSP做一台电脑出来跑windows,而实际上真正这么干的肯定是蠢材。用DSP做信号处理,比其他种类的处理器要厉害;用DSP做信号处理之外的事情,却并不见长。而且信号处理的代码一般需要对算法很精通的人才能真正写好。数据结构里面的时间复杂度和空间复杂度在这里是一把很严酷的尺子。
FPGA只不过披着软件的外衣,实际上是硬件。FPGA内部有两层相对独立的电路。使用者“编码->编译”后生成一个映像,这个映像作用于第一层电路。这层电路之际上就是一个0,1的开关矩阵,这个开关矩阵用来控制第二层工作电路,将第二层工作电路配置成一个相应的处理器。理论上FPGA可以配置成任何需要的处理器,而实际上为了尽量少出bug,FPGA开发都使用已经开发好的“库文件”,也就是把人家能稳定工作的电路图拿过来。因此,对大多数FPGA开发者来说,FPGA内部有几个核基本上只能从库文件里面选——除非你有能力自己设计核心内部的电路和核间总线——ram和rom也是用宏来配置,自己只需要改改外部的专用电路和接线方式等等。甚至外部的专用电路都有库文件,搭个积木就完事了。玩FPGA真正挣钱的人是做积木的人,你原创几个积木并且能申请专利,迫使人家给你交专利费,那你这辈子可以衣食无忧了。 三者之间 取决于FPGA顶端技术
页:
[1]