Menu Close

什么是 DSP ?数字信号处理系统, DSP的构成和应用领域

DSP是(digital signal processor)的简称,是一种专门用来实现信号处理算法的微处理器芯片。根据使用方法的不同,DSP可以分为专用DSP和可编程DSP,专用DSP只能用来实现某种特定的数字信号处理功能,如数字滤波、FFT等。

专用DSP不需编程,使用方便,处理速度快,但是灵活性差。

可编程DSP则像GPP(General Purpose Processor,如Pentium)一样有完整的指令系统,通过软件实现各种功能。

DSP的发展

DSP的发展历史大致可以分成四个阶段:萌芽阶段、成长阶段、成熟阶段、突破阶段。

萌芽阶段:1982年以前

在这段时期里为解决Von Neumann结构在进行数字信号处理时总线和存储器之间的瓶颈效应,许多公司投入大量人力和物力开展了很多探索性的工作,研制出了一些DSP的雏形,如AMI的S2811、Intel的2920、AT&T的DSP-1和NEC的uPD7720。但这些产品的运算速度都太慢,而且开发工具严重不足,无法进行大规模的开发工作,还不能称作真正意义上的DSP。第一片DSP是1982年TI公司出品的TMS320C10,它是—个16位的定点DSP,采用了哈佛(Harvard)结构,有一个乘加器和一个累加器。TMS320C10完成—次乘加操作需要390ns,即在一秒钟的时间内可以完成250万次左右的乘加运算。或许正是因为生产出了第一个DSP,TI公司在此后的三十几年中一直是DSP界的领军人物。

成长阶段:1982-1987年

这段时间内各公司相继研制出了自己的DDSP并不断地改进。如1985年,TI推出了TMS320C20,它具备单指令循环的硬件支持,寻址空间达到64K字,有专门的地址寄存器,一次乘加运算只需耗时200ns。1987年,Motorola公司推山了DSP56001,采用24位的数据和指令,有专门的地址寄存器,可以循环寻址,累加器有保护位,一坎乘加运算只需耗时75ns。此外,在这段时期中还有一些代表产品,如AT&T的DSPl6A、AD的ADSP-2100,TI的TMS320C50。

成熟阶段:1987-1997年

在这个阶段里各公司不断借鉴相互的优点,并完善自身的设计,推出了特点分明的产品,如TI的TMS320C54系列、AD的ADSP2100系列、Lucent(前身为AT&T)的DSPl600系列和Motorola的DSP56000系列。它们在供电上都支持3.3v,片上的存储器也较大,都有JTAG模块支持用户在线调试。另外,TI等公司还专门提供DSP的内核,为一些专用集成电路(ASIC)的开发提供了空间。此外,在成熟阶段还首次出现了多处理核的DSP,如TI的TMS320C80和Motorola的MC68356等,虽然它们的推出在商业上并不算成功,但却指明了一个有潜力的发展方向。

突破阶段:1997年直至现在

这段时间里DSP的发展非常迅速,各公司相继建立了自己从定点到浮点,从低端到高端,从通用到专用完整的产品系列,并且在DSP设计上有了大的飞跃,推出了一些性能突出的产品。很多公司相继采用先进技术研制了计算性能很高的DSP,如AD的SHARC系列、TI的TMS320C6000系列、Motorola和Agere(前身为Lucent微电子)的StarPro等,每秒钟可以完成1G条以上的指令,计算速度惊人。TI公司还研制出功耗最小的DSP TMS320C55系列,为便携式设备提供了一个明智的选择。

回顾DSP发展的二十几年,也正是电子、信息和微电于技术快速发展的二十年,正是后者为DSP提供了必要的技术支持和应用的广阔空间,使得DSP及其相关的技术日益受到人们的重视。

DSP的应用

DSP的产生主要是为了满足通信、雷达、数字电视等领域对实时数字信号处理的需要。典型的数字信号处理算法包括数字滤波、FFT等。这些算法的共同特点是要进行密集的数学计算,因此DSP在体系结构上采取了一系列措施,使之在数学计算方面具有特别突出的性能;而在其它方面,例如文字处理、数据库管理等则不如GPP。除了密集的数学计算之外,DSP应用的另一个突出特点是实时性。在许多应用领域,如通信中的调制、解调、雷达中信号检测等等,数据是以帧为单位更新的,每她的长度一般为微秒到毫秒量级,DSP必须在这段时间之内完成处理并输出结果,这就是所谓实时处理。显然,实时处理要求处理器具有极高的处理速度,能够对外部事件迅速做出反应(能够及时迅速地响应中断),并且具有强大的IO吞吐能力。

面对DSP巨大的市场和广阔的发展前景,世界上最大的几个半导体公司都对此投入巨资、开展竞争。如TI、AD、Agere、Motorola、Siemens、Semiconductor等公司都在全力开发和生产DSP器件,不同公司DSP的侧重点都有所不同。

数字信号处理包括以下几个关键步骤:

  1. 信号采集:这一步骤涉及使用传感器传感器从物理世界中收集数据。收集到的信号通常是模拟信号。
  2. 模数转换(ADC):模拟信号通过模数转换器(ADC)转换为数字格式,以便数字系统进行处理。
  3. 数字处理:这是 DSP 的核心,数字算法被应用于操作数字信号。这可能涉及到滤波、调制、解调、压缩、增强等操作,具体取决于应用场景。
  4. 数模转换(DAC):处理完成后,数字信号通过数模转换器(DAC)转换为模拟格式,以输出到物理世界中。

DSP 算法可以在运行于通用计算机上的软件、专用 DSP 芯片或专用 DSP 硬件上实现。常见的 DSP 算法包括傅立叶变换、数字滤波器(如 FIR 和 IIR 滤波器)、离散余弦变换(DCT)、快速傅立叶变换(FFT)等。

DSP的结构特点

1.MAC指令,硬件乘法器和累加器。

2.存储器结构

GPP一般采用Von Neumann结构,如图所示,系统只有一套总线(包括数据总线和地址总线)和单一存储器,无论是数据还是指令都要经过同样的数据通道进入处理器内核。

哈佛结构将指令存储空间和数据存储空间分离开,各自拥有独立的总线,这就使取指令和访问数据可以同时进行,从而缓解了存储器的瓶颈效应。

3.寻址方式。在进行数字信号处理时,处理器往往要同时维护多个数据缓冲区,而且每个缓冲区的指针都要频繁移动。 GPP虽然有基址和变址寄存器,但是这些寄存器不能自动更新;而且数量也有限,每个寄存器往往要管理多个缓冲区。DSP用特殊的硬件来寻址数据存储器,有大量寄存器可以用作数据指针(如ADSP21060有16个),指针的更新可以和其他操作并行执行,所以不占用处理时间。DSP还支持一些特殊的寻址方式,如用来实现环形缓冲区的环形寻址,实现FFT变换所必需的逆序寻址等。

4.零耗循环(zero overhead loop)

GPP每执行一次循环都要用软件判断循环结束条件是否满足,更新循环计数器,还要进行条件转移。这些例行操作要消耗几个周期的时间,这种消耗对于短循环是相当可观的。与GPP不同,DSP可以用硬件实现更新计数器等例行操作,不用额外消耗任何时间,所以是一种零耗循环。由于数字信号处理程序百分之九十的执行时间是在循环中度过,所以零耗循环对提高程序效率是非常重要的。

5. 程序执行时间可预测

实时处理不仅要求处理器必须具有极高的计算速度,而且还要求程序的执行时间要容易预测,否则开发人员无法判断自己的系统是否满足实时要求。高性能GPP普遍采用了CACHE和动态分支预测技术,这些动态特性虽然能够从统计角度提高处理速度,但也使处时间很难精确预测,因为当前指令的执行时间要受到程序运行的历史过程的影响。尽管从理论上说,程序员可以推测出最坏情况下的执行时间,但是由于各种动态特性的相互影响,最坏执行时间可能远远超过程序的典型执行时间,这将导致系统设计过于保守,严重浪费资源。与GPP不同,DSP的动态特性较少,而且还通过设置MAX(求最大值)、MIN(求最小值)、CLIP时,DSP生产商还提供了能够精确模拟每—条指令执行状态的软件仿真器Simulator。使设计人员在硬件系统完成之前就能够调试程序并验证处理时间。值得注意的是,TI的最新产品TMS320C6011设置了可选择的两级CACHE,而AD将要推出的TigerrSHARC采用了动态分支预测技术。这是否意味着DSP正在丧失程序执行时间可预测的特点,或者正在猴备采取其他措施(如提供工具软件)来弥补因芯片结构日趋复杂对预测时间造成的不利影响,我们将拭目以待。

6.外围设备

GPP硬件系统(如PC机)的开发一般由专业公司承担,用户只从事软件开发。而DSP工程师往往要自己设计硬件平台,而且许多DSP应用系统特别是嵌入式系统对体积、功耗有严格的限制,所以DSP必须具备开发简便的特点。多数DSP支持IEEE1149.1标准,用户可以通过JTAG端口对DSP进行在线实时仿真。另外DSP体现了片上系统(System on chip)的设计思想,在片上集成了DMA、中断控制、串行通信口、上位机接口、定时器等外围设备,有的DSP还包含AD和DA转换器。所以用户通常只需要外加很少的器件就可以构成自己的DSP系统。

DSP的组成(以ADSP-21xx为例)

DSP芯片能够以很高的速度实现各种DSP算法,在其内部包括以下功能单元。

计算单元——每个处理器包括3个独立的、功能完备的计算单元:算术/逻辑单元(ALU)、乘法/累加器(MAC)和桶状移位器。

计算单元直接处理16位数据并对多精度计算提供硬件支持。

数据地址产生器和程序控制器——两个专用的地址产生器和—个程序控制器提供对片内、片外存储器的寻址。程序掉制器支持单周期的条件分支和无开销循环。双数据地址生器使处理器能同时产生两个操作数的地址。数据地址产生器和程序控制器使计算单元保持连续工作状态,使流量达到最大化。

存储器——采用修改的哈佛结构,其中数据存储器存放数据,程序存储器既可存放指令又可存放数据。所有的处理器都有片内RAM,该片内RAM构成程序存储空间和数据存储空间的一部分。片内存储器的速度很高,处理器可以在一个周期读取两个操作数(一个来自数据存储器,另一个来自程序存储器)和一条指令(来自程序存储器)。

串口——串口(SPORT)提供带有硬件数据压扩部件的完整的串行接口。支持按μ律和A律压缩的扩展。SPORT可以容易地和多种流行的串行设备直接接口。每个SPORT能产生一个可编程的内部时钟或接收—个外部时钟。SPORT有多通道选项。

定时器一一一个带有8位预分频器的定时器/计数器可产生周期性的中断。

主机接口——主机接口(HIP)有16根数据引脚和11根控制引脚,可以和主机处理器直接连接,无须连接逻辑。HIP非常灵活,易于和各种主机处理器接口。如:Motorola 6800、Intel8051或其他ADSP-21xx系列处理器可以容易地接到HIP上。

DMA接口——内部DMA接口(IDMA)和字节DMA接口(BDMA)可对内部存储器进行有效的数据传送。IDMA接口具有16位多路复用的地址和数据总线,支持24位宽的程序存储器。IDMA接口是完全异步的,在DSP全速运行时,可以写入数据。字节DMA接口允许引导装载并且存储程序指令和数据。

模拟接口——DSP片内集成了模拟和数字信号混合处理电路。该电路由模数转换器、数模转换器、模拟和数字滤波器、处理器核的并行接口等组成。转换器采用Σ-Δ技术获取样本。

数字信号处理(DSP)系统几个主要组成部分构成

  1. 信号输入/输出接口:这是系统与外部世界进行通信的接口。它可以包括模拟信号输入和输出接口(例如模拟到数字转换器和数字到模拟转换器)、数字信号输入和输出接口(例如数字音频输入和输出接口)、网络接口等。
  2. 模数转换器(ADC)和数模转换器(DAC):ADC 用于将模拟信号转换为数字信号,而 DAC 则用于将数字信号转换为模拟信号。这两个组件允许数字信号处理系统与模拟世界进行交互。
  3. 数字信号处理器(DSP芯片)或处理单元:这是执行数字信号处理算法的关键组件。DSP 芯片通常具有高度优化的硬件结构,可以快速有效地执行各种信号处理操作。此外,通用处理器(如CPU)或图形处理器(GPU)也可以用于执行数字信号处理任务,尤其是对于一些通用性较强的应用。
  4. 存储器:存储器用于存储输入信号、处理中间结果和输出信号,以及存储运行 DSP 算法所需的数据和程序。存储器包括随机存取存储器(RAM)、只读存储器(ROM)、闪存等。
  5. 时钟和定时器:时钟和定时器提供系统的时序控制,确保各个组件按照正确的时间序列进行操作。这对于许多实时信号处理应用至关重要。
  6. 算法库和开发工具:这些工具包括预先实现的 DSP 算法库、开发环境和软件工具,用于开发、调试和优化数字信号处理应用。
  7. 外围接口:这些接口包括用于连接外部设备的接口,如通用串行总线(USB)、以太网、串行接口等。外围接口使系统能够与其他设备进行通信和交互。

这些组成部分共同构成了数字信号处理系统,使其能够有效地处理各种信号处理任务。不同应用领域的数字信号处理系统可能会有所不同,根据具体的应用需求和性能要求进行定制和优化。

数字信号处理系统(DSP)的应用领域

数字信号处理(DSP)在许多领域都有广泛的应用,包括但不限于以下几个方面:

  1. 音频处理:DSP 用于音频信号处理,如音频滤波、均衡、压缩、解码、合成,以及语音识别和语音合成等。
  2. 图像处理:DSP 用于图像信号处理,包括图像滤波、边缘检测、图像增强、图像压缩、图像识别等。在数字相机、视频监控、医学成像和机器视觉等领域有广泛应用。
  3. 通信:DSP 在通信系统中发挥重要作用,用于数字调制解调、信道编码解码、信号滤波、多址技术、自适应信号处理等,包括手机通信、无线局域网(Wi-Fi)、蜂窝网络、卫星通信等。
  4. 雷达和声纳:DSP 在雷达和声纳系统中用于目标检测、跟踪、信号处理、波形分析等,广泛应用于军事、航空航天、气象等领域。
  5. 医学成像:DSP 在医学成像设备中用于处理各种成像数据,如计算机断层扫描(CT)、磁共振成像(MRI)、超声波成像等,用于医学诊断和治疗。
  6. 消费电子:DSP 在消费电子产品中应用广泛,如数字音频播放器、数字电视、数字相机、游戏机、智能手机等,用于音频、图像、视频等信号处理。
  7. 控制系统:DSP 用于控制系统中的信号采集、滤波、控制算法执行等,如汽车引擎控制、飞机导航、工业自动化等。
  8. 生物医学工程:DSP 在生物医学工程中用于生物信号处理,如心电图(ECG)分析、脑电图(EEG)分析、生物信号特征提取等,用于医学诊断和生物信息学研究。
  9. 音视频编解码:DSP 在音视频编解码中起着重要作用,如音频编码(MP3、AAC)、视频编码(H.264、HEVC),用于数字媒体的压缩和传输。
READ  搭建一个超算中心,需要哪些芯片?中国超算的算力已不及美国“前沿”的十分之一
除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

Leave the field below empty!

Posted in 系统芯片

Related Posts