ODFM详解(原理+调制解调)

OFDM笔记

(一)OFDM起源和发展

  • OFDM(orthogonal frequency division Mutiplexing)全称正交频分复用是一种采用多载波的并行传输方式。其基本概念在上世纪50年代就已经提出过,实现了高效率的频谱利用率,但无法在物理上实现,因为单独处理每路信号是很复杂和麻烦的。直到1997年Weinstein和EBert把离散傅里叶变换(DFT)的方法利用到并行传输系统中,而DFT可以通过*快速傅里叶算法(FFT)*实现,这在根本上降低了系统实现的复杂度。OFDM技术在4G LTE技术中已得到使用,是LTE三大关键技术之一。
  • 传统的频分复用中,为了防止不同子信道之间的干扰,会在任意两个相邻信道之间预留一定的保护带,这降低了频谱利用率——这也是OFDM被提出的重要motivation之一。

(二)OFDM的基本原理

调制多个子载波同时传输信息,将高速的串行输入分解为多个较低速率的信息流进行传输,这些子载波们批在一个符号周期内相互正交,体现在频谱上则是相邻子载波之间不仅没有隔离带而且还重合了50%的频谱。

正交性

OFDM(orthogonal frequency division Mutiplexing)相比传统频分复用多了一个正交。何为正交?信号的正交的定义:![信号正交的定义](https://img-blog.csdnimg.cn/7e23302c45ad4423b9697342fec852e9.png

而正交频分服用需要各载波在一个符号周期内相互正交。比如cos(t)和cos(2t),它们在0到2pi之间是正交的。

而正交的载波在各自搭载信息(比如幅度值)进行传输后能在接收端通过积分轻松解调出来。总的来说,正交的信号能够互不干扰地传输不同信息,并且如果选择合适的频率间隔Δf就可以是频谱利用率达到最高。

频率间隔的选取

若符号周期为Ts,假设两个信号cos(w1 t)和cos(w2 t)正交。为了让频谱利用率最高,我们要让两个信号的频率尽量接近,及选择Δf=|w1-w2|/2pi的最小值。因为正交,所以:
子载波初始相位相同时的最小频谱间隔

事实上,子载波之间不一定初始相位相同,需要考虑一个任意值的相位差:
考虑一般情况的最小频谱间隔
因此频率间间隔应取码元周期的倒数。

(三)OFDM系统的实现(调制解调)

调制

假定系统有N个子载波,一般输入的是信息序列{bn},我们会将其进行QAM星座图映射,得到一个由一个个对应复数值组成的序列{Sn},再将其进行串并转换,在一个OFDM符号周期内将S0到SN共N个点分别对 e j 2 π f 0 t . . . . . . e j 2 π f N − 1 t e^{ j2πf_0t}......e^{ j2πf_{N-1}t} ej2πf0t......ej2πfN1t进行调制(相乘)。再将这N个已调子载波信号合并后,构成一个OFDM符号:
s O F D M ( t ) = ∑ n = 0 N − 1 S n e j 2 π f n t s_{OFDM}(t)=\sum_{n=0}^{N-1}S_ne^{j2πf_nt} sOFDMt=n=0N1Snej2πfnt
OFDM调制系统
这里采用复数子载波是为了和离散傅里叶变换对应起来,以说明OFDM的调制解调可以通过DFT/IDFT实现。将OFDM符号分解为:
s O F D M ( t ) = ∑ n = 0 N − 1 S n e j 2 π f n t = I O F D M ( t ) + j Q O F D M ( t ) s_{OFDM}(t)=\sum_{n=0}^{N-1}S_ne^{j2πf_nt} =I_{OFDM}(t)+jQ_{OFDM}(t) sOFDM(t)=n=0N1Snej2πfnt=IOFDM(t)+jQOFDM(t)
分别进行射频调制,最后将射频形式的 s O F D M , R F ( t ) s_{OFDM,RF}(t) sOFDM,RF(t)发送到信道上。

解调

OFDM解调系统

接收到的射频信号经过下变频变换后恢复出 s O F D M ( t ) = I O F D M ( t ) + j Q O F D M ( t ) s_{OFDM}(t)=I_{OFDM}(t)+jQ_{OFDM}(t) sOFDM(t)=IOFDM(t)+jQOFDM(t),然后进行N个相关解调得到:
1 T s ∫ 0 T s s O F D M ( t ) e − j 2 π f i t d t = 1 T s ∫ 0 T s ( ∑ k = 0 N − 1 S k e j 2 π f k t ) e − j 2 π f i t d t = S i , i = 0 , 1 , … , N − 1 \frac{1}{T_s}\int_0^{T_s}s_{OFDM}(t)e^{-j2πf_it}dt=\frac{1}{T_s}\int_0^{T_s}(\sum_{k=0}^{N-1}S_ke^{j2πf_kt})e^{-j2πf_it}dt=S_i,i=0,1,\dots,N-1 Ts10TssOFDM(t)ej2πfitdt=Ts10Ts(k=0N1Skej2πfkt)ej2πfitdt=Si,i=0,1,,N1

解调利用了复子载波之间的正交性
∫ 0 T s e j 2 π f k t e − j 2 π f i t d t = { 0 , j = i 1 , j ≠ i \int_0^{T_s}e^{j2πf_kt}e^{-j2πf_it}dt=\begin{cases} 0,\quad j=i\\ 1, \quad j\neq i \end{cases} 0Tsej2πfktej2πfitdt={0,j=i1,j=i
其中 j , k = 0 , 1 , … , N − 1 j,k=0,1,\dots,N-1 j,k=0,1,,N1
将得到的Si进行解映射即可得到原来的二进制数据序列{bn}

(四)OFDM与离散傅里叶变换的联系

前面所说的OFDM调制解调系统在子载波数N过大时,运算量将非常大,工程上难以实现。下面说明如何用快速傅里叶变换的方法实现OFDM调制与解调。
已知一个OFDM符号可以表示为 s O F D M ( t ) = ∑ n = 0 N − 1 S n e j 2 π f n t s_{OFDM}(t)=\sum_{n=0}^{N-1}S_ne^{j2πf_nt} sOFDMt=n=0N1Snej2πfnt,其中的每一个 S n S_n Sn都是一个复数值,在整个符号周期内是一个常数。现将OFDM符号离散化,在一个码元周期 T s T_s Ts内共有N个采样值,则采样周期为 T T T:
T s = N T (1) T_s=NT\tag{1} Ts=NT(1)
在一个符号周期内的第k个采样值为:
s O F D M ( k T ) = ∑ n = 0 N − 1 S n e j 2 π f n k T (2) s_{OFDM}(kT)=\sum_{n=0}^{N-1}S_ne^{j2πf_nkT}\tag{2} sOFDMkT=n=0N1Snej2πfnkT(2)
因为采样值有N个,而子载波数也是N个,所以可以定义:
f n = n Δ f = n 1 T s = n 1 N T (3) f_n=n\Delta f=n\frac{1}{T_s}=n\frac{1}{NT}\tag{3} fn=nΔf=nTs1=nNT1(3)
带入(2),得:
s O F D M ( k T ) = ∑ n = 0 N − 1 S n e j 2 π k n N , k = 0 , 1 , … , N − 1 (4) s_{OFDM}(kT)=\sum_{n=0}^{N-1}S_ne^{\frac{j2πkn}{N}},k=0,1,\dots,N-1\tag{4} sOFDMkT=n=0N1SneNj2πkn,k=0,1,,N1(4)
这时候我们想到离散傅里叶变换(DFT)和其逆变换(IDFT)的形式为:
D F T : X ( n ) = 1 N ∑ k = 0 N − 1 x ( k ) e − j 2 π k n N , k = 0 , 1 , … , N − 1 (5) DFT:X(n)=\frac{1}{\sqrt{N}}\sum_{k=0}^{N-1}x(k)e^{-\frac{j2πkn}{N}},k=0,1,\dots,N-1\tag{5} DFT:X(n)=N 1k=0N1x(k)eNj2πkn,k=0,1,,N1(5)
I D F T : x ( k ) = 1 N ∑ n = 0 N − 1 X ( n ) e j 2 π k n N , k = 0 , 1 , … , N − 1 (6) IDFT:x(k)=\frac{1}{\sqrt{N}}\sum_{n=0}^{N-1}X(n)e^{\frac{j2πkn}{N}},k=0,1,\dots,N-1\tag{6} IDFT:x(k)=N 1n=0N1X(n)eNj2πkn,k=0,1,,N1(6)
我们可以观察得出二者的形式非常类似,忽略系数以及采样时间我们可以得到:
调 制 ( I D F T ) : s O F D M ( k ) = 1 N ∑ n = 0 N − 1 S n e j 2 π k n N , k = 0 , 1 , … , N − 1 (7) 调制(IDFT):s_{OFDM}(k)=\frac{1}{\sqrt{N}}\sum_{n=0}^{N-1}S_ne^{\frac{j2πkn}{N}},k=0,1,\dots,N-1\tag{7} IDFT:sOFDM(k)=N 1n=0N1SneNj2πkn,k=0,1,,N1(7)
解 调 ( D F T ) : S n = 1 N ∑ k = 0 N − 1 s O F D M ( k ) e − j 2 π k n N , n = 0 , 1 , … , N − 1 (8) 解调(DFT):S_n=\frac{1}{\sqrt{N}}\sum_{k=0}^{N-1}s_{OFDM}(k)e^{-\frac{j2πkn}{N}},n=0,1,\dots,N-1\tag{8} DFT:Sn=N 1k=0N1sOFDM(k)eNj2πkn,n=0,1,,N1(8)
将OFDM的调制和解调过程表示为一傅里叶变换对并不是解决问题的关键,关键在于IDFT与DFT可以用快速傅里叶变换IFFT/FFT算法来实现。

(五)OFDM的FFT/IFFT实现

W N n k = e − j 2 k π n N W_N^{nk}=e^{-\frac{j2kπn}{N}} WNnk=eNj2kπn,式(7),(8)可以用FFT/IFFT记法记为:
调 制 ( I F F T ) : s O F D M ( k ) = 1 N ∑ n = 0 N − 1 S n W N − n k , k = 0 , 1 , … , N − 1 (9) 调制(IFFT):s_{OFDM}(k)=\frac{1}{\sqrt{N}}\sum_{n=0}^{N-1}S_nW_N^{-nk},k=0,1,\dots,N-1\tag{9} IFFT:sOFDM(k)=N 1n=0N1SnWNnk,k=0,1,,N1(9)
解 调 ( F F T ) : S n = 1 N ∑ k = 0 N − 1 s O F D M ( k ) W N n k , n = 0 , 1 , … , N − 1 (10) 解调(FFT):S_n=\frac{1}{\sqrt{N}}\sum_{k=0}^{N-1}s_{OFDM}(k)W_N^{nk},n=0,1,\dots,N-1\tag{10} FFT:Sn=N 1k=0N1sOFDM(k)WNnk,n=0,1,,N1(10)
采用FFT变换实现的OFDM调制解调系统
总的来说,将处理信号用更简单的算法实现,提升了工程性能表现。

(六)OFDM的时间保护间隔和循环前缀

OFDM信号在无线信道传输过程中,可能会受到多径和非理想冲激响应等产生的前一码元拖尾带来的码间串扰,因此需要在码元之间保留一定宽度的时间保护间隔 T g T_g Tg。而 T g T_g Tg的长度一般大于无线信道的最大时延扩展,最大时延扩展是指多径信号中第一条到达的径和最后一条到达的径(可区分)的时延插值。这样可以保证上一个符号的多径分量和各种时延因素只会落在这个符号前的保护间隔内。显然,这会降低系统传输的效率。
OFDM的时间保护间隔与此同时,假定信道的群时延不是一个常数,则同一符号的不同子载波会存在时延,这会导致在一个码元周期内 0 0 0~ T s T_s Ts,存在子载波不再具有整数倍的周期数(对应频域频率间隔不能得到保持),正交性被破坏了(图a)。
循环前缀的必要性
因此,除了引入时间保护间隔以外,我们还需要在保护间隔内加入所谓循环前缀,它是指截取每个子载波在码元结束前一段长为 T g T_g Tg的信号,放置在该码元的时间保护间隔内(图b)。这样抽样的时间间隔落在保护间隔到码元结束之间 [ − T g [-T_g [Tg~ T s ] T_s] Ts]](图b)的区间内,就可以保证在任一长为 T s T_s Ts的时间段内,各子载波都有整数倍周期数。

(七)OFDM信号的功率谱和特点

功率谱

s O F D M ( t ) = ∑ n = 0 N − 1 S n e j 2 π f n t s_{OFDM}(t)=\sum_{n=0}^{N-1}S_ne^{j2πf_nt} sOFDMt=n=0N1Snej2πfnt
= ∑ n = 0 N − 1 ( S I , n + j S Q , n ) ( c o s w n t + j s i n w n t ) =\sum_{n=0}^{N-1}(S_{I,n}+jS_{Q,n})(cosw_nt+jsinw_nt) =n=0N1(SI,n+jSQ,n)(coswnt+jsinwnt)
= ∑ n = 0 N − 1 [ ( S I , n c o s w n t − S Q , n s i n w n t ) + j ( S Q , n c o s w n t + S I , n s i n w n t ) ] =\sum_{n=0}^{N-1}[(S_{I,n}cosw_nt-S_{Q,n}sinw_nt)+j(S_{Q,n}cosw_nt+S_{I,n}sinw_nt)] =n=0N1[(SI,ncoswntSQ,nsinwnt)+j(SQ,ncoswnt+SI,nsinwnt)]
= ∑ n = 0 N − 1 ( S I , n c o s w n t − S Q , n s i n w n t ) + j ∑ n = 0 N − 1 ( S Q , n c o s w n t + S I , n s i n w n t ) =\sum_{n=0}^{N-1}(S_{I,n}cosw_nt-S_{Q,n}sinw_nt)+j\sum_{n=0}^{N-1}(S_{Q,n}cosw_nt+S_{I,n}sinw_nt) =n=0N1(SI,ncoswntSQ,nsinwnt)+jn=0N1(SQ,ncoswnt+SI,nsinwnt)
其实部和虚部分别调制 c o s w c t cosw_ct coswct s i n w c t sinw_ct sinwct,产生的射频信号:
S O F D M , R F ( t ) S_{OFDM,RF}(t) SOFDM,RF(t)
= ∑ n = 0 N − 1 ( S I , n c o s w n t − S Q , n s i n w n t ) c o s w c t =\sum_{n=0}^{N-1}(S_{I,n}cosw_nt-S_{Q,n}sinw_nt)cosw_ct =n=0N1(SI,ncoswntSQ,nsinwnt)coswct
− ∑ n = 0 N − 1 ( S Q , n c o s w n t + S I , n s i n w n t ) s i n w c t -\sum_{n=0}^{N-1}(S_{Q,n}cosw_nt+S_{I,n}sinw_nt)sinw_ct n=0N1(SQ,ncoswnt+SI,nsinwnt)sinwct

在一个特定的频率范围内,取不同子载波数的OFDM信号的功率密度谱特性如下图:
不同子载波数的OFDM信号的功率密度谱特性
随着子载波书的增加,OFDM信号的功率密度谱越来越接近理想频谱特性。

特点

与各种传统单载波调制方式相比

优点

(1)可有效对抗频率选择性衰落或窄带干扰 在单载波系统中,传输带宽内局部的严重衰落或干扰能够导致整个通信链路失败。但在多载波系统中,出现上述情况只有落在频带凹陷处的子载波以及其携带的信息受影响。其他子载波未受损害。
(2)可有效克服符号键的串扰 OFDM将高速数据流(串行)转换为并行传输较低速率的数据流,使得每个子载波上的符号持续时间增大大,同样大小的无线信道时间弥散所带来的影响相对于一个码元周期变得很小,从而降低信道估计与均衡的处理时间。因此可以有效克服符号间串扰。OFDM技术适合应用于存在多径和衰落信道环境的宽带高速数据传输。
(3)信道频谱利用率高 虽然有码元间保护间隔的存在,但各个正交的子载波能在频率重合50%的情况保证正交,这极大地提高了信道频谱利用率。
(4)可采用FFT/IFFT的快速算法进行调制和解调 在子载波数量很大时,并行传输系统的实现非常复杂,但OFDM系统的调制解调可以利用快速算法IFFT/FFT实现。
(5)由子载波组成的子信道在不同用户间客高效地灵活分配 基站与不同用户之间的信道往往存在差异,相同频段对于某些用户可能很好,对于另外一些用户很差,OFDM系统可以将不同子载波按照这种好坏差异合理分配给不同用户,是系统的综合效益到达最佳。

缺点

(1)易受频率偏差的影响 频率偏差会是子载波的正交性得到破坏,所以OFDM对频率偏差十分敏感。
(2)存在较高的峰值平均功率比 多载波信号在时域上调制的结果是多个信号的叠加,如果大量已调子载波信号的相位一致时,所得到的叠加信号的瞬时功率将特别高,远远高于其平均功率,导致很大的峰值功率和平均功率比(简称峰均比)。这对发射机内的功放提出了很高的要求。

个人总结:OFDM是多载波系统和并行传输结合而产生的,它用较简单的算法实现了更高的频谱效率和更稳定安全的传输。

OFDM调制解调原理可以简单地概括为将一个宽带信号分成多个窄带子信号,然后在每个子信号上进行独立的调制和解调,最后将这些子信号合并成一个宽带信号。下面我们来逐步推导OFDM调制解调的公式。 首先,我们将要传输的数字信号表示为 $s(t)$,它的傅里叶变换为 $S(f)$。我们假设信道的频率响应为 $H(f)$,则接收到的信号可以表示为: $$r(t) = s(t) * h(t) + n(t)$$ 其中,$*$ 表示卷积,$n(t)$ 表示加性高斯白噪声。 为了方便处理,我们将信号分割为 $N$ 个子信号,每个子信号的带宽为 $B/N$,其中 $B$ 表示信号的总带宽。然后,我们将 $s(t)$ 分别经过 $N$ 个带通滤波器,得到 $N$ 个子信号: $$s_i(t) = s(t) \cdot g_i(t)$$ 其中 $g_i(t)$ 表示第 $i$ 个子信号的带通滤波器的冲激响应。每个子信号的傅里叶变换为 $S_i(f)$。 接下来,我们对每个子信号进行调制。我们采用的是正交调制,即将每个子信号分别与一个正交基 $e^{j2\pi (i-1)(n-1)/N}$ 相乘后相加。这样可以保证每个子信号之间正交,避免了多径干扰。正交基的选择需要满足以下两个条件: 1. 正交:任意两个正交基的内积为0 2. 归一化:每个正交基的模长为1 我们可以选择 $e^{j2\pi (i-1)(n-1)/N}$ 作为正交基,其中 $i$ 表示第 $i$ 个子信号,$n$ 表示第 $n$ 个采样点。经过正交调制后,第 $i$ 个子信号变为: $$s_i'(t) = s_i(t) \cdot e^{j2\pi (i-1)(n-1)/N} = s_i(t) \cdot e^{j2\pi (n-1) \cdot (i-1)/N}$$ 则第 $i$ 个子信号的频域信号为: $$S_i'(f) = \int_{-\infty}^{\infty} s_i'(t) e^{-j2\pi f t} dt = \int_{-\infty}^{\infty} s_i(t) e^{j2\pi (-f + (i-1)B/N) t} dt$$ 我们可以看到,经过正交调制后,每个子信号的频率偏移了 $(i-1)B/N$。这样,我们就将一个宽带信号分成了 $N$ 个窄带子信号,每个子信号的带宽为 $B/N$,并且每个子信号之间正交。 接下来,我们将每个子信号分别进行调制。这里假设我们采用的是 $M$ 段相位偏移键控调制(M-PSK)。 对于第 $i$ 个子信号,我们将其调制为: $$s_{i,k}'(t) = s_i'(t) \cdot \sqrt{\frac{2}{M}} \cdot cos(2\pi f_c t + \frac{2\pi(k-1)}{M})$$ 其中 $k$ 表示第 $k$ 种相位偏移,$f_c$ 表示载波频率。 经过调制后,第 $i$ 个子信号变为: $$s_{i,k}(t) = s_{i,k}'(t) + n_{i,k}(t)$$ 其中 $n_{i,k}(t)$ 表示加性高斯白噪声。 接下来,我们将每个子信号的频域信号表示为: $$S_{i,k}(f) = \int_{-\infty}^{\infty} s_{i,k}(t) e^{-j2\pi f t} dt$$ $$= \int_{-\infty}^{\infty} s_{i}'(t) e^{-j2\pi f t} dt + \int_{-\infty}^{\infty} n_{i,k}(t) e^{-j2\pi f t} dt$$ $$= \frac{S_i'(f-f_c)}{2} \cdot e^{j2\pi(k-1)/M} + N_{i,k}(f)$$ 其中 $N_{i,k}(f)$ 表示加性高斯白噪声的频域信号。 我们可以看到,经过调制后,第 $i$ 个子信号的频域信号是由多个相位偏移的正弦波组成的,每个相位偏移对应一个子载波。这些子载波之间仍然是正交的。 接下来,我们将每个子信号的频域信号通过反傅里叶变换转换回时域信号。对于第 $i$ 个子信号,我们有: $$s_{i,k}(t) = \sum_{n=0}^{N-1} S_{i,k}(f_n) \cdot e^{j2\pi f_n (t-(i-1)T/N)}$$ 其中 $T$ 表示信号的时长,$f_n = (n-1)B/N - B/2$ 表示第 $n$ 个子载波的频率。由于每个子载波之间正交,因此可以通过在时域对每个子载波进行采样得到原始数字信号 $s(t)$。 对于解调过程,我们可以将接收到的信号通过FFT变换得到每个子信号的频域信号 $R_{i,k}(f)$,然后对每个子信号的频域信号进行解调得到 $S_{i,k}(f)$,最后将每个子信号的频域信号合并成一个宽带信号的频域信号 $S(f)$。最后,我们可以通过IFFT变换将信号从频域转换回时域,得到解调后的数字信号 $s(t)$。
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值