仿真高斯白噪声信道下qpsk的ebn与误比特率之间的关系

合集下载

通信原理、现代通信技术-QPSK仿真报告

通信原理、现代通信技术-QPSK仿真报告

《通信原理》实验课程课程实验报告一、实验要求QPSK调制仿真与分析使用matlab仿真实现QPSK相干调制与解调,要求:1)调制载波中心频率为5MHz,二进制数据比特率为2Mbps,基带信号波形采用滚降系数为0.4的平方根升余弦滤波器,画出4个载波周期I、Q调制分量的时域波形和对应的二进制码。

2)画出基带|、Q信号和已调信号的频谱。

3)通过AWGN信道,Eb/N0在0到20dB之间变化,画出误比特率曲线,并和理论误比特率进行对比;4)画出Eb/N0分别为5dB和10dB时的星座图;二、实验环境软件: MATLAB R2018a三、实验原理1、四进制相移键控(QPSK)的载波信号有四种可能的离散相位状态,每个载波相位携带两个二进制码元。

双bite码元与载波相位的常见对应关系有A\B两种B方式的QPSK信号的正交调制原理如下图。

公式有:式中,同相分量,2、误比特率与信噪比信噪比SNR=10lg(Ps/Pn),其中Ps和Pn分别代表信号和噪声的有效功率Eb/N0为比特信噪比。

显然,信噪比越大,信号的误码率越小。

3、星座图数字通信系统中,每个符号间隔输出一个符号,对应一个信号波形。

M进制数字通信系统在发送端需要设计出M种不同的信号。

如前所述,信号s;()可以通过矢量空间分析器得到矢量,这样M个能量信号波形就可映射为N维空间中的M 个点。

将所对应的N维空间中的M个点的集合称为M进制信号的星座图,或称为信号空间图,或称为信号矢量图。

相对于前面介绍的一般信号波形,数字信号波形一般限定在一个符号间隔内,二进制数字信号限定在0≤1≤T,多进制数字信号限定时间在0≤1≤T。

四、实验设计与运行结果首先声明:因为题目要求的频率过高,电脑配置不足,每次调制用时过长,先将所有的数据等比例缩小,如调制载波中心频率5MHz→5Hz,二进制数据比特率2Mbps→2bps。

1、调制使用调相法产生B方式的QPSK信号。

①基带信号生成:随机数判决+比特率为节奏的for函数。

AWGN信道中BPSK误码率仿真分析

AWGN信道中BPSK误码率仿真分析

窑26窑
微处理机
2021 年
图 11 整体仿真模型
4结束语
利用数字信号载波传输系统中存在的信道噪声 误码,借助于 AWGN 信道模块和高斯噪声器模块, 在适当参数下得出了相同的仿真结果。随着仿真时 间增加,统计样本随之增加,将使得误码率仿真结果 更加接近理论分析值。基于蒙特卡罗统计方法得到 的仿真结果与理论计算之间具有较好的一致性,而 在实际工程中,要获得通信系统的理论性能往往比 较困难,因此,仿真手段几乎成为通信系统性能评估 的最佳选择。
第3期 2021 年 6 月
微处理机 MICROPROCESSORS
No. 3 Jun.,2021
·微机网络与通信·
AWGN 信道中 BPSK 误码率仿真分析
丁凯
(海军 92785 部队,辽宁 绥中 125208)
摘 要: 针对加性高斯白噪声使数据出现差错对数字通信系统中信号接受端带来的负面效应,
对加性高斯白噪声对信道中误码率性能的影响展开研究。通过介绍 BPSK 的扩频调制解调原理及信
图 3 BPSK 调制信号
实际信道中存在着各种干扰,会对通信系统造 成影响。在加性高斯白噪声信道中,信道的输入信 号将与信号内的高斯白噪声相叠加,导致如图 4 所 示的波形。
图 4 BPSK 叠加高斯白噪声
信号接收机接收到经过调制和叠加了高斯白
图 7 抽样判决后的信号
在实际通信系统中,由于受所处环境、仪器精密 度、电磁干扰等的影响,导致了调制解调存在一定的 误差,此误差即被称为误码率。 2.3 BPSK 调制 BER 的理论性能
2.26伊10-3
在 BPSK 调制与解调模块中增加 AWGN 模块, AWGN 信道中设置 Mode 参数,仿真结果如图 10 所 示。当 Eb/ N0 设置为 100 dB、信噪比取值很大时[6], AWGN 模块不会引入传输错误,如图 10(a)所示,输 入发送信号序列和接收解调输出的信号序列都是由 一连串收发相互一致的双精度随机整数值(1 或 0) 组成。把 Eb/N0 的值修改为-10 dB 后[7],产生了不少错 误,收发数据序列波形变得不一致,如图 10(b)所示。

数字通信原理课程设计 误码性能仿真报告

数字通信原理课程设计 误码性能仿真报告

SER 的一半,这与理论结果契合。此外,BER、SER 的 仿真值都与其理论值基本一致。
(a)
(b)
图 3.(a)QPSK 星座图,(b)SNR=14dB 时的星座图
图 2.BPSK 的误码率仿真值与理论值,仿真 100 次取平均值
尽管 BPSK 两星座点的正交分量均为 0,星座点 相似于 2ASK,但 BPSK 的误码性能优于 2ASK。BPSK 是二维调制,而 ASK 是一维,对于同一 SNR,在平均 信号功率、平均噪声功率均相同的情况下,BPSK 的 噪声被分散在两个维度中,因而 BPSK 的抗噪声性能 比 2ASK 更强。 (2)QPSK 在 AWGN 信道下的误码性能 QPSK 的误码率可由 BPSK 推导得到, QPSK 可以视 为两个正交的 BPSK,且两者相互独立。于是有如下 推导过程:
s(t ) Bk e j 2π f k t k
k 0
N 1
式中:Bk 为之前 16QAM 调制所得的第 k 路子信 道中的复输入数据。 由于 OFDM 信号表达形式如同逆离散傅里叶变换 (IDFT),所以可以用计算 IDFT 和 DFT 的方法进行 OFDM 调制和解调。OFDM 信号的实现基于快速傅里叶 变换(FFT),其调制原理[1]如图 11 所示:
图 5.Gray-16QAM 星座图
图 6.Gray-16QAM 与普通 16QAM 的 BER 对比
图 7.SNR=[5dB,10dB,15dB,20dB]时的 16QAM 星座图
判决时比较 r1 和 r2,如果 r1>r2,则判决为 1, 接收正确,反之则误码。此算法与 2FSK 比较判决的 调制解调原理相契合。仿真程序据此设计。 2FSK 误码性能的仿真 2000 次的仿真结果如图 8 所示。从图 8 中可以看出,SNR 达到 13dB 时,基本 可实现无差错数据传输。

PAM、PSK、QAM数字调制解调系统误码性能仿真

PAM、PSK、QAM数字调制解调系统误码性能仿真

数字通信系统传输误码性能仿真(一)摘要:脉冲幅度调制(PAM)、频移键控(PSK)、正交振幅调制(QAM)等数字信号调制解调模式在经典和现代通信中得到广泛应用。

不同调制方式在不同的条件下传输可靠性能不尽相同。

Matlab/Simulink包含多种仿真模块库,可以对各种通信调制方式的调制解调进行仿真,并验证其传输可靠性能。

关键字:通信系统、仿真、PAM、PSK、QAMAbstract: Digital signal modulation and demodulation modes such as pulse amplitude modulation (PAM), frequency shift keying (PSK), quadrature amplitude modulation (QAM)are widely used in classical and modern communication. The transmission reliability of different modulation are different under different conditions. Matlab/Simulink contains a variety of library of simulation modules for various communications modem modulation to simulate and verify its transmission reliability.Keywords: communication systems, simulation, PAM,PSK,QAM0 引言系统仿真是进行协议标准制定、算法分析优化和产品总体设计的重要步骤,对验证算法和理论的设计性能、缩减设计开发时间、降低总体成本具有重要意义。

传统的系统仿真方法主要使用基于C语言等计算机编程语言的方法,工作量大,效率低,仿真程序的可读性、可靠性、可移植性无法达到现代大中型系统的要求。

仿真高斯白噪声信道下QPSK的EbN0与误比特率之间的关系

仿真高斯白噪声信道下QPSK的EbN0与误比特率之间的关系

QPSK调制与解调在MATLAB平台上的实现QPSK即四进制移向键控(Quaternary Phase Shift Keying),它利用载波的四种不同相位来表示数字信息,由于每一种载波相位代表两个比特信息,因此每个四进制码元可以用两个二进制码元的组合来表示。

两个二进制码元中的前一个码元用a表示,后一个码元用b表示。

QPSK信号可以瞧作两个载波正交2PSK信号的合成,下图表示QPSK正交调制器。

由QPSK信号的调制可知,对它的解调可以采用与2PSK信号类似的解调方法进行解调。

解调原理图如下所示,同相支路与正交支路分别采用相干解调方式解调,得到()Q t,经过抽样判决与并/串交换器,将上下支路得到的并行数据恢I t与()复成串行数据。

% 调相法clear allclose allt=[-1:0、01:7-0、01];tt=length(t);x1=ones(1,800);for i=1:ttif (t(i)>=-1 & t(i)<=1) | (t(i)>=5& t(i)<=7);x1(i)=1;else x1(i)=-1;endendt1=[0:0、01:8-0、01];t2=0:0、01:7-0、01;t3=-1:0、01:7、1-0、01;t4=0:0、01:8、1-0、01;tt1=length(t1);x2=ones(1,800);for i=1:tt1if (t1(i)>=0 & t1(i)<=2) | (t1(i)>=4& t1(i)<=8);x2(i)=1;else x2(i)=-1;endendf=0:0、1:1;xrc=0、5+0、5*cos(pi*f);y1=conv(x1,xrc)/5、5;y2=conv(x2,xrc)/5、5;n0=randn(size(t2));f1=1;i=x1、*cos(2*pi*f1*t);q=x2、*sin(2*pi*f1*t1);I=i(101:800);Q=q(1:700);QPSK=sqrt(1/2)、*I+sqrt(1/2)、*Q;QPSK_n=(sqrt(1/2)、*I+sqrt(1/2)、*Q)+n0;n1=randn(size(t2));i_rc=y1、*cos(2*pi*f1*t3);q_rc=y2、*sin(2*pi*f1*t4);I_rc=i_rc(101:800);Q_rc=q_rc(1:700);QPSK_rc=(sqrt(1/2)、*I_rc+sqrt(1/2)、*Q_rc);QPSK_rc_n1=QPSK_rc+n1;figure(1)subplot(4,1,1);plot(t3,i_rc);axis([-1 8 -1 1]);ylabel('a序列');subplot(4,1,2);plot(t4,q_rc);axis([-1 8 -1 1]);ylabel('b序列');subplot(4,1,3);plot(t2,QPSK_rc);axis([-1 8 -1 1]);ylabel('合成序列'); subplot(4,1,4);plot(t2,QPSK_rc_n1);axis([-1 8 -1 1]);ylabel('加入噪声');效果图:% 设定T=1,加入高斯噪声clear allclose all% 调制bit_in = randint(1e3, 1, [0 1]);bit_I = bit_in(1:2:1e3);bit_Q = bit_in(2:2:1e3);data_I = -2*bit_I+1;data_Q = -2*bit_Q+1;data_I1=repmat(data_I',20,1);data_Q1=repmat(data_Q',20,1);for i=1:1e4data_I2(i)=data_I1(i);data_Q2(i)=data_Q1(i);end;f=0:0、1:1;xrc=0、5+0、5*cos(pi*f);data_I2_rc=conv(data_I2,xrc)/5、5;data_Q2_rc=conv(data_Q2,xrc)/5、5;f1=1;t1=0:0、1:1e3+0、9;n0=rand(size(t1));I_rc=data_I2_rc、*cos(2*pi*f1*t1);Q_rc=data_Q2_rc、*sin(2*pi*f1*t1);QPSK_rc=(sqrt(1/2)、*I_rc+sqrt(1/2)、*Q_rc); QPSK_rc_n0=QPSK_rc+n0;% 解调I_demo=QPSK_rc_n0、*cos(2*pi*f1*t1);Q_demo=QPSK_rc_n0、*sin(2*pi*f1*t1);% 低通滤波I_recover=conv(I_demo,xrc);Q_recover=conv(Q_demo,xrc);I=I_recover(11:10010);Q=Q_recover(11:10010);t2=0:0、05:1e3-0、05;t3=0:0、1:1e3-0、1;% 抽样判决data_recover=[];for i=1:20:10000data_recover=[data_recover I(i:1:i+19) Q(i:1:i+19)];end;bit_recover=[];for i=1:20:20000if sum(data_recover(i:i+19))>0data_recover_a(i:i+19)=1;bit_recover=[bit_recover 1];elsedata_recover_a(i:i+19)=-1;bit_recover=[bit_recover -1];endenderror=0;dd = -2*bit_in+1;ddd=[dd'];ddd1=repmat(ddd,20,1);for i=1:2e4ddd2(i)=ddd1(i);endfor i=1:1e3if bit_recover(i)~=ddd(i)error=error+1;endendp=error/1000;figure(1)subplot(2,1,1);plot(t2,ddd2);axis([0 100 -2 2]);title('原序列');subplot(2,1,2);plot(t2,data_recover_a);axis([0 100 -2 2]);title('解调后序列'); 效果图:% 设定T=1, 不加噪声clear allclose all% 调制bit_in = randint(1e3, 1, [0 1]);bit_I = bit_in(1:2:1e3);bit_Q = bit_in(2:2:1e3);data_I = -2*bit_I+1;data_Q = -2*bit_Q+1;data_I1=repmat(data_I',20,1);data_Q1=repmat(data_Q',20,1);for i=1:1e4data_I2(i)=data_I1(i);data_Q2(i)=data_Q1(i);end;t=0:0、1:1e3-0、1;f=0:0、1:1;xrc=0、5+0、5*cos(pi*f);data_I2_rc=conv(data_I2,xrc)/5、5;data_Q2_rc=conv(data_Q2,xrc)/5、5;f1=1;t1=0:0、1:1e3+0、9;I_rc=data_I2_rc、*cos(2*pi*f1*t1);Q_rc=data_Q2_rc、*sin(2*pi*f1*t1);QPSK_rc=(sqrt(1/2)、*I_rc+sqrt(1/2)、*Q_rc);% 解调I_demo=QPSK_rc、*cos(2*pi*f1*t1);Q_demo=QPSK_rc、*sin(2*pi*f1*t1);I_recover=conv(I_demo,xrc);Q_recover=conv(Q_demo,xrc);I=I_recover(11:10010);Q=Q_recover(11:10010);t2=0:0、05:1e3-0、05;t3=0:0、1:1e3-0、1;data_recover=[];for i=1:20:10000data_recover=[data_recover I(i:1:i+19) Q(i:1:i+19)]; end;ddd = -2*bit_in+1;ddd1=repmat(ddd',10,1);for i=1:1e4ddd2(i)=ddd1(i);endfigure(1)subplot(4,1,1);plot(t3,I);axis([0 20 -6 6]);subplot(4,1,2);plot(t3,Q);axis([0 20 -6 6]);subplot(4,1,3);plot(t2,data_recover);axis([0 20 -6 6]); subplot(4,1,4);plot(t,ddd2);axis([0 20 -6 6]);效果图:% QPSK误码率分析SNRindB1=0:2:10;SNRindB2=0:0、1:10;for i=1:length(SNRindB1)[pb,ps]=cm_sm32(SNRindB1(i));smld_bit_err_prb(i)=pb;smld_symbol_err_prb(i)=ps;end;for i=1:length(SNRindB2)SNR=exp(SNRindB2(i)*log(10)/10);theo_err_prb(i)=Qfunct(sqrt(2*SNR)); end;title('QPSK误码率分析');semilogy(SNRindB1,smld_bit_err_prb,'*');axis([0 10 10e-8 1]);hold on;% semilogy(SNRindB1,smld_symbol_err_prb,'o'); semilogy(SNRindB2,theo_err_prb);legend('仿真比特误码率','理论比特误码率'); hold off;function[y]=Qfunct(x)y=(1/2)*erfc(x/sqrt(2));function[pb,ps]=cm_sm32(SNRindB)N=10000;E=1;SNR=10^(SNRindB/10);sgma=sqrt(E/SNR)/2;s00=[1 0];s01=[0 1];s11=[-1 0];s10=[0 -1];for i=1:Ntemp=rand;if (temp<0、25)dsource1(i)=0;dsource2(i)=0;elseif (temp<0、5)dsource1(i)=0;dsource2(i)=1;elseif (temp<0、75)dsource1(i)=1;dsource2(i)=0;elsedsource1(i)=1;dsource2(i)=1;end;end;numofsymbolerror=0;numofbiterror=0;for i=1:Nn=sgma*randn(size(s00));if((dsource1(i)==0)&(dsource2(i)==0))r=s00+n;elseif((dsource1(i)==0)&(dsource2(i)==1)) r=s01+n;elseif((dsource1(i)==1)&(dsource2(i)==0)) r=s10+n;elser=s11+n;end;c00=dot(r,s00);c01=dot(r,s01);c10=dot(r,s10);c11=dot(r,s11);c_max=max([c00 c01 c10 c11]);if (c00==c_max)decis1=0;decis2=0;elseif(c01==c_max)decis1=0;decis2=1;elseif(c10==c_max)decis1=1;decis2=0;elsedecis1=1;decis2=1;end;symbolerror=0;if(decis1~=dsource1(i))numofbiterror=numofbiterror+1;symbolerror=1;end;if(decis2~=dsource2(i))numofbiterror=numofbiterror+1;symbolerror=1;end;if(symbolerror==1)numofsymbolerror=numofsymbolerror+1;end;end;ps=numofsymbolerror/N;pb=numofbiterror/(2*N);效果图:。

QPSK基带系统仿真

QPSK基带系统仿真

白噪声下QPSK基带系统仿真一、实验目的1、信噪比2~14dB,步进2dB。

2、系统误比特率性能<10-4。

二、实验原理四相相移调制(QPSK)是利用载波的四种不同相位差来表征输入的数字信息。

相似的,QPSK基带调制解调把输入的二进制数据信息映射到坐标为()-,1,1-,()1,1,()1,1()--的四个点上,完成调制过程;由于映射之后信号变为复信号,本试验中加的白1,1噪声为复白噪声;接收端,先对加有复白噪声的信号相位进行判决,再对判决后的信号进行逆映射得到二进制数据,与原始数据比较得出误比特率。

三、实验流程图及程序系统程序流程图如图1所示:图1 QPSK 基带系统程序流程图系统程序如下:1、复高斯白噪声function [sig_noise,snr_dB] = fu_awgn (Sig,SNR,Num_signal)L_SNR = 10.^(SNR/10); % 转换为线性信噪比Eb = sum(abs(Sig).^2)/Num_signal; % 每比特的能量N0 = Eb*2/L_SNR; % 噪声功率谱密度noise_R1 = randn(1,length(Sig)); % 实际产生均值为0,方差为1的随机高斯序列,功率谱密度是1noise_R2 = noise_R1-mean(noise_R1); % 让均值再更接近0noise_R3 = noise_R2./std(noise_R2); % 标准差归一化让均值等于0noise_R = noise_R3*sqrt(N0/4); % 使得功率谱密度是N0/2noise_I1 = randn(1,length(Sig)); % 实际产生均值为0,方差为1的随机高斯序列,功率谱密度是1noise_I2 = noise_I1-mean(noise_I1); % 让均值再更接近0noise_I3 = noise_I2./std(noise_I2); % 标准差归一化让均值等于0noise_I = noise_I3*sqrt(N0/4); % 使得功率谱密度是N0/2x = noise_R + j*noise_I; % 生成复噪声sig_noise = Sig+x; % 此时加入的就是Eb/N0snr=sum(abs(Sig).^2)/sum(abs(x).^2);snr_dB=10*log10(snr); % 实际加入的信噪比SNRend2、主程序%% QPSK基带系统clear all;close all;clcPe_bit_check = [];Pe_bit_ideal = [];Pe_symbol_check = [];Pe_symbol_ideal = [];for SNR=2:2:14;%% 产生基带信号Num_signal=1e6;Sig= randsrc(Num_signal,2,[0 1]);%% QPSK映射[a1,b1]=find(Sig(:,1)==0&Sig(:,2)==0); message(a1)=-1-j;[a2,b2]=find(Sig(:,1)==0&Sig(:,2)==1);message(a2)=-1+j;[a3,b3]=find(Sig(:,1)==1&Sig(:,2)==0);message(a3)=1-j;[a4,b4]=find(Sig(:,1)==1&Sig(:,2)==1);message(a4)=1+j;%% 加入复高斯白噪声[Sig_noise,snr_dB] = fu_awgn (message,SNR,Num_signal);%% 判决和逆映射resum=0;total=0;m1=find(angle(Sig_noise)<=pi/2&angle(Sig_noise)>0);remessage(1,m1)=1+j;redata(m1,1)=1;redata(m1,2)=1;m2=find(angle(Sig_noise)>pi/2&angle(Sig_noise)<=pi);remessage(1,m2)=-1+j;redata(m2,1)=0;redata(m2,2)=1;m3=find(angle(Sig_noise)>-pi&angle(Sig_noise)<=-pi/2);remessage(1,m3)=-1-j;redata(m3,1)=0;redata(m3,2)=0;m4=find(angle(Sig_noise)>-pi/2&angle(Sig_noise)<=0);remessage(1,m4)=1-j;redata(m4,1)=1;redata(m4,2)=0;%% 计算误比特率和误符号率[resum,ratio1]=symerr(Sig,redata); %symerr计算错误符号的个数和误符号率resum错误符号的个数ratio 误符号率;beterr用于计算错误比特的个数Pe_bit=resum/(Num_signal*2);Pe_bit_check = [Pe_bit_check,Pe_bit];Pbit=1/2*erfc(sqrt(10.^(SNR/10)/2)); %理论误比特率Pe_bit_ideal = [Pe_bit_ideal,Pbit];% [total,ratio2]=symerr(message,remessage);% Pe_symbol=total/Num_signal;% Pe_symbol_check = [Pe_symbol_check,Pe_symbol];% Psymbol=1-(1-1/2*erfc(sqrt(10.^(snr_dB/10)/2))).^2; %理论误符号率% Pe_symbol_ideal = [Pe_symbol_ideal,Psymbol];endfigure(3)SNR=2:2:14;semilogy(SNR,Pe_bit_check,'-kd',SNR,Pe_bit_ideal,'-r*')legend('QPSK仿真误比特率','QPSK理论误比特率',1);xlabel('信噪比/dB');ylabel('误比特率');axis([2 14 1e-6 1]);四、实验结果图2 QPSK 基带系统误比特曲线五、总结在本实验的映射和逆映射中的对应关系是1映射为1,0映射为-1。

qpsk的ber形式

qpsk的ber形式

qpsk的ber形式一、QPSK调制原理QPSK(Quadrature Phase Shift Keying)是一种数字调制技术,也是一种相位调制技术。

它将数字信号分为两个部分,即实部和虚部,每个部分都进行二进制调制。

在发送端,将这两个二进制码分别映射为正弦波和余弦波的相位偏移量,然后通过载波进行传输。

在接收端,通过解调器对接收到的信号进行解调还原出原始的二进制数据。

二、QPSK的BER公式BER(Bit Error Rate)是指在数字通信中传输过程中出现误码比率。

QPSK的BER公式如下:BER = 0.5 * erfc(sqrt(Eb/N0))其中,erfc表示互补误差函数,Eb表示每比特所需能量(即信噪比),N0表示单边带噪声功率谱密度。

三、影响QPSK BER的因素1. 信道噪声:信道噪声越大,误码率就越高。

2. 星座点数:星座点数决定了可承受的最大误差率。

当星座点数越多时,可以承受更高的误差率。

3. 调制方式:不同的调制方式对误差容忍度不同。

例如,与BPSK相比,QPSK可以容忍更高的误差率。

4. 信号功率:信号功率越高,误码率就越低。

5. 多径效应:多径效应会导致信号的多次反射和干扰,从而影响误码率。

四、QPSK BER的计算方法1. 确定星座点数和调制方式。

2. 计算每比特所需能量Eb:Eb = (A^2 * T)/2其中,A为星座点的振幅,T为每个符号所用时间。

3. 计算单边带噪声功率谱密度N0:N0 = (2 * N * B)/SNR其中,N为噪声功率,B为信道带宽,SNR为信噪比。

4. 根据BER公式计算误码率。

五、QPSK BER仿真实验可以通过Matlab等软件进行QPSK BER仿真实验。

首先生成随机二进制数据,并将其转换成QPSK调制信号。

然后添加高斯白噪声模拟信道传输过程,并在接收端解调还原出原始数据。

最后统计误码率并绘制BER曲线。

通过改变不同参数进行实验可以深入了解QPSK调制的性能表现及其影响因素。

QPSK通信系统性能分析与MATLAB仿真

QPSK通信系统性能分析与MATLAB仿真

QPSK通信系统性能分析与MATLAB仿真QPSK是一种常见的调制方式,广泛应用于数字通信系统中。

在QPSK通信系统中,传输的数据被分为两个相互正交的子载波进行调制,每个子载波可以携带2位二进制数据。

本文将对QPSK通信系统的性能进行分析,并使用MATLAB进行仿真。

首先,我们需要了解QPSK调制的基本原理。

在QPSK中,发送端的数据被分为两个二进制数据流,分别称为I路和Q路。

通过调制器对I路和Q路进行调制生成正交的载波信号,然后进行并行传输。

接收端接收到信号后,通过对两路信号进行解调,并将解调后的数据进行重新组合,得到原始数据。

为了分析QPSK通信系统的性能,我们需要考虑到噪声的影响。

在传输过程中,信号会受到各种噪声的干扰,如加性高斯白噪声。

这些噪声会使得接收信号误码率增加。

我们可以使用误码率(Bit Error Rate)来评估系统的性能,误码率是指发送的比特和接收到的比特不一致的比率。

为了进行性能分析,我们可以进行理论分析和仿真两个步骤。

在理论分析中,我们可以通过理论计算得到系统的误码率曲线。

而在仿真过程中,我们可以通过编写一段MATLAB代码来模拟整个通信系统,然后进行模拟传输并统计误码率。

在仿真过程中,我们首先需要生成发送端的数据流。

这可以通过随机生成0和1的序列来实现。

然后,我们将数据流分为I路和Q路,并对每一路进行调制生成载波信号。

接下来,我们引入噪声,在信号上添加高斯白噪声。

然后,我们将接收到的信号进行解调,并将解调后的数据重新组合。

最后,我们统计误码率和信噪比(Signal-to-Noise Ratio)之间的关系,并绘制性能曲线。

通过MATLAB进行仿真,我们可以调整信噪比,并观察误码率的变化。

通过仿真实验,我们可以得到系统在不同信噪比下的性能表现。

通过比较理论结果和仿真结果,我们可以验证我们的分析是否准确。

总结起来,QPSK通信系统的性能分析是一个重要的研究课题。

通过理论分析和MATLAB仿真,我们可以得到系统在不同信噪比下的性能表现,并且验证我们的分析是否准确。

QPSK误码率仿真分析

QPSK误码率仿真分析

[键入文字]通信工程专业《通信原理》课程设计题目 QPSK的误码率仿真分析学生姓名谭夕林学号 **********所在院(系)陕西理工学院物理与电信工程学院专业班级通信工程专业 1102 班指导教师魏瑞完成地点陕西理工学院物理与电信工程学院实验室2014年 3 月 12 日通信工程专业课程设计任务书院(系) 物理与电信工程学院专业班级通信工程专业1102班学生姓名谭夕林一、课程设计题目 QPSK的误码率仿真分析二、课程设计工作自 2014 年 2 月 24 日起至 2014 年 3 月 16 日止三、课程设计进行地点: 物理与电信工程学院实验室四、课程设计的内容要求:利用仿真软件等工具,结合所学知识和各渠道资料,对QPSK在高斯通道下的误码率进行研究分析指导教师魏瑞系(教研室)通信工程系接受任务开始执行日期2014年2月24日学生签名谭夕林QPSK的误码率仿真分析谭夕林陕西理工学院物理与电信工程学院通信1102班,陕西汉中723003)指导教师:魏瑞【摘要】为实现QPSK应用到无线通信中,该文对QPSK系统性能进行了理论研究。

介绍了QPSK调制解调原理,对高斯白噪声信道的系统性能进行了研究,分析对比了在高斯白噪声信道下的系统误码性能。

为基于副载波QPSK无线激光通信系统的研究奠定了理论基础。

使用MATLAB中M语言完成QPSK的蒙特卡罗仿真,得出在加性高斯白噪声的信道下,传输比特错误率以及符号错误率。

并将比特错误率与理论值相比较,并得出关系曲线。

使用simulink搭建在加性高斯白噪声信道下的QPSK调制解调系统,其中解调器使用相关器接收机。

并计算传输序列的比特错误率。

通过多次运行仿真得到比特错误率与信噪比之间的关系。

【关键词】: QPSK,误码率,仿真,星座图【中图分类号】 TN702 [文献标志码] AQPSK BER simulation analysisTan Xilin(Grade11,Class2,Major of Communication Engineering,School of Physics and telecommunication Engineering of Shaanxi University of Technology, Hanzhong 723003,China)Tutor:Wei Rui[Abstract]For the application of the QPSK (Phase-Shift-Keying) to the wireless laser communication, this paper emphasizes the system of QPSK's performance, theoretically. In the paper, the principle of the QPSK's modulation and demodulation were introduced in brief and the performance of the system at white Gaussian noise (AWGN) channel was also analyzed carefully. The above results provide the theoretical foundation for the wireless laser communication system based on the QPSK with e the MATLAB language to complete Monte Carlo simulation of QPSK, and to obtain the transmission sequence bit error rate and symbol error rate in the additive white Gaussian noise channel, comparing it with the theoretical value, then get curve. The second aspect is to learn how to use Simulink and the functions and principles of various modules. Then we use Simulink to create the model of QPSK through additive white Gaussian noise channel. And take the advantage of the Correlator receiver to complete the operation of demodulation. Then calculate the transmission sequence bit error rate. By running the simulation repeatedly, we can get the relationship between the bit error rate and SNR.Keywords: QPSK, BER, simulation, constellation目录摘要 (3)Abstract (4)一绪论 (6)1.1 课题背景及仿真 (6)1.1.1QPSK系统的应用背景简介 (6)1.1.2QPSK实验仿真的意义 (6)1.1.3仿真平台和仿真内容 (6)二系统实现框图和分析 (7)2.1QPSK调制部分 (7)2.2QPSK解调部分 (8)三QPSK特点及应用领域 (9)3.1QPSK特点 (9)3.2误码率 (10)3.3QPSK时域信号 (10)3.4扩充认知QPSK-OQPSK (10)3.5QPSK的应用领域 (11)四使用simulink搭建QPSK调制解调系统 (12)4.1信源产生 (12)4.2QPSK系统理论搭建 (13)五仿真模型参数设置及结果 (15)5.1仿真附图及参数设置 (15)5.2仿真结果 (16)5.3误码率曲线程序及其仿真结果 (17)六仿真结果分析 (19)七总结与展望 (20)致谢 (21)参考文献 (21)一.绪论1.1课题背景及仿真:1.1.1QPSK系统的应用背景简介QPSK是英文Quadrature Phase Shift Keying的缩略语简称,意为正交相移键控,是一种数字调制方式。

误码率和信噪比

误码率和信噪比

误码率和信噪比摘要:比特误码率(RBE)是衡量一个通信系统优劣的重要指标之一。

对如何利用System View仿真软件测试和生成一个通信系统的RBE测试曲线的实例进行了研究,并对此次仿真过程中的关键问题加以论述。

关键词:比特误码率;BCH码;卷积码;仿真2误码率测试仿真原理及其仿真的关键问题2.1误码率测试仿真原理在仿真系统中,信道模拟成一个高斯噪声信道(AWGN),输入信号经过AWGN信道后在输出端进行硬判断,当带有噪声的接收信号大于判决电平时,输出判为1,此时的原参照信号如果为0,则产生误码。

为了便于对各个系统进行比较,通常将信噪比用每比特所携带的能量除以噪声功率谱密度来表示,即Eb/N0,对基带信号,定义信噪比为:这里的A为信号的幅度(通常取归一化值),R=1/T是信号的数据率。

在仿真过程中,为了能得到一个通信系统的RBE曲线,通常需要在信号源或噪声源后边加入一个增益图符来控制信噪比的大小,System View仿真时应用此种方法(在噪声源后面加入增益图符)。

受控的增益图符需要在系统菜单中设置全局关联变量,以便每一个测试循环完成后将系统参数改变到下一个信噪比值,全局关联变量的设置方法在下述内容中介绍。

2.2全局关联变量的设置当一个高斯噪声信道的RBE测试模型设置基本完毕后,并不能绘出完整正确的RBE/RSN 曲线,还必须将噪声增益控制与系统循环次数进行全局变量关联,使信道的信噪比(RSN)由0 dB开始逐步加大,即噪声逐步减小,噪声每次减小的步长与循环次数相关。

设置的方法是:单击System View主菜单中的“Tools”选项,选择“Globa l Parameter Links”,这时出现如图1所示参数设置栏,在“SelectSystem T oken”中选择要关联的全局变量,图中选择了Gain 图符,如果设定每次循环后将信噪比递增1 dB,即噪声减小1 dB,则应在算术运算关系定义栏“Define Algebraic Relation F[Gi,Vi]”内将F [Gi,Vi]的值设置为-c1,这里c1为系统变量“Current System Loop”的系统循环次数。

仿真高斯白噪声信道下QPSK的EbN0与误比特率之间的关系知识分享

仿真高斯白噪声信道下QPSK的EbN0与误比特率之间的关系知识分享

仿真高斯白噪声信道下Q P S K的E b N0与误比特率之间的关系QPSK调制与解调在MATLAB平台上的实现QPSK即四进制移向键控(Quaternary Phase Shift Keying),它利用载波的四种不同相位来表示数字信息,由于每一种载波相位代表两个比特信息,因此每个四进制码元可以用两个二进制码元的组合来表示。

两个二进制码元中的前一个码元用a表示,后一个码元用b表示。

QPSK信号可以看作两个载波正交2PSK信号的合成,下图表示QPSK正交调制器。

由QPSK信号的调制可知,对它的解调可以采用与2PSK信号类似的解调方法进行解调。

解调原理图如下所示,同相支路和正交支路分别采用相干解调方式解调,得到()I t和()Q t,经过抽样判决和并/串交换器,将上下支路得到的并行数据恢复成串行数据。

% 调相法clear allclose allt=[-1:0.01:7-0.01];tt=length(t);x1=ones(1,800);for i=1:ttif (t(i)>=-1 & t(i)<=1) | (t(i)>=5& t(i)<=7);x1(i)=1;else x1(i)=-1;endendt1=[0:0.01:8-0.01];t2=0:0.01:7-0.01;t3=-1:0.01:7.1-0.01;t4=0:0.01:8.1-0.01;tt1=length(t1);x2=ones(1,800);for i=1:tt1if (t1(i)>=0 & t1(i)<=2) | (t1(i)>=4& t1(i)<=8); x2(i)=1;else x2(i)=-1;endendf=0:0.1:1;xrc=0.5+0.5*cos(pi*f);y1=conv(x1,xrc)/5.5;y2=conv(x2,xrc)/5.5;n0=randn(size(t2));f1=1;i=x1.*cos(2*pi*f1*t);q=x2.*sin(2*pi*f1*t1);I=i(101:800);Q=q(1:700);QPSK=sqrt(1/2).*I+sqrt(1/2).*Q;QPSK_n=(sqrt(1/2).*I+sqrt(1/2).*Q)+n0;n1=randn(size(t2));i_rc=y1.*cos(2*pi*f1*t3);q_rc=y2.*sin(2*pi*f1*t4);I_rc=i_rc(101:800);Q_rc=q_rc(1:700);QPSK_rc=(sqrt(1/2).*I_rc+sqrt(1/2).*Q_rc);QPSK_rc_n1=QPSK_rc+n1;figure(1)subplot(4,1,1);plot(t3,i_rc);axis([-1 8 -1 1]);ylabel('a序列');subplot(4,1,2);plot(t4,q_rc);axis([-1 8 -1 1]);ylabel('b序列');subplot(4,1,3);plot(t2,QPSK_rc);axis([-1 8 -1 1]);ylabel('合成序列'); subplot(4,1,4);plot(t2,QPSK_rc_n1);axis([-1 8 -1 1]);ylabel('加入噪声'); 效果图:% 设定 T=1,加入高斯噪声clear allclose all% 调制bit_in = randint(1e3, 1, [0 1]); bit_I = bit_in(1:2:1e3);bit_Q = bit_in(2:2:1e3);data_I = -2*bit_I+1;data_Q = -2*bit_Q+1;data_I1=repmat(data_I',20,1); data_Q1=repmat(data_Q',20,1); for i=1:1e4data_I2(i)=data_I1(i);data_Q2(i)=data_Q1(i);end;f=0:0.1:1;xrc=0.5+0.5*cos(pi*f);data_I2_rc=conv(data_I2,xrc)/5.5;data_Q2_rc=conv(data_Q2,xrc)/5.5;f1=1;t1=0:0.1:1e3+0.9;n0=rand(size(t1));I_rc=data_I2_rc.*cos(2*pi*f1*t1);Q_rc=data_Q2_rc.*sin(2*pi*f1*t1);QPSK_rc=(sqrt(1/2).*I_rc+sqrt(1/2).*Q_rc);QPSK_rc_n0=QPSK_rc+n0;% 解调I_demo=QPSK_rc_n0.*cos(2*pi*f1*t1);Q_demo=QPSK_rc_n0.*sin(2*pi*f1*t1);% 低通滤波I_recover=conv(I_demo,xrc);Q_recover=conv(Q_demo,xrc);I=I_recover(11:10010);Q=Q_recover(11:10010);t2=0:0.05:1e3-0.05;t3=0:0.1:1e3-0.1;% 抽样判决data_recover=[];for i=1:20:10000data_recover=[data_recover I(i:1:i+19) Q(i:1:i+19)]; end;bit_recover=[];for i=1:20:20000if sum(data_recover(i:i+19))>0data_recover_a(i:i+19)=1;bit_recover=[bit_recover 1];elsedata_recover_a(i:i+19)=-1;bit_recover=[bit_recover -1];endenderror=0;dd = -2*bit_in+1;ddd=[dd'];ddd1=repmat(ddd,20,1);for i=1:2e4ddd2(i)=ddd1(i);endfor i=1:1e3if bit_recover(i)~=ddd(i)error=error+1;endendp=error/1000;figure(1)subplot(2,1,1);plot(t2,ddd2);axis([0 100 -2 2]);title('原序列');subplot(2,1,2);plot(t2,data_recover_a);axis([0 100 -2 2]);title('解调后序列'); 效果图:% 设定 T=1, 不加噪声clear allclose all% 调制bit_in = randint(1e3, 1, [0 1]);bit_I = bit_in(1:2:1e3);bit_Q = bit_in(2:2:1e3);data_I = -2*bit_I+1;data_Q = -2*bit_Q+1;data_I1=repmat(data_I',20,1);data_Q1=repmat(data_Q',20,1);for i=1:1e4data_I2(i)=data_I1(i);data_Q2(i)=data_Q1(i);end;t=0:0.1:1e3-0.1;f=0:0.1:1;xrc=0.5+0.5*cos(pi*f);data_I2_rc=conv(data_I2,xrc)/5.5;data_Q2_rc=conv(data_Q2,xrc)/5.5;f1=1;t1=0:0.1:1e3+0.9;I_rc=data_I2_rc.*cos(2*pi*f1*t1);Q_rc=data_Q2_rc.*sin(2*pi*f1*t1); QPSK_rc=(sqrt(1/2).*I_rc+sqrt(1/2).*Q_rc); % 解调I_demo=QPSK_rc.*cos(2*pi*f1*t1);Q_demo=QPSK_rc.*sin(2*pi*f1*t1);I_recover=conv(I_demo,xrc);Q_recover=conv(Q_demo,xrc);I=I_recover(11:10010);Q=Q_recover(11:10010);t2=0:0.05:1e3-0.05;t3=0:0.1:1e3-0.1;data_recover=[];for i=1:20:10000data_recover=[data_recover I(i:1:i+19) Q(i:1:i+19)]; end;ddd = -2*bit_in+1;ddd1=repmat(ddd',10,1);for i=1:1e4ddd2(i)=ddd1(i);endfigure(1)subplot(4,1,1);plot(t3,I);axis([0 20 -6 6]);subplot(4,1,2);plot(t3,Q);axis([0 20 -6 6]);subplot(4,1,3);plot(t2,data_recover);axis([0 20 -6 6]); subplot(4,1,4);plot(t,ddd2);axis([0 20 -6 6]);效果图:% QPSK误码率分析SNRindB1=0:2:10;SNRindB2=0:0.1:10;for i=1:length(SNRindB1)[pb,ps]=cm_sm32(SNRindB1(i));smld_bit_err_prb(i)=pb;smld_symbol_err_prb(i)=ps;end;for i=1:length(SNRindB2)SNR=exp(SNRindB2(i)*log(10)/10);theo_err_prb(i)=Qfunct(sqrt(2*SNR));end;title('QPSK误码率分析');semilogy(SNRindB1,smld_bit_err_prb,'*');axis([0 10 10e-8 1]);hold on;% semilogy(SNRindB1,smld_symbol_err_prb,'o'); semilogy(SNRindB2,theo_err_prb);legend('仿真比特误码率','理论比特误码率'); hold off;function[y]=Qfunct(x)y=(1/2)*erfc(x/sqrt(2));function[pb,ps]=cm_sm32(SNRindB)N=10000;E=1;SNR=10^(SNRindB/10);sgma=sqrt(E/SNR)/2;s00=[1 0];s01=[0 1];s11=[-1 0];s10=[0 -1];for i=1:Ntemp=rand;if (temp<0.25)dsource1(i)=0;dsource2(i)=0;elseif (temp<0.5)dsource1(i)=0;dsource2(i)=1;elseif (temp<0.75)dsource1(i)=1;dsource2(i)=0;elsedsource1(i)=1;dsource2(i)=1;end;end;numofsymbolerror=0;numofbiterror=0;for i=1:Nn=sgma*randn(size(s00));if((dsource1(i)==0)&(dsource2(i)==0))r=s00+n;elseif((dsource1(i)==0)&(dsource2(i)==1)) r=s01+n;elseif((dsource1(i)==1)&(dsource2(i)==0)) r=s10+n;elser=s11+n;end;c00=dot(r,s00);c01=dot(r,s01);c10=dot(r,s10);c11=dot(r,s11);c_max=max([c00 c01 c10 c11]);if (c00==c_max)decis1=0;decis2=0;elseif(c01==c_max)decis1=0;decis2=1;elseif(c10==c_max)decis1=1;decis2=0;elsedecis1=1;decis2=1;end;symbolerror=0;if(decis1~=dsource1(i))numofbiterror=numofbiterror+1;symbolerror=1;end;if(decis2~=dsource2(i))numofbiterror=numofbiterror+1;symbolerror=1;end;if(symbolerror==1)numofsymbolerror=numofsymbolerror+1; end;end;ps=numofsymbolerror/N;pb=numofbiterror/(2*N);效果图:。

QPSK误码率仿真分析要点

QPSK误码率仿真分析要点

[键入文字]通信工程专业《通信原理》课程设计题目 QPSK的误码率仿真分析学生姓名谭夕林学号 1113024060所在院(系)陕西理工学院物理与电信工程学院专业班级通信工程专业 1102 班指导教师魏瑞完成地点陕西理工学院物理与电信工程学院实验室2014年 3 月 12 日通信工程专业课程设计任务书院(系) 物理与电信工程学院专业班级通信工程专业1102班学生姓名谭夕林一、课程设计题目 QPSK的误码率仿真分析二、课程设计工作自 2014 年 2 月 24 日起至 2014 年 3 月 16 日止三、课程设计进行地点: 物理与电信工程学院实验室四、课程设计的内容要求:利用仿真软件等工具,结合所学知识和各渠道资料,对QPSK在高斯通道下的误码率进行研究分析指导教师魏瑞系(教研室)通信工程系接受任务开始执行日期2014年2月24日学生签名谭夕林QPSK的误码率仿真分析谭夕林陕西理工学院物理与电信工程学院通信1102班,陕西汉中723003)指导教师:魏瑞【摘要】为实现QPSK应用到无线通信中,该文对QPSK系统性能进行了理论研究。

介绍了QPSK调制解调原理,对高斯白噪声信道的系统性能进行了研究,分析对比了在高斯白噪声信道下的系统误码性能。

为基于副载波QPSK无线激光通信系统的研究奠定了理论基础。

使用MATLAB中M语言完成QPSK的蒙特卡罗仿真,得出在加性高斯白噪声的信道下,传输比特错误率以及符号错误率。

并将比特错误率与理论值相比较,并得出关系曲线。

使用simulink搭建在加性高斯白噪声信道下的QPSK调制解调系统,其中解调器使用相关器接收机。

并计算传输序列的比特错误率。

通过多次运行仿真得到比特错误率与信噪比之间的关系。

【关键词】: QPSK,误码率,仿真,星座图【中图分类号】 TN702 [文献标志码] AQPSK BER simulation analysisTan Xilin(Grade11,Class2,Major of Communication Engineering,School of Physics and telecommunication Engineering of Shaanxi University of Technology, Hanzhong 723003,China)Tutor:Wei Rui[Abstract]For the application of the QPSK (Phase-Shift-Keying) to the wireless laser communication, this paper emphasizes the system of QPSK's performance, theoretically. In the paper, the principle of the QPSK's modulation and demodulation were introduced in brief and the performance of the system at white Gaussian noise (AWGN) channel was also analyzed carefully. The above results provide the theoretical foundation for the wireless laser communication system based on the QPSK with e the MATLAB language to complete Monte Carlo simulation of QPSK, and to obtain the transmission sequence bit error rate and symbol error rate in the additive white Gaussian noise channel, comparing it with the theoretical value, then get curve. The second aspect is to learn how to use Simulink and the functions and principles of various modules. Then we use Simulink to create the model of QPSK through additive white Gaussian noise channel. And take the advantage of the Correlator receiver to complete the operation of demodulation. Then calculate the transmission sequence bit error rate. By running the simulation repeatedly, we can get the relationship between the bit error rate and SNR.Keywords: QPSK, BER, simulation, constellation目录摘要 (3)Abstract (4)一绪论 (6)1.1 课题背景及仿真 (6)1.1.1QPSK系统的应用背景简介 (6)1.1.2QPSK实验仿真的意义 (6)1.1.3仿真平台和仿真内容 (6)二系统实现框图和分析 (7)2.1QPSK调制部分 (7)2.2QPSK解调部分 (8)三QPSK特点及应用领域 (9)3.1QPSK特点 (9)3.2误码率 (10)3.3QPSK时域信号 (10)3.4扩充认知QPSK-OQPSK (10)3.5QPSK的应用领域 (11)四使用simulink搭建QPSK调制解调系统 (12)4.1信源产生 (12)4.2QPSK系统理论搭建 (13)五仿真模型参数设置及结果 (15)5.1仿真附图及参数设置 (15)5.2仿真结果 (16)5.3误码率曲线程序及其仿真结果 (17)六仿真结果分析 (19)七总结与展望 (20)致谢 (21)参考文献 (21)一.绪论1.1课题背景及仿真:1.1.1QPSK系统的应用背景简介QPSK是英文Quadrature Phase Shift Keying的缩略语简称,意为正交相移键控,是一种数字调制方式。

通信原理、现代通信技术-QPSK仿真报告

通信原理、现代通信技术-QPSK仿真报告

《通信原理》实验课程课程实验报告一、实验要求QPSK调制仿真与分析使用matlab仿真实现QPSK相干调制与解调,要求:1)调制载波中心频率为5MHz,二进制数据比特率为2Mbps,基带信号波形采用滚降系数为0.4的平方根升余弦滤波器,画出4个载波周期I、Q调制分量的时域波形和对应的二进制码。

2)画出基带|、Q信号和已调信号的频谱。

3)通过AWGN信道,Eb/N0在0到20dB之间变化,画出误比特率曲线,并和理论误比特率进行对比;4)画出Eb/N0分别为5dB和10dB时的星座图;二、实验环境软件: MATLAB R2018a三、实验原理1、四进制相移键控(QPSK)的载波信号有四种可能的离散相位状态,每个载波相位携带两个二进制码元。

双bite码元与载波相位的常见对应关系有A\B两种方式。

双比特码元载波相位A方式B方式00 π-3π/410 -π/2 -π/411 0 π/401 π/2 3π/4B方式的另一种表示:B方式的QPSK信号的正交调制原理如下图。

公式有:式中,同相分量,2、误比特率与信噪比信噪比SNR=10lg(Ps/Pn),其中Ps和Pn分别代表信号和噪声的有效功率Eb/N0为比特信噪比。

显然,信噪比越大,信号的误码率越小。

3、星座图数字通信系统中,每个符号间隔输出一个符号,对应一个信号波形。

M进制数字通信系统在发送端需要设计出M种不同的信号。

如前所述,信号s;()可以通过矢量空间分析器得到矢量,这样M个能量信号波形就可映射为N维空间中的M个点。

将所对应的N维空间中的M个点的集合称为M进制信号的星座图,或称为信号空间图,或称为信号矢量图。

相对于前面介绍的一般信号波形,数字信号波形一般限定在一个符号间隔内,二进制数字信号限定在0≤1≤T,多进制数字信号限定时间在0≤1≤T。

四、实验设计与运行结果首先声明:因为题目要求的频率过高,电脑配置不足,每次调制用时过长,先将所有的数据等比例缩小,如调制载波中心频率5MHz→5Hz,二进制数据比特率2Mbps →2bps。

qpsk调制在高斯信道下误码率仿 -回复

qpsk调制在高斯信道下误码率仿 -回复

qpsk调制在高斯信道下误码率仿 -回复QPSK调制在高斯信道下误码率仿真引言:无线通信领域中,对信号进行调制是一种常见的技术手段,常见的调制方式有正交幅度调制(QAM),正交频分复用(OFDM)等。

QPSK 调制是其中一种常用的调制方式,它可以在给定信号带宽的情况下实现更高的数据传输速率。

在实际的通信系统中,信道的噪声和干扰会引起误码率的增加。

因此,对QPSK调制在高斯信道下的误码率进行仿真研究,对于优化和设计无线通信系统具有重要的意义。

一、问题定义在高斯信道下,QPSK调制技术,信号传输过程中以下问题需要被回答:1. QPSK调制的原理及优势;2. 高斯信道的特点;3. 误码率的定义;4. 误码率与信噪比之间的关系;5. QPSK调制在高斯信道下的误码率的仿真。

二、QPSK调制的原理及优势QPSK调制是基于正交滤波的技术,将输入比特流分成两个并行的比特流,分别用正弦波和余弦波进行调制,然后合并成一个复合信号进行传输。

它的优势在于可以在给定信号带宽下实现较高的数据传输速率,同时具有较好的抗噪声干扰能力。

三、高斯信道的特点高斯信道是一种理想化的信道模型,它的噪声服从高斯分布。

高斯分布是一种概率分布函数,具有均值为0和方差为σ^2的特点。

在高斯信道中,噪声对信号的影响呈现为增加在信号上的高斯噪声。

四、误码率的定义误码率是衡量数据传输过程中发生错误的概率,通常用比特错误率或码字错误率来表示。

比特错误率指的是接收的比特流中发生错误的比特数占总比特数的比例,码字错误率指的是接收到的码字中发生错误的码字数占总码字数的比例。

五、误码率与信噪比之间的关系信噪比是衡量信号与噪声干扰之间关系的一个指标,它定义为信号的功率与噪声功率之比。

误码率与信噪比之间存在一定的关系,通常是一个对数函数的关系。

随着信噪比的增加,误码率会逐渐减小,即传输的误码率随着信噪比的增加而改善。

当信噪比较小时,误码率可能会很高,导致接收信号的质量较差。

QPSK抗噪声性能干扰仿真

QPSK抗噪声性能干扰仿真

Q P S K抗噪声性能干扰仿真-CAL-FENGHAI-(2020YEAR-YICAI)_JINGBIAN通信系统综合设计题目 QPSK抗噪声性能仿真摘要基于MATLAB的调制解调方案,包括串并转换、电平转换、载波调制、信号合成、相干解调、抽样判决,和并串转换一系列系统的设计。

对QPSK的星座图和调制解调进行了仿真,并对系统性能进行了分析,进而证明QPSK调制技术的优越性。

仿真QPSK系统通过AWGN信道的误符号率(SER)和误比特率(BER),发送端采用GRAY编码映射,基带脉冲采用矩形脉冲,每个脉冲抽样点数为8。

四相相移调制是利用载波的四种不同相位差来表征输入的数字信息,是四进制移相键控。

QPSK是在M=4时的调相技术,它规定了四种载波相位,分别为45°,135°,225°,315°,调制器输入的数据是二进制数字序列,为了能和四进制的载波相位配合起来,则需要把二进制数据变换为四进制数据,这就是说需要把二进制数字序列中每两个比特分成一组,共有四种组合,即00,01,10,11,其中每一组称为双比特码元。

每一个双比特码元是由两位二进制信息比特组成,它们分别代表四进制四个符号中的一个符号。

QPSK中每次调制可传输2个信息比特,这些信息比特是通过载波的四种相位来传递的。

解调器根据星座图及接收到的载波信号的相位来判断发送端发送的信息比特,进而分析QPSK误符号率和误比特率。

关键词:QPSK 调制解调相干解调格雷码 MATLAB仿真误比特率Abstractthe article will introduce the QPSK modulation and demodulation principle, then proposed one kind based on the MATLAB modulation and demodulation of the program, including the string and the conversion, conversion, carrier modulation, signal synthesis, coherent demodulation, sample sentences and string conversion, and a series of system design, the QPSK constellation diagram and the modulation and demodulation of the simulation, and the SER&BER of the system are analyzed, and then proved the superiority of QPSK modulation technology.Keyword: QPSK Modulation and Demodulation Coherent Demodulation Gray CodeMatlab modulation Symbol Error Rate目录一、设计的目的和意义 01.1 课题背景 01.2 课题研究现状 01.3 研究目的和意义 (1)1.4 各章节分布 (1)二、设计原理 (3)2.1 4PSK信号的产生与解调原理介绍 (3)2.1.1 相移键控系统概述 (3)2.1.2 QPSK信号的产生 (4)2.2 QPSK调制与解调的软件实现 (9)2.2.1 SIMULINK功能介绍 (9)三、详细设计步骤 (10)3.1 M文件实现 (10)3.1.1 QPSK抗噪声性能仿真的详细设计步骤 (12)3.2 SIMULINK实现QPSK抗噪声性能仿真 (13)四、设计结果及分析 (16)4.1 M文件仿真分析 (16)4.1.1 QPSK抗噪声性能仿真源程序截图: (16)4.2 SIMULINK仿真分析 (15)4.2.1 调用Simulink中的ex2的脚本源程序 (15)五、心得体会 (16)参考文献 (16)一、设计的目的和意义1.1 课题背景在现代通信领域里,随着人民生活水平的提高,对于通信的质量及效率有着明显的要求,尤其是近几年,我国迅速步入了全民”3G”时代,通信业务需求的快速增长,高效的调制解调技术已经成为研究和发展的方向。

QPSK和OQPSK的原理以及仿真实例

QPSK和OQPSK的原理以及仿真实例

目录Project Seven报告 ........................................................................ 错误!未定义书签。

说明部分........................................................................................ 错误!未定义书签。

1. 理论知识 (1)1.1 QPSK的调制原理 (1)1.2 OQPSK的调制原理 (2)1.3 QPSK信号的平均误比特率 (4)2. 编程实现和仿真结果 (5)3. 仿真结论 (17)4. 参考文献 (19)1. 理论知识1.1 QPSK 的调制原理四相相移键控(QPSK )又名四进制移相键控,该信号的正弦载波有四个可能的离散相位状态,每个载波相位携带2个二进制符号,其信号的表示为)cos()(i c i t w A t s θ+ 4,3,2,1=i ST t ≤≤0θi 为正弦载波的相位,有四种可能状态:θi 为π/4、3π/4、5π/4、7π/4,此初始相位为π/4的QPSK 信号的矢量图如图1所示。

图1 QPSK 信号的矢量图下面分析QPSK 信号的产生。

将信号表达式进行改写)cos()(i c i t w A t s θ+)sin sin cos (cos t w t w A c i c i θθ-=若θi 为π/4、3π/4、5π/4、7π/4,,则21sin ;21cos ±=±=i i θθ于是,信号表达式可写成]sin )(cos )([2)(t w t Q t w t I At s c c i -=1)(;1)(±=±=t Q t I由此可得到QPSK 调制的产生方法。

图2 QPSK实现框图由框图可见,两路2PSK信号分别调至在相互正交的载波上,这也是QPSK 信号被称为正交载波调制的原因。

试证明psk相干解调的误比特率

试证明psk相干解调的误比特率

试证明psk相干解调的误比特率相干解调是一种常见的调制解调技术,常用于数字通信中。

其中,相移键控(PSK)调制是一种广泛应用的数字调制技术,它通过对载波的相位进行离散改变来表示数字信息。

误比特率(Bit Error Rate,BER)是衡量通信系统性能好坏的重要指标之一。

它表示在传输过程中,接收端在比特级别上出错的概率。

因此,对PSK相干解调的误比特率进行分析,有助于我们了解其性能优劣。

首先,我们需要了解PSK调制的基本原理。

PSK调制中,数字信息被映射到一组离散的相位状态。

对于2PSK,即二进制相移键控,常用的相位状态为0和π。

对于MPSK,常用的相位状态为0、(2π/M)、(4π/M)、...、((2π(M-1))/M)。

在接收端进行相干解调时,需要对接收到的信号进行相位解调,并判断相位状态以获得数字信息。

解调时,接收到的信号与一个已知的相位参考信号进行相乘,然后经过低通滤波器进行滤波,得到解调后的基带信号。

通过比较解调后的信号与相位状态的差距,可以判断出接收到的数字信息。

接下来,我们来推导PSK相干解调的误比特率。

假设发送端发送的数字信息为“0”,接收端接收到的信号为s(t),幅度为A,相位为θ。

解调后的基带信号为r(t)。

我们知道,接收到的信号与参考信号的相乘结果可以表示为:r(t) = Acos(θ)cos(2πf_ct) - Asin(θ)sin(2πf_ct)可以将其转化为:r(t) = (Acos(θ)cos(2πf_ct) +Asin(θ)sin(2πf_ct))cos(2πf_ct) - (Acos(θ)sin(2πf_ct) - Asin(θ)cos(2πf_ct))sin(2πf_ct)进一步简化为:r(t) = Acos(θ-2πf_ct)假设接收到的信号存在噪声,噪声可以表示为n(t)。

那么接收到的带噪声的信号可以表示为:x(t) = Acos(θ-2πf_ct) + n(t)我们假设噪声n(t)是均值为0、方差为N0/2的高斯噪声。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

QPSK调制与解调在MATLAB平台上的实现QPSK即四进制移向键控(Quaternary Phase Shift Keying),它利用载波的四种不同相位来表示数字信息,由于每一种载波相位代表两个比特信息,因此每个四进制码元可以用两个二进制码元的组合来表示。

两个二进制码元中的前一个码元用a表示,后一个码元用b表示。

QPSK信号可以看作两个载波正交2PSK信号的合成,下图表示QPSK正交调制器。

由QPSK信号的调制可知,对它的解调可以采用与2PSK信号类似的解调方法进行解调。

解调原理图如下所示,同相支路和正交支路分别采用相干解调方式解调,得到()I t和()Q t,经过抽样判决和并/串交换器,将上下支路得到的并行数据恢复成串行数据。

% 调相法clear allclose allt=[-1:0.01:7-0.01];tt=length(t);x1=ones(1,800);for i=1:ttif (t(i)>=-1 & t(i)<=1) | (t(i)>=5& t(i)<=7);x1(i)=1;else x1(i)=-1;endendt1=[0:0.01:8-0.01];t2=0:0.01:7-0.01;t3=-1:0.01:7.1-0.01;t4=0:0.01:8.1-0.01;tt1=length(t1);x2=ones(1,800);for i=1:tt1if (t1(i)>=0 & t1(i)<=2) | (t1(i)>=4& t1(i)<=8); x2(i)=1;else x2(i)=-1;endendf=0:0.1:1;xrc=0.5+0.5*cos(pi*f);y1=conv(x1,xrc)/5.5;y2=conv(x2,xrc)/5.5;n0=randn(size(t2));f1=1;i=x1.*cos(2*pi*f1*t);q=x2.*sin(2*pi*f1*t1);I=i(101:800);Q=q(1:700);QPSK=sqrt(1/2).*I+sqrt(1/2).*Q;QPSK_n=(sqrt(1/2).*I+sqrt(1/2).*Q)+n0;n1=randn(size(t2));i_rc=y1.*cos(2*pi*f1*t3);q_rc=y2.*sin(2*pi*f1*t4);I_rc=i_rc(101:800);Q_rc=q_rc(1:700);QPSK_rc=(sqrt(1/2).*I_rc+sqrt(1/2).*Q_rc);QPSK_rc_n1=QPSK_rc+n1;figure(1)subplot(4,1,1);plot(t3,i_rc);axis([-1 8 -1 1]);ylabel('a序列');subplot(4,1,2);plot(t4,q_rc);axis([-1 8 -1 1]);ylabel('b序列');subplot(4,1,3);plot(t2,QPSK_rc);axis([-1 8 -1 1]);ylabel('合成序列'); subplot(4,1,4);plot(t2,QPSK_rc_n1);axis([-1 8 -1 1]);ylabel('加入噪声'); 效果图:% 设定 T=1,加入高斯噪声clear allclose all% 调制bit_in = randint(1e3, 1, [0 1]);bit_I = bit_in(1:2:1e3);bit_Q = bit_in(2:2:1e3);data_I = -2*bit_I+1;data_Q = -2*bit_Q+1;data_I1=repmat(data_I',20,1);data_Q1=repmat(data_Q',20,1);for i=1:1e4data_I2(i)=data_I1(i);data_Q2(i)=data_Q1(i);end;f=0:0.1:1;xrc=0.5+0.5*cos(pi*f);data_I2_rc=conv(data_I2,xrc)/5.5;data_Q2_rc=conv(data_Q2,xrc)/5.5;f1=1;t1=0:0.1:1e3+0.9;n0=rand(size(t1));I_rc=data_I2_rc.*cos(2*pi*f1*t1);Q_rc=data_Q2_rc.*sin(2*pi*f1*t1);QPSK_rc=(sqrt(1/2).*I_rc+sqrt(1/2).*Q_rc);QPSK_rc_n0=QPSK_rc+n0;% 解调I_demo=QPSK_rc_n0.*cos(2*pi*f1*t1);Q_demo=QPSK_rc_n0.*sin(2*pi*f1*t1);% 低通滤波I_recover=conv(I_demo,xrc);Q_recover=conv(Q_demo,xrc);I=I_recover(11:10010);Q=Q_recover(11:10010);t2=0:0.05:1e3-0.05;t3=0:0.1:1e3-0.1;% 抽样判决data_recover=[];for i=1:20:10000data_recover=[data_recover I(i:1:i+19) Q(i:1:i+19)]; end;bit_recover=[];for i=1:20:20000if sum(data_recover(i:i+19))>0data_recover_a(i:i+19)=1;bit_recover=[bit_recover 1];elsedata_recover_a(i:i+19)=-1;bit_recover=[bit_recover -1];endenderror=0;dd = -2*bit_in+1;ddd=[dd'];ddd1=repmat(ddd,20,1);for i=1:2e4ddd2(i)=ddd1(i);endfor i=1:1e3if bit_recover(i)~=ddd(i)error=error+1;endendp=error/1000;figure(1)subplot(2,1,1);plot(t2,ddd2);axis([0 100 -2 2]);title('原序列');subplot(2,1,2);plot(t2,data_recover_a);axis([0 100 -2 2]);title('解调后序列'); 效果图:% 设定 T=1, 不加噪声clear allclose all% 调制bit_in = randint(1e3, 1, [0 1]);bit_I = bit_in(1:2:1e3);bit_Q = bit_in(2:2:1e3);data_I = -2*bit_I+1;data_Q = -2*bit_Q+1;data_I1=repmat(data_I',20,1);data_Q1=repmat(data_Q',20,1);for i=1:1e4data_I2(i)=data_I1(i);data_Q2(i)=data_Q1(i);end;t=0:0.1:1e3-0.1;f=0:0.1:1;xrc=0.5+0.5*cos(pi*f);data_I2_rc=conv(data_I2,xrc)/5.5;data_Q2_rc=conv(data_Q2,xrc)/5.5;f1=1;t1=0:0.1:1e3+0.9;I_rc=data_I2_rc.*cos(2*pi*f1*t1);Q_rc=data_Q2_rc.*sin(2*pi*f1*t1);QPSK_rc=(sqrt(1/2).*I_rc+sqrt(1/2).*Q_rc);% 解调I_demo=QPSK_rc.*cos(2*pi*f1*t1);Q_demo=QPSK_rc.*sin(2*pi*f1*t1);I_recover=conv(I_demo,xrc);Q_recover=conv(Q_demo,xrc);I=I_recover(11:10010);Q=Q_recover(11:10010);t2=0:0.05:1e3-0.05;t3=0:0.1:1e3-0.1;data_recover=[];for i=1:20:10000data_recover=[data_recover I(i:1:i+19) Q(i:1:i+19)]; end;ddd = -2*bit_in+1;ddd1=repmat(ddd',10,1);for i=1:1e4ddd2(i)=ddd1(i);endfigure(1)subplot(4,1,1);plot(t3,I);axis([0 20 -6 6]);subplot(4,1,2);plot(t3,Q);axis([0 20 -6 6]);subplot(4,1,3);plot(t2,data_recover);axis([0 20 -6 6]); subplot(4,1,4);plot(t,ddd2);axis([0 20 -6 6]);效果图:% QPSK误码率分析SNRindB1=0:2:10;SNRindB2=0:0.1:10;for i=1:length(SNRindB1)[pb,ps]=cm_sm32(SNRindB1(i));smld_bit_err_prb(i)=pb;smld_symbol_err_prb(i)=ps;end;for i=1:length(SNRindB2)SNR=exp(SNRindB2(i)*log(10)/10);theo_err_prb(i)=Qfunct(sqrt(2*SNR));end;title('QPSK误码率分析');semilogy(SNRindB1,smld_bit_err_prb,'*');axis([0 10 10e-8 1]);hold on;% semilogy(SNRindB1,smld_symbol_err_prb,'o');semilogy(SNRindB2,theo_err_prb);legend('仿真比特误码率','理论比特误码率');hold off;function[y]=Qfunct(x)y=(1/2)*erfc(x/sqrt(2));function[pb,ps]=cm_sm32(SNRindB) N=10000;E=1;SNR=10^(SNRindB/10);sgma=sqrt(E/SNR)/2;s00=[1 0];s01=[0 1];s11=[-1 0];s10=[0 -1];for i=1:Ntemp=rand;if (temp<0.25)dsource1(i)=0;dsource2(i)=0;elseif (temp<0.5)dsource1(i)=0;dsource2(i)=1;elseif (temp<0.75)dsource1(i)=1;dsource2(i)=0;elsedsource1(i)=1;dsource2(i)=1;end;end;numofsymbolerror=0;numofbiterror=0;for i=1:Nn=sgma*randn(size(s00));if((dsource1(i)==0)&(dsource2(i)==0))r=s00+n;elseif((dsource1(i)==0)&(dsource2(i)==1)) r=s01+n;elseif((dsource1(i)==1)&(dsource2(i)==0)) r=s10+n;elser=s11+n;end;c00=dot(r,s00);c01=dot(r,s01);c10=dot(r,s10);c11=dot(r,s11);c_max=max([c00 c01 c10 c11]);if (c00==c_max)decis1=0;decis2=0;elseif(c01==c_max)decis1=0;decis2=1;elseif(c10==c_max)decis1=1;decis2=0;elsedecis1=1;decis2=1;end;symbolerror=0;if(decis1~=dsource1(i))numofbiterror=numofbiterror+1;symbolerror=1;end;if(decis2~=dsource2(i))numofbiterror=numofbiterror+1;symbolerror=1;end;if(symbolerror==1)numofsymbolerror=numofsymbolerror+1; end;end;ps=numofsymbolerror/N;pb=numofbiterror/(2*N);效果图:。

相关文档
最新文档