专利名称:一种迭代译码方法及系统的制作方法
技术领域:
本发明涉及通信领域的数字信号传输与存储系统,尤其涉及一种迭代译码方法及系统。
背景技术:
在现代数字信号传输与存储系统中,由于传输信道噪声或存储媒介的物理损伤等,常会造成数字信号的传输或存储的错误,因此,为保证数字信号传输或存储的可靠性, 差错控制编码技术是一项标准技术。低密度奇偶校验码(LDPC,Low Density Parity Check Code)是一种差错控制编码技术,最早由Villager于1962年提出,但由于受到技术水平的限制,在很长一段时间里并没有得到重视和推广,直到1996年D. MacKay和R. Neal重新发现LDPC并证明其具有接近香农极限的良好性能,LDPC才受到越来越多的关注。LDPC是一类定义在稀疏矩阵H上的线性分组码。H即为LDPC的校验矩阵,对于任何一个合法码字V,都满足校验方程H · Vt = 0,其中,LDPC的校验矩阵H可用二部图表示。 基于校验矩阵的二部图的软判决译码算法是目前较常用的LDPC的译码方法。软判决译码算法可以通过基于置信度传播(BP,BeliefPropagation)译码算法的迭代译码来实现,并且可以获得良好的误比特率性能。虽然BP译码算法具有较好的译码性能,但算法中涉及到许多非线性运算,不适合采用硬件实现,因此产生了一些简化的BP译码算法,如最小和 (MS, Min-Sum)译码算法,归一化最小和(NMS,Normalized Min-Sum)译码算法和偏移最小和(OMS,Offset Min-Sun)译码算法。最小和译码算法中主要采用的运算形式为比较运算和求和运算,算法复杂度很低,但其性能与BP译码算法相比有较大的损失;归一化最小和译码算法和偏移最小和译码算法均是在最小和译码算法的基础上提出的改进译码算法。归一化最小和译码算法引入了一个小于1的校正因子α,偏移最小和译码算法引入了一个偏移量β。两种算法在性能上没有明显的差异,但归一化最小和译码算法在最小和译码算法的基础上增加了一个乘法运算,偏移最小和译码算法只增加了一个比较算法和一个加法运算。在硬件实现方面,偏移最小和算法的复杂度更低。因此,为了能够有效降低有限精度 LDPC译码器的硬件逻辑资源,多数情况下在译码器中采用偏移最小和译码算法。为介绍偏移最小和译码算法,先给出LDPC的二部图描述。分别对应于校验矩阵H 中的N列和M行LDPC对应的二部图中包含两类节点Ν个校验节点c和M个变量节点ν,二部图中的边对应于校验矩阵H中的“1”,若校验矩阵H中的元素h(m,n)为1,则二部图中的校验节点cm和变量节点Vn之间存在一条边。定义M(n)为二部图中与变量节点vn相连接的校验节点的集合,N(m)为参与校验方程m的变量节点的集合。M(n)\m表示集合M(n)中除去元素Cm,同样N (m) \n表示集合N (m)中除去元素vn。定义In表示变量节点vn的先验概率信息,译码过程中校验节点Cm传递给变量节点Vn的外信息为Lmn,变量节点Vn传递给校验节点Cm的外信息为Znm,变量节点Vn的后验概率信息为LQn。设从信道接收到的码字向量为 Y = [y1 I2,..., yn],其中Ii为接收到的关于第i个比特的信道信息。根据以上给出相关概念,偏移最小和译码算法的译码过程可分为以下4个步骤第1步初始化,变量节点的先验概率信息In被初始化为In = yn对于每个满足{(m, η) H(m, η) = 1}的(m, η),变量节点外信息ζ = 1η。第2步校验节点更新,校验节点外信息Lnm更新为
ffΛ ΛLtnn: η sign(zn )max min znm -β ,0其中,β为一个较小的正数,是偏移最小和译码算法的偏移量修正因子,偏移量修正因子一般根据密度进化方法或仿真方法确定其最优值。第3步变量节点更新,变量节点的外信息Znm和后验概率信息Ll更新为~Κ+ Σ Lmn
m eM(n)\mLQn = + ^ Lmn
meM(ri)第4步判决,当Wn彡0时,毛=0,否则毛=1,这样就生成了译码码字向量f。如果校验方程Hf =0(mod2;)成立,则译码成功并结束。否则,若迭代次数未超过预设的最大迭代次数,则重复2至4步的迭代译码过程;若迭代次数超过预设的最大迭代次数,则结束译码过程并声明译码失败。由LDPC的迭代译码算法可以看出,LDPC的译码过程可以并行执行,而现场可编程门阵列(FPGA,Field-Programmable Gate Array)和超大规模集成电路(VLSI,Very Large Scale Integration)具有支持并行操作的优势,因此,在LDPC译码器适合于采用FPGA或 VLSI来进行硬件实现。然而,采用硬件实现LDPC译码器需要考虑硬件资源问题,特别是片内存储器 (RAM, Random Access Memory)资源和逻辑资源。在存储器资源方面,由于LDPC采用软信息迭代译码方法,所以在译码过程中需要使用大量的存储资源存储外信息。然而,FPGA内部的 RAM资源非常有限。而对于ASIC来说,大量的片内RAM会占用过多的芯片面积,进而挤占片内逻辑资源的空间,限制芯片的逻辑复杂度,并且会增加芯片的功耗。在逻辑资源方面,为了能够提高译码器的吞吐率,需要提高LDPC译码器的译码并行度,进而增加实现译码器所需要的硬件逻辑资源。因此,在译码器实现过程中,需尽量减少实现译码算法所需的硬件逻辑资源,以提高译码器的并行度。为了能够节省存储资源和硬件逻辑资源,在译码器的硬件实现过程中需要采用有限精度的LDPC译码算法,即对输入译码器的信道信息需要进行量化,在译码过程中采用限精度的数据运算。对输入译码器的信道信息进行量化是用预先规定的有限个整数值表示输入译码器的信道信息值的过程。预先规定的有限个整数值称为量化值。量化值用q比特有符号的二进制码表示,二进制码的数据位宽称为量化值的量化精度。有符号的二进制码的最高位为符号位,若量化值为负值,则最高位取“1”,否则最高位取“0”。二进制码的其余q_l比特表示量化值的模值。q比特有符号的二进制码只能与M = 个量化值,即[-T,. . .,-1, 0,1,..., T]相对应,其中T = 2^-10这就需要把输入译码器的信道信息值的取值区间划分为与有限个量化值对应的M个量化区间。设 为与量化值i(ie [-T,...,-1,0,1,..., T])相对应的量化区间的终点值,称为量阶值。定义AVi = Cii-QH为量化间隔。量化间隔相等的量化方法称为均勻量化,否则称为非均勻量化。对信道信息进行量化会造成译码算法的译码性能损失。量化方案中的量化精度和量阶值均会影响译码算法的译码性能损失情况。因此,对于设计有限精度LDPC码译码算法,信道信息量化方案中量化精度和量阶值的选取是一项重要工作。在量化精度的选取方面,主要工作是平衡量化引起的译码性能损失与译码器的硬件资源。若量化方法设计的量化精度较高,则译码运算过程中的数据具有较宽的数据位宽, 能够提高译码过程中的数据运算精度,进而减小量化造成的译码性能损失。但较高的量化精度要求译码器的数据总线和外信息存储单元都具有较宽的数据位宽。这样译码器的硬件实现需要消耗大量的硬件逻辑资源和存储资源。若量化方法设计的量化精度较低,则能够达到节省实现译码器的硬件逻辑资源和存储资源的目的,但译码过程中的数据运算精度也会随之降低,从而可能导致译码算法的译码性能损失较大。在量阶值的设计方面,主要工作是通过选取合适的量阶值和量化间隔,尽量减小量化引起的译码性能损失。当量化精度较高时,采用均勻量化方法即可。但是,当量化精度较低时,采用均勻量化方法很难同时保证量化数据的覆盖范围和量化数据的精度,量化引起的译码性能损失较大,因此需要采用非均勻量化方法。非均勻量化方法中,可减小较小的量阶值之间的量化间隔,同时扩大较大的量阶值之间的量化间隔。这样可同时保证量化数据的精度和覆盖范围。在非均勻量化方法中,可通过优化量阶值的设计,进一步减小量化引起的译码性能损失。译码过程中的数据运算为有限精度数据运算,对有限精度数据进行加法运算时由于加法进位可能导致数据位宽扩展,而译码器的外信息存储单元的数据位宽无法扩展,因此需要对译码过程中产生数据位宽扩展的数据进行数据位宽限幅。对产生数据位宽扩展的数据采用不同的数据位宽限幅方法,也会对译码算法的译码性能产生较大的影响。针对不同的LDPC码,需要通过仿真优化译码过程中位宽扩展数据的数据位宽限幅方法,以降低由量化造成的译码算法的译码性能损失。
发明内容
有鉴于此,本发明的主要目的在于提供一种迭代译码方法及系统,能够降低LDPC 译码器的存储资源和硬件实现复杂度。为达到上述目的,本发明的技术方案是这样实现的本发明提供一种迭代译码系统,包括量化单元,用于对接收的信道信息进行非均勻量化处理;译码单元,用于对变量节点的先验概率信息进行初始化处理,将量化后的信道信息作为变量节点的先验概率信息;还用于根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理;还用于根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理;还用于判断译码是否结束。上述系统中,该系统还包括信道信息存储单元,用于存储量化后的信道信息。上述系统中,所述译码单元进一步包括
初始化单元,用于对变量节点的先验概率信息进行初始化处理,将量化后的信道信息作为变量节点的先验概率信息;校验节点更新单元,用于根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理;变量节点更新单元,用于根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理;判断单元,用于判断译码是否结束。上述系统中,该系统还包括第一存储单元,用于存储更新后的校验节点外信息;第二存储单元,用于存储更新后的变量节点外信息。本发明还提供一种迭代译码方法,包括对接收的信道信息进行非均勻量化处理;对变量节点的先验概率信息进行初始化处理,将量化后的信道信息作为变量节点的先验概率信息;根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理;根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理;判断译码是否结束。上述方法中,所述对输入译码单元的信道信息进行非均勻量化处理为根据仿真优化得到的信道信息N比特非均勻量化方案,对接收到的用于输入译码单元的信道信息进行N比特非均勻量化处理,所述N为4或5或6 ;存储量化后的信道信息。上述方法中,所述对接收到的用于输入译码单元的信道信息进行N比特非均勻量化处理为对接收到的用于输入译码单元的信道信息进行N比特非均勻量化处理,将接收到的信道信息量化为
y =i '^i-I ^ I^l ^ / = 1,2,...,2^-2< ~
1^1 = 2--1,1
其中,Qi为量阶值,i为量化值,yn为接收到的信道信息,%为量化后的信道信息。上述方法中,所述根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理为 偏移量根据译码迭代次数进行自适应调整;将与校验节点相关联的变量节点外信息按照每两个分为一组,通过分级比较变量节点外信息的模值,得到变量节点外信息的模值中的最小值,再将得到的最小值与偏移量的值进行比较,如果所述最小值大于偏移量的值,则更新后的校验节点外信息等于所述最小值与偏移量的值的差值;否则,更新后的校验节点外信息等于0 ;存储更新后的校验节点外信息。上述方法中,所述偏移量根据译码迭代次数进行自适应调整为译码迭代次数小于迭代次数门限值时,采用的偏移量为0 ;译码迭代次数达到迭代次数门限值时,如果校验节点对应的校验约束关系在前一次迭代译码过程中得到满足, 则在本次迭代译码过程中,采用的偏移量为0 ;如果校验节点对应的校验约束关系在前一次迭代译码过程中未得到满足,则在本次迭代译码过程中,采用的偏移量为1。上述方法中,所述根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理为将校验节点外信息按照每两个值一组进行划分,将N比特非均勻量化的变量节点先验概率信息和每组校验节点外信息进行分级累加处理,每进行一级的累加,就将累加后得到的和值的位宽增加一个比特;最后,如果变量节点累加更新得到的更新值大于2^-1,则更新后的变量节点外信息为2^-1,如果变量节点累加更新得到的更新值小于-2^-1,则更新后的变量节点外信息为-2^-1,如果变量节点累加更新得到的更新值在区间[-2^-1,2^-1]内,则将变量节点累加更新得到的更新值作为更新后的变量节点外信息的值;存储更新后的变量节点外信肩、ο上述方法中,所述判断译码是否结束为如果校验矩阵H与译码码字向量f的乘积满足偶校验条件,则译码成功并结束译码流程;否则,判断迭译码代迭次数是否超过预设的最大迭代次数Uermax,如果译码迭代次数未超过预设的最大迭代次数Uermax,则继续进行校验节点外信息、变量节点外信息的更新处理并判断译码是否结束;否则,如果译码迭代次数超过预设的最大迭代次数Uermax,结束译码过程并声明译码失败。本发明提供的迭代译码方法及系统,对接收的信道信息进行非均勻量化处理;对变量节点的先验概率信息进行初始化处理,将量化后的信道信息作为变量节点的先验概率信息;根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理;根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理;判断译码是否结束;因此,迭代译码过程中利用均利用4或5或6比特的非均勻量化后的信道信息,能够节省硬件逻辑资源和存储资源;此外,变量节点外信息的更新过程能够利用分级累加得到高精度的更新的变量节点外信息,同时采用自适应的偏移量进行校验节点外信息的更新,因此变量节点和校验节点的更新处理方式能够减小量化引起的译码性能损失;综上, 本发明的技术方案能够降低LDPC译码器的存储资源和硬件实现复杂度,同时能够保证译码过程中的运算精度,降低由于量化引起的译码性能损失。
图1是本发明实现迭代译码系统的结构示意图;图2是本发明实现迭代译码方法的流程示意图;图3是16输入变量节点外信息的分级累加的更新示意图;图4是本发明实施例中校验节点更新单元中6输入比较单元的示意图;图5是本发明实施例中校验节点更新单元中7输入比较单元的示意图;图6是本发明实施例中变量节点更新单元中7输入比较单元的示意图;图7是本发明实现迭代译码方法的误比特率性能的示意图。
具体实施例方式本发明的基本思想是对接收的信道信息进行非均勻量化处理;对变量节点的先验概率信息进行初始化处理,将量化后的信道信息作为变量节点的先验概率信息;根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理;根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理;判断译码是否结束。下面通过附图及具体实施例对本发明再做进一步的详细说明。本发明提供一种迭代译码系统,图1是本发明实现迭代译码系统的结构示意图, 如图1所示,该系统包括量化单元10、译码单元20 ;其中,量化单元10,用于对接收的信道信息进行非均勻量化处理;译码单元20,用于对变量节点的先验概率信息进行初始化处理,将量化后的信道信息作为变量节点的先验概率信息;还用于根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理;还用于根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理;还用于判断译码是否结束。该系统还包括信道信息存储单元30,用于存储量化后的信道信息。所述译码单元20进一步包括初始化单元21,用于对变量节点的先验概率信息进行初始化处理,将量化后的信道信息作为变量节点的先验概率信息;校验节点更新单元22,用于根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理;变量节点更新单元23,用于根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理;判断单元M,用于判断译码是否结束。译码单元20还包括第一存储单元25,用于存储更新后的校验节点外信息;第二存储单元沈,用于存储更新后的变量节点外信息。基于上述系统,本发明还提供一种迭代译码方法,图2是本发明实现迭代译码方法的流程示意图,如图2所示,该方法包括以下步骤步骤201,对接收到的信道信息进行非均勻量化处理,并存储量化后的信道信息;具体的,量化处理单元根据仿真优化得到的信道信息N比特非均勻量化方案,对自身接收到的用于输入译码单元的信道信息进行N比特非均勻量化处理,其中N为4或5 或6 ;将量化后的信道信息存储到信道信息存储单元;对接收到的用于输入译码单元的信道信息进行N比特非均勻量化处理,将接收到的信道信息量化为
权利要求
1.一种迭代译码系统,其特征在于,该系统包括量化单元,用于对接收的信道信息进行非均勻量化处理;译码单元,用于对变量节点的先验概率信息进行初始化处理,将量化后的信道信息作为变量节点的先验概率信息;还用于根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理;还用于根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理;还用于判断译码是否结束。
2.根据权利要求1所述的系统,其特征在于,该系统还包括信道信息存储单元,用于存储量化后的信道信息。
3.根据权利要求1或2所述的系统,其特征在于,所述译码单元进一步包括初始化单元,用于对变量节点的先验概率信息进行初始化处理,将量化后的信道信息作为变量节点的先验概率信息;校验节点更新单元,用于根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理;变量节点更新单元,用于根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理;判断单元,用于判断译码是否结束。
4.根据权利要求3所述的系统,其特征在于,该系统还包括第一存储单元,用于存储更新后的校验节点外信息;第二存储单元,用于存储更新后的变量节点外信息。
5.一种迭代译码方法,其特征在于,该方法包括对接收的信道信息进行非均勻量化处理;对变量节点的先验概率信息进行初始化处理,将量化后的信道信息作为变量节点的先验概率信息;根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理;根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理;判断译码是否结束。
6.根据权利要求5所述的方法,其特征在于,所述对输入译码单元的信道信息进行非均勻量化处理为根据仿真优化得到的信道信息N比特非均勻量化方案,对接收到的用于输入译码单元的信道信息进行N比特非均勻量化处理,所述N为4或5或6 ;存储量化后的信道信息。
7.根据权利要求6所述的方法,其特征在于,所述对接收到的用于输入译码单元的信道信息进行N比特非均勻量化处理为对接收到的用于输入译码单元的信道信息进行N比特非均勻量化处理,将接收到的信道信息量化为
8.根据权利要求5所述的方法,其特征在于,所述根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理为偏移量根据译码迭代次数进行自适应调整;将与校验节点相关联的变量节点外信息按照每两个分为一组,通过分级比较变量节点外信息的模值,得到变量节点外信息的模值中的最小值,再将得到的最小值与偏移量的值进行比较,如果所述最小值大于偏移量的值,则更新后的校验节点外信息等于所述最小值与偏移量的值的差值;否则,更新后的校验节点外信息等于0 ;存储更新后的校验节点外信息。
9.根据权利要求8所述的方法,其特征在于,所述偏移量根据译码迭代次数进行自适应调整为译码迭代次数小于迭代次数门限值时,采用的偏移量为0 ;译码迭代次数达到迭代次数门限值时,如果校验节点对应的校验约束关系在前一次迭代译码过程中得到满足,则在本次迭代译码过程中,采用的偏移量为0 ;如果校验节点对应的校验约束关系在前一次迭代译码过程中未得到满足,则在本次迭代译码过程中,采用的偏移量为1。
10.根据权利要求5所述的方法,其特征在于,所述根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理为将校验节点外信息按照每两个值一组进行划分,将N比特非均勻量化的变量节点先验概率信息和每组校验节点外信息进行分级累加处理,每进行一级的累加,就将累加后得到的和值的位宽增加一个比特;最后,如果变量节点累加更新得到的更新值大于2N-Ll,则更新后的变量节点外信息为2H-1,如果变量节点累加更新得到的更新值小于-2H-1,则更新后的变量节点外信息为-2H-1,如果变量节点累加更新得到的更新值在区间[-2^-1,2^-1]内,则将变量节点累加更新得到的更新值作为更新后的变量节点外信息的值;存储更新后的变量节点外信肩、ο
11.根据权利要求5所述的方法,其特征在于,所述判断译码是否结束为如果校验矩阵H与译码码字向量f的乘积满足偶校验条件,则译码成功并结束译码流程;否则,判断迭译码代迭次数是否超过预设的最大迭代次数Uermax,如果译码迭代次数未超过预设的最大迭代次数Uermax,则继续进行校验节点外信息、变量节点外信息的更新处理并判断译码是否结束;否则,如果译码迭代次数超过预设的最大迭代次数Uermax,结束译码过程并声明译码失败。
全文摘要
本发明公开一种迭代译码方法及系统,包括对接收的信道信息进行非均匀量化处理;对变量节点的先验概率信息进行初始化处理,将量化后的信道信息作为变量节点的先验概率信息;根据变量节点的先验概率信息,并利用自适应的偏移量进行校验节点外信息的更新处理;根据更新后的校验节点外信息,对变量节点外信息进行分级累加的更新处理;判断译码是否结束。根据本发明的技术方案,能够降低LDPC译码器的存储资源和硬件实现复杂度。
文档编号H03M13/11GK102545913SQ201210026479
公开日2012年7月4日 申请日期2012年2月7日 优先权日2012年2月7日
发明者耿敏明, 董同昕, 陈为刚 申请人:中兴通讯股份有限公司