龙空技术网

想知道有限精度对FFT的影响?Matlab仿真看看

雷达通信电子战 10528

前言:

今天兄弟们对“gps基于fft的时域并行捕获算法”大体比较关切,我们都需要剖析一些“gps基于fft的时域并行捕获算法”的相关内容。那么小编也在网摘上网罗了一些对于“gps基于fft的时域并行捕获算法””的相关资讯,希望小伙伴们能喜欢,朋友们一起来学习一下吧!

公众号《成长助推》致力于分享实用工具、必备技能、思维方法,以助推成长为目标,长期有效的提供价值内容。

今日助推小目标:

1. Matlab对定点算法问题的仿真。模拟实际中会出现的问题。

2. 基于时间抽选(DIT)的FFT算法实现。给出仿真源码,可发送关键词“fi_FFT”直接下载,长期有效。

我们在分析一个信号的频谱时,通常会用到离散时间序列的DFT,而FFT则是DFT的快速算法。平时你在Matlab中采用FFT函数直接计算时,似乎并没有关系其精度问题。

而在实际的工程中,算法的处理是有限精度的,另外,DFT的系数也是有限字长的。这些因素都会影响离散时间信号DFT的最终结果。

定点FFT的算法不同,运算的有限字长效应也会不同。通常有两种评估有限精度算法影响的方法。一种是,采用详细的分析来预测对最终输出的影响;另一种则是通过采用有限精度算法来仿真系统的实现。

通常一般会采用后者,因为简单方便低成本,这就需要先对Matlab进行定点运算的设置。

Matlab程序实现了基于时间抽取(DIT)的FFT算法,采用了有限精度的定点算法。算法还计算了输入序列的全精度DFT,以及全精度和有限精度的差值。并绘图直观表现出来:

左边图是时域信号,基本看不出全精度和8位定点精度的差别。右图上面是对左边时域信号做的FFT,红色线表示全精度,蓝色线表示有限精度,下面就是二种方法的差值,并计算了最大绝对误差是0.018。

当把定点精度从8位改成4位,差别就比较明显了,最大绝对误差也扩大到了0.199。

进入《成长助推》公众号,给后台发送关键词“fi_FFT”,源程序已备好,长期有效。

你的成长,我来助推!

标签: #gps基于fft的时域并行捕获算法 #fft c语言程序 下载 #matlab仿真fft #matlab仿真fft用什么图形 #fft的matlab程序