当前位置:首页>排行榜>5G LDPC的提升因子Z应如何选择?

5G LDPC的提升因子Z应如何选择?

  • 更新时间 2026-09-21 08:52:35
5G LDPC的提升因子Z应如何选择?

做5G LDPC开发,有一个参数肯定绕不开:提升因子Z。

它决定了那张小小的基图矩阵,怎么“扩展”成为真正用来编码的校验矩阵;也直接关系到译码器能跑多快、占多少资源。

但协议里给了51个可选值,到底怎么挑?本期我们就来探讨这个问题。

01

Z是什么?

5G的LDPC码有个巧妙的设计:先定义一张很小的基图矩阵,里面只有0和1。然后,把每一个“1”替换成一个Z×Z 的置换方阵,把每一个“0”替换成一个Z×Z 的全零方阵。这个Z,就是提升因子。

可以把它理解成一张图纸的放大倍数。基图是那张小图纸,Z是放大倍数,扩展之后得到的才是编码所用的校验矩阵。

可以说:基图决定了码的拓扑结构,而Z决定了单个码块最多承载多少信息比特;最终编码码长也由基图校验列与Z共同决定。

当然,Z也不是随便取的。协议规定它必须是一组特定数值集合中的一个,最大到384。

那么Z究竟要如何选择呢?

02

选Z之前,先定一件事

在选择Z之前,需要先等一等:

Z的选择并不是孤立的,而是跟一个更基础的决定绑在一起——用哪张基图

大家都知道,5G定义了两张基图,BG1和BG2。BG1适合大块数据、高码率场景;BG2适合小块数据、低码率场景。

所以,我们需要先根据业务需求把基图选定,这时,Z的选择才有依据。

03

Z的选择(计算)

基图定下来,对应的信息列也就明确了:BG1固定是22列信息列;BG2原生为10个信息列(可根据目标码率做基图列截断,信息列可选6、8、9、10)。这个信息列数量,就是计算Z的起点。

而Z的计算逻辑其实也很简单:对于待传输数据,需要选定Z,使得:

信息列×Z ≥ 码块信息比特总数

打个比方:

现在有一块数据,长度是6,168个比特;

基图选了BG1,有22个信息列;

那么每个信息列需要承载的比特数就是6168÷22,约等于280.4;

协议Z表里大于该值的最小合法Z是288;

所以这块数据对应的提升因子就是Z=288。

注:通常码块信息比特包含码块CRC比特,示例为简化示例,未计入CRC。

这里有个细节要留意:Z确定之后,

码块可承载信息比特总数=信息列数×Z

而不是原本的数据长度。

比如22×288=6336,比6168多了168个比特。这168个比特位置填充填充比特,不携带业务信息,在编码后会被移除,不参与传输。

所以选Z的时候,不能只看“容量够不够”,还得看填充比特带来的开销。

04

Z的背后,要权衡的三件事

在选择Z的这个过程中,其实是要权衡三件事:

第一件事,要跑多快

Z越大,译码器并行处理粒度就会越大,吞吐量上限也就越高(Z做并行架构时)。

但代价是硬件资源随之增加:Z从64增加到384,Z扩大6倍,校验矩阵行列维度同步放大6倍,存储和计算单元开销会显著上涨。

也就是说:高吞吐场景Z值可以选大一点;而面积、功耗较为敏感的场景,就需要谨慎控制Z的大小了。

第二件事,浪费了多少

前面提到,算出的Z往往会让可承载比特大于原始数据长度,多出部分填充比特。

但填充比特越多,有效编码效率也就越低。所以在可选范围内,优先选填充量最小的Z。

第三件事,硬件实现与调度权衡

同一张基图下,Z本身不会改变LDPC码理论译码收敛特性。而工程上不同Z观测到的性能差异大多来自硬件实现、填充比特带来的有效码率变化。

在工程中,一般来说在满足数据长度前提下,也都会优先选择填充开销最小的Z。

05

总结

Z这个参数,看起来只是协议表里的一个数字,但它实际上是连接基图设计与硬件实现的一座桥梁

它向上决定了基图能“扩展”出多长的码块,影响系统支持的速率;向下决定了译码器里有多少节点可以并行工作,直接影响硬件能跑多快、占多大面积。

也只有将它和基图选择、硬件规划放在一起考虑,整套方案才能在目标平台上跑出更好的效率。

END


\\ 开发工具 

LDPC编译码器自动化开发工具

\\推荐阅读 

    点击这里☝️☝️关注我们🫶

    随机文章