基于DSP的64点FFT算法实现_史明泉

合集下载

FFT算法的DSP实现

FFT算法的DSP实现

FFT 算法的DSP 实现对于离散傅里叶变换(DFT)的数字计算,FFT是一种有效的方法。

一般假定输入序列是复数。

当实际输入是实数时,利用对称性质可以使计算DFT 非常有效。

一个优化的实数FFT算法是一个组合以后的算法。

原始的2N个点的实输入序列组合成一个N 点的复序列,之后对复序列进行N 点的FFT 运算,最后再由N 点的复数输出拆散成2N点的复数序列,这 2 N点的复数序列与原始的2N点的实数输入序列的DFT输出一致。

使用这种方法,在组合输入和拆散输出的操作中,FFT 运算量减半。

这样利用实数FFT 算法来计算实输入序列的DFT的速度几乎是一般FFT算法的两倍。

下面用这种方法来实现一个256 点实数FFT(2N=256 )运算。

1. 实数FFT 运算序列的存储分配如何利用有限的DSP 系统资源,合理的安排好算法使用的存储器是一个比较重要的问题。

本文中,程序代码安排在0x3000 开始的存储器中,其中0x3000~0x3080 存放中断向量表,FFT程序使用的正弦表和余弦表数据(.data段)安排在OxcOO开始的地方,变量(.bss段定义)存放在0x80 开始的地址中。

另外,本文中256 点实数FFT 程序的数据缓冲位Ox23OO~Ox23ff , FFT 变换后功率谱的计算结果存放在Ox22OO~Ox22ff 中。

连续定位.cmd 文件程序如下:MEMORY {PAGE O: IPROG: origin = Ox3O8O,len=Ox1F8OVECT: lorigin=Ox3OOO,len=Ox8OEPROG: origin=Ox38OOO,len=Ox8OOOPAGE 1:USERREGS: origin=Ox6O,len=Ox1cBIOSREGS: origin=Ox7c,len=Ox4IDATA: origin=Ox8O,len=OxB8O}SECTIONS{EDATA: origin=OxCOO,len=Ox14OO{.vectors: { } > VECT PAGE O.sysregs:.trcinit:.gblinit: { } > BIOSREGS PAGE 1 { } > IPROG PAGE O { } > IPROG PAGE O.bios:frt:{ } > IPROG PAGE O { } > IPROG PAGE O.text: { } > IPROG PAGE O.cinit: { } > IPROG PAGE O.pinit: { } > IPROG PAGE O.sysinit: { } > IPROG PAGE O.data: .bss: .far:.const: { } > EDATA PAGE 1 { } > IDATA PAGE 1 { } > IDATA PAGE 1 { } > IDATA PAGE 1.switch: { } > IDATA PAGE 1 .sysmem: { } > IDATA PAGE1•cio:{ } > IDATA PAGE1.MEM$obj: { } > IDATA PAGE1.sysheap: { } > IDATA PAGE1}2.基2实数FFT运算的算法该算法主要分为以下四步进行:1)输入数据的组合和位排序首先,原始输入的2N=256个点的实数序列复制放到标记有“ d_input_addr "的相邻单元,当成N=128点的复数序列d[n],其中奇数地址是d[n]实部,偶数地址是d[n]的虚部,这个过程叫做组合(n为序列变量,N为常量)。

基于DSP用FFT变换进行频谱分析

基于DSP用FFT变换进行频谱分析

基于DSP用FFT变换进行频谱分析FFT(快速傅里叶变换)是数字信号处理(DSP)的一种重要技术,它可以将信号从时域转换到频域进行频谱分析。

在频谱分析中,FFT可以帮助我们了解信号的频率成分、频率强度和相位信息等,从而帮助我们更深入地了解信号的特性和行为。

FFT的基本原理是将一个连续时间域信号分解成一系列离散频率的正弦和余弦函数,其频率范围从0到信号采样率的一半。

为了进行FFT变换,需要先对信号进行采样,并将采样数据以时间序列的形式传入FFT算法中。

在实现上,FFT算法通常使用高效的快速傅里叶变换算法(Cooley-Tukey算法)来加速计算过程。

使用FFT进行频谱分析可以从以下几个方面获得有用信息:1.频率成分:FFT可以将信号分解为一系列频率成分,从低频到高频,每个频率成分都对应一个幅度和相位信息。

通过对FFT输出结果的解析,我们可以确定信号中主要的频率成分。

2.频率强度:FFT可以测量信号在不同频率上的强度,通过幅度谱可以获得每个频率成分的强度信息。

这对于分析信号的频率分布和特征很有帮助,比如确定信号中的谐波或噪声成分。

3.频率相位:通过FFT,我们还可以获取信号在不同频率点上的相位信息。

相位信息对于一些应用来说非常重要,比如音频合成和时频分析等。

在实际应用中,FFT可以用于各种领域,如音频处理、图像处理、通信系统等。

下面以音频处理为例,介绍如何使用FFT进行频谱分析。

以音频信号为例,首先需要从麦克风或音频文件中获取原始的音频信号。

接下来,对音频信号进行采样,在常见音频应用中通常以44.1kHz的采样率进行采样。

得到采样数据后,可以将其传入FFT算法中进行频谱分析。

在音频应用中,通常选择512或1024点的FFT长度以平衡频率分辨率和计算效率。

通过FFT计算,可以得到频率响应的幅度谱及相位谱。

通过分析幅度谱,可以了解音频信号的频率成分,找到主要频率成分和谐波。

通过观察频率成分的强度和分布,我们可以得到音频信号的音色特征,并对信号进行后续处理和调整。

基于DSP的FFT实现

基于DSP的FFT实现

基于DSP的FFT实现傅里叶变换(Fourier Transform)是一种将信号在时间和频率域之间进行转换的数学工具。

它可以将信号从时域转换为频域,使我们能够分析信号的频率成分。

离散傅里叶变换(Discrete Fourier Transform,DFT)是一种计算机算法,用于对离散信号进行傅里叶变换。

离散信号是由一系列采样点组成的,并且在实际应用中,离散信号更常见于数字信号处理(Digital Signal Processing,DSP)系统。

FFT(Fast Fourier Transform)是一种高效的算法,用于计算DFT。

它通过利用信号的对称性和周期性,以O(nlogn)的时间复杂度计算DFT,相比于直接计算的O(n^2)时间复杂度更为高效。

因此,FFT在数字信号处理中被广泛使用,并且是很多DSP系统中实现频谱分析的核心算法。

基于DSP的FFT实现通常采用固定点数格式进行计算,以适应数字信号的要求。

固定点数格式将浮点数表示为带有整数和小数部分的定点数,其中小数部分的位数是固定的。

这允许在硬件实现中使用更简单和更高效的运算器,并且减少了计算过程中的存储需求。

在前向变换中,基于DSP的FFT实现通常采用蝶形运算器结构,该结构通过并行计算减少了计算量。

蝶形运算器将复数乘法和加法运算相结合,以高效地计算傅里叶变换的结果。

在反向变换中,基于DSP的FFT实现使用相同的蝶形运算器结构,但需要调整一些参数来恢复时域信号。

这些参数通常是指数项,用于将频域信号的幅度和相位信息与原始时域信号进行组合。

由于DSP系统通常具有固定的计算能力和存储容量,基于DSP的FFT 实现需要考虑对资源的高效利用。

这可能包括通过流水线技术实现并行计算,使用分块技术减少存储需求,并使用低功耗算法来减少计算负载。

总结起来,基于DSP的FFT实现是一种高效的数字信号处理技术,用于将时域信号转换为频域信号。

它通过利用固定点数格式和蝶形运算器结构,以高效和准确的方式计算傅里叶变换。

dsp的fft的设计与实现

dsp的fft的设计与实现

实验五 FFT程序设计一实验目的1 了解FFT的TMS320C54x实现的编程方法.2 掌握8-1024复数点FFT的TMS320C54x程序的使用方法.3 用FFT的TMS320C54x程序分析方波和正弦波的功率谱.二实验条件1 8-1024复数点TMS320C54x源程序fft.asm.2 8-1024复数点TMS320C54x链接命令文件fft.cmd.3正弦、余弦系数表coeff.inc.4产生正弦波信号数据文件的高级语言程序,程序名为sin_fft.exe ,5向量文件vectors.asm.三实验内容1 大致阅读fft.asm、ft.cmd、coeff.inc等文件.2 对防波输入信号进行64数点FFT.(1) T修改8—1024复数点FFT源程序fft.asm,使之执行64点FFT:●将K_FFT_SIZE 设定为64●将K_LOGN 设定为6(2)对fft.asm和vectors.asm进行过汇编.(3)链接fft.obj和vectors.obj.(4)用sin_fft.exe建立64复数点对称方波输入数据文件in.dat.3对方波输入信号进行64点FFT.f或N,重复第4步实验.(如果改变N,则需要修改fft.asm) 4改变正弦波频率f或采样频率s四实验步骤1.双击,启动CCS的仿真平台的配着选项。

选择C5410 DeviceSimulator。

2.点击project菜单栏的new选项,新建一个fft64的工程注意存储的路径。

2.把下图中用到的文件拷到工程文件目录的文件路径下。

3.在ccs平台中将用到的程序导入到平台中,点击project—>add file to project。

选择多个文件时,可以按住ctrl键。

4.将所有的程序段中的start改为_main,将fft.Asm中的K_FFT_SIZE .set 32 ;NK_LOGN .set 5 ;LOG(N)改为K_FFT_SIZE .set 64 ;NK_LOGN .set 6 ;LOG(N)5,对源文件进行编译(注意先对每个.asm文件先进行编译,以防止程序有错误),没有错误时进行链接。

基于DSP的数据采集及FFT实现

基于DSP的数据采集及FFT实现

基于DSP的数据采集及FFT实现基于数字信号处理器(DSP)的数据采集和快速傅里叶变换(FFT)实现在信号处理和频谱分析等领域具有广泛的应用。

通过使用DSP进行数据采集和FFT实现,可以实现高速、高精度和实时的信号处理。

首先,数据采集是将模拟信号转换为数字信号的过程。

数据采集通常涉及到模拟到数字转换器(ADC),它将模拟信号进行采样并进行量化,生成离散的数字信号。

DSP通常具有内置的ADC,可以直接从模拟信号源获取数据进行采集。

采集到的数据可以存储在DSP的内存中进行后续处理。

数据采集的关键是采样频率和采样精度。

采样频率是指在单位时间内采集的样本数,它决定了采集到的频谱范围。

采样频率需要满足奈奎斯特采样定理,即至少为信号最高频率的2倍。

采样精度是指每个采样点的位数,它决定了采集到的数据的精确程度。

常见的采样精度有8位、16位、24位等。

在数据采集之后,可以使用FFT算法对采集到的数据进行频谱分析。

FFT是一种用于将时间域信号转换为频域信号的算法,它能够将连续时间的信号转换为离散频率的信号。

FFT算法的核心是将复杂度为O(N^2)的离散傅里叶变换(DFT)算法通过分治法转化为复杂度为O(NlogN)的算法,使得实时处理大规模数据成为可能。

在使用DSP进行FFT实现时,可以使用DSP芯片内置的FFT模块,也可以通过软件算法实现FFT。

内置的FFT模块通常具有高速运算和低功耗的优势,可以在较短的时间内完成大规模数据的FFT计算。

软件算法实现FFT较为灵活,可以根据实际需求进行调整和优化。

通常,FFT实现涉及到数据的预处理、FFT计算和结果后处理。

数据的预处理通常包括去除直流分量、加窗等操作,以减小频谱泄漏和谱漂的影响。

FFT计算是将采集到的数据通过FFT算法转换为频域信号的过程。

结果后处理可以包括频谱平滑、幅度谱归一化、相位分析等。

通过合理的数据预处理和结果后处理,可以获得准确的频谱信息。

除了基本的数据采集和FFT实现,基于DSP的数据采集和FFT还可以进行其他扩展和优化。

DSP的FFT实现设计报告

DSP的FFT实现设计报告

DSP的FFT实现设计报告一、引言快速傅里叶变换(Fast Fourier Transform, FFT)是一种用于计算离散傅里叶变换(Discrete Fourier Transform, DFT)的快速算法。

FFT广泛应用于信号处理、图像处理、通信等领域。

本报告旨在介绍FFT的实现设计,探讨其原理、算法和优化方法。

二、FFT的原理傅里叶变换是信号处理中的重要工具,可以将一个信号在频域中进行分解。

离散傅里叶变换是对离散信号进行傅里叶变换的离散采样版本。

FFT是一种高效的离散傅里叶变换算法,通过利用输入序列的对称性和分治策略来减少计算量。

三、FFT的算法FFT的算法有多种变种,其中最为常见的是Cooley-Tukey算法。

Cooley-Tukey算法基于分治策略,将一个长度为N的DFT分解为两个长度为N/2的DFT,并通过旋转因子进行合并。

算法的关键步骤包括:分解、旋转因子计算、合并。

四、FFT的优化1.选择合适的长度和分解策略:对于长度为2^k的序列,可以直接使用蝶形操作进行计算,提高效率。

对于长度不是2的幂的序列,可以通过增加0元素的方式填充到2的幂次方长度,再进行计算。

2.使用查表法计算旋转因子:由于旋转因子具有周期性和对称性,可以将旋转因子的计算结果预先存储在一个查找表中,提高运算速度。

3.使用位翻转法重新排列输入序列:FFT的关键步骤是将输入序列重新排列成位翻转的顺序,这样可以实现更高效的计算。

位翻转法可以通过二进制位运算实现,减少乘法和除法的运算量。

4.使用并行计算:FFT的计算过程中存在大量的矩阵乘法运算,可以通过并行计算的方式提高计算效率,如使用SIMD指令来同时计算多个数据。

五、实现设计基于以上原理和优化方法,我们设计了一个基于C语言的FFT算法实现。

主要步骤包括:1.输入信号预处理:将输入信号重排列成位翻转的顺序。

如果输入序列长度不是2的幂次方,则填充0元素。

2.计算旋转因子:通过查表法计算旋转因子。

基于DSP的FFT算法实现概要

基于DSP的FFT算法实现概要

基于DSP的FFT算法实现Realization of FFT algorithm based on DSP艾红,常青青,邓大伟AI Hong, CHANG Qing-qing, DENG Da-wei(北京信息科技大学自动化学院,北京 100192摘要:快速傅立叶变换(FFT是将信号从时域变换到频域的一种方法,广泛运用于各种信号分析领域。

文中介绍了FFT算法的原理,构建了基于TMS320F2812的硬件平台,阐述了FFT算法的硬件与软件实现。

利用TMS320F2812内部的ADC模块与事件管理器的定时器实现信号的实时采集,不需要使用专门的A/D转换芯片。

软件上以128点FFT运算为例,在CCS环境下利用C 语言编程实现了FFT算法,程序充分利用蝶式权的周期性及FFT运算中第一级蝶式权值固定为1的特点,使得运算量与复杂度大大减小。

运行结果表明TMS320F2812能够快速高效地完成FFT运算。

关键词:数字信号处理;快速傅立叶变换;信号采集中图分类号:TP273 文献标识码:B 文章编号:1009-0134(201201(上-0017-03 Doi: 10.3969/j.issn.1009-0134.2012.01(上.070 引言快速傅立叶变换(FFT在雷达、通信、电子对抗和电力系统等领域有广泛应用,特别是在电力系统的谐波检测中,FFT几乎是唯一可行的检测方法。

通常提高FFT 运算速度有两种途径:改进FFT 算法本身和改进运算工具。

现阶段提高FFT算法本身非常困难,一般方法致力于改进运算工具。

数字信号处理器DSP 是一种可编程的高性能处理器。

文中充分利用TMS320F2812 DSP强大的数据处理能力,实现了FFT 运算,并提高了运算速度。

1 系统硬件结构系统设计以TMS320F2812处理器为核心,辅以外围电路构成。

DSP负责模拟输入信号数据采集以及FFT算法实现。

外围电路包括电源转换电路,时钟电路,复位电路以及外部RAM等。

基于dsp的fft频谱分析方法研究

基于dsp的fft频谱分析方法研究

基于dsp的fft频谱分析方法研究摘要:计算机科学和微电子技术在当今社会飞速发展并扮演了重要的角色,基于数字信号处理的频谱分析几乎涉及到所有的工程技术领域并且发挥着极其重要的作用。

DSP具有的性质,具体包括了稳定性、大规模集成性以及可重复性,尤其具有很高的可编程性、处理效率快,对于发展和应用频谱分析技术而言的带来了巨大的机遇。

数字信号处理主要从数字滤波和频谱分析两个方面解决信号处理问题。

本文主要研究基于DSP用FFT变换实现对信号的频谱分析,通过对DFT以及FFT算法进行研究,从基础深入研究和学习,掌握FFT频谱分析方法的关键。

借助学习开发环境和DSP芯片工作原理,对CCS和MATLAB的简单调试和软件仿真合理掌握,验证了FFT算法的正确性,完成基于DSP对信号的实时频谱分析。

关键词:DFT、FFT、频谱分析、DSPResearch on FFT Spectrum Analysis method based onDSPAbstract:Computer science and microelectronics technology play an important role in the rapid development of modern society. Spectrum analysis based on digital signal processing involves almost all engineering fields and plays an extremely important role. Research on spectrum analysis is one of the main development directions. Digital signal processing basically solves the problem of signal processing from two aspects, one is digital filtering, the other is spectrum analysis. This paper mainly studies the spectrum analysis of signal based on DSP and FFT transform. Through the research of DFT and FFT algorithm, the key of FFT spectrum analysis method is grasped from the basic research and study. The stability of DSP and the large-scale integration of DSP are discussed. Repeatability, especially high programmability and high processing speed, brings great opportunities to the development and application of spectrum analysis technology. Through the study of the working principle and development environment of DSP chip, the simple debugging and software simulation of CCS and matlab are mastered, and thereal-time spectrum analysis of signal based on dsp is completed. Key words: DFT,FFT, spectrum analysis, DSP目录1绪论1.1 引言这个时代是互联网飞速发展的时代,对于数字信号处理技术而言,在很多的领域都有涉及。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

图 2 输入 波形
图 3 输出 波形
(下 转第 64 页)
54 2011 Radio Engineering Vo1.41 No.10
专题技术与工程应用
最后将扁平排线从按键 后部直接断开 , 干扰下降 。 根据这一情况 , 决定对按键处结构进行整改 。 整改 后 , 测试曲线如图 2(b)所示 。
由图 1 可见 , DIT-FFT 算法要求输入序列 x(n) 按照倒序排列 , 即如图 1 所示 :x(0)、 x(4)、 x(2)、 x(6)、 x(1)、 x(5)、x(3)、x(7), 因此首先要采用 cbrev 函数对输入序列倒序 。
cbrev()函数用于对复数序列进行倒序 , 即把数 组 x 中的数据当作复数序列(即使数组 x 中实际是 一个实序列)。 由 2 个相邻的实数表示一个复数 , 偶 地址为复数的实部 , 奇地址为复数的虚部 。 构成的 复序列如下 , x[ 0] +jx[ 1] , x[ 2] +jx[ 3] , …x[ 2N 2] +jx[ 2N -1] , 倒序后的结果也按复数的实部 、虚
for(i =0 ;i <NX -1 ;i =i +2) {p =y[ i] ; q =y[ i +1] ; temp =p *p +q *q ; f[ m] =sqrt(temp); m ++; }
2.4 仿真结果分析
文章 选 用 的 输 入 序 列 x (n)为 一 抽 样 信 号 Sa(n), 求其幅度谱 。 输入序列 x (n)的波形如图 2 所示 , 输出幅度谱波形如图 3 所示 。
电子设备的 EMC 性能包括了 2 个方面 :①设备 对外干扰特性 , 包括传导及辐射发射 , ②设备对外部 电磁干扰的敏感度特性 。要同时解决这 2 个方面问 题 , 用屏蔽的方法隔断耦合路径是一种很有效的方 法 。要保证机箱具有足够高的屏蔽效能 , 除了要选 择合适的制造材料 。另外还需要注意 2 个方面 :① 尽可能保证机箱这个屏蔽体的导电连续性 ;②妥善 处理穿过屏蔽机箱的各种导体 。 这 2 个方面在产品 研发初期若能得到较好的解决 , 在整机完成后进行 EMC 实验时通过率会提高很多 。
收稿日期 :2011-07-11
2011 年 无线电工程 第 41 卷 第 10 期 53
专题技术与工程应用
部依次存放 。 程序代码如下 : cbrev(x , y , NX/ 2); rfft(y , 64 , 0);
2.3 幅度谱的计算
图 1 8 点 DIT -FFT 运算流图
2 在 CCS 上实现 DIT -FFT 算法
3 结束语
FFT 是信号采集领域的重要数据处理工具 。上 述充分利用高性能的 54x DSP , 可以完成 64 点的 32 位精度浮点 FFT 运算 , 而且经过实验验证转换结果 正确 、精度够用 , 证明了在 DSP 上实现 FFT 运算的 可行性 , 为 FFT 实现方法开辟了新的应用领域 。
1.2 快速傅里叶变换[ 2, 3]
FFT 算法就是不断地把长序列的 DFT 分解成几 个短序列的 DFT , 并利用 WkNn 的周期性和对称性来 减少 DFT 的运算次数 , 最常用的是按时间抽取的基 2FFT 算法 , 根据输入序列时间上的奇偶 , 将一个 N 点的 DFT 分解成 2 个 N/ 2 点的 DFT , 再把 2 个 N/ 2 点的 DFT 又可按照奇偶分成 2 个 N/ 4 的 DFT , 直到 最终分解为 N/ 2 个 2 点的 DFT 运算 , 从而 , 大大减 小了运 算量 , 提高 了运算 速度 。 用 FFT 算法 只需 (N/ 2)log2N 次运算 。 一个完整的 8 点按时间抽取 的基 2FFT (DIT -FFT)运算流图(蝶形图)如图 1 所 示。
究方向 :DSP 的软硬件开发 。
64 2011 Radio Engineering Vo1.41 No.10
图 2 按键处整改前 后辐射发射测试曲线
整改采取的方法如图 3 所示 。 ① 在扁平排线与 按键接口处采用滤波处理 , 用低通滤波器将连线上的 高频成分滤除 , 只保留所必需的低频成 分 ;② 用屏 蔽盒将内部电路与按键隔离开 , 提高按键处的屏蔽 效能 。
图 3 按键处整改 示意图
4 结束语
专题技术 与工程应用
基于 DSP 的 64 点 FFT 算法实现
史明泉
(内蒙古科技大学 信息工程学院 , 内蒙古 包头 014010)
摘 要 快 速傅 里 叶变 换 (Fast Fourier Transformation , FFT) 作 为时 域 和 频 域 转 换 的 基 本运 算 , 是 谱 分 析 的 必 要 前 提 , 广 泛应 用 于信 号的 实 时处 理 。 分 析了 FFT 的 基 本原 理 , 以 TI 公司 的 TMS320VC5402 DSP 为 硬 件 平 台 , 实 现 了 实 时快 速傅 里 叶变 换算 法 , 验 证了 在 DSP 上实 现 快速 傅 里 叶 变 换 (FFT) 的 准 确 性和 可 行 性 , 对信 号 谱 分 析 具 有 重 要 意义 。
参考文献 [ 1] 杨 继深 .电磁兼容技术之 产品研 发与认 证[ M] .北京 :电
子 工业出版社 , 2004:66-67. [ 2] 区 健昌 .电子设备的电磁 兼容性 设计[ M] .北京 :电子 工
业 出版社 , 2003:84-85.
作者简介 聂 磊 女 , (1980 —), 中国电子科技集团公司第五十四研究 所
(1)
式中 , X(k)为 x(n)的离散傅里叶变换 , 也就是频 域信号 , 共有 N 个点 ;WN =e-j2Nπ ;N 为 DFT 变换区 间长度 。
从式(1)中看出 , 利用 DFT 计算频谱 , 对于每一 个固定的 k , 需要计算 N 次复数 乘法 , N -1 次加 法 ;对于 N 个不同的 k , 共需计算 N2次复数乘法 , N ×(N -1)次复数加法 , 运算量相当大 。
工程师 。 主要研究方向 :设备电磁兼容技术 。
(上接第 54 页)
理论上 , 抽样函数的傅里叶变化就是矩形波 , 而 且利用 CCS 软件自带的求 FFT 幅度谱的图形功能 , 观察了抽样函数的幅度谱 , 如图 4 所示 。
图 4 利用 CCS 自带的求幅度谱功能求出的幅度谱
比较图 3 和图 4 可以看出二者非常相近 , 为一 矩形波 , 从而验证了此算法的正确性 。
实时 FFT[ J] .无线电工程 , 2010 , 41(3):53-55. [ 4] 乔瑞萍 , 崔 涛 , 张芳 娟 .TMS320C54X DSP 原 理及 应 用
[ M] .西安 :西安电子科技大学出版社 , 2005 .
作者简介 史明泉 男 , (1981 —), 内蒙古科技大学信息学院讲师 。 主要 研
DSPLIB 库 是 一 个 为 C 语 言 程 序 员 开 发 TMS320C54x 而 建 立 的 经 过 优 化 的 DSP 函 数 库 。
DSPLIB 函数库包含 50 多种采用汇编语言编写的常 用信号处理程序 , 可以由 C 语言或汇编语言调用 。 调用 DSPLIB 库时 , 在工程中要添加库文件 54xdsp . lib , 在 C 源程序中要包含 dsplib .h 头文件 , 采用的函 数为 cbrev 和 rfft 函数 。
1 FFT 基本原理[ 1 , 2]
1.1 离散傅里叶变换(DFT)的定义
设 x(n)是一个长度为 N(N =64)的有限长序
列 , 则1
∑ X(k)= DFT[ x(n)] = x(n)WkNn , n =0 k = 0, 1 , … , N -1 。
关键词 FFT ;谱分析 ;DSP ;算法 中图分类号 TN713 文献标识码 A 文章编号 1003-3106(2011)10-0053-02
Implementation of 64 -point FFT Algorithm Based on DSP
SHI Ming-quan
(Inner Mongolia University of Science&Technology , Baotou Neimenggu 014010 , China) Abstract Regarding as the fundamental operations of time domain and frequency domain transformation , FFT (Fast Fourier Transformation)is the necessary precondition for the spectrum analysis, and it is widely used in real-time processing of signal.By using TMS320VC5402 DSP as the hardware platform of TI Corporation, this paper analyzes the basic principle of FFT , realizes the real-time fast FFT algorithm and demonstrates the accuracy and feasibility of implementing fast FFT on DSP.It is very helpful for spectrum analysis study . Key words FFT ;spectrum analysis;DSP ;Algorithm
2.1 利用 N 点复序列计算 2N 点实序列
设 x[ k] 是一个长度为 2N 的实序列 , X[ m] 是 其 2N 点 DFT 。 定义如下 2 个长度为 N 的实序列 :
x1[ k] = x[ 2k] , 0≤k ≤N -1,(实偶序列); x2[ k] = x[ 2k +1] ,0 ≤k ≤ N -1 ,(实奇序列)。 可以得到 : X[ m] =X1[ m] +Wm2NX2[ m] , m =0,1 , …, N -1; X[ m +N] = X1[ m] -Wm2NX2[ m] 。 式中 , X1[ m] 和 X2[ m] 分别为 x1[ k] 和 x2[ k] 的 DFT 。
相关文档
最新文档