下面通过具体实施方式结合附图对本发明作进一步详细说明。
在以下的描述中,包括了一些特定的技术细节,诸如特定的实施例、 技术、硬件电路、装置等,这是为了更加清楚、全面地说明本发明,而不 是限制本发明的应用范围。例如,本发明采用可配置基8蝶形单元作为可 配置基的蝶形单元,并使用可变长度16/32/64/128/256/512/1024/ 2048/4096点FFT作为实施例。但是,这些实施例和结构仅是示意性的, 并非本发明所要求的全部保护范围。
本发明的可变长度的快速傅立叶变换装置采用单径时反馈结构实现, 主要包括固定基数的蝶形单元和可配置基数的蝶形单元两部分,在每两个 蝶形单元之间连接有旋转单元,(这里请
发明人简单描述旋转单元的作用), 固定基数的蝶形单元可以有一个或若干个,每个固定基数的蝶形单元通过 点数模式选择电路的控制可被输入数据旁通或选通,可配置基数的蝶形单 元也可以有一个或多个,其通过点数模式选择电路的控制可进行内部配置, 实现混合基数的蝶形单元和比较小基数的蝶形单元,固定基数的蝶形单元 和可配置基数的蝶形单元配合实现快速傅立叶变换装置的可变长度。
下面以8点的FFT的实施例进行讲解。
从图1看出,8点的FFT信号点图,如果忽略第一级蝶形单元,8点FFT转变为2个并行的4点FFT;如果忽略前2级,8点FFT转变为4个并 行的2点FFT。从而将基8的蝶形单元配置成为基4或基2蝶形单元。同 时,基8处理单元的信号
流程图中,需要用到的旋转因子有《、《和《。
其中《=^(1 —刀,
力,《=^(-1-/)。涉及到的乘法部分有
f (-1-力和f (l-力,它们能够使用移位相加操作实现。因而将基8的蝶
形单元配置成为基4或基2蝶形单元很容易实现。
N点的FFT由巧,r2 , r3 , r4点FFT组合成,其中,W = 。 xr2 xr3 xr4 。 基于可配置基设计的可变点数FFT的长度如图2所示。级高的蝶形单元被 首先选择,同时在配置使用上,前级的蝶形单元选择最大基,利用最后级 蝶形单元的基进行可配置设计,实现比其小的基,如基2蝶形和基4蝶形。 当然实例不仅限于此中配置方式。可配置基8蝶形单元选择个数和最后一 级蝶形单元的选择如图3所示。
下面说明实现本发明的电路结构图,请参考图4,图4所示为应用本 发明的可变长度16/32/64/128/256/512/1024/2048/4096点FFT的实现实施 例,本实施例中,固定基数的蝶形单元的个数是3个,可配置基数的蝶形 单元的个数是l个,且设置在最后一级,即根据数据流的处理顺序,数据 流先经过固定基数的蝶形单元,最后到达可配置基数的蝶形单元。
本实施例中,可配置基数的蝶形单元和固定基数的蝶形单元都采用基 8蝶形单元,可变长度的快速傅立叶变换装置包括顺序设置的3个固定基 数的蝶形单元BF8-1、 BF8-2、 BF8-3和可配置基数的蝶形单元BF8-4,每 两个蝶形单元之间连接有旋转单元,即第一级蝶形单元BF8-1和第二级蝶 形单元BF8-2之间连接有旋转单元10,第二级蝶形单元BF8-2和第三级蝶 形单元BF8-3之间连接有旋转单元20,第三级蝶形单元BF8-3和第四级蝶 形单元BF8-4之间连接有旋转单元30。每个蝶形单元设有与其自身对应的 FIFO (先入先出存储器),FIF0 11连接在蝶形单元BF8-1的两端,FIFO 21 连接在蝶形单元BF8-2的两端,FIFO 31连接在蝶形单元BF8-3的两端, FIFO 41连接在蝶形单元BF8-4的两端。点数模式选择电路100根据输入的信号(Sl, S2, S3, S4)输出
控制信号r8—sl至蝶形单元BF8-1,输出 控制信号r8_s2至蝶形单元BF8-2,输出控制信号r8—s3至蝶形单元BF8-3, 输出控制信号r8—r82r2和r8—r82r4至蝶形单元BF8-4,从而控制蝶形单 元BF8-1、 BF8-2、 BF8-3的旁通或选通,控制蝶形单元BF8-4进行不同的 基数配置,形成混合基。输入数据datajn由蝶形单元BF8-l的数据输入 端输入,输出数据data_0Ut由蝶形单元BF8-4的数据输出端输出。
在本实施例的一种具体实例中,每个基8蝶形单元都由3个FIFO和3 个蝶形运算器组成,FIFO的深度为其前一个FIFO深度的1/2。例如:其中 第一级蝶形单元BF8-1中3个FIFO的容量分别为2048、 1024和512个字 长,3个蝶形运算器分别为BF1-1、 BF2-1和BF3-1;第二级蝶形单元BF8-2 中3个FIF0的容量分别为256、 128和64个字长,3个蝶形运算器分别为 BFl-2、 BF2-2和BF3-2;第三级蝶形单元BF8-3中3个FIFO容量分别为 32、 16和8个字长,3个蝶形运算器分别为BFl-3、 BF2-3和BF3-3;第四 级蝶形单元BF8-4中3个FIFO的容量分别为4、 2和1个字长,3个蝶形 运算器分别为BF1-4、 BF2-4和BF3-4。
每个旋转单元包括复数乘法器和旋转因子生成器,所述复数乘法器连 接在两个固定基数的蝶形单元之间或最后一个固定基数的蝶形单元和可配 置基数的蝶形单元之间,所述旋转因子生成器将生成的旋转因子输出到复 数乘法器。
具体的说,首先将输入数据序列x(n)传给第一级蝶形单元BF8-1的第 一个蝶形运算器BF1-1, 2048个字长的FIFO将蝶形单元的输出与输入连 接起来。同样,第二个蝶形单元BF2-1和第三个蝶形单元BF3-1的输入和 输出分别被FIFO连起来。乘法器将包括蝶形运算器BF1-1 、BF2-1和BF3-1 的第一级蝶形单元BF8-1与包括蝶形运算器BFl-2、 BF2-2和BF3-2的第 二级蝶形单元BF8-2连起来,并用旋转因子巧乘数据流;第一级蝶形单元 BF8_1与第二级蝶形单元BF8-2用多选器连接起来,输入数据选择多选器 进行蝶形单元内部基的可配置,决定旁通或选择。蝶形运算器BF1-1 、 BF2-1 和BF3-1和BFl-2、 BF2-2和BF3-2的结构分别相同。乘法器将包括蝶形 运算器BFl-2、 BF2-2和BF3-2的第二级蝶形单元BF8-2与包括蝶形运算 器BFl-3、 BF2-3和BF3-3的第三级蝶形单元BF8-3连起来,并用旋转因 子^乘数据流;第二级蝶形单元BF8-2与第三级蝶形单元BF8-3用多选器连接起来,输入数据选择多选器进行蝶形单元内部基的可配置,决定旁通
或选择。蝶形运算器BFl-2、 BF2-2和BF3-2和BFl-3、 BF2-3和BF3-3的 结构分别相同。乘法器将包括蝶形运算器BFl-3、 BF2-3和BF3-3的第三 级蝶形单元BF8-3与包括蝶形运算器BFl-4、 BF2-4和BF3-4的第四级蝶 形单元BF8-4连起来,并用旋转因子巧乘数据流;第三级蝶形单元BF8-3 与第四级蝶形单元BF8-4用多选器连接起来,输入数据选择多选器进行蝶 形单元内部基的可配置,决定旁通或选择。蝶形运算器BFl-3、 BF2-3和 BF3-3和BFl-4、 BF2-4和BF3-4的结构分别相同。第四级蝶形单元BF8-4 的3个蝶形单元之间用三个多选器连接起来,实现最后一级基8蝶形单元 BF8-4的配置,在点数模式选择电路100的控制下,可配置成不同基数的 蝶形单元。就最大基数是8的可配置基数的蝶形单元而言,可配置成基8、 基4或基2的蝶形单元。
可配置基8蝶形单元包括三级流水的蝶形运算器和若干个多选器。如 图5所示为可配置基数的蝶形单元BF8-4的内部结构的一种具体实例,可 配置基数的蝶形单元包括N个蝶形运算器、与所述蝶形运算器一一对应的 先入先出存储器和第一控制单元,其中N大于或等于2。本实施例中,可 配置基数的蝶形单元的最大基数为8,包括顺序连接的第一级蝶形运算器 BF1、第一多选器MUXl-4、第二级蝶形运算器BF2、第二多选器MUX2-4、 第三级蝶形运算器BF3、与第一级蝶形运算器BF1的输入输出端连接的第 一先入先出存储器411、与第二级蝶形运算器BF2的输入输出端连接的第 二先入先出存储器412和与第三级蝶形运算器BF3的输入输出端连接的第 三先入先出存储器413。其中:
所述第一级蝶形运算器包括第一减法器42、第一加法器43、第十一 多选器MUX1-1、第十二多选器MUX2-1、第一乘法单元48和第十三多选器 MUX3-l,所述第一减法器42的输入端分别连接第一级蝶形运算器BF1的数 据输入端和第一先入先出存储器411的输出端,所述第一加法器43的输入 端分别连接第一级蝶形运算器BF1的数据输入端和第一先入先出存储器 411的输出端,所述第十一多选器MUX1-1的输入端分别连接第一级蝶形运 算器BF1的数据输入端和第一减法器42的输出端,所述第十一多选器 MUX1-1的输出端连接第一先入先出存储器411的输入端,所述第十二多选 器MUX2-1的输入端分别连接第一先入先出存储器411的输出端和第一加法 器43的输出端,所述第十二多选器MUX2-1的输出端连接第一乘法单元48,所述第一乘法单元48包括1、 a、 -j和b四个乘法因子,所述第十三多选 器MUX3-1的输入端分别连接第一乘法单元48的四个乘法因子的输出端, 所述第一多选器MUX1-4的输入端分别连接所述第十三多选器MUX3-1的输 出端和第一级蝶形运算器BF1的数据输入端,所述第一多选器MUX1-4的输 出端连接所述第二级蝶形运算器BF2的数据输入端。
所述第二级蝶形运算器BF2包括第二减法器44、第二加法器45、第 二H^—多选器MUX1-2、第二十二多选器MUX2-2、第二乘法单元49和第二 十三多选器MUX3-2,所述第二减法器44的输入端分别连接第二级蝶形运 算器BF2的数据输入端和第二先入先出存储器412的输出端,所述第二加 法器45的输入端分别连接第二级蝶形运算器BF2的数据输入端和第二先入 先出存储器412的输出端,所述第二十一多选器MUXl-2的输入端分别连接 第二级蝶形运算器BF2的数据输入端和第二减法器44的输出端,所述第二 十一多选器的输出端连接第二先入先出存储器的输入端,所述第二十二多 选器MUX2-2的输入端分别连接第二先入先出存储器412的输出端和第二加 法器45的输出端,所述第二十二多选器MUX2-2的输出端连接第二乘法单 元49,所述第二乘法单元49包括1、和-j两个乘法因子,所述第二十三 多选器MUX3-2的输入端分别连接第二乘法单元49的两个乘法因子的输出 端,所述第二多选器MUX2-4的输入端分别连接所述第二十三多选器MUX3-2 的输出端和第一级蝶形运算器BF1的数据输入端,所述第二多选器MUX2-4 的输出端连接所述第三级蝶形运算器BF3的数据输入端。
所述第三级蝶形运算器BF3包括第三减法器46、第三加法器47、第 三十一多选器MUXl-3、第三十二多选器MUX2-3,所述第三减法器46的输 入端分别连接第三级蝶形运算器BF3的数据输入端和第三先入先出存储器 413的输出端,所述第三加法器47的输入端分别连接第三级蝶形运算器BF3 的数据输入端和第三先入先出存储器413的输出端,所述第三十一多选器 MUX1-3的输入端分别连接第三级蝶形运算器BF3的数据输入端和第三减法 器46的输出端,所述第三十一多选器MUX1-3的输出端连接第三先入先出 存储器413的输入端,所述第三十二多选器MUX2-3的输入端分别连接第三 先入先出存储器413的输出端和第三加法器47的输出端,所述第三十二多 选器MUX2-3的输出端连接第三级蝶形运算器BF3的数据输出端。
所述第一控制单元414分别连接第十一多选器MUX1-1的控制端、第 十二多选器MUX2-1的控制端、第十三多选器MUX3-1的控制端、第二十一多选器MUXl-2的控制端、第二十二多选器MUX2-2的控制端、第二十三多 选器MUX3-2的控制端、第三十一多选器MUX1-3的控制端和第三十二多选 器MUX2-3的控制端。
点数模式选择电路100输出的配置控制信号r8—r82r2耦合到第一多 选器MUX卜4的控制端,点数模式选择电路100输出的配置控制信号 r8_r82r4耦合到第二多选器MUX2-4的控制端。
在第一级蝶形运算器中,两个加/减法器完成复数加减法运算, 一个 多选器完成输入数据存入FIFO , 一个四选一的多选器完成(-j)乘法和 两个常系数的乘法运算, 一个多选器完成输入数据的选择以实现蝶形单元 BF8的可配置性。在第二级蝶形运算器中,两个加/减法器完成复数加减法 运算, 一个多选器完成输入数据存入FIFO , 一个多选器完成(-j)乘法 运算, 一个多选器完成输入数据的选择实现蝶形单元BF8的可配置性;在 第三级蝶形运算器中,两个加/减法器完成复数加减法运算, 一个多选器完 成输入数据存入FIFO。
图6所示为固定基数的蝶形单元BF8-1、 BF8-2、 BF8-3的内部结构的 一种实例。本实施例中,固定基数的蝶形单元为基8蝶形单元,包括顺序 连接的三级蝶形运算器BF1、 BF2、 BF3,其结构与图5中的可配置基数的 蝶形单元中的三级蝶形运算器相同。三级蝶形运算器BF1、 BF2、 BF3分别 具有与其输入输出端连接的FIF0,与可配置基数的蝶形单元结构不同的 是,固定基数的蝶形单元的两个蝶形运算器直接相连,其间没有多选器, 而在运算器BF3之后设有第三多选器MUXl-4,所述第三多选器MUX1-4的 输入端分别连接蝶形运算器BF1的数据输入端和蝶形运算器BF3的数据输 出端,所述第三多选器MUX1-4的输出端连接下一级蝶形单元,例如第一 级蝶形单元BF8-1的第三多选器的输出端连接第二级蝶形单元BF8-2的数 据输入端,第二级蝶形单元BF8-2的第三多选器的输出端连接第三级蝶形 单元BF8-3的数据输入端,第三级蝶形单元BF8-3的第三多选器的输出端 连接第四级蝶形单元BF8-4的数据输入端。
所述点数模式选择电路100输出的控制信号r8—sl、 :r8—s2、 r8_s3分 别耦合到蝶形单元BF8-1、蝶形单元BF8-2、蝶形单元BF8-3的第三多选 器MUX1-4的控制端。
所述第二控制单元114分别与蝶形运算器BF1、 BF2、 BF3中的各个多 选器的控制端相连。固定基蝶形单元可以由基2、基4、基8或基16等构成或组合而成的。 所述的固定基蝶形单元内部不能配置成更低的运算基,只能选择旁通或经 过该固定基蝶形单元。
可配置基8蝶形单元和固定基蝶形单元分别由第一控制单元414和第 二控制单元114控制。所述的第一控制单元414和第二控制单元114分别 主要包括一个计数器,计数器控制着蝶形单元FIFO的写入和读出,计数 器还控制着旋转单元中旋转因子的生成。
第一控制单元414和第二控制单元114中的计数器包括若干寄存器构 成的计数器,当所述计数器溢出后向所述第一控制单元或第二控制单元所 在的蝶形单元的前一级蝶形单元输出进位信号,进位信号输入到前一级蝶 形单元的控制单元的最后一个寄存器。
第二控制单元所在的蝶形单元为固定基数的蝶形单元,其向前一级蝶 形单元输出的进位信号是计数器中的若干寄存器的与运算。
第一控制单元所在的蝶形单元为可配置基数的蝶形单元,其向前一级 蝶形单元输出的进位信号根据可配置基数的蝶形单元的配置情况确定,以 控制前一级蝶形单元具有合适的控制时序。第一控制单元的进位信号通过 连接在可配置基数的蝶形单元和其前一级蝶形单元之间的进位多选器来 选择,进位多选器的控制端耦合到所述点数模式选择电路,用于输入配置 控制信号,以根据可配置基数的蝶形单元的配置情况控制所述进位多选器 在最后一个寄存器的值、最后两个寄存器值的逻辑与、三个寄存器值的逻 辑与、……、M个寄存器值的逻辑与中进行选择,其中M为计数器中的寄 存器的个数。例如:如图5所示,可配置基8蝶形单元的第一控制单元414 中的计数器,根据可配置基8蝶形单元的配置情况选择给上一级的进位信 号,进位信号通过进位多选器415输出到上一级蝶形单元的控制单元中的 最后一个寄存器。进位多选器415由来自于点数模式选择电路的配置控制 信号r8_r82r2和r8—r82r4控制,所述的进位信号选择有最后一个寄存器 值、最后两个寄存器值相与、三个寄存器值相与共三种选择,分别对应可 配置基8蝶形单元配置成基2蝶形单元、基4蝶形单元和基8蝶形单元的 情况。所述的控制单元不局限于上述结构。
以下具体说明图5和图6的工作原理。
在图6中,在第一个N/2周期中,蝶形运算器BF1中多选器MUX1-1 转换至"0",来自蝶形运算器BF1数据输入端的输入数据data—in被传至容量为N/2的FIFO中。在下一个N/2周期中,多选器MUX1-1转至
位置"l", BF1用输入的数据和存储在FIFO 111中的数据计算2点DFT,即将FIFO 111 输出的数据减去BF1输入的数据经由多选器MUX1-1送至FIFO 111的输入 端,同时将FIFO 111输出的数据加上BF1输入的数据经由多选器MUX2-1 送至MUX2-1的输出端。在该N/2周期中,多选器MUX2-1输出端的数据经 与多选器MUX3-1前的常系数(1、 a、 -j、 b)相乘后,由多选器MUX3-1
开关选择并传送至下一个蝶形运算器BF2的数据输入端。
在第一个N/2到3N/4周期之间,蝶形运算器BF2中多选器MUX1-2转 至"0",来自蝶形运算器BF1的输出的数据被传至容量为N/4的FIFO 112 中。在下一个N/4周期中,多选器MUX1-2转至"1", BF2用输入的数据和 存储在FIF0112中数据计算2点DFT。即将FIFO 112输出的数据减去BF2 输入的数据经由多选器MUX1-2送至FIF0 112的输入端,同时将FIF0 112 输出的数据加上BF2输入的数据经由多选器MUX2-2送至MUX2-2的输出端。 在该N/4周期中,多选器MUX2-2输出端的数据经与多选器MUX2-3前的(l, -j)相乘后,由多选器固X2-2开关选择并传送至下一个蝶形运算器BF3 的数据输入端。
在第一个3N/4到7N/8周期之间,蝶形运算器BF3中多选器MUX1-3 转至"0",来自蝶形运算器BF2的输出的数据被传送至容量为N/8的FIFO 113中。在下一个N/8周期中,多选器MUX1-3转至"1", BF3用输入的数 据和存储在FIFO 113中数据计算2点DFT。即将FIFO 113输出的数据减 去BF3输入的数据经由多选器MUX1-3送至FIFO的输入端,同时将FIFO 113 输出的数据加上BF3输入的数据经由多选器MUX2-3送至MUX2-3的输出端。 在该N/8周期中,多选器MUX2-3输出端的数据直接传出送至多选器 MUX1-4。
多选器MUXl-4根据接收到的来自于点数模式选择电路的控制信号,可 转至"0"或"1",当多选器MUXl-4转至"0"时,多选器MUX1-4输出其 所在的固定基数的蝶形单元输出的数据,即控制该固定基数的蝶形单元选 通。当多选器MUX1-4转至"1"时,多选器MUX1-4输出最初的输入数据 data一in,即将该固定基数的蝶形单元旁通。
在图5中,在控制信号r8—r82r4和r8—r82r4均为"0"的情况下,其 工作原理同固定基数的蝶形单元BF8-1、 BF8-2和BF8-3的工作相同。此时可配置基数的蝶形单元被配置为基8蝶形单元,其上一级蝶形单元的控制 单元中寄存器的进位信号与正常情况一样,来自可配置基数的蝶形单元的
三个寄存器的逻辑与,即Cnt2&Cntl&CntO。当控制信号r8—r82r4为"1" 和r8—r82r2为"0"时,蝶形运算器BF1被旁通,蝶形运算器BF2、 BF3 仍正常工作。这种情况下,可将基8蝶形单元配置成基4的蝶形单元。此 时的上一级蝶形单元的控制单元中寄存器的进位信号来自可配置基数的蝶 形单元的最后两个寄存器的逻辑与,即Cntl&CntO。在r8_r82r4为"0" 和r8—r82r2为"1"时,蝶形运算器BF1、 BF2被旁通,蝶形运算器BF3 仍正常工作。此时,可将基8蝶形单元配置成基2的蝶形。此时上一级蝶 形单元的控制单元中寄存器进位信号来自可配置基数的蝶形单元的最后一 个寄存器的值,即CntO。
上述实施例中,所述的FIFO用以存放输入数据和2点DFT计算的结果; 所述的蝶形单元每一级都包含FIFO,且每一级的数据FIFO的深度均为前 一级的1/2;所述的FIFO的读写由本级蝶形单元的控制单元来控制。
上述实施例中,两级蝶形单元之间
串联的旋转单元包括复数乘法器和 旋转因子生成器。所述旋转因子的生成根据最后一级的可配置基数的蝶形 单元的配置情况而选择。所述的旋转因子生成方法是根据固定基与最后一 级可配置基数的蝶形单元的已知旋转因子进行
抽取。例如:可配置基数的 蝶形单元为可配置基8蝶形单元,当可配置基8蝶形单元配置成基4蝶形 单元时,配置后新的旋转因子根据原先旋转因子每两个抽选第一个构成; 可配置基8蝶形单元配置成基2蝶形单元,配置后新的旋转因子根据原先 旋转因子每四个抽选第一个构成。例如:配置后(如基8+基4的结构)的 旋转因子根据原先已知的旋转因子(即基8+基8的,它为最基本最常见的 结构)进行抽取得到的,抽取方法是:原先的旋转因子有8X8个,记为0〜 63编号,每两个抽选第一个构成,最后得到的旋转因子编号就是0、 2、 4…、 60、 62,共计32个旋转因子。再举个例子:配置后(如基8+基2的结构) 的旋转因子根据原先的旋转因子(即基8+基8的最基本的常见结构)进行 抽取得到的,抽取方法是:原先的旋转因子有8X8个,记为0〜63编号, 每四两个抽选第一个构成,最后得到的旋转因子编号就选择0、 4、 8…、 60,共计16个旋转因子。这里利用最后一级的可配置基8蝶形单元,只要 在设计上考虑全部都是基8蝶形单元的FFT的旋转因子,将其构成R0M,对于配置新的FFT点数,其旋转因子均可由该ROM中抽取选择,免去再另 行设计新的旋转因子R0M,这样可有效节省设计面积和硬件资源。
对于采用最后一级为可配置基数的蝶形单元的可配置FFT变换结构, 其配置控制简单,且旋转因子的生成方法也简化了控制,因此增个电路结 构简单、处理速度快、功耗也小。
图7所示的是FFT点数模式选择电路在各种模式下的设置。
工作于16点FFT模式下,选择模式选择信号(S4, S3, S2, Sli为 4, b0111,得到的译码结果(r8—s3, r8—s2, r8_sl, r8—r82r4, r8—r82r2} 为5' b11010,即第一级蝶形单元BF8-1旁通,第二级蝶形单元BF8-2旁 通,第三级蝶形单元BF8-3选择,第四级可配置蝶形单元BF8-4配置成基 2模式。其配置信号点图如图8所示。
工作于32点FFT模式下,选择模式选择信号{ S4, S3, S2, Sll为 4, b1000,得到的译码结果{ r8—s3, r8—s2, r8—sl, r8一r82r4, r8_r82r2} 为5, b11001,即第一级蝶形单元BF8-1旁通,第二级蝶形单元BF8-2旁 通,第三级蝶形单元BF8-3选择,第四级可配置蝶形单元BF8-4配置成基 4模式。其配置信号点图如图9所示。
工作于64点FFT模式下,选择模式选择信号{ S4, S3, S2, Sll为 4, b1001,得到的译码结果(r8_s3, r8_s2, r8_sl, r8一r82r4, r8—r82r2) 为5' b11000,即第一级蝶形单元BF8-1旁通,第二级蝶形单元BF8-2旁 通,第三级蝶形单元BF8-3选择,第四级可配置蝶形单元BF8-4配置成基 8模式。其配置信号点图如图10所示。
工作于128点FFT模式下,选择模式选择信号{ S4, S3, S2, Sl)为 4, b1010,得到的译码结果(r8—s3, r8—s2, r8—sl, r8—r82r4, r8—r82r2} 为5, b10001,即第一级蝶形单元BF8-1旁通,第二级蝶形单元BF8-2选 择,第三级蝶形单元BF8-3选择,第四级可配置蝶形单元BF8-4配置成基 2模式。
工作于256点FFT模式下,选择模式选择信号{ S4, S3, S2, S"为 4, b1011,得到的译码结果(r8—s3, r8_s2, r8—sl, r8—r82r4, r8—r82r2} 为5, b10010,即第一级蝶形单元BF8-1旁通,第二级蝶形单元BF8-2选 择,第三级蝶形单元BF8-3选择,第四级可配置蝶形单元BF8-4配置成基 4模式。工作于512点FFT模式下,选择模式选择信号{ S4, S3, S2, S^为 4, b1100,得到的译码结果(r8—s3, r8一s2, r8—si, r8_r82r4, r8—r82r2} 为5' b10000,即第一级蝶形单元BF8-1旁通,第二级蝶形单元BF8-2选 择,第三级蝶形单元BF8-3选择,第四级可配置蝶形单元BF8-4配置成基 8模式。
工作于1024点FFT模式下,选择模式选择信号{ S4, S3, S2, Sl)为 4, b1101,得到的译码结果(r8—s3, r8—s2, r8_sl, r8_r82r4, r8_r82r2} 为5, b00001,即第一级蝶形单元BF8-1旁通,第二级蝶形单元BF8-2选 择,第三级蝶形单元BF8-3选择,第四级可配置蝶形单元BF8-4配置成基 2模式。
工作于2048点FFT模式下,选择模式选择信号{ S4, S3, S2, Sl)为 4, b1110,得到的译码结果(r8_s3, r8_s2, r8_sl, r8_r82r4, r8—r82r2) 为5, bOOOlO,即第一级蝶形单元BF8-1选择,第二级蝶形单元BF8-2选 择,第三级蝶形单元BF8-3选择,第四级可配置蝶形单元BF8-4配置成基 4模式。
工作于4096点FFT模式下,选择模式选择信号(S4, S3, S2, Sl)为 4, bllll,得到的译码结果(r8—s3, r8_s2, r8—sl, r8_r82r4, r8—r82r2) 为5, b00000,即第一级蝶形单元BF8-1选择,第二级蝶形单元BF8-2选 择,第三级蝶形单元BF8-3选择,第四级可配置蝶形单元BF8-4配置成基 8模式。
上述实施例中,固定基数的蝶形单元除了采用基8蝶形单元,也可以
采用其他基数的蝶形单元,可配置基数的蝶形单元除了采用基8蝶形单元,
也可以采用其他基数的蝶形单元,例如基4或基16蝶形单元,其具体组成
原理可以和上述实施例相同。
综上所述,本发明提出的可配置快速傅立叶变换,将N点FFT变换分 解为基2、基4、基8和基16的混合基串联实现。对于点数^^xr"rHm
的FFT变换,需要进行bgf次蝶形运算和(m-l)次旋转运算。 一般蝶形选 取基8也可以选取基4或基16。因此采用混合基可配置的FFT变换其硬件 结构在减少旋转运算次数的同时,没有增加额外蝶形运算次数。同时,采 用可配置的基8,不仅可以通过基的可配置达到FFT点数可变,而且基8 仅包含加/减、(-J)乘法和常系数乘法运算,达到了运算简单且控制流程简洁、硬件资源消耗降低的效果,同时也达到了FFT点数或长度可配置的 目的。
以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不 能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的 普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单 推演或替换,都应当视为属于本发明的保护范围。