CN101902227B - 一种ldpc码的分层编码方法和装置 - Google Patents

一种ldpc码的分层编码方法和装置 Download PDF

Info

Publication number
CN101902227B
CN101902227B CN 200910086332 CN200910086332A CN101902227B CN 101902227 B CN101902227 B CN 101902227B CN 200910086332 CN200910086332 CN 200910086332 CN 200910086332 A CN200910086332 A CN 200910086332A CN 101902227 B CN101902227 B CN 101902227B
Authority
CN
China
Prior art keywords
sign indicating
check digit
code word
positional information
indicating number
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.)
Expired - Fee Related
Application number
CN 200910086332
Other languages
English (en)
Other versions
CN101902227A (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.)
ZTE Corp
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN 200910086332 priority Critical patent/CN101902227B/zh
Priority to PCT/CN2010/072828 priority patent/WO2010139233A1/zh
Priority to EP10782937.6A priority patent/EP2439851B1/en
Publication of CN101902227A publication Critical patent/CN101902227A/zh
Application granted granted Critical
Publication of CN101902227B publication Critical patent/CN101902227B/zh
Expired - Fee Related 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/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
    • 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/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • 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/1148Structural properties of the code parity-check or generator matrix
    • H03M13/118Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure
    • H03M13/1182Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the structure of the parity-check matrix is obtained by reordering of a random parity-check matrix
    • 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/611Specific encoding aspects, e.g. encoding by means of decoding
    • 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/61Aspects and characteristics of methods and arrangements for error correction or error detection, not provided for otherwise
    • H03M13/615Use of computational or mathematical techniques
    • H03M13/616Matrix operations, especially for generator matrices or check matrices, e.g. column or row permutations

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Algebra (AREA)
  • Computing Systems (AREA)
  • Error Detection And Correction (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种低密度奇偶校验(LDPC)码的分层编码方法,包括:根据校验矩阵H的校验位矩阵部分Hp的结构特征,确定分层运算模式所对应的校验位在LDPC码码字中的位置信息,以及该位置信息所对应H中的行信息;根据所确定的位置信息和对应的行信息,并通过分层运算模式直接得到该位置信息对应的校验位的值,再根据得到的校验位的值更新码字;对剩余待确定的校验位所对应的剩余校验矩阵Hi执行LU分解,得到剩余待确定的校验位的值,并根据得到的校验位的值更新码字。本发明还公开了一种LDPC码的分层编码装置,解决了现有的LDPC编码方法所需存储空间较大,且编码时延较长的问题。

Description

一种LDPC码的分层编码方法和装置
技术领域
本发明涉及通信***中的编码技术,尤其涉及一种低密度奇偶校验(LDPC)码的分层编码方法和装置。
背景技术
信息传输的有效性和可靠性是评估通信***的两个重要指标,为了增加信息传输的可靠性,通常在对信息进行信道编码时增加一定的冗余度,使得码字具有自动检错和纠错的能力;同时为了兼顾信息传输的有效性,冗余度并不是越高越好,实际应用中通常希望在冗余度一定的情况下,通过合适的编译码方法,使得在接收端获得良好的译码性能。
低密度奇偶校验(LDPC,Low Density Parity Check)码是一种基于稀疏校验矩阵的线性分组码,现有的一些通信***,例如:数字视频广播(DVB,DigitalVideo Broadcasting)***、全球微波互联接入(WiMAX,WorldwideInteroperability for Microwave Access)***和***多媒体广播(CMMB,China Mobile Multimedia Broadcasting)***,都采用LDPC码作为信道编码。
根据LDPC码校验矩阵H中元素“1”的分布,可以将校验矩阵H生成的LDPC码分为规则码和非规则码。如果矩阵H中每行有固定的r个元素“1”,每列有固定的c个元素“1”,则其生成的LDPC码称为(c,r)规则码;如果H的行列中元素“1”的个数不固定,则其生成的LDPC码称为非规则码。根据LDPC码校验矩阵H自身的结构特点,还可以将LDPC码分为准循环矩阵构造的LDPC(QC-LDPC,Quasi Cyclic-LDPC)码和普通矩阵构造的LDPC码。如果矩阵H可以看成一系列全零子矩阵、单位子矩阵及单位子矩阵的循环移位阵的组合,那么矩阵H既可以看成是具有准循环特征的矩阵,其生成的LDPC码即为QC-LDPC码;否则,矩阵H即为普通的稀疏矩阵,其生成的LDPC码即为普通矩阵构造的LDPC码。
在WiMAX和DVB***中,LDPC码的校验矩阵H就具有准循环特征,而在CMMB***中LDPC码的校验矩阵H就是一种普通的稀疏矩阵。对于QC-LDPC码,其编码过程实现简单,校验位可以通过递推运算得到。但是,对于普通矩阵构造的LDPC码,其编码过程是比较复杂的,这类LDPC码的编码过程可以通过LU分解来实现。LU分解中的L代表下三角矩阵,U代表上三角矩阵,LDPC码通过LU分解实现编码的过程如图1所示,设LDPC码的校验矩阵为一M×N的矩阵H,LDPC码的码字为C,则H·C=0T,若码字C为***码的码字,则C可以表示为
Figure GDA00001817325500021
其中Xp代表码字的校验位,Xs代表码字的信息位,这在编码端是已知的,编码的目的就是为了得到校验位Xp。将校验矩阵H也分成两部分,即H=[Hp,Hs],Hp表示校验位的矩阵部分,Hs表示消息位的矩阵部分,这样就可以得到Xp的值为
Figure GDA00001817325500022
由于
Figure GDA00001817325500023
不具有稀疏性,因此将其计算出来进行存储是不现实的,因此,通常需要对
Figure GDA00001817325500024
进行LU分解,得到下三角矩阵L和上三角矩阵U,然后通过L和U的两次递推运算才能得到校验位Xp
由此可以看出,通过对进行LU分解的LDPC编码方法虽然能在一定程度上降低
Figure GDA00001817325500026
的存储量,但是存储L和U所需的存储空间仍然是较大的;另外,这种编码算法对每个校验比特要做两次递推运算,且两次递推运算只能串行执行,从而使得编码时延较长。
发明内容
有鉴于此,本发明的主要目的在于提供一种LDPC码的分层编码方法和装置,以解决现有的LDPC编码方法所需存储空间较大,且编码时延较长的问题。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供了一种低密度奇偶校验LDPC码的分层编码方法,该方法包括:
a、根据校验矩阵H的校验位矩阵部分Hp的结构特征,确定分层运算模式所对应的校验位在LDPC码码字中的位置信息,以及所述位置信息所对应H中的行信息;
b、根据所确定的位置信息和对应的行信息,并通过分层运算模式直接得到所述位置信息对应的校验位的值,再根据得到的校验位的值更新所述码字;
c、对剩余待确定的校验位所对应的剩余校验矩阵Ht执行LU分解,得到所述剩余待确定的校验位的值,并根据得到的校验位的值更新所述码字。
在确定分层运算模式所对应的校验位在LDPC码码字中的位置信息之前,该方法进一步包括:初始化所述LDPC码码字,包括初始化所述LDPC码码字的信息位和校验位。
所述步骤a具体包括:
a1、确定第一层对应Hp中只含有一个元素“1”的行,并根据元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息;
a2、确定第二层对应Hp中只含有两个元素“1”的行,且两个元素“1”中有一个元素“1”与第一层的元素“1”位于同一列;根据与第一层不在同一列的元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息;
a3、依此类推,确定第i层对应Hp中含有i个元素“1”的行,且i个元素“1”中有i-1个元素“1”与前i-1层的元素“1”位于同一列,其中i的取值为大于0的整数;根据与前i-1层不在同一列的元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息。
所述通过分层运算模式直接得到所述位置信息对应的校验位的值,具体为:依次对各层执行模2和运算,得到各层中确定的位置信息所对应的校验位的值。
所述依次对各层执行模2和运算,得到各层中确定的位置信息所对应的校验位的值,具体为:
第一层采用初始化的LDPC码码字的对应位与H相应行的对应位相与后再模2和;
第二层采用第一层中更新后的码字的对应位与H相应行的对应位相与后再模2和;
依次类推,第i层采用第i-1层中更新后的码字的对应位与H相应行的对应位相与后再模2和。
该方法进一步包括:当第i层对应Hp中的多个行时,各个行的模2和运算并行执行。
所述步骤c具体包括:将Ht所对应原始的校验矩阵H的行与步骤b中更新后的码字执行对应位的模2和运算,得到临时值Xt;根据Xt并通过对Ht的LU分解递推计算得到剩余待确定的校验位的值。
所述根据得到的校验位的值更新码字,具体为:将得到的校验位的值覆盖码字中对应所述校验位位置上的初始值。
本发明还提供了一种LDPC码的分层编码装置,该装置包括:控制电路模块和编码电路模块,其中,
所述控制电路模块,用于根据校验矩阵H的校验位矩阵部分Hp的结构特征,确定分层运算模式所对应的校验位在LDPC码码字中的位置信息,以及所述位置信息所对应H中的行信息,并将所确定的位置信息和对应的行信息提供给所述编码电路模块;还用于控制所述编码电路模块执行分层运算模式和LU分解模式的切换;
所述编码电路模块,用于根据所述控制电路模块提供的位置信息和对应的行信息,通过分层运算模式直接得到所述位置信息对应的校验位的值;再通过对剩余待确定的校验位所对应的剩余校验矩阵Ht执行LU分解,得到所述剩余待确定的校验位的值;根据得到的校验位的值更新所述码字;
其中,所述确定分层运算模式所对应的校验位在LDPC码码字中的位置信息,以及该位置信息所对应H中的行信息,具体包括:
a1、确定第一层对应Hp中只含有一个元素“1”的行,并根据元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息;
a2、确定第二层对应Hp中只含有两个元素“1”的行,且两个元素“1”中有一个元素“1”与第一层的元素“1”位于同一列;根据与第一层不在同一列的元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息;
a3、依此类推,确定第i层对应Hp中含有i个元素“1”的行,且i个元素“1”中有i-1个元素“1”与前i-1层的元素“1”位于同一列,其中i的取值为大于0的整数;根据与前i-1层不在同一列的元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息。
所述编码电路模块进一步用于,分别通过分层运算模式和LU分解模式下的模2和运算得到校验位的值。
所述编码电路模块进一步用于,在分层运算模式下,当同一层对应Hp中多个行时,各个行的模2和运算并行执行。
本发明所提供的一种LDPC码的分层编码方法和装置,对LDPC码中可以直接运算得到的校验位通过对校验矩阵的分层运算直接得到,再对剩余校验矩阵执行LU分解,得到剩余待确定的校验位。本发明在分层运算模式下,由于同一层内的校验位可以通过并行运算得到,因此减少了编码时延;对剩余校验矩阵进行LU分解时,由于矩阵阶数变小,因此分解后得到的L阵和U帧所需的存储空间减小;由于L阵和U阵中元素“1”的个数减少,模2和运算量也随之减少,从而进一步减少了编码时延。
附图说明
图1为现有技术中LDPC码通过LU分解实现编码的示意图;
图2为本发明一种LDPC码的分层编码方法的流程图;
图3为本发明一种LDPC码的分层编码装置的组成结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。
本发明所提供的一种LDPC码的分层编码方法,如图2所示,主要包括以下步骤:
步骤201,根据校验矩阵H的校验位矩阵部分Hp的结构特征,确定分层运算模式所对应的校验位在LDPC码码字中的位置信息,以及该位置信息所对应H中的行信息。
本发明在确定分层运算模式所对应的校验位在LDPC码码字中的位置信息之前,需要先初始化LDPC码码字,包括初始化LDPC码码字的信息位和校验位,校验位的个数与校验矩阵H的行数相等。例如:初始化码字C的校验位为全0,得到临时码字C,C的码长为N,校验位个数为M,信息位个数为N-M,即CT=(c1,…,cN)=(0,…,0,xs1,…xs(N-M))。
确定分层运算模式所对应的校验位在LDPC码码字中的位置信息,以及该位置信息所对应H中的行信息,具体包括:
a1、确定第一层对应Hp中只含有一个元素“1”的行,并根据元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息;
a2、确定第二层对应Hp中只含有两个元素“1”的行,且两个元素“1”中有一个元素“1”与第一层的元素“1”位于同一列;根据与第一层不在同一列的元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息;
a3、依此类推,确定第i层对应Hp中含有i个元素“1”的行,且i个元素“1”中有i-1个元素“1”与前i-1层的元素“1”位于同一列,其中i的取值为大于0的整数;根据与前i-1层不在同一列的元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息。
步骤202,根据所确定的位置信息和对应的行信息,并通过分层运算模式直接得到该位置信息对应的校验位的值,再根据得到的校验位的值更新码字。
依次对各层执行模2和运算,得到各层中确定的位置信息所对应的校验位的值,即第一层使用临时码字C的对应位与H相应行的对应位相与后再模2和,之后使用更新后的码字进行运算,具体包括:
第一层采用初始化的LDPC码码字的对应位与H相应行的对应位相与后再模2和;
第二层采用第一层中更新后的码字的对应位与H相应行的对应位相与后再模2和;
依次类推,第i层采用第i-1层中更新后的码字的对应位与H相应行的对应位相与后再模2和。具体的模2和运算将在后续的实施例中详细说明。
对于校验矩阵第i层某一行计算得到的校验位的位置即为此行对应的Hp部分中与前i-1层不存在列重合的元素“1”所对应的校验位位置。此外,当第i层对应Hp中的多个行时,由于同一层内各行的计算不存在依存关系,各个行的模2和运算可以并行执行,从而得到多个校验位的值并更新码字。
其中,根据得到的校验位的值更新码字,具体为:将得到的校验位的值覆盖码字C中对应该校验位位置上的初始值,即将在第i层中通过模2和运算得到的校验位的值,覆盖码字C中对应第i层中校验位位置上的初始值。具体的码字更新操作将在后续的实施例中详细说明。
步骤203,对剩余待确定的校验位所对应的剩余校验矩阵Ht执行LU分解,得到剩余待确定的校验位的值,并根据得到的校验位的值更新码字。
将Ht所对应原始的校验矩阵H的行与步骤202中更新后的码字执行对应位的模2和运算,得到临时值Xt;根据Xt并通过对Ht的LU分解递推计算得到剩余待确定的校验位的值,并根据得到的校验位的值更新码字。码字的更新,即将得到的校验位的值覆盖码字C中对应该校验位位置上的初始值。
下面结合具体实施例对上述LDPC码的分层编码方法进一步详细阐述。
设一码长为12的1/2码率的LDPC码的校验矩阵为:
H = 0 0 1 0 0 0 1 1 1 1 0 1 1 1 0 1 1 0 0 0 0 1 1 0 1 1 1 0 0 0 1 0 1 0 0 1 1 0 0 1 1 1 0 0 0 1 1 0 0 1 1 0 1 1 0 1 1 0 0 0 1 0 1 0 0 0 1 1 0 0 1 1
其中,对应的校验位矩阵部分Hp为:
H p = 0 0 1 0 0 0 1 1 0 1 1 0 1 1 1 0 0 0 1 0 0 1 1 1 0 1 1 0 1 1 1 0 1 0 0 0
消息位矩阵部分Hs为:
H s = 1 1 1 1 0 1 0 0 0 1 1 0 1 0 1 0 0 1 0 0 0 1 1 0 0 1 1 0 0 0 1 1 0 0 1 1
初始化码字C的信息位为Xs=[0,1,0,1,0,1],初始化码字C的校验位为全0,进而得到由信息位和校验位组成的码字C=[0,0,0,0,0,0,0,1,0,1,0,1]T
分层运算的具体过程为:
A、由H的结构特征可知,第一层对应Hp中只含有一个元素“1”的行,从而确定第1个可以直接求得的校验位是xp3,其校验式对应H的第1行;通过模2和运算直接得到xp3=xs1⊕xs2⊕xs3⊕xs4⊕xs6=1,其中“⊕”即代表模2和运算,根据xp3的值更新码字为C=[0,0,1,0,0,0,0,1,0,1,0,1]T
B、第二层对应Hp中只含有两个元素“1”的行,且两个元素“1”中有一个元素“1”与第一层的元素“1”位于同一列,从而确定第2个可以直接求得的校验位是xp1,其校验式对应H的第6行;通过模2和运算直接得到xp1=xs1⊕xs2⊕xs5⊕xs6⊕xp3=1,根据xp1的值更新码字为C=[1,0,1,0,0,0,0,1,0,1,0,1]T
C、第三层对应Hp中只含有三个元素“1”的行,且三个元素“1”中有两个元素“1”与第二层的元素“1”位于同一列,从而确定第3个可以直接求得的校验位是xp2,其校验式对应H的第3行;通过模2和运算直接得到xp2=xs1⊕xs3⊕xs6⊕xp1⊕xp3=1,根据xp2的值更新码字为C=[1,1,1,0,0,0,0,1,0,1,0,1]T
然后,去掉矩阵H的第1、3、6行和第1、2、3列所得到的剩余矩阵Ht为: H t = 1 1 0 1 1 1 0 1 1 ; 将Ht所对应原始的校验矩阵H的行与C=[1,1,1,0,0,0,0,1,0,1,0,1]T执行对应位的模2和运算,得到临时值Xt,即 X t = H ( 2 , : ) H ( 4 , : ) H ( 5 , : ) · C = 1 0 1 , 其中Ht所对应的行即为H(2,:)、H(4,:)和H(5,:),H(2,:)表示矩阵H的第2行,H(4,:)表示矩阵H的第4行,H(5,:)表示矩阵H的第5行。
再根据HtXp=Xt得到: H t · x p 4 x p 5 x p 6 = 1 0 1 ;
对Ht进行LU分解,即PHt=LU,其中L表示下三角矩阵,U表示上三角矩阵, P = 1 0 0 0 0 1 0 1 0 良示行交换矩阵;由于行交换矩阵满足P=P-1,因此HtXp=Xt可以表示为:LUXp=PXt,即 1 0 0 0 1 0 1 0 1 · 1 1 0 0 1 1 0 0 1 · x p 4 x p 5 x p 6 = 1 0 0 0 0 1 0 1 0 · 1 0 1 = 1 1 0 , 其中,L阵和U阵分别为: L = 1 0 0 0 1 0 1 0 1 , U = 1 1 0 0 1 1 0 0 1 .
通过L阵和U阵的递推运算可以得到(xp4,xp5,xp6)T=(1,0,1)T,从而更新得到最终的码字为C=[1,1,1,1,0,1,0,1,0,1,0,1]T
上述的实施例中,在分层运算模式下的各层都只对应Hp中的单个行,然而对于第i层对应Hp中的多个行的情况,由于同一层内各行的计算不存在依存关系,因此各个行的模2和运算可以并行执行,从而得到多个校验位的值并更新码字。例如:在校验矩阵H的第一层中,对应Hp中只含有一个元素“1”的行包括两个行:[0 0 0 1 0 0 1 0 1 0 1 0]和[0 1 0 0 0 0 1 0 1 0 1 0],且这两行分别对应码字C中校验位的第4位和第2位,则对应第4位和第2位的模2和运算可以并行执行,不存在先后次序,运算得到的校验位的值分别用以更新码字C中校验位的第4位和第2位上的值。
为实现上述LDPC码的分层编码方法,本发明还提供了一种LDPC码的分层编码装置,如图3所示,该装置包括:控制电路模块10和编码电路模块20。
其中,控制电路模块10,用于根据校验矩阵H的校验位矩阵部分Hp的结构特征,确定分层运算模式所对应的校验位在LDPC码码字中的位置信息,以及该位置信息所对应H中的行信息,并将所确定的位置信息和对应的行信息提供给编码电路模块20;还用于控制编码电路模块20执行分层运算模式和LU分解模式的切换。
编码电路模块20,用于根据控制电路模块10提供的位置信息和对应的行信息,通过分层运算模式直接得到该位置信息对应的校验位的值;再通过对剩余待确定的校验位所对应的剩余校验矩阵Ht执行LU分解,得到剩余待确定的校验位的值;根据得到的校验位的值更新码字。
需要指出的是,编码电路模块20分别通过分层运算模式和LU分解模式下的模2和运算得到校验位的值;且在分层运算模式下,当同一层对应Hp中多个行时,各个行的模2和运算可以并行执行。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (10)

1.一种低密度奇偶校验LDPC码的分层编码方法,其特征在于,该方法包括:
a、根据校验矩阵H的校验位矩阵部分Hp的结构特征,确定分层运算模式所对应的校验位在LDPC码码字中的位置信息,以及所述位置信息所对应H中的行信息;
b、根据所确定的位置信息和对应的行信息,并通过分层运算模式直接得到所述位置信息对应的校验位的值,再根据得到的校验位的值更新所述码字;
c、对剩余待确定的校验位所对应的剩余校验矩阵Ht执行LU分解,得到所述剩余待确定的校验位的值,并根据得到的校验位的值更新所述码字;
其中,所述步骤a具体包括:
a1、确定第一层对应Hp中只含有一个元素“1”的行,并根据元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息;
a2、确定第二层对应Hp中只含有两个元素“1”的行,且两个元素“1”中有一个元素“1”与第一层的元素“1”位于同一列;根据与第一层不在同一列的元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息;
a3、依此类推,确定第i层对应Hp中含有i个元素“1”的行,且i个元素“1”中有i-1个元素“1”与前i-1层的元素“1”位于同一列,其中i的取值为大于0的整数;根据与前i-1层不在同一列的元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息。
2.根据权利要求1所述LDPC码的分层编码方法,其特征在于,在确定分层运算模式所对应的校验位在LDPC码码字中的位置信息之前,该方法进一步包括:初始化所述LDPC码码字,包括初始化所述LDPC码码字的信息位和校验位。
3.根据权利要求1或2所述LDPC码的分层编码方法,其特征在于,所述通过分层运算模式直接得到所述位置信息对应的校验位的值,具体为:依次对各层执行模2和运算,得到各层中确定的位置信息所对应的校验位的值。
4.根据权利要求3所述LDPC码的分层编码方法,其特征在于,所述依次对各层执行模2和运算,得到各层中确定的位置信息所对应的校验位的值,具体为:
第一层采用初始化的LDPC码码字的对应位与H相应行的对应位相与后再模2和;
第二层采用第一层中更新后的码字的对应位与H相应行的对应位相与后再模2和;
依次类推,第i层采用第i-1层中更新后的码字的对应位与H相应行的对应位相与后再模2和。
5.根据权利要求4所述LDPC码的分层编码方法,其特征在于,该方法进一步包括:当第i层对应Hp中的多个行时,各个行的模2和运算并行执行。
6.根据权利要求5所述LDPC码的分层编码方法,其特征在于,所述步骤c具体包括:将Ht所对应原始的校验矩阵H的行与步骤b中更新后的码字执行对应位的模2和运算,得到临时值Xt;根据Xt并通过对Ht的LU分解递推计算得到剩余待确定的校验位的值。
7.根据权利要求1或2所述LDPC码的分层编码方法,其特征在于,所述根据得到的校验位的值更新码字,具体为:将得到的校验位的值覆盖码字中对应所述校验位位置上的初始值。
8.一种LDPC码的分层编码装置,其特征在于,该装置包括:控制电路模块和编码电路模块,其中,
所述控制电路模块,用于根据校验矩阵H的校验位矩阵部分Hp的结构特征,确定分层运算模式所对应的校验位在LDPC码码字中的位置信息,以及所述位置信息所对应H中的行信息,并将所确定的位置信息和对应的行信息提供给所述编码电路模块;还用于控制所述编码电路模块执行分层运算模式和LU分解模式的切换;
所述编码电路模块,用于根据所述控制电路模块提供的位置信息和对应的行信息,通过分层运算模式直接得到所述位置信息对应的校验位的值;再通过对剩余待确定的校验位所对应的剩余校验矩阵Ht执行LU分解,得到所述剩余待确定的校验位的值;根据得到的校验位的值更新所述码字;
其中,所述确定分层运算模式所对应的校验位在LDPC码码字中的位置信息,以及该位置信息所对应H中的行信息,具体包括:
a1、确定第一层对应Hp中只含有一个元素“1”的行,并根据元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息;
a2、确定第二层对应Hp中只含有两个元素“1”的行,且两个元素“1”中有一个元素“1”与第一层的元素“1”位于同一列;根据与第一层不在同一列的元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息;
a3、依此类推,确定第i层对应Hp中含有i个元素“1”的行,且i个元素“1”中有i-1个元素“1”与前i-1层的元素“1”位于同一列,其中i的取值为大于0的整数;根据与前i-1层不在同一列的元素“1”在Hp中所处的列数确定该行所对应的校验位在LDPC码码字中的位置信息。
9.根据权利要求8所述LDPC码的分层编码装置,其特征在于,所述编码电路模块进一步用于,分别通过分层运算模式和LU分解模式下的模2和运算得到校验位的值。
10.根据权利要求8或9所述LDPC码的分层编码装置,其特征在于,所述编码电路模块进一步用于,在分层运算模式下,当同一层对应Hp中多个行时,各个行的模2和运算并行执行。
CN 200910086332 2009-05-31 2009-05-31 一种ldpc码的分层编码方法和装置 Expired - Fee Related CN101902227B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN 200910086332 CN101902227B (zh) 2009-05-31 2009-05-31 一种ldpc码的分层编码方法和装置
PCT/CN2010/072828 WO2010139233A1 (zh) 2009-05-31 2010-05-17 一种ldpc码的分层编码方法和装置
EP10782937.6A EP2439851B1 (en) 2009-05-31 2010-05-17 Encoding of a systematic ldpc code using the check matrix

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200910086332 CN101902227B (zh) 2009-05-31 2009-05-31 一种ldpc码的分层编码方法和装置

Publications (2)

Publication Number Publication Date
CN101902227A CN101902227A (zh) 2010-12-01
CN101902227B true CN101902227B (zh) 2012-11-28

Family

ID=43227476

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200910086332 Expired - Fee Related CN101902227B (zh) 2009-05-31 2009-05-31 一种ldpc码的分层编码方法和装置

Country Status (3)

Country Link
EP (1) EP2439851B1 (zh)
CN (1) CN101902227B (zh)
WO (1) WO2010139233A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103780355B (zh) * 2014-02-20 2017-01-11 西华大学 一种适用于导频通信***的ldpc码信息位替换方法
CN106603082A (zh) * 2016-12-12 2017-04-26 中国人民解放军国防科学技术大学 通用型高速ldpc码编码方法及编码器

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100502609B1 (ko) * 2002-11-21 2005-07-20 한국전자통신연구원 Ldpc 코드를 이용한 부호화기 및 부호화 방법
KR100906474B1 (ko) * 2003-01-29 2009-07-08 삼성전자주식회사 저밀도 부가정보 발생용 매트릭스를 이용한 에러 정정방법 및그 장치
US7139959B2 (en) * 2003-03-24 2006-11-21 Texas Instruments Incorporated Layered low density parity check decoding for digital communications
CN100561878C (zh) * 2005-11-24 2009-11-18 上海交通大学 基于优化搜索矩阵lu分解的ldpc码编码方法
US8261155B2 (en) * 2007-03-09 2012-09-04 Qualcomm Incorporated Methods and apparatus for encoding and decoding low density parity check (LDPC) codes
CN101321043B (zh) * 2007-06-08 2011-10-26 电信科学技术研究院 低密度校验码编码的译码方法及译码装置

Also Published As

Publication number Publication date
EP2439851B1 (en) 2017-01-04
CN101902227A (zh) 2010-12-01
WO2010139233A1 (zh) 2010-12-09
EP2439851A1 (en) 2012-04-11
EP2439851A4 (en) 2013-11-06

Similar Documents

Publication Publication Date Title
CN102647193B (zh) 具有良好性能的不规则缩短的ldpc码的码构造
EP3110009B1 (en) Encoding method, decoding method, encoding device and decoding device for structured ldpc codes
CN101232288B (zh) 一种基于奇偶校验矩阵的ldpc码的译码方法及译码器
CN102412842A (zh) 一种低密度奇偶校验码的编码方法及装置
US20170047948A1 (en) Data encoding by efficient inversion of a parity-check sub-matrix
US8341509B2 (en) Forward error correction (FEC) scheme for communications
CN102067458A (zh) 用于低密度奇偶校验解码器的节点信息存储方法和***
CN101764620B (zh) 用于使用信道代码解码的装置和方法
KR20080072392A (ko) 통신 시스템에서 신호 수신 장치 및 방법
CA3074770A1 (en) Transmitter and shortening method thereof
CN101902227B (zh) 一种ldpc码的分层编码方法和装置
US20140304569A1 (en) Method of codifying data or generating a block of data based on matrix with a triple diagonal structure
CN102457286A (zh) 准循环ldpc码编码方法、装置及校验矩阵生成方法
KR20060058792A (ko) 저밀도 패리티 검사 코드의 부호화 장치 및 방법
EP3047575B1 (en) Encoding of multiple different quasi-cyclic low-density parity check (qc-ldpc) codes sharing common hardware resources
AU2016224200A1 (en) Transmitter and repetition method thereof
CN105024703A (zh) 基于准循环的中短码长ldpc及编解码器和编码方法
EP2675069A1 (en) Method for encoding with GLDPC codes based on reed-solomon component codes
CN101777920B (zh) 低密度奇偶校验码的编码方法和编码译码装置
CN116707546A (zh) 一种准循环ldpc译码的硬件实现方法及装置
CN103036577B (zh) 一种低复杂度的低密度奇偶校验ldpc码编码电路结构
EP4270793A1 (en) Low-density parity-check encoding method, low-density parity-check decoding method, encoding device, decoding device and medium
CN108631913B (zh) 一种基于准循环低密度校验码的交织方法及相关设备
CN111525931A (zh) Ldpc译码器、ldpc译码方法、存储介质和电子设备
CN112367088A (zh) 一种基于索引矩阵的编码方法及装置

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: 20121128

Termination date: 20200531

CF01 Termination of patent right due to non-payment of annual fee