《无线通信基础》课程研究性学习手册实验三信道均衡姓名:学号:同组成员:指导教师:黄清时间:2015年6月一、实验任务:在本实验中,你需要在Labview平台上利用线性最小二乘算法,实现线性均衡器的设计,以领会信道均衡器的基本思想。此外,通过比较不同接收机误码率性能,你将感受到均衡技术对于抗多径信道的重要意义。二、理论分析:经过多径传播到达接收机的信号,一般表示为()()()ezthxtd(1)其中,()eh为基带的频率选择性信道。则调制解调器间的等价基带信道为()()*()*()xetxrxhtEhgtgt,其中,()txgt()rxgt为匹配滤波器组。ℎ[𝑛]为数字基带等价信道即[]()hnhnT,其中T为符号周期,则0[][][][][0][][][][]0,1,...mmynhmsnmvnhsnhmsnmvnmL(2)其中,0[][]msnmhm表示符号间干扰;当()ht为奈奎斯特脉冲时该项为0,即解调器输入信号无符号间干扰。均衡器()ft满足()*()()edhtfttt,即均衡器可补偿信道的影响,使得()()*()*()*()xetxrxhtEhgtgtft保持奈奎斯特滤波器特征,消除了符号间干扰,如下图1所示。均衡器参数是由具体信道参数决定的,一般可采用直接估计均衡器参数,和根据估计的信道参数间接估计均衡器参数两种方式完成均衡器的设计。在本实验中,均衡器间接估计算法已经给出,直接估计算法需要自己完成。图1信道均衡2.1最小线性二乘本实验所需完成的信道估计和信道均衡都是基于最小二乘法的,下面简单介绍一下该方法的原理。A是NM的列满秩矩阵(NM),b是1N维的矢量,x是1N未知的矢量。线性方程组如式(5)所示:Axb(5)由NM且矩阵A列满秩,则可能不存在满足约束条件的解,因此我们将满足式(6)的x作为该线性方程组的近似解:2minAxb(6)由矩阵运算,可知满足式(6)的解为1*()LSxAAAb(7)其中最小平方误差2()minLSJxAxb可表示为式(8)2()()LSLSLSJxAxbbbAx(8)该算法即为线性最小二乘法,它是处理过定问题的经典算法,LSx称为线性最小二乘法得到的近似解。2.2直接最小二乘均衡器利用最小二乘估计算法和接收训练序列直接设计均衡器参数,我们可得到直接最小二乘均衡器。dn为均衡器的延迟参数,则接收信号经过均衡器可表示为0ˆ[][][]fdLdnlsnnflynl(17)由[][],0,...,1tsntnnN为训练序列,则ˆ[][],ddsnntnn,...,1ddtnnnN,式(17)等价于0[][][]0,1,...,1fdLndtltnflynnlnN(18)式(18)中,训练序列[0],[1],...,[1]ttttN和接收信号[0],[1],......yy已知,均衡器参数[0],[1],...[]dddnnnffffL为所求参量。为了克服噪声随机特性带来的影响,一般要求求解均衡器参数的线性约束关系的数目大于均衡器待求参数的个数即1ftLN。根据式(18)构建线性不等式组如式(19)所示:[0][]...[][0][1][1]..[1]..............[1]...[1][1][]dddndndnddfnddtdtftnftYffynynLtfyntynNynNLtNfL(19)由1ftLN且Y由受噪声干扰的接收信号组成,则Y为列满秩矩阵,根据最小二乘法可得到平方估计误差最小的均衡器参数:1ˆ()0,1,...ddddnnnndffYYYtnL(20)且平方估计误差为2ˆˆ[]()ddddfdnnnnJntYfttYf(21)进一步优化[]fdJn对应的dn即为均衡器的最优延迟。三、实验步骤:本实验需要在Labview平台上利用线性最小二乘算法,实现直接线性均衡器的设计,程序结构如图2所示;即完成receive_exp1_for_student.vi模块下equalizer_exp1_for_student.v中student_direct_equalizer.vi和student_equalization.vi的设计。Top_tx_exp1.viTop_rx_exp1_for_student.vitransmitter.viReceiver_exp1_for_student.viEqualizer_exp1_for_student.vistudent_direct_equalizer.vistudent_toeplitz.vistudent_LLSE.vi图2程序结构1.在构建student_direct_equalizer.vi之前,需要完成student_toeplitz.vi和student_LLSE.vi的设计。其中,student_toeplitz.vi是构建toeplitz矩阵的功能模块,式(19)中的矩阵Y即为toeplitz矩阵;student_LLSE.vi完成LS估计算法,即实现式(20)和式(21)。student_toeplitz.vi和student_LLSE.vi的输入输出分别如表1,表2所示。表1student_toeplitz.vistudent_toeplitz.vi:产生mn的抽头矩阵输入Row1-D矩阵第一行(长度为n)Column1-D矩阵第一列(长度为m)输出ToeplitzArray2-Dmn抽头数组表2student_LLSE.vistudent_LLSE.vi—计算满足Axb的x线性最小二乘估计输入A2-Dmxn矩阵b1-D长度m的矢量输出x.estimate1-D线性最小二乘估计meansquareerrorDBL(double)估计平方误差2ˆAxb程序如下:(1)student_toeplitz.vi该程序主要完成的功能是根据输入行、列序列,生成Ynd矩阵,该功能是通过“生成特殊矩阵.vi”输入矩阵类型为2时完成的。(2)student_LLSE.vi该程序实现的功能是通过最小二乘法,利用公式20、21,计算均衡器抽头,系数。2.借助于student_toeplitz.vi和student_LLSE.vi,只需要完成式(20)中向量t,矩阵Y首行首列的构造,就可实现直接最小二乘均衡器的设计。表3描述了直接均衡器student_direct_equalizer.vi的输入输出。需要强调的是,在本实验中训练序列是由两个重复序列组成,且用前半部分训练序列完成对向量t的设计,即本实验中tN为训练序列长度的一半。表3student_direct_equalizer.vistudent_direct_equalizer.vi—从接收到的序列直接求出最小二乘均衡器。输入Input1-D帧同步后的序列modulationparametersin簇调制参数equalizerdelay1-D均衡器延迟参数dn初始值输出filterestimate1-D最小二乘均衡器参数modulationparametersout簇调制参数mean-squarederrorDBL(double)2ˆˆddnnYftactualequalizerdelayI32(integer)实际均衡器延迟参数dn程序如下:该程序是将上述两个子程序连接起来,首先输入序列要分为满足student_toeplitz.vi控件输入参数的两个行、列向量,然后生成Ynd矩阵,再利用Ynd矩阵和训练序列,在student_LLSE.vi中计算均衡器抽头系数。3.完成接收信号的均衡。在student_equalization.vi模块完成接收信号的均衡。由student_direct_equalizer.vi的输出得到均衡器的最优时延和对应的均衡滤波器参数,让接收信号通过均衡滤波器,就可实现信号均衡。需要注意的是,均衡滤波器是有延迟的,若不处理可能会带来50%的误码率(与帧同步失败类似)。表4student_equalization.vistudent_equalization.vi—实现信号均衡。输入Inputsymbols1-D帧同步后的序列Equalizationfilter1-D最小二乘均衡器参数Actualequalizerdelay1-D均衡器延迟参数dn初始值输出Equalizedsymbols1-D均衡后的信息符号程序如下:该程序完成的功能是将输入序列与均衡滤波器卷积,输出均衡后的信号。四、结论及分析:4.1验证student_toeplitz.vi:在student_toeplitz.vi的行输入端口输入1234,在student_toeplitz.vi的列输入端口输入156789,结果输出为123451236512765187659876如下图3所示,student_toeplitz.vi正确。图3student_toeplitz.vi前面板4.2前面板参数设置本实验发射端主程序为top_tx_exp1.vi,接收端主程序为top_rx_exp1_for_student.vi。实验开始前,需要配置好两主程序前面板中标注为蓝色的参数,主要为USRP的相关配置。(由于程序包含的功能模块较多,建议不要随意更改标注为黑色的参数,以免影响程序的正常工作。)图4收发主程序前面板4.3完成student_direct_equalizer.vi,配置好主程序的前面板后,可改变top_tx_exp1.vi前面板中channelmodelparameters标红参数(更改信道参数),和top_rx_exp1_for_student.vi前面板中channelequalizerparameters标红参数,比较在不同信道条件下,接收机没有均衡器,有直接线性最小二乘均衡器或间接线性最小二乘均衡器时,接收机的不同性能(其中channelestimatelength和equalizerlength是间接均衡器的设计参数)。图5是均衡前后接收信号对比星座图。(a)noEQ(b)直接均衡(c)间接均衡图5均衡前后星座图对比在图5的第一幅图中,接收端没有均衡,可以看到星座图不正确,误码率较高,第二和第三幅图中为直接和间接均衡后的结果。间接均衡是程序本身已经做好的,可以用来验证结果。可以看到我们做的直接均衡跟间接均衡的结果是差不多的,星座图很清晰,接收正确。五、遇到的问题及解决方法:编好程序,第一次运行时,发现直接均衡得出的结果无法更新。即会保存显示上一个状态(间接均衡或不均衡)的结果。通过调试发现应该是LLSE.vi的问题。由于不理解如何在labview中创建伴随矩阵,所以,一开始,我们在求均衡器抽头系数时并没有采用实验指导书中给出的方法,而是直接在式(19)左右同时左乘1dnY,虽然说计算原理与式(20)相同,但经过我们的验证,并不能计算出正确的抽头系数。在经过向学姐请教,查找相关资料后才得知,式(2)中的“*”并不是代表伴随,而是表示矩阵的转置,后来经过对程序的修改,并且套用了式(20)完成的程序后,实验结果正确。六、扩展问题:尝试改变channelestimatelength和equalizerlength的设定值,观察并比较系统的性能。channelestimatelength是训练序列长度,equalizerlength是均衡器的抽头系数。理论上来说,抽头系数越大,均衡结果越好,得到的星座图越清晰。但实验中程序对均衡的系数可能设置了上限,在不超过10的时候,是满足这个理论关系的,但是超过10之后,就得不到正确的星座图了。七、心得:实验三的实验内容是信道均衡,通过labview再现了我们课程