CN101405943A - 用于低密度奇偶校验解码器的方法和装置 - Google Patents

用于低密度奇偶校验解码器的方法和装置 Download PDF

Info

Publication number
CN101405943A
CN101405943A CNA2006800367955A CN200680036795A CN101405943A CN 101405943 A CN101405943 A CN 101405943A CN A2006800367955 A CNA2006800367955 A CN A2006800367955A CN 200680036795 A CN200680036795 A CN 200680036795A CN 101405943 A CN101405943 A CN 101405943A
Authority
CN
China
Prior art keywords
node
soft
llr
decision
check
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
Application number
CNA2006800367955A
Other languages
English (en)
Other versions
CN101405943B (zh
Inventor
于骁勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Motorola Mobility LLC
Google Technology Holdings LLC
Original Assignee
Motorola Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Motorola Inc filed Critical Motorola Inc
Publication of CN101405943A publication Critical patent/CN101405943A/zh
Application granted granted Critical
Publication of CN101405943B publication Critical patent/CN101405943B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/63Joint error correction and other techniques
    • H03M13/6325Error control coding in combination with demodulation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • H03M13/1111Soft-decision decoding, e.g. by means of message passing or belief propagation algorithms
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/255Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with Low Density Parity Check [LDPC] codes

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

本发明涉及一种低密度奇偶校验(LDPC)解码器(304),具有存储器(308),以及处理器(306)。所述处理器被编程为:初始化(202)LDPC解码器,计算(204)每个校验节点的概率,计算(206)每个位节点的概率,计算软判决,根据所计算的软判决更新位节点,根据所计算的软判决计算(208)值,对所计算的值执行(210)奇偶校验,如果在所计算的值中检测到位错误则更新(218)对数似然比(LLR),根据所更新的LLR更新位节点,以及重复前述的初始化之后的步骤。

Description

用于低密度奇偶校验解码器的方法和装置
技术领域
本发明一般涉及低密度奇偶校验(LDPC)解码器,特别地涉及一种用于LDPC解码器的方法和装置。
背景技术
LDPC码是线性分组码。通过生成矩阵G来规定LDPC码的代码字空间和编码程序,如下:
x=uG
其中G是K×N的行满秩矩阵,u是表示信息位的1×K向量,x是用于代码字的1×N向量。通常,生成矩阵可以写为如下形式:
Figure A20068003679500061
作为选择,线性分组码同样可以由奇偶校验矩阵H来规定,如下:
Hxt=0
对于任何代码字x,其中H是M×N矩阵,并且M=(N-K)。因为Hxt=0意味着HGt=0,所以如果奇偶校验矩阵H是已知的,那么生成矩阵G也是已知的,反之亦然。矩阵G通常描述编码器,而H通常用于检查给定的二进制向量x在解码器中是否是有效的代码字。
用于LDPC码的奇偶校验矩阵H是稀疏矩阵,即一小部分元素是1而其他元素都是0,并且1的位置是以随机方式确定的。这些随机选择的1的位置对于相关联的LDPC码的性能来说是重要的,其与turbo(涡轮)码交织器是相似的。
LDPC码可以通过“二分图”或Tanner图来表示,其中节点可以分为校验节点和位节点两组,只允许分属不同组中的节点之间的连接。例如,可以使用奇偶校验矩阵来规定一个LDPC码,该奇偶校验矩阵如下为代码字X定义了一组奇偶校验等式:
H = 1 1 0 1 0 0 0 1 0 0 1 1 1 0 1 0 0 1 0 0 1 1 1 0 x 1 + x 2 + x 4 = 0 x 2 + x 5 + x 6 = 0 x 1 + x 3 + x 6 = 0 x 3 + x 4 + x 5 = 0
对于二进制LDPC码,所有的乘法和加法都用二进制操作定义。因此,LDPC码,或者更具体的,奇偶校验等式可以用图1的Tanner图表示。每一个位节点对应于代码字x中的一个位,每个校验节点表示一个用矩阵H的一行规定的奇偶校验等式。因此,具有M×N奇偶校验矩阵H的LDPC码的二分图包括M个校验节点和N个位节点。当且仅当一个位参与了和一个校验节点相关的奇偶校验等式时,在该校验节点和该位节点之间才存在一条边。
一个具有K/N码率的LDPC编码器可以如图2所示实现。K个信息位被移位并存储在K个寄存器中。根据生成矩阵G的子矩阵P计算N-K个奇偶校验位。首先,输出开关位于位置1,以连续地移出K个信息位,然后该开关连接到位置2,以连续地移出N-K个奇偶检验位。
LDPC解码器基于迭代消息传递,或者“turbo-like(类turbo)”信任传播。和-积算法在LDPC解码中是一种著名的方法并且可以在对数域内实现(参见图3所描述的方法)。为了描述和-积算法,可以使用下述符号:M(b)表示连接到位节点b的校验节点的集合,即“1”位于奇偶校验矩阵H的第b列,B(m)表示连接到校验节点m的位节点的集合,即“1”位于奇偶校验矩阵的第m行。B(m)\b表示排除位节点b的集合B(m)。类似的,M(b)\m表示排除校验节点m的集合M(b)。变量qb→m 0和qb→m 1表示位节点b发送到(send to)校验节点m的概率信息,分别指示P(xb=0)及P(xb=1)。变量rm→b 0和rm→b 1分别表示第m个校验节点为第b个位采集0和1中的一个值的概率信息。
大体说来,当用qb→m来指定其他位的概率时,rm→b 0(或rm→b 1)是第m个奇偶校验等式中xb=0(或xb=1)的似然信息。因此,rm→b 0可以被看作是关于第m个校验节点的第b个位的“外”信息。一个位的软判决(soft decision)或对数似然比是通过将一个先验概率信息加到所有连接该位的校验节点的外信息来计算的。
在对数域,所有概率信息通过对数似然比(LLR)等价地表征如下:
L ( r m → b ) = log r m → b 1 r m → b 0
L ( q b → m ) = log q b → m 1 q b → m 0
L ( p b ) = log p b 1 p b 0
L ( q b ) = log q b 1 q b 0
其中qb 0(或qb 1)是从信道中接收到的信息的xb=0(或xb=1)的后验概率,pb 0(或pb 1)是从信道中接收到的信息的xb=0(或xb=1)的先验概率。图3中的流程图总结了上述LDPC解码过程。
在高阶QAM调制的情况下,每个QAM符号包括多个码位,而LDPC解码器的输入是用于每个位的LLR序列。因此,接收到的QAM软符号必须转换为用于每个位的LLR。假设将接收到的QAM软符号表示为r=rI+jrQ=s+n,其中s=sI+jsQ是它相关联的QAM的硬符号,n是具有方差2σ2的复数噪声。位k的LLR可以使用双重最大值方法被近似如下:
LLR ( b k ) = ln LL ( b k = 1 ) LL ( b k = - 1 )
= ln Σ b k ∈ S 1 exp [ - ( r I - s I ) 2 2 σ 2 - ( r Q - s Q ) 2 2 σ 2 ] Σ b k ∈ S - 1 exp [ - ( r I - s I ) 2 2 σ 2 - ( r Q - s Q ) 2 2 σ 2 ] - - - ( 1 )
≈ K [ max b k ∈ S 1 { - ( r I - s I ) 2 - ( r Q - s Q ) 2 } - max b k ∈ S - 1 { - ( r I - s I ) 2 - ( r Q - s Q ) 2 } ]
= K [ max b k ∈ S 1 { 2 r I s I - s I 2 + 2 r Q s Q - s Q 2 } - max b k ∈ S - 1 { 2 r I s I - s I 2 + 2 r Q s Q - s Q 2 } ]
其中K是LLR标量,其取决于噪声方差,S1和S-1是分别对应于bK=1和-1的(SI SQ)集合。在当前情况下,bk=1和bk=-1分别等同于 x b k = 0 x b k = 1 . 在16QAM的情况下(使用位到符号的映射规则,例如SI=2bk+bk+1及SQ=2bk+2+bk+3,其中每一位的值为1或-1),应用下述等式:
SI=-3,-1,1,3对于(bk,bk+1)=(-1,-1),(-1,1),(1,-1),(1,1)
SQ=-3,-1,1,3对于(bk+2,bk+3)=(-1,-1),(-1,1),(1,-1),(1,1)
bK=1的对数似然函数,LL(bK=1),近似的是{2rIsI-sI 2+2rQsQ-sQ 2}相应于SI>0确定的8个值中的最大量。类似地,bK=-1的对数似然函数近似为相应于SI≤0的8个符号估计的{2rIsI-sI 2+2rQsQ-sQ 2}的8个值中的最大的一个。
前述的LDPC码可应用于许多无线空中接口的FEC(Forward ErrorCorrection,前向纠错)应用中,例如WiMax(IEEE802.16e),高级WiFi(IEEE802.11n)和移动宽带无线访问(IEEE 802.20)。通常,例如这些的空中接口利用正交频分调制(OFDM),其中每个音调携带QPSK、16QAM或64QAM符号。在解调过程中,软QAM符号被转换为LLR,其被反馈给前述的LDPC解码器。然而,前述的双重最大值方法用来近似每一位的LLR值。因此这种近似可能导致性能降低。
因此需要提出一种改进LDPC解码的方法和装置。
发明内容
依照本发明的实施例提供了一种用于LDPC解码器的系统和方法。
在本发明第一实施例中,一种低密度奇偶校验(LDPC)解码器具有存储器和处理器。通过编程使处理器初始化LDPC解码器,计算每个校验节点的概率,计算每个位节点的概率,计算软判决,根据计算的软判决来更新位节点,根据计算的软判决来计算值,对计算的值执行奇偶校验,如果在计算的值中检测到位错误则更新对数似然比(LLR),根据更新的LLR更新位节点,以及重复前述的初始化之后的步骤。
在本发明的第二实施例中,一种计算机可读存储介质具有计算机指令,用于使用对数似然比(LLR)初始化多个位节点,将多个校验节点初始化为预定的设置,将每个位节点关联至一个或多个相应的校验节点,将每个校验节点关联至一个或多个相应的位节点,为每个校验节点计算概率,为每个位节点计算概率,计算软判决,根据计算的软判决更新位节点,根据计算的软判决的符号计算值,对计算的值执行奇偶校验,如果在计算的值中检测到位错误则根据由第一因子和第二因子调整的初始的和中间的LLR更新LLR,根据更新的LLR更新位节点,以及重复前述的初始化之后的步骤。
在本发明的第三实施例中,一种基站具有收发器,存储器以及处理器。通过编程使处理器从选择呼叫无线电中截取消息,并通过下述步骤解码所述消息:使用对数似然比(LLR)初始化多个位节点,将多个校验节点初始化为预定的设置,将每个位节点关联至一个或多个相应的校验节点,将每个校验节点关联至一个或多个相应的位节点,为每个校验节点计算概率,为每个位节点计算概率,根据相应的校验节点和位节点先前的软判决来计算软判决,根据计算的软判决更新位节点,根据计算的软判决的符号计算值,对计算的值执行奇偶校验,如果在计算的值中检测到位错误则更新LLR,根据更新的LLR更新位节点,以及重复前述的初始化之后的步骤。
附图说明
图1是低密度奇偶校验(LDPC)解码器的现有技术Tanner图的框图。
图2是具有K/N编码率的现有技术LDPC编码器的框图。
图3描述了在现有技术LDPC解码器中运行的方法的流程图。
图4-6描述了说明依据本发明的一个实施例的用于计算LLR的方法的16QAM的星座图。
图7描述了依据本发明的一个实施例的在LDPC解码器中运行的方法的流程图。
图8-9举例说明了依据本发明的一个实施例的在BER(误码率)和软判决等级之间的关系。
图10对现有技术LDPC解码器和依据本发明的一个实施例的LDPC解码器对于变化的最大值循环迭代的性能进行了比较。
图11举例说明了依照本发明的一个实施例的最大值循环迭代和解码复杂性之间的关系。
图12是利用依照本发明的一个实施例的LDPC解码器的基站的框图。
详细说明
在前述的现有技术中等式(1)的传统的双重最大值(dual-max)方法是通过计算所有可能似然并选择最大的一个而近似一个LLR位。但是,如果可以得到关于哪个星座图的点应该用于确定一个LLR位的附加信息,则近似值不是必需的。图4描述了一个结合了本发明教导的星座图。在传统的双重最大值的计算中,为了计算接收到的在图4中表示为具有毛边的圈的软符号(soft symbol)102的第一个位的LLR,计算点102到所有灰点104的距离,以确定到点102距离最小的点,在此例中是点11-11。然后计算点102到所有未着色的点106的距离,以确定到点102距离最小的点,在此例中是点-11-11。
如果可以得到关于位2,3和4的附加信息,即b2=b3=b4=-1,则仅有在图5中被涂成灰色的点108(1-1-1-1)和未被着色的点110(-1-1-1-1)两个星座点应该被用于第一位b1的LLR计算。即,位b1的LLR是点102到点108(即1-1-1-1)的距离与点102到点110(即-1-1-1-1)的距离的差。这些计算是位b1的LLR的真实值而没有近似。
遗憾的是,在传统的解码器中,在解码信息位之前通常无法得到位2,3和4的附加信息。但是,在LDPC解码器中,中间结果可以用于更新解码器的输入,因此解码器的输入不断逼近每个位的LLR的真实值。如先前描述的,LDPC解码器能为每个位迭代计算LLR或者软判决。软判决的符号确定关联的位的值(1或-1),而软判决的等级表明解码的位的置信度。软判决等级越大,解码的位的置信度越高。
在解码迭代过程中,可以根据下面的关系式来确定关于软判决的中间的硬位判决:
其中M是用于硬位判决的阈值,可以适应性的将其确定为可缩放的中间软判决的平均等级。根据这种关系,很显然中间位序列是三进制的而不是二进制表示的值。值为0表示因为置信级别不够而不能获得用于相关联的位的硬判决。基于中间的三进制位序列,能更新LLR位。例如,当确定了位3的LLR并且知道用于位1,2和4的中间硬判决分别是1,0和-1时,则如图6所示可以使用4个星座点130-136来计算LLR。
也就是说,可以计算在接收到的软符号102到点130和点132(即,1-11-1和111-1)之间的距离以确定最小距离,在这个例子中,该最小距离是点102到点132(即111-1)的距离。类似地,可以计算在接收到的软符号102到点134和点136(即,1-1-1-1和11-1-1)之间的距离并选择最近的点,在这个例子中,最小距离是点102和点136(即11-1-1)之间的距离。位3的LLR是所计算的两个最小距离之间的差。对于与一个QAM符号关联的一组位中的每个非0的硬判决来说,用因子2来按比例缩减用于计算LLR位的星座图中的点的数量。因此,如果N个三进制值具有非0值,则使用2N来减小集合的大小,利用所述集合来计算最小距离以更新LLR位的一部分。如果所有的三进制值都具有非0值,则使用减法来更新LLR的一部分而不用最小距离。可选择地,如果所有三进制值都是0,则使用集合的实际大小来更新LLR的一部分,利用所述集合来计算最小距离。
传统的双重最大值方法是其中所有的硬位判决都为0的一个特例,。在这个例子中,使用双重最大值方法来确定LDPC解码器的初始输入。当中间硬位判决是可获得时,几次迭代后,LDPC解码器的输入可被更新或微调。
尽管已引入了阈值M来减少出错误的概率,但是中间硬判决也有可能是错误的。因此,可以将更新的LLR位可以确定为初始的LLR和当前的LLR的组合,以如下给出:
LLRupdated=α×LLRinitial+(1-α)×LLRintermediate
其中用本发明所描述的双重最大值技术来确定LLRinitial和LLRintermediate,其中α是在0和1之间取值的系数,其取决于迭代的次数以及中间软判决的平均等级。
图7描述了在根据本发明的LDPC解码器中运行的方法200的流程图。方法200开始于其中初始化LDPC解码器的步骤202。该步骤可对应于例如下述步骤:用LLR位初始化位节点,将校验节点初始化为预定的设置,将每个位节点关联于相应的校验节点;反之亦然。在步骤204,根据示出的公式计算每个校验节点的概率,然而其结果作为可信任的被传送给关联的位节点。相似地,在步骤206中,根据示出的公式计算每个位节点的概率,然后其结果作为可信任的被传给关联的校验节点。
在步骤208,根据示出的公式对每个位节点作出软判决和相应的硬判决。在步骤210,对步骤208确定的位值执行奇偶校验。如果没有检测到错误,则解码器在步骤212停止操作并将解码的位提供给目标设备(此后将在图14中描述)。如果检测到错误,则LDPC解码器继续步骤214,在步骤214中LDPC解码器检查方法200的迭代次数是否小于预置值T1。如果是,则LDPC解码器继续返回到步骤204以重复前述操作。否则,LDPC解码器在步骤216检查迭代次数是否已经达到第二预置值T2(T2大于T1)。如果结果为否,在步骤218中以如此前LLR更新公式中所述的来更新LLR位,然后返回步骤204以使用新的LLR位集合来重复前述步骤。另一方面,如果已经执行了T2次迭代,则LDPC解码器返回到步骤212,并停止进一步的处理。
值得注意的是,如果乘法运算的代价高于加法运算,则从校验节点到位节点的可信任消息可以被确定为:
L ( r m → b ) = ( - 1 ) | B ( m ) | Π b ′ ∈ B ( m ) \ b sgn ( L ( q b ′ → m ) ) Φ - 1 ( Σ b ′ ∈ B ( m ) \ b Φ ( | L ( q b ′ → m ) | ) )
其中函数φ(x)被定义为
Φ ( x ) = - log ( tanh ( x 2 ) ) = - log e x - 1 e x + 1
对于x>0,可以使用表查找方法来估计该函数。
值得注意的是,阈值M的值可以影响解码器的性能。如果M太小,则在基于解码器反馈的LLR更新期间将引入额外的错误传播。另一方面,如果M太大,则限制了步骤218中的LLR更新的优点。为了达到最佳的性能,可以在迭代解码过程期间适配M值。提出的用于确定M的方法可以基于LDPC解码器软输出的平均等级。通常,平均软判决等级越大,误码率(BER)越低。图8-9举例说明了根据本发明的一个实施例的在BER与软判决等级之间的关系。根据这些例子,M能被更新为 M = β 1 N Σ i = 1 N | b ~ i | , 其中
Figure A20068003679500144
是第i软位,N是每个LDPC解码器代码字的被编码位的数量。β∈(0,1)是控制提供给LDPC解码器的反馈信息的使用的参数。
为了举例说明的目的,使用16QAM和具有4/5码率的LDPC码来执行模拟,以比较用于现有技术LDPC解码器(在这里称为旧LDPC解码器)的BER与根据方法200运行的LDPC解码器(在这里称为新LDPC解码器)的BER。模拟的结果展示在图10所示的图中。根据该图,可以观察到大约0.3dB的改进,表明了新LDPC解码器的工作是有效的。
本领域众所周知LDPC解码器的性能取决于迭代的最大次数。迭代越多,预期性能越好。图10也示出了使用不同最大迭代次数(30、60和120)的旧LDPC解码器和根据本发明的实施例的新LDPC解码器的性能。当最大迭代次数设置为30时,新解码器性能优于旧解码器0.2dB。从30到60,旧解码器的增益是0.05dB而新解码器的增益是0.1dB。对迭代次数的更高限制实质上没有影响。因此,当最大迭代次数设置为60时新解码器可以获得~0.3dB的增益。
值得注意的是,当迭代最大次数从30到60时,迭代次数的增加并没有使解码复杂性加倍。例如,如图11所示,当迭代最大次数从30增加到60时,大约2.9%的LDPC代码块经历60次迭代,而大约2.95%的代码块需要30次迭代。这种转变仅增加了0.05%的复杂性。尽管新LDPC解码器需要额外的计算用于更新LLR位,但与解码的复杂性相比这种额外的处理相对很小。
对于本领域普通技术人员来说本发明可以用于很多应用是显而易见的。例如,本发明可应用于如图12所示的基站300,其合并了根据下面记述的权利要求而运行的LDPC解码器的功能,以用于依照本发明的一个实施例从选择呼叫无线电(SCR)301中截获消息的目的。SCR301可以例如代表向基站300辐射信号的传统蜂窝电话。基站300包括传统的收发器302用于与SCR301交换无线电消息。收发器302截获的信号由依照本发明的处理器306和关联的存储器308的组合来处理。
处理器306可以利用计算设备的组合,诸如微处理器和/或数字信号处理器(DSP),或者被设计为执行本发明的操作的ASIC(ApplicationSpecific Integrated Circuit,特定用途集成电路)。存储器308可利用任何的传统存储介质,诸如RAM,SRAM,闪存,和/或硬盘驱动器。动力公司可以提供电源310,和/或代表为基站300的组件提供电源的不间断供电的电池电源。在该实施例中,以图7所示的方法200为例描述的新解码器的功能可以被部分合并到作为集成组件304的处理器306和与其关联的存储器308中。集成LDPC解码器的功能有助于显著改进基站300解码从SCR301截获的消息的性能。
对于本领域普通技术人员来说本发明的部分实施例可以被具体化为计算机程序产品是显而易见的,该计算机程序产品包含能够实现之前所记载的实施例的特性。根据此处上下文,计算机程序意指使用任何语言、编码或符号的指令集合的任何表达,所述指令集合用于使具有信息处理能力的系统直接执行或之后执行以下特定功能之一或全部:a)转换为另一种语言、编码或符号;b)以一种不同的材料形式再现。
显然的,本发明可以用硬件、软件或其组合实现。另外,本发明可以被具体化为计算机程序,该计算机程序包含可以实现这里描述的方法的所有特性,并且使所述设备执行这些方法。根据此处上下文,计算机程序意指使用任何语言、编码或符号的指令集合的任何表达,所述指令集合用于使具有信息处理能力的系统直接执行或之后执行以下特定功能之一或全部:a)转换为另一种语言、编码或符号;b)以一种不同的材料形式再现。另外,计算机程序可用硬件实现状态机,而无需通常由CISC(Complex Instruction Set Computer,复杂指令集计算机)和RISC(Reduced Instruction Set Computer,精简指令集计算机)处理器使用的传统的机器代码。
本发明也可用于很多设备。因此,尽管为特定的设备和方法来作出所述描述,但是本发明的目的和概念适用于并可应用于这里没有描述的其它设备和应用。因此在不背离本发明的精神和范围的情况下,方法300的实施例可以以多种方式修改和添加。
因此,所述的实施例应该被理解为仅仅是本发明某些较为显著的特点和应用的说明性例证。同样应当理解权利要求意图覆盖在这里描述的结构已实现叙述的功能而不仅仅是结构的等同物。因此,根据描述的字面意思的等同的结构应当被解释为包括在如下面的权利要求所限定的本发明的范围内。因此,应当参照之后的权利要求而不是之前的说明书来表明本发明的范围。

Claims (10)

1.一种低密度奇偶校验(LDPC)解码器,包括:
存储器;以及
处理器,被编程用于:
初始化所述LDPC解码器;
计算每个校验节点的概率;
计算每个位节点的概率;
计算软判决;
根据计算的软判决更新所述位节点;
根据所计算的软判决计算值;
对所计算的值执行奇偶校验;
如果在所计算的值中检测到位错误则更新对数似然比(LLR);
根据所更新的LLR更新所述位节点;以及
重复前述初始化之后的步骤。
2.如权利要求1所述的LDPC解码器,其中在所述初始化步骤中所述处理器被编程用于:
使用对数似然比(LLR)初始化多个位节点;
将多个校验节点初始化为预定的设置;
将每个位节点关联至一个或多个相应的校验节点;以及
将每个校验节点关联至一个或多个相应的位节点。
3.如权利要求1所述的LDPC解码器,其中所述处理器被编程用于:
如果检测到位错误以及当所述步骤的迭代次数少于第一预置值时,重复前述初始化之后的步骤;以及
根据所更新的LLR更新LLR和所述位节点,以及如果检测到位错误以及当所述步骤的迭代次数大于或等于所述第一预置值时,重复前述初始化之后的步骤。
4.如权利要求1所述的LDPC解码器,其中所述值是三进制值,以及其中所述处理器被编程用于:
当所述软判决大于或等于阈值(M)时将所述三进制值设置为1;
当所述软判决小于负M时将所述三进制值设置为负1;
当所述软判决小于M且大于负M时将所述三进制值设置为0。
5.如权利要求1所述的LDPC解码器,其中所述处理器被编程用于根据由第一和第二因子调整的初始的和中间的LLR更新所述LLR。
6.一种计算机可读存储介质,包括用于下述的计算机指令:
使用对数似然比(LLR)初始化多个位节点;
将多个校验节点初始化为预定的设置;
将每个位节点关联至一个或多个相应的校验节点;
将每个校验节点关联至一个或多个相应的位节点;
计算每个校验节点的概率;
计算每个位节点的概率;
计算软判决;
根据所计算的软判决更新所述位节点;
根据所计算的软判决的符号计算值;
对所计算的值执行奇偶校验;
如果在所计算的值中检测到位错误则根据由第一和第二因子调整的初始的和中间的LLR更新LLR;
根据所更新的LLR更新所述位节点;以及
重复前述初始化之后的步骤。
7.如权利要求6所述的存储介质,其中所述值是三进制值,以及其中所述存储介质包括用于下述的计算机指令:
当所述软判决大于或等于阈值(M)时将所述三进制值设置为1;
当所述软判决小于负M时将所述三进制值设置为负1;
当所述软判决小于M且大于负M时将所述三进制值设置为0;以及
适应性地将M确定为可缩放的中间软判决的平均等级。
8.一种基站,包括:
收发器;
存储器;以及
处理器,被编程用于:
从选择呼叫无线电中截获消息;并且
通过下述步骤解码所述消息:
使用对数似然比(LLR)初始化多个位节点;
将多个校验节点初始化为预定的设置;
将每个位节点关联至一个或多个相应的校验节点;
将每个校验节点关联至一个或多个相应的位节点;
计算每个校验节点的概率;
计算每个位节点的概率;
根据相应的校验节点和所述位节点先前的软判决计算软判决;
根据所计算的软判决更新所述位节点;
根据所计算的软判决的符号计算值;
对所计算的值执行奇偶校验;
如果在所计算的值中检测到位错误则更新所述LLR;
根据所更新的LLR更新所述位节点;以及
重复前述的初始化之后的步骤。
9.如权利要求8所述的基站,其中所述处理器被编程用于:
如果检测到位错误以及当所述步骤的迭代次数少于第一预置值时,重复前述初始化之后的步骤;
根据所更新的LLR更新所述LLR和所述位节点,以及如果检测到位错误以及当所述步骤的迭代次数大于或等于所述第一预置值时,重复前述初始化之后的步骤;以及
如果检测到位错误以及迭代次数超过第二预置值,则停止进一步的处理,所述第二预置值大于所述第一预置值。
10.如权利要求8所述的基站,其中所述值是三进制值,以及其中所述处理器被编程用于:
当所述软判决大于或等于阈值(M)时将所述三进制值设置为1;
当所述软判决小于负M时将所述三进制值设置为-1;
当所述软判决小于M且大于负M时将所述三进制值设置为0;以及
适应性将M地确定为可缩放的中间软判决的平均等级。
CN2006800367955A 2005-10-03 2006-09-06 用于低密度奇偶校验解码器的方法和装置 Active CN101405943B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/242,506 US7398453B2 (en) 2005-10-03 2005-10-03 Method and apparatus for a low-density parity-check decoder
US11/242,506 2005-10-03
PCT/US2006/034719 WO2007040893A2 (en) 2005-10-03 2006-09-06 Method and apparatus for a low-density parity-check decoder

Publications (2)

Publication Number Publication Date
CN101405943A true CN101405943A (zh) 2009-04-08
CN101405943B CN101405943B (zh) 2012-03-14

Family

ID=37906638

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800367955A Active CN101405943B (zh) 2005-10-03 2006-09-06 用于低密度奇偶校验解码器的方法和装置

Country Status (5)

Country Link
US (1) US7398453B2 (zh)
EP (1) EP1935098A4 (zh)
KR (1) KR20080053346A (zh)
CN (1) CN101405943B (zh)
WO (1) WO2007040893A2 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101582699B (zh) * 2009-06-24 2013-02-27 重庆金美通信有限责任公司 用于两电平调制输入的Turbo和LDPC译码的软判决LLR计算方法
CN102985975A (zh) * 2010-03-12 2013-03-20 Lsi公司 闪存的低密度奇偶校验擦除译码
CN103199874A (zh) * 2012-01-05 2013-07-10 国民技术股份有限公司 一种低密度奇偶校验码译码方法
CN102985975B (zh) * 2010-03-12 2016-12-14 希捷科技有限公司 闪存的低密度奇偶校验擦除译码
CN109787639A (zh) * 2017-11-14 2019-05-21 奈奎斯特半导体有限公司 用于解码纠错码的系统和方法
CN110837435A (zh) * 2018-08-17 2020-02-25 爱思开海力士有限公司 错误校正装置、该错误校正装置的操作方法以及电子装置
CN112783685A (zh) * 2019-11-11 2021-05-11 爱思开海力士有限公司 快速收敛的低密度奇偶校验码的位翻转解码器

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7983350B1 (en) * 2005-10-25 2011-07-19 Altera Corporation Downlink subchannelization module
KR100984289B1 (ko) * 2005-12-07 2010-09-30 포항공과대학교 산학협력단 통신 시스템에서 가변 부호화율을 지원하는 신호 송수신장치 및 방법
JP4807063B2 (ja) * 2005-12-20 2011-11-02 ソニー株式会社 復号装置、制御方法、およびプログラム
US7613981B2 (en) * 2006-10-06 2009-11-03 Freescale Semiconductor, Inc. System and method for reducing power consumption in a low-density parity-check (LDPC) decoder
US20080239936A1 (en) * 2007-03-28 2008-10-02 Motorola, Inc. Method and apparatus for mitigating interference in multicarrier modulation systems
CN101345601B (zh) * 2007-07-13 2011-04-27 华为技术有限公司 一种译码方法和译码器
KR101048442B1 (ko) * 2007-08-08 2011-07-11 삼성전자주식회사 다중 입출력 무선통신 시스템에서 스트림별 유효 신호대 잡음비 생성 장치 및 방법
US8234549B2 (en) * 2008-03-06 2012-07-31 Nec Laboratories America, Inc. Simultaneous PMD compensation and chromatic dispersion compensation using LDPC coded OFDM
US8706792B1 (en) * 2008-10-27 2014-04-22 Sk Hynix Memory Solutions Inc. Low-complexity q-ary LDPC decoder
US8443270B2 (en) * 2008-12-09 2013-05-14 Entropic Communications, Inc. Multiple input hardware reuse using LDPC codes
US8347167B2 (en) * 2008-12-19 2013-01-01 Lsi Corporation Circuits for implementing parity computation in a parallel architecture LDPC decoder
CN102257832B (zh) * 2008-12-21 2014-12-24 Lg电子株式会社 用于发送和接收信号的装置以及用于发送和接收信号的方法
KR101539002B1 (ko) * 2009-01-02 2015-07-24 삼성전자주식회사 1-비트용 에러 정정 장치 및 그 방법
PL2557717T3 (pl) * 2009-01-13 2015-04-30 Lg Electronics Inc Urządzenie do nadawania i odbierania sygnału oraz sposób nadawania i odbierania sygnału
WO2010082754A2 (en) * 2009-01-14 2010-07-22 Lg Electronics, Inc. Apparatus for transmitting and receiving a signal and method of transmitting and receiving a signal
WO2010082799A2 (en) * 2009-01-19 2010-07-22 Lg Electronics, Inc. Apparatus for transmitting and receiving a signal and method of transmitting and receiving a signal
CN102460977A (zh) * 2009-05-27 2012-05-16 诺沃尔赛特有限公司 具有迭代调度的ldpc码迭代解码
KR101286858B1 (ko) * 2009-12-21 2013-07-17 한국전자통신연구원 저밀도 패리티 검사 부호를 위한 고속 복호 방법
KR101678404B1 (ko) * 2010-02-25 2016-11-23 삼성전자주식회사 사전 확률 정보를 사용하는 메모리 시스템 및 그것의 데이터 처리 방법
KR20120072615A (ko) * 2010-12-24 2012-07-04 삼성전자주식회사 수신기에서 복호 제어 방법 및 복호 제어 장치
US8774326B2 (en) * 2011-04-08 2014-07-08 Samsung Electronics Co., Ltd. Receiver system and method of operation thereof
US8656245B2 (en) * 2011-04-13 2014-02-18 California Institute Of Technology Method of error floor mitigation in low-density parity-check codes
KR101968746B1 (ko) 2011-12-30 2019-04-15 삼성전자주식회사 저장 장치로부터 데이터를 읽는 읽기 방법, 에러 정정 장치, 그리고 에러 정정 코드 디코더를 포함하는 저장 시스템
US9621187B2 (en) * 2012-03-28 2017-04-11 Intel Corporation Processing elementary check nodes of an iterative decoder
US9264182B2 (en) 2012-09-13 2016-02-16 Novelsat Ltd. Iterative receiver loop
KR102323765B1 (ko) * 2014-02-13 2021-11-11 한국전자통신연구원 부호율이 3/15인 ldpc 부호어를 위한 비균등 16-심볼 신호성상을 이용한 변조기 및 이를 이용한 변조 방법
US9520898B2 (en) * 2014-02-13 2016-12-13 Electronics And Telecommunications Research Institute Modulator and modulation method using non-uniform 16-symbol signal constellation for low-density parity check codeword having 3/15 code rate
CA2964557C (en) * 2014-02-13 2019-07-30 Electronics And Telecommunications Research Institute Modulator and modulation method using non-uniform 16-symbol signal constellation for low-density parity check codeword having 4/15 code rate
US10050643B2 (en) * 2016-12-14 2018-08-14 Via Technologies, Inc. Low-density parity-check apparatus and operation method thereof
CN113497629A (zh) * 2020-04-07 2021-10-12 富华科精密工业(深圳)有限公司 基于ldpc的译码方法、装置及计算机可读存储介质
CN111917420B (zh) * 2020-08-25 2023-07-04 广东省新一代通信与网络创新研究院 一种ldpc自适应译码方法及ldpc自适应译码器
CN113794478A (zh) * 2021-09-06 2021-12-14 深圳市极致汇仪科技有限公司 一种基于噪声功率的ldpc分步译码方法及系统

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594318B1 (en) * 1999-12-02 2003-07-15 Qualcomm Incorporated Method and apparatus for computing soft decision input metrics to a turbo decoder
US6654926B1 (en) * 2000-10-11 2003-11-25 Itran Communications Ltd. Soft decision maximum likelihood encoder and decoder
US6895547B2 (en) * 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
US7000167B2 (en) * 2001-08-01 2006-02-14 International Business Machines Corporation Decoding low density parity check codes
US7023936B2 (en) * 2001-10-29 2006-04-04 Intel Corporation Method and apparatus for decoding lattice codes and multilevel coset codes
US6954832B2 (en) * 2002-05-31 2005-10-11 Broadcom Corporation Interleaver for iterative decoder
US6829308B2 (en) * 2002-07-03 2004-12-07 Hughes Electronics Corporation Satellite communication system utilizing low density parity check codes
US6757337B2 (en) * 2002-09-05 2004-06-29 Motorola, Inc. Coding-assisted MIMO joint detection and decoding
CN1252935C (zh) * 2002-12-13 2006-04-19 清华大学 基于低密度奇偶检验编码的信源信道联合编码方法
US7149953B2 (en) * 2004-02-03 2006-12-12 Broadcom Corporation Efficient LDPC code decoding with new minus operator in a finite precision radix system
CN100385796C (zh) * 2004-11-25 2008-04-30 上海交通大学 低密度校验码的信道编码方法
CN100364238C (zh) * 2005-01-21 2008-01-23 清华大学 一种Turbo码与多维调制级联的系统编译码方案

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101582699B (zh) * 2009-06-24 2013-02-27 重庆金美通信有限责任公司 用于两电平调制输入的Turbo和LDPC译码的软判决LLR计算方法
CN102985975A (zh) * 2010-03-12 2013-03-20 Lsi公司 闪存的低密度奇偶校验擦除译码
CN102985975B (zh) * 2010-03-12 2016-12-14 希捷科技有限公司 闪存的低密度奇偶校验擦除译码
CN103199874A (zh) * 2012-01-05 2013-07-10 国民技术股份有限公司 一种低密度奇偶校验码译码方法
CN103199874B (zh) * 2012-01-05 2017-02-15 国民技术股份有限公司 一种低密度奇偶校验码译码方法
CN109787639A (zh) * 2017-11-14 2019-05-21 奈奎斯特半导体有限公司 用于解码纠错码的系统和方法
CN110837435A (zh) * 2018-08-17 2020-02-25 爱思开海力士有限公司 错误校正装置、该错误校正装置的操作方法以及电子装置
CN110837435B (zh) * 2018-08-17 2023-03-28 爱思开海力士有限公司 错误校正装置、该错误校正装置的操作方法以及电子装置
CN112783685A (zh) * 2019-11-11 2021-05-11 爱思开海力士有限公司 快速收敛的低密度奇偶校验码的位翻转解码器
CN112783685B (zh) * 2019-11-11 2024-04-09 爱思开海力士有限公司 快速收敛的低密度奇偶校验码的位翻转解码器

Also Published As

Publication number Publication date
WO2007040893A3 (en) 2008-11-06
US7398453B2 (en) 2008-07-08
EP1935098A4 (en) 2012-11-28
KR20080053346A (ko) 2008-06-12
WO2007040893A2 (en) 2007-04-12
CN101405943B (zh) 2012-03-14
EP1935098A2 (en) 2008-06-25
US20070089024A1 (en) 2007-04-19

Similar Documents

Publication Publication Date Title
CN101405943B (zh) 用于低密度奇偶校验解码器的方法和装置
Shao et al. Survey of turbo, LDPC, and polar decoder ASIC implementations
KR101630442B1 (ko) 이진 소거 서로게이트 채널을 이용하여 awgn 채널 조건 하에서 비트 인터리버를 ldpc 코드와 변조에 적용하기 위한 방법 및 장치
US9252813B2 (en) Iterative decoding of LDPC codes with iteration scheduling
CN101336516B (zh) 级联低密度奇偶校验码的迭代解码
US7350130B2 (en) Decoding LDPC (low density parity check) code with new operators based on min* operator
US8880973B1 (en) Detector-decoder interface for GF(q) iterative decoding
CN110730008B (zh) 一种基于深度学习的rs码置信传播译码方法
CN104393877A (zh) 基于加权的非规则ldpc码线性规划译码方法
EP2894804B1 (en) Apparatus and method for adaptively selecting channel code based on non-gaussianity of channel in wireless communication system
Babich et al. Low complexity rate compatible puncturing patterns design for LDPC codes
US20070113163A1 (en) Belief propagation decoder cancelling the exchange of unreliable messages
Wang et al. CRC-assisted error correction in a convolutionally coded system
Boiko et al. Simulation of the Transport Channel With Polar Codes for the 5G Mobile Communication
Pan et al. Joint iterative detection and decoding receiver for polar coded SCMA system
CN111555760B (zh) 纠正随机错误和长突发删除的多进制符号级乘积码方法
Kim et al. New GRP LDPC codes for H-ARQ-IR over the block fading channel
CN101350695B (zh) 低密度奇偶校验码译码方法及系统
US10341056B2 (en) Decoding apparatus and method in mobile communication system using non-binary low-density parity-check code
Fang et al. Protograph bit-interleaved coded modulation: A bandwidth-efficient design paradigm for 6G wireless communications
KR20090064268A (ko) 가변 보정값을 이용한 복호화 장치 및 그 방법
Liu et al. A universal interleaver design for bit-interleaved QC-LDPC coded modulation
WO2018059856A1 (en) Message passing decoder for convolutional or turbo codes
CN104753542B (zh) 用于ldpc码的比特翻转和线性规划组合译码方法
Khoueiry et al. Joint channel estimation and raptor decoding over fading channel

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MOTOROLA MOBILE CO., LTD.

Free format text: FORMER OWNER: MOTOROLA INC.

Effective date: 20110107

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20110107

Address after: Illinois State

Applicant after: MOTOROLA MOBILITY, Inc.

Address before: Illinois State

Applicant before: Motorola, Inc.

C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
C56 Change in the name or address of the patentee
CP01 Change in the name or title of a patent holder

Address after: Illinois State

Patentee after: MOTOROLA MOBILITY LLC

Address before: Illinois State

Patentee before: MOTOROLA MOBILITY, Inc.

TR01 Transfer of patent right

Effective date of registration: 20160315

Address after: California, USA

Patentee after: Google Technology Holdings LLC

Address before: Illinois State

Patentee before: MOTOROLA MOBILITY LLC