匠人的百宝箱与非门分舵 https://bbs.21ic.com/?426660 [收藏] [复制] [RSS]

日志

DSP简介

已有 1425 次阅读2008-10-9 11:59 |个人分类:与非门专栏|系统分类:DSP

DSP(digital singnal processor)是一种独特的微处理器,是以数字信号来处理大量信息的器件。其工作原理是接收模拟信号,转换为0或1的数字信号,再对数字信号进行修改、删除、强化,并在其他系统芯片中把数字数据解译回模拟数据或实际环境格式。它不仅具有可编程性,而且其实时运行速度可达每秒数以千万条复杂指令程序,源源超过通用微处理器,是数字化电子世界中日益重要的电脑芯片。它的强大数据处理能力和高运行速度,是最值得称道的两大特色
    DSP既是Digital Signal Processing的缩写(数字信号处理的理论和方法)或者是Digital Signal Processor(用于数字信号处理的可编程微处理器)的缩写。我们所说的DSP技术,则一般指将通用的或专用的DSP处理器用于完成数字信号处理的方法和技术。

 

1. DSP的特点

 

    (1)在一个指令周期内可完成一次乘法和一次加法。
    (2)程序和数据空间分开,可以同时访问指令和数据。
    (3)片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问。
    (4)具有低开销或无开销循环及跳转的硬件支持。
    (5)快速的中断处理和硬件I/O支持。
    (6)具有在单周期内操作的多个硬件地址产生器。
    (7)可以并行执行多个操作。
    (8)支持流水线操作,使取指、译码和执行等操作可以重叠执行。
    与通用微处理器相比,DSP芯片的其他通用功能相对较弱些。

 

    1) 哈佛结构和改进的哈佛结构。

    哈佛结构就是将程序代码和数据的存储空间分开,各有自己的地址和数据总线。之所以采用哈佛结构,是为了并行进行指令和数据处理,从而可以大大地提高运算的速度。为了进一步提高信号处理的效率,在哈佛结构的基础上,又加以改善。使得程序代码和数据存储空间之间可以进行数据的传输,称为改善的哈佛结构。

   

    2) 采用流水技术。
     流水技术是将各指令的各个步骤重叠起来执行。DSP处理器所采用的将程序存储空和数据存储空间的地址与数据总线分开的哈佛结构,为采用流水技术提供了很大的方便。
为了提高DSP处理器的运算速度,它们无例外地设置了硬件乘法器,以及MAC(乘并且累加)一类的指令。
    DSP处理器都为DMA单独设置了完全独立的总线和控制器,这是和通用的CPU很不相同,其目的是在进行数据传输是完全不影响CPU及其相关总线的工作。
在DSP处理器中,设置了专门的数据地址发生器来产生所需的数据地址。数据地址的产生与CPU的工作是并行的,从而节省CPU的时间,提高信号的处理速度。
    DSP处理器为了自身工作的需要和外部环境的协调工作。往往都设置了丰富的外设。如时钟发生器。定时器等。
    定点DSP处理器和浮点DSP处理器。定点DSP中经常要考虑溢出问题,在浮点DSP基本上可以不考虑。与定点DSP处理器相比,浮点DSP处理器的速度更快,尤其是作浮点运算。在实时性要求很到的场合。往往考虑浮点DSP处理器。而浮点DSP处理器的价格比较高,开发难度更大。

 

2. DSP芯片的发展

 

    世界上第一个单片DSP芯片是1978年AMI公司宣布的S2811,1979年美国Iintel公司发布的商用可编程期间2920是DSP芯片的一个主要里程碑。这两种芯片内部都没有现代DSP芯片所必须的单周期芯片。 1980年。日本NEC公司推出的μPD7720是第一个具有乘法器的商用DSP 芯片。第一个采用CMOS工艺生产浮点DSP芯片的是日本的Hitachi 公司,它于1982年推出了浮点DSP芯片。1983年,日本的Fujitsu公司推出的MB8764,其指令周期为120ns ,且具有双内部总线,从而处理的吞吐量发生了一个大的飞跃。而第一个高性能的浮点DSP芯片应是AT&T公司于1984年推出的DSP32。
在这么多的DSP芯片种类中,最成功的是美国德克萨斯仪器公司(Texas Instruments,简称TI)的一系列产品。TI公司灾982年成功推出启迪一代DSP芯片TMS32010及其系列产品TMS32011、TMS32C10/C14/C15/C16/C17等,之后相继推出了第二代DSP芯片TMS32020、TMS320C25/C26/C28,第三代DSP芯片TMS32C30/C31/C32,第四代DSP芯片TMS32C40/C44,第五代DSP芯片TMS32C50/C51/C52/C53以及集多个DSP于一体的高性能DSP芯片TMS32C80/C82等。
    自1980年以来,DSP芯片得到了突飞猛进的发展,DSP芯片的应用越来越广泛。从运算速度来看,MAC(一次乘法和一次加法)时间已经从80年代初的400ns(如TMS32010)降低到40ns(如TMS32C40),处理能力提高了10多倍。DSP芯片内部关键的乘法器部件从1980年的占模区的40左右下降到5以下,片内RAM增加一个数量级以上。从制造工艺来看,1980年采用4μ的N沟道MOS工艺,而现在则普遍采用亚微米CMOS工艺。DSP芯片的引脚数量从1980年的最多64个增加到现在的200个以上,引脚数量的增加,意味着结构灵活性的增加。此外,DSP芯片的发展,是DSP系统的成本、体积、重量和功耗都有很大程度的下降。

 

3. DSP芯片的分类

 

    DSP的芯片可以按照以下的三种方式进行分类。

 

    (1)按基础特性分

    这是根据DSP芯片的工作时钟和指令类型来分类的。如果DSP芯片在某时钟频率范围内的任何频率上能正常工作,除计算速度有变化外,没有性能的下降,这类DSP芯片一般称之为静态DSP芯片。
如果有两种或两种以上的DSP芯片,它们的指令集和相应的机器代码机管脚结构相互兼容,则这类DSP芯片称之为一致性的DSP芯片。

 

    (2)按数据格式分

这是根据DSP芯片工作的数据格式来分类的。数据以定点格式工作的DSP芯片称之为定点DSP芯片。以浮点格式工作的称为DSP芯片。不同的浮点DSP芯片所采用的浮点格式不完全一样,有的DSP芯片采用自定义的浮点格式,有的DSP芯片则采用IEEE的标准浮点格式。

 

    (3)按用途分

按照DSP芯片的用途来分,可分为通用型DSP芯片和专用型的DSP芯片。通用型DSP芯片适合普通的DSP应用,如TI公司的一系列DSP芯片。专用型DSP芯片市为特定的DSP运算而设计,更适合特殊的运算,如数字滤波,卷积和FFT等。

 

4. DSP芯片的选择

 

    设计DSP应用系统,选择DSP芯片时非常重要的一个环节。只有选定了DSP芯片才能进一步设计外围电路集系统的其它电路。总的来说,DSP芯片的选择应根据实际的应用系统需要而确定。一般来说,选择DSP芯片时考虑如下诸多因素。

    (1) DSP芯片的运算速度。运算速度是DSP芯片的一个最重要的性能指标,也是选择DSP芯片时所需要考虑的一个主要因素。DSP芯片的运算速度可以用以下几种性能指标来衡量:

    1)指令周期。就是执行一条指令所需要的时间,通常以ns为单位。
    2) MAC时间。即一次乘法加上一次加法的时间。
    3) FFT执行时间。即运行一个N点FFT程序所需的时间。
    4) MIPS。即每秒执行百万条指令。
    5) MOPS。即每秒执行百万次操作。
    6) MFLOPS。即每秒执行百万次浮点操作。
    7) BOPS。即每秒执行十亿次操作。

    (2) DSP芯片的价格。根据一个价格实际的应用情况,确定一个价格适中的DSP芯片。
    (3) DSP芯片的硬件资源。
    (4) DSP芯片的运算速度。
    (5) DSP芯片的开发工具。
    (6) DSP 芯片的功耗。
    (7)其它的因素,如封装的形式、质量标准、生命周期等。

 

    DSP应用系统的运算量是确定选用处理能力多大的DSP芯片的基础。那么如何确定DSP系统的运算量以选择DSP芯片呢?

 

    (1)按样点处理

    按样点处理就是DSP算法对每一个输入样点循环一次。例如;一个采用LMS算法的256抽头德的自适应FIR滤波器,假定每个抽头的计算需要3个MAC周期,则256抽头计算需要256*3=768个MAC周期。如果采样频率为8KHz,即样点之间的间隔为125μs的时间,DSP芯片的MAC周期为200μs,则768个周期需要153.6μs的时间,显然无法实时处理,需要选用速度更快的芯片。

    (2)按帧处理

有些数字信号处理算法不是每个输入样点循环一次,而是每隔一定的时间间隔(通常称为帧)循环一次。所以选择DSP芯片应该比较一帧内DSP芯片的处理能力和DSP算法的运算量。假设DSP芯片的指令周期为P(ns),一帧的时间为⊿τ(ns),则该DSP芯片在一帧内所提供的最大运算量为⊿τ/ P 条指令。

 

5. DSP芯片的基本结构

 

    DSP芯片的基本结构包括:

    (1)哈佛结构;
    (2)流水线操作;
    (3)专用的硬件乘法器;
    (4)特殊的DSP指令;
    (5)快速的指令周期。

 

    1)哈佛结构

    哈佛结构的主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。与两个存储器相对应的是系统中设置了程序总线和数据总线,从而使数据的吞吐率提高了一倍。由于程序和存储器在两个分开的空间中,因此取指和执行能完全重叠。

    流水线与哈佛结构相关,DSP芯片广泛采用流水线以减少指令执行的时间,从而增强了处理器的处理能力。处理器可以并行处理二到四条指令,每条指令处于流水线的不同阶段。入图示出一个三级流水线操作的例子。

CLLOUT1
取指 N N-1 N-2
译码 N-1 N N-2
执行 N-2 N-1 N

 

    2)专用的硬件乘法器

乘法速度越快,DSP处理器的性能越高。由于具有专用的应用乘法器,乘法可在一个指令周期内完成。
    3)特殊的DSP指令DSP芯片是采用特殊的指令。
    4)快速的指令周期哈佛结构、流水线操作、专用的硬件乘法器、特殊的DSP指令再加上集成电路的优化设计可使DSP芯片的指令周期在200ns以下。

 

6. DSP系统的特点

 

    数字信号处理系统是以数字信号处理为基础,因此具有数字处理的全部特点:
    (1)接口方便。DSP系统与其它以现代数字技术为基础的系统或设备都是相互兼容,这样的系统接口以实现某种功能要比模拟系统与这些系统接口要容易的多。
    (2)编程方便。DSP系统种的可编程DSP芯片可使设计人员在开发过程中灵活方便地对软件进行修改和升级。

    (3)稳定性好。DSP系统以数字处理为基础,受环境温度以及噪声的影响较小,可靠性高。
    (4)精度高。16位数字系统可以达到的精度。
    (5)可重复性好。模拟系统的性能受元器件参数性能变化比较大,而数字系统基本上不受影响,因此数字系统便于测试,调试和大规模生产。
    (6)集成方便。DSP系统中的数字部件有高度的规范性,便于大规模集成。

 

7 . DSP芯片的应用

 

    自从DSP芯片诞生以来,DSP芯片得到了飞速的发展。DSP芯片高速发展,一方面得益于集成电路的发展,另一方面也得益于巨大的市场。在短短的十多年时间,DSP芯片已经在信号处理、通信、雷达等许多领域得到广泛的应用。目前,DSP芯片的价格也越来越低,性能价格比日益提高,具有巨大的应用潜力。DSP芯片的应用主要有:

     (1)信号处理--如,数字滤波、自适应滤波、快速傅里叶变换、相关运算、频谱分析、卷积等。
     (2)通信--如,调制解调器、自适应均衡、数据加密、数据压缩、回坡抵消、多路复用、传真、扩频通信、纠错编码、波形产生等。
     (3)语音--如语音编码、语音合成、语音识别、语音增强、说话人辨认、说话人确认、语音邮件、语音储存等。
     (4)图像/图形--如二维和三维图形处理、图像压缩与传输、图像增强、动画、机器人视觉等。
    (5)军事--如保密通信、雷达处理、声纳处理、导航等。
    (6)仪器仪表--如频谱分析、函数发生、锁相环、地震处理等。
    (7)自动控制--如引擎控制、深空、自动驾驶、机器人控制、磁盘控制。
    (8)医疗--如助听、超声设备、诊断工具、病人监护等。
    (9)家用电器--如高保真音响、音乐合成、音调控制、玩具与游戏、数字电话/电视等。

路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)