一种低密度奇偶校验码译码装置和译码方法转让专利

申请号 : CN201110238068.X

文献号 : CN102957436B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 白栋李继龙邢观斌高鹏申红兵王伟平

申请人 : 北京泰美世纪科技有限公司国家新闻出版广电总局广播科学研究院

摘要 :

本发明公开了一种低密度奇偶校验码译码装置,包括存储单元;控制单元,用于执行校验节点更新控制和变量节点更新控制,校验节点更新控制包括根据LDPC码的校验矩阵的模结构,读取存储单元中的变量节点似然比中的一部分变量节点似然比信息;将更新的校验节点似然比保存至该存储单元;变量节点更新控制包括根据LDPC码的校验矩阵的模结构,读取存储单元中的校验节点似然比中的一部分校验节点似然比信息;将更新的变量节点似然比保存至该存储单元;处理单元,用于执行校验节点更新和变量节点更新。本发明的译码装置根据模结构控制对存储单元数据的选取和更新,从而实现了译码器结构化和参数化设计,达到了简化设计保证性能的效果。

权利要求 :

1.一种低密度奇偶校验码译码装置,其特征在于,

所述低密度奇偶校验码是具有模结构的结构化的LDPC码,该装置包括:

存储单元,用于存储初始化的变量节点似然比、更新的变量节点似然比和更新的校验节点似然比,其中,所述存储单元包括第一存储区和第二存储区,所述第一存储区用于存储接收到的各码元的对数似然比LLRn;第二存储区用于存储更新的校验节点似然比Lmn和更新的变量节点似然比Znm,Lmn为校验节点m传递给变量节点n的信息,Znm为变量节点n传递给校验节点m的信息;

校验单元表,所述校验单元表包括多行,每行包括多个元素,每一行对应一个校验方程,每个元素包括该行校验方程的存储块的起始地址Addr、相应的偏移量Shift和该存储块对应的掩模图样Mask;

变量单元表,所述变量单元表包括多行,每行包括多个元素,每个元素包括与该元素对应的该组变量节点相关的校验似然比存储块的起始地址Addr和该存储块对应的掩模图样Mask;

初始化单元,用于将所述第二存储区中的更新的变量节点似然比Znm初始化为信道接收到的似然比信息,根据变量单元表第i行的每一个元素,将更新的校验节点似然比Lmn初始化公式为:LAddr×256+k=LLRi×256+k,k=0,1,......,255;

控制单元,包括校验节点控制单元和变量节点控制单元,

所述校验节点控制单元,用于根据LDPC码的校验矩阵的模结构,读取所述存储单元中的所述变量节点似然比中的一部分变量节点似然比信息,具体用于按行读取校验单元表和读取所述存储单元中的所述更新的变量节点似然比,对于对应于校验单元表元素中掩模图样Mask为“1”的变量节点似然比部分不参与运算,将读取的参与运算的变量节点似然比和校验单元表数据发送至所述校验节点处理单元;根据LDPC码的校验矩阵的模结构,将更新的校验节点似然比保存至该存储单元;

所述变量节点控制单元,用于根据LDPC码的校验矩阵的模结构,读取所述存储单元中的所述校验节点似然比中的一部分校验节点似然比信息;根据LDPC码的校验矩阵的模结构,将更新的变量节点似然比保存至该存储单元;

处理单元,包括校验节点处理单元和变量节点处理单元,

所述校验节点处理单元,用于根据LDPC码的校验矩阵所约束的编码比特的校验关系和所述控制单元读取的所述一部分变量节点似然比信息,计算得到所述更新的校验节点似然比,具体用于根据公式 计算得到所述更新的校验节点似然比,其中,Lmn为校验节点m传递给变量节点n的信息,N(m)\n表示与校验节点m相连的除变量节点n之外的所有变量节点的集合,上标i表示迭代次数,符号sign()表示取符号运算,min表示取最小值运算,α为归一化因子;

所述变量节点处理单元,用于根据LDPC码的校验矩阵所约束的编码比特的校验关系和所述控制单元读取的所述一部分校验节点似然比信息,计算得到所述更新的变量节点似然比,具体用于根据公式 计算得到所述更新的变量节点似然比,其中,M(n)\m表示与变量节点n相连的除校验节点m之外的所有校验节点的集合,M(n)表示与变量节点n相连的所有校验节点的集合。

2.根据权利要求1所述的译码装置,其特征在于,所述装置还包括奇偶校验单元,用于将所述处理单元计算得到的所述更新的变量节点似然比代入校验方程进行校验。

3.根据权利要求2所述的译码装置,其特征在于,所述奇偶校验单元具体用于将所述处理单元计算得到的所述更新的变量节点似然比代入校验方程,若所有校验方程均满足,则表示译码成功;若有校验方程不满足,则使所述控制单元再次执行校验节点更新控制和变量节点更新控制,使所述处理单元再次执行校验节点更新和变量节点更新,直至译码成功或达到最大迭代次数。

4.一种低密度奇偶校验码译码方法,其特征在于,所述低密度奇偶校验码是具有模结构的结构化的LDPC码,所述方法通过如权利要求1-3中任意一项所述的译码装置实施,包括:步骤i、提供一个校验单元表和一个变量单元表,所述校验单元表包括多行,每行包括多个元素,每一行对应一个校验方程,每个元素包括该行校验方程的存储块的起始地址Addr、相应的偏移量Shift和该存储块对应的掩模图样Mask;所述变量单元表包括多行,每行包括多个元素,每个元素包括与该元素对应的变量节点相关的校验似然比存储块的起始地址Addr和该存储块对应的掩模图样Mask;

在步骤i之后,所述方法包括:

步骤a、初始化存储单元,具体包括:将第二存储区中的更新的变量节点似然比Znm初始化为信道接收到的似然比信息,根据变量单元表第i行的每一个元素,将更新的校验节点似然比Lmn初始化公式为:LAddr×256+k=LLRi×256+k,k=0,1,......,255;

步骤b、根据LDPC码的校验矩阵的模结构,读取所述存储单元中的所述变量节点似然比中的一部分变量节点似然比信息,具体包括:按行读取校验单元表和读取所述存储单元中的所述更新的变量节点似然比,对于对应于校验单元表元素中掩模图样Mask为“1”的变量节点似然比部分不参与运算,将读取的参与运算的变量节点似然比和校验单元表数据发送至所述校验节点处理单元;

步骤c、根据LDPC码的校验矩阵所约束的编码比特的校验关系和所述控制单元读取的所述一部分变量节点似然比信息,计算得到所述更新的校验节点似然比,具体包括:根据公式 计算得到所述更新的校验节点似然比,其中,Lmn为校验节点m传递给变量节点n的信息,N(m)\n表示与校验节点m相连的除变量节点n之外的所有变量节点的集合,上标i表示迭代次数,符号sign()表示取符号运算,min表示取最小值运算,α为归一化因子;

步骤d、根据LDPC码的校验矩阵的模结构,将更新的校验节点似然比保存至该存储单元,其中,

所述存储单元包括第一存储区和第二存储区,所述第一存储区用于存储接收到的各码元的对数似然比LLRn,第二存储区用于存储更新的校验节点似然比Lmn和更新的变量节点似然比Znm;

步骤e、根据LDPC码的校验矩阵的模结构,读取所述存储单元中的所述校验节点似然比中的一部分校验节点似然比信息,具体包括:按行读取变量单元表和读取所述存储单元中的所述更新的校验节点似然比,对于对应于校验单元表元素中掩模图样Mask为“1”校验节点似然比部分不参与运算,将读取的参与运算的校验节点似然比和校验单元表数据发送至所述变量节点处理单元;

步骤f、根据LDPC码的校验矩阵所约束的编码比特的校验关系和所述控制单元读取的所述一部分校验节点似然比信息,计算得到所述更新的变量节点似然比;

步骤g、据LDPC码的校验矩阵的模结构,将更新的变量节点似然比保存至该存储单元,具体包括:根据公式 计算得到所述更新的变量节点似然比,其中,M(n)\m表示与变量节点n相连的除校验节点m之外的所有校验节点的集合,M(n)表示与变量节点n相连的所有校验节点的集合。

5.根据权利要求4所述的译码方法,其特征在于,所述方法还包括:

步骤h、将所述处理单元计算得到的所述更新的变量节点似然比代入校验方程进行校验。

6.根据权利要求5所述的译码方法,其特征在于,所述步骤h具体包括将所述处理单元计算得到的所述更新的变量节点似然比代入校验方程,若所有校验方程均满足,则表示译码成功;若有校验方程不满足,则再次执行步骤b至步骤h,直至译码成功或达到最大迭代次数。

说明书 :

一种低密度奇偶校验码译码装置和译码方法

技术领域

[0001] 本发明涉及数字通信系统中的前向纠错编码领域,尤其涉及一种纠错编码方式为具有模结构的结构化LDPC码的译码方法。

背景技术

[0002] Shannon在著名的“通信的数学理论”中,阐明了在有噪声信道中实现可靠传输的途径是编码。他提出了有噪声信道中信息可传输的最大速率,即信道容量;同时也推导出了信息可无错误传输所需的最小信噪比值,被称为Shannon极限。虽然Shannon的信道编码理论给出了最佳编码的极限性能,但并没有给出具体的编码方案。以此为基础,人们一直致力于寻找性能上接近Shannon极限的编码方案。
[0003] LDPC码最早由Gallager提出,是一种校验矩阵非常稀疏的线性分组码。也就是说,其校验矩阵中只有非常少量的非“0”元素(对于二进制码来说,非“0”元素即为“1”元素)。Mackay等人的进一步研究表明,LDPC码的性能在消息传递(MP)迭代译码算法下可以接近Shannon极限。
[0004] 为了解决LDPC码编码复杂度较高的问题,近年来提出了结构化的LDPC码,例如具有准循环(Quasi Circulant)结构的LDPC码。QC-LDPC码的校验矩阵由若干子矩阵构成。这些子矩阵要么是一个全零子阵,要么是一个由单位矩阵循环移位得到的循环置换矩阵(Circulant Permutation Matrix)。更一般的,非全零子阵还可以由多个循环置换矩阵构成。QC-LDPC码可以采用简单的移位寄存器的方式进行编码,同时由于其校验矩阵结构的规律性,可以大量减少校验矩阵所需的存储空间,且有利于译码过程中数据的寻址。
[0005] 为了进一步提升LDPC码的性能,具有特定度分布的非规则LDPC码被证明提供了优选的集性能。然而,受制于码长、结构化参数等具体指标的限制,结构化LDPC码参数与优选的度分布之间往往不能很好的匹配。为此,带模结构的结构化LDPC码被提出,解决了度分布的精确近似、码停止集设计等问题。
[0006] LDPC译码器通常采用专用的硬件电路来实现,通过并行的结构来提高译码吞吐量,然而其固定的结构很难满足对不同参数(码长、码率)和校验矩阵结构的LDPC码进行译码。

发明内容

[0007] 本发明的目的是提供一种低密度奇偶校验码译码装置和译码方法。
[0008] 本发明的一个方面提供了一种低密度奇偶校验码译码装置,包括:
[0009] 存储单元,用于存储初始化的变量节点似然比、更新的变量节点似然比和更新的校验节点似然比;
[0010] 控制单元,用于执行校验节点更新控制和变量节点更新控制,所述校验节点更新控制包括根据LDPC码的校验矩阵的模结构,读取所述存储单元中的所述变量节点似然比中的一部分变量节点似然比信息;和根据LDPC码的校验矩阵的模结构,将更新的校验节点似然比保存至该存储单元;所述变量节点更新控制包括根据LDPC码的校验矩阵的模结构,读取所述存储单元中的所述校验节点似然比中的一部分校验节点似然比信息;和根据LDPC码的校验矩阵的模结构,将更新的变量节点似然比保存至该存储单元;
[0011] 处理单元,用于执行校验节点更新和变量节点更新,所述校验节点更新包括根据LDPC码的校验矩阵所约束的编码比特的校验关系和所述控制单元读取的所述一部分变量节点似然比信息,计算得到所述更新的校验节点似然比;所述变量节点更新包括根据LDPC码的校验矩阵所约束的编码比特的校验关系和所述控制单元读取的所述一部分校验节点似然比信息,计算得到所述更新的变量节点似然比。
[0012] 本发明的另一个方面提供了一种低密度奇偶校验码译码方法,包括:
[0013] 步骤a、初始化存储单元;
[0014] 步骤b、根据LDPC码的校验矩阵的模结构,读取所述存储单元中的所述变量节点似然比中的一部分变量节点似然比信息;
[0015] 步骤c、根据LDPC码的校验矩阵所约束的编码比特的校验关系和所述控制单元读取的所述一部分变量节点似然比信息,计算得到所述更新的校验节点似然比;
[0016] 步骤d、根据LDPC码的校验矩阵的模结构,将更新的校验节点似然比保存至该存储单元;
[0017] 步骤e、根据LDPC码的校验矩阵的模结构,读取所述存储单元中的所述校验节点似然比中的一部分校验节点似然比信息;
[0018] 步骤f、根据LDPC码的校验矩阵所约束的编码比特的校验关系和所述控制单元读取的所述一部分校验节点似然比信息,计算得到所述更新的变量节点似然比;
[0019] 步骤g、据LDPC码的校验矩阵的模结构,将更新的变量节点似然比保存至该存储单元。
[0020] 由于本发明针对低密度奇偶校验码中存在的模结构,改进了译码控制单元,根据模结构控制对存储单元数据的选取和更新,从而实现了译码器结构化和参数化设计,达到了简化设计保证性能的效果。

附图说明

[0021] 图1是本发明一个实施例提供的译码装置的构成框图
[0022] 图2为掩模图样的示意图。
[0023] 图3是本发明一个实施例提供的译码方法的流程图。

具体实施方式

[0024] 下面结合附图对本发明的低密度奇偶校验码译码装置和译码方法的优选实施例进行详细说明。
[0025] 请参照图1,图1是本发明一个实施例提供的译码装置的构成框图。
[0026] 本实施例的译码装置10包括存储单元11、控制单元12、处理单元13和奇偶校验单元14。控制单元12包括校验节点控制单元121、变量节点控制单元122和初始化单元123。处理单元13包括校验节点处理单元131和变量节点处理单元132。
[0027] 存储单元11用于存储译码过程中所需要的和所产生的信息,例如存储初始化的变量节点似然比、更新的变量节点似然比和更新的校验节点似然比。具体而言,存储单元11包括第一存储区111和第二存储区112,该第一存储区111用于存储接收到的各码元的对数似然比LLRn;第二存储区112用于存储更新的校验节点似然比Lmn和更新的变量节点似然比Znm。存储单元11可以是SDRAM(Synchronous Dynamic Random Access Memory,同步动态随机存取存储器)、DDR(Double Data Rate SDRAM,双倍速率同步动态随机存储器)等存储器。
[0028] 控制单元12用于根据LDPC码的校验矩阵的模结构,对存储单元11进行空间分配、查找表建立、存储校验矩阵的机构、为译码过程中的数据的寻址提供索引、对迭代译码的过程进行控制等。具体而言,校验节点控制单元121用于根据LDPC码的校验矩阵的模结构,读取该存储单元11中的该变量节点似然比中的一部分变量节点似然比信息;根据LDPC码的校验矩阵的模结构,将更新的校验节点似然比保存至该存储单元11。变量节点控制单元122用于根据LDPC码的校验矩阵的模结构,读取该存储单元11中的该校验节点似然比中的一部分校验节点似然比信息;根据LDPC码的校验矩阵的模结构,将更新的变量节点似然比保存至该存储单元11。
[0029] 控制单元12可以是DSP(Digital Signal Processor,数字信号处理)、CPU(Central Processing Unit,中央处理器)等数字处理器,也可以是FPGA(Field-Programmable Gate Array,现场可编程门阵列)、CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)等可编程逻辑器件。
[0030] 处理单元13用于在控制单元12的控制下,根据LDPC码的校验矩阵所约束的编码比特的校验关系计算更新的校验节点似然比和更新的变量节点似然比。具体而言,该校验节点处理单元131用于根据LDPC码的校验矩阵所约束的编码比特的校验关系和该控制单元读取的该一部分变量节点似然比信息,计算得到该更新的校验节点似然比。该变量节点处理单元132用于根据LDPC码的校验矩阵所约束的编码比特的校验关系和该控制单元读取的该一部分校验节点似然比信息,计算得到该更新的变量节点似然比。处理单元13可以是DSP、CPU等数字处理器,也可以是FPGA、CPLD等可编程逻辑器件。
[0031] 奇偶校验单元14用于将处理单元13计算得到的该更新的变量节点似然比代入校验方程进行校验。具体而言,奇偶校验单元14具体用于将该处理单元计算得到的该更新的变量节点似然比代入校验方程,若所有校验方程均满足,则表示译码成功;若有校验方程不满足,则使该控制单元再次执行校验节点更新控制和变量节点更新控制,使该处理单元再次执行校验节点更新和变量节点更新,直至译码成功或达到最大迭代次数。
[0032] 控制单元12、处理单元13和奇偶校验单元14可以集成为同一个部件,也可以由分离的多个部件实现。
[0033] 此外,译码装置10还包括校验单元表141和变量单元表142,该校验单元表141包括多行,每行包括多个元素,每一行对应一个校验方程,每个元素包括该行校验方程的存储块的起始地址Addr、相应的偏移量Shift和该存储块对应的掩模图样Mask。该变量单元表142包括多行,每行包括多个元素,每个元素包括该组变量节点相关的校验似然比存储块的起始地址Addr和该存储块对应的掩模图样Mask。
[0034] 该校验单元表141和变量单元表142可以建立在该存储单元11当中,也可以建立在控制单元12和/或处理单元13内部存储器中,还可以建立在与该控制单元12和/或处理单元13相连接的外部存储器中,例如,外部设置的闪存。
[0035] 下面结合本发明的译码方法,介绍译码装置10详细的工作原理和工作过程。
[0036] 本实施例以一个码率为1/2的LDPC码来举例说明。该码长N=9216,校验矩阵为H。基础矩阵B的维度为18×36,扩张比K选为256。校验矩阵H的优选行重分布和列重分布为:
[0037] 行重分布为{λ7,λ8,λ9,λ10}={17/288,223/288,1/18,2/18}
[0038] 列重分布为{ρ15,ρ14,ρ5,ρ4,ρ3,ρ2}={7/64,1/576,1/9,1/36,5/18,17/36}。
[0039] 该码是一个具有模结构的结构化LDPC码,其基础矩阵B的“1”的数目为134个。其中的“0”用256×256维的全“0”矩阵Z替换,基础矩阵B中的“1”用256×256维的掩模循环置换矩阵P替换,P中“1”的行号i和列号j满足j=(i+k)mod 256,其中k为循环置换矩阵的偏移量。其中被掩模的行所有元素置“0”;
[0040] 该码可表示为:
[0041] 0:(1,239,0)(4,166,0)(5,247,0)(11,31,0)(12,217,0)(14,72,0)(18,192,0)(19,0,0)
[0042] 1:(2,251,0)(5,153,0)(11,159,0x200)(14,48,0)(15,31,0)(19,0,0)(20,0,0)[0043] 2:(5,230,0)(6,182,0)(11,91,0)(14,62,0)(16,170,0)(20,0,0)(21,0,0)[0044] 3:(2,255,0)(3,196,0)(5,171,0)(7,26,0)(10,11,0)(12,71,0)(17,51,0)(21,0,0)(22,0,0)
[0045] 4:(4,240,0)(5,66,0)(11,0,0)(14,118,0)(17,39,0)(22,0,0)(23,0,0)[0046] 5:(2,212,0)(3,115,0)(5,93,0)(8,210,0)(9,29,0)(14,249,0)(18,39,0)(23,0,0)(24,0,0)
[0047] 6:(3,60,0)(5,46,0)(11,40,0)(13,180,0)(17,192,0)(24,0,0)(25,0,0)[0048] 7:(4,1,0)(10,247,0)(11,142,0)(14,210,0)(16,192,0)(25,0,0)(26,0,0)[0049] 8:(5,66,0)(10,208,0)(11,31,0)(14,116,0)(15,20,0)(26,0,0)(27,0,0)[0050] 9:(2,47,0)(6,8,0)(10,40,0)(11,219,0)(17,148,0)(27,0,0)(28,0,0)[0051] 10:(5,248,0)(6,255,0)(11,55,0)(14,56,0)(16,201,0)(28,0,0)(29,0,0)[0052] 11:(2,231,0)(5,83,0)(7,38,0)(9,87,0)(14,245,0)(17,194,0)(29,0,0)(30,0,0)
[0053] 12:(9,249,0)(11,93,0)(13,83,0)(14,20,0)(30,0,0)(31,0,0)
[0054] 13:(5,39,0)(8,76,0)(11,225,0)(14,185,0)(15,118,0)(31,0,0)(32,0,0)[0055] 14:(5,81,0)(9,182,0)(10,248,0)(11,68,0)(14,23,0)(32,0,0)(33,0,0)[0056] 15:(1,183,0)(5,111,0)(11,230,0)(12,246,0)(14,105,0)(33,0,0)(34,0,0)[0057] 16:(5,87,0)(8,244,0)(9,183,0)(11,139,0)(14,141,0)(34,0,0)(35,0,0)[0058] 17:(5,153,0)(7,238,0)(11,80,0)(13,92,0)(14,75,0)(18,48,0)(35,0,0)[0059] 首先对该译码装置10的译码原理进行介绍。
[0060] 译码算法选择为Min-Sum算法。其算法步骤如下:
[0061] 按照公式(1)和(2)进行初始化:
[0062]
[0063]
[0064] 其中,Zn为变量节点n的信息,Znm为变量节点n传递给校验节点m的信息,LLRn为各接收码元的对数似然比(Log-Likelihood Ratio)。
[0065] 按照公式(3)进行校验节点更新:
[0066]
[0067] 其中,Lmn为校验节点m传递给变量节点n的信息,N(m)\n表示与校验节点m相连的除变量节点n之外的所有变量节点的集合,上标i表示迭代次数,符号表示取符号运算,min表示取最小值运算,α为归一化因子。
[0068] 按照公式(4)和(5)进行变量节点更新:
[0069]
[0070]
[0071] 其中,M(n)\m表示与变量节点n相连的除校验节点m之外的所有校验节点的集合,M(n)表示与变量节点n相连的所有校验节点的集合。
[0072] 上述译码过程要求建立存取器11,包括第一存储区111和第二存储区112,其中,第一存储区111用于存储各接收码元的对数似然比LLRn,共9216个数据;第二存储区112用于存储校验节点信息Lmn和变量节点信息Znm,共134×256个数据,也就是为所述134个循环置换矩阵中的每个循环置换矩阵分配一段大小为256的存储块。
[0073] 建立2个查找表,即校验单元表(CNU_Table)141和变量单元表(VNU_Table)142。其中校验单元表141共18行,每一行代表一个校验方程。一行中的每个元素是一个三元组(Addr,Shift,Mask),分别存储参与该行校验方程的存储块的起始地址、相应的偏移量和该存储块对应的掩模图样。
[0074] 变量单元表142共36行,每一行中的元素是一个二元组(Addr,Mask),分别该组变量节点相关的校验似然比存储块的起始地址和该存储块对应的掩模图样。
[0075] 例如,三元组(15,37,0x2300)代表所在存储块参与运算的参数为是:
[0076] 起始地址为15×256=3840;
[0077] 偏移量为37;
[0078] 请参照图2,图2为掩模图样的示意图。掩模图样为:定义mask(16)表示一个四位无符号十六进制数,共有16个比特,每一位代表该存储块的16个单元的调整方案。定义mask(2)表示一个十六位无符号二进制数,其数值等于mask(16)。mask(2)的某一位为“1”时,表示该位对应的16个单元全部被掩模,不参与运算。对应关系为:mask(2)的第i比特,控制存储块的第i×16单元至第i×16+15单元。例如mask(16)=0x2300时,代表该存储开的第128单元至第160单元、第192单元至第223单元被掩模,不参与运算。
[0079] 请一并参照图1和图3,图3是本发明一个实施例提供的译码方法的流程图。该译码装置10执行如下步骤:
[0080] 步骤a、初始化该存储单元11;
[0081] 在本实施例中,该初始化单元123将第二存储区112中的更新的变量节点似然比Znm初始化为信道接收到的似然比信息,根据变量单元表142第i行的每一个元素,将更新的校验节点似然比Lmn初始化公式为:LAddr×256+k=LLRi×256+k,k=0,1,…,255。
[0082] 步骤b、根据LDPC码的校验矩阵的模结构,读取所述存储单元中的所述变量节点似然比中的一部分变量节点似然比信息。
[0083] 在本实施例中,校验节点控制单元121按行读取校验单元表141和读取该第二存储区112中的该更新的变量节点似然比,对于对应于校验单元表元素中掩模图样Mask为“1”的变量节点似然比部分不参与运算,将读取的参与运算的变量节点似然比和校验单元表数据发送至该校验节点处理单元。
[0084] 步骤c、根据LDPC码的校验矩阵所约束的编码比特的校验关系和所述控制单元读取的所述一部分变量节点似然比信息,计算得到所述更新的校验节点似然比。
[0085] 在本实施例中,校验节点处理单元131根据公式计算得到所述更新的校验节点似然比,其中,Lmn为校验节点m传递给变量节点n的信息,N(m)\n表示与校验节点m相连的除变量节点n之外的所有变量节点的集合,上标i表示迭代次数,符号sign(.)表示取符号运算,min表示取最小值运算,α为归一化因子。
[0086] 步骤d、根据LDPC码的校验矩阵的模结构,将更新的校验节点似然比保存至该存储单元。
[0087] 步骤e、根据LDPC码的校验矩阵的模结构,读取所述存储单元中的所述校验节点似然比中的一部分校验节点似然比信息。
[0088] 在本实施例中,变量节点控制单元122按行读取变量单元表142和读取该第二存储区112中的该更新的校验节点似然比,对于对应于校验单元表元素中掩模图样Mask为“1”校验节点似然比部分不参与运算,将读取的参与运算的校验节点似然比和校验单元表数据发送至该变量节点处理单元。
[0089] 步骤f、根据LDPC码的校验矩阵所约束的编码比特的校验关系和所述控制单元读取的所述一部分校验节点似然比信息,计算得到所述更新的变量节点似然比。
[0090] 在本实施例中,变量节点处理单元132根据公式 计算得到该更新的变量节点似然比,其中,M(n)\m表示与变量节点n相连的除校验节点m之外的所有校验节点的集合,M(n)表示与变量节点n相连的所有校验节点的集合。
[0091] 步骤g、据LDPC码的校验矩阵的模结构,将更新的变量节点似然比保存至该存储单元。
[0092] 步骤h、将所述处理单元计算得到的所述更新的变量节点似然比代入校验方程进行校验。
[0093] 在本实施例中,奇偶校验单元14将所述处理单元13计算得到的所述更新的变量节点似然比代入校验方程,若所有校验方程均满足,则表示译码成功;若有校验方程不满足,则再次执行步骤b至步骤h,直至译码成功或达到最大迭代次数。
[0094] 由于本发明针对低密度奇偶校验码中存在的模结构,改进了译码控制单元,根据模结构控制对存储单元数据的选取和更新,从而实现了译码器结构化和参数化设计,达到了简化设计保证性能的效果。
[0095] 为了举例说明本发明的实现,描述了上述的具体实施方式。但是本发明的其他变化和修改,对于本领域技术人员是显而易见的,在本发明所公开的实质和基本原则范围内的任何修改/变化或者仿效变换都属于本发明的权利要求保护范围。