- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
信道均衡
信道均衡
作业1: %%%Equalization
clear all;close all;clc
L=3; %信道长度
N=2000; %序列长度
delta_v=0.001;%噪声方差
W=2.9; %幅度失真量
delay=2;
hn=0.5*(1+cos(2*pi/W.*((1:L)-delay))); %信道单位冲激响应
an=round(rand(N,1))*2-1; %双极性随机序列
sn=conv(hn,an);
vn=sqrt(delta_v)*randn(N,1);%高斯白噪声
un=sn(1:N)+vn(1:N); %观测信号
TT=200; %独立实验次数
M1=5; M=2*M1+1;%滤波器阶数
MSE_nlms=zeros(N-M+1,1);
MSE_sign=zeros(N-M+1,1);
MSE_blms=zeros(N,1);
for ii=1:TT
vn=sqrt(delta_v)*randn(N,1);%高斯白噪声
un=sn(1:N)+vn(1:N); %观测信号
%%%%%%%%NLMS%%%%%%%
mu=1.1;fai=0.1;
wn_nlms=zeros(M,1);wn_nlms(M1+1)=1;%初始滤波器系数
for jj=M:N
un_nlms=un(jj:-1:jj-M+1);%观测向量
dn_nlms=an(jj-delay-M1);%期望信号
yn_nlms=wn_nlms*un_nlms;
en_nlms=dn_nlms-yn_nlms;
step=mu/(un_nlms*un_nlms+fai);%步长
wn_nlms=wn_nlms+step*conj(en_nlms)*un_nlms;%更新权
MSE_nlms(jj-M+1)=MSE_nlms(jj-M+1)+conj(en_nlms)*en_nlms;
end
%%%%%%%%符号LMS%%%%%%%%
step=0.02;%0.01
wn_sign=zeros(M,1); wn_sign(M1+1)=1;%初始权向量
for jj=M:N
un_sign=un(jj:-1:jj-M+1);%观测向量
dn_sign=an(jj-delay-M1);%期望信号
%%%%LMS迭代过程%%%%
yn_sign=wn_sign*un_sign; %n时刻的估计
en_sign=dn_sign-yn_sign; %n时刻的估计误差
wn_sign=wn_sign+step*sign(un_sign)*conj(en_sign);%更新权
MSE_sign(jj-M+1)=MSE_sign(jj-M+1)+conj(en_sign)*en_sign;
end
%%%%%%%%BLMS%%%%%%%%
step=0.26;%0.26
L=M+4; %数据块长度
KK=floor(N/L);%数据块个数
wk_blms=zeros(M,1);wk_blms(M1+1)=1;%初始权向量
for ii1=0:KK-1
delta_blms=zeros(M,1); %负梯度
if (ii1*L)M
continue
end
for ii2=0:L-1
un_blms=un(ii1*L+ii2:-1:ii1*L+ii2-M+1);
dn_blms=an(ii1*L+ii2-M1-delay);
yn_blms=wk_blms*un_blms;
en_blms=dn_blms-yn_blms;
delta_blms=delta_blms+conj(en_blms)*un_blms;
MSE_blms(ii1*L+ii2)=MSE_blms(ii1*L+ii2)+conj(en_blms)*en_blms;
end
wk_blms=wk_blms+step*delta_blms/L;
end
end
yyn_sign=zeros(50
文档评论(0)