APP下载

LTE系统中基3的FFT设计与FPGA实现

2016-07-01咸阳职业技术学院史亚维

电子世界 2016年10期

咸阳职业技术学院 史亚维



LTE系统中基3的FFT设计与FPGA实现

咸阳职业技术学院 史亚维

【摘要】在LTE系统中存在基3和基5的FFT的情况,但是目前FFT的算法优化和实现主要是基2或基4,很少有研究基3和基5的算法与实现的。因此,本文主要对LTE系统中基3的WFTA算法和FPGA实现进行研究分析,最后对3点FFT进行RTL代码实现综合与后仿真。

【关键词】LTE系统;基3FFT;FPGA

0 引言

在LTE系统中,为了满足系统的要求,FFT的变换的点数很多,这些点里面就包括基3基5等的FFT,因此,本文就主要对基3蝶形运算单元的WFTA算法,以及基3的FPGA设计与实现进行研究分析。

1 WFTA算法研究分析

WFTA算法是一种快速的短N点的DFT算法,其核心思想是通过矩阵的降解实现,用最少的加减及乘除运算,该算法可以实现3点等小点数的DFT变换。

N点DFT用矩阵表示为X=Wx,通过矩阵分解为X=SCTx,其中W=SCT,T 和S 的元素只包含0和±1,C 只有对角线上的元素非零,这样只有在数据与C 作运算时才包含乘法计算,使计算中的乘法运算大大减少。完成3点的DFT,只须3次乘法和6次加法,计算过程如下:

2 基3模块的FPGA设计与实现

2.1基3模块的FPGA结构设计

输入的数据进行基3模块FFT计算,据基3FFT的WFTA变换原理,数据乘以旋转因子之后按照相应的原理进行一个基3FFT变换,具体结构框图如图1所示。

图1 基于WFTA算法的基3模块结构图

其中输入的3组数据的实部为XR0[15:0]、XR1[15:0]、XR2[15:0];3组数据的虚部为XI0[15:0]、XI1[15:0]、XI2[15:0];旋转因子的实部为WR1[15:0]、WR2[15:0];旋转因子的虚部为WI1[15:0]、WI2[15:0]。

输出的结果数据的实部为YR0[15:0]、YR1[15:0]、YR2[15:0];输出3组数据的虚部为YI0[15:0]、YI1[15:0]、YI2[15:0]。

2.2基3模块的Verilog实现

根据图1的实现框图,输入数据乘以旋转因子后的结果取18位,因此这里的输入数据t0,t1,t2的实部和虚部为18位,采用截位相加取代基3模块单元中乘以常数的乘法器,基3单元实现的具体RTL代码如下:

2.3基3基5模块FPGA实现后的仿真结果

用QuartusII工具对基3基5单元进行后仿真的结果如图2所示,其中t0r…t4r为输入的5个数据的实部,t0i…t4i为输入的5个数据的虚部。Z0r…z4r为输出的5个数据的实部,z0i…z4i为输出5个数据的虚部。

choose为低电平时做基3运算,输入选择t0、t1、t2,输出结果为z0、z1、z2;choose为高电平时做基5运算,输入选择t0…t4,输出为z0…z4。

其中clk为时钟信号,enable为基3基5单元工作的使能信号,通过对比后仿真的结果与C定点化平台仿真的结果一致,说明设计的这个模块逻辑功能正确算法满足要求,该基3基5单元模块满足要求。

图2 基3基5单元后仿真结果

3 结束语

本文对LTE系统中基3的FFT的算法进行了简单的介绍。然后,根据算法给出了基3模块的FPGA设计与实现结构,根据后仿真结果可以看出这个FPGA实现结构与算法满足系统的要求。

参考文献

[1]夏宇闻编著.Verilog数字系统设计教程[M].北京:北京航空航天大学出版社,2003,1.

[2]王诚,吴继华等编著.Altera FPGA/CPLD设计(基础篇)[M].北京:人民邮电出版社,2005,7.

作者简介:

史亚维(1982—),女,硕士研究生,主要研究方向为FPGA和数字电路设计。