周佳兵,潘泽跃,曹 飞(中国科学技术大学 自动化系,安徽 合肥 230027)
TI公司提出了eXpressDsp软件技术,在软件开发层面上推出了BIOS+RF5+算法标准XDAIS架构。XDAIS规范了DSP算法软件的开发,提供了类似面向对象编程中的类的封装方式的算法接口,使得算法集成变得简单统一。RF5作为DSP软件开发的起步代码参考框架,以DSP/BIOS为基础,利用其中的数据处理元素和数据通信元素可以方便地完成复杂算法应用程序的设计与开发。但在实际工作中,XDAIS算法、RF5框架的使用却显得相对较少,导致实际开发的程序过于臃肿,代码移植性较差,这主要因为XDAIS算法接口的调用、RF5框架的层次化封装相对复杂。如何规范使用XDAIS与RF5,使得音视频、网络通信等包含大量算法、多线程通道的复杂应用程序的开发更为简便已成为广大DSP开发者的迫切需求。
RF5主要实现了存储管理、线程模型和通道封装三个功能。RF5基本框架结构如图1[1]所示。RF5框架通过驱动开发套件(DDK)[2]完成应用层与底层硬件的交互;以DSP/BOIOS为基础,通过对XDAIS算法的封装完成应用程序的开发。芯片支持库(CSL)[3]作为驱动模块与底层硬件的桥梁为各种外设提供标准库函数调用。

图1 RF5框架结构框图
RF5框架包含4个基本数据处理元素:线程(TASK)、通道(CHANNEL)、核(CELL)、XDAIS 算法。 它们处于依次包含的关系。每一个线程可以包含多个通道,并顺序执行所包含的通道,用以完成特定的操作;通道是核的集合,核在通道内也被顺序执行;核内封装了XDAIS算法,一个核便是包含一种XDAIS算法的容器,并提供了供外部调用的核对象接口(ICELL)以及核通信管理模块ICC对象。……