1.3.3 FPGA在数字信号处理中的应用
数字信号处理技术的实现平台主要有ASIC、DSP、CPU及FPGA。随着芯片生产工艺的不断发展,这几种突现平台的应用领域已越来越呈现相互融合的趋势,但因各自的侧重点不同,依然有各自的优势及鲜明的特点。关于上述四种平台的性能、特点、应用领域等方面的比较和分析,一直都是广大技术人员讨论的热点之一。相对而言,ASIC只提供可以接受的可编程性和集成水平,通常可为指定的功能提供最佳解决方案;DSP可为复杂分析或决策分析等提供最佳的可编程解决方案;CPU则在嵌入操作系统、可视化显示等领域得到了广泛应用;FPGA可为涉及高度并行或涉及线性高速信号处理提供最佳的可编程解决方案。
在评估信号处理器件的性能时,必须衡量该器件是否能在指定的时间内完成所需的功能,一种最基本的方法就是测量1024点快速傅里叶变换(FFT)的处理时间。考虑一个具有16个抽头的FIR滤波器,该滤波器要求在每次采样中完成16次乘积和累加(MAC)操作。TI公司的TMS320C6203具有300 MHz的时钟频率,在合理的优化设计中,每秒可完成4亿~ 5亿次MAC操作。这意味着由TMS320C6203构成的FIR滤波具有最大为每秒3100万次的输入采样速率。但在FPGA中,所有16次MAC操作均可并行执行。对于Xilinx公司的Virtex系列FPGA,16位MAC操作大约需要配置160个CLB,因此16个并发MAC操作的设计实现将需要大约2560个CLB。XCV300E系列FPGA可轻松实现上述配置,并允许FIR滤波器的输入采样速率为每秒1亿次。
目前,无线通信技术的发展十分迅速,无线通信技术发展的理论基础之一是软件无线电技术,而数字信号处理技术是实现软件无线电技术的基础。无线通信一方面正向语音和数据综合的方向发展;另一方面,在手持PDA产品中越来越多地需要移动通信技术。这一要求对应用于无线通信领域中的FPGA提出了严峻的挑战,其中最重要的三个方面是功耗、性能和成本。为了适应无线通信技术的发展需要,FPGA系统芯片(System on a Chip,SoC)的概念、技术、芯片应运而生。利用系统芯片技术将尽可能多的功能集成在一片FPGA上,使其在性能上具有速率高、功耗低等特点,不仅价格低廉,还可以降低复杂性,便于使用。
实际上,FPGA的功能早已超越了传统意义上的胶合逻辑(Glue Logic)功能。随着各种技术的相互融合,为了同时满足运算速度、复杂度,以及降低开发难度的需求,目前在数字信号处理领域及嵌入式技术领域,FPGA加CPU的配置模式已浮出水面,并逐渐成为标准的配置模式。全球最大的两家FPGA厂商—Altera和Xilinx均推出了各自的嵌入了CPU的FPGA及对应的开发软件。