实训四 数字信号频带传输的仿真设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实训四数字信号频带传输的仿真设计
一、实验内容
1、基带信号采用不归零矩形脉冲,生成2PSK信号的时域波形和功率谱密度。
2、生成QPSK信号的时域波形和功率谱密度。
3、QPSK接收信号的星座图。
4、仿真QPSK系统的误码率。
二、程序与仿真图
1.
clc;clear all;
tm=1;
fc=3;
Nsample=100;
Nnum=1000;
dt=tm/Nsample;
N=Nsample*Nnum;
t=0:dt:Nnum*tm-dt;
NFFT=2.^16;
Nloop=50;
st1=0;st2=0;
%%%%
for i=1:Nloop;
d=2*randint(1,Nnum)-1;
st_bb=rectpulse(d,Nsample);
st_2psk=st_bb.*sin(2*pi*fc*t);
window=boxcar(length(st_bb));
[pxx1,f]=periodogram(st_bb,window,NFFT,1/dt);
[pxx2,f]=periodogram(st_2psk,window,NFFT,1/dt);
st1=st1+pxx1;st2=st2+pxx2;
end
st1=st1/Nloop;
st2=st2/Nloop;
%%%%%%%%%%%%%%
figure(1);
subplot(211);plot(t,st_bb);axis([0 10 -1.5 1.5]);
xlabel('t');ylabel('幅度');title('双极性基带信号的时域波形');
subplot(212);plot(t,st_2psk);axis([0 10 -1.5 1.5]);grid on;
xlabel('t');ylabel('幅度');title('2PSK已调信号波形');
figure(2);
subplot(211);plot([-1*flipud(f);f],0.5*[flipud(st1);st1]);axis([-15 15 0 1]);
xlabel('f');ylabel('频谱');title('双极性基带信号的频谱');grid on;
subplot(212);plot([-1*flipud(f);f],0.5*[flipud(st2);st2]);axis([-10 10 0 0.5]);
xlabel('f');ylabel('频谱');title('2PSK已调信号的频谱');grid on;
clear all;
N=10^6;
d1=randint(1,N).*2-1;
d2=randint(1,N).*2-1;
d=d1+j*d2;
Es=mean(abs(d).^2);
Eb=Es./2;snr_db=-2:10;
for snr=-2:10;
n0=Eb/(10^(snr/10));
sigma=sqrt(n0/2);
n=sigma*randn(size(d))+j*sigma*randn(size(d));
rt=d+n;
y1=sign(real(rt));
y2=sign(imag(rt));
ber(1,snr+3)=((length(find(y1~=d1)))+(length(find(y2~=d2))))/(2.*N); ber1(1,snr+3)=berawgn(snr,'qam',4);
end
semilogy(snr_db,ber,'b- *');hold on;
semilogy(snr_db,ber1,'r- ');grid on;
xlabel('Eb/N0');ylabel('wumalv');
legend('ber','ber-theory');title('QPSK系统性能曲线');
3.
Qm=2;
N_num=10^5;
d1=sign(randn(1,N_num));
d2=sign(randn(1,N_num));
d=d1+d2*j;
Es=mean(abs(d).^2);
Eb=Es/Qm;
EbN0_dB=10;
ebn0=10.^(EbN0_dB/10);
sigma=sqrt(Eb/ebn0/2);
n=sigma*randn(size(d))+j*sigma*randn(size(d)); rt=d+n;
plot(rt,'.');
axis([-2.5 2.5 -2 2]);grid on;
xlabel('I');ylabel('Q');
title('信噪比为10dB的QPSK星座图');
4.
Qm=2;
N_num=10^5;
d1=sign(randn(1,N_num));
d2=sign(randn(1,N_num));
d=d1+d2*j;
Es=mean(abs(d).^2);
Eb=Es/Qm;
EbN0_dB=5;
ebn0=10.^(EbN0_dB/10);
sigma=sqrt(Eb/ebn0/2);
n=sigma*randn(size(d))+j*sigma*randn(size(d)); rt=d+n;
plot(rt,'.');
axis([-3 3 -3 3]);grid on;
xlabel('I');ylabel('Q');
title('信噪比为5dB的QPSK星座图');