西电DSP上机实验报告.docx
- 文档编号:11232563
- 上传时间:2023-02-26
- 格式:DOCX
- 页数:37
- 大小:2.05MB
西电DSP上机实验报告.docx
《西电DSP上机实验报告.docx》由会员分享,可在线阅读,更多相关《西电DSP上机实验报告.docx(37页珍藏版)》请在冰豆网上搜索。
西电DSP上机实验报告
DSP实验报告及大作业
学院:
电子信息工程
班级:
学号:
姓名:
实验一VISUALDSP++的使用入门
一、实验目的
1、熟悉VISUALDSP++的开发环境。
针对ADSP-21065LSHARCDSP,利用几个用C、C++和汇编语言写成的简单例子来描述VISUALDSP+十编程环境和调试器(debugger)的主要特征和功能。
2、对于运行在其它类型SHARC处理器的程序只需对其链接描述文件(.LDF)做一些小的变化,用于ADSP-21065L硬件仿真。
二、实验内容
实验一:
启动VisualDSP++,建立一个用C源代码的工程(Project),同时用调试器来评估用C语言所编写代码的性能;
实验二:
创立一个新的工程,修改源码来调用一个汇编(asm)程序,重新编译工程,用调试器来评估用汇编语言所写程序的性能;
实验三:
利用调试器的绘图(plot)功能来图形显示一个卷积算法中的多个数据的波形;
实验四:
利用调试器的性能统计功能(Statisticalprofile来检查练习三中卷积算法的效率。
利用所收集到的性能统计数据就能看出算法中最耗时的地方。
三、实验步骤及结果
练习一:
1、进入VisualDSP++,显示VisualDSP++的集成开发和调试环境窗口。
选择菜单中的Session\NewSession\SHARK\ADSP-21065LSHARKprocessingSimulator.此过程为将要编译运行的程序建立了一个Session.
2、选择菜单File中Open打开Project\E:
\float\unit_1\dot_product_c\dotprodc.dpj。
(注:
练习中将float压缩包解压与E盘)
3、在菜单Project中选择BuildProject来对工程进行编译。
在本例子中,编译器会检测到一个未定义的错误,显示为:
“.\dotprod_main.c”,line115:
error#20:
identifier“itn”isundefineditni;
双击该行文字,光标会自动定位出错行,再该行中将“itn”改为“int”,重新编译后没有错误。
这时工程已被成功编译,此时在菜单Debug中点击Run,则进入调试状态。
4、调试无误后,再菜单中选择Tool\LinearProfiling\NewProfile,在弹出的对话框中,进行如下图的参数设置:
实验结果如下:
练习二:
1、从菜单ProjectGroup中选取AddNewProject项,在弹出的工程保存对话框中,将工程名定义为Newproject,并保存在E:
\float\unit_1\dot_product_asm目录下。
2、选取菜单Project\AddtoProject\file(s)…项,按住Ctrl键来同时选中dotprod_main.c,dotprod.c,dotprod_func.asm和dotprodasm.ldf文件,点击“Add”将这几个文件加到工程中
然后进行编译,本例中有一个错误,此错误处于dotprodam.ldf源文件中,具体位置为INPUT_SECTIONS(dotprod.doj(seg_pmco)dotprod.doj(pm_codel)dotProd.doj(pm_code2)dotProd.doj(pm_code3)),将上语句改为INPUT_SECTIONS(dotprod.doj(seg_pmco)dotprod.doj(pm_codel)dotProd_func.doj(pm_code2)dotprod.doj(pm_code3)),重新进行编译,无误后进行调试。
3、在菜单中选择Tool\LinearProfiling\NewProfile,在弹出的对话框中,进行如下图的参数设置:
实验结果如下:
实验结果分析:
分析实验一和实验二的实验结果,发现对于完成同一种功能,相对于C语言,汇编语言运算效率更高。
练习三:
1、在菜单中选择File\E:
\float\unit_1\convolution\debug\convolution.dxe。
并在随后的源文件对话框中选择文件convolution.cpp。
可以在C代码源文件中看到四个全局数组:
Table、Input、Output和Impulse。
2、编译调试无误后,可以完成绘图工作,具体操作如下:
View\DebugWindows\Plot\New则可弹出绘图对话框,再本例中进行如下的参数设置:
实验结果如下:
练习四:
(1)在菜单中选择File\E:
\float\unit_1\convolution\debug\convolution.dxe。
并在随后的源文件对话框中选择文件convolution.cpp。
(2)打开LinerProfiling窗口,然后对程序进行编译调试,则可在LinerProfiling窗口中展现出卷积程序的执行情况。
实验结果如下:
实验二用SIMULATOR模拟数字信号处理
一、实验目的
了解如何利用SIMULATOR实现基本的信号处理方法。
二、实验内容
实验一:
时域卷积运算
实验二:
DFT运算
实验三:
时域相关运算
实验四:
利用相关函数计算信号的功率谱
三、实验步骤及结果
练习一:
1、在菜单中选择File\E:
\float\unit_2\Conv\conv.asm.将输入文件改为
VARinputx[LENGTH_X]="pulse1.dat";
VARinputy[LENGTH_Y]="sin64.dat";
2、在菜单中选择View\DebugWindow\Plot\New进行绘图,分别作出inputx,inputy,output的图像。
实验结果如下:
实验结果分析:
两个序列卷积,卷积后系列的长度为原来两序列长度的和再减一,所以在画图设置中,应该注意输出output的长度。
练习二:
1、启动运行VisualDSP++,在菜单中建立一个新的session,即进行一下操作:
Session\NewSession\ADSP-21062SHARKPresessor.
2、将位于将E:
\float\unit_2\DFT_MOD目录下的源文件调入到开发环境中。
3、编译程序前,在下述程序行中将输入数据文件改为square64.dat
即.VARinput[N]="square64.dat"。
4、对程序进行编译,并在绘图窗口中观察结果。
实验结果如下:
练习三:
1、调入程序,在菜单中执行以下操作:
File\Open\Project\E:
\unit_2\Corr\Corr.asm.
2、选择数据文件,将输入数据inputx改为trig64,inputy改为trig64,可得三角波的自相关函数。
3、将输入数据inputx改为trig64,inputy改为sin64,可得三角波与正弦波的互相关函数。
4、编译程序,并用绘图窗口绘图。
实验结果如下:
实验结果分析:
设原函数是f(t),则自相关函数定义为R(t)=f(t)*f(-t),其中*表示卷积;设两个函数分别是f(t)和g(t),则互相关函数定义为R(u)=f(t)*g(-t),它反映的是两个函数在不同的相对位置上互相匹配的程度。
练习四:
1、调入程序,在菜单中执行以下操作:
File\Open\Project\E:
\unit_2\psd\psd.asm.
2、选择数据文件,将输入数据inputx改为square32,inputy改为square32,可得方波的自相关谱。
3、将输入数据inputx改为square32,inputy改为trig32,可得方波与三角波的互相关谱。
4、编译程序,并用绘图窗口观察输出结果。
实验结果如下:
实验结果分析:
练习一:
由冲击函数卷积的性质可知,单位冲击函数与正弦波函数卷积的结果是对正弦波函数进行平移,多个冲击函数与其卷积则是进行平移叠加。
练习二:
由方波的DFT的性质可知,方波的DFT变换结果是抽样函数,其实部位偶函数,虚部为奇函数。
练习三:
由信号的相关可以用信号的卷积表示,只有当两个信号完全一样时,其相关结果才会出现一个比较大的峰值(相关峰(两个信号完全重合时的卷积值最大))所以三角波的自相关结果会出现一个大的相关峰(三角波的峰值和峰值重合时)和两个小的峰值(由于信号时“偶对称”的),还有一个波谷(说明此时的两个信号相关性最弱),同理三角波和正弦波的互相关结果则是,当正弦波的波峰与三角波的波峰相重合是的相关值最大,而正弦波的波谷和三角波的波峰重合时相关值最小,相关性最大。
练习四:
由维纳-欣钦(Wiener-Khintchine)定理可知,功率有限信号的功率谱函数与自相关函数构成一对傅里叶变换,功率有限信号的互功率谱函数与互相关函数构成一对傅里叶变换。
实验结果中的方波自相关函数的DFT变换对应其功率谱函数,方波与三角波的互相关函数的DFT变换对应其互功率谱函数。
通过加窗与不加窗信号的FFT结果我们可以看出,加窗后其信号的能量发散了,使得频谱展宽,波动更加剧烈,还造成了一定的频谱混叠(三角波对比明显),主要是因为信号加窗截断所引起的频谱泄露和谱间干扰。
实验三信号数据采集与谱分析
一、实验目的
1、让学生了解信号的自相关知识。
2、让学生理解离散傅立叶变化的原理,掌握DFT的快速算法,同时了解连续信号的采样后的频谱,加深对数字信号处理理论的理解。
二、实验内容
1、利用ADSP21065L-EZ-KIT评估板的硬件资源,通过板上codec对输入信号进行采样,取出其中一段数据,然后计算其自相关。
计算结果可以通过主机用VisualDSP++的plot功能描绘出来,也可以用示波器实时查看。
2、利用ADSP21065L的评估板的硬件资源,完成对信号的采样与FFT变换输出。
输出结果可以从示波器上实时地观察到,也可以利用VisualDSP++的plot功能描绘出来。
三、实验步骤及结果
(一)自相关:
COV
1、连接硬件
关闭PC机的电源,按照硬件连接图正确连接各个硬件设备,检查EZ-KIT板上的跳线位置是否正确,按照硬件连接图检查确保正确连接各个硬件设备。
2、加电和启动程序
检查无误后,分别打开PC机、信号源、评估板和示波器的电源,运行VisualDSP++,新建一个工程,工程名称自定义,正确设置工程的各个选项,将…\DSP_exp\unit_3\acorr目录下的源文件(acorr.C、065L_hdr.asm、Buffers.asm和acorr.ldf)加入到工程中。
3、选择或者建立正确的会话类型
按照要求选择或者建立EZ-KIT类型的会话。
4、编译链接和观察结果
编译链接该工程,没有错误后运行程序。
必须注意在Settings菜单中有几项必须正确设置,设置和运行EZ_KIT板方法请上节的有关内容。
正确的设置Settings后,才可以从示波器上看到输出结果。
在程序中恰当位置设置断点(如sample_code函数中的data_count=0程序行),可以利用VisualDSP++的PLOT功能观察采样数据和相关结果。
5、改变信号类型再观察
调节信号发生器,利用示波器监视其输出幅度为0.5-1Vpp,频率为1-2kHZ。
分别产生正弦波和三角波,观察并记录示波器上的输出结果,或者利用VisualDSP++的Plot功能进行观察和记录。
(二)谱分析:
FFT
1、连接硬件
断开所有电源,连接好信号源,EZ-KIT板,微机,示波器等。
检查EZ-KIT板上的跳线位置是否正确,确保正确连接各个硬件设备。
2、加电和启动程序
检查无误后,分别打开PC机、信号源、评估板和示波器的电源,启动VisualDSP++,新建一个工程,工程名称自定义,正确设置工程的各个选项,将…\DSP_exp\unit_3\Fft目录下的源文件(Fft.C、065L_hdr.asm、Buffers.asm和Fft.ldf)加入到工程中。
或者打开\hard\Fft目录下已经存在的工程FFT.dpj。
3、按照要求选择或者建立EZ-KIT类型的会话。
4、编译链接运行程序
编译链接该工程,没有错误后运行程序。
运行程序前,必须注意在Settings菜单中有几项必须正确设置,正确的设置Settings后,才可以从示波器上看到输出结果。
在程序中恰当位置设置断点(如main函数中的rfft256程序行,利用VisualDSP++软件的Plot功能,分别绘制data和tempdata两个变量的数值,同样可以观察采样后的信号和FFT变换之后的结果。
5、改变信号再观察
调节信号发生器,利用示波器监视其输出幅度为0.5-1Vpp,频率为1-2kHZ。
分别产生正弦波、方波和三角波,观察并记录示波器上的输出结果,或者利用VisualDSP++的Plot功能进行记录。
6、改变窗函数再观察
修改源程序中main()函数中的windows变量的值,让其等于1(对应于Hamming窗和Blackman窗),重新编译运行程序,重复步骤4),观察、记录实验结果,对实验结果作出比较,并得出结论。
实验结果:
COV:
1)SIN:
SIN1:
2)SQU:
SQU1:
3)TRI:
TRI1:
FFT:
1)SIN:
SIN1:
SIN2:
2)SQU:
SQU1:
SQU2:
3)TRI:
TRI1:
TRI2:
实验结果分析:
单个矩形波的FFT为Sa函数,矩形序列相当于是单个矩形脉冲与周期脉冲序列的卷积得到的,由数字信号处理的知识可以知道,时域卷积对应于频域相乘。
由于周期脉冲序列的DFT仍为周期脉冲序列,只是相邻脉冲间隔变为原来的倒数分之一,所以卷积结果在频域是Sa函数与周期脉冲序列的乘积,即对Sa函数的取样。
未加窗时,矩形序列的FFT是离散化的Sa函数。
加窗后的时域的矩形序列相当于在原矩形序列上乘了一个窗函数,根据数字信号处理的知识,可以知道时域乘积对应于频域的卷积,所以在频域上加窗矩形序列的FFT是Sa函数与窗函数FFT的卷积。
实验四数据采集与滤波处理
一、实验目的
通过这个实验加深对数字滤波这种信号处理的方法的理解。
二、实验内容
利用ADSP21065L-EZ-KIT板的硬件资源,完成对信号的采样和滤波分析。
本实验中提供的基本FIR滤波器程序,改变FIR滤波器的系数设计出不同的滤波器,如带通滤波器、低通滤波器、多频段带通滤波器等。
滤波效果可以直接在示波器上看到。
三、实验步骤及结果
1、连接硬件
关闭PC机的电源,按照硬件连接图正确连接各个硬件设备,检查EZ-KIT板上的跳线位置是否正确,按照硬件连接图检查确保正确连接各个硬件设备。
2、加电和启动程序
检查无误后,分别打开PC机、信号源、评估板和示波器的电源,运行VisualDSP++,新建一个工程,工程名称自定义,正确设置工程的各个选项,将…\DSP_exp\unit_3\Filter目录下的源文件(Filter.C、065L_hdr.asm、Buffers.asm和Filter.ldf,以及包含滤波器系数的头文件FIR.H)加入到工程中。
或者打开\hard\Filter目录下已经存在的工程Filter.dpj。
3、选择或者建立正确的会话类型
按照要求选择或者建立EZ-KIT类型的会话,详细要求请参阅上节的有关内容。
4、设置程序参数
分析、理解源程序,在源程序中找到修改FIR滤波器类型选择的静态变量staticintfilter。
先让其值为0(默认为不滤波),然后编译链接并运行程序。
5、编译链接和观察结果
编译链接该工程,没有错误后运行程序。
必须注意在Settings菜单中有几项必须正确设置,设置和运行EZ_KIT板方法请上节的有关内容。
正确的设置Settings后,才可以从示波器上看到输出结果。
6、改变信号类型观察
调节信号发生器,利用示波器监视其输出幅度为0.5-1Vpp,分别产生正弦波、方波和三角波,使其频率从直流到采样频率连续地变化,观察示波器上输出信号幅度和波形的变化。
7、改变滤波器通带范围观察
给静态变量filter赋不同的值(1~4之间的整数),然后编译链接并运行程序。
重复步骤4,5,6记录典型点的信号幅度数据,描绘滤波器幅频特性。
实验结果如下:
滤波器:
低通:
1)不加窗:
2)加窗:
带通:
不加窗:
加窗:
实验结果分析:
当输入为正弦波时,对于低通滤波器,当正弦波频率超过低通滤波器的截止频率时,输出波形近似为0,当正弦波频率远小于低通滤波器的截止频率时,输出波形不失真;当正弦波频率远接近于低通滤波器的截止频率时,输出波形有失真。
同样,对于带通滤波器,当正弦波频率在带通滤波器的最低和最高截止频率之外时,输出发生失真,近似为0;当正弦波频率在带通滤波器的最低和最高截止频率之间时,输出为正弦波,无失真。
当输入为方波时,对于低通滤波器和带通滤波器,当方波频率在滤波器的通带范围之内时,输出无失真为方波;同输入为正弦波不同的是,当输入方波的频率再在截止频率之外时,输出信号不会为0.因为方波不是单一频率的信号,它是由许多不同频率的信号组成的,所以,对于方波,滤波器的阻带只是衰减了方波中某些特定的频率成分,但其它的频率成分仍然可以通过。
大作业
DSP技术的学习体会及发展趋势
自从DSP技术问世以来,由于它具有高速、灵活、可编程、低功耗和便于接口等特点,已在图形、图像处理,语音、语言处理,通用信号处理,测量分析,通信等领域发挥越来越重要的作用。
随着技术成本的降低,控制界已对此产生浓厚兴趣,已在不少场合得到成功应用。
关键词:
信号;数字信号处理;信息技术
DSP的定义
DSP就是数字信号处理器,是在模拟信号变换成数字信号以后进行高速实时处理的专用处理器。
它的工作原理是将现实世界的模拟信号转换成数字信号,再用数学方法处理此信号,得到相应的结果。
自从数字信号处理器(DigitalSignalProcessor)问世以来,由于它具有高速、灵活、可编程、低功耗和便于接口等特点,已在图形、图像处理,语音、语言处理,通用信号处理,测量分析,通信等领域发挥越来越重要的作用。
随着成本的降低,控制界已对此产生浓厚兴趣,已在不少场合得到成功应用。
DSP数字信号处理器DSP芯片采用了数据总线和程序总线分离的哈佛结构及改进的哈佛结构,较传统处理器的冯?
诺依曼结构具有更高的指令执行速度。
其处理速度比最快的CPU快10-50倍。
在当今数字化时代背景下,DSP已成为通信、计算机、消费类电子产品等领域的基础器件,被誉为信息社会革命的“旗手”。
最初的DSP器件只是被设计成用以完成复杂数字信号处理的算法。
DSP器件紧随着数字信号理论的发展而不断发展。
DSP发展最快,现在的DSP属于第五代产品,它与第四代相比,系统集成度更高,将DSP芯核及外围组件综合集成在单一芯片上。
这种集成度极高的DSP芯片不仅在通信、计算机领域大显身手,而且逐渐渗透到人们日常消费领域,前景十分可观。
近年来,随着通信技术的飞速发展,DSP已经成为信号与信息处理领域里一门十分重要的新兴学科,它代表着当今无线系统的主流发展方向。
现在,通信领域中许多产品都与DSP密切联系,例如,Modem、数据加密、扩频通信、可视电话等。
而寻找DSP芯片来实现算法最开始的目标是在可以接受的时间内对算法做仿真,随后是将波形存储起来,然后再加以处理。
DSP技术在各领域的应用
在短短的十多年时间,DSP芯片已经在信号处理、通信、雷达等许多领域得到广泛的应用。
目前,DSP芯片的价格也越来越低,性能价格比日益提高,具有巨大的应用潜力。
DSP芯片的应用主要有:
(1)信号处理--如,数字滤波、自适应滤波、快速傅里叶变换、相关运算、频谱分析、卷积等。
(2)通信--如,调制解调器、自适应均衡、数据加密、数据压缩、回坡抵消、多路复用、传真、扩频通信、纠错编码、波形产生等。
(3)语音--如语音编码、语音合成、语音识别、语音增强、说话人辨认、说话人确认、语音邮件、语音储存等。
(4)图像/图形--如二维和三维图形处理、图像压缩与传输、图像增强、动画、机器人视觉等。
(5)军事--如保密通信、雷达处理、声纳处理、导航等。
(6)仪器仪表--如频谱分析、函数发生、锁相环、地震处理等。
(7)自动控制--如引擎控制、深空、自动驾驶、机器人控制、磁盘控制。
(8)医疗--如助听、超声设备、诊断工具、病人监护等。
(9)家用电器--如高保真音响、音乐合成、音调控制、玩具与游戏、数字电话/电视等DSP的发展前景DSP的功能越来越强,应用越来越广,达到甚至超过了微控制器的功能,比微控制器做得更好而且价格更便宜,许多家电用第二代DSP来控制大功率电机就是一个很好的例子。
汽车、个人通信装置、家用电器以及数以百万计的工厂使用DSP系统。
数码相机、IP电话和手持电子设备的热销带来了对DSP芯片的巨大需求。
而手机、
PDA、MP3播放器以及手提电脑等则是设备个性化的典型代表,这些设备的发展水平取决于DSP的发展。
新的形势下,DSP面临的要求是处理速度更高,功能更多更全,功耗更低,存储器用量更少。
DSP技术发展前景
DSP的技术发展将会有以下一些走势:
(1)系统级集成DSP是潮流。
小DSP芯片尺寸始终是DSP的技术发展方向。
当前的DSP尺寸小、功耗低、性能高。
各DSP厂商纷纷采用新工艺,改进DSP芯核,并将几个DSP芯核、MPU芯核、专用处理单元、外围电路单元、存储单元统统集成在一个芯片上,成为DSP系统级集成电路。
(2)追求更高的运算速度和进一步降低功耗和几何尺寸。
由于电子设备的个人化和客户化趋势,DSP必须追求更高更快的运算速度,才能跟上电子设备的更新步伐。
同时由于DSP的应用范围已扩大到人们工作生活的各个领域,特别是便携式手持产品对于低功耗和尺寸的要求很高,所以DSP有待于进一步降低功耗。
按照CMOS的发展趋势,依靠新工艺改进芯片结构,DSP运算速度的提高和功耗尺寸的降低是完全可能的。
(3)DSP的内核结构进一步改善。
DSP的结构主要是针对应用,并根据应用优化DSP设计以极大改进产品的性能。
多通道结构和单指令多重数据、超长指令字结构、超标量结构、超流水结构、多处理、多线程及可并行扩展的超级哈佛结构(SHARC)在新的高性能处理器中将占据主导地位。
(4)DSP嵌入式系统。
DSP嵌入式系统是DSP系统嵌入到应用电子系统中的一种通用系统。
这种系统既具有DSP器件在数据处理方面的优势,又具有应用目标所需要的技术特征。
在许多嵌入式应用领域,既需要在数据处理方面具有独特优势的DSP,也需要在智能控制方面技高一筹的微处理器(MCU)。
因此,将DSP与MCU融合在一起的双核平台,将成为DSP技术发展的一种新潮流。
DSP的发展非常迅速,而销售价格逐年降低目前DSP的结构、总线、资源和接口技术都趋于标准化,尤其接口的标准化进展更快。
这给从事系统设计的工程技
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DSP 上机 实验 报告