一种傅立叶变换的实现装置制造方法及图纸

技术编号:8046965 阅读:202 留言:0更新日期:2012-12-06 15:47
本发明专利技术公开了一种实现快速傅立叶变换及快速傅立叶逆变换的装置,实现混合基变点数FFT运算,节约硬件资源。该装置可实现混合基傅里叶计算,支持输入点数=2n×3n×4n×5n的运算,包括:FFT控制模块、m个ALU模块、m组RAM控制模块、旋转因子产生模块:FFT控制模块用于向各模块发送启动命令,向每个ALU模块发送待运算数据、基数选择信号以及旋转因子,向每个RAM控制模块和旋转因子产生模块发送当前的FFT点数;控制迭代状态,控制每个ALU模块进行基数为2或3或4或5的蝶形运算、每个RAM控制模块的读写以及所述旋转因子产生模块的旋转因子生成。本发明专利技术装置实现简单,同时提高运行速度、减少硬件开销。

【技术实现步骤摘要】
一种傅立叶变换的实现装置
本专利技术涉及无线通信领域,尤其涉及一种实现快速傅立叶变换(FastFourierTransform,简称FFT)及快速傅立叶逆变换(InverseFastFourierTransform,简称IFFT)的实现装置。
技术介绍
LTE系统是一种标准化的新一代无线通信技术,其上行链路采用基于DFT(DiscreteFourierTransform,离散傅立叶变换)的SC-FDMA(单载波频分复用多址接入)方案,下行链路采用基于FFT的OFDMA(正交频分多址接入)方案。其中SC-FDMA是一种基于离散傅立叶变换扩展的正交频分复用(DFT-SOFDM)多址接入方案。两种方案的共同点都是将调制数据进行串-并转换,转换后的每路并行数据分别映射到一个相应的子(副)载波进行传输。因此变点数的FFT运算在数字信号处理领域中被广泛应用,但是一般都是2点和4点DFT运算,局限性较大,使用范围受限。
技术实现思路
本专利技术要解决的技术问题是提供一种实现快速傅立叶变换及快速傅立叶逆变换的装置,实现混合基变点数FFT运算,节约硬件资源。为解决上述技术问题,本专利技术提供了一种傅里叶变换的实现装置,用于实现混合基傅里叶计算,支持输入点数=2n×3n×4n×5n的运算,所述装置包括:快速傅里叶变换(FFT)控制模块、m个算数逻辑单元(ALU)模块、m组随机存取存储器(RAM)控制模块、旋转因子产生模块,m≥1,其中:所述FFT控制模块,用于在接收到待运算数据和输入点数后向各模块发送启动命令,向每个ALU模块发送待运算数据并根据输入点数向每个ALU模块发送基数选择信号,以及所述旋转因子产生模块生成的旋转因子,向每个RAM控制模块和旋转因子产生模块发送当前的FFT点数;用于控制迭代状态,基于当前迭代状态控制每个ALU模块的运算、每个RAM控制模块的读写以及所述旋转因子产生模块的旋转因子生成;所述ALU模块,用于在接收到启动命令后,根据所述FFT控制模块发送的基数选择信号、当前的迭代状态以及旋转因子对待运算数据进行基数为2或3或4或5的蝶形运算,在运算结束后,向所述FFT控制模块发送运算结束信号;所述RAM控制模块,用于在接收到启动命令后,基于所述FFT控制模块发送的当前迭代状态以及当前FFT点数,进行m路读写操作;所述旋转因子产生模块,用于在接收到启动命令后,根据当前FFT点数和当前迭代状态从用于存储旋转因子的RAM中读出数据,生成旋转因子,将生成的旋转因子发送给所述FFT控制模块。进一步地,所述FFT控制模块中的迭代状态包括7级。进一步地,所述ALU模块包括ALU控制单元、离散傅立叶变换(DFT)单元、旋转因子调整单元,其中:所述ALU控制单元,用于接收所述FFT控制模块发送的启动命令、基数选择信号和当前迭代状态,根据所述基数选择信号选择相应的蝶形运算,以及用于在所述旋转因子调整单元计算结束后,向所述FFT控制模块发送运算结束信号;所述DFT单元,用于接收所述FFT控制模块发送的待运算数据,根据所述ALU控制单元选择的蝶形运算对所述待运算数据进行DFT运算,将运算后的数据输入所述旋转因子调整单元;所述旋转因子调整单元,用于将所述FFT控制模块发送的旋转因子和所述DFT单元输出的数据进行乘法运算,完成旋转因子的调整,将计算后的数据返回给所述FFT控制模块。进一步地,所述RAM控制模块包括RAM逻辑控制单元、RAM读控制信号产生单元和RAM写控制信号产生单元,其中:所述RAM逻辑控制单元,用于接收所述FFT控制模块发送的启动命令,基于所述RAM读控制信号产生单元发送的读使能信号和读地址从用于存储数据的RAM中读出数据输出至所述FFT控制模块,以及基于所述RAM写控制信号产生单元发送的写使能信号和写地址将从所述FFT控制模块输入的数据写入用于存储数据的RAM;所述RAM读控制信号产生单元,用于根据所述FFT控制模块发送的FFT点数以及当前迭代状态,生成读地址并向用于存储数据的RAM发送读使能信号;所述RAM写控制信号产生单元,用于根据所述FFT控制模块发送的FFT点数以及当前迭代状态,生成写地址并向用于存储数据的RAM发送写使能信号。进一步地,所述RAM读控制信号产生单元,用于采用以下方式根据所述FFT控制模块发送的FFT点数以及当前迭代状态,生成读地址并向用于存储数据的RAM发送读使能信号:根据所述FFT控制模块发送的当前迭代状态判断此时是否执行读操作,如果进行读操作,则根据所述FFT控制模块发送的FFT点数和当前迭代状态生成片选信号,选择相应的用于存储数据的RAM,并生成读地址并向所述用于存储数据的RAM发送读使能信号。进一步地,所述RAM读控制信号产生单元采用以下公式生成片选信号,选择相应的RAM:Pi=Aqmod7,其中,i为RAM的序号,Aq为序列分解的先验信息;每个RAM中的读地址根据公式产生。进一步地,所述RAM写控制信号产生单元采用以下方式生成最终数据的写地址:其中:DFT_mod_count1~DFT_mod_countn为N点DFT迭代时的迭代点数计数器值,DFT_point为当前的输入点数,DFT_modn为输入点数对n取模的结果。进一步地,所述RAM写控制信号产生单元,用于采用以下方式根据所述FFT控制模块发送的FFT点数以及当前迭代状态,生成写地址并向用于存储数据的RAM发送写使能信号:根据所述FFT控制模块发送的当前迭代状态判断此时是否执行写操作,如果进行写操作,则根据所述FFT控制模块发送的FFT点数和当前迭代状态生成片选信号,选择相应的用于存储数据的RAM,并生成写地址并向所述用于存储数据的RAM发送写使能信号。进一步地,所述RAM写控制信号产生单元采用以下公式生成片选信号,选择相应的RAM:Pi=Aqmod7,其中,i为RAM的序号,Aq为序列分解的先验信息;每个RAM中的写地址根据公式产生。进一步地,所述旋转因子产生模块包括控制单元、读控制信号产生单元以及旋转因子产生单元,其中:所述控制单元,用于接收所述FFT控制模块发送的启动命令,向所述读控制信号产生单元和旋转因子产生单元发送控制信号;所述读控制信号产生单元,用于基于所述控制单元发送的控制信号,接收所述FFT控制模块发送的FFT点数和当前迭代状态,生成读地址并向用于存储旋转因子的RAM发送读使能信号;所述旋转因子产生单元,用于基于所述控制单元发送的控制信号,接收所述FFT控制模块发送的FFT点数和当前迭代状态,以及接收从用于存储旋转因子的RAM读出的旋转因子,采用迭代运算计算在旋转因子调整过程中所需的旋转因子,输出至所述FFT控制模块。采用本专利技术所述装置,可以实现输入点数为2n,3n,4n或5n的FFT运算,且实现方式较为简单。另外,本专利技术装置还可实现硬件并行度为2的FFT运算,即一次计算两路FFT运算。并且本专利技术在实现两路FFT运算时,合理地复用硬件资源,减少了硬件面积开销,将FFT/IFFT的运算速度提高了一倍。附图说明图1为变点FFT装置的结构框图;图2为FFT控制模块状态机示意图;图3为ALU运算模块结构图;图4为RAM控制模块结构图;图5为旋转因子产生模块的一种结构图;图6为旋转因子产生模块的一种具体结构图。具体本文档来自技高网...
一种傅立叶变换的实现装置

【技术保护点】
一种傅里叶变换的实现装置,用于实现混合基傅里叶计算,支持输入点数=2n×3n×4n×5n的运算,所述装置包括:快速傅里叶变换(FFT)控制模块、m个算数逻辑单元(ALU)模块、m组随机存取存储器(RAM)控制模块、旋转因子产生模块,m≥1,其中:所述FFT控制模块,用于在接收到待运算数据和输入点数后向各模块发送启动命令,向每个ALU模块发送待运算数据并根据输入点数向每个ALU模块发送基数选择信号,以及所述旋转因子产生模块生成的旋转因子,向每个RAM控制模块和旋转因子产生模块发送当前的FFT点数;用于控制迭代状态,基于当前迭代状态控制每个ALU模块的运算、每个RAM控制模块的读写以及所述旋转因子产生模块的旋转因子生成;所述ALU模块,用于在接收到启动命令后,根据所述FFT控制模块发送的基数选择信号、当前的迭代状态以及旋转因子对待运算数据进行基数为2或3或4或5的蝶形运算,在运算结束后,向所述FFT控制模块发送运算结束信号;所述RAM控制模块,用于在接收到启动命令后,基于所述FFT控制模块发送的当前迭代状态以及当前FFT点数,进行m路读写操作;所述旋转因子产生模块,用于在接收到启动命令后,根据当前FFT点数和当前迭代状态从用于存储旋转因子的RAM中读出数据,生成旋转因子,将生成的旋转因子发送给所述FFT控制模块。...

【技术特征摘要】
1.一种傅里叶变换的实现装置,用于实现混合基傅里叶计算,支持输入点数=2n×3n×4n×5n的运算,所述装置包括:快速傅里叶变换FFT控制模块、m个算数逻辑单元ALU模块、m组随机存取存储器RAM控制模块、旋转因子产生模块,m≥1,其中:所述FFT控制模块,用于在接收到待运算数据和输入点数后向各模块发送启动命令,向每个ALU模块发送待运算数据并根据输入点数向每个ALU模块发送基数选择信号,以及所述旋转因子产生模块生成的旋转因子,向每个RAM控制模块和旋转因子产生模块发送当前的FFT点数;用于控制迭代状态,基于当前迭代状态控制每个ALU模块的运算、每个RAM控制模块的读写以及所述旋转因子产生模块的旋转因子生成;所述ALU模块,用于在接收到启动命令后,根据所述FFT控制模块发送的基数选择信号、当前的迭代状态以及旋转因子对待运算数据进行基数为2或3或4或5的蝶形运算,在运算结束后,向所述FFT控制模块发送运算结束信号;所述RAM控制模块,用于在接收到启动命令后,基于所述FFT控制模块发送的当前迭代状态以及当前FFT点数,进行m路读写操作;所述旋转因子产生模块,用于在接收到启动命令后,根据当前FFT点数和当前迭代状态从用于存储旋转因子的RAM中读出数据,生成旋转因子,将生成的旋转因子发送给所述FFT控制模块;所述ALU模块包括ALU控制单元、离散傅立叶变换DFT单元、旋转因子调整单元,其中:所述ALU控制单元,用于接收所述FFT控制模块发送的启动命令、基数选择信号和当前迭代状态,根据所述基数选择信号选择相应的蝶形运算,以及用于在所述旋转因子调整单元计算结束后,向所述FFT控制模块发送运算结束信号;所述DFT单元,用于接收所述FFT控制模块发送的待运算数据,根据所述ALU控制单元选择的蝶形运算对所述待运算数据进行DFT运算,将运算后的数据输入所述旋转因子调整单元;所述旋转因子调整单元,用于将所述FFT控制模块发送的旋转因子和所述DFT单元输出的数据进行乘法运算,完成旋转因子的调整,将计算后的数据返回给所述FFT控制模块。2.如权利要求1所述的装置,其特征在于,所述FFT控制模块中的迭代状态包括7级。3.如权利要求1所述的装置,其特征在于,所述RAM控制模块包括RAM逻辑控制单元、RAM读控制信号产生单元和RAM写控制信号产生单元,其中:所述RAM逻辑控制单元,用于接收所述FFT控制模块发送的启动命令,基于所述RAM读控制信号产生单元发送的读使能信号和读地址从用于存储数据的RAM中读出数据输出至所述FFT控制模块,以及基于所述RAM写控制信号产生单元发送的写使能信号和写地址将从所述FFT控制模块输入的数据写入用于存储数据的RAM;所述RAM读控制信号产生单元,用于根据所述FFT控制模块发送的FFT点数以及当前迭代状态,生成读地址并向用于存储数据的RAM发送读使能信号;所述RAM写控制信号产生单元,用于根据所述FFT控制模块发送的FFT点数以及当前迭代状态,生成写地址并向用于存储数据的RAM发送写使能信号。4.如权利要求3所述的装置,其特征在于,所述RAM读控制信号产生单元,用于采用以下方...

【专利技术属性】
技术研发人员:王经纬
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:

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

1