DSP原理与应用实验报告_第1页
DSP原理与应用实验报告_第2页
DSP原理与应用实验报告_第3页
DSP原理与应用实验报告_第4页
DSP原理与应用实验报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、DSP原理与应用实验报告姓名:学号:班级:学院:指导教师:实验一 代数汇编指令基础实验 一、实验目的:1.通过调试目标代码,掌握指令的功能,熟悉指令;2.通过指令的熟悉,能够指令应用于实际项目中。二、实验原理: Ti公司的代数汇编指令。三、实验程序:.title"算术指令综合实验".mmregs.sect ".vect".copy "vectors.asm".text _Start: ; AR7=#767 ; A=#38CAH ; DP=#08AH ; RSA=#0123H; DP=#188H ; ASM=#0AHAR7=A

2、MMR(*AR7+)=#1234HDP=#04HA=#9876H AR6=#230H*AR6+=#9ACDHARP=#6; 38H=ANOPNOPAR0=#003AHA=*AR6+0T=#08HSXM=1B=*AR6-<<TSAR7=#0220H*AR7=#0E5D8HA=*AR7+0B<<-123AH=#665AHAR2=#023AHBK=#0A=*AR2-0%<<12BK=#002AHAR3=#0256H*AR3- =HI(B)<<8ASM=#-8 *AR3+ =A<<ASMAR4=#0216H*AR4=#8775HB=#025A

3、HA=B<<ASMMMR(*AR4+)=BA=MMR(13H)AR2=#0245H*AR2=A<<73AH=A<<ASM*AR2+0%=B<<4 ;*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)<

4、;<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=20 DP=#40 A=#1234H 22=A A=A+9AH 25=A AR3=#0236H *AR3=#0F775H AR5=#024AH *AR5=#09ACDHNEXT: NOP A=#9ABCH *AR5+

5、 =A A=A+#1000H A=A+#08ADEH SXM=0 A=#07AB8H<<16 A=A+#04ADEH A=A-#08ADEH<<16 SXM=1 B=#0FF7CH A=#0889AH A=A-#09ACDH<<16 B=A-*AR5- C=1 B=B-A<<ASM *AR5=A C16=0 A=DBL(*AR5-)-A B=B-*AR3+ A=B+*AR5+<<16 A=A-B<<ASM B=*AR3+<<16-*AR4-<<16 A=A+*AR4<<12 B=A+*A

6、R5<<-12 A=B-#06789H<<16 B=B+*AR7+0B+CARRY A=A-*AR2-BORROW SUBC(25,A) A=A-UNS(*AR7+) T=#9ACDH B=DADST(*AR4,T) A=DADST(*AR7,T) C16=1 A=A+DBL(*AR5+) A=A-DBL(*AR5-) T=#7654H C16=0 A=DADST(*AR5+,T) C16=1 A=DSADT(*AR5-,T) A=DBL(*AR5+)-A *AR3+ =HI(B) |B=A+*AR5+0%<<16 *AR4- =HI(A)|A=*AR3-&

7、lt;<16-B GOTO NEXT ; SXM=0 A=#89ABH A=A+#4567H<<16 *AR3=#9999H A=A&*AR3- B=#8897H B=B+#079ADH<<16 A=A|B<<-12 A=#8897H A=A+#079ADH<<16 A=B#0567DH<<12 DP=#04 7AH=7AH&#0ACD6H.end四、实验步骤:1、输入以上程序,并进行编译; 2、打开code Explore,并把编译好的程序装载,并进行调试3、逐步调试,并观察各种特殊寄存器的值和预期值是否对应,

8、着重了解各种寻址的特点,及相对应的指令。五、实验心得第一次实验并没有掌握程序的操作方法以及对于程序的不理解,导致操作不熟练,而且程序错误较多,花费了大量的时间在程序的纠错和调试上。实验二 DSP FIR 低通滤波器一、实验目的 1、通过实验程序理解DSP程序的编写。 2、掌握CIC-500系统的A/D转化,串口通信的编程。3、掌握FIR低通滤波器在DSP中的具体实现,进一步了解各种寻址方式的实际应用。二、 实验原理 FIR滤波器的主要操作控制为 设计一个低通滤波器,条件如下: 1、采样频率为9.26KHZ,系统工作频率为10MHZ。 2、截至频率为Flpc为1KHZ。 3、输入信号为14位带符

9、号数值。 4、共取80阶点作运算。 滤波器设计好后的系数放在"lp_coeff.asm"文件内其他文件应拷贝到同 一文件夹下。 三、FIR设计方法 1、数字滤波器设计步骤 数字滤波器的实质是一个离散的多项式表达式,通过这个表达式来满足 一定的需求。因此数字滤波器的设计步骤如下:A、了解滤波器的技术要求B、实现系数计算C、实现,即把传函转换为合适的滤波器网络或结构 D、有限字长效应分析,主要考虑滤波器系数、输入数据量化和固定字 长对滤波器性能的影响E、工程实现2、滤波器的技术指标 :峰值通带偏差:阻带偏差:通带边缘频率:阻带边缘频率 3、用窗口法设计滤波器的步骤&#

10、160;第一步:指定理想的或期望的滤波器频率响应;第二步:通过傅立叶反变换求期望的滤波器的冲击响应, 第三步:选择一个满足通带或衰减指标的窗函数,然后利用滤波器长度与过渡带宽之间的关系确定滤波器的系数数目。 第四步:对于选取的窗函数求w(n)的值,并且将的值与w(n)相乘求得实际的FIR系数h(n)。 4、标准频率选择性滤波器的理想冲击响应总结滤波器类型低通高通-1-带通-带阻-1-+5、常用窗函数及重要特征总结。窗函数名归一化过渡带宽(HZ)通带波纹(dB)相对于旁瓣的主瓣(dB)阻带衰减(dB)窗函数表达式矩形窗0.9/N0.761413211Hanning窗3.1/N

11、0.05463144Hamming窗3.3/N0.01944153布莱克曼5.5/N2.93/N0.00170.0274577550凯塞4.32/N5.71/N0.002750.0002757090四、随机数产生方法实验程序范例 .title "low pass filter" .mmregs .width 80 .length 55 ;.setsect ".text",0x1800,0 ; these assembler directives specify ;.setsect ".data",0x0200,1 ; the abso

12、lute addresses of different ;.setsect "vectors",0x0180,0 ; sections of code .sect "vectors" ; interrupt vector table resides at .copy "lp_vecs.asm" ; location 0x0180 .dataseed .word 07e6dh ; seed for random variabletemp .word 0XN .word 0,0,0,0,0,0,0,0,0,0 ; 80 data loca

13、tions for 80XN1 .word 0,0,0,0,0,0,0,0,0,0 ; stage delay line.XN2 .word 0,0,0,0,0,0,0,0,0,0 ;XN3 .word 0,0,0,0,0,0,0,0,0,0 ;XN4 .word 0,0,0,0,0,0,0,0,0,0 ;XN5 .word 0,0,0,0,0,0,0,0,0,0 ;XN6 .word 0,0,0,0,0,0,0,0,0,0 ;XN7 .word 0,0,0,0,0,0,0,0,0 ;XNLAST .word 0 ;OUTPUT .word 0 ; extra word for the bit

14、 bucket .text .copy "lp_coeff.asm" .copy "lp_ac01.asm"start: intm = 1 ; disable all interrupts dcall AC01INIT ; initialize Analog interface. DP = #0 nop pmst = #01a0h ; Interrupt pointer maps vectors to page #3 (3*128=180h) sp = #0ffah ; stack pointer located in Communications Ke

15、rnal imr = #240h ; unmask TDM RINT and HPIINT(host port interface) intm = 0 ; enable all interruptsWAIT: goto WAIT ; wait for receive interrupt. receive: DP = #seed ; This sets Data Memory Page Pointer ; to page XN, which is defined ; earlier in the program.;- random noise Generator (P-5cs Modulator

16、)- a = seed << 1 a = seed a temp = a << 2 a = temp a a = #8000h & a a = a + seed << 16 seed = hi(a) << 1 a = seed << 11 a = a & #0fffch << 15 repeat(#12) a = a <<C -1;- get sample and run through lowpass filter - b = DRR1 ; LOAD ACCUMULATOR WITH WORD

17、 ; RECEIVED FROM AIC! XN = A << 0 ; STORE THE VALUE OF RECEIVED ; WORD TO VARIABLE XN! AR0 = #XNLAST ; LOAD AR0 WITH ADDRESS OF LAST ; DELAY ELEMENT! A = #0 ; ZERO ACCUMULATOR A! repeat(#79) ; Repeat next instructions 80 times. macd(*AR0-,h0,A) ; Compute FIR output. OUTPUT = hi(A) << 0 ;

18、 Store the filtered input into ; variable OUTPUT. A = OUTPUT << 0 ; OUTPUT =>Accumulator A A = #0FFFCh & A ; TWO LSB's MUST BE ZERO FOR AIC! DXR1 = A ; SEND TO TRANSMIT REGISTER! return_enable ; Enable interrupts and return ; from interrupt.transmit: return_enable ; Enable interrupt

19、s and return ; from interrupt. .end四、实验步骤1、连接CIC-500 DSP发展实验系统 2、载入程序,从J2端输入音乐,运行一段时间后暂停,观察实验结果。3、观察不同频宽的音乐,把结果进行比较。五、实验心得通过实验了解到了DSP程序的编写和A/D转化,以及串口通信的编程,进一步了解了各种寻址方式的实际应用,依据上次实验的经验,这次的操作过程更为熟练。实验三 FFT算法的实现 、实验目的1. 掌握FFT算法。 2、进一步掌握FFT的DSP编程。 3、指出FFT算法中的各种寻址方式,结合算法掌握寻址方式的使用技巧。 4、 认真分析各功能模块的具体功能,和课堂所

20、讲的算法步骤关联起来。二、 实验原理实验原理依据课堂所授的蝶形变换 设计1024个点的FFT变换,输入数据放在in.dat文件里面。在输入实验的时候把bit_rev.asm、 fft.asm unpack.asm、power.asm拷贝至同一个目录下实验主程序: .width 80 .length 55 .title"Real Fast Fourier Transfrom" .mmregs.copy"vectors.asm".copy"initrfft.asm" .textstart: SP =#BOS DP =#0 OVM

21、=#0 FRCT=#1 ASM=#0 CALL bit_rev CALL fft CALL unpack CALL powerhangloose: NOP goto hangloose .copy"bit_rev.asm" .copy"fft.asm" .copy"unpack.asm" .copy"power.asm" .end三、实验步骤: 1、认真阅读四个子程序,理解四个子程序的作用 2、认真进行调试,通过时域频域图对比算法的精度 3、认真思考,改进算法。四、实验心得掌握FFT算法,以及相关的FFT的DSP编程。认真分析各功能模块的具体功能,和课堂所讲的算法步骤关联起来,通过实验能够了解到FFT算法的一些简单的应用以及算法的运算准则。 实验七 设计PID控制器或设计矩阵乘法程序 实验目的 1、根据以前做实验的所培养的经验,写出PID控制器或矩阵乘法程序 二、实验原理 1、PID控制原理2、矩

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论