CN105515588B - 一种ldpc‑cc高速译码器 - Google Patents
一种ldpc‑cc高速译码器 Download PDFInfo
- Publication number
- CN105515588B CN105515588B CN201510416427.4A CN201510416427A CN105515588B CN 105515588 B CN105515588 B CN 105515588B CN 201510416427 A CN201510416427 A CN 201510416427A CN 105515588 B CN105515588 B CN 105515588B
- Authority
- CN
- China
- Prior art keywords
- ram
- ldpc
- clock cycle
- module
- processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Error Detection And Correction (AREA)
Abstract
本发明公开了一种LDPC‑CC高速译码器,采用低密度奇偶校验卷积码LDPC‑CC译码器结构,将其中的处理器设置为寄存器和存储器RAM相结合的存储结构;LDPC‑CC译码器的节点并行因子为ρ,将LDPC‑CC译码器结构中链路进行折叠,每条链路相应折叠成ρ条支链;对于所有支链,按照一定的查找规则查找获得RAM存储部分,除RAM存储部分外,其余部分存于寄存器;本发明采用折叠技术,通过合理划分寄存器和存储器资源使用,尽最大可能合理利用存储器资源。本发明同时提出了一种译码时序,考虑双端口RAM特性,即能够在同一时钟周期下同时进行读写操作,将2个处理器分时复用一套RAM,通过将2个处理器的输入错开一个时钟周期,可以使得RAM资源减少一半。
Description
技术领域
本发明属于通信技术领域,具体为一种LDPC-CC高速译码器。
背景技术
低密度奇偶校验码(Low Density Parity Check Codes,LDPC码),是由R.Gallager在1962年提出的一类具有稀疏特性的线性分组码。LDPC码不仅具有逼近香农限的优良性能,而且译码复杂度低,结构灵活,使之成为近年来信道编码领域的研究热点。很多通信标准采用LDPC码作为前向纠错码,包括DVB-S2,IEEE802.16e,CCSDS等。
LDPC-CC码(Low Density Parity Check Convolutional Codes)作为LDPC码的一个分支,是由Felstrom和Zigangirov在1999年提出,该码近年来逐渐得到人们的关注。
相对地,当前很多通信标准推荐的LDPC码称为LDPC分组码(LDPC-BC),LDPC-CC具有LDPC-BC所不具有的特性:
1.码长可变。LDPC-CC的校验矩阵具有周期性,可以根据所需码长做出调整;而LDPC-BC码长固定,信息比特长度不灵活。
2.编码结构简单。其卷积特性使得编码器只需要若干延时单元与异或逻辑实现,支持数据流的连续编码,尤其适用于流媒体传输和分组交换网络;
3.可实现流水线式译码。LDPC-BC译码必须等前一次迭代完成后才能进行,而LDPC-CC译码前一次迭代进行一段时间后便可进行下一次迭代,这段时间与存储深度有关。
由于上述优点,LDPC-CC近年来逐渐得到关注。但是,相对而言LDPC-CC发展不如LDPC-BC成熟,现有的译码算法停留于传统的BP算法,收敛速度慢。译码器大多采用寄存器作为存储单元,其硬件资源和能量消耗大。
图1表示码率R=b/c的LDPC-CC校验矩阵。
图1中,Hi(t)(i=0,1,…,Ms)为(c-b)×c矩阵,Ms为存储深度。另外,当满足Hi(t)=Hi(t+T)(i=0,1,…,Ms)时,则LDPC-CC具有周期性,其周期T。特别地,当T=1时,该LDPC-CC为时不变码,否则为时变码。LDPC-CC的码字v[0,∞]=[v0,v1,…],其中vt=[vt,1,vt,2,…,vt,c],满足H[0,∞]v[0,∞] T=0。
图2表示LDPC-CC具有的流水线式译码器结构,其中V2C消息表示变量节点传递给校验节点的消息。
LDPC-CC译码器具有流水线式结构,由I个完全相同的处理器级联而成,每个处理器独立并行处理相邻且不重叠的c×(Ms+1)的码字比特,每个处理器对应一次迭代。
在t时刻,c个变量节点vt=[vt,1,vt,2,…,vt,c]的信道消息进入处理器1,同时变量节点对应的消息从处理器i移到处理器i+1。
然后,每个处理器进行c-b个校验节点更新,对应于H[0,∞]的第
校验节点更新采用偏移最小和算法(Offset Min-Sum,OMS),公式如下:
其中L(rji)表示校验节点j传递给变量节点i的消息,L(qij)表示变量节点i传递给校验节点j的消息,Rj表示与校验节点j相连接的变量节点集合,Rj\i表示Rj集合排除变量节点i,μ为偏移因子。
紧接着,各个处理器进行c个变量节点更新,公式如下:
其中,pi表示变量节点i对应的信道消息,Qi表示与变量节点i相连接的校验节点集合,Qi\j表示Qi集合排除校验节点j。同时,最后一个处理器进行硬判决,公式如下:
若L(qi)≥0,则xi=0,否则xi=1,其中xi为译码硬判决结果。
一步完整的译码过程包括数据移位,校验节点更新,变量节点更新以及硬判决;随着信道消息的不断移入,第I个处理器不断有判决结果输出,经过I(Ms+1)的初始时延后,译码器不断地输出有效译码比特。
LDPC-CC译码器中处理器需要类似FIFO的结构来实现数据移位,目前主要有2种方法,基于寄存器register和基于存储器RAM,但是两者都存在不足。
以1/2码率LDPC-CC为例,其奇偶校验多项式为
(D6+D3+D0)X(D)+(D5+D2+D0)P(D)=0 (4)
其中X(D)代表信息比特多项式,P(D)称为监督比特多项式,该码的周期为1,存储深度为6,该码是规则(3,6)LDPC-CC码。
图3表示LDPC-CC典型处理器存储结构,该结构一共有8条链路。从上往下依次为信息节点信道消息存储、信息节点消息1存储,信息节点信息2存储,信息节点信息3存储;监督节点信道消息存储、监督节点消息1存储,监督节点信息2存储,监督节点信息3存储。
使用寄存器来实现上述存储结构,需要占用大量的硬件逻辑资源。使用存储器来实现上述存储结构,虽然减少了硬件逻辑资源占用,但是节点消息读取地址可能存在冲突使得译码器的吞吐量无法令人满意。
另外,上述存储结构在每个时刻只对一个校验节点进行更新,译码器的总体吞吐量很难满足高速传输的需求。
发明内容
有鉴于此,本发明提供了一种LDPC-CC高速译码器,结合寄存器实现和存储器实现的优点,能够有效节省硬件资源,同时达到较高的译码器吞吐量。
为了达到上述目的,本发明的技术方案为:用低密度奇偶校验卷积码LDPC-CC译码器结构,将其中的处理器设置为寄存器和存储器RAM相结合的存储结构;LDPC-CC译码器的节点并行因子为ρ,将LDPC-CC译码器结构中链路进行折叠,每条链路相应折叠成ρ条支链。
对于所有支链,按照如下查找步骤查找获得RAM存储部分,除RAM存储部分外,其余部分存于寄存器:
步骤1、对于每条支链,舍去其中的如下位置:第一个位置、校验节点更新所需消息处及其前后2个位置、最后一个位置;在剩余位置中找出该条支链的最长连续部分,作为该支链中RAM可用部分。
步骤2、根据步骤1中得到所有支链中RAM可用部分,将所有可用部分按照其长度值从小到大排序,计算每种长度值L1~Lk对应可用部分的个数C1~Ck,k为长度值的个数;设p为计数值,p的初始取值为1。
步骤3、当Cp为0时转入步骤4;若Cp不为0,执行如下判断:
获取满足如下条件的m值:Cp+…+Cp+m≤n1,且Cp+…+Cp+m+1>n1;将Lp+1~Lp+m对应的支链的RAM可用部分截取为Lp,并将Cp+1~Cp+m清零;将Lp+m+1对应的前n1-(Cp+…+Cp+m)条支链的RAM可用部分截取为Lp,并将Cp+m+1更新为Cp+…+Cp+m+1-n1,其中n=w/i,i为信息量化比特,w为RAM最大数据位宽,表示向上取整;
步骤4、判断p是否等于k,若是,则该查找步骤结束,否则p自增1,返回步骤3。
进一步地,LDPC-CC译码器结构包括输入缓冲模块、消息缓冲模块、数据选择器MUX、处理器组、控制模块、校验模块、硬判决模块以及输出缓冲模块;
其中输入缓冲模块以乒乓操作连续接收外部输入的数据帧,并与消息缓冲模块的输出端连接至数据选择器MUX,MUX在第一轮译码中选择输入缓冲模块的输出作为处理器组的输入,之后的其他轮次译码选择消息缓冲模块的输出作为处理器组的输入,处理器组中包括顺次连接的多个处理器,处理器组对数据帧进行译码操作后,输出的译码结果一方面输入至消息缓冲模块进行缓冲、另一方面输入至硬判决模块,经硬判决模块的判决后的译码结果输入至输出缓冲模块,校验模块同时对经硬判决模块的判决后的译码结果进行校验,并将校验结果发送至控制模块,若译码结果满足校验模块,则控制模块则发出使能信号至输出缓冲模块的使能端以使能输出该译码结果,若译码结果不满足校验模块,则发送使能信号至消息缓冲模块以使能下一轮译码操作。
进一步地,该译码器的时钟周期为T,该译码器采用流水线式的时序处理,每一个流水线的时序如下:其中2ρ个信道消息以及V2C消息作为处理器的输入数据,输入过程共跨越2个时钟周期T;在这2个时钟周期中,其中的第1个时钟周期取得移位过程所需的数据,并在第2个时钟周期完成移位操作;从第3个时钟周期开始进行校验节点更新,校验节点更新跨越2个时钟周期;校验节点更新完成后,将更新后的数据写到其原位置的下一地址处;在第7个时钟周期进行变量节点更新,该变量节点更新跨越2个时钟周期;在第9个时钟周期进行当前译码输出,输出跨越2个时钟周期;当前译码输出开始后延时一个时钟周期作为下一处理器的输入。
有益效果:
1、本发明采用折叠技术,通过合理划分寄存器和存储器资源使用,使得译码器占用的硬件逻辑资源显著减少,同时又尽最大可能合理利用存储器资源。
2、本发明提出一种译码时序,考虑双端口RAM特性,即能够在同一时钟周期下同时进行读写操作,将2个处理器分时复用一套RAM,通过将2个处理器的输入错开一个时钟周期,可以使得RAM资源减少一半。
附图说明
图1—码率R=b/c的LDPC-CC校验矩阵;
图2—LDPC-CC流水线式译码器结构;
图3—LDPC-CC典型处理器存储结构;
图4—使用折叠技术后,LDPC-CC处理器存储结构;
图5—LDPC-CC处理器译码时序;
图6—LDPC-CC译码器结构图。
具体实施方式
下面结合附图并举实施例,对本发明进行详细描述。
实施例1、
假设节点并行因子为ρ,则表示在同一时刻进行ρ个校验节点更新,根据移位过程可知,此时每个时刻每条链路应该往后移动ρ个位置,为此我们将链路进行折叠,折叠后如图4所示。此时每条链路相应折叠成ρ条支链,折叠后的支链每个时刻只需后移1个位置。折叠后支链分布情况可通过以下方法确定:
假设采用并行因子3,则在同一时刻进行3个校验节点更新,此时对应奇偶校验多项式如下:
D为移位延时。
并行因子为ρ
令X=D3,则可重新化为
其中(Dα,Xβ)(α<ρ)表示在第α支链,第β时刻。为利于描述,我们将图4的支链名称重新命名,原来的第α支链更改为第ρ-α支链。
观察图4可知,在每条支链中,有一部分连续空间,这些空间只是做简单的移位操作,此时可以使用存储器RAM来模拟移位过程,减少硬件逻辑资源。
对于所有支链,按照如下查找步骤查找获得RAM存储部分,除RAM存储部分外,其余部分存于寄存器:
步骤1、对于每条支链,舍去其中的如下位置:第一个位置、校验节点更新所需消息处及其前后2个位置、最后一个位置;在剩余位置中找出该条支链的最长连续部分,作为该支链中RAM可用部分;
步骤2、将步骤1中得到所有支链中RAM可用部分,将所有可用部分按照其长度值从小到大排序,计算每种长度值L1~Lk对应可用部分的个数C1~Ck,k为长度值的个数;以p为计数值,p的初始取值为1,;
步骤3、当Cp为0时转入步骤4;若Cp不为0,执行如下判断:
获取满足如下条件的m值:Cp+…+Cp+m≤n1,且Cp+…+Cp+m+1>n1;将Lp+1~Lp+m对应的支链的RAM可用部分截取为Lp,并将Cp+1~Cp+m清零;将Lp+m+1对应的前n1-(Cp+…+Cp+m)条支链的RAM可用部分截取为Lp,并将Cp+m+1更新为Cp+…+Cp+m+1-n1,其中n=w/i,i为信息量化比特,w为RAM最大数据位宽,表示向上取整;
步骤4、判断p是否等于k,若是,则该查找步骤结束,否则p自增1,返回步骤3。
实施例2、在实施例1给出的译码器的基础上,根据译码流程知,节点更新所需消息在同一时刻取得,根据CNU更新公式(1)知,该单元关键在于求得|L(qi'j)|-μ最小值和次最小值,该过程逻辑级数大,延时长,是处理器的关键路径。如果CNU更新在一个时钟周期内完成,则最大时钟频率受制于关键路径无法提高。
本实施例提出一种新的译码器处理时序,该方法将节点更新单元设置为多周期路径,在不显著影响译码器吞吐量的前提下,重新安排时序,使得2个处理器可以分时复用一套RAM,使得RAM资源减少一半。
图5表示处理器译码时序。在图5中,SHIFT表示移位;RE_WR表示将CNU更新的数据重新写回,此时由于中间跨了一个移位过程,因此写入的是原位置的下一地址;RD表示RAM读取过程,WR表示RAM写入过程;INPUT表示处理器输入;OUT表示处理器输出。
在图5中,每个时钟周期下RAM只进行读或写操作。考虑双端口RAM特性,即能够在同一时钟周期下同时进行读写操作,将2个处理器分时复用一套RAM,通过将2个处理器的输入错开一个时钟周期,可以使得RAM资源减少一半。此时,对应处理器译码时序如图5所示。
时序处理方法如下:
Step1、2ρ个信道消息以及V2C消息作为处理器的输入数据,输入过程共跨越2个时钟周期;在这2个时钟周期中,其中的第1个时钟周期取得移位过程所需的数据,并在第2个时钟周期完成移位操作;
Step2、在第3个时钟周期进行校验节点更新单元CNU更新,校验节点更新单元CNU更新跨越2个时钟周期;CNU更新完成后,需要将更新后的数据写到其原位置的下一地址处;
Step3、在第7个时钟周期进行变量节点更新单元VNU更新;
Step4、在第9个时钟周期进行当前译码输出;当前译码输出作为下一处理器的输入,在第9个时钟周期进行下一处理器的输入。
实施例3、本实施例中所采用的译码结构为LDPC-CC高速译码器结构,如图6所示,其中CLK_DATA表示外部数据输入时钟和输出时钟,CLK_DEC表示译码时钟。译码器包括输入缓冲模块、消息缓冲模块、处理器模块、校验模块、控制模块和输出模块。
输入缓冲模块以乒乓操作连续接收外部输入的数据帧。
消息缓冲模块用于存储最后一个处理器输出的信道消息或者变量节点传递给校验节点的消息。
校验模块判断译码得到的码字是否正确,控制译码是否终止。
控制模块控制各个模块之间的信号传递。
输出模块输出译码的最终判决比特。
处理器模块,用于译码过程中的各种运算。该译码器将几个处理器合成一组,每组迭代完成之后,才进行下一组迭代。处理器组成员个数越多,译码器的吞吐量越大,同时占用的资源也越多。
该译码器的工作流程为:输入缓冲模块与消息缓冲模块的输出端连接至数据选择器MUX,MUX在第一轮译码中选择输入缓冲模块的输出作为处理器组的输入,之后的其他轮次译码选择消息缓冲模块的输出作为处理器组的输入。处理器组中包括顺次连接的多个处理器,处理器组对数据帧进行译码操作后,输出的译码结果一方面输入至消息缓冲模块进行缓冲、另一方面输入至硬判决模块,经硬判决模块判决后的译码结果输入至输出缓冲模块,校验模块同时对经硬判决模块的判决后的译码结果进行校验,并将校验结果发送至控制模块,若译码结果满足校验模块,则控制模块则发出使能信号至输出缓冲模块的使能端以使能输出该译码结果,若译码结果不满足校验模块,则发送使能信号至消息缓冲模块以使能下一轮译码操作。
实施例4、本实施例以IEEE 1901标准推荐的1/2码率LDPC-CC为实例,其奇偶校验多项式如下:
其中,k=tmod3,该码是规则(3,6)码,其周期T=3,存储深度Ms=215。实施中,信息量化比特i=6,并行因子ρ=6,RAM最大数据位宽w=36。
步骤1:确定处理器的内部存储结构
将存储结构分为8个部分,分别对应信息节点信道消息存储、信息节点消息1存储,信息节点信息2存储,信息节点信息3存储;监督节点信道消息存储、监督节点消息1存储,监督节点信息2存储,监督节点信息3存储。每个部分分成ρ=6条支链,共48条支链。
并行因子ρ=6时对应奇偶校验多项式为:
D5(D214+D185+D0)X(D)+D5(D215+D145+D0)P(D)=0
D4(D160+D62+D0)X(D)+D4(D206+D127+D0)P(D)=0
D3(D196+D143+D0)X(D)+D3(D211+D119+D0)P(D)=0
D2(D214+D185+D0)X(D)+D2(D215+D145+D0)P(D)=0
D1(D160+D62+D0)X(D)+D1(D206+D127+D0)P(D)=0
D0(D196+D143+D0)X(D)+D0(D211+D119+D0)P(D)=0
令X=D6,则可重新化为
(X36D3+X31D4+D5)X(D)+(X36D4+X25D0+D5)P(D)=0
(X27D2+X11D0+D4)X(D)+(X35D0+X21D5+D4)P(D)=0
(X33D1+X24D2+D3)X(D)+(X35D4+X20D2+D3)P(D)=0
(X36D0+X31D1+D2)X(D)+(X36D1+X24D3+D2)P(D)=0
(X26D5+X10D3+D1)X(D)+(X34D3+X21D2+D1)P(D)=0
(X32D4+X23D5+D0)X(D)+(X35D1+X19D5+D0)P(D)=0
其中(Dα,Xβ)(α<ρ)表示在第ρ-α支链,第β时刻,所在部分可由H矩阵得知。
支链长度其中表示向上取整。
确定所有支链可用RAM实现长度,结果如下:
统计长度分布情况:
长度 | 17 | 18 | 19 | 21 | 22 | 23 | 24 | 25 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 |
个数 | 1 | 1 | 2 | 1 | 2 | 1 | 2 | 2 | 2 | 1 | 1 | 1 | 3 | 4 | 12 | 12 |
对这些长度进行调整,调整后长度分布情况如下:
长度 | 17 | 22 | 29 | 33 | 35 | 36 |
个数 | 6 | 6 | 6 | 6 | 12 | 12 |
通过调整后,需要RAM的个数为8个。
所有支链可用RAM实现长度确定为:
使用此方法后,可以节省的6位寄存器个数大约为(17*6+22*6+29*6+33*6+35*12+36*12)=1458,而如果全部采用寄存器实现,需要的6位寄存器个数为48*38=1824,节省大约1458/1824=79.93%的逻辑资源。
如图6为本发明采用的高速LDPC-CC译码器结构框图,包括如下步骤:
步骤(一)、输入缓冲模块以乒乓操作连续接收外部输入的数据帧,当一帧数据接收完毕后,产生译码开始信号。处理器1读取输入缓冲模块,开始进行译码。
步骤(二)、本译码器的译码过程采用流水线式的时序处理,每一个流水线的时序如下:首先,2ρ个(ρ个信息节点,ρ个监督节点)信道消息以及V2C消息进入处理器,间隔2个时钟周期。在这2个时钟周期中,其中的第1个时钟周期取得移位过程所需的数据,并在第2个时钟周期完成移位操作;移位过程包括RAM到寄存器,寄存器到RAM,寄存器到寄存器,RAM内部这4个过程。
然后,从第3个时钟周期开始进行CNU更新,CNU更新跨越2个时钟周期;CNU更新完成后,需要将更新后的数据重新写回到原位置中,此时由于CNU跨越一个SHIFT过程,故应该将更新后的数据写到原位置的下一地址。
最后,在第7个时钟周期进行VNU更新,VNU更新与CNU更新间隔2个时钟周期,且VNU跨越2个时钟周期。
在第9个时钟周期进行当前译码输出,输出跨越2个时钟周期;当前译码输出开始后延时一个时钟周期作为下一处理器的输入。
步骤(三)、消息缓冲模块接收最后一个处理器变量节点更新后的消息;校验模块对最后一个处理器输出的硬判决结果进行校验,如果满足校验模块,则输出缓冲模块使能有效,译码终止。
步骤(四)、如果不满足校验模块,则处理器1读取消息缓冲模块的数据进行下一轮译码,跳到(二)步骤。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (3)
1.一种LDPC-CC高速译码器,采用低密度奇偶校验卷积码LDPC-CC译码器结构,其特征在于,将其中的处理器设置为寄存器和存储器RAM相结合的存储结构;所述LDPC-CC译码器结构的节点并行因子为ρ,将LDPC-CC译码器结构中链路进行折叠,每条链路相应折叠成ρ条支链;
对于所有支链,按照如下查找步骤查找获得RAM存储部分,除所述RAM存储部分外,其余部分存于寄存器:
步骤1、对于每条支链,舍去其中的如下位置:第一个位置、校验节点更新所需消息处及其前后2个位置、最后一个位置;在剩余位置中找出该条支链的最长连续部分,作为该支链中RAM可用部分;
步骤2、根据步骤1得到所有支链中RAM可用部分,将所有可用部分按照其长度值从小到大排序,计算每种长度值L1~Lk对应可用部分的个数C1~Ck,k为长度值的个数;设p为计数值,p的初始取值为1;
步骤3、当Cp为0时转入步骤4;若Cp不为0,执行如下判断:
获取满足如下条件的m值:Cp+…+Cp+m≤n1,且Cp+…+Cp+m+1>n1;将Lp+1~Lp+m对应的支链的RAM可用部分截取为Lp,并将Cp+1~Cp+m清零;将Lp+m+1对应的前n1-(Cp+…+Cp+m)条支链的RAM可用部分截取为Lp,并将Cp+m+1更新为Cp+…+Cp+m+1-n1,其中n=w/i,i为信息量化比特,w为RAM最大数据位宽,表示向上取整;
步骤4、判断p是否等于k,若是,则该查找步骤结束,否则p自增1,返回步骤3。
2.如权利要求1所述的一种LDPC-CC高速译码器,其特征在于,所述LDPC-CC译码器结构包括输入缓冲模块、消息缓冲模块、数据选择器MUX、处理器组、控制模块、校验模块、硬判决模块以及输出缓冲模块;
其中输入缓冲模块与消息缓冲模块的输出端连接至数据选择器MUX,MUX在第一轮译码中选择输入缓冲模块的输出作为处理器组的输入,之后的其他轮次译码选择消息缓冲模块的输出作为处理器组的输入;处理器组中包括顺次连接的多个处理器,处理器组对数据帧进行译码操作后,输出的译码结果一方面输入至消息缓冲模块进行缓冲、另一方面输入至硬判决模块,经硬判决模块的判决后的译码结果输入至输出缓冲模块,校验模块同时对经硬判决模块的判决后的译码结果进行校验,并将校验结果发送至控制模块,若译码结果满足校验模块,则控制模块则发出使能信号至所述输出缓冲模块的使能端以使能输出该译码结果,若译码结果不满足校验模块,则发送使能信号至消息缓冲模块以使能下一轮译码操作。
3.如权利要求2所述的一种LDPC-CC高速译码器,其特征在于,该译码器的时钟周期为T,该译码器采用流水线式的时序处理,每一个流水线的时序如下:其中2ρ个信道消息以及V2C消息作为所述处理器组的第一个处理器的输入数据,输入过程共跨越2个时钟周期T;在这2个时钟周期中,其中的第1个时钟周期取得移位过程所需的数据,并在第2个时钟周期完成移位操作;从第3个时钟周期开始进行校验节点更新,校验节点更新跨越2个时钟周期;校验节点更新完成后,将更新后的数据写到其原位置的下一地址处;在第7个时钟周期进行变量节点更新,该变量节点更新跨越2个时钟周期;在第9个时钟周期进行当前译码输出,输出跨越2个时钟周期;当前译码输出开始后延时一个时钟周期作为下一处理器的输入。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510416427.4A CN105515588B (zh) | 2015-07-15 | 2015-07-15 | 一种ldpc‑cc高速译码器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510416427.4A CN105515588B (zh) | 2015-07-15 | 2015-07-15 | 一种ldpc‑cc高速译码器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105515588A CN105515588A (zh) | 2016-04-20 |
CN105515588B true CN105515588B (zh) | 2017-10-17 |
Family
ID=55723303
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510416427.4A Active CN105515588B (zh) | 2015-07-15 | 2015-07-15 | 一种ldpc‑cc高速译码器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105515588B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102631407B1 (ko) * | 2018-10-24 | 2024-01-31 | 에스케이하이닉스 주식회사 | Ldpc 디코더, 반도체 메모리 시스템 및 그것의 동작 방법 |
CN110324048B (zh) * | 2019-06-24 | 2020-12-08 | 华中科技大学 | 一种通信调制系统中ra-ldpc-cc的编码方法及编码器 |
CN113055027B (zh) * | 2021-03-18 | 2022-05-13 | 北京得瑞领新科技有限公司 | 可变位宽的ldpc编码方法、编码器、ssd及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101785189A (zh) * | 2007-08-30 | 2010-07-21 | 松下电器产业株式会社 | 编码装置和解码装置 |
CN102611462A (zh) * | 2012-03-30 | 2012-07-25 | 复旦大学 | 一种ldpc-cc译码算法及译码器 |
WO2013014924A1 (ja) * | 2011-07-27 | 2013-01-31 | パナソニック株式会社 | 符号化方法、復号方法 |
JP2013093672A (ja) * | 2011-10-24 | 2013-05-16 | Nippon Telegr & Teleph Corp <Ntt> | 復号装置、符号化復号システム、符号化復号方法、及び復号プログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8898538B2 (en) * | 2011-08-24 | 2014-11-25 | Analogies Sa | Construction of multi rate low density parity check convolutional codes |
-
2015
- 2015-07-15 CN CN201510416427.4A patent/CN105515588B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101785189A (zh) * | 2007-08-30 | 2010-07-21 | 松下电器产业株式会社 | 编码装置和解码装置 |
WO2013014924A1 (ja) * | 2011-07-27 | 2013-01-31 | パナソニック株式会社 | 符号化方法、復号方法 |
JP2013093672A (ja) * | 2011-10-24 | 2013-05-16 | Nippon Telegr & Teleph Corp <Ntt> | 復号装置、符号化復号システム、符号化復号方法、及び復号プログラム |
CN102611462A (zh) * | 2012-03-30 | 2012-07-25 | 复旦大学 | 一种ldpc-cc译码算法及译码器 |
Also Published As
Publication number | Publication date |
---|---|
CN105515588A (zh) | 2016-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106452460B (zh) | 一种极化码与重复码级联的纠错编码方法 | |
CN102075198B (zh) | 准循环低密度奇偶校验卷积码编译码系统及其编译码方法 | |
CN1874164B (zh) | 使用同时存储器存取的消息传递译码装置和方法 | |
CN107370490A (zh) | 结构化ldpc的编码、译码方法及装置 | |
CN100425000C (zh) | 双涡轮结构低密度奇偶校验码解码器及解码方法 | |
CN101800559B (zh) | 一种基于tdmp的高速可配置qc-ldpc码解码器 | |
CN103220003B (zh) | 提高节点处理并行度的qc-ldpc译码器的实现方法 | |
CN106888026A (zh) | 基于lsc‑crc译码的分段极化码编译码方法及系统 | |
CN101854177B (zh) | 一种高吞吐率的ldpc译码器 | |
CN106330203A (zh) | 一种ldpc的解码方法 | |
CN108365849B (zh) | 基于simd指令集的多码率多码长ldpc码解码方法 | |
CN106936446A (zh) | 一种基于多进制ldpc码的高速译码器及其译码方法 | |
CN100542049C (zh) | 一种多码率的ldpc码的译码器装置及译码方法 | |
CN105515588B (zh) | 一种ldpc‑cc高速译码器 | |
CN101373978B (zh) | 一种Turbo码译码方法以及装置 | |
CN102185616B (zh) | 基于行列联合迭代译码的ldpc码构造方法 | |
CN100544212C (zh) | 高速的减少存储需求的低密度校验码解码器 | |
CN101420279B (zh) | 用于移动多媒体广播中的高速ldpc译码器及译码方法 | |
CN106856406B (zh) | 一种译码方法中校验节点的更新方法及译码器 | |
CN103152057B (zh) | 一种基于双归一化修正因子的ldpc译码器及译码方法 | |
CN104579362B (zh) | 一种空间通信系统中部分并行结构ldpc码译码系统及其方法 | |
CN102064835A (zh) | 适用于准循环ldpc译码的译码器 | |
CN100578945C (zh) | 一种ldpc码的译码器装置及译码方法 | |
US11483011B2 (en) | Decoding method, decoding device, and decoder | |
Kestel et al. | Polar code decoder exploration framework |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |