- UID
- 123845
- 性别
- 男
|
作者:Steve Blonstein,技术主任--软件开发系统
随着数字信号处理器 (DSP) 的应用范围不断扩大,对面向组件的软件模块的需求不断增长。第三方提供的现成算法在基本层面上能够响应上述需求。第三方算法使系统开放商不必再费力重新设 计主要的软件功能,从而能够更快、更廉价地将系统与更多功能集成。因此,第三方算法在 DSP 系统开发中发挥着非常重要的作用。
为了使组件软件方法顺利工作,必须具备保证组件代码互用性、一致性和便携性的标准。DSP厂商认识到了上述需求,建立了管理不同算法与 应用之间接口的算法标准。上述标准不是为了保证高效实施。针对代码大小、特性及性能而选择最佳算法的工作是由系统集成商进行的。而标准所作的,则是提供确 保算法之间相互协作的一套规则,使他们更轻松地进行评估,然后在系统环境中进行集成。
算法标准的起源
20世纪90年代中期,算法标准的需求逐渐显现出来,此时更为强大的 DSP 出现了,其可支持一个算法的多通道,或者同一 DSP 上的多个算法。尽管早期的 DSP 可能仅用作语音编码器等,但像来自 TI TMS320C5000 平台中 DSP 则能够处理蜂窝电话所需的整个数字处理链,包括声码、音频校正、回波消除等。诸如来自 TMS320C6000平台的其他 DSP,则能够开发 DSL 线卡、视频服务器及其他在单个设备上要求具有极高多通道性能的系统。
利用现有更高层次的性能,许多新兴信号处理标准不断涌现,包括 JPEG、MPEG、电视会议、无线电话以及调制解调器与传真改进等。开发商开始创建交互改变任务的动态系统,而不是一般基于 DSP 的具有固定功能的静态系统。而且系统代码规模也开始剧增,常常为了适应新型多功能系统的复杂性而大幅度增加。
DSP 系统开发商始终缺少经验丰富且掌握深入信号处理知识的 DSP 程序员。目前,这些开发商们开始集成更为复杂的系统,一些刚刚进入 DSP 领域的其他开发商则已开始进行最初的 DSP 设计。不断增长的业界系统集成商寻找各种方法来将日益复杂化的设备整合起来,而不必从头设计所有软件。幸运的是,一些具备业经验证软件技术的开发商认识到 新的市场商机,并开始作为第三方出售其知识产权,包括算法。系统集成商将从第三方购买"黑盒子"目标代码,并将其加载至系统中,以节省宝贵的开发时间。至 少这就是假设的工作流程了。
然而,在实践中事情并非如此直接。第三方开发商常常假定DSP用法,以便使其算法尽可能精简,并获得最佳性能效果。因此,一个算法可能 需要占用所有内存,在很长的时间中禁用出现中断,并完全控制核心。此外,系统集成商可能无法了解开发商的事先假定是什么,因为不存在统一的方法指定算法的 资源要求与性能效果。
显然,如果有了上述假定的话,那么两种或多种算法就不能在多功能系统中和平共处。这样的问题在利用源代码进行再设计时可能相当困难,但 力图集成目标代码的系统开发商对改变算法无能为力。而且,如果算法来自不同的第三方(事实常常如此),集成商将面临不兼容性难题以及不可避免的相互指摘。
到20世纪90年代末为止,很明显如果不就算法建立行为规则,那么 DSP 开发将停滞不前。因此,DSP 厂商开始发布这种规则,将其编写为第三方软件开发商必须遵循的标准代码,以便保证算法的兼容性。尽管这些标准是具有所有权的,但它们都具有相同的目标,并 且许多规则都是一样的。由于某些规则反映了硬件实施,并且仅针对某些个体厂商,因此对所有权而不是业界标准进行保留。此外,当标准出现时,厂商为了跟上 DSP 的开发步伐被迫响应当时的需求,而不是将问题交给漫长的业界标准化进程来解决。
示范标准
最初建立的标准之一是 TI 的 TMS320 DSP Algorithm Standard™,也称作XDAIS。TI 推出了该标准作为其 eXpressDSP™ 软件战略的基本元素,并同时推出了实施内核、集成开发环境 (IDE) 及第三方网络,这表明算法标准化将在 DSP 软件开发中发挥关键性作用。TMS320 Algorithm Standard 是各种 DSP 算法标准的一个示范,事实上它成了随后推出的某些标准的一个模型。
XDAIS 是在 TMS320 DSP 底层软件架构基础之上建立起来的。图1显示了 DSP 系统的组织方式,这样简单数据传感器算法从 I/O 功能以及底层核心运行时环境中分离出来。图2显示了 XpressDSP 环境中算法正常运行的必备系列事件。 |
|