微信公众号上线,搜索公众号小灰灰的FPGA,关注可获取相关源码,定期更新有关FPGA的项目以及开源项目源码,包括但不限于各类检测芯片驱动、低速接口驱动、高速接口驱动、数据信号处理、图像处理以及AXI总线等
本节目录
一、基带4-PAM的信号波形
二、基带4-PAM信号在awgn信道下的最佳接收
三、基带4-PAM信号在awgn信道下的传输性能仿真
四、Matlab源码
本节内容
一、基带4-PAM的信号波形
信号波形——sm(t)=Am×g(t),0≤t≤T,m=0,1,2,3
其中Am为第m个波形的幅度,信号幅度取4种等间隔值,即Am=(2m-3)d,m=0,1,2,3。
g(t)为矩形脉冲,g(t)为1/T的开方,0≤t≤T。
2d表示两个相邻幅度电平之间的欧几里得距离。
以上这种信号波形称为脉冲幅度调制PAM信号。
按照Gray编码规则,把2比特对应的信息映射为4种信号波形,即:
s0(t)——00;
s1(t)——01;
s2(t)——11;
s3(t)——10;
每个信息比特对应一个符号,比特率为Rb,则脉冲持续时间T=2/Rb。
传输信号通过加性高斯白噪声信道awgn,叠加了噪声n(t),n(t)是功率谱密度为(N0/2)的白色高斯随机过程的一个样本函数。
接收端的信号为r(t)=si(t)+n(t),其中i=0,1;0≤t≤Tb。
接收端在接收端信号r(t)后,判断在区间0≤t≤Tb内发送的是4种波形中的哪一种。最佳接收机是指符号差错概率最小的接收机。
二、基带4-PAM信号在awgn信道下的最佳接收
对于awgn信道的最佳接收机,接收滤波器应该是信号相关器或匹配滤波器。
信号相关器将接收到的信号r(t)与信号脉冲g(t)做互相关,并将它的输出,在t=T采样,信号相关器的输出为:
n——噪声分量,是一个均值为0的高斯随机变量。
方差:
检测器需要根据输出r,判决发送的是4种PAM波形中的哪一种。接收到的信号幅度Ai能够取±d和±3d,最佳幅度检测器要将输入r与4种可能的传输电平比较,并选择欧氏距离上最接近r的幅度电平,并选取最小距离的幅度。对应的计算的距离公式Di=|r-Ai|,i=0,1,2,3,
4-PAM信号误符号率为
其中Es表示每个符号的平均能量。
注意每个传输符号有两个比特组成,每个比特的平均能量Eb=Es/2。
三、基带4-PAM信号在awgn信道下的传输性能仿真
Matlab提供了PAM调制和解调的函数,pammod和pamdemod。
matlab代码示例:
仿真4-PAM信号通过awgn信道后的误比特率性能。
比特映射采用Gray编码,接收端采用相关器,
绘制误比特率随Eb/N0的变化情况,
Eb/N0的范围为0-10dB,将理论值与Matlab仿真值比较。
四、Matlab源码
clear all;
clc;
%采样点数
numsamp=10;
%发送符合数
num_symbol=100000;
%信噪比
EsN0=0:10;
%4-PAM
M=4;
%Gray编码规则
graycode=[0 1 3 2];
%消息数据
msg=randi([0,3],1,num_symbol);
%Gray映射
msg1=graycode(msg+1);
%4-PAM调制
msg2=pammod(msg1,M);
%矩形脉冲成形
s=rectpulse(msg2,numsamp);
for indx=1:length(EsN0)
decmsg=zeros(1,num_symbol);
%通过awgn信道,添加噪声实数部分
r=awgn(real(s),EsN0(indx)-7,'measured');
%相关器输出
r1=intdump(r,numsamp);
%判决
msg_demod=pamdemod(r1,M);
%Gray逆映射
decmsg=graycode(msg_demod+1);
%求误比特率
[err,ber(indx)]=biterr(msg,decmsg,log2(M));
[err,ser(indx)]=symerr(msg,decmsg);
end
semilogy(EsN0,ber,'-ko',EsN0,ser,'-k*',EsN0,1.5*qfunc(sqrt(0.4*10.^(EsN0/10))));
title('4-PAM信号误比特率性能');
xlabel('Es/N0');
ylabel('误比特率和误符号率');
legend('误比特率','误符号率','理论误符号率');