基于matlab的OFDM系统仿真 联系客服

发布时间 : 星期日 文章基于matlab的OFDM系统仿真更新完毕开始阅读612733a0d4d8d15abe234e43

?

N2?11ts?Tk?N2i?????dk??exp??j2?t?ts???d1?N2exp?j2??t?ts??dt

TtsTT??i??N2??

1N2?1?d1?N?Ti??N22?ts?Ttsi?k?N2??t?ts??exp?j2?dt=d?T??k (2-4)

图2-2 OFDM符号中包含4个子载波

根据式(2-4)可以看到,对第k个子载波进行解调可以恢复出期望符号。这种正交性还可以从频域的角度来解释。

根据式(2-1),每个OFDM符号在其周期T内包括多个非零的子载波。因此其频谱可以看作是周期为T的矩形脉冲的频谱与一组位于各个子载波频率上的?函数的卷积。矩形脉冲的频谱幅值为sinc函数,这种函数的零点出现在频率为1T整数倍的位置上。这种现象可以参见图2-3,图中给出了相互覆盖的各个子信道内经过矩形波形成的sinc函数的频谱。在每个子载波频率最大值处,所有其他子信道的频谱值恰好为零。由于在对OFDM符号进行解调的过程中,需要计算这些点上所对应的每个子载波频率的最大值,因此可以从多个相互重叠的子信道符号中提取每一个信道符号,而不会受到其它子信道的干扰。从图2-3可以看出,OFDM符号频谱实际上可以满足

8

奈奎斯特准则,即多个子信道频谱之间不存在相互干扰。因此这种一个子信道频谱出现最大值而其它子信道频谱为零的特点可以避免载波间干扰(ICI)[3]。

图2-3 OFDM系统中子信道符号的频谱

2.1.4 DFT变换

傅立叶变换将时域和频域联系在一起,大多数信号处理使用DFT,快速傅立叶变换(FFT)是DFT计算应用的一种快速数学方法,由于其高效性,使OFDM技术得到迅速的发展。

对于N比较大的系统来说,式(2-2)中的OFDM等效基带信号可以采用离散傅立叶逆变换来实现。为了叙述简洁,可以令式(2-2)中的ts?0,并且忽略矩形函数,对信号s?t?以TN的速率进行抽样,即令则得到:

?2?ksk?s?KTN???dkexp?jN?k?0N?1??0?k?N?1? (2-5) ?

?可以看到sk等效为对dj进行IDFT运算。同样在接收端,为了恢复出原来的数据符号,可以对进行逆变换,即DFT得到:

di?2?ik??sexp?j?? ?0?i?N?1? (2-6) ?kN??k?0N?19

根据以上分析可以看到,OFDM系统的调制和解调可以分别由IDFT和DFT来代替。通过N点的IDFT运算,把频域数据符号变换为时域数据符号,经过射频载波调制之后,发送到无线信道中,其中每个IDFT输出的数据符号都是由所有子载波信号经过叠加而生成的,即对连续的多个经过调制的子载波的叠加信号进行抽样得到的。

在OFDM系统的实际应用中,可以采用更加方便快捷的IFFT/FFT。N点IDFT运算需要实施N2次的复数乘法(为了方便,只比较复数乘法的运算量),而IFFT可以显著的降低运算的复杂度。对于常用的基2IFFT算法来说,其复数乘法的次数仅为2N(log2),以16点的变换为例,IDFT和IFFT中所需要的乘法数量分别是256次和32次,而且随着子载波的个数N的增加,这种算法复杂度之间的差距也越来越明显,IDFT的计算复杂度会随N的增加而呈现二次方增长,而IFFT的计算复杂度的增加速度只是稍稍快于线性变化。

对于子载波数量非常大的OFDM系统来说,可以进一步采用基4IFFT算法。在4点的IFFT运算中,只存在与{1,-1,j,-j}的相乘运算,因此不需要采用完整的乘法器来实施这种乘法,只需要通过简单的加、减以及交换实部和虚部的运算(当与-j,j相乘时)来实现这种乘法。在基4算法中,IFFT变换可以被分为多个4点的IFFT变换,这样就只需要在两个级别之间执行完整的乘法操作。因此,N点的基4IFFT算法中只需要执行?38?N?log2N?2?次复数乘法或相位旋转,以及Nlog2N次复数加法

[4]

2.1.5 傅里叶变换过采样

在实际应用中,对一个OFDM符号进行N次采样,或者N点IFFT运算所得到的N个输出样值往往不能真正的反映连续OFDM符号的变化特性,其原因在于:由于没有使用过采样,当这些样值点被送到模/数转换器(A/D)时,就有可能导致生成伪信号,这是系统所不允许的。这种伪信号的表现就是,当以低于信号中最高频率的两倍的频率进行采样时,在当采样值被还原之后,信号中将不再含有原信号中的高频成分,呈现出虚假的低频信号。因此针对这种伪信号现象,一般都需要对OFDM符号进行过采样,即在原有的采样点之间添加一些采样点,构成pN(p为整数)个采样值。这种过采样的实施也可以通过利用IFFT/FFT的方法实现,实施IFFT运算时,需要在原始的N个输入值中间添加(p-1)N个零,而实施FFT运算时,需要在原始的N个输入值后面添加(p-1)N个零。

过采样实质上是一个以计算量的增加换取精确度提升的技术。根据计算得知,当所需要的子载波数并不是2的整数次幂时,需要补充零子载波,这些子载波就是按照 上面的方式补充在最中间的。同时,经过比较可以发现,在相同信噪比的情况下,过

10

采样下的误码率要比没有过采样的情况下低。

2.2 调制方式

可以通过改变发射的射频信号的幅度、相位和频率来调制信号。对于OFDM系统来说,只能采用前两种调制方法,而不能采用频率调制的方法,这是因为子载波是频率正交,而且携带独立的信息,调制子载波频率会破坏这些子载波的正交特性,这是频率调制不能在OFDM系统中采用的原因。

短波通信中可采用QPSK、MQAM的调制方式。正交幅度调制要改变载波的幅度和相位,是由ASK和PAK的结合。矩形QAM信号星座具有容易产生的独特优点。此外,它们也相对容易解调。矩形QAM包括4QAM、16QAM以及64QAM等,因此每个星座点分别所对应的比特数量为2、4、6。采用这种调制方法的步长必须为2,而利用QPSK调制可传输任意比特数量如1、2、3,分别对应2PSK、4PSK以及8PSK。并且QPSK调制的另一个好处就是该调制方案是等能量调制,不会由于星座点的能量不等而为OFDM系统带来PAPR较大的问题。但是其缺点也是显而易见的,即性能不如QAM调制方法好,特别当Q比较大的时候。每个子信道可采用不同的调制方式,选择时要兼顾数据速率、频谱效率以及传输的可靠性,以频谱利用率和误码率之间的最佳平衡为原则。

QPSK是在2PSK(二相调相)的基础上发展而来的一种多进制相位调制。二相调相是用载波的两种相位(0,?)去传输二进制的数字信息(“1”,“0”)。

10

100

1 11

B

A

AB

01

00

110

000

101

001

0

111

011

图2-4 多相调相的相位矢量图

(a)2相 (b)4相 (c)8相

010

如图2-4(a)所示,在现代数字微波和卫星通信中,为了提高信息传输速率,往往利用载波的一种相位去携带一组二进制信息码,如图2-4(b)、(c)所示。

QPSK是利用载波的四种不同相位来表征传送的数字信息。在QPSK调制中,首先对输入的二进制数据按二位数字编成一组,以此构成双比特码元。其组合共有22种,

11