一种ldpc-cc高速译码器的制造方法

文档序号:9754068阅读:928来源:国知局
一种ldpc-cc高速译码器的制造方法
【技术领域】
[0001 ]本发明属于通信技术领域,具体为一种LDPC-CC高速译码器。
【背景技术】
[0002] 低密度奇偶校验码(Low Dens i ty Par i ty Check Codes,LDPC码),是由 R.Gallager在1962年提出的一类具有稀疏特性的线性分组码。LDPC码不仅具有逼近香农限 的优良性能,而且译码复杂度低,结构灵活,使之成为近年来信道编码领域的研究热点。很 多通信标准采用LDPC码作为前向纠错码,包括DVB-S2,IEEE802.16e,CCSDS等。
[0003] LDPC-CC码(Low Density Parity Check Convolutional Codes)作为LDPC码的一 个分支,是由Felstrom和Zigangirov在1999年提出,该码近年来逐渐得到人们的关注。
[0004] 相对地,当前很多通信标准推荐的LDPC码称为LDPC分组码(LDPC-BC),LDPC-CC具 有LDPC-BC所不具有的特性:
[0005] 1.码长可变。LDPC-CC的校验矩阵具有周期性,可以根据所需码长做出调整;而 LDPC-BC码长固定,信息比特长度不灵活。
[0006] 2.编码结构简单。其卷积特性使得编码器只需要若干延时单元与异或逻辑实现, 支持数据流的连续编码,尤其适用于流媒体传输和分组交换网络;
[0007] 3.可实现流水线式译码。LDPC-BC译码必须等前一次迭代完成后才能进行,而 LDPC-CC译码前一次迭代进行一段时间后便可进行下一次迭代,这段时间与存储深度有关。
[0008] 由于上述优点,LDPC-CC近年来逐渐得到关注。但是,相对而言LDPC-CC发展不如 LDPC-BC成熟,现有的译码算法停留于传统的BP算法,收敛速度慢。译码器大多采用寄存器 作为存储单元,其硬件资源和能量消耗大。
[0009] 图1表示码率R = b/c的LDPC-CC校验矩阵。
[0010]图1中,Hi⑴(i = 0,l,"_,Ms)为(c-b)Xc矩阵,Ms为存储深度。另外,当满足Hi(t) =Hi (t+T) (i = 0,1,…,Ms)时,则LDPC-CC具有周期性,其周期T。特别地,当T = 1时,该LDPC-CC为时不变码,否则为时变码。LDPC-CC的码字V[Q,m] = [VQ,VI,…],其中Vt = [Vt, 1,Vt, 2,…, Vt,c],?两足H[0,co]V[0,co]T = 0。
[0011] 图2表示LDPC-CC具有的流水线式译码器结构,其中V2C消息表示变量节点传递给 校验节点的消息。
[0012] LDPC-CC译码器具有流水线式结构,由I个完全相同的处理器级联而成,每个处理 器独立并行处理相邻且不重叠的cX(M s+l)的码字比特,每个处理器对应一次迭代。
[0013] 在t时刻,c个变量节点…,Vt,c]的信道消息进入处理器1,同时变量 节点 V=_[ν?-.;(:美+1),1,ν?-?Μ?+斯
[0014] 然后,每个处理器进行c_b个校验节点%-,心= 更新;对应于H[o,c0]的第t-(i_l)s]VMiD
[0015] 校验节点更新1采用偏移最小和算法(Offset Min_Sum,0MS),公式如下:
[0016]
(1)
[οοπ]其中L(U)表示校验节点j传递给变量节点i的消息,L(qij)表示变量节点i传递给 校验节点j的消息,心表示与校验节点j相连接的变量节点集合,RAi表示&集合排除变量节 点i,y为偏移因子。
[0018] 紧接着,各个处理器进行C个变量节点1Ws+1) 丨,Μ-;以,1)2 ,….,.ViK+l),c] 更新,公式如下:
[0019]
(2)
[0020] 其中,Pl表示变量节点i对应的信道消息,(^表示与变量节点i相连接的校验节点集 合,QAj表示Qi集合排除校验节点j。同时,最后一个处理器进行硬判决,公式如下:
[0021 ]
(3)
[0022] 若L(qi) 2 0,则Xi = 0,否则Xi = l,其中Xi为译码硬判决结果。
[0023] -步完整的译码过程包括数据移位,校验节点更新,变量节点更新以及硬判决;随 着信道消息的不断移入,第I个处理器不断有判决结果输出,经过I(MS+1)的初始时延后,译 码器不断地输出有效译码比特。
[0024] LDPC-CC译码器中处理器需要类似FIFO的结构来实现数据移位,目前主要有2种方 法,基于寄存器register和基于存储器RAM,但是两者都存在不足。
[0025] 以1/2码率LDPC-CC为例,其奇偶校验多项式为
[0026] (D6+D3+D°)X(D) + (D5+D2+D°)P(D) =0 (4)
[0027] 其中X(D)代表信息比特多项式,P(D)称为监督比特多项式,该码的周期为1,存储 深度为6,该码是规则(3,6) LDPC-CC码。
[0028] 图3表示LDPC-CC典型处理器存储结构,该结构一共有8条链路。从上往下依次为信 息节点信道消息存储、信息节点消息1存储,信息节点信息2存储,信息节点信息3存储;监督 节点信道消息存储、监督节点消息1存储,监督节点信息2存储,监督节点信息3存储。
[0029] 使用寄存器来实现上述存储结构,需要占用大量的硬件逻辑资源。使用存储器来 实现上述存储结构,虽然减少了硬件逻辑资源占用,但是节点消息读取地址可能存在冲突 使得译码器的吞吐量无法令人满意。
[0030] 另外,上述存储结构在每个时刻只对一个校验节点进行更新,译码器的总体吞吐 量很难满足高速传输的需求。

【发明内容】

[0031] 有鉴于此,本发明提供了一种LDPC-CC高速译码器,结合寄存器实现和存储器实现 的优点,能够有效节省硬件资源,同时达到较高的译码器吞吐量。
[0032] 为了达到上述目的,本发明的技术方案为:用低密度奇偶校验卷积码LDPC-CC译码 器结构,将其中的处理器设置为寄存器和存储器RAM相结合的存储结构;LDPC-CC译码器的 节点并行因子为P,将LDPC-CC译码器结构中链路进行折叠,每条链路相应折叠成P条支链。
[0033] 对于所有支链,按照如下查找步骤查找获得RAM存储部分,除RAM存储部分外,其余 部分存于寄存器:
[0034] 步骤1、对于每条支链,舍去其中的如下位置:第一个位置、校验节点更新所需消息 处及其前后2个位置、最后一个位置;在剩余位置中找出该条支链的最长连续部分,作为该 支链中RAM可用部分。
[0035] 步骤2、根据步骤1中得到所有支链中RAM可用部分,将所有可用部分按照其长度值 从小到大排序,计算每种长度值L^U对应可用部分的个数Cdk为长度值的个数;设p 为计数值,P的初始取值为1。
[0036] 步骤3、当CP为0时转入步骤4;若CP不为0,执行如下判断:
[0037] 获取满足如下条件的m值:CP+…+CP+m < m,且CP+'"+CP+m+1 >m;将LP+1~LP+m对应的 支链的RAM可用部分截取SLP,并将CP+1~CP+m清零;将1^ +1对应的前ηι-((:Ρ+···+(:Ρ+ω)条支链 的RAM可用部分截取为L P,并将CP+m+1更新为CP+"_+CP+m+1-m,其中n=w/i,,i为 信息量化比特,w为RAM最大数据位宽,「1表示向上取整;
[0038] 步骤4、判断p是否等于k,若是,则该查找步骤结束,否则p自增1,返回步骤3。
[0039]进一步地,LDPC-CC译码器结构包括输入缓冲模块、消息缓冲模块、数据选择器 MUX、处理器组、控制模块、校验模块、硬判决模块以及输出缓冲模块;
[0040] 其中输入缓冲模块以乒乓操作连续接收外部输入的数据帧,并与消息缓冲模块的 输出端连接至数据选择器MUX,MUX在第一轮译码中选择输入缓冲模块的输出作为处理器组 的输入,之后的其他轮次译码选择消息缓冲模块的输出作为处理器组的输入,处理器组中 包括顺次连接的多个处理器,处理器组对数据帧进行译码操作后,输出的译码结果一方面 输入至消息缓冲模块进行缓冲、另一方面输入至硬判决模块,经硬判决模块的判决后的译 码结果输入至输出缓冲模块,校验模块同时对经硬判决模块的判决后的译码结果进行校 验,并将校验结果发送至控制模块,若译码结果满足校验模块,则控制模块则发出使能信号 至输出缓冲模块的使能端以使能输出该译码结果,若译码结果不满足校验模块,则发送使 能信号至消息缓冲模块以使能下一轮译码操作。
[0041] 进一步地,该译码器的时钟周期为T,该译码器采用流水线式的时序处理,每一个 流水线的时序如下:其中2P个信道消息以及V2C消息作为处理器的输入数据,输入过程共跨 越2个时钟周期T;在这2个时钟周期中,其中的第1个时钟周期取得移位过程所需的数据,并 在第2个时钟周期完成移位操作;从第3个时钟周期开始进行校验节点更新,校验节点更新 跨越2个时钟周期;校验节点更新完成后,将更新后的数据写到其原位置的下一地址处;在 第7个时钟周期
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1