《AWGN-信道中BPSK-调制系统的BER仿真计算知识讲解》由会员分享,可在线阅读,更多相关《AWGN-信道中BPSK-调制系统的BER仿真计算知识讲解(24页珍藏版)》请在金锄头文库上搜索。
1、AWGN-信道中BPSK-调制系统的BER仿真计算精品文档 序号(学号):学生实验报告书 2014年4月27日实验一:AWGN 信道中BPSK 调制系统的 BER 仿真计算一、 实验目的 1 掌握二相BPSK 调制的工作原理 2 掌握利用MATLAB 进行误比特率测试BER 的方法 3 掌握AWGN信道中BPSK调制系统的BER仿真计算方法 二实验内容利用仿真程序在MATLAB 环境下完成AWGN信道中BPSK调制系统的BER仿真计算,得到仿真结果,写出实验小结,完成实验报告。三实验仪器: 计算机 matlab软件四、 实验原理 在数字领域进行的最多的仿真任务是进行调制解调器的误比特 率测试,
2、在相同的条件下 进行比较的话,接收器的误比特率性能是一个十分重要的指标。误比特率的测试需要一个发送器、一个接收器和一条信道。首先需要产生一个长的随机比特序列作为发送器的输入,发送器将这些比特调制成某种形式的信号以便传送到仿真信道,我们在传输信道上加上一定的可调制噪声,这些噪声信号会变成接收器的输入,接收器解调信号然后恢复比特序列,最后比较接收到的比特和传送的比特并计算错误。误比特率性能常能描述成二维图像。纵坐标是归一化的信噪比,即每个比特的能量除以噪声的单边功率谱密度,单位为分贝。横坐标 为误比特率,没有量纲。五实验步骤 运行发生器:通过发送器将伪随机序列变成数字化的调制信号。 设定信噪比:假
3、定 SNR 为 m dB,则 Eb/N0=10,用 MATLAB 假设 SNR 单位为分贝。 确定Eb 计算N0 计算噪声的方差 n 产生噪声:因为噪声具有零均值,所以其功率和方差相等。我们产 生一个和信号长度相同的噪声向量,且该向量方差为 n 。 加上噪声,运行接收器 确定时间延迟 产生误差向量 统计错误比特:误差向量“err”中的每一个非零元素对应着一个 错误的比特。 最后计算误比特率 BER:每运行一次误比特率仿真,就需要传输和 接收固定数量的比特,然后确定接收到的比特中有多少错误的。使用 MATLAB 计算BER: ber=te/length(tx)。 6 实验结果及分析MATLAB程
4、序:%Simulation of bpskAWGNMax_SNR=10;N_trials=1000;N=200;Eb=1;ber_m=0; for trial=1:1:N_trials trial msg=round(rand(1,N); % 1, 0 sequence s=1-msg.*2; %0-1, 1-1 n=randn(1,N)+j.*randn(1,N);%generate guass white noise ber_v=; for snr_dB=1:2:Max_SNR snr=10.(snr_dB./10);%snr(db)-snr(decimal) N0=Eb./snr; sg
5、ma=sqrt(N0./2); y=sqrt(Eb).*s+sgma.*n; y1=sign(real(y); y2=(1-y1)./2; % 1, 0 sequence error=sum(abs( msg- y2);%error bits ber_snr=error./N;%ber ber_v=ber_v,ber_snr; end %for snrber_m=ber_m+ber_v;endber=ber_m./N_trials; ber_theory=;for snr_db=1:2:Max_SNR snr=10.(snr_db./10); snr_1=Qfunct(sqrt(2*snr);
6、 ber_theory=ber_theory,snr_1;end i=1:2:Max_SNR;semilogy(i,ber,-r,i,ber_theory,*b);xlabel(E_b/N_0 (dB)ylabel(BER)legend(Monte Carlo, Theoretic)程序分析:做1000次试验,每次试验取200个抽样点,求出每次试验的误比特率,然后对1000次试验的误比特率取平均值,即得仿真误比特率ber,然后将此误比特率与理论值ber_theory进行比较。程序运行结果如图3所示。图1 bpskAWGN误比特率仿真结果与理论值比较结果分析:由图3可知,仿真结果与理论值基本相符
7、,只是在信噪比较大时,仿真误码率与理论值存在误差,这是因为在高信噪比情况下,误比特率会呈下降趋势,若要仿真实际的误比特率,就需要进行更多次试验,而且每次试验取的抽样点数也应该增加。%Simulation of qpskAWGNN_trials=1000;N_number=100;N_snr=10;Es=1;BER_m=0;SER_m=0; for trials=1:N_trials; trials s10=round(rand(1,N_number); S=(s10*2-1)./sqrt(2); S1=S(1:2:N_number); S2=S(2:2:N_number); Sc=S1+j.*
8、S2;%generate qpsk signal niose=randn(1,N_number/2)+j.*randn(1,N_number/2);%generate noise SER_v=;%Symbol error rate BER_v=;%Bit error rate for snr_db=0:1:N_snr; sgma=(1/2)*sqrt(10.(-snr_db./10); Y=Sc+sgma.*niose; Y_r=sign(real(Y)./sqrt(2); Y_i=sign(imag(Y)./sqrt(2); Y_bit=; for k=1:length(Y_r); Y_bi
9、t=Y_bit,Y_r(k),Y_i(k); end; Y_symbol=Y_r+j*Y_i; X_b=S-Y_bit; X_s=Sc-Y_symbol; ber_snr=0; for k=1:N_number if X_b(k)=0; ber_snr=ber_snr+1; end; end; ser_snr=0; for k=1:N_number/2; if X_s(k)=0; ser_snr=ser_snr+1; end; end; BER_v=BER_v,ber_snr./N_number; SER_v=SER_v,ser_snr./(N_number./2); end;%for SNR
10、BER_m=BER_m+BER_v;SER_m=SER_m+SER_v; end % for trials BER=BER_m./N_trials;SER=SER_m./N_trials; BER_T=;SER_T=; for snr_db=0:1:N_snr; snr=10.(snr_db./10); BER_THEORY=Qfunct(sqrt(2.*snr); SER_THEORY=1-(1-(1/2).*erfc(sqrt(snr).2; BER_T=BER_T,BER_THEORY; SER_T=SER_T,SER_THEORY;end; figurei=0:1:N_snr;semi
11、logy(i,BER,-r,i,BER_T,*b);legend(BER-simulation,BER-theory);xlabel(Eb/N0(db);ylabel(BER); figurei=0:1:N_snr;semilogy(i,SER,-g,i,SER_T,*y);legend(SER-simulation,SER-theory);xlabel(E_b/N_0(db);ylabel(SER);程序分析:与bpskAWGN类似,做1000次试验,每次试验取100个点,然后每两个点形成一个qpsk符号,首先计算仿真误比特率和误码率,然后与理论值进行比较。程序运行结果如图4和图5所示,其中
12、图4是ber图,图5是ser图。图2 BER仿真结果与理论值结果分析:由图4和图5可知,在低信噪比的情况下,BER和SER的仿真结果与理论值完全相符,在高信噪比情况下,两者存在差异,这是因为随着信噪比的增加,误比特率和误码率也会增加,这就需要更多的试验次数和更多的抽样点数。将BER和SER仿真结果进行比较可知,在相同信噪比的情况下,BER比SER小,这是因为只要一个比特错,相应的qpsk符号就会出错,而一个qpsk要正确接收,就必须保证它的两个比特全部正确接收。图3 SER仿真结果与理论值实验二: 无线通信信道建模 一、实验目的1.掌握无线移动通信信道的特点,根据相关模型进行仿真。2.掌握MATLAB 语言对上述参数进行仿真。二实验内容 利用仿真程序在MATLAB 环境下完成移动信道建模的仿真分析,得到仿真结果,写出实验小结,完成实验报告。三实验仪器 计算机 matlab软件四、 实验原理 当移动台在一个较小的范围(小于20个工作波长)运动时,引起接收信号的幅度、相位和到达角等的快速变化,这种变化称为小尺度衰落。典型的小尺度衰落有Rayleigh、Rician衰落,因为当信号在传播过程中经过许多反射路径后,接收到的信号幅度可以用Rayleigh或Rician概率密度函数来描述。在接