一种无需重新排序的9点wfta处理器和方法

文档序号:6380480阅读:326来源:国知局
专利名称:一种无需重新排序的9点wfta处理器和方法
技术领域
本发明涉及数字信号处理领域,特别涉及一种无需重新排序的小点数Winograd快速傅里叶变换算法(Winograd Fourier Transform Algorithm, WFTA)的实现方法。
背景技术
随着无线通信业务的不断增长,可利用的频谱资源日益紧张。为了提高频谱利用率和通信质量,现代无线通信系统广泛采用对频率选择性衰落具有较强免疫力的正交频分复用(Orthogonal Frequency Duplex Multiplexing, 0FDM)技术。OFDM 技术的核心是FFT。FFT的点数分为2的幂次和非2幂次两种。点数是2的幂次的FFT算法和实现比较成熟。相比之下,非2幂次点数的FFT更为灵活,近年来在DRM、DTMB, LTE系统中开始得到应用。 因此,非2幂次点数FFT的算法和实现值得深入研究。目前,素因子算法(Prime Factor Algorithm, PFA)是最有效的非2幂次FFT,它采用嵌套多维结构,能有效降低计算复杂度。对于N点非2幂次FFT,假设N可分解为s个两两互素因子的乘积,即N =队队…凡。N点PFA的基本原理是,把一维大点数FFT映射成s维小点数FFT,第i (i = 1,2,...,s)维FFT进行N/队次Ni点小点数FFT。小点数FFT可借助于Cooley-Tukey算法、WFTA以及其它高效算法。在某些情况下,PFA需要重新排序。根据在计算过程中所处的位置,重新排序分为预扰乱和后扰乱。不考虑Ni (i = l,2,...,s)点FFT的内部机制,如果第i维FFT无需重新排序,那么它是同址的;否则,它是变址的,重新排序是在Ni点序列内进行的,预扰乱和后扰乱分别在Ni点FFT之前和之后执行。类似地,不考虑每维FFT的内部机制,如果N点PFA整体上无需重新排序,那么它是同序的;否则,它是变序的,重新排序是在N点序列内进行的,预扰乱和后扰乱分别在第一维FFT开始前和最后一维FFT结束后执行。这样,PFA理论上可分为4种变址变序、变址同序、同址同序和同址变序。目前,PFA要么是变址同序的,要么是同址变序的,不可避免地引入了重新排序操作。众所周知,重新排序意味着必须增加一级缓冲区,需要消耗较多的存储器资源,会增加硬件成本。此外,重新排序还会降低运算速度,增加控制的复杂度。与同址变序PFA相比,变址同序PFA消耗较少的存储器资源,两者重新排序的总延时完全相同,都是N个时钟周期,因此,变址同序PFA更可取。

发明内容
针对PFA的现有实现方案中存在的需要重新排序这一技术缺点,本发明提供了无需重新排序的9点WFTA处理器。当N点非2幂次FFT采用变址同序PFA实现时,如果N的某一互素因子Ni = 9(i = 1,2,. . .,s),那么使用本专利无需对第i维FFT重新排序。为了去除第i维9点FFT的重新排序操作,需要修改常规的9点WFTA。常规的9点WFTA的对角矩阵是固定不变的,本发明将对角矩阵对角线上的各元素表示成角度参数0 = 2 Ji /9*〈N/9>9的函数,其中,<N/9>9表示对N/9取模9操作。对于不同的N,修改的9点WFTA的对角矩阵不尽相同。
对于第i维FFT,需进行N/9次无需重新排序的9点WFTA,无需重新排序,简化了控制逻辑,共节约了 N/9*9 = N个时钟周期,提高了运算速度,存储器消耗减少了一半,降低了硬件成本。
关于本发明的优点与精神可通过接下来的发明详述及附图得到进一步的了解。


图1是常规的9点WFTA处理器的功能框图2是输入矩阵I的具体构成;
图3是输出矩阵O的具体构成;
图4是对角矩阵D对角线上的具体构成;
图5是预扰乱的9点WFTA处理器的结构示意图6是后扰乱的9点WFTA处理器的结构示意图7是无需重新排序的9点WFTA处理器的功能框图
图8是可变对角矩阵A对角线上的具体构成。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,但不作为对本发明的限定。
N点序列X (η)的FFT为Ar-1
Χ{ ) = Υ^χ(η)\νν(I)^=O
其中,n,k = 0,1,- ,N-1,Wn = e_j2"/N。直接计算N点FFT的乘法和加法运算量都与N的平方成正比。当N较大时,运算量很大。
为了降低计算复杂度,当N不是2的幂次时,可采用嵌套多维的PFA实现N点FFT。 假设N可分解为s个两两互素因子的乘积,即N = N1Nz^N-也就是说,任意两个因子Ni和 Nj(i, j = I, 2,…,s,且i古j)的最大公约数是I。注意,Ni未必是素数。N点PFA的基本原理是,把一维大点数FFT映射成s维FFT,第i维FFT进行N/队次Ni点小点数FFT。小点数FFT可借助于Cooley-Tukey算法、WFTA以及其它高效算法。
为了使PFA总体上是同序的,在一维FFT映射成s维FFT时,根据中国余数定理, 输入索引η和输出索引k米用如下相同的映射方式M
n = (J^(N/Nl)nt)N(2)i=lM
k = (^(NfNiJkt)hr(3)i=l
其中,符号<>N表示模N运算,I^ki = 0,1,···,^_1。将式⑵和(3)代入式(I), 整理可得
Nl1-1 My—I N1-1mA-M = ;…Σ Σ取, …, 朽广神'朽f/iW2(4)
其中,
权利要求
1.一种无需重新排序的9点Winograd快速傅里叶变换处理器,它嵌套于s维的N点变址同序素因子算法,其中,N = N1N^Ns,任意两个不同因子Ni和Nj互素,i = I, 2, ···, s, j=1,2,…,S,当某一因子Ni = 9时,所述处理器可用于去除N点变址同序素因子算法第i维FFT的重新排序操作,其特征在于,所述处理器包括 复数乘法器M1 M3,它们完成矩阵与向量的乘法运算; 输入矩阵I,它通过复数乘法器M1与输入向量V相乘得到向量P ; 可变对角矩阵A,它通过复数乘法器M2与向量P相乘得到向量q ; 输出矩阵0,它通过复数乘法器M3与向量q相乘得到输出向量V。
2.如权利要求1所述的9点Winograd快速傅里叶变换处理器,其特征在于,所述输入矩阵I和输出矩阵O与常规的9点Winograd快速傅里叶变换处理器相同,而对角矩阵由常规的常数矩阵修改为可变矩阵A。
3.如权利要求1所述的9点Winograd快速傅里叶变换处理器,其特征在于,所述可变对角矩阵A对角线上的各元素是角度参数Θ = 2 /9*〈N/9>9的函数,其中,〈N/9>9表示对N/9取模9操作。
4.一种去除N点变址同序素因子算法第i维FFT重新排序操作的9点Winograd快速傅里叶变换处理方法,其中,N = N1N^Ns,任意两个不同因子Ni和Nj互素,i = 1,2,…,S,j = I, 2,…,S,Ni = 9,其特征在于,所述处理方法包括以下步骤 (1)根据N确定角度参数Θ= 2 π /9*〈N/9>9的具体取值,在此基础上初始化可变对角矩阵A对角线上各元素的数值,使A变为常数,初始化变量I = 0,其中,O < KN/9, <N/9>9表不对N/9取模9操作; (2)从输入序列x[n]中读取9个数据,它们的索引是n= <N/9*m+9*l>N,它们构成向量V,其中,O≤m<9, <N/9*m+9*l>N表示对N/9*m+9*l取模N操作; (3)通过复数乘法器M1,输入矩阵I与向量V相乘,得到向量P; (4)通过复数乘法器M2,可变对角矩阵A与向量P相乘,得到向量q; (5)通过复数乘法器M3,输出矩阵O与向量q相乘,得到向量V; (6)将向量V中的9个数据依次写入到输出序列X[k]中,写入的索引与读取的索引完全相同,仍然是k = <N/9*m+9*l>N ; (7)以I为步长递增改变I的取值,重复步骤(2)16),直到完成N/9次无需重新排序的9点WFTA。
全文摘要
本发明涉及一种无需重新排序的9点WFTA处理器,其特征在于,所述处理器主要由输入矩阵I、可变对角矩阵A、输出矩阵O和复数乘法器M1~M3四部分组成。输入矩阵I通过复数乘法器M1与输入向量v相乘得到向量p,可变对角矩阵A通过复数乘法器M2与向量p相乘得到向量q,输出矩阵O通过复数乘法器M3与向量q相乘得到输出向量V。本发明去除了N点变址同序素因子算法中9点WFTA涉及的重新排序操作,简化了控制逻辑,提高了运算速度,节约了存储器消耗,降低了硬件成本。
文档编号G06F17/16GK102982004SQ20121043599
公开日2013年3月20日 申请日期2012年11月5日 优先权日2012年11月5日
发明者张鹏, 蔡超时, 陈晋伦 申请人:苏州威士达信息科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1