QC-LDPC码是一类结构化的 LDPC码,其校验矩阵可以分解为ZxZ的全零矩阵和循环移位矩阵。其中循环移位矩阵通过对ZxZ的单位矩阵向右循环移位获得。扩展之前的矩阵称为基矩阵[对应的Tanner图称为基图(BG,Base Graph)],只包含元素“0”和“1”。“0” 的位置替换为ZxZ的全零矩阵,“1” 的位置替换为ZXZ的循环移位矩阵。
QC-LDPC码的设计:
1.确定一个mn的稀疏矩阵作为BG;
2.复制BG,倍数为Z,变为mZnZ;
3.对变量节点和校验节点之间的连线进行交织(指循环移位);
BG设计:
base graph图解
[A B]对应RL-LDPC码中的Hcore,是高码率部分;[D E]对应Hext,是扩展部分。Hcore的维度较低,可以通过密度演进和计算机辅助的方法设计比较好的稀疏矩阵。基于Hcore,扩展生成Hext。Hext每增加一行,H就会多一列。
子矩阵A对应系统比特;子矩阵C为全零矩阵;子矩阵E是单位矩阵;子矩阵B是方阵,对应校验比特。B中有一列列重为3,有一列列重可能为1。如果有列重为1的列,该列中元素“1”出现在最后一行,其余的列中首列列重为3.其后的列具有双对角结构。如果没有列重为1的列,则首列列重为3,其后的列具有双对角结构。
BG1 的大小是46x68,Hcore的大小为4x26,Hext的大小为42x26。支持的最低码率为1/3。主要用于对吞吐要求较高、码率较高,码长较长的场景。
BG2 的大小为42x52,Hcore的大小为4x14, Hext的大小为38x14。主要用于对吞吐量要求不高,码率较低,码长较短的场景。
QC-LDPC码由BG和相应的移位因子Z构成,即BG中的1替换为大小为ZZ的循环移位矩阵,0替换为ZZ的全0矩阵。循环移位矩阵的移位值Pij,表示BG中第(i,j )个非0元素对应的移位矩阵为ZxZ往右移位Pij次,它由Pij=mod(Vij, Z)计算得到,其中Vij是BG中第 (i, j)个非“0”元素位置对应的整数,mod(x,y)表示x对y取余。Z的取值是2≤Z≤384内的正整数。
A = {2,3,5,7,9,9,11,13,15}和j = 0,1 …。
Z在2到384范围内