信道编码与扩频通信Word文件下载.docx
- 文档编号:17287964
- 上传时间:2022-11-30
- 格式:DOCX
- 页数:8
- 大小:57.18KB
信道编码与扩频通信Word文件下载.docx
《信道编码与扩频通信Word文件下载.docx》由会员分享,可在线阅读,更多相关《信道编码与扩频通信Word文件下载.docx(8页珍藏版)》请在冰豆网上搜索。
正弦干扰
序列发生器
±
PN码2(gold码)同步序列发生器
累加判决器
输出数据2
比较
差错计数器2
双用户二进制双极性扩频通信系统的蒙特卡罗仿真流程图
初始化变量:
信噪比、双用户发送接收信号变量数组、噪声变量数组、仿真序列长度、循环步长、数据块长、临时变量清零:
循环计数器和差错计数器、数据块长计数器
循环计数器置1
生成发送用户1数据块模块生成发送用户2数据块模块
发送用户1数据块扩频模块发送用户2数据块扩频模块
解扩判决接收用户1数据块模块—解扩判决接收用户2数据块模块
接收用户1数据块差错计数模块接收用户2数据块差错计数模块
循环计数器次数已满?
显示:
接收用户1差错计数器数值、接收用户2差错计数器数值,
计算:
接收用户1误码率、接收用户2误码率
为了简化二进制双极性扩频通信系统的蒙特卡罗仿真模型,使我们把主要精力真正集中于编码仿
真本身,本次仿真用户数为2,PN码采用长度为30的gold码。
如上图所示,双用户二进制双极性
扩频通信系统的蒙特卡罗仿真模型中还加入了正弦干扰序列发生器,以用来测试扩频技术对人为正弦
干扰的抑制作用。
在双用户二进制双极性扩频通信系统的蒙特卡罗仿真流程图中,正弦干扰被视做噪
声的一部分置于叠加噪声模块。
MATLAB源程序
function[p1,p2]=ss_Pe94_2105(snr_in_dB,A,w)
%ss_Pe94_2105.m双用户二进制双极性扩频通信系统的蒙特卡罗仿真
%snr_in_dB信噪比
%p误码率
%A正弦干扰幅度
%w正弦干扰角频率
%PN码采用长度Lc为30的gold码丄c=length(gold)=30
snr=10A(snr_in_dB/10);
sgma=1;
Eb=2*sgmaA2*snr;
N=10A5;
%仿真序列长度10A5,运行时间约3分钟
p1=0;
p2=0;
gold1=[0111000010000110010010111100000];
gold2=[0101101110001000001001000110001];
Lc=length(gold1);
%Lc=30;
pn_seq1=2*gold1-1;
pn_seq2=2*gold2-1;
E_chip=Eb/Lc;
temp=0;
data1=0;
data2=0;
repeated_data1=zeros(1,Lc);
repeated_data2=zeros(1,Lc);
trans_sig1=zeros(1,Lc);
trans_sig2=zeros(1,Lc);
noise=zeros(1,Lc);
n=1:
Lc;
interference=zeros(1,Lc);
rec_sig=zeros(1,Lc);
temp1=zeros(1,Lc);
temp2=zeros(1,Lc);
decision_variable1=0;
decision_variable2=0;
decision1=0;
decision2=0;
num_of_err_1=0;
num_of_err_2=0;
time=0;
fori=1:
N
temp=rand;
if(temp<
0.5)
data1=-1;
else
data1=1;
end
forj=1:
Lc
repeated_data1(j)=data1;
trans_sig1=sqrt(E_chip)*repeated_data1.*pn_seq1;
data2=-1;
data2=1;
repeated_data2(j)=data2;
trans_sig2=sqrt(E_chip)*repeated_data2.*pn_seq2;
noise=sgma*randn(1,Lc);
time=time+1,
n=(time-1)*Lc+1:
time*Lc;
interference=A*sin(w*n);
rec_sig=trans_sig1+trans_sig2+noise+interference;
temp1=rec_sig.*pn_seq1;
decision_variable1=sum(temp1);
if(decision_variable1<
0)
decision1=-1;
decision1=1;
if(decision1~=data1)
num_of_err_1=num_of_err_1+1;
temp2=rec_sig.*pn_seq2;
decision_variable2=sum(temp2);
if(decision_variable2<
decision2=-1;
decision2=1;
if(decision2~=data2)
num_of_err_2=num_of_err_2+1;
num_of_err_1,
num_of_err_2,
p1=num_of_err_1/N;
p2=num_of_err_2/N;
echoon
%cd94_2_030_105.m双用户二进制双极性扩频通信系统的蒙特卡罗仿真绘图
%仿真序列长度10A5,运行时间约1小时
A1=3;
A2=7;
A3=12;
A4=0;
%A1A2A3A4正弦干扰幅度
w0=1;
%w0正弦干扰角频率
SNRindB=0:
2:
30;
length(SNRindB)
[smld_err_prb11(i),smld_err_prb12(i)]=ss_Pe94_2105(SNRindB(i),A1,w0);
[smld_err_prb21(i),smld_err_prb22(i)]=ss_Pe94_2105(SNRindB(i),A2,w0);
[smld_err_prb31(i),smld_err_prb32(i)]=ss_Pe94_2105(SNRindB(i),A3,w0);
[smld_err_prb41(i),smld_err_prb42(i)]=ss_Pe94_2105(SNRindB(i),A4,w0);
end;
%绘图函数
semilogy(SNRindB,smld_err_prb11,'
mx-'
);
title('
双用户二进制双极性扩频通信系统的蒙特卡罗仿真'
)axis([0,30,10A(-5),1])
holdon
semilogy(SNRindB,smld_err_prb12,'
mo-'
semilogy(SNRindB,smld_err_prb21,'
gx-'
semilogy(SNRindB,smld_err_prb22,'
go-'
semilogy(SNRindB,smld_err_prb31,'
kx-'
semilogy(SNRindB,smld_err_prb32,'
ko-'
semilogy(SNRindB,smld_err_prb41,'
rx-'
semilogy(SNRindB,smld_err_prb42,'
ro-'
SNRindB2=0:
0.1:
theo_err_prb=zeros(1,length(SNRindB2));
length(SNRindB2)
SNR=exp(SNRindB2(i)*log(10)/10);
theo_err_prb(i)=Qfunct(sqrt(2*SNR));
%Qfuncty=(1/2)*erfc(x/sqrt
(2));
理论误码率公式
semilogy(SNRindB2,theo_err_prb,'
b:
'
%绘图函数
运行结果
下图(cd94_2_030_105的运行结果)给出了不同信噪比条件(0dB-30dB)和不同幅度(A仁3、
A2=7、A3=12、A4=0)正弦干扰下,发送100000比特的双用户二进制双极性扩频通信系统的蒙特卡罗仿真结果以及理论值曲线。
从仿真结果来看,无正弦干扰下的蒙特卡罗仿真结果与理论值曲线吻合程度好的令人惊叹,仿真中两用户在同一信道真正实现了和平共处,因此用蒙特卡罗仿真模型来模拟实际双用户二进制双极性扩频通信系统,是可以被接受的;
同时可以看出,扩频技术对人为的正弦干扰具有抑制能力,并且对于同样的人为正弦干扰,不同gold码的抑制干扰能力相对来说也有高下之分,在本次仿真中,用户1使用的gold码抑制正弦干扰能力更强。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信道编码 通信