基于TMS320F2812的分裂基FFT算法的实现

时间:2022-10-12 11:56:15

基于TMS320F2812的分裂基FFT算法的实现

摘要:介绍分裂基FFT算法的原理,采用C语言编程实现该算法,并在基于DSP TMS320F2812的实验装置上进行分裂基算法的实现,该算法通用性好,可靠性高,可以实现快速的测量和分析。

关键词:分裂基FFT算法;DSP;C语言

中图分类号:TM744文献标识码:A文章编号:1007-9599 (2010) 11-0000-01

Split Radix FFT Algorithm Realization Based On TMS320F2812

Sui Shunke1,Ma Wei2,Sui Shunxu2

(1.China University Of Mining&Technology;2.Liaoning University Of Technology)

Abstract:It introduced the theory of split radix FFT algorithm in this paper,the algorithm using C language is programmed,and split radix FFT algorithm experiments based on the TMS320F2812,DSP-based experimental setup is carried on.This algorithm possesses the advantage of good flexibility,strong reliability,real time fulfillment and fast measurement and analysis.

Keyword:Split-radix FFT algorithm;Digital signal processing;Combined Language

一、分裂基算法

分裂基算法的基本思路是对偶序号输出使用基-2算法,对奇序号输出使用基-4算法。在各种算法中,分裂基算法所需的乘法数和加法次数为最小,并接近理论上的最小值,并且分裂基算法还具有和基-2 FFT算法同样好的同址运算结构,因此被认为是一种实用的高效算法。

分裂基算法的结构图,如图1所示。

从图中可看出一个序列x(n)的N点DFT可分解成1个N/2点DFT和2个N/4点DFT。令基-2部分x(2r)的奇数点进一步按基-4抽取分解,而基4部分的偶数点又进一步按基-2抽取分解。以此类推,直至分解为4点或2点DFT,完成序列x(n)的N点DFT的快速运算[4]。由此可得:

二、分裂基算法在F2812上的实现

TMS320F2812是TI公司推出的32位定点DSP芯片,它不但有数字信号处理能力,又有强大的事件管理能力和嵌入式控制能力,是目前在国内外使用较为广泛的DSP芯片之一。

系统实现的硬件平台主要有TMS320F2812处理芯片、信号的采集调理电路、数据程序的存储单元,以及按键显示等电路构成。

本系统采用DSP TMS320F2812作为核心。芯片内部尽管有数据和程序存储器,但可根据数据处理量的大小外扩一部分存储器。通过人机接口部分还可控制和查看程序的运行和输出。

(一)程序设计流程

这里采用的是基于频域抽取的原位分裂基算法。程序共分三部分:1.进行L型蝶形运算,由一个3层循环嵌套构成。最外层的循环对于N点FFT(N=2L)控制循环M回,只需在初始时给定N的值,就可以进行相应各点的FFT。中间的循环要进行AK次,这里的AK等于N/2K+1次(0≤k≤L一1),它表示在第k回循环分成了nK(nK=(1/3)[2k+(-1)K+1])组中每一组L型蝶形运算的数目,同在一组具有相同的结构及旋转因子分布。里层的循环用来计算相邻的蝶型运算和他们的旋转因子。2.单独计算基2蝶型运算;3.进行整序运算,在FFT中由于不断地对输入序列进行奇偶抽取,导致序列最后按称之为倒序的规律排列,所以最后要重新排序。

(二)调试仿真结果分析

当输入f=100Hz的正弦信号,采样点N=256时,并调整采样频率使得256个点采样时间为10ms,即一个输入信号的周期。我们在CCS仿真环境下观察采样后的正弦序列,如图2所示,其中横、纵坐标分别为采样点和输入信号的幅值。对该正弦信号进行分裂基FFT计算,可分别得到其频谱图3所示,其中横坐标为K,纵坐标为x(k)。

如何提高数据的精度和缩短处理所耗费的时间,对工业控制系统的改进有着至关重要的作用。通过以上实验可以看出,分裂基FFT分析方法能快速有效地实时检测出数据参数,保证检测精度的情况下,同时相对于其它算法而言有着更快的速度,从而提高了系统的效率。

参考文献:

[1]胡广书.数字信号处理――理论、算法与实现[M].北京:清华大学出版社,2003

[2]孙丽明.TMS320F2812原理及其C语言程序开发.北京:清华大学出版社,2008

[3]王裕,黄洪全.分裂基FFT在电力系统谐波检测中的应用[J].自动化技术与应用,2010:73

[4]刘欢,谢志远.分裂基FFT算法的讨论与改进[J].通信技术,2008:124-128

作者简介:马巍(1983-),男,河南商丘,研究方向:智能控制与智能信息处理;随顺科(1989-),男,山东济宁,中国矿业大学信电学院电气自动化专业。

上一篇:半导体制冷技术在LED散热中的应用 下一篇:浅谈高等院校Java程序设计课程教学