基于DSP的FFT实现3.doc

上传人:h**** 文档编号:129597 上传时间:2018-07-09 格式:DOC 页数:51 大小:776KB
下载 相关 举报
基于DSP的FFT实现3.doc_第1页
第1页 / 共51页
基于DSP的FFT实现3.doc_第2页
第2页 / 共51页
基于DSP的FFT实现3.doc_第3页
第3页 / 共51页
基于DSP的FFT实现3.doc_第4页
第4页 / 共51页
基于DSP的FFT实现3.doc_第5页
第5页 / 共51页
点击查看更多>>
资源描述

1、邵阳学院课程设计(论文) 课程设计 (论文 ) 题 目 名 称 基于 DSP 的 FFT 实现 课 程 名 称 DSP 芯片原理与开发应用 学 生 姓 名 成进 学 号 0941301197 系 、 专 业 信息工程系、通信工程 指 导 教 师 李星亮 2012 年 6 月 10 日 邵阳学院课程设计(论文) 摘 要 本次课程设计主要运用 CCS 这一工具 实现 快速傅里叶变换( FFT) 。CCS(Code Composer Studio)是一种针对 TM320 系列 DSP 的集成开发环境,在Windows 操作系统下,采用图形接口界面,提供环境配置、源文件编辑、程序调试、跟踪和分析等工具

2、,可以帮助用户在一个软件环境下完成编辑、编译、链接、调试和数据分析等工作。 CCS 有两种工作模式,即软件仿真器和硬件在线编程。软件仿真器工作模式可以脱离 DSP 芯片,在 PC 上模拟 DSP 的指令集和工作机制,主要用于前 期算法实现和调试。硬件在线编程可以实时运行在 DSP 芯片上,与硬件开发板相结合进行在线编程和调试应用程序。 关键词 : CCS ; 快速傅里叶变换 ( FFT) ; 邵阳学院课程设计(论文) 目 录 摘 要 . 错误 !未定义书签。 第 1 章 快速傅里叶变换 FFT 的原理 . 1 1.1 离散傅里叶变换 DFT . 1 1.2 快速傅里叶变换 FFT . 1 第

3、2 章 硬件设计 . 5 2.1 设计程序流程图 . 5 2.2TMS320C6000 芯片及参数设置 . 5 第 3 章 软件设计 . 7 3.1 N 的参数设置 . 7 3.2 CMD 源文件代码 : . 7 第 4 章 实验仿真及结果分析 .12 4.1 在 CCS 环境下加载、调试源程序 .12 4.2 实验结果 .16 4.3 实验结果分析 .17 课程设计体会 .18 致谢 .19 参考文献 .20 邵阳学院课程设计(论文) 第 1 章 快速傅里叶变换 FFT 的原理 快速傅里叶变换 FFT 快速傅里叶变换( FFT)是一种高效实现离散傅里叶变换( DFT)的快速算法,是数字信号处

4、理中最为重要的工具之一,它在声学,语音, 电信和信号处理等领域有着广泛的应用。 1.1 离散傅里叶变换 DFT 对于长度为 N 的有限长序列 x(n),它的离散傅里叶变换( DFT )为 1,1,0,)()( 10 NkWnxkX nn nkN ( 1) 式中 , NjN eW /2 ,称为旋转因子或蝶形因子。 从 DFT 的定义可以看出,在 x(n)为复数序列的情况下,对某个 k 值,直接按( 1)式计算 X(k) 只需要 N 次复数乘法和( N-1)次复数加法。因此,对所有N 个 k 值,共需要 N2 次复数乘法和 N(N-1)次复数加法。对于一些相当大有 N 值(如 1024 点)来说,

5、直接计算它的 DFT 所需要的计算量是很大 的,因此 DFT 运算的应用受到了很大的限制。 1.2快速傅里叶变换 FFT 旋转因子 WN 有如下的特性。 对称性: 2/NkNkN WW 周期性 : NkNkN WW 利用这些特性,既可以使 DFT 中有些项合并,减少了乘法积项,又可以将长序列的 DFT 分解成几个短序列的 DFT。 FFT 就是利用了旋转因子的对称性和周期性来减少运算量的。 FFT 的算法是将长序列的 DFT 分解成短序列的 DFT。例如: N 为偶数时,先邵阳学院课程设计(论文) 将 N 点的 DFT 分解为两个 N/2 点的 DFT,使复数乘法减少一半:再将每个 N/2点的

6、 DFT 分解成 N/4 点的 DFT,使复数乘又减少一半,继续进行分 解可以大大减少计算量。最小变换的点数称为基数,对于基数为 2 的 FFT 算法,它的最小变换是2 点 DFT。 一般而言, FFT 算法分为按时间抽取的 FFT( DIT FFT)和按频率抽取的 FFT( DIF FFT)两大类。 DIT FFT 算法是在时域内将每一级输入序列依次按奇偶分成 2 个短序列进行计算。而 DIF FFT 算法是在频域内将每一级输入序列依次奇偶分成 2 个短序列进行计算。两者的区别是旋转因子出现的位置不同,得算法是一样的。在 DIF FFT 算法中,旋转因子 kNW 出现在输入端,而在 DIF

7、FFT 算法中它出现在输入端。 假 定序列 x(n)的点数 N 是 2 的幂,按照 DIF FFT 算法可将其分为偶序列和奇序列。 偶序列: 12/,1,0),2(2 ) ,-(N( 4 ) ,( 2 ) ,( 0 ) , 1 Nrrxxxxxx 即 奇序列 : 12/,1,0),12(1 ) ,-(N( 5 ) ,( 3 ) ,( 1 ) , 2 Nrrxxxxxx 即则 x(n)的 DFT 表示为 )2()()()12()2()()()(12/02212/02112/0)12(12/021010NrrkNkNNrrkNNrkrNNrrkNNnnkNNnnkNWrxWWrxWrxWrxnnW

8、nxWnxkX为奇数为偶数由于 2/)2/(22)/2(2 NNjNjN WeeW , 则 ( 3) 式可表示为 邵阳学院课程设计(论文) )3(12/,1,0)()()()()(2112/02/212/02/1 NkkXWkXWrxWWrxkXkNNrrkNkNNrrkN 式中, )(1kX 和 )(2kX 分别为 )(1nx 和 )(2nx 的 N/2 的 DFT。 由于对称性, ,2/ KNNkN WW 则 )()()2/( 21 kXWkXNkX kN 。 因此 , N 点 )(kX可分为两部分: 前半部分: 12/,1,0)()()( 21 NkkXWkXkX kN ( 4) 后半部

9、分 : 12/,1,0)()()2/( 21 NkkXWkXNkX kN ( 5) 从式( 4)和式( 5)可以看出,只要求出 0N/2-1 区间 )(1kX 和 )(2kX 的值,就可求出 0N-1 区间 )(kX 的 N 点值。 以同样的方式进行抽取,可以求得 N/4 点的 DFT,重复抽取过程,就可以使 N点的 DFT 用上组 2 点的 DFT 来计算,这样就可以大减少运算量。 基 2 DIF FFT 的蝶形运算如图 (a)所示。设蝶形输入为 )(1 pxm 和 )(1 qxm ,输出为 )(pxm 和 )(qxm ,则有 kNmmm Wqxpxpx )()()( 11 ( 6) kNm

10、mm Wqxpxqx )()()( 11 ( 7) 在基数为 2 的 FFT 中,设 N=2M,共有 M 级运算,每级有 N/2 个 2 点 FFT蝶形运算,因此, N 点 FFT 总共有 NN 2log)2/( 个蝶形运算。 )(1 qxm )(pxm )(1 qxm )(qxm -1 图 1.1 基 2 DIF FFT 的蝶形运算 邵阳学院课程设计(论文) 例如:基数为 2 的 FFT,当 N=8 时,共需要 3 级, 12 个基 2 DIT FFT 的蝶形运算。其信号流程如图 (b)所示。 图 1.2 8 点基 2 DIF FFT 蝶形运算 从图 (b)可以看出,输入是经过比特反转的倒位

11、序列,称为位码倒置,其排列顺序为 )7(),3(),5(),1(),6(),2(),4(),0( xxxxxxxx 。输出是按自然顺序排列,其顺序为)7(),6(,),1(),0( xxxx 。 邵阳学院课程设计(论文) 第 2 章 硬件 设计 2.1 设计程序流程图 图 2.1 设计程序流程图 2.2 TMS320C6000 芯片及参数设置 TMS320C6000 系列 DSP 是 TI 公司推向市场的高性能 DSP,综合了目前性价比高、功耗低等优点。 TMS320C64 系列提高了时钟频率,在体系结构上采用了 VelociTI 甚长指令集 VLIW(Very Long Instructio

12、n Word)结构 5,芯片内有 8个独立功能单元的内核,每个周期可以并行执行 8 条 32bit 指令,最大峰值速度为4800MIPS, 2 组共 64 个 32bit 通用寄存器, 32bit 寻址范围,支持 8/16/32/40 bit的数据访问,芯片内集成大容量 SRAM,最大可达 8Mb。由于出色的运算能力、高邵阳学院课程设计(论文) 效的指令集、大范围的寻址能力,使其特别适用于无线基站、测试仪表等对运算能力和存储量要求高的应用场合。 本系统主要由 4 部分组成: DSP、 FPGA、正交数字上变频器( Quadrature Digital Upconverter) 、正交数字下变频

13、器( Quadrature Digital Downconverter)。系统硬件结构如图 2.2 所示。图中, D 表示数据总线, A 表示地址总线, C 表示控制总线, L 表示链路口数据线, 字母后面的数字表示总线的位数。 50 MHz 晶振为两片 DSP 及 FPGA 提供时钟信号, 32.768 MHz 高稳定度晶振为 AD9857 和AD6654 提供高质量的时钟信号。复位芯片 MAX6708 控制 DSP、 FPGA、AD9857、 AD6654 和 ST16C550 的复位。 DSP 完成 FFT/IFFT 变换。系统所使用的 DSP2是 ADI 公司的 Tiger sharc

14、 TS101。该 DSP 具有以下特性: 最高工作频率为 300 MHz, 3.3 ns 指令周期; 6 MB 片内 SRAM; 2 个计算模块,每个模块都有 1 个 ALU、 1 个 乘法器、 1 个移位寄存器和 1 个寄存器组; 2 个整型 ALU,用来提供寻址和指针操作; 14 个 DMA控制器; 1149.1 IEEE JTAG 口。该 DSP 最大的特点是: 进行 256 点的复数 FFT变换,仅需 3.67 s 图 2.2 DSP 硬件结构图 邵阳学院课程设计(论文) 第 3 章 软件设计 3.1 N 的参数设置 进行 N 点 FFT 运算,分别 实现 N=256,N=512 得到

15、不同的功率谱图 源程序: 3.2 CMD 源文件代码: -f 0 -w -stack 500 -sysstack 500 -l rts55.lib MEMORY DARAM: o=0x100, l=0x7f00 VECT:o=0x8000, 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 .far:DARAM2

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。