CN101273531A - 低密度奇偶校验码的改进turbo-译码消息传递算法 - Google Patents
低密度奇偶校验码的改进turbo-译码消息传递算法 Download PDFInfo
- Publication number
- CN101273531A CN101273531A CNA2005800516921A CN200580051692A CN101273531A CN 101273531 A CN101273531 A CN 101273531A CN A2005800516921 A CNA2005800516921 A CN A2005800516921A CN 200580051692 A CN200580051692 A CN 200580051692A CN 101273531 A CN101273531 A CN 101273531A
- Authority
- CN
- China
- Prior art keywords
- decoder
- code
- decoders
- reliability value
- reliability
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
- H03M13/296—Particular turbo code structure
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1111—Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1131—Scheduling of bit node or check node processing
- H03M13/1137—Partly parallel processing, i.e. sub-blocks or sub-groups of nodes being processed in parallel
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/11—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
- H03M13/1105—Decoding
- H03M13/1131—Scheduling of bit node or check node processing
- H03M13/114—Shuffled, staggered, layered or turbo decoding schedules
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2957—Turbo codes and decoding
- H03M13/2978—Particular arrangement of the component decoders
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/65—Purpose and implementation aspects
- H03M13/6502—Reduction of hardware complexity or efficient processing
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
提供用于对来自通信信道的信号进行译码以重构所发送信息的设备和方法。实施例可以包括对代码应用多个译码器,其中向译码器提供可靠性值,使得该译码器仅接收多个译码器中另一个译码器确定和提供的可靠性值。对代码应用多个译码器可以输出有效码字。
Description
技术领域
本发明的实施例涉及对通信信号的译码。
背景技术
通信信道,无论是光纤信道、同轴信道、有线信道、无线信道,还是连接系统中不同位置,在上面传输大量数据的总线,都有可能给信道上传输的信息带来噪声和差错。为了纠正通信信道所带来的差错,可以用码字的形式发送信息,其中每个码字包含相同总数的比特,并且其中若干比特是信息(消息)比特,若干比特用于纠错。长度为n比特的码字包括代码消息长度的k比特和r=n-k个冗余比特。这r个比特用于纠错,可以是r个奇偶校验比特。奇偶校验矩阵H包含按照如下关系定义码字的奇偶校验方程的一个集合:
HCT=0,
其中C为码字比特的n维矢量。在接收机那里,如果不满足这一关系,那么所接收的码字是无效的,必须纠正或重新传输。
有多种方案用于对通过通信信道传播的码字译码。一些方案非常准确,其它方案则可以实现快速译码。高速数据通信需要的是准确、快速,同时又简单的译码方案。
附图说明
图1是用于对收自通信信道的信息进行译码的方法实施例特征的流程图;
图2是用于对LDPC码进行译码的经典turbo译码消息传递译码器的方框图;
图3是用于对LDPC码进行译码的改进turbo译码消息传递译码器实施例的方框图;
图4示出了使用turbo译码消息传递算法与使用改进的turbo译码消息传递算法的实施例之间在误码率方面的译码性能比较;
图5示出了使用turbo译码消息传递算法与使用改进的turbo译码消息传递算法的实施例之间在译码的平均迭代次数方面的译码性能比较;以及
图6是具有以类似于图1所示方法工作的译码器实施例的系统的实施例的方框图。
具体实施方式
以下详细描述参考了附图,附图以例示方式示出了可以实施本发明的具体细节和实施例。足够详细地描述了这些实施例以便本领域的技术人员能够实施本发明。可以采用其它实施例,可以不脱离本发明的范围做出结构、逻辑和电气方面的改变。这里公开的各实施例未必是相互排斥的,因为可以将一些实施例与一个或多个其它实施例组合形成新的实施例。因此,不应当认为下面的详细描述是限制性的。
图1是用于对收自通信信道的信息进行译码的方法实施例特征的流程图。在110中,可以将多个译码器用于代码。在120中,可以将可靠性值应用到多个译码器中的一个译码器。这些可靠性值可以由接收这些值的译码器用来对代码进行操作。这个译码器可以仅从多个译码器中的另一个译码器接收可靠性值,其中那些可靠性值由来自所述另一个译码器决定,并从所述另一个译码器输出。在一个实施例中,每个译码器接收从另一译码器输出的可靠性值。在一个实施例中,可以将多个译码器配置成选定的顺序,使得每个译码器都具有被选定顺序中下一个译码器使用的可靠性值输出。选定顺序中最后一个译码器可以为选定顺序中的第一个译码器提供可靠性值,以便按照迭代方式对代码进行译码。代码可以包括在收自通信网络的信号中。
在130中,可以从译码器输出对代码应用多个译码器获得的码字。该码字可以是在译码过程中被纠正的码字。如果将多个译码器应用于代码没能提供有效码字,就可以认为发生了差错。在一个实施例中,可以生成有关这一差错的消息并提供给适当的设备或系统。
可以针对10吉比特(10G)以太网、无线以太网、高速调制解调器和其它通信系统,在前向纠错(FEC)中实施各种信息译码实施例。在一个实施例中,可以实施类似于图1所示的方法,以提供改进的turbo译码消息传递算法用于对信息译码。在译码器中可以将这种改进的turbo译码消息传递算法的实施例作为硬件,执行由控制器指挥的指令的软件,或者执行由控制器指挥的指令的硬件和软件的组合实现。
在一个实施例中,可以将软判决译码应用于收自通信的信号,其中的信号包含具有消息信息的代码。软判决译码器可以包括在译码过程中在多个点使用硬判决。可以通过评估单个比特来对该比特进行硬判决。对于对二进制比特的硬判决,如果这个比特小于或大于由译码器设置的固定值,译码器就认为该比特为1或0。在译码器将固定值设置为零的情况下,如果这个比特的接收信号为正,硬判决将这个比特设置为等于1,如果接收的信号为负,将这个比特设置为等于0。或者,如果这个比特的接收信号为负,硬判决可以将这个比特设置为等于1,如果接收信号为正,将这个比特设置为等于0。
软判决指的是从接收信号确定比特值时,将这个比特表示离散值的似然性考虑进来。软判决译码器可以使用与接收信号(软接收信息)置信度有关的信息,以及信道特性信息,来提供接收信号相对于发射信号的概率表示。尽管二进制过程的硬判决能够提供矢量位置或矢量比特可以是1或0的硬判决矢量,但是软判决可以提供硬判决矢量和可靠性或比特可靠性矢量。软判决提供的二进制硬判决矢量是1和0的矢量,其中每个矢量比特都是相对于固定标准单独产生的。可靠性矢量可以包括一个比特可靠性集合,每个比特可靠性对应于相关硬判决矢量的一个比特。比特可靠性能够提供硬判决矢量中对应比特的置信度度量。比特可靠性可以采用概率、对数似然比或者与传输接收码字的通信信道相关的其它加权因子的形式。如同本领域的技术人员所公知的一样,各种译码方案利用概率来实施软译码方案。一种方案在其软判决过程中为每个码字比特计算后验概率,这是在满足所有奇偶校验约束的条件下给定比特为1的概率。本征或先验概率为独立于代码约束的比特概率,非本征概率表示已知的东西。
各种方案中的迭代译码可以包括与接收比特对应的可靠性信息的更新,和/或与奇偶校验矩阵H中非零元素对应的可靠性的更新。这种迭代过程可以包括通过关系式HxT=0检查已更新校验码字x的有效性。如果这个测试没有产生有效码字,就继续这一迭代过程,直到获得有效码字,或者已经进行了最大次数的迭代。这个代码可以包含能够利用纠错技术从收到的通信信号提取消息的信息。在一个实施例中,这个代码可以是低密度奇偶校验(LDPC)码。可以在各种网络传输中实现这个代码,这些网络包括但不限于高速局域网、无线通信网和光纤通信网。
由于在加性高斯白噪声(AWGN)信道中译码简单,误码率(BER)低,因此在高速通信系统中,低密度奇偶校验码能够提供强有力的前向纠错工具。LDPC码利用大多是0,1的数量有限的奇偶校验矩阵。二进制(n,γ,ρ)LDPC码具有n比特的码字长度或块长度,以及每列中恰好γ个1,每行中恰好ρ个1的奇偶校验矩阵。在LDPC码中,由γ次奇偶校验来校验每个代码比特,每次奇偶校验都使用ρ个代码比特。此外,这个代码具有被定义为R=k/n的比率R,其中k是具有n比特的码字中消息(信息)比特的数量。
LDPC码是一种由稀疏奇偶校验矩阵H=[hij]mxn定义的线性分组码。H的行对应于m个校验节点{c1,c2,...,cm},H的列对应于n个比特节点{b1,b2,...,bn}。如果hij项为1,比特节点bj就连接到校验节点ci。在正则(c,r)-LDPC码中,比特节点具有c阶(degree),校验节点具有r阶。对于正则(c,r)-LDPC码而言,数字c和r是固定的。如果未用正则奇偶校验矩阵来描述LDPC码,那么它是非正则LDPC码,其中比特节点和校验节点的阶数从两个集合中提取。
可以利用turbo译码原理对LDPC码译码。这种译码过程包括使用turbo译码消息传递(TDMP)算法。可以通过将代码C的奇偶校验矩阵[hij]mxn表示为c个子矩阵(每个均在每列中包含单个1)的拼接来构建长度为n的正则(c,r)-LDPC码的系综。这些子矩阵中大小为(n/r)xn的第一个H1将超码C1定义为n/r个奇偶校验(r,r-1)子代码的直接和。C1满足C的奇偶校验方程的子集,因此C是C1的子空间。其它子矩阵H1,...,Hc为H的伪随机排列,每个均在奇偶校验方程的对应子集上定义超码Cj。因此,C为超码C1,...,Cj的交集。通过分解LDPC码的奇偶校验矩阵,约束1的列位置,可以将LDPC译码变换成turbo译码过程。在turbo译码中,消息仅在相邻超码而非潜在的所有子代码之间串行流动,没有奇偶校验矩阵上的任何结构。在译码的turbo原理中,可以将代码的奇偶校验矩阵划分成条(奇偶校验矩阵行的子集),并且可以逐条执行译码。译码器可以利用在第一次译码期间获得的已更新可靠性对第二条译码,这是第二次子迭代。可以将用于LDPC码的turbo译码的交织器分解成更小的交织器。
图2示出了用于对LDPC码译码的经典turbo译码消息传递译码器200的方框图。这种经典TDMP算法和TDMP译码器是本领域的技术人员公知的。考虑图2所示TDMP算法对正则LDPC码的操作。这一算法也适用于非正则码。令奇偶校验矩阵H定义正则(c,r)-LDPC码C。针对每个比特使用TDMP译码器200,利用译码器D1211计算非本征可靠性值,假设这一比特属于第一代码C1。对于C2,通过交织器222将这个非本征信息作为先验信息馈送给译码器D2212。假设这些比特属于C2,第二译码器更新非本征可靠性值。利用译码器D3213重复这一过程,其中在译码器213处假设这些比特属于C3。将基于一个超码的单次消息更新称为子迭代,在所有超码上更新一轮构成单次译码迭代。基于从在最后的超码C3上进行操作的译码器(在去交织之后)读取的后验可靠性值做出硬判决。
提供由其奇偶校验矩阵H=[H1;H2;...;Hc]定义的长度为n的正则(c,r)-LDPC码C=C1∩C2∩...∩Cc,作为译码器200的输入。置换{π1,,....,πc}将每个子代码的比特组成组,以实施Balh-Cocke-Jelinek-Raviv(BCJR)算法的递归。如同本领域技术人员所理解的一样,BCJR算法是一种迭代最大后验(MAP)算法。向分别在译码器211、212和213前面的交织器221、222、223提供本征信道可靠性值λj,j=1,...,n。可以利用从通信信道进行的接收计算比特的信道可靠性,通常被称为本征可靠性。译码器200的输出是使得xHT=0的码字x或“译码错误”。可以将译码错误提供到另一设备或系统。可以用存储缓冲器来存储可靠性值。可靠性值Pj可以存储在大小为c的n个存储缓冲器231、232和233中,其中j=1,...,n,Pj i表示Pj的第i个元素。可以将这些存储缓冲器初始化为零。图2示出了具有3个超码的(3,)-LDPC码。
可以执行对应于超码Ci的迭代k,c译码子迭代,其中i=1,...,c。在子迭代t,可以利用信道值λj,并假设Pj为这个码字属于除第t个超码之外的所有超码的在前信息,计算非本征可靠性Qj,j=1,…,N。在前信息Pj包括在以前的译码迭代期间获得并用于当前迭代的信息。可以利用BCJR算法或利用如下方程执行该计算:
其中ψ-1(x)=ψ(x)=-0.51n(tanh(x/2)),St[j]是Ct中包含比特j的子代码比特的列下标集,δSt[j]为取决于St[j]的大小和ψ(|.|)的自变量符号的符号校正项。可以将δSt[j]这个量计算为:
Qj的值可以保存在Pj t中,j=1,...,n。在最后的子迭代t=c中,可以做出硬判决以生成测试码字x=sgn(Q)。对测试码字x应用运算xHT=0,以判断它是不是有效码字。
图3示出了用于对LDPC码进行译码的改进的turbo译码消息传递译码器300实施例的方框图。图3示出了具有3个超码的(3,)-LDPC码的改进TDMP译码器。实施例不限于3个超码,而是可以针对任意数量的超码构建。译码器300包括译码器301、302和303,这些译码器具有分别来自交织器306、307和308的输入,其中可靠性值可以存储在存储缓冲器309、310和311中。在一个实施例中,可以将存储缓冲器309、310和311减少为一个存储缓冲器。在一个实施例中,译码器300在第一次迭代的第一次子迭代时,将信道可靠性值注入多个译码器301、302和303一次。可以将信道可靠性仅注入到按选定顺序设置的第一个译码器中。每个译码器301、302和303接收就在其前面的译码器计算和提供的可靠性值。
在一个实施例中,将改进的turbo译码消息传递算法构造成在软输出信道过程中对LDPC码译码。基于改进的TDMP算法的译码器的实施例与经典TDMP译码器相比可以提供增强的纠错性能。在一个实施例中,可以利用不同于经典TDMP算法的在每次子迭代时输出可靠性计算结果的规则,提供用于快速LDPC译码的改进的TDMP可靠性译码器。经典TDMP算法将信道输入可靠性和除第t超码之外的所有超码的可靠性之和用作第t个超码的输入可靠性。在改进的TDMP算法的一个实施例中,将第(t-1)超码的输出可靠性用作第t超码的输入可靠性。在一个实施例中,
其中pj’ 1+(i-1)mod c为第(i-1)超码的符号的输出可靠性。由于译码器300不向一个译码器提供从所有其它译码器计算出的多个可靠性值,因此与经典TDMP算法相比,可以简化译码,减少存储器的使用。
图4示出了使用turbo译码消息传递算法与使用改进的turbo译码消息传递算法的实施例之间在误码率方面的译码性能比较。图4所示译码器是为AWGN信道模拟的,该信道使用Reed Solomon LDPC码构造,RS-LDPC(2048,1723),代码长度为2048,消息长度为1723。相对于经典TDMP译码器曲线410,改进的TDMP译码器实施例的曲线405说明增强的BER性能随信噪比SNR的变化。
图5示出了使用turbo译码消息传递算法与使用改进的turbo译码消息传递算法的实施例之间在译码的平均迭代次数方面的译码性能比较。图5所示的译码器是为使用RS-LDPC(2048,1723)码的AWGN信道模拟的。作为SNR的函数,与经典TDMP译码器曲线510相比,改进的TDMP译码器实施例的曲线505表现出进行译码使用的迭代次数更少。
如本文所述,利用将多个单个译码器应用于代码的实施例,对通信信号进行译码的设备和方法的各种实施例或实施例组合,可以用硬件、软件以及硬件和软件的组合来实现。这些实施方式可以包括具有机器可执行指令的机器可读介质,所述指令通过将多个译码器应用于代码来进行译码,其中将可靠性值应用于所述组译码器中的一个译码器,使得该译码器仅接收由所述译码器组中另一个译码器确定和提供的可靠性值。这些指令可以通过将多个译码器应用于代码来引导有效码字的输出。在一个实施例中,机器可执行指令可以包括用于对LDPC码译码的指令。可以利用指令对LDPC译码以实施改进的turbo译码消息传递算法的实施例。机器可读介质不限于任何一种介质。机器可读介质可以包括计算机可读介质。所用的机器可读介质将取决于使用译码方案实施例的应用。在一个实施例中,耦合到具有译码器实施例的通信单元的处理器可以利用机器可读介质和各种形式的存储器来引导收自通信信道的信息的译码。在一个实施例中,存储器可以存储用于对所接收码字进行迭代译码的参数。
图6是具有以类似于图1所示方法工作的译码器605实施例的系统600的实施例的方框图。译码器605可以用硬件体系结构,基于软件的体系结构,或硬件/软件体系结构的组合实现。在一个实施例中,译码器605可以是如图3所示布置的改进的turbo译码消息传递译码器。系统600还可以包括控制器610和总线630,其中总线630在控制器610和通信单元640之间提供通信路径。在一个实施例中,控制器610为处理器。总线630可以是并行总线。总线630可以是串行总线。总线630可以与外设部件互连(PCI)或PCI express兼容。实施例系统600可以包括存储器620以及耦合到总线630的额外的外围设备660。外围设备660可以包括显示器、存储器或其它控制装置,它们可以与控制器610、通信单元640和/或译码器605协同工作。
可以实现系统600的各种实施例。系统600可以被布置为网络中的节点或节点的部件。网络可以具有许多节点,其中每个节点可以代表具有物理层(PHY)实体的处理系统,例如,该实体被设置成依据IEEE 802.3定义的系列标准的10GBase-T运行。例如,10GBase-T PHY可以与IEEE体系架构中的10G介质存取控制(MAC)和吉比特介质独立接口(XGMII)对接。例如,10GBase-T PHY可以包括网络接口卡(NIC)的一部分。网络节点可以实现为一个或更多系统。网络节点可以包括适于和10GBase-T装置一起使用的任何处理系统和/或通信装置。例如,网络节点可以实现为一对交换机、一对路由器、一对服务器、交换机和路由器、交换机和服务器、服务器和路由器等。此外,网络节点还可以是模块化系统的一部分,其中10GBase-T是该系统的高速连接。此外例如,网络节点可以包括高端服务器、超级计算机、群集器、网格计算、工作组交换机上行链路、集合上行链路、存储系统等。实施例不限于该范围。
通信单元640可以包括译码器605。译码器605可以是系统600中可运行地耦合到通信单元640以接收通信信号的独立模块。在一个实施例中,通信单元640可以包括网络接口卡。在一个实施例中,通信单元640可以是适用于10GBase-T装置的通信装置。在无线实施例中,通信单元640可以包括用于耦合到天线650的连接647。在一个实施例中,天线650可以是基本全向天线。通信单元640可以包括用于耦合到传输介质641的连接643。传输介质641可以是光纤介质。传输介质641可以耦合到有线网络。传输介质641可以是电缆。传输介质641可以包括同轴电缆、非屏蔽双绞线电缆或屏蔽双绞线电缆。
系统600可以包括,但不限于信息处理装置、无线系统、电信系统、光纤系统、电光系统和计算机。类似于这里所述的译码方案的实施例可以适于用在与通信信道一起运行的任何系统中。这种实施例可以用于以太网信道,包括无线以太网信道。通信信道可以是陆基通信网络或无线通信网络的一部分。本发明的实施例甚至可以实施为任何使用多载波无线通信信道(例如正交频分复用(OFDM)、离散多频调制(DMT)等)的无线系统的一部分,例如可以用在(但不限于)如下网络中的系统:无线个人局域网(WPAN)、无线局域网(WLAN)、无线城域网(WMAN)、无线广域网(WWAN)、蜂窝网、第三代(3G)网络、第四代(4G)网络、通用移动电话系统(UMTS)和类似的通信系统。
虽然在此已经图示和描述了具体实施例,但是本领域普通技术人员要明白,可以用适于实现同样目的的任何布置取代图示的特定实施例。本申请意在涵盖本发明的实施例的任何修改或变化。应当理解以上描述意在例示而非限制,文中所用的措辞或术语是为了描述而非限制。在研究以上描述的基础上,将以上实施例与其它实施例组合对本领域的技术人员而言是显然的。本发明的范围包括使用上述结构和制造方法的实施例的任何其它应用。应当参考所附权利要求,结合这种权利要求对之有效的等价要件的完整范围确定本发明的实施例范围。
Claims (29)
1. 一种方法,包括:
对代码应用多个译码器;
对所述多个译码器的一个译码器应用可靠性值,使得所述译码器仅接收由所述多个译码器中的另一个译码器确定和提供的可靠性值;以及
输出通过对所述代码应用所述多个译码器所得到的码字。
2. 如权利要求1所述的方法,其中对代码应用多个译码器包括对具有多个超码的代码应用所述多个译码器,每个译码器与不同的超码相关。
3. 如权利要求2所述的方法,其中所述方法包括,通过将所述代码作为与之相关的所述超码对待,每个译码器对所述代码进行操作。
4. 如权利要求1所述的方法,其中对译码器应用来自所述另一个译码器的可靠性值包括,对所述译码器应用来自紧接在所述译码器前面的所述另一个译码器的所述可靠性值,其中所述多个译码器按照选定顺序设置。
5. 如权利要求1所述的方法,其中所述方法包括通过交织器向所述译码器输入所述代码。
6. 如权利要求1所述的方法,其中所述方法包括仅向所述译码器之一输入信道可靠性,所述信道可靠性由所述一个译码器用于确定要输出的可靠性值。
7. 如权利要求1所述的方法,其中所述方法包括仅在对所述代码进行译码的第一次迭代时向所述多个译码器输入信道可靠性。
8. 如权利要求1所述的方法,其中所述方法包括在存储缓冲器中将所述可靠性值初始化为零以开始对所述代码进行译码。
9. 如权利要求1所述的方法,其中对代码应用多个译码器包括对低密度校验码应用所述多个译码器。
10. 如权利要求9所述的方法,其中对低密度校验码应用所述多个译码器包括将改进的turbo译码消息传递译码器中的所述多个译码器应用到正则低密度校验码。
11. 一种存储指令的机器可读介质,被机器执行时所述指令使机器:
对代码应用多个译码器;
对所述多个译码器的一个译码器应用可靠性值,使得所述译码器仅接收由所述多个译码器中的另一个译码器确定和提供的可靠性值;以及
输出通过对所述代码应用所述多个译码器所得到的码字。
12. 如权利要求11所述的机器可读介质,其中所述机器可读介质包括在被机器执行时使机器执行如下操作的指令:对具有多个超码的代码应用所述多个译码器,每个译码器与不同的超码相关,通过将所述代码作为与之相关的所述超码对待,每个译码器对所述代码进行操作
13. 如权利要求11所述的机器可读介质,其中所述机器可读介质包括在被机器执行时使机器执行如下操作的指令:对所述译码器应用来自紧接在所述译码器前面的所述另一个译码器的所述可靠性值,其中所述多个译码器按照选定顺序设置。
14. 如权利要求11所述的机器可读介质,其中所述机器可读介质包括在被机器执行时使机器执行如下操作的指令:在对所述代码进行译码的第一次迭代时仅向所述译码器之一输入信道可靠性,所述信道可靠性被所述一个译码器用于确定要输出的可靠性值,仅在对所述代码进行译码的第一次迭代时输入所述信道可靠性。
15. 如权利要求11所述的机器可读介质,其中所述机器可读介质包括在被机器执行时使机器执行如下操作的指令:在存储缓冲器中将所述可靠性值初始化为零以开始对所述代码进行译码。
16. 如权利要求11所述的机器可读介质,其中所述指令包括对低密度校验码应用所述多个译码器的指令。
17. 一种设备,包括:
具有多个单个译码器的译码器,每个单个译码器被设置成仅接收所述多个单个译码器中另一个单个译码器确定和提供的可靠性值。
18. 如权利要求17所述的设备,其中所述译码器包括用于接收代码的输入端,所述代码具有多个超码,每个单个译码器与所述多个超码中的不同超码相关。
19. 如权利要求18所述的设备,其中每个单个译码器被设置成通过将所述代码作为与每个单个译码器相关的所述超码看待,对所述代码进行操作。
20. 如权利要求17所述的设备,其中所述译码器包括设置成选定顺序的所述多个单个译码器,向所述多个单个译码器中的一个单个译码器输入来自在所述选定顺序中紧接在前面的单个译码器的所述可靠性值。
21. 如权利要求17所述的设备,其中所述设备包括位于所述多个单个译码器的两个单个译码器之间的交织器。
22. 如权利要求17所述的设备,其中所述译码器包括设置成将信道可靠性仅引导到所述单个译码器之一的所述译码器。
23. 如权利要求17所述的设备,其中所述设备包括用于存储所述可靠性值的存储缓冲器。
24. 如权利要求17所述的设备,其中所述译码器包括输出端,用于提供对收到的低密度校验码进行译码得到的码字。
25. 一种系统,包括:
通信单元,用于从通信信道接收信号,所述信号包含代码;
并行总线;
控制器,通过所述并行总线可通信地耦合到所述通信单元;以及
译码器,具有多个单个译码器,每个单个译码器被设置成仅接收所述多个单个译码器中另一个单个译码器确定和提供的可靠性值。
26. 如权利要求25所述的系统,其中所述译码器包括设置成选定顺序的所述多个单个译码器,向所述多个单个译码器中的一个单个译码器输入来自在所述选定顺序中紧接在前面的单个译码器的所述可靠性值,并且所述译码器包括设置成将信道可靠性仅引导到所述单个译码器之一的所述译码器。
27. 如权利要求25所述的系统,其中所述通信单元包括网络接口卡。
28. 如权利要求25所述的系统,其中所述网络接口卡包括
29. 如权利要求25所述的系统,其中所述译码器包括输出端,用于提供对收到的低密度校验码进行译码得到的码字。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/RU2005/000489 WO2007037713A1 (en) | 2005-09-30 | 2005-09-30 | Modified turbo-decoding message-passing algorithm for low-density parity check codes |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101273531A true CN101273531A (zh) | 2008-09-24 |
CN101273531B CN101273531B (zh) | 2013-03-20 |
Family
ID=36677089
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005800516921A Expired - Fee Related CN101273531B (zh) | 2005-09-30 | 2005-09-30 | 低密度奇偶校验码的改进turbo-译码消息传递方法、设备和系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8301983B2 (zh) |
CN (1) | CN101273531B (zh) |
DE (1) | DE112005003706T5 (zh) |
WO (1) | WO2007037713A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109783270A (zh) * | 2017-11-14 | 2019-05-21 | 奈奎斯特半导体有限公司 | 用于解码纠错码的系统和方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8209579B2 (en) * | 2004-03-31 | 2012-06-26 | Intel Corporation | Generalized multi-threshold decoder for low-density parity check codes |
US8065588B2 (en) * | 2007-01-17 | 2011-11-22 | Broadcom Corporation | Formulaic flexible collision-free memory accessing for parallel turbo decoding with quadratic polynomial permutation (QPP) interleave |
US8745468B1 (en) * | 2008-01-21 | 2014-06-03 | Marvel International Ltd. | Iterative decoding systems using noise-biasing |
EP2614594A1 (en) * | 2010-09-08 | 2013-07-17 | Agence Spatiale Européenne | Flexible channel decoder. |
US8910025B2 (en) * | 2011-10-03 | 2014-12-09 | Samsung Electronics Co., Ltd. | Method and apparatus of QC-LDPC convolutional coding and low-power high throughput QC-LDPC convolutional encoder and decoder |
CA2864650C (en) * | 2014-08-14 | 2017-05-30 | Sung-Ik Park | Low density parity check encoder having length of 64800 and code rate of 2/15, and low density parity check encoding method using the same |
US9496896B2 (en) * | 2014-08-14 | 2016-11-15 | Electronics And Telecommunications Research Institute | Low density parity check encoder having length of 64800 and code rate of 5/15, and low density parity check encoding method using the same |
CA2959613C (en) * | 2014-08-14 | 2019-05-14 | Electronics And Telecommunications Research Institute | Low density parity check encoder having length of 16200 and code rate of 5/15, and low density parity check encoding method using the same |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8196025B2 (en) * | 2005-08-03 | 2012-06-05 | Qualcomm Incorporated | Turbo LDPC decoding |
-
2005
- 2005-09-30 DE DE200511003706 patent/DE112005003706T5/de not_active Ceased
- 2005-09-30 WO PCT/RU2005/000489 patent/WO2007037713A1/en active Application Filing
- 2005-09-30 US US11/992,802 patent/US8301983B2/en not_active Expired - Fee Related
- 2005-09-30 CN CN2005800516921A patent/CN101273531B/zh not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109783270A (zh) * | 2017-11-14 | 2019-05-21 | 奈奎斯特半导体有限公司 | 用于解码纠错码的系统和方法 |
CN109783270B (zh) * | 2017-11-14 | 2022-11-08 | 英韧科技(上海)有限公司 | 用于解码纠错码的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101273531B (zh) | 2013-03-20 |
DE112005003706T5 (de) | 2008-08-21 |
WO2007037713A1 (en) | 2007-04-05 |
US20100146371A1 (en) | 2010-06-10 |
US8301983B2 (en) | 2012-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101273531B (zh) | 低密度奇偶校验码的改进turbo-译码消息传递方法、设备和系统 | |
JP6847252B2 (ja) | 符号器、復号器及び送信機 | |
US8209579B2 (en) | Generalized multi-threshold decoder for low-density parity check codes | |
JP5354979B2 (ja) | 低密度パリティ検査畳み込み符号(ldpc−cc)符号化器及びldpc−cc復号器 | |
EP1334561B1 (en) | Stopping criteria for iterative decoding | |
US7774689B2 (en) | Encoding and decoding methods and systems | |
US20070260772A1 (en) | Apparatus and method for transmitting/receiving data in a communication system | |
CN110098838B (zh) | Ldpc-rs乘积码的纠错纠删迭代译码方法 | |
CN101091321A (zh) | 用于低密度奇偶校验码的多门限解码的固定门限和信道估计 | |
CN104025459A (zh) | 译码处理方法及译码器 | |
CN101309086A (zh) | 里德-所罗门码级联反馈系统卷积码的系统的译码方法 | |
CN102611463B (zh) | 多进制低密度奇偶校验码的级联编译码系统及方法 | |
CN103199874B (zh) | 一种低密度奇偶校验码译码方法 | |
CN103269229A (zh) | 一种ldpc-rs二维乘积码的混合迭代译码方法 | |
CN107196737B (zh) | 基于消息传递算法的scma译码方法 | |
CN102412843A (zh) | 自适应的归一化最小和ldpc译码方法及译码器 | |
CN101615913A (zh) | Ldpc码的快速收敛译码算法 | |
CN107005251A (zh) | 具有有限精度和迭代次数的动态调整的ldpc解码 | |
CN110730011B (zh) | 一种基于部分叠加的递归分组马尔可夫叠加编码方法 | |
US20070271496A1 (en) | 3-Stripes Gilbert Ldpc Codes | |
Barsoum et al. | EXIT function aided design of iteratively decodable codes for the poisson PPM channel | |
CN111555760B (zh) | 纠正随机错误和长突发删除的多进制符号级乘积码方法 | |
CN106169935B (zh) | 以可靠度为导向的低密度奇偶校验码信度传播译码方法 | |
CN109995383A (zh) | 译码方法、装置、存储介质和计算机程序产品 | |
US8307269B2 (en) | Scalable folded decoder architecture for low density parity check codes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130320 Termination date: 20150930 |
|
EXPY | Termination of patent right or utility model |