数字信号处理(DSP)自1965年由Cooley和Tukey提出DFT(离散傅里叶变换)的高效快速算法(Fourier Transform,简称FFT)以来,已有近40年的历史。随着计算机和信息技术的发展,数字信号处理技术已形成一门独立的学科系统。数字信号处理作为一门独立学科是围绕着三个方面迅速发展的:理论、现实和应用。作为数字信号理论,一般是指利用经典理论(如数字、信号与系统分析等)作为基础而形成的独特的信号处理理论,以及各种快速算法和各类滤波技术等基础理论。由此在各个应用领域如语音与图象处理、信息的压缩与编码、信号的调制与调解、信道的辨识与均衡、各种智能控制与移动通讯等都延伸出各自的理论与技术,到目前可以说凡是用计算机来处理各类信号的场合都引用了数字信号处理的基本理论、概念和技术。
数字化技术有今天的飞速发展,是依仗于强大的软、硬件环境支撑。作为数字信号处理的一个实际任务就是要求能够快速、高效、实时完成处理任务,这就要通过通用或专用的数字信号处理器来完成。因此,数字信号处理器是用来完成数字信号处理任务的一个软、硬件环境和硬件平台。
DSP算法及芯片分类
DSP运算的基本类型是乘法和累加(MAC)运算,对于卷积、相关、滤波和FFT基本上都是这一类运算。这样的运算可以用通用机来完成,但受到其成本和结构的限制不可能有很高的实时处理能力。
DSP运算的特点是寻址操作。数据寻址范围大,结构复杂但很有规律。例如FFT运算,它的蝶形运算相关节点从相邻两点直至跨越N/2间隔的地址范围,每次变更都很有规律,级间按一定规律排列,虽然要运算log2N遍,但每级的地址都可以预测,也就是寻址操作很有规律而且可以预测。这就不同于一般的通用机,在通用机中对数据库的操作,具有很大的随机性,这种随机寻址方式不是信号处理器的强项。
可以看出无论是专用的DSP芯片或通用DSP芯片在结构考虑上都能适应DSP运算的这些特点。而专用芯片在结构上考虑的更加专业化,更为合理,因而有更高的运算速度。
DSP芯片按用途或构成分类可以分为下列几种类型: 为不同算法而专门设计的专用芯片:例如用于做卷积/相关并具有横向滤波器结构: INMOS公司的A100、A110;HARRIS公司的HPS43168; PLESSY GEC 公司的PDSP16256等。 用于做FFT: Austek公司的A41102, PLESSY GEC 公司的PDSP16150等。这些都是为做FIR、IIR、FFT运算而设计的,因而运算速度高,但是具有有限的可编程能力,灵活性差。
为某种目的应用的专门设计系统,即ASIC系统。它只涉及一种或一种以上自然类型数据的处理,例如音频、视频、语音的压缩和解压,调制/解调器等。其内部都是由基本DSP运算单元构建,包括FIR、IIR、FFT、DCT,以及卷积码的编/解码器及RS编/解码器等。其特点是计算复杂而且密集,数据量、运算量都很大。
积木式结构:它是由乘法器、存储器、控制电路等单元逻辑电路搭接而成,这种结构方式也称为硬连线逻辑电路。它是一种早期实现方法,具有成本低、速度高等特点,由于是硬连接因而没有可编程能力。目前主要用于接收机的前端某些高频操作中。
用FPGA(现场可编程陈列)实现DSP的各种功能。实质上这也是一种硬连接逻辑电路,但由于有现场可编程能力,允许根据需要迅速重新组合基础逻辑来满足使用要求,因而更加灵活,而且比通用DSP芯片具有更高的速度。一些大的公司如 Xinlinx、Altera也正把FPGA产品扩展到DSP应用中去。
通用可编程DSP芯片:这是目前用得最多的数字信号处理应用器件,其特点本文将予以详细讨论。
片上系统Soc(System on Chip),这是数字化应用及微电子技术迅速发展的产物,是下一代基于DSP产品的主要发展方向之一。它把一种应用系统集成在一个芯片上。通常,为满足系统的性能要求和提高功率效率,会把DSP和MCU的多处理器处理平台集成在一起。图1 是由TI公司推出的开放多媒体应用平台(OMAP),用来支持2.5G和3G应用而设计的处理器体系结构,它支持语音、音频、图像和视频信号处理应用的各种性能。其中关键器件有:低功耗的DSP芯片,用来做媒体处理;MCU用来支持应用操作系统及以控制为核心的应用处理;MTC是内存和流量控制器,确保处理器能高效访问外部存储区,避免产生瓶颈现象,提高整个平台的处理速度。
DSP对MCU性能上的改进
对数字信号处理器可以确切的下这样的定义:解决实时处理要求,适合DSP运算需求的单片可编程微处理器芯片。原理上说通用微机、单片机都可以用来做信号处理的硬件平台,但作为DSP实时处理要求必须满足大数据量、复杂计算、实时性强的各种运算,因而DSP芯针对DSP算法特点做了以下几方面的改进:
运算能力上的扩充
采用专用的硬件乘法器,有足够的字长,乘法结果保留全部数值,用双字长乘法存储器,同时可以用来做双精度运算。
自动产生数据地址
通用处理器由ALU产生地址,在DSP中专门有地址产生单元,通过程序循环,自动产生数据地址,这一单元本身也是一个微处理器,可以通过编程产生复杂的非顺序地址(例如FFT中的倒位序地址产生)。
指令时序的产生不对其他运算单元造成额外开销
指令时序是可编程的,在遇到执行程序转移和循环时,不会额外增加开销。
简单比例定标运算得到宽的动态范围
一般DSP芯片中都有桶形移位器,可以在一定范围内调整数据输出宽度,特别是在做浮点和块浮点运算时,免去主处理器作多次移位和旋转操作。
审核编辑:汤梓红
-
处理器
+关注
关注
68文章
19191浏览量
229311 -
dsp
+关注
关注
553文章
7965浏览量
348417 -
数字信号处理器
+关注
关注
5文章
456浏览量
27332
发布评论请先 登录
相关推荐
评论