AWGN信道中BPSK调制系统的BER仿真计算_第1页
AWGN信道中BPSK调制系统的BER仿真计算_第2页
AWGN信道中BPSK调制系统的BER仿真计算_第3页
AWGN信道中BPSK调制系统的BER仿真计算_第4页
AWGN信道中BPSK调制系统的BER仿真计算_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、序号(学号):学生实验报告书2014 年 4 月 27 日实验一: AWGN 信道中 BPSK 调制系统的 BER 仿真计算一、实验目的1. 掌握二相BPSK调制的工作原理2. 掌握利用MATLAB进行误比特率测试BER的方法3. 掌握AWG信道中BPSK调制系统的BEF仿真计算方法二. 实验内容利用仿真程序在MATLAB环境下完成AWG信道中BPSK调制系统 的BER仿真计算,得到仿真结果,写出实验小结,完成实验报告。三. 实验仪器 :计算机matlab 软件四、实验原理在数字领域进行的最多的仿真任务是进行调制解调器的误比特 率测试,在相同的条件下 进行比较的话,接收器的误比特率性能是 一个

2、十分重要的指标。 误比特率的测试需要一个发送器、 一个接收器 和一条信道。首先需要产生一个长的随机比特序列作为发送器的输 入,发送器将这些比特调制成某种形式的信号以便传送到仿真信道, 我们在传输信道上加上一定的可调制噪声, 这些噪声信号会变成接收 器的输入, 接收器解调信号然后恢复比特序列, 最后比较接收到的比 特和传送的比特并计算错误。 误比特率性能常能描述成二维图像。 纵 坐标是归一化的信噪比, 即每个比特的能量除以噪声的单边功率谱密 度,单位为分贝。横坐标 为误比特率,没有量纲。五实验步骤 运行发生器:通过发送器将伪随机序列变成数字化的调制信号。 设定信噪比:假定 SNR 为 m dB,

3、 则 Eb/N0=10, 用 MATLAB 假设SNR单位为分贝。 确定Eb 计算NO 计算噪声的方差。n 产生噪声:因为噪声具有零均值,所以其功率和方差相等。我们产 生一个和信号长度相同的噪声向量,且该向量方差为。n。加上噪声,运行接收器 确定时间延迟 产生误差向量 统计 错误比特:误差向量“ err ”中的每一个非零元素对应着一个 错误的 比特。最后计算误比特率BER:每运行一次误比特率仿真,就需要 传输和 接收固定数量的比特,然后确定接收到的比特中有多少错误 的。使用 MATLAB计算 BER: ber二te/length(tx)。六 实验结果及分析MATLA程 序:%Simulatio

4、n of bpskAWGNMax_SNR=1O;N_trials=1OOO;N=2OO;Eb=1;ber_m=O;for trial=1:1:N_trialstrialmsg=round(rand(1,N); % 1, O sequences=1-msg.*2;%O-1, 1-1n=randn(1,N)+j.*randn(1,N); %generate guass white noiseber_v=;for snr_dB=1:2:Max_SNRsn r=104(s nr_dB./10);%s nr(db)-s nr(decimal)N0=Eb./snr;sgma=sqrt(N0./2);y=s

5、qrt(Eb).*s+sgma.*n;y1=sign(real(y);y2=(1-y1)./2;% 1, 0 sequenceerror=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_SNRsn r=10.A(s nr_db./10);snr_1=Qfunct(sqrt(2*snr); ber_theory=ber_theory

6、,snr_1;endi=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所示。10-1Monte CarloTheoretic10-210-3-Jr10-410-55Eb/N0(dB)图1

7、bpskAWGN误比特率仿真结果与理论值比较结果分析:由图3可知,仿真结果与理论值基本相符,只是在信噪比较大时, 仿真误码率与理论值存在误差,这是因为在高信噪比情况下,误比特 率会呈下降趋势,若要仿真实际的误比特率,就需要进行更多次试验, 而且每次试验取的抽样点数也应该增加。%Simulation of qpskAWGN N_trials=1000;N_nu mber=100;N_sn r=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);

8、S1=S(1:2:N_number); S2=S(2:2:N_number);%generate noiseSc=S1+j.*S2; %generate qpsk signal niose=randn(1,N_number/2)+j.*randn(1,N_number/2); SER_v=; %Symbol error rate BER_v=; %Bit error ratefor snr_db=0:1:N_snr;sgma=(1/2)*sqrt(10.A(-s nr_db./10);Y=Sc+sgma.*niose;Y_r=sign(real(Y)./sqrt(2); Y_i=sign(im

9、ag(Y)./sqrt(2); Y_bit=;for k=1:length(Y_r); Y_bit=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_numberif 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,s

10、er_snr./(N_number./2);end;%for SNRBER_m=BER_m+BER_v;SER_m=SER_m+SER_v;end% for trialsBER=BER_m./N_trials;SER=SER_m./N_trials;BER_T=;SER_T=;for snr_db=0:1:N_snr;sn r=104(s nr_db./10);BER_THEORY=Qfunct(sqrt(2.*snr);SER_THE0RY=1-(1-(1/2).*erfc(sqrt(s nr)42;BER_T=BER_T,BER_THEORY;SER_T=SER_T,SER_THE0RY;

11、end;figurei=0:1:N_snr;semilogy(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);程序分析:与bpskAWG类似,做1000次试验,每次试验取100个点,然后每两个点形成一个qpsk符号,首先计算仿真误比特率和

12、误码率,然后与理论值进行比较。程序运行结果如图4和图5所示,其中图4是ber图,图5是ser图BER-simulatio n十 BER-theory-2七10 - - * ;, *-310 - -:卡:REio-4 _*-510 厂-*-610 IIEII(II012345678910Eb/N0(db)图2 BER仿真结果与理论值结果分析:由图4和图5可知,在低信噪比的情况下,BEF和SER勺仿真结果与 理论值完全相符,在高信噪比情况下,两者存在差异,这是因为随着 信噪比的增加,误比特率和误码率也会增加,这就需要更多的试验次 数和更多的抽样点数。将BER和SER仿真结果进行比较可知,在相同信

13、噪比的情况下,BEF比SER)、,这是因为只要一个比特错,相应的qpsk 符号就会出错,而一个qpsk要正确接收,就必须保证它的两个比特全 部正确接收。-2o1RES-3o1-4o-510-6100 1SER-simulatio n SER-theory2345678910图3 SER仿真结果与理论值实验无线通信信道建模一、实验目的1. 掌握无线移动通信信道的特点,根据相关模型进行仿真。2.掌握MATLAB语言对上述参数进行仿真。二实验内容利用仿真程序在MATLAB环境下完成移动信道建模的仿真分析,得 到仿真结果,写出实验小结,完成实验报告。三实验仪器计算机matlab 软件四、 实验原理当移

14、动台在一个较小的范围 (小于20个工作波长) 运动时, 引起 接收信号的幅度、 相位和到达角等的快速变化, 这种变化称为小尺度 衰落。典型的小尺度衰落有 Rayleigh 、Rician 衰落,因为当信号在传 播过程中经过许多反射路径后,接收到的信号幅度可以用 Rayleigh 或Rician概率密度函数来描述。在接受信号有直达信号LOS勺情况下, 幅度的衰落呈现 Rician 分布,而当在接收端没有直达信号的情况下, 幅度的衰落呈现 Rayleigh 分布。采用小尺度衰落模型的信道, 衰落幅 度是服从Rician或Rayleigh分布的随机变量,这些变量将会影响到接 收信号的幅度和功率。五实

15、验步骤1 选择路径数2 按均匀分布产生各条路径的延迟3 按功率时延谱确定对应的各径的功率4 按 Jake 模型产生各径的瑞利衰落系数5 对瑞利衰落系数进行统计分析并与理论值相比较说明:1 路径数目 2-4 自己确定,或采用某个国际标准 2 每条路径时间延迟满足(0, TmaX范围内均匀分布,Tmax为自 己选择 的最大采样步长数 200-600 间比较合适,或采用国际标准 3 功率 可以按时延迟谱求得,也可用国际标准测量值。功率延迟谱: 若 采用等功率分配产生功率:P i =P t /M :采用指数分布的功率 延 迟谱产生功率: P=1/6*exp(-t/6)六 实验结果及分析MATLA程序:

16、% Simulation Of Jakes Model clear all;f_max = 30;M = 8;N = 4*M+2;Ts=1.024e-04; sq = 2/sqrt(N); sigma = 1/sqrt(2); theta = 0; count = 0;t0=0.001;for t = 0:Ts:0.5% # of low frequency oscillators - 1% Fixed Phase% Varying timecount = count + 1 g(count) = 0;for n = 1 : M+1,if n = Mc_q(count,n)= 2*sigma*

17、sin(pi*n/M);% Gain associated with quadraturecomponentc_i(count,n) =2*sigma*cos(pi*n/M);% Gain associated with inphasecomponentf_i(count,n) =f_max*cos(2*pi*n/N);% Discrete doppler frequencies ofinphase componentf_q(count,n)f_max*cos(2*pi*n/N);% Discrete doppler frequencies ofquadrature componentelse

18、c_i(count,n) =sqrt(2)*cos(pi/4);c_q(count,n)= sqrt(2)*sin(pi/4);f_i(count,n) = f_max; f_q(count,n) = f_max; end; % end ifg_i(count,n) = c_i(count,n)*cos(2*pi*f_i(count,n)*(t-t0) + theta); % Inphase component for one oscillatorg_q(count,n) = c_q(count,n)*cos(2*pi*f_q(count,n)*(t-t0) + theta); % Quadr

19、ature component for one oscillatorend; %end ntp(count) = sq*sum(g_i(count,1:M+1); % Total Inphase component tp1(count) = sq*sum(g_q(count,1:M+1); % Total quadrature componentend; % end count no n againen velope=sqrt(tp42+tp1.A2);%rayleigh en velopermse nv=sqrt(sum(e nvelope.A2)/co un t);%root mean s

20、quare en velpeauto_i,lag_i = xcorr(tp, coeff) ;% Auto-correlation associated with inphase componentauto_q,lag_q = xcorr(tp1, coeff); % Auto-correlation associated with quadrature componentlen=length(lag_i);corrx2,lag2 = xcorr(tp,tp1, coeff);% Cross Correlation between inphase and quadrature componen

21、tsaa=-(len-1)/2:1:(len-1)/2; %total duration for lag bb=(len-2001)./2; %mid . points for drawing figures cc=bb+1:1:bb+2001;%for getting the mid-values dd=-1000:1:1000;%tdd=dd*Ts;z=2.*pi.*f_max*tdd;sigma0=1;T_bessel=sigmaO42.*besselj(O,z);% %figure;plot(tdd,auto_i(cc), -,tdd,T_bessel , * ) ; %in-phas

22、exlabel(t(Second);ylabel(Auto-correlation );legend(In-component)figure;plot(tdd,auto_q(cc), - ,tdd,T_bessel ,* ) ; %quadraturexlabel(t(Second);ylabel(Auto-correlation );legend(Q-component)figureco1=1:1000;semilogy(co1*Ts,envelope(1:1000);xlabel(t(Second);ylabel(Rayleigh Coef. );%length_r=length(enve

23、lope);%pdf_env=zeros(1,501);count=0;temp=round(100.*envelope);for k=1:length_rif temp(k)=500count=count+1;pdf_env(1,temp(k)+1)=pdf_env(1,temp(k)+1)+1;endendcountpdf_env=pdf_env./count./0.01; %simulation rayleigh pdfsgma2=0.5;x=0:0.01:5;pdf_theory=(x./sgma2).*exp(-1.*x.A2./(2.*sgma2);%theory rayleigh

24、 pdffigureplot(x,pdf_env, -,x,pdf_theory, *); lege nd(Simulated,Theoretic); xlabel(r);ylabel(PDF of r);程序分析:首先选定jake模型得到参数 M=8 N=4*M+2然后计算各路的同 相与正交分量的增益和多普勒频率,以及它们的表达式,该程序假设 各路的延时相等,均为t0=0.001,各路相位均为0。然后分别求同相 分量和正交分量的自相关和互相关, 分别作图,并分别与理论值相比 较。接着作出瑞利衰落系数图形,最后作出仿真的和理论的瑞利分布 的概率密度函数,并进行比较。-0.5-0.2程序运行结果

25、如图6-图9所示。1-0.15-0.1-0.050t(Seco nd)0.050.15 n-o0.15图4.同相分量的自相关仿真图形和理论图形nnrLorlFOC- puQ-component-0.8-0.2-0.15-0.1-0.050t(Seco nd)0.050.10.15图5.正交分量的自相关仿真图形和理论图形m-qoO hpaxxadi-21000.020.040.080.06t(Seco nd)0.1 0.12图6.瑞利衰落系数图形rfo FDP$ 41 .1 .10.60.40.2011.522.5r00.5Simulated 亠 Theoretic33.544.55图7.瑞利分

26、布概率密度函数仿真图形和理论图形结果分析:图4和图5的自相关和互相关函数图形仿真结果与理论结果大致 相同,说明jake模型很好地分离出了接收信号同相分量和正交分量, 图6是瑞利衰落系数的时域图形,图7中瑞利分布概率密度函数的仿 真结果的大致变化趋势与理论值相同,只不过在概率密度较大的区域 两者有较大差异,这是因为抽样点数太少,无法满足理论计算的要求, 而且jake模型的M N取值也会影响概率密度函数图形的仿真结果。实验三:CDMA通信仿真一、实验目的1. CDMA通信具有很多通信特点,不仅被IS-95移动通信系统使用, 目前已成为 3G 的主要技术。2. 通过实验: 掌握直接序列扩频发射机与接

27、收机的组成与仿真; 仿真验证AWG信道下单用户直接序列扩频系统的 BER性能; 仿真验证平坦瑞利信道下单用户直接序列扩频系统的 BER性能; 观察存在干扰用户时的系统性能变化。二实验内容设计一个CDMA系统,用MATLAB进行仿真,统计BER或SER随 信噪比的关系, 绘出曲线。对统计试验的结果与单用户的理论值进行 比较,对仿真结果进行分析。三实验仪器计算机matlab 软件四实验原理仿真基带直接序列扩频系统:1. 采用 BPSK或 QPSK映射。2. 扩频序列可以是随机产生,可以是 m序列,也可以是Gold码,长 度自选。3. 最后对BER或 SER随信噪比变化画图与理论单用户的结果比较,

28、并对仿真结果进行分析。五实验步骤1. 确定用户数目、信道特征以及调制方式。2. 确定基带扩频仿真系统的原理结构图,按照框图设计一个 CDMA 系统,并进行仿真。3. 用MATLAB进行仿真,统计BER或SER随信噪比的关系,绘出 曲线。4. 对统计试验的结果与单用户的理论值进行比较。5. 对仿真结果进行分析。六.实验结果及分析MATLA程 序:%mainS95_forward.m%此函数用于IS-95前向链路系统的仿真,包括扩%频调制,匹配滤波,RAKE接收等相关通信模块。%仿真环境:加性高斯白噪声信道.%数据速率 =9600 KBps%clear allclose allclcdisp(st

29、art);global Zi Zq Zs show R Gi Gqclear j;show = 0; %控制程序运行中的显示SD = 0;%选择软/硬判决接收% 主要的仿真参数设置-BitRate = 9600; % 比特率ChipRate = 1228800;% 码片速率N = 184;%源数据数MFType = 1;%匹配滤波器类型-升余弦R = 5;%+Viterbi 生成多项式 + G_Vit = 1 1 1 1 0 1 0 1 1; 1 0 1 1 1 0 0 0 1; %Viterbi 生成多项式矩阵 K = size(G_Vit, 2); % 列数L = size(G_Vit,

30、1); % 行数 %+ %+Walsh 矩阵 + WLen = 64; %walsh 码的长度Walsh = reshape(1;0*ones(1, WLen/2), WLen , 1); %32 个 1 0行 %Walsh = zeros(WLen ,1);%+ %+ 扩频调制 PN 码的生成多项式 + %Gi = 1 0 1 0 0 0 1 1 1 0 1 0 0 0 0 1;%Gq = 1 0 0 1 1 1 0 0 0 1 1 1 1 0 0 1;Gi_ind = 15, 13, 9, 8, 7, 5, 0; %i 路 PN码生成多项式参数Gqnd = 15, 12, 11, 10,

31、6, 5, 4, 3, 0; %q路 PN码生成多项式参数Gi = zeros(16, 1); %16X1 的 0 矩阵Gi(16-Gi_ind) = ones(size(Gi_ind); %根据 Gi_ind 配置 i路PN码生成多项式Zi = zeros(length(Gi)-1, 1); 1;% I路信道PN码生成器的初始状态Gq = zeros(16, 1); %16X1 的 0 矩阵Gq(16-Gq_ind) = ones(size(Gq_ind); %根据 Gq_ind配置 q路PN码生成多项式 Zq = zeros(length(Gq)-1, 1); 1;% Q路信道PN码生成器

32、的初始状态 %+ %+ 扰码生成多项式 +Gs_ind = 42, 35, 33, 31, 27, 26, 25, 22, 21, 19, 18, 17, 16, 10, 7, 6, 5, 3, 2, 1, 0; Gs = zeros(43, 1); %43X1 的 0 矩阵Gs(43-Gs_ind) = ones(size(Gs_ind); %根据 Gs_ind配置扰码生成多项式 Zs = zeros(length(Gs)-1, 1); 1;% 长序列生成器的初始状态 %+ %+AWGN 信道 + EbEc = 10*log10(ChipRate/BitRate); %处理增益EbEcVit

33、 = 10*log10(L);EbNo = -1: 0.5 : 1;%仿真信噪比范围 (dB)%EbNo = -2 : 0.5 : -1.5;%+% 主程序 ErrorsB = ; ErrorsC = ; NN = ;if (SD = 1)% 判断软 /硬判决接收fprintf( n SOFT Decision Viterbi Decodernn ); elsefprintf( n HARD Decision Viterbi Decodernn ); endfor i=1:length(EbNo) %根据 EbNo 多次运行fprintf( nProcessing %1.1f (dB) , E

34、bNo(i); %输出当前 EbNo 值iter = 0; ErrB = 0; ErrC = 0;while (ErrB 300) & (iter 0); %生成源数据% 速率为 19.2KcpsTxChips, Scrambler = PacketBuilder(TxData, G_Vit, Gs); %产生 IS-95前向链 路系统的发送数据包% 速率为 1.2288Mcpsx PN MF = Modulator(TxChips, MFType, Walsh);%实现 IS-95前向链路系统的数据调制%+ %+ 信道 + n oise = 1/sqrt(2)*sqrt(R/2)*( ra

35、ndn (size(x) + j*ra ndn (size(x)*10A(-(EbNo(i)-EbEc)/20); %生成噪声序列r = x+noise; %加入噪声 %+ %+ 接收机 + RxSD = Demodulator(r, PN, MF, Walsh); %软判决,速率为 19.2 Kcps RxHD = (RxSD0);% 定义接收码片的硬判决if (SD)RxData Metric= ReceiverSD(RxSD, G_Vit, Scrambler);%软判决elseRxData Metric= ReceiverHD(RxHD, G_Vit, Scrambler);%硬判决e

36、nd%+ if(show)subplot(311); plot(RxSD, -o); title( Soft Decisions); %软判决结果图 subplot(312); plot(xor(TxChips, RxHD), -o); title( Chip Errors );%RAKE 接 收机输入符号与发送码相比出错的码subplot(313); plot(xor(TxData, RxData), -o); %硬判决接收机与发送数据 相比的出错码title( Data Bit Errors. Metric = , num2str(Metric);pause;endif(mod(iter, 50)=0) %每50次保存一次fprintf( .);save TempResults ErrB ErrC N iter %保存结果endErrB = ErrB + sum(xor(RxDa

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论