文章目录
1 前言
最近除了在看信道相关的内容,还学习了一些OFDM相关的技术原理,并进行了简单的仿真。继续记录~~~欢迎感兴趣的朋友一起交流分享。
2 OFDM技术原理
首先给出一个OFDM系统的系统框图,然后再对其中的关键点进行介绍。
2.1 子载波之间的正交性
我们知道OFDM作为一种多载波并行传输技术,一个很大的优点就是频带利用率高,因为他的子载波具有正交性。
我们最开始接触正交性,其实是一个数学概念:两个信号的乘积在一个周期内的积分为0,我们则认为这两个信号是正交的。也正是利用这一点,接收端可以通过对每一路乘以不同的因子,然后积分运算解调出对应路的信息,而不受其它路信号的干扰。需要注意的是,时延可能会影响子载波之间的正交性,从而导致解调错误,因此会在OFDM符号周期的前面添加循环前缀以消除这种影响,这在后面会讲到。
对于OFDM系统来说,从时域上来看是这样子的:
但是从频域上来看正交性如何提高了频带利用率可能更直观一些,我们进行一个简单的matlab仿真,假设有四个正交子载波承载信息,把他们的频谱画在一起,是这个样子的:
可以看到相比一般的FDM系统,子载波频谱发生了交叠,频带利用率更高。
还可以参考博客:
(https://blog.youkuaiyun.com/madongchunqiu/article/details/18614233/?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-1&spm=1001.2101.3001.4242)
我觉得讲解的非常形象,想了解的更多更详细的朋友可以看看。
补充:给出一个有频偏的情况下,OFDM系统的解调性能。
clear all;
close all;
N=8; % 子载波数
f=1:N; % 各个子载波频率
x=randi([0 3],1,N); % 子载波上的数据
x1=qammod(x,4); % 4-QAM调制
t=0:0.001:1-0.001; % 符号持续时间
w=2*pi*f.'*t;
w1=2*pi*(f+0.2).'*t; % 频偏为0.2Hz时的子载波频率
y=x1*exp(j*w); % 子载波调制
figure(1)
plot(t,abs(y)) % 画出调制后的波形包络
for ii=1:N
y1(ii)=sum(y.*exp(-j*w(ii,:)))/length(t); %无频偏解调第ii个子载波上的数据
end
figure(2)
stem(abs(x1)) % 显示无频偏时子载波解调后的结果
hold on
stem(abs(y1),'r<')
title('频偏为0时的子载波解调结果')
axis([0 9 0 3])
legend('原始数据','子载波解调后的数据')
% 存在频率偏差时的子载波解调结果