OFDM通信系统与QPSK系统性能比较.docx
- 文档编号:15451309
- 上传时间:2023-07-04
- 格式:DOCX
- 页数:19
- 大小:155.64KB
OFDM通信系统与QPSK系统性能比较.docx
《OFDM通信系统与QPSK系统性能比较.docx》由会员分享,可在线阅读,更多相关《OFDM通信系统与QPSK系统性能比较.docx(19页珍藏版)》请在冰点文库上搜索。
OFDM通信系统与QPSK系统性能比较
OFDM通信系统与QPSK系统性能比较
姓名:
唐洁
学号:
200921126
学院:
信息学院
专业:
信号与信息处理
OFDM通信系统与QPSK系统的性能比较
摘要:
正交频分复用(OFDM)是第四代移动通信的核心技术。
本文首先简要介绍了OFDM基本原理,并对OFDM的系统框架进行了分析,其中包括调制、解调以及IFFT、FFT的数学模型实现。
接着重点用MATLAB语言实现了整个系统基于QPSK调制技术的计算机仿真,分析该系统的信噪比及PAPR的分布。
最后对QPSK调制解调系统进行了仿真,对两种系统的性能进行了比较。
仿真结果表明:
OFDM频带利用率高,误码率高,功率利用率下降,而QPSK频带利用率低,误码率低,功率利用率升高。
关键词:
正交频分复用,QPSK,快速傅里叶变换
第一章OFDM系统的基本原理
OFDM的全称为OrthogonalFrequencyDivisionMultiplexing,意为正交频分复用。
OFDM的思想可以追溯到20世纪60年代,当时人们对多载波调制做了许多理论上的工作,论证了在存在符号间干扰的带限信道上采用多载波调制可以优化系统的传输性能。
进入20世纪90年代,由于数字信号处理技术和大规模集成电路技术的进步,OFDM技术在高速数据传输领域受到了人们的广泛关注。
现在OFDM已经在欧洲的数字音视频广播(如DAB和DVB)、欧洲和北美的高速无线局域网系统(如HIRERLAN2、IEEE802.11a)、高比特率数字用户线(如ADSL、VDSL)以及电力线载波通信中得到了广泛的应用。
OFDM通信技术是多载波传输技术的典型代表。
多载波传输把数据流分解为若干个独立的子比特率,每个子数据流将具有低得多的比特速率,用这样低比特率形成的低速率多状态符号去调制相应的子载波,就构成了多个低速率符号并行发送的传输系统。
OFDM是多载波传输方案的实现方式之一,利用快速傅里叶逆变换(IFFT)和快速傅里叶变换(FFT)来分别实现调制和解调,是实现复杂度最低、应用最广的一种多载波传输方案。
1.1正交调制解调
OFDM是一种特殊的多载波传送方案,单个用户的信息流被串/并变换为多个低速率码流,每个码流都用一条载波发送。
OFDM弃用传统的用带通滤波器来分隔子载波频谱的方式,改用跳频方式选用那些即便频谱混叠也能够保持正交的波形,因此,OFDM既可以当作调制技术,也可以当作复用技术。
OFDM增强了抗频率选择性衰落和抗窄带干扰的能力。
为了提高频谱利用率,OFDM方式中各个子载波频谱有1/2重叠,但保持相互正交,在接收端通过相关解调分离出各个子载波,同时消除码间干扰的影响。
OFDM是一种多载波调制技术,其原理是用N个子载波把整个信道分割成N个子信道,即将频率上等间隔的N个子载波信号调制并相加后同时发送,实现N个信道并行传输信息。
这样每个符号的频谱只占用信道带宽的1/N,且使各子载波在OFDM符合周期T内保持频谱的正交性。
即满足:
1.2系统组成
1.3用IFFT、FFT实现调制和解调技术
调制和解调框图如下:
图2-1调制解调框图
以下是数学模型的实现。
(1)调制部分:
OFDM信号可以用复数形式表示为:
式中,
为起始时间,
为门函数,
为第i个子载波的频率,
为第i个信号。
令
=0,
则:
OFDM信号的产生式首先在基带实现,然后通过上变频产生输出信号。
因此,在基带处理时可令
,则与快速离散傅里叶反变换形式相比较,IFFT实现为:
(2)解调部分
(3)传输的信号应用实信号,则:
则:
在Hermitian对称条件,一般将N点数据共轭扩展2N个点,即:
的约束下,2N点快速离散傅里叶反变换将频域内的N个复数信号子符号
变换成时域中的2N个实数样值
,加上循环前缀
之后,这
个实数样值就构成了实际的OFDM发送符号。
经过并/串变换之后,通过时钟速率
的D/A转换器和低通滤波器输出基带信号。
最后经过上变频输出OFDM信号。
第二章系统性能分析指标
2.1OFDM信号的PAPR及其分布
对于一个OFDM系统而言,由于复合包络是多个子载波信号的叠加,所以它将会有大的包络变化范围,因此会产生很大的PAPR。
通常,PAPR与子载波数N之间呈现正比的关系。
在OFDM中,实际发射的信号是多个子载波信号的叠加,这将不可避免地导致信号的包络变化非常剧烈,如果N个子载波的信号均以相同的相位相加时,就会产生一个OFDM信号的峰值功率,这个峰值功率是平均功率的N倍。
通常,我们将在一个时间内最大峰值功率与平均功率的比值称为峰值平均功率比(PAPR)。
其中,
表示经过IFFT运算之后得到的输出信号,即:
2.2频带利用率
设一OFDM系统中共有N个路子子载波,子信道码元持续时间为T,每路子载波均采用M进制的调制,则它占用的频带宽带等于
频带利用率为单位带宽传输的比特率:
当N很大时,
若用单个载波的M进制码元传输,为得到相同的传输速率,则码元持续时间应缩短为,而占用带宽等于,故频带利用率为:
第三章OFDM通信系统仿真设计
3.1仿真参数设定
根据前面已经介绍的OFDM通信系统的设计,表3-1给出了仿真系统的主要参数。
表3-1OFDM通信系统的仿真参数
数据传输速率
10.24Mbps
调制方式
QPSK
OFDM符号长度
152
保护间隔
循环前后缀各32点
子载波数
64
IFFT/FFT点数
256
信道
加性高斯白噪声(AWGN)
3.2程序流程图
3.3OFDM系统性能仿真
根据前面已经介绍的OFDM通信系统的设计,可以仿真得到设计系统的性能,如图3-1所示OFDM系统的信噪比。
图3-1
3.3QPSK调制解调系统性能仿真
1、QPSK工作原理
四相绝对移相调制是利用载波的4种不同相位来表征数字信息。
每一种载波相位代表两个比特的信息。
例如,若输入一进制数字信息,序列为10011100…….则应该先将其进行分组,每两个比特编为一组。
可将它们分成10,00,01,11等,然后分别用4种不同的相位来表示。
故每个四进制码元又被称为双比特码元。
把组成双比特码元的前一个信息比特用ab表,后一个信息比特用b代表。
双比特码元中的两个信息比特ab通常是按格雷码排列的。
载波相位若用θk表示,则θk在0到2∏内等间隔的取值仅有4种可能。
表3-2给出QPSK信号的编码。
又由于正弦函数和余弦函数的互补特性,对应于θk的4种取值,例如45°,135°,225°,315°,其幅度ak和bk只有两种取值,所以,四相绝对移相调制可以看作两个正交的二相绝对移相调制的合成。
载波相位θk的4种取值矢量关系,如图1。
图1(a)中表示采用方式1的QPSK信号的矢量图,图1(b)表示采用方式2的QPSK信号的矢量图。
表3-2QPSK信号的编码
a
b
θk
a
b
θk
0
0
90°
1
1
270°
0
1
0°
1
0
180°
图1(a)图1(b)
2、QPSK信号产生
因为四相绝对移相调制可以看作两个正交的二相绝对移相调制的合成,所以同相通道I和门正交通道Q的调制过程应与二相绝对移相调制相同。
因此,在本质上QPSK调制器是两个2PSK调制器的并行组合。
QPSK信号产生的方法和2PSK信号一样,用调相法产生∏/4体系的QPSK信号的系统中,串并变换器将输入的二进制序列依次分为两个速率减半的并行的单极性序列。
假设两个序列中的二进制数字分别为a和b每一对ab称为一个双比特码元。
单极性的a和b脉冲通过极性变换,即0变-1和1变0,变成双极性一电平信号I(t)和Q(t),然后进入两个平衡调制器,分别对同相载波和正交载波进行二相调制,将两路输出叠加,即得到四相移相信号。
3、QPSK系统仿真
3.4OFDM技术和QPSK技术的性能比较
OFDM频带利用率高,误码率高,功率利用率下降,而QPSK频带利用率低,误码率低,功率利用率升高。
参考文献:
[1]张纯德,王兴亮.现代通信理论与技术指导.西安电子科技大学出版社.2005.
[2]樊昌信,曹丽娜著.通信原理.国防工业出版社.2007
[3]邵佳,董辰辉著.MATLAB/Simulink通信系统建模与仿真实例精讲.2009
附录:
MATLAB程序清单
%main_OFDM.m
%OFDM通信系统的仿真设计,包括QPSK或QAM数字调制、IFFT、
%保护间隔、高斯信道建模、FFT、解调、计算信噪比及PAPR
clearall;
%+++++++++++++++++++++++++++++++++++++++++++++++++
%seq_num
%SNR_Pre设定用于仿真的信噪比的初值
%interval_SNR设定用于仿真的信噪比间隔
%frame_num每一个信噪比下仿真的数据的帧数
%Pe用于计算出现的误比特数
%N子载波数
%+++++++++++++++++++++++++++++++++++++++++++++++++
N=64;
SNR_Pre=1;
interval_SNR=1;
Pe=zeros(1,20);
%发射机
frame_num=5000;
forSNR_System=SNR_Pre:
interval_SNR:
20
counter=0;
forseq_num=1:
frame_num
%+++++++++++++++输入数据++++++++++++
datain=randint(1,N);
%+++++++++++++++++++++++++++++++++++
%++++++++++++++QPSK调制++++++++++++++
qpskin=reshape(datain,2,[]);%将生成序列变成两行
qpskflection=(ones(2,N/2)).*(-1);
qpskflection=qpskflection.^qpskin;%0--1;1---1
qpskflection(2,:
)=j*qpskflection(2,:
);
qpskout=sum(qpskflection);
%+++++++++++++++++++++++++++++++++++++++
%++++++++++++++++扩展++++++++++++++++++
ifftin=zeros(1,N);
ifftout=zeros(1,N);
fork=1:
N%将输入的N/2点扩展为共轭对称的N点
if(33>k>=1)
if(k==1)
ifftin
(1)=qpskflection(1,1);
else
ifftin(k)=qpskout(k);
end
else
if(k==33)
ifftin(k)=(-1)*j*qpskflection(2,1);
else
ifftin(k)=conj(qpskout(N+2-k));
end
end
end
%+++++++++++++++++++++++++++++++++++++
%+++++++++++++++++IFFT+++++++++++++++++
ifftout=ifft(N*ifftin);
%+++++++++++++++++++++++++++++++++++++++
%+++++++++++++++加入保护间隔++++++++++++++++++++
clength=N+N/16;
PVout=zeros(1,clength);
col=(N-N/16+1):
(N);
PVout=[ifftout(col),ifftout];
%++++++++++++++++++++++++++++++++++++++++++++++++
%+++++++++++++++++高斯白噪声信道+++++++++++++++++
gsrv=awgn(PVout,SNR_System,'measured');
%+++++++++++++++++++++++++++++++++++++++++++++++++
%接收机
%+++++++++++++++++++++去保护间隔++++++++++++++++++++++++
movep=zeros(1,N);
length=(N/16+1):
(N+N/16);
movep=gsrv(length);
%++++++++++++++++++++++++++++++++++++++++++++++++++++++
%+++++++++++++++++++++FFT++++++++++++++++++++++++++++
fftout=(fft(movep))/N;
%++++++++++++++++++++++++++++++++++++++++++++++++++++++
%+++++++++++++++QPSK解调++++++++++++++++++++++++++++
%outsign=qpskout(fftout,count,k);
count=1;
K=1;
%判决门限取0
if((fftout(K))>=0)
outsign(count)=0;
count=count+1;
else
outsign(count)=1;
count=count+1;
end
if((fftout(N/2+1))>0)
outsign(count)=0;
count=count+1;
else
outsign(count)=1;
count=count+1;
end
forK=2:
N/2
realpart=real(fftout(K));
imagpart=imag(fftout(K));
if(realpart>=0)
outsign(count)=0;
count=count+1;
else
outsign(count)=1;
count=count+1;
end
if(imagpart>=0)
outsign(count)=0;
count=count+1;
else
outsign(count)=1;
count=count+1;
end
end
%+++++++++++++++++++++++++++++++++++++++++++++++
%++++++++++++++++++计算误码率++++++++++++++++++++++++
fork=1:
N
if(outsign(k)~=datain(k))
counter=counter+1;
end
end
end
Pe(SNR_System)=counter/(N*frame_num);
end
%画图
figure
plot(Pe,'b');
xlabel('信噪比');
ylabel('误码率');
title('不同信噪比下的误码率');
gridon;
%**********************preparationpart***************************
para=64;%Numberofparallelchanneltotransmit(points)
fftlen=64;%FFTlength
nd=1;%NumberofinformationOFDMsymbolforoneloop
ml=2;%Modulationlevel:
QPSK
gilen=8;%Lengthofguardinterval(points)
%**************************Datageneration****************************
seldata=rand(1,para*nd*ml)>0.5;%rand:
builtinfunction
%******************Serialtoparallelconversion***********************
paradata=reshape(seldata,para,nd*ml);%reshape:
builtinfunction
%**************************QPSKmodulation*************************
[ich,qch]=qpskmod(paradata,para,nd,ml);
kmod=1/sqrt
(2);%sqrt:
builtinfunction
ich1=ich.*kmod;
qch1=qch.*kmod;
%*******************IFFT************************
x=ich1+qch1.*i;
y=ifft(x);%ifft:
builtinfunction
ich2=real(y);%real:
builtinfunction
qch2=imag(y);%imag:
builtinfunction
%*********Guradintervalinsertion**********
[ich3,qch3]=giins(ich2,qch2,fftlen,gilen,nd);
fftlen2=fftlen+gilen;
N=fftlen2*nd*ml;
y=ich3+qch3*i;
N=64;
fs=10240000;%Symbolrate
df=fs/N;
f1=0:
df:
(N-1)*df;
y1=ich3+qch3*i;
z1=fft(y1,N);
figure;
plot(f1,abs(z1),'r--');
xlabel('f');ylabel('幅度谱');
legend('原信号');
N=64;
fs=10240000/2;%Symbolrate
df=fs/N;
f2=0:
df:
(N-1)*df;
y2=ich+qch*i;
z2=fft(y2,N);
figure;
plot(f2,abs(z2),'r--');
xlabel('f');ylabel('幅度谱');
legend('QPSK后的信号');
N=fftlen2;
fs=10240000/2/64;%Symbolrate
df=fs/N;
f3=0:
df:
(N-1)*df;
y3=ich3+qch3*i;
z3=fft(y3,N);
figure;
plot(f3,abs(z3),'r--');
xlabel('f');ylabel('幅度谱');
legend('OFDM后的信号');
(注:
可编辑下载,若有不当之处,请指正,谢谢!
)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- OFDM 通信 系统 QPSK 性能 比较