PGA是一种可编程的硅芯片,DSP是数字信号处理,当体系规划人员在项目的架构规划阶段就面对究竟选用FPGA仍是DSP的重要问题。本文将首要别离介绍FPGA和DSP的特色,然后再从内部资源、编程言语、功用多个视点解析两者的不同。
1、FPGA与DSP的特色
FPAG的结构特色
片内有许多的逻辑门和触发器,多为查找表结构,完结工艺多为SRAM。规划大,集成度高,处理速度快,履行效率高。能完结杂乱的时序逻辑规划,且编程灵敏,便利,简略,可屡次重复编程。许多FPAG可无限重复编程。运用重新装备可削减硬件的开支。缺陷是:掉电后一般会丢掉原有逻辑装备;时序难规划;不能处理多事情;不适合条件操作。
DSP的结构特色
1、 选用数据和程序别离的哈佛结构和改善的哈佛结构,履行指令速度更快。
2、 选用流水线技能,削减每条指令履行时间。
3、 片内多总线,可一起进行取指及多个数据存取操作。
4、 独立的累加器及加法器,一个周期内可一起完结相乘及累加运算。
5、 有DMA通道操控器及串行通信口等,便于数据传送。
6、 有中止处理器及守时操控器,便于构成小规划体系。
7、 具有软硬件等候功用,能与各种存储器接口。
DSP作为专门的微处理器,首要用于核算,优势是软件的灵敏性。适用于条件进程,特别是杂乱的多算法使命。DSP经过汇编或高档言语(如C言语)进行编程,实时完结计划。因而,选用DSP器材的优势在于:软件更新速度快,极大地提高了体系的可靠性、通用性、可替换性和灵敏性。缺陷:遭到串行指令流的约束;超越几MHZ的取样率,一个DSP 仅能完结对数据十分简略的运算;研制周期长。
2、内部资源
FPGA侧重于规划具有某个功用的硬件电路,内部资源是VersaTIles(ActelFPGA)之类的细小单元,FPGA的内部单元初始在编程前都是运用的是HDL言语完结硬件电路的规划描绘。FPGA内部的连线资源将这些功用模块的内部和模块之间的信号连接起来,构成较大的模块。FPGA能够内部完结ALU,加法器,乘法器,累加器,FIFO,SRAM,DDRcontroller,FFT,HDLC,DMA,PWM等等数字电路,也就说咱们要用其完结一个特定的或是通用的硬件功用一个或是多个模块,这些模块的各个细节都要要用HDL来描绘规划完结。
现在的FPGA都能够直接内嵌比如ARM7,CoretexM1,Core8051等微处理器,用于FPGA的软核的,也有的FPGA厂商将一些硬件模块直接做到FPGA中,这些是FPGA内部的硬核。传统的FPGA都是完结纯数字电路的,业界只要Actel的FPGA完结了数模混合的PSC单芯片技能,真实的提高和扩展了FPGA的运用功用和范畴。
此外,大都FPGA都有PLL,DLL之类的锁相环,Slew可调,Actel的还内建了OSC,RTC,Powermanager之类的硬件单元,乃至Actel的Fusion系列还内建了600kbps的12bit的ADC以及MOSFETDriver之类模仿接口,内部有UserFlashMemeory,FlashROM等资源能够完结真实的PSC,Bootloader之类的功用。
DSP首要是算法处理,内部资源首要是乘法器,加法器之类的资源,有SPI接口,UART接口,承受必定的指令集,内部的资源基本上都是现成的,需求客户的需求而重新装备,便利于客户的运用,可是相对来讲其功用是有局限性的,所以首要用于某些特定的范畴。DSP也有内嵌的锁相环,计数器,Baudrate发生器,有的DSP也有ADC模仿接口。
3、编程言语
FPGA首要运用HDL,包含VHDl,Verilog,还有数模混合的描绘言语Verilog-AMS等。(课程引荐:FPGA培训)
DSP运用C,汇编言语编程。(课程引荐:C6000 DSP培训)
4、功用视点
FPGA遍及用于完结数字电路模块,基本上能完结一切的数字电路,传统的数字功用模块,以及客户产品特定需求的数字处理模块。FPGA的IO桥接品种繁复,不同品种的等级的FPGA支撑的IO规范和协议都不尽相同,可是这些IO的驱动才能或是电压都是可编程装备的。任何数字功用电路的完结,高速信号的处理,操控范畴的信号处理,桥转化协议的完结,Actel的Fusion还能用于电流/电压检测,温度的检测,MOSFETdriver,电源办理,其共同的Flash工艺技能能够依托电池供电作业,和掉电实时保存数据,超低功耗,多种作业形式(StaTIc,Sleepmode),特别IGLOO芯片的功用在Sleepmode下功耗只要5uW。这样的功耗用于手机,GPS之类的移动手持设备中能发挥更大的功用运用。
除此之外,用FPGA完结AS%&&&&&%的前期的规划验证,FPGA完结DSP的功用,完结CPU的功用,MCU的功用,内存操控器,用于工业的PWM,SVPWM,Clarke,Park的正逆变换的完结,VGA操控,数据的编解码,解复用,高达上Gbps的信号的处理,协议的转化完结等等等等功用,都是DSP难以担任的。
DSP内部有许多现成的硬件模块和接口以及操控器,可是需求软件编程设定,能够完结PWM操控,接口操控,UART接口,SPI接口等功用。可是因为受指令集的时钟周期的约束,DSP不能处理太高的信号,至于说上Gbps的信号,LVDS之类的信号就很难以触及了。所以相应的运用范畴会有所约束。可是不同的范畴客户的规划计划不同,考虑的侧重点不同,有些范畴规划者也是喜好运用DSP的,比如算法完结,协议的处理等等假如换作FPGA来处理那就因小失大。
5、适用的场合
DSP适用于体系较低取样速率、低数据率、多条件操作、处理杂乱的多算法使命、运用C言语编程、体系运用浮点。)适合于较低采样速率下多条件进程、特别是杂乱的多算法使命。
FPAG适用于体系高速取样速率(≥几MHZ)、高数据率、框图方法编程、处理使命固定或重复、运用定点。) 适合于高速采样频率下,特别是使命比较固定或重复的状况以及试制样机、体系开发的场合。