Cmmb中基于三级流水线的高速qc-ldpc编码器的制造方法
【技术领域】
[0001] 本发明涉及信道编码领域,特别涉及一种CMMB (China Mobile Multimedia Broadcasting)系统中基于三级流水线的高速QC-LDPC编码器。
【背景技术】
[0002] 低密度奇偶校验(Low-Density Parity-Check, LDPC)码是高效的信道编码技术 之一,而准循环 LDPC(Quasi-Cyclic LDPC,QC-LDPC)码是一种特殊的 LDPC 码。QC-LDPC 码 的生成矩阵G和校验矩阵H都是由循环矩阵构成的阵列,具有分段循环的特点,故被称为 QC-LDPC码。循环矩阵的首行是末行循环右移1位的结果,其余各行都是其上一行循环右 移1位的结果,因此,循环矩阵完全由其首行来表征。通常,循环矩阵的首行被称为它的生 成多项式。
[0003] CMMB标准采用系统形式的LDPC码,通过行列交换,生成矩阵和校验矩阵都可被变 换为准循环形式,其生成矩阵G的左半部分是一个单位矩阵,右半部分是由e X c个b X b阶 循环矩阵6^(0彡1〈6,6彡九〖3 = 6+(:)构成的阵列,如下所示:
[0004]
(1)
[0005] 其中,I是bXb阶单位矩阵,0是bXb阶全零矩阵。G的连续b行和b列分别被称 为块行和块列。由式(1)可知,G有e块行和t块列。CMMB标准采用了一种码率η = 3/4 的 QC-LDPC 码,对于该码,t = 36, e = 27, c = 9, b = 256。
[0006] CMMB标准中3/4码率QC-LDPC编码器的现有解决方案是基于9个I型移位寄存器 加累加器(Type-I Shift-Register-Adder-Accumulator,SRAA-I)电路的串行编码器。由 9个SRAA-I电路构成的串行编码器,在6912个时钟周期内完成编码。该方案需要4608个 寄存器、2304个二输入与门和2304个二输入异或门,还需要62208比特ROM存储循环矩阵 的生成多项式。该方案有两个缺点:一是需要大量存储器,导致电路成本高;二是串行输入 f目息比特,编码速度慢。
【发明内容】
[0007] CMMB系统中3/4码率QC-LDPC编码器的现有实现方案存在成本高、编码速度慢的 缺点,针对这些技术问题,本发明提供了一种基于三级流水线的高速QC-LDPC编码器。
[0008] 如图2所示,通信系统中基于三级流水线的高速QC-LDPC编码器主要由3部分组 成型后向迭代电路、高密度矩阵与向量的乘法器和II型后向迭代电路。编码过程分3步 完成:第1步,使用I型后向迭代电路计算向量q和X ;第2步,使用高密度矩阵与向量的乘 法器计算部分校验向量Px;第3步,使用II型后向迭代电路计算部分校验向量p y,从而得到 校验向量P = (Px,Py)。
[0009] 本发明提供的CMMB系统中3/4码率高速QC-LDPC编码器结构简单,能在显著提高 编码速度的条件下,减少存储器,从而降低成本,提高吞吐量。
[0010] 关于本发明的优势与方法可通过下面的发明详述及附图得到进一步的了解。
【附图说明】
[0011] 图1是行列交换后近似下三角校验矩阵的结构示意图;
[0012] 图2是基于二级流水线的QC-LDPC编码过程;
[0013] 图3是循环左移累加器RLA电路的功能框图;
[0014] 图4是由3个RLA电路构成的一种高密度矩阵与向量的乘法器;
[0015] 图5是I型后向迭代电路;
[0016] 图6给出了矩阵Q中非零循环矩阵所在的块位置及其循环右移位数;
[0017] 图7是II型后向迭代电路;
[0018] 图8给出了矩阵Y中非零循环矩阵所在的块位置及其循环右移位数;
[0019] 图9总结了编码器各编码步骤以及整个编码过程所需的硬件资源和处理时间。
【具体实施方式】
[0020] 下面结合附图对本发明的较佳实施例作详细阐述,以使本发明的优点和特征能更 易于被本领域技术人员理解,从而对本发明的保护范围作出更为清楚明确的界定。
[0021] 循环矩阵的行重和列重相同,记作w。如果w = 0,那么该循环矩阵是全零矩阵。如 果w = 1,那么该循环矩阵是可置换的,称为置换矩阵,它可通过对单位矩阵I循环右移若干 位得到。QC-LDPC码的校验矩阵H是由cXt个bXb阶循环矩阵H j, k (1彡j彡c,1彡k彡t,t =e+c)构成的如下阵列:
[0022]
(2)
[0023] 通常情况下,校验矩阵H中的任一循环矩阵要么是全零矩阵(w = 0)要么是置换 矩阵O = 1)。令循环矩阵Hjik的首行g_jik= (g_jikil, g_jiki2,…,g_jikib)是其生成多项式,其中 0或I (1彡m彡b)。因为H是稀疏的,所以g ]ik只有1个'1',甚至没有'1'。
[0024] 对于CMMB系统中3/4码率的QC-LDPC码,H的前27块列对应的是信息向量a, 后9块列对应的是校验向量p。以256比特为一段,信息向量a被等分为27段,即a = (a!,a2,…,a27);校验向量p被等分为9段,即p = (P1, p2,…,p9)。
[0025] 对校验矩阵H进行行交换和列交换操作,将其变换成近似下三角形状HAW,如图1 所示。在图1中,所有矩阵的单位都是b = 256比特而不是1比特。A是由6 X 27个256 X 256 阶循环矩阵构成,B是由6X 3个256X 256阶循环矩阵构成,T是由6X6个256X 256阶循 环矩阵构成,C是由3X27个256X256阶循环矩阵构成,D是由3X3个256X256阶循环矩 阵构成,E是由3X6个256X256阶循环矩阵构成。T是下三角矩阵,u = 3反映了校验矩 阵Haw与下三角矩阵的接近程度。在图1中,矩阵A和C对应信息向量a,矩阵B和D对应 一部分校验向量Px= (P D P2, P;3),矩阵τ和E则对应余下的校验向量Py= (P 4, P5,…,P9)。 P= (Px,Py)。上述矩阵和向量满足如下关系:
[0026] ρχτ= Φ (ET 1AaVCax) (3)
[0027] p/= T '(Aa^BpxT) (4)
[0028] 其中,Φ = (ET 4+D) \上标"和1分别表示转置和逆。众所周知,循环矩阵的逆、 乘积、和仍然是循环矩阵。因此,Φ也是由循环矩阵构成的阵列。虽然矩阵E、T、B和D都 是稀疏矩阵,但通常情况下Φ不再稀疏而是高密度的。
[0029] 令 qT= T -1AaT,xT= Eq T+CaT以及 p χτ= Φχ τ。
[0030] 向量q和χ可由下式计算得到:
[0031] 偶
[0032]
[0033] (6)
[0034] 一旦计算得出Px,式(4)可改写为:
[0035] [A B T] [a px py] T = Y [a p x py] T = 0 (7)
[0036] 其中,
[0037] Y = [A B Τ] (8)
[0038] 因为Q和Y与T 一样都是下三角矩阵,所以式(5)中的[q χ]和式(7)中的匕都 可采用后向迭代的计算方式。
[0039] Φ涉及高密度矩阵与向量的乘法,而Q和Y涉及后向迭代计算。根据以上讨论,可 给出一种基于三级流水线的QC-LDPC编码过程,如图2所示。
[0040] ρχτ= φχ τ等价于 P χ= χφ τ。令 X = (X1, X2,…,Xuxb)。定义 U 比特向量 Sn = (xn, xn+b,…,xn+(u 1)xb),其中1彡η彡b。令φ』(1彡j彡u)是由φτ的第j块列中所有循 环矩阵生成多项式构成的uXb阶矩阵。则有
[0041] Pj=(…((0+s 々。产⑴+如①.)1"1)+…+~?.)1"1) (9)
[0042] 其中,上标ls(1)表示循环左移1位。
[0043] 由式(9)可得到一种循环左移累加器(Rotate-Left-Accumulator,RLA)电路,如 图3所示。查找表的索引是u比特向量S n,查找表1^事先存储可变的u比特向量与固定的 c^j的所有可能乘积,故需2ub比特