【MATLAB源码-第422期】基于MATLAB的5G NR LDPC码的误码率复杂度仿真,对比BP,LBP,NMS。

张开发
2026/4/21 2:59:57 15 分钟阅读

分享文章

【MATLAB源码-第422期】基于MATLAB的5G NR LDPC码的误码率复杂度仿真,对比BP,LBP,NMS。
操作环境MATLAB 2024a1、算法描述摘要低密度奇偶校验码因其接近香农极限的纠错能力、良好的并行处理特性以及较强的速率兼容能力已经成为新一代移动通信系统中共享信道的重要编码方案。5G NR标准围绕LDPC码给出了基图选择、提升因子构造、穿孔与速率匹配等一整套机制使其能够在高吞吐、低时延与多场景数据传输中保持较好的工程适配性。围绕LDPC译码器的研究重点已经从传统的泛洪式置信传播扩展到分层调度、最小和近似、神经网络辅助优化以及面向硬件实现的高吞吐低复杂度结构。本文依据给定MATLAB工程建立了一个面向5G NR LDPC码的译码算法对比仿真平台。该平台在标准基图约束下选取BG1与BG2两类场景以提升因子32构造准循环LDPC码采用BPSK调制和加性高斯白噪声信道对六种译码策略进行统一比较包括BP固定迭代、BP提前终止、分层BP固定迭代、分层BP提前终止、归一化最小和固定迭代以及归一化最小和提前终止。仿真从误比特率、误块率、平均迭代次数以及归一化复杂度四个维度展开。结果表明在本工程设定下分层BP类算法整体上表现出更优的误码性能与更高的收敛效率提前终止机制能够显著降低平均迭代次数其中分层BP提前终止在复杂度收益方面尤为突出归一化最小和算法虽然在性能上存在一定损失但由于校验节点更新规则更简化仍然表现出较好的低复杂度潜力。本文工作能够为5G NR LDPC译码器的软件验证、算法比较以及后续定点化和硬件化设计提供具有直接参考价值的分析基础。关键词5G NRLDPC码置信传播分层译码归一化最小和误比特率误块率复杂度分析正文一、引言在现代移动通信系统中信道编码的根本任务是在有限带宽和有限功率条件下提升链路可靠性。随着5G系统对增强移动宽带、低时延可靠通信以及海量连接等场景的支持需求不断提高传统编码方案在吞吐率、时延和实现复杂度之间的平衡压力不断增大。3GPP在NR标准中为共享传输信道采用LDPC码为控制信道采用Polar码其中LDPC码依托准循环结构和双基图设计在大码长、多码率和高吞吐实现方面具有明显优势。从工程实现角度看LDPC码的性能不仅取决于码本身的结构特征还与译码调度方式、消息更新规则、终止判据以及量化处理密切相关。泛洪式BP译码具有结构清晰、算法标准化程度高的优点但存在迭代收敛速度相对偏慢的问题分层BP译码通过分层更新校验节点和变量节点消息能够更充分地利用最新信息因此常常在相同最大迭代次数下获得更快的收敛速度和更好的误码表现最小和及其归一化版本则通过对BP中的非线性运算进行近似降低实现复杂度更符合硬件高速实现需求。近年来围绕5G LDPC译码器的研究还进一步拓展到调度优化、修正型最小和算法、神经网络辅助译码与高吞吐硬件架构等方向说明该领域仍具有持续的研究价值和工程活力。基于上述背景本文并不泛泛讨论LDPC码的一般原理而是紧扣给定代码的具体实现路径对该工程中构建的5G NR LDPC译码算法仿真系统进行系统分析。重点不在于抽象推导而在于说明该工程如何依托标准基图构造译码对象如何设置可复现实验条件如何比较不同迭代译码算法在误码性能与复杂度之间的差异以及如何从已有结果中提炼出具有工程意义的结论。二、系统模型与工程实现框架从工程结构看该项目的核心入口为主函数通过参数配置、场景遍历、算法扫点、结果统计与图像绘制等环节完成完整仿真流程。代码首先定义系统根目录、图像目录、随机种子、最大迭代次数以及仿真块数控制参数然后针对不同基图场景和不同译码算法自动执行批量测试最终输出明细数据表、摘要表以及性能曲线。整个工程结构清晰便于后续扩展不同提升因子、不同最大迭代次数以及不同复杂度建模方式。在码字构造方面代码以5G NR的两类基图为基础。对于BG1场景提升因子取32对应信息长度为704比特传输长度为2112码率约为三分之一对于BG2场景提升因子同样取32对应信息长度为320比特传输长度为1600码率为0.2。需要指出的是工程中的长度定义并非简单复制完整基图宽度而是与5G NR LDPC在前两组提升列上的穿孔机制相匹配。译码器输入阶段会显式补回前2Zc个零对数似然比位置以便与标准母图结构对应。这一处理方式说明该工程并非一般意义上的任意LDPC码仿真而是带有明确NR基图映射特征的标准兼容型实现。在发射端代码采用随机信息比特生成方式通过MATLAB 5G工具箱提供的LDPC编码函数生成码字再进行BPSK映射。信道模型选择加性高斯白噪声信道接收端依据设定的Eb/N0计算噪声方差并生成软输出之后形成LLR输入自编写译码器。该流程的优点在于模型简洁、变量可控有利于突出不同译码算法本身的差异避免多径衰落、同步误差、信道估计偏差等其他因素掩盖译码规律。与此同时这也意味着本文分析的重点是编码译码环节本身而非完整物理层链路中的所有不确定因素。三、译码算法设计与关键实现细节本工程共比较六种译码策略实际上可归纳为三类算法框架与两类终止机制的组合。第一类为泛洪式BP译码。该方法在每次迭代中先完成全部变量节点到校验节点的消息更新再统一完成全部校验节点到变量节点的消息更新最后形成新的后验LLR。其优点是结构标准、实现直接适合作为性能参考基线。代码中将该方法分为固定最大迭代和提前终止两种模式。固定模式下无论是否已经满足校验方程均执行到最大迭代次数提前终止模式则在每轮迭代后依据奇偶校验矩阵进行综合校验一旦所有校验方程满足即停止继续迭代。第二类为分层BP译码。分层调度的核心思想在于将校验矩阵按层逐步处理每处理一层便立即回写变量节点信息使下一层能够利用更“新鲜”的消息因此在相同迭代轮数下往往更容易收敛。工程中同样为分层BP设置了固定迭代与提前终止两种模式。从结果来看这一类算法正是全文性能最具代表性的部分。第三类为归一化最小和译码。最小和算法以较低复杂度近似BP中的校验节点非线性运算但直接使用最小和会带来一定性能退化因此工程中引入固定缩放因子0.75形成归一化最小和版本用于部分补偿近似误差。需要注意的是给定代码中的归一化最小和算法采用的是泛洪式更新框架而非分层最小和。这也解释了其复杂度较低但性能相对保守的结果特征。在实现细节上工程具有几个值得注意的特点。其一LLR在译码过程中被限制在正负30范围内这种限幅处理有利于避免双曲函数和对数函数在数值上出现过大波动提高程序的稳健性。其二校验节点更新中分别实现了BP规则与归一化最小和规则便于在统一框架下切换消息更新方式。其三复杂度并未采用实际CPU运行时间而是构造为“平均迭代次数×校验边数×权重因子”的归一化指标其中BP类算法权重取1归一化最小和取0.55。这一指标更接近算法级复杂度估计适合做方法间的相对比较但不能直接等同为具体硬件时延或软件执行时间。其四绘制BER和BLER曲线时若在有限块数统计中出现零误差为避免对数坐标无法显示程序会将其替换为由统计分辨率决定的下限值。因此图中的“零误码”应理解为在当前仿真块数内未观测到错误而非严格数学意义上的绝对零误码。四、仿真设置与评价指标为保证不同算法比较的公平性工程对六种译码方式采用统一的编码参数、调制方式、信道模型与最大迭代限制。最大迭代次数统一设为20。每个信噪比点至少仿真60个码块最多仿真300个码块并以累计误块数达到30作为提前结束当前统计点的条件之一。这种设置兼顾了中低信噪比区间的统计效率和高信噪比区间的基本可靠性评估但也决定了高信噪比末端结果会受到有限样本数影响。在扫描范围方面BG1场景的Eb/N0设置为从-0.25 dB到1.25 dB步进0.25 dBBG2场景设置为从-1.25 dB到0.75 dB步进同样为0.25 dB。之所以采用不同范围本质上是为了使两组场景的瀑布区段都能够被较好覆盖避免在明显过低或过高的信噪比区域浪费统计资源。评价指标主要包括四类。第一类是误比特率用于度量译码后比特级纠错能力第二类是误块率用于反映整个码块译码成功与否更接近链路层对可靠传输的关注重点第三类是平均迭代次数用于评价算法收敛效率第四类是归一化复杂度用于从工程实现视角比较不同算法的代价。相较于只看BER的单一分析方式本文采用多指标联合评价更能体现译码器在性能与代价之间的真实权衡关系。五、仿真结果分析从BG1场景结果看分层BP固定迭代在误码性能上整体最为突出。在0.75 dB时其BLER已经下降到0.01量级而普通BP固定迭代需要到1.0 dB附近才进入相近水平说明分层调度在中高信噪比区域能够带来更快的瀑布下降趋势。到了1.25 dBBP提前终止与分层BP固定迭代在当前300块统计中均未观测到误块表现出较强的纠错能力。相比之下归一化最小和两种模式在整个BG1扫描区间内都明显落后尤其在高信噪比端仍保持较高BLER表明固定缩放因子的泛洪式最小和近似在本场景下性能损失较为明显。进一步观察平均迭代次数可以发现提前终止机制的收益随着信噪比升高而逐渐增强。以BG1为例分层BP提前终止在-0.25 dB时平均迭代次数接近19次说明在低信噪比下多数码块仍需接近满迭代才能做出判决而在1.25 dB时其平均迭代次数已降至约5.88次相比固定20次迭代减少约70.6%。这说明当信道质量改善后分层调度与综合校验提前终止相配合能够迅速形成显著的复杂度优势。从BG2场景结果看分层BP固定迭代的领先地位更加明显。在0.75 dB这一最高测试点上分层BP固定迭代的BER约为3.75×10^-4BLER约为6.67×10^-3是测试范围内唯一进入10^-2以下BLER水平的算法。分层BP提前终止虽然在误码性能上略逊于固定分层BP但平均迭代次数仅约6.74次归一化复杂度相对固定分层BP下降约66.3%显示出很强的性能复杂度折中价值。普通BP的两种模式在BG2中均落后于分层BP说明在短信息长度、低码率配置下分层消息更新对收敛质量的促进更加明显。归一化最小和在BG2中依旧保持最低复杂度水平之一但BER和BLER损失较大反映出该类低复杂度近似算法若不进一步做参数自适应优化其性能上限仍受到一定约束。需要客观看待的是个别高信噪比点的局部结果并未呈现完全单调。例如BG1场景中分层BP提前终止在1.25 dB处的BER略高于1.0 dB处。这种现象并不意味着算法本身在高信噪比退化更大概率是由有限Monte Carlo块数所导致的统计起伏。因为在高信噪比端每个信噪比点最多统计300个码块而只要少量误比特落在不同码块中就可能造成相邻点之间的细小反转。因此本文对结果的解读应重在总体趋势而不是对个别末端点做过度放大。综合四类指标可以得出较清晰的工程结论。若优先追求最佳误码性能分层BP固定迭代是本工程设定下最稳健的选择若考虑性能与复杂度平衡分层BP提前终止更具现实部署价值若系统资源非常受限且能够接受一定性能损失则归一化最小和类方法仍具有吸引力但需要进一步针对缩放因子、调度方式和量化位宽进行联合优化。换言之本工程最有价值的结论不在于简单宣布某种算法“最好”而在于明确揭示了不同译码策略在性能、迭代收敛和实现代价之间的可解释权衡。六、工程价值与进一步改进方向从研究与开发的衔接角度看该工程具有较好的扩展潜力。首先当前平台已经完成了标准基图构造、稀疏校验矩阵生成、自编写译码内核和批量统计框架的搭建后续可以方便地加入不同提升因子、不同码率匹配方式以及不同终止判据。其次当前复杂度指标属于理论化归一模型未来可以进一步引入实际运行时间、吞吐率、单位比特平均操作数以及内存访问次数等指标使软件仿真更贴近硬件实现。再次归一化最小和部分目前采用单一固定缩放因子若引入分层归一化最小和、偏置最小和、区域自适应缩放或基于学习的参数优化理论上有望在不显著增加硬件代价的前提下缩小与BP之间的性能差距。最后当前链路仍属于BPSK加AWGN下的母码级比较后续可进一步叠加速率匹配、CRC、HARQ和更复杂信道模型从而形成更接近5G NR链路级仿真的完整验证框架。七、结论本文基于给定MATLAB工程对5G NR LDPC码下多种典型迭代译码算法进行了系统建模与仿真分析。工程采用BG1和BG2两种标准基图场景在统一的BPSK与AWGN条件下对BP、分层BP和归一化最小和三类方法及其提前终止机制进行了公平比较。结果表明分层BP类算法在误码性能和收敛速度方面整体优于普通BP提前终止能够显著降低平均迭代次数其中分层BP提前终止呈现出最优的综合折中归一化最小和虽然误码性能存在明显差距但凭借较低归一化复杂度仍可视为面向资源受限实现的候选方案。总体来看该工程已经较好地揭示了5G NR LDPC译码器在性能与复杂度之间的主要规律也为后续开展定点化、硬件架构设计、神经辅助参数优化以及更完整链路级仿真提供了扎实基础。参考文献[1] 3GPP,TS 38.212: NR; Multiplexing and Channel Coding, Version 19.2.0, Jan. 2026.[2] M. Sy, “Demystifying 5G Polar and LDPC Codes: A Comprehensive Review and Foundations,”arXiv preprintarXiv:2502.11053, 2025.[3] B. Wang, Y. Zhu, and J. Kang, “Two Effective Scheduling Schemes for Layered Belief Propagation of 5G LDPC Codes,”IEEE Communications Letters, vol. 24, no. 8, pp. 1683–1686, 2020.[4] H. Cui, F. Ghaffari, K. Le, D. Declercq, J. Lin, and Z. Wang, “Design of High-Performance and Area-Efficient Decoder for 5G LDPC Codes,”IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 68, no. 2, pp. 879–891, 2021.[5] K. Le Trung, F. Ghaffari, and D. Declercq, “An Adaptation of Min-Sum Decoder for 5G Low-Density Parity-Check Codes,” inProc. IEEE International Symposium on Circuits and Systems (ISCAS), Sapporo, Japan, 2019, pp. 1–5.[6] B. A. Jayawickrama and Y. He, “Improved Layered Normalized Min-Sum Algorithm for 5G NR LDPC,”IEEE Wireless Communications Letters, vol. 11, no. 9, pp. 2015–2018, 2022.[7] J. Daiet al., “Learning to Decode Protograph LDPC Codes,”IEEE Journal on Selected Areas in Communications, vol. 39, no. 7, pp. 1983–1999, 2021.[8] N. Shah and Y. Vasavada, “Neural Layered Decoding of 5G LDPC Codes,”IEEE Communications Letters, vol. 25, no. 11, pp. 3590–3593, 2021.[9] H. Wu and H. Wang, “A High Throughput Implementation of QC-LDPC Codes for 5G NR,”IEEE Access, vol. 7, pp. 185373–185384, 2019.[10] Y. Ren, H. Harb, Y. Shen, A. Balatsoukas-Stimming, and A. Burg, “A Generalized Adjusted Min-Sum Decoder for 5G LDPC Codes: Algorithm and Implementation,”IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 71, no. 6, pp. 2911–2924, 2024.2、仿真结果演示3、关键代码展示略4、MATLAB 源码获取V点击下方名片关注公众号获取

更多文章