CN109120275B - 一种编码方法及装置、计算机存储介质 - Google Patents

一种编码方法及装置、计算机存储介质 Download PDF

Info

Publication number
CN109120275B
CN109120275B CN201710496055.XA CN201710496055A CN109120275B CN 109120275 B CN109120275 B CN 109120275B CN 201710496055 A CN201710496055 A CN 201710496055A CN 109120275 B CN109120275 B CN 109120275B
Authority
CN
China
Prior art keywords
matrix
cyclic
coefficient index
cyclic coefficient
sub
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
Application number
CN201710496055.XA
Other languages
English (en)
Other versions
CN109120275A (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.)
China Academy of Telecommunications Technology CATT
Datang Mobile Communications Equipment Co Ltd
Original Assignee
China Academy of Telecommunications Technology CATT
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
Priority to CN201710496055.XA priority Critical patent/CN109120275B/zh
Application filed by China Academy of Telecommunications Technology CATT filed Critical China Academy of Telecommunications Technology CATT
Priority to JP2019572228A priority patent/JP7091375B2/ja
Priority to PCT/CN2018/086927 priority patent/WO2019001159A1/zh
Priority to EP18822587.4A priority patent/EP3648357B1/en
Priority to KR1020207002393A priority patent/KR102300273B1/ko
Priority to US16/626,284 priority patent/US11038531B2/en
Priority to TW107121665A priority patent/TWI679854B/zh
Publication of CN109120275A publication Critical patent/CN109120275A/zh
Application granted granted Critical
Publication of CN109120275B publication Critical patent/CN109120275B/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/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/033Theoretical methods to calculate these checking codes
    • H03M13/036Heuristic code construction methods, i.e. code construction or code search based on using trial-and-error
    • 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/1131Scheduling of bit node or check node processing
    • H03M13/1137Partly parallel processing, i.e. sub-blocks or sub-groups of nodes being processed in parallel
    • 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/1185Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the parity-check matrix comprises a part with a double-diagonal
    • 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/1185Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the parity-check matrix comprises a part with a double-diagonal
    • H03M13/1188Parity check matrix structured for simplifying encoding, e.g. by having a triangular or an approximate triangular structure wherein the parity-check matrix comprises a part with a double-diagonal wherein in the part with the double-diagonal at least one column has an odd column weight equal or greater than three
    • 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
    • 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/6306Error control coding in combination with Automatic Repeat reQuest [ARQ] and diversity transmission, e.g. coding schemes for the multiple transmission of the same information or the transmission of incremental redundancy
    • 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/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • H03M13/6368Error control coding in combination with rate matching by puncturing using rate compatible puncturing or complementary puncturing
    • H03M13/6393Rate compatible 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • 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/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • 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/65Purpose and implementation aspects
    • H03M13/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6516Support of multiple code parameters, e.g. generalized Reed-Solomon decoder for a variety of generator polynomials or Galois fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • H04L1/0043Realisations of complexity reduction techniques, e.g. use of look-up tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (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)
  • Secondary Cells (AREA)
  • Lubricants (AREA)
  • Battery Electrode And Active Subsutance (AREA)
  • Transition And Organic Metals Composition Catalysts For Addition Polymerization (AREA)

Abstract

本申请公开了一种编码方法及装置、计算机存储介质,用以提高LDPC编码性能,从而适用于5G***。本申请实施例提供的一种编码方法,包括:确定低密度奇偶校验码LDPC矩阵的基础图base graph,并构造循环系数指数矩阵;根据所述循环系数指数矩阵,确定子循环矩阵;根据所述子循环矩阵以及所述base graph,进行LDPC编码。

Description

一种编码方法及装置、计算机存储介质
技术领域
本申请涉及通信技术领域,尤其涉及一种编码方法及装置、计算机存储介质。
背景技术
当前第三代合作伙伴计划(3GPP)提出需要针对5G中移动宽带增强 (eMBB)场景,给出低密度奇偶校验码(Low Density Parity Check Code,LDPC) 信道编码设计。
LDPC码是通过校验矩阵定义的一类线性码,为使译码可行,在码长较长时需要校验矩阵满足稀疏性,即校验矩阵中1的密度比较低,也就是要求校验矩阵中1的个数远小于0的个数,并且码长越长,密度就要越低。
但是,现有技术中没有给出适用于5G***的LDPC的编码方案。
发明内容
本申请实施例提供了一种编码方法及装置、计算机存储介质,用以提高 LDPC编码性能,从而适用于5G***。
本申请实施例提供的一种编码方法,包括:
确定低密度奇偶校验码LDPC矩阵的基础图base graph,并构造循环系数指数矩阵;
根据所述循环系数指数矩阵,确定子循环矩阵;
根据所述子循环矩阵以及所述base graph,进行LDPC编码。
通过该方法,确定低密度奇偶校验码LDPC矩阵的基础图base graph,并构造循环系数指数矩阵,根据所述循环系数指数矩阵,确定子循环矩阵,根据所述子循环矩阵以及所述base graph,进行LDPC编码,从而提高了LDPC编码性能,适用于5G***。
可选地,所述构造循环系数指数矩阵,具体包括:
步骤一:将需要支持的子循环矩阵的维数Z的集合划分为多个子集;
步骤二:针对每个所述子集,生成一套循环系数指数矩阵;
步骤三:根据所述循环系数指数矩阵,确定多个子集的Z所对应的循环系数;
步骤四:对每个Z,检测所确定的循环系数指数矩阵的性能是否满足预设条件,如果是,则结束,否则,重新执行步骤二。
可选地,Z=a×2j;采用下列方式之一执行所述步骤一:
方式一:根据a的取值,将Z分成多个子集;
方式二:根据j的取值,将Z分成多个子集;
方式三:根据信息比特的长度,将Z分成多个子集。
可选地,所述步骤三具体包括:采用如下公式确定每个Z所对应的循环系数Pi,j
Figure BDA0001332634200000021
其中,Vi,j是循环系数指数矩阵的第(i,j)个元素对应的循环系数。
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000031
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000032
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000041
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000042
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000051
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000052
可选地,该方法还包括:
对所述循环系数指数矩阵进行更新;
利用更新后的循环系数指数矩阵,更新所述子循环矩阵。
可选地,所述更新至少包括矩阵元素的行列置换。
可选地,根据所述子循环矩阵以及所述base graph,进行LDPC编码,具体包括:
根据所述子循环矩阵以及所述base graph,确定校验矩阵;
利用所述校验矩阵,进行LDPC编码。
可选地,确定校验矩阵之后,该方法还包括:对校验矩阵进行行列置换;
利用所述校验矩阵,进行LDPC编码,具体包括:利用行列置换后的校验矩阵,进行LDPC编码。
可选地,对所述校验矩阵进行行列置换,具体包括:
对校验矩阵中的部分行和/或列元素进行更新,和/或,对校验矩阵中的全部行和/或列元素进行更新。
本申请实施例提供的一种编码装置,包括:
第一单元,用于确定低密度奇偶校验码LDPC矩阵的基础图base graph,并构造循环系数指数矩阵;
第二单元,用于根据所述循环系数指数矩阵,确定子循环矩阵;
第三单元,用于根据所述子循环矩阵以及所述base graph,进行LDPC编码。
可选地,所述第一单元构造循环系数指数矩阵,具体包括:
步骤一:将需要支持的子循环矩阵的维数Z的集合划分为多个子集;
步骤二:针对每个所述子集,生成一套循环系数指数矩阵;
步骤三:根据所述循环系数指数矩阵,确定多个子集的Z所对应的循环系数;
步骤四:对每个Z,检测所确定的循环系数指数矩阵的性能是否满足预设条件,如果是,则结束,否则,重新执行步骤二。
可选地,Z=a×2j;所述第一单元采用下列方式之一执行所述步骤一:
方式一:根据a的取值,将Z分成多个子集;
方式二:根据j的取值,将Z分成多个子集;
方式三:根据信息比特的长度,将Z分成多个子集。
可选地,所述步骤三具体包括:采用如下公式确定每个Z所对应的循环系数Pi,j
Figure BDA0001332634200000071
其中,Vi,j是循环系数指数矩阵的第(i,j)个元素对应的循环系数。
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000072
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000081
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000082
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000091
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000092
可选地,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure BDA0001332634200000101
可选地,所述第二单元还用于:
对所述循环系数指数矩阵进行更新;
利用更新后的循环系数指数矩阵,更新所述子循环矩阵。
可选地,所述更新至少包括矩阵元素的行列置换。
可选地,所述第三单元具体用于:
根据所述子循环矩阵以及所述base graph,确定校验矩阵;
利用所述校验矩阵,进行LDPC编码。
可选地,所述第三单元还用于:确定校验矩阵之后,对校验矩阵进行行列置换;
所述第三单元利用所述校验矩阵,进行LDPC编码,具体包括:利用行列置换后的校验矩阵,进行LDPC编码。
可选地,所述第三单元对所述校验矩阵进行行列置换,具体包括:
对校验矩阵中的部分行和/或列元素进行更新,和/或,对校验矩阵中的全部行和/或列元素进行更新。
本申请实施例提供的另一种编码装置,其包括存储器和处理器,其中,所述存储器用于存储程序指令,所述处理器用于调用所述存储器中存储的程序指令,按照获得的程序执行上述任一种方法。
本申请实施例提供的一种计算机存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行上述任一种方法。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的Base matrix的结构示意图;
图2本申请实施例提供的矩阵P的结构示意图;
图3本申请实施例提供的当z=8时的循环置换矩阵的结构示意图;
图4本申请实施例提供的Base graph与循环系数矩阵(z=8)的结构示意图;
图5本申请实施例提供的支持冗余递增的LDPC校验矩阵的结构示意图;
图6本申请实施例提供的5G LDPC要求支持的循环矩阵大小Z的集合的示意图;
图7为本申请实施例提供的Base graph#2的结构示意图;
图8为本申请实施例提供的第一种循环系数指数矩阵的结构示意图;
图9为本申请实施例提供的第二种循环系数指数矩阵的结构示意图;
图10为本申请实施例提供的第三种循环系数指数矩阵的结构示意图;
图11为本申请实施例提供的第四种循环系数指数矩阵的结构示意图;
图12为本申请实施例提供的第五种循环系数指数矩阵的结构示意图;
图13为本申请实施例提供的第六种循环系数指数矩阵的结构示意图;
图14为本申请实施例提供的Z=128时采用PCM2(a=3)R=1/5对应的校验矩阵的其girth分布示意图;
图15为本申请实施例提供的LDPC循环系数性能的示意图;
图16为本申请实施例提供的一种编码方法的流程示意图;
图17为本申请实施例提供的一种编码装置的结构示意图;
图18为本申请实施例提供的另一种编码装置的结构示意图。
具体实施方式
本申请实施例提供了一种编码方法及装置、计算机存储介质,用以提高 LDPC编码性能,从而适用于5G***。
本申请实施例提供的技术方案,给出针对eMMB场景的数据信道采用 LDPC编码替代原长期演进(long term evolution,LTE)***采用的turbo编码,即给出适用于5G***的LDPC编码方案。
5G的LDPC码设计要求采用准循环LDPC码,其校验矩阵H可以表示为如下形式:
Figure BDA0001332634200000121
其中,Ai,jz×z循环置换矩阵。
对于准循环LDPC码有多种构造方法,例如,首先构造一个大小为ρ×c的基矩阵(Base matrix),该矩阵的元素非0即1,如图1所示。然后对该基矩阵 B的每个1元素扩展为一个z×z循环置换矩阵(Circular Permutation Matrix, CPM),基矩阵的0元素则扩展为一个z×z的全0矩阵,Base matrix B在后来的基于原模图的LDPC构造方式中被称为基础图(base graph,BG)。用Pi表示每个z×z循环置换矩阵,其中矩阵P就是单位阵循环向右移动一位得到的矩阵,如图2所示,而i是循环移位标号,即子矩阵的循环系数。图3给出了一个循环置换矩阵Pi(子分组大小为8×8,即z=8)的实例。
因此,每个循环置换矩阵Pi实际上为单位阵I循环右移i次数,循环置换矩阵循环移位标号i满足
Figure BDA0001332634200000131
上面所述的循环移位的标号i又称为LDPC校验矩阵的循环移位系数 (shiftingcoefficients)。事实上,循环移位系数,即为子循环矩阵第一行1所处的列的index(标号从0开始,index=列数-1)。将base graph中的每个1用所对应的子循环矩阵的循环移位系数替换,将base graph中每个0用-1替换,由于每个循环移位标号i是以矩阵指数的形式呈现,所以由此得到的系数矩阵又称为循环系数指数矩阵(shifting coefficients exponentmatrix,SEM)。图4表示循环系数指数矩阵的一个例子。其中,BG为3行6列的Base graph,base graph 中每个元素对应大小为8行8列的一个子循环矩阵,利用每个子循环矩阵的循环移位系数替换base graph,其中0用-1替换得到循环系数指数矩阵。
上面描述的准循环LDPC码对应的子循环矩阵(CM),列重可以大于1,例如列重为2或者更大的值,此时子循环矩阵不再是一个循环置换阵(CPM)。
5G的LDPC码设计要求必须支持IR(Incremental redundancy)-HARQ,故可以采用递增冗余的方法构造针对5G场景的LDPC码,即首先构造一个高码率的LDPC码,然后采用递增冗余的方式产生更多的校验位,进而得到低码率的LDPC码,基于递增冗余方法构造的LDPC码具有性能优异、码长、码率覆盖范围广、复用度高、易于硬件实现、可以直接用校验矩阵进行编码等优点。具体结构的一个实例如图5所示。其中B是双对角或者准双对角矩阵,C是0 矩阵,E是下三角扩展矩阵。LDPC校验矩阵设计主要取决于A、D、E1的设计。
LDPC性能取决于两个最重要的因素,一个是base matrix的设计,另一个为采取何种方式将base matrix中每个非零元素扩展成的一个z×z循环置换矩阵。这两个因素对LDPC性能起到了决定性的作用,base matrix与扩展的子循环置换矩阵的不恰当设计会极大恶化LDPC码性能。
综上所述,5G设计中LDPC校验矩阵正在设计中,由于5G要求支持flexible LDPC,以eMBB数据信道为例,3GPP要求通过两个base graph扩展得到的最多两个LDPC校验矩阵支持最高8/9码率,最低1/5,信息位最长为8448bits 最短40bits;所述的两个base graph,大的base graph为46x68列,其中前22列对应信息位,最低码率为1/3;而小的base graph大小为42x52列,最低码率为1/5。与大的base graph不同,小的base graph为了提高并译码行度,降低译码时延,3GPP目前的结论是当信息比特K>640时,base graph图中前10列对应信息位;当信息比特560<K<=640时,base graph的前9列对应信息位,当信息比特192<K<=560时,base graph的前8列对应信息位;当信息比特40 <K<=192时,base graph的前6列对应信息位。
5G LDPC设计中为了让固定的两个base graph支持40~8448的信息比特长度,采用base graph的每个1对应的子循环矩阵扩展成不同大小的子循环矩阵的方法,即子循环矩阵的大小Z可以支持不同的值。3GPP给出的要求支持的子循环矩阵维数Z=a×2j,其值具体如图6所示。图6所示的表格中的每一个Z都对应LDPC的一个校验矩阵,如此看来,5G LDPC码设计需要设计很多校验矩阵。如果为每个Z都设计一套循环系数矩阵,不容易存储且工作量巨大,因此找到恰当的支持多种码率与多种信息比特长度且存储复杂度低的 LDPC码的循环系数设计方法是一个非常困难的问题,一种方法对多个Z采用相同的循环系数,但是这往往难以得到优异的性能;循环系数的设计对5G LDPC码的设计提出极大挑战。
下面给出本申请实施例提供的LDPC编码方法的详细介绍。
本申请实施例提供的LDPC编码方法,包括:
第一步:以基于密度进化P-EXIT Chart译码门限(码长无限长时的最低译码门限值,即所需的最低SNR值)为测度,结合实际的仿真性能确定base graph;
第二步:构造循环系数指数矩阵,其中,所述的循环系数的每个值代表一个子矩阵的循环系数,且根据前面描述Pi系数i位于指数的位置,所以此处称为循环系数指数矩阵,也可以称为exponent matrix。该第二步具体包括下列步骤一至步骤四:
步骤一:将需要支持的子循环矩阵的维数Z的集合划分为多个子集。以 Z=a×2j,0≤j≤7,a={2,3,5,7,9,11,13,15}为例,可以采用下列方式之一确定多个子集:
方式一:可以根据a进行分类,例如a=2时,Z=2×2j,0≤j≤7是一个子集,这样就将Z分成了8个子集,这8个子集实际上分别对应图6的8列,即第一个 set就是图6中a=2时对应的第一列的值,以此类推;
方式二:可以根据j分类,对j的每个具体取值,Z=a×2j,a={2,3,5,7,9,11,13,15}就构成一个子集,由于j恰好有8个值,故也对应8个子集,例如j=0时,对应图6中的第一行中j=0时对应的第一行的8个值,以此类推;
方式三:根据Z的大小进行分类,因为Kb*Z就是信息比特的长度,其中 Kb是basegraph图中信息位的列数,与信息比特的个数K不同,对于大的base graph,kb=22,小的base graph,kb=10,所以对Z按照大小分类,自然就等价于按照信息比特长度K的大小分类。例如:[2:1:15],[16:2:30],[32:4:64], [72:8:128],[144:16:192],[208:16:256],[288:32:320],[352:32:384],这种分法实际上是根据信息比特的长度进行分段。信息比特长度K是以比特为单位的, K/kb=Z的估计值,分段时,按照2的整数次幂就是一个例子,Z较小时分的密集一些,Z较大时分的稀疏一些。
步骤二:针对每个子集,例如可以利用代数与随机相结合的方法产生一套循环系数指数矩阵。其中,随机的方法比如就是随机产生一个指数矩阵,然后通过后续的方法挑选出最优的。代数的方法,例如可以首先构造一个大的指数矩阵,然后利用随机的maskedmatrix得到一个指数矩阵。如此一来,8个子集共需要8套循环系数指数矩阵。
步骤三:根据步骤二所确定的循环系数指数矩阵,对前面说的8个子集(每个集合对应一套循环系数指数矩阵)中的每个Z及其部分集合外的Z元素,进一步确定每个Z所对应的循环系数,由于本申请实施例中除了考虑集合内的元素还考虑集合外的Z元素,这样使得该系数指数矩阵具有更好的适应性,首先因为集合内的Z往往还是具有较大的间隔,无法达到1比特颗粒度,考虑集合以外的Z元素参与循环系数设计,会增加系数指数矩阵对不同Z性能的鲁棒性,带来的另外一个增益就是技术上可以为不同的集合配置相同的系数指数矩阵,这样会进一步降低存储量与硬件设计复杂度。其中,每个子集产生一个指数矩阵,这个指数矩阵实际按照子集中最大的Z产生,而子集中每个具体的Z的系数是这个最大Z产生的指数矩阵的一个函数,设计循环系数要使得对子集内所有Z的循环系数性能优异,这个子集所对应的指数矩阵才是合格的。根据循环系数指数矩阵,确定每个Z对应的循环系数的方法的一个例子为:循环系数Pi,j可以利用如下函数计算:
Pi,j=f(Vi,j,Z)
其中,Vi,j是系数指数矩阵的第(i,j)个元素对应的循环系数,函数f定义为:
Figure BDA0001332634200000161
步骤四:对每个子集中所有的Z,例如以环分布与码字最小距离估计为基本的测度,判断步骤二所确定的集合级别的循环系数指数矩阵的优劣,环数与最小距离越大,码字性能越好。若集合级别的循环系数指数矩阵性能不好,则重新返回步骤二。其中,所述环分布就是环长的分布,例如矩形其环长为4,越大越好,永远构不成环就是图形不封闭,在图论上叫树。最小距离是任意两个码字间最小的差异,差异越小,就不容易区分,码字性能就越差,因此,只有最小距离大,编码出的码字性能才好,从而才说明搜索出的指数矩阵越好,否则说明该指数矩阵不应该被采用。
第三步:根据第二步确定的循环系数指数矩阵,将每个循环系数扩展为对应的子循环矩阵,最终得到LDPC码的校验矩阵H。
例如,H矩阵是42行52列子循环矩阵构成,将每个子循环矩阵用0或者 1代替就是base graph,将每个base graph的每个1元素用子循环矩阵替代就得到H矩阵,用哪个子循环矩阵替代base graph中的1,就是设计每个子矩阵的循环系数,所有的循环系数放在一个矩阵里描述就是循环系数指数矩阵。
第四步:利用校验矩阵H完成LDPC编码,有了循环系数与Z,直接就得到每个子循环矩阵,从而得到整个H矩阵。
下面给出一个具体实施例的举例说明:
5G LDPC设计所采用的base graph#2为42行52列,目前所确定的base graph如图7所示。42行对应校验节点,52列对应变量节点,对于前面所述base graph中信息位Kb小于10的情形,例如Kb=9,则直接将base graph中第10 列删除,若kb=6,则将base graph的第7,8,9,10列删除,而行不变。
根据图7所示的base graph,将图6所示的循环矩阵大小Z的集合按照a 分类,即按照图6的每一列进行分割,a有8个不同的数值,对应得到8个不同的Z集合,例如a=2对应的Z集合为Set1={2,4,8,16,32,64,128,256},a=3 对应的Z集合为Set2={3,6,12,24,48,96,192,384},a=5对应的Z集合为 Set3={5,10,20,40,80,160,320},a=7对应的Z集合为Set4={7,14,28,56,112, 224},a=9对应的Z集合为Set5={9,18,36,72,144,288},a=11对应的Z集合为Set6={11,22,44,88,176,352},a=13对应的Z集合为Set7={13,26,52,104, 208},a=15对应的Z集合为Set8={15,30,60,120,240}。
对每个Z集合按照上述第二步所述的方法,确定6个集合级别的循环系数指数矩阵PCMi,i=1,2,3,..6分别为Seti i=1,2,3,..6所对应的循环系数指数矩阵。其中,a=2,集合Set1对应的循环系数指数矩阵PCM1具体如图8所示;a=3,集合Set2对应的循环系数指数矩阵PCM2具体如图9所示;a=5,集合Set3对应的循环系数指数矩阵PCM3具体如图10所示;a=7,集合Set4对应的循环系数指数矩阵PCM4具体如图11所示;a=9,集合Set5对应的循环系数指数矩阵PCM5具体如图12所示;a=11,集合Set6对应的循环系数指数矩阵PCM6 具体如图13所示。
如第二步所述,在为一个集合设计循环系数指数矩阵时,不但根据集合内系数优化,还根据集合外系数优化,以集合二Set2(a=3)对应的PCM2为例,设计时考虑了集合一Set1(a=2)中的某些Z,使得集合一Set1(a=2)中的某些Z采用集合二Set2(a=3)的PCM2矩阵也具有优异性能,以集合一Set1(a=2) 中的Z=128,码率为1/5,采用PCM2对应的校验矩阵为例,其girth分布如图 14所示,由于都是6环与8环,所以性能优异。
根据图8至图13所示base graph设计LDPC性能的一个例子如图15所示,可以看到本申请实施例中的base graph对应的LDPC码性能较佳。
需要特别指出的是:
本申请实施例中,还可以包括:
对所述循环系数指数矩阵进行更新;
利用更新后的循环系数指数矩阵,更新所述子循环矩阵。
可选地,所述更新至少包括矩阵元素的行列置换。
本申请实施例中,还可以对所设计的校验矩阵H进行行列置换,行列置换除了包括普通意义的行列置换,还包括保持对行与列的部分元素进行置换,以图5中矩阵B所示的双对角矩阵与矩阵E所示的下三角结构为例,进行行列置换时可以保持双对角度与下三角结构不动,而置换行列中其他元素。从系数指数矩阵角度来看,这种置换可以是指数矩阵不同行列间的交换,还可以是指数矩阵中的一行即代表的一行子循环矩阵内部行或者列的交换,比如子循环矩阵的第一行置换到子循环矩阵的最后一行,这样反应在指数矩阵的数值上就是原来系数值加上某一个数值。
综上,参见图16,本申请实施例提供的一种编码方法,包括:
S101、确定低密度奇偶校验码LDPC矩阵的基础图base graph,并构造循环系数指数矩阵;
S102、根据所述循环系数指数矩阵,确定子循环矩阵;
S103、根据所述子循环矩阵以及所述base graph,进行LDPC编码。
通过该方法,确定低密度奇偶校验码LDPC矩阵的基础图base graph,并构造循环系数指数矩阵,根据所述循环系数指数矩阵,确定子循环矩阵,根据所述子循环矩阵以及所述base graph,进行LDPC编码,从而提高了LDPC编码性能,适用于5G***。
可选地,所述构造循环系数指数矩阵,具体包括:
步骤一:将需要支持的子循环矩阵的维数Z的集合划分为多个子集;
步骤二:针对每个所述子集,生成一套循环系数指数矩阵;
步骤三:根据所述循环系数指数矩阵,确定多个子集的Z所对应的循环系数;
步骤四:对每个Z,检测所确定的循环系数指数矩阵的性能是否满足预设条件,如果是,则结束,否则,重新执行步骤二。
可选地,Z=a×2j,0≤j≤7,a={2,3,5,7,9,11,13,15};采用下列方式之一执行所述步骤一:
方式一:根据a的取值,将Z分成8个子集;
方式二:根据j的取值,将Z分成8个子集;
方式三:根据信息比特的长度,将Z分成8个子集。
可选地,所述步骤三具体包括:采用如下公式确定每个Z所对应的循环系数Pi,j
Figure BDA0001332634200000191
其中,Vi,j是循环系数指数矩阵的第(i,j)个元素对应的循环系数。
可选地,根据所述子循环矩阵以及所述base graph,进行LDPC编码,具体包括:
根据所述子循环矩阵以及所述base graph,确定校验矩阵;
利用所述校验矩阵,进行LDPC编码。
可选地,确定校验矩阵之后,该方法还包括:对校验矩阵进行行列置换;
利用所述校验矩阵,进行LDPC编码,具体包括:利用行列置换后的校验矩阵,进行LDPC编码。
可选地,对所述校验矩阵进行行列置换,具体包括:
对校验矩阵中的部分行和/或列元素进行更新,和/或,对校验矩阵中的全部行和/或列元素进行更新。
与上述方法相对应地,参见图17,本申请实施例提供的一种编码装置,包括:
第一单元11,用于确定低密度奇偶校验码LDPC矩阵的基础图base graph,并构造循环系数指数矩阵;
第二单元12,用于根据所述循环系数指数矩阵,确定子循环矩阵;
第三单元13,用于根据所述子循环矩阵以及所述base graph,进行LDPC 编码。
可选地,所述第一单元构造循环系数指数矩阵,具体包括:
步骤一:将需要支持的子循环矩阵的维数Z的集合划分为多个子集;
步骤二:针对每个所述子集,生成一套循环系数指数矩阵;
步骤三:根据所述循环系数指数矩阵,确定多个子集的Z所对应的循环系数;
步骤四:对每个Z,检测所确定的循环系数指数矩阵的性能是否满足预设条件,如果是,则结束,否则,重新执行步骤二。
可选地,Z=a×2j,0≤j≤7,a={2,3,5,7,9,11,13,15};所述第一单元采用下列方式之一执行所述步骤一:
方式一:根据a的取值,将Z分成8个子集;
方式二:根据j的取值,将Z分成8个子集;
方式三:根据信息比特的长度,将Z分成8个子集。
可选地,所述步骤三具体包括:采用如下公式确定每个Z所对应的循环系数Pi,j
Figure BDA0001332634200000201
其中,Vi,j是循环系数指数矩阵的第(i,j)个元素对应的循环系数。
可选地,所述第三单元具体用于:
根据所述子循环矩阵以及所述base graph,确定校验矩阵;
利用所述校验矩阵,进行LDPC编码。
可选地,所述第三单元还用于:确定校验矩阵之后,对校验矩阵进行行列置换;
所述第三单元利用所述校验矩阵,进行LDPC编码,具体包括:利用行列置换后的校验矩阵,进行LDPC编码。
可选地,所述第三单元对所述校验矩阵进行行列置换,具体包括:
对校验矩阵中的部分行和/或列元素进行更新,和/或,对校验矩阵中的全部行和/或列元素进行更新。
本申请实施例提供的另一种编码装置,其包括存储器和处理器,其中,所述存储器用于存储程序指令,所述处理器用于调用所述存储器中存储的程序指令,按照获得的程序执行上述任一种方法。
例如,参见图18,本申请实施例提供的另一种编码装置,处理器500,用于读取存储器520中的程序,执行下列过程:
确定低密度奇偶校验码LDPC矩阵的基础图base graph,并构造循环系数指数矩阵;
根据所述循环系数指数矩阵,确定子循环矩阵;
根据所述子循环矩阵以及所述base graph,进行LDPC编码。
可选地,所述处理器500构造循环系数指数矩阵,具体包括:
步骤一:将需要支持的子循环矩阵的维数Z的集合划分为多个子集;
步骤二:针对每个所述子集,生成一套循环系数指数矩阵;
步骤三:根据所述循环系数指数矩阵,确定多个子集的Z所对应的循环系数;
步骤四:对每个Z,检测所确定的循环系数指数矩阵的性能是否满足预设条件,如果是,则结束,否则,重新执行步骤二。
可选地,Z=a×2j,0≤j≤7,a={2,3,5,7,9,11,13,15};所述处理器500采用下列方式之一执行所述步骤一:
方式一:根据a的取值,将Z分成8个子集;
方式二:根据j的取值,将Z分成8个子集;
方式三:根据信息比特的长度,将Z分成8个子集。
可选地,所述步骤三具体包括:采用如下公式确定每个Z所对应的循环系数Pi,j
Figure BDA0001332634200000221
其中,Vi,j是循环系数指数矩阵的第(i,j)个元素对应的循环系数。
可选地,所述处理器500根据所述子循环矩阵以及所述base graph,进行 LDPC编码,具体包括:
根据所述子循环矩阵以及所述base graph,确定校验矩阵;
利用所述校验矩阵,进行LDPC编码。
可选地,所述处理器500还用于:确定校验矩阵之后,对校验矩阵进行行列置换;
所述处理器500利用所述校验矩阵,进行LDPC编码,具体包括:利用行列置换后的校验矩阵,进行LDPC编码。
可选地,所述处理器500对所述校验矩阵进行行列置换,具体包括:
对校验矩阵中的部分行和/或列元素进行更新,和/或,对校验矩阵中的全部行和/或列元素进行更新。
收发机510,用于在处理器500的控制下接收和发送数据。
其中,在图18中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器500代表的一个或多个处理器和存储器520代表的存储器的各种电路链接在一起。总线架构还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机510可以是多个元件,即包括发送机和收发机,提供用于在传输介质上与各种其他装置通信的单元。处理器500 负责管理总线架构和通常的处理,存储器520可以存储处理器500在执行操作时所使用的数据。
处理器500可以是中央处埋器(CPU)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)。
本申请实施例提供的编码装置,也可以看做是一种计算设备,该计算设备具体可以为桌面计算机、便携式计算机、智能手机、平板电脑、个人数字助理 (Personal DigitalAssistant,PDA)等。该计算设备可以包括中央处理器(Center Processing Unit,CPU)、存储器、输入/输出设备等,输入设备可以包括键盘、鼠标、触摸屏等,输出设备可以包括显示设备,如液晶显示器(Liquid Crystal Display,LCD)、阴极射线管(Cathode Ray Tube,CRT)等。
存储器可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器提供存储器中存储的程序指令和数据。在本申请实施例中,存储器可以用于存储编码方法的程序。
处理器通过调用存储器存储的程序指令,处理器用于按照获得的程序指令执行上述编码方法。
本申请实施例提供的一种计算机存储介质,用于储存为上述计算设备所用的计算机程序指令,其包含用于执行上述编码方法的程序。
所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如软盘、硬盘、磁带、磁光盘(MO)等)、光学存储器(例如CD、DVD、BD、HVD等)、以及半导体存储器(例如ROM、 EPROM、EEPROM、非易失性存储器(NAND FLASH)、固态硬盘(SSD)) 等。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/ 或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (16)

1.一种编码方法,其特征在于,该方法包括:
确定低密度奇偶校验码LDPC矩阵的基础图base graph,并构造循环系数指数矩阵;
根据所述循环系数指数矩阵,确定子循环矩阵;
根据所述子循环矩阵以及所述base graph,进行LDPC编码;
其中,所述构造循环系数指数矩阵,具体包括:
步骤一:将需要支持的子循环矩阵的维数Z的集合划分为多个子集;
步骤二:针对每个所述子集,生成一套循环系数指数矩阵;
步骤三:根据所述循环系数指数矩阵,确定多个子集的Z所对应的循环系数;
其中,采用下列方式执行所述步骤一:
方式一:Z=a×2j,根据a的取值,将Z分成多个子集;所述a为大于零的整数,所述j为大于等于零的整数;
其中,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000011
或者,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000021
或者,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000022
或者,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000031
或者,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000032
或者,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000041
2.根据权利要求1所述的方法,其特征在于,所述步骤三具体包括:采用如下公式确定每个Z所对应的循环系数Pi,j
Figure FDA0002675658940000042
其中,Vi,j是循环系数指数矩阵的第(i,j)个元素对应的循环系数。
3.根据权利要求1或2所述的方法,其特征在于,该方法还包括:
对所述循环系数指数矩阵进行更新;
利用更新后的循环系数指数矩阵,更新所述子循环矩阵。
4.根据权利要求3所述的方法,其特征在于,所述更新至少包括矩阵元素的行列置换。
5.根据权利要求1所述的方法,其特征在于,根据所述子循环矩阵以及所述basegraph,进行LDPC编码,具体包括:
根据所述子循环矩阵以及所述base graph,确定校验矩阵;
利用所述校验矩阵,进行LDPC编码。
6.根据权利要求5所述的方法,其特征在于,确定校验矩阵之后,该方法还包括:对校验矩阵进行行列置换;
利用所述校验矩阵,进行LDPC编码,具体包括:利用行列置换后的校验矩阵,进行LDPC编码。
7.根据权利要求6所述的方法,其特征在于,对所述校验矩阵进行行列置换,具体包括:
对校验矩阵中的部分行和/或列元素进行更新,和/或,对校验矩阵中的全部行和/或列元素进行更新。
8.一种编码装置,其特征在于,包括:
第一单元,用于确定低密度奇偶校验码LDPC矩阵的基础图base graph,并构造循环系数指数矩阵;
第二单元,用于根据所述循环系数指数矩阵,确定子循环矩阵;
第三单元,用于根据所述子循环矩阵以及所述base graph,进行LDPC编码;
其中,所述第一单元构造循环系数指数矩阵,具体包括:
步骤一:将需要支持的子循环矩阵的维数Z的集合划分为多个子集;
步骤二:针对每个所述子集,生成一套循环系数指数矩阵;
步骤三:根据所述循环系数指数矩阵,确定多个子集的Z所对应的循环系数;
其中,所述第一单元采用下列方式执行所述步骤一:
方式一:Z=a×2j,根据a的取值,将Z分成多个子集;所述a为大于零的整数,所述j为大于等于零的整数;
其中,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000061
或者,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000062
或者,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000071
或者,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000072
或者,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000081
或者,当采用所述方式一时,确定的循环系数指数矩阵如下表所示:
Figure FDA0002675658940000082
9.根据权利要求8所述的装置,其特征在于,所述步骤三具体包括:采用如下公式确定每个Z所对应的循环系数Pi,j
Figure FDA0002675658940000083
其中,Vi,j是循环系数指数矩阵的第(i,j)个元素对应的循环系数。
10.根据权利要求8或9所述的装置,其特征在于,所述第二单元还用于:
对所述循环系数指数矩阵进行更新;
利用更新后的循环系数指数矩阵,更新所述子循环矩阵。
11.根据权利要求10所述的装置,其特征在于,所述更新至少包括矩阵元素的行列置换。
12.根据权利要求8所述的装置,其特征在于,所述第三单元具体用于:
根据所述子循环矩阵以及所述base graph,确定校验矩阵;
利用所述校验矩阵,进行LDPC编码。
13.根据权利要求12所述的装置,其特征在于,所述第三单元还用于:确定校验矩阵之后,对校验矩阵进行行列置换;
所述第三单元利用所述校验矩阵,进行LDPC编码,具体包括:利用行列置换后的校验矩阵,进行LDPC编码。
14.根据权利要求13所述的装置,其特征在于,所述第三单元对所述校验矩阵进行行列置换,具体包括:
对校验矩阵中的部分行和/或列元素进行更新,和/或,对校验矩阵中的全部行和/或列元素进行更新。
15.一种编码装置,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行权利要求1至7任一项所述的方法。
16.一种计算机存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使所述计算机执行权利要求1至7任一项所述的方法。
CN201710496055.XA 2017-06-26 2017-06-26 一种编码方法及装置、计算机存储介质 Active CN109120275B (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN201710496055.XA CN109120275B (zh) 2017-06-26 2017-06-26 一种编码方法及装置、计算机存储介质
PCT/CN2018/086927 WO2019001159A1 (zh) 2017-06-26 2018-05-15 一种编码方法及装置、计算机存储介质
EP18822587.4A EP3648357B1 (en) 2017-06-26 2018-05-15 Encoding method and apparatus, and computer storage medium
KR1020207002393A KR102300273B1 (ko) 2017-06-26 2018-05-15 인코딩 방법 및 장치, 컴퓨터 저장 매체
JP2019572228A JP7091375B2 (ja) 2017-06-26 2018-05-15 エンコーディング方法および装置、コンピュータ記憶媒体
US16/626,284 US11038531B2 (en) 2017-06-26 2018-05-15 Encoding method and apparatus, and computer storage medium
TW107121665A TWI679854B (zh) 2017-06-26 2018-06-25 一種編碼方法及裝置、電腦存儲介質

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710496055.XA CN109120275B (zh) 2017-06-26 2017-06-26 一种编码方法及装置、计算机存储介质

Publications (2)

Publication Number Publication Date
CN109120275A CN109120275A (zh) 2019-01-01
CN109120275B true CN109120275B (zh) 2021-02-05

Family

ID=64740333

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710496055.XA Active CN109120275B (zh) 2017-06-26 2017-06-26 一种编码方法及装置、计算机存储介质

Country Status (7)

Country Link
US (1) US11038531B2 (zh)
EP (1) EP3648357B1 (zh)
JP (1) JP7091375B2 (zh)
KR (1) KR102300273B1 (zh)
CN (1) CN109120275B (zh)
TW (1) TWI679854B (zh)
WO (1) WO2019001159A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021010512A1 (ko) * 2019-07-16 2021-01-21 엘지전자 주식회사 무선 통신 시스템에서 프로토그래프로부터 생성된 저밀도 패리티 검사 부호의 패리티 검사 행렬에 기초하여 부호화를 수행하는 방법 및 장치
CN110611510B (zh) * 2019-09-17 2021-03-23 天地信息网络研究院(安徽)有限公司 一种二元ldpc短码构造方法及其构造装置、终端、存储介质
WO2021168763A1 (en) * 2020-02-28 2021-09-02 Qualcomm Incorporated Base graph selection for multi-slot shared channel

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192833A (zh) * 2006-11-28 2008-06-04 华为技术有限公司 一种低密度校验码ldpc并行编码的装置及方法
US20080178065A1 (en) * 2007-01-24 2008-07-24 Qualcomm Incorporated Ldpc encoding and decoding of packets of variable sizes
CN102165700A (zh) * 2008-09-27 2011-08-24 松下电器产业株式会社 构成低密度奇偶校验码的方法、发送装置和接收装置
WO2012159304A1 (zh) * 2011-06-28 2012-11-29 华为技术有限公司 低密度奇偶校验码的编码方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7996746B2 (en) 2004-10-12 2011-08-09 Nortel Networks Limited Structured low-density parity-check (LDPC) code
US8612823B2 (en) 2008-10-17 2013-12-17 Intel Corporation Encoding of LDPC codes using sub-matrices of a low density parity check matrix
US8433972B2 (en) * 2009-04-06 2013-04-30 Nec Laboratories America, Inc. Systems and methods for constructing the base matrix of quasi-cyclic low-density parity-check codes
US10484010B2 (en) * 2016-12-20 2019-11-19 Samsung Electronics Co., Ltd. Apparatus and method for channel encoding/decoding in communication or broadcasting system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101192833A (zh) * 2006-11-28 2008-06-04 华为技术有限公司 一种低密度校验码ldpc并行编码的装置及方法
US20080178065A1 (en) * 2007-01-24 2008-07-24 Qualcomm Incorporated Ldpc encoding and decoding of packets of variable sizes
CN102165700A (zh) * 2008-09-27 2011-08-24 松下电器产业株式会社 构成低密度奇偶校验码的方法、发送装置和接收装置
WO2012159304A1 (zh) * 2011-06-28 2012-11-29 华为技术有限公司 低密度奇偶校验码的编码方法和装置

Also Published As

Publication number Publication date
US20200145025A1 (en) 2020-05-07
EP3648357A1 (en) 2020-05-06
WO2019001159A1 (zh) 2019-01-03
KR20200016983A (ko) 2020-02-17
JP7091375B2 (ja) 2022-06-27
TWI679854B (zh) 2019-12-11
JP2020527880A (ja) 2020-09-10
EP3648357A4 (en) 2020-07-01
TW201906328A (zh) 2019-02-01
CN109120275A (zh) 2019-01-01
WO2019001159A9 (zh) 2020-01-09
EP3648357B1 (en) 2023-04-05
KR102300273B1 (ko) 2021-09-08
US11038531B2 (en) 2021-06-15

Similar Documents

Publication Publication Date Title
KR101789959B1 (ko) 구조적 ldpc의 인코딩 방법, 디코딩 방법, 인코딩 장치 및 디코딩 장치
CN108988869B (zh) 一种确定校验矩阵的方法及装置、计算机存储介质
JP2019536341A (ja) Ldpcコードを符号化および復号化するための方法および装置
US20090113256A1 (en) Method, computer program product, apparatus and device providing scalable structured high throughput LDPC decoding
WO2017080249A1 (zh) 生成用于在信道中传输的低密度奇偶校验码的方法及设备
US20110191653A1 (en) Quasi-cyclic ldpc encoding and decoding for non-integer multiples of circulant size
Ho et al. A 520k (18900, 17010) array dispersion LDPC decoder architectures for NAND flash memory
CN101741396A (zh) 可变码长ldpc码编码或译码的方法与装置及编码器和译码器
CN109120275B (zh) 一种编码方法及装置、计算机存储介质
TW201320621A (zh) 用以解碼之方法、設備及裝置、以及具體實現有機器可讀取指令程式之非暫時性電腦可讀取媒體
KR102019893B1 (ko) 저밀도 패리티 검사 부호를 지원하는 통신 시스템에서 신호 수신 장치 및 방법
US20170134049A1 (en) Decoding method, memory storage device and memory control circuit unit
CN101159435A (zh) 基于移位矩阵分级扩展的低密度校验码校验矩阵构造方法
CN108631790B (zh) 一种ldpc码构造方法及装置
JP2008526086A (ja) チャネルコードを用いた復号化装置及び方法
CN112332857B (zh) 一种用于ldpc码的循环移位网络***及循环移位方法
Mu et al. A combined algebraic-and graph-based method for constructing structured RC-LDPC codes
US11483011B2 (en) Decoding method, decoding device, and decoder
CN105871385B (zh) 一种ldpc卷积码构造方法
CN111917419B (zh) 一种数据译码的方法以及装置
Bajpai et al. A new construction method for large girth quasi-cyclic ldpc codes with optimized lower bound using chinese remainder theorem
CN108988871A (zh) 一种编码方法及装置、计算机存储介质
He et al. Disjoint-set data structure-aided structured Gaussian elimination for solving sparse linear systems
TWI387211B (zh) 使用區塊結構化同位核對矩陣以提供半平行低密度同位核對解碼之方法、設備、電腦程式產品及裝置
WO2018126914A1 (zh) 准循环低密度奇偶校验码的编码方法及装置、存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: 100191 No. 40, Haidian District, Beijing, Xueyuan Road

Patentee after: CHINA ACADEMY OF TELECOMMUNICATIONS TECHNOLOGY

Address before: 100191 No. 40, Haidian District, Beijing, Xueyuan Road

Patentee before: CHINA ACADEMY OF TELECOMMUNICATIONS TECHNOLOGY

CP01 Change in the name or title of a patent holder
TR01 Transfer of patent right

Effective date of registration: 20210528

Address after: 100085 1st floor, building 1, yard 5, Shangdi East Road, Haidian District, Beijing

Patentee after: DATANG MOBILE COMMUNICATIONS EQUIPMENT Co.,Ltd.

Address before: 100191 No. 40, Haidian District, Beijing, Xueyuan Road

Patentee before: CHINA ACADEMY OF TELECOMMUNICATIONS TECHNOLOGY

TR01 Transfer of patent right