预览加载中,请您耐心等待几秒...
1/6
2/6
3/6
4/6
5/6
6/6

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

一.信道均衡的概念实际的基带传输系统不可能完全满足无码间串扰传输条件,因而码间串扰是不可避免的。当串扰严重时,必须对系统的传输函数进行校正,使其达到或接近无码间串扰要求的特性。理论和实践表明,在基带系统中插入一种可调滤波器就可以补偿整个系统的幅频,和相频特性从而减小码间串扰的影响这个对系统校正的过程称为均衡,实现均衡的滤波器称为均衡器。均衡分为频域均衡和时域均衡。频域均衡是从频率响应考虑,使包括均衡器在内的整个系统的总传输函数满足无失真传输条件。而时域均衡,则是直接从时间响应考虑,使包括均衡器在内的整个系统的冲激响应满足无码间串扰条件。频域均衡在信道特性不变,且传输低速率数据时是适用的,而时域均衡可以根据信道特性的变化进行调整,能够有效地减小码间串扰,故在高速数据传输中得以广泛应用。时域均衡的实现方法有多种,但从实现的原理上看,大致可分为预置式自动均衡和自适应式自动均衡。预置式均衡是在实际传数之前先传输预先规定的测试脉冲(如重复频率很低的周期性的单脉冲波形),然后按“迫零调整原理”自动或手动调整抽头增益;自适应式均衡是在传数过程中连续测出距最佳调整值的误差电压,并据此电压去调整各抽头增益。一般地,自适应均衡不仅可以使调整精度提高,而且当信道特性随时间变化时又能有一定的自适应性,因此很受重视。这种均衡器过去实现起来比较复杂,但随着大规模、超大规模集成电路和微处理机的应用,其发展十分迅速。二.信道均衡的应用1.考虑如图所示的基带等效数据传输系统,发送信号经过ISI失真信道传输,叠加高斯加性噪声。SIS信道图1基带等效数据传输模型设发送信号采用QPSK调制,即。设ISI信道的冲击响应以向量的形式表示为h。典型的ISI信道响应向量有三种:hhh为实部与虚部独立的复高斯白噪声,其均值为零,方差为。2.实现目的设信道响应已知。采用线性模型下的线性MMSE估计方法,根据观测信号yk估计发送信号xk。3.实验原理MMSE准则下设计出的均衡器通常非常复杂,不便于实现。为便于实现,可要求满足线性关系,线性模型下的LMMSE估计如下:若x与可用线性模型来描述:其中V是零均值、协方差矩阵为CV的噪声矢量,且V与不相关。则有及,于是的LMMSE估计为4.实验方案1.产生原始信号根据发送信号采用QPSK调制,调制后信号序列,将实部虚部分别作为独立的两个随机序列再加和产生原始发送信号。数据长度任定。%1.产生原始信号len=1000;xR=randint(1,len);xI=randint(1,len);fori=1:len;ifxR(i)==0;xR(i)=-1;endifxI(i)==0;xI(i)=-1;endend%用循环可能效率低,数据量大时要用矩阵运算xk_source=(xR+1j*xI)/sqrt(2);并绘出星座图。scatterplot(xk_source);title('原始QPSK信号星座图');2.描述信道特性由于条件已知信道响应,直接使用数组进行描述。%2.信道特性hA=[0.04,-0.05,0.07,-0.21,-0.5,0.72,0.36,0,0.21,0.03,0.07];hB=[0.407,0.815,0.407];hC=[0.227,0.46,0.6888,0.46,0.227];h=hA;调制信号经过信道的过程即卷积,此处注意卷积为线性卷积,而输入输出的长度会发生变化,应当将输出部分截短,截短方法为取中间部分序列,仿真时直接使用MATLAB函数设置相应参数,而可以进行详细数学证明,此处略去。xk=xk_source;xk=conv(xk,h,'same');%卷积取同样长度,非常重要,详情参照李教员通信原理实验教程指导书3.噪声特性描述产生实部虚部独立分布的复高斯白噪声有多种方法,并不是该算法重点,这里仍采取简化,直接使MATLAB函数进行加噪。SNR=20;%dBN0=10^(-0.1*SNR);sigma=sqrt(N0);%生成实虚部相互独立的高斯白噪本身就是可以讨论很多的问题,在此简化ykR=awgn(real(xk),SNR);ykI=awgn(imag(xk),SNR);yk=ykR+1j*ykI;描绘星座图。scatterplot(yk);title('过信道加入噪声后信号星座图');4.LMMSE估计算法根据LMMSE估计的原理,首先应将卷积表示为矩阵乘法关系,必须得到H矩阵,得到H矩阵并不困难,由于是线性卷积,因此关键仍是取对H矩阵的范围,否则会出现错误。该问题也可以进行严格的数学推导,但仅用于仿真,此处不做赘述。%H矩阵N=length(h);H1=zeros(len,len+N-1);fork=1:lenH1(k,k:k+N-1)=fliplr(h);%需要这种转换时尽量用函数endH=H1(