一种黑盒子记忆性失真补偿方法
【技术领域】
[0001] 本发明属于通信技术领域,设及一种黑盒子记忆性失真补偿方法。
【背景技术】
[0002] 信道指通信的通道,是信号传输的媒介。
[0003] 信息是抽象的,但传送信息必须通过具体的媒质。例如二人对话,靠声波通过二人 间的空气来传送,因而二人间的空气部分就是信道。邮政通信的信道是指运载工具及其经 过的设施。无线电话的信道就是电波传播所通过的空间,有线电话的信道是电缆。每条信道 都有特定的信源和信宿。在多路通信,例如载波电话中,一个电话机作为发出信息的信源, 另一个是接收信息的信宿,它们之间的设施就是一条信道,该时传输用的电缆可W为许多 条信道所共用。在理论研究中,一条信道往往被分成信道编码器、信道本身和信道译码器。 人们可W变更编码器、译码器W获得最佳的通信效果,因此编码器、译码器往往是指易于变 动和便于设计的部分,而信道就指那些比较固定的部分。但该种划分或多或少是随意的,可 按具体情况规定。例如调制解调器和纠错编译码设备一般被认为是属于信道编码器、译码 器的,但有时把含有调制解调器的信道称为调制信道;含有纠错编码器、译码器的信道称为 编码信道。
[0004] 所有信道都有一个输入集A,一个输出集BW及两者之间的联系,如条件概率 P(y|x),xGA,yGB。该些参量可用来规定一条信道。
[0005] 通信中很多信道或者通信器件具有记忆特性,对不同频率信号放大倍数不同,将 会产生记忆性失真,而且往往该些记忆特性参数是未知的。
【发明内容】
[0006] 发明目的;本发明针对上述现有技术存在的问题做出改进,即本发明所要解决的 技术问题是通信系统中信道记忆性失真,本发明公开了一种黑盒子记忆性失真补偿方法。
[0007] 技术方案;一种黑盒子记忆性失真补偿方法,包括W下步骤:
[0008](1)、定义输入信号;x=xl+i*x2,X为复数,xl和x2为实数,i为虚数单位,i表 示xl和x2正交;
[0009]I路输入信号的表达式为;xl(n) =cos(2*pi*fc*n/fs+pi/4),nG[0 ~ (length-1)];
[0010]Q路输入信号的表达式为;x2(n) =sin(2*pi*fc*n/fs+pi/4),nG[0 ~ (length-1)];
[0011] 其中,fs为采样频率,fc为发送信号频率,pi为31,fs〉2fc,length表示信号长 度,length= 1024 ;
[0012] (2)、将步骤(1)中的输入信号X=xl+i*x2经过记忆性信道得出输出信号y= yl+i*y2,y为复数,yl和y2为实数,i为虚数单位,yl对应I路xl的输出,y2对应Q路x2 的输出;
[001引 (3)、近似滤波器AS抽头系数长度L= 32,近似滤波器AS抽头系数的初值设为0, 良Psame_xs(L) = 0 ;
[0014](4)、将步骤(1)中的输入信号X=xl+i*x2经过近似滤波器AS,
[0015] 即通过差分运算得出输出信号ys=yls+i*y2s,其中
[0018] ys表示信号经过近似滤波器AS后的输出信号,其中yls对应着xl的输出,y2s对 应着x2的输出,n表不信号的第n个离散点,nG[0~(length-1) ],length表不信号长 度,length= 1024,same_xs(m)表示近似滤波器AS的第m个抽头系数,mG[0~江-1)], L为近似滤波器AS的抽头系数长度,L= 32 ;
[001引 巧)、LMS算法;计算步骤似中得到的输出信号y=yl+i*y2和步 骤(4)得到的输出信号ys=yls+i*y2s的矢量差en(n) =y(n)-ys(n)=(yl(n)-yls(n))+i*(y2(n)-y2s(n)),nG[0~(length-1)],length表示信号长度,length =1024 ;
[0020] 化)、更新近似滤波器AS的抽头系数;same_xs(n+1) =same_ xs(n)+2*mu*[(xl+x2) /2],
[0021] 其中,same_xs(n+1)为本次迭代得出的近似滤波器AS的抽头系数,same_xs(n)为 最近一次迭代的近似滤波器AS的抽头系数,mu为LMS算法中的迭代步长,0<mu<l/Am。,,其 中入为输入信号相关矩阵的最大特征值,nE[0~(length-l)],length表示信号长度, length= 1024 ;
[0022] (7)、根据步骤(5)得到的矢量差en(n)计算出步骤(2)中得到的输出信号y和此 次迭代中步骤(4)得到的输出信号ys的均方误差(MSE_1):
[0023]
[0024]en(n)表示第n个离散点的矢量差,nG[0~(length-1)],length表示信号长 度,length= 1024,用MSE_0表示上次迭代中步骤(2)中输出信号y和步骤(4)中输出信 号ys的均方误差,初始值EVM_0 = -1 ;
[00巧]巧)、根据步骤(7)得到的此次迭代信号均方误差MSE_1和上次迭代得到的信号均 方误差MES_0比较,判断MSE是否达到最小值,从而确定是否继续迭代更新近似滤波器AS 的抽头系数;若MSE_0 ! = -1,并且,MSE_0《MSE_1则停止迭代,进入步骤(10);否则,令 MSE_0 =MSE_1,并且进入步骤巧),继续迭代更新近似滤波器AS的抽头系数;
[002引 巧)、重复步骤(4)~巧),迭代更新近似滤波器AS的抽头系数,使得步骤似中得 到的输出信号y=yl+i*y2和步骤(4)得到的输出信号ys=yls+i*y2s的信号均方误差 达到最小;
[0027] (10)、计算近似滤波器AS的幅频特性,即步骤(1)~(9)中得到的近似滤波器AS 的抽头系数same_xs[L],L= 32,经过64点fft变换到频域,得到滤波器AS幅频特性,用 数组H_same_xs[2礼]表不,
[002引 (11)、计算步骤(1)中的输入信号X含有的fc频率点且与近似滤波器的AS幅频 数组中对应的数组坐标,= [2*/c'//5*64],fc为输入信号频率,fs为采样频率, ^1表示向下取整;
[0029](12)、将滤波器DA的幅频特性设初值为1,用64位数组H_da_xs表示即H_da_xs =ones(1, 64);
[0030](13)、计算出滤波器DA在fc频域处幅频特性
[0031] H_da_xs(1,number_fc) = 1/H_same_xs(1,number_fc);
[0032](14)、滤波器DA的幅频特性经过ifft到时域,得到逆滤波器DA的系数,用数组 da_xs[L]表示,L= 32 ;
[003引(巧)、失真矫正
[0034] 信号y=yl+i*y2,经过逆滤波器DA后输出yx=ylx+i*y2x,即I-Q两路信号记 忆性失真矫正完成。
[00巧]作为本发明中一种黑盒子记忆性失真补偿方法的一种优选方案;步骤化)中,mu=0. 001。
[0036] 有益效果;本发明公开了一种黑盒子记忆性失真补偿方法,其具有W下有益效 果:
[0037] 1、当信道中记忆特性参数未知时,可W通过本发明得出信道记忆性失真特性,并 且矫正;
[0038] 2、当有一个参数未知的滤波器,可W通过本发明得出滤波器的参数,并且得出滤 波器对应的逆滤波器。
【附图说明】
[0039] 图1为本发明公开的一种黑盒子记忆性失真补偿方法的流程图;
[0040] 图2为发送信号时域示意图;
[0041] 图3为记忆性信道的输入信号和失真输出信号的对比图;
[0042] 图4为记忆性信道和近似滤波器AS幅频图;
[0043] 图5为记忆性信道的输入信号和失真矫正后输出信号对比图。
【具体实施方式】:
[0044] 下面对本发明的【具体实施方式】详细说明。
[0045] 如图1所示,一种黑盒子记忆性失真补偿方法,包括W下步骤:
[0046] (1)、定义输入信号;x=xl+i*x2,X为复数,xl和x2为实数,i为虚数单位,i表 示xl和x2正交;
[0047] I路输入信号的表达式为;xl(n) =cos(2*pi*fc*n/fs+pi/4),nG[0 ~ (length-1)];
[004引 Q路输入信号的表达式为;x2(n) =sin(2*pi*fc*n/fs+pi/4),nG[0 ~ (length-1)];
[0049]其中,fs为采样频率,fc为发送信号频率,pi为31,fs〉2fc,length表示信号长 度,length= 1024 ;
[0050](2)、将步骤(1)中的输入信号X=xl+i*x2经过记忆性信道得出输出信号y= yl+i*y2,y为复数,yl和y2为实数,i为虚数单位,i表示yl和y2正交,yl对应I路xl的 输出,y2对应Q路x2的输出;
[0051](3)、近似滤波器AS抽头系数长度L= 32,近似滤波器AS抽头系数的初值设为0, 用长度为32化数组表不same_xs(L) = 0 ;
[005引 (4)、将步骤(1)中的输入信号X=xl+i*x2经过近似滤波器AS,
[0053] 即通过差分运算得出输出信号ys=yls+i*y2s,其中
[005引 ys表示信号经过近似滤波器AS后的输出信号,其中yls对应着xl的输出,y2s对 应着x2的输出,n表示信号的第n个离散点,nG[0~(length-1)],length表示信号长 度,length= 1024,same_xs(m)表示近似滤波器AS的第m个抽头系数,mG[0~江-1)], L为近似滤波器AS的抽头系数长度,L= 32 ;
[0057] 巧)、LMS算法;计算步骤(2)中得到的输出信号y=yl+i*y2和步骤(4)得到的输 出信号ys=yls+i*y2s的矢量差en(n) =y(n)-ys(n) =yl(n)-yls(n)) +i* (y2 (n) -y2s(n 0),nG[0 ~(length-1)],length表示信号长度,length= 1024 ;
[0058] 化)、更新近似滤波器AS的抽头系数;same_xs(n+l) =same_xs(n)+2*mu*[(xl+x 2)/2],
[0059] 其中,same_xs(n+1)为本次迭代得出的近似滤波器AS的抽头系数,same_xs(n)为 最近一次迭代的近似滤波器AS的抽头系数,mu为LMS算法中的迭代步长,0<mu<l/Am。,,其 中入为输入信号相关矩阵的最大特征值,nE[0~(length-l)],length表示信号长度, length= 1024 ;
[0060] (7)、根据步骤(5)得到的矢量差en(n)计算出步骤(2)中得到的输出信号y和此 次迭代中步骤(4)得到的输出信号ys的均方误差(MSE_1):
[0061]
[006引en(n)表不第n个离散点的矢量差,nG[0~(length-1)],length表不信号长 度,length= 1024 ;
[006引用MSE_0表示上次迭代中步骤似中输出信号y和步骤(4)中输出信号ys的均 方误差,初始值EVM_0 = -UEVM为非复数,-1表示未进行迭代前信号均方误差为无穷大); [0064] 巧)、根据步骤(7)得到的此次迭代信号均方误差MSE_1和上次迭代得到的信号均 方误差MES_0比较,判断MSE是否达到最小值,从而确定是否继续迭代更新近似滤波器AS的抽头系数;若MSE_0 ! = -1 (表示EVM_1不是第一次迭代),并且MSE_0《MSE_1则停止 迭代,进入步骤(10);否则,令MSE_0 =MSE_1,并且进入步骤巧),继续迭代更新近似滤波 器AS的抽头系数;
[006引 巧)、重复步骤(4)~巧),迭代更新近似滤波