APP下载

浅谈FPGA在数字信号处理中的应用

2019-07-05陈海玲

智富时代 2019年5期
关键词:数字信号信号处理

陈海玲

【摘 要】数字信号处理主要是研究有关数字滤波技术、离散变换快速算法和谱分析方法。随着数字电路与系统技术以及计算机技术的发展,数字信号处理技术也相应地得到发展,其应用领域十分广泛,如面向低功耗、手持设备、无线终端的应用,包括手机、PDA、GPS、数传电台等。在硬件上的实现主要有以下三种:采用通用目的的可编程DSP芯片实现,采用特定目的的固定功能DSP芯片和ASCI实现,采用FPGA实现。随着FPGA的出现及应用推广,FPGA为数字信号处理提供了更好的解决方案,大容量的FPGA能够在集成度、速度和系统功能方面满足数字信号处理的需要,因其可编程器件及其开发工具的灵活性,利用FPGA设计数字信号系统,同时具备DSP处理器的灵活性和ASIC芯片的实时性。

【关键词】数字信号;FPGA;信号处理

一、引言

数字信号处理是研究用数字方法对信号进行分析、变换、滤波、检测、调制、解调以及快速算法的一门技术学科。常用的数字信号处理系统框图如下图1所示,以电子对抗系统为例,天馈分机将高频的雷达微波信号变频,输出中频信号,通过高速A/D变换器,变换为数字信号,在FPGA上经过一系列的数字信号处理后,再变换成带调制的模拟信号输出。其中抗混叠滤波器的作用,是将输入中频信号x(t)中高于折叠频率(其值等于采样频率的一半)的分量滤除,以防信号频谱的混叠。随后,信号经采样和A/D变换后,变成数字信号x(n)。数字信号处理器对x(n)进行处理,得到输出数字信号y(n),经D/A变换器转换成模拟信号,此信号经低通滤波器,滤除不需要的高频分量,最后输出平滑的雷达干扰信号y(t)。

图1 数字信号处理系统框图

二、数字信号处理的优点

数字信号处理作用简单来说就是把模拟信号数字化,转换成0和1组成的序列。它的优点主要是设备灵活、精确、抗干扰能力强、远距离传输不失真,模拟信号在远距离传输时信号衰减大,且抗干扰能力差;在模数转换时因采样率的关系会出现失真,但随着技术的进步采样率越来越高,这个缺点也越来越不明显了。

由于数字信号处理具有以上优点,数字信号处理在现实生活中得到了广泛的应用。目前,数字信号处理技术已广泛应用于雷达电子对抗、图像处理、多媒体技术、高清晰度电视、数字音响、AI以及机器人等各个领域。

三、FPGA简介

(一)FPGA概述

FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。

(二)FPGA工作原理

FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输入输出模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。 现场可编程门阵列(FPGA)是可编程器件,与传统逻辑电路和门阵列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的结构。FPGA利用小型查找表(16×1RAM)来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功能,FPGA允许无限次的编程。

(三)主要生产厂商

目前全球知名的FPGA生产厂商有:

a) Altera,现已被Intel收购,开发平台是Quartus II;

b) Xilinx,开发平台包括ISE和vivado;

c) Actel,开发平台是Libero;

d) Lattice,开发平台是diamond;

(四)FPGA的优越性

FPGA实现数字信号处理的能力与DSP器件相比,主要存在以下几个优点:

(1)高速并行处理能力。FPGA最大优势是其并行处理机制,即利用并行架构实现数字信号处理的功能;这一并行机制使得FPGA特别适合于完成FIR等数字滤波这样重复性的数字信号处理任务;对于高速并行的数字信号处理任务来说,FPGA性能远远超过通用DSP处理器的串行执行架构。

(2)接口灵活性。FPGA的IO桥接種类繁多,不同种类的级别的FPGA支持的IO标准和协议都不尽相同,但是这些IO的驱动能力或是电压都是可编程配置的。DSP内部有很多现成的硬件模块和接口以及控制器,但是需要软件编程设定,可以实现PWM控制,接口控制,UART接口,SPI接口等功能。但是由于受指令集的时钟周期的限制,DSP不能处理太高的信号,对于速率等级为Gbps的LVDS之类信号就很难以涉及了。

四、FPGA在数字信号处理领域的应用

(一)实时数字图像处理

实时图像处理通常涉及到大量的运算,需要很高的计算速度、存储容量和数据带宽。这对基于传统应用而设计的通用处理器而言,是个巨大的负担。因此,以往多采用价格比较昂贵的专用图像处理芯片来满足需求。专用的图像处理器件主要有专用集成芯片ASIC(Application Specific Integrated Circuit)、数字信号处理器DSP(Digital Signal Process)和现场可编程门阵列FPGA(Field Programmable Gate Array)以及相关电路组成。它们可以实时高速完成各种图像处理算法。

FPGA器件是当今运用极为广泛的可编程逻辑器件,FPGA器件在结构上具有逻辑功能块排列,可编程的内部连线连接这些功能模块来实现一定的逻辑功能。工作时,这些配置数据存放在片内的SRAM中,使用SRAM的FPGA器件,在工作前需要从芯片外部加载配置数据,配置数据可以存储在片外的EPROM或其他存储体上,设计者可以控制加载过程,在现场修改器件的逻辑功能,即所谓现场编程。FPGA有很强的灵活性,可以根据需要进行重构配置,有较强的通用性,适于模块化设计;同时其开发周期短,系统易于维护和扩展,适合实时的信号处理,能够大大提高图像数据的处理速度,满足系统的实时性要求。与此同时,FPGA自身也在迅速发展,其集成度、工作速度不断提高,包含的资源越来越丰富,可实现的功能也越来越强。随着EDA技术的不断发展,FPGA依靠其真正的硬件并行性和极大的灵活性, 以及能够迅速占领市场的巨大优势,已经得到了广泛的应用。尤其在视频图像处理中,需要对大量的高速、并行的视频流数据进行实时处理,FPGA更能发挥其独有的优势。

(二)软件无线电领域应用

数字信号处理技术是软件无线电通信系统的基础。目前尽管低功耗、超强功能的数字信号处理器发展迅速,但数字信号处理器在速度、功耗上的现状仍然是制约软件无线电发展的关键之一。数字信号处理的另一研究内容就是软件,软件是软件无线电技术的核心。在目前数字信号处理器不能满足软件无线电设计要求的情况下,开发数字信号处理软件应是软件无线电技术的主攻方向。这其中包括各种FFT算法、调制解调、信源编码、信道编码等各种通信软件,也包括方式控制、信号控制和数据交换软件。FPGA已从灵活的逻辑设计平台发展到信号处理引擎。当前软件无线电的算法主要在FPGA上实现,这是由于FPGA的灵活性和实时处理能力所致。FPGA 因有效的适合于高速并行乘法累加函数。现代FPGA可执行18×18乘法运算,速度超过200MHz。这使得FPGA成为FET、FIR,数字下变频器(DDC)、数字上变频器(DUC)、相关器和脉冲压缩(用于雷达处理)运算的理想平台。

(三)水声信号处理领域

高分辨率图像声纳和多波束测深等领域需要对水声换能器阵列输出的几十路甚至上百路信号进行处理,这要求声纳信号处理系统具有很高的数据吞吐能力。以往的声纳系统通常采用高速信号处理器(DSP,如TI公司生产的TMS320C6416)作为核心处理部件。为满足实时性的要求,常需要采用多片DSP处理器组成并行处理系统。

现在,随着可编程逻辑器件技术的发展,具有强大并行处理能力的FPGA在性能、成本、体积、功耗等方面部显示出了其优势。若采用FPGA作为DSP的协处理器,专门执行实时性强、运算量大、算法结构规整的算法,DSP将从重复繁琐的工作中解脱出来,整个系统的性能也将显著提高。

在水声信号处理中,FFT变换、数字滤波、相关运算是应用得最为广泛的几种数字信号处理算法,高效地实现上述算法具有很高的实用价值。

五、总结研究及发展

除了国内外很多院校和科研机构一直在从事研究基于FPGA的数字信号处理应用之外,近几年基于市场需求,出现了很多新兴领域,如O2O、大数据、穿戴设备、AI、深度学习等,这些领域也基于FPGA在数字信号处理的应用,解决各自领域遇到的一些工程技术瓶颈,尤其是有Google、Nvidia这样的行业领头公司在推动,带来了很多基于FPGA的数字信号处理需求,不断推动其在工程领域的发展。

在FPGA信号处理和系统方面,有了喜人的进展,正在进行与世界先进国家同样的研究。如国防科学技术大学的ATR实验室采用了FPGA可重构计算系统进行机载图像处理和自动目标识别,主要是利用该系统进行复杂的卷积运算,同时利用它的可变柔性来达到自适应的目的。北京理工大学研究利用FPGA提高加解密运算的速度,等等。

现在,可编程逻辑器件在密度、性能和功耗上都有显著的进步,为数字信号处理开创了新的领域,使得构造的数字信号处理系统能夠保持基于软件的解决方案的灵活性,又能够接近ASIC的性能。FPGA内部的功能块中的SRAM查找表(Look Up Table,删构成函数发生器,这种结构特别适用于并行处理结构,如分布式算法(Distributed Arithmetic,DA)。相对于串行运算为主导的通用DSP芯片来说,其并行度和可扩展性都很好,它逐渐成为构造可编程的高性能算法结构的新的选择。据分析,在未来,数字信号处理器将会主宰需要复杂算法的应用领域,而FPGA将会统治更多前端的应用,如FIR滤波、CORDIC算法或FFT。

【参考文献】

[1] 程佩青,数字信号处理教程.第二版.北京:清华大学出版社,2001,1-91.

[2] 戴明桢.数字信号处理的硬件实现.第一版.北京:航空工业出版社,1998 1-50.

[3] 杨毅明.数字信号处理. 北京:机械工业出版社,2012,1-50.

猜你喜欢

数字信号信号处理
两种数字信号浪涌保护器(SPD)测试分析
数字电子技术中的数字信号和数字电路
《信号处理》征稿简则
《信号处理》第九届编委会
《信号处理》征稿简则
《信号处理》第九届编委会
基于小波神经网络的数字信号调制方式识别