FFT蝶形算法的verilog实现专题——基-4 频率抽取FFT算法matlab实现
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
FFT蝶形算法的verilog实现专题——基-4 频率抽取FFT算法matlab实现
基-4 频率抽取FFT公式推导:
N为4的整数倍,例如N = 4 16 64 256等
一个N 点序列x(n) 的DFT 定义为:
其FFT的结果为 X(0),X(1),X(2)…X(N-1)
式中:
假定N = 4 m ,式(1) 先按时域前、后分开,可写成:
式(2) 可进一步改写为:
在频域X(k) 上将k 分解后进行抽取,分别令k 等于4r,4r+2,4r+1,4r+3(r=0,1,……,N/4-1) 。式(3) 可写为:
从上面4个公式归纳为以下表格:
下面以一个64点FFT为例子的MATLAB程序来描述一下上面的算法:(程序段2)
close all; clear all; clc;
N = 64;
n = 0:N/4-1;
data(1:64) = randn(1,64) + j*randn(1,64);
fft2_1 = fft(data(1:16) + data(33:48) + data(17:32) + data(49:64));
fft2_2 = fft(((data(1:16) + data(33:48)) - (data(17:32) + data(49:64))).*exp(-j*2*pi/N*(2*n)));
fft2_3 = fft(((data(1:16) - data(33:48)) - j*(data(17:32) - data(49:64))).*exp(-j*2*pi/N*(1*n)));
fft2_4 = fft(((data(1:16) - data(33:48)) + j*(data(17:32) - data(49:64))).*exp(-j*2*pi/N*(3*n)));
fft2(1:4:64) = fft2_1;
fft2(3:4:64) = fft2_2;
fft2(2:4:64) = fft2_3;
fft2(4:4:64) = fft2_4;
fft1 = (fft(data));
plot(abs(fft1 - fft2))
运行结果为:
从图可以看出,直接对data进行FFT和对data进行了分组(4组)之后分别FFT,然后在组合,其结果和原本的FFT函数是完全一致的
写于2021年11月6日。
如需交流,可以评论区留言,然后加QQ:172146579
FFT蝶形算法的verilog实现专题——基-4 频率抽取FFT算法matlab实现相关推荐
- 基2频率抽取实现FFT的Verilog程序
这里以一个8点FFT设计为例作为介绍,整体电路架构如下图(可点击放大看),实现了一个数据串行输入,结果并行输出的FFT算法(data_in_real为输入值的实部,data_in_img为虚部): 上 ...
- 傅里叶变换 ~ 基 2 时间抽取 FFT 算法
文章目录 1.基2时间抽取FFT算法原理 2.基2时间抽取FFT算法流图 2.1.示例1 ~ 4点的序列表示成两个2点的DFT 2.2.示例2 ~ 8点的序列表示成两个2点的DFT 2.3.实例演示 ...
- czt算法c语言实现,基--2按频率抽取的FFT算法Decimation-in-Frequency(DIF).ppt
基--2按频率抽取的FFT算法Decimation-in-Frequency(DIF) 第四节基--2按频率抽取的FFT算法Decimation-in-Frequency(DIF)(Sander-Tu ...
- 如何利用FFT(基2时间以及基2频率)信号流图求序列的DFT
直接用两个例子作为模板说明: 利用基2时间抽取的FFT流图计算序列的DFT 1.按照序列x[k]序号的偶奇分解为x[k]和x2[k],即x1[k]={1,1,2,1}, x2[k]={-1,-1,1, ...
- 已知序列求蝶形运算_在N=32的基 2 时间抽取发 FFT 运算流图中,从 到 需______级蝶形运算过程。 (4.0分)_学小易找答案...
[单选题]互相关函数性质正确的是: [计算题]两个有限长的复序列 x[n] 和 h[n] ,其长度分别为 N 和 M ,设两序列的线性卷积为 y[n]=x[n]*h[n] ,回答下列问题: (1) 序 ...
- 2维FFT算法实现——基于GPU的基2快速二维傅里叶变换
2维FFT算法实现--基于GPU的基2快速二维傅里叶变换 上篇讲述了一维FFT的GPU实现(FFT算法实现--基于GPU的基2快速傅里叶变换),后来我又由于需要做了一下二维FFT,大概思路如下. 首先 ...
- 【signal】傅里叶分析和FFT蝶形算法
Date: 2018.10.31 下面两篇文章对傅里叶分析和FFT蝶形算法的分析很好,特转载. https://www.cnblogs.com/luoqingyu/p/5930181.html htt ...
- matlab中xtem,快速傅里叶变换_蝶形运算_按频率抽取基2-fft算法_MATLAB代码
function y=MyFFT_FB(x,n) %MYFFT_TB:My Fast Fourier Transform Frequency Based %按频率抽取基2-fft算法 %input: ...
- 基2FFT算法matlab程序编写,频率抽取(DIF)基2FFT算法的MATLAB实现
频率抽取(DIF)基2FFT算法和时间抽取(DIT)基2FFT算法是两种等价的FFT算法,其相同之处: (1)DIF与DIT两种算法均为原位运算. (2)DIF与DIT运算量相同. 不同之处: (1) ...
- 傅里叶逆变换程序matlab,按时间抽取基2-快速傅里叶逆变换算法_MATLAB代码
function x=MyIFFT_TB(y) %MyIFFT_TB:My Inverse Fast Fourier Transform Time Based %按时间抽取基2-傅里叶逆变换算法 %i ...
最新文章
- usaco Factorials
- dockerfile指定jvm参数
- 可以预防新冠病毒的项链 -脉动
- nyoj-Color the necklace(Ploya定理 + 欧拉函数 + 扩展欧几里得(求逆元))
- java 常见bug_java常见bug
- jquery 获取easyui combobox选中的值
- python可变参数函数二阶导数公式_python中函数的可变参数
- UIBarButtonSystemItem 样式
- 微信小程序相关三、css写小黄人
- FPGA图像处理 两路sensor的色调不一致
- Django(五):视图和路由系统
- android wear已停止运行,魔百盒显示“很抱歉CMCCWiMo已停止运行解决方法
- unity2018关联不到vs_Unity和VS2019下载及配置流程
- Correlation Congruence for Knowledge Distillation
- 太阳能逐日自动跟踪系统实训装置QY-T28
- matlab绘制香农定理曲线,基于matla对香农公式仿真.doc
- vue批量打包下载图片
- 计算机工程师对社会报答什么,报答作文400字(精选10篇)
- ad19覆铜_AD19如何单独设置单个焊盘与铜皮的连接方式
- 看片神器人人视频APP突遭下架:上亿用户慌了!