8PSK调制解调技术的设计与仿真资料.doc
《8PSK调制解调技术的设计与仿真资料.doc》由会员分享,可在线阅读,更多相关《8PSK调制解调技术的设计与仿真资料.doc(25页珍藏版)》请在冰点文库上搜索。
目录
摘要 1
前言 2
一信道 3
1.1信道概念 3
1.2信道分类 3
二8PSK的原理 4
2.1基本原理 4
2.28PSK的调制 6
2.38PSK的解调采用双正交相干解调 7
2.4眼图 8
三信号调制与解调 9
3.18PSK信号发送端的调制 9
3.28PSK信号接收端的解调 11
四设计及仿真 12
4.1MATLAB软件的介绍 12
4.28PSK调制部分 12
4.38PSK解调部分 15
4.4高斯噪声、眼图 18
总结 22
参考文献 23
致谢 24
摘要
在数字信号的调制方式中8PSK是目前最常用的一种数字信号调制方式,它具有较高的频谱利用率、较强的抗干扰性、在电路上实现也较为简单。
调制技术是通信领域里非常重要的环节,一种好的调制技术不仅可以节约频谱资源而且可以提供良好的通信性能。
8PSK调制是一种具有较高频带利用率和良好的抗噪声性能的调制方式,在数字移动通信中已经得到了广泛的应用。
本次设计在理解8PSK调制解调原理的基础上应用MATLAB语言来完成仿真,仿真出了8PSK的调制以及解调的仿真图,包括已调信号的波形,解调后的信号波形,眼图和误码率。
在仿真的基础上分析比较了各种调制方法的性能,并通过比较仿真模型与理论计算的性能,证明了仿真模型的可行性。
关键字:
8PSK调制解调仿真;
前言
信息化的社会,数字技术快速发展,数字器件也广泛的利用,数字信号的处理技术也越来越重要。
进入20世纪以来,随着晶体管、集成电路的出现与普及、无线通信迅速发展。
特别是在20世纪后半叶,随着人造地球卫星的发射,大规模集成电路、电子计算机和光导纤维等现代技术成果的问世,通信技术在不同方向都取得了巨大的成功。
随着技术的进步,特别是超大规模集成电路和数字信号处理技术的发展,使得复杂的电路设计得以用少量的几块即成电路模块实现,有些硬件电路的功能还可以用软件代替实现。
因此使得一些较复杂的调制技术能够容易地实现并投入使用。
这方面的条件使得新的更复杂的调制体制迅速地不断涌现。
8PSK的调制与解调具有一系列独特的优点,已经广泛应用于无线通信中,成为现代通信中一种十分重要的调制解调方式。
根据所处理基带信号的进制不同,分为二进制和多进制,多进制与二进制相比较,其频带利用率更高。
现代社会发展要求通信系统功能越来越强,性能越来越高,构成越来越复杂;这就要借助于功能强大的计算机辅助分析设计技术和工具才能实现。
MATLAB完成仿真,它由一系列工具组成。
这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。
包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。
随着MATLAB的商业化以及软件本身的不断升级,MATLAB的用户界面也越来越精致,更加接近Windows的标准界面,人机交互性更强,操作更简单。
而且新版本的MATLAB提供了完整的联机查询、帮助系统,极大的方便了用户的使用。
简单的编程环境提供了比较完备的调试系统,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析。
本设计主要研究数字通信过程中的调制解调过程。
从原理上说受调载波可以是任意的,只要已调信号适合心动的传输就可以了,但是实际上,大多数通信系统中,都选择正弦信号作为载波。
这是因为正弦信号简单,便于产生和接收。
一信道
1.1信道概念
信道:
信道就是信号的通道。
在数字通信系统模型中,可将其分为狭义信道和广义信道。
狭义信道:
用来传输电(光)信号,介于发送设备和接收设备之间的传输媒介;
广义信道:
凡信号经过的路径就称之为信道。
按所传输信号的形式,可分为调制信道和编码信道(是数字信道)。
发送方调制器的输出端到接收方解调器的输入端,称为调制信道,分为恒参信道和随参信道;
恒参信道:
信道传递函数与时间t无关的信道,如有线电缆、光纤、微波等;
随参信道:
信道传递函数与时间t有关的信道,如短波电离层反射、超短波流星余迹散射等;
发送方编码器的输出端到接收方译码器的输入端,称为编码信道;分为无记
忆信道和有记忆信道;
无记忆信道:
若每个输出的符号只取决于当前的输入符号,而与前后其他的输入符号无关时,称为无记忆信道。
(即前后码元的接收概率不存在关联性,概率是统计独立的。
)
有记忆信道:
若前后码元的接收概率存在关联性,则称为有记忆的编码信道。
1.2信道分类
信道可按不同的方式进行分类:
按用途分:
电话信道、电视信道等;
按传输的信号分:
模拟信道、数字信道;
按传输媒介分:
有线信道、无线信道;
按传输信号频谱分:
基带信道、载波信道;
按使用方式分:
专用信道、公共信道。
就总体而言,信道应看作一个线性系统,满足线性叠加原理。
信号在信道中传输,存在衰耗和时延,信道中总是存在噪声,信号在实际信道中传输,将会产生失真,任何信道都有一定的频率带宽,信道不可能传送功率无限大的信号。
二8PSK的原理
2.1基本原理
在八相调相中,把载波相位的一个周期0-2π等分成8种相位,已调波相邻相位之差为2π/8=π/4。
二进制信码的三比码组成一个八进制码元,并与一个已调波的相位对应。
所以在调制时必须将二进制的基带串行码流经过串/并变换,变为三比特码元,然后进行调相。
三比特码元的组合不同,对应的已调波的相位就不同。
8PSK信号可用正交调制法产生,方法如图2.1所示。
输入的二进制信息序列经串/并变换后,分为三路并行序列BAC,每一组并行的BAC称为三比特码元。
每路的码元速率是输入数据速率的1/3。
A和C送入同相支路的2/4电平变换器,输出的电平幅度值为ak;B和C送入正交支路的2/4电平变换器,输出的电平幅度值为bk。
将ak和bk这两个幅度不同而相互正交的矢量合成后就能得到8PSK信号。
在图2.1中,A用于决定同相支路信号的极性(A为“1”码时,ak为正;A为“0”码时,ak为负)。
B用于决定正交支路信号的极性(B为“1”码时,bk为正;B为“0”码时,bk为负)。
C则用于确定同相支路和正交支路信号的幅度(C为“1”码时,|ak|>|bk|;C为“0”码时,|ak|<|bk|)。
图1正交调制法产生8PSK信号方框图
8PSK绝对移相调制利用载波的8种不同相位来表征数字信息。
它把输入的二进制信号序列经过串并变换每次把一个3位的码组映射为一个符号的相位,因此符号率为比特率的1/3,它们与载波相位的映射关系如图2所示
图2位信息比特到8PSK符号的映射关系图
系统根据映射后的相位,计算出I,Q两路的数值,经过成形滤波,送入信道传输。
在接收端,首先经过匹配滤波滤除带外噪声和干扰,然后经过抽样相位判决,相位解码,并串变换,恢复出原始的数据流。
整个8PSK调制解调系统的基带仿真框图如下图3所示
图38PSK的调制解调原理图
由于8PSK存在相位模糊问题,因此可采用差分编码技术,将3位码组映射的相位值作为实际相位的增加量;在接收端,抽样判决后的相位值也须先经过相应的差分解码,恢复出原始相位值,之后再进行相位解码和并串转换就可恢复出原始数据流。
采用这样的带差分编码的8PSK(即D8PSK.)就可解决相位模糊的问题设计原理
2.28PSK的调制
八进制移相键控(8PSK)调制。
由于8PSK将GMSK的信号空间从2扩展到8,因此每个符号可以包括的信息是原来的4倍。
8PSK的符号率保持在271kbps,每个时隙可以得到69.2kbps的总速率,并且仍然能够完成GSM频谱屏蔽。
对于高速传输,为了提高频带利用率,多采用多进制调制方法,在一个波形周期(0,TS)内发送多个二进制符号。
频带利用率能成倍增加。
8PSK,载波有(0,p/4,p/2,3p/4,p,5p/4,3p/2,7p/4)八种不同的初相,可以在一个波形周期(0,TS)内发送3个二进制符号(000,001,010,011,100,101,110,111)。
频带利用率能达到6b/S/HZ。
由于8PSK信号幅度不是恒定的,因此,被调制信号将不再保持恒定幅度,它必须能够从任何起点到达任何相位位置。
这意味着8-PSK信号的幅度变化很大,这给RF放大器带来了较大压力,而且可能会导致进一步失真。
通过8PSK设计的增强功能,即3π/8旋转则能够降低较大的幅度变化。
所以,经过符号映射后的符号,应再按照F式进行3π/8弧度的符号旋转。
矢量图见图:
图48PSK矢量图
函数首先将产生的二进制序列送入,在串并变换处分成3个电平,b1,b2和b3,其中b1用于决定同相路信号的极性,当其为1时,同路信号的极性为1,当其为0时,同路信号的极性为-1。
b2用于确定正交路信号的极性,当其为1时,正交路信号的极性为1,当其为0时,正交路信号的极性为-1。
b3用于确定同相路和正交路的幅度,当8PSK信号幅度为1时,若b3为1时同相路的基带信号幅度应为0.924,而正交路幅度为0.383;若b3为0时,同相路信号幅度为0.383,而正交路信号幅度为0.924。
求出I和Q以后就分别与相位相反的载波叠加。
最后相加就得到了调制后的8PSK信号。
原理图见图:
图58PSK的调制原理图
2.38PSK的解调采用双正交相干解调
8PSK信号与信道中的噪声叠加后输入解调器,首先将信号分解成四个独立的信号,然后分别与相位不同的载波相叠加,然后就是判决电路,当不对时,计数器加1。
判决出以后的信号就是b1,b2,b3最后将3个信号叠加起来就得到了输出信号。
蒙特卡罗分析就是分析信号信噪比的误码率和误比特率,然后对信号进行分析,与理论的误码率和误比特率进行对比。
原理图见图6。
图68PSK的双正交相干解调
2.4眼图
眼图是信号由垂直扫描进入与同周期的水平扫描锯齿波叠加到示波器上时到得图案。
眼图能够反映信号在传输过程中受到的信道噪声影响的强度,眼图越模糊,眼睛越闭合,则说明噪声越强,反之,则说明噪声强度弱,也能说明信道性能更优良。
三信号调制与解调
3.18PSK信号发送端的调制
对1800Hz单载波进行码元速率恒为2400Bd的8PSK调制,即对于每个码元调制所得的信号长度等于四分之三个载波信号周期。
发送端完整的信号调制框图如下所示:
信息的发送是以数据帧的形式进行发送的,每次只发送一个数据帧,而不是连续发送的,这样信息在发送前发送端就不需要先跟接收端建立连接,但同时在对信号进行信源编码,信道编码和前导及探测报头序列的过程中则降低了信号传送的效率。
数据帧主要包括两部分即前导及探测报头序列和所要传输的数据部分。
调制框图中各个模块的功能如下所示:
1)截尾卷积编码
一般情况下,卷积编码的时候在输入信息序列输入完毕后都还要再输入一串零比特的数据用于对移位寄存器进行复位,这样在一定程度上影响了信源的编码效率。
而截尾卷积编码则是在每次编码完成后不对移位寄存器进行复位操作,而是将上次编码后编码寄存器的状态作为下次编码时移位寄存器的初始状态。
这样一方面使得信源的编码的码率得到了提高,另一方面也增加了信息的安全性,因为接收端只有知道发送端编码器中的移位寄存器的初始状态或者付出比较大的解码代价的情况下才能对接收到的信号进行解调,否则解调出来的永远是乱码。
2)交织
码元的交织其实是属于信道编码,交织的目的是通过将信息在信道中受到的突发连续差错分散开来,使得接收到的信号中的差错趋向于随机差错,降低接收端信息解调出错的概率,从而提高通信中信息的可靠性。
交织的方法一般是用两个适当大小的矩阵,同一时间一个用于数据的存储另外一个则用于数据的读取,而且两个矩阵的存取或者输出是交替的。
输入序列按照逐行(列)的顺序存储到其中的一个矩阵中,而输出序列则是按照逐列(行)的顺序从另一个矩阵中读取。
通常矩阵越大,则对于连续性的突发错误的分散效果越好,但是编码的时延也就越大。
3)Walsh码
Walsh码是一种同步正交码,在同步传输的情况下,具有良好的自相关特性和处处为零的互相关特性。
其编码所得到的码元都是取自Hadamard矩阵的行或者列。
理论上,信号如果在信道中是相互正交的,那么信号之间的相互干扰就可以达到零了。
但是由于信号的多径效应和其他非同步信号的干扰,使得信道中的信号并不是完全正交的,干扰也就不为零了。
所以实际情况下,Walsh码一般都只是作为扩频码来使用。
扩频简单地说就是将传输信号的带宽扩展到更宽的频带上去。
在信道的传输过程中,由于信号的频谱扩展了,其幅值也随之减小,使得信号很好地隐藏在噪声之中,即可以用比较低的发送功率来传输信号,同时提高信号的保密性。
而在接收端对信号进行解调的时候,只是将扩展后的信号的功率谱缩回来使得其功率谱的幅值大大增加,而并没有改变接收信号中噪声功率谱的幅值,这样就能够大大提高接收端的信噪比,从而提高信号的抗干扰能力。
4)PN码
Walsh码的自相关特性和互相关特性在实际的应用中都不够理想,即信号经过多径信道时,不同径之间不同信号之间都会产生严重的干扰。
为此,可以用相关性较好的伪随机序列与Walsh码模8相加,这时得到的码元序列既保持了Walsh码的正交性,同时又大大改善了其相关特性,使其相关功率谱的旁瓣大大减小。
该调制中所用到的伪随机序列即PN序列(PseudorandomNoise伪噪声序列)。
通常所说的M序列和m序列即为短PN序列和长PN序列。
将Walsh编码和PN码模8相加后,所得到的信息序列在传输中的抗多径引起的干扰性能就能够得到较大的提高了。
5)前导及探测报头序列
前导序列及探测报头就是在信息发送之间加在数据帧前相对于接收端已知的序列。
前导及探测报头序列的作用是用于接收端对信号的捕获,信道的估计、均衡和对接收信号频偏的估计。
若没有在发送信息前加上前导及探测报头,则接收端没法判断接收到的信号到底是噪声还是发送端发送的消息,信号也就无法解调。
6)8PSK调制
8PSK信号的调制主要包括对每输入的三个比特信号映射到同相支路和正交支路上的相应电平,并对两路的电平分别进行滤波,最后再将滤波所得的同相支路和正交支路的信号调制到频带上去。
其调制框图如下所示:
对信号进行滤波的作用是一方面对信号所占的带宽进行压缩,另一方面是提高信号抗噪声干扰的能力。
当发送端和接收端所用到的滤波器都为根号升余弦滤波器的时候,能够有效地滤除信号传输过程中所受到的噪声干扰,降低系统的误码率。
根号升余弦滤波器的冲激响应为:
其中为根号升余弦滤波器的滚降系数,滤波器的滚降系数越高则其滤波性能越好,同时减少抽样定时脉冲的误差,但是占用的带宽也就越宽,一般选择在0.2—0.6之间。
3.28PSK信号接收端的解调
接收端在对信号进行解调的时候主要解决的问题包括:
·传输过程中多普勒效应产生的频移;
·时延产生的多径效应;
·对接收到的码元序列进行解码。
四设计及仿真
4.1MATLAB软件的介绍
MATLAB软件是美国Mathworks公司的产品,MATLAB是英文MATRIXLABORATORY(矩阵实验室)的缩写。
MATLAB软件系列产品是一套高效强大的工程技术数值运算和系统仿真软件,广泛应用于当今的航空航天、汽车制造、半导体制造、电子通信、医学研究、财经研究和高等教育等领域,被誉为“巨人肩膀上的工具”。
研发人员借助MATLAB软件能迅速测试设想构想,综合评测系统性能,快速设计更好方案来确保更高技术要求。
同时MATLAB也是国家教委重点提倡的一种计算工具。
MATLAB主要由C语言编写而成,采用LAPACK为底层支持软件包。
MATLAB的编程非常简单,它有着比其他任何计算机高级语言更高的编程效率、更好的代码可读性和移植性,以致被誉为“第四代”计算机语言,MATLAB是所有MATHWORKS公司产品的数值分析和图形基础环境。
此外MATLAB还拥有强大的2D和3D甚至动态图形的绘制功能,这样用户可以更直观、更迅速的进行多种算法的比较,从中找出最好的方案。
从通信系统分析与设计、滤波器设计、信号处理、小波分析、神经网络到控制系统、模糊控制等方面来看,MATLAB提供了大量的面向专业领域的工具箱。
通过工具箱,以往需要复杂编程的算法开发任务往往只需一个函数就能实现,而且工具箱是开放的可扩展集,用户可以查看或修改其中的算法,甚至开发自己的算法。
目前,MATLAB已经广泛地应用于工程设计的各个领域,如电子、通信等领域;它已成为国际上最流行的计算机仿真软件设计工具。
现在的MATLAB不再仅仅是一个矩阵实验室,而是一种实用的、功能强大的、不断更新的高级计算机编程语言。
现在从电子通信、自动控制图形分析处理到航天工业、汽车工业,甚至是财务工程。
MATLAB都凭借其强大的功能获得了极大的用武之地。
广大学生可以使用MATLAB来帮助进行信号处理、通信原理、线性系统、自动控制等课程的学习;科研工作者可以使用MATLAB进行理论研究和算法开发;工程师可以使用MATLAB进行系统级的设计与仿真。
4.28PSK调制部分
本设计采用相位选择法进行8PSK调制。
其三位二进制序列与对应控制相位对应如下表
表1三位二进制序列与对应控制相位
111------π/8
110------3π/8
010------5π/8
011------7π/8
001------9π/8
000------11π/8
100------13π/8
101------15π/8
对应上表,首先生成对应相位的同频载波,再根据输入二进制序列对每连续三位进行判决,输出相应相位的载波即可。
其MATLAB程序如下:
f=150 %抽样频率
g=(sign(rand(1,150)-0.5)+1)/2 %产生二进制序列
sn=randn(1,50*length(g)); %产生加性高斯白噪声
dt=2*pi/149;
t=0:
dt:
2*pi;
si=[];co=[]; %si为正交分量,co为同相分量
sit=[];sqt=[]; %sit为同相分量幅度,sqt为正交分量幅度
sb2=[];%输入二进制序列
%8PSK调制过程
forn=1:
3:
length(g); %一次取3个二进制数
ifg(n)==0&&g(n+1)==0&&g(n+2)==0
%b1b2b3=000时正交分量和同相分量的幅值
it=-0.383*ones(1,150);
qt=-0.924*ones(1,150);
b2=[zeros(1,50)zeros(1,50)zeros(1,50)]
elseifg(n)==0&&g(n+1)==0&&g(n+2)==1 %b1b2b3=001时
it=-0.924*ones(1,150);
qt=-0.383*ones(1,150);
b2=[zeros(1,50)zeros(1,50)ones(1,50)]
elseifg(n)==1&&g(n+1)==0&&g(n+2)==0
it=0.383*ones(1,150);
qt=-0.924*ones(1,150);
b2=[ones(1,50)zeros(1,50)zeros(1,50)]
elseifg(n)==1&&g(n+1)==0&&g(n+2)==1
it=0.924*ones(1,150);
qt=-0.383*ones(1,150);
b2=[ones(1,50)zeros(1,50)ones(1,50)]
elseifg(n)==0&&g(n+1)==1&&g(n+2)==0
it=-0.383*ones(1,150);
qt=0.924*ones(1,150);
b2=[zeros(1,50)ones(1,50)zeros(1,50)]
elseifg(n)==0&&g(n+1)==1&&g(n+2)==1
it=-0.924*ones(1,150);
qt=0.383*ones(1,150);
b2=[zeros(1,50)ones(1,50)ones(1,50)]
elseifg(n)==1&&g(n+1)==1&&g(n+2)==1
it=0.924*ones(1,150);
qt=0.383*ones(1,150);
b2=[ones(1,50)ones(1,50)ones(1,50)]
elseifg(n)==1&&g(n+1)==1&&g(n+2)==0
it=0.383*ones(1,150);
qt=0.924*ones(1,150);
b2=[ones(1,50)ones(1,50)zeros(1,50)]
end
sb2=[sb2b2];
c=cos(f*t);s=sin(f*t);
sit=[sitit];sqt=[sqtqt];
co=[coc];si=[sis];
end
psk=sit.*co+sqt.*si; %调制后的8psk信号
仿真结果如下图:
图7二进制序列
图88PSK调制
4.38PSK解调部分
采用双正交相干解调。
这里有四个不周相位的本地载波,分别分0,π/2,-π/4,π/4,其频率与发送端载波一样。
四个不同相位的载波分别与一个周期的已调信号作乘法运算,然后进行判决。
具体判决方法是,把所乘结果的离散数据相累加,如果其和大于0,则相应判决码输出1,否则输出0。
实际上,由于作乘法运算之后的离散也为一对称的正弦离散信号,故只需取出此信号内的最大值与最小值,进行相加并判断其正负即可,这样减少了运算量。
对应2,b2对应于输入二进制序列的第一位,b1对应于输入二进制序列的第二位,b3和b4则对应于第三位,第三位的取值是b3b4求同或的值。
因此,程序首先生成四种相位的本地载波,然后对输入的已调信号的每一个周期内作乘法,再进行上述的判决。
程序如下:
rpsk=psk+sn; %加入加性高斯白噪声
rs=[]; %rs用来存放解调后的二进制序列
form=1:
150:
50*length(g)-150;
rpsk1=rpsk(m:
m+149); %取一个码元
sit=rpsk1.*cos(f*t);
it=cumtrapz(sit)*dt;
it=it(e