1、本科毕业设计(20届)基于IEEE80216D的WIMAX接收机物理层的MATLAB仿真实现所在学院专业班级通信工程学生姓名学号指导教师职称完成日期年月I摘要【摘要】本文主要介绍了基于IEEE80216D的WIMAX接收机物理层的关键技术OFDM技术的发展历程、OFDM系统的优势以及其应用,还阐述性的介绍了OFDM系统的基本原理及其在MATLAB中的仿真实现。在介绍OFDM原理的同时,还简单介绍了OFDM系统中的一些关键性的技术,主要包括了符号保护间隔的插入、导频符号的产生与插入、同步技术、信道编码等。根据WIMAX收发信机物理层的原理框图,利用MATLAB仿真软件,按模块编写了一个具有发射和
2、接收基本功能的OFDM系统;再在这个系统的基础上加入信道编码模块,讨论信道编码对整个系统性能的影响;然后加入多径信道模块,观察多径信道对整个系统的影响;最后是考虑实际传输时,发送的不会是单帧数据以及传输出现错码时系统所应该具有的反应,基于此考虑,在OFDM系统加入了多帧数据发送模块和错码重发模块。本文中,对于OFDM系统设计中的一些关键性的MATLAB函数也做了简单的说明介绍。【关键词】OFDM技术;信道编码;多径信道;多帧发送;错码重发。IIABSTRACT【ABSTRACT】THISPAPERINTRODUCESTHEDEVELOPHISTORYOFTHEKEYTECHNOLOGYABOU
3、TIEEE80216DWIMAXRECEIVERPHYSICSLEVELOFDMTECHNOLOGY,THEADVANTAGESOFOFDMSYSTEMANDITSAPPLICATION,THEPRINCIPLEOFOFDMSYSTEMSANDITSMATLABSIMULATIONREALIZATIONBYINTRODUCINGTHEPRINCIPLEOFOFDMTECHNIQUE,SOMEKEYTECHNIQUESOFTHEOFDMSYSTEMAREBRIEFLYDISCUSSED,INCLUDINGGUARDSYMBOLINSERTION,PILOTSYMBOLSGENERATIONAND
4、INSERTION,SYNCHRONIZATION,CHANNELCODINGANDSOONFIRSRLY,ACCORDINGTOTHEPHYSICALLAYEROFWIMAXTRANSCEIVERBLOCKDIAGRAM,WECOMPOSEDABASICOFDMTRANSMITTERANDRECEIVERBYUSINGMATLABSIMULATIONSECONDLY,CHANNELCODINGMODULEISADDEDTOTHESYSTEMTODISCUSSTHECHANNELCODINGMODULEPERFORMANCEOFTHEWHOLESYSTEMTHIRDLY,WEADDTHEMUL
5、TIPATHCHANNELMODULEANDOBSERVETHEMULTIPATHCHANNELMODULEPERFORMANCEOFTHESYSREMANDFINALLY,SYSTEMBITERRORRATEAREANALYZEDCONSIDERINGTHAT,INAREALWIMAXCOMMUNICATION,DATAWONTBETRANSMITTEDINASINGLEFRAMEANDSYSTEMWILLREACTTOERRORCODES,MULTIFRAMEDATATRANSMISSIONMODULEANDERRORCODERETRANSMISSIONMODULEARECOMPOSEDI
6、NTOTHESIMULATIONPLATFORMSOMEKEYMATLABFUNCTIONSUSEDINTHEOFDMSYSTEMAREALSODISCUSSED【KEYWORDS】OFDMTECHNOLOGYCHANNELCODINGMULTIPATHCHANNELMULTIFRAMETRANSMISSIONERRORCODERETRANSMISSIONIII目录1绪论111WIMAX物理层技术OFDM的发展112OFDM技术的优势113OFDM技术的不足214课题的主要工作与章节的安排22WIMAX收发信机物理层的基本原理321WIMAX发射机原理322WIMAX接收机原理43WIMAX收
7、发信机物理层各模块功能的MATLAB实现631WIMAX条件下的OFDM参数设置632WIMAX发射机输入信号的产生633QPSK调制与解调7331QPSK调制7332SCATTERPLOT函数8333QPSK解调934随机导频符号的产生与调制1035WIMAX发射机物理层导频符号的插入与WIMAX接收机物理层导频符号的去除10351WIMAX发射机物理层插入导频符号10352WIMAX接收机物理层去除导频符号1236WIMAX收发信机物理层串并/并串转换12361串并转换12362并串转换1437WIMAX收发信机物理层IFFT/FFT14371WIMAX发射机物理层IFFT14372WIM
8、AX接收机物理层FFT1438WIMAX收发信机物理层添加/去除保护间隔循环前缀14381WIMAX发射机物理层加保护间隔14382WIMAX接收机去保护间隔15IV39信道模型高斯信道16391MATLAB中高斯信道的实现16310误码率计算及分析164信道编码对WIMAX收发信机物理层性能的影响2041信道编码简介2042汉明码编码及MATLAB实现2043汉明码解码及MATLAB实现2144仿真及分析225多径信道对WIMAX收发信机物理层性能的影响2351多径信道简介2352多径信道的仿真方法2353使用RAYLRND函数编写多径信道2354仿真及分析246多帧以及错码重发的实现256
9、1多帧的MATLAB实现2562错码重发的MATLAB实现2563多帧错码重发的仿真结果分析277总结30参考文献31致谢错误未定义书签。附录321WIMAX收发信机基本功能的实现322信道编码对误码率的影响353多径信道对误码率的影响434多帧及错码重发的实现4811绪论WIMAXWORLDWIDEINTEROPERABILITYFORMICROWAVEACCESS,这是一种基于IEEE80216D协议的新兴的宽带无线接入技术。WIMAX技术能够实现远距离的传输,提供更快速的宽带接入,提供多媒体通信服务,与WIFI技术相比,能够更好的提供“最后一公里”服务。与3G实现移动业务宽带化不同的是,
10、WIMAX实现的是宽带业务的移动化。现行的3G技术美国标准CDMA2000、欧洲标准WCDMA、中国标准TDSCDMA,三者采用的都是码分技术CDMACODEDIVISIONMULTIPLEACCESS,而WIMAX采用的则是正交频分复用技术OFDMORTHOGONALFREQUENCYDIVISIONMULTIPLEXING,这是代表未来通信技术发展方向的技术。所以,本课题研究的基于IEEE80216D的WIMAX接收机物理层的MATLAB仿真实现即是主要研究WIMAX物理层的关键技术OFDM的MATLAB仿真实现。11WIMAX物理层技术OFDM的发展传统的多载波通信系统是将系统频带划分成
11、若干个分离的子信道。子信道与子信道之间存在着信道干扰。一般都是加入长度一定的保护间隔,以牺牲保护间隔为代价来避免信道干扰。在接收机部分再通过滤波器分离得到有用的信息。但用这种方法来避免信道间的干扰是以牺牲频带利用率为代价的。随着子信道数量的增多,滤波器的设计就成了难中之难1。20世纪60年代,频分复用概念FDMFREQUENCYDIVISIONMULTIPLEX就已经被提出来了,数据可以通过FDM平行传输。20世纪70年代,韦斯坦WEISTEIN和艾伯特EBERT等人应用快速傅里叶方法FFTFASTFOURIERTRANSFORMATION技术研制了一个完整的多载波传输系统,即正交频分复用技术
12、OFDMORTHOGONALFREQUENCYDIVISIONMULTIPLEXING2。OFDM中各个子载波之间相互正交这种“正交”表示的是载波频率间精确的数学关系所以采用FFT来实现这种调制方式3。快速傅里叶变换技术解决了如何产生多个互相正交的子载波的问题,快速傅里叶逆变换技术解决了如何从子载波中恢复出原信号的问题。这两种技术的发展解决了多载波传输系统发送和接收的难题。应用快速傅里叶变换可以使得多载波传输系统的大大降低其复杂度。由此,OFDM技术走向现实成为了可能。但是OFDM系统仍然有着其他大量复杂的信号处理过程,而缺乏数字处理功能强大的元器件直接使得OFDM技术从理论迈向实践的脚步放缓
13、了4。在20世纪80年代,得益于多载波调制MCMMULTICARRIERMODULATION的进步,FFT技术不再是制约OFDM技术的难题。其它的难题也随着技术的发展得到了有效的解决。OFDM技术从此走上了通信舞台5。OFDM技术在通信技术向B3GBEYONDTHIRDGENERATIONINOBILECOMMUNICATIONSYSTEM/4G演进的过程中担当了关键的角色之一。目前,OFDM技术主要包括以下几种类型VOFDM、WOFDM、FOFDM、MIMOOFDM6。12OFDM技术的优势OFDM技术能够如此的受到人们的青睐,是因为它有以下这些优势721OFDM系统具有大量传输数据的能力,
14、即便是窄带带宽。它可以同时分开1000个以上的数字信号。它还可以在干扰信号的周围安全运行,又可以称为信号的“穿透能力”,这是目前的码分多址技术CDMACODEDIVISIONMULTIPLEACCESS所不具有的能力;2OFDM技术具有对抗频率选择性衰落的能力。这是它最大的优点。相较而言,单个衰落或干扰对单载波系统的影响是巨大的,有可能导致整个通信的失败。但是,在多载波系统中,单个衰落或干扰只能使得一部分的载波受到影响。而且,即使受到了影响也可以通过对这些子信道进行纠错,改善系统性能;3适用于多径信道和衰落信道中的高速数据传输,可以有效地对抗信号波形间的干扰。信道中出现的频率选择性衰落只损害频
15、带凹陷处的子载波。由于它对其它子载波没有影响,所以,总的系统性能要优良很多;4信道利用率很高。当子载波足够多时,系统的频谱利用率无限趋近于2BAUD/HZ。13OFDM技术的不足OFDM技术主要有以下两点不足1对相位噪声和载波频偏十分敏感。OFDM系统对正交性有着十分严格的要求,即使载波频偏非常小,也会破坏正交性,引起信道间干扰ICI。这是OFDM技术最大的缺陷8。2峰均比PAPRPEAKTOAVERAGEPOWERRATIO过大。OFDM信号是由各个子信道的、多个子载波信号组成的。并且,组成OFDM信号的子载波信号都是独立调制的,不同的载波信号可以有不同的调制。OFDM调制会产生一个高幅度的
16、因子数据的序列决定了这些小信号的相位。当他们同相时,这多个小信号相加形成一个瞬时高幅度因子9。14课题的主要工作与章节的安排课题的主要工作1了解WIMAX的基本概念及其物理层关键技术OFDM技术的发展历史及其应用。2了解WIMAX收发信机物理层的基本原理及其各模块的作用。3了解MATLAB软件的使用及代码编写。4在MATLAB中编写信号的产生、数字调制、插入导频、逆傅里叶变换等基本模块的代码,实现WIMAX收发信机的基本功能。5在基本功能的基础上,加入信道编码模块,观察信道编码对系统整体性能的影响。6再添加多径信道模块,观察多径信道对系统误码率的影响。7最后是考虑实际传输中可能出现的现实问题,
17、将单帧的WIMAX收发信机改为多帧传输系统,并且具备错码重发的能力。本文章节安排第一章简述WIMAX物理层的关键技术OFDM技术的背景、优点及其不足。第二章介绍WIMAX收发信机物理层的基本原理。第三章研究WIMAX收发信机物理层各模块在MATLAB中的具体实现并且介绍了关键函数的使用方法。32WIMAX收发信机物理层的基本原理WIMAX物理层的关键技术OFDM系统的原理框图如图21所示,在OFDM系统实际工作中,首先,将串行的用户信息数据经过串并转换转变为多个并行的低速数据流。通过串并转换可以降低码元速率,增大码元的符号周期。在调制编码模块中,与传统的一种频率传送数据相比,OFDM可以在正交
18、的频率上同时发送多路信号(即并行的传送多路信号),这样OFDM就能够充分地利用信道的带宽10。OFDM通过快速傅立叶变换来选用那些正交的波形,而不是使用带通滤波器11。输入数据解交织信号逆映射信道估计并串变换FFT串并变换去保护间隔定时和频率同步载波解调载波调制插入保护间隔并串变换IFFT串并变换插入导频信号映射交织信道编码高斯白噪声信道发射机信道接收机符号定时输出数据信道解码图21OFDM原理框图21WIMAX发射机原理1信道编码OFDM系统通常采用卷积纠错码、汉明码编码、维特比码等编码方式编码。在本课题中,信道编码方式采用汉明码编码。2交织交织是一种简单而有效的编码技术。可以大幅度的提高系
19、统纠正突发错误的能力。交织的原理为按行写入,按列读出12。交织的目的就是把长的突发差错分散到待解码的数据序列之中,再用前向纠错技术FECFORWARDERRORCORRECTION来纠正随机差错。3数字调制数字调制具有很强的抗干扰能力,可以远距离传输。但它的频带需求较宽,对设备要求比较高。在本课题中,我们选择了四相相移键控QPSKQUADRATUREPHASESHIFTKEYING调制。4插入导频每M个子载波中插入N个导频符号。插入导频是为了使系统能够稳定接收。在本课题中,M1,N1。5串并转换将串行的输入信号进行串并转换转换为M条线路并行传输的数据流。通过这种转换尽管降低了子载波的码元速率,
20、但整体数据信号传输的速率得到了提高。46快速傅立叶逆变换IFFT经过这一模块后,输入信号作为频域数据进行IFFT处理,转化为时域离散信号。7并串转换通过这种变换,将M条并行的数据流重新转换为串行的信号数据。8插入循环前缀CPCYCLICPREFIX在信噪比边缘损耗中,以丢掉循环前缀CP为代价,来减弱符号间干扰ISIINTERSYMBOLINTERFERENCE对OFDM符号的影响。22WIMAX接收机原理实际的接收系统中主要有以下几个模块组成1载波解调;2定时和频率同步;3去循环前缀;4串并变换;5快速傅里叶变换FFT;6并串变换;7信道估计;8信号逆映射;9去交织;10信道解码13。1定时和
21、频率同步OFDM信号传输时,信号频率偏移会破坏传输子载波间的正交性,出现信号信道间的干扰。为了避免这种情况的出现,就需要在进行FFT变换前,对频率偏差进行估计和补偿。OFDM同步算法较常用的有利用奇异值分解的同步算法和最大似然估计MLMAXIMUMLIKELIHOOD算法。在图22中,图示了同步在系统中所处的位置14。样值、符号、帧粗同步FFT频偏粗同步样值、符号、帧细同步频率细同步A/D去除循环前缀XP/SFCFS图22同步在系统中所处的位置ML算法利用循环前缀按照最大似然准则估计出数据的定时与载频偏移,避免了基于导频的同步估计带来的频率和功率资源的浪费。ML算法计算量小,冗余度低,算法实现
22、简单,并且可同时估计定时和频偏。在OFDM系统中,一般是要求定时频偏小于符号间隔的4,要求频率偏移小于子载波间隔的2,3DB相位噪声带宽大约为子载波间隔的0010115。2去除循环前缀CPOFDM技术一般应用在无线系统的数据传输中,由于无线信道的多径效应,从而使符号间产生干扰。在OFDM系统中,为了既可以消除符号间干扰ISI),又可以消除信道间干扰ICI,通过循环前缀来充当保护间隔。当循环前缀的长度大于或等于信道冲击响应长度时,可以有效地消除ISI和ICI。一般情况下,CP长度都是取传输码长度的1/16。在接收端,去掉循环前缀这个保护间隔,以恢复子载波之间的正交性16。3串并转换将串行的数据转
23、换成并行的数据流。YGINXGINHNZNWN214快速傅立叶变换FFT把时域离散的数据转化为频域离散的数据。对于N点的FFT运算,需要实施2N次复数乘法,而采用常见的基于2的FFT算法,其复数乘法仅为2/2LOGNN,可显著降低5运算复杂度。信号除去循环前缀CP后,经FFT变换后可表示为12/01,0,1,1,0,1,1NJMNNNYMFFTYNYNEMNNYMXMHMZMWMMN22其中HM为信道HN的傅里叶转换;ZM为符号间干扰和载波间干扰ZN的傅里叶变换;WM是加性高斯白噪声WN的傅里叶变换。5并串转换将并行的数据流转成串行的数据。6数字解调将QPSK调制的数据解调出来。7去交织恢复出
24、交织前的原始顺序。8解码由于在发射端采用了汉明码编码,所以在接收端采用汉明码解码方式。63WIMAX收发信机物理层各模块功能的MATLAB实现31WIMAX条件下的OFDM参数设置傅里叶变换点数为IFFT_BIN_LENGTH256载波数目CARRIER_COUNT256每个载波携带的符号数SYMBOLS_PER_CARRIER4每个符号包含的比特数BITS_PER_SYMBOL2总符号数N_NUMBERCARRIER_COUNTSYMBOLS_PER_CARRIER1024总比特数为N_NUMBERCARRIER_COUNTSYMBOLS_PER_CARRIERBITS_PER_SYMBOL
25、2048两个导频之间的间隔LI4每个载波都有一个导频NPCARRIER_COUNT保护间隔长度GI1/16N_NUMBER128最大信噪比N_SNR732WIMAX发射机输入信号的产生为了保证数据量的长度,以及数据的复杂性。本课题中,利用MATLAB中的随机函数RANDINT来产生非0即1的均匀分布的随机整数序列,将这个随机整数序列作为输入信号X。RANDINT函数RANDINTM,N可以用来产生MN的随机二进制矩阵,其中,“0”和“1”出现的概率相当。如果是产生1行N列即1N的序列的话,只要确定列参数N即可。如RANDINTN;参量N需要事先确定参数的值。本课题设计中,运行RANDINT函数
26、后得到2048个数据序列作为输入信号。为了能够清晰的观察输入信号,取前100个数据,并作图观察。见图31。7图31RANDINT函数生成的前100个随机序列33QPSK调制与解调QPSK全称是四相相移键控信号调制,是一种频谱利用率高、抗干扰性强的数字调制解调方式,已经广泛应用于现实通信中,成为一种十分重要的技术。QPSK是利用载波的四种不同相位差来表征输入的数字信息。这技术规定了四种载波相位,分别为45,135,225,315。调制时,每次可传输2个信息比特,这些信息比特是通过载波相位来传递的。接收端解调时,根据星座图及接收到的载波相位来判断发送的信息比特。数字调制可以用“星座图”来描述,QP
27、SK调制技术的特性可完全由星座图来定义。331QPSK调制对输入信号X进行QPSK调制212XS31将奇序列元素作QPSK已调信号X1的实部,偶序列元素作QPSK已调信号X1的虚部。调制流程见图32。信号调制的代码如下SX21/SQRT2SREALS12N_NUMBERSIMAGES22N_NUMBERX1SREALJSIMAGE8随机输入信号XX1奇序列I偶序列根据QPSK调制公式调制图32QPSK调制流程图此模块编写代码时,需要注意的是因为X是一个1行2048列的矩阵,所以需要使用“”来进行乘法运算。经过QPSK调制后的星座图如图33所示。图33QPSK调制信号的星座图图33中的四个点坐标
28、分别为0707,0707,0707,0707,0707,0707,0707,0707。对应的角度分别为45,135,225,315。符合QPSK调制的四种相位规定。332SCATTERPLOT函数信号调制完成后,利用MATLAB中的SCATTERPLOT函数作出QPSK调制信号的星座图。SCATTERPLOT函数的用法一般地,SCATTERPLOTX可以画出信号X的散点图。9X存在以下几种情况1X是2列实矩阵,该函数将第1列作为同相分量,将第2列作为正交分量;2X是复向量,该函数将实部作为同相分量,虚数部分作为正交分量;3X是实向量,该函数将其作为实信号处理。在本课题中,X符合第2种情况复向量
29、。所以,该函数将实部作为同相分量,虚部作为正交分量处理。333QPSK解调由于信号在发射部分进行了QPSK调制,所以,为得到原始的输入数据,在接收部分进行QPSK解调。信号的解调即是信号调制的逆过程。所以,信号解调的表达式212SX32发射端,信号调制的时候,是把随机输入信号的奇序列做了实部,偶序列做了虚部。所以,接收端接收到的信号是一个复向量,信号解调的时候,需要将Y1实部与虚部分开,各自独立的解调,再通过一个FOR循环语句将解调后的实部与虚部同时搬移至输出信号Y。完成QPSK的解调。实部的QPSK解调Y_REALREALY1Y_RESQRT2Y_REAL1/2FORK1LENGTHY_RE
30、ALIFY_REK05Y_REK1ELSEY_REK0ENDEND首先,对QPSK解调模块的输入信号复向量取实部;然后,将实部按照QPSK解调公式进行解调,得到解调后的实部信号;最后,对得到的数据进行判决取值。最后一步的判决取值有两种方法第一种方法是强制类型转换。C语言和单片机语言中,可以使用INTX的方法,将小数X强制性的转换为整数型。同样的,MATLAB中,也存在这样的规则。只是MATLAB中不能够直接使用INT来进行强制类型转换的。这里的INT分为8位16位32位64位等,还区分有符号和无符号。所以,需要使用带符号的INT,如INT32。第二种方法是与中间值05作比较如果接收信号的幅度值
31、大于等于05,则信号幅度值置1;否则置0。虚部的QPSK解调与实部的解调完全相同。信号还原YFORK1LENGTHY_REALYY,Y_REK,Y_IMKEND10将复向量的实部与虚部解调出来后,并没有得到最后的输出数据。还需要将实部与虚部的解调数据按顺序穿插至Y之中,即输出数据。QPSK解调程序编写流程图见图34。QPSK解调前端信号Y1根据QPSK解调制公式解调取实部运算取虚部运算将奇偶序列按序穿插成输出信号Y根据QPSK解调制公式解调取值判定取值判定图34QPSK解调流程图34随机导频符号的产生与调制参数设置的时候,就选择了256个载波,每个载波携带4个符号,每个符号有2个比特。对应于每
32、个载波一个导频,这样就需要有256个导频符号。与输入信号类似的,我们利用RANDINT函数产生512个数据的序列,并对这些数据进行QPSK调制,形成256个复向量,作为随机导频符号。35WIMAX发射机物理层导频符号的插入与WIMAX接收机物理层导频符号的去除351WIMAX发射机物理层插入导频符号在34节得到了256个导频符号。如果将这256个导频符号插入已经完成QPSK调制的输入信号X1后,得到的将是一个长度有CARRIER_COUNTSYMBOLS_PER_CARRIERNP1280个符号的序列。从图33中,可以看出,两个导频之间的间隔为LI本课题中LI4。相邻两个导频符号之间的标号差即
33、为一个载波所携带的总的符号长度。而每一个载波携带一个导频符号和长度为LI4的已调信息符号,所以,载波携带的总的符号长度为LI15。因此,在进行导频插入循环时,导频之间的步进长设置为LI1。图35形象的描述了导频插入的思想首先,找出序列中需要插入导频的数组标号;其次,在新组成的包含导频个数的序列中,删除需要插入导频的数组标号;然后,在插入导频后的新序列X2中,11选择需插入导频的数组标号,将导频符号赋予这序列。做完这一步,X2中在导频标号处就有了导频符号;最后是在新序列中选择已经删除了导频标号的标号,将已调输入信号赋予这序列。这样,就完成了导频的插入。新的序列X2包含了已调信号和导频符号。已调信
34、息符号标号为12771280已调信息符号标号为12721275已调信息符号标号为710已调信息符号标号为25插入第1个导频符号标号为10211024的已调信息符号标号为10171020的已调信息符号标号为58的已调信息符号标号为14的已调信息符号插入第2个导频符号插入第255个导频符号插入第256个导频符号插入导频符号已调信息符号图35插入导频符号示意图MATLAB中插入导频的程序编写流程图见36。创建一个数组PILOT,包含导频下标X2中PILOT对应的单位赋予导频符号将数组SIGNAL中的导频下标对应的单位删除创建一个数组SIGNAL,包含新序列X2下标X2中SIGNAL对应的单位赋予X1
35、图36插入导频流程图插入导频符号PILOT1LI1CARRIER_COUNTSYMBOLS_PER_CARRIERNPPILOT即是需要插入导频符号的标号SIGNAL1CARRIER_COUNTSYMBOLS_PER_CARRIERNPSIGNAL即是插入导频后,新序列X2的标号SIGNALPILOT删除SIGNAL中的PILOT标号,剩下的即是信息符合的标号X2,PILOTTRAINING_SYMBOLS1X2,SIGNALX112352WIMAX接收机物理层去除导频符号导频符号并不是需要的有效符号,它仅仅是为信道纠错而存在。所以,为得到有效符号,在接收部分需要去除导频。观察图37知道,只需
36、要提取已插入导频符号中的信息符号即可。去除导频符号Y1Y2,SIGNAL36WIMAX收发信机物理层串并/并串转换串并变换后,可以将高速的串行数据转变为低速的并行数据。串并变换后,每个子信道上的信号速率减小,但整体的信道速率得到了提高。这也加长了信号的持续时间,加强了信号的抗干扰能力。串并/并串转换示意图见图37。已调信息符号标号为12771280已调信息符号标号为12721275已调信息符号标号为710已调信息符号标号为25第1个导频符号第2个导频符号第255个导频符号第256个导频符号串行数据并行数据第1个导频符号第2个导频符号第255个导频符号第256个导频符号已调信息符号标号为710已
37、调信息符号标号为25已调信息符号标号为12771280已调信息符号标号为12721275图37串并转换/并串转换示意图361串并转换MATLAB中,串并转换可以通过RESHAPE函数来实现。RESHAPE函数RESHAPEX,M,N可以将X序列转换为MN的序列。此模块代码编写的时候,需要注意的是RESHAPE函数是优先按列提取X中的元素,并将之填充至MN的矩阵中。RESHAPE函数演示见图38。13图38RESHAPE函数演示1图38中,执行BRESHAPEA,3,3,将1行9列的矩阵A转换为33的矩阵。我们可以看到,转换时,RESHAPE函数是先填充列的,而不是先填充行。所以得到的结果是图3
38、5中的B,而不是B的转置。同样的,如果是将MN的矩阵转换为1MN的矩阵时,首先提取的也是列。如图39所示。图39RESHAPE函数演示2执行指令ARESHAPEB,1,9,得到的矩阵是图39中的A所示,而不是A123456789。若要得到这样的A,则需要将B转置,然后在进行变换。如图310所示。图310RESHAPE函数演示314串并转换X3RESHAPEX2,SYMBOLS_PER_CARRIER1,CARRIER_COUNT将11280的序列X2转换为5256的矩阵X3。其中第一行的256列全部都是导频符号。362并串转换与串并转换类似的,使用RESHAPE函数,仅仅是改变函数的参数并串转
39、换X5RESHAPEX4,1,SYMBOLS_PER_CARRIER1IFFT_BIN_LENGTH将5256的矩阵X4转换为11280的序列。37WIMAX收发信机物理层IFFT/FFT由于OFDM各个子载波之间相互正交这种“正交”表示的是载波频率间精确的数学关系所以采用FFT来实现这种调制方式。371WIMAX发射机物理层IFFTMATLAB中,可以直接调用IFFT/FFT函数,来进行傅里叶变换/傅里叶逆变换。此处,为FFT变换考虑,设立了一个新的变量IFFT_MODULATION来装填X3信号。为了能够装填信号X3,初始化IFFT_MODULATION为5256的0填充矩阵。再将X3赋予
40、逆傅里叶变换初始化矩阵的前256列。装填完成后,对IFFT_MODULATION做傅里叶逆变换。得到新的矩阵X4。IFFT函数IFFTX,N,DIM1当X是一个向量时,返回对X的离散傅里叶逆变换;2当X是一个矩阵时,返回一个矩阵,按列行对X求傅里叶逆变换。DIM1,即按列求解;DIM2,即按行求解。IFFTIFFT_MODULATIONZEROSSYMBOLS_PER_CARRIER1,IFFT_BIN_LENGTHIFFT_MODULATION,CARRIERSX3X4IFFTIFFT_MODULATION,IFFT_BIN_LENGTH,2372WIMAX接收机物理层FFTX3经过IFFT
41、变换之后,信号长度变为5256。所以,接收部分除了将信号做FFT变换之外,还需要从FFT变换之后的信号中还原出5256的数据。还原数据,只需要取FFT变换信号的前256列即可。FFTY4FFTY5,IFFT_BIN_LENGTH,2Y3Y4,CARRIERS38WIMAX收发信机物理层添加/去除保护间隔循环前缀381WIMAX发射机物理层加保护间隔一般的,为了使保护间隔的作用发挥到最大,CP长度GI等于码元长度的1/16。所以,此处GI1/16N_NUMBER128。15加循环前缀的具体做法首先,利用FOR循环将序列X5的后GI个信号赋给新序列X6的前GI个单元中。然后,将整个序列X5赋给X6
42、中从GI1开始的后5256个单元中。所以,X6序列的长度为5256GI。循环前缀的插入见图311。1(1280GI)(1280GI1)1280长度为GI的循环前缀插入CP之前的信号插入CP之后的信号图311循环前缀插入示意图循环前缀插入的MATLAB编程流程图如图312所示。将X5的后GI个单位赋予X6的前GI个单位再将X5填充至X6的GI11280GI图312循环前缀插入流程图加保护间隔FORI1SYMBOLS_PER_CARRIER1IFFT_BIN_LENGTHX61,IGIX51,IENDFORI1GIX61,IX51,ISYMBOLS_PER_CARRIER1IFFT_BIN_LEN
43、GTHGIEND第二个FOR语句循环的内容,即是循环前缀的添加。382WIMAX接收机去保护间隔接收部分的操作,就是发射部分的逆操作。加入保护间隔后,信号的前缀不是所需要的。所以需要做的就是将保护间隔去掉。去保护间隔的操作,与去导频类似。只需要取Y7中非前缀部分赋予新的序列Y6即可。去保护间隔FORI1SYMBOLS_PER_CARRIER1IFFT_BIN_LENGTHY61,IY71,IGIEND1639信道模型高斯信道信道是信号传输的媒介,可分为有线信道和无线信道两类。信道的作用是把携带有信息的信号从信道的输入端传递到信道的输出端。因此,它最重要的特征参数是信息传递能力。在典型情况即高斯
44、信道下,信道的信息通过能力与信道的通过频带宽度、信道的工作时间、信道的信噪比有关频带越宽,工作时间越长,信噪比越大,则信道的通过能力越强。本课题中,信道模型采用了高斯信道。高斯信道是最简单的信道,常指加性高斯白噪声AWGN信道,高斯噪声即为振幅符合高斯概率分布的噪声。对于实验中定量地评价误码率性能,高斯信道有着非常重要的作用。391MATLAB中高斯信道的实现MATLAB中,可以利用WGN函数来模拟模拟高斯白噪声信道模型。WGN函数WGNM,N,P,P是以DBW为单位的输出噪声强度;M,N分别为得到的高斯白噪声的行与列。此函数执行后,得到MN的矩阵。其中,噪声功率可以通过信噪比公式来求解10L
45、GSSNRDBN33因为SNR是已知的,所以只需要求得S信号功率,即可求解N噪声功率。信号的能量,在连续的情况下就是对信号平方后求积分,而在离散的情况下是以求和的方式代替积分。因为X6是向量形式,所以在MATLAB中可以调用NORM函数来实现信号平均功率的求解2|XPOWLENX34NORM函数NORMX1如果X是矩阵,则返回X的最大奇异值;2如果X是向量,则返回X的2范数。高斯白噪声信道模型FORSNR_DB01N_SNRCODE_POWER0CODE_POWERNORMX62/LENGTHX6BIT_POWERCODE_POWER/BITS_PER_SYMBOLNOISE_POWER10L
46、OG10BIT_POWER/10SNR_DB/10NOISEWGN1,LENGTHX6,NOISE_POWEREND310误码率计算及分析将判决取值后得到的输出信号Y与输入信号X作比较。若不相等,则误码个数加1。误码率计算公式为17误码个数误码率总码元数目35误码率计算E0FORI1N_NUMBERIFYIXIEE1ENDENDPSNR_DB1E/N_NUMBER为了了解信噪比对误码率的影响,本课题设计计算了在不同信噪比条件下的误码率。在进行新的信噪比循环的时候,误码个数清0,误码率标号加1。当循环结束后,将不同信噪比条件下的误码率作在同一张FIGURE中,进行客观的比较。为了能够清晰的观察数
47、据,取全部序列的前100个作比较。误码率如图313所示,收发信号比较如图314、图315和图316所示。图313SNR07条件下的误码率18图314SNR0的条件下输入信号与接收信号比较图315SNR4的条件下输入信号与接收信号比较19图316SNR7的条件下输入信号与接收信号比较分析从图313和图314、315、316中,可以发现这样一个结论,随着SNR的增大,误码率大致呈现一个降低的趋势。204信道编码对WIMAX收发信机物理层性能的影响41信道编码简介信道编码技术可改善信号在传输过程中由信道噪声和干扰而造成的误差,提高系统的整体可靠性。信道编码有多种分类方式按字码的功能可以分为纠错码和检
48、错码;按监督码元与信息码元可以分为线性码和非线性码;按照对信息码元和监督码元的约束关系的不同又可以分为分组码和卷积码;按照信息码元在编码后是否保持原来的形式可以分为系统码和非系统码。差错控制编码又称为纠错编码。编码的检纠错能力随着编码方法的不同而不同。比如有的编码只能检错,而不能纠错。一般说来,检纠错能力与编码所付出的代价正相关。代价,指的是监督码元的个数,通常用冗余度来衡量。差错编码即是以降低信息传输速率增加监督码元为代价换取系统的高可靠性传输。分组码是一组长度固定的码组,可表示为N,K。编码时,长度为K的信息位被编码为N位码组长度,而长度为NK的监督位的作用就是实现检纠错。如果信息位与监督
49、位为线性关系时,就称为线性分组码。线性码有一个重要的性质,就是它具有封闭性。线性分组码是差错控制编码。42汉明码编码及MATLAB实现本课题设计中,选用了汉明码编码方式,汉明码是一种能够纠正一位错码且编码效率较高的线性分组码。在MATLAB中,汉明码编码可以调用ENCODE函数来实现;解码可以调用DECODE函数来实现。ENCODE函数ENCODEMSG,N,K,METHOD,OPT,其中,MSG是待编码的信息;N是编码长度;K是信息码元长度,这里K的取值需要能够整除待编码信息长度,否则会补0,凑满信息长度;METHOD指的是使用该指定的方法完成编码,有HAMMING,LINEAR等。本课题设计中,METHOD选择HAMMING;OPT为可选择的优化参数。需要注意的是,选择编码方式的同时,还需要选择信息的进制。本课题设计中,选择二进制BINARY。形式为“HAMMING/BINARY”。汉明码编码M7P4CODEXENCODEX,M,P,HAMMING/BINARYCODEXCODEX编写代码的时候,还需要注意的是执行ENCODE函数得到的是列序列。因此需要将列序列进行转置运算,得到行序列。ENCODE函数的使用如图41所示。21图41ENCODE函
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。