neogene 发表于 2007-7-4 20:23

关于信号处理中盲均衡算法的问题

请达人帮忙解决一下:
问题1:前面四行程序是干什么的,因为刚开始研究盲均衡,所以不太懂
问题2:程序中的盲均衡处理是实部、虚部分开做的,可以这样吗,难道不可以一起做吗?
问题3:画图命令中为什么是length(z_k_r)/2,不可以从第一个点开始画吗?
d=1;
Eav=10*d^2;
snr_in_dB=30;
snr=10^(snr_in_dB/10);
sgma=sqrt(Eav/(8*snr));
M=16;

for i=1:N
temp=rand;
dsource(i)=1+floor(M*temp);
end

mapping=[-3*d 3*d;
-d 3*d;
d 3*d;
3*d 3*d;
-3*d d;
-d d;
d d;
3*d d;
-3*d -d;
-d -d;
d -d;
3*d -d;
-3*d -3*d;
-d -3*d;
d -3*d;
3*d -3*d];
for i=1:N
qam_sig(i,=mapping(dsource(i),;
end

h=;

x_r=filter(h,1,qam_sig(:,1)');
x_i=filter(h,1,qam_sig(:,2)');
x_r=x_r+sgma*randn(1,length(x_r));%信号加躁
x_i=x_i+sgma*randn(1,length(x_i));

s_r=qam_sig(:,1);
s_i=qam_sig(:,2);
R_r=mean(abs(s_r).^4)/mean(abs(s_r).^2);
R_i=mean(abs(s_i).^4)/mean(abs(s_i).^2);%求R
L=11;
alpha=0.00015;
estimated_c_r=;
estimated_c_i=;%权值
y_k_r=zeros(1,L);
y_k_i=zeros(1,L);
z_k_r=zeros(1,length(x_r));
z_k_i=zeros(1,length(x_i));

for k=1:length(x_r)
for t=1:L-1
y_k_r(1,L-t+1)=y_k_r(1,L-t);
y_k_i(1,L-t+1)=y_k_i(1,L-t);
end
y_k_r(1,1)=x_r(k);
y_k_i(1,1)=x_i(k);
z_k_r(k)=estimated_c_r*y_k_r.';
z_k_i(k)=estimated_c_i*y_k_i.';
e_k_r(k)=z_k_r(k)*(z_k_r(k)^2-R_r);
e_k_i(k)=z_k_i(k)*(z_k_i(k)^2-R_i);
estimated_c_r=estimated_c_r-alpha*y_k_r*e_k_r(k);
estimated_c_i=estimated_c_i-alpha*y_k_i*e_k_i(k);
end
plot(z_k_r(length(z_k_r)/2:length(z_k_r)),z_k_i(length(z_k_r)/2:length(z_k_r)),'x')

hahaer 发表于 2007-7-21 18:38

lz的这个程序发送信号应该是QAM调制信号
两路分别均衡时可以的
前提是两路信号必须严格正交
但是你这个程序中好象有问题
你实验下用你的程序均衡后看下误码率

d=1;%定义码速率
Eav=10*d^2;%这个 没看明白,好像是求为了求噪声方差用的
snr_in_dB=30;%定义实际信噪比
snr=10^(snr_in_dB/10); %信噪比dB转换

还有你这个信道用盲均衡好像也有点困难
直达路径衰减过于严重
均衡后误码性能应该很差

我也是刚刚入门
随便说说
仅仅供参考

hahaer 发表于 2008-12-12 10:22

你这个程序基本思路还是对的
但是程序中的mapping好像不对
另外对于复数信号
没有必要分开来做的
利用CMA算法代价函数的话
e(k) = z(k)-(Rc - abs(z(k))^2);
其中Rc为常模

璀璨星辰 发表于 2014-6-23 14:42

{:{39}:}
页: [1]
查看完整版本: 关于信号处理中盲均衡算法的问题