随着视频和静态图像使用的增长以及软件无线电(SDR)等可重复配置系统的需求增长,数字信号处理(DSP)的应用持续扩展。许多应用将重要的DSP处理与成本因素结合在一起,产生了对高性能、低成本DSP解决方案的需求。
传统上,设计者采用通用DSP处理器来实现DSP功能。通用DSP芯片将这些功能的高效实现与一个通用微处理器结合在一起。典型的时钟频率从数十兆赫兹到1GHz。其性能,以每秒百万次乘法累加来衡量,典型的范围是10至4000。需要更高性能的功能不得不被分成多个DSP引擎。这些芯片的价格范围从低端性能的几美元到高端的数百美元。
面向DSP的FPGA提供了在一个芯片中并行实现众多功能的能力。通用的布线、逻辑和存储器资源被用来连结功能、实现额外的功能和序列,并可按需存储数据。一些基本的器件只提供乘法器,要求用户使用逻辑来构造所有其它功能。
器件 | 时钟频率 | 乘法器数 | MMAC/s | 每1000的成本 | 每1000MMAC/s的成本 |
---|---|---|---|---|---|
TI DSP | 1GHz | 4 | 4000 | $256 | $0.064 |
TI DSP | 300MHz | 4 | 1200 | $40 | $0.033 |
ECP-DSP20 | 250MHz | 28 | 7000 | $59 | $0.008 |
更高级的器件提供加法、减法和累加器功能作为它们DSP模块套件的一部分。FPGA通常具有数十个乘法器单元并能在数百兆的时钟频率下工作。例如,LatticeECP-DSP 20 FPGA拥有28 18x18个乘法器,能够以250MHz的频率工作,性能高达7,000 MMAC/秒。上面的表格将FPGA和通用方法作了对比。
LatticeECP-DSP FPGA器件由低成本的FPGA结构外加四至十个sysDSP块组成。LatticeECP-DSP FPGA系列中的sysDSP块支持四种功能单元,并有三种数据宽度:9,18和36。每个sysDSP块中的资源可以被配置成下列四种单元:
每个块中可用的单元数目取决于所选的三种宽度:x9, x18及x36。 许多这样的单元经互连以实现高性能的并行DSP。