适用于准循环ldpc译码的译码器的制作方法

文档序号:7535991阅读:171来源:国知局
专利名称:适用于准循环ldpc译码的译码器的制作方法
技术领域
本发明涉及通信领域信道编码技术领域,尤其涉及一种适用于准循环LDPC译码 的译码器。
背景技术
在无线通信系统中,由于传输信道存在噪声、衰落、多径,必然会对传输数据引入 失真和信号判决错误。信道编码技术通过在信息序列中加入冗余码元,来发现、纠正传输中 发生的信号错误,从而提高系统的可靠性。低密度奇偶校验码(LDPC)码是一种能够逼近香农(aiarmon)限的性能优异的信 道编解码方法。LDPC码的标准软判决译码采用一种置信传播算法,称之为和积算法(SPA)。 和积算法使LDPC码得到最优的解码性能,但校验节点计算中的双曲余切函数算法的硬件 实现复杂度很高。最小项算法(MQ用最小值函数代替了复杂的双曲余切函数,大大降低了 解码算法复杂度,但性能有较大的损失。偏置最小项算法在MS算法的基础上,在校验节点 计算中引入偏置值补偿了 MS算法的性能损失。目前,在实际通信系统中使用的大部分LDPC码是准循环的LDPC码,而这些准循环 的LDPC码分为规则类型和非规则类型的,规则类型的LDPC码是指校验矩阵的所有的校验 节点度数相同,所有的变量节点的度数也相同,非规则类型的LDPC码则有不同的度数,这 种非规则的引入会带来LDPC码性能上的提高。针对准循环LDPC码的广泛应用,提出一种适合于准循环LDPC码中非规则和规则 类型的译码器是亟待解决的问题。

发明内容
(一)要解决的技术问题有鉴于此,本发明的主要目的在于提供一种适用于准循环LDPC码中非规则和规 则类型的译码器。( 二 )技术方案为达到上述目的,本发明提供了一种适用于准循环LDPC译码的译码器,包括控制单元根据输入的控制信号和状态信号产生针对译码器中其他功能单元的控 制信号,协调译码器的迭代译码过程;地址产生单元用来产生信道值存储单元和交互信息存储单元的读写地址及相应 的读写使能信号和片选信号;信道值存储单元用于存储解映射后的M比特量化信道信息值,若准循环码对应 的基矩阵的列数为NC0L,扩展因子为Z,则对应的信道值存储单元由NCOL组单端口 RAM组 成,每组单端口 RAM的大小为ZXM比特,根据单端口存储器实际的应用大小,可能需要的每 组单端口 RAM大小比Z XM稍大;交互信息存储单元用于存储变量节点处理单元和校验节点处理单元传递的信息,若准循环码基矩阵中非空值的个数为W,则对应的交互信息存储单元由W组双端口 RAM 组成,每组双端口 RAM的大小为ZXM比特,这里需根据实际存储器的大小需要将实际的存 储器大小稍微扩大;矩阵值存储单元用于存储基矩阵中非空值的数值大小;变量节点处理单元由NCOL个并行的变量节点处理(VNU)组成,完成变量节点的 处理;校验节点处理单元若基矩阵的行数为NR0W,则校验节点单元由NROW个校验节点 处理(CNU)单元组成,完成校验节点的处理;选择单元选择存入交互信息存储单元的信息是来自变量节点处理单元还是校验 节点处理单元;输出单元译码器的输出译码单元。上述方案中,所述控制单元是一个9状态的有限状态机,包含空闲状态、信道值 存储状态、VNU第一次计算状态、VNU第一次向CNU过渡状态、CNU计算状态、VNU计算状态、 VNU向CNU过渡状态、CNU向VNU过渡状态和输出译码状态。上述方案中,所述地址产生单元产生信道信息存储单元和交互信息存储单元的读 写地址及读写使能和片选信号,其中交互信息存储单元的读写地址采用同址写回的方法, 从交互信息存储单元取得信息,将取得的信息经过CNU和VNU计算后写回到与读时相同的 地址中。上述方案中,所述信道信息存储单元在检测到码字开始后就开始存入有效的信 道信息值,存储的原则按扩展因子为一组存入到对应的单端口 RAM中,直到将一个码字的 信道信息值存完后就开始迭代译码过程,译码迭代过程中只在变量节点处理时才从其中取值。上述方案中,所述交互信息存储单元在初始的CNU计算时需要对交互信息存储器 进行初始化的操作,在迭代运算过程中从交互信息存储器中读取信息值经过VNU或CNU计 算后采用同址写回的方法写回到交互信息存储器中。上述方案中,所述矩阵值存储单元用于存储基矩阵中的非空值数值大小,来产生 CNU计算时读取交互信息存储器的初始地址。上述方案中,所述变量节点处理单元由NCOL个并行的VNU组成,VNU采用了与变 量节点连接关系对应的加法器树及位宽调整电路组成。上述方案中,所述变量节点完成的运算表示如下变量节点处理计算从变量节点i传到校验节点j的信息,通过如下式计算^ij) = Pi+ Σ L(rfi)
r《\j其中CAj表示与变量节点i相连的除了校验节点j的其他校验节点的集合;同时 译码器在此处对变量节点i作一次硬判决,通过如下式来计算L(Qi) = Pi +Σ
V.eC,若Ζ(β_)<0,ξ =1 .否则ζ =0当达到最大迭代次数时,则结束运算,否则继续迭代
> >运算。
上述方案中,所述校验节点处理单元由NROW个并行的CNU组成,CNU采用了带偏 置最小项算法的层次化结构,该方法包括L( )=Π siS^Liqvj)]·max{[min(|L(^.,.)|) — β],0}
i'eVjM1 J其中表示与校验节点j相连的除了变量节点i的其他校验节点的集合,β表 示偏置值;这里,将其表达式进行变形为可采用层次化硬件设计的表达式,如下L(x 十 二min{x|,\y\} + β
‘3|Λ + 小 32,|x-_y|>32
β =|x + > 32,|x-^| < 32
0其他其中χ和y表示输入校验节点处理单元的两个数值,采用位宽为6比特的有符号 数,β的大小可根据仿真得到,得到的士3是位宽6比特时性能最好的选择;基于这种两值比较的层次化扩展可以得到任意度数的偶数个输入的CNU,如果校 验节点度数为奇数,则以6比特表示的最大数值31作为一个输入来构造成偶数个的输入的 CNU。(三)有益效果从上述技术方案可以看出,本发明具有以下有益效果1、本发明提供的适用于准循环LDPC译码的译码器,交互信息存储单元与基矩阵 非空值一一对应原则,最大程度减少了存储器的开销。2、本发明提供的适用于准循环LDPC译码的译码器,偏置最小项算法来降低复杂 度,并选出合适的偏置量来提高译码器性能,同时可利用层次化的结构来构造适合任何准 循环LDPC译码器,包含规则和非规则的。


下面结合附图和实施例对本发明进一步说明
图1是本发明提供的适用于准循环LDPC译码的译码器的结构示意图2是译码器控制单元的有限状态机的状态转换图3是交互信息存储器的同址写回方法说明图4是VNU的结构图5是4输入的VNU电路结构图6是不同偏移值下的误码率曲线图7是2输入的CNU结构图8是4输入的CNU结构图9是8输入的CNU结构图。
具体实施例方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照
6附图,对本发明进一步详细说明。本实例以IEEE 802. Iln的LDPC码为例。IEEE 802. Iln中的码率为1/2码长为 1944的LDPC码的基础矩阵如下
24 - 61 - 60- 一 5--丨6 1 — - -- — - -- -- 0其矩阵是非规则的LDPC码,码长为1944,扩展因子是81,基础矩阵中是“-”的地 方表示81X81的全零矩阵,是“0”的地方表示的是81X81单位阵,其他地方的有数值值表 示了对81X81的单位阵的循环右移得到的矩阵。本发明提供的适用于准循环LDPC译码的译码器,使用了交互信息存储器最小化 设计策略,交互信息存储单元与基矩阵非空值一一对应原则,最大程度减少了存储器的开 销。校验节点处理采用了偏置最小项算法来降低复杂度,并选出合适的偏置量来提高译码 器性能,同时可利用层次化的结构来构造适合任何准循环LDPC译码器,包含规则和非规则 的。本发明提供的适用于准循环LDPC译码的译码器如图1所示包括控制单元、地址 产生单元、信道值存储单元、交互信息存储单元、矩阵值存储单元、变量节点处理单元、校验 节点处理单元、选择单元和输出单元。其中,控制单元是根据输入的控制信号和状态信号产生译码器其余模块的控制信 号,协调译码器的迭代译码过程,其状态的转换图如图2所示,其中idle 译码器空闲状态,译码器不工作,idle状态的译码器检测“码字开始标志” 信号,如检测到为1时则表示码字开始了,进入cram状态;cram:信道值的存储状态,根据“输入有效”信号控制地址产生单元产生信道值存 储单元的片选信号、读写使能和地址信号,当信道值存储单元完成一个码字的存储后,信道 值存储单元反馈给控制单元一个“信道值存完”信号,这时开始迭代译码过程,进入vnu_ first状态;vnu_first 交互信息存储器初始化状态,由于交互信息存储器中的信息需要出 示化,在此状态时变量节点从交互信息存储器中读取的数值应为0,与从信道值信息存储 单元中读取的相应信道值进行变量节点处理,同时按照同址写回的方法把变量节点处理得 到的信息写回到交互信息存储器中完成了交互信息存储器的初始化过程,然后进入vnu_ f irst2cnu 状态;vnu_first2cnu 由于变量节点处理单元的流水线的级数决定的延时时钟数,这里 设计的变量节点处理单元的级数为3级,所以此状态需要3个时钟,主要等待变量节点处理 的数据完全写回交互信息存储器,然后进入cnu状态;cnu 主要是校验节点处理过程,从交互信息存储器中取得数据送入到校验节点处理单元进行处理得到的信息在按照同址写回的方法写入到交互信息存储器中,然后进入 cnu2vnu ^^ ;CnU2vnU:由于校验节点处理单元的流水线的级数决定的延时时钟数,这里设计的 校验节点处理单元的级数为3级,所以此状态需要3个时钟,主要等待校验节点处理的数据 完全写回交互信息存储器,然后进入vnu状态;vnu 变量节点处理过程,需要利用信道值存储单元和交互信息中的数据一起来完 成变量节点处理过程,而Vnu_firSt中进入变量节点处理单元的是信道值存储单元中的数 据和全零,即用全零替代了交互信息存储器中的数据,其余过程与Vrm_firSt相同,在此过 程中检测迭代译码的次数是否达到了最大的迭代译码次数,若达到了,则进入译码输出状 态out,否则继续如图2中的循环的迭代过程;out 译码输出状态,通过一个缓冲器来完成译码器的译码比特串行输出,缓冲器 采用寄存器来实现。地址产生单元用来产生信道值存储单元和交互信息存储单元的读写地址及相应 的读写使能信号和片选信号,在信道值存储的状态时,需要产生信道值存储单元的读写地 址、片选信号和读写使能信号;在变量节点处理时,需要产生信道值存储单元的读写地址、 片选信号和读写使能信号,还需要产生交互信息存储单元的读写地址、片选信号和读写使 能信号;在校验节点处理时,需要产生交互信息存储单元的读写地址、片选信号和读写使能 信号;信道值存储单元用于存储解映射后的M比特宽量化信道信息值;交互信息存储单元用于存储变量节点处理单元和校验节点处理单元传递的信息, 信息的读写方式是同址写回的方法,其与地址产生单元的连接图如图3所示,地址产生单 元产生交互信息存储单元的读地址后,直接利用几级寄存器串联的方法来缓存读地址得到 写地址,这种同址写回的方法简单,但是需要较多的寄存器;矩阵值存储单元用于存储基矩阵中非空值数值大小,在地址产生单元中产生交互 信息存储单元的读地址时需要;变量节点处理单元完成变量节点的处理,根据码长为1944,码率为1/2的矩阵的 变量节点的度数如下度数为2 (12个)、度数为3 (8个)、度数为4 (1个)、度数为11 (3个)。 这样,需要四种大小的VNU,即2输入VNU、3输入VNU、4输入VNU、11输入VNU0 VNU的结构 图如图4,是由一个加法器树和减法及位宽调整模块组成的。对于不同度数的VNU都是在其 基础上对其进行扩展得到的。图5是4输入的VNU的电路结构图,是在图4的基础上进行 扩展得到,其他任何度数的VNU都可参照图4和图5来进行构造得到。校验节点处理单元完成校验节点的处理,通过对带偏置的最小项的等价变换,可 将带偏置最小项的校验节点处理表示的任何数目输入的CNU转换为2输入CNU的组合,2输 入的CNU处理等价于如下式,
权利要求
1.一种适用于准循环LDPC译码的译码器,其特征在于,包括控制单元根据输入的控制信号和状态信号产生针对译码器中其他功能单元的控制信 号,协调译码器的迭代译码过程;地址产生单元用来产生信道值存储单元和交互信息存储单元的读写地址及相应的读 写使能信号和片选信号;信道值存储单元用于存储解映射后的M比特量化信道信息值,若准循环码对应的基 矩阵的列数为NC0L,扩展因子为Z,则对应的信道值存储单元由NCOL组单端口 RAM组成,每 组单端口 RAM的大小为ZXM比特,根据单端口存储器实际的应用大小,可能需要的每组单 端口 RAM大小比ZXM稍大;交互信息存储单元用于存储变量节点处理单元和校验节点处理单元传递的信息,若 准循环码基矩阵中非空值的个数为W,则对应的交互信息存储单元由W组双端口 RAM组成, 每组双端口 RAM的大小为ZXM比特,这里需根据实际存储器的大小需要将实际的存储器大 小稍微扩大;矩阵值存储单元用于存储基矩阵中非空值的数值大小;变量节点处理单元由NCOL个并行的变量节点处理(VNU)组成,完成变量节点的处理;校验节点处理单元若基矩阵的行数为NR0W,则校验节点单元由NROW个校验节点处理 (CNU)单元组成,完成校验节点的处理;选择单元选择存入交互信息存储单元的信息是来自变量节点处理单元还是校验节点 处理单元;输出单元译码器的输出译码单元。
2.根据权利要求1所述的适用于准循环LDPC译码的译码器,其特征在于,所述控制单 元是一个9状态的有限状态机,包含空闲状态、信道值存储状态、VNU第一次计算状态、VNU 第一次向CNU过渡状态、CNU计算状态、VNU计算状态、VNU向CNU过渡状态、CNU向VNU过 渡状态和输出译码状态。
3.根据权利要求1所述的适用于准循环LDPC译码的译码器,其特征在于,所述地址产 生单元产生信道信息存储单元和交互信息存储单元的读写地址及读写使能和片选信号,其 中交互信息存储单元的读写地址采用同址写回的方法,从交互信息存储单元取得信息,将 取得的信息经过CNU和VNU计算后写回到与读时相同的地址中。
4.根据权利要求1所述的适用于准循环LDPC译码的译码器,其特征在于,所述信道信 息存储单元在检测到码字开始后就开始存入有效的信道信息值,存储的原则按扩展因子为 一组存入到对应的单端口 RAM中,直到将一个码字的信道信息值存完后就开始迭代译码过 程,译码迭代过程中只在变量节点处理时才从其中取值。
5.根据权利要求1所述的适用于准循环LDPC译码的译码器,其特征在于,所述交互信 息存储单元在初始的CNU计算时需要对交互信息存储器进行初始化的操作,在迭代运算过 程中从交互信息存储器中读取信息值经过VNU或CNU计算后采用同址写回的方法写回到交 互信息存储器中。
6.根据权利要求1所述的适用于准循环LDPC译码的译码器,其特征在于,所述矩阵值 存储单元用于存储基矩阵中的非空值数值大小,来产生CNU计算时读取交互信息存储器的初始地址。
7.根据权利要求1所述的适用于准循环LDPC译码的译码器,其特征在于,所述变量节 点处理单元由NCOL个并行的VNU组成,VNU采用了与变量节点连接关系对应的加法器树及 位宽调整电路组成。
8.根据权利要求7所述的适用于准循环LDPC译码的译码器,其特征在于,所述变量节 点完成的运算表示如下变量节点处理计算从变量节点i传到校验节点j的信息,通过如下式计算L(qy) = Pi + Σ L(rri)其中Ci\j表示与变量节点i相连的除了校验节点j的其他校验节点的集合;同时译码 器在此处对变量节点i作一次硬判决,通过如下式来计算
9.根据权利要求1所述的适用于准循环LDPC译码的译码器,其特征在于,所述校验节 点处理单元由NROW个并行的CNU组成,CNU采用了带偏置最小项算法的层次化结构,该方 法包括
全文摘要
本发明公开了一种适用于准循环LDPC译码的译码器,包含控制单元、地址产生单元、信道值存储单元、交互信息存储单元、矩阵值存储单元、变量节点处理单元、校验节点处理单元、选择单元和输出单元。控制单元根据输入的状态和参数产生合适的控制信号,来协调译码器各个模块的迭代译码处理。本发明提供的译码器采用了交互信息存储单元的最小化设计策略,交互信息存储单元与基矩阵非空值一一对应原则,最大程度减少了存储器的开销。校验节点处理单元采用了一种偏置最小项算法降低实现复杂度,通过合适的偏置量来提高译码性能,同时可利用层次化的方法来构造出任何度数的校验节点处理单元,适用于规则和非规则的LDPC码。
文档编号H03M13/11GK102064835SQ20091023783
公开日2011年5月18日 申请日期2009年11月11日 优先权日2009年11月11日
发明者吴斌, 周玉梅, 张振东, 朱勇旭 申请人:中国科学院微电子研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1