一种多路径流水线2DFFT计算方法

文档序号:36059085发布日期:2023-11-17 21:06阅读:29来源:国知局
一种多路径流水线2DFFT计算方法与流程

本发明涉及2d fft计算,尤其是一种多路径流水线2d fft计算方法。


背景技术:

0、技术背景

1、快速傅里叶变换(fft)在信号处理和成像技术领域中发挥着基础作用,快速傅立叶变换fft是由离散傅立叶变换dft发展而来,是dft运算的快速算法,大大简化了dft的运算。随着fft的发展,越来越多的应用需要实时计算2dfft。

2、流水线结构充分发挥了集成电路的规律性,通过相同的模块组成流水线,与基于存储器结构相比,流水线结构使用了更多的处理元件,从而获得更高的性能。当前的架构包括单路径的sdf(single-path delay feedback)和sdc(single-path delay commutator),多路径架构包括mdf(muli-path delay feedback)和mdc(muli-path delaycommutator),这些架构当前主要用于一维fft的计算。

3、目前的2d fft计算主要由1d fft计算组成,在行和列两个方向分别进行1d fft计算,其中行列上的1dfft计算存在严重的数据依赖,必须等待同一个方向的1dfft全部计算完成之后才能开始另一个方向上的计算,需要对中间数据进行缓存以及多次的读写操作,当前现有的改进方法都集中于如何优化中间数据的组织与存放以减少读写的延迟。

4、多路径流水线架构的提出主要是为了提高1dfft计算的并行度,把一维的数据分解成为多段较小的一维数据并行计算。如图2所示,多路径流水线架构由多个通道和一个集成多通道数据的蝶形运算单元组成,每条通道就是一个单路径的流水线,通道数越多其并行度也就越高。计算时采用二维分解的方法来处理超长点数的1d fft,将n点的一维数据,分解成一个n1×n2的二维数据来计算,这个二维数据的计算方法与2dfft的计算方法类似需要行列分别计算。多路径流水线架构能够支持2d fft的计算,但是由于资源限制其通道数一般4-16,这也就导致2dfft计算的数据形状非常有限只能是通道数×n2

5、本发明提供了一种二维数据形状重塑的2dfft计算方法,使用多路径架构来计算2dfft,可以把一般的数据形状重塑为架构适应的形状进行计算。采用基于行列分解和二维分解的融合算法,需要在行和列两个方向分别进行1dfft的计算,在列方向的1dfft计算采用二维分解的算法。这种行列分解与二维分解融合的2d fft算法可以在多路径流水线架构上实现。本方法使得2d fft的计算可以很好的继承多路径流水线架构实时性好,吞吐率大的优点,同时又扩大了不同数据形状2dfft计算的适用范围。


技术实现思路

1、本发明提供了一种多路径流水式2d fft计算方法。

2、本发明提供如下方案:

3、一种多路径流水线2d fft计算方法,包括以下步骤:

4、步骤1:对二维输入数据进行形状重塑,由于mdf或者mdc多路径流水线的结构,通道数通常不会很大,输入的数据需要满足通道数×n2的形状,本发明提出的二维数据重塑的方法可以将不同的二维数据进行形状重塑。减少行数增加列数,使得行数对应多路径流水线的通道数。

5、步骤2:在现有多路径流水线架构的基础上,采用行列分解与二维分解融合算法进行2d fft流水计算,计算过程与采用二维分解计算一维fft数据的过程类似,仅需改动旋转因子及其排布,数据流水进入每个通道,多个通道并行计算,最后由一个蝶形单元集成多个通道的数据计算得出结果。

6、步骤3:对结果数据进行还原,计算结果需要恢复到输入数据的形状,由于输入数据采用dif采用输入,输入数据序列为自然序列,其结果会在行列两个方向呈现比特位反转的序列,因此数据还原与输入数据重塑的操作是不可逆的,需要根据比特位反转的序列还原初始数据的形状。

7、与现有技术相比,本发明的优点在于:

8、1、当前的2d fft计算主要通过基于行列分解的算法来实现,重用两次1d fft的计算架构来分别进行行列两个方向数据的计算,行列之间的计算存在数据依赖,中间数据需要缓存且需要相对复杂的读写策略来实现行列两次计算中间数据的转置。本发明提出的多路径流水线2d fft计算方法,采用多路径流水线架构,行列两个方向的数据计算在架构中流水进行,不需要缓存中间数据,实现更为简单,实时性更高。

9、2、当前的mdf或者mdc多路径流水线架构在原有基础上能够进行2d fft计算,但是存在两个方面的缺点:

10、(1)现有的多路径流水线架构的最后一级计算需要乘以全局旋转因子,但是2dfft计算不需要,会造成最后一级的乘法器资源浪费。

11、(2)多路径流水线架构的通道数,通常不会很大,例如4通道多路径流水线,通道计算长度为1024点,则最大只能计算4×1024点的二维数据。因此其通道数会限制计算数据的形状。

12、本发明提出的基于行列分解与二维分解的融合计算方法可以很好的解决上述问题,通过对数据形状的重塑,仅需改动旋转因子及其排布,就能在原有架构基础上实现2dfft计算,例如4通道多路径流水线,通道计算长度为1024点的架构上能够实现对64×64、32×128、16×256等多种总点数为4096点的不同数据形状的计算。



技术特征:

1.一种多路径流水线2d fft计算方法,其特征在于,包括以下计算步骤:

2.根据权利要求1所述的一种多路径流水线2d fft计算方法,其特征在于,步骤2中,采用二维数据行列分解与一维数据二维分解的融合算法,2d fft算法依照行列分解进行两个方向的1d fft计算,其中在列方向的1d fft采用二维分解的算法转换成二维数据计算,该方法可以把二维数据转换成不同的形状进行计算,使得多路径流水线架构能够计算不同形状的数据。


技术总结
一种多路径流水线2D FFT计算方法,在行列之间存在严重的数据依赖,需要缓存中间数据,以及中间数据的存储与访问操作复杂,实时性较低。本发明提供了一种多路径流水线2DFFT计算方法。包括以下步骤:步骤1:根据多路径流水线架构的通道数对二维输入数据进行形状重塑;步骤2:采用行列分解与二维分解融合算法进行流水计算,在MDF或MDC多路径流水线架构的基础上,改动旋转因子及其排布从而实现2D FFT的流水计算;步骤3:对结果数据进行形状还原;该方法中行列计算流水进行,无需缓存中间数据,拥有计算实时性高,操作简便的优势。

技术研发人员:张渝,肖春华,魏俊
受保护的技术使用者:重庆大学
技术研发日:
技术公布日:2024/1/16
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1