资源描述
AWGN信道中2ASK/2FSK/BPSK
信号的误码率性能仿真
课程名称 《现代通信导论》
学生班级 英才实验学院
学生姓名 何萌
学生学号
指导老师 武刚
小组成员 何萌 、高铭业
一、 实验目的及主要内容
1.熟悉2ASK、2FSK、BPSK等各种调制方式;
2.学会对2ASK、2FSK、BPSK相应的误码率统计;
3.学会分析误码率与信噪比间的关系,及对信噪比的正确认识。
设定噪声为高斯白噪声,对2ASK、2FSK、2PSK、2DPSK等各种调制方式及相应的主要解调方式下(分相干与非相干)的误码率进行统计,并与理论值进行比较,以图形方式表示误码率与信噪比间的关系。
二、 实验原理
2ASK:有两种解调方法:非相干解调(包络检波法)和相干解调(同步检测法)。其中包络检波法不需相干载波,利用e0(t)波形振幅变化表示信息的特点,取出其包络,经抽样判决即可恢复数码。相干解调需要与相干载波相乘。
2FSK:常用的解调方法:非相干解调(包络检波法);相干解调;鉴频法;过零检测法及差分检波法。
将2FSK信号分解为上下两路2ASK信号分别进行解调。其中的抽样判决是直接比较两路信号抽样值的大小,可以不专门设置门限。判决规则应与调制规则相呼应。例如,若调制时规定“1”对应载频f1,则接收时应规定:上支路样值>下支路样值判为1,反之则判为0.。
BPSK:该方式中载波的相位随调制信号“1”或“0”而改变,通常用相位0°或180°来分别表示“1”或“0”,所以2PSK信号是以一个固定初相的未调载波为参考的。解调时必须有与此同频同相的同步载波。而2PSK信号是抑制载波的双边带信号,不存在载频分量,因而无法从已调信号中直接用滤波法提取本地载波。只有采用非线性变换,才能产生新的频率分量。
三、 仿真过程设计及问题讨论
本次仿真通过编写m文件分别对2ASK、2FSK、BPSK的调制解调过程进行简单的实现,同时在实际仿真的编写过程中遇到了两种不同判决的选用的问题及对信噪比的理解问题,下面将会详细讲诉。
抽样判决与积分后判决
图3-1 2ASK带载波
我们在介绍2ASK的带载波传输的同时引入两种判决方法。
带载波传输是利用代表数字信息“0”或“1”的基带矩形脉冲去键控一个连续的载波,使载波时断时续地输出。有载波输出时表示发送“1”,无载波输出时表示发送“0”。
图3-1所示2ASK采用相干解调的方式,将通过AWGN信道的接收信号乘以相干载波,通过低通滤波器滤去载波的高频分量,得到的是加上高斯白噪声的原信号,经过最大似然判决得到最终的二进制信号。
图3-2 不同取样下的载波波形
其中假设传输二进制变化的最小周期为T,而取样周期为tn,则在实际matlab仿真中我们对一个二进制比特会采用在T内取与之相同的nsamp=(T/tn)个二进制数来表示,这样的目的一是为了在画图中达到近似连续的效果,而更重要的是因为载波必须在一个周期T内有足够多的采样点才能保证保证其波形,如果nsamp过小会导致载波及后续一系列的信号的失真,进而使频谱偏离理论值过多,会导致滤波及相干解调出现偏差,最终导致误码率增大。
我们注意到,因为一个二进制比特在T内有很多采样点,在通过高斯信道后及被相干解调、低通滤波后信号在一个周期T内的波形会变化,因为每一个相同的采样点都加上了随机的噪声,而因此在最后的判决过程中出现了两种方法:
1. 抽样判决:在T内nsamp个点中任取一个点进行判决
2. 积分判决:在T内积分(即求nsamp个点的平均值)再进行判决
这两种方法中显然积分判决更优,能得到更小的误码率,但问题是积分判决的优化实际上通过增加冗余,由一个比特信号变成了nsamp个重复的信号,根据信息论的理论通过增加冗余能起到部分纠错的功能(即使有一点变化很大通过积分后其对判决的影响也会变得很小),在这种情况下最后的误码率会收到采样的影响,其他条件相同若nsamp增大,则相应的误码率会减小,甚至可能会优于理论值,因为实际判决的是带有冗余的是原序列长度nsamp倍的信号,这样的情况下仿真误码率和理论误码率的差别可能会有极大的变化。
图3-3 简化的2ASK基带传输
基带传输是二进制信号不通过载波将其搬移到高频,直接通过AWGN信道后信号的幅度的改变受高斯噪声的影响,通过最大似然判决后得到信号,因为不需要载波,我们这里采用简化的基带传输,即每一个比特(符号)只用一个点表示,这样的好处是判决的过程中不会出现需要在两种判决中
选择的情况,误码率不会受到其他因素的影响,更适合对理论值的仿真。
信噪比与AWGN信道的编写
指比特能量与噪声功率谱的比值,常用分贝表示,则
我们一般通过绘制SNR与误码率的关系曲线来评估误码率。
一般编写AWGN信道可以利用MATLAB内置函数AWGN,其书写格式为:
其中,X为初始信号,SNR为信噪比,’measured’表示添加的噪声为测量X的功率后,根据SNR计算得到的。直接调用这个函数会存在问题,因为这个时候X已经是映射的符号,所以在这个公式里面,SNR表示的是符号能量与噪声功率的比值。所以高斯信号部分程序并未调用MATLAB内置函数,这是自行编写,编写思路如下:
1. 方法一
(1) 首先计算输入信号X的总能量Es。因为信号均值为0,故总能量为信号的方差。
(2) 然后计算比特的总能量,即用X的总能量Es除以符号的比特数,得到Eb,即
(3) 将SNR的dB表示形式换算成数值表示SNR_L,即
(4) 根据SNR的定义,用比特能量除以信噪比,得到噪声的单边功率谱密度N0,即
(5) 因为信号均值为0,故噪声能量为噪声的方差。对于白噪声而言,其方差等于其功率谱密度N0/2即有
(6) 利用MATLAB内置函数randn产生相应维数的0-1分布的噪声,乘上第五步中得到的方差,即准确得到输入信号X对应信噪比SNR下的噪声。
(7) 将得到的噪声加到信号X上去,模拟信号X通过高斯白噪声信道。
2. 方法二
如若噪声部分不自行编写,则考虑符号能量和比特能量的关系,因为
所以:
即在MATLAB内置函数:中,SNR换成上面所推导得到的SNR_signal。
四、 仿真分析
4.1最优情况下的BASK(OOK)和BPSK误码率讨论
图4-1 BPSK、2ASK误码率分析
如图4-1所示是在p=1/2 (即 “0”、“1”发送概率相等)时2ASK、BPSK的误码率(也是在信噪比不变的情况下最优的情况),我们可以从图中观察到:
1. 两种调制的仿真曲线都与理论曲线重合的非常好,仅在信噪比较高的地方BPSK仿真与理论出现偏差,这是因为仿真时所取码元的个数有限制,在信噪比高的地方误码率很小超出了仿真的鉴别能力,但总体上,可以看出仿真达到了较好的效果。
2. 可以看到在误码率相同的情况下BPSK所需的信噪比比BASK小了3dB,即在相同的条件下BPSK比BASK效果更优,而这能从理论上得到解释:
图4-2 BPSK、BASK(OOK)星座图
如图所示,对上面的BPSK、BASK简单地根据最大似然判决准则:
易有在图4-2中映射的两种调制因为两个符号间的距离dmin=1相等,在噪声功率相同的情况下两种调制通过高斯信道经过最大似然判决的误码率相同,但此时BPSK的符号能量Eb=1/4,而BASK的符号能量Eb=1/2,即BPSK的信噪比是BASK的两倍,所以在误码率相同的情况下BPSK所需的信噪比比BASK小了3dB。
4.2 BFSK误码率讨论
2ASK是用频率相同的载波幅度的不同来区分0和1;2FSK是利用两个不同频率的载波来分别表示0和1,从映射的角度上来说两者都是直接将原
图4-2 BFSK误码率分析
信号做为映射,不会影响到最大似然判决,两者的误码率应当相同,且都与BPSK相差3db,如图4-2所示,但我们也发现BFSK的仿真曲线与理论曲线在SNR增大时相差较大,约一个dB左右,我们分析过后认为可能的原因如下:
1. 取样频率低,导致载波波形失真
2. 滤波器选用的有问题
3.
而尽管我们针对以下方面进行多次调试,任然不能解决这个问题,只能留待后续,希望通过对知识的近一步理解后能够解决。
我们选择最为简单的BASK来进行讨论,当p=1/2(p为发送1的概率)时误码率与信噪比是最优的关系,当而p变化时则情况变得复杂,
首先是判决门限的确定:
AWGN信道的MAP检测机为:
BASK的判决域:
差错概率:
图4-3
根据上面的公示易有:
误码率相对于p=0.5对称,且越偏离0.5误码率越大,在p=0.5时误码率最小,取得最优如图4-3。
展开阅读全文