OFDM深入学习及MATLAB仿真(一)

简介: OFDM深入学习及MATLAB仿真

前言

前面对 OFDM 的学习及了解还是比较浅显的,例如没有考虑到其中涉及的技术,例如保护间隔、信道编码、扩频、导频相关技术,本文通过学习这些技术,并进行 OFDM 的完整仿真过程。

之前博客中已经介绍过的原理性东西这里就不再重复阐述了,对于之前没有讲过的概念会重点讲述,可以详见我之前的博客:

一个完整的 OFDM 系统的发射机和接收机如下图所示:

  • 过程介绍–发送端: OFDM 发射机的输入位首先要进行编码(有冗余),以减少特定信道的误差,编码后的位通过调制在相位和正交(IQ)平面上映射成星座,得到的 IQ 数据用复数表示。在 IQ 数据中插入导频和保护频带,形成频域 OFDM 符号。频域 OFDM 符号通过反离散傅里叶变换(IDFT)转化为时域,再通过并行到串行(P/S)的转换转化为一维(1D)。循环前缀(Cyclic Prefix,CP),是将时域 IQ 数据从末尾的一段复制到时域 IQ 数据的开头,形成一个完整的时域 OFDM 符号,然后,基带 IQ 数据流被向上转换为射频(RF),并通过 RF 前端进行空中广播。通过无线信道传播的无线电波被接收机的射频前端接收并下变频为基带数字 IQ 数据。
  • 过程介绍–接收端:载波同步器回收时域 OFDM 符号,并将其发送到基带接收器。在接收机上,首先去除 CP,其余的 IQ 数据通过 FFT 转换到频域。信道均衡器估计信道的响应,并对接收到的被衰落信道扭曲的 IQ 数据进行均衡。接下来,经过均衡的频域 IQ 数据被解调为软位(浮点数),再由信道解码器将其进一步解码为二进制位。输出的比特流被送到下一层,并回收成数据包。请注意,信道均衡是针对衰减而不是加性高斯白噪声(AWGN)信道的。
  • 这里理解为传输的频域信号是因为IFFT是从频域到时域,实际上这里 IFFT 充当的是一个实现子载波正交的作用。

一、OFDM 基本原理及概念

1、OFDM 简介

OFDM(Orthogonal Frequency Division Multiplexing),即正交频分复用,是一种用于数字通信的调制技术,它将数据流分为多个子载波,每个子载波都以不同的频率传输数据,被广泛应用于现代数字通信系统中,如 Wi-Fi,DAB,DVB,LTE,5G NR 等。OFDM 符号是 OFDM 技术中的一个重要组成部分,它是在子载波上传输信息的基本单位。

2、子载波

子载波(subcarrier)是数字通信中的一个概念,它是在正交频分复用(OFDM)系统中使用的一种调制技术。在 OFDM 系统中,将宽带信号分成多个独立的子信道,每个子信道都可以看作是一个独立的信号载波,称为子载波。

在 OFDM 系统中,将频率范围分成多个子载波,每个子载波都有一个固定的频率和相位,可以独立传输数据,如 5G NR 系统中,将 100MHz 的带宽,按照 15KHz 的子载波带宽进行分配,可以分成 6666 个子载波,而 4G LTE 20MHz 系统中的子载波仅有 1333 个。每个子载波的频带宽度比整个带宽窄很多,这样可以减少频带的浪费,并且在接收端可以更容易地进行信号分离和恢复。

3、符号

从时域上来看,ODFM 符号就是一个时间长度。利用了 OFDMA 原理中的串并变换技术,原本高速的串行数据被转换成低速的并行数据发送,原来传 N 个符号(数字映射后的符号,譬如每个 QPSK 符号包含 2 个比特)的时间,现在相当于只传一个符号(但由于并行传输,N 个子载波上各传一个,相当于同时传 N 个,只是这 N 个子载波之间互相独立,并且所代表的数据仅是原始数据中的一小部分)。所用的这个时间称为 OFDM 符号长度,或 OFDM 符号周期。

OFDM 符号由一组正交的子载波组成,每个子载波上携带独立的信息。因为子载波之间正交,所以它们可以在同一频段上同时传输信息,从而实现了高效的频谱利用。OFDM 符号通常使用快速傅里叶变换(FFT)来实现,将时域的数据序列转换为频域的子载波信号。OFDM 符号的特点是抗多径衰落和频偏干扰能力强,同时也容易实现频率同步。

在实际中,为了消除符号间的干扰,还要在符号间插入循环前缀(CP),即经过 IFFT 之后的发送数据经过并串变换,把位于最末的 CP 长度的符号拷贝到 OFDM 符号的起始端,用于消除符号间干扰。这时,实际的每个 OFDM 符号的长度变为 T s y m b o l + T c p T_{symbol}+T_{cp}Tsymbol+Tcp ,你所看到的 IFFT 长度 + CP 长度是以 OFDM 符号周期为单位的表示方法。

4、子载波间隔与符号长度之间的关系

OFDM 技术中,符号长度(也称为时域上的时间长度)为 T 的子载波在频域上是一个 Sinc 函数,在 1/T 处过零。为了满足正交性,各个子载波的峰值应该对应于其他子载波的过零点。因此,子载波的间隔应为 1/T。例如,在 5G NR中,子载波的间隔为 15kHz,因此 OFDM 的符号长度为 1/15kHz=66.7us。这个长度是子载波的调制符号时间。

二、涉及的技术

1、保护间隔

  • 作用:多径信道会对 OFDM 符号造成 ISI 影响,破坏了子载波间的正交性。故需要采取一些方法来消除多径信道带来的符号间干扰(ISI)影响,即插入保护间隔
  • 方法
  • 一种是补零(zp),即在保护间隔中填充 0;
  • 另一种是插入循环前缀(cp)或循环后缀(cs)实现OFDM的循环扩展(为了某种连续性)。

zp 是在保护间隔内不插入任何信号,但是在这种情况下,由于多径传播的影响,会产生载波间干扰(ICI),即不同的子载波间会产生干扰。

一般采用 cp。cp 是将 OFDM 后部的采样复制到前面,长度为 T c p T_{cp}Tcp,故每个符号的长度为 T s y m = T s u b + T c p T_{sym}=T_{sub}+T_{cp}Tsym=Tsub+TcpT s u b T_{sub}Tsub 为数据部分子载波数。T c p T_cpTcp 大于或等于多径时延,符号间的 ISI 影响将被限制在保护间隔中,因此不会影响下一个 OFDM 的 FFT 变换。

上面所讲可以参考下面的文章,文章中讲解的很详细:

多径效应、符号内干扰、符号间干扰ISI、ICI

2、交织

  • 作用:交织的作用是将突发错误转换为随机错误,有利于前向纠错码的译码,提高了整个通信系统的可靠性。
  • 原理:交织技术是改变数据流的传输顺序,将突发的错误随机化,提高纠错编码的有效性。
  • 方法:交织由两个变换过程组成。
  • 第一次变换保证了相邻的编码比特被映射到不相邻的子载波上。
  • 第二次变换保证了相邻的编码比特被分别映射到星座图的重要和非重要比特上,避免出现长时间的低比特位映射。
  • 交织块的长度: Ncbps,对 qpsk、16qam、64qam 分别为 2、4、6,s=Ncbps/2,d=16。

3、信道编码

  • 作用:由于移动通信存在干扰和衰落,在信号传输过程中将出现差错,故对数字信号必须采用纠、检错技术,即纠、检错编码技术,以增强数据在信道中传输时抵御各种干扰的能力,提高系统的可靠性。
  • 原理:信道编码技术是通过给原数据添加冗余信息,从而获得纠错能力,适合纠正非连续的少量错。
  • 方法
  • 卷积编码是现代数字通信系统中常见的一种前向纠错码,区别于常规的线性分组码,卷积编码的码字输出不仅与当前时刻的信息符号输入有关,还与之前输入的信息符号有关。
  • 这里的信道编码一般采用卷积编码,Viterbi 译码。

有关信道编码的知识可以参考我之前写的文章信道编码译码及MATLAB仿真

4、扩频

  • 本质:“扩频通信技术是一种信息传输方式,其信号所占有的频带宽度远大于所传信息必需的最小带宽;频带的扩展是通过一个独立的码序列来完成,用编码及调制的方法来实现的,与所传信息数据无关;在接收端则用同样的码进行相关同步接收、解扩及恢复所传信息数据”
  • 优点和作用
  • 根据香农定理,带宽和信噪比可用互换,扩频扩展了带宽,则对信噪比的要求可降低 。
  • 对背景的噪声(noise)、干扰(interference)以及自体多路径干扰(Multipath interference)有免疫力。
  • 对人为的刻意干扰(jamming)信号有良好的抵御能力

5、导频

  • 本质:导频不携带信息,导频是双方已知的数据,是用来做信道估计的。
  • 原理:将训练信号(导频)插入帧中,以便接收器可以根据导频和数据类似地失真的假设来估计信道响应。 设计了一种适当的导频模式来满足这种假设。 OFDM系统中的典型导频模式为:块,梳状和分散式。如下图所示。
  • 使用原理:在接收机中,虽然利用接收到的段训练序列、长训练序列可以进行信道均衡、频率偏差校正,但符号还会存在一定的剩余偏差,且偏差会随着时间的累积而累积,会造成所有子载波产生一定的相位偏移。因此,还需要不断地对参考相位进行跟踪。要能实现这个功能,需要在子载波中插入导频符号。

6、RF(射频)调制

  • 方法:OFDM 调制器的输出产生了一个基带信号,将此基带信号与所需传输的频率进行混频操作,利用模拟技术或数字上变频可完成。
  • 原理:由于数字调制技术提高了处理 I、Q 信道之间的匹配性和数字 IQ 调制器相位的准确性,将会更加精确。

7、信道估计

  • 本质:在OFDM系统的相干检测中需要对信道进行估计,获得详细的信道信息,从而在接收端正确地解调出发射信号,是衡量一个无线通信系统性能的重要指标。

三、变量间的关系

image.png

四、IEEE 802.11a WLAN PHY 层标准

IEEE 802.11a WLAN PHY层标准的主要参数:


image.png

image.png

采用64点IFFT意味着系统的采样间隔为0.05us,这样采样频率至少应该是20M samples/s

五、OFDM 基本参数的选择

1、基本参数

各种 OFDM 参数的选择就是需要在多项要求冲突中进行折衷考虑。通常来说,首先要确认 3 个参数:带宽、比特率、及保护间隔

  • 保护间隔: 按照惯例,保护间隔的时间长度应该为应用移动环境信道的时延扩展均方根值的 2~4 倍。
  • OFDM 符号周期长度:确定保护间隔之后,则 OFDM 符号周期长度就确定了。为了最大限度的减少由于插入保护比特所带来的信噪比的损失,OFDM 符号周期长度远远大于保护间隔长度。但是符号周期又不能任意大,否则就需要更多的子载波,带宽不变,子载波间隔就变小,系统的实现复杂度就提高了,而且还加大了系统的峰值平均功率比,同时系统对频率偏差更加敏感。因此,一般选择符号周期长度是保护间隔的 5 倍,这样,由于插入保护比特所造成的信噪比损耗只有 1dB 左右。
  • 子载波的数量:确定保护间隔和符号周期长度之后,子载波的数量可由 − 3 d B -3dB3dB 带宽除以子载波间隔(即去掉保护间隔之后的符号周期的倒数)得到。或者可由所要求比特速率除以每个子信道的比特速率来确定子载波的数量。每个信道中所传输的比特速率可由调制类型、编码速率、和符号速率来确定。

2、有用符号持续时间T

T 对子载波之间间隔、译码的等待周期都有影响,为了保持数据的吞吐量,子载波数目和 FFT 的长度要有相对较大的数量,这就导致符号持续时间变长。总之,符号周期长度的选择以保证信道的稳定为前提。

3、子载波数

N=1/T

其数值与 FFT 处理过的复数点数相对应,需适应数据速率和保护间隔的要求。

4、调制模式

OFDM系统的调制模式基于功率和频谱利用率来选择,可采用 qam、psk。

为了使所有的点有相同的平均功率,二进制序列映射后的复数要归一化。(BPSK\QPSK\16QAM\64QAM分别对应乘以1、1/根号2、1/根号10、1/根号42),解调的时候再变回去。

5、具体实例

如下要求:(1)比特率为25Mbit/s(2)可容忍的时延扩展为200ns(3)带宽小于18MHz。

  • ①、由 200ns 时延扩展得保护间隔为 800ns;
  • ②、由保护间隔 800ns 得符号周期长度 6*800ns=4.8us;
  • ③、子载波的间隔选取 4.8-0.8=4us 的倒数,即 250KHz;
  • ④、由所要求的比特速率与OFDM符号速率的比值,每个符号需要传送的比特:(25Mbit/s)/(1/4.8us)=120 bit。
  • ⑤、为了完成上面 120bit 符号,有两种选择:利用 16QAM 和码率为 1/2 的编码方法,这样每个子载波携带 2bit 的有用信息,因此需要 60 个子载波;另一种是利用 QPSK 和码率为 3/4 的编码方法,每个子载波携带 1.5bit 信息。因此需要 80 个子载波,然而 80 个子载波意外着带宽:80*250KHz=20MHz,大于所给带宽要求,故取第一种,即 60 个子载波。可利用 64 点 IFFT 来实现,剩余 4 个子载波补 0。


OFDM深入学习及MATLAB仿真(二)https://developer.aliyun.com/article/1472349

目录
相关文章
|
1天前
|
机器学习/深度学习 算法
基于蛙跳优化的神经网络数据预测matlab仿真
使用MATLAB2022a,应用蛙跳优化算法(SFLA)调整神经网络权重,提升预测精度,输出预测曲线。神经网络结合输入、隐藏和输出层进行预测,蛙跳算法模仿蛙群觅食行为优化权重和阈值。算法流程包括蛙群初始化、子群划分、局部搜索及适应度更新,直至满足停止条件。优化后的神经网络能提升预测性能。
|
1天前
|
机器学习/深度学习 算法
m基于PSO-GRU粒子群优化长门控循环单元网络的电力负荷数据预测算法matlab仿真
摘要: 在MATLAB 2022a中,对比了电力负荷预测算法优化前后的效果。优化前为"Ttttttt111222",优化后为"Tttttttt333444",明显改进体现为"Tttttttttt5555"。该算法结合了粒子群优化(PSO)和长门控循环单元(GRU)网络,利用PSO优化GRU的超参数,提升预测准确性和稳定性。PSO模仿鸟群行为寻找最优解,而GRU通过更新门和重置门处理长期依赖问题。核心MATLAB程序展示了训练和预测过程,包括使用'adam'优化器和超参数调整,最终评估并保存预测结果。
4 0
|
2天前
|
算法 安全
基于龙格库塔算法的SIR病毒扩散预测matlab仿真
该程序使用龙格库塔算法实现SIR模型预测病毒扩散,输出易感、感染和康复人群曲线。在MATLAB2022a中运行显示预测结果。核心代码设置时间区间、参数,并定义微分方程组,通过Runge-Kutta方法求解。SIR模型描述三类人群动态变化,常微分方程组刻画相互转化。模型用于预测疫情趋势,支持公共卫生决策,但也存在局限性,如忽略空间结构和人口异质性。
|
2天前
|
机器学习/深度学习 监控 算法
基于yolov2深度学习网络的昆虫检测算法matlab仿真,并输出昆虫数量和大小判决
YOLOv2算法应用于昆虫检测,提供实时高效的方法识别和定位图像中的昆虫,提升检测精度。核心是统一检测网络,预测边界框和类别概率。通过预测框尺寸估算昆虫大小,适用于农业监控、生态研究等领域。在matlab2022A上运行,经过关键升级,如采用更优网络结构和损失函数,保证速度与精度。持续优化可增强对不同昆虫的检测能力。![image.png](https://ucc.alicdn.com/pic/developer-ecology/3tnl7rfrqv6tw_e760ff6682a3420cb4e24d1e48b10a2e.png)
车辆行驶控制运动学模型的matlab建模与仿真,仿真输出车辆动态行驶过程
该课题在MATLAB2022a中建立了车辆行驶控制运动学模型并进行仿真,展示车辆动态行驶过程。系统仿真结果包含四张图像,显示了车辆在不同时间点的位置和轨迹。核心程序定义了车辆参数和初始条件,使用ode45求解器模拟车辆运动。车辆运动学模型基于几何学,研究车辆空间位姿、速度随时间变化,假设车辆在平面运动且轮胎无滑动。运动学方程描述位置、速度和加速度关系,模型预测控制用于优化轨迹跟踪,考虑道路曲率影响,提升弯道跟踪性能。
|
3天前
|
算法 调度 决策智能
基于自适应遗传算法的车间调度matlab仿真,可以任意调整工件数和机器数,输出甘特图
这是一个使用MATLAB2022a实现的自适应遗传算法解决车间调度问题的程序,能调整工件数和机器数,输出甘特图和适应度收敛曲线。程序通过编码初始化、适应度函数、遗传操作(选择、交叉、变异)及自适应机制进行优化,目标如最小化完工时间。算法在迭代过程中动态调整参数,以提升搜索效率和全局优化。
|
4天前
|
存储 缓存 算法
ADOV路由和DSR路由matlab对比仿真
该程序使用MATLAB2022a进行ADOV和DSR路由协议的仿真,输出包括路由路径、跳数和长度。核心代码设置了30个节点的拓扑结构,通过`func_dijkstra`实现路由计算。算法原理部分介绍了ADOV基于跳数的最短路径寻找和DSR的源路由机制,两者都是按需反应式协议。路由发现、维护和更新过程在描述中得到详细解释。
|
4天前
|
算法
基于ADM自适应增量调制算法的matlab性能仿真
该文主要探讨基于MATLAB的ADM自适应增量调制算法仿真,对比ADM与DM算法。通过图表展示调制与解调效果,核心程序包括输入输出比较及SNR分析。ADM算法根据信号斜率动态调整量化步长,以适应信号变化。在MATLAB中实现ADM涉及定义输入信号、初始化参数、执行算法逻辑及性能评估。
|
4天前
|
机器学习/深度学习 算法
基于GA遗传优化的CNN-GRU的时间序列回归预测matlab仿真
摘要: 使用MATLAB2022a,展示了一种基于遗传算法优化的CNN-GRU时间序列预测模型,融合遗传算法与深度学习,提升预测精度。遗传算法负责优化模型超参数,如学习率和神经元数量,以最小化均方误差。CNN负责特征提取,GRU处理序列数据中的长期依赖。流程包括初始化、评估、选择、交叉、变异和迭代,旨在找到最佳超参数组合。
|
4天前
|
算法
m基于PSO粒子群优化的LDPC码OMS译码算法最优偏移参数计算和误码率matlab仿真
MATLAB2022a仿真实现了Offset Min-Sum (OMS)译码算法与粒子群优化(PSO)结合,以优化偏移参数,提升LDPC码解码性能。PSO通过迭代寻找最小化误码率(BER)的最佳偏移量。核心程序运用PSO进行参数更新和适应度函数(BER)评估,最终在不同信噪比下展示OMS解码性能,并保存结果。
6 0

热门文章

最新文章