基3的27点fft算法和蝶形图
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为常量)。
FFT算法
用FPGA实现FFT算法引言DFT(Discrete Fourier Transformation)是数字信号分析与处理如图形、语音及图像等领域的重要变换工具,直接计算DFT的计算量与变换区间长度N的平方成正比。
当N较大时,因计算量太大,直接用DFT算法进行谱分析和信号的实时处理是不切实际的。
快速傅立叶变换(Fast Fourier Transformation,简称FFT)使DFT运算效率提高1~2个数量级。
其原因是当N较大时,对DFT进行了基4和基2分解运算。
FFT算法除了必需的数据存储器ram和旋转因子rom外,仍需较复杂的运算和控制电路单元,即使现在,实现长点数的FFT仍然是很困难。
本文提出的FFT实现算法是基于FPGA之上的,算法完成对一个序列的FFT计算,完全由脉冲触发,外部只输入一脉冲头和输入数据,便可以得到该脉冲头作为起始标志的N 点FFT输出结果。
由于使用了双ram,该算法是流型(Pipelined)的,可以连续计算N点复数输入FFT,即输入可以是分段N点连续复数数据流。
采用DIF(Decimation In Frequency)-FFT 和DIT(Decimation In Time)-FFT对于算法本身来说是无关紧要的,因为两种情况下只是存储器的读写地址有所变动而已,不影响算法的结构和流程,也不会对算法复杂度有何影响。
算法实现的可以是基2/4混合基FFT,也可以是纯基4FFT和纯基2FFT运算。
傅立叶变换和逆变换对于变换长度为N的序列x(n)其傅立叶变换可以表示如下:NnkX(k)=DFT[x(n)] = Σ x(n)Wn="0"式(1)其中,W="exp"(-2π/N)。
当点数N较大时,必须对式(1)进行基4/基2分解,以短点数实现长点数的变换。
而IDFT的实现在DFT的基础上就显得较为简单了:式(2)由式(2)可以看出,在FFT运算模块的基础上,只需将输入序列进行取共轭后再进行FFT运算,输出结果再取一次共轭便实现了对输入序列的IDFT运算,因子1/N对于不同的数据表示格式具体实现时的处理方式是不一样的。
快速傅里叶变换(含详细实验过程分析)
一、实验目的1、掌握FFT 算法和卷积运算的基本原理;2、掌握用C 语言编写DSP 程序的方法;3、了解利用FFT 算法在数字信号处理中的应用。
二、实验设备 1. 一台装有CCS 软件的计算机; 2. DSP 实验箱的TMS320C5410主控板; 3. DSP 硬件仿真器。
三、实验原理 (一)快速傅里叶变换傅里叶变换是一种将信号从时域变换到频域的变换形式,是信号处理的重要分析工具。
离散傅里叶变换(DFT )是傅里叶变换在离散系统中的表示形式。
但是DFT 的计算量非常大, FFT 就是DFT 的一种快速算法, FFT 将DFT 的N 2步运算减少至 ( N/2 )log 2N 步。
离散信号x(n)的傅里叶变换可以表示为∑=-=10][)(N N nk N W n x k X , Nj N e W /2π-=式中的W N 称为蝶形因子,利用它的对称性和周期性可以减少运算量。
一般而言,FFT 算法分为时间抽取(DIT )和频率抽取(DIF )两大类。
两者的区别是蝶形因子出现的位置不同,前者中蝶形因子出现在输入端,后者中出现在输出端。
本实验以时间抽取方法为例。
时间抽取FFT 是将N 点输入序列x(n) 按照偶数项和奇数项分解为偶序列和奇序列。
偶序列为:x(0), x(2), x(4),…, x(N-2);奇序列为:x(1), x(3), x(5),…, x(N-1)。
这样x(n) 的N 点DFT 可写成:()()∑++∑=-=+-=12/0)12(12/02122)(N n kn NN n nkNW n x Wn x k X考虑到W N 的性质,即2/)2//(22/)2(2][N N j N j N W e e W ===--ππ因此有:()()∑++∑=-=-=12/02/12/02/122)(N n nkN k NN n nkN W n x WWn x k X或者写成:()()12()kN X k X k W X k =+由于X 1(k) 与X 2(k) 的周期为N/2,并且利用W N 的对称性和周期性,即:k N N k N W W -=+2/可得:()()12(/2)kN X k N X k W X k +=-对X 1(k) 与X 2(k)继续以同样的方式分解下去,就可以使一个N 点的DFT 最终用一组2点的DFT 来计算。
数字信号处理智慧树知到答案章节测试2023年山东工商学院
绪论单元测试1.如果想要实现模拟信号的数字化,以便后续处理,须经过:()。
A:数字滤波器B:D/A转换C:A/D转换D:抗混叠模拟滤波答案:CD2.以下属于数字信号处理技术的是()。
A:语音识别B:视频编码C:图像压缩D:谱分析答案:ABCD3.数字信号处理系统具有()的优点。
A:可靠性高B:精度高C:易于大规模集成D:灵活性高答案:ABCD4.数字信号处理系统可以采用如下方法实现()。
A:通用微处理器B:DSPC:通用计算机D:FPGA答案:ABCD5.序列经过()成为数字信号。
A:量化B:编码C:采样D:保持答案:AB6.数字信号在时间和振幅上都是离散的。
()A:错B:对答案:B7.周期信号和随机信号是功率信号。
()A:错B:对答案:B8.数字信号处理只对数字信号进行处理。
()A:对B:错答案:B9.与模拟系统相比,数字系统精度高、复杂度低。
()A:对B:错答案:B10.与模拟系统相比,数字系统可靠性更高。
()A:对B:错答案:A第一章测试1.从奈奎斯特采样定理得出,要使实信号采样后能够不失真还原,采样频率fs与信号最高频率fmax关系为:。
()A:fs≥ 2fmaxB:fs≤2 fmaxC:fs≥ fmaxD:fs≤fmax答案:A2.序列x1(n)的长度为4,序列x2(n)的长度为3,则它们线性卷积的长度是。
()A:7B:5C:6D:6答案:C3.若正弦序列x(n)=sin(30nπ/120)是周期的,则周期是N= 。
()A:2B:4πC:2πD:8答案:D4.一LTI系统,输入为 x(n)时,输出为y(n);则输入为2x(n)时,输出为;输入为x(n-3)时,输出为。
()A:2y(n),y(n+3)B:y(n),y(n-3)C:2y(n),y(n-3)D:y(n),y(n+3)答案:C5.下列关系正确的为()。
A:B:C:D:答案:C6.设系统的单位抽样响应为h(n),则系统因果的充要条件为()A:当n>0时,h(n)≠0B:当n<0时,h(n)≠0C:当n>0时,h(n)=0D:当n<0时,h(n)=0答案:D7.下列哪一个单位抽样响应所表示的系统不是因果系统?( )A:h(n)=δ(n)B:h(n)=u(n)-u(n+1)C:h(n)=u(n)-u(n-1)D:h(n)=u(n)答案:B8. LTI系统,输入x(n)时,输出y(n);输入为3x(n-2),输出为()A:y(n)B:3y(n)C:y(n-2)D:3y(n-2)答案:D9.下列哪一个系统是因果系统()A:y(n)= cos(n+1)x (n)B:y(n)=x (- n)C:y(n)=x (n+2)D:y(n)=x (2n)答案:A10.10设因果稳定的LTI系统的单位抽样响应h(n),在n<0时,h(n)= ( )A:0B:-∞C:∞D:1答案:A11.x(n)=cos(w0n)所代表的序列一定是周期的。
N为复合数的FFT算法——混合基算法
:L: L.: =
x(n, .no) 叫「 ·· W JVi tvye
• . _, ~ O . . '牛 。
(4 - 42)
在上面推导中应用了 W , 日 川】 需 W23 1 .1 =IWJ 蜻 果这里 n 是肘,川和., 表示的.所
U 主要对矶和. . 的所有佳求利,则 n 的 一 个求和1 号变成了.,初 " 0 的两个求和号 .
(4 - 35)
(3) 对于多基多进制或称混合基.这是绩 一 般的情况 可 以包括上面两种单蜂的情
Ilt . 此时 N 可表示 威直合舷 N=r , rl' " 凡 ,则对 于 ,, < r , rl '" 凡的任何 一 个正,事 '生 n. 可
以後 L 个恙町 .r" ... .rt 表示为多通~ !彭 进制形式 (nι , "ι , 制数所代表的数值为
差,的 r 进制形式 .
[倒 4- 1 ] N= 3X5 :a r , r! . 则有
芷中 例如
( n ) ,. = n , rl + "0 = 5" t +"。
[p( 时 ] , . = "Orl + '" = + 3" 0 'I t
n , =0 . 1, 2 : no = 0. 1. 2 . 3 . 4
(l 4 ) ,. = 4X3+2 =(32).x, . [ p (l 4 )J ,. = 4 X2+3= (I I) ,. [ 例 4-3 ] N = 4X3X2 - r , rz r) . 则有
(,,),. = l1, rl r , +n, r, + no = 6111 +2 11, + 11. • 163 •
数字信号处理试题(1)
、单项选择题1. 序列 x(n)=Re(e jn 皿)+1 m (e jn 皿),周期为()。
n A. 18B. 72C. 18 nD. 362. 设C 为Z 变换X(z)收敛域内的一条包围原点的闭曲线, F(z)=X(z)z n-1,用留数法求X(z)的反变换时()。
5、人(n)二R ,0(n) , X 2(n)二R 7(n),用DFT 计算二者的线性卷积,为使计算量尽可能的少,应使 DFT 的长度N 满足 _______________ A. N 16 B. N =16C. N :166. 设系统的单位抽样响应为 h(n)= S (n)+2 S (n-1)+5 S (n-2),其频率响应为( j 3 j « j2 3 j5 3j 3-j 3-j2 3A. H(e j )=e j +e j +e jB. H(e j)=1+2e j+5e jj 3 -j 3-j2 3 -j5 3j 3 1 -j 3 1 -j2 3 C. H(e j)=e j +e j+e jD. H(e j)=1+ —e j +—e j257.设序列 x(n)=2 S (n+1)+ S(n)- S (n-1),贝U X(e j 3)| 3=0 的值为()。
A. 1B. 2C. 4D. 1/28. 设有限长序列为 x(n), N 1< n W N 2,当N K 0,N 2>0 , Z 变换的收敛域为( )。
A. 0<|z|< gB. |z|>0C. |z|<gD. |z|W89.在对连续信号均匀采样时,要从离散采样值不失真恢复原信号,则采样角频率 Qs 与信号最高截止频率 Qc 应满足关系() A. Q s>2 Q c B. Q s> Q c C. Q s< Q cD. | Q s<2 Qc10.下列系统(其中y(n)为输出序列,x(n)为输入序列)中哪个属于线性系统?( )A.y( n)=y( n-1)x(n)B.y( n)=x( n) /x( n+1)C.y( n)=x( n)+1D.y( n)=x (n )-x( n-1)11.已知某序列Z 变换的收敛域为5>|z|>3,则该序列为()A. 只能用F(z)在C 内的全部极点B. 只能用F(z)在C 外的全部极点C.必须用收敛域内的全部极点3.有限长序列h(n)(0 < n W N-1)关于D.用F(z)在C 内的全部极点或C 外的全部极点N - 1-一1偶对称的条件是2)。
FFT快速傅里叶变换(蝶形算法)详解
X 3(1)x3(0)W 2 1x3(1)x(0)W21x(4)x(0)WN0x(4) 这说明,N=2M的DFT可全部由蝶形运算来完成。
20
以8点为例第三次按奇偶分解
N=8按时间抽取法FFT信号流图
21
5.3.2 按时间抽取基2-FFT算法与直接计算DFT运算量的比较
由按时间抽取法FFT的信号流图可知,当N=2L时,共有 L 级 蝶形运算;每级都由 N/2 个蝶形运算组成,而每个蝶形有
蝶形运算信 号流图符号
因此,只要求出2个N/2点的DFT,即X1(k)和X2(k),再 经过蝶形运算就可求出全部X(k)的值,运算量大大减少。
14
以8点为例第一次按奇偶分解
以N=8为例,
分解为2个4点
的DFT,然后
做8/2=4次蝶形
运算即可求出
W
0 N
所有8点X(k)的
值。
W
1 N
W
2 N
W
3 N
23
FFT算法与直接DFT算法运算量的比较
N
N2
N
计算量
2 log 2 N 之比M
N
N2
N
计算量
2 log 2 N 之比M
2
4
1
4 16
4
8 64
12
16 256
32
32 1028 80
4.0 128
16 384
448 36.6
4.0 256 65 536 1 024 64.0
5.4 512 262 144 2 304 113.8
7直接计算dft与fft算法的计算量之比为m24fft算法与直接dft算法运算量的比较25533按时间抽取的fft算法的特点序列的逆序排列同址运算原位运算蝶形运算两节点间的距离的确定26序列的逆序排列由于xn被反复地按奇偶分组所以流图输入端的排列不再是顺序的但仍有规律可循
第四章IDFT的快速算法
西北大学信息科学与技术学院
2007年
2.由最后一级向前每推进一级,则系数取 后级系数中偶数序号部分。 2 M 1 ,M为所 3.蝶形结两个节点的间距为 在的级数,也就是每向前推进一级,间距就 变成原间距的 1/ 2 。
西北大学信息科学与技术学院
2007年
本章要点
本章从傅里叶变换复因子的周期性和对称 性推导出了傅里叶变换的快速算法FFT,并且用 信号流图说明了FFT的计算过程。主要介绍了按 时间抽取基2-FFT算法、按频率抽取基2-FFT算 法、IDFT的快速算法、基4-FFT算法、实序列的 FFT算法等内容。FFT算法可以编成FFT算法程 序在计算机上运行,也可以通过硬件实现。
的计算可以分成四部xk西北大学信息科学与技术学院2007年x012x4x2x6x1x5x321212121321?nw121?nw221?nw021nw2121021nw221?nw2121021nw021nw21211021nw021nwx6x5x4x3x2x1x0x7221?nw2021nwx7图45n8基4fft算法流图西北大学信息科学与技术学院2007年45实序列的fft算法在实际中数据一般都是实序列而fft算法一般针对复序列直接处理实序列时是将序列的虚部看成零将会浪费很多运算时间和存储空间因此设计了专门用于实序列的fft算法
西北大学信息科学与技术学院
2007年
数字信号处理的运算特点有以下两个方面: (1)最常出现的是以下运算:
A d k Bk
k 1 N
d B 其中, k 为系数, k 为数据或中间结果。 (2)其输入输出运算数小于算术运算数。专 用或通用数字信号处理器也正是适应这些要 求而设计的,因而有可能做到快速实时处理。
西北大学信息科学与技术学院 2007年
数字信号处理_4 FFTDIT
蝶形运算构成了N点 DFT 的上半部分和下半部分
8
k X (k ) G (k ) WN H (k ) N k X (k ) G(k ) WN H (k ) 2
0 k N / 2 1
偶数序号部分的 N/2 点 DFT
G (k ) X (k )
奇数序号部分的 N/2 点 DFT
m表示第m级迭代,k,j表示数据所在的行数
Xm - 1 (k )
r Xm (k )=Xm - 1 (k )+Xm - 1 ( j) WN
Xm - 1 ( j)
r WN
-1
r Xm ( j)=Xm - 1 (k )-Xm - 1 ( j) WN
21
每一级运算都需要N/2次复数乘和N次复数 加(每个蝶形需要两次复数加法)
2 点 DFT
N [1] P [ 0]
W4
1 2 点 DFT P [ 1]
0 W 4 4点 DFT Q [0 ] 1 1 Q [1] W4
H[0] W80
1 W H[1] 8
X [4] X [5]
H[2] W82
X [6]
X [7]
17
2 点 DFT
1
H[3] W83
基-2 按时间抽选 FFT 运算流图
偶数项 奇数项
1
r 0,1,..., N / 2 1
x(n)的DFT:
nk X (k ) DFT [ x(n)] x(n)WN n 0
N 1 2 r 0 N 1 2 r 0
N 1
2 rk (2 r 1) k x(2r )WN x(2r 1)WN , k 0,1,
H[3] W83
8点基-2时间抽取FFT算法流图
FFT至简设计法实现法_FFT算法_蝶形运算
DIT-FFT 至简设计实现法1、 DIT-FFT 算法的基本原理有限长序列x n 的N 点DFT 定义为:X (k )=∑x (n )W N Kn N−1n=0,式中W N=e−j2πN。
DFT 在实际应用中很重要,但是如果直接按DFT 变换进行计算,当序列长度N 很大时,计算量会非常大,所需时间也很长,因此常用的是DFT 的一种快速计算算法,简称FFT 。
最常用的FFT 算法是基于时间抽取的基2-FFT 算法和基于频率抽取的基2-FFT 算法,这种算法的特点在于FFT 会把一次大的DFT 分割成几个小的DFT ,这样递归式地细分下去,例如有8个采样点的FFT ,首先会把最外层的8点运算分成两个4点FFT 的奇偶组合,第二层FFT 又分成四个两点FFT 的奇偶组合,并且由此计算出的频谱中很有趣的一点在于对于实数输出的数组,后面一半和前面一半正好对称相同,对于虚数输出的数组,后面一半是前面数组对称后乘上负1,因此,我们只需要算出FFT 的一半即可求出全部。
本设计讨论的是基于至简设计法实现按时间抽选的基2-FFT 算法(即DIF-FFT )实现过程,支持N 由8到1024。
图 1按时间抽取的基2-FFT 算法蝶形运算流图(N=8)2、蝶形运算至简实现过程2、1 模块划分图 2蝶形运算模块框图本模块包括三个RAM模块(RAM1,RAM2,RAM3)与一个DFT模块,各模块功能如下:1)RAM1模块:在开始进行蝶形运算前,全部采样点(如图1所示的x(0)、x(4)、x(2)、x(6)、x(1)、x(5)、x(3)、x(7))已经按照倒位序二进制的地址依次存储在RAM1模块中,即地址0保存了采样点x(0),地址1保存了采样点x(4)。
选用双端口RAM1可以同时对两点采样数据(如图1的x(0)、x(4))进行读、写操作。
2)RAM2模块:RAM2模块也是采用双端口输入输出,可同时对两点数据进行读、写操作。
数字信号处理期末考试题
一、填空:1、 数字信号处理内容十分丰富,但数字滤波和数字频谱分析是其中最重要的内容。
2、 离散时间信号是指时间上取离散值,而幅度上取连续值的信号。
3、 与模拟信号处理相比,数字信号处理具有精度高、可靠性好、便于大规模集成、灵活性好,可以分时多路复用、易实现线性相位以及多维滤波的特点。
4、 数字信号处理的应用技术有滤波、变换、调制解调、均衡、增强、压缩、估值、识别、产生等,应用方式可分为数据的非实时处理、数据的实时处理、系统或设备的设计与模拟。
5、 单位抽样序列的定义式是:0001)(≠=⎩⎨⎧=n n n δ,单位阶跃信号的定义为:0001)(<≥⎩⎨⎧=n n n u 。
6、 一般任意序列可表述为:∑∞-∞=-=k k n k x n x )()()(δ。
7、 若对于每个有界的输入x (n ),都产生一有界的输出y (n ),则称该系统为稳定系统,其充要条件是:∞<∑∞-∞=|)(|k k h .8、 若系统在n 0时的输出只取决于其输入序列在n ≤n 0时的值,则称该系统为因果系统。
其充要条件是:当n <0时,h (n )=0。
非因果系统在物理上是不可实现的。
9、 n x (n )的Z 变换为-zdX(z )/dz ,收敛域为:R x -<|z |<R x +。
10、 DFT 的循环位移特性可表述为:DFT[x (n +m )]= W N -kmDFT[x (n )]。
11、 对于长序列用循环卷积分段计算线性卷积时一般采用重叠相加法。
12、 美国德州仪器公司生产的DSP 芯片TMS320系列属于通用DSP 芯片,它采用了不同于通用计算机CPU 的哈佛结构。
13、 FIR 数字滤波器的优点是用较高的阶数为代价换来的。
14、 FIR 数字滤波器的设计一般有窗函数法和频率抽取法,此外还有等纹波优化设计法。
15、 IIR 数字滤波器的设计分为模拟转化法和直接法两种。
16、 双线型Z 变换通过变换关系:s=(z-1)/ (z+1),将s 平面映射到z 平面。
DSP课程设计——FFT的DSP实现
FFT的DSP实现简介:快速傅里叶变换是一种高效实现离散傅里叶变换的的快速算法,是数字信号处理中最为重要的工具之一,它在声学、语音、电信和信号处理等领域有着广泛的应用。
一.设计目的:1.加深对DFT算法原理和基本性质的理解;2。
熟悉FFT的算法原理和FFT子程序的算法流程和应用;3.学习用FFT对连续信号和时域信号进行频谱分析的方法;4.学习DSP中FFT的设计和编程思想;5.学习使用CCS的波形观察窗口观察信号波形和频谱情况.二.设计内容:用DSP汇编语言及C语言进行编程,实现FFT运算,对输入信号进行频谱分析。
三.设计原理:1.离散傅里叶变换DFT:对于长度为N的有限长序列x(n),它的离散傅里叶变换(DFT)为1X(k)= ∑∞=0*) (nWnx N—nk ,k=0,1,2……N-1 (1)式中,W N=e-j*2π/N,称为旋转因子或蝶形因子.从DFT的定义可以看出,在x(n)为复数序列的情况下,对某个k值,直接按(1)式计算X(k) 只需要N次复数乘法和(N—1)次复数加法。
因此,对所有N个k值,共需要N2次复数乘法和N(N-1)次复数加法。
对于一些相当大有N值(如1024点)来说,直接计算它的DFT所需要的计算量是很大的,因此DFT运算的应用受到了很大的限制.2.快速傅里叶变换FFT旋转因子W N有如下的特性.对称性: W N k+N/2=—W N k周期性:W N n(N—k)=W N k(N-n)=W N—nk利用这些特性,既可以使DFT中有些项合并,减少了乘法积项,又可以将长序列的DFT分解成几个短序列的DFT。
FFT就是利用了旋转因子的对称性和周期性来减少运算量的.FFT的算法是将长序列的DFT分解成短序列的DFT.例如:N为偶数时,先将N点的DFT分解为两个N/2点的DFT,使复数乘法减少一半:再将每个N/2点的DFT分解成N/4点的DFT,使复数乘又减少一2半,继续进行分解可以大大减少计算量。
进行蝶形运算
/
2)
W W n 2 NN
nr
,
0 r N / 21
n0
Monday, January 06, 2020
17
按频率抽取基-2 FFT (DIF)
上述过程可由下图表示
Monday, January 06, 2020
18
按频率抽取基-2 FFT (DIF)
与DIT类似,采用上述方法,一直进行r-1次分解,直到最后化成
6
(9)
蝶运算
以N=8 时的DFT为例,可以分解为两个4点的DFT
(1) n为偶数时
xe (0) x(0) xe (1) x(2) xe (2) x(4) xe (3) x(6)
(2) n为奇数时
xo (0) x(1) xo (1) x(3) xo (2) x(5) xo (3) x(7)
输出序号 0 1 2 3 4 5 6 7
Monday, January 06, 2020
DIT算法结构
N=8时,共r=3级,每级8/2=4个蝶形单元; m=0级,共g=4组,每组含b=1个蝶形单元; m=1级,共g=2组,每组含b=2个蝶形单元; m=2级,共g=1组,每组含b=4个蝶形单元;
13
进行4点的DFT,得X e (k)
3
Xe(k) x(2r)W4rk , k 0,1,2,3 r0
进行4点DFT,得Xo (k)
X (0) X (1) X (2) X (3)
3
Xo (k) x(2r 1)W4rk , k 0,1, 2,3 r0
蝶运算
(3)对 X e(k) 和 Xo(k) 进行蝶形运算 前半部为X(0)-X(3),后半部分为X(4)-X(7),整个过程如下图所示:
数字信号处理练习及答案
数字信号处理练习题一、填空题1、一个线性时不变因果系统的系统函数为()11111-----=az z a z H ,若系统稳定则a 的取值范围为 。
2、输入()()n n x 0cos ω=中仅包含频率为0ω的信号,输出()()n x n y 2=中包含的频率为 。
3、DFT 与DFS 有密切关系,因为有限长序列可以看成周期序列的 ,而周期序列可以看成有限长序列的 。
4、对长度为N 的序列()n x 圆周移位m 位得到的序列用()n x m 表示,其数学表达式为()n x m = ,它是 序列。
5、对按时间抽取的基2—FFT 流图进行转置,即 便得到按频率抽取的基2—FFT 流图。
6、FIR 数字滤波器满足线性相位条件()()0,≠-=βτωβωθ时,()n h 满足关系式 。
7、序列傅立叶变换与其Z 变换的关系为 。
8、已知()113--=z z z X ,顺序列()n x = 。
9、()()1-z H z H 的零、极点分布关于单位圆 。
10、序列()n R 4的Z 变换为 ,其收敛域为 ;已知左边序列()n x 的Z 变换是()()()2110--=z z z z X ,那么其收敛域为 。
11、使用DFT 分析模拟信号的频谱时,可能出现的问题有 、栅栏效应和 。
12、无限长单位冲激响应滤波器的基本结构有直接型, 和 三种。
13、如果通用计算机的速度为平均每次复数乘需要s μ5,每次复数加需要s μ1,则在此计算机上计算210点的基2FFT 需要 级蝶形运算,总的运算时间是s μ。
14、线性系统实际上包含了 和 两个性质。
15、求z 反变换通常有围线积分法、 和 等方法。
16、有限长序列()()()()()342312-+-+-+=n n n n n x δδδδ,则圆周移位()()()n R n x N N 2+= 。
17、直接计算LN 2=(L 为整数)点DFT 与相应的基-2 FFT 算法所需要的复数乘法次数分别为 和 。
数字信号处理35课件
N 1
N 1
N 1
X (k) DFT[x(n)] x(n)WNnk
x(n)WNnk
x(n)WNnk
n0
n0
n0
n为偶数
n为奇数
N 1
N 1
2
2
x(2r)WN2rk x(2r 1)WN(2r1)k
r0
r0
N 1
N 1
2
2
x1(r)(WN2 )rk WNk x2 (r)(WN2 )rk
(4.3)
一次复数乘法:4次实数乘法 2次实数加法
一次复数加法:2次实数加法
一个X(k)值:N次复数乘法 N-1次复数加法
一次复乘:4次实数乘法 2次实数加法
一次复加:2次实数加法
每计算一个X(k)需要:4N 次
实数乘法
2N+2(N-1)=2(2N-1)次 实数加法
整个DFT运算共需要:4N 2次实数乘法 2N (2N-1)次实数加法。
x4 (l)WNlk/ 4
l 0
l 0
X 3 (k ) WNk/ 2 X 4 (k )
k 0,1, , N 1 4
且
X
1
N 4
k
X 3(k ) WNk / 2 X 4 (k )
k 0,1,, N 1 4
式中
N 1 4
X 3(k ) x3(l)WNlk/ 4
l 0
N 1 4
X 4 (k ) x4 (l)WNlk/ 4
4.1 引 言
1. DFT在时域和频域都是的,可以采用计算机进行运算; 2. 直接计算DFT的运算量很大,即使采用计算机运算,也不能解决实时
性问题,影响其实际应用; 3. 1965年首次提出了DFT运算的一种快速算法,并发展和形成了一套高
傅立叶变换
*
正弦基函数是微分运算的本征函数,从而使得线性微分方程的求解可以转化为常系数的代数方程的求解.在线性时不变的物理系统内,频率是个不变的性质,从而系统对于复杂激励的响应可以通过组合其对不同频率正弦信号的响应来获取;
频移性质
若函数f \left( x\right )存在傅里叶变换,则对任意实数 ω0,函数f(x) e^{i \omega_
x}也存在傅里叶变换,且有\mathcal[f(x)e^{i \omega_ x}]=F(\omega + \omega _0 )
\right)的傅里叶变换\mathcal[f]和\mathcal[g]都存在,α 和 β 为任意常系数,则\mathcal[\alpha
f+\beta g]=\alpha\mathcal[f]+\beta\mathcal[g];傅里叶变换算符\mathcal可经归一化成为么正算符;
傅立叶变换属于调和分析的内容。"分析"二字,可以解释为深入的研究。从字面上来看,"分析"二字,实际就是"条分缕析"而已。它通过对函数的"条分缕析"来达到对复杂函数的深入理解和研究。从哲学上看,"分析主义"和"还原主义",就是要通过对事物内部适当的分析达到增进对其本质理解的目的。比如近代原子论试图把世界上所有物质的本源分析为原子,而原子不过数百种而已,相对物质世界的无限丰富,这种分析和分类无疑为认识事物的各种性质提供了很好的手段。
变换 时间 频率
连续傅里叶变换 连续, 非周期性 连续, 非周期性
傅里叶级数 连续, 周期性 离散, 非周期性