《MATLAB辅助DSP设计的研究与实现.docx》由会员分享,可在线阅读,更多相关《MATLAB辅助DSP设计的研究与实现.docx(6页珍藏版)》请在第壹文秘上搜索。
1、MAT1.AB协助DSP设计的探讨与实现来源:d类别:技术I时间:2011-2-259:43:34字体:大中小1 l数字信号处理器(OlgitaisignalProcessor,DSP)是指一类具有特地为完成数字信号处理任务而优化设计的系统体系结构、帔件和软件资源的单片可编程处理器件,数字信号处理器是实现数字信号处理任务的一个重要而行效的手段.施若通信和信息技术的飞速发展.数字信号处理器件在最近20年得到了空前的发展和应用.MAT1.AB是美国MathWorkS公司开发的一种科学计算软件,特地以矩阵的形式处刑数据.在科学计算、限制系统.信息处理等多种领域有着广泛的应用.MAT1.AB具有强大的
2、计算、分析和可视化功能,但MAT1.AB语吉是说明执行的,执行速度较慢:而DSP是为了完成实时数字信号处理任务而设计的,峰法的高效实现是DSP器件的显著特点,但是其开发门横高。假如能把MAT1.AB和DSP开发工具结合在一起,取长补版,相辅相成,将是DSP设计人员梦寐以求的种新的开发思想.MathWorks公司和Ti公司联合开发的MAT1.ABUnkforCodeComposerStudio(简称CCS1.ink)flEmbeddedTargetforTlTMS320C6000DSP工具正是这一思想的完备实现。本文所作探讨是以自行研制的DSP教学试验箱为平台进行的.其DSP采纳TMS320VC
3、5416芯片实现,本文内容支配如下:第1部分在介绍相关背景学问的基础上,引入运用MAT1.AB协助OSP设计的思世;第2部分介绍了MATA1.B中实现这一思想的两种工具;第3部分介绍了工具之一CCSUnk的实现方式及工作原理:第4部分结合试脸平台给出了CCS1.ink的陶用实例.第五部分对本文作了总结.2 MAT1.AB协助DSP设计的方法概述实现MAT1.AB协助DSP设计的方法有两种,即CCS1.ink和EmbeddedTargetforTlTMS320C6000DSP.前者可实现MAT1.AB与C20C50C6000DSP之间的数据交互和程序限制;后者可实现从Sm3lnk模型自动生成DS
4、P目标代码,但仅支持C6000系列的部分DSP器件.考虑到试验平台是以C5000DSP为基础的,并且其次种JS具较简单操作等因素,下面主要探讨利用CCS1.ink协助DSP设计的方法。2.1 EmbeddedTargetforTlTMS320C6000DSPCOdeCOmPoserStUdio(CCS)是TI供应的DSP的集成开发环境,对于C6000系列而言.利用工具EmbeddedTargetforTlTMS320C60DSP.用户可以从Simulink模型干脆生成针对DSP目标板的可执行文件或者CCS工程文件,实现了MAT1.ABZSimuhnk与CCS堞成开发环境(IDE)的无缝连接,从
5、而把设计人员从繁杂的DSP编程中解脱出来,将主要的精力放在设计而不是DSP编程上,所以极大地缩短了系统的涮试和开发周期,进而保证了所设计系统的高性能.2.2 MAT1.AB1.inkforCOdeComposerStudio览成在MAT1.AB6.S或更高版本中的CCS1.ink工具把MAT1.AB.TiDSP及其集成开发环境CCS连接在一起,使褥我们可以在MAT1.AB环境下就可以完成对CCS和DSP目标板的操作.包括与目标内存之间的数据交互,检测处理器的状态,限制DSP程序的运行等。它供应了MAT1.AB*CCS和目标DSP板的双向连接,开发者可以利用MATlAB中强大的可视化、数据处理和
6、分析工具对DSP中的数据进行分析和再处理,以协助DSP系统设计.这样就极大地降低了开发人员编写DSP代码的难度和_作显.提面了整个DSP系统的性能和可行性.我们利用CCS1.ink供应的相关函数能终实现MAT1.AB与目标DSP的存储港及寄存器间的然息交互,犹如操作MAT1.AB21.:祥心上写TlDSP中的存储器或寄存器.即整个目标D$PAf于MAT1.AB而言是透亮的.CCS1.ink支持Tl的C2000CSOOO/C6000等多系列DSP.应用广泛。3 CCS1.ink的实现方式及工作原理3.1 CCSUnk的实现方式利用CCSUnk即可实现MAT1.AB.CCS和目标DSP之间的信息交
7、互.CCSUnk共供应了3种实现方式:1)运用与CCSIDE的连接对象,利用此对象来创建CCSIDE和MAT1.AB的连接,从MAT1.AB吩附窗中即可运行CCSIDE中的应用程序,查询目标DSP的状态信息.修改或读取Il标DSP的存储器或寄存器中的数据,找至可以网试DSP程序.其工作原理见3.2节.2)运用与RTD(RealTimeDataEXChange)的连接对象.,供应MAT1.AB和硬件DSP之间的实时通信通道.利用此连接对象.可以打开、使能、关闭或禁止DSP的RTDX通道,利用此通道可以实时地向硬件目标DSP发送和取出数据而不必伶止DSP上运行的程序.例如把原始数据发送给程序迸行处
8、理,并把处理结果取回到MAT1.AB空间中进行分析,RTDX连接对望事实上是CCS连接时象的一个子类.在创建CCS连接对象的同时创建RTDX连接对软,它们不能分别创建.3)运用嵌入式对象“在MAT1.AB环境中创建一个可以代表嵌入在目标C程序中的变量的对象.利用嵌入式对像可干腌访问嵌入在目标DSP中的存储器和寄存器中的变依,即把目标C程序中的变段作为MAT1.AB的个变Ift对待.3.2 CCS1.ink的工作原理上面的三种方式在具体实现时略有不同,但是其原理相像,不失一般性,我们通过第一种方式一一与CCSIDE的连接对双,来介绍CCS1.Ink的工作机理。1)选择目标DSP并创建CCSIDE
9、连接对阪在MATlAB环境下使用函数CCSdSP并配置相应的隔性名和碣性值即可创建一个CCSIDE连接对象:cc=ccsdsp(4boardnum,x,procnum,yr4timeout*,z);其中,boardnumxprocnum:通过函数Ioado下载可执行文件到目标DSP中,具体方法如下:build(cc);%编许、链接工程文件,生成目标DSP可执行文件oad(cc,ccsproject.out);%下教可执行文件到目标DSP.可执行文件名与工程名相同4)在MAT1.AB环境下限制程序运行CCSUnk供应了3个函数用于限制目标DSP的运行状态,通过这些函数,在MAT1.AB下对DSP
10、的限制操作就像在CCSIDE中一样便利,事实上也的确是这样进行的,halt(cc);%中断处理器的运行restart(cc);%上位程序计数器PC,重新执行程序run(ccrruntOhalt,30);%执行程序到断点处,最终一个参数衣示超时时间,此处为30sS)(.MAT1.AB环境下时CCSIDE连接对象进行操作在MATSB中可以便利的操作DSP存储器和寄存器中的数据,包括谀掾作和写操作。下面以读写目标DSP存储器和寄才器中的数据来说明,date=read(cc,1256,0),double100);%从目标存储器目的地址100HUlP十进制数256)处起先,i袈取100个双粘度数并赋给M
11、AT1.AB对象datereg=regread(cc,4A0,2scomp,);%读取DSP寄存AO中的数据.并转化成双精度数安排给MAT1.AB时段reWrite(CCJ256,0),duble(1.02.03.0);%向目标存储器1H起先的地址处,写入三个双精度数据6)关闭CCSIDE连接对软当一切操作执行完成后,须要删除CCSDSP对象.以收回系统资源.clearcc;%关闭CC$IDE连接对象4CCS1.ink应用实例通过CCS1.lnk工具,可以运用MATlAB来进行DSP的力助设计.在此以FIR滤波器为例,介绍CCS1.Ink在DSP设计中的应用.在该实例中,FIR池波的核心内容由
12、DSP实现,而算法仿真、系数产生、用户界面、结果验证等部分由MAT1.AB协助完成.4.1 FIR泄波器设计设徜入信号为Mn),输出信号为y(n)则FIR/波潺对应的差分方程可表示为:其中.h(k)(kU,2,N表示浊波器系数序列,是一波器设计的关犍.Mk)可以通过MAT1.AB工具带供应的谑波器函数firl()和fir2(俅获得:首先通过建立MAT1.ABZSimuIink模吧,依据所需设计低通泄波器的性能要求来确定沙波涔的阶数和截止频率等参数,本例所设计的FIR低通滤波器参数为:根力.频率(Fc)2kHz.采样频率(Fs)8kHz.阶数(N)40.然后借助函数firl(N,WN)即可返回对
13、应滤波器的系数矩阵,其中N为阶数,WN为泄波器的归一化截止频率,即WN=2FcFs.JlOWwnWl4.2 DSP涉波算法实现结合MATSB产生的滤波器系数,就可以编写DSP波波主程序了,美滋代码如下:FIRJASK:STMK_FIR_BFFRZBK;设沟FIR循环缓冲区的大小1.DNBUF.P*,-1,A;数据输入FirjilTER;ST1.A,三FIR.DATA.Pf%;最新数据替代最旧数据RPTZA,(K_FIR_BFFR-I)MAC,FIR_DATA_P*O%,bFIR-COFF-PH)%,A;班累加STHA/OUTBUF_P;数据输出4.3 MAT1.AB协助设计本设计中,算法仿应、
14、系数产生、用户界面等郃分由MATIA8协助完成.算法仿直、系数产生方法在4.1中已具体介绍,本节重点介绍用户界面部分,本图形用户界面可以实现如下功能:修改参数,如意波参数n和Wn.这种参数选取方法避开反亚修改DSP程序的弊端.可以满意不同层次运用行的运用:限制操作过程,如加靓工程文件、下我可执行文件、运行程序簪;绘制DSP输入数据的时域及领域信号;绘制泄波后DSP输出数据的时域及领域信号:运用MATSB供应的游波函数对输入数据进行沌波计算,并把所得结果与DSP输出信号进行比较,以验遹或改良DSP算法.用户界面的流程图如图1所示,主要由图形界面和回调函数两大部分祖成.其中,图形界面由文件FIR_BPF.m实现:回调函数总共由6个文件实现,分别是input.m.input2.m,output.m.output2.m.Ivbopin.m和lvbohou.m.当输入带有干扰的方波信号后,分别也看输入波形、MATlAB港波输出信号、DSP沌波输出信号,结果如图2所示“比较MAT1.AB流波输出信号和DSP源波输出信号,据此可以采纳修改逑波器系数或DSP程序等措施来改进DSP逑波打法.图1用户图形界面流程图图2试5金结果5