基于5G系统的打孔LDPC编码和均匀量化NMS译码算法matlab性能仿真
目录
1.引言
2.算法仿真效果演示
3.数据集格式或算法参数简介
4.算法涉及理论知识概要
4.1打孔技术
4.2 均匀量化NMS译码
5.参考文献
6.完整算法代码文件获得
1.引言
在5G通信系统中,信道编码技术是保障高速率、高可靠性数据传输的核心支撑,而低密度奇偶校验码(LDPC)凭借其逼近香农极限的性能和可并行译码的特性,被3GPP选定为5G NR中 eMBB(增强移动宽带)场景的核心编码方案。为了适配不同业务的码长需求并降低译码复杂度,5G 系统中引入了打孔LDPC编码和均匀量化归一化最小和(NMS)译码算法。
2.算法仿真效果演示
软件运行版本:
matlab2024b
仿真结果如下(仿真操作步骤可参考程序配套的操作视频,完整代码运行后无水印):
3.数据集格式或算法参数简介
%量化参数
q = 6;
f = 2;
I_max = 20;% 最大迭代次数
Frames = 2000;% 最大块数
MIN_ERR = 10000;% 最小错误数
SNRs = 0:0.5:3; % 信噪比范围
alpha = 0.797;% 译码算法参数
beta = 0.6;% 译码算法参数
B = 1920;% 信息块大小
code_rate = 1/2;% 码率
4.算法涉及理论知识概要
LDPC码是一种线性分组码,由稀疏奇偶校验矩阵(Parity-Check Matrix,简称 H 矩阵)定义,其编码和译码过程均围绕 H 矩阵展开。5G标准中的LDPC码在设计上兼顾了灵活性与性能,通过母码(Mother Code)+ 打孔(Puncturing) 的方式支持可变码长,满足从短码(如控制信道)到长码(如数据信道)的全场景需求。
5G LDPC的母码采用准循环(Quasi-Cyclic, QC)结构,其H矩阵由多个子矩阵块组成,形式如下:
Hpc为校验置换矩阵(Parity-Check Permutation Matrix),维度为Z×K(Z为扩展因子,K为信息位长度),用于实现基础校验功能;
Hbg为背景矩阵(Base Graph),5G定义了两种背景矩阵(BG1和BG2):
BG1适用于长码(信息位长度 K≥640),侧重高速率传输;
BG2适用于短码(K<640),侧重低时延场景。
背景矩阵由循环移位子矩阵(Circulant Submatrix)构成,每个子矩阵为单位矩阵经循环移位s位后的矩阵(s=−1 表示全零矩阵),这种结构可大幅降低编码复杂度。
4.1打孔技术
打孔是指在母码编码后,人为删除部分校验位(或信息位),仅传输剩余比特,接收端通过补零(或预设值)恢复完整码长后再译码的技术。5G LDPC中打孔的核心目的是:
灵活适配码长:通过删除母码的部分校验位,生成比母码短的码长,避免为每个码长设计独立编码器;
提升码率:删除校验位会使码率 R=k/n(k为信息位,n为编码后长度)提高,适配高吞吐量需求;
优化性能:通过选择删除 “冗余度低” 的校验位,在码率提升的同时尽可能减少性能损失。
5G标准中,打孔位置的选择遵循结构化规则,以保证译码性能的稳定性。对于母码生成的校验位,按 “重要性” 排序后删除最不重要的部分:
校验位的重要性由其在 H 矩阵中的 “连接度”(与信息位的连接数)决定,连接度越高的校验位对译码可靠性影响越大,优先保留;
打孔后的码长需满足 母码(p为打孔位数),且码率R需在5G规定的范围内(如 0.25~0.93)。
例如,当母码码长为8192、码率0.5时,若需生成码率0.8的码字,可通过打孔删除8192×(1−0.5/0.8)=3072个校验位,仅传输 5120 个比特。
4.2 均匀量化NMS译码
在实际硬件中,LLR和消息的精度会影响译码性能和存储资源。5G系统采用均匀量化技术,将连续的消息值映射到有限的离散电平(如4bit或6bit量化):
均匀量化可大幅减少存储和计算资源(如 6bit量化比浮点精度减少约80%的存储需求),同时通过优化量化比特数(5G中推荐4~6bit),可将性能损失控制在0.2dB以内。
5.参考文献
[1]卢黎明.低复杂度5G-NR LDPC码编译码器设计与FPGA实现[D].北京邮电大学,2023.
[2]王博远.基于5G LDPC码的散射自适应调制编码应用技术研究[D].中国电子科技集团公司电子科学研究院,2021.
6.完整算法代码文件获得
完整程序见博客首页左侧或者打开本文底部
V