`
阅读更多

  现在,很多新兴的应用领域涌现了许多新的算法标准,这些算法对于处理器提出了更高的性能和控制要求。信号处理需要处理器提供高峰值性能,但这部分在整个算法中的比例有减少的趋势。对于开发包含高性能算法的大规模应用的设计团队来说,有很多种可供选择的方案。市场竞争的压力使得选择一个对高性能有充分保障的处理器平台来实现高性能的功能变得非常重要。但是选择超出需求性能很多的处理器平台对于系统成本和电源消耗也是有着很大影响的,这会直接导致产品缺乏竞争力。

  ARM在提供通用的RISC处理器架构的同时,为其增添了一些针对特定应用的高性能指令集,以期能够达到软件和硬件的一个优化平衡。这样,一些高度涉及信号处理的应用本来是要借助一块专用DSP来完成的,现在由一个ARM内核就可以实现同样的功能。比较典型的例子就是MP3音频算法。对于MP3算法的分析表明,一些关键的前端步骤的处理,包括读入比特流,霍夫曼(Huffman)解码和反量化(inverse quantization),这时,ARM RISC架构比普通的DSP能体现更佳的性能。同时,这个通用处理器还可以处理复杂的任务控制。

  ARM为信号处理算法专门发布了v5TE的架构,在普通的ARM架构基础上新增了有效的DSP指令。ARM的扩展DSP指令集使得ARM的CPU系列能够更好的适应复杂的信号处理,同时还保留了作为高性能RISC处理器所特有的低功耗特性。ARM v5TE的DSP扩展指令集已经在ARM946E-STM 和 ARM966E-STM和ARM926EJ-STM上得到应用。Intel也同时在他们和ARM架构兼容的XScale微处理器系列里实现了DSP指令集的扩展,并且主频达到了1GHZ。

  ARM的解决方案在解决应用问题而增强了性能的同时,还在性能和功耗,CPU核面积的大小等方面达到了均衡。像ARM9ETM这样的单核解决方案,同时满足了任务控制和信号处理方面的需求,比传统的DSP内核加通用内核的双核方案,在最终的效率和开发过程方面有了很大的提升。

  目标应用:

  ARM专门为ARM的各个平台开发了近乎于CD音质的音频算法,比如MP3,包括了WMA和MPEG AAC标准。总的来说,有着DSP增强指令的内核是最适合于应用在以前既需要高性能的DSP核同时又要求能够进行有效的任务控制的场合。比如大容量存储器,语音编码器,语音识别合成,网络应用,车控系统,智能手机,发报机和调制解调器。

  下图列举了DSP增强指令。包括单周期16x16和32x16的乘法指令,增加了饱和运算功能的运算指令。这些指令为开发稳定的操作系统和比特级精确的算法提供了方便。前导零运算指令为算法的标准化和浮点数运算特别是对于除法运算带来了高性能。这些DSP增强指令在ARMv5TE中得到了很好的实现。

  支持DSP增强指令的硬件架构是基于现有的ARM9TDMITMRISC核的,也是五级流水线,哈佛结构。DSP增强指令集对于整个现有结构的影响被控制到了最小,没有增加另外的寄存器或者CPU状态,也没有增加对寄存器使用的限制。如表一所示,ARM9E架构只增加了有限的部分: 一个快速32x16乘法单元,一个CLZ单元和两个饱和运算单元。

  因为D S P增强功能并没有对现有的架构做太大的修改,所以ARM9E优于原先的ARM9架构。ARM9E内核能达到和A R M 9内核差不多的主频,在0.18μm工艺下能达到195MHz,并且只有1.0mm2的晶圆面积(die area),功耗预计为0.5mW/MHz。

  DSP增强指令集并没有用特别的硬件逻辑来实现诸如modulo addressing,bit-wise reversal addressing和zerooverhead

  looping的指令。但同时支持这些运算也是很有意义的,所以可以用一些已有的指令组合来实现,尽管这会带来一些性能上的微小的损失。

  Bit-wise reversal addressing在快速傅立叶变换(FFT)中是一个很常见的功能需求,是很多DSP算法的基础功能。现有的桶位移(barrel shifter)功能提供了实现bit-wise reversal的一种仿真方法,和用单指令实现相比只有微小的性能损失。例如,对于一个512个样本的FFT来说,在ARM9E核上需要大概29k的时钟周期,其中只有大概300个时钟周期是用来仿真bit-reversed addressing的,只占了整个FFT变换的1%。

  案例分析——语音编码:

  GSM-AMR(Adaptive Multi Rate)语音编码方案已被3GPP (the Third Generation Partnership Project)选为GSM,UMTS和WCDMA网络的语音解决方案。 它近乎有线的语音传输质量和有效的频谱使用范围使得它可能成为下一代的无线语音编码标准。

  AMR自适应系统可跟据无线信道的质量自动调整语音和信道的比特率工作模式。支持AMR的增强型射频源算法还可以根据传输负荷和信道质量调整半比特率和全比特率模式。AMR编码的思想不止是根据无线传输的情况作出调整,并且能根据网络运营商的需要做出调整。

  AMR(自适应多速率)编解码器组由速率从1 2 . 2 k b p s至4 . 7 5 k b p s的ACELP声码器组成,它有8种固定的信源速率模式(4.75 ̄12.20kbit/s)。AMR以20ms的语音为一帧进行处理(对应于160个采样值在每秒8000个采样值的速率下)。AMR把160个13位的采样值映射为编码块,还能把这个编码块重构造为160个语音采样值。对于这160个采样值中的每一个来说,语音信号基于码激励线性预测(CELP)编码模式分析得到线性预测(LP)系数。这些系数被编码和传输。在解码的时候,这些系数被解码然后语音通过LP合成和加权滤波器合成为发音时的激发讯号(excitation signal)。

  AMR语音编码器是用定点标准C语言(fixed-point ANSI-C)描述的精确到bit位的算法,易于验证和测试。

  AMR实现:

  就像其他很多信号处理应用一样,实现AMR算法的一个关键是有效的数字滤波和数字相关性。ARM9E架构实现了对应于相关性操作的“块”操作,这使得对寄存器的访问减少,提高了效率。

  ARM9E指令集可以把两个16位数相乘的操作数分别放在一个32位的寄存器里,各占用半字的大小。然后把结果标量乘积放在一个32位的寄存器里。这种实现通过使用四个通用寄存器作为累加数,能够从三个另外的输入数据和系数得到联合乘积,而不用对数据和系数做移动操作。

  通常,普通的实现会对输入数据进行移位迭代以产生下一个乘积。通过复用块操作中的数据,四个相关系数的乘加操作只通过一次传输,节省了Load/Store的操作。图三指出了相关系数的块操作过程 。

  ARM9E的单周期饱和运算指令也使得块联合乘法变得更快。而相应的操作在ARM9架构上要用到四个周期。

  由于块操作对于相关系数计算效率上的增强,对于需要大量计算的AMR编码功能,ARM9E只需要实现同样功能的ARM9架构的指令的66%。

  G.723.1语音编码器:

  ITU标准G.723.1是一个为视频会议应用定制的语音压缩算法的国际标准。他能够把采样率为8KHz的语音信号编码为能在6.4或者5.3Kbps的信道上传输的信号。G.723提供了约为4KHz的钟鸣声质量的语音带宽。这是通过GSTN或者无线信号进行可视电话的必需的语音编码器。G.723.1还是通过ISDN,B-ISDN,guaranteed QoS LAN, non-guaranteed QoS LAN进行视频电话,或者利用帧中继(VoFR)和VoIP进行语音传输的可供选择的标准。

  语音编码器可以从DSP增强指令集得到很多性能提升。ARM9E架构的DSP增强指令集仅使用处理器2 5%的性能——大概为45MHz,就可以很好的运行G.723.1算法了,而ARM9需要76MHz。由于使用了16位精度的算法和饱和运算的大量使用,使得ARM9E架构成为了非常适合于编解码应用的架构。

  比较分析:

  对于许多数字信号算法,点积运算功能通常对于峰值处理能力有着较高的要求,图四给出了ARM9E相对于ARM9处理点积更好的性能的图示。可以看到有了DSP增强指令集,通常能提高平均两倍的性能。

  ARM DSP增强解决方案的一个很重要的好处,也是相比于专用DSP的一大优点就是所有的处理都能够在一个单独的ARM处理器上完成。这既减少了功耗,芯片面积,还使得硬件和软件的开发过程变得简化。

  ARM能够在处理关键算法的同时满足系统任务控制的需求,比如IO控制,卡式存储器,显示和键盘。而专用的DSP处理器要完成同样的任务就需要另一个单独的微控制单元。基于两个处理器单元的设计需要多余的芯片面积。另外,由于要在DSP和微控制器间开发关于控制和数据的交换的协议,这也使得开发变得复杂。把这些复杂的功能整合到一个单独的处理器对于简化开发和加速产品的上市时间是一个非常关键的因素。

  因为ARM DSP增强型处理器只需要一个单独的存储器系统,统一的存储器映射简化了软件总体的设计难度。对于那些需要RTOS的系统来说,现在只需要一个任务通过简单的API来完成对于DSP功能的调用。而专用的DSP解决方案需要开发预约式时间调度程序来完成RTOS对于DSP功能的使用,这增加了复杂性和两个处理器间切换时时间处理的难度。

  总结:

  ARM DSP增强架构和DSP扩展指令集提供了开发者直接使用嵌入式内核开发高性能的数字处理算法的可能,并且不会带来控制性能的损失。ARM‘E’内核增强了灵活性和编程解决方案的应用空间,作为SoC设计的内核,它能够提供许多需要峰值处理能力的算法优化的解决方案和复杂的控制能力。

  ARM的DSP解决方案和他的通用RISC架构内核在硬件资源和提供算法高性能的处理能力方面达到了很好的平衡,在实现增强性能的同时,没有增加很多芯片面积和电源消耗。

  欢迎转载,信息来自维库电子市场网(www.dzsc.com

分享到:
评论

相关推荐

    嵌入式系统/ARM技术中的ARM的DSP增强型扩展

    现在,很多新兴的应用领域涌现了许多新的算法... ARM在提供通用的RISC处理器架构的同时,为其增添了一些针对特定应用的高性能指令集,以期能够达到软件和硬件的一个优化平衡。这样,一些高度涉及信号处理的应用

    ARM_DSP处理器

    ARM的DSP增强型处理器解决方案不仅显著提升了应用性能,还在功耗控制、CPU核面积优化等方面取得了平衡。单核解决方案如ARM9E,同时满足了任务控制和信号处理的需求,相较于传统的双核方案(即DSP核加通用内核),在...

    基于ARM和DSP的嵌入式智能仪器系统

    DSP通过HPI接口与ARM连接,DSP执行计算密集型操作,并将处理后的数字信号通过HPI接口与ARM通信。ARM再通过以太网控制器将数据传输到网络,实现远程控制与监测。 ARM与DSP的接口设计中,DSP的HPI接口片选信号使用EP...

    基于ARM-DSP的嵌入式配电终端设计方法研究.pdf

    采用了AD7656六通道16位逐次逼近型ADC进行数据采集,与DSP连接的外围设备通过CPLD(Complex Programmable Logic Device)进行逻辑控制和数据传输。CPLD根据DSP的地址线译码和数据线控制来驱动ADC,确保数据采集的...

    基于ARM的TMS320C6455 DSP HPI的动态程序加载设计与实现.pdf

    C6455 DSP采用了增强型C64x+ DSP内核,这使其在数字信号处理方面的能力得到了加强。 最后,文章指出动态程序加载技术在软件无线电波形组件动态加载方面的应用,对系统设备的软硬件设计提出了挑战,特别是在CPU对DSP...

    ARM架构及ARM指令概述

    包含了处理器系列(x)、存储管理/保护单元(y)、缓存(z)、以及多个功能标识符(如T、D、M、I、E、J、F、-S),这些标识符分别代表了对Thumb指令集、片上调试、快速乘法器、EmbeddedICE、增强型DSP指令、Java加速...

    基于ARM核和DSP核的OMAP5910嵌入式系统

    OMAP5910是一款由TI公司推出的高性能、低功耗双核应用处理器,结合了TMS320C55x DSP内核与低功耗增强型ARM925微处理器的核心优势。 #### OMAP5910处理器的主要特点 1. **高性能**:该处理器采用了32位ARM9TDMI内核...

    基于ARM与DSP的智能仪器系统设计

    它带有多通道缓冲串口、DMA控制器和增强型主机接口,这些特性使其能够快速处理和传输数据。 2. 系统总体设计 智能仪器系统的核心是ARM和DSP的协同工作。ARM主要负责操作系统运行、任务调度、DSP控制和数据的网络...

    基于ARM嵌入式系统开发

    ARM{x}{y}{z}{T}{D}{M}{I}{E}{J}{F}{-S},这些字母分别代表处理器的不同特性,如系列号(x)、内部存储管理(y)、高速缓存(z)、16位Thumb指令集支持(T)、JTAG调试支持(D)、乘法器功能(M)、嵌入式追踪宏单元...

    DSP-OmapL138( ARM9+DSP)芯片使用手册

    - **C674x指令集**:扩展了C67x+和C64x+指令集,支持更高效的代码执行,包括16位紧凑型指令。 - **代码优化**:通过指令打包减少代码大小,8位溢出保护,所有指令都可条件执行。 - **硬件循环支持**:硬件级的模...

    ARM内核介绍(强烈推荐!!!!!!!)

    - **ARM7TDMI**: 这是一款基础型的处理器核心,支持Thumb指令集,具有DSP(数字信号处理)扩展功能。 - **ARM7TDMIS**: 在ARM7TDMI基础上增加了安全特性。 - **ARM7EJ-S**: 增加了Jazelle指令集的支持,增强了Java...

    ch2 ARM体系结构1

    * E:增强型DSP指令 * J:Java加速器Jazelle * S:可综合 ARM9架构的优点包括: * 高性能:ARM9架构采用了五级流水处理、分离的Cache结构,时钟速度高达120MHz,平均功耗仅为0.7mW/MHz。 * 低功耗:ARM9架构采用了...

    ARM与WinCE

    - **ARM7TDMI(Thumb)**: 结合了ARM7指令集和Thumb扩展,支持嵌入式ICE调试技术和DSP增强扩展,主要用于数字手机和硬盘驱动器。 - **ARM9TDMI**: 高性能的5阶段流水线ARM9内核,常用于网络设备和机顶盒。 - **体系...

    嵌入式ARM培训讲义提纲

    - **ARM7系列**:如ARM7TDMI和ARM720T,具有16位THUMB指令支持、在片调试、增强型乘法器和嵌入式ICE硬件。 - **ARM9系列**:如ARM920T、ARM922T和ARM940T,拥有更高的性能和哈佛结构。 4. **基于ARM内核的芯片...

    DSP-Subsystem

    TMS320DM644x DMSoC通过紧密集成ARM和DSP技术,实现了高度的灵活性和可扩展性。这种集成允许开发者利用ARM的强大处理能力和DSP的高速信号处理优势,开发出功能丰富且性能卓越的应用。 #### 5. DSP子系统时钟 DSP子...

    双核系统的通信接口设计

    对于本文中的TMS320C5416 DSP芯片,采用的是增强型HPI接口,它可以支持更高速的数据传输速率,从而提高了整个系统的效率。 HPI接口的设计主要包括以下几个方面: 1. **硬件连接**:HPI接口通常由一组并行数据线、...

    嵌入式系统/ARM技术中的浅谈DSP芯片功能的扩展

    在嵌入式系统和ARM技术中,DSP芯片的功能扩展不仅仅是增强处理能力,还涉及到与其他系统组件的协同工作,比如通过优化内存架构和接口,提高数据传输速度,以及通过集成特定的外设接口来适应不同的应用场景。...

    ARM教程全集

    - **ARM9E系列**: 在ARM9的基础上增加了增强型多媒体扩展指令集(EMEA)。 - **ARM10E系列**: 进一步提高了性能和能效。 - **SecurCore系列**: 专为高安全需求的应用设计。 - **Intel Xscale**: Intel基于ARM架构开发...

Global site tag (gtag.js) - Google Analytics