DSP的30年
扫描二维码
随时随地手机看文章
要点
1. DSP设计人员寻求优化TI所称的“三P价值”,即:性能、价格与功耗。
2. ADI设计人员了解其DSP所面向应用的功率包络。
3. Microchip对数字信号处理采用了一种替代方案:数字信号控制器。
4. 未来,可编程ASSP器件为TI的DaVinci这类器件提供了一种替代品,将面向某些市场中的FPGA。
如德州仪器(TI )公司首席研究员GeneFrantz所言,该公司DSP先驱的顿悟始于上世纪70年代末,恰好在TI公司创造性的Speak & Spell学习玩具放上零售货架后不久。Frantz回忆那时有个顾客问:“如果你们可以用DSP给玩具加上语音合成,还能用它做别的什么吗?”
当今年TI公司庆祝在DSP市场的30周年时,这个长久以来的问题已经过了无数次的解答。如果没有DSP以及它在音频、图像和多媒体处理方面的推动作用,就不会有“信息娱乐”内容,没有智能手机或平板电脑,没有互联网,也没有APP的生态系统。
TI的“玩具”技术不仅促使公司进入了一个新的业务领域,而且为TI、其竞争对手以及工具供应商的开发建立了舞台,推动DSP技术进入了各种应用与市场。与此同时,传统DSP器件遭遇了各种替代性信号处理平台的竞争,包括有DSP特性的CPU、用微控制器与DSP核心配对使用的数字信号控制器、用于为数字信号处理设计定制的数据路径,甚至创建定制可编程处理器的FPGA,以及最新出现的有大量并行处理的图形处理器,它可以解决数据并行问题。
DSP技术的起源要比Speak & Spell玩具早几年。在上世纪70年代初期,科学家们开始采用市售的现成TTL分立逻辑芯片,实现专门的信号处理“引擎”。早期系统相对速度缓慢,占用空间大。TRW公司在1973年发布了第一款实用的并行乘法器,并在两年后增加了位片(bit-slice)ALU。但仅乘法器芯片就要数百美元,唯一能买得起这种产品的客户只有研究实验室、医疗扫描设备制造商及军队。
1978年,American Micro- systems公司推出了第一款专门为DSP设计的单芯片IC:12位的S2811。AMI发明了一种真正创新性电路设计,但其芯片实现时采用了一种激进的“V槽”(V groove)MOS技术,而这种技术从未用于量产的商业产品。
第二年,英特尔公司推出了Intel2920 16位“模拟信号处理器”,起这个名称是因为英特尔要设计一种用于直接替换模拟电路的芯片,包括了板上的A/D和D/A转换器。2920以数字形式处理模拟信号,但它缺少一个并行乘法器;此外,它600ns的周期速度太慢,无法在音频段做出有用的工作,而音频段是第一个大批量DSP芯片的市场。
第一只“真正”单芯片的DSP出现在上世纪80年代初,由贝尔实验室和NEC推出, 市场分析公司Forward Concepts将其定义为并行MAC(乘法器-加法器)电路。贝尔实验室的芯片叫DSP-1,是一种用于AT&T与Western Electric设计中的容性器件。NEC的μPD7720是第一种真正量产、在商业市场上发售的单芯片DSP。尽管受制于粗糙的开发工具,NEC的芯片仍然可提供充足的速度,它用一个双周期MAC实现122ns的周期时间,能够在音频段做一些有用的工作。
80年代末,理光公司的HiromitsuYagi为传统的NMOS工艺重新设计了原AMI的S2811芯片。Yagi的工作结果是理光RD28211和AMIS28211。
TI加入游戏
在80年代,TI公司的Ed Caudel设计了后来成为该公司第一款DSP的初始架构。同年,Surendar Magar受雇围绕DSP算法来优化架构。1982年2月,TI在传统的“国际固态电路研讨会”上以一篇《具有数字信号处理能力的一种微计算机》(参考文献1)的论文将设计结果公诸于世。1982年4月,Caudel在巴黎召开的“音频、语音与信号处理国际研讨会”上宣布了最终产品—TMS32010。
推出Speak & Spell后,TI公司继续为各种行业开发DSP器件,但业务的关键以及对市场增长起决定性作用的,还是围绕处理器所出现的生态系统。业界最早的DSP工程师之一Frantz说:“TI成为第一家拥有一款复杂的信号处理芯片的公司,也理解到器件本身并非产品,产品是器件加支持加开发环境加一条器件热线。我们为客户创造了一个产品,使他们可以将其用在自己的产品中。”
在早期年代,TI的DSP热线是为客户提供帮助的一个重要来源,尤其是很多情况下,回答电话问题的人正是被咨询器件的架构师。Frantz说:“TI有一些非常大的客户,我们接到这些大客户从不同地区打来的电话,有六到七个不同区号。我们发现自己比他们还清楚他们公司在做什么东西。我们尽自己所能帮助他们发展。”也有很多来自小型新兴公司的电话,咨询着相同的问题,而TI早在业内成员顺应趋势做出选择以前, 就看到了正在形成的市场。Frantz指出,这以后几年间,公司发明了下一代信号处理器,做出了客户想要获得的“疯狂”东西。在此过程中,TI一直牢记“三P价值”,即:性能(performance)、价格(pr ice)以及功耗(power di s -sipation)。Frantz说:“大多数人并不明白功耗是多么重要,但我们自60年代中期就一直致力于小功率器件技术,当时已经发明了计算器。”初期,TI开始了它的第三方计划,鼓励有DSP专业能力的小型公司去“填充”TI无法照顾到的“空白”。Frantz将计划描述为一个“价值网”,所有参与者都可以通过它获得收益,同时扩展了现有的客户支持网络。
Fernando Mujica是TI系统架构实验室主任,是分析嵌入式处理方面的专家,他从Frantz这些DSP先锋手中接过了接力棒。Mujica说:“过去30年来,我们生活中的方方面面几乎都受到了DSP的影响。现在,我们正看到DSP开始做嵌入分析工作,这是需要最高程度可编程性的一个不断增长和发展的领域。现在,信号调整与压缩技术都实现为硬编码的加速器,并与DSP整合在现代的嵌入式处理器中。”
今天的DSP和其它嵌入式处理器承担了以往需要人工干预的工作。相关例子是拓展了汽车安全功能的范围,包括偏离车道警告和主动巡航控制等,这些已出现在高档汽车中。这些系统已超出了便利功能范畴,它们会向驾驶者提出警告,乃至在紧急情况下做刹车或转向操作。
Mujica表示:“在不久的将来,嵌入分析解决方案将使自动化驾驶成为一种现实(图2)。机器人是另外一个即将出现革命性变化的领域,因为嵌入式处理器的性能在增长,它们已能完成复杂的分析任务。”
小功率创新者
TI不是唯一一家在“三P价值”上推动DSP技术发展的公司。ADI公司以2001年开发的定点Blackfin处理器和90年代中期的浮点Sharc处理器,坚定不移地改进着功率/性能比。
随着对处理精度的需求越来越高,设计者不断地面临着解决功率预算需求的难题。ADI公司处理器营销总监Colin Duggan以及Blackfin产品经理Richard Murphy表示,ADI公司专注于现有功率的高效利用,从而获得越来越紧凑的设计,可确保有更好的系统便携性,占据最少空间,使得总体运行成本较低。他们指出,低功耗通常发热低,有助于获得更高的系统可靠性,减少了系统级与空间级的冷却,从而节省了相关的功率、空间和成本。
对于电池供电设备,较低功率的处理器能延长系统电池的寿命和充电间隔,有助于减小系统尺寸和重量,保证了便携能力。处理器功耗的下降也让设计者可以使用较小的电池,最大限度地节省了功耗与空间。
刚刚发布的BF60x高性能系列以及前代Blackfin中都采用了DPM(动态电源管理),开发人员可以将处理器功耗与程序执行时的处理需求相匹配(图3)。20 01年10月,ADI率先将DPM应用于首款发布的Blackfin处理器中。小功率处理器延长了系统电池的寿命,有助于减小系统体积与重量。
Blackfin处理器中采用的其它设计技术包括:可编程电压以及频率缩放;时钟周期分辨率的动态时钟门控;多电源域,支持深度睡眠与冬眠模式;高代码密度,尽量减少了激活总线的能量;采用混合阈值电压晶体管,获得了最佳性能与功率效率;一个最高能效的全定制处理器核心;审慎采用硬件加速器;以及支持亚稳态SDRAM,使板级功耗降至最低。
在浮点方面,ADI仍牢记低功耗技术,设计出了最新的Sharc 2147x。该处理器有5Mbit片上内存,设计者可以将功率存储起来,以备扩展将数据移动到外存和其它处理器。该系列的集成内存与并行处理特性能够提高性能,确保算法和程序执行得更快,从而得到了净功耗下降的好处。
两两比较(均在的典型功耗)有助于ADI做出方案。在Sharc系列中,ADSP-21261在150MHz时功耗为900mW,200MHz时为1.2W;与之相比,最新的ADSP-2147x系列在150MHz时功耗180mW,在266MHz时功耗363mW。在Blackfin系列中,BF527在600MHz时的核心功耗为205mW,待机功耗为10mW,而冬眠模式耗电大约为40μA;最新的BF592在300MHz时提供88mW的动态功耗,待机功耗不到1mW,冬眠耗电为20μA。该公司最高性能的Blackfin BF609有两个500MHz核心,在1GHz时耗电400mW。
Duggan和Murphy指出,ADI的节电特性提供了灵活的控制,更新的工艺尺度有更高的功率效率。他们补充说,该公司的设计者都了解其DSP所要满足的应用的功率包络。
ADI的目标是,尽可能在应用的一个特定功率包络中获得最高的性能。用户可编程PLL,可调降自身系统时钟的外设,以及当某些外设不工作时关闭任何时钟域的能力等,都可以节能。其它节能方案包括:采用高效的总线架构,尽量增加设计中采用高阈值电压晶体管的百分比(一般为93%),以及使用PVP(流水线视觉处理器)做为加速器。
Microchip的DSC
Microchip Technology公司的数字信号处理采用了另一种方案:DSC(数字信号控制器)。第一款芯片是用一个DSP与一只8位微控制器配对。然后,Microchip的工程师在一个PIC微控制器中集成了一个DSP核心,这就是2002年面世的16位dsPIC(参考文献5)。
可缩放的dsPIC解决方案提供了专利的微控制器式中断处理,可用于实时控制,据Microchip称,用DSP做实时控制一直面临着挑战(图4)。DSC核心采用一种修改过的Harvard总线架构,有16位宽的数据路径和24位宽的指令路径;广泛寻址模式;一个16×16位的通用寄存器集;一个灵活的软件栈;单周期16×16乘法功能;带双端口SRAM的DMAC(直接内存访问控制);以及八个外设通道。
DSC的运行速度从30MIPS到70MIPS,用于数字电源、照明、电机控制、语音、生物计量、传感器处理以及简单滤波器等市场。芯片包含了用于语音处理的DAC、电机控制PWM、快速ADC,以及专门用于SMPS(开关电源)应用的ADC。Microchip公司称这些器件具有高运放集成度,提供了微控制器般的“观感”,设计者无需学习DSP设计或软件就可以使用。
Microchip鼓励从dsPIC到PIC24微控制器的无缝迁移,两者的代码与引脚兼容。同样免费的MPLABX集成开发环境可用于Microchip的8位、16位与32位微控制器及其DSC。该公司称其战略是为工程师们提供简单的解决方案,使应用开发人员(如数字电源)能够方便地使用模拟友好的高度集成dsPIC。
转向FPGA
从传统DSP转向基于FPGA的DSP硬件,这个过程会涉及一组新的设计技巧,以及对硬件的新理解。对于刚开始使用FPGA或DSP的开发人员,这种转换可能是一个相当大的任务,它增加了设计日程的风险。高级经理Tom Hill为Xilinx编写过一份白皮书《Xilinx DSP设计平台:简化FPGA在DSP中的使用》(参考文献6),其中给出了Xilinx的DSP开发套件设计思想,以简化FPGA的采用,算法与硬件开发人员在用Xilinx器件开发DSP应用时,能快速地进入状态。
Hill指出,在90年代时,Xilinx设计了用于DSP处理的4000 系列FPGA。客户很快发现,他们可以用FPGA建立数字滤波器。大约1999年,时任Xilinx现场应用工程师的Bruce Newgard认为公司有一个很大的机会,但管理层需要一些有说服力的东西,才同意在Xilinx内部成立一个DSP部门。
2005年,Xilinx打造完成了一个DSP战略,即与TI和MathWorks合作,为算法开发与设计实现引入FPGA/DSP协处理平台和紧密集成的工具流。同一年,Forward Concepts估计,基于FPGA DSP解决方案的性能与灵活性可以应付20亿美元的高性能DSP市场。Xilinx初期的目标市场是高增长的数字通信、MVI(多媒体、视频与影像),以及防务系统。这些领域加起来,要占到80%以上的高性能DSP市场份额。
Xilinx与MathWorks合作开发了SystemGenerator,这是业界第一个针对Xilinx FPGA的DSP插件。今天,SystemGenerator for DSP是采用FPGA做高性能DSP系统设计的一款领先高级工具。
Xilinx 称, 使用System Generator,没什么FPGA设计经验的开发人员也可以快速地通过算法FPGA实现量产质量的DSP,所花时间只有传统RTL开发的几分之一。工具提供了系统建模以及从MathWorks Simulink的自动代码生成,并集成了RTL、嵌入、IP、Matlab,以及一个DSP系统的硬件。System Generator for DSP是XilinxDSP目标设计平台(Targeted DesignPlatform)的一个关键部分。
Xilinx已转换了自己的业务模型,从水平的FPGA供应商,变成为垂直的应用促进商,在不同的细分市场都有自己的业务。下一阶段是由工具、IP、硅片和套件组成的面向算法的平台。
Xilinx基于FPGA的DSP平台现在可与真实世界的信号相连接,并有与高速数据转换器的接口。数据会以极高速率采样,然后下变频,以简化DSP硬件实现。Hill指出,FPGA通常用于处理接口和下变频的系统,但40%的情况下会与DSP器件一起使用。
一些用户对于使用基于FPGA的DSP存在着一些疑问,如技术的易用性以及设计流程的障碍等,因此在2011年1月,Xilinx买下了AutoESL。双方结合,就是2012年1月的XilinxAutoESL,它使设计者能更容易地快速用FPGA实现DSP系统,并提供了向下一代AutoESL技术的一种更平滑转换,这就是Vivado High-Level Synthesis 2012.2(参考文献7)。随着Vivado设计套件的推出,VivadoHigh-Level Synthesis(高级综合)能够让开发人员将C、C++和System C直接应用于FPGA,而不需要手动创建RTL,从而加快了设计实现。
Hill指出,今天,如果你能用一只DSP做设计,客户就会使用一只DSP;如果设计要求采用两片或三片DSP,则FPGA就极有竞争力。对于高负荷的滤波,FPGA具有优势。FPGA能完成无线、雷达与军用声纳对抗中的上/下变频和数字预校正。医疗影像是另外一个重要领域,如有些CT扫描与拥有256个以上传感器的超声设备。
3 月份,Xilinx 推出了Zynq -7000,宣称在一只器件上集成了“全部可编程的”SoC,它提供ASIC式的性能与功耗、FPGA的灵活性,以及微处理器的编程简便性(图5)。Zynq-7000生态系统包括硬件与软件开发工具,以及操作系统。
Hill预测说,未来FPGA将是可编程ASSP的基础,后者在某些市场领域上将替代TI公司DaVinci数字多媒体处理器这类器件。
不承认支持DSP算法与架构开发的工具供应商,就无从谈起DSP的历史。