您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > DSP原理与应用实验报告
DSP原理与应用实验报告姓名:学号:班级:学院:指导教师:实验一代数汇编指令基础实验一、实验目的:1.通过调试目标代码,掌握指令的功能,熟悉指令;2.通过指令的熟悉,能够指令应用于实际项目中。二、实验原理:Ti公司的代数汇编指令。三、实验程序:.title算术指令综合实验.mmregs.sect.vect.copyvectors.asm.text_Start:;AR7=#767;A=#38CAH;DP=#08AH;RSA=#0123H;DP=#188H;ASM=#0AHAR7=AMMR(*AR7+)=#1234HDP=#04HA=#9876HAR6=#230H*AR6+=#9ACDHARP=#6;@38H=ANOPNOPAR0=#003AHA=*AR6+0T=#08HSXM=1B=*AR6-TSAR7=#0220H*AR7=#0E5D8HA=*AR7+0B-12@3AH=#665AHAR2=#023AHBK=#0A=*AR2-0%12BK=#002AHAR3=#0256H*AR3-=HI(B)8ASM=#-8*AR3+=AASMAR4=#0216H*AR4=#8775HB=#025AHA=BASMMMR(*AR4+)=BA=MMR(13H)AR2=#0245H*AR2=A7@3AH=AASM*AR2+0%=B4;*AR2=#1CHASM=*AR2T=*AR4+LTD(*AR2+)B=RND(*AR2+)*AR3=#0F57AHA=UNS(*AR3)B=*AR3+*AR3+0B=TTRN=#12ACHA=DBL(*AR4+)B=DUAL(*AR2-)DBL(*AR3-)=ADUAL(*AR4+)=B*AR3+=HI(A)ASM||B=*AR2-16*AR2+=HI(B)ASM||T=*AR3+A=#3456HIF(AGT)*AR4+=HI(A)ASMB=#0F679HIF(BLEQ)*AR3-=HI(B)ASMA=#0F98DHIF(AGT)*AR2+=BRCIF(ALT)*AR3-=TB=#0125CHIF(BGEQ)*AR2+=BRCCMPS(A,*AR4-)CMPS(B,*AR2+);B=@20DP=#40A=#1234H@22=AA=A+@9AH@25=AAR3=#0236H*AR3=#0F775HAR5=#024AH*AR5=#09ACDHNEXT:NOPA=#9ABCH*AR5+=AA=A+#1000HA=A+#08ADEHSXM=0A=#07AB8H16A=A+#04ADEHA=A-#08ADEH16SXM=1B=#0FF7CHA=#0889AHA=A-#09ACDH16B=A-*AR5-C=1B=B-AASM*AR5=AC16=0A=DBL(*AR5-)-AB=B-*AR3+A=B+*AR5+16A=A-BASMB=*AR3+16-*AR4-16A=A+*AR412B=A+*AR5-12A=B-#06789H16B=B+*AR7+0B+CARRYA=A-*AR2--BORROWSUBC(@25,A)A=A-UNS(*AR7+)T=#9ACDHB=DADST(*AR4,T)A=DADST(*AR7,T)C16=1A=A+DBL(*AR5+)A=A-DBL(*AR5-)T=#7654HC16=0A=DADST(*AR5+,T)C16=1A=DSADT(*AR5-,T)A=DBL(*AR5+)-A*AR3+=HI(B)||B=A+*AR5+0%16*AR4-=HI(A)||A=*AR3-16-BGOTONEXT;SXM=0A=#89ABHA=A+#4567H16*AR3=#9999HA=A&*AR3-B=#8897HB=B+#079ADH16A=A|B-12A=#8897HA=A+#079ADH16A=B^#0567DH12DP=#04@7AH=@7AHACD6H.end四、实验步骤:1、输入以上程序,并进行编译;2、打开codeExplore,并把编译好的程序装载,并进行调试3、逐步调试,并观察各种特殊寄存器的值和预期值是否对应,着重了解各种寻址的特点,及相对应的指令。五、实验心得第一次实验并没有掌握程序的操作方法以及对于程序的不理解,导致操作不熟练,而且程序错误较多,花费了大量的时间在程序的纠错和调试上。实验二DSPFIR低通滤波器一、实验目的1、通过实验程序理解DSP程序的编写。2、掌握CIC-500系统的A/D转化,串口通信的编程。3、掌握FIR低通滤波器在DSP中的具体实现,进一步了解各种寻址方式的实际应用。二、实验原理FIR滤波器的主要操作控制为ky110kxihNi设计一个低通滤波器,条件如下:1、采样频率为9.26KHZ,系统工作频率为10MHZ。2、截至频率为Flpc为1KHZ。3、输入信号为14位带符号数值。4、共取80阶点作运算。滤波器设计好后的系数放在lp_coeff.asm文件内其他文件应拷贝到同一文件夹下。三、FIR设计方法1、数字滤波器设计步骤数字滤波器的实质是一个离散的多项式表达式,通过这个表达式来满足一定的需求。因此数字滤波器的设计步骤如下:A、了解滤波器的技术要求B、实现系数计算C、实现,即把传函转换为合适的滤波器网络或结构D、有限字长效应分析,主要考虑滤波器系数、输入数据量化和固定字长对滤波器性能的影响E、工程实现2、滤波器的技术指标p:峰值通带偏差s:阻带偏差p:通带边缘频率s:阻带边缘频率3、用窗口法设计滤波器的步骤第一步:指定理想的或期望的滤波器频率响应DH;第二步:通过傅立叶反变换求期望的滤波器的冲击响应,第三步:选择一个满足通带或衰减指标的窗函数,然后利用滤波器长度与过渡带宽之间的关系确定滤波器的系数数目。第四步:对于选取的窗函数求w(n)的值,并且将nhD的值与w(n)相乘求得实际的FIR系数h(n)。4、标准频率选择性滤波器的理想冲击响应总结滤波器类型nhD0Dh低通cccnnfsin2cf2高通-cccnnfsin21-cf2带通22sin2nnfc-111sin2nnf22f-12f带阻111sin2nnf-222sin2nnf1-22f+12f5、常用窗函数及重要特征总结。窗函数名归一化过渡带宽(HZ)通带波纹(dB)相对于旁瓣的主瓣(dB)阻带衰减(dB)窗函数表达式矩形窗0.9/N0.761413211Hanning窗3.1/N0.05463144Nn2cos5.05.0Hamming窗3.3/N0.01944153Nn2cos46.054.0布莱克曼5.5/N2.93/N0.00170.027457755014cos08.012cos5.042.0NnNn凯塞4.32/N5.71/N0.002750.000275709005.0201/21INnI四、随机数产生方法实验程序范例.titlelowpassfilter.mmregs.width80.length55;.setsect.text,0x1800,0;theseassemblerdirectivesspecify;.setsect.data,0x0200,1;theabsoluteaddressesofdifferent;.setsectvectors,0x0180,0;sectionsofcode.sectvectors;interruptvectortableresidesat.copylp_vecs.asm;location0x0180.dataseed.word07e6dh;seedforrandomvariabletemp.word0XN.word0,0,0,0,0,0,0,0,0,0;80datalocationsfor80XN1.word0,0,0,0,0,0,0,0,0,0;stagedelayline.XN2.word0,0,0,0,0,0,0,0,0,0;XN3.word0,0,0,0,0,0,0,0,0,0;XN4.word0,0,0,0,0,0,0,0,0,0;XN5.word0,0,0,0,0,0,0,0,0,0;XN6.word0,0,0,0,0,0,0,0,0,0;XN7.word0,0,0,0,0,0,0,0,0;XNLAST.word0;OUTPUT.word0;extrawordforthebitbucket.text.copylp_coeff.asm.copylp_ac01.asmstart:intm=1;disableallinterruptsdcallAC01INIT;initializeAnaloginterface.DP=#0noppmst=#01a0h;Interruptpointermapsvectorstopage#3(3*128=180h)sp=#0ffah;stackpointerlocatedinCommunicationsKernalimr=#240h;unmaskTDMRINTandHPIINT(hostportinterface)intm=0;enableallinterruptsWAIT:gotoWAIT;waitforreceiveinterrupt.receive:DP=#seed;ThissetsDataMemoryPagePointer;topageXN,whichisdefined;earlierintheprogram.;---------randomnoiseGenerator(P-5csModulator)-------------------a=@seed1a=@seed^a@temp=a2a=@temp^aa=#8000h&aa=a+@seed16@seed=hi(a)1a=@seed11a=afffch15repeat(#12)a=aC-1;--------getsampleandrunthroughlowpassfilter---------b=DRR1;LOADACCUMULATORWITHWORD;RECEIVEDFROMAIC!@XN=A0;STORETHEVALUEOFRECEIVED;WORDTOVARIABLEXN!AR0=#XNLAST;LOADAR0WITHADDRESSOFLAST;DELAYELEMENT!A=#0;ZEROACCUMULATORA!repeat(#79);Repeatnextinstructions80times.macd(*AR0-,h0,A);ComputeFIRoutput.@OUTPUT=hi(A)0;Storethefilteredinputinto;variableOUTPUT.A=@OUTPUT0;OUTPUT==AccumulatorAA=#0FFFCh&A;TWOLSB'sMUSTBEZEROFORAIC!DXR1=A;SENDTOTRANSMITREGISTER!return_enable;Enableinterruptsandreturn;frominterrupt.transmit:return_enable;Enableinterruptsandreturn;frominterrupt..end四、实验步骤1、连接CIC-500DSP发展实验系统2、载入程序,从J2端输入音乐,运行一段时间后暂停,观察实验结果。3、观察不同频宽的音乐,把结果进行比较。五、实验心得通过实验了解到了DSP程序的编写和A/D转化,以及串口通信的编程,进一步了解了各种寻址方式的实际应用,依据上次实验的经验,这次的操作过程更为熟练。实验三FFT算法的实现—、实验目的1.掌握FFT算法。2、进
本文标题:DSP原理与应用实验报告
链接地址:https://www.777doc.com/doc-5258088 .html