图书前言

编 译 者 序

随着基于DSP的实时多任务应用的日益普遍,传统的围绕顺序处理和循环来构建DSP应用软件的开发途径已经不能够满足要求,越来越多的开发者开始采用基于DSP的多线程内核来设计应用软件。多线程能够使实时多任务应用程序被清晰地分解成多个功能不同、优先级不同的线程,所以一个多线程应用程序更容易在不影响某些关键线程的响应时间的前提下进行维护和升级,而这一点在采用顺序处理和循环结构的应用程序中则很难做到。

DSP/BIOS是TI公司特别为TMS320C6000TM、TMS320C5000TM和TMS320C28xTM系列DSP平台所设计开发的一个尺寸可裁剪的实时多任务操作系统内核,并且也能在OMAPTM器件的DSP核上运行。DSP/BIOS已经过数以千计用户设计的验证,是TI公司的Code Composer StudioTM开发工具的组成部分之一,无须运行许可证,用户就可以免费使用。

通过使用DSP/BIOS提供的一系列丰富的内核服务,开发者能够快速地创建满足实时性能要求的精细复杂的多任务应用程序。这些内核服务具有跨越C6000、C5000和C28x DSP 平台的标准API接口,能被用户程序调用,易于移植。这些服务除了支持多线程调度管理外,还支持系统实时分析以及资源管理。DSP/BIOS内核具有很大的尺寸伸缩性,多线程配置下的内核镜像的代码量最小仅有1K字(Word),占用的DSP资源非常少。

DSP/BIOS和为DSP片上外设开发的芯片支持库(Chip Support Libraries)是兼容的,并被紧密地结合到Code Composer Studio(CCS)交互式开发环境中。用户可以使用CCS中提供的配置工具裁剪DSP/BIOS内核镜像,建立多任务应用程序,然后使用CCS所提供的功能强大的内核对象观察器以及实时分析工具来调试多任务应用程序。

对于开发基于TI DSP的实时多任务应用软件的用户来说,了解和掌握TI DSP/BIOS内核原理和使用方法是非常重要的。目前TI网站上公布的DSP/BIOS内核的最新版本为5.3,最新的有关DSP/BIOS实时内核的手册主要有: 

TMS320 DSP/BIOS Users Guide, Literature Number:  SPRU423F, Nov.2004

——《DSP/BIOS用户手册》描述了DSP/BIOS实时操作系统内核原理。

DSP/BIOS Driver Developers Guide, Literature Number:  SPRU616, Nov.2002

——《DSP/BIOS驱动开发手册》描述了DSP/BIOS设备驱动的开发和使用。

DSP/BIOS 5.3 Textual Configuration (Tconf) Users Guide, SPRU007H, May 2006

——《DSP/BIOS文本配置用户手册》描述了用于配置DSP/BIOS应用程序的JavaScript脚本语言。

TMS320C6000 DSP/BIOS 5.31 API Reference, Literature Number:  SPRU403N, Sep.2006

TMS320C5000 DSP/BIOS 5.31 API Reference, Literature Number:  SPRU404M, Sep.2006

TMS320C28x DSP/BIOS 5.31 API Reference, Literature Number:  SPRU625H, Sep.2006

——《DSP/BIOS API函数参考手册》详细描述了相应DSP平台:C6000、C5000、C28x的DSP/BIOS API函数。

根据“TI DSP系列中文手册编译委员会”提出的编译原则,我们对其中主要的“DSP/BIOS用户手册(版本E)”和“DSP/BIOS驱动开发手册”进行了编译。在尊重原文的前提下,为了便于读者理解,我们对原文中某些部分内容叙述的顺序进行了调整、合并,对某些冗余的叙述进行适当删减。对于原文中个别叙述不清和错误之处进行了补充说明和订正。全书分为两个部分: DSP/BIOS用户手册和DSP/BIOS驱动开发手册,共由12章和4个附录组成。第一部分共7章,具体内容包括DSP/BIOS概述、程序生成、监测、线程调度、存储器和低级函数、I/O概述和管道、流I/O和设备驱动; 第二部分共5章4个附录,具体内容包括设备驱动开发工具包(DDK)简介、DSP/BIOS设备驱动的结构和使用、使用DSP/BIOS设备驱动、GIO类驱动、微型驱动的开发步骤、IOM接口、PIO适配器、LIO模型到IOM模型的移植、GIO API的ASYNC扩展。

由于篇幅有限,对其他的DSP/BIOS技术手册没有进行编译。其中《DSP/BIOS文本配置用户指南》为DSP/BIOS内核编程者提供了一种采用文本方式配置DSP/BIOS内核的方法。《DSP/BIOS API函数参考手册》是本书的重要参考读物,在阅读本书时有可能需要查阅API函数参考手册以获得更多的信息。读者可以从TI的网站上下载这些手册进行查阅。另外,随着技术的发展,TI的技术手册时有更新,请读者及时关注TI网站以获取DSP/BIOS内核的最新信息。

本书由西安电子科技大学通信工程学院王军宁教授主编和统稿,具体参加编译工作的有何迪、马娟、胡启龙等同志,其中王军宁编译第1、8章,何迪编译第4、5、6、7章,马娟编译第9、10、11章,胡启龙编译第2、3、12章,荣瓴、贾文编译组织附录和全书的校定工作,柯元旦参加了本书初稿的组织和部分章节的编译工作。另外特别感谢在本书编写过程中褚莉莉、罗建科、李鹏、杨林等同志的工作及清华大学出版社编辑们的大力支持和帮助。感谢TI公司大学计划和清华大学胡广书教授对于本书编译工作的指导和支持。

由于DSP技术发展迅速,TI DSP/BIOS内核的版本也在不断升级,加上译者水平有限,书中可能存在对原著理解不妥及歧义、错误之处,我们恳切地希望广大读者给予批评指正。

译者

于西安电子科技大学通信工程学院

2007年2月