一种FFT处理器制造技术

技术编号:14583307 阅读:36 留言:0更新日期:2017-02-08 13:19
本发明专利技术公开了一种FFT处理器。其基2蝶式运算单元至少包括:指数对齐电路、运算单元以及规格化电路。所述指数对齐电路将指数对齐后的浮点输入数据的统一的指数部分传输至所述规格化电路;所述运算单元接收指数对齐后的浮点输入数据的基数部分并执行对应的FFT运算;所述规格化电路根据所述指数部分,对所述运算单元的运算结果执行指数规格化处理以生成浮点输出数据;所述运算单元包括一个或多个定点加法器、定点乘法器和/或定点减法器。该伪浮点运算结构,不需要多个数据共享指数字段,计算的精度较高,而且前置的对齐运算的颗粒度较小,运算的规模和时间延迟均远小于现有的块浮点结构,更适合应用于流水结构实现。

【技术实现步骤摘要】

本专利技术涉及电子通信
,尤其涉及一种FFT处理器
技术介绍
快速离散傅里叶变换(FFT)/快速反傅里叶变换(IFFT)是离散傅里叶变换(DFT)/离散反傅里叶变换(IDFT)的快速实现方式,是数字信号处理中常用的技术。由于DFT/FFT运算和IDFT/IFFT运算过程基本一致,因此FFT和IFFT可以采用相同的电路实现方法。Cooley和Tukey专利技术了FFT算法,FFT的的基本思想是将原有N点序列分解成两个或更多的较短序列并重新组合成原序列的DFT,使间接算法的运算次数比直接计算DFT的运算次数少得多,从而提高DFT的计算速度。一方面,FFT/IFFT的分解运算基本可分为两类:一类是将时间序列x(n)进行逐次分解,称为按时间抽取算法(DecimationInTime,DIT);另一类将傅立叶变换序列X(k)进行分解,称为按频率抽取算法(DecimationInFrequency,DIF)。而按照FFT分解的短序列的个数M,可以将FFT/IFFT算法可以分为若干种,一般称为基-M算法。例如,基2FFT算法可以将N点DFT运算分解成个2点DFT运算过程;基4FFT算法可以将N点DFT运算分解成个4点DFT运算过程;基8FFT算法可以将N点DFT运算分解成个8点DFT运算过程。另一方面,当前FFT处理器的硬件实现结构包括递归结构、流水线结构和全并行结构。递归结构又叫共享内存结构,所占硬件资源最少,只有一个运算处理单元,但所需运算时间较长,不能连续处理FFT计算请求,只适应于偶尔需要FFT运算的场合;流水线结构采用多级运算单元,前一级运算单元将结果送入下一级运算单元后可计算下一次FFT而无需等待FFT运算完成,流水线结构可连续计算前后数据不重叠的N点FFT;对于前后数据重叠的连续FFT计算,只能采用全并行结构,该结构每一级运算针对点数N设置对应的运算单元,每一级运算时延可低至单个系统时钟周期,可实现任意N点FFT的连续计算,但占用硬件资源巨大。实际应用中需要作任意N点FFT连续计算的场合非常少,因此采用流水线设计FFT处理器最为普遍。上述FFT处理器的流水线结构主要有3类:单路延时转接器结构(Single-pathDelayCommutator,SDC)、多路延时转接器结构(Multi-pathDelayCommutator,MDC)和单路延时反馈转接器结构(Single-pathDelayFeedback,SDF)。因为基2SDC(R2SDC)结构在基2蝶形分解运算时与R2SDF相比没有优势,所以基2FFT处理器主要采用基2MDC(R2MDC)和基2SDF(R2SDF)结构。基2MDC和基2SDF结构都具有控制简单易于实现的特点,占用的电路资源也相差不大,其中基2SDF结构需要的存储器少一点,而基2MDC结构的计算时延更短一些。但基2MDC和基2SDF结构的复数乘法器的利用率较低(只有50%),因此整个FFT处理器需要的乘法器数量较多。由于FFT/IFFT运算由复数乘法和复数加法运算构成,乘法运算远比加法运算复杂,因此FFT处理器的电路规模主要由复数乘法器决定。基2MDC和基2SDF结构会因为复数乘法器利用率过低导致电路资源占用较大。又一方面,FFT处理器的数据格式目前主要有定点格式、浮点格式和块浮点格式。定点格式计算简单,但是需要考虑数据溢出检测和处理机制,数据动态范围小;浮点格式计算精度高,能处理的数据动态范围大,还能有效减少计算的累积误差,但占用的电路资源巨大且功耗较高。常用的块浮点结构由于利用共享指数,因此可以基于定点运算模块处理较大的数据动态范围,但是每一级运算需要块浮点整理单元调整共享指数,而块浮点整理单元需要作统计运算处理,其数据格式并不适合流水式的电路结构。因此,现有技术还有待发展。
技术实现思路
鉴于上述现有技术的不足之处,本专利技术的目的在于提供一种FFT处理器,旨在解决现有FFT处理器占用电路资源大,数据格式与流水式电路结构不匹配的问题。为了达到上述目的,本专利技术采取了以下技术方案:一种FFT处理器,包括输入模块、运算模块以及输出模块,所述运算模块包括基2蝶式运算单元,其中,所述基2蝶式运算单元至少包括一个用于统一浮点输入数据指数的指数对齐电路、用于执行定点数据运算的运算单元以及用于执行指数规格化处理的规格化电路;所述指数对齐电路将指数对齐后的浮点输入数据的统一的指数部分传输至所述规格化电路;所述运算单元接收指数对齐后的浮点输入数据的基数部分并执行对应的FFT运算;所述规格化电路根据所述指数部分,对所述运算单元的运算结果执行指数规格化处理以生成浮点输出数据;所述运算单元包括一个或多个定点加法器、定点乘法器和/或定点减法器。所述的FFT处理器,其中,所述运算模块包括:输入级运算模块和若干递归运算模块;所述递归运算模块至少包括延时单元、用于替换转接器的缓存单元以及所述基2蝶式运算单元;所述缓存单元在预定的时钟周期内,根据对应的控制信号,输入第一输入信号或第二输入信号至所述基2蝶式运算单元中;所述第一输入信号为原始输入信号,所述第二输入信号为原始输入信号经过第一阶段的基2蝶式运算的运算结果。所述的FFT处理器,其中,所述运算模块包括:第一输入级运算模块;所述第一输入级运算模块包括至少一个延时单元、用于保存参与第一级基2蝶式运算的旋转因子的旋转因子保存单元以及所述基2蝶式运算单元;所述第一输入级运算模块接收输入模块的输入信号,执行FFT运算的第一级基2蝶式运算。所述的FFT处理器,其中,所述缓存单元包括:数据选择器、输入控制电路、输出控制电路以及至少两个双接口RAM;所述数据选择器根据预定的切换控制信号,输入对应的输入信号至所述输入控制电路;所述输入控制电路将数据缓存在所述双接口RAM中,并由所述输出控制电路调用存储在所述双接口RAM中的缓存数据。所述的FFT处理器,其中,所述输入控制电路包括至少一个第一计数器;所述输入控制电路接收缓存数据并通过所述第一计数器,令递归运算模块执行对应的第一级蝶式运算或第二级蝶式运算。所述的FFT处理器,其中,所述输出控制电路至少包括一个第二计数器;所述第二计数器根据输入信号,输出控制所述递归运算模块执行对应的蝶式运算的浮点信号。所述的FFT处理器,其中,所述输入模块为串并转换模块;所述串并转换模块包括两个延时器;至少一个所述延时器用于并行输出FFT运算的时域输入数据以及与所述时域输入数据延迟对应个采样点的延时信号。所述的FFT处理器,其中,所述运算模块还包括:第二输入级运算模块;所述第二输入级运算模块至少包括一个延时转换器和数据选择器;所述第二输入级运算模块通过所述数据选择器,在预定的时钟周期,控制所述基2蝶式运算单元执行第一级基2蝶式运算或第二级基2蝶式运算。所述的FFT处理器,其中,通过如下算式计算判断值:;其中,L为判断值,N为FFT运算的采样点数量,为向上取整函数;在判断值为奇数时,通过第一输入级运算模块执行输入级运算;在判断值为偶数时,通过第二输入级运算模块执行输入级运算。所述的FFT处理器,其中,根据如下算式计算所述递归运算模块的数量:在判断值为奇数时,;其中,L为判断值,S为递归运算模块的数量;在判断值为偶数时,;其本文档来自技高网
...

【技术保护点】
一种FFT处理器,包括输入模块、运算模块以及输出模块,所述运算模块包括基2蝶式运算单元,其特征在于,所述基2蝶式运算单元至少包括一个用于统一浮点输入数据指数的指数对齐电路,用于执行定点数据运算的运算单元以及用于执行指数规格化处理的规格化电路;所述指数对齐电路将指数对齐后的浮点输入数据的统一的指数部分传输至所述规格化电路;所述运算单元接收指数对齐后的浮点输入数据的基数部分并执行对应的FFT运算;所述规格化电路根据所述指数部分,对所述运算单元的运算结果执行指数规格化处理以生成浮点输出数据;所述运算单元包括一个或多个定点加法器、定点乘法器和/或定点减法器。

【技术特征摘要】
1.一种FFT处理器,包括输入模块、运算模块以及输出模块,所述运算模块包括基2蝶式运算单元,其特征在于,所述基2蝶式运算单元至少包括一个用于统一浮点输入数据指数的指数对齐电路,用于执行定点数据运算的运算单元以及用于执行指数规格化处理的规格化电路;所述指数对齐电路将指数对齐后的浮点输入数据的统一的指数部分传输至所述规格化电路;所述运算单元接收指数对齐后的浮点输入数据的基数部分并执行对应的FFT运算;所述规格化电路根据所述指数部分,对所述运算单元的运算结果执行指数规格化处理以生成浮点输出数据;所述运算单元包括一个或多个定点加法器、定点乘法器和/或定点减法器。2.根据权利要求1所述的FFT处理器,其特征在于,所述运算模块包括:输入级运算模块和若干递归运算模块;所述递归运算模块至少包括延时单元、用于替换转接器的缓存单元以及所述基2蝶式运算单元;所述缓存单元在预定的时钟周期内,根据对应的控制信号,输入第一输入信号或第二输入信号至所述基2蝶式运算单元中;所述第一输入信号为原始输入信号,所述第二输入信号为原始输入信号经过第一阶段的基2蝶式运算的运算结果。3.根据权利要求2所述的FFT处理器,其特征在于,所述运算模块包括:第一输入级运算模块;所述第一输入级运算模块包括至少一个延时单元、用于保存参与第一级基2蝶式运算的旋转因子的旋转因子保存单元以及所述基2蝶式运算单元;所述第一输入级运算模块接收输入模块的输入信号,执行FFT运算的第一级基2蝶式运算。4.根据权利要求2所述的FFT处理器,其特征在于,所述缓存单元包括:数据选择器、输入控制电路、输出控制电路以及至少两个双接口RAM;所述数据选择器根据预定的切换控制信号,输入对应的输入信号至所述输...

【专利技术属性】
技术研发人员:何健标马晓明
申请(专利权)人:深圳职业技术学院
类型:发明
国别省市:广东;44

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

1