- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DSP课程设计一种块递推实时FFT算法模块设计与实现
河南理工大学
计算机科学与技术学院
课程设计报告
2010— 20011学年第一学期
课程名称 DSP原理与应用
设计题目 一种块递推实时FFT
算法模块设计与实现
学生姓名 芦亮亮
学 号 310709020316
专业班级 通信07-3班
指导教师 王俊峰
2010年 11 月 20 日
目录
摘要………………………………………………………………………2
关键字……………………………………………………………………2
引言 ……………………………………………………………………2
一.功能模块实现………………………………………………………2
1.1基于IP一核的FFT硬件模块 …………………………………………2
1.2实时块递推FFT算法…………………………………………………3
二.系统方案设计………………………………………………………4
三.测试结果和结论……………………………………………………5
四、心得体会 …………………………………………………………7
参考文献 ………………………………………………………………7
一种块递推实时FFT算法模块设计与实现
摘要:文中提出了一种基于FPGA—IP核的FFT算法硬件模块的设计方案,该方案采用四分块递推FFT算法,具有结构规范、递推性好、实时性强等特点,结合DSP对模块的数据输入和输出的软件控制,实现了一种硬件和软件相结合的实时FFT模块。对该模块性能进行测试,FFT模块运行稳定,输出的计算结果正确,与DSP软件实现的标准FFT算法程序库相比,文中的FFT模块实时性能提高了35倍,该模块巳被用于实时信号处理系统中。
关键词:FPGA,FFT算法,DSP,实时信号处理
引言 :
离散傅立叶变换(DFT,Discrete Fourier Transform)是数字信号处理技术中最常用的处理方法,目前应用最广泛的FFT算法是基2、基4和基4/2混合基算法,这几种算法都具有同址计算、结构简单和计算量低等优点,是目前应用在工程中FFT算法的首选实现方案D~5]。实现FFT算法的主要方式是软件实现和硬件实现,软件实现的FFT算法模块已成功地应用在许多数字信号处理系统中。基于数字信号处理器(DSP)的FFT算法实现方法是一种可编程的软件实现方案,它的主要优点是实现灵活、成本适中,实时性可以满足一般的应用要求。FFT算法中的关键运算是蝶形运算,它具有结构对称规范和同址特点,非常适合于硬件实现。硬件实现的最大特点是实时性高,但需要较大的硬件资源支持。本文提出一种FFT算法的硬件结合软件的实现方案,该方案的硬件设计采用FPGA—IP核,结合DSP的软件可编程能力,实现了一种硬件软件折中的FFT算法模块。该模块经实时性的对比测试,与DSP的软件程序模块相比,执行时间缩短约97%,实时性显著改善,是一种实时性、灵活性和经济性都比较好的FFT算法模块,该模块已被成功地应用于工程中的实时信号处理系统中。
一.功能模块实现
1.1基于IP一核的FFT硬件模块
对于FFT算法这样重要的信号处理方法,一些FPGA生产厂家开发了可以作为嵌入式单元的FFT—IP核(Mega Core),这种IP核为用户提供了一种较好的FFT实现方案。美国Alter公司提供的FFT—IP核[1]可以完成点数64~16 384的按频率抽取的FFT算法,输出自动完成码位倒序处理,它采用基4/2混合基算法,并行支持单输出和四输出引擎。对于实时性要求特别严的应用场合,四输出的FFT引擎结构是较好的选择。四输出引擎指的是核内部的FFT蝶形处理器的吞吐量,这种引擎结构在一个时钟周期内计算所有4个基4蝶形复数输出。
图l是IP核内部的四输出引擎结构框图。图1的四输出FFT引擎结构是以基4一FFT算法为核心运算单元,输人输出RAM和缓冲器设计成四块结构,特别适合于块递推FFT算法。同时,这是一种适合缓冲突发(Buffer Burst)I/O数据流结构,是一种速度和资源折中的最佳选择。
1.2实时块递推FFT算法
设点数为Ⅳ的1帧输入离散信号为z“),Ⅳ=4M,将输入1帧数据按时间顺序分成4个子块区,分别记为子块o、子块1、子块2和子块3。每个子块大小为1帧的1/4,分别计算每个子块数据的FFT,然后按照4分块算法进行组合可以得到全帧数据的FFT结果。这种分块结构称为4分块算法,特别适合于分块递推算法,当新的输入数据达到一个子块
长度时,可以作为新数据帧的第4个子块,上l帧数据的4个子块保留后3个,丢弃第1个子块。4个子块组成新的1帧数据,按4分块算法可以获得该帧输入
文档评论(0)