《电子技术应用》
您所在的位置:首页 > 可编程逻辑 > 设计应用 > 基于FPGA的TD-LTE系统上行同步的实现
基于FPGA的TD-LTE系统上行同步的实现
来源:电子技术应用2012年第3期
李 杨,李校林,李小文
重庆邮电大学 通信与信息工程学院,重庆400065
摘要: 基于最大似然 (ML)估计算法,改进并利用FPGA实现了一种适用于TD-LTE系统的上行同步算法。主要介绍了如何利用FPGA实现ML算法。并以Virtex-5芯片为硬件平台,进行了仿真、综合、板级验证、联机验证等工作。结果表明,该同步算法应用到TD-LTE系统具有良好的稳定性和可行性。
中图分类号: TN929.5
文献标识码: A
文章编号: 0258-7998(2012)03-0050-04
Realization of uplink synchronization in TD-LTE system based on FPGA
Li Yang,Li Xiaolin,Li Xiaowen
School of Communication and Information Engineering, Chongqing University of Posts and Telecommunications, Chongqing 400065,China
Abstract: On the basis of maximum likelihood(ML)estimation algorithm, a novel uplink synchronization algorithm in TD-LTE system is improved and realized by FPGA. This paper studies the implementation of uplink synchronization based on FPGA. Then it finishes simulation, synthesis and verification of the board and online on Virtex-5.Implementation results show this synchronization algorithm have a very good feasibility and stability in TD-LTE system.
Key words : FPGA implementation;TD-LTE system;uplink synchronization;ML algorithm;Virtex-5

    在LTE系统中,当进行随机接入eNB(网络端)和UE端建立上行同步之后,由于无线信道环境的改变需要进行时域和频率的同步调整,所以需要一种算法来完成定时同步的功能。OFDM符号定时同步的目的是找到CP和FFT的起始位置。因符号定时同步发生错误会导致符号间干扰,将影响到UE上行信道性能与容量。因此,性能良好的同步方法对于OFDM系统非常重要[1,2]。符号定时算法有很多,主要有数据辅助算法、非数据辅助盲算法和基于循环前缀的算法[3,4]。前两种算法相对于基于循环前缀的算法,实现难度大,而基于循环前缀算法的计算量比较大。本文为了能更好地完成定时同步,用FPGA的思想来简化最大似然 (ML)估计算法,并在此基础上进行一些算法的改进,利用Xilinx的Virtex-5芯片[5]作为硬件平台实现其算法,完成上行同步定时的功能,并应用到项目中。


 
    适用情况:适合高斯白噪声多径衰落或多普勒平移偏小的情况。
    优缺点:算法简单,相对精确。但同时实现三个公式,对于硬件来说需要很多的乘法器,占用资源比较大,所需时间也比较长。
    方案2:直接采用滑动相关的方法,实现公式(1)。由于绝对能量对相关能量的影响是一定的,而且数据有很好的相关性。因此,通过相关能量的运算,运用开方运算比较大小,能够找到相关能量最大值?酌(?兹)。
    适用情况:信道环境和数据的相关性都特别好的情况下。
    优缺点:算法简单、易实现,精准度和复杂度相对于方案1较小。但乘法器使用较多,完成所需要的时间比较长,占用资源比较大。
 
    优缺点:算法简单、易实现、使用乘法器很少,占用资源相对较小,但精准度低于方案1。
    从FPGA的速度和面积的角度考虑,方案3比较合理,既占用很少的资源,也能较快地实现同步。
3 FPGA实现的处理流程
3.1 整体流程

    整体设计流程图如图2所示。数据由中频通过接口,经过接收和存储模块,进入乘法模块对360个数据操作,乘法器结果存储之后进入到求和模块,在求和模块中实现160个160点求和,经过开方和比较模块找到最大值max。

 

 

3.2 模块的解析
    (1)接收和存放模块
    数据从中频分I、Q两路数据输出,接收模块采用2片32 bit寄存器组存放。mem0[31:16]存放0~159的实部,mem0[15:0]存放0~159的虚部。mem1[31:16]存放2 048~2 207的实部,mem1[15:0]存放2 048~2 207的虚部。
    (2)乘法模块
    图2中,a对应的是0~159的实部,b对应的是0~159的虚部,c对应的是2 048~2 207的实部,d对应的是2 048~2 207的虚部。乘法模块实现了一个复数的相乘。一对共轭复数需要4个乘法器(a+bj)×(c-dj)=(ac+bd)+(bc-ad)j。由于需要320个复数对应相乘,为了更快地完成同步,同时又要考虑资源的情况,一次采用多少乘法器,需要根据后面的测试和评估情况做出选择。在权衡资源与速度后,本设计一次使用20个乘法器。
    (3)存储模块
    存储模块的作用是把上一个模块数据相乘后的320数据存储起来。为了方便后面求和模块的取值,此处采用了4个RAM。图2中,Re1存放乘法模块输出的0~159的实部,Re2存放乘法模块输出的160~319的实部,Im1存放乘法模块输出的0~159的虚部,Im2存放乘法模块输出的160~319的虚部。对应的RAM 的输入和输出地址是根据程序中标志位来控制的,对应的RAM 的输入值与采用乘法器的个数有关,采用多个乘法器时输入值采用位拼接的方式存入输入端。当给出输出端地址时,读出的数据也是很多个数据的位拼接,对应取出需要的位数即可。
    (4)求和模块
    由于未采用滑动相关的方案,所以需要对得出的数据进行加减,才能完成滑动相关求和的过程。滑动次数为0及滑动次数为1时,乘法器的数据相乘部分有159个数据是重复相乘。所以可以采用sre<=sum_re+re2[0]-re1[0]求和。其中,sre相对于滑动一次的实部数据和,sum_re是未滑动数据的实部和,re2[0]是第160个实部(已完成了ad+bc即是一个复数和对应的复数相乘后的实部), re1[0]是第0个实部(已完成了ad+bc是一个复数和对应的复数相乘后的虚部)。对应的虚部也是这样操作。实部和虚部分别需要完成160次,即:
    
    (6)比较模块
    比较由开方模块出来的max和temp出来的数据大小,找出对应的位置max_position输出delete_cp信号,为后面数据送到CP、FFT模块做指示。
4 FPGA实现结果及分析
    图3是FPGA设计的仿真图,max_position是用ML算法找到的最大值,即为CP的起始位置值。delete_cp为标志位,是为了给后面数据输送到CP模块、FFT模块的开始标志。仿真程序中设置了同步的噪声为33个,max_position的值是33。仿真中,噪声设为任意一个小于160的数X,max_position的值是X。说明ML算法在数据相关性很好的情况下,能准确地实现同步。图4是连接项目板子后,用Xilinx ISE10.1中的ChipScope Pro采集到的图样。ChipScope Pro主要是在板级调试过程中,观察FPGA芯片内部的信号。可以看出max_position的值是50,之所以和仿真图的值不一样,因为这个数据是真实的数据。基于ML算法,可以通过板级调试,成功地实现定时同步。图5是联机调试(FPGA、DSP与协议栈一起调试)中用Agilent的示波器采集到的波形。B1总线值为50(即max_position的值)。数字线14中的信号代表delete_cp信号。可以看出,图5采集到的信号和图4的一样,证明在联机调试中,能够成功实现同步。从图3、4、5中观察到的现象看,方案3的设计能正确实现ML算法,能够准确地实现上行同步。

    ML算法的程序已通过Xilinx ISE10.1[6]的编译、仿真验证、板级验证和联机验证。其结果和理论值一致,可以精确到LTE系统要求。该算法满足了硬件对算法的模块化、规则化的要求,因此,它可以充分发挥硬件的优势,利用硬件的资源和速度,从而实现硬件与算法相结合的一种优化方案。在FPGA设计中,使速度与面积达到了很好的平衡,主要体现在乘法模块。此外,在实现过程中采取了一次做20次乘法的方案,使整个同步的过程完成只需要1 000多个周期,时间比较短,且占用资源很小(Slice LUT=7%)。由于该算法的FPGA实现在这个项目的联机调试中,性能稳定,所以该算法的FPGA实现已经应用到国家科技重大专项项目&ldquo;TD-LTE无线终端综合测试仪表&rdquo;开发中。
参考文献
[1] 马磊,陈发堂.TD-LTE系统时频同步算法仿真及DSP实现[J].光通信技术,2011(10).
[2] 沈嘉,索士强.3GPP长期演进(LTE)技术原理与系统设计[M].北京:人民邮电出版社,2008.
[3] COULSON A J.Maximum likelihood synchronization for OFDM using a pilot symbol:analysis[J].IEEE Journal on Selected Areas in Common,2001,19(12):2495-2503.
[4] LEE J,LOU H,TOUMPAKARIS D.Maximum likelihood estimation of time and frequency offset for OFDM systems [J].Electronics Letters,2004,40(10).
[5] XilinxInc.Foundation series user guide[DB/OL].http://china.xilinx.com/support/documentation/user_guides/ug071.pdf.2010-01-03.
[6] Jan-Jaap van de Beck,Magnus Sandell.ML estimation of  time and frequency offset in OFDM systems[J].IEEE Transaction.on Signal Processing,1997,45(7):1800-1805.

此内容为AET网站原创,未经授权禁止转载。