LTE系统中FFT的实现

最新更新时间:2012-06-25来源: 互联网关键字:LTE系统  FFT 手机看文章 扫描二维码
随时随地手机看文章

在数字信号处理中,离散傅里叶变换(DFT)是常用的变换方法,它在各种数字信号处理系统中扮演着重要的角色。快速傅里叶变换(FFT)[1-2]是离散傅里叶变换的快速算法,它是根据离散傅里叶变换的奇、偶、虚、实等特性,对离散傅里叶变换的算法进行改进获得的,两者都是为了将信号变换到频域并进行相应的频谱分析。对于实时性要求很强的信号处理来说,运算速度对整个处理的影响是显而易见的。因为FFT拥有很高的运算能力,使其在无线通信和数字通信、高速图像处理、匹配滤波等领域得到极为广泛的应用。

  LTE作为准4G技术,以正交频分复用OFDM和多输入多输出MIMO技术为基础,下行采用正交频分多址(OFDM)技术,上行采用单载波频分多址(SC-FDMA)技术,在20MHz频谱带宽下能够提供下行100Mb/s和上行50Mb/s的峰值速率[3]。

  频域分析比时域分析更优越,不仅简单,且易于分析复杂信号[4]。在LTE系统中,FFT算法主要应用于基带信号生成、信号的接收和检测等,将时域信号转移到频域进行处理。

  

 

  其中,x(n)为复数序列,WNkn和X(K)也为复数,因此每计算一个X(K)值,需要进行N次复数乘法运算和N-1次复数加法运算。而X(K)共有N个点,所以完成整个DFT运算需要进行N2次复数乘法和N(N-1)次复数加法运算,当N很大时,运算量相当可观。然而对于实时性很强的信号处理来说,如满足其要求,运算速度就太高了。利用旋转因子WNkn的对称性、周期性和可约性,可以使DFT运算中的有些项合并,将长序列的DFT分解为几个短序列的DFT,从而大大减少运算次数。FFT算法可以分为时间抽取法和频域抽取法两大类。频域抽取法的运算特点与时间抽取法的基本相同,不同之处是频域抽取法的蝶形运算是先加后乘,时间抽取法的蝶形运算是先乘后加;频域抽取的输入序列是自然顺序,输出序列是倒序,而时间抽取法的输入序列是倒序,输出序列是自然顺序。

  假设输入序列x(n)长度为N=2M,M是正整数。如果不满足这个条件,在序列尾部人为地加上若干零值点,使其达到这一要求。将序列x(n)按n的奇偶分解为两个N/2点的子序列:

  

 

  2 FFT算法的DSP实现

  2.1 硬件

  TMS320C6000系列DSP是TI公司推向市场的高性能DSP,综合了目前性价比高、功耗低等优点。TMS320C64系列提高了时钟频率,在体系结构上采用了VelociTI甚长指令集VLIW(Very Long Instruction Word)结构[5],芯片内有8个独立功能单元的内核,每个周期可以并行执行8条32bit指令,最大峰值速度为4800MIPS,2组共64个32bit通用寄存器,32bit寻址范围,支持8/16/32/40 bit的数据访问,芯片内集成大容量SRAM,最大可达8Mb。由于出色的运算能力、高效的指令集、大范围的寻址能力,使其特别适用于无线基站、测试仪表等对运算能力和存储量要求高的应用场合。

  2.2 FFT算法的DSP实现

  FFT算法作为一个子函数模块且输入序列长度不尽相同,所以,方案定义了输入输出变量及其调用格式。调用格式:Turbo_Code(int*,int,int,char*,char*,int*),其中,int分别表示输入序列的长度和FFT的级数;int*分别表示输入序列的首地址和输出序列的首地址;char*分别表示旋转因子的余弦的首地址和旋转因子的正弦的首地址。

  FFT算法具体实现流程如下:

  (1)时间抽取法的FFT中,每个蝶形的输入、输出数据节点在一条水平线上,所以每个蝶形的输出数据可以立即存入原输入数据所占用的存储单元。这种原位计算可节省大量的内存,并且理论上减少不同寄存器之间存取数据的时间。

  

 

  使用C语言编写主函数,汇编语言编写FFT算法的实现函数。程序中假设输入数据最大长度为1024,由于DSP C6455可以直接存取处理32bit,所以在内存中定义了长度为8192bit作为存放输出序列的内存空间。为了提高运算精确度,输入数的实部和虚部分别占用一个字,在程序中进行复数相乘操作是采用汇编指令MPYHI。内存定义了长度为2048bit的Tempsequence作为存放倒序序列,并且建立了2张旋转因子查找表,分别为Wr和Wi。

  外循环中,在每次内循环之前从输入比特序列中取出32bit放入一个寄存器,作为一个内循环的输入,内循环结束后,取下一个32bit输入比特更新这个寄存器。

内循环中,计算蝶形过程采用查表的方式。对于每一级,计算出需要的旋转因子个数以及相同旋转因子相距的间隔。计算蝶形过程时,首先提取出X(k),根据相同旋转因子间隔找到X(k+B)完成蝶形计算。考虑到旋转因子的对称性,在内存中存放旋转因子时只存放一半,剩余的数据根据对称性进行处理。图2给出了FFT算法实现计算流程图。

  

 

  按时间抽取法的FFT输入序列是倒序,输出序列是自然顺序;按频率抽取法的FFT输入序列是自然顺序,输出序列是倒序的。不管采用哪种方法进行FFT计算,都需要倒序处理。倒序是整个FFT计算的重要部分,进行汇编程序时,按自然顺序将输入数据存入到存储单元内,通过变址运算,将自然顺序的序列按时间抽取法要求进行倒位。

  重新排序之前,存储单元Y中依次存放输入数据,I表示当前输入数据比特的顺序数的十进制数值,I的取值从0到N-I;J表示当前倒序数的十进制数值。输入序列的第一个和最后一个数的位置不需要倒序处理,完成倒序的外循环的次数为N-2。为了保证调换数据的正确性,需要检测一下是否I

  

 

  3 性能分析与总结

  在DSP软件实现中,通过指令并行,尽量优化程序循环体,减少或消除程序中的’NOP’指令[6]。通过程序仿真运行,得到统计结果如表1所示。

  

LTE系统中FFT的研究与DSP实现

 

  从表中可以看出,当运用TMS320C64×DSP芯片实现时,由于处理器的超高主频一般为1GHz,一个指令周期耗时为1ns,其运算速率非常快,完全可以满足实时性信号处理。因此,采用旋转因子查表法的实现方案不仅简化了程序实现方法,还减少了模块程序代码编写,节约了系统存储空间。

  本文提出了一种简单有效的FFT算法实现方案,详细介绍了算法在DSP的实现方法,并在TMS320C64x芯片上加以实现。程序运行结果表明,该算法能够满足TD-LTE系统的需求,具有可行性和高效性。该方案已应用于LTE-TDD无线综合测试仪表的开发中。

关键字:LTE系统  FFT 编辑:神话 引用地址:LTE系统中FFT的实现

上一篇:一种宽频带天线方案
下一篇:利用扩频时钟降低电磁干扰

推荐阅读最新更新时间:2023-10-12 20:40

基于FPGA的LTE系统中转换预编码的设计
  摘 要: 在比较已有FFT实现方法的基础上,提出一种基于FPGA的通用FFT处理器的设计方案。这种FFT实现结构根据不同的输入数据长度动态配置成相应的处理器,可以支持多种基数为2、3、5的FFT计算,硬件资源得到了优化,处理速度及数据精度满足LTE系统中SC-FDMA基带信号的生成要求。   LTE所选择的上行传输方案是一个新变量:SC-FDMA(单载波-频分多址)相比于传统OFDMA其优点是既有单载波的低峰均功率比(PAPR),又有多载波的可靠性。在上行链路这点特别重要,较低的PAPR可在传输功效方面极大提高移动终端的性能,因此可延长电池使用寿命。代表LTE物理上行共享信道(PUSCH)的基带信号产生过程如图1所示 。
[嵌入式]
基于FPGA的<font color='red'>LTE</font><font color='red'>系统</font>中转换预编码的设计
一文详解示波器的FFT功能
一、有了数字示波器,我们对波形的处理就不在单纯了,不再只是停留在看看波形形状,不再满足只是测量几个参数了。 我们总想着对采下来的数据做更多的处理,示波器更准确的理解,它更像一个波形分析仪正是工程师的不满足,才有我们不断追求推动极限的动力,因为我们经常低估我们的潜力,极限到底在哪?到底是谁最先把FFT(快速傅里叶变换)用在数字示波器里边呢,说法很多。好像突然间,大家在示波器上都发现有FFT 功能了,而且都是标准配置,虽然都有这个功能,但是做成的结果千差万别,速度和指标也都各不相同,任何事情开始阶段都相同,都先追求有,再谈差异化。况且示波器本身是个定性的工具,谁又在乎示波器在频域上的指标精度呢,除了我们可爱的研发工程师。情况在变化
[测试测量]
一文详解示波器的<font color='red'>FFT</font>功能
用SP061A实现心电数据的FFT与压缩
摘要:在SP061A单片机上实现对ECC信号的FFT、滤波和压缩。合理组织SP061A的硬件资源,并采取数据分段长度可选、避开高频分量的计算和简易的数据压缩算法,使存储开销、运算速度和精度满足实用要求。 关键词:ECC数据 SP061A FFT 滤波 压缩 在远程心电监护系统中,心电信号采集器是实现心电信号的现场采集、存储和传输的重要终端设备。对采集器的基本要求之一是:及时对采集到的心电信号进行滤波和压缩等预处理,以减少存储器占用量和数据远程传输到头端服务器的开销。为降低成本,这些任务一般采用单片机完成。然而,限于单片机的资源、运算能力和运行速度,许多压缩算法,如周期压缩法、小波变换压缩法和神经网络方法等无法使用,一些缺乏快速
[单片机]
基于FFT的低频谐波失真度测试仪
0 概 述   在低频和超低频标准波形的测试和计量中,在电力系统中以及其它要求检测信号波形纯正性时,均需要测量波形的失真度。   目前,测量失真度的仪器根据测量原理大致可分为二大类:基波剔除法和频谱分析法。一般模拟式的失真度测量仪都采用基波剔除,这种仪器测量的误差较大;而频谱分析法,则是利用频率分析仪测量各次谐波的含量并计算出波形失真度的方法。它可分析测量出被测信号中的1~10次谐波分量。采用该方法较好地解决了超低频率失真度的测量,缺点是仪器结构复杂,价格较贵,操作繁琐。 1 测量原理   一个失真的周期振荡信号电压,除有基波电压分量外,还有各次谐波分量存在,把周期失真的正弦信号展开成傅立叶级数,可表示为:
[应用]
利用低功耗微控制器开发FFT应用
1 概述 如今的低功耗微控制器(μC)也开始集成原先只存在于大型微处理器、ASIC和DSP中的外设功能,使我们有可能以很低的功耗实现复杂的算术运算。本文讨论一种快速傅立叶变换(FFT)应用,并在一个含有单周期硬件乘法器的低功耗μC上实现该应用。这个FFT应用实时计算一路输入电压(图l中VIN)的频谱。为完成该任务,用一片模数转换器(ADC)对VIN进行采样,获得的采样传送给μC。然后,μC对这些采样执行256点FFT运算,获得输入电压的频谱。为便于检测,μC将计算出的频谱数据传送给PC,由PC实时显示出来。 该FFT应用的固件针对MAXQ2000系列中的一款16位、低功耗μC用C语言编写。有兴趣的读者可以下载该项目的固件和
[单片机]
利用低功耗微控制器开发<font color='red'>FFT</font>应用
存储深度对FFT结果的影响
在DSO中,通过快速傅立叶变换(FFT)可以得到信号的频谱,进而在频域对一个信号进行分析。如电源谐波的测量需要用FFT来观察频谱,在高速串行数据的测量中也经常用FFT来分析导致系统失效的噪声和干扰。对于FFT运算来说,示波器可用的采集内存的总量将决定可以观察信号成分的最大范围(奈奎斯特频率),同时存储深度也决定了频率分辨率△f。如果奈奎斯特频率为500 MHz,分辨率为10 kHz,考虑一下确定观察窗的长度和采集缓冲区的大小。若要获得10kHz 的分辨率,则采集时间至少为: T = 1/△f = 1/10 kHz = 100 ms,对于具有100 kB 存储器的数字示波器,可以分析的最高频率为: △f N/2 = 10 kHz
[测试测量]
存储深度对<font color='red'>FFT</font>结果的影响
示波器+FFT,轻松驾驭频谱测量
当你看到标题时,可能会问,FFT有什么好讨论的,难道ZDS2022示波器的FFT功能会有什么本质上的不同吗?我们不妨简单地回顾一下FFT中几个重要的参数和关系表达式。 采样率:示波器的采样频率,用Fs表示。ZDS2022示波器每通道均支持1GS/S采样率,下面将以最高采样率1GS/S为基准描述相关的问题; FFT点数:示波器用于FFT变换的样本数据个数,用N表示。ZDS2022示波器最大可以执行4M点的实时FFT运算。显然用400万个点做FFT,势必需要相当惊人的运算能力和运算效率; 频率分辨率:用△f表示示波器最小能分辨多小的频率。假设频率分辨率为10Hz,则可分辨10Hz、20Hz、30Hz……等10Hz整数倍的频率点,但不能
[测试测量]
示波器+<font color='red'>FFT</font>,轻松驾驭频谱测量
基于DSP的FFT算法在无功补偿控制器上的应用
0 引言 在电力系统中,无功功率是影响电压稳定的一个重要因素,无功补偿是保证电力系统高效可靠运行的有效措施之一。要取得无功补偿的最佳效果,必须准确地测量出有功功率和无功功率。本文基于非正弦周期信号的无功功率理论,采用快速傅里叶算法,测量有功功率和无功功率,精确的计算,可以有效地提高投切精度,简化投切策略,但其缺点是计算量较大,单片机系统的计算速度远不能满足要求,然而DSP的应用则解决了计算量大,计算速度慢的问题。 傅里叶变换是建立在同步采样的基础上的,要求整周期截取信号,并严格等间隔采样,所以必须保证采样信号和实际信号严格同步即采样频率是信号频率的整数倍,否则将出现频谱泄露,使傅里叶变换结果产生误差,影响测量精度。由于电网
[工业控制]
基于DSP的<font color='red'>FFT</font>算法在无功补偿控制器上的应用
热门资源推荐
热门放大器推荐
小广播
最新模拟电子文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved