Matlab仿真多径信道瑞利衰落

该博客通过Matlab进行多径信道的瑞利衰落仿真,使用QPSK信号,并设置了不同的路径功率和延迟。仿真包括信号生成、瑞利衰落信道模拟、匹配滤波处理以及误码率计算,最后展示并比较了理想和系统条件下的误码率性能曲线。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

%主函数
%两径瑞利衰落信道仿真
%设定默认参数
NN=256; %传输符号个数
tb=0.5; %一个比特时间
fs=10; %每符号采样数
ebn0db=[1:2:15];%设定Eb/N0

%建立QPSK信号
x=random_binary(NN,fs)+i*random_binary(NN,fs); %x为QPSK信号

%输入功率和延迟
p0=0; %视距LOS分量
p1=20; %第一路径分量
p2=1; %第二路径分量
delay=1; %按照每符号采样数决定的延迟
delay0=0;
delay1=0;
delay2=delay;

%设定复高斯(瑞利)衰减
gain1=sqrt(p1)abs(randn(1,NN)+irandn(1,NN));
gain2=sqrt(p2)abs(randn(1,NN)+irandn(1,NN));
for k=1:NN
for kk=1:fs
index=(k-1)*fs+kk;
ggain1(1,index)=gain1(1,k);
ggain2(1,index)=gain2(1,k);
end
end
y1=x;
for k=1:delay2
y2(1,k)=y1(1,k)sqrt(p0);
end
for k=(delay2+1):(NN
fs)
y2(1,k)=y1(1,k)*sqrt(p0)+y1(1,k-delay1)*ggain1(1,k)+y1(1,k-delay2)*ggain2(1,k);
end

%匹配滤波器
b=-ones(1,fs);
b=b/fs;
a=1;
y=filter(b,a,y2);

[cor lags]=vxcorr(x,y);
cmax=max(max(abs(cor)));
nmax=find(abs(cor)==cmax);
timelag=lag

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值