【MATLAB源码】5G:PTRS上行链路综合仿真平台

3 阅读3分钟

📡 5G NR NTN 上行链路 (PUSCH) 综合仿真平台

面向非地面网络 (NTN) 的上行链路相位跟踪参考信号 (PTRS) 全功能仿真


📌 为什么选择本仿真平台?

行业痛点本平台解决方案
📉 上行覆盖受限DFT-s-OFDM 支持:完美支持 Transform Precoding (SC-FDMA) 波形生成,降低 PAPR,提升边缘覆盖,全面对标 3GPP R16/R17 标准
🛰️ NTN 多普勒频移高精度 PTRS 建模:精确模拟卫星通信中的相位噪声与多普勒频移补偿,支持复杂的时频密度 (LPTRS,KPTRSL_{PTRS}, K_{PTRS}) 配置
🛡️ 干扰协调复杂跳频 (Frequency Hopping):支持 Intra-slot 和 Inter-slot 频率跳频仿真,可视化验证抗干扰性能
⚙️ 配置繁琐交互式配置 GUI:所见即所得的参数配置界面,实时计算 Transport Block Size (TBS) 与资源开销
🎓 标准晦涩难懂代码即文档:模块化设计直接映射 3GPP TS 38.211 协议条款,清晰展现物理层处理流程

🎯 核心价值

🔬 学术研究价值

  • 波形对比研究: 一键切换 CP-OFDM 与 DFT-s-OFDM,直观对比两种波形在相位噪声下的性能差异。
  • NTN 信道建模: 结合 NtnPtrsMAPPER,可深入研究卫星移动引起的大频偏对解调的影响。
  • MIMO 演进: 支持 Codebook-based 上行传输方案,探索多天线预编码技术。

💼 工程应用价值

  • 链路预算验证: 提供精确的 RE 级资源映射,辅助计算系统吞吐量与开销。
  • 接收机算法开发: 生成的标准信号可作为 DSP/FPGA 接收机算法的黄金比对源 (Golden Reference)。
  • 一致性测试: 参数覆盖全,支持所有 SCS (15-960kHz) 和 CP 类型,满足不同频段测试需求。

⚡ 技术亮点

🌊 5G NR 上行物理层技术栈

┌────────────────────────────────────────────────────────────────────────┐
│                        PUSCH 上行链路处理架构                           │
├────────────────────────────────────────────────────────────────────────┤
│                                                                        │
│  [传输块 TB] ──► [LDPC 编码] ──► [调制 QAM] ──► [层映射]               │
│                                                     │                  │
│   ┌──────────────── Configurable Block ─────────────▼───────────────┐  │
│   │                                                                 │  │
│   │  [DMRS 生成]      [PTRS 生成]        [Transform Precoding]      │  │
│   │  (Type 1/2)       (L=1/2/4)          (DFT 扩展, 可选)           │  │
│   │       │                │                       │                │  │
│   └───────┼────────────────┼───────────────────────▼────────────────┘  │
│           │                │                       │                   │
│           ▼                ▼                       ▼                   │
│      [资源网格映射 RE Mapping] ◄─── [频率跳频 Frequency Hopping]       │
│                │                                                       │
│                ▼                                                       │
│          [OFDM 调制]  ──►  [相位噪声模拟]  ──►  [上行波形输出]         │
│                                                                        │
│  核心能力:                                                             │
│    Low PAPR (低峰均比)      | Phase Tracking (相位跟踪)                │
│    MIMO Precoding (预编码)  | Flexible Numerology (灵活参数集)         │
└────────────────────────────────────────────────────────────────────────┘

📊 关键功能指标

模块功能特性参数范围说明
波形技术DFT-s-OFDMTransform Precoding On/Off增强上行覆盖的关键技术
参考信号PTRS 密度Time {1,2,4}, Freq {2,4}灵活适配不同相位噪声场景
资源调度频率跳频Intra/Inter-Slot增强频率分集增益
多天线MIMO 层数1-4 Layers支持上行空间复用

🖥️ 运行环境

最低要求

项目要求
MATLAB版本R2023b 或更高 (推荐 App Designer 兼容性)
必需工具箱零依赖 (核心算法纯 MATLAB 实现,无需 5G Toolbox)
操作系统Windows 10/11, macOS, Linux
内存4 GB+ (推荐 8GB 以支持大带宽仿真)

📁 项目结构

Tx PTRS/
├── 📂 src/                           # 🚀 核心源代码
│   ├── NtnPtrsGUI.m                #   💻 交互式配置主程序
│   ├── NtnPtrsConfig.m             #   ⚙️ 配置管理与校验 (3GPP 规则)
│   ├── NtnPtrsGenerator.m          #   ⚡ 参考信号生成引擎
│   ├── NtnPtrsMapper.m             #   🗺️ 资源网格映射 (含跳频逻辑)
│   └── NtnOfdmModulator.m          #   🌊 OFDM 波形调制器
│
├── 📂 DL PTRS/                       # 📡 下行链路子项目 (独立)
│   └── ... (见独立文档)
│
├── 📂 tests/                         # 🧪 自动化测试套件
│   └── ...
│
└── 📂 docs/                          # 📚 文档中心
    └── 算法文档.md                  #   详细数学原理说明

🎬 典型应用演示

1. 启动交互式仿真 GUI

>> cd 'src'
>> app = NtnPtrsGUI(); % 启动主程序

体验: 调整 "Transform Precoding" 开关,观察时域波形包络的显著变化 (高 PAPR vs 低 PAPR),理解 DFT-s-OFDM 对功放效率的意义。

2. 脚本化批量仿真

cfg = NtnPtrsConfig();
cfg.SubcarrierSpacing = 30;
cfg.TransformPrecoding = true; % 开启 DFT-s-OFDM
[sym, ind] = NtnPtrsGenerator.generate(cfg);

03_fr2_high_bw.png demo_scs_comparison.pngdemo2_dfts_ofdm.pngdemo6_freq_hopping.png demo8_ptrs_density.png屏幕截图 2026-01-19 201452.png屏幕截图 2026-01-19 204659.png屏幕截图 2026-01-19 204725.png


🛒 获取与支持

关注公众号 【3GPP仿真实验室】 获取更多 5G/6G 系统级仿真资源。