1、第1章 DSP概述1.1 引言引言1.2 什么是什么是DSP1.3 DSP处理器的特点处理器的特点1.4 DSP处理器的应用处理器的应用1.5 具有代表性的具有代表性的DSP芯片生产商芯片生产商 习题与思考题习题与思考题现代社会,数字电视、数码相机、数字电话、数字视频、数字音频等产品已经得到了广泛的应用。与传统的模拟产品比较,这些数字产品能够提供更完美的效果。这在很大程度上是由于这些产品使用了数字信号处理技术的缘故。目前,数字信号处理任务大多数都是由DSP来完成的,DSP技术已成为人们日益关注的并得到迅速发展的前沿技术。1.1 引引 言言DSP是数字信号处理(Digital Signal Pr
2、ocessing)的缩写,也是数字信号处理器(Digital Signal Processor)的缩写。我们所说的DSP技术,通常指的是利用通用的或专用的DSP处理器来完成数字信号处理的方法和技术。1.2 什么是什么是DSP1.2.1 数字信号处理数字信号处理数字信号处理是一种通过使用数学方法来提取信息,处理现实信号的信号处理技术。这些被处理的信号由数字序列表示。1807年傅里叶分析诞生,并在随后产生了两种傅里叶分析方法,即连续的和离散的傅里叶分析,但是由于其计算量太大,很难在实际使用中发挥作用。直到1965年,IBM公司的Cooley和Tukey提出DFT(离散傅里叶变换)的高效快速算法(F
3、ourier Transform,FFT),才使数字信号处理方法的使用有了突破性的进展。自FFT产生以来,数字信号处理(DSP)已有40多年的历史,在这期间,伴随着计算机和信息技术的飞速发展,数字信号处理技术日臻完善,进而形成一门独立的学科系统。如今,在数字信号处理的各个应用领域,如语音与图像处理、信息的压缩与编码、信号的调制与调解、信道的辨识与均衡、各种智能控制与移动通信等都延伸出各自的理论与技术,可以说凡是用计算机来处理各类信号的场合都引用了数字信号处理的基本理论、概念和技术。经典的数字信号处理方法有时域的信号滤波(如IIR、FIR)和频域的频谱分析(如FFT)。1.2.2 数字信号处理器
4、数字信号处理器数字信号处理器(Digital Signal Processors,DSP)是指具有专门为完成通用数字信号处理任务而优化设计的系统体系结构、软件和硬件资源的单片、可编程的处理器。经典的数字信号处理,如IIR、FIR和FFT的核心是乘加运算。数字信号处理器是专门为完成数字信号处理任务而优化设计的,其设计的宗旨是为了更快地完成数字信号处理任务,因此其特点是更适合于乘加运算。另外,数字信号处理器是可编程的,非常利于程序修改以及产品升级。1.2.3 数字信号处理的特点与优势数字信号处理的特点与优势1.数字信号处理的优点数字信号处理的优点1)设计灵活性图1-1为一个典型的FIR滤波器,同样
5、的滤波效果可以由传统的模拟滤波器完成,但是如果需要改变设计时,模拟系统必须重新进行系统设计,至少需要改变系统中的某些器件或参数,然后再重新装配和调试,这个过程是非常费时和费力的。而如果使用以DSP处理器为核心的数字系统,则是在一个硬件平台通过用各种软件来执行各种各样的数字信号处理任务。改变设计时,只需要改变相应的软件或软件中的参数,而不需要改变硬件平台本身,具有极大的灵活性,是传统的模拟系统无法比拟的。例如,数字滤波器可以通过重新编程来完成低通、高通、带通和带阻等不同的滤波任务,不需要改变硬件;而模拟滤波器则必须改变其设计并重新调试,才能达到目的。近年来得到迅速发展和应用的软件无线电技术,是在
6、一个以高性能DSP处理器为核心的硬件平台上,用不同的软件来实现对不同工作模式的电台间通信;对于模拟电台而言,只有工作模式完全相同的电台之间才能进行通信。以DSP处理器为核心的数字系统的灵活性是模拟系统很难达到的,有的甚至是模拟系统不可能实现的。图1-1 有限冲击响应滤波器(FIR)结构图2)精度高一般来说,数字系统精度要比模拟系统高。模拟系统由于受元器件精度的制约,精度始终很难提高,虽然现在有了高精度的电阻等元器件,但其直接影响了系统的成本,而且其精度也不能让人满意。而数字系统的精度是由系统所采用的A/D转换器的位数、处理器字长以及所采用的算法等因素决定的。相对而言,可以获得更高的精度。3)可
7、靠性和可重复性好数字系统的可靠性和可重复性也是模拟系统所不能达到的。模拟系统受环境温度、湿度、噪声、电磁场等的干扰和影响大。当环境的温度、湿度、振动以及在外界电磁场干扰等条件改变时,模拟系统的性能就会发生改变,而且可能是大的改变。另外,随时间的改变,模拟系统的特性也会发生改变。数字系统的输入、输出是由软件来确定的,因此,不存在随时间而改变的问题。相对模拟系统而言,数字系统的稳定性要好得多,即受时间和环境的影响要小得多。两个同样设计的模拟系统,采用同样的元器件,在相同的输入信号和环境下,由于元器件参数的离散性,所得到的输出往往会有细小的差别。另外,同一个模拟系统在不同的时间和环境下,相同的输入也
8、往往得不到相同的输出结果。而数字系统一旦其设计完毕以后,精度也就确定了,并且其精度不会随着时间和环境的变化而变化。4)便于大规模集成随着科学与技术的发展,近年出现了大量的模拟集成电路和模拟/数字混合集成电路,但从可选择的种类、集成度、功能与性能、性价比等诸方面而言,还是不能与超大规模数字集成电路相比。DSP处理器就是基于超大规模数字集成电路技术和计算机技术而发展起来的、适合于作数字信号处理的高速高位微处理器。它们体积小、功能强、功耗小、一致性好、使用方便、性价比高。5)数字系统的其他优势数字系统除具有上述优势以外,还在抗干扰性能、数据压缩、实现自适应算法等方面有不俗的表现。数字系统的抗干扰功能
9、强大。在数字系统中,信号是用0和1来表征的,虽然0和1所表征的数字信号也会受到噪声的干扰,但只要能够正确地识别0和1,并将其再生,则可以完全消除噪声的影响。另外,迅速发展的各种数字纠错编解码技术,能够在极为复杂的噪声环境中,甚至信号完全被噪声所淹没的情况下,正确地识别和恢复原有的信号。这点在模拟系统中是无法做到的。模拟信号进行压缩时付出的代价是随着带宽的变窄,信号的质量会受到比较大的影响。然而数字信号的压缩可以在对原信号质量影响很小的前提下,取得很高的压缩比。这对数据的传输和存储,无疑是很有利的。例如,采用数字电视技术以后,可以利用原有的有线电视网络传输更多的、质量更好的电视节目,并且可以提供
10、诸如互动电视等更好的服务。从信号与系统的角度讲,自适应就是使系统的特性随输入信号的改变而改变,从而在某种准则下,得到最优的输出。例如,IP电话中的回声会严重影响服务质量,必须加以消除。但回声的幅度和延时量随时都在改变,只有使用自适应系统才能将其消除。就模拟系统而言,只有改变系统的设计和元器件的参数,才能改变系统的特性,因而很难实现实时自适应。以DSP处理器为核心的数字系统,已经成为实现各种自适应算法的首选。对于特定的自适应算法,它能根据确定的准则,实时地改变系统的参数,从而实现实时自适应;对于不同的自适应算法,只需要更换适当的软件即可。2.模拟信号处理的不可替代性模拟信号处理的不可替代性尽管数
11、字系统具有如此之多的优越性,但仍然不能完全取代模拟系统。实际上,自然界的信号绝大多数是模拟信号。如声音、图像、温度、压力、速度、加速度等信号都是随时间连续变化的模拟信号。我们要利用数字系统对其进行处理,必须首先用模拟系统和模拟数字混合系统加以处理。例如用模拟滤波器将其改变成带限信号,用模拟放大器改变其幅度,然后采样/保持,通过A/D变换器变换成为数字信号后,才能用数字信号处理系统加以处理;处理之后,还要通过D/A变换器变换成为模拟信号,并通过适当的模拟信号处理,才能加以使用。所以,要想构成一个完整的数字信号处理系统,大多数情形下离不开模拟系统。1.2.4 数字信号处理算法的特点数字信号处理算法
12、的特点上面我们讲到了DSP处理器是专门为数字信号处理算法而优化设计的,那么DSP算法到底有什么特点呢?图1-1中有限冲击响应滤波器(FIR)可以用下式来表示:(1-1)式1-1是一个一系列乘积的累加,也就是说该式使用了乘法和加法,并且做了N重的循环。10)()(Niiinxbny由此可以看出DSP算法是属于数学计算,这区别于那些以数据操作为主的常规任务。数据操作的典型运用如字处理、数据库管理、表格、操作系统等,其主要操作有诸如将数据B移动到数据A,检测A是否等于B等。而数学计算的典型运用,如数字信号处理、科学和工程仿真等,其主要操作是乘法、加法等运算。1.2.5 实时处理的概念实时处理的概念上
13、面我们讲了模拟系统从本质上来说是实时的,那么,什么是实时处理呢?可以这样说:实时的概念是根据具体的应用来确定的。对于一个处理过程,如果满足下式,我们可以认为处理是实时的。等待时间0 (1-2)如图1-2所示,要使等待时间0,就必须使处理时间小于采样时间,也就是说要在规定的采样时间内完成与之相应的数据处理。图1-2 处理时间、采样时间、等待时间关系图对于图1-1中有限冲击响应滤波器(FIR)来说,要使其处理是实时的,就必须在采样时间内完成式(1-1)的计算,这样的计算量通常来说都是相当大的。数字信号处理器是专门为完成数字信号处理任务而优化设计的,因此其实时处理数据的能力也是独一无二的。1.2.6
14、 数字信号处理算法实现的途径数字信号处理算法实现的途径数字信号处理的实现方法有多种,大体可以分为基于PC和非基于PC的两种。基于PC的实现方法可以说是通过软件来实现的。例如,我们在个人电脑上常用的MP3播放器就是通过软件来实现MP3格式的音频文件解压缩的,而这过程是通过在个人电脑上运行的软件来实现的。非基于PC的实现方法可以说是通过硬件来实现的。例如,FPGA(现场可编程门阵列)、ASIC(专用集成电路)以及专用的和通用的DSP,都可以用来实现DSP算法。用FPGA(现场可编程阵列)实现DSP的各种功能实质上是采用了一种硬连接逻辑电路,但由于FPGA具有现场可编程能力,允许根据需要迅速重新组合
15、基础逻辑来满足使用要求,因而更加灵活,而且比通用DSP芯片具有更高的速度。一些大的公司如Xilinx、Altera也正把FPGA产品扩展到DSP的应用中去。值得一提的是Xilinx在2004年9月成立了DSP部,2005年又加大对DSP研发的投入。ASIC系统是为某种应用目的专门设计的系统。通常用于数字信号处理的ASIC系统只涉及一种或一种以上自然类型数据的处理,例如音频、视频、语音的压缩和解压、调制/解调等。其内部由基本DSP运算单元构建,包括FIR、IIR、FFT、DCT、卷积码的编解码器及RS编解码器等。其可应用于计算复杂密集、数据量、运算量都很大的场合,但成本较高。通用可编程DSP芯片
16、是目前使用最多的数字信号处理器件。其特点本书将予以详细讨论。1.3.1 DSP处理器的结构特点处理器的结构特点DSP处理器是专门用来进行高速数字信号处理的微处理器,其设计的着眼点是要求速度快、处理的数据量大、效率高。它的主要结构特点如下。1.3 DSP处理器的特点处理器的特点1.采用哈佛采用哈佛(Harvard)结构和改进的哈佛结构结构和改进的哈佛结构以奔腾为代表的通用处理器采用冯诺依曼(Von Neumen)结构,这主要考虑到成本,其结构如图1-3所示。在冯诺依曼结构中,程序代码和数据共用一个公共的存储空间,指令、数据、地址的传送采用同一条总线,靠指令计数来区分三者。由于取指和存取数据是在同
17、一存取空间通过同一总线传输,因而指令的执行只能是顺序的,不可能重叠进行,所以无法提高运算速度。图1-3 冯诺依曼结构DSP处理器几乎毫无例外的采用哈佛结构,如图1-4所示。哈佛结构把程序代码和数据的存储空间分开,并有各自的地址和数据总线,每个存储器独立编址,用独立的一组程序总线和数据总线进行访问。这样,DSP处理器就可以并行地进行指令和数据的处理,提高了信号处理的速度。图1-4 哈佛结构为了进一步提高信号处理的效率,在哈佛结构的基础上加以改进,使得程序代码存储空间与数据存储空间之间也可以进行数据交换,则称为改进的哈佛结构(Modified Harvard Architecture)。这种结构可
18、以并行进行数据操作,例如在做数字滤波时把系数放在程序空间,待处理的样本数据放在数据空间,处理时可以同时提取滤波器系数和样本进行乘法和累加操作,从而大大提高运算速度。改进的哈佛结构还可以从程序存储区来初始化数据存储区,或把数据存储区的内容转移到程序存储区,这样可以复用存储器,降低成本,提高存储器使用效率。2多总线结构多总线结构DSP除了将数据、地址总线分开以外,还具有多条附加总线,如图1-5所示。例如TMS320C54X的结构中有一组程序总线,两组读数据总线和一组写数据总线,这样可以同时读取两组数据和存储一组数据,即同一时钟周期内可以执行一条3个操作的指令。这种附加总线可扩充地址增加数据流量,提
19、高寻址能力。图1-5 多总线结构图3采用流水线操作采用流水线操作计算机在执行一条指令时,要通过取指、译码、取数、执行等各阶段,需要若干个指令周期才能完成。流水线技术是将各指令的各个步骤重叠起来进行,虽然每条指令的执行仍然要经过这些步骤,需要同样的指令周期数,但是将一个指令段综合起来看,其中每一条指令似乎都是在一个周期内完成,可以把指令周期减到最小,增加数据吞吐量。图1-6为流水线技术示意图。图1-6 流水线技术如图1-6所示,可进一步把一条指令分解为预取指、取指、解码、取操作数地址、取操作数和执行等6个阶段,图中的字母分别表示:P预取指;F 取指令;D 码;A 取操作数地址;R 取操作数;X
20、执行。从图1-6中我们可以看出,当第一条指令执行到取指令的同时,第二条指令在预取指;当第一条指令执行到解码时,第二条指令在取指令,第三条指令在预取指;以此类推,直到第六条指令预取指时,第一条指令已经在执行了。对于图中的流水线状况,当第六条指令开始时,我们就称这个流水线满载了。当流水线满载以后,从图中纵向看,似乎一条指令在一个周期内就完成了。这有些类似我们通常见到的工厂的生产流水线,一条生产线分为很多的工序,零件进入生产线依次进入各道工序,当各道工序都开始工作时,成品就从生产线上生产出来了。图1-7直观地给出了采用流水线技术之后,执行同样的指令,所需要的指令周期数较采用前得到了很大的节约。图1-
21、7 采用流水线技术前后的比较但是,这种流水线操作也不是十全十美的,其主要原因是,一项处理很难被分解成若干个处理规模一致、在时间上有最佳配合的流水段,因而需要用寄存器协调流水线工作。流水线操作适用于循环操作时间足够长或多个数据点反复执行同一指令的情况。这是由于,流水线启动和停止的阶段是流水线逐步被填满和出空的过程。对于一次性非重复计算,流水线不可能达到稳态,反而用主要时间做填满和出空操作,因而是不合适的。我们从DSP算法的特点,可以看出其非常适合于流水线操作,因为其计算大多是相同的乘法或加法运算,而且循环的次数较多,流水线容易达到满载的运行状态。4.硬件乘法器和高效的硬件乘法器和高效的MAC指令
22、指令在DSP算法中大量的是乘法累加运算。通用微处理一般是通过一系列的加法来完成乘法运算的,一个乘法运算需要消耗多个周期,而DSP芯片上有硬件乘法器,使得乘法运算能够做到一个周期内完成,这就大大提高了DSP处理器进行DSP运算的速度。另外,DSP还具有与硬件乘法器相配合的MAC乘法累加指令。硬件乘法累加器如图1-8所示,它可以在单周期内取两个操作数相乘,并将结果加载到累加器。有的DSP还具有多组MAC结构,可以并行处理。图1-8 硬件乘法累加器图1-8中,在加法器方框(ADD)右边的A、B、0分别代表有可能的加法器输入,它们为累加器A、累加器B及0值。从图1-8中,我们还可以看出,由于DSP采用
23、了哈佛结构,它可以将运算所需要的采样值和系数分别放在数据存储器和程序存储器之中,这样可以通过不同的总线将所需要的数据同时取出。在这种布局下,DSP可以实现单周期的MAC指令,从而进一步提高了运算的速度。我们通常将具有硬件乘法器作为DSP区分于其他处理器的标志。5DSP结构上的其他特点结构上的其他特点DSP除了具有上述的结构特点外,还有以下特点:(1)DSP具有独立的传输总线及其控制器。DSP处理器高速处理速度必须与高速的数据访问和传输相配合。并且为不影响CPU及其相关总线的工作,DSP的DMA(直接内存存取方式:数据在内存与I/O设备间直接进行成块传输)单独设置有传输总线及其控制器,因此DMA
24、可以独立工作。有时为了提高DSP的实时处理能力,把多个DSP组成DSP处理器阵列,并行工作,此时DMA可以作为各处理器之间进行数据传输的主要通道。(2)DSP具有专用的数据地址发生器(DAG)。在DSP运算中,存储器的访问具有可预测性。例如在FIR滤波中,样本、系数都是顺序访问的,因此在DSP芯片中专门设置数据地址发生器。其实它也是一个算术逻辑运算单元ALU,具有简单的运算能力。在通用机的CPU中,数据地址和数据处理都由同一ALU完成。例如在8086中,做一次加法需要三个周期,而计算一次地址需要56周期,这样会耗费大量的时间,在DSP芯片中就不需要这样的额外开销。另外在DSP芯片的数据地址产生
25、中还支持间接寻址、循环寻址、倒位寻址等特殊操作,以适应DSP运算的各种寻址需求。(3)DSP具有丰富的外设(Peripherals)。DSP处理器往往是脱机独立工作的,因此为与外设接口方便,往往设置了丰富的周边接口电路。一般包含如下片上外设:时钟产生器(振荡器与锁相环PLL)、定时器(Timer)、软件可编程等待状态发生器(以便使较快的片内设施与较慢的片外电路及存储器协调工作)、通用的I/O口、多通道同步缓冲串口(McBSP)和异步串口、主机接口(HIP)、JTAG边界扫描逻辑电路(IEEE 标准1149.1)(便于对DSP处理器做片上在线仿真和多处理器情况下的调试)。(4)DSP具有片内存储
26、器。DSP芯片片内一般带有存放程序的只读存储器ROM和存放数据的随机存储器RAM,符合DSP运算简单、核心程序短小的特征,同时可以提高指令传输效率,减小总线接口压力。这些片存储器不存在与外部总线竞争和访问外部存储器速度不匹配的问题,这样使DSP处理器具有强大的数据处理能力。(5)DSP具有与结构相配合的RISC指令集。一般DSP处理器具有高度专门化、复杂且不规则的指令集,这样单个指令字可以同时控制片内多个功能单元操作。DSP处理器指令集在设计时有两个特点:一是最大限度地使用了处理器的硬件资源,在单个指令中并行完成若干操作,例如在完成主要算术运算的同时,并行地从存储器提取一个或两个数据以及完成地
27、址指针的更新;其次是指令所使用的存储空间缩减到最小,为缩短指令字长,往往用状态寄存器的模式来控制处理器的操作特性,例如舍入或饱和的处理,不再将这些信息作为指令的一部分来处理。综上所述,DSP处理器实现高速运算的主要途径可以概括为:硬件乘法器及乘-加单元、高效的存储器访问、零开销循环、专门的适应硬件结构的指令集、多执行单元、数据流的线性I/O口。1.3.2 DSP与与MCU、GPP的区别及其优势的区别及其优势微处理器自诞生以来,就沿着GPP(General Purpose Processor)即通常所说的通用CPU,以微机中Intel公司的奔腾系列CPU为代表、微控制器(MCU,即通常所说的单片
28、机)以及DSP三个方向发展。MCU集成了片上外围器件,适合不同信息源的多种数据的处理诊断和运算,侧重于控制,速度并不如DSP;GPP不带外围器件(例如存储器阵列),是高度集成的通用结构的处理器,是去除了集成外设的MCU;DSP运算能力强,擅长很多的重复数据运算。这三类处理器各有专长,虽然随着技术的发展,这三类处理器之间互相借鉴,并有融合的趋势,但总的来说,它们各自有不同的应用领域。1与与GPP相比相比DSP具有的优势具有的优势上文讲到了DSP算法的实现方式,其中有基于PC的实现方式,也就是利用软件来实现。现在的GPP速度越来越快,在实现DSP算法时可能并不比DSP慢,那么为什么大多数的DSP算
29、法的实现是由DSP来完成的呢?我们从以下几点来考虑这个问题。首先,在功耗方面,奔腾系列CPU的功耗多在20100 W,PowerPC的功耗最小也要510 W,而DSP可以做到12 W。如TMS320C54X是目前普遍使用的定点DSP芯片,当它的速度在100 MIPS(MIPS:每秒执行的百万指令数,是处理器速度的重要指标之一)时其功耗为60 mW,而本书重点讲述的TMS320C55X的功耗更低,一般工作状态下平均功耗在20 mW左右,最低可至 0.33 mA/MHz的超低功耗,为节能型便携式系统提供了令人难以置信的潜能。其次,采用GPP来设计系统比采用DSP的花费更多。就单个的芯片而言,GPP
30、的价格一般来说都比DSP要贵的多,现在市场上GPP的价格在几百元人民币到上千元不等,而普通的DSP价格一般在100元人民币左右。另外,使用GPP来开发,其开发费用高,上市的周期长,而使用DSP开发则与之相反。最后,DSP的尺寸比GPP要小得多,更适用于便携产品。我们只要看一下PC机和数码相机的大小便可以直观的知道两者之间的差距了,很难想象我们会使用一台PC机大小的数码相机。DSP的尺寸有越来越小的趋势,并且随着设备不断变小,速度越来越快,便携性越来越高的情况下,此趋势会继续发展。由上可知,如果设计的系统或装置需要低成本、小尺寸、低功耗并且对信号处理的实时性要求很高时,我们使用DSP来进行开发。
31、如果需要更大的存储空间、更高级的操作系统支持的时候,我们采用GPP来进行开发。2MCU与与DSP的比较的比较MCU区别于DSP的最大特点在于它的通用性,反映在指令集和寻址模式中。与MCU相比,DSP实时处理要求必须满足大数据量、复杂计算、实时性强的各种运算。DSP在运算能力上进行了扩充,它采用专用的硬件乘法器,有足够的字长,乘法结果保留全部数值,用双字长乘法存储器,同时可以用来做双精度运算。另外,如上文所述,DSP能自动产生数据地址;指令时序的产生不对其他运算单元造成额外开销;一般DSP芯片中都有桶形移位器,可以在一定范围内调整数据输出宽度,特别是在做浮点和块浮点运算时,免去主处理器作多次移位
32、和旋转操作。DSP与MCU的结合是数字信号控制器(DSC),它终将取代这两种芯片。数字信号控制器(DSC)是一种集微控制器(MCU)和数字信号处理器(DSP)专长于一身的新型处理器。与MCU一样,DSC具有快速中断响应、提供面向控制的外设(如脉宽调制器和看门狗定时器)、用C编程等特性。DSC还集成了诸如单周期乘累加(MAC)单元、桶形移位器(barrel shifter)和大的累加器等功能。1.3.3 DSP处理器性能指标处理器性能指标一般,对DSP处理器缺乏一种诸如对PC机那样公正合理的性能评价体系,这是由于各DSP厂商推出的产品在结构和数据传输能力上有很大的差异,DSP产品都是专门为某种目
33、的而设计的,因而正确评价只有与特定的应用联系起来,评价结果才有意义。这里将常用的指标做一介绍。(1)MIPS(Millions of Instructions Per Second),每秒执行百万指令数。一般DSP为100 MIPS,TI公司的5000系列性能最高可达900 MIPS,使用超长指令字的TMS320B2XX为2400 MIPS。(2)MOPS(Millions of Operations Per Second),每秒执行百万操作数。这个指标的问题是什么是一次操作。通常操作包括CPU操作外,还包括地址计算、DMA访问数据传输、I/O操作等。一般说MOPS越高意味着乘积-累加和运算速
34、度越快。(3)MFLOPS(Million Floating Point Operations Per Second)。这是衡量浮点DSP芯片的重要指标。例如TMS320C31在主频为40 MHz时,处理能力为40MFLOPS,TMS320C6701在指令周期为6 ns时,单精度运算可达GFLOPS。(4)MBPS(Million Bit Per Second)。它是对总线和I/O口数据吞吐率的度量,也就是某个总线或I/O的带宽。例如对TMS320C6XXX在200 MHz时钟、32 bit总线时,总线数据吞吐率为6400 MBPS。(5)MACS(Multiply-Accumulates P
35、er Second)。例如TMS320C6XXX乘加速度达300600 MMACS。以上传统指标虽然可以作为设计时可选的参考指标,但是有很大的局限性。例如它没有考虑存储器的使用和器件的功耗,一旦器件与外部速度较慢的存储器进行数据交换时,运行速度马上就会降低。另一评价指标是核心算法评价指标。它是利用构成大多数DSP系统的基本运算模块(例如FIR、IIR、FFT、向量加等典型运算)来进行评价的。在规定大小适度、输入、输出要求统一,保证功能一致性的条件下,也允许程序员针对所使用的处理进行代码的优化。评价指标是执行时间、存储器的使用和能耗等。DSP处理器还有其他评估指标,各类评估指标之间都有其自身的不
36、足,因而正确的选用器件要根据任务需要量身定做,不可一味追求某项高指标,要根据性价比合理选用器件。由于超大规模集成电路技术的迅猛发展,DSP技术也得到了突飞猛进的发展。成本降低,促使了其需求的上升和应用领域的扩展。目前,DSP在计算机、通信、消费类电子产品方面(即所谓3C领域)得到了广泛的应用。DSP在通信领域应用占72%,计算机占3%,消费类、办公自动化各占2%,从趋势上看,工业(特别是变频电机控制)中的应用,以及消费类产品中应用的份额会有所上升。下面就DSP的几个与我们日常生活相关的典型应用做一简单介绍。1.4 DSP处理器的应用处理器的应用1.数字视频数字视频DSP在数字视频领域从基础设备
37、到客户端,以及便携式设备中都得到广泛应用。在诸如DVD、数码相机、数字摄像机、便携式媒体播放器(PMP)、数字机顶盒、流媒体、监视IP视频节点、基于 IP 的视频会议终端等应用上,DSP大有用武之地。特别是TI公司推出的DaVinci技术使手持、家庭以及车载数字媒体设备方面的突破性创新成为可能。DaVinci专门针对数字视频系统进行了优化,并集成了基于数字信号处理器(DSP)的片上系统(SoC)、多媒体编解码器、ASP和框架以及开发工具。这些集成组件提供了一套完整的开放平台解决方案。现在,开发者可以创建具有丰富特性的独特设备,并针对特定应用进行优化,从而快速投入市场。2.电信电信电信应用要求具
38、有操作各种各样的数据、语音、电话和连接功能的处理能力。使用可编程 DSP,开发者可以轻松地扩展产品功能和特性集来匹配设计要求。此外,开发者可以自定义、改编以及扩充基于 DSP 的设计,以满足特定的要求并集中于终端产品个性化。DSP 的解决方案可以供远程数据收集、因特网连接、电话协处理以及语音频带处理客户端电话等使用。其中数字移动电话是DSP最为重要的应用领域。由于DSP具有强大的计算能力,使得移动通信的蜂窝电话重新崛起,并创造了一批诸如GSM、CDMA等全数字蜂窝电话网。由于采用DSP技术,移动电话的更新换代变得更为容易,只需在统一的硬件平台基础上,通过软件的不断升级就可以生产出各式各样的新款
39、手机。3.安防安防通过使用DSP技术,可以将只有人类可以理解的模拟视频输入转换为计算机可以理解的 0 和 1 的数字流。通过选择处理空间超过转换模拟视频信号所需的DSP,就有可能创造具备领先功能的可编程智能产品,从而真正使产品具有特色并获得未来证明。换句话说,摄像机不再局限于记录事件。通过DSP技术,它们现在可以评估事件的重要性和相关性,而无需人员干预。提高效率的方法之一是让摄像机评估事件且仅在事件确实重要的情况下才触发警报:通过移动检测机制,智能摄像机可以实时跟踪运动;通过限制关注范围,摄像机可以确定移动是发生在安全门附近(从而指示一个事件)还是在街道对面(因为不是关注点,从而也不是一个事件
40、);摄像机可以利用对象识别来评估是重要事件(对象是一个人)还是错误警报(对象是一只鸟或狗);通过面部识别技术,摄像机可以验证人员身份。此时,仅当具有足够证据表明事件是相关的且可能非常重要时,摄像机才会触发警报以告知人员。4.生物辨识生物辨识生物辨识一般是指指纹匹配、面部识别和虹膜扫描等技术。每种技术的识别系统都使用传感器收集图像(指纹、面部或虹膜图像),然后将它们与注册用户的数据库中的数据进行匹配。识别准确度是许多因素的综合,但其中最重要的是图像质量。如果噪声和人为因素使关键的详细信息(例如用于模型匹配的关键指纹细节)模糊不清,则尝试将一个图像与用户数据库进行匹配就变得非常困难。因此,图像质量
41、就非常重要。DSP可以降低图像的噪声,进行图像清理并且可以为扫描仪提高一个具有快速内存结构的强大处理器,以实时地完成所需要的处理。5.控制控制DSP可以提供较MCU而言更快的执行速度,从而达到更高的控制性能,且DSP片上集成的外设丰富、便于设计、控制精度高,因此越来越多地应用于控制领域,其主要用于磁盘控制、激光打印机控制、电机控制、发动机控制、机器人控制等场合。1.TI公司公司TI(Texas Instruments)公司的DSP市场占有率最高,大概每2个数字蜂窝电话中就有1个采用TI产品,全世界90%的硬盘和33%的Modem均采用TI的DSP技术。1997年,TI公司的两项重大投资项目令其
42、霸主地位更加稳固不可动摇:一是设立1亿美元的风险基金,支持那些需要启动资金的DSP应用企业,为掀起DSP的应用高潮打下坚实的基础;1.5 具有代表性的具有代表性的DSP芯片生产商芯片生产商二是启动500万美元的全球大学科研基金,用于支持各高校的DSP教育,TI已在中国国内几十所大学建立了DSP实验室和技术中心。TI公司DSP目前广泛应用的有TMS320C2000系列、TMS320C5000系列和TMS320C6000系列。TMS320C2000系列主要用于控制系统,因为它的资源非常丰富,在控制系统中需用到的一些外设该系列均在片内集成了。TMS320C5000系列主要用于数字信号的算法处理,如F
43、IR、IIR、FFT等。TMS320C5000系列的DSP的速度比TMS320C2000快,TMS320C2407最快只能到40 MHz,TMS320C5410可以达到160 MHz。目前,该系列主要用来做数字信号方面的处理以及简单的静态图像处理等这样一些资源需要处于中等的算法。TMS320C 6000系列主要是用在实时图像处理方面,更侧重于算法处理。TMS320C2000系列DSP定位于控制优化的DSP,其融合了微控制器(MCU)的控制外设集成功能和易用性,以及TI领先的DSP技术处理能力和C编程效率。所有C28X控制器所运行的程序是相互兼容的。所有C28X控制器都能提供12位高速模数转换器
44、和高级PWM发生器。TMS320C2000系列DSP主要应用于硬盘控制、采暖控制、通风空调控制、电机控制、家用电器以及变频电源控制。TMS320C2000系列DSP的主要代表产品如下:TMS320F283XX浮点控制器:业界首款浮点数字信号控制器,工作频率高达150 MHz,并可提供300MFLOPS的处理速度和512 KB的片上闪存。TMS320F282X控制器:这些定点32位控制器可与F283XX浮点控制器100%兼容。F282XX与F283XX具有相同的特性集和引脚至引脚兼容性,而且完全与F283XX系列软件兼容。TMS320F281X控制器:定点32位控制器,具有高达256 KB的闪存
45、和150 MIPS的性能,同样提供引脚兼容的ROM和RAM特有版本。TMS320F280XX控制器:定点32位控制器,采用100引脚封装,具有高达256 KB的闪存和100 MIPS的性能。F280XX系列有12款产品,它们全部都引脚至引脚兼容。TMS320LF240X控制器:较旧的16位控制器,提供40 MIPS的性能以及高度集成的闪存、控制和通信外设。其起价低于2美元,还提供了引脚兼容的ROM版本。TMS320C5000系列DSP定位于高效能的DSP。现在TMS320C5000 DSP 平台已进行优化,适合于消费类数字产品市场及通信电子产品。TMS320C5000系列是目前TI DSP的主
46、流产品,它涵盖了从低档到中高档的应用领域,也是用户最多的系列。TMS320C5000系列DSP的主要代表产品如下:TMS320C55XDSP:包括TMS320VC5503、TMS320VC5507和TMS320VC5509A DSP,这些都是业界最低功耗和待机功耗超低的DSP。它们的高级电源管理技术会自动关闭闲置的外设、存储器和核心功能单元,从而延长了电池寿命。此外,该系列还包括OMAP器件。OMAP器件在低功耗、实时信号处理的基础上增加了ARM的命令和控制功能。TMS320C54XDSP:包括TMS320VC5402 DSP。它具有广泛的性能和外设选项,这些选项适用于数字蜂窝和个人通信系统、
47、PDA、数字无绳和无线数据通信、语音分组、便携式因特网音频以及调制解调器。TMS320C6000系列DSP定位于高性能的DSP。该系列能提供业界最高性能的定点DSP,非常适合于成像、宽带基础设施和高性能音频应用。2.其他公司其他公司除TI公司以外,AD公司、Motorola等公司也推出自己的DSP芯片,并且各有特色。AD公司的DSP包括Blackfin处理器、SHARC处理器、TigerSHARC处理器、ADSP-21XX处理器。Blackfin处理器代表了一种新型16/32 bit嵌入式处理器,它非常适合会聚起关键作用的应用多格式音频、视频、语音和图像处理;多模式基带和分组处理;控制处理和实
48、时安全性。正是这种软件灵活性和可扩展性的独特结合为Blackfin处理器赢得了会聚应用领域广泛的适应性。SHARC处理器占据浮点DSP市场的主要份额,提供了配有卓越I/O吞吐率的优异内核和存储器性能。TigerSHARC处理器为多处理应用提供最高性能密度,提供高于每秒吉字节浮点操作次数GFLOPS的高性能。ADSP-21XX处理器是代码和引脚兼容的数字信号处理器家族,具有高达160 MHz的工作频率和低至184 A的功耗。ADSP-21XX系列产品适合语音处理和话音频带调制解调以及实时控制应用。Motorola公司16位的DSP56800系列,主要有DSP56F801、56F802、56F80
49、3、56F805、56F807以及56F824、56F826、56F827等几种型号。最新一代的Motorola DSP产品采用Star*Core内核,性能上有进一步改进,这一代产品以MSC8101、MSC8102为代表,采用SC140内核,带有PowerPC的总线接口,与PowerPC微处理器配合使用,用于高速有线与无线通信。Motorola的24位DSP主要有56300系列和56600系列。56300系列包括DSP56301、56303、56305、56306、56307、56309、56311、56321、56364、56366、56367等,其中5636X系列用于音频信号处理。1.结合你的专业方向或是你感兴趣的应用领域,试举出一个DSP(数字信号处理器)的具体应用实例,并说明为什么要采用DSP以及是如何应用DSP的。2.简述数字信号处理的特点与优势。3.简述实时处理的概念。习题与思考题习题与思考题4.请详细描述冯诺依曼结构和哈佛结构,并比较它们的不同。5.简述DSP处理器的结构特点。6.简述DSP与MCU、GPP的区别及其优势。