DSP软件向桌面和嵌入式系统挑战

单个数字信号处理(DSP)芯片曾经作为协处理器来实现滤波器算法。现在DSP技术的发展已实现了多个复杂算法的并行。但是,这种功能的扩展也产生了新的问题,开发人员发,在DSP处理能力方面,当MIP和存储器的问题得到解决时,他们又面临着新的课题,即如何来管理设计复杂的软件。
如何合理地安排数据流程,使之在DSP的各执行单元间无冲突地顺利执行,仍是DSP开发人员面临的一个非常重要的问题。由于设计的复杂性,将算法映射到DSP具体目标硬件上,尚不能采用高层次编程语言,必须使用汇编语言,并对器件的并行执行机制有十分清楚的了解。而这种局限于汇编语言的编程设计,正是提高软件开发效率的瓶颈。
90年代早期,嵌入式系统和桌面应用的开发人员曾面临相似的问题。当时为提高设计效率而采用的方法现在仍可借鉴使用。一个短期的解决方案是由编程人员自己解决这一问题。但是,编程人员相对短缺,而且DSP领域编程人员更为紧缺。在DSP开发时,可以考虑采用非DSP专业的编程人员,但这些人员一般倾向于使用桌面和嵌入式应用的开发工具。而DSP开发领域还没有类似的工具,这就阻碍了DSP应用的进一步推广。

开发相似,实质不同
即使采用了上述的开发工具,DSP还具有不同于RISC和CISC的独特特征。DSP处理能力不仅靠越来越快的时钟速率来实现,而且还依赖于并行处理结构的进一步采用。早期的DSP仅含有单个多路器和累加器,由哈佛结构以及一些控制寄存器环路组成。而目前的DSP处理器通常采用多个执行单元,每个执行单元都由算数逻辑运算单元(ALU),一个多路器和累加器组成,而且这些执行单元可以并行执行。
美国I.C.Com 公司在与西门子半导体公司的合作中,开发出了Carmel DSP,它通过一个非常类似C的汇编语言来解决DSP开发面临的上述瓶颈问题。
I.C.Com公司VLSI设计副总裁Amnon Rom说:“我们的目的是使我们的汇编语言Carmel尽可能地接近C语言。对DSP开发来说,减少开发过程中从浮点算法转换到固定点算法,然后再到汇编语言程序所需的时间非常重要。通过将汇编语言与之一一对应,从而减去了从C语言到汇编语言的开发步骤。”

友好易用的硬件系统
美国ZSP公司采用易于编译的硬件系统来解决DSP开发中面临的这一问题。其硬件系统包含一个正交指令集,一个透明状态机和一个流水线控制单元。其中流水线控制单元是该结构的关键,它代替编程人员对DSP中的并行执行单元进行作业安排控制。通过分配指令到硬件、解决数据和资源间的依存问题,从而将指令分组分配到DSP的各个并行执行单元。这样减去了编程人员和编译器安排分配并行任务的负担。
ZSP公司提供一套完整的软件开发工具,让编程人员管理复杂的DSP编程任务。可以通过命令行直接调用这一工具,或者通过使用Premia的Codewright编辑器。Codewright是一个开发工作平台,通过它可启动其他应用程序。ZSP就是采用该平台来管理其Gnu编译器、汇编器、链接器、仿真器以及调试工具。
Codewright开发环境进一步扩展,包括了设计项目目录管理功能,对项目可执行程序的生成进行参数调整。针对基本的DSP软件开发,ZSP公司提供了一个完整的解决方案。
---- 美国TI公司认为DSP未来的发展在于软件,并已经开始着手两项开发。首先,它将Code Composer IDE的功能与DSP/BIOS和RTDX驱动程序进行集成,组成综合开发环境Code Composer Studio。这是TI将其收购的GoDSP公司Code Composer DSP调试工具与Spectron的低档DSP操作系统进行统一集成的结果。其次,它建立了DSP软件模块的标准接口,以便更好地重新利用现有的实现了的DSP算法。
TI公司认为,通过将一个汇编语言优化器集成到其Code Composer开发环境,从而减少了对汇编语言的需要。据称该工具产生的编码的效率可达到手工调试的汇编语言的80。
对DSP开发,每个MIP和存储器字非常珍贵,对这一资源的任何浪费都会影响项目的进展,使之难以完成。但为了提高软件开发效率,也必须牺牲一些MIP和存储器为了更好地开发
对DSP开发,每个MIP和存储器字(Word)非常珍贵,对这一资源的任何浪费都会影响项目的进展,使之难以完成。但为了提高软件开发效率,也必须牺牲一些MIP和存储器。这些MIP和存储器资源是用在DSP内访问程序和数据转换方面,访问程序将DSP算法的内部表达方式转换成共用的方式,以便进行通信。
TI公司提出的软件标准包含两个方面,一是处理目标硬件与主机的接口,另一方面处理内部的API(应用程序接口)集,以提供DSP软件模块间的通信。在主机一侧,是Active X程序集,用来处理与目标硬件间的通信,并模拟目标器件的行为。这里主机接口包括以下四个主组:项目服务器,编辑服务器,图象服务器和调试服务器。其中调试服务器用来建立和维持与目标硬件间的通信。在目标硬件一侧,链接依赖于RTDX和DSP BIOS。
Blue Wave Systems的产品经理Nick Keeling对Code Composer Studio表示很大的兴趣,他说,通过这一产品,可以看到DSP软件开发步入成熟。这一进程是TI与其第三方DSP板级开发商共同合作的结果,从Code Composer Studio开发的初期,第三方板级开发商就积极地参与了进来。而这一参与使第三方厂商有能力对Code Composer Studio的功能开展进一步开发。
Blue Wave Systems公司正对Code Composer Studio进行改进,使它能自动识别与之相连的任何电路板,包括读取电路板上的配置信息,以及识别安装在电路板上的驱动程序类型。该公司可提供这种电路板和改进后的具备自动识别功能的Code Composer Studio开发环境。
Analog Devices公司的Visual DSP工具集与TI公司的Code Composer类似,但不包括主机与目标硬件的链接。该工具支持其全部SHARC DSP系列产品。
Visual DSP是集成了IDE和调试器的一个项目管理工具。原码调试工作可在一个C语言和汇编语言的混合环境中完成。同时调试工作可通过一个硬件仿真器在主机上进行,也可直接在目标硬件上实现。
目标器件接口数据流可通过中断的随机组合来仿真。并可在指定的地址范围内和地址范围外设置观测点进行检查。这种功能使开发人员能更好地处理堆栈资源的下溢和上溢。

DSP:数字化时代的骄子
在即将告别20世纪、步入21世纪的世纪之交的时刻,让我们首先回顾一下国际上电子工业最近30年来发展的历程:70年代的电子工业以消费电子为主,代表性的产品是录像机、摄像机、彩电,主要的生产厂商是日本的Sony、JVC、荷兰的Philips等家电厂商,依靠的是大规模生产和优秀的质量。80年代是计算机时代,代表性的产品是PC机、硬盘驱动器、打印机,主要生产厂商是美国的Intel、IBM、Microsoft、Compaq等公司。90年代起是信息时代,代表性的产品是个人通信网、网络接入设备、数字化消费类电子产品,主要生产厂商目前尚难确定,处于战国七雄争霸时代,主要获胜的战略之一是以DSP为核心的技术及其
创新产品。
DSP可以代表数字信号处理技术,也可以代表数字信号处理器,其实两者是不可分割的,前者是理论上的技术,要通过后者变成实际产品。两者结合起来就成为解决某一实际问题和实现某一方案的手段——数字信号处理解决方案(DSPS)。
DSPS正在改变我们生活方式的各个方面,例如人们之间的联系方式正由电话转向个人通信方式。人类从电话发明到5千万电话用户数花了70年时间,模拟蜂窝电话达到5千万用户花了14年,而数字蜂窝电话(GSM是其中之一)只花了5年就达到相同的用户数。
再如我们的娱乐方式,VCD、DVD正替代VHS录像机,数字电视机开始替代模拟的NTSC或PAL制电视机。家庭影院主要由数字化A/V设备组成,DSP不仅给你环绕声,还为你虚拟各种现场效果。
DSP日益进入人们的生活,所以DSP芯片的年增长率超过50,在最近几年整个半导体产量下降的情况下,唯有DSP芯片保持高速增长的势头。
DSP的发展面临的挑战是CPU速度的急速增快和价格的持续下降,使DSP制造商面临两种选择,一种是加快DSP的发展,另一种是退出竞争。看来主要的DSP制造商都选择了第一种路线,尤其是占全球DSP销售份额45的美国TI公司在对公司的产品进行结构性调整的基础上,以多元化投资转到单一化投资,确立以DSPS为主要发展的产品,即集所有技术、所有产品于DSP。
TI公司在原来已被人们熟知的TMS320C1X、TMS320C25、TMS320C3X/4X、TMS320C5X、
TMS320C8X的基础上发展了三种新的DSP系列,它们是:TMS320C2000、TMS320C5000、TMS320C6000系列,成为当前和未来相当长时期内TI DSP的主流产品,前面提到的那些老型号产品均将被这三种新系列产品替代。从今年开始,’C1X、’C25、C5X、C8X的价格每年都会上调,今年提升了10。而’C2000、’C5000和’C6000三种新系列芯片的价格会逐年作较大幅度的下调,因此无论从价格还是技术支持或是从产品开发的连续性出发,建议大家尽量采用新的DSP系列,在进行教学、培训时也应介绍这三种新的系列。

三种新型TMS320 DSP系列的特点
1.TMS320C2000——作控制用的最佳DSP,可以替代老的’C1X和’C2X。现在有趋势集中在以下两个方向上:
(1)’C20X 16位定点DSP,速度为20MIPS,主要用途是电话、数字相机、售货机等,其中:’F206带有闪速存储器,售价从5~17美元。
(2)’C24X 16位定点DSP,速度为20MIPS,用作数字马达控制、工业自动化、电力转换系统、空调等,售价从4~18美元。
2.TMS320C5000——低功耗高性能DSP,16位定点,速度40~200MIPS。主要用途是有线和无线通信、IP、便携式信息系统、寻呼机、助听器等。价格5~75美元。
目前’C5000系列中又有三种新成员,一种是’C5402,这是廉价型的DSP,目标价格是每片5美元(50K批量),速度保持100MIPS,片内存储空间稍小一些,RAM为16K、ROM为4K。主要应用对象是无线Modem、新一代PDA、网络电话和其它电话系统以及消费类电子产品。
第二种是’C5420,它拥有两个DSP核,速度达到200MIPS,200K片内RAM,功耗0.32mA/MIPS,200MIPS全速工作时不超过120mW,为业内功耗最低的DSP。’C5420是当今集成度最高的定点DSP,适合于做多通道基站、服务器、Modem和电话系统等要求高性能、低功耗、小尺寸的场合。
第三种是’C5416,它是TI公司0.15μm器件中的第一款,速度为160MIPS,有三个多通道缓冲串行口(McBSPs),能够直接与T1或E1线路联接,不需要外部逻辑电路,有128K片内RAM。应用对象是VoIP、通信服务器、PBX(专用小交换机)和计算机电话系统等。
3.TMS320C6000——这是TI公司1997年2月推向市场的高性能DSP,综合了目前DSP的所有优点,具有最佳的性价比和低功耗。’C6000系列中又分成定点和浮点两类。
(1)’C62XX 16位定点DSP,速度为1200~2000MIPS,用于无线基站、ADSL Modem、网络系统、中心局交换机、数字音频广播设备等,价格为21~224美元。
(2)’C67XX 32位浮点DSP,速度为1Gflops,用于基站数字波束形成、医学图像处理、语音识别、3-D图形等,价格109~233美元。
C6000在向两个方向发展,一是追求更高的性能,二是在保持高性能的同时向廉价型发展。前者如定点’C6202可以达到2000MIPS的速度,后者如定点’C6211只有25美元、浮点的’C6711仅售20美元。
在老的TI DSP系列中,浮点’C30还是TI公司主推的产品,因此它的售价不像其它老系列每年都要提升。TI公司还在对这个型号作性能改进和制造廉价型,如新近推出的’C33采用0.18μm制造工艺,有1M RAM,速度为120Mflops,为老产品的两倍,而价格仅5美元。速度更高的150Mflops为8美元。’C33与其它’C3X器件代码兼容,所以用户可以保护其软件环境,在他们换用新器件时还可以减少开发时间。

DSP为电子业创造新的机遇
上面所介绍的TI公司的新一代DSP已经替代80年代和90年代初的老一代产品,在电子信息产业方面获得了广泛的应用。’C2000系列已用于数字马达控制、数字照相机、PC照相机;’C5000系列用于蜂窝网手机、程控交换;’C6000系列用于基站、ADSL、V.90 56K Modem。
有数百家直接依靠TI的DSP而成立的公司,称为TI的第三方(Their Party),它们有做DSP开发工具的,有从事DSP硬件平台开发的,有从事DSP应用软件开发的。这些公司基本上是80年代末,90年代初才创建的,开始时往往只有几个人,经过5年、10年现在均发展到具有相当规模。如D2 Technologies、DSP Research、DSP Tools、Dialogic、GD DSP、HotHaus、Micro LAB Systems、PenTek、Seed、Spectrum Digital、Spectrum Signal Processing、White Mountain DSP等公司,在DSP开发工具、应用软件、DSP平台方面都很有成就。
相对国外DSP的应用开发和第三方公司的情况,我国国内差距相当大,知道使用DSP的单位不多,这些单位中大多数还在使用’C25,’C5X。DSP工具开发已经起步,但也只有闻亭和合众达两家,而专门从事DSP硬件平台和应用软件开发的单位和公司还没有,“第三方”在中国基本上是空白。
上海交通大学在1997年初与TI公司联合成立了DSP技术中心,除在本科生和研究生中进行新一代DSP的教学外,还尽一切努力开展DSP的应用研究,研究的目标完全放在新产品的开发方面。我们(指上海交大,以下皆同)组成了一支包括教师、研究生在内的三十余人的DSP应用R&D队伍,配备有TI公司提供的最新DSP开发工具和齐全的资料,并获得上海市科委的支持,设立了上海数字技术中心。目前我们已经和正在进行研究和开发的项目主要分成以下三类:
1. 语音编码及其相关产品 在所有的通信系统中,语音通信仍然是最基本的通信方式,也是应用最普遍的。ITU制订了许多语音压缩标准,我们已经做出来的有用’C542实现的G.728、G.723、GSM06.10,正在进行的有G.722、G.726、G.729、FS1016等。
在此基础上正在研制多通道电话记录仪。用自制的’C542电话压缩卡,将一张电话卡的数码率从64kbps降到13kbps,语音质量MOS(平均判分)为3.7,而国内使用最普遍的语音卡采用ADPCM算法,32kbps时才有相同的音质,号称能用到16kbps,但音质仅为2分。我们每张卡可同时压缩8路电话,一台PC机可插4张卡,同时压缩32路电话。
另一个正在开发的是数字电话扩容系统(DCME),采用’C6201DSP和ITU-G.728语音压缩算法、将E1的每路64kbps电话压缩到16kbps,压缩4倍,这样可将30路的E1扩容至120路的E2系统。
2. Hi-Fi音频压缩及相关产品 最近几年VCD、DVD、MD、DAB、DVB等数字音视频产品万紫千红,在这些数字化新家电中,DSP最起作用的地方是Hi-Fi的音频处理,我们已对MPEG音频Layer2、Layer3、MPEG-2 AAC、Dolby AC-3等用C语言仿真研究,在此基础上用’C549实现了MP3解码器的初样。正在用’C6201和’C6701分别实现MP3编码器和MPEG-2 AAC编解码器。MPEG-2 AAC重建的音质超过MP3和AC-3将成为21世纪直播卫星、地面DAB和SW、MW、AM广播数字化的首选标准。
3. 图象压缩及相关产品 完成用’C542实现的脱机的便携式彩色静止图像传输系统,分辨率有576×480、352×288(CIF)、176×144(QCIF)等可选择,发送端图像压缩终端如一般的Modem大小,可通过Modem在PSTN(公共交换电话网)上拨号传输图像,也可通过无线Modem在CDPD分组无线数据网中传输,适用于远程监控、彩色文件传送。在此基础上正在开发用’C6201 DSP的符合H.263标准的可视电话。
我们对DSP的应用前景充满希望和信心,也盼望有更多的高校、科研机构、公司开展DSP的应用研究,藉此开发最新的数字化电子产品,为振兴我国电子工业作出贡献。

相关