基于matlab的OFDM系统仿真(6)

2019-04-02 14:11

频域数据变为时域数据进行调制。

m程序中的qpskmod函数是自定义的一个函数,其具体的m语言程序为: function[iout,qout]=qpskmod(paradata,para,nd,ml) m2=ml./2;

paradata2=paradata.*2-1; count2=0; for jj=1:nd

isi=zeros(para,1); isq=zeros(para,1); for ii=1:m2

isi=isi+2.^(m2-ii).*paradata2((1:para),ii+count2);

isq=isq+2.^(m2-ii).*paradata2((1:para),m2+ii+count2); end

iout((1:para),jj)=isi; qout((1:para),jj)=isq; count2=count2+ml; end

17

第4章 OFDM系统仿真的实现

4.1 OFDM系统收发机

对于发送端来说,首先是要产生用于仿真的二进制随机数据,编码模块的作用是为了提高系统的可靠性,降低接收端的误码率。之后的交织处理模块是为了防止突发性的错误导致连续一段数据发生错误,无法进行纠错,人为的将数据次序打乱,从而使突发错误分散到不同的地方,有利于纠错。数字调制模块可以提高信道的频谱利用率。插入导频模块用于定时和信道估计;串并转换模块有利于降低数据流的速率;IFFT模块是数据变换形成信道上传输的多载波信号;加入保护间隔和循环前缀会进一步减少ICI和ISI的影响,至此完成了整个信号发送部分的基带处理。

接收端部分是发送端的逆过程,将接收到的信号变换到基带后,移除保护间隔;经过FFT变换后,提取出用于信道估计的数据,利用信道特性对接收信号进行补偿;再经并串转换,将并行数据变为串行数据,然后进行信道校正,解调以及译码等工作后就得到所要的二进制信号的输出。

IFFT变换与IDFT变换的作用相同,只是具有更高的计算效率。由于FFT操作类似于IFFT,因此发射机和接收机可以使用同一硬件设备。接收端进行与发送端相反的操作,将射频(RF)信号与基带信号进行混频处理,并用FFT变换分解频域信号,子载波的幅度和相位被采集出来并转换回数字信号。IFFT和FFT互为反变换,选择适当的变换将信号接受或发送。

4.2 OFDM系统仿真

4.2.1 基本参数的选择

各种OFDM参数的选择需要在多项要求冲突中进行折中考虑。通常来讲,如前所述,首先要确定3个参数:带宽、比特率以及保护间隔,按照惯例,保护间隔的长度应该为移动环境信道的时延均方根值的2~4倍。

一旦确定了保护间隔,OFDM符号周期长度就确定了。为了最大限度的减少由于插入保护间隔所带来的信噪比的损失,OFDM符号周期长度要远远大于保护间隔长度。但是符号周期长度又不可能无限大,否则OFDM系统中包括更多的子载波数,就会导致子载波间隔相应减少,系统的实现复杂度增加,并且加大了系统的峰值平均功

18

率比,同时使系统对频率偏差更加敏感。因此在实际应用中,一般选择符号周期是保护间隔长度的5倍,这样由于插入保护比特所造成的信噪比损耗只有1dB左右。

在确定了符号周期和保护间隔之后,子载波的数量可以直接利用-3dB带宽除以子载波间隔(即去掉保护间隔后的符号周期的倒数)得到或者可以利用所要求的比特速率除以每个子信道的比特速率来确定子载波的数量。每个信道中所传输的比特速率可以由调制类型、编码速率、和符号速率来确定。

(1)有用符号持续时间

有用符号持续时间T对子载波之间间隔和译码的等待周期都有影响,为了保持数据的吞吐量,子载波数目和FFT的长度要有相对较大的数量,这样就导致了有用符号持续时间的增大。在实际应用中,载波的偏移和相位的稳定性会影响两个载波之间间隔的大小,如果为移动着的接收机,则载波间隔必须足够大才能使得多普勒频移可以被忽略。总之,选择有用符号的持续时间,必须以保证信道的稳定为前提。

(2)子载波数

子载波数目越多,有用信号越平坦,带外衰减也快,越接近矩形,越符合通信要求,但子载波数目不能过多,越接近矩形的结果对接收端的滤波器要求越高(只有理想滤波器才能过滤,否则就造成交调干扰)。因此在子载波数目的选择上要综合考虑传递信息的有效性和可行性。子载波数可以由信道带宽、数据吞吐量和有用符号持续时间T所决定。子载波数可以被设置为有用符号持续时间的倒数,其数值与FFT处理过的数据点相对应。N?1T

(3)调制模式

OFDM系统的调制模式可以基于功率或是频谱利用率来选择。调制的类型可以用复数形式来表示dn?an?jbn,其中an和bn在16QAM中为??1,?3?,在QPSK中为?1。总之,应用到每一个子载波的调制模式的选择只能是数据速率需求与传输稳定性之间的折中。另外,OFDM的另一个优点是不同的调制模式可以由分层服务应用到不同的子载波。

(4)速率与带宽

在短波通信中,首先需要考虑的因素是可用于通信的频谱资源、系统期望达到数据传输率以及信道时延对通信质量的影响。系统参数设计由用户指定数据率fd、可用带宽?fmin,fmax?开始。数据率是体现通信系统能力的重要参数,传统的短波通行码

率为2400bps,目前的短波通信技术可达到9600bps的速率。几乎所有用来进行数据传输的短波信道设备基本上是按照模拟话音应用来设计的,常用的SSB电台典型带宽为300~3000Hz。这一频谱范围也决定系统能采用最小ADC采样频率限制,

fs_min?6000Hz。为了实现这样的高速采样,常使用过采样方案。

19

4.2.2 串行数据的产生

为了便于计算把系统的仿真参数设置的较小,假设子载波个数为4,IFFT/FFT的长度为4,调制方式选用QPSK调制,为了最大限度的减少插入保护间隔带来的信噪比损失,保护间隔的长度应为有效符号周期的1/4,即为IFFT/FFT长度的1/4,即设循环前缀的长度为1,每帧含有2个OFDM符号,信噪比为10dB。

设para表示并行传输的信道个数,Ns表示每一帧所含有的OFDM符号个数,ml为调制电平数。根据系统参数知道para=4,Ns=2,由于QPSK利用载波四种不同的相位来表征数字信息,而每一种载波相位代表2比特信息,所以ml=2。由此可知4个并行传输信道要传送4个的OFDM符号,而每一帧含有OFDM符号2个,每个符号又含有2比特的信息量,故总的信息量为三者的乘积。通过式子para*Ns*ml可以计算得出串行序列的长度为16。

4.2.3 串并转换过程

OFDM系统是多载波传输的一种特殊方式,而发送端产生的数据为串行的,因此需要进行串并转换。OFDM将高速输入的串行数据比特流转换成并行传输的低速数据流,而且串并转换之后会提高系统的抗干扰能力。

串并转换的实现方法很多,在matlab里,reshape用来把指定的矩阵改变形状, 但是元素个数不变,在本程序中采用reshape函数来实现串并转换,例如在系统参数中,并行信道的个数为4,信息量为16比特。因此将序列转换成4行4列的矩阵, 函数设置为reshape(Signal,4,4),Signal表示发送端的串行序列。前4bit的数据变为第一列,随后的4bit变为第二列,以此类推。串行数据[1,1,0,0,0,1,1,0,1,1,0,1,1,0,1,1],转换之后得到的并行数据为4行4列的矩阵用paradata来表示: paradata=1 0 1 1 1 1 1 0 0 1 0 1 0 0 1 1

4.2.4 IFFT/FFT运算

傅里叶变换将时域和频域联系在一起,大多数数字信号处理使用DFT,对于N比较大的系统来说,OFDM等效基带信号可以使用离散傅里叶变换的方法来实现,因此,OFDM系统的调制和解调可以分别用IFFT和FFT来代替。通过N点的IFFT运算,把频

20

域数据符号变换为时域数据信号,经调制后发送到信道中去。在Matlab软件里可以使用函数fft()和ifft()来对数据进行FFT/IFFT运算,可以省去很多复杂的运算。

4.2.5 保护间隔和循环前缀

采用OFDM技术最主要原因之一是它可以有效地对抗多径时延扩展,通过把输入的数据流并行分配到?个并行的子信道上,使得每个OFDM的符号周期可以扩大为原始数据符号周期的?倍,因此时延扩展与符号周期的比值也同样降低?倍。在OFDM系统中,为了最大限度地消除符号间干扰,在每个OFDM符号之间插入保护间隔,该保护间隔的长度L一般要大于无线信道的最大时延扩展,这样一个符号的多径分量才不会对下一个符号造成干扰。然而在这种情况中,由于多径传播的影响,会产生子信道间的干扰,即子载波之间的正交性遭到破坏。

解决这个的方法是在OFDM符号前添加保护时隙。通常是加循环前缀(CP,即Cyclic Prefix),它是将OFDM符号尾部的一部分复制后放到前部,即将符号周期由T增加至T?T??T,?T是保护时隙,这样使得前一个符号的多径副本都落在后一个符号的循环扩展范围内,从而消除前后两个符号之间的干扰。而且由于循环前缀的加入,使得积分区间内的OFDM信号符号看上去具有周期循环的性质,从而使同一个OFDM符号的不同子载波仍能够保持正交,这样也防止了ICI[5]。当信道的最大多径时延扩展小于保护间隔的时间时,OFDM系统可以完全克服ISI的影响。这对于OFDM系统的抗干扰能力是非常有好处的。

在实现中,分别对实部和虚部的的数据插入保护间隔,在matlab里采用一些特殊运算符号和矩阵的应用就可实现将每个符号的后时刻的采样点复制到OFDM符号的前面,冒号在matlab里是一种特殊的运算符号,ich2(fl-gl+1:fl,:)表示将矩阵ich2中的第(fl-gl+1)行到最后一行,即第fl行的数据输出来,再将输出的数据加到原来的矩阵上形成新的矩阵ich3即完成了插入保护间隔和循环前缀的加入,虚部的实现与实部相同。

4.2.6 加入高斯噪声

白噪声是根据噪声的功率谱密度是否均匀来定义的,而高斯噪声则是根据它的概率密度函数呈正态分布来定义的,高斯型白噪声称高斯白噪声,在通信系统的理论分析中,特别是在分析、计算系统抗噪声性能时,经常假定系统中信道噪声为高斯型白噪声。其原因在于,一是高斯型白噪声可用具体的数学表达式表述,比如,只要知道了均值和方差,则高斯白噪声的一维概率密度函数便可求知。

在matlab软件里产生高斯噪声的函数一般有两个WGN和AWGN。AWGN的用法 为:

21


基于matlab的OFDM系统仿真(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:【重庆医科大学】局部解剖学题库(选择填空判断)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: