SHARC引领第四代通用DSP高端应用潮流
2009-10-27 来源:与非网
回顾数字信号处理(DSP)技术的发展史,我们可以看到,DSP的发展大致经历了五个阶段:
(1)雏形阶段。世界上第一个单片DSP芯片应当是1978年AMI公司发布的S2811,1980年,日本 NEC公司推出的μPD7720是第一个具有乘法器的商用DSP 芯片。
(2)第一代真正意义的DSP。1982年TI公司推出的TMS320ClO是第一代DSP的代表,它是16位定点DSP,首次采用哈佛结构,完成乘累加运算时间为390ns,处理速度较慢。
(3)第二代DSP。1987年Motorola公司(后分离出Freescale半导体公司)推出了24位定点DSP芯片——DSP56001。ADI公司的ADSP-2100、TI公司的TMS320C50、AT&T公司的DSPl6A等也都是第二代DSP产品的典型代表。
(3)第三代DSP。包括第三代定点(ADSP-2180、TMS320C541、DSP56301等),这些产品改进了内部结构,增加了并行处理单元,扩展了内部存储器容量,提高了处理速度。同时期还出现了功能更强的32位浮点,如ADI公司的ADSP-21020,TI公司的TMS320C3X等。
(4)第四代DSP。过去几年业界推出了性能更高的第四代处理器并不断衍生更多产品,如ADI公司的32位浮点处理器SHRAC系列一代(ADSP2106X)、二代(ADSP2116X)、三代(ADSP2126X、ADSP2136X)以及最新的第四代SHARC系列ADSP2146X等,成为通用DSP技术发展路线上的又一座分水岭。
从ADI SHARC产品组合可以看到:在速度、性能、集成度和I/O吞吐率等方面,第四代DSP比前一代DSP又有跨越式的增强。SHARC支持高性能32位和40位扩展浮点运算以及32位定点运算,速度最快的SHARC处理器的内核时钟频率最高可达450 MHz,处理能力达到2700 MFLOP(SHARC 2146x系列),而且片上外设也越来越丰富。它们正在为诸如工业控制、专业音响、汽车音频、医疗电子等对信号处理品质要求非常严苛的高端应用提供核心动力,为人类生活创造更多精彩。
第四代通用DSP的典型先进特性
强大的运算处理能力。SHARC处理器的高运算性能来自SHARC内核采用的一种单指令多数据(SIMD)架构。此架构包含两个能够并行执行代码的运算单元,这意味着用户可以在这两个运算单元中于同一周期内执行相同的指令。单周期执行双乘法和ALU运算是SHARC处理器的特点之一,而且在单周期内还能完成双读或双写数据以及取指令操作。为了保持这种单周期操作性能,内核和存储器之间存在很宽的带宽。SHARC的一些浮点优势,如浮点运算可以减少量化误差,还能实现更高的精度和更大的动态范围,这对滤波器等应用来说是很有帮助的。
SHARC上集成了最多达67个零开销DMA通道的直接存储器访问引擎。这个引擎在移动数据时无需内核干预,因为DMA传送期间可以同时传送代码和数据,而且在传送过程中还能自动打包8、16、32、40或48位数据。这也为提高系统处理性能立下了汗马功劳。
图1:第四代通用DSP的最先进代表——SHARC ADSP2146X的功能框图。
大容量片上存储器。在片上存储器结构方面,SHARC处理器具有很大容量的内部RAM和ROM(例如,ADSP 2146x拥有5Mb的最大容量片上SRAM和4Mb的金属掩膜编程ROM,如图1所示)。片上RAM和内核的运行速度是一样的,因此在代码和数据访问期间可实现零等待状态。
无缝连接外部存储器。SHARC上的外部存储器接口允许连接SDRAM、SRAM和并行闪存甚至最高达2Gb DDR2 DRAM,而且是无胶合连接,此外还可以从闪存器件启动SHARC器件本身。在连接SDRAM时,SHARC处理器支持64Mb至512Mb、配置为4、8和16位宽的器件。目前SHARC通过16位或32位宽总线对此进行连接。
丰富的外设。SHARC上内置了大量的外设,其I/O处理器中包含数字音频接口(DAI)和数字外设接口(DPI)。数字音频接口包括了众多的外设,如精确时钟发生器、采样率转换器、S/PDIF接口、串口等。数字外设接口同样包含整套外设,如SPI端口、两线接口、UART和定时器。
强大、易用的开发工具。CROSSCORE是ADI公司的软硬件开发工具产品线,其中包括了VisualDSP++集成开发和调试平台、模拟器、评估板或EZ-KIT Lites、一些子卡或EZ-Extender卡。VisualDSP++中集成的SHARC专用编译器能够充分发挥SHARC的SIMD架构优势,而且支持单周期执行的浮点运算。VisualDSP++中的仿真器无需硬件就能支持应用软件的开发。VisualDSP++中还包含了VDK或实时操作系统内核及调度器。硬件工具EZ-KIT Lites是一种很好的评估平台,价格不贵,可以用它来编程和开发SHARC上运行的软件。这些评估板通过USB模拟器连接VisualDSP++环境。
家庭影院、专业音频模块供应商Lab X 技术公司总裁兼设计工程师Lee Minich曾评论到,“SHARC架构非常简单易用,VisualDSP++开发工具功能强大,C/C++编译器性能非凡。代码非常容易理解和优化。必要时我们可以在汇编器处理代码,并使用高级语言(C语言)编写非性能关键的代码。我们希望在C编译器等高级语言以及基本的汇编代码之间进行转换。我们选择SHARC处理器,因为它为我们提供高级且用户友好的开发工具,而且可以利用C 语言和汇编语言进行开发。”
兼容、灵活、高集成度实现高成本效益。SHARC一直以来保持的一大优势特性,即兼容性。许多SHARC器件都被设计为引脚兼容,因而使用户在需要更高性能时可方便地更新换代,或者将目标产品转向较低的性能以扩充产品体系。另外,SHARC使用信号布线单元(SRU)单元来减少引脚数量,从而降低器件成本。所有外设集成在SHARC上,由用户决定他们的应用中要使用哪些外设,再通过SRU把引脚引出来。另外,如前所述,SHARC还集成了大容量存储器和丰富外设,可简化硬件设计、最小化设计风险,这也能帮助设计者降低总系统成本,缩短设计周期。
高可靠性。针对汽车应用和其它高温应用场合,用户可以选用SHARC系列中能工作于最高达105℃环境温度下的产品,最低工作温度可达到-40℃。
特别值得一提的是,最新一代SHARC 2146X还是SHARC系列中第一款采用65nm工艺制造的处理器,除了拥有迄今为止所有SHARC处理器中最高的内核时钟频率,还还具备一些新的特性和更多不同的集成式外设,如支持可变指令长度执行,可使代码规模缩小20%~30%;提供到16位 DDR2 SDRAM的无缝接口,能够连接到更快的外部存储器;还提供3个专用硬件加速器,每一个都是专用于执行FFT、FIR和IIR算法,每个加速器都有自己专用的计算单元和自己专用的局部存储器独立于(处理器内存);同时集成了热敏二极管以及专门为汽车应用开发的媒体局域总线(简称MLB)等。2146X在资源方面保持了与以往SHARC处理器系列(包括2136x和2137x)的后向兼容,并且增强了许多新的指令,主要目的是帮助编译器和代码生成工具优化和生成更好的代码。
SHARC成就最广泛的高性能浮点运算应用
上述非凡特性使得SHARC非常适合用于以下甚至更多的高性能应用:从数字家庭、家庭影院系统和高清DVD到专业音响系统中的混频器、放大器和合成器;医疗、测试测量及控制等工业与仪器仪表,在全球赢得了这些领域领先设备制造商的信赖。另外,在汽车应用中,很多音频放大器也采用了SHARC。在中国,SHARC也正在赢得更多Design-win,包括电力线保护、风能应用中的风电设备、频谱分析仪等仪器仪表、医疗应用中的各种病人监护和生命维持、化学分析设备以及专业音频设备等。下文就以SHARC在全球最新的部分客户案例对其典型应用做个梳理和分析,为您的设计选型提供参考。
图2:采用SHARC处理器的Ingecon CleanPower风轮机控制单元可精确控制提供给电网的风能。
图2所示为风能大国——西班牙的Ingeteam公司Ingecon®CleanPower系列风电产品控制单元系统框图。Ingecon CleanPower是一个新的电气拓扑,它通过解决谐波失真、颤动和纹波等变速风力机常见问题来精确地控制提供给电网的电能。所有控制算法都由ADI公司最先进的32位浮点SHARC处理器(包括ADSP 21363和ADSP 21469)执行。在此系统中,整流器和逆变器必须同步运行,逆变器侧的SHARC处理器读取和执行整流器侧SHARC的数据采集模块,两边的SHARC处理器和FPGA共享多处理SHARC总线。对于电力等工业控制市场,如前所述,最新一代SHARC ADSP 2146X系列最新引入了DDR2 DRAM控制器、接口和热敏二极管,而且还引入了精确时钟发生器(PCG),使之在这一市场领域占据更大的优势。
Ingecon CleanPower控制单元中的数字信号处理器用来实时执行控制算法,因此所选的DSP需要满足一系列要求:复杂的控制算法使得浮点处理器必不可少,速度对于必须在100微秒以内执行的实时处理运算而言是至关重要的。另一个必备条件是充足的处理器内部存储器,原因包括以下几点:必须避免控制单元处于等待状态,因为等待状态会延迟处理。此外,内部存储器可以减少外部器件数,从而最大程度地减少电路板设计中的EMI问题。SHARC处理器允许开发工程师以极其灵活的方式将内存分隔成数据内存和程序内存,这样今后可以在不改变硬件的情况下改变应用。
Ingeteam公司的一位高级工程师表示:“SHARC的快速执行能力还使我们的应用能同时控制更多的设备,这样我们就可以将省下的资金投入到新增的功能中”。因此,Ingeteam公司还将SHARC处理器用于其Ingedrive转换器产品线的下一代控制单元中,该转换器系列是多种用于工业、航海和基础设施应用的中等功率和大功率交流和直流整流器。
近几年来中国风电事业发展速度迅猛。截至2008年底,中国风电机组累计装机超过1200万千瓦,成为仅次于美国、法国、西班牙的风电装机超千万千瓦的风电大国。据估计,到2020年,中国风能装机容量将超过1亿千瓦,届时将成为全球风能开发第一大国。ADI的SHARC DSP正在为本地的龙头风电制造企业实现产品自主创新提供核“芯”动力,帮助他们在这个潜力巨大的市场抢占更多商机。
而在音频处理应用方面,SHARC处理器一直被公认为高品质音频处理的黄金标准,倾倒了世界诸多顶尖专业音频设备制造商,其中包括致力于为吉他弹奏者提供在高音质和范围、风格及品牌声望等方面占据“统治地位”产品的Damage Control工程公司。当Damage Control公司开发其TimeLine与Glass Nexus混合模拟/DSP产品线时,公司对音频处理器的DSP市场进行了一次彻底调查。他们希望处理器在音频保真和动态范围方面具有优异性能,以灵活地实现他们利用高级语言编程的音频效果算法。Damage Control公司选择了ADI公司的SHARC ADSP 21369处理器。21369是专门针对高性能音频应用而优化的32/40位浮点处理器优化,内核指令速率为400MHz(2.5ns),内置2MB的片上SRAM,6Mb掩膜可编程ROM,多重内部总线可消除I/O瓶颈,并可获得完整的CROSSCORE ®软件和硬件开发工具支持. Damage Control公司技术副总裁Dave Fruehling指出:“SHARC处理器的性价比、设计灵活性、开发工具,以及ADI公司享有盛誉的技术支持,都给我们留下了深刻的印象。”
图3:采用SHARC的专业音频设备:立体声参数延迟产品(左)和高级调制效果踏板(右)。
Damage Control公司的TimeLine(图3左)是一款立体声参数延迟产品,它提供连续控制,以产生移相、合声、镶边、颤音、回声、长延迟和反相延迟等效果。它利用音乐声音滤波器、直接及拖尾控制来提供无限可能性。TimeLine还提供经典12AX7电子管的丰富热情以及模拟干声路径。吉他演奏者可以存储并调用8个设置,或在下一级控制中使用MIDI功能。Glass Nexus高级调制效果踏板(图3右)实现了定制调制与动态处理和混响的完美结合。SHARC浮点处理与双12AX7电子管的结合,能够确保最高水平的保真度和音感。Glass Nexus还具有预置存储及MIDI功能。
另外,SHARC也在家庭影院、汽车音响等音频应用领域创造了一个又一个辉煌。例如,以高品质音响设备著称的 Fujitsu Ten公司为在汽车驾驶室环境中提供高性能输出、先进的声音均衡效果和出众的音质,选择了SHARC ADSP 21364作为数字信号处理引擎来增强其音频放大器的性能。SHARC处理器出众的内核性能、灵活的连接选项及集成的音频专用外设使Fujitsu Ten公司可以克服汽车驾驶室颇具挑战性的声音方面的限制条件,提供传统的原厂汽车放大器无法匹敌的汽车音响体验。利用高性能SHARC DSP架构来实现其领先的“声音空间控制技术”,Fujitsu Ten公司的功率音频放大器以先进的声音均衡能力和生成完美音质的音效处理能力超越竞争对手,傲居行业领先地位。
图4:中国某医疗电子设备制造商在多款设备中采用SHARC和/或TigerSHARC作为数字信号处理器平台。
SHARC处理器支持40位扩展精度浮点运算,具有独特的、带有大型片上SRAM的超级哈佛架构,以及带有多条内部总线的独立DMA引擎,消除了I/O瓶颈。处理器包含两个计算处理部件,可以作为单指令多数据(SIMD)引擎,可以高效地执行运算密集的信号处理算法。而医疗电子设备正是运算密集型典型应用之一,借助SHARC,应对医疗应用中的复杂算法就变得游刃有余。目前SHARC已被用于脉搏测氧、听力测试、病人监护、化学(实验室)分析等多种医疗保健设备中。图4中,中国本土成长迅速的一家知名医疗电子设备制造商在其多款产品中采用SHARC作为核心数字信号处理平台。
美国医疗技术公司Masimo专门从事先进的医疗信号处理技术和产品的开发、授权和销售,用于实现病人生命迹象的无创式监测。Masimo SET脉搏测氧法是脉搏测氧法行业的“标杆”,因为它具有别人无法超越的精确执行能力。该公司推出的Rainbow SET Rad-57脉搏CO-血氧计™,是一种可以精确测量血液中CO含量的仪器,基于该公司的信号抽取技术(SET),这种方法结合了专用信号处理算法和创新的传感器技术用于捕获、处理和报告动脉氧含量和脉搏速率。驱动器件的信号处理引擎正是来自ADI公司的具有代码保护ROM的SHARC处理器,其浮点运算能力可以提供Masimo算法所需的精度和准确度。
图5:Masimo为其便携式CO-血氧计选择了SHARC浮点运算来应对复杂的算法并降低功耗。
SHARC的SIMD架构使Masimo可以在非常短的时间内执行大量的数学密集的算法。这意味着处理器能够更长时间内工作在低功耗模式下,这样就降低了功耗,并且可以用四节“AA”电池即可将工作时间提高到8小时。
Masimo还利用了SHARC处理器的大量片上特性,如片上掩模可编程非易失性ROM(4Mb),两个数据地址发生器(DAG1、DAG2),一个带有指令缓存的程序序列器,一个能够支持在内核处理器周期内在存储器和内核之间进行4个32位数据传输的PM和DM总线,三个带有PWM发生、PWM捕获/脉冲宽度测量的可编程间隔定时器,片上SRAM(3M位),以及外部时间计数器能力,一个支持到片外存储器外设的接口的8或16位的并行端口和一个JTAG测试访问端口(TAP)。
SHARC的众多集成外设/接口均成为CO-血氧计单元的信号链的组成部分,如同步串行接口(简称为SPORTS)、DMA控制器、串行外设接口(SPI)串行端口和数字音频接口等等。
此外,SHARC处理器与其它同系列的SHARC处理器源代码兼容,因此Masimo无需重写为以前的应用所编写代码,即可在新处理器上运行,这样就节省了成本,加快了上市速度。