




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、题 目:基于DSP的FFT程序设计的研究作 者届 别系 别专 业指导老师职 称完成时间2013.06内容摘要快速傅里叶变 (Fas Fourier Tranformation,FFT)是将一个大点数N的DFT分解为若干小点的D F T的组合。将用运算工作量明显降低, 从而大大提高 离散傅里叶变换(D F T) 的计算速度。因各个科学技术领域广泛的使用了FFT 技术它大大推动了信号处理技术的进步,现已成为数字信号处理强有力的工具,本论文将比较全面的叙述各种快速傅里叶变换算法原理、特点,并完成了基于MATLAB的实现。关键词:频谱分析;数字信号处理;MATLAB;DSP281x引言:1965年,库
2、利(J.W.Cooley)和图基(J.W.Tukey)在计算数学杂志上发表了“机器计算傅立叶级数的一种算法”的文章,这是一篇关于计算DFT的一种快速有效的计算方法的文章。它的思路建立在对DFT运算内在规律的认识之上。这篇文章的发表使DFT的计算量大大减少,并导致了许多计算方法的发现。这些算法统称为快速傅立叶变换(Fast Fourier Transform),简称FFT,1984年,法国的杜哈梅尔(P.Dohamel)和霍尔曼(H.Hollmann)提出的分裂基快速算法,使运算效率进一步提高。FFT即为快速傅氏变换,是离散傅氏变换的快速算法,它是根据离散傅氏变换的奇、偶、虚、实等特性,对离散傅
3、立叶变换的算法进行改进获得的。它对傅氏变换的理论并没有新的发现,但是对于在计算机系统或者说数字系统中应用离散傅立叶变换,可以说是进了一大步。随着科学的进步,FFT算法的重要意义已经远远超过傅里叶分析本身的应用。FFT算法之所以快速,其根本原因在于原始变化矩阵的多余行,此特性也适用于傅里叶变换外的其他一些正交变换,例如,快速沃尔什变换、数论变换等等。在FFT的影响下,人们对于广义的快速正交变换进行了深入研究,使各种快速变换在数字信号处理中占据了重要地位。因此说FFT对数字信号处理技术的发展起了重大推动作用。信号处理中和频谱分析最为密切的理论基础是傅立叶变换(Fouriertransform,FT
4、)。快速傅立叶变换(FFT)和数字滤波是数字信号处理的基本内容。信号时域采样理论实现了信号时域的离散化,而离散傅里叶变换理论实现了频域离散化,因而开辟了数字技术在频域处理信 号的新途径,推进了信号的频谱分析技术向更广的领域发展。1.信号的频谱分析如果信号频域是离散的,则信号在时域就表现为周期性的时间函数;相反信号在时域上是离 散的,则该信号在频域必然表现为周期的频率函数。不难设想,一个离散周期序列,它一定 具有既是周期又是离散的频谱。有限长序列的离散傅里叶变换和周期序列的离散傅里叶级数 本质是一样的。因而有限长序列的离散傅里叶变换的定义为:x(n)和X(k)是一个有限长序列的离散傅里叶变换对。
5、式(1.1)为x(n)的N点离散傅里叶变换(DFT),式(1.2)为X(k)的N点离散傅里叶反变换(IDFT)。作为有限长序列的一种傅里叶表示法,离散傅里叶变换除了在理论上相当重要之外,而且由 于存在有效的快速算法快速离散傅里叶变换(FFT),因而在各种数字信号处理的算法中起着核心作用。快速傅里叶变换是指1965年库力和图基(Cooley-Tukey)算法为基础的一类高 效算法,它的出现和发展对推动信号的数字处理技术的变革和发展起着重大作用。信号谱分析是数字信号处理的重要内容,对确定的信号其时 域表示是确定的,其频谱可以通 过傅立叶变换得到。但在实际应用中,携带信息的信号本质上都是随机的,随机
6、信号不能用 确定的时间函数表示,只能用概率分布函数、概率密度函数或统计平均特性来描述。通常把 随机信号看作无限长度和无限能量的功率信号,由于不满足绝对可积,其傅立叶变换不存在 ,因此只能研究其功率在频域的分布,即功率谱或功率谱密度。实际应用中人们所能得到的 随机信号的样本函数总是有限长序列,根据有限长度的信号所得的功率谱只是随机信号真实 功率谱的估计,称为功率谱估计。功率谱是平稳随机信号在频域上,描述各频率分量功率分 布情况的基本特征量,由于功率谱与相关函数之间是一对傅立叶变换,经典功率谱估计都依 据DFT,而采用FFT算法,故称之为非参数方法。若间接使用有限数据先估计相关函数,进而 求出功率
7、谱的估计,为自相关法。2. 利用MATLAB进行随机信号功率谱分析MATLAB在DSP(数字信号处理)中有着广泛的应用。例如:MATLAB的信号处理工具箱、滤波 器设计工具箱以及Simulink的建模仿真功能,还有针对DSP系统的专用数据库DSP模块库 和定点DSP模块库。此外,信号处理工具SPTool(Signalprocessingtool)提供了一个于 完成信号处理任务的GUI集成环境。利用他可以从MATLAB工作空间或者文件直接导入已经设 计好的信号、滤波器或频谱;可以分析、聆听和输出时域信号;可以设计、分析和输出滤波 器;可以完成对信号的滤波;可以对输入输出信号进行各种谱分析并输出结
8、果,等等。在下面的程序中利用MATLAB分信号频域的幅度谱、相位谱、功率谱。通过对频谱图的比较, 观察出信号的频域特征。3. 利用DSP进行随机信号功率谱分析对信号的数字处理,是利用计算机或专用的数字设备对信号进行采集、变换、滤波、估值、 增强、压缩和识别等加工处理,以得到符合人们需要的信号形式并进行有效的传输与应用。 数字信号处理器,也称DSP芯片,是一种专门用于数字信号处理的微处理器。DSP芯片的内部采用程序和数据分开的哈佛结构,具有专门的硬件乘法器,广泛采用流水线操作,提供特殊 的DSP指令,可以用来快速地实现各种数字信号处理算法。基2的FFT硬件实现有多种形式,其工作原理主要采用:顺序
9、处理;级联处理;并 行迭代处理;阵列处理等。4.matlab结果比较(1).自编FFT程序与MATLAB调用FFT程序比较自编函数与调用fft函数结果是一致的。(2).自编产生多频信号程序及多频信号时序图和调用MATLAB自带FFT程序处理此多频信号及频谱分析图5.结论文章通过对随机信号的功率谱分析,了解信号中的频谱组成,进而对信号特征进行考察。完 成了基于MATLAB的信号在时域和频域的波形仿真。在CCS环境下,利用汇编语言实现FFT算法和功率谱的估计,通过CCS所包含的画图函数进行相应的频谱观测,最后,通过仿真器在硬件DSP281x上实现了随机信号的功率谱分析。参考文献1 陈后金,薛健,胡
10、健.数字信号处理M.北京:高等教育出版社,2004.2 董长虹,余啸海,高成,金涛.MATLAB信号处理与应用M.北京:国防工业 出版社,2005.3 梁虹,梁洁,陈跃斌.信号与系统分析及MATLAB实现M.北京:电子工业出 版社,2002.4 张志涌.精通MATLAB6.5版M.北京:北京航空航天大学出版社,2003.5 彭启琮,李玉柏,管庆.DSP技术的发展与应用M.北京:高等教育出版社, 2002.附录1:在利用DSP进行频谱分析的程序设计中,实现的主要程序为:STM#fft-data,AR2STM#fft-data,AR3STM#fft-out,AR4STM#K-FFT-SIZE*2-
11、1,BRCRPTBpower-end-1SQUR*AR2+,ASQURA*AR2+,ASTHA,*AR4+13-6-18 基于DSP的信号频谱分析与实现DSP281x产生一个多频信号,分析其频谱,并和matlab结果比较FFT程序设计#include "DSP281x_Device.h" / DSP281x Headerfile Include File#include "DSP281x_Examples.h" / DSP281x Examples Include File#include "f2812a.h"#include&quo
12、t;math.h"#define PI 3.1415926#define SAMPLENUMBER 128void InitForFFT();void MakeWave();/void FFT(float dataRSAMPLENUMBER,float dataISAMPLENUMBER);int INPUTSAMPLENUMBER,DATASAMPLENUMBER;float fWaveRSAMPLENUMBER,fWaveISAMPLENUMBER,wSAMPLENUMBER;float sin_tabSAMPLENUMBER,cos_tabSAMPLENUMBER;void F
13、FT(float dataRSAMPLENUMBER,float dataISAMPLENUMBER)int x0,x1,x2,x3,x4,x5,x6,xx;int i,j,k,b,p,L;float TR,TI,temp;for ( i=0;i<SAMPLENUMBER;i+ )x0=x1=x2=x3=x4=x5=x6=0;x0=i&0x01; x1=(i/2)&0x01; x2=(i/4)&0x01; x3=(i/8)&0x01;x4=(i/16)&0x01; x5=(i/32)&0x01; x6=(i/64)&0x01;xx=
14、x0*64+x1*32+x2*16+x3*8+x4*4+x5*2+x6;dataIxx=dataRi;for ( i=0;i<SAMPLENUMBER;i+ )dataRi=dataIi; dataIi=0; for ( L=1;L<=7;L+ ) /* for(1) */b=1; i=L-1;while ( i>0 ) b=b*2; i-; /* b= 2(L-1) */for ( j=0;j<=b-1;j+ ) /* for (2) */p=1; i=7-L;while ( i>0 ) /* p=pow(2,7-L)*j; */p=p*2; i-;p=p*j;
15、for ( k=j;k<128;k=k+2*b ) /* for (3) */TR=dataRk; TI=dataIk; temp=dataRk+b;dataRk=dataRk+dataRk+b*cos_tabp+dataIk+b*sin_tabp;dataIk=dataIk-dataRk+b*sin_tabp+dataIk+b*cos_tabp;dataRk+b=TR-dataRk+b*cos_tabp-dataIk+b*sin_tabp;dataIk+b=TI+temp*sin_tabp-dataIk+b*cos_tabp; /* END for (3) */ /* END for
16、(2) */ /* END for (1) */for ( i=0;i<SAMPLENUMBER/2;i+ ) wi=sqrt(dataRi*dataRi+dataIi*dataIi); /* END FFT */main()int i;InitForFFT();MakeWave();for ( i=0;i<SAMPLENUMBER;i+ )fWaveRi=INPUTi;fWaveIi=0.0f;wi=0.0f;FFT(fWaveR,fWaveI);for ( i=0;i<SAMPLENUMBER;i+ )DATAi=wi;while ( 1 );/ break pointv
17、oid InitForFFT()int i;for ( i=0;i<SAMPLENUMBER;i+ )sin_tabi=sin(PI*2*i/SAMPLENUMBER);cos_tabi=cos(PI*2*i/SAMPLENUMBER);void MakeWave()int i;for ( i=0;i<SAMPLENUMBER;i+ )INPUTi=sin(PI*2*i/SAMPLENUMBER*3)*1024;附录2:MATLAB调用FFT程序x=randn(1,16)s=0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0for k=1:16 for n=1:16 s(k)=s(k)+x(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中介居间合同解除协议书
- 会议场地租赁合同协议书
- 钢结构临时工合同协议书
- 油卡订购合同协议书
- 货架安装合同协议书
- 卖房装修合作协议书合同
- 款项合同协议书
- 房屋租赁合同解除协议书
- 合同协议书逾期
- 美发店合作协议书合同
- 【年加工500吨鲍鱼的综合加工生产工艺设计10000字(论文)】
- 2022年新高考全国I卷数学真题(解析版)
- 18文言文二则《囊萤夜读》公开课一等奖创新教学设计
- (四下)语文教学课件-第五单元-单元解读-部编版
- (正式版)JBT 106-2024 阀门的标志和涂装
- 2022高考数学全国1卷(原卷版)
- 阿托品知识课件
- 土地永久性租赁合同
- 职工食堂外包项目服务方案
- 2024山东能源集团中级人才库选拔高频考题难、易错点模拟试题(共500题)附带答案详解
- 中国石油非油管理述职报告
评论
0/150
提交评论