关于DFT与FFT运算速度的比较Word文件下载.docx

上传人:b****6 文档编号:15977813 上传时间:2022-11-17 格式:DOCX 页数:19 大小:599.90KB
下载 相关 举报
关于DFT与FFT运算速度的比较Word文件下载.docx_第1页
第1页 / 共19页
关于DFT与FFT运算速度的比较Word文件下载.docx_第2页
第2页 / 共19页
关于DFT与FFT运算速度的比较Word文件下载.docx_第3页
第3页 / 共19页
关于DFT与FFT运算速度的比较Word文件下载.docx_第4页
第4页 / 共19页
关于DFT与FFT运算速度的比较Word文件下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

关于DFT与FFT运算速度的比较Word文件下载.docx

《关于DFT与FFT运算速度的比较Word文件下载.docx》由会员分享,可在线阅读,更多相关《关于DFT与FFT运算速度的比较Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。

关于DFT与FFT运算速度的比较Word文件下载.docx

4.总结:

6

参考文献6

0.引言

离散傅里叶变换(DiscreteFourierTransform),是连续傅里叶变换在时域和频域上都离散的形式,将时

域信号的采样变换为在离散时间傅里叶变换(DTFT)频域的采样。

在形式上,变换两端(时域和频域上)

的序列是有限长的,而实际上这两组序列都应当被认为是离散周期信号的主值序列。

即使对有限长的离散信号作DFT,也应当将其看作经过周期延拓成为周期信号再作变换。

离散傅里叶变化的出现解决了信号离散化的问题,从而使其在数字滤波、功率谱分析、仿真、系统分析、通信方面得以应用。

快速傅里叶变换(FastFourierTransform),是离散傅里叶变换的快速算法,它是根据离散傅里叶变换的奇、偶、虚、实等特性,对离散傅立叶变换的算法进行改进获得的。

由于它应用的理论基础仍是离散傅里叶变换,所以它对离散傅里叶变换的理论并没有新的发现,但是对于在计算机系统或者说数字系统中应用离散傅立叶变换,可以说是进了一大步。

快速傅里叶变化最早于1965年由Cooly和Tukey提出,这使离散傅里叶变化运算次数由N2减少为

Nlog2N次,使得离散傅里叶变换应用于实际变成现实。

目前,快速傅里叶变化技术已广泛应用于各个领域,

成为数字信号处理技术的一个重要组成部分。

离散傅里叶变化除了本文介绍的基2快速傅里叶变化算法外,

他们都不同程度上减少了运算次数,如戈泽尔(Goertzel)算法、Chirp-Z变化(CZT)算法、WinogradFastTransformAlogrithm(WFTA)等。

本文将仅介绍基2快速傅里叶变化。

1.DFT与FFT的定义

DFT的定义:

设hnTs是连续函数h(t)的n个抽样值n=0,1,…,N_1,这N个点的宽度为N的DFT为:

第1页共10页

WN^k,(n=0,1,…,N_1)。

(Ng丿

用FFT实现DFT:

先设序列点数为N=2m,M为整数。

如果不满足这个条件,可以人为地加上若干零值点,使之达到这一要求。

这种N为2的整数幕的FFT称基2FFT设输入序列长度为N=2m(M为正整数),

将该序列按时间顺序的奇偶分解为越来越短的子序列,称为按时间抽取(DIT)的FFT算法。

下面给出8点基

2FFT的运算流图:

下面对两种变化的运算量进行比较。

设x(n)为N项的复数序列,由DFT变换,任一X(m)的计算都

需要N次复数乘法和N-1次复数加法,而一次复数乘法等于四次实数乘法和两次实数加法,一次复数加法等于两次实数加法,即使把一次复数乘法和一次复数加法定义成一次“运算”(四次实数乘法和四次实数

2

加法),那么求出N项复数序列的X(m),即N点DFT变换大约就需要N次运算。

当N=1024点甚至更多的时候,需要2=1048576次运算,在FFT中,利用WN的周期性和对称性,把一个N项序列(设N=2k,k为正整数),分为两个N/2项的子序列,每个N/2点DFT变换需要(N/2)2次运算,再用N次运算把两个N/2点的DFT变换组合成一个N点的DFT变换。

这样变换以后,总的运算次数就变成2*(N/2)2=Nf/2。

继续上

面的例子,N=1024时,总的运算次数就变成了525312次,节省了大约50%勺运算量。

而如果我们将这种

“一分为二”的思想不断进行下去,直到分成两两一组的DFT运算单元,那么N点的DFT变换就只需要NIogzN次的运算,N在1024点时,运算量仅有10240次,是先前的直接算法的1%点数越多,运算量的节约就

越大,这就是FFT的优越性。

图2-2

比较可以发现用DFT和FFT对同一序列变化得到的结果是完全一样的。

这说明DFT与FFT是完全等价

的,而区别仅在于其具体算法。

号类型无关。

当信号点数较多时,对不同类型信号进行DFT与FFT变化将花费大量时间,而上面已经验证DFT与FFT

DFT与FFT的运算

C程序中计时受机器滴

DFT运算时间将按N2规

运算时间仅与N有关,而与具体信号类型无关。

故下面将仅对同一类型不同点数信号的时间的比较,而这也具有一般代表性。

下面将仅对不同点数正弦信号做DFT与FFT变化,并进行运算时间比较。

由于

答时间限制,故对点数较小信号进行较多次数DFT与FFT变换。

而当点数较多时,

律增长,故对点数较多信号进行较少次数DFT与FFT变换。

各次DFT与FFT运算时间如下诸图:

黃R八诞件、课程设计參老E"

EimE3

ThetimeforSignalCosbpFFT<

N=2,10000times>

uas:

0.031000seconds

ThetimeFor8ignalCosb*DFT<

H=2>

10000tines>

was■0.032000secands

图3-4

c:

:

E;

\课件\踝程设计参考\Dcbug\Text1.eze

|_ia[

X

ThetineforSisinalCo^byFFT<

N=4,10000tine^>

0.063000sec

ThetimeFoi*SignalCe^byDFT<

N=4,10000tines>

uas:

0.156000sec

onds

^onds

«

1

1

图3-5

 

5E八谍件'

课稈设计孝考\Uebug\TextKexe冃回

E

ThetineforSignalCosbyFFTCN=8,1000time?

>

:

0.016000seconds

ThetineforSisrn^lCosbyDFTCN-Sj.1090times>

8.062000seconds

il

图3-6

E八课件'

深程设计孝考\Debug\TextLexeB回

s

ThetimeforSignalGosbyFFTCH~16,1@00times>

was:

0H04700BsecondsTheti<

T>

eforSignAlCosbyDFTCN=16,1000tines>

u&

s:

0.256003seconds

i

图3-7

CAE注课件、課程设计参考\Debug\Text1.exe

ThetineforSignalCosbyFFTtimes>

0.1090133seconds

Thetinefor8ignalCo^bvDFT<

N-32,1900times>

vias:

1seconds

图3-8

KE:

件、課稈设计秦考\Debug\T&

xt1.曲e

ThetineForSifrnalCosbyFFT<

H=1I324>

10tines>

B.0630(31*secondsThetineforSi^nalCosbyDFKN=1024,10tines>

seconds

图3-13

兀E:

\课ft\課程设计参考\®

ebug\Test1-exe

ThetimeforSlgnAlCosbyFFTCN-2048,10tines>

0.156080seconds

ThetimeforSignalCoshyDFTCN=2048^10times>

42.172000seconds图3-14

E:

件'

谍程设计蚩考\Debug\Text1-exe

B

Thetit^eforSignalCoshyFFTCN-4096,10times>

0.34400BsecondsThetineforSignalCosbyDFT<

N=499&

10tines?

167^047000seconds

图3-15

CAE:

\课件'

课程设计参考\Dwlrag\TextLexe

lllietimeforSignaICosbpFFT<

11=8192^1tiniestwas:

~B.07S000seconds

TJietineFopSignalGosbyDFT<

M-8192,1times^uas:

67-141000seconds

图3-16

小E:

课程设计^#\Debuf\Text1-exe

IhetineforSignAlCosbyFFT<

N=1&

384,1tbias=0,X56S0Sseconds

ThetineforSl^nalCosbyDFTCN=16384J±

time&

^ua&

267.485080seconds

图3-17

F面对以上数据进行整理分析。

(注:

e+n表示*10-n)

N

变换次数

Tdft/S

Tfft/s

mean(TDF》/s

mean(Tfft)/s

Tdft/Tfft

理论比值

10000

0.032

0.031

P3.2e-6

P3.1e-6

P1.03

4

0.156

0.063

1.56e-5

6.3e-6

2.48

8

1000

0.062

0.016

P6.2e-5

P1.6e-5

3.875

2.67

16

0.25

0.047

2.5e-4

4.7e-5

5.32

32

1.016

0.109

1.016e-3

1.09e-4

9.32

6.4

64

100

0.406

4.06e-3

1.6e-4

25.38

10.67

128

1.703

1.703e-2

6.3e-4

27.03

18.29

256

6.609

0.141

6.609e-2

P1.41e-3

P46.87

512

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1