ImageVerifierCode 换一换
格式:DOC , 页数:20 ,大小:242.08KB ,
资源ID:4314684      下载积分:10 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/4314684.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请。


权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4009-655-100;投诉/维权电话:18658249818。

注意事项

本文(快速傅里叶变换(FFT)的DSP实现.doc)为本站上传会员【丰****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

快速傅里叶变换(FFT)的DSP实现.doc

1、目录 一、 前言 二、 设计题目 三、 设计要求 3.1 设计目的 3.2 设计要求 四、 设计内容 五、 设计原理 5.2 离散傅里叶变换DFT 5.3 快速傅里叶变换FFT 六、 总体方案设计 6.1 设计有关程序流程图 6.2 在CCS环境下加载、调试源程序 七、 主要参数 八、 实验结果分析 九、 设计总结 一、前言 随着数字电子技

2、术的发展,数字信号处理的理论和技术广泛的应用于通讯、语音处理、计算机和多媒体等领域。快速傅里叶变换(FFT)使离散傅里叶变换的时间缩短了几个数量级。在数字信号处理领域被广泛的应用。FFT已经成为现代化信号处理的重要手段之一。 本次课程设计主要运用CCS这一工具。CCS(Code Composer Studio)是一种针对TM320系列DSP的集成开发环境,在Windows操作系统下,采用图形接口界面,提供环境配置、源文件编辑、程序调试、跟踪和分析等工具,可以帮助用户在一个软件环境下完成编辑、编译、链接、调试和数据分析等工作。 CCS有两种工作模式,即软件仿真器和硬件在线编程。软件仿真器工作

3、模式可以脱离DSP芯片,在PC上模拟DSP的指令集和工作机制,主要用于前期算法实现和调试。硬件在线编程可以实时运行在DSP芯片上,与硬件开发板相结合进行在线编程和调试应用程序。 二、 设计题目 快速傅里叶变换(FFT)的DSP实现 三 、 设计要求 3.1设计目的 ⑴加深对DFT算法原理和基本性质的理解; ⑵ 熟悉FFT的算法原理和FFT子程序的算法流程和应用; ⑶学习用FFT对连续信号和时域信号进行频谱分析的方法; ⑷学习DSP中FFT的设计和编程思想; ⑸学习使用CCS的波形观察器观察波形和频谱情况; 3.

4、2 基本要求 ⑴研究FFT原理以及利用DSP实现的方法; ⑵编写FFT程序; ⑶调试程序,观察结果。 四、 设计内容 ⑴用DSP汇编语言及C语言进行编程; ⑵实现FFT运算、对输入信号进行频谱分析。 五、 设计原理 快速傅里叶变换FFT 快速傅里叶变换(FFT)是一种高效实现离散傅里叶变换(DFT)的快速算法,是数字信号处理中最为重要的工具之一,它在声学,语音,电信和信号处理等领域有着广泛的应用。 5.1. 离散傅里叶变换DFT 对于长度为N的有限长序列x(n),它的离散傅里叶变换(DFT)为 (1) 式中,

5、 ,称为旋转因子或蝶形因子。 从DFT的定义可以看出,在x(n)为复数序列的情况下,对某个k值,直接按(1)式计算X(k) 只需要N次复数乘法和(N-1)次复数加法。因此,对所有N个k值,共需要N2次复数乘法和N(N-1)次复数加法。对于一些相当大有N值(如1024点)来说,直接计算它的DFT所需要的计算量是很大的,因此DFT运算的应用受到了很大的限制。 5.2.快速傅里叶变换FFT 旋转因子WN 有如下的特性。 对称性: 周期性: 利用这些特性,既可以使DFT中有些项合并,减少了乘法积项,又可以将长序列的DFT分解成几个短序列的DFT。FFT就是利用了旋转因

6、子的对称性和周期性来减少运算量的。 FFT的算法是将长序列的DFT分解成短序列的DFT。例如:N为偶数时,先将N点的DFT分解为两个N/2点的DFT,使复数乘法减少一半:再将每个N/2点的DFT分解成N/4点的DFT,使复数乘又减少一半,继续进行分解可以大大减少计算量。最小变换的点数称为基数,对于基数为2的FFT算法,它的最小变换是2点DFT。 一般而言,FFT算法分为按时间抽取的FFT(DIT FFT)和按频率抽取的FFT(DIF FFT)两大类。DIF FFT算法是在时域内将每一级输入序列依次按奇/偶分成2个短序列进行计算。而DIF FFT算法是在频域内将每一级输入序列依次奇/偶分成2

7、个短序列进行计算。两者的区别是旋转因子出现的位置不同,得算法是一样的。在DIF FFT算法中,旋转因子 出现在输入端,而在DIF FFT算法中它出现在输入端。 假定序列x(n)的点数N是2的幂,按照DIF FFT算法可将其分为偶序列和奇序列。 偶序列: 奇序列: 则x(n)的DFT表示为 由于 ,则(3)式可表示为 式中, 和分别为和的N/2的DFT。 由于对称性, 则。因此,N点可分为两部分: 前半部分: (4) 后半部分: (5) 从式(4)和式(5)可以看出,只要求出0~N/2-1区间和的值,就

8、可求出0~N-1区间的N点值。 以同样的方式进行抽取,可以求得N/4点的DFT,重复抽取过程,就可以使N点的DFT用上组2点的 DFT来计算,这样就可以大减少运算量。 基2 DIF FFT的蝶形运算如图(a)所示。设蝶形输入为和,输出为和,则有 (6) (7) 在基数为2的FFT中,设N=2M,共有M级运算,每级有N/2个2点FFT蝶形运算,因此,N点FFT总共有个蝶形运算。

9、 -1 图(a) 基2 DIF FFT的蝶形运算 例如:基数为2的FFT,当N=8时,共需要3级,12个基2 DIT FFT的蝶形运算。其信号流程如图(b)所示。 图(b) 8点基2 DIF FFT蝶形运算 从图(b)可以看出,输入是经过比特反转的倒位序列,称为位码倒置,其排列顺序为。输出是按自然顺序排列,其顺序为。 六、 总体方案

10、设计 6.1 设计程序流程图 6.2在CCS环境下加载、调试源程序 (1)起动CCS,在CCS中建立一个工程文件project\new\FFT,往工程文件里添加程序file\new\sourcefile.建立C源文件和一个命令文件,并将这两个文件添加到工程,再编译并装载程序: 阅读Dsp原理及应用中fft 用dsp实现的有关程序。 双击,启动CCS的仿真平台的配着选项。选择C5510 Simulator。Add加到my system ,按下save (2)启动c5510后打开文件FFT.pjt.将编写好的源程序,和命令文件加载到文件FFT.pjt\Source.

11、 (3)按下project\build调试程序,看其中是否有错误。 (4)无错后,Debug\run运行FFT.out程序。 . (5)通过graph property dialog窗口,改变N点的值,得到不同的结果。 七.主要参数 进行N点FFT运算,分别实现N=256,N=512得到不同的功率谱图 六.源程序: Cmd源文件代码: -f 0 -w -stack 500 -sysstack 500 -l rts55.lib MEMORY { DARAM: o=0x100, l=0x7f00 VECT:o=0x80

12、00, l=0x100 DARAM2:o=0x8100,l=0x7f00 SARAM: o=0x10000,l=0x30000 SDRAM:o=0x40000,l=0x3e0000 } SECTIONS { .text: {}>DARAM .vectors: {}>VECT .trcinit:{}>DARAM .gblinit:{}>DARAM .frt:{}>DARAM .cinit:{}>DARAM .pinit:{}>DARAM .sysinit:{}>DARAM2 .fa

13、r:{}>DARAM2 .const:{}>DARAM2 .switch:{}>DARAM2 .sysmem:{}>DARAM2 .cio:{}>DARAM2 .MEM$obj:{}>DARAM2 .sysheap:{}>DARAM2 .sysstack:{}>DARAM2 .stack:{}>DARAM2 .input:{}>DARAM2 .fftcode:{}>DARAM2 } C文件源码: #include "math.h" #define sample_1 256 #define signa

14、l_1_f 60 #define signal_2_f 200 #define signal_sample_f 512 #define pi 3.1415926 int input[sample_1]; float fwaver[sample_1],fwavei[sample_1],w[sample_1]; float sin_tab[sample_1]; float cos_tab[sample_1]; void init_fft_tab(); void input_data(); void fft(float datar[sample_1],float datai[sa

15、mple_1]); void main() { int i; init_fft_tab(); input_data(); for (i=0;i

16、) { wt1=2*pi*i*signal_1_f; wt1=wt1/signal_sample_f; wt2=2*pi*i*signal_2_f; wt2=wt2/signal_sample_f; input[i]=(cos(wt1)+cos(wt2))/2*32768; } } void input_data() { int i; for(i=0;i

17、i/sample_1); } } void fft(float datar[sample_1],float datai[sample_1]) { int x0,x1,x2,x3,x4,x5,x6,x7,xx; int i,j,k,b,p,L; float TR,TI,temp; for(i=0;i

18、01;x5=(i/32)&0x01;x6=(i/64)&0x01;x7=(i/128)&0x01; xx=x0*128+x1*64+x2*32+x3*16+x4*8+x5*4+x6*2+x7; datai[xx]=datar[i]; } for(i=0;i0) { b=b*2;i--; } f

19、or(j=0;j<=b-1;j++) { p=1;i=8-L; while(i>0) { p=p*2;i--; } p=p*j; for(k=j;k<256;k=k+2*b) { TR=datar[k];TI=datai[k];temp=datar[k+b]; datar[k]=datar[k]+datar[k+b]*cos_tab[p]+datai[k+b]*sin_tab[p]; datai[k]=datai[k]-datar[k+b]*sin_tab[p]+datai[k

20、b]*cos_tab[p]; datar[k+b]=TR-datar[k+b]*cos_tab[p]-datai[k+b]*sin_tab[p]; datai[k+b]=TI+temp*sin_tab[p]-datai[k+b]*cos_tab[p]; } } } for(i=0;i

21、 2)FFT变换结果图 3) 改变信号的频率可以再做次实验。 FFT算法特点:() 共需次迭代; 第次迭代对偶结点的偶距为,因此一组结点覆盖的序号个数是。 第次迭代结点的组数为。 可以预先计算好,而且的变化范围是。 因此N越大,运算越多。 九、 设计总结 通过这次课程设计,我获得了很多。一开始对DSP这个概念很陌生,对于其中的内容更是一知半解。我只知道这门学科应该很有用,但是不知道该如何去把握它,认识它。这次课程设计,让我对DSP有了更进一步的了解。对FFT算法有了新的认识,对其原理和基本性质做了回顾,为以后深入的学习奠定了基础。这次课程设计,我觉得最有意义的就是掌握了一定的DSP系统的软件设计能力。而且还了解了CCS的组成与基本功能。掌握了它的安装、配置、基本操作、工程项目的建立和调试等。希望在以后的应用中能学到更多的知识,并将它们运用到实践中去。

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服