赛灵思 Fast Fourier Transform (FFT) IP 具有专用于处理 FFT 输出中的位增长的缩放因子。本文旨在提供有关此 IP 中可用缩放方法的见解,并提供缩放调度选择方法以避免出现文中所述的溢出问题。
缩放原因:
《快速傅里叶变换 (Fast Fourier Transform) 产品指南》(PG109) 中对于缩放的解释如下:用于实现 FFT 算法的算术运算可能导致位增长,而使用缩放则可避免出现此问题。在 Radix-2 和 Radix-4 FFT 实现的最差情况下,可能会出现这种位增长问题。
在Radix-2 蝶形中,其输出可能按 1+sqrt(2) 的因子(即 2.414)出现增长。因此,在此情况下根据用于 FFT 的有符号格式,输出将增长 2 位。同样,Radix-4 的输出可能按 1+3sqrt(2)=5.24 的因子出现增长,即增长 3 位。
后续每个蝶形阶段都会引入这种位增长的问题(作为最差情况)。如果输出中的位数必须与输入中的位数相同,那么该位增长问题必须得到妥善处理。
对于 Radix-4,根据缩放调度中的值,其中位元可向右移 1、2 或 3 位。对应的输出值将缩小 2^(缩放值),这样结果即可得到妥善处理,且输出中不发生任何位增长。
如果不使用缩放,则会导致出现如上所述的位增长,即未经缩放的输出中包含整数
开发者分享|赛灵思 Fast Fourier Transform IP 中的缩放因子选择
最新推荐文章于 2023-12-04 14:12:30 发布