简单的描述:FPGA、DSP和微处理器的差异!
DSP+FPGA体系结构介绍:
DSP(digital singnal processor):是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或1的数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,远远超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色。
FPGA:FPGA是英文Field-Programmable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
DSP芯片,也称数字信号处理器,是一种特别适合于进行数字信号处理运算的微处理器器,其主要应用是实时快速地实现各种数字信号处理算法。根据数字信号处理的要求,DSP芯片一般具有如下主要特点:
(1)在一个指令周期内可完成一次乘法和一次加法;
(2)程序和数据空间分开,可以同时访问指令和数据;
(3)片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问;
(4)具有低开销或无开销循环及跳转的硬件支持;
(5)快速的中断处理和硬件I/O支持;
(6)具有在单周期内操作的多个硬件地址产生器;
(7)可以并行执行多个操作;
(8)支持流水线操作,使取指、译码和执行等操作可以重叠执行。
当然,与通用微处理器相比,DSP芯片的其他通用功能相对较弱些。
FPGA与DSP的区别如下:
1、硬件层面的不同。
在硬件层面,DSP是ASIC,如同CPU GPU一样,适宜于量产降低成本,缺点是(硬件)设计一旦确定,便不易于修改。而FPGA较灵活,可以通过硬件描述语言进行快速设计和改进,但成本较高,传统上讲用于ASIC的prototype设计。
2、软件层面的不同。
在软件层面上,给DSP写程序和给多核CPU写程序,给GPU写程序,没有太大区别,DSP有完善的C语言编译器。目前高端的FPGA中都集成了硬核DSP。
3、编程语言不同。
FPGA主要使用HDL,包括VHDl,Verilog,还有数模混合的描述语言Verilog-AMS等。DSP使用C,汇编语言编程。
4、 功能角度不同。
FPGA普遍用于实现数字电路模块,基本上能实现所有的数字电路,传统的数字功能模块,以及客户产品特定需求的数字处理模块。FPGA的IO桥接种类繁多,不同种类的级别的FPGA支持的IO标准和协议都不尽相同,但是这些IO的驱动能力或是电压都是可编程配置的。
微处理器(包括DSP)与FPGA的主要区别是,微处理器采用“读取指令代码->译码->执行指令规定的动作”这种顺序方式逐条地执行指令(也可以叫程序)。而FPGA内部不必采用上述“取指->译码->执行”的顺序,FPGA内部都是硬件逻辑,各个部件都是同时运转的,是并行工作的。
本世纪以来,FPGA内部也可以包含微处理器,既可以在其内部设计软核处理器(例如NIOS II),也可以在其内部放置硬核处理器。但放置在FPGA内部的硬核处理器,从本质上讲并不是FPGA,只不过是将微处理器与FPGA集成在一起罢了。
答:DSP是一种为数字信号处理特别设计的微处理器,所以,DSP是微处理器的子集。微处理器(包括DSP)与FPGA的主要区别是,微处理器采用“读取指令代码->译码->执行指令规定的动作”这种顺序方式逐条地执行指令(也可以叫程序)。而FPGA内部不必采用上述“取指->译码->执行”的顺序,FPGA内部都是硬件逻辑,各...
答:DSP:数字信号处理器,一种内部硬件和指令系统特别适用于数字信号处理的MPU。MCU:微控制器,也可以叫MPU(微处理器),这两种东东差别不大。主要特点是将构成中央处理单元(CPU)的控制器和运算器集成在一块硅片上。ARM:一般是指ARM处理器,是Acorn计算机有限公司面向低预算市场设计的一款RISC微处理器(...
答:FPGA有多种配置模式:并行主模式为一片FPGA加一片EPROM的方式;主从模式可以支持一片PROM编程多片FPGA;串行模式可以采用串行PROM编程FPGA;外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。最近FPGA的配置方式已经多元化!DSP数字信号处理(Digital Signal Processing,简称DSP)是一门涉及许多学科而...
答:以现在的技术来看,FPGA是最高端的,因为FPGA可以用软件方式实现DSP和MCU。其实FPGA内部是由大规模的独立逻辑门构成的,编程就是在做连线关系。而MCU和DSP都是数字电路,只要是数字电路都可以用FPGA的逻辑门搭出来的。MCU编程和应用相对简单,不过只能用于地端产品,高端的话只能用ARM了。不过成本相对较低。
答:MCU:微控制器,主要用于控制系统,工作频率一般来说比DSP低,硬件上具有多个IO端口,同时也集成了多个外设,主要是便于在控制系统中的应用。至于ARM处理器,个人认为是MCU的高级版本,ARM本身只是一个内核,目前已经有多个版本。CPLD:复杂可编程逻辑器件 FPGA:现场可编程门阵列 后两者都是可编程器件,CPLD...
答:1、DSP(digital signal processor)看它的名字就知道是专业做数字信号处理的。DSP是一种独特的微处理器(采用哈佛结构,内部结构已经固定),有自己的完整指令系统,通过指令和数据工作(这个也是CPU和ARM等的工作方式),开发遵循嵌入式软件的设计原则,更注重于算法的实现。2、FPGA,是ASIC的一种,属于...
答:CPLD是一种用户根据各自需要而自行构造逻辑功能的数字集成电路。其基本设计方法是借助集成开发软件平台,用原理图、硬件描述语言等方法,生成相应的目标文件,通过下载电缆(“在系统”编程)将代码传送到目标芯片中,实现设计的数字系统。FPGA:FPGA是英文Field Programmable Gate Array的缩写,即现场可编程门阵列...
答:MPU则是高度集成的微处理器矩阵,没有集成外设,与MCU类似但更通用。DSP(数字信号处理器)则专门用于信号处理,采用哈佛结构和流水线技术,常用于音频和视频处理等领域。FPGA(现场可编程门阵列)是半定制集成电路,允许用户在出厂后重新配置逻辑功能,提供强大的并行处理能力,适用于需要灵活和快速原型设计的...
答:DSP(digital signal processor)是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或1的数字信号。再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂...
答:DSP是处理器,它的作用是高速执行串行算法,数字信号处理常用。 FPGA是一块逻辑门电路阵列,通过改变其内部逻辑单元的链接,用它能够实现各种各样的 组合数字电路。 这两者之间没有什么必然的联系,但您之所以一起问 也许是因为 现在FPGA由于逻辑单元数量节节攀升,导致在一些高规格的FPGA芯片上已经能够实现DSP处理器了(或...