一种基于快速傅立叶变换和反变换联合运算的实现方法技术

技术编号:3494274 阅读:324 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种基于快速傅立叶变换和反变换联合运算的实现方法,所述运算为包括快速傅立叶变换、频域加权以及快速傅立叶反变换的联合运算,包括:(a)将频域加权因子按照其序列号的奇偶性分成两部分;(b)将序列号为奇数的频域加权因子与快速傅立叶变换的最后一级进行点乘结合;和/或将序列号为偶数的频域加权因子与快速反傅立叶变换的第一级点乘结合。本发明专利技术还公开了一种扩展碟形单元。与现有技术相比,本发明专利技术具有如下显著优点:(1)减少了频域加权运算时间,从而减少了整个运算流程的计算时间;(2)频域加权被结合到FFT和IFFT中,简化了控制流程。

【技术实现步骤摘要】

本专利技术涉及快速傅立叶变换,特别地涉及。
技术介绍
快速傅立叶变换(FFT)和快速傅立叶反变换(IFFT)技术,广泛地应用于无线通信、移动通信及数字信号系统等领域。基于FFT和IFFT的联合运算 也越来越多地得到应用,该算法在实现过程中通常分为三个运算步骤(1)FFT;(2)频域加权;(3)IFFT,其运算流程如图1所示。 从图1可以看出,基于FFT和IFFT联合运算的流程包括两个傅立叶变换,现有技术中,FFT通常采用现场可编程门阵列(Field Programmable GateArray,FPGA)或者特定用途集成电路(Application Specific Integrated Circuit,ASIC)等硬件方法实现,这些方法可以根据特定的设计要求进行设计,因而具有更优化的效能资源比。 上述基于FFT和IFFT联合运算 的实现方法,通常采用占用资源较少,并且在单次运算所用的时间也不长的递归结构,由于FFT单元和IFFT单元在使用中是可以复用的,实质上可以看作同一个运算,对该联合运算进行计算时,先递归实现FFT,然后对FFT结果进行点乘运算,然后再递归实现IFFT。 从上述递归结构的实现方法可以看出,由于该算法中存在频域加权,需要占用时间进行点乘运算,且FFT、频域加权、IFFT单独计算,控制流程也较复杂。
技术实现思路
本专利技术即是针对上述现有技术中存在的缺点而提出的,该方法能够有效地减少整个运算流程的计算时间,简化控制流程。 为达到上述专利技术目的,本专利技术提供,所述运算为包括快速傅立叶变换、频域加权以及快速傅立叶反变换的联合运算,包括 (a)将频域加权因子按照其序列号的奇偶性分成两部分; (b)将序列号为奇数的频域加权因子与快速傅立叶变换的最后一级进行点乘结合;和/或将序列号为偶数的频域加权因子与快速反傅立叶变换的第一级点乘结合。 进一步地,所述的步骤(b)是通过扩展蝶形算法实现,所述的扩展蝶形算法为 快速傅立叶变换的最后一级之前为Xm+1(i)=Xn(i)+Xm(j),Xm+1(j)=Wp; 快速傅立叶变换的最后一级为Xm+1(i)=Xm(i)+Xm(j),Xm+1(j)=wj; 快速傅立叶反变换的第一级为Xm+1(i)=wiXm(i)+Xm(j),Xm+1(j)=wiXm(i)-Xm(j); 快速傅立叶反变换的第一级以后各级为 其中Xm(i)、Xm(j)分别为一个蝶形单元输入端上支路和下支路数据;Xm+1(i)Xm+1(j)分别为该蝶形单元输出端上支路和下支路数据;Wp为快速傅立叶变换过程中的旋转因子;Wcp为快速傅立叶反变换过程中的旋转因子,wi和wj为频域加权因子。 为达到上述专利技术目的,本专利技术提还提供一种扩展蝶形单元,包括前置蝶形单元、后置蝶形单元、延迟单元以及复数乘法器,所述的前置蝶形单元的输出端上支路数据经过延迟单元处理后输出作为后置蝶形单元输入端上支路的数据,下支路数据在复数乘法器中与外部输入数据进行复数乘法运算处理后输出作为后置蝶形单元输入端下支路的数据; 所述的前置蝶形单元,用于在第一设定状态下,输出端上支路和下支路的数据分别为a0、b0,在第二设定状态下,上支路和下支路输出数据分别为a0+b0、a0-b0,其中a0、b0分别为输入端上支路和下支路的数据; 所述的后置蝶形单元,用于在第三设定状态下,输出端上支路和下支路的数据分别为c0、d0,在第四设定状态下,上支路和下支路输出数据分别为d0-c0、d0+c0,在第五设定状态下,上支路和下支路输出数据分别为c0+d0、c0-d0,其中c0、d0分别为输入端上支路和下支路的数据; 所述的延迟单元的延迟拍数为计算一个复数乘法所需的时钟拍数。 进一步地,所述的复数乘法器的外部输入值为快速傅立叶变换和快速傅立叶反变换时的旋转因子或者频域加权因子。 进一步地,所述的复数乘法器的外部输入值由外部控制单元确定。 与现有技术相比,本专利技术具有如下显著优点 (1)减少了频域加权运算时间,从而减少了整个运算流程的计算时间; (2)频域加权被结合到FFT和IFFT中,简化了控制流程。 附图说明 图1为基于FFT和IFFT的联合运算的运算流程示意图; 图2为基于FFT和IFFT的联合运算的运算流程展开图; 图3为现有技术中FFT过程中蝶形单元的运算图; 图4为现有技术中IFFT过程中蝶形单元的运算图; 图5为本专利技术具体实施例中扩展蝶形单元的结构图。 具体实施例方式 图3所示为现有技术中按频率抽取(Decimation-in-Frequency,DIF)的FFT算法中采用的蝶形单元的运算图,从该图中可以看出,任何一级的蝶形单元中按照下述方法进行计算 Xm+1(i)=Xm(i)+Xm(j); Xm+1(j)=Wp; 其中Xm(i)为FFT中一个蝶形单元输入端上支路数据; Xm(j)为FFT中一个蝶形单元输入端下支路数据; Xm+1(i)为FFT中上述蝶形单元输出端上支路数据; Xm+1(j)为FFT中上述蝶形单元输出端下支路数据; Wp为该级运算过程中的旋转因子。 图4所示为现有技术中按时间抽取(Decimation-in-Time,DIT)的IFFT算法中采用的蝶形单元的运算图,从该图中可以看出,任何一级的蝶形单元中按照下述方法进行计算 其中Xm(i)为IFFT中一个蝶形单元输入端上支路数据; Xm(j)为IFFT中一个蝶形单元输入端下支路数据; Xm+1(i)为IFFT中该蝶形单元输出端上支路数据; Xm+1(j)为IFFT中该蝶形单元输出端下支路数据; Wcp为该级运算过程中的的旋转因子。 根据上述的在FFT运算过程中采用的蝶形单元和IFFT运算过程中采用的蝶形单元的计算规则,可知图2所示的基于FFT和IFFT的联合运算的运算流程展开图中FFT的最后一级中的旋转因子W0和IFFT第一级中的旋转因子Wc0都是1,这表明FFT的最后一级和IFFT第一级中的复数乘法器都是处于空闲状态的。根据FFT和IFFT的联合运算的这个特点,可以将频域加权因子分别合并到FFT和IFFT的运算中,使得基于FFT和IFFT的联合运算 的实现过程中不再存在点乘运算环节,且FFT和IFFT中的每一级运算的每一蝶形单元中都有且仅有一个支路利用了乘法器。 为了方便基于快速傅立叶变换和反变换联合运算 的实现,本专利技术提出了一种扩展蝶形单元,该扩展蝶形单元的结构图如图5所示,包括一个前置蝶形单元,一个后置蝶形单元,一个复数乘法器M,一个延迟器D,其中延迟器D延迟的时钟拍数等于计算一个复数乘法所需要的时钟拍数,从而保证后置蝶形单元的不同输入端的数据输入时间一致,前置蝶形单元的输出端上支路数据经过延迟单元处理后输出作为后置蝶形单元输入端上支路的数据,前置蝶形单元的输出端下支路数据在复数乘法器中与外部输入数据进行复数乘法运算处理后输出作为后置蝶形单元输入端下支路的数据。 在前置蝶形单元中,输入端上下支路的数据分别为a0、b0,前置蝶形单元在不同的控制状态下可以有不同的输出数值,设定该单元在状态“本文档来自技高网...

【技术保护点】
一种基于快速傅立叶变换和反变换联合运算的实现方法,所述运算为包括快速傅立叶变换、频域加权以及快速傅立叶反变换的联合运算,包括:(a)将频域加权因子按照其序列号的奇偶性分成两部分;(b)将序列号为奇数的频域加权因子与快速傅立叶变换的最后一级进行点乘结合;和/或将序列号为偶数的频域加权因子与快速反傅立叶变换的第一级点乘结合。

【技术特征摘要】

【专利技术属性】
技术研发人员:徐英韬
申请(专利权)人:大唐移动通信设备有限公司
类型:发明
国别省市:11[]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1