- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE
快速傅里叶变换-基4时间抽取FFT算法matlab实现
作者姓名:李林
摘要: ( 快速傅里叶变换) 算法与 (离散傅里叶变换) 算法比较, 其运算量显著减少, 用计算机实现时速度大为提高。但过程所需的运算量仍较可观, 常给数字信号的实时处理带来困难,理论和实践表明, 若要加快 算法在计算机上的实现, 关键是得设法减少 过程在乘法运算上的时间开销。若改进算法, 减少过程中的乘法次数, 则无疑能加快 的实现 。
通常的 幂法都是“基 分解法” , 即长度为 的 序列由两个长度为 的序列的组合表示; 而这两个长度为 的 序列各自又分别由两个长度为 的序列的组合表示 , 按照这一做法对序列进行反复分解, 直到每个序列的长度等于为止。这个分解、组合过程如同一棵标准二叉树。按分解的逆过程进行组合运算便得到所要求的频谱序列 , , ) 整个变换过程共需要进行次复数乘法运算。参考上述的分解、组合方法, 对序列进行“ 基 分解” , 即长度为 的 序列由四个长度为的 序列组合表示。
关键词: 基分解法 基分解 运算时间和精度
目录
一,前言
1,实验目的
2,题目要求
3,考查要求
二,基—4FFT算法原理
1,基—4FFT定义:
2,举例
3,旋转因子 的性质
4,16点基4时间抽取FFT算法流图
三,基—4FFT运算的实现
1,算法分析
2.算法流程图
3.Matlab程序执行结果
四,两种程序运算量分析和比较
1,matlab自带函数运算量分析
2,基四FFT的运算量
3,运算结果比较
4,结果分析
五,设计总结
六,参考文献
七,附录:
一,前言
1,实验目的:检查学生的综合应用能力。
2,题目要求:已知 输入信号x(t)=0.6sin(200πt)+sin(400πt) +0.3sin(800πt) 。实现基4时间抽取的FFT算法的1024点,4096点变换,并与matlab自带函数进行比较,包括运算时间和精度
3,考查要求
(1)给出快速傅里叶变换程序;
(2)对给定信号进行频谱分析;
(3)给出与matlab自带函数比较结果
二,基—4FFT算法原理
1,基—4FFT定义:
在的特殊情况下,即当时,混合基算法变成基—4FFT算法。
2,举例
以
则有
因而
整序后可得
综上得它的基本运算有三部:
(1)做X(n)的
(2)将乘旋转因子后做4点的(变量为),得到
(3)由于的变量是在前,在后,是基4倒位序的序列,因此,将其变量整序后得到正常顺序输出的序列。
3,旋转因子 的性质
(1) 周期性
对称性
(3) 可约性
4,16点基4时间抽取FFT算法流图
三,基—4FFT运算的实现
算法分析
(1)实现输入数据的比特反转
输入数据的比特反转实际上就是将输入数据进行码位倒置,以便在整个运算后输出序列是一个自然序列。在用汇编指令进行码位倒置时,使用位码倒置寻址可以大大提高程序执行速度和使用存储器的效率。在这种寻址方式下,AR0存放的整数N的FFT点的一半,一个辅助寄存器指向一个数据存放单元。当使用位码倒置寻址将AR0加到辅助寄存器时,地址将以位码倒置的方式产生。
(2)实现N点复数FFT
N点复数FFT算法的实现可分为三个功能块,即第一级蝶形运算、第二级蝶形运算、第三级至级蝶形运算。队以任何一个4的整数幂N=4^M,总可以通过M次分解后最后成为四点的DFT运算。通过这样的M次分解,可以构成M级迭代计算,每级由N/4个蝶形运算完成。
2.算法流程图如下
for(L=1; L=M; L++)
for(L=1; L=M; L++)
for(J=0; J=B-1; J++)
·
for(k = J; k= N-1; k=k+2L)
3.Matlab程序执行结果如下
基四FFT自编函数1024点的频谱图,程序见附录
基四FFT自编函数1024点的频谱图,程序见附录
四,两种程序运算量分析和比较
1,matlab自带函数运算量分析
计算机运算是计算方式如下
由以上表达是知计算一个 N点DFT ,共需次复乘,对于本题的点计算的次数为:,对于4096点计算的次数为
2,基四FFT的运算量
由于计算量大,且要求相当大的内存,难以实现实时处理,限制了DFT的应用。长期以来,人们一直在寻求一种能提高DFT运算速度的方法
FFT便是 Cooley Tukey 在1965 年提出的的快速算法,它可以使运算速度提高几百倍,从而使数字信号处理学科成为一个新兴的应用学科。
1)、DIT―FFT算法与直接计算DF
您可能关注的文档
- 口腔预防保健 第5章 牙周病预防.ppt
- 口腔粘膜病学课件-口腔黏膜变态反应性疾病.ppt
- 口腔诊所的可行性报告.doc
- 口腔正畸学 第九章 矫治过程中的维护.ppt
- 口腔专科护理操作流程评分标准(封面).doc
- 口腔组织病理学复习重点 名词解释 填空 大题 整理.doc
- 口泉收费站安全生产实施方案.doc
- 口算两位数加减两位数小学二年级数学人教版.ppt
- 口香糖、研究性学习.ppt
- 口译论文浅析口译的特点与技巧.doc
- 专题17 中国特色社会主义道路(第01期)-中考历史模拟题分项汇编(全国通用)(原卷版).docx
- 专题17 中国特色社会主义道路(第01期)-中考历史模拟题分项汇编(全国通用)(解析版).docx
- 专题20 宾语从句---三年(2024-2024)中考模拟题英语分项汇编(全国通用).docx
- 专题18 民族团结与祖国统一国防建设与外交成就(第01期)-2024年中考历史模拟题分项汇编(原卷版).doc
- 专题18 民族团结与祖国统一国防建设与外交成就(第02期)-2024年中考历史模拟题分项汇编(全国通用)(解析版).docx
- 专题15 中华人民共和国的成立和巩固(第02期)-中考历史模拟题分项汇编(全国通用)(解析版).docx
- 专题12 中华民族的抗日战争(第01期)-中考历史模拟题分项汇编(原卷版).doc
- 专题12 中华民族的抗日战争(第01期)-中考模拟题历史试题分项汇编(解析版).doc
- 专题12 中华民族的抗日战争(第02期)-中考历史模拟题分项汇编(全国通用)(原卷版).docx
- 专题12 中华民族的抗日战争(第02期)-中考历史模拟题分项汇编(全国通用)(解析版).docx
文档评论(0)