LTE下行物理链路QPSK调制与资源映射仿真系统
项目介绍
本项目是一个基于MATLAB开发的LTE下行链路物理层关键技术仿真系统。系统模拟了从原始二进制数据产生到最终形成OFDM资源网格(Resource Grid)的完整物理层处理流程。通过精确实现3GPP TS 36.211协议标准中的加扰、调制、层映射、预编码和资源映射等步骤,直观地展示了LTE系统如何将信息比特转换为可以发送的复数符号,并如何在时频资源格中进行排布。该系统特别适合用于学习和验证LTE物理层信道处理的基本原理。
功能特性
- 标准随机序列生成:根据下行资源块(RB)数量自动计算子帧所需的数据量,生成随机分布的原始信息比特流。
- 物理层加扰逻辑:实现了符合TS 36.211定义的Gold序列产生器,支持基于物理小区标识(PCI)和无线网络临时标识(RNTI)的初始化设置。
- QPSK调制映射:实现了正交相移键控调制,按照标准公式将每两个比特映射为一个复数星座点,并进行精确的功率归一化。
- SISO传输链路:支持单天线端口(SISO)模式下的层映射与预编码处理,确保符号流在空间维度的正确映射。
- 时频资源网格构建:实现了二维OFDM资源网格的创建与填充,模拟了频率优先的资源分布机制。
- 多维度结果可视化:提供QPSK星座点分布图以及OFDM资源网格的功率分布热力图,方便定性分析系统表现。
使用方法- 启动MATLAB软件。
- 确保工作路径已定位到仿真程序所在的文件夹。
- 运行仿真程序的入口脚本。
- 程序运行结束后,命令窗口将输出输入比特长度、符号数量及资源格维度等参数。
- 系统将自动弹出两个图窗,分别展示QPSK星座图以及资源网格功率分布图。
系统要求
- MATLAB R2016a 或更高版本。
- 无需安装额外的工具箱,核心算法均采用原生MATLAB函数实现。
实现逻辑说明- 参数初始化:
系统预设NDLRB为6(对应1.4MHz带宽),此时子载波总数为72,单子帧包含14个OFDM符号(常规循环前缀模式)。配置Cell ID为10,RNTI为1,这些参数直接影响后续加扰序列的初始化。
- 数据生成:
基于资源格的总RE(Resource Element)数量计算所需比特数。对于QPSK调制,每个符号承载2个比特,因此生成量为 RE总数 * 2。
- 加扰(Scrambling)处理:
根据协议计算初始化值参数,通过移位寄存器逻辑生成长度为Nc+n_bits的Gold序列。其中x1序列由固定初值初始化,x2序列由包含RNTI和Cell ID的组合值初始化。经过1600个点的偏移后,提取Gold序列并与原始比特进行模二加运算。
- 调制(Modulation)映射:
对加扰后的比特流进行成对选取。第一个比特决定同相分量(I),第二个比特决定正交分量(Q)。映射遵循公式:d(i) = (1/sqrt(2)) * [(1-2b(2i)) + j(1-2b(2i+1))]。
- 层映射与预编码:
在单传输层配置下,层映射将符号序列直接映射到单个传输层,不改变其结构;预编码环节同样保持恒等转换,模拟单天线端口的信号输出。
- 资源映射:
初始化一个代表时频资源的复数矩阵。随后按照频率优先(先填充所有子载波,再移动到下一个OFDM符号)的原则,将调制符号顺序填入网格。
关键函数与算法分析
这是系统的核心辅助逻辑。通过两个长度为31的线性反馈移位寄存器(LFSR)生成。x1序列的特征多项式为D^31+D^3+1,而x2序列综合了小区级和用户级的标识信息。算法通过循环迭代模拟硬件移位过程,并通过模二加运算输出伪随机序列。
实现逻辑严格遵循1/sqrt(2)的归一化要求。这种映射方式确保了信号在复数平面上的平均功率为1,同时也体现了格雷码映射的思想,即相邻星座点间通常只有一个比特差异,有助于降低误码率。
利用MATLAB的矩阵线性索引特性,实现了将一维符号流向二维时频矩阵的转换。虽然在实际LTE系统中会避开参考信号(RS)和控制区,但本项目实现的填充逻辑展示了最基本的物理下行共享信道(PDSCH)数据承载机制。
通过散点图展示QPSK星座的四个顶点坐标(±0.707, ±0.707i),并利用imagesc函数将资源网格的模方值转化为色彩信息,直观反映了符号在资源网格中的物理占据情况。