为了解决这个问题,出现了系统级设计方法的构想。系统级设计方法的核心是将算法设计和系统级设计仿真在统一的开发环境中进行,从而有效地将开发流程的 2个部分结合在一起。进行系统级设计需要一个统一的开发环境,且在该开发环境中可以对系统结构、算法进行描述,还能够对系统不同层次、不同组件和不同数据 类型进行建模。Matlab Link for CC S Development Tools就是为了完成系统级设计而出现的。
1Matlab Link for CCS Development Tools简介
Mathworks 公司和TI公司联合开发的Matlab Link for CCS Development Tools(CCS Link) 提供了Matlab和CCS的接口,即把Matlab和TI CCS及目标DSP连接起来。利用此工具可以像操作Matlab变量一样来操作TI DSP的存储器或寄存器,即整个目标DSP对于Matlab好像是透明的,开发人员在Matlab环境中就可以完成对CCS的操作。Matlab Link for CCS Dev elopment Tools可以支持CCS能够识别的任何目标板,包括TI公司的DSP,EVM板和用户自己开发的目标DSP(C2000,C5000,C6000)板。
CCS Link主要特点总结如下:
(1) Matlab函数可以自动完成调试、数据传递和验证。
(2)在Matlab和DSP之间实时传递数据,而不用停在DSP中程序的执行。
(3)支持XDS510/XDS560仿真器,可以高速调试硬件DSP目标板。
(4)提供嵌入式对象,可以访问C/C++变量和数据。
(5)对测试、验证和可视化DSP代码提供帮助。
(6)扩展了Matlab和eXpressDSP工具的调试能力。
(7)符合TI eXpressDSP标准。
2CCS Link面向 TI DSP的系统级设计方法
2.1Link for CCS IDE
Link for CCS IDE接口实现了CCS IDE和Matlab之间的连接,允许用户在Matlab命令窗口下载运行CCS IDE中的程序,与目标内存之间(非实时地)交换数据,检测处理器的状态,停止或者启动程序在DSP中的运行。
Link for CCS IDE的优点:
(1)用户可以利用Matlab强大的数据分析和可视化功能,节省设计和调试程序的时间。
(2)可以编写用于调试数字信号处理程序的Matlab语言批处理脚本,实现调试和分析的自动化。
(3)支持TI的C5000/6000系列DSP。
2.2Link for RTDX
DSP 的实时数据交换(RTDX)允许系统工程师在Host computer和Target之间进行实时的数据传输且不用考虑Target程序。这里的Link for RTDX接口提供了Matlab和支持RTDX的TI DS P上运行的程序之间实时交换数据的一种方式。利用此连接对象,可以打开、使能、关闭或禁止DSP的RTDX通道,利用此通道可以实时的向硬件目标DSP发 送和取出数据,而不用停止DS P口正在执行的程序。Link for RTDX实现了对实时数据的自动化的高级分析和可视化,实现了对复杂DSP程序的有效验证。
例如把原始数据发送给程序进行处理,并把数据结果取回到Matlab空间中进行分析。RTDX 连接对象实际上是CCS连接对象的一个子类,在创建CCS连接对象的同时创建RTDX连接对象,他们不能分别构建。
2.3嵌入式对象
在Matlab环境中创建一个可以代表嵌入目标C程序中的变量的对象。利用嵌入式对象可以直接访问嵌入在目标DSP的存储器和寄存器中的变量,即把目 标 C程序中的变量作为Matlab的一个变量对待。在Matlab中收集DSP程序中的信息,转变数据类型,创建函数声明,改变变量值,并把信息返回到 DSP程序中,所有这些操作都在Matlab环境下完成。
3CCS IDE连接对象应用举例
CCS IDE连接对象提供Matlab与CCS IDE和目标DSP的连接。利用此连接可以在Matlab下控制和操作DSP中的应用程序,利用Matlab中强大计算分析和可视化工具来分析和对比目标程序运行中的结果,大大缩短嵌入式应用程序的开发调试周期。
具体应用步骤如下:
(1)选择DSP型号
根据ccsfoardinfo函数列出安装在主机上的目标板及其DSP信息,从中选择需要的型号。
此处选择0号DSP:
Boardnum=0; procmum=0;
(2)创建CCS IDE连接对象
cc=ccsdsp(′boardnum′,boardmun,′procnum′,
xu_6x11.pjt是CCSLink提供的一个工程文件。
编译链接CCS IDE中当前的工程文件,生成目标DSP可执行文件:
(4)在Matlab环境下对CCS IDE连接对象进行操作
利用CCS Link中的read和write函数来访问2个全局数组:
从这个例子中可以看到在Matlab环境下操作DSP中的变量或者寄存器是很方便的。这样就可以在Matlab环境下完成DSP程序的仿真调试。而不用像传统的开发要把DSP运行结果调回PC机验证,方便了开发设计,缩短了开发周期。
4结语
应用Matlab对DSP进行系统级的设计极大地改进了传统的设计方法。Matlab系统级的设计环境,有助于在设计早期发现错误和应对系统复杂性不断增加的挑战,方便了复杂DSP应用系统的设计。
参考文献
[1] 戴明桢,周建江.TMS320C54X DSP结构、原理及应用[M].北京:北京航空航天大学出版 社,2001.
[2] 张雄伟,曹铁勇.DSP芯片的原理与开发应用(第2版)[M].北京:电子工业出版社,2000
[3] 郑红,吴冠.TMS320C54X DSP应用系统设计[M].北京:北京航空航天大学出版社,2002
[4] 刘益成.TMS320C54X DSP应用程序设计与开发[M].北京:北京航空航天大学出版社,200 2
[5]TMS320C6701 evaluation module user′s guideTexas Instruments Inc, August 2002
[6]Developer′s kit for texas instruments DSP user′s guideMathWor ks Inc February 2001