FFT核旋转因子位宽和输入数据位宽对FFT运算结果精度的影响

问题描述
12bit输入数据位宽时,FFT运算结果异常。
现象及波形
在这里插入图片描述
分析过程
1、 与输入数据的处理方式有关系。
2、 与输出数据的处理方式有关系。
3、 与旋转因子的位数选择有关系。
4、 输入数据和输出数据padding方式的区别,输入数据用0来Padding,输出数据时sign padding。
5、 旋转因子位数太低,导致精度计算精度很低。
6、 输入数据位宽和输入数据位宽相同,FFT运算后输出数据溢出。
验证
1、 将FFT核的输入数据位宽和旋转因子设置成相同的值,均设为12bit。
2、输入数据位宽低时,旋转因子的精度被自动降低。
解决方案
1、若旋转因子的位数大于数据数据的位数,自动将旋转因子位数与输入数据保持一致,因为需要将输入数据宽度和旋转因子宽度设置成相同的值。
2、采用默认的Scale_Schedule时,输入满幅度信号,会导致FFT运算结果溢出。在FFT运算完毕后要对溢出进行检测,此外,要保证数据不溢出,把输入数据位数提高或者配置FFT的Scale_Schedule。
附图
不同位数下FFT运算结果精度比较
采用12bit输入位宽、12bit旋转因子宽度时的转换结果。
在这里插入图片描述
采用13bit输入位宽、13bit旋转因子宽度时的转换结果。

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值