打印

eXpressDSP 编程标准介绍(网上收集的,一过学习一边分享)

[复制链接]
5071|23
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
 eXpressDSP是一种实时DSP软件技术,它是一种DSP编程的标准,利用它可以加快你开发DSP软件的速度。以往DSP软件的开发没有任何标准,不同的人写的程序一般无法连接在一起。DSP软件的调试工具也非常不方便。使得DSP软件的开发往往滞后于硬件的开发。eXpressDSP集成了CCS(Code Composer Studio)开发平台,DSP BIOS实时软件平台,DSP算法标准和第三方支持四部分。利用该技术,可以使你的软件调试,软件进程管理,软件的互通及算法的获得,都变得容易。这样就可以加快你的软件开发进程。
  1)CCS是eXpressDSP的基础,因此你必须首先拥有CCS软件。
  2)DSP BIOS是eXpressDSP的基本平台,你必须学会所有DSP BIOS。
  3)DSP算法标准可以保证你的程序可以方便的同其它利用eXpressDSP技术的程序连接在一起。同时也保证你的程序的延续性。

相关帖子

沙发
Ryanhsiung|  楼主 | 2012-11-25 21:06 | 只看该作者
1. TI多媒体codec的实现基于eXpressDSP Digital Media(XDM)标准 。XDM是eXpressDSP Algorithm Interface Standard(XDAIS)的一个扩展。

1.1 XDAIS overview
      一个eXpressDSP 兼容的算法即是一个实现IALG抽象接口的模块。IALG API将内存管理功能从算法中剥离出来,改放到host framework中来实现。由此,在算法codec与framework之间必然存在交互,这个交互允许客户端应用程序来为算法codec分配释放内存,同时可以在算法codecs之间实现内存共享。为方便实现以上交互功能,IALG接口定义了若干APIs:
>algAlloc(): 用于算法codec向客户端client应用程序提出内存需求申请;
>algInit():    申请成功,client应用程序给算法codec分配好内存后,由这个来做初始化;
>algFree(): 当一个算法实例instance不再需要时,用于算法codec告诉client对其申请的内存进行释放;
>algActivate():当一个算法实例对象创建后,就可以用它来实时处理数据了。这个API用于告诉算法实例对象当前有一个或多个方法将要连续运行0次或多次;
>algDeactivate(): 当对象方法运行完后,在当前实例的scratch内存被重用前,客户端应用程序调用本API;
    另外IALG接口还定义了多个可选的APIs:algControl(),algNumAlloc(),algMoved()等,详见SPRU360.

1.2 XDM Overview
      在多媒体应用领域,可能会碰到将多个codecs整合到一个多媒体系统的应用。如,建立一个视频解码系统可能会用到很多个解码器MP4/H264/H263等。为方便灵活的将这些codecs与client应用整合起来,有一点非常重要,即具备相似功能的各个codecs应该使用相似的APIs。XDM就是XDAIS的一个扩展,主要用于在各个不同类别的codecs(如audio,video,image,speech)之间寻求统一。XDM标准定义了两个APIs:
>control(): 提供一个标准途径来控制算法实例,并实时接收来自算法codec的状态信息。control()代替algControl()作为IALG 接口的一部分。
>process(): 实现输入数据的基本处理,如编码/解码操作。

      除了为多媒体codecs定义标准化的APIs,XDM还对client应用程序必须传递到这些APIs的参数进行了标准化统一。当然,client应用程序还可以用扩展的数据结构来定义额外的参数以实现某些功能。随后的图表明了XDM与client应用程序的接口关系。




      如图所示,XDM是XDAIS的一个扩展,在client应用程序与codec之间构成了一个接口。XDM使得client应用程序独立于算法codec级的更改之外,即修改了算法,client应用程序不需要有改动。因为TI多媒体算法都是XDM兼容,由此可以灵活使用任何TI提供的算法,而无需改变client应用程序。例如,你有一个开发好的调用XDM兼容的MPEG4解码器的client应用程序,那么你可以很容易的用其他XDM兼容的解码器来代替MPEG4,而对client的修改很少。

使用特权

评论回复
板凳
Ryanhsiung|  楼主 | 2012-11-25 21:14 | 只看该作者
XDAIS 算法
最初建立的标准之一是 TI 的 TMS320 DSP Algorithm Standard?,也称作XDAIS。TI 推出了该标准作为其 eXpressDSP? 软件战略的基本元素,并同时推出了实施内核、集成开发环境 (IDE) 及第三方网络,这表明算法标准化将在 DSP 软件开发中发挥关键性作用。TMS320 Algorithm Standard 是各种 DSP 算法标准的一个示范,事实上它成了随后推出的某些标准的一个模型。

XDAIS 是在 TMS320 DSP 底层软件架构基础之上建立起来的。图1显示了 DSP 系统的组织方式,这样简单数据传感器算法从 I/O 功能以及底层核心运行时环境中分离出来。图2显示了 XpressDSP 环境中算**常运行的必备系列事件。

XDAIS 算法规则

XDAIS 规则分外四组,具备基本的校验机制以保证符合标准。

常识性编程规则。本组规则的作用在于加强算法的便携性、可预测性及易用性。由于大多数 DSP 系统运行于 C 环境中,因此顶层的算法必须能在C中调用。算法不得干扰应用程序的运行时状态,并且代码必须在抢占式环境中进行重入以支持多个通道。必须对多实例共享的存储器与全局变量进行保护。所有代码引用必须完全可再定位,不得采用硬编码存储器寻址,否则将干扰其他代码。由于资源可能因系统而异,因此算法不得直接访问外设。

取消任意选择。如果需要以单一强制方法进行某项工作的话,该标准指定了应在各种不同方法中采用何种方法(就好像交通法规指定了在路上应左行还是右行)。为避免命名冲突,信号命名必须遵循 DSP/BIOS? 规则,这是 TMS320 DSP 采用的实时内核。为避免将代码移植到不同操作系统环境中时发生冲突,算法必须封装到遵循统一命名规则的档案文件中。必须使外部引用符合来源,如C运行支持库函数或其他符合 eXpressDSP 的模块。算法实例必须根据指定的程序调用并删除,并且它们必须能够独立地进行再定位。对 C6000? 平台而言,算法必须至少支持由小到大的字节顺序,或最好两个都支持,以便为系统开发商提供选择。

资源管理。由于算法一般比较贪婪,并且必须使其可以共享,因此本组位于该标准的核心。现在每个算法都有了强制的存储器管理界面,而且所有算法都必须在设计时一次协调或在运行时交互协调使用存储器。本规则适用于外部及内部存储器,以及 DMA 通道等外设。本应用同控制框架一样收集所有存储器请求,随后向算法分配存储器。算法可能不能获得其全部请求,但应用框架能够在竞争请求间进行很好的判断,并优化地划分系统资源。

统一规范。本组规则有助于系统集成商衡量算法并评估其在系统中的兼容性。所有的兼容性算法必须表现最坏情况的中断传输时间、典型与最坏情况的执行,以及程序、堆阵、静态和堆栈存储器要求等方面的特点。例如,算法供应商可能不再隐瞒会让算法独占内核几秒钟的中断传输时间。现在,必须根据已确定的方式在算法技术描述中指定并包含传输时间要求。

校验与 eXpressDSP 一致性。算法开发商不能简单地说它满足了 TMS320 Algorithm Standard 的要求。开发商必须通过 TI 的 XDAIS 一致性测试工具加以证明,该工具可校验代码是否符合规则。此外,第三方必须书面同意在开发算法时遵循了标准规定。当满足了这些要求时,第三方可以声明其算法符合 eXpressDSP,并在广告宣传中使用图3所示的标志。一致性工具可适用于第三方及 DSP 客户,以便使他们在开发自身软件时对这些软件进行检查。系统集成商还可以利用该工具保证他们购买的代码在获得eXpressDSP一致性称号后没有经过修改。

XDAIS 的发展

XDAIS 在5年前推出时,其规则还不到30条。现在它已有了46条规则,这反映出对标准的需求不断发展,但其发展是以认真、受控的方式进行的。新规则的添加(以及一些改动)出于以下几点原因:

新硬件功能。添加某些规则是为了涵盖硅技术的开发。例如,随着将高级 DMA 功能集成到芯片中,XDAIS 也添加了新的规则以涵盖 DMA 通道的分配。未来,XDAIS还可能包括有关硬件加速器作为共享资源使用的规则。

性能优化。为优化性能,DMA规则已进行了修订,在此,这些规则也展示了XDAIS 标准中的另一个变化领域。由于早期规则解决了重大冲突,因此一些较新的指导方针倾向于帮助开发商更好地发挥系统优势。

新应用领域。XDAIS的最初指导方针主要是为了处理带有数据流应用的单功能DSP,如语音及音视频等。但今天的多功能系统常常必须处理突发数据,如 IP 数据包或更复杂的调制解调器标准中类似框架的编码。这些应用的核心和系统要求有时与流应用的不同,而XDAIS 规则必须包括两种类型的数据吞吐量。

有一个没有改变的特性,即需要将开销保持在较低水平。经验显示,DSP 客户与第三方将接受不超过一至两个百分点的性能及存储器干扰。这对于通用微处理器而言是一个较小的开销百分比,该微处理器可通过中断来驱动控制任务,并不十分受限于内存的高效利用。但是,通常每个性能MIP对DSP都是非常关键的,因此 TI 已努力将 XDAIS 开销保持在限定范围内。

算法标准的接受

尽管一直就软件规则向第三方进行咨询,但有些第三方最初对他们能否从算法标准中获益是抱有怀疑态度的。许多第三方将算法的开发看作完全是其自身的业务,不欢迎 DSP 厂商参与,认为这是一种干扰。此外,为了使算法符合新的标准,一些重复工作是不可避免的,而第三方则反对承担他们认为是不必要负担的工作。而且,对与标准相关的开销惩罚也有反对的声音。

与第三方形成对比的是,DSP 系统集成商几乎立即对标准表示欢迎。一些较大型DSP 开发商已经在努力建立其自身规则,而 DSP 标准的到来节省了他们的工作。系统集成商还认识到,与算法标准相关的少量开销能帮助他们避免大量时间耗费与麻烦,这种节约的价值大大超过了他们所必须接受的存储器与性能权衡。

一旦他们熟悉了这些标准,DSP 系统集成商就开始要求算法一致性,这样即便是最不情愿的第三方也不得不遵照行事。为了应付对额外开发工作的反对意见,出现了帮助第三方开发一致性算法的工具,图4所示的 Hyperception Component Wizard 便是其中一个实例,它可帮助创建 XDAIS 算法。

今天,标准已得到普遍接受,即便最不情愿的算法开发商也认同标准化使得出售软件的商机大大增加。根据标准进行设计还意味着能够最小化支持需求,从而节省第三方的开支。TMS320 Algorithm Standard 就是体现标准有多么成功的一个代表:目前,符合 eXpressDSP 算法的第三方开发商达110个,且数量还在不断增加。其他 DSP 厂商也认识到算法标准的需求,并为其各自的平台和第三方算法提供了相似的产品。由于标准涵盖了可互操作性编程的基本问题,因此其规则在许多方面都与最初推出的标准 TMS320 Algorithm Standard 相似。

使用特权

评论回复
地板
dwananqinyan| | 2012-12-31 16:51 | 只看该作者
好东西 分享个

使用特权

评论回复
5
dousfoulexd| | 2012-12-31 16:54 | 只看该作者
楼主辛苦

使用特权

评论回复
6
wrigleymint| | 2012-12-31 16:58 | 只看该作者
支持一下~

使用特权

评论回复
7
mentoscui| | 2012-12-31 17:06 | 只看该作者
好东西 要多学习学习啊

使用特权

评论回复
8
qwempty| | 2012-12-31 17:11 | 只看该作者
:lol楼主好人 啊

使用特权

评论回复
9
wuhaidianzi| | 2012-12-31 17:14 | 只看该作者
顶一下  马克

使用特权

评论回复
10
weishukongji| | 2012-12-31 17:18 | 只看该作者
正好需要 收藏了

使用特权

评论回复
11
ywert000| | 2012-12-31 17:24 | 只看该作者
多谢楼主了!真的是好东西!

使用特权

评论回复
12
strouledfox| | 2012-12-31 17:30 | 只看该作者
收藏学习

使用特权

评论回复
13
huofeijingfe| | 2012-12-31 17:34 | 只看该作者
好东西

使用特权

评论回复
14
mucanhin| | 2012-12-31 17:46 | 只看该作者
:o不错啊

使用特权

评论回复
15
zhoumingzr| | 2012-12-31 17:49 | 只看该作者
:loveliness:东西很好

使用特权

评论回复
16
kunhuangon| | 2012-12-31 18:00 | 只看该作者
不错的东西  拿走了

使用特权

评论回复
17
zrsing| | 2012-12-31 18:22 | 只看该作者
多谢楼主

使用特权

评论回复
18
comeon201208| | 2012-12-31 18:28 | 只看该作者
很好的资料分享,谢谢各位了

使用特权

评论回复
19
zgj224| | 2013-12-6 15:37 | 只看该作者
Ryanhsiung 发表于 2012-11-25 21:06
1. TI多媒体codec的实现基于eXpressDSP Digital Media(XDM)标准 。XDM是eXpressDSP Algorithm Interface St ...

好东西,楼主辛苦!

使用特权

评论回复
20
liuyang8023| | 2013-12-8 08:20 | 只看该作者

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:嵌入式技术专家
简介:道阻且长,行则将至!

64

主题

4654

帖子

14

粉丝