江苏科技大学移动通信课程设计报告第1页基于MATLAB的GMSK系统的设计仿真1课程设计的任务与要求1.1课程设计的任务(1)掌握GMSK的原理和Simulink仿真基本方法;(2)熟悉MATLAB的编程技术,并熟练掌握其编程技术(3)能采用MATLAB实现对GMSK调制解调的原理性仿真,给出GMSK编码调制,以及接收端进行解调的详细过程及分析,以此来更深入理解GMSK的调制解调过程(4)熟练掌握GMSK,MSK信号的调制解调基本原理1.2课程设计的要求(1)观察基带信号和解调信号波形。(2)观察已调信号频谱图。(3)改变BT参数,分析调制性能和BT参数的关系。(4)与MSK系统的对比。1.3系统的组成及设计原理GMSK系统主要由信号产生模块、信号调制模块、信道、信号解调模块、误码率计算模块组成。在图形观察方面还包含频谱仪、示波器和眼图绘制模块。本系统由信号产生模块产生一个二进制序列,再经过调制器进行调制,之后便将调制信号送入信道,经过解调器解调得到解调信号。为计算系统误码率,则在调制器后加一误码率计算模块,计算误码率。图1.3系统原理框图第2页GMSK原理图:调制原理图如图1,图中滤波器是高斯低通滤波器,它的输出直接对VCO进行调制,以保持已调包络恒定和相位连续]2[。高斯低通滤波器频率调制器(VCO)非归零数字序列GMSK已调信号图1GMSK调制原理图为了使输出频谱密集,前段滤波器必须具有以下待性:1.窄带和尖锐的截止特性,以抑制FM调制器输入信号中的高频分量;2.脉冲响应过冲量小,以防止FM调制器瞬时频偏过大;3.保持滤波器输出脉冲响应曲线下面积对应pi/2的相移。调制指数为1/2。前置滤波器以高斯型最能满足上述条件,这也是高斯滤波器最小移频键控(GMSK)的由来]1[。GMSK本是MSK的一种,而MSK又是是FSK的一种,因此,GMSK检波也可以采用FSK检波器,即包络检波及同步检波。而GMSK还可以采用时延检波,但每种检波器的误码率不同。我们在构建数字通信系统的模型后,利用计算机仿真作为分析手段,对在不同的通信环境下设计方案的误码性能进行定量分析,用来对各调制,解调方案性能进行评估。由于GMSK信号具有良好的频潜效率、以及恒包络性质,因而广泛的应用于移动通信系统。高斯最小频移键控(GMSK)由于带外辐射低因而具有很好的频谱利用率,其恒包络的特性使得其能够使用功率效率高的C类放大器。这些优良的特性使其作为一种高效的数字调制方案被广泛的运用于多种通信系统和标准之中。如上所述,GMSK有着广泛的应用。因此,从本世纪80年代提出该技术以来,广大科研人员进行了大量的针对其调制解调方案的研究。GMSK非相干解调原理图如图2,图中是采用FM鉴频器(斜率鉴频器或相位鉴频器)再加判别电路,实现GMSK数据的解调输出]2[。带通滤波器限幅器GMSK信号判决器数据图2GMSK解调原理图2GMSK系统设计第3页2.1信号发生模块因为GMSK信号只需满足非归零数字信号即可,本设计中选用(BernoulliBinaryGenerator)来产生一个二进制序列作为输入信号。图3GMSK信号产生器该模块的参数设计这只主要包括以下几个。其中probabilityofazero设置为0.5表示产生的二进制序列中0出现的概率为0.5;Initialseed为61表示随机数种子为61;sampletime为1/1000表示抽样时间即每个符号的持续时为0.001s。当仿真时间固定时,可以通过改变sampletime参数来改变码元个数。例如仿真时间为10s,若sampletime为1/1000,则码元个数为10000]3[。如图4所示。图4BernoulliBinaryGenerator参数设置2.2调制解调模块第4页图5GMSK调制解调模块GMSKModulatorBaseband为GMSK基带调制模块,其inputtype参数设为Bit表示表示模块的输入信号时二进制信号(0或1)。BTproduct为0.3表示带宽和码元宽度的乘积。其中B是高斯低通滤波器的归一化3dB带宽,T是码元长度。当B·T=∞时,GMSK调制信号就变成MSK调制信号。BT=0.3是GSM采用的调制方式。Plushlength则是脉冲长度即GMSK调制器中高斯低通滤波器的周期,设为4。Symbolprehistory表示GMSK调制器在仿真开始前的输入符号,设为1。Phaseoffset设为0,表示GMSK基带调制信号的初始相位为0。Samplepersymbol为1表示每一个输入符号对应的GMSK调制器产生的输出信号的抽样点数为1。AWGNChannel为加性高斯白噪声模块,高斯白噪声信道的Mode参数(操作模式)设置为Signaltonoise(SNR),表示信道模块是根据信噪比SNR确定高斯白噪声的功率,这时需要确定两个参数:信噪比和周期。而将SNR参数设为一个变量xSNR是为了在m文件中编程,计算不同信噪比下的误码率,改变SNR即改变信道信噪比。GMSKDemodulatorBaseband是GMSK基带解调器。其前六项参数与GMSK调制器相同,并设置的值也相同。最后一项为回溯长度TracebackLength,设为变量Tracebacklength,在m文件通过改变其值,可以观察回溯长度对调制性能的影响。GMSKModulatorBaseband为GMSK基带调制模块,其inputtype参数设为Bit表示表示模块的输入信号时二进制信号(0或1)。BTproduct为0.3表示带宽和码元宽度的乘积。其中B是高斯低通滤波器的归一化3dB带宽,T是码元长度。当B·T=∞时,GMSK调制信号就变成MSK调制信号。BT=0.3是GSM采用的调制方式。Plushlength则是脉冲长度即GMSK调制器中高斯低通滤波器的周期,设为4。Symbolprehistory表示GMSK调制器在仿真开始前的输入符号,设为1。Phaseoffset设为0,表示GMSK基带调制信号的初始相位为0。Samplepersymbol为1表示每一个输入符号对应的GMSK调制器产生的输出信号的抽样点数为1]3[。如图6所示。AWGNChannel为加性高斯白噪声模块,高斯白噪声信道的Mode参数设置为Signaltonoise(SNR),表示信道模块是根据信噪比SNR确定高斯白噪声的功率,这时需要确定两个参数:信噪比和周期。而将SNR参数设为一个变量xSNR是为了在m文件中编程,计算不同信噪比下的误码率,改变SNR即改变信道信噪比。如图7所示。GMSKDemodulatorBaseband是GMSK基带解调器。其前六项参数与GMSK调制第5页器相同,并设置的值也相同。最后一项为回溯长度TracebackLength,设为变量Tracebacklength,在m文件通过改变其值,可以观察回溯长度对调制性能的影响。如图8所示。图6GMSKModulatorBaseband参数设置第6页图7AWGNChannel参数设置第7页图8GMSKDemodulatorBaseband参数设置2.3误码率计算模块图9误码率计算模块Receivedely(接收端时延)设置为回溯长度加一,表示接收端输入的数据滞后发送端数据TracebackLength+1个输入数据;Computationdelay(计算时延)设为0,表示错误率统计模块不忽略最初的任何输入数据。Computationmode(计算模式)设置为Entire第8页frame(帧计算模块),表示错误率统计模块对发送端和接收端的所有数据进行统计。Outputdata(输出数据)设为workspace,表示竟统计数据输出到工作区。Variablename(变量名)则是设置m文件中要返回的参数的名称,设为xErrorRate。如图10所示。图10ErrorRateCalculation参数设置2.4波形观察模块2.4.1调制、解调信号观察模块因为GMSK调制信号是一个复合信号,所以只用示波器(Scope)无法观察到调制波形,所以在调制信号和示波器间加一转换模块Complextomagnitude-angle将调制信号分别在幅度和相角两方面来观察。第9页图11调制信号观察模块将Complextomagnitude-angleoutput的output参数设为magnitudeandangle,表示同时输出调制信号的幅度和相角。示波器scope1的numberofaxes为2表明有纵坐标个数为2;timerange表示时间轴的显示范围,设为auto,表示时间轴的显示范围为整个仿真时间段。TickTabels设为bottomaxisonly时,只显示各个纵坐标以及最下面的横坐标的标签]3[。如图12所示。图12ComplextoMagnitude-Angle参数设置图13解调信号观察模块2.4.2调制信号频谱观察模块图14GMSK调制信号频谱观察模块设置了坐标Y的范围为0到7,X的范围为[-FS,FS],Amplitudescaling表示幅度计算,选择一般模式即以V为单位进行计算。但Y坐标标记Y-axistitle设为magnitude,dB转换为dB形式。如图15所示。2.4.3眼图观察模块第10页图16GMSK调制解调信号眼图观察模块Offset(sample)参数表示MATLAB在开始绘制眼图之前应该忽略的抽样点的个数。Symbolspertrace表示每径符号数,每条曲线即成为一个“径”。Tracesdisplayed则是要显示的径数。Newtracesperdisplay是每次重新显示的径的数目。如图17所示。图17Discrete-TimeEyeDiagramScope参数设置2.4.4星座图观察模块图18GMSK调制解调星座图观察模块星座图展示了信号在空间的排列分步,即在噪声环境下信号之间的最小距离。2.4.5GMSK系统设计仿真模型图整个系统主要包括五大模块:随机信号发生模块、GMSK调制模块、信道、GMSK解调模块、误码率统计模块。第11页图19GMSK系统设计仿真模型图3GMSK系统与MSK系统的性能比较3.1MSK系统设计最小频移键控(MSK)是恒定包络调制技术,是2FSK的改进调制方式,它具有波形连续,相位稳定,带宽最小并且严格正交的特点。以下是MSK各个系统的模块介绍。其参数设置参照GMSK参数设置]4[。3.1.4MSK系统设计仿真模型图第12页图23MSK系统设计仿真模型图3.2GMSK系统设计图24GMSK系统设计图3.3GMSK调制仿真误码性能的M文件代码第13页图25GMSK调制仿真误码性能的M文件3.4GMSK系统与MSK系统的性能比较的M文件代码第14页图26GMSK系统与MSK系统的性能比较的M文件4GMSK系统仿真4.1仿真调试过程中主要通过MATLAB自带的Help功能来进行调试,在Help中查找所需函数的定义及形式和使用方法。通过报错信息找出相应的错误,翻阅相关资料,与同组人经过讨论后进行修改。在最终解决不了的情况下,请教老师,最终改正所有错误。设计模块、参数设置及程序代码编写完成后。先将高斯白噪声信道信噪比xSNR和GMSK解调模块的回溯长度参数设为常数,运行实验模型,观察示波器,发现没有出现基带与解调信号波形。先检查示波器参数,发现并无问题,编译SimuLink的.mdl文件时信号发生器报错,错误信息为:Forintegerinputs,theinputvaluesmustbeintherange+/-(M-2i-1),i=0,1,...,(M/2)-1,检查GMSK调制模块参数inputtype与GMSK解调模块output参数均设置为integer,但实际上贝努力二进制序列产生器产生的是一个由0和1组成二进制序列,与integer产生冲第15页突,将上述两参数就改为bit,再编译mdl文件,无错误显示。进而运行m文件,mdl文件界面弹出,说明无法执行mdl模型。检查程序,发现xSimulationTime在